@declarion/react 0.1.33 → 0.1.44
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/dist-lib/JsonEditor-ByVfvrpB.js +71 -0
- package/dist-lib/JsonEditor-ByVfvrpB.js.map +1 -0
- package/dist-lib/api/params.d.ts +16 -2
- package/dist-lib/components/columns/ColumnPicker.d.ts +0 -5
- package/dist-lib/components/detail/DetailPage.d.ts +30 -0
- package/dist-lib/components/fields/MultilangField.d.ts +1 -1
- package/dist-lib/components/fields/MultilangTextField.d.ts +1 -1
- package/dist-lib/components/fields/RefField.d.ts +1 -1
- package/dist-lib/components/filters/FilterChips.d.ts +0 -6
- package/dist-lib/components/filters/FilterDrawer.d.ts +0 -6
- package/dist-lib/components/layout/Rail.d.ts +16 -0
- package/dist-lib/components/layout/Sidebar.d.ts +11 -1
- package/dist-lib/components/layout/TabStrip.d.ts +4 -0
- package/dist-lib/components/layout/TenantChip.d.ts +17 -0
- package/dist-lib/components/layout/TopBar.d.ts +11 -1
- package/dist-lib/components/list/BulkBar.d.ts +18 -0
- package/dist-lib/components/list/InlineEditCell.d.ts +15 -0
- package/dist-lib/components/list/ListPage.d.ts +34 -0
- package/dist-lib/components/list/QuickPeek.d.ts +36 -0
- package/dist-lib/components/list/RowMenu.d.ts +23 -0
- package/dist-lib/components/list/resolveActions.d.ts +67 -0
- package/dist-lib/components/pages/auth/AuthShell.d.ts +13 -0
- package/dist-lib/components/pages/auth/Forgot.d.ts +1 -0
- package/dist-lib/components/pages/auth/SignIn.d.ts +1 -0
- package/dist-lib/components/pages/auth/SignUp.d.ts +1 -0
- package/dist-lib/components/pages/auth/TwoFA.d.ts +1 -0
- package/dist-lib/components/pages/auth/icons.d.ts +6 -0
- package/dist-lib/components/pages/home/HomeStub.d.ts +6 -0
- package/dist-lib/components/pages/jobs/Jobs.d.ts +1 -0
- package/dist-lib/components/pages/pipeline/Pipeline.d.ts +1 -0
- package/dist-lib/components/pages/profile/Preferences.d.ts +1 -0
- package/dist-lib/components/pages/profile/Profile.d.ts +1 -0
- package/dist-lib/components/primitives/Avatar.d.ts +6 -0
- package/dist-lib/components/primitives/BoolToggle.d.ts +5 -0
- package/dist-lib/components/primitives/Btn.d.ts +19 -0
- package/dist-lib/components/primitives/Check.d.ts +7 -0
- package/dist-lib/components/primitives/Chip.d.ts +9 -0
- package/dist-lib/components/primitives/Dropdown.d.ts +11 -0
- package/dist-lib/components/primitives/Fields.d.ts +82 -0
- package/dist-lib/components/primitives/IconBtn.d.ts +11 -0
- package/dist-lib/components/primitives/Icons.d.ts +87 -0
- package/dist-lib/components/primitives/Kbd.d.ts +4 -0
- package/dist-lib/components/primitives/MenuItem.d.ts +11 -0
- package/dist-lib/components/primitives/Pill.d.ts +11 -0
- package/dist-lib/components/primitives/RecordIdBadge.d.ts +8 -0
- package/dist-lib/components/primitives/RowField.d.ts +10 -0
- package/dist-lib/components/primitives/SectionCard.d.ts +19 -0
- package/dist-lib/components/primitives/Spinner.d.ts +3 -0
- package/dist-lib/components/primitives/cx.d.ts +1 -0
- package/dist-lib/components/primitives/index.d.ts +31 -0
- package/dist-lib/components/shared/ActionConfirmDialog.d.ts +1 -1
- package/dist-lib/components/shared/ActionDialog.d.ts +1 -11
- package/dist-lib/components/shared/ActionResultDialog.d.ts +1 -1
- package/dist-lib/components/shared/ActionRunner.d.ts +21 -0
- package/dist-lib/components/shared/Breadcrumbs.d.ts +14 -0
- package/dist-lib/components/shared/ChangePasswordDialog.d.ts +9 -0
- package/dist-lib/components/shared/ConfirmDialog.d.ts +1 -1
- package/dist-lib/components/shared/CopyButton.d.ts +1 -1
- package/dist-lib/components/shared/DynamicIcon.d.ts +6 -3
- package/dist-lib/components/shared/ErrorBoundary.d.ts +0 -5
- package/dist-lib/components/shell/AIPanel.d.ts +6 -0
- package/dist-lib/components/shell/CommandPalette.d.ts +18 -0
- package/dist-lib/components/views/ViewSwitcher.d.ts +1 -7
- package/dist-lib/declarion-react.css +1 -1
- package/dist-lib/hooks/useParams.d.ts +1 -1
- package/dist-lib/index.d.ts +47 -0
- package/dist-lib/index.js +14587 -8270
- package/dist-lib/index.js.map +1 -1
- package/dist-lib/lib/child-config.d.ts +1 -0
- package/dist-lib/stores/appearance.d.ts +31 -0
- package/dist-lib/stores/tabs.d.ts +13 -0
- package/dist-lib/types/api.d.ts +21 -1
- package/dist-lib/types/ordmap.d.ts +32 -0
- package/dist-lib/types/schema.d.ts +108 -37
- package/package.json +1 -2
- package/dist-lib/JsonEditor-C5NOzsey.js +0 -71
- package/dist-lib/JsonEditor-C5NOzsey.js.map +0 -1
- package/dist-lib/components/layout/TabBar.d.ts +0 -1
- package/dist-lib/components/layout/ThemeToggle.d.ts +0 -1
- package/dist-lib/components/pages/LoginPage.d.ts +0 -1
- package/dist-lib/components/pages/SignupPage.d.ts +0 -1
- package/dist-lib/components/shared/BatchActionProgress.d.ts +0 -18
- package/dist-lib/components/ui/alert-dialog.d.ts +0 -14
- package/dist-lib/components/ui/badge.d.ts +0 -9
- package/dist-lib/components/ui/button.d.ts +0 -11
- package/dist-lib/components/ui/card.d.ts +0 -8
- package/dist-lib/components/ui/dialog.d.ts +0 -13
- package/dist-lib/components/ui/dropdown-menu.d.ts +0 -24
- package/dist-lib/components/ui/input.d.ts +0 -3
- package/dist-lib/components/ui/label.d.ts +0 -5
- package/dist-lib/components/ui/select.d.ts +0 -13
- package/dist-lib/components/ui/separator.d.ts +0 -4
- package/dist-lib/components/ui/skeleton.d.ts +0 -2
- package/dist-lib/components/ui/table.d.ts +0 -10
- package/dist-lib/components/ui/textarea.d.ts +0 -3
- package/dist-lib/lib/theme-utils.d.ts +0 -3
- package/dist-lib/stores/theme.d.ts +0 -10
|
@@ -13,6 +13,7 @@ export interface ResolvedChildConfig {
|
|
|
13
13
|
quick_add?: ChildQuickAdd;
|
|
14
14
|
editable: boolean;
|
|
15
15
|
position_field?: string;
|
|
16
|
+
interaction: "navigate" | "inline_edit" | "readonly";
|
|
16
17
|
}
|
|
17
18
|
export declare function resolveChildConfig(relation: ChildRelation, childEntity: Entity, screenNode?: LayoutNode): ResolvedChildConfig;
|
|
18
19
|
export declare function inferSort(entity: Entity): string;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export type ThemeId = "light" | "dark";
|
|
2
|
+
export type AccentId = "violet" | "blue" | "teal" | "amber" | "rose";
|
|
3
|
+
export type Density = "compact" | "comfortable" | "cozy";
|
|
4
|
+
export type SidebarMode = "wide" | "collapsed";
|
|
5
|
+
export type TabsPosition = "top" | "bottom";
|
|
6
|
+
export type AiSurface = "command" | "panel" | "both" | "off";
|
|
7
|
+
export interface Appearance {
|
|
8
|
+
theme: ThemeId;
|
|
9
|
+
accent: AccentId;
|
|
10
|
+
density: Density;
|
|
11
|
+
sidebar: SidebarMode;
|
|
12
|
+
tabsPosition: TabsPosition;
|
|
13
|
+
tabsMaxOpen: number;
|
|
14
|
+
/** When false, tabs are not persisted across reloads (mirrors ui_tabs_persist). */
|
|
15
|
+
tabsPersist: boolean;
|
|
16
|
+
radius: number;
|
|
17
|
+
zebra: boolean;
|
|
18
|
+
aiSurface: AiSurface;
|
|
19
|
+
}
|
|
20
|
+
export declare function applyAppearance(a: Appearance): void;
|
|
21
|
+
interface AppearanceState extends Appearance {
|
|
22
|
+
set: <K extends keyof Appearance>(key: K, value: Appearance[K]) => void;
|
|
23
|
+
setMany: (patch: Partial<Appearance>) => void;
|
|
24
|
+
/** Apply tenant defaults from server params. ONLY fills keys the user has
|
|
25
|
+
* not already set locally — any field present in localStorage wins.
|
|
26
|
+
* That preserves the user's Tweaks choices across reloads while still
|
|
27
|
+
* picking up tenant defaults on first visit. */
|
|
28
|
+
hydrateFromParams: (params: Record<string, unknown>) => void;
|
|
29
|
+
}
|
|
30
|
+
export declare const useAppearanceStore: import("zustand").UseBoundStore<import("zustand").StoreApi<AppearanceState>>;
|
|
31
|
+
export {};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export type TabMode = "view" | "edit" | "create";
|
|
1
2
|
export interface TabItem {
|
|
2
3
|
id: string;
|
|
3
4
|
pathname: string;
|
|
@@ -5,6 +6,13 @@ export interface TabItem {
|
|
|
5
6
|
title: string;
|
|
6
7
|
icon?: string;
|
|
7
8
|
closable: boolean;
|
|
9
|
+
area?: string;
|
|
10
|
+
screen?: string;
|
|
11
|
+
navId?: string;
|
|
12
|
+
entity?: string;
|
|
13
|
+
record?: Record<string, unknown>;
|
|
14
|
+
mode?: TabMode;
|
|
15
|
+
dirty?: boolean;
|
|
8
16
|
}
|
|
9
17
|
interface TabState {
|
|
10
18
|
tabs: TabItem[];
|
|
@@ -16,6 +24,11 @@ interface TabState {
|
|
|
16
24
|
findTabByPathname: (pathname: string) => TabItem | undefined;
|
|
17
25
|
updateTabTitle: (id: string, title: string) => void;
|
|
18
26
|
updateTabSearch: (id: string, search: string) => void;
|
|
27
|
+
setDirty: (id: string, dirty: boolean) => void;
|
|
28
|
+
setMode: (id: string, mode: TabMode) => void;
|
|
29
|
+
updateTab: (id: string, patch: Partial<TabItem>) => void;
|
|
30
|
+
setScope: (tenantId: string | null, userId: string | null) => void;
|
|
31
|
+
hydrate: () => void;
|
|
19
32
|
}
|
|
20
33
|
export declare const useTabStore: import("zustand").UseBoundStore<import("zustand").StoreApi<TabState>>;
|
|
21
34
|
export {};
|
package/dist-lib/types/api.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { LocalizedString } from "./schema";
|
|
1
|
+
import type { AccentDef, LocalizedString } from "./schema";
|
|
2
2
|
export interface ListMeta {
|
|
3
3
|
total: number;
|
|
4
4
|
page: number;
|
|
@@ -29,11 +29,13 @@ export declare class ApiError extends Error {
|
|
|
29
29
|
index?: number;
|
|
30
30
|
constructor(status: number, message: string, code: string, index?: number);
|
|
31
31
|
}
|
|
32
|
+
export type TenantEnv = "production" | "staging" | "dev" | string;
|
|
32
33
|
export interface Tenant {
|
|
33
34
|
id: string;
|
|
34
35
|
code: string;
|
|
35
36
|
name: string;
|
|
36
37
|
role: string;
|
|
38
|
+
env?: TenantEnv;
|
|
37
39
|
}
|
|
38
40
|
export interface AuthUser {
|
|
39
41
|
id: string;
|
|
@@ -77,6 +79,24 @@ export interface PublicParam {
|
|
|
77
79
|
description?: LocalizedString;
|
|
78
80
|
value: unknown;
|
|
79
81
|
}
|
|
82
|
+
/** Subset of branding exposed pre-login by /api/params/public. */
|
|
83
|
+
export interface PublicBranding {
|
|
84
|
+
app_name?: string;
|
|
85
|
+
app_logo?: string;
|
|
86
|
+
app_initial?: string;
|
|
87
|
+
accent_color?: string;
|
|
88
|
+
wordmark?: string;
|
|
89
|
+
version_label?: string;
|
|
90
|
+
auth_tagline?: LocalizedString;
|
|
91
|
+
auth_subtagline?: LocalizedString;
|
|
92
|
+
auth_badges?: LocalizedString[];
|
|
93
|
+
}
|
|
94
|
+
/** Envelope returned by GET /api/params/public. */
|
|
95
|
+
export interface PublicParamsResponse {
|
|
96
|
+
parameters: PublicParam[];
|
|
97
|
+
accents?: Record<string, AccentDef>;
|
|
98
|
+
branding?: PublicBranding;
|
|
99
|
+
}
|
|
80
100
|
export interface ResolvedParam {
|
|
81
101
|
code: string;
|
|
82
102
|
name: LocalizedString;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OrderedMap preserves the insertion order of a string-keyed map while
|
|
3
|
+
* keeping O(1) lookup. It mirrors the Go `ordmap.OrderedMap[T]` container
|
|
4
|
+
* on the server side. Use it for schema sub-maps (entity fields, handler
|
|
5
|
+
* params, resolved_params) where YAML/JSON declaration order is part of
|
|
6
|
+
* the UI contract.
|
|
7
|
+
*
|
|
8
|
+
* JS objects already preserve insertion order for string keys (ES2015+),
|
|
9
|
+
* but the Go side emits JSON that is parsed into a plain object by
|
|
10
|
+
* default — this class wraps the hydrated object so call sites get a
|
|
11
|
+
* consistent API (`get`, `has`, iteration as `[name, value]` tuples) and
|
|
12
|
+
* the type system enforces read-only access.
|
|
13
|
+
*/
|
|
14
|
+
export declare class OrderedMap<T extends {
|
|
15
|
+
name?: string;
|
|
16
|
+
}> implements Iterable<[string, T]> {
|
|
17
|
+
#private;
|
|
18
|
+
constructor(items: readonly T[]);
|
|
19
|
+
/** Build from a `{ name: value }` object, populating each value's `name`
|
|
20
|
+
* field from the object key. Insertion order is the JS property order. */
|
|
21
|
+
static fromObject<T extends {
|
|
22
|
+
name?: string;
|
|
23
|
+
}>(raw: Readonly<Record<string, unknown>> | null | undefined): OrderedMap<T>;
|
|
24
|
+
get length(): number;
|
|
25
|
+
has(name: string): boolean;
|
|
26
|
+
get(name: string): T | undefined;
|
|
27
|
+
/** Read-only items in declaration order. */
|
|
28
|
+
items(): readonly T[];
|
|
29
|
+
/** Names in declaration order. */
|
|
30
|
+
names(): readonly string[];
|
|
31
|
+
[Symbol.iterator](): IterableIterator<[string, T]>;
|
|
32
|
+
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { OrderedMap } from "./ordmap";
|
|
2
|
+
export { OrderedMap };
|
|
1
3
|
export type LocalizedString = Record<string, string>;
|
|
2
4
|
/**
|
|
3
5
|
* Reserved sentinel value for Screen.detail_screen (list screens). Disables
|
|
@@ -21,6 +23,11 @@ export interface UnitConfig {
|
|
|
21
23
|
display?: string;
|
|
22
24
|
}
|
|
23
25
|
export interface EntityField {
|
|
26
|
+
/**
|
|
27
|
+
* Populated by the schema hydrator from the enclosing map key. Tests and
|
|
28
|
+
* fixtures may omit it; production code always receives it set.
|
|
29
|
+
*/
|
|
30
|
+
name?: string;
|
|
24
31
|
type: string;
|
|
25
32
|
required?: boolean;
|
|
26
33
|
primary?: boolean;
|
|
@@ -54,8 +61,7 @@ export interface EntityField {
|
|
|
54
61
|
export interface StructureDef {
|
|
55
62
|
name: LocalizedString;
|
|
56
63
|
description?: LocalizedString;
|
|
57
|
-
fields:
|
|
58
|
-
field_order: string[];
|
|
64
|
+
fields: OrderedMap<EntityField>;
|
|
59
65
|
}
|
|
60
66
|
export type ChildDisplayMode = "table" | "timeline" | "list" | "cards";
|
|
61
67
|
export interface TimelineConfig {
|
|
@@ -92,6 +98,15 @@ export interface ChildDisplay {
|
|
|
92
98
|
searchable?: boolean;
|
|
93
99
|
filters?: string[];
|
|
94
100
|
position_field?: string;
|
|
101
|
+
/**
|
|
102
|
+
* Row interaction for `mode: table`.
|
|
103
|
+
* - `navigate`: identity cell (first column) is a link to the child's
|
|
104
|
+
* detail; other cells read-only. Default for associated entities
|
|
105
|
+
* (child has its own detail screen).
|
|
106
|
+
* - `inline_edit`: cells are inline-editable (aggregate children).
|
|
107
|
+
* - `readonly`: pure display.
|
|
108
|
+
*/
|
|
109
|
+
interaction?: "navigate" | "inline_edit" | "readonly";
|
|
95
110
|
}
|
|
96
111
|
export interface ChildRelation {
|
|
97
112
|
entity: string;
|
|
@@ -143,6 +158,8 @@ export interface ParameterDef {
|
|
|
143
158
|
default?: unknown;
|
|
144
159
|
is_public?: boolean;
|
|
145
160
|
category?: string;
|
|
161
|
+
/** Override scopes accepted on writes. Subset of: env, tenant, role, user, object. Empty = all. */
|
|
162
|
+
scopes?: string[];
|
|
146
163
|
}
|
|
147
164
|
export interface AssociationDisplay {
|
|
148
165
|
name?: LocalizedString;
|
|
@@ -167,8 +184,7 @@ export interface Entity {
|
|
|
167
184
|
icon: string;
|
|
168
185
|
display_field?: string;
|
|
169
186
|
};
|
|
170
|
-
fields:
|
|
171
|
-
field_order: string[];
|
|
187
|
+
fields: OrderedMap<EntityField>;
|
|
172
188
|
soft_delete?: string;
|
|
173
189
|
tenant_key?: string;
|
|
174
190
|
children?: ChildRelation[];
|
|
@@ -186,11 +202,18 @@ export declare function extractPkValues(entity: Entity, record: Record<string, u
|
|
|
186
202
|
export declare function pkValuesToId(pkValues: PkValues): string;
|
|
187
203
|
export declare function isCompositePk(entity: Entity): boolean;
|
|
188
204
|
export type SizeValue = string;
|
|
205
|
+
export interface SectionBadgeConfig {
|
|
206
|
+
text: LocalizedString;
|
|
207
|
+
tone?: "indigo" | "emerald" | "amber" | "rose" | "sky" | "violet" | "slate" | "teal";
|
|
208
|
+
dot?: boolean;
|
|
209
|
+
}
|
|
189
210
|
export interface SectionNode {
|
|
190
211
|
name: LocalizedString;
|
|
191
212
|
items: LayoutNode[];
|
|
192
213
|
collapsed?: boolean;
|
|
193
214
|
columns?: number;
|
|
215
|
+
icon?: string;
|
|
216
|
+
badge?: SectionBadgeConfig;
|
|
194
217
|
}
|
|
195
218
|
export interface RowConfig {
|
|
196
219
|
items: LayoutNode[];
|
|
@@ -240,6 +263,7 @@ export interface LayoutNode {
|
|
|
240
263
|
searchable?: boolean;
|
|
241
264
|
filters?: string[];
|
|
242
265
|
position_field?: string;
|
|
266
|
+
interaction?: "navigate" | "inline_edit" | "readonly";
|
|
243
267
|
}
|
|
244
268
|
export interface Screen {
|
|
245
269
|
type: "list" | "detail" | "custom" | "record_list";
|
|
@@ -267,6 +291,45 @@ export interface Screen {
|
|
|
267
291
|
detail_screen?: string;
|
|
268
292
|
fixed_filters?: Record<string, unknown>;
|
|
269
293
|
views?: ViewDefinition[];
|
|
294
|
+
/** Action slot promotion (rule-of-2). UI honors first 2. */
|
|
295
|
+
primary_actions?: string[];
|
|
296
|
+
primary_bulk_actions?: string[];
|
|
297
|
+
primary_record_actions?: string[];
|
|
298
|
+
/** "open" (default) navigates to detail; "peek" opens QuickPeek drawer. */
|
|
299
|
+
on_row_click?: "open" | "peek";
|
|
300
|
+
quick_peek?: QuickPeekConfig;
|
|
301
|
+
inline_edit?: InlineEditConfig;
|
|
302
|
+
column_overrides?: Record<string, ColumnSpec>;
|
|
303
|
+
activity_rail?: ActivityRailConfig;
|
|
304
|
+
}
|
|
305
|
+
export interface QuickPeekConfig {
|
|
306
|
+
enabled?: boolean;
|
|
307
|
+
width?: number;
|
|
308
|
+
/**
|
|
309
|
+
* Explicit list of field codes to show. Highest precedence. When absent,
|
|
310
|
+
* `sections` is consulted; when that's also absent the platform falls back
|
|
311
|
+
* to all simple scalar fields on the entity (capped at 8).
|
|
312
|
+
*/
|
|
313
|
+
fields?: string[];
|
|
314
|
+
/** Section names from the detail-layout. Their `fields:` get flattened. */
|
|
315
|
+
sections?: string[];
|
|
316
|
+
inline_editable?: boolean;
|
|
317
|
+
primary_action?: string;
|
|
318
|
+
}
|
|
319
|
+
export interface InlineEditConfig {
|
|
320
|
+
enabled?: boolean;
|
|
321
|
+
/** dblclick | enter | always */
|
|
322
|
+
trigger?: string;
|
|
323
|
+
}
|
|
324
|
+
export interface ColumnSpec {
|
|
325
|
+
inline_edit?: boolean;
|
|
326
|
+
width?: string;
|
|
327
|
+
}
|
|
328
|
+
export interface ActivityRailConfig {
|
|
329
|
+
children: string;
|
|
330
|
+
/** left | right (default right) */
|
|
331
|
+
position?: string;
|
|
332
|
+
width?: number;
|
|
270
333
|
}
|
|
271
334
|
/** System view (preset) defined in screen YAML. Read-only. */
|
|
272
335
|
export interface ViewDefinition {
|
|
@@ -286,6 +349,24 @@ export interface NavNode {
|
|
|
286
349
|
name?: LocalizedString;
|
|
287
350
|
icon?: string;
|
|
288
351
|
items?: NavNode[];
|
|
352
|
+
area?: string;
|
|
353
|
+
badge?: string;
|
|
354
|
+
children?: NavNode[];
|
|
355
|
+
}
|
|
356
|
+
export interface AreaDef {
|
|
357
|
+
code: string;
|
|
358
|
+
name?: LocalizedString;
|
|
359
|
+
icon?: string;
|
|
360
|
+
home_screen?: string;
|
|
361
|
+
required_permission?: string;
|
|
362
|
+
}
|
|
363
|
+
export interface AccentDef {
|
|
364
|
+
color?: string;
|
|
365
|
+
color_2?: string;
|
|
366
|
+
soft?: string;
|
|
367
|
+
ring?: string;
|
|
368
|
+
on_dark?: string;
|
|
369
|
+
on_light?: string;
|
|
289
370
|
}
|
|
290
371
|
export interface HandlerParamDisplay {
|
|
291
372
|
name?: LocalizedString;
|
|
@@ -293,6 +374,8 @@ export interface HandlerParamDisplay {
|
|
|
293
374
|
widget?: string;
|
|
294
375
|
}
|
|
295
376
|
export interface HandlerParam {
|
|
377
|
+
/** Populated by the schema hydrator from the enclosing map key. */
|
|
378
|
+
name?: string;
|
|
296
379
|
type?: string;
|
|
297
380
|
required?: boolean;
|
|
298
381
|
default?: unknown;
|
|
@@ -346,8 +429,17 @@ export interface Action {
|
|
|
346
429
|
visibility?: string[];
|
|
347
430
|
confirmation?: LocalizedString;
|
|
348
431
|
conditions?: ActionCondition[];
|
|
349
|
-
|
|
350
|
-
|
|
432
|
+
/** Promote to header/bulk-bar button (max 2 per slot honored by UI). */
|
|
433
|
+
primary?: boolean;
|
|
434
|
+
/** Forces confirm + danger styling. */
|
|
435
|
+
destructive?: boolean;
|
|
436
|
+
/** UI shows a toast instead of a blocking result modal; adds a navigation link if progress_screen is set. */
|
|
437
|
+
long_running?: boolean;
|
|
438
|
+
/** Screen code to navigate to after a long_running action starts (resolved via schema.screens). */
|
|
439
|
+
progress_screen?: string;
|
|
440
|
+
/** When true, action shown grayed until >=1 row selected. */
|
|
441
|
+
bulk_selection_required?: boolean;
|
|
442
|
+
resolved_params?: OrderedMap<HandlerParam>;
|
|
351
443
|
/**
|
|
352
444
|
* Default values of params marked hidden+default by the action. The UI
|
|
353
445
|
* seeds formData with these so filter templates resolve references to
|
|
@@ -369,8 +461,7 @@ export interface HandlerDef {
|
|
|
369
461
|
name?: LocalizedString;
|
|
370
462
|
icon?: string;
|
|
371
463
|
};
|
|
372
|
-
params?:
|
|
373
|
-
param_order?: string[];
|
|
464
|
+
params?: OrderedMap<HandlerParam>;
|
|
374
465
|
success_event?: string;
|
|
375
466
|
}
|
|
376
467
|
export interface Branding {
|
|
@@ -378,34 +469,13 @@ export interface Branding {
|
|
|
378
469
|
app_logo?: string;
|
|
379
470
|
app_initial?: string;
|
|
380
471
|
accent_color?: string;
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
popover?: string;
|
|
389
|
-
popover_foreground?: string;
|
|
390
|
-
primary?: string;
|
|
391
|
-
primary_foreground?: string;
|
|
392
|
-
secondary?: string;
|
|
393
|
-
secondary_foreground?: string;
|
|
394
|
-
muted?: string;
|
|
395
|
-
muted_foreground?: string;
|
|
396
|
-
accent?: string;
|
|
397
|
-
accent_foreground?: string;
|
|
398
|
-
destructive?: string;
|
|
399
|
-
destructive_foreground?: string;
|
|
400
|
-
border?: string;
|
|
401
|
-
input?: string;
|
|
402
|
-
ring?: string;
|
|
403
|
-
sidebar?: string;
|
|
404
|
-
sidebar_foreground?: string;
|
|
405
|
-
sidebar_border?: string;
|
|
406
|
-
sidebar_accent?: string;
|
|
407
|
-
sidebar_muted?: string;
|
|
408
|
-
radius?: string;
|
|
472
|
+
wordmark?: string;
|
|
473
|
+
version_label?: string;
|
|
474
|
+
status_url?: string;
|
|
475
|
+
auth_tagline?: LocalizedString;
|
|
476
|
+
auth_subtagline?: LocalizedString;
|
|
477
|
+
auth_badges?: LocalizedString[];
|
|
478
|
+
css_url?: string;
|
|
409
479
|
}
|
|
410
480
|
export interface Schema {
|
|
411
481
|
languages: LanguageDef[];
|
|
@@ -418,5 +488,6 @@ export interface Schema {
|
|
|
418
488
|
enums: Record<string, EnumDef>;
|
|
419
489
|
parameters: Record<string, ParameterDef>;
|
|
420
490
|
branding?: Branding;
|
|
421
|
-
|
|
491
|
+
areas?: AreaDef[];
|
|
492
|
+
accents?: Record<string, AccentDef>;
|
|
422
493
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@declarion/react",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.44",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "React SDK for Declarion, the schema-driven business apps platform.",
|
|
@@ -45,7 +45,6 @@
|
|
|
45
45
|
"@tanstack/react-virtual": "^3.11.0",
|
|
46
46
|
"class-variance-authority": "^0.7.0",
|
|
47
47
|
"clsx": "^2.1.0",
|
|
48
|
-
"lucide-react": "^0.468.0",
|
|
49
48
|
"react-markdown": "^10.1.0",
|
|
50
49
|
"react-router-dom": "^6.28.0",
|
|
51
50
|
"recharts": "^2.15.0",
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { jsx as b } from "react/jsx-runtime";
|
|
2
|
-
import { useRef as i, useEffect as a } from "react";
|
|
3
|
-
import { Mode as d, createJSONEditor as E } from "vanilla-jsoneditor";
|
|
4
|
-
import "vanilla-jsoneditor/themes/jse-theme-dark.css";
|
|
5
|
-
function p(t) {
|
|
6
|
-
if (t == null) return { text: "" };
|
|
7
|
-
if (typeof t == "string")
|
|
8
|
-
try {
|
|
9
|
-
return { json: JSON.parse(t) };
|
|
10
|
-
} catch {
|
|
11
|
-
return { text: t };
|
|
12
|
-
}
|
|
13
|
-
return { json: t };
|
|
14
|
-
}
|
|
15
|
-
function R({ value: t, onChange: c, readOnly: r }) {
|
|
16
|
-
const o = i(null), s = i(null), n = i(c);
|
|
17
|
-
return a(() => {
|
|
18
|
-
n.current = c;
|
|
19
|
-
}, [c]), a(() => {
|
|
20
|
-
if (!o.current) return;
|
|
21
|
-
const j = {
|
|
22
|
-
content: p(t),
|
|
23
|
-
readOnly: r ?? !1,
|
|
24
|
-
mode: r ? d.tree : d.text,
|
|
25
|
-
mainMenuBar: !r,
|
|
26
|
-
navigationBar: !1,
|
|
27
|
-
statusBar: !1,
|
|
28
|
-
onChange: (e, u, x) => {
|
|
29
|
-
if (!(r || !n.current) && !x.contentErrors) {
|
|
30
|
-
if ("json" in e)
|
|
31
|
-
n.current(e.json);
|
|
32
|
-
else if ("text" in e)
|
|
33
|
-
try {
|
|
34
|
-
n.current(JSON.parse(e.text));
|
|
35
|
-
} catch {
|
|
36
|
-
n.current(e.text);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}, f = () => {
|
|
41
|
-
var u;
|
|
42
|
-
const e = document.documentElement.classList.contains("dark");
|
|
43
|
-
(u = o.current) == null || u.classList.toggle("jse-theme-dark", e);
|
|
44
|
-
};
|
|
45
|
-
f();
|
|
46
|
-
const m = new MutationObserver(f);
|
|
47
|
-
m.observe(document.documentElement, {
|
|
48
|
-
attributes: !0,
|
|
49
|
-
attributeFilter: ["class"]
|
|
50
|
-
});
|
|
51
|
-
const l = E({
|
|
52
|
-
target: o.current,
|
|
53
|
-
props: j
|
|
54
|
-
});
|
|
55
|
-
return s.current = l, () => {
|
|
56
|
-
m.disconnect(), l.destroy(), s.current = null;
|
|
57
|
-
};
|
|
58
|
-
}, [r]), a(() => {
|
|
59
|
-
!s.current || !r || s.current.updateProps({ content: p(t) });
|
|
60
|
-
}, [t, r]), /* @__PURE__ */ b(
|
|
61
|
-
"div",
|
|
62
|
-
{
|
|
63
|
-
ref: o,
|
|
64
|
-
className: r ? "json-editor-readonly" : "json-editor-editable"
|
|
65
|
-
}
|
|
66
|
-
);
|
|
67
|
-
}
|
|
68
|
-
export {
|
|
69
|
-
R as JsonEditor
|
|
70
|
-
};
|
|
71
|
-
//# sourceMappingURL=JsonEditor-C5NOzsey.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"JsonEditor-C5NOzsey.js","sources":["../src/components/fields/JsonEditor.tsx"],"sourcesContent":["import { useRef, useEffect } from \"react\";\nimport {\n createJSONEditor,\n Mode,\n type Content,\n type OnChangeStatus,\n type JSONEditorPropsOptional,\n} from \"vanilla-jsoneditor\";\n// Dark theme CSS vars for vanilla-jsoneditor (sets --jse-* custom properties)\nimport \"vanilla-jsoneditor/themes/jse-theme-dark.css\";\n\ninterface JsonEditorProps {\n value: unknown;\n onChange?: (value: unknown) => void;\n readOnly?: boolean;\n // Future: JSON Schema for in-editor validation (Ajv). Accept now, wire later.\n schema?: Record<string, unknown>;\n}\n\nfunction toContent(v: unknown): Content {\n if (v == null) return { text: \"\" };\n if (typeof v === \"string\") {\n try {\n return { json: JSON.parse(v) };\n } catch {\n return { text: v };\n }\n }\n return { json: v };\n}\n\nexport function JsonEditor({ value, onChange, readOnly }: JsonEditorProps) {\n const containerRef = useRef<HTMLDivElement>(null);\n const editorRef = useRef<ReturnType<typeof createJSONEditor> | null>(null);\n const onChangeRef = useRef(onChange);\n useEffect(() => { onChangeRef.current = onChange; }, [onChange]);\n\n // Create / recreate editor when readOnly changes\n useEffect(() => {\n if (!containerRef.current) return;\n\n const props: JSONEditorPropsOptional = {\n content: toContent(value),\n readOnly: readOnly ?? false,\n mode: readOnly ? Mode.tree : Mode.text,\n mainMenuBar: !readOnly,\n navigationBar: false,\n statusBar: false,\n onChange: (content: Content, _prev: Content, status: OnChangeStatus) => {\n if (readOnly || !onChangeRef.current) return;\n if (status.contentErrors) return;\n if (\"json\" in content) {\n onChangeRef.current(content.json);\n } else if (\"text\" in content) {\n try {\n onChangeRef.current(JSON.parse(content.text));\n } catch {\n onChangeRef.current(content.text);\n }\n }\n },\n };\n\n const syncDarkClass = () => {\n const isDark = document.documentElement.classList.contains(\"dark\");\n containerRef.current?.classList.toggle(\"jse-theme-dark\", isDark);\n };\n syncDarkClass();\n\n // Watch for dark mode toggles\n const observer = new MutationObserver(syncDarkClass);\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: [\"class\"],\n });\n\n const editor = createJSONEditor({\n target: containerRef.current,\n props,\n });\n editorRef.current = editor;\n\n return () => {\n observer.disconnect();\n editor.destroy();\n editorRef.current = null;\n };\n }, [readOnly]); // eslint-disable-line react-hooks/exhaustive-deps\n\n // Update content when value changes externally (read-only mode only)\n useEffect(() => {\n if (!editorRef.current || !readOnly) return;\n editorRef.current.updateProps({ content: toContent(value) });\n }, [value, readOnly]);\n\n return (\n <div\n ref={containerRef}\n className={readOnly ? \"json-editor-readonly\" : \"json-editor-editable\"}\n />\n );\n}\n"],"names":["toContent","v","JsonEditor","value","onChange","readOnly","containerRef","useRef","editorRef","onChangeRef","useEffect","props","Mode","content","_prev","status","syncDarkClass","isDark","_a","observer","editor","createJSONEditor","jsx"],"mappings":";;;;AAmBA,SAASA,EAAUC,GAAqB;AACtC,MAAIA,KAAK,KAAM,QAAO,EAAE,MAAM,GAAA;AAC9B,MAAI,OAAOA,KAAM;AACf,QAAI;AACF,aAAO,EAAE,MAAM,KAAK,MAAMA,CAAC,EAAA;AAAA,IAC7B,QAAQ;AACN,aAAO,EAAE,MAAMA,EAAA;AAAA,IACjB;AAEF,SAAO,EAAE,MAAMA,EAAA;AACjB;AAEO,SAASC,EAAW,EAAE,OAAAC,GAAO,UAAAC,GAAU,UAAAC,KAA6B;AACzE,QAAMC,IAAeC,EAAuB,IAAI,GAC1CC,IAAYD,EAAmD,IAAI,GACnEE,IAAcF,EAAOH,CAAQ;AACnC,SAAAM,EAAU,MAAM;AAAE,IAAAD,EAAY,UAAUL;AAAA,EAAU,GAAG,CAACA,CAAQ,CAAC,GAG/DM,EAAU,MAAM;AACd,QAAI,CAACJ,EAAa,QAAS;AAE3B,UAAMK,IAAiC;AAAA,MACrC,SAASX,EAAUG,CAAK;AAAA,MACxB,UAAUE,KAAY;AAAA,MACtB,MAAMA,IAAWO,EAAK,OAAOA,EAAK;AAAA,MAClC,aAAa,CAACP;AAAA,MACd,eAAe;AAAA,MACf,WAAW;AAAA,MACX,UAAU,CAACQ,GAAkBC,GAAgBC,MAA2B;AACtE,YAAI,EAAAV,KAAY,CAACI,EAAY,YACzB,CAAAM,EAAO;AACX,cAAI,UAAUF;AACZ,YAAAJ,EAAY,QAAQI,EAAQ,IAAI;AAAA,mBACvB,UAAUA;AACnB,gBAAI;AACF,cAAAJ,EAAY,QAAQ,KAAK,MAAMI,EAAQ,IAAI,CAAC;AAAA,YAC9C,QAAQ;AACN,cAAAJ,EAAY,QAAQI,EAAQ,IAAI;AAAA,YAClC;AAAA;AAAA,MAEJ;AAAA,IAAA,GAGIG,IAAgB,MAAM;;AAC1B,YAAMC,IAAS,SAAS,gBAAgB,UAAU,SAAS,MAAM;AACjE,OAAAC,IAAAZ,EAAa,YAAb,QAAAY,EAAsB,UAAU,OAAO,kBAAkBD;AAAA,IAC3D;AACA,IAAAD,EAAA;AAGA,UAAMG,IAAW,IAAI,iBAAiBH,CAAa;AACnD,IAAAG,EAAS,QAAQ,SAAS,iBAAiB;AAAA,MACzC,YAAY;AAAA,MACZ,iBAAiB,CAAC,OAAO;AAAA,IAAA,CAC1B;AAED,UAAMC,IAASC,EAAiB;AAAA,MAC9B,QAAQf,EAAa;AAAA,MACrB,OAAAK;AAAA,IAAA,CACD;AACD,WAAAH,EAAU,UAAUY,GAEb,MAAM;AACX,MAAAD,EAAS,WAAA,GACTC,EAAO,QAAA,GACPZ,EAAU,UAAU;AAAA,IACtB;AAAA,EACF,GAAG,CAACH,CAAQ,CAAC,GAGbK,EAAU,MAAM;AACd,IAAI,CAACF,EAAU,WAAW,CAACH,KAC3BG,EAAU,QAAQ,YAAY,EAAE,SAASR,EAAUG,CAAK,GAAG;AAAA,EAC7D,GAAG,CAACA,GAAOE,CAAQ,CAAC,GAGlB,gBAAAiB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAKhB;AAAA,MACL,WAAWD,IAAW,yBAAyB;AAAA,IAAA;AAAA,EAAA;AAGrD;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function TabBar(): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function ThemeToggle(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function LoginPage(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function SignupPage(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
interface BatchActionProgressProps {
|
|
2
|
-
/** Number of items being processed. */
|
|
3
|
-
count: number;
|
|
4
|
-
/** Whether the action is currently executing. */
|
|
5
|
-
isPending: boolean;
|
|
6
|
-
/** Whether the last execution succeeded. */
|
|
7
|
-
isSuccess?: boolean;
|
|
8
|
-
/** Whether the last execution errored. */
|
|
9
|
-
isError?: boolean;
|
|
10
|
-
/** Whether the last execution partially succeeded (some items failed/skipped). */
|
|
11
|
-
isPartial?: boolean;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Inline progress indicator for batch actions.
|
|
15
|
-
* Shows selected count, a spinner during execution, and success/error/partial state.
|
|
16
|
-
*/
|
|
17
|
-
export declare function BatchActionProgress({ count, isPending, isSuccess, isError, isPartial, }: BatchActionProgressProps): import("react/jsx-runtime").JSX.Element | null;
|
|
18
|
-
export {};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import * as AlertDialogPrimitive from "@radix-ui/react-alert-dialog";
|
|
3
|
-
declare const AlertDialog: React.FC<AlertDialogPrimitive.AlertDialogProps>;
|
|
4
|
-
declare const AlertDialogTrigger: React.ForwardRefExoticComponent<AlertDialogPrimitive.AlertDialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
5
|
-
declare const AlertDialogPortal: React.FC<AlertDialogPrimitive.AlertDialogPortalProps>;
|
|
6
|
-
declare const AlertDialogOverlay: React.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
-
declare const AlertDialogContent: React.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
8
|
-
declare function AlertDialogHeader({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
|
|
9
|
-
declare function AlertDialogFooter({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
|
|
10
|
-
declare const AlertDialogTitle: React.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
|
|
11
|
-
declare const AlertDialogDescription: React.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
12
|
-
declare const AlertDialogAction: React.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogActionProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
13
|
-
declare const AlertDialogCancel: React.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogCancelProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
14
|
-
export { AlertDialog, AlertDialogPortal, AlertDialogOverlay, AlertDialogTrigger, AlertDialogContent, AlertDialogHeader, AlertDialogFooter, AlertDialogTitle, AlertDialogDescription, AlertDialogAction, AlertDialogCancel, };
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { type VariantProps } from "class-variance-authority";
|
|
2
|
-
declare const badgeVariants: (props?: ({
|
|
3
|
-
variant?: "default" | "destructive" | "outline" | "secondary" | null | undefined;
|
|
4
|
-
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
5
|
-
export interface BadgeProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {
|
|
6
|
-
color?: string;
|
|
7
|
-
}
|
|
8
|
-
declare function Badge({ className, variant, color, style, ...props }: BadgeProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
-
export { Badge, badgeVariants };
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import { type VariantProps } from "class-variance-authority";
|
|
3
|
-
declare const buttonVariants: (props?: ({
|
|
4
|
-
variant?: "link" | "ghost" | "default" | "destructive" | "outline" | "secondary" | null | undefined;
|
|
5
|
-
size?: "icon" | "default" | "sm" | "lg" | null | undefined;
|
|
6
|
-
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7
|
-
export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
8
|
-
asChild?: boolean;
|
|
9
|
-
}
|
|
10
|
-
declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
11
|
-
export { Button, buttonVariants };
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
declare const Card: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
3
|
-
declare const CardHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
4
|
-
declare const CardTitle: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
5
|
-
declare const CardDescription: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
6
|
-
declare const CardContent: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
-
declare const CardFooter: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
8
|
-
export { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent };
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import * as DialogPrimitive from "@radix-ui/react-dialog";
|
|
3
|
-
declare const Dialog: React.FC<DialogPrimitive.DialogProps>;
|
|
4
|
-
declare const DialogTrigger: React.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
5
|
-
declare const DialogPortal: React.FC<DialogPrimitive.DialogPortalProps>;
|
|
6
|
-
declare const DialogClose: React.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & React.RefAttributes<HTMLButtonElement>>;
|
|
7
|
-
declare const DialogOverlay: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
8
|
-
declare const DialogContent: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
9
|
-
declare function DialogHeader({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
|
|
10
|
-
declare function DialogFooter({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
|
|
11
|
-
declare const DialogTitle: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
|
|
12
|
-
declare const DialogDescription: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
13
|
-
export { Dialog, DialogPortal, DialogOverlay, DialogTrigger, DialogClose, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription, };
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
|
|
3
|
-
declare const DropdownMenu: React.FC<DropdownMenuPrimitive.DropdownMenuProps>;
|
|
4
|
-
declare const DropdownMenuTrigger: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
5
|
-
declare const DropdownMenuGroup: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React.RefAttributes<HTMLDivElement>>;
|
|
6
|
-
declare const DropdownMenuPortal: React.FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
|
|
7
|
-
declare const DropdownMenuSub: React.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
|
|
8
|
-
declare const DropdownMenuRadioGroup: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & React.RefAttributes<HTMLDivElement>>;
|
|
9
|
-
declare const DropdownMenuSubTrigger: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
10
|
-
inset?: boolean;
|
|
11
|
-
} & React.RefAttributes<HTMLDivElement>>;
|
|
12
|
-
declare const DropdownMenuSubContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
13
|
-
declare const DropdownMenuContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
14
|
-
declare const DropdownMenuItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
15
|
-
inset?: boolean;
|
|
16
|
-
} & React.RefAttributes<HTMLDivElement>>;
|
|
17
|
-
declare const DropdownMenuCheckboxItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
18
|
-
declare const DropdownMenuRadioItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
19
|
-
declare const DropdownMenuLabel: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
20
|
-
inset?: boolean;
|
|
21
|
-
} & React.RefAttributes<HTMLDivElement>>;
|
|
22
|
-
declare const DropdownMenuSeparator: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
23
|
-
declare function DropdownMenuShortcut({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>): import("react/jsx-runtime").JSX.Element;
|
|
24
|
-
export { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuGroup, DropdownMenuPortal, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuRadioGroup, };
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
3
|
-
import { type VariantProps } from "class-variance-authority";
|
|
4
|
-
declare const Label: React.ForwardRefExoticComponent<Omit<LabelPrimitive.LabelProps & React.RefAttributes<HTMLLabelElement>, "ref"> & VariantProps<(props?: import("class-variance-authority/types").ClassProp | undefined) => string> & React.RefAttributes<HTMLLabelElement>>;
|
|
5
|
-
export { Label };
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
3
|
-
declare const Select: React.FC<SelectPrimitive.SelectProps>;
|
|
4
|
-
declare const SelectGroup: React.ForwardRefExoticComponent<SelectPrimitive.SelectGroupProps & React.RefAttributes<HTMLDivElement>>;
|
|
5
|
-
declare const SelectValue: React.ForwardRefExoticComponent<SelectPrimitive.SelectValueProps & React.RefAttributes<HTMLSpanElement>>;
|
|
6
|
-
declare const SelectTrigger: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
7
|
-
declare const SelectScrollUpButton: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollUpButtonProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
8
|
-
declare const SelectScrollDownButton: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollDownButtonProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
9
|
-
declare const SelectContent: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
-
declare const SelectItem: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
-
declare const SelectLabel: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
12
|
-
declare const SelectSeparator: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
13
|
-
export { Select, SelectGroup, SelectValue, SelectTrigger, SelectContent, SelectItem, SelectLabel, SelectSeparator, SelectScrollUpButton, SelectScrollDownButton, };
|