@refraction-ui/react 0.13.0 → 0.14.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/dist/index.cjs +3616 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +23 -0
- package/dist/index.d.ts +23 -0
- package/dist/index.js +3581 -3
- package/dist/index.js.map +1 -1
- package/dist/internal/audio-room/index.d.ts +91 -0
- package/dist/internal/call-controls/index.d.ts +83 -0
- package/dist/internal/checklist/index.d.ts +84 -0
- package/dist/internal/editor-status-bar/index.d.ts +70 -0
- package/dist/internal/editor-tabs/index.d.ts +68 -0
- package/dist/internal/floating-reactions/index.d.ts +98 -0
- package/dist/internal/flow-editor/index.d.ts +91 -0
- package/dist/internal/graph-view/index.d.ts +107 -0
- package/dist/internal/infinite-canvas/index.d.ts +74 -0
- package/dist/internal/live-captions/index.d.ts +59 -0
- package/dist/internal/live-cursors/index.d.ts +65 -0
- package/dist/internal/live-transcript/index.d.ts +73 -0
- package/dist/internal/mini-map/index.d.ts +81 -0
- package/dist/internal/pre-call-lobby/index.d.ts +97 -0
- package/dist/internal/radial-gauge/index.d.ts +120 -0
- package/dist/internal/rating-scale/index.d.ts +76 -0
- package/dist/internal/react-audio-room/index.d.ts +39 -0
- package/dist/internal/react-call-controls/index.d.ts +44 -0
- package/dist/internal/react-checklist/index.d.ts +27 -0
- package/dist/internal/react-editor-status-bar/index.d.ts +43 -0
- package/dist/internal/react-editor-tabs/index.d.ts +25 -0
- package/dist/internal/react-floating-reactions/index.d.ts +65 -0
- package/dist/internal/react-flow-editor/index.d.ts +35 -0
- package/dist/internal/react-graph-view/index.d.ts +25 -0
- package/dist/internal/react-infinite-canvas/index.d.ts +40 -0
- package/dist/internal/react-live-captions/index.d.ts +29 -0
- package/dist/internal/react-live-cursors/index.d.ts +42 -0
- package/dist/internal/react-live-transcript/index.d.ts +22 -0
- package/dist/internal/react-mini-map/index.d.ts +35 -0
- package/dist/internal/react-pre-call-lobby/index.d.ts +47 -0
- package/dist/internal/react-radial-gauge/index.d.ts +43 -0
- package/dist/internal/react-rating-scale/index.d.ts +38 -0
- package/dist/internal/react-sticky-note/index.d.ts +39 -0
- package/dist/internal/react-terminal/index.d.ts +39 -0
- package/dist/internal/react-test-results/index.d.ts +21 -0
- package/dist/internal/react-timeline/index.d.ts +35 -0
- package/dist/internal/react-video-grid/index.d.ts +33 -0
- package/dist/internal/react-video-tile/index.d.ts +41 -0
- package/dist/internal/react-wizard/index.d.ts +59 -0
- package/dist/internal/sticky-note/index.d.ts +49 -0
- package/dist/internal/terminal/index.d.ts +65 -0
- package/dist/internal/test-results/index.d.ts +97 -0
- package/dist/internal/timeline/index.d.ts +111 -0
- package/dist/internal/video-grid/index.d.ts +83 -0
- package/dist/internal/video-tile/index.d.ts +88 -0
- package/dist/internal/wizard/index.d.ts +148 -0
- package/package.json +24 -1
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Layout mode for a VideoGrid.
|
|
3
|
+
*
|
|
4
|
+
* - 'auto' — choose grid or speaker view based on participant count (≤1 forces speaker)
|
|
5
|
+
* - 'grid' — always render an even CSS grid of tiles
|
|
6
|
+
* - 'speaker' — render one large spotlight tile + a filmstrip row for the rest
|
|
7
|
+
*/
|
|
8
|
+
type VideoGridLayout = 'auto' | 'grid' | 'speaker';
|
|
9
|
+
/**
|
|
10
|
+
* Bucket label that describes the rough meeting size.
|
|
11
|
+
* Useful for analytics and adaptive UI decisions.
|
|
12
|
+
*/
|
|
13
|
+
type VideoGridBucket = 'solo' | 'pair' | 'small' | 'medium' | 'large' | 'townhall';
|
|
14
|
+
interface VideoGridHeadlessProps {
|
|
15
|
+
/** Desired layout mode. */
|
|
16
|
+
layout?: VideoGridLayout;
|
|
17
|
+
}
|
|
18
|
+
interface VideoGridAPI {
|
|
19
|
+
/** ARIA attributes to spread on the grid container. */
|
|
20
|
+
ariaProps: {
|
|
21
|
+
role: 'group';
|
|
22
|
+
};
|
|
23
|
+
/** Data attributes for CSS styling hooks. */
|
|
24
|
+
dataAttributes: {
|
|
25
|
+
'data-layout': VideoGridLayout;
|
|
26
|
+
'data-count'?: string;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Compute the number of CSS grid columns for N participants.
|
|
31
|
+
*
|
|
32
|
+
* The responsive rule mirrors easyloops meeting layouts:
|
|
33
|
+
*
|
|
34
|
+
* | count | columns |
|
|
35
|
+
* |-------|---------|
|
|
36
|
+
* | 1 | 1 |
|
|
37
|
+
* | 2 | 2 |
|
|
38
|
+
* | 3–4 | 2 |
|
|
39
|
+
* | 5–9 | 3 |
|
|
40
|
+
* | 10–16 | 4 |
|
|
41
|
+
* | 17–25 | 5 |
|
|
42
|
+
* | 26+ | 6 |
|
|
43
|
+
*/
|
|
44
|
+
declare function computeGridColumns(count: number): number;
|
|
45
|
+
/**
|
|
46
|
+
* Label the meeting size as a human-readable bucket.
|
|
47
|
+
*
|
|
48
|
+
* Useful for analytics events and adaptive UI decisions without
|
|
49
|
+
* coupling to the exact column math.
|
|
50
|
+
*/
|
|
51
|
+
declare function bucketByCount(count: number): VideoGridBucket;
|
|
52
|
+
/**
|
|
53
|
+
* Build the framework-agnostic ARIA and data attributes for a VideoGrid
|
|
54
|
+
* container. Adapters spread these onto their host element.
|
|
55
|
+
*/
|
|
56
|
+
declare function createVideoGrid(props?: VideoGridHeadlessProps): VideoGridAPI;
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Grid container variants.
|
|
60
|
+
*
|
|
61
|
+
* - `layout: 'grid'` — uniform CSS grid; column count is set inline by the
|
|
62
|
+
* adapter using `computeGridColumns` (gridTemplateColumns).
|
|
63
|
+
* - `layout: 'speaker'` — two-row layout: large spotlight on top, filmstrip row
|
|
64
|
+
* below. The adapter renders the spotlight as the first child and a horizontal
|
|
65
|
+
* overflow row for remaining tiles.
|
|
66
|
+
*/
|
|
67
|
+
declare const videoGridVariants: (props?: ({
|
|
68
|
+
layout?: "auto" | "grid" | "speaker" | undefined;
|
|
69
|
+
} & {
|
|
70
|
+
className?: string;
|
|
71
|
+
}) | undefined) => string;
|
|
72
|
+
/** Full-bleed spotlight area in speaker view (takes up remaining vertical space). */
|
|
73
|
+
declare const videoGridSpotlightClass = "relative flex-1 min-h-0 rounded-xl overflow-hidden bg-muted";
|
|
74
|
+
/**
|
|
75
|
+
* Horizontal filmstrip row used in speaker view.
|
|
76
|
+
* Each tile in this row is constrained to a fixed width so the row scrolls
|
|
77
|
+
* rather than wraps on large calls.
|
|
78
|
+
*/
|
|
79
|
+
declare const videoGridFilmstripClass = "flex flex-row gap-2 overflow-x-auto py-1 shrink-0";
|
|
80
|
+
/** Individual filmstrip tile wrapper — fixed width so they don't collapse. */
|
|
81
|
+
declare const videoGridFilmstripTileClass = "w-36 shrink-0";
|
|
82
|
+
|
|
83
|
+
export { type VideoGridAPI, type VideoGridBucket, type VideoGridHeadlessProps, type VideoGridLayout, bucketByCount, computeGridColumns, createVideoGrid, videoGridFilmstripClass, videoGridFilmstripTileClass, videoGridSpotlightClass, videoGridVariants };
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/** Microphone state for a video participant. */
|
|
2
|
+
type VideoTileMicState = 'on' | 'muted';
|
|
3
|
+
/** Data describing a video meeting participant tile. */
|
|
4
|
+
interface VideoTileData {
|
|
5
|
+
/** Unique participant identifier. */
|
|
6
|
+
id: string;
|
|
7
|
+
/** Display name shown in the name chip. */
|
|
8
|
+
name: string;
|
|
9
|
+
/** Current microphone state. Defaults to 'on'. */
|
|
10
|
+
micState?: VideoTileMicState;
|
|
11
|
+
/** Whether the participant is currently speaking (active audio). */
|
|
12
|
+
speaking?: boolean;
|
|
13
|
+
/** Whether the tile is pinned in the grid. */
|
|
14
|
+
pinned?: boolean;
|
|
15
|
+
}
|
|
16
|
+
interface VideoTileHeadlessProps {
|
|
17
|
+
/** Whether the participant is actively speaking. */
|
|
18
|
+
speaking?: boolean;
|
|
19
|
+
/** Whether the tile is pinned in the grid. */
|
|
20
|
+
pinned?: boolean;
|
|
21
|
+
}
|
|
22
|
+
interface VideoTileAPI {
|
|
23
|
+
/** Data attributes for styling hooks — spread onto the tile container. */
|
|
24
|
+
dataAttributes: {
|
|
25
|
+
'data-speaking': string;
|
|
26
|
+
'data-pinned': string;
|
|
27
|
+
};
|
|
28
|
+
/** ARIA props — spread onto the tile container. */
|
|
29
|
+
ariaProps: {
|
|
30
|
+
role: 'group';
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Derive framework-agnostic data attributes and ARIA props for a VideoTile.
|
|
35
|
+
*
|
|
36
|
+
* Adapters spread `dataAttributes` and `ariaProps` onto the tile container so
|
|
37
|
+
* CSS selectors and assistive technology can reflect the current participant
|
|
38
|
+
* state without coupling to a specific framework.
|
|
39
|
+
*/
|
|
40
|
+
declare function createVideoTile(props?: VideoTileHeadlessProps): VideoTileAPI;
|
|
41
|
+
/**
|
|
42
|
+
* Derive up to two uppercase initials from a display name.
|
|
43
|
+
*
|
|
44
|
+
* Splits on whitespace and takes the first character of the first two words.
|
|
45
|
+
* Single-word names produce a single initial.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* getInitials('Maya Goldberg') // 'MG'
|
|
49
|
+
* getInitials('Alice') // 'A'
|
|
50
|
+
*/
|
|
51
|
+
declare function getInitials(name: string): string;
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Root tile container — aspect-video, rounded corners, clipped media.
|
|
55
|
+
*
|
|
56
|
+
* `speaking` variant adds a visible ring to indicate active audio.
|
|
57
|
+
* `pinned` variant adds a stronger ring to mark a pinned participant.
|
|
58
|
+
*
|
|
59
|
+
* cva boolean-like variants use string values ('true'/'false') per the
|
|
60
|
+
* refraction-ui convention — callers must pass strings, not raw booleans.
|
|
61
|
+
*/
|
|
62
|
+
declare const videoTileVariants: (props?: ({
|
|
63
|
+
speaking?: "true" | "false" | undefined;
|
|
64
|
+
pinned?: "true" | "false" | undefined;
|
|
65
|
+
} & {
|
|
66
|
+
className?: string;
|
|
67
|
+
}) | undefined) => string;
|
|
68
|
+
/**
|
|
69
|
+
* Name chip anchored to the bottom-left of the tile.
|
|
70
|
+
* Semi-transparent bg keeps it legible over any media content.
|
|
71
|
+
*/
|
|
72
|
+
declare const videoTileNameChipClass = "absolute bottom-2 left-2 flex items-center gap-1.5 rounded-md bg-background/70 px-2 py-0.5 text-xs font-medium text-foreground backdrop-blur-sm";
|
|
73
|
+
/**
|
|
74
|
+
* Mic-muted icon container — sits inside the name chip at the trailing edge.
|
|
75
|
+
*/
|
|
76
|
+
declare const videoTileMicIconClass = "text-destructive";
|
|
77
|
+
/**
|
|
78
|
+
* Avatar fallback circle — centred in the tile when no media stream is available.
|
|
79
|
+
*/
|
|
80
|
+
declare const videoTileAvatarFallbackClass = "absolute inset-0 flex items-center justify-center";
|
|
81
|
+
/** Inner circle with initials. */
|
|
82
|
+
declare const videoTileAvatarCircleClass = "flex size-16 items-center justify-center rounded-full bg-card text-foreground text-xl font-semibold select-none";
|
|
83
|
+
/**
|
|
84
|
+
* Reaction badge slot — anchored to the top-right corner.
|
|
85
|
+
*/
|
|
86
|
+
declare const videoTileReactionBadgeClass = "absolute right-2 top-2 flex items-center justify-center rounded-full bg-background/70 px-1.5 py-0.5 text-sm backdrop-blur-sm";
|
|
87
|
+
|
|
88
|
+
export { type VideoTileAPI, type VideoTileData, type VideoTileHeadlessProps, type VideoTileMicState, createVideoTile, getInitials, videoTileAvatarCircleClass, videoTileAvatarFallbackClass, videoTileMicIconClass, videoTileNameChipClass, videoTileReactionBadgeClass, videoTileVariants };
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import { AccessibilityProps } from '../shared/index.js';
|
|
2
|
+
|
|
3
|
+
/** A single step in a wizard flow. */
|
|
4
|
+
interface WizardStep {
|
|
5
|
+
/** Unique identifier for the step. */
|
|
6
|
+
id: string;
|
|
7
|
+
/** Human-readable label shown in the step rail. */
|
|
8
|
+
label: string;
|
|
9
|
+
/** When true the user may skip this step. */
|
|
10
|
+
optional?: boolean;
|
|
11
|
+
}
|
|
12
|
+
/** The resolved status of a step relative to the current position. */
|
|
13
|
+
type WizardStepStatus = 'complete' | 'current' | 'upcoming';
|
|
14
|
+
/** A step enriched with its resolved status and position. */
|
|
15
|
+
interface WizardStepState {
|
|
16
|
+
step: WizardStep;
|
|
17
|
+
status: WizardStepStatus;
|
|
18
|
+
index: number;
|
|
19
|
+
}
|
|
20
|
+
/** Orientation of the step rail. */
|
|
21
|
+
type WizardOrientation = 'vertical' | 'horizontal';
|
|
22
|
+
interface WizardProps {
|
|
23
|
+
/** Controlled current step index (0-based). */
|
|
24
|
+
currentIndex?: number;
|
|
25
|
+
/** Total number of steps. */
|
|
26
|
+
count?: number;
|
|
27
|
+
/** Orientation of the step rail. */
|
|
28
|
+
orientation?: WizardOrientation;
|
|
29
|
+
}
|
|
30
|
+
interface WizardAPI {
|
|
31
|
+
/** ARIA attributes to spread on the root element. */
|
|
32
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
33
|
+
/** Data attributes for styling hooks. */
|
|
34
|
+
dataAttributes: Record<string, string>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Derive the status of every step from the current position.
|
|
38
|
+
*
|
|
39
|
+
* Steps before `currentIndex` are `'complete'`, the step at `currentIndex` is
|
|
40
|
+
* `'current'`, and every step after is `'upcoming'`.
|
|
41
|
+
*/
|
|
42
|
+
declare function getStepState(steps: WizardStep[], currentIndex: number): WizardStepState[];
|
|
43
|
+
/**
|
|
44
|
+
* Returns the next step index, clamped to the last step so the wizard never
|
|
45
|
+
* advances past the final step.
|
|
46
|
+
*/
|
|
47
|
+
declare function getNextIndex(currentIndex: number, count: number): number;
|
|
48
|
+
/**
|
|
49
|
+
* Returns the previous step index, clamped to 0 so the wizard never goes
|
|
50
|
+
* behind the first step.
|
|
51
|
+
*/
|
|
52
|
+
declare function getPrevIndex(currentIndex: number): number;
|
|
53
|
+
/**
|
|
54
|
+
* Whether the wizard can advance from `currentIndex`.
|
|
55
|
+
*
|
|
56
|
+
* Returns `false` when already on the last step.
|
|
57
|
+
*/
|
|
58
|
+
declare function canAdvance(currentIndex: number, count: number): boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Fractional progress through the wizard (0 when on step 0, 1 when the final
|
|
61
|
+
* step is complete). Returns 0 for empty wizards.
|
|
62
|
+
*
|
|
63
|
+
* `wizardProgress(0, 4)` → 0 (just started)
|
|
64
|
+
* `wizardProgress(3, 4)` → 0.75
|
|
65
|
+
* `wizardProgress(4, 4)` → 1 (done)
|
|
66
|
+
*/
|
|
67
|
+
declare function wizardProgress(currentIndex: number, count: number): number;
|
|
68
|
+
/**
|
|
69
|
+
* Build the framework-agnostic root props for a wizard component.
|
|
70
|
+
*
|
|
71
|
+
* Returns `role="group"` plus `data-step` / `data-orientation` attributes so
|
|
72
|
+
* adapters can spread them onto their container without duplicating logic.
|
|
73
|
+
*/
|
|
74
|
+
declare function createWizard(props?: WizardProps): WizardAPI;
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Root container that holds the step rail and the content/footer area
|
|
78
|
+
* side-by-side (vertical) or stacked (horizontal).
|
|
79
|
+
*/
|
|
80
|
+
declare const wizardVariants: (props?: ({
|
|
81
|
+
orientation?: "vertical" | "horizontal" | undefined;
|
|
82
|
+
} & {
|
|
83
|
+
className?: string;
|
|
84
|
+
}) | undefined) => string;
|
|
85
|
+
/**
|
|
86
|
+
* The step rail — the ordered list of step indicators.
|
|
87
|
+
* Vertical: a narrow column on the left. Horizontal: a row across the top.
|
|
88
|
+
*/
|
|
89
|
+
declare const wizardRailVariants: (props?: ({
|
|
90
|
+
orientation?: "vertical" | "horizontal" | undefined;
|
|
91
|
+
} & {
|
|
92
|
+
className?: string;
|
|
93
|
+
}) | undefined) => string;
|
|
94
|
+
/**
|
|
95
|
+
* A single step item in the rail. The `status` variant drives colour so
|
|
96
|
+
* adapters never inline these classes.
|
|
97
|
+
*/
|
|
98
|
+
declare const wizardStepItemVariants: (props?: ({
|
|
99
|
+
orientation?: "vertical" | "horizontal" | undefined;
|
|
100
|
+
status?: "complete" | "current" | "upcoming" | undefined;
|
|
101
|
+
} & {
|
|
102
|
+
className?: string;
|
|
103
|
+
}) | undefined) => string;
|
|
104
|
+
/**
|
|
105
|
+
* The circular step indicator (the number/check badge on the rail).
|
|
106
|
+
* `status` variant applies the appropriate background and text treatment.
|
|
107
|
+
*/
|
|
108
|
+
declare const wizardStepIndicatorVariants: (props?: ({
|
|
109
|
+
status?: "complete" | "current" | "upcoming" | undefined;
|
|
110
|
+
} & {
|
|
111
|
+
className?: string;
|
|
112
|
+
}) | undefined) => string;
|
|
113
|
+
/** The label text next to / below the step indicator. */
|
|
114
|
+
declare const wizardStepLabelVariants: (props?: ({
|
|
115
|
+
status?: "complete" | "current" | "upcoming" | undefined;
|
|
116
|
+
} & {
|
|
117
|
+
className?: string;
|
|
118
|
+
}) | undefined) => string;
|
|
119
|
+
/** "(Optional)" sub-label shown beneath the step label. */
|
|
120
|
+
declare const wizardStepOptionalClass = "text-xs text-muted-foreground";
|
|
121
|
+
/**
|
|
122
|
+
* The connector line drawn between two adjacent step indicators.
|
|
123
|
+
* Positioned absolutely so the indicator sits on top of it.
|
|
124
|
+
*/
|
|
125
|
+
declare const wizardConnectorVariants: (props?: ({
|
|
126
|
+
orientation?: "vertical" | "horizontal" | undefined;
|
|
127
|
+
complete?: "true" | "false" | undefined;
|
|
128
|
+
} & {
|
|
129
|
+
className?: string;
|
|
130
|
+
}) | undefined) => string;
|
|
131
|
+
/** The main content area to the right (vertical) or below (horizontal) the rail. */
|
|
132
|
+
declare const wizardContentClass = "flex min-w-0 flex-1 flex-col";
|
|
133
|
+
/** Footer row that holds the Back / Skip / Next-or-Complete buttons. */
|
|
134
|
+
declare const wizardFooterClass = "mt-6 flex items-center gap-3";
|
|
135
|
+
/** The primary action button (Next / Complete). */
|
|
136
|
+
declare const wizardPrimaryButtonVariants: (props?: ({
|
|
137
|
+
[x: string]: string | undefined;
|
|
138
|
+
} & {
|
|
139
|
+
className?: string;
|
|
140
|
+
}) | undefined) => string;
|
|
141
|
+
/** The secondary action button (Back / Skip). */
|
|
142
|
+
declare const wizardSecondaryButtonVariants: (props?: ({
|
|
143
|
+
[x: string]: string | undefined;
|
|
144
|
+
} & {
|
|
145
|
+
className?: string;
|
|
146
|
+
}) | undefined) => string;
|
|
147
|
+
|
|
148
|
+
export { type WizardAPI, type WizardOrientation, type WizardProps, type WizardStep, type WizardStepState, type WizardStepStatus, canAdvance, createWizard, getNextIndex, getPrevIndex, getStepState, wizardConnectorVariants, wizardContentClass, wizardFooterClass, wizardPrimaryButtonVariants, wizardProgress, wizardRailVariants, wizardSecondaryButtonVariants, wizardStepIndicatorVariants, wizardStepItemVariants, wizardStepLabelVariants, wizardStepOptionalClass, wizardVariants };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@refraction-ui/react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.0",
|
|
4
4
|
"description": "All Refraction UI React components in one package — headless, accessible, zero-dependency",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -54,6 +54,7 @@
|
|
|
54
54
|
"@refraction-ui/react-analytics": "workspace:*",
|
|
55
55
|
"@refraction-ui/react-animated-text": "workspace:*",
|
|
56
56
|
"@refraction-ui/react-app-shell": "workspace:*",
|
|
57
|
+
"@refraction-ui/react-audio-room": "workspace:*",
|
|
57
58
|
"@refraction-ui/react-auth": "workspace:*",
|
|
58
59
|
"@refraction-ui/react-avatar": "workspace:*",
|
|
59
60
|
"@refraction-ui/react-avatar-group": "workspace:*",
|
|
@@ -62,12 +63,14 @@
|
|
|
62
63
|
"@refraction-ui/react-breadcrumbs": "workspace:*",
|
|
63
64
|
"@refraction-ui/react-button": "workspace:*",
|
|
64
65
|
"@refraction-ui/react-calendar": "workspace:*",
|
|
66
|
+
"@refraction-ui/react-call-controls": "workspace:*",
|
|
65
67
|
"@refraction-ui/react-callout": "workspace:*",
|
|
66
68
|
"@refraction-ui/react-card": "workspace:*",
|
|
67
69
|
"@refraction-ui/react-card-grid": "workspace:*",
|
|
68
70
|
"@refraction-ui/react-carousel": "workspace:*",
|
|
69
71
|
"@refraction-ui/react-charts": "workspace:*",
|
|
70
72
|
"@refraction-ui/react-checkbox": "workspace:*",
|
|
73
|
+
"@refraction-ui/react-checklist": "workspace:*",
|
|
71
74
|
"@refraction-ui/react-code-block": "workspace:*",
|
|
72
75
|
"@refraction-ui/react-code-editor": "workspace:*",
|
|
73
76
|
"@refraction-ui/react-collapsible": "workspace:*",
|
|
@@ -83,14 +86,20 @@
|
|
|
83
86
|
"@refraction-ui/react-dialog": "workspace:*",
|
|
84
87
|
"@refraction-ui/react-diff-viewer": "workspace:*",
|
|
85
88
|
"@refraction-ui/react-dropdown-menu": "workspace:*",
|
|
89
|
+
"@refraction-ui/react-editor-status-bar": "workspace:*",
|
|
90
|
+
"@refraction-ui/react-editor-tabs": "workspace:*",
|
|
86
91
|
"@refraction-ui/react-emoji-picker": "workspace:*",
|
|
87
92
|
"@refraction-ui/react-empty-state": "workspace:*",
|
|
88
93
|
"@refraction-ui/react-feedback-dialog": "workspace:*",
|
|
89
94
|
"@refraction-ui/react-file-tree": "workspace:*",
|
|
90
95
|
"@refraction-ui/react-file-upload": "workspace:*",
|
|
96
|
+
"@refraction-ui/react-floating-reactions": "workspace:*",
|
|
97
|
+
"@refraction-ui/react-flow-editor": "workspace:*",
|
|
91
98
|
"@refraction-ui/react-footer": "workspace:*",
|
|
92
99
|
"@refraction-ui/react-form": "workspace:*",
|
|
100
|
+
"@refraction-ui/react-graph-view": "workspace:*",
|
|
93
101
|
"@refraction-ui/react-icon-system": "workspace:*",
|
|
102
|
+
"@refraction-ui/react-infinite-canvas": "workspace:*",
|
|
94
103
|
"@refraction-ui/react-inline-editor": "workspace:*",
|
|
95
104
|
"@refraction-ui/react-input": "workspace:*",
|
|
96
105
|
"@refraction-ui/react-input-group": "workspace:*",
|
|
@@ -98,8 +107,12 @@
|
|
|
98
107
|
"@refraction-ui/react-keyboard-shortcut": "workspace:*",
|
|
99
108
|
"@refraction-ui/react-language-selector": "workspace:*",
|
|
100
109
|
"@refraction-ui/react-link-card": "workspace:*",
|
|
110
|
+
"@refraction-ui/react-live-captions": "workspace:*",
|
|
111
|
+
"@refraction-ui/react-live-cursors": "workspace:*",
|
|
112
|
+
"@refraction-ui/react-live-transcript": "workspace:*",
|
|
101
113
|
"@refraction-ui/react-logger": "workspace:*",
|
|
102
114
|
"@refraction-ui/react-markdown-renderer": "workspace:*",
|
|
115
|
+
"@refraction-ui/react-mini-map": "workspace:*",
|
|
103
116
|
"@refraction-ui/react-mobile-nav": "workspace:*",
|
|
104
117
|
"@refraction-ui/react-navbar": "workspace:*",
|
|
105
118
|
"@refraction-ui/react-otp-input": "workspace:*",
|
|
@@ -107,9 +120,12 @@
|
|
|
107
120
|
"@refraction-ui/react-password-input": "workspace:*",
|
|
108
121
|
"@refraction-ui/react-payment": "workspace:*",
|
|
109
122
|
"@refraction-ui/react-popover": "workspace:*",
|
|
123
|
+
"@refraction-ui/react-pre-call-lobby": "workspace:*",
|
|
110
124
|
"@refraction-ui/react-presence-indicator": "workspace:*",
|
|
111
125
|
"@refraction-ui/react-progress-display": "workspace:*",
|
|
126
|
+
"@refraction-ui/react-radial-gauge": "workspace:*",
|
|
112
127
|
"@refraction-ui/react-radio": "workspace:*",
|
|
128
|
+
"@refraction-ui/react-rating-scale": "workspace:*",
|
|
113
129
|
"@refraction-ui/react-reaction-bar": "workspace:*",
|
|
114
130
|
"@refraction-ui/react-resizable-layout": "workspace:*",
|
|
115
131
|
"@refraction-ui/react-rich-editor": "workspace:*",
|
|
@@ -126,18 +142,25 @@
|
|
|
126
142
|
"@refraction-ui/react-social-auth-button": "workspace:*",
|
|
127
143
|
"@refraction-ui/react-status-indicator": "workspace:*",
|
|
128
144
|
"@refraction-ui/react-steps": "workspace:*",
|
|
145
|
+
"@refraction-ui/react-sticky-note": "workspace:*",
|
|
129
146
|
"@refraction-ui/react-switch": "workspace:*",
|
|
130
147
|
"@refraction-ui/react-table-of-contents": "workspace:*",
|
|
131
148
|
"@refraction-ui/react-tabs": "workspace:*",
|
|
149
|
+
"@refraction-ui/react-terminal": "workspace:*",
|
|
150
|
+
"@refraction-ui/react-test-results": "workspace:*",
|
|
132
151
|
"@refraction-ui/react-textarea": "workspace:*",
|
|
133
152
|
"@refraction-ui/react-theme": "workspace:*",
|
|
134
153
|
"@refraction-ui/react-thread-view": "workspace:*",
|
|
154
|
+
"@refraction-ui/react-timeline": "workspace:*",
|
|
135
155
|
"@refraction-ui/react-toast": "workspace:*",
|
|
136
156
|
"@refraction-ui/react-tooltip": "workspace:*",
|
|
137
157
|
"@refraction-ui/react-version-selector": "workspace:*",
|
|
158
|
+
"@refraction-ui/react-video-grid": "workspace:*",
|
|
138
159
|
"@refraction-ui/react-video-player": "workspace:*",
|
|
160
|
+
"@refraction-ui/react-video-tile": "workspace:*",
|
|
139
161
|
"@refraction-ui/react-voice-pill": "workspace:*",
|
|
140
162
|
"@refraction-ui/react-waveform": "workspace:*",
|
|
163
|
+
"@refraction-ui/react-wizard": "workspace:*",
|
|
141
164
|
"@refraction-ui/shared": "workspace:*",
|
|
142
165
|
"@types/react": "19.0.0",
|
|
143
166
|
"@types/react-dom": "19.0.0",
|