@object-ui/types 0.3.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/LICENSE +21 -0
- package/README.md +304 -0
- package/dist/api-types.d.ts +451 -0
- package/dist/api-types.d.ts.map +1 -0
- package/dist/api-types.js +10 -0
- package/dist/app.d.ts +120 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +7 -0
- package/dist/base.d.ts +360 -0
- package/dist/base.d.ts.map +1 -0
- package/dist/base.js +10 -0
- package/dist/complex.d.ts +433 -0
- package/dist/complex.d.ts.map +1 -0
- package/dist/complex.js +9 -0
- package/dist/crud.d.ts +457 -0
- package/dist/crud.d.ts.map +1 -0
- package/dist/crud.js +10 -0
- package/dist/data-display.d.ts +599 -0
- package/dist/data-display.d.ts.map +1 -0
- package/dist/data-display.js +9 -0
- package/dist/data.d.ts +295 -0
- package/dist/data.d.ts.map +1 -0
- package/dist/data.js +10 -0
- package/dist/disclosure.d.ts +107 -0
- package/dist/disclosure.d.ts.map +1 -0
- package/dist/disclosure.js +9 -0
- package/dist/feedback.d.ts +159 -0
- package/dist/feedback.d.ts.map +1 -0
- package/dist/feedback.js +9 -0
- package/dist/form.d.ts +932 -0
- package/dist/form.d.ts.map +1 -0
- package/dist/form.js +9 -0
- package/dist/index.d.ts +108 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +48 -0
- package/dist/layout.d.ts +418 -0
- package/dist/layout.d.ts.map +1 -0
- package/dist/layout.js +10 -0
- package/dist/navigation.d.ts +224 -0
- package/dist/navigation.d.ts.map +1 -0
- package/dist/navigation.js +9 -0
- package/dist/objectql.d.ts +254 -0
- package/dist/objectql.d.ts.map +1 -0
- package/dist/objectql.js +10 -0
- package/dist/overlay.d.ts +396 -0
- package/dist/overlay.d.ts.map +1 -0
- package/dist/overlay.js +9 -0
- package/dist/registry.d.ts +85 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +1 -0
- package/package.json +82 -0
- package/src/api-types.ts +464 -0
- package/src/app.ts +138 -0
- package/src/base.ts +416 -0
- package/src/complex.ts +465 -0
- package/src/crud.ts +467 -0
- package/src/data-display.ts +630 -0
- package/src/data.ts +341 -0
- package/src/disclosure.ts +113 -0
- package/src/feedback.ts +170 -0
- package/src/form.ts +954 -0
- package/src/index.ts +350 -0
- package/src/layout.ts +451 -0
- package/src/navigation.ts +235 -0
- package/src/objectql.ts +301 -0
- package/src/overlay.ts +418 -0
- package/src/registry.ts +182 -0
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @object-ui/types - Navigation Component Schemas
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for navigation and menu components.
|
|
5
|
+
*
|
|
6
|
+
* @module navigation
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
import type { BaseSchema, SchemaNode } from './base';
|
|
10
|
+
/**
|
|
11
|
+
* Navigation link
|
|
12
|
+
*/
|
|
13
|
+
export interface NavLink {
|
|
14
|
+
/**
|
|
15
|
+
* Link label
|
|
16
|
+
*/
|
|
17
|
+
label: string;
|
|
18
|
+
/**
|
|
19
|
+
* Link URL/href
|
|
20
|
+
*/
|
|
21
|
+
href: string;
|
|
22
|
+
/**
|
|
23
|
+
* Link icon
|
|
24
|
+
*/
|
|
25
|
+
icon?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Whether link is active
|
|
28
|
+
*/
|
|
29
|
+
active?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Whether link is disabled
|
|
32
|
+
*/
|
|
33
|
+
disabled?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Submenu links
|
|
36
|
+
*/
|
|
37
|
+
children?: NavLink[];
|
|
38
|
+
/**
|
|
39
|
+
* Badge content
|
|
40
|
+
*/
|
|
41
|
+
badge?: string | number;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Header bar component
|
|
45
|
+
*/
|
|
46
|
+
export interface HeaderBarSchema extends BaseSchema {
|
|
47
|
+
type: 'header-bar';
|
|
48
|
+
/**
|
|
49
|
+
* Header title/brand
|
|
50
|
+
*/
|
|
51
|
+
title?: string;
|
|
52
|
+
/**
|
|
53
|
+
* Brand logo image URL
|
|
54
|
+
*/
|
|
55
|
+
logo?: string;
|
|
56
|
+
/**
|
|
57
|
+
* Navigation links
|
|
58
|
+
*/
|
|
59
|
+
nav?: NavLink[];
|
|
60
|
+
/**
|
|
61
|
+
* Left side content
|
|
62
|
+
*/
|
|
63
|
+
left?: SchemaNode | SchemaNode[];
|
|
64
|
+
/**
|
|
65
|
+
* Center content
|
|
66
|
+
*/
|
|
67
|
+
center?: SchemaNode | SchemaNode[];
|
|
68
|
+
/**
|
|
69
|
+
* Right side content
|
|
70
|
+
*/
|
|
71
|
+
right?: SchemaNode | SchemaNode[];
|
|
72
|
+
/**
|
|
73
|
+
* Whether header is sticky
|
|
74
|
+
* @default true
|
|
75
|
+
*/
|
|
76
|
+
sticky?: boolean;
|
|
77
|
+
/**
|
|
78
|
+
* Header height
|
|
79
|
+
*/
|
|
80
|
+
height?: string | number;
|
|
81
|
+
/**
|
|
82
|
+
* Header variant
|
|
83
|
+
* @default 'default'
|
|
84
|
+
*/
|
|
85
|
+
variant?: 'default' | 'bordered' | 'floating';
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Sidebar component
|
|
89
|
+
*/
|
|
90
|
+
export interface SidebarSchema extends BaseSchema {
|
|
91
|
+
type: 'sidebar';
|
|
92
|
+
/**
|
|
93
|
+
* Sidebar title
|
|
94
|
+
*/
|
|
95
|
+
title?: string;
|
|
96
|
+
/**
|
|
97
|
+
* Navigation links
|
|
98
|
+
*/
|
|
99
|
+
nav?: NavLink[];
|
|
100
|
+
/**
|
|
101
|
+
* Sidebar content (alternative to nav)
|
|
102
|
+
*/
|
|
103
|
+
content?: SchemaNode | SchemaNode[];
|
|
104
|
+
/**
|
|
105
|
+
* Footer content
|
|
106
|
+
*/
|
|
107
|
+
footer?: SchemaNode | SchemaNode[];
|
|
108
|
+
/**
|
|
109
|
+
* Sidebar position
|
|
110
|
+
* @default 'left'
|
|
111
|
+
*/
|
|
112
|
+
position?: 'left' | 'right';
|
|
113
|
+
/**
|
|
114
|
+
* Whether sidebar is collapsible
|
|
115
|
+
* @default true
|
|
116
|
+
*/
|
|
117
|
+
collapsible?: boolean;
|
|
118
|
+
/**
|
|
119
|
+
* Default collapsed state
|
|
120
|
+
* @default false
|
|
121
|
+
*/
|
|
122
|
+
defaultCollapsed?: boolean;
|
|
123
|
+
/**
|
|
124
|
+
* Controlled collapsed state
|
|
125
|
+
*/
|
|
126
|
+
collapsed?: boolean;
|
|
127
|
+
/**
|
|
128
|
+
* Sidebar width when expanded
|
|
129
|
+
* @default '16rem'
|
|
130
|
+
*/
|
|
131
|
+
width?: string | number;
|
|
132
|
+
/**
|
|
133
|
+
* Sidebar width when collapsed
|
|
134
|
+
* @default '4rem'
|
|
135
|
+
*/
|
|
136
|
+
collapsedWidth?: string | number;
|
|
137
|
+
/**
|
|
138
|
+
* Collapsed state change handler
|
|
139
|
+
*/
|
|
140
|
+
onCollapsedChange?: (collapsed: boolean) => void;
|
|
141
|
+
/**
|
|
142
|
+
* Sidebar variant
|
|
143
|
+
* @default 'default'
|
|
144
|
+
*/
|
|
145
|
+
variant?: 'default' | 'bordered' | 'floating';
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Breadcrumb item
|
|
149
|
+
*/
|
|
150
|
+
export interface BreadcrumbItem {
|
|
151
|
+
/**
|
|
152
|
+
* Item label
|
|
153
|
+
*/
|
|
154
|
+
label: string;
|
|
155
|
+
/**
|
|
156
|
+
* Item URL/href
|
|
157
|
+
*/
|
|
158
|
+
href?: string;
|
|
159
|
+
/**
|
|
160
|
+
* Item icon
|
|
161
|
+
*/
|
|
162
|
+
icon?: string;
|
|
163
|
+
/**
|
|
164
|
+
* Click handler (if not using href)
|
|
165
|
+
*/
|
|
166
|
+
onClick?: () => void;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Breadcrumb component
|
|
170
|
+
*/
|
|
171
|
+
export interface BreadcrumbSchema extends BaseSchema {
|
|
172
|
+
type: 'breadcrumb';
|
|
173
|
+
/**
|
|
174
|
+
* Breadcrumb items
|
|
175
|
+
*/
|
|
176
|
+
items: BreadcrumbItem[];
|
|
177
|
+
/**
|
|
178
|
+
* Separator character/icon
|
|
179
|
+
* @default '/'
|
|
180
|
+
*/
|
|
181
|
+
separator?: string;
|
|
182
|
+
/**
|
|
183
|
+
* Maximum items to display before collapsing
|
|
184
|
+
*/
|
|
185
|
+
maxItems?: number;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Pagination component
|
|
189
|
+
*/
|
|
190
|
+
export interface PaginationSchema extends BaseSchema {
|
|
191
|
+
type: 'pagination';
|
|
192
|
+
/**
|
|
193
|
+
* Current page (1-indexed)
|
|
194
|
+
*/
|
|
195
|
+
page: number;
|
|
196
|
+
/**
|
|
197
|
+
* Total number of pages
|
|
198
|
+
*/
|
|
199
|
+
totalPages: number;
|
|
200
|
+
/**
|
|
201
|
+
* Number of sibling pages to show
|
|
202
|
+
* @default 1
|
|
203
|
+
*/
|
|
204
|
+
siblings?: number;
|
|
205
|
+
/**
|
|
206
|
+
* Show first/last buttons
|
|
207
|
+
* @default true
|
|
208
|
+
*/
|
|
209
|
+
showFirstLast?: boolean;
|
|
210
|
+
/**
|
|
211
|
+
* Show previous/next buttons
|
|
212
|
+
* @default true
|
|
213
|
+
*/
|
|
214
|
+
showPrevNext?: boolean;
|
|
215
|
+
/**
|
|
216
|
+
* Page change handler
|
|
217
|
+
*/
|
|
218
|
+
onPageChange?: (page: number) => void;
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Union type of all navigation schemas
|
|
222
|
+
*/
|
|
223
|
+
export type NavigationSchema = HeaderBarSchema | SidebarSchema | BreadcrumbSchema | PaginationSchema;
|
|
224
|
+
//# sourceMappingURL=navigation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../src/navigation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @object-ui/types - ObjectQL Component Schemas
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for ObjectQL-specific components.
|
|
5
|
+
* These schemas enable building ObjectQL-aware interfaces directly from object metadata.
|
|
6
|
+
*
|
|
7
|
+
* @module objectql
|
|
8
|
+
* @packageDocumentation
|
|
9
|
+
*/
|
|
10
|
+
import type { BaseSchema } from './base';
|
|
11
|
+
import type { TableColumn } from './data-display';
|
|
12
|
+
import type { FormField } from './form';
|
|
13
|
+
/**
|
|
14
|
+
* ObjectTable Schema
|
|
15
|
+
* A specialized table component that automatically fetches and displays data from ObjectQL objects.
|
|
16
|
+
* It reads the object schema from ObjectQL and generates columns automatically.
|
|
17
|
+
*/
|
|
18
|
+
export interface ObjectTableSchema extends BaseSchema {
|
|
19
|
+
type: 'object-table';
|
|
20
|
+
/**
|
|
21
|
+
* ObjectQL object name (e.g., 'users', 'accounts', 'contacts')
|
|
22
|
+
*/
|
|
23
|
+
objectName: string;
|
|
24
|
+
/**
|
|
25
|
+
* Optional title for the table
|
|
26
|
+
*/
|
|
27
|
+
title?: string;
|
|
28
|
+
/**
|
|
29
|
+
* Optional description
|
|
30
|
+
*/
|
|
31
|
+
description?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Field names to display as columns
|
|
34
|
+
* If not specified, uses all visible fields from object schema
|
|
35
|
+
*/
|
|
36
|
+
fields?: string[];
|
|
37
|
+
/**
|
|
38
|
+
* Custom column configurations
|
|
39
|
+
* Overrides auto-generated columns for specific fields
|
|
40
|
+
*/
|
|
41
|
+
columns?: TableColumn[];
|
|
42
|
+
/**
|
|
43
|
+
* Enable/disable built-in operations
|
|
44
|
+
*/
|
|
45
|
+
operations?: {
|
|
46
|
+
/**
|
|
47
|
+
* Enable create operation
|
|
48
|
+
* @default true
|
|
49
|
+
*/
|
|
50
|
+
create?: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Enable read/view operation
|
|
53
|
+
* @default true
|
|
54
|
+
*/
|
|
55
|
+
read?: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Enable update operation
|
|
58
|
+
* @default true
|
|
59
|
+
*/
|
|
60
|
+
update?: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Enable delete operation
|
|
63
|
+
* @default true
|
|
64
|
+
*/
|
|
65
|
+
delete?: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Enable export operation
|
|
68
|
+
* @default false
|
|
69
|
+
*/
|
|
70
|
+
export?: boolean;
|
|
71
|
+
/**
|
|
72
|
+
* Enable import operation
|
|
73
|
+
* @default false
|
|
74
|
+
*/
|
|
75
|
+
import?: boolean;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Default filters to apply
|
|
79
|
+
*/
|
|
80
|
+
defaultFilters?: Record<string, any>;
|
|
81
|
+
/**
|
|
82
|
+
* Default sort configuration
|
|
83
|
+
*/
|
|
84
|
+
defaultSort?: {
|
|
85
|
+
field: string;
|
|
86
|
+
order: 'asc' | 'desc';
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* Page size
|
|
90
|
+
* @default 10
|
|
91
|
+
*/
|
|
92
|
+
pageSize?: number;
|
|
93
|
+
/**
|
|
94
|
+
* Enable row selection
|
|
95
|
+
* @default false
|
|
96
|
+
*/
|
|
97
|
+
selectable?: boolean | 'single' | 'multiple';
|
|
98
|
+
/**
|
|
99
|
+
* Show search box
|
|
100
|
+
* @default true
|
|
101
|
+
*/
|
|
102
|
+
showSearch?: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Show filters
|
|
105
|
+
* @default true
|
|
106
|
+
*/
|
|
107
|
+
showFilters?: boolean;
|
|
108
|
+
/**
|
|
109
|
+
* Show pagination
|
|
110
|
+
* @default true
|
|
111
|
+
*/
|
|
112
|
+
showPagination?: boolean;
|
|
113
|
+
/**
|
|
114
|
+
* Custom row actions
|
|
115
|
+
*/
|
|
116
|
+
rowActions?: string[];
|
|
117
|
+
/**
|
|
118
|
+
* Custom batch actions
|
|
119
|
+
*/
|
|
120
|
+
batchActions?: string[];
|
|
121
|
+
/**
|
|
122
|
+
* Custom CSS class
|
|
123
|
+
*/
|
|
124
|
+
className?: string;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* ObjectForm Schema
|
|
128
|
+
* A smart form component that generates forms from ObjectQL object schemas.
|
|
129
|
+
* It automatically creates form fields based on object metadata.
|
|
130
|
+
*/
|
|
131
|
+
export interface ObjectFormSchema extends BaseSchema {
|
|
132
|
+
type: 'object-form';
|
|
133
|
+
/**
|
|
134
|
+
* ObjectQL object name (e.g., 'users', 'accounts', 'contacts')
|
|
135
|
+
*/
|
|
136
|
+
objectName: string;
|
|
137
|
+
/**
|
|
138
|
+
* Form mode
|
|
139
|
+
*/
|
|
140
|
+
mode: 'create' | 'edit' | 'view';
|
|
141
|
+
/**
|
|
142
|
+
* Record ID (required for edit/view modes)
|
|
143
|
+
*/
|
|
144
|
+
recordId?: string | number;
|
|
145
|
+
/**
|
|
146
|
+
* Optional title for the form
|
|
147
|
+
*/
|
|
148
|
+
title?: string;
|
|
149
|
+
/**
|
|
150
|
+
* Optional description
|
|
151
|
+
*/
|
|
152
|
+
description?: string;
|
|
153
|
+
/**
|
|
154
|
+
* Field names to include in the form
|
|
155
|
+
* If not specified, uses all editable fields from object schema
|
|
156
|
+
*/
|
|
157
|
+
fields?: string[];
|
|
158
|
+
/**
|
|
159
|
+
* Custom field configurations
|
|
160
|
+
* Overrides auto-generated fields for specific fields
|
|
161
|
+
*/
|
|
162
|
+
customFields?: FormField[];
|
|
163
|
+
/**
|
|
164
|
+
* Field groups for organized layout
|
|
165
|
+
*/
|
|
166
|
+
groups?: Array<{
|
|
167
|
+
title?: string;
|
|
168
|
+
description?: string;
|
|
169
|
+
fields: string[];
|
|
170
|
+
collapsible?: boolean;
|
|
171
|
+
defaultCollapsed?: boolean;
|
|
172
|
+
}>;
|
|
173
|
+
/**
|
|
174
|
+
* Form layout.
|
|
175
|
+
*
|
|
176
|
+
* Supported layouts:
|
|
177
|
+
* - `vertical` – label above field (default)
|
|
178
|
+
* - `horizontal` – label and field in a row
|
|
179
|
+
* - `inline` – compact inline layout, typically used in toolbars
|
|
180
|
+
* - `grid` – **experimental** grid layout
|
|
181
|
+
*
|
|
182
|
+
* Note: As of the current implementation, the underlying form renderer does not yet
|
|
183
|
+
* support a native `grid` layout and will internally treat `layout: "grid"` as
|
|
184
|
+
* `layout: "vertical"`. This value is exposed in the schema for forward compatibility,
|
|
185
|
+
* and behavior may change once grid support is implemented.
|
|
186
|
+
*
|
|
187
|
+
* @default 'vertical'
|
|
188
|
+
*/
|
|
189
|
+
layout?: 'vertical' | 'horizontal' | 'inline' | 'grid';
|
|
190
|
+
/**
|
|
191
|
+
* Grid columns (for grid layout).
|
|
192
|
+
*
|
|
193
|
+
* Intended number of columns when using a `grid` layout. Current renderers that do
|
|
194
|
+
* not implement true grid support may ignore this value and fall back to a vertical
|
|
195
|
+
* layout. When grid layout is supported, this value should control how many form
|
|
196
|
+
* fields are placed per row.
|
|
197
|
+
*
|
|
198
|
+
* @default 2
|
|
199
|
+
*/
|
|
200
|
+
columns?: number;
|
|
201
|
+
/**
|
|
202
|
+
* Show submit button
|
|
203
|
+
* @default true
|
|
204
|
+
*/
|
|
205
|
+
showSubmit?: boolean;
|
|
206
|
+
/**
|
|
207
|
+
* Submit button text
|
|
208
|
+
*/
|
|
209
|
+
submitText?: string;
|
|
210
|
+
/**
|
|
211
|
+
* Show cancel button
|
|
212
|
+
* @default true
|
|
213
|
+
*/
|
|
214
|
+
showCancel?: boolean;
|
|
215
|
+
/**
|
|
216
|
+
* Cancel button text
|
|
217
|
+
*/
|
|
218
|
+
cancelText?: string;
|
|
219
|
+
/**
|
|
220
|
+
* Show reset button
|
|
221
|
+
* @default false
|
|
222
|
+
*/
|
|
223
|
+
showReset?: boolean;
|
|
224
|
+
/**
|
|
225
|
+
* Initial values (for create mode)
|
|
226
|
+
*/
|
|
227
|
+
initialValues?: Record<string, any>;
|
|
228
|
+
/**
|
|
229
|
+
* Callback on successful submission
|
|
230
|
+
*/
|
|
231
|
+
onSuccess?: (data: any) => void | Promise<void>;
|
|
232
|
+
/**
|
|
233
|
+
* Callback on error
|
|
234
|
+
*/
|
|
235
|
+
onError?: (error: Error) => void;
|
|
236
|
+
/**
|
|
237
|
+
* Callback on cancel
|
|
238
|
+
*/
|
|
239
|
+
onCancel?: () => void;
|
|
240
|
+
/**
|
|
241
|
+
* Read-only mode
|
|
242
|
+
* @default false
|
|
243
|
+
*/
|
|
244
|
+
readOnly?: boolean;
|
|
245
|
+
/**
|
|
246
|
+
* Custom CSS class
|
|
247
|
+
*/
|
|
248
|
+
className?: string;
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* Union type of all ObjectQL component schemas
|
|
252
|
+
*/
|
|
253
|
+
export type ObjectQLComponentSchema = ObjectTableSchema | ObjectFormSchema;
|
|
254
|
+
//# sourceMappingURL=objectql.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"objectql.d.ts","sourceRoot":"","sources":["../src/objectql.ts"],"names":[],"mappings":"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"}
|
package/dist/objectql.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @object-ui/types - ObjectQL Component Schemas
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for ObjectQL-specific components.
|
|
5
|
+
* These schemas enable building ObjectQL-aware interfaces directly from object metadata.
|
|
6
|
+
*
|
|
7
|
+
* @module objectql
|
|
8
|
+
* @packageDocumentation
|
|
9
|
+
*/
|
|
10
|
+
export {};
|