@mieweb/ui 0.10.0-dev.10 → 0.10.0-dev.12
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/Input-yN516s5_.d.cts +3 -0
- package/dist/Input-yN516s5_.d.ts +3 -0
- package/dist/ag-grid.d.cts +142 -1
- package/dist/ag-grid.d.ts +142 -1
- package/dist/components/Alert/index.d.cts +1 -1
- package/dist/components/Alert/index.d.ts +1 -1
- package/dist/components/AlertDialog/index.d.cts +28 -3
- package/dist/components/AlertDialog/index.d.ts +28 -3
- package/dist/components/AudioRecorder/index.d.cts +2 -2
- package/dist/components/AudioRecorder/index.d.ts +2 -2
- package/dist/components/Autocomplete/index.d.cts +8 -2
- package/dist/components/Autocomplete/index.d.ts +8 -2
- package/dist/components/Avatar/index.d.cts +1 -1
- package/dist/components/Avatar/index.d.ts +1 -1
- package/dist/components/Badge/index.d.cts +1 -1
- package/dist/components/Badge/index.d.ts +1 -1
- package/dist/components/BoardView/index.d.cts +91 -4
- package/dist/components/BoardView/index.d.ts +91 -4
- package/dist/components/Button/index.d.cts +1 -1
- package/dist/components/Button/index.d.ts +1 -1
- package/dist/components/CalendarView/index.d.cts +1 -2
- package/dist/components/CalendarView/index.d.ts +1 -2
- package/dist/components/Card/index.d.cts +3 -3
- package/dist/components/Card/index.d.ts +3 -3
- package/dist/components/Dropdown/index.d.cts +2 -1
- package/dist/components/Dropdown/index.d.ts +2 -1
- package/dist/components/GanttView/index.d.cts +1 -2
- package/dist/components/GanttView/index.d.ts +1 -2
- package/dist/components/ListView/index.d.cts +2 -3
- package/dist/components/ListView/index.d.ts +2 -3
- package/dist/components/MediaEditor/index.d.cts +91 -2
- package/dist/components/MediaEditor/index.d.ts +91 -2
- package/dist/components/MediaPlayer/index.d.cts +1 -1
- package/dist/components/MediaPlayer/index.d.ts +1 -1
- package/dist/components/Pagination/index.d.cts +1 -1
- package/dist/components/Pagination/index.d.ts +1 -1
- package/dist/components/PhoneInput/index.d.cts +36 -3
- package/dist/components/PhoneInput/index.d.ts +36 -3
- package/dist/components/Progress/index.d.cts +1 -1
- package/dist/components/Progress/index.d.ts +1 -1
- package/dist/components/Q/index.d.cts +2 -2
- package/dist/components/Q/index.d.ts +2 -2
- package/dist/components/QuickAction/index.d.cts +1 -1
- package/dist/components/QuickAction/index.d.ts +1 -1
- package/dist/components/RecordButton/index.d.cts +1 -1
- package/dist/components/RecordButton/index.d.ts +1 -1
- package/dist/components/RichTextEditor/index.d.cts +7 -2
- package/dist/components/RichTextEditor/index.d.ts +7 -2
- package/dist/components/ScrollArea/index.d.cts +1 -1
- package/dist/components/ScrollArea/index.d.ts +1 -1
- package/dist/components/Select/index.d.cts +1 -2
- package/dist/components/Select/index.d.ts +1 -2
- package/dist/components/Skeleton/index.d.cts +1 -1
- package/dist/components/Skeleton/index.d.ts +1 -1
- package/dist/components/Slider/index.d.cts +2 -2
- package/dist/components/Slider/index.d.ts +2 -2
- package/dist/components/Spinner/index.d.cts +2 -2
- package/dist/components/Spinner/index.d.ts +2 -2
- package/dist/components/SuperChat/index.d.cts +2 -4
- package/dist/components/SuperChat/index.d.ts +2 -4
- package/dist/components/SuperChat/plugins/index.d.cts +2 -3
- package/dist/components/SuperChat/plugins/index.d.ts +2 -3
- package/dist/components/Text/index.d.cts +3 -3
- package/dist/components/Text/index.d.ts +3 -3
- package/dist/components/Textarea/index.d.cts +1 -2
- package/dist/components/Textarea/index.d.ts +1 -2
- package/dist/components/ThemeProvider/index.d.cts +3 -1
- package/dist/components/ThemeProvider/index.d.ts +3 -1
- package/dist/components/TranscriptView/index.d.cts +85 -4
- package/dist/components/TranscriptView/index.d.ts +85 -4
- package/dist/components/ViewSet/index.d.cts +120 -9
- package/dist/components/ViewSet/index.d.ts +120 -9
- package/dist/components/ViewSwitcher/index.d.cts +4 -40
- package/dist/components/ViewSwitcher/index.d.ts +4 -40
- package/dist/datavis.d.cts +167 -13
- package/dist/datavis.d.ts +167 -13
- package/dist/esheet.d.cts +183 -1
- package/dist/esheet.d.ts +183 -1
- package/dist/hooks/index.d.cts +383 -31
- package/dist/hooks/index.d.ts +383 -31
- package/dist/index-DoYYWsNc.d.cts +127 -0
- package/dist/index-DoYYWsNc.d.ts +127 -0
- package/dist/index.d.cts +7592 -414
- package/dist/index.d.ts +7592 -414
- package/dist/motion.d.cts +186 -2
- package/dist/motion.d.ts +186 -2
- package/dist/q.d.cts +25 -3
- package/dist/q.d.ts +25 -3
- package/dist/{types-B97JNRNQ.d.cts → types-DOxdTwmq.d.cts} +170 -2
- package/dist/{types-gZXrfLj6.d.ts → types-DOxdTwmq.d.ts} +170 -2
- package/dist/{types-CbWXIKbe.d.cts → types-DsdZvEI1.d.cts} +1 -28
- package/dist/{types-CbWXIKbe.d.ts → types-DsdZvEI1.d.ts} +1 -28
- package/dist/utils/index.d.cts +13 -2
- package/dist/utils/index.d.ts +13 -2
- package/package.json +3 -2
- package/dist/Animated-XmH6k8pZ.d.cts +0 -188
- package/dist/Animated-XmH6k8pZ.d.ts +0 -188
- package/dist/MedicationEditor-Bp4NLy7y.d.cts +0 -352
- package/dist/MedicationEditor-Bp4NLy7y.d.ts +0 -352
- package/dist/html-MdxqSzjD.d.cts +0 -13
- package/dist/html-MdxqSzjD.d.ts +0 -13
- package/dist/orderRows-BUJYgSc7.d.cts +0 -221
- package/dist/orderRows-BUJYgSc7.d.ts +0 -221
- package/dist/transcript-Cg7uSW-C.d.cts +0 -84
- package/dist/transcript-Cg7uSW-C.d.ts +0 -84
- package/dist/types-CnPEwzlp.d.cts +0 -254
- package/dist/types-CnPEwzlp.d.ts +0 -254
- package/dist/useAnchoredPosition-CKwLSQW8.d.cts +0 -76
- package/dist/useAnchoredPosition-CKwLSQW8.d.ts +0 -76
- package/dist/useTheme-B9SWu6ui.d.cts +0 -24
- package/dist/useTheme-B9SWu6ui.d.ts +0 -24
- package/dist/useTranscriptEdits-CGzlemHT.d.cts +0 -182
- package/dist/useTranscriptEdits-D32bLs0l.d.ts +0 -182
|
@@ -1,9 +1,96 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* The contract every component in the `Modules/Views` family reads through.
|
|
8
|
+
*
|
|
9
|
+
* A page describes its collection once — which field is the id, the title, the
|
|
10
|
+
* status, the start date — and every view understands it. That is the whole
|
|
11
|
+
* reason the family exists: without it each view needs its own adapter and you
|
|
12
|
+
* end up re-implementing the same board per entity.
|
|
13
|
+
*
|
|
14
|
+
* Views are headless. Nothing here fetches, subscribes, or navigates.
|
|
15
|
+
* See CONTRIBUTING → "Modules: headless data components".
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Which layout is on screen. `overview` and `table` are rendered by the host
|
|
20
|
+
* through `ViewSet` slots rather than by a component in this family — a tabular
|
|
21
|
+
* collection is `DataVisNitroGrid`, and an overview is domain content.
|
|
22
|
+
*/
|
|
23
|
+
type ViewId = 'overview' | 'list' | 'board' | 'calendar' | 'gantt' | 'roadmap' | 'table';
|
|
24
|
+
/**
|
|
25
|
+
* A semantic colour name, resolved to `--mieweb-*` tokens by each view.
|
|
26
|
+
*
|
|
27
|
+
* Accessors return one of these rather than a class string so a caller cannot
|
|
28
|
+
* hardcode a palette that breaks under another brand or in dark mode.
|
|
29
|
+
*/
|
|
30
|
+
type Accent = 'primary' | 'success' | 'warning' | 'destructive' | 'info' | 'neutral';
|
|
31
|
+
/** A named stage: a board column, and the segments of a stage bar. */
|
|
32
|
+
interface Stage {
|
|
33
|
+
id: string;
|
|
34
|
+
label: string;
|
|
35
|
+
accent?: Accent;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* How a view reads one item. Only `getId` and `getTitle` are always required;
|
|
39
|
+
* each view documents which of the rest it needs (a board needs `getStatus`, a
|
|
40
|
+
* Gantt needs `getStart`) and renders an explanatory empty state without them.
|
|
41
|
+
*/
|
|
42
|
+
interface ViewAccessors<T> {
|
|
43
|
+
getId: (item: T) => string;
|
|
44
|
+
getTitle: (item: T) => string;
|
|
45
|
+
/** Secondary line under the title. */
|
|
46
|
+
getSubtitle?: (item: T) => string | undefined;
|
|
47
|
+
/** Board column and list group; matched against `Stage['id']`. */
|
|
48
|
+
getStatus?: (item: T) => string;
|
|
49
|
+
/** Gantt bar start, calendar placement. */
|
|
50
|
+
getStart?: (item: T) => Date | string | null | undefined;
|
|
51
|
+
/** Gantt bar end, calendar span. Falls back to the start when absent. */
|
|
52
|
+
getEnd?: (item: T) => Date | string | null | undefined;
|
|
53
|
+
/** Swimlane in a roadmap, row group in a Gantt. */
|
|
54
|
+
getGroup?: (item: T) => string | undefined;
|
|
55
|
+
getAccent?: (item: T) => Accent;
|
|
56
|
+
}
|
|
57
|
+
/** Strings a view renders. Every one is overridable; the defaults are English. */
|
|
58
|
+
interface ViewLabels {
|
|
59
|
+
/** Accessible name of the view switcher group. */
|
|
60
|
+
viewSwitcher: string;
|
|
61
|
+
loading: string;
|
|
62
|
+
empty: string;
|
|
63
|
+
error: string;
|
|
64
|
+
/** Action on the error state. */
|
|
65
|
+
retry: string;
|
|
66
|
+
/** Heading for the group a record with no status or group falls into. */
|
|
67
|
+
ungrouped: string;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Props every view accepts. Views are controlled: selection, the active view and
|
|
71
|
+
* filter state live in the page, and every change is handed back.
|
|
72
|
+
*/
|
|
73
|
+
interface ViewBaseProps<T> {
|
|
74
|
+
items: T[];
|
|
75
|
+
accessors: ViewAccessors<T>;
|
|
76
|
+
loading?: boolean;
|
|
77
|
+
error?: Error | null;
|
|
78
|
+
selectedId?: string | null;
|
|
79
|
+
/** Called when the user activates an item. */
|
|
80
|
+
onOpen?: (id: string, item: T) => void;
|
|
81
|
+
/** Return a URL to render each item as a real anchor — middle-clickable and crawlable. */
|
|
82
|
+
getHref?: (id: string, item: T) => string;
|
|
83
|
+
/** Render one item. Receives the active view so one function can serve several. */
|
|
84
|
+
renderItem?: (item: T, context: {
|
|
85
|
+
view: ViewId;
|
|
86
|
+
}) => React.ReactNode;
|
|
87
|
+
/** Replaces the built-in empty state. */
|
|
88
|
+
emptyState?: React.ReactNode;
|
|
89
|
+
labels?: Partial<ViewLabels>;
|
|
90
|
+
/** Pins "today" so stories, tests and visual snapshots stay deterministic. */
|
|
91
|
+
now?: Date;
|
|
92
|
+
className?: string;
|
|
93
|
+
}
|
|
7
94
|
|
|
8
95
|
type BoardViewSlot = 'column' | 'columnHeader' | 'card' | 'selectedCard' | 'state';
|
|
9
96
|
interface BoardLabels extends ViewLabels {
|
|
@@ -32,7 +119,7 @@ interface BoardViewProps<T> extends ViewBaseProps<T>, VariantProps<typeof cardVa
|
|
|
32
119
|
headingLevel?: 'h2' | 'h3' | 'h4';
|
|
33
120
|
}
|
|
34
121
|
declare const cardVariants: (props?: ({
|
|
35
|
-
density?: "
|
|
122
|
+
density?: "comfortable" | "compact" | null | undefined;
|
|
36
123
|
interactive?: boolean | null | undefined;
|
|
37
124
|
selected?: boolean | null | undefined;
|
|
38
125
|
pending?: boolean | null | undefined;
|
|
@@ -3,7 +3,7 @@ import * as React from 'react';
|
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
4
|
|
|
5
5
|
declare const buttonVariants: (props?: ({
|
|
6
|
-
variant?: "link" | "
|
|
6
|
+
variant?: "link" | "secondary" | "danger" | "outline" | "primary" | "ghost" | null | undefined;
|
|
7
7
|
size?: "sm" | "md" | "lg" | "icon" | null | undefined;
|
|
8
8
|
fullWidth?: boolean | null | undefined;
|
|
9
9
|
effect?: "none" | "sheen" | "orbit" | null | undefined;
|
|
@@ -3,7 +3,7 @@ import * as React from 'react';
|
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
4
|
|
|
5
5
|
declare const buttonVariants: (props?: ({
|
|
6
|
-
variant?: "link" | "
|
|
6
|
+
variant?: "link" | "secondary" | "danger" | "outline" | "primary" | "ghost" | null | undefined;
|
|
7
7
|
size?: "sm" | "md" | "lg" | "icon" | null | undefined;
|
|
8
8
|
fullWidth?: boolean | null | undefined;
|
|
9
9
|
effect?: "none" | "sheen" | "orbit" | null | undefined;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import {
|
|
2
|
+
import { V as ViewLabels, a as ViewBaseProps } from '../../types-DsdZvEI1.cjs';
|
|
3
3
|
import 'react';
|
|
4
|
-
import 'luxon';
|
|
5
4
|
|
|
6
5
|
type CalendarViewSlot = 'toolbar' | 'weekday' | 'day' | 'outsideDay' | 'today' | 'entry' | 'selectedEntry' | 'state';
|
|
7
6
|
interface CalendarLabels extends ViewLabels {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import {
|
|
2
|
+
import { V as ViewLabels, a as ViewBaseProps } from '../../types-DsdZvEI1.js';
|
|
3
3
|
import 'react';
|
|
4
|
-
import 'luxon';
|
|
5
4
|
|
|
6
5
|
type CalendarViewSlot = 'toolbar' | 'weekday' | 'day' | 'outsideDay' | 'today' | 'entry' | 'selectedEntry' | 'state';
|
|
7
6
|
interface CalendarLabels extends ViewLabels {
|
|
@@ -4,13 +4,13 @@ import { VariantProps } from 'class-variance-authority';
|
|
|
4
4
|
|
|
5
5
|
declare const cardVariants: (props?: ({
|
|
6
6
|
padding?: "none" | "sm" | "md" | "lg" | "xl" | null | undefined;
|
|
7
|
-
variant?: "default" | "
|
|
7
|
+
variant?: "default" | "elevated" | "outlined" | "ghost" | "filled" | null | undefined;
|
|
8
8
|
interactive?: boolean | null | undefined;
|
|
9
9
|
selected?: boolean | null | undefined;
|
|
10
|
-
orientation?: "
|
|
10
|
+
orientation?: "vertical" | "horizontal" | null | undefined;
|
|
11
11
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
12
12
|
declare const cardAccentVariants: (props?: ({
|
|
13
|
-
color?: "primary" | "
|
|
13
|
+
color?: "primary" | "success" | "warning" | "destructive" | "info" | null | undefined;
|
|
14
14
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
15
15
|
interface CardProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof cardVariants> {
|
|
16
16
|
/** Semantic HTML element to render as */
|
|
@@ -4,13 +4,13 @@ import { VariantProps } from 'class-variance-authority';
|
|
|
4
4
|
|
|
5
5
|
declare const cardVariants: (props?: ({
|
|
6
6
|
padding?: "none" | "sm" | "md" | "lg" | "xl" | null | undefined;
|
|
7
|
-
variant?: "default" | "
|
|
7
|
+
variant?: "default" | "elevated" | "outlined" | "ghost" | "filled" | null | undefined;
|
|
8
8
|
interactive?: boolean | null | undefined;
|
|
9
9
|
selected?: boolean | null | undefined;
|
|
10
|
-
orientation?: "
|
|
10
|
+
orientation?: "vertical" | "horizontal" | null | undefined;
|
|
11
11
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
12
12
|
declare const cardAccentVariants: (props?: ({
|
|
13
|
-
color?: "primary" | "
|
|
13
|
+
color?: "primary" | "success" | "warning" | "destructive" | "info" | null | undefined;
|
|
14
14
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
15
15
|
interface CardProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof cardVariants> {
|
|
16
16
|
/** Semantic HTML element to render as */
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
|
|
3
|
+
|
|
4
|
+
type AnchoredPlacement = 'bottom-start' | 'bottom-end' | 'bottom' | 'top-start' | 'top-end' | 'top' | 'right-start' | 'right-end' | 'right' | 'left-start' | 'left-end' | 'left';
|
|
4
5
|
|
|
5
6
|
type DropdownPlacement = AnchoredPlacement;
|
|
6
7
|
interface DropdownProps {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
|
|
3
|
+
|
|
4
|
+
type AnchoredPlacement = 'bottom-start' | 'bottom-end' | 'bottom' | 'top-start' | 'top-end' | 'top' | 'right-start' | 'right-end' | 'right' | 'left-start' | 'left-end' | 'left';
|
|
4
5
|
|
|
5
6
|
type DropdownPlacement = AnchoredPlacement;
|
|
6
7
|
interface DropdownProps {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import {
|
|
2
|
+
import { V as ViewLabels, a as ViewBaseProps } from '../../types-DsdZvEI1.cjs';
|
|
3
3
|
import 'react';
|
|
4
|
-
import 'luxon';
|
|
5
4
|
|
|
6
5
|
/**
|
|
7
6
|
* Column width in time. `month` and `quarter` are what a roadmap is — the
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import {
|
|
2
|
+
import { V as ViewLabels, a as ViewBaseProps } from '../../types-DsdZvEI1.js';
|
|
3
3
|
import 'react';
|
|
4
|
-
import 'luxon';
|
|
5
4
|
|
|
6
5
|
/**
|
|
7
6
|
* Column width in time. `month` and `quarter` are what a roadmap is — the
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
|
-
import { a as ViewBaseProps, S as Stage } from '../../types-
|
|
4
|
+
import { a as ViewBaseProps, S as Stage } from '../../types-DsdZvEI1.cjs';
|
|
5
5
|
import 'react';
|
|
6
|
-
import 'luxon';
|
|
7
6
|
|
|
8
7
|
type ListViewSlot = 'group' | 'groupHeader' | 'item' | 'selectedItem' | 'state';
|
|
9
8
|
interface ListViewProps<T> extends ViewBaseProps<T>, VariantProps<typeof itemVariants> {
|
|
@@ -24,7 +23,7 @@ interface ListViewProps<T> extends ViewBaseProps<T>, VariantProps<typeof itemVar
|
|
|
24
23
|
headingLevel?: 'h2' | 'h3' | 'h4';
|
|
25
24
|
}
|
|
26
25
|
declare const itemVariants: (props?: ({
|
|
27
|
-
density?: "
|
|
26
|
+
density?: "comfortable" | "compact" | null | undefined;
|
|
28
27
|
interactive?: boolean | null | undefined;
|
|
29
28
|
selected?: boolean | null | undefined;
|
|
30
29
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
|
-
import { a as ViewBaseProps, S as Stage } from '../../types-
|
|
4
|
+
import { a as ViewBaseProps, S as Stage } from '../../types-DsdZvEI1.js';
|
|
5
5
|
import 'react';
|
|
6
|
-
import 'luxon';
|
|
7
6
|
|
|
8
7
|
type ListViewSlot = 'group' | 'groupHeader' | 'item' | 'selectedItem' | 'state';
|
|
9
8
|
interface ListViewProps<T> extends ViewBaseProps<T>, VariantProps<typeof itemVariants> {
|
|
@@ -24,7 +23,7 @@ interface ListViewProps<T> extends ViewBaseProps<T>, VariantProps<typeof itemVar
|
|
|
24
23
|
headingLevel?: 'h2' | 'h3' | 'h4';
|
|
25
24
|
}
|
|
26
25
|
declare const itemVariants: (props?: ({
|
|
27
|
-
density?: "
|
|
26
|
+
density?: "comfortable" | "compact" | null | undefined;
|
|
28
27
|
interactive?: boolean | null | undefined;
|
|
29
28
|
selected?: boolean | null | undefined;
|
|
30
29
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
@@ -1,9 +1,78 @@
|
|
|
1
1
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
|
-
import { T as Transcript, E as EditableWord, S as SpeedMarker, P as PlaybackSpeed } from '../../transcript-Cg7uSW-C.cjs';
|
|
5
4
|
import { MediaKind, MediaPlayerRef } from '../MediaPlayer/index.cjs';
|
|
6
|
-
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Transcript schema for @mieweb/ui media components.
|
|
8
|
+
*
|
|
9
|
+
* Provider-agnostic and persistence-agnostic. Canonical time unit is
|
|
10
|
+
* **milliseconds** (consumers with seconds-based data, e.g. osheet, adapt
|
|
11
|
+
* at the boundary).
|
|
12
|
+
*
|
|
13
|
+
* Shared by TranscriptView, MediaEditor, and useTranscriptEdits.
|
|
14
|
+
*/
|
|
15
|
+
/** Type of transcript word - 'word' for spoken content, 'silence' for detected gaps, 'silence-newline' for longer pauses */
|
|
16
|
+
type WordType = 'word' | 'silence' | 'silence-newline';
|
|
17
|
+
interface TranscriptWord {
|
|
18
|
+
text: string;
|
|
19
|
+
startMs: number;
|
|
20
|
+
endMs: number;
|
|
21
|
+
/** References Speaker.id when diarization is available */
|
|
22
|
+
speakerId?: string;
|
|
23
|
+
confidence?: number;
|
|
24
|
+
/** Type of word: 'word' for spoken content, 'silence' for detected gaps. Defaults to 'word' */
|
|
25
|
+
wordType?: WordType;
|
|
26
|
+
}
|
|
27
|
+
/** A diarized segment of contiguous speech (osheet-style granularity) */
|
|
28
|
+
interface TranscriptSegment {
|
|
29
|
+
text: string;
|
|
30
|
+
startMs: number;
|
|
31
|
+
endMs: number;
|
|
32
|
+
/** References Speaker.id when diarization is available */
|
|
33
|
+
speakerId?: string;
|
|
34
|
+
words: TranscriptWord[];
|
|
35
|
+
}
|
|
36
|
+
interface Speaker {
|
|
37
|
+
id: string;
|
|
38
|
+
/** Display name (e.g. 'Clinician', 'Patient'). Hosts may remap via speakerLabels props. */
|
|
39
|
+
name?: string;
|
|
40
|
+
}
|
|
41
|
+
interface Transcript {
|
|
42
|
+
durationMs: number;
|
|
43
|
+
speakers?: Speaker[];
|
|
44
|
+
words: TranscriptWord[];
|
|
45
|
+
segments?: TranscriptSegment[];
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* An editable word that references the original transcript word.
|
|
49
|
+
* Used in the edited timeline to track deletions and reordering.
|
|
50
|
+
*/
|
|
51
|
+
interface EditableWord {
|
|
52
|
+
/** Index into the SILENCE-INSERTED baseline timeline (transcript.words
|
|
53
|
+
* with detected silence pseudo-words interleaved) — NOT into
|
|
54
|
+
* transcript.words. -1 for split/inserted entries with no baseline slot.
|
|
55
|
+
* Consumers persisting edits should key by this timeline. */
|
|
56
|
+
originalIndex: number;
|
|
57
|
+
/** The word data (from original transcript) */
|
|
58
|
+
word: TranscriptWord;
|
|
59
|
+
/** Whether this word is marked as deleted */
|
|
60
|
+
deleted: boolean;
|
|
61
|
+
/** Whether this word was inserted (pasted from clipboard) */
|
|
62
|
+
inserted?: boolean;
|
|
63
|
+
}
|
|
64
|
+
/** Available playback speed multipliers */
|
|
65
|
+
type PlaybackSpeed = 0.5 | 0.75 | 1 | 1.25 | 1.5 | 1.75 | 2;
|
|
66
|
+
/**
|
|
67
|
+
* A speed marker applied to a word in the transcript.
|
|
68
|
+
* The speed applies from this word until the next speed marker or end of transcript.
|
|
69
|
+
*/
|
|
70
|
+
interface SpeedMarker {
|
|
71
|
+
/** Index in the editedWords array where the speed marker is placed */
|
|
72
|
+
wordIndex: number;
|
|
73
|
+
/** The playback speed multiplier */
|
|
74
|
+
speed: PlaybackSpeed;
|
|
75
|
+
}
|
|
7
76
|
|
|
8
77
|
interface MediaEditorProps extends VariantProps<typeof mediaEditorVariants> {
|
|
9
78
|
/** Media URL */
|
|
@@ -85,6 +154,26 @@ declare const mediaEditorVariants: (props?: ({
|
|
|
85
154
|
*/
|
|
86
155
|
declare const MediaEditor: React.ForwardRefExoticComponent<MediaEditorProps & React.RefAttributes<HTMLDivElement>>;
|
|
87
156
|
|
|
157
|
+
/**
|
|
158
|
+
* useTranscriptEdits — headless transcript-editing state hook.
|
|
159
|
+
*
|
|
160
|
+
* Extracted from pulseclip's TranscriptViewer for @mieweb/ui. Holds the
|
|
161
|
+
* edited word timeline (deletions, insertions, text edits, silence
|
|
162
|
+
* splitting), a single-level undo stack, an internal clipboard, speed
|
|
163
|
+
* markers, and derived playback/statistics data.
|
|
164
|
+
*
|
|
165
|
+
* Controlled + persistence-agnostic: no DOM, no fetches. Selection lives in
|
|
166
|
+
* the UI layer — mutations take explicit indices. State flows out via
|
|
167
|
+
* `onChange` and back in via `initialEditedWords` / `initialUndoStack`.
|
|
168
|
+
*/
|
|
169
|
+
|
|
170
|
+
/** Count and total duration of silences above a given threshold (seconds) */
|
|
171
|
+
interface SilenceThresholdCount {
|
|
172
|
+
threshold: number;
|
|
173
|
+
count: number;
|
|
174
|
+
durationMs: number;
|
|
175
|
+
}
|
|
176
|
+
|
|
88
177
|
/**
|
|
89
178
|
* FillerWordsModal — select filler words (and long silences) to mark deleted.
|
|
90
179
|
*
|
|
@@ -1,9 +1,78 @@
|
|
|
1
1
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
|
-
import { T as Transcript, E as EditableWord, S as SpeedMarker, P as PlaybackSpeed } from '../../transcript-Cg7uSW-C.js';
|
|
5
4
|
import { MediaKind, MediaPlayerRef } from '../MediaPlayer/index.js';
|
|
6
|
-
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Transcript schema for @mieweb/ui media components.
|
|
8
|
+
*
|
|
9
|
+
* Provider-agnostic and persistence-agnostic. Canonical time unit is
|
|
10
|
+
* **milliseconds** (consumers with seconds-based data, e.g. osheet, adapt
|
|
11
|
+
* at the boundary).
|
|
12
|
+
*
|
|
13
|
+
* Shared by TranscriptView, MediaEditor, and useTranscriptEdits.
|
|
14
|
+
*/
|
|
15
|
+
/** Type of transcript word - 'word' for spoken content, 'silence' for detected gaps, 'silence-newline' for longer pauses */
|
|
16
|
+
type WordType = 'word' | 'silence' | 'silence-newline';
|
|
17
|
+
interface TranscriptWord {
|
|
18
|
+
text: string;
|
|
19
|
+
startMs: number;
|
|
20
|
+
endMs: number;
|
|
21
|
+
/** References Speaker.id when diarization is available */
|
|
22
|
+
speakerId?: string;
|
|
23
|
+
confidence?: number;
|
|
24
|
+
/** Type of word: 'word' for spoken content, 'silence' for detected gaps. Defaults to 'word' */
|
|
25
|
+
wordType?: WordType;
|
|
26
|
+
}
|
|
27
|
+
/** A diarized segment of contiguous speech (osheet-style granularity) */
|
|
28
|
+
interface TranscriptSegment {
|
|
29
|
+
text: string;
|
|
30
|
+
startMs: number;
|
|
31
|
+
endMs: number;
|
|
32
|
+
/** References Speaker.id when diarization is available */
|
|
33
|
+
speakerId?: string;
|
|
34
|
+
words: TranscriptWord[];
|
|
35
|
+
}
|
|
36
|
+
interface Speaker {
|
|
37
|
+
id: string;
|
|
38
|
+
/** Display name (e.g. 'Clinician', 'Patient'). Hosts may remap via speakerLabels props. */
|
|
39
|
+
name?: string;
|
|
40
|
+
}
|
|
41
|
+
interface Transcript {
|
|
42
|
+
durationMs: number;
|
|
43
|
+
speakers?: Speaker[];
|
|
44
|
+
words: TranscriptWord[];
|
|
45
|
+
segments?: TranscriptSegment[];
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* An editable word that references the original transcript word.
|
|
49
|
+
* Used in the edited timeline to track deletions and reordering.
|
|
50
|
+
*/
|
|
51
|
+
interface EditableWord {
|
|
52
|
+
/** Index into the SILENCE-INSERTED baseline timeline (transcript.words
|
|
53
|
+
* with detected silence pseudo-words interleaved) — NOT into
|
|
54
|
+
* transcript.words. -1 for split/inserted entries with no baseline slot.
|
|
55
|
+
* Consumers persisting edits should key by this timeline. */
|
|
56
|
+
originalIndex: number;
|
|
57
|
+
/** The word data (from original transcript) */
|
|
58
|
+
word: TranscriptWord;
|
|
59
|
+
/** Whether this word is marked as deleted */
|
|
60
|
+
deleted: boolean;
|
|
61
|
+
/** Whether this word was inserted (pasted from clipboard) */
|
|
62
|
+
inserted?: boolean;
|
|
63
|
+
}
|
|
64
|
+
/** Available playback speed multipliers */
|
|
65
|
+
type PlaybackSpeed = 0.5 | 0.75 | 1 | 1.25 | 1.5 | 1.75 | 2;
|
|
66
|
+
/**
|
|
67
|
+
* A speed marker applied to a word in the transcript.
|
|
68
|
+
* The speed applies from this word until the next speed marker or end of transcript.
|
|
69
|
+
*/
|
|
70
|
+
interface SpeedMarker {
|
|
71
|
+
/** Index in the editedWords array where the speed marker is placed */
|
|
72
|
+
wordIndex: number;
|
|
73
|
+
/** The playback speed multiplier */
|
|
74
|
+
speed: PlaybackSpeed;
|
|
75
|
+
}
|
|
7
76
|
|
|
8
77
|
interface MediaEditorProps extends VariantProps<typeof mediaEditorVariants> {
|
|
9
78
|
/** Media URL */
|
|
@@ -85,6 +154,26 @@ declare const mediaEditorVariants: (props?: ({
|
|
|
85
154
|
*/
|
|
86
155
|
declare const MediaEditor: React.ForwardRefExoticComponent<MediaEditorProps & React.RefAttributes<HTMLDivElement>>;
|
|
87
156
|
|
|
157
|
+
/**
|
|
158
|
+
* useTranscriptEdits — headless transcript-editing state hook.
|
|
159
|
+
*
|
|
160
|
+
* Extracted from pulseclip's TranscriptViewer for @mieweb/ui. Holds the
|
|
161
|
+
* edited word timeline (deletions, insertions, text edits, silence
|
|
162
|
+
* splitting), a single-level undo stack, an internal clipboard, speed
|
|
163
|
+
* markers, and derived playback/statistics data.
|
|
164
|
+
*
|
|
165
|
+
* Controlled + persistence-agnostic: no DOM, no fetches. Selection lives in
|
|
166
|
+
* the UI layer — mutations take explicit indices. State flows out via
|
|
167
|
+
* `onChange` and back in via `initialEditedWords` / `initialUndoStack`.
|
|
168
|
+
*/
|
|
169
|
+
|
|
170
|
+
/** Count and total duration of silences above a given threshold (seconds) */
|
|
171
|
+
interface SilenceThresholdCount {
|
|
172
|
+
threshold: number;
|
|
173
|
+
count: number;
|
|
174
|
+
durationMs: number;
|
|
175
|
+
}
|
|
176
|
+
|
|
88
177
|
/**
|
|
89
178
|
* FillerWordsModal — select filler words (and long silences) to mark deleted.
|
|
90
179
|
*
|
|
@@ -53,7 +53,7 @@ interface MediaPlayerProps extends VariantProps<typeof mediaPlayerVariants> {
|
|
|
53
53
|
mediaElementRef?: React.RefObject<HTMLVideoElement | HTMLAudioElement | null>;
|
|
54
54
|
}
|
|
55
55
|
declare const mediaPlayerVariants: (props?: ({
|
|
56
|
-
variant?: "
|
|
56
|
+
variant?: "plain" | "card" | null | undefined;
|
|
57
57
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
58
58
|
/** Infer media kind from a URL's file extension; defaults to audio. */
|
|
59
59
|
declare function inferMediaKind(src: string): MediaKind;
|
|
@@ -53,7 +53,7 @@ interface MediaPlayerProps extends VariantProps<typeof mediaPlayerVariants> {
|
|
|
53
53
|
mediaElementRef?: React.RefObject<HTMLVideoElement | HTMLAudioElement | null>;
|
|
54
54
|
}
|
|
55
55
|
declare const mediaPlayerVariants: (props?: ({
|
|
56
|
-
variant?: "
|
|
56
|
+
variant?: "plain" | "card" | null | undefined;
|
|
57
57
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
58
58
|
/** Infer media kind from a URL's file extension; defaults to audio. */
|
|
59
59
|
declare function inferMediaKind(src: string): MediaKind;
|
|
@@ -3,7 +3,7 @@ import * as class_variance_authority_types from 'class-variance-authority/types'
|
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
4
|
|
|
5
5
|
declare const paginationButtonVariants: (props?: ({
|
|
6
|
-
variant?: "default" | "
|
|
6
|
+
variant?: "default" | "outline" | "ghost" | null | undefined;
|
|
7
7
|
size?: "sm" | "md" | "lg" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface PaginationProps extends VariantProps<typeof paginationButtonVariants> {
|
|
@@ -3,7 +3,7 @@ import * as class_variance_authority_types from 'class-variance-authority/types'
|
|
|
3
3
|
import { VariantProps } from 'class-variance-authority';
|
|
4
4
|
|
|
5
5
|
declare const paginationButtonVariants: (props?: ({
|
|
6
|
-
variant?: "default" | "
|
|
6
|
+
variant?: "default" | "outline" | "ghost" | null | undefined;
|
|
7
7
|
size?: "sm" | "md" | "lg" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface PaginationProps extends VariantProps<typeof paginationButtonVariants> {
|
|
@@ -1,8 +1,41 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import
|
|
4
|
-
import 'class-variance-authority
|
|
5
|
-
|
|
3
|
+
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
4
|
+
import { VariantProps } from 'class-variance-authority';
|
|
5
|
+
|
|
6
|
+
declare const inputVariants: (props?: ({
|
|
7
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
8
|
+
hasError?: boolean | null | undefined;
|
|
9
|
+
labelVariant?: "stacked" | "floating" | null | undefined;
|
|
10
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
11
|
+
interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>, Omit<VariantProps<typeof inputVariants>, 'labelVariant'> {
|
|
12
|
+
/** Error message to display below the input */
|
|
13
|
+
error?: string;
|
|
14
|
+
/** Helper text to display below the input */
|
|
15
|
+
helperText?: string;
|
|
16
|
+
/** Label for the input */
|
|
17
|
+
label?: string;
|
|
18
|
+
/**
|
|
19
|
+
* How the label is rendered.
|
|
20
|
+
* - `stacked` (default): label above the input.
|
|
21
|
+
* - `floating`: label rests inside the input like a placeholder and floats
|
|
22
|
+
* to the top of the field (staying inside it) when focused or filled.
|
|
23
|
+
* Ignores `placeholder`; when `hideLabel` is set, falls back to a
|
|
24
|
+
* visually-hidden stacked label.
|
|
25
|
+
*/
|
|
26
|
+
labelVariant?: 'stacked' | 'floating';
|
|
27
|
+
/** Whether the label should be visually hidden (still accessible) */
|
|
28
|
+
hideLabel?: boolean;
|
|
29
|
+
/** Whether the input is required */
|
|
30
|
+
required?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Color of the required asterisk.
|
|
33
|
+
* - `default`: destructive (hard requirement).
|
|
34
|
+
* - `warning`: warning color (soft requirement / recommended).
|
|
35
|
+
*/
|
|
36
|
+
requiredVariant?: RequiredMarkVariant;
|
|
37
|
+
}
|
|
38
|
+
type RequiredMarkVariant = 'default' | 'warning';
|
|
6
39
|
|
|
7
40
|
interface PhoneInputProps extends Omit<InputProps, 'type' | 'onChange' | 'value'> {
|
|
8
41
|
/** The phone number value (can be formatted or unformatted) */
|
|
@@ -1,8 +1,41 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import
|
|
4
|
-
import 'class-variance-authority
|
|
5
|
-
|
|
3
|
+
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
4
|
+
import { VariantProps } from 'class-variance-authority';
|
|
5
|
+
|
|
6
|
+
declare const inputVariants: (props?: ({
|
|
7
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
8
|
+
hasError?: boolean | null | undefined;
|
|
9
|
+
labelVariant?: "stacked" | "floating" | null | undefined;
|
|
10
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
11
|
+
interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>, Omit<VariantProps<typeof inputVariants>, 'labelVariant'> {
|
|
12
|
+
/** Error message to display below the input */
|
|
13
|
+
error?: string;
|
|
14
|
+
/** Helper text to display below the input */
|
|
15
|
+
helperText?: string;
|
|
16
|
+
/** Label for the input */
|
|
17
|
+
label?: string;
|
|
18
|
+
/**
|
|
19
|
+
* How the label is rendered.
|
|
20
|
+
* - `stacked` (default): label above the input.
|
|
21
|
+
* - `floating`: label rests inside the input like a placeholder and floats
|
|
22
|
+
* to the top of the field (staying inside it) when focused or filled.
|
|
23
|
+
* Ignores `placeholder`; when `hideLabel` is set, falls back to a
|
|
24
|
+
* visually-hidden stacked label.
|
|
25
|
+
*/
|
|
26
|
+
labelVariant?: 'stacked' | 'floating';
|
|
27
|
+
/** Whether the label should be visually hidden (still accessible) */
|
|
28
|
+
hideLabel?: boolean;
|
|
29
|
+
/** Whether the input is required */
|
|
30
|
+
required?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Color of the required asterisk.
|
|
33
|
+
* - `default`: destructive (hard requirement).
|
|
34
|
+
* - `warning`: warning color (soft requirement / recommended).
|
|
35
|
+
*/
|
|
36
|
+
requiredVariant?: RequiredMarkVariant;
|
|
37
|
+
}
|
|
38
|
+
type RequiredMarkVariant = 'default' | 'warning';
|
|
6
39
|
|
|
7
40
|
interface PhoneInputProps extends Omit<InputProps, 'type' | 'onChange' | 'value'> {
|
|
8
41
|
/** The phone number value (can be formatted or unformatted) */
|
|
@@ -6,7 +6,7 @@ declare const progressBarTrackVariants: (props?: ({
|
|
|
6
6
|
size?: "sm" | "md" | "lg" | "xl" | null | undefined;
|
|
7
7
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
8
8
|
declare const progressBarFillVariants: (props?: ({
|
|
9
|
-
variant?: "default" | "
|
|
9
|
+
variant?: "default" | "success" | "warning" | "danger" | null | undefined;
|
|
10
10
|
animated?: boolean | null | undefined;
|
|
11
11
|
striped?: boolean | null | undefined;
|
|
12
12
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
@@ -6,7 +6,7 @@ declare const progressBarTrackVariants: (props?: ({
|
|
|
6
6
|
size?: "sm" | "md" | "lg" | "xl" | null | undefined;
|
|
7
7
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
8
8
|
declare const progressBarFillVariants: (props?: ({
|
|
9
|
-
variant?: "default" | "
|
|
9
|
+
variant?: "default" | "success" | "warning" | "danger" | null | undefined;
|
|
10
10
|
animated?: boolean | null | undefined;
|
|
11
11
|
striped?: boolean | null | undefined;
|
|
12
12
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
1
3
|
import { AgentConfigGeneratorProps, QConfig, QSchema } from '@mieweb/q';
|
|
2
4
|
export { AgentConfigGenerator, AgentConfigGeneratorProps, ConfigEditor, ConfigEditorProps, FormBuilder, FormBuilderProps, GENERIC_TOOLS, Header, HeaderProps, QConfig, QDownloadMode, QSchema, TIMEZONES, ToolBuilder, ToolBuilderProps, configToQuestionnaire, configToYaml, copyToClipboard, defaultSchema, deriveDefaultConfig, downloadConfig, questionnaireToConfig, validateConfig, yamlToConfig } from '@mieweb/q';
|
|
3
5
|
export { UniversalAgentConfigGenerator, UniversalAgentConfigGeneratorOptions, brands, generateBrandCSS } from '@mieweb/q/universal';
|
|
4
|
-
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
5
|
-
import * as React from 'react';
|
|
6
6
|
|
|
7
7
|
interface QProps extends AgentConfigGeneratorProps {
|
|
8
8
|
/** Additional class name for the Q container. */
|