@refraction-ui/react 0.19.1 → 0.20.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/chunk-533MCMSU.js +2355 -0
- package/dist/chunk-533MCMSU.js.map +7 -0
- package/dist/chunk-AMK4VCBG.js +250 -0
- package/dist/chunk-AMK4VCBG.js.map +7 -0
- package/dist/chunk-BOLFYVI6.js +90 -0
- package/dist/chunk-BOLFYVI6.js.map +7 -0
- package/dist/chunk-F7B64KT3.js +187 -0
- package/dist/chunk-F7B64KT3.js.map +7 -0
- package/dist/chunk-FD37DFCC.js +77 -0
- package/dist/chunk-FD37DFCC.js.map +7 -0
- package/dist/chunk-H54FLNAF.js +132 -0
- package/dist/chunk-H54FLNAF.js.map +7 -0
- package/dist/chunk-INP46354.js +664 -0
- package/dist/chunk-INP46354.js.map +7 -0
- package/dist/chunk-ONACRMG4.js +116 -0
- package/dist/chunk-ONACRMG4.js.map +7 -0
- package/dist/chunk-SDZ3LROZ.js +7 -0
- package/dist/chunk-SDZ3LROZ.js.map +7 -0
- package/dist/chunk-TOZBR4GL.js +154 -0
- package/dist/chunk-TOZBR4GL.js.map +7 -0
- package/dist/chunk-UNEM2TRI.js +225 -0
- package/dist/chunk-UNEM2TRI.js.map +7 -0
- package/dist/chunk-VK3EQ34F.js +92 -0
- package/dist/chunk-VK3EQ34F.js.map +7 -0
- package/dist/chunk-WK2IIUFO.js +316 -0
- package/dist/chunk-WK2IIUFO.js.map +7 -0
- package/dist/chunk-WSPJTQAV.js +59 -0
- package/dist/chunk-WSPJTQAV.js.map +7 -0
- package/dist/chunk-XWP763SH.js +3 -2
- package/dist/chunk-XWP763SH.js.map +7 -1
- package/dist/chunk-Y2FNNAIL.js +80 -0
- package/dist/chunk-Y2FNNAIL.js.map +1 -0
- package/dist/{chunk-4A4BW3GR.js → chunk-ZF3OHCGV.js} +28 -5
- package/dist/chunk-ZF3OHCGV.js.map +7 -0
- package/dist/form.cjs +5 -11
- package/dist/form.cjs.map +1 -1
- package/dist/form.js +6 -12
- package/dist/form.js.map +1 -1
- package/dist/index.cjs +2879 -33936
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +126 -28780
- package/dist/internal/react-app-shell/index.d.cts +2 -22
- package/dist/internal/react-app-shell/index.d.ts +2 -22
- package/dist/internal/react-badge/index.d.cts +5 -0
- package/dist/internal/react-badge/index.d.ts +5 -0
- package/dist/internal/react-callout/index.d.cts +4 -0
- package/dist/internal/react-callout/index.d.ts +4 -0
- package/dist/internal/react-card/index.d.cts +8 -1
- package/dist/internal/react-card/index.d.ts +8 -1
- package/dist/internal/react-collapsible/index.d.cts +0 -3
- package/dist/internal/react-collapsible/index.d.ts +0 -3
- package/dist/internal/react-combobox/index.d.cts +0 -3
- package/dist/internal/react-combobox/index.d.ts +0 -3
- package/dist/internal/react-command/index.d.cts +0 -3
- package/dist/internal/react-command/index.d.ts +0 -3
- package/dist/internal/react-data-table/index.d.cts +0 -3
- package/dist/internal/react-data-table/index.d.ts +0 -3
- package/dist/internal/react-dialog/index.d.cts +0 -3
- package/dist/internal/react-dialog/index.d.ts +0 -3
- package/dist/internal/react-dropdown-menu/index.d.cts +0 -3
- package/dist/internal/react-dropdown-menu/index.d.ts +0 -3
- package/dist/internal/react-feedback-dialog/index.d.cts +0 -3
- package/dist/internal/react-feedback-dialog/index.d.ts +0 -3
- package/dist/internal/react-form/index.d.cts +2 -21
- package/dist/internal/react-form/index.d.ts +2 -21
- package/dist/internal/react-keyboard-shortcut/index.d.cts +0 -6
- package/dist/internal/react-keyboard-shortcut/index.d.ts +0 -6
- package/dist/internal/react-link-card/index.d.cts +8 -2
- package/dist/internal/react-link-card/index.d.ts +8 -2
- package/dist/internal/react-popover/index.d.cts +0 -3
- package/dist/internal/react-popover/index.d.ts +0 -3
- package/dist/internal/react-sheet/index.d.cts +0 -3
- package/dist/internal/react-sheet/index.d.ts +0 -3
- package/dist/internal/react-slot/index.d.cts +23 -0
- package/dist/internal/react-slot/index.d.ts +23 -0
- package/dist/internal/react-toast/index.d.cts +0 -3
- package/dist/internal/react-toast/index.d.ts +0 -3
- package/dist/internal/react-tooltip/index.d.cts +0 -3
- package/dist/internal/react-tooltip/index.d.ts +0 -3
- package/dist/react-accordion.js +125 -0
- package/dist/react-accordion.js.map +7 -0
- package/dist/react-ai.js +257 -0
- package/dist/react-ai.js.map +7 -0
- package/dist/react-analytics.js +1698 -0
- package/dist/react-analytics.js.map +7 -0
- package/dist/react-animated-text.js +164 -0
- package/dist/react-animated-text.js.map +7 -0
- package/dist/react-app-shell.js +631 -0
- package/dist/react-app-shell.js.map +7 -0
- package/dist/react-audience-feature-card.js +53 -0
- package/dist/react-audience-feature-card.js.map +7 -0
- package/dist/react-audio-room.js +166 -0
- package/dist/react-audio-room.js.map +7 -0
- package/dist/react-auth.js +211 -0
- package/dist/react-auth.js.map +7 -0
- package/dist/react-avatar-group.js +154 -0
- package/dist/react-avatar-group.js.map +7 -0
- package/dist/react-avatar.js +168 -0
- package/dist/react-avatar.js.map +7 -0
- package/dist/react-badge.js +86 -0
- package/dist/react-badge.js.map +7 -0
- package/dist/react-bottom-nav.js +67 -0
- package/dist/react-bottom-nav.js.map +7 -0
- package/dist/react-brand-network-cell.js +92 -0
- package/dist/react-brand-network-cell.js.map +7 -0
- package/dist/react-breadcrumbs.js +104 -0
- package/dist/react-breadcrumbs.js.map +7 -0
- package/dist/react-browser-chrome-mock.js +89 -0
- package/dist/react-browser-chrome-mock.js.map +7 -0
- package/dist/react-button.js +13 -0
- package/dist/react-button.js.map +7 -0
- package/dist/react-calendar.js +301 -0
- package/dist/react-calendar.js.map +7 -0
- package/dist/react-call-controls.js +113 -0
- package/dist/react-call-controls.js.map +7 -0
- package/dist/react-callout.js +152 -0
- package/dist/react-callout.js.map +7 -0
- package/dist/react-card-grid.js +34 -0
- package/dist/react-card-grid.js.map +7 -0
- package/dist/react-card.js +200 -0
- package/dist/react-card.js.map +7 -0
- package/dist/react-carousel.js +132 -0
- package/dist/react-carousel.js.map +7 -0
- package/dist/react-charts.js +509 -0
- package/dist/react-charts.js.map +7 -0
- package/dist/react-checkbox.js +156 -0
- package/dist/react-checkbox.js.map +7 -0
- package/dist/react-checklist.js +168 -0
- package/dist/react-checklist.js.map +7 -0
- package/dist/react-code-block.js +78 -0
- package/dist/react-code-block.js.map +7 -0
- package/dist/react-code-editor.js +184 -0
- package/dist/react-code-editor.js.map +7 -0
- package/dist/react-collapsible.js +192 -0
- package/dist/react-collapsible.js.map +7 -0
- package/dist/react-combobox.js +609 -0
- package/dist/react-combobox.js.map +7 -0
- package/dist/react-command-input.js +202 -0
- package/dist/react-command-input.js.map +7 -0
- package/dist/react-command.js +364 -0
- package/dist/react-command.js.map +7 -0
- package/dist/react-composer.js +2036 -0
- package/dist/react-composer.js.map +7 -0
- package/dist/react-content-protection.js +133 -0
- package/dist/react-content-protection.js.map +7 -0
- package/dist/react-conversation.js +1226 -0
- package/dist/react-conversation.js.map +7 -0
- package/dist/react-cookie-consent.js +291 -0
- package/dist/react-cookie-consent.js.map +7 -0
- package/dist/react-data-table.js +310 -0
- package/dist/react-data-table.js.map +7 -0
- package/dist/react-date-picker.js +95 -0
- package/dist/react-date-picker.js.map +7 -0
- package/dist/react-device-frame.js +137 -0
- package/dist/react-device-frame.js.map +7 -0
- package/dist/react-dialog.js +218 -0
- package/dist/react-dialog.js.map +7 -0
- package/dist/react-diff-viewer.js +460 -0
- package/dist/react-diff-viewer.js.map +7 -0
- package/dist/react-dropdown-menu.js +292 -0
- package/dist/react-dropdown-menu.js.map +7 -0
- package/dist/react-editor-status-bar.js +148 -0
- package/dist/react-editor-status-bar.js.map +7 -0
- package/dist/react-editor-tabs.js +159 -0
- package/dist/react-editor-tabs.js.map +7 -0
- package/dist/react-emoji-picker.js +238 -0
- package/dist/react-emoji-picker.js.map +7 -0
- package/dist/react-empty-state.js +90 -0
- package/dist/react-empty-state.js.map +7 -0
- package/dist/react-feedback-dialog.js +275 -0
- package/dist/react-feedback-dialog.js.map +7 -0
- package/dist/react-file-tree.js +376 -0
- package/dist/react-file-tree.js.map +7 -0
- package/dist/react-file-upload.js +360 -0
- package/dist/react-file-upload.js.map +7 -0
- package/dist/react-floating-reactions.js +124 -0
- package/dist/react-floating-reactions.js.map +7 -0
- package/dist/react-flow-editor.js +198 -0
- package/dist/react-flow-editor.js.map +7 -0
- package/dist/react-footer.js +67 -0
- package/dist/react-footer.js.map +7 -0
- package/dist/react-graph-view.js +197 -0
- package/dist/react-graph-view.js.map +7 -0
- package/dist/react-icon-system.js +9 -0
- package/dist/react-icon-system.js.map +7 -0
- package/dist/react-infinite-canvas.js +8 -0
- package/dist/react-infinite-canvas.js.map +7 -0
- package/dist/react-inline-editor.js +216 -0
- package/dist/react-inline-editor.js.map +7 -0
- package/dist/react-input-group.js +150 -0
- package/dist/react-input-group.js.map +7 -0
- package/dist/react-input.js +10 -0
- package/dist/react-input.js.map +7 -0
- package/dist/react-install-prompt.js +132 -0
- package/dist/react-install-prompt.js.map +7 -0
- package/dist/react-kanban-board.js +198 -0
- package/dist/react-kanban-board.js.map +7 -0
- package/dist/react-keyboard-shortcut.js +36 -0
- package/dist/react-keyboard-shortcut.js.map +7 -0
- package/dist/react-language-selector.js +311 -0
- package/dist/react-language-selector.js.map +7 -0
- package/dist/react-link-card.js +48 -0
- package/dist/react-link-card.js.map +7 -0
- package/dist/react-live-captions.js +92 -0
- package/dist/react-live-captions.js.map +7 -0
- package/dist/react-live-cursors.js +145 -0
- package/dist/react-live-cursors.js.map +7 -0
- package/dist/react-live-transcript.js +117 -0
- package/dist/react-live-transcript.js.map +7 -0
- package/dist/react-location-selector.js +252 -0
- package/dist/react-location-selector.js.map +7 -0
- package/dist/react-logger.js +415 -0
- package/dist/react-logger.js.map +7 -0
- package/dist/react-markdown-renderer.js +12 -0
- package/dist/react-markdown-renderer.js.map +7 -0
- package/dist/react-marquee-strip.js +62 -0
- package/dist/react-marquee-strip.js.map +7 -0
- package/dist/react-mascot.js +367 -0
- package/dist/react-mascot.js.map +7 -0
- package/dist/react-mastery-bar.js +97 -0
- package/dist/react-mastery-bar.js.map +7 -0
- package/dist/react-mini-map.js +207 -0
- package/dist/react-mini-map.js.map +7 -0
- package/dist/react-mobile-nav.js +216 -0
- package/dist/react-mobile-nav.js.map +7 -0
- package/dist/react-navbar.js +96 -0
- package/dist/react-navbar.js.map +7 -0
- package/dist/react-numbered-steps.js +67 -0
- package/dist/react-numbered-steps.js.map +7 -0
- package/dist/react-otp-input.js +318 -0
- package/dist/react-otp-input.js.map +7 -0
- package/dist/react-pagination.js +199 -0
- package/dist/react-pagination.js.map +7 -0
- package/dist/react-password-input.js +104 -0
- package/dist/react-password-input.js.map +7 -0
- package/dist/react-payment.js +81 -0
- package/dist/react-payment.js.map +7 -0
- package/dist/react-popover.js +176 -0
- package/dist/react-popover.js.map +7 -0
- package/dist/react-pre-call-lobby.js +309 -0
- package/dist/react-pre-call-lobby.js.map +7 -0
- package/dist/react-presence-indicator.js +86 -0
- package/dist/react-presence-indicator.js.map +7 -0
- package/dist/react-pricing-card.js +142 -0
- package/dist/react-pricing-card.js.map +7 -0
- package/dist/react-progress-display.js +188 -0
- package/dist/react-progress-display.js.map +7 -0
- package/dist/react-radial-gauge.js +193 -0
- package/dist/react-radial-gauge.js.map +7 -0
- package/dist/react-radio.js +169 -0
- package/dist/react-radio.js.map +7 -0
- package/dist/react-rating-scale.js +171 -0
- package/dist/react-rating-scale.js.map +7 -0
- package/dist/react-reaction-bar.js +111 -0
- package/dist/react-reaction-bar.js.map +7 -0
- package/dist/react-resizable-layout.js +298 -0
- package/dist/react-resizable-layout.js.map +7 -0
- package/dist/react-rich-editor.js +1 -0
- package/dist/react-rich-editor.js.map +7 -0
- package/dist/react-search-bar.js +285 -0
- package/dist/react-search-bar.js.map +7 -0
- package/dist/react-section-head.js +65 -0
- package/dist/react-section-head.js.map +7 -0
- package/dist/react-segmented-control.js +215 -0
- package/dist/react-segmented-control.js.map +7 -0
- package/dist/react-select.js +389 -0
- package/dist/react-select.js.map +7 -0
- package/dist/react-separator.js +86 -0
- package/dist/react-separator.js.map +7 -0
- package/dist/react-sheet.js +310 -0
- package/dist/react-sheet.js.map +7 -0
- package/dist/react-sidebar.js +100 -0
- package/dist/react-sidebar.js.map +7 -0
- package/dist/react-skeleton.js +91 -0
- package/dist/react-skeleton.js.map +7 -0
- package/dist/react-skip-to-content.js +38 -0
- package/dist/react-skip-to-content.js.map +7 -0
- package/dist/react-slide-viewer.js +264 -0
- package/dist/react-slide-viewer.js.map +7 -0
- package/dist/react-slider.js +105 -0
- package/dist/react-slider.js.map +7 -0
- package/dist/react-slot-picker.js +184 -0
- package/dist/react-slot-picker.js.map +7 -0
- package/dist/react-slot.js +7 -0
- package/dist/react-slot.js.map +7 -0
- package/dist/react-social-auth-button.js +169 -0
- package/dist/react-social-auth-button.js.map +7 -0
- package/dist/react-sortable-list.js +204 -0
- package/dist/react-sortable-list.js.map +7 -0
- package/dist/react-stat-grid.js +69 -0
- package/dist/react-stat-grid.js.map +7 -0
- package/dist/react-status-indicator.js +117 -0
- package/dist/react-status-indicator.js.map +7 -0
- package/dist/react-steps.js +167 -0
- package/dist/react-steps.js.map +7 -0
- package/dist/react-sticky-note.js +131 -0
- package/dist/react-sticky-note.js.map +7 -0
- package/dist/react-switch.js +139 -0
- package/dist/react-switch.js.map +7 -0
- package/dist/react-table-of-contents.js +80 -0
- package/dist/react-table-of-contents.js.map +7 -0
- package/dist/react-tabs.js +230 -0
- package/dist/react-tabs.js.map +7 -0
- package/dist/react-terminal.js +101 -0
- package/dist/react-terminal.js.map +7 -0
- package/dist/react-test-results.js +158 -0
- package/dist/react-test-results.js.map +7 -0
- package/dist/react-textarea.js +89 -0
- package/dist/react-textarea.js.map +7 -0
- package/dist/react-thread-view.js +139 -0
- package/dist/react-thread-view.js.map +7 -0
- package/dist/react-timeline.js +153 -0
- package/dist/react-timeline.js.map +7 -0
- package/dist/react-toast.js +253 -0
- package/dist/react-toast.js.map +7 -0
- package/dist/react-tooltip.js +221 -0
- package/dist/react-tooltip.js.map +7 -0
- package/dist/react-version-selector.js +270 -0
- package/dist/react-version-selector.js.map +7 -0
- package/dist/react-video-grid.js +129 -0
- package/dist/react-video-grid.js.map +7 -0
- package/dist/react-video-player.js +206 -0
- package/dist/react-video-player.js.map +7 -0
- package/dist/react-video-tile.js +8 -0
- package/dist/react-video-tile.js.map +7 -0
- package/dist/react-voice-pill.js +314 -0
- package/dist/react-voice-pill.js.map +7 -0
- package/dist/react-waveform.js +558 -0
- package/dist/react-waveform.js.map +7 -0
- package/dist/react-wizard.js +337 -0
- package/dist/react-wizard.js.map +7 -0
- package/dist/styles.css +7 -0
- package/dist/theme.js +1 -1
- package/package.json +3 -2
- package/dist/applicationinsights-web-H7OBLIVJ.js +0 -23393
- package/dist/applicationinsights-web-H7OBLIVJ.js.map +0 -1
- package/dist/chunk-4A4BW3GR.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/module-X3HTTRQK.js +0 -6438
- package/dist/module-X3HTTRQK.js.map +0 -1
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import {
|
|
2
|
+
cn,
|
|
3
|
+
cva
|
|
4
|
+
} from "./chunk-ZF3OHCGV.js";
|
|
5
|
+
|
|
6
|
+
// ../react-call-controls/dist/index.js
|
|
7
|
+
import * as React from "react";
|
|
8
|
+
|
|
9
|
+
// ../call-controls/dist/index.js
|
|
10
|
+
function createCallControls(_props = {}) {
|
|
11
|
+
const ariaProps = {
|
|
12
|
+
role: "toolbar",
|
|
13
|
+
"aria-label": "Call controls"
|
|
14
|
+
};
|
|
15
|
+
const dataAttributes = {
|
|
16
|
+
"data-component": "call-controls"
|
|
17
|
+
};
|
|
18
|
+
return { ariaProps, dataAttributes };
|
|
19
|
+
}
|
|
20
|
+
var callControlsVariants = cva({
|
|
21
|
+
base: [
|
|
22
|
+
"inline-flex items-center justify-center gap-2",
|
|
23
|
+
"rounded-xl bg-card px-4 py-3",
|
|
24
|
+
"shadow-sm border border-border"
|
|
25
|
+
].join(" "),
|
|
26
|
+
variants: {
|
|
27
|
+
size: {
|
|
28
|
+
sm: "gap-1.5 px-3 py-2",
|
|
29
|
+
md: "gap-2 px-4 py-3"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
defaultVariants: {
|
|
33
|
+
size: "md"
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
var callControlButtonVariants = cva({
|
|
37
|
+
base: [
|
|
38
|
+
"inline-flex flex-col items-center justify-center rounded-full",
|
|
39
|
+
"font-medium transition-colors",
|
|
40
|
+
"focus-visible:outline-none focus-visible:ring-2",
|
|
41
|
+
"focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background",
|
|
42
|
+
"disabled:pointer-events-none disabled:opacity-50",
|
|
43
|
+
"cursor-pointer"
|
|
44
|
+
].join(" "),
|
|
45
|
+
variants: {
|
|
46
|
+
size: {
|
|
47
|
+
sm: "size-9 text-xs",
|
|
48
|
+
md: "size-11 text-xs"
|
|
49
|
+
},
|
|
50
|
+
tone: {
|
|
51
|
+
default: "bg-muted text-foreground hover:bg-muted/80",
|
|
52
|
+
active: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
53
|
+
destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90"
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
defaultVariants: {
|
|
57
|
+
size: "md",
|
|
58
|
+
tone: "default"
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
var callControlLabelClass = "sr-only text-[10px] leading-none mt-0.5";
|
|
62
|
+
|
|
63
|
+
// ../react-call-controls/dist/index.js
|
|
64
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
65
|
+
var CallControlButton = React.forwardRef(
|
|
66
|
+
function CallControlButton2({
|
|
67
|
+
label,
|
|
68
|
+
icon,
|
|
69
|
+
tone = "default",
|
|
70
|
+
pressed,
|
|
71
|
+
size = "md",
|
|
72
|
+
className,
|
|
73
|
+
...props
|
|
74
|
+
}, ref) {
|
|
75
|
+
const ariaPressedProps = pressed !== void 0 ? { "aria-pressed": pressed } : {};
|
|
76
|
+
return /* @__PURE__ */ jsxs(
|
|
77
|
+
"button",
|
|
78
|
+
{
|
|
79
|
+
ref,
|
|
80
|
+
type: "button",
|
|
81
|
+
"aria-label": label,
|
|
82
|
+
...ariaPressedProps,
|
|
83
|
+
className: cn(callControlButtonVariants({ tone, size }), className),
|
|
84
|
+
...props,
|
|
85
|
+
children: [
|
|
86
|
+
icon,
|
|
87
|
+
/* @__PURE__ */ jsx("span", { className: callControlLabelClass, children: label })
|
|
88
|
+
]
|
|
89
|
+
}
|
|
90
|
+
);
|
|
91
|
+
}
|
|
92
|
+
);
|
|
93
|
+
var CallControls = React.forwardRef(
|
|
94
|
+
function CallControls2({ size = "md", className, children, ...props }, ref) {
|
|
95
|
+
const api = createCallControls();
|
|
96
|
+
return /* @__PURE__ */ jsx(
|
|
97
|
+
"div",
|
|
98
|
+
{
|
|
99
|
+
ref,
|
|
100
|
+
className: cn(callControlsVariants({ size }), className),
|
|
101
|
+
...api.ariaProps,
|
|
102
|
+
...api.dataAttributes,
|
|
103
|
+
...props,
|
|
104
|
+
children
|
|
105
|
+
}
|
|
106
|
+
);
|
|
107
|
+
}
|
|
108
|
+
);
|
|
109
|
+
export {
|
|
110
|
+
CallControlButton,
|
|
111
|
+
CallControls
|
|
112
|
+
};
|
|
113
|
+
//# sourceMappingURL=react-call-controls.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../call-controls/src/call-controls.ts", "../../call-controls/src/call-controls.styles.ts", "../../react-call-controls/src/call-controls.tsx"],
|
|
4
|
+
"sourcesContent": ["/** Visual/semantic tone of a call control button. */\nexport type CallControlTone = 'default' | 'active' | 'destructive'\n\n/**\n * Toggleable state for controls like mic or camera.\n * `'on'` = currently active (mic/camera live).\n * `'off'` = currently muted/disabled.\n */\nexport type CallControlState = 'on' | 'off'\n\n/**\n * A single control descriptor used by adapters to drive button rendering.\n */\nexport interface CallControlItem {\n /** Unique identifier for this control. */\n id: string\n /** Visible label (also used as aria-label). */\n label: string\n /** Optional icon to render inside the button. */\n icon?: string\n /** Explicit tone override; when omitted `controlTone` is used with `state`. */\n tone?: CallControlTone\n /** Toggleable state (present only for toggleable controls). */\n pressed?: boolean\n}\n\nexport interface CallControlsProps {\n /** Controls to render. */\n controls?: CallControlItem[]\n}\n\nexport interface CallControlsAPI {\n /** ARIA attributes to spread on the toolbar element (`role=\"toolbar\"`). */\n ariaProps: Record<string, string | number | boolean>\n /** Data attributes for styling hooks. */\n dataAttributes: Record<string, string>\n}\n\n/**\n * Derive the visual tone for a control given its kind and current toggle state.\n *\n * Convention used by easyloops meeting toolbar:\n * - `leave` / `end` → always `'destructive'`\n * - any control that is `'off'` (muted/stopped) → `'destructive'` to signal\n * the user that something is disabled (e.g. mic muted = red indicator).\n * - a control that is `'on'` → `'active'` (lit up / highlighted).\n * - otherwise → `'default'` (neutral).\n */\nexport function controlTone(\n kind: string,\n state: CallControlState | undefined,\n): CallControlTone {\n const normalised = kind.toLowerCase()\n if (normalised === 'leave' || normalised === 'end') return 'destructive'\n if (state === 'off') return 'destructive'\n if (state === 'on') return 'active'\n return 'default'\n}\n\n/**\n * Build the framework-agnostic toolbar props for a call-controls bar.\n *\n * Returns `role=\"toolbar\"` plus `aria-label=\"Call controls\"` and data\n * attributes; adapters spread these onto their container element.\n */\nexport function createCallControls(_props: CallControlsProps = {}): CallControlsAPI {\n const ariaProps: Record<string, string | number | boolean> = {\n role: 'toolbar',\n 'aria-label': 'Call controls',\n }\n\n const dataAttributes: Record<string, string> = {\n 'data-component': 'call-controls',\n }\n\n return { ariaProps, dataAttributes }\n}\n", "import { cva } from '@refraction-ui/shared'\n\n/**\n * Toolbar container — flex row, centred, with a card background and gap\n * between the control buttons.\n */\nexport const callControlsVariants = cva({\n base: [\n 'inline-flex items-center justify-center gap-2',\n 'rounded-xl bg-card px-4 py-3',\n 'shadow-sm border border-border',\n ].join(' '),\n variants: {\n size: {\n sm: 'gap-1.5 px-3 py-2',\n md: 'gap-2 px-4 py-3',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\n/**\n * Individual call-control button.\n *\n * `tone` variants:\n * - `default` → neutral muted appearance (standard inactive controls)\n * - `active` → primary/highlighted (e.g. mic on, screen-share running)\n * - `destructive` → red/danger (leave button or a muted mic indicator)\n *\n * `size` variants match the toolbar container.\n */\nexport const callControlButtonVariants = cva({\n base: [\n 'inline-flex flex-col items-center justify-center rounded-full',\n 'font-medium transition-colors',\n 'focus-visible:outline-none focus-visible:ring-2',\n 'focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background',\n 'disabled:pointer-events-none disabled:opacity-50',\n 'cursor-pointer',\n ].join(' '),\n variants: {\n size: {\n sm: 'size-9 text-xs',\n md: 'size-11 text-xs',\n },\n tone: {\n default: 'bg-muted text-foreground hover:bg-muted/80',\n active: 'bg-primary text-primary-foreground hover:bg-primary/90',\n destructive:\n 'bg-destructive text-destructive-foreground hover:bg-destructive/90',\n },\n },\n defaultVariants: {\n size: 'md',\n tone: 'default',\n },\n})\n\n/** Label beneath the icon inside a call-control button. */\nexport const callControlLabelClass =\n 'sr-only text-[10px] leading-none mt-0.5'\n", "import * as React from 'react'\nimport {\n createCallControls,\n callControlsVariants,\n callControlButtonVariants,\n callControlLabelClass,\n type CallControlTone,\n type CallControlItem,\n} from '@refraction-ui/call-controls'\nimport { cn } from '@refraction-ui/shared'\n\nexport type { CallControlTone, CallControlItem }\n\n// ─── CallControlButton ────────────────────────────────────────────────────────\n\nexport interface CallControlButtonProps\n extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'color' | 'content'> {\n /** Accessible label (used as aria-label and visible to screen readers). */\n label: string\n /** Optional icon node rendered inside the button. */\n icon?: React.ReactNode\n /** Visual/semantic tone of the button. */\n tone?: CallControlTone\n /**\n * Whether this control is currently in a \"pressed\" / toggled-on state.\n * When provided, the button gains `aria-pressed`.\n */\n pressed?: boolean\n /** Visual size of the button. */\n size?: 'sm' | 'md'\n}\n\n/**\n * A single round meeting-control button with icon, accessible label,\n * tone variants (default / active / destructive), and optional aria-pressed\n * for toggleable controls (mic, camera, screen-share).\n */\nexport const CallControlButton = React.forwardRef<\n HTMLButtonElement,\n CallControlButtonProps\n>(\n function CallControlButton(\n {\n label,\n icon,\n tone = 'default',\n pressed,\n size = 'md',\n className,\n ...props\n },\n ref,\n ) {\n const ariaPressedProps =\n pressed !== undefined ? { 'aria-pressed': pressed } : {}\n\n return (\n <button\n ref={ref}\n type=\"button\"\n aria-label={label}\n {...ariaPressedProps}\n className={cn(callControlButtonVariants({ tone, size }), className)}\n {...props}\n >\n {icon}\n <span className={callControlLabelClass}>{label}</span>\n </button>\n )\n },\n)\n\n// ─── CallControls ─────────────────────────────────────────────────────────────\n\nexport interface CallControlsProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, 'color' | 'content'> {\n /** Visual size passed down to child buttons when using the composable API. */\n size?: 'sm' | 'md'\n}\n\n/**\n * Toolbar wrapper for a set of meeting-control buttons.\n *\n * Composable: render `<CallControlButton>` children directly.\n *\n * ```tsx\n * <CallControls>\n * <CallControlButton label=\"Mute\" icon={<MicIcon />} tone=\"active\" pressed={true} />\n * <CallControlButton label=\"Leave\" tone=\"destructive\" />\n * </CallControls>\n * ```\n */\nexport const CallControls = React.forwardRef<HTMLDivElement, CallControlsProps>(\n function CallControls({ size = 'md', className, children, ...props }, ref) {\n const api = createCallControls()\n\n return (\n <div\n ref={ref}\n className={cn(callControlsVariants({ size }), className)}\n {...api.ariaProps}\n {...api.dataAttributes}\n {...props}\n >\n {children}\n </div>\n )\n },\n)\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;AAiEO,SAAS,mBAAmB,SAA4B,CAAA,GAAqB;AAClF,QAAM,YAAuD;IAC3D,MAAM;IACN,cAAc;EAAA;AAGhB,QAAM,iBAAyC;IAC7C,kBAAkB;EAAA;AAGpB,SAAO,EAAE,WAAW,eAAA;AACtB;ACtEO,IAAM,uBAAuB,IAAI;EACtC,MAAM;IACJ;IACA;IACA;EAAA,EACA,KAAK,GAAG;EACV,UAAU;IACR,MAAM;MACJ,IAAI;MACJ,IAAI;IAAA;EACN;EAEF,iBAAiB;IACf,MAAM;EAAA;AAEV,CAAC;AAYM,IAAM,4BAA4B,IAAI;EAC3C,MAAM;IACJ;IACA;IACA;IACA;IACA;IACA;EAAA,EACA,KAAK,GAAG;EACV,UAAU;IACR,MAAM;MACJ,IAAI;MACJ,IAAI;IAAA;IAEN,MAAM;MACJ,SAAS;MACT,QAAQ;MACR,aACE;IAAA;EACJ;EAEF,iBAAiB;IACf,MAAM;IACN,MAAM;EAAA;AAEV,CAAC;AAGM,IAAM,wBACX;;;;ACzBK,IAAM,oBAA0B;EAIrC,SAASA,mBACP;IACE;IACA;IACA,OAAO;IACP;IACA,OAAO;IACP;IACA,GAAG;EAAA,GAEL,KACA;AACA,UAAM,mBACJ,YAAY,SAAY,EAAE,gBAAgB,QAAA,IAAY,CAAA;AAExD,WACE;MAAC;MAAA;QACC;QACA,MAAK;QACL,cAAY;QACX,GAAG;QACJ,WAAW,GAAG,0BAA0B,EAAE,MAAM,KAAA,CAAM,GAAG,SAAS;QACjE,GAAG;QAEH,UAAA;UAAA;UACD,oBAAC,QAAA,EAAK,WAAW,uBAAwB,UAAA,MAAA,CAAM;QAAA;MAAA;IAAA;EAGrD;AACF;AAsBO,IAAM,eAAqB;EAChC,SAASC,cAAa,EAAE,OAAO,MAAM,WAAW,UAAU,GAAG,MAAA,GAAS,KAAK;AACzE,UAAM,MAAM,mBAAA;AAEZ,WACE;MAAC;MAAA;QACC;QACA,WAAW,GAAG,qBAAqB,EAAE,KAAA,CAAM,GAAG,SAAS;QACtD,GAAG,IAAI;QACP,GAAG,IAAI;QACP,GAAG;QAEH;MAAA;IAAA;EAGP;AACF;",
|
|
6
|
+
"names": ["CallControlButton", "CallControls"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Slot
|
|
3
|
+
} from "./chunk-WSPJTQAV.js";
|
|
4
|
+
import {
|
|
5
|
+
cn,
|
|
6
|
+
cva
|
|
7
|
+
} from "./chunk-ZF3OHCGV.js";
|
|
8
|
+
|
|
9
|
+
// ../react-callout/dist/index.js
|
|
10
|
+
import * as React from "react";
|
|
11
|
+
|
|
12
|
+
// ../callout/dist/index.js
|
|
13
|
+
function createCallout(props = {}) {
|
|
14
|
+
const ariaProps = {};
|
|
15
|
+
if (props.role) {
|
|
16
|
+
ariaProps.role = props.role;
|
|
17
|
+
} else {
|
|
18
|
+
ariaProps.role = "region";
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
ariaProps,
|
|
22
|
+
dataAttributes: { "data-slot": "callout" }
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
function createCalloutIcon() {
|
|
26
|
+
return { dataAttributes: { "data-slot": "callout-icon" } };
|
|
27
|
+
}
|
|
28
|
+
function createCalloutContent() {
|
|
29
|
+
return { dataAttributes: { "data-slot": "callout-content" } };
|
|
30
|
+
}
|
|
31
|
+
function createCalloutTitle() {
|
|
32
|
+
return { dataAttributes: { "data-slot": "callout-title" } };
|
|
33
|
+
}
|
|
34
|
+
function createCalloutDescription() {
|
|
35
|
+
return { dataAttributes: { "data-slot": "callout-description" } };
|
|
36
|
+
}
|
|
37
|
+
var calloutVariants = cva({
|
|
38
|
+
base: "relative w-full rounded-lg border p-4 text-sm flex gap-3",
|
|
39
|
+
variants: {
|
|
40
|
+
variant: {
|
|
41
|
+
default: "bg-muted/50 border-border text-foreground",
|
|
42
|
+
destructive: "bg-destructive/10 border-destructive/20 text-destructive",
|
|
43
|
+
success: "bg-success/10 border-success/20 text-success",
|
|
44
|
+
warning: "bg-warning/10 border-warning/20 text-warning",
|
|
45
|
+
info: "bg-info/10 border-info/20 text-info"
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
defaultVariants: {
|
|
49
|
+
variant: "default"
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
var calloutTitleVariants = cva({
|
|
53
|
+
base: "font-semibold leading-none tracking-tight mb-1"
|
|
54
|
+
});
|
|
55
|
+
var calloutDescriptionVariants = cva({
|
|
56
|
+
base: "text-sm opacity-90 leading-relaxed"
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
// ../react-callout/dist/index.js
|
|
60
|
+
import { jsx } from "react/jsx-runtime";
|
|
61
|
+
var Callout = React.forwardRef(
|
|
62
|
+
function Callout2({ className, variant, asChild = false, ...props }, ref) {
|
|
63
|
+
const api = createCallout({ role: variant === "destructive" ? "alert" : "region" });
|
|
64
|
+
const classes = cn(calloutVariants({ variant }), className);
|
|
65
|
+
if (asChild) {
|
|
66
|
+
return /* @__PURE__ */ jsx(
|
|
67
|
+
Slot,
|
|
68
|
+
{
|
|
69
|
+
ref,
|
|
70
|
+
className: classes,
|
|
71
|
+
...api.ariaProps,
|
|
72
|
+
...api.dataAttributes,
|
|
73
|
+
...props
|
|
74
|
+
}
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
return /* @__PURE__ */ jsx(
|
|
78
|
+
"div",
|
|
79
|
+
{
|
|
80
|
+
ref,
|
|
81
|
+
className: classes,
|
|
82
|
+
...api.ariaProps,
|
|
83
|
+
...api.dataAttributes,
|
|
84
|
+
...props
|
|
85
|
+
}
|
|
86
|
+
);
|
|
87
|
+
}
|
|
88
|
+
);
|
|
89
|
+
var CalloutIcon = React.forwardRef(
|
|
90
|
+
function CalloutIcon2({ className, ...props }, ref) {
|
|
91
|
+
const api = createCalloutIcon();
|
|
92
|
+
return /* @__PURE__ */ jsx(
|
|
93
|
+
"div",
|
|
94
|
+
{
|
|
95
|
+
ref,
|
|
96
|
+
className: cn("flex-shrink-0 mt-0.5", className),
|
|
97
|
+
...api.dataAttributes,
|
|
98
|
+
...props
|
|
99
|
+
}
|
|
100
|
+
);
|
|
101
|
+
}
|
|
102
|
+
);
|
|
103
|
+
var CalloutContent = React.forwardRef(
|
|
104
|
+
function CalloutContent2({ className, ...props }, ref) {
|
|
105
|
+
const api = createCalloutContent();
|
|
106
|
+
return /* @__PURE__ */ jsx(
|
|
107
|
+
"div",
|
|
108
|
+
{
|
|
109
|
+
ref,
|
|
110
|
+
className: cn("flex-1", className),
|
|
111
|
+
...api.dataAttributes,
|
|
112
|
+
...props
|
|
113
|
+
}
|
|
114
|
+
);
|
|
115
|
+
}
|
|
116
|
+
);
|
|
117
|
+
var CalloutTitle = React.forwardRef(
|
|
118
|
+
function CalloutTitle2({ className, ...props }, ref) {
|
|
119
|
+
const api = createCalloutTitle();
|
|
120
|
+
return /* @__PURE__ */ jsx(
|
|
121
|
+
"h5",
|
|
122
|
+
{
|
|
123
|
+
ref,
|
|
124
|
+
className: cn(calloutTitleVariants(), className),
|
|
125
|
+
...api.dataAttributes,
|
|
126
|
+
...props
|
|
127
|
+
}
|
|
128
|
+
);
|
|
129
|
+
}
|
|
130
|
+
);
|
|
131
|
+
var CalloutDescription = React.forwardRef(
|
|
132
|
+
function CalloutDescription2({ className, ...props }, ref) {
|
|
133
|
+
const api = createCalloutDescription();
|
|
134
|
+
return /* @__PURE__ */ jsx(
|
|
135
|
+
"div",
|
|
136
|
+
{
|
|
137
|
+
ref,
|
|
138
|
+
className: cn(calloutDescriptionVariants(), className),
|
|
139
|
+
...api.dataAttributes,
|
|
140
|
+
...props
|
|
141
|
+
}
|
|
142
|
+
);
|
|
143
|
+
}
|
|
144
|
+
);
|
|
145
|
+
export {
|
|
146
|
+
Callout,
|
|
147
|
+
CalloutContent,
|
|
148
|
+
CalloutDescription,
|
|
149
|
+
CalloutIcon,
|
|
150
|
+
CalloutTitle
|
|
151
|
+
};
|
|
152
|
+
//# sourceMappingURL=react-callout.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../callout/src/callout.ts", "../../callout/src/callout.styles.ts", "../../react-callout/src/callout.tsx"],
|
|
4
|
+
"sourcesContent": ["import type { AccessibilityProps } from '@refraction-ui/shared'\n\nexport interface CalloutProps {\n /** Optional accessible role override */\n role?: string\n}\n\nexport interface CalloutAPI {\n ariaProps: Partial<AccessibilityProps>\n dataAttributes: Record<string, string>\n}\n\nexport function createCallout(props: CalloutProps = {}): CalloutAPI {\n const ariaProps: Partial<AccessibilityProps> = {}\n \n // Callouts are usually alert or region depending on severity\n if (props.role) {\n ariaProps.role = props.role\n } else {\n ariaProps.role = 'region'\n }\n\n return {\n ariaProps,\n dataAttributes: { 'data-slot': 'callout' },\n }\n}\n\nexport function createCalloutIcon(): { dataAttributes: Record<string, string> } {\n return { dataAttributes: { 'data-slot': 'callout-icon' } }\n}\n\nexport function createCalloutContent(): { dataAttributes: Record<string, string> } {\n return { dataAttributes: { 'data-slot': 'callout-content' } }\n}\n\nexport function createCalloutTitle(): { dataAttributes: Record<string, string> } {\n return { dataAttributes: { 'data-slot': 'callout-title' } }\n}\n\nexport function createCalloutDescription(): { dataAttributes: Record<string, string> } {\n return { dataAttributes: { 'data-slot': 'callout-description' } }\n}", "import { cva } from '@refraction-ui/shared'\n\nexport const calloutVariants = cva({\n base: 'relative w-full rounded-lg border p-4 text-sm flex gap-3',\n variants: {\n variant: {\n default: 'bg-muted/50 border-border text-foreground',\n destructive: 'bg-destructive/10 border-destructive/20 text-destructive',\n success: 'bg-success/10 border-success/20 text-success',\n warning: 'bg-warning/10 border-warning/20 text-warning',\n info: 'bg-info/10 border-info/20 text-info',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n})\n\nexport const calloutTitleVariants = cva({\n base: 'font-semibold leading-none tracking-tight mb-1',\n})\n\nexport const calloutDescriptionVariants = cva({\n base: 'text-sm opacity-90 leading-relaxed',\n})\n", "import * as React from 'react'\nimport {\n createCallout,\n createCalloutIcon,\n createCalloutContent,\n createCalloutTitle,\n createCalloutDescription,\n calloutVariants,\n calloutTitleVariants,\n calloutDescriptionVariants,\n} from '@refraction-ui/callout'\nimport { cn } from '@refraction-ui/shared'\nimport { Slot } from '@refraction-ui/react-slot'\n\nexport interface CalloutProps extends React.HTMLAttributes<HTMLDivElement> {\n variant?: 'default' | 'destructive' | 'success' | 'warning' | 'info'\n /** Merge the callout's classes/props onto the single child element instead\n * of rendering a `<div>` (Radix-style `asChild`). Expects exactly one React\n * element child. */\n asChild?: boolean\n}\n\nexport const Callout = React.forwardRef<HTMLDivElement, CalloutProps>(\n function Callout({ className, variant, asChild = false, ...props }, ref) {\n const api = createCallout({ role: variant === 'destructive' ? 'alert' : 'region' })\n const classes = cn(calloutVariants({ variant }), className)\n\n if (asChild) {\n return (\n <Slot\n ref={ref as React.Ref<HTMLElement>}\n className={classes}\n {...api.ariaProps}\n {...api.dataAttributes}\n {...props}\n />\n )\n }\n\n return (\n <div\n ref={ref}\n className={classes}\n {...api.ariaProps}\n {...api.dataAttributes}\n {...props}\n />\n )\n },\n)\n\nexport const CalloutIcon = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n function CalloutIcon({ className, ...props }, ref) {\n const api = createCalloutIcon()\n return (\n <div\n ref={ref}\n className={cn('flex-shrink-0 mt-0.5', className)}\n {...api.dataAttributes}\n {...props}\n />\n )\n },\n)\n\nexport const CalloutContent = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n function CalloutContent({ className, ...props }, ref) {\n const api = createCalloutContent()\n return (\n <div\n ref={ref}\n className={cn('flex-1', className)}\n {...api.dataAttributes}\n {...props}\n />\n )\n },\n)\n\nexport const CalloutTitle = React.forwardRef<HTMLHeadingElement, React.HTMLAttributes<HTMLHeadingElement>>(\n function CalloutTitle({ className, ...props }, ref) {\n const api = createCalloutTitle()\n return (\n <h5\n ref={ref}\n className={cn(calloutTitleVariants(), className)}\n {...api.dataAttributes}\n {...props}\n />\n )\n },\n)\n\nexport const CalloutDescription = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n function CalloutDescription({ className, ...props }, ref) {\n const api = createCalloutDescription()\n return (\n <div\n ref={ref}\n className={cn(calloutDescriptionVariants(), className)}\n {...api.dataAttributes}\n {...props}\n />\n )\n },\n)\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;AAYO,SAAS,cAAc,QAAsB,CAAA,GAAgB;AAClE,QAAM,YAAyC,CAAA;AAG/C,MAAI,MAAM,MAAM;AACd,cAAU,OAAO,MAAM;EACzB,OAAO;AACL,cAAU,OAAO;EACnB;AAEA,SAAO;IACL;IACA,gBAAgB,EAAE,aAAa,UAAA;EAAU;AAE7C;AAEO,SAAS,oBAAgE;AAC9E,SAAO,EAAE,gBAAgB,EAAE,aAAa,eAAA,EAAe;AACzD;AAEO,SAAS,uBAAmE;AACjF,SAAO,EAAE,gBAAgB,EAAE,aAAa,kBAAA,EAAkB;AAC5D;AAEO,SAAS,qBAAiE;AAC/E,SAAO,EAAE,gBAAgB,EAAE,aAAa,gBAAA,EAAgB;AAC1D;AAEO,SAAS,2BAAuE;AACrF,SAAO,EAAE,gBAAgB,EAAE,aAAa,sBAAA,EAAsB;AAChE;ACxCO,IAAM,kBAAkB,IAAI;EACjC,MAAM;EACN,UAAU;IACR,SAAS;MACP,SAAS;MACT,aAAa;MACb,SAAS;MACT,SAAS;MACT,MAAM;IAAA;EACR;EAEF,iBAAiB;IACf,SAAS;EAAA;AAEb,CAAC;AAEM,IAAM,uBAAuB,IAAI;EACtC,MAAM;AACR,CAAC;AAEM,IAAM,6BAA6B,IAAI;EAC5C,MAAM;AACR,CAAC;;;;ACFM,IAAM,UAAgB;EAC3B,SAASA,SAAQ,EAAE,WAAW,SAAS,UAAU,OAAO,GAAG,MAAA,GAAS,KAAK;AACvE,UAAM,MAAM,cAAc,EAAE,MAAM,YAAY,gBAAgB,UAAU,SAAA,CAAU;AAClF,UAAM,UAAU,GAAG,gBAAgB,EAAE,QAAA,CAAS,GAAG,SAAS;AAE1D,QAAI,SAAS;AACX,aACE;QAAC;QAAA;UACC;UACA,WAAW;UACV,GAAG,IAAI;UACP,GAAG,IAAI;UACP,GAAG;QAAA;MAAA;IAGV;AAEA,WACE;MAAC;MAAA;QACC;QACA,WAAW;QACV,GAAG,IAAI;QACP,GAAG,IAAI;QACP,GAAG;MAAA;IAAA;EAGV;AACF;AAEO,IAAM,cAAoB;EAC/B,SAASC,aAAY,EAAE,WAAW,GAAG,MAAA,GAAS,KAAK;AACjD,UAAM,MAAM,kBAAA;AACZ,WACE;MAAC;MAAA;QACC;QACA,WAAW,GAAG,wBAAwB,SAAS;QAC9C,GAAG,IAAI;QACP,GAAG;MAAA;IAAA;EAGV;AACF;AAEO,IAAM,iBAAuB;EAClC,SAASC,gBAAe,EAAE,WAAW,GAAG,MAAA,GAAS,KAAK;AACpD,UAAM,MAAM,qBAAA;AACZ,WACE;MAAC;MAAA;QACC;QACA,WAAW,GAAG,UAAU,SAAS;QAChC,GAAG,IAAI;QACP,GAAG;MAAA;IAAA;EAGV;AACF;AAEO,IAAM,eAAqB;EAChC,SAASC,cAAa,EAAE,WAAW,GAAG,MAAA,GAAS,KAAK;AAClD,UAAM,MAAM,mBAAA;AACZ,WACE;MAAC;MAAA;QACC;QACA,WAAW,GAAG,qBAAA,GAAwB,SAAS;QAC9C,GAAG,IAAI;QACP,GAAG;MAAA;IAAA;EAGV;AACF;AAEO,IAAM,qBAA2B;EACtC,SAASC,oBAAmB,EAAE,WAAW,GAAG,MAAA,GAAS,KAAK;AACxD,UAAM,MAAM,yBAAA;AACZ,WACE;MAAC;MAAA;QACC;QACA,WAAW,GAAG,2BAAA,GAA8B,SAAS;QACpD,GAAG,IAAI;QACP,GAAG;MAAA;IAAA;EAGV;AACF;",
|
|
6
|
+
"names": ["Callout", "CalloutIcon", "CalloutContent", "CalloutTitle", "CalloutDescription"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import {
|
|
2
|
+
cn
|
|
3
|
+
} from "./chunk-ZF3OHCGV.js";
|
|
4
|
+
|
|
5
|
+
// ../react-card-grid/dist/index.js
|
|
6
|
+
import * as React from "react";
|
|
7
|
+
|
|
8
|
+
// ../card-grid/dist/index.js
|
|
9
|
+
function createCardGrid(_props = {}) {
|
|
10
|
+
return {
|
|
11
|
+
dataAttributes: { "data-slot": "card-grid" }
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
// ../react-card-grid/dist/index.js
|
|
16
|
+
import { jsx } from "react/jsx-runtime";
|
|
17
|
+
var CardGrid = React.forwardRef(
|
|
18
|
+
function CardGrid2({ className, columns = 3, ...props }, ref) {
|
|
19
|
+
const api = createCardGrid({ columns });
|
|
20
|
+
return /* @__PURE__ */ jsx(
|
|
21
|
+
"div",
|
|
22
|
+
{
|
|
23
|
+
ref,
|
|
24
|
+
className: cn(className),
|
|
25
|
+
...api.dataAttributes,
|
|
26
|
+
...props
|
|
27
|
+
}
|
|
28
|
+
);
|
|
29
|
+
}
|
|
30
|
+
);
|
|
31
|
+
export {
|
|
32
|
+
CardGrid
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=react-card-grid.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../card-grid/src/card-grid.ts", "../../react-card-grid/src/card-grid.tsx"],
|
|
4
|
+
"sourcesContent": ["export interface CardGridProps {\n columns?: number\n}\n\nexport function createCardGrid(_props: CardGridProps = {}) {\n return {\n dataAttributes: { 'data-slot': 'card-grid' }\n }\n}", "import * as React from 'react'\nimport { createCardGrid, type CardGridProps } from '@refraction-ui/card-grid'\nimport { cn } from '@refraction-ui/shared'\n\nexport interface ReactCardGridProps extends React.HTMLAttributes<HTMLDivElement>, CardGridProps {}\n\nexport const CardGrid = React.forwardRef<HTMLDivElement, ReactCardGridProps>(\n function CardGrid({ className, columns = 3, ...props }, ref) {\n const api = createCardGrid({ columns })\n return (\n <div\n ref={ref}\n className={cn(className)}\n {...api.dataAttributes}\n {...props}\n />\n )\n }\n)\n"],
|
|
5
|
+
"mappings": ";;;;;;;;AAIO,SAAS,eAAe,SAAwB,CAAA,GAAI;AACzD,SAAO;IACL,gBAAgB,EAAE,aAAa,YAAA;EAAY;AAE/C;;;;ACFO,IAAM,WAAiB;EAC5B,SAASA,UAAS,EAAE,WAAW,UAAU,GAAG,GAAG,MAAA,GAAS,KAAK;AAC3D,UAAM,MAAM,eAAe,EAAE,QAAA,CAAS;AACtC,WACE;MAAC;MAAA;QACC;QACA,WAAW,GAAG,SAAS;QACtB,GAAG,IAAI;QACP,GAAG;MAAA;IAAA;EAGV;AACF;",
|
|
6
|
+
"names": ["CardGrid"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Slot
|
|
3
|
+
} from "./chunk-WSPJTQAV.js";
|
|
4
|
+
import {
|
|
5
|
+
cn,
|
|
6
|
+
cva
|
|
7
|
+
} from "./chunk-ZF3OHCGV.js";
|
|
8
|
+
|
|
9
|
+
// ../react-card/dist/index.js
|
|
10
|
+
import * as React from "react";
|
|
11
|
+
|
|
12
|
+
// ../card/dist/index.js
|
|
13
|
+
function createCard(props = {}) {
|
|
14
|
+
const ariaProps = {};
|
|
15
|
+
if (props.role) {
|
|
16
|
+
ariaProps.role = props.role;
|
|
17
|
+
}
|
|
18
|
+
return {
|
|
19
|
+
ariaProps,
|
|
20
|
+
dataAttributes: { "data-slot": "card" }
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
function createCardHeader() {
|
|
24
|
+
return { dataAttributes: { "data-slot": "card-header" } };
|
|
25
|
+
}
|
|
26
|
+
function createCardTitle() {
|
|
27
|
+
return { dataAttributes: { "data-slot": "card-title" } };
|
|
28
|
+
}
|
|
29
|
+
function createCardDescription() {
|
|
30
|
+
return { dataAttributes: { "data-slot": "card-description" } };
|
|
31
|
+
}
|
|
32
|
+
function createCardContent() {
|
|
33
|
+
return { dataAttributes: { "data-slot": "card-content" } };
|
|
34
|
+
}
|
|
35
|
+
function createCardFooter() {
|
|
36
|
+
return { dataAttributes: { "data-slot": "card-footer" } };
|
|
37
|
+
}
|
|
38
|
+
var cardTokens = {
|
|
39
|
+
name: "card",
|
|
40
|
+
tokens: {
|
|
41
|
+
bg: { variable: "--rfr-card-bg", fallback: "hsl(var(--card))" },
|
|
42
|
+
fg: { variable: "--rfr-card-fg", fallback: "hsl(var(--card-foreground))" },
|
|
43
|
+
border: { variable: "--rfr-card-border", fallback: "hsl(var(--border))" }
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
var cardVariants = cva({
|
|
47
|
+
base: "rounded-lg border bg-card text-card-foreground shadow",
|
|
48
|
+
variants: {
|
|
49
|
+
padding: {
|
|
50
|
+
none: "",
|
|
51
|
+
default: "p-6",
|
|
52
|
+
compact: "p-4"
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
defaultVariants: {
|
|
56
|
+
padding: "none"
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
var cardHeaderVariants = cva({
|
|
60
|
+
base: "flex flex-col space-y-1.5 p-6"
|
|
61
|
+
});
|
|
62
|
+
var cardTitleVariants = cva({
|
|
63
|
+
base: "font-semibold leading-none tracking-tight",
|
|
64
|
+
variants: {
|
|
65
|
+
size: {
|
|
66
|
+
sm: "text-lg",
|
|
67
|
+
default: "text-2xl",
|
|
68
|
+
lg: "text-3xl"
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
defaultVariants: {
|
|
72
|
+
size: "default"
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
var cardDescriptionVariants = cva({
|
|
76
|
+
base: "text-sm text-muted-foreground"
|
|
77
|
+
});
|
|
78
|
+
var cardContentVariants = cva({
|
|
79
|
+
base: "p-6 pt-0"
|
|
80
|
+
});
|
|
81
|
+
var cardFooterVariants = cva({
|
|
82
|
+
base: "flex items-center p-6 pt-0"
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
// ../react-card/dist/index.js
|
|
86
|
+
import { jsx } from "react/jsx-runtime";
|
|
87
|
+
var Card = React.forwardRef(
|
|
88
|
+
function Card2({ className, asChild = false, ...props }, ref) {
|
|
89
|
+
const api = createCard();
|
|
90
|
+
const classes = cn(cardVariants(), className);
|
|
91
|
+
if (asChild) {
|
|
92
|
+
return /* @__PURE__ */ jsx(
|
|
93
|
+
Slot,
|
|
94
|
+
{
|
|
95
|
+
ref,
|
|
96
|
+
className: classes,
|
|
97
|
+
...api.ariaProps,
|
|
98
|
+
...api.dataAttributes,
|
|
99
|
+
...props
|
|
100
|
+
}
|
|
101
|
+
);
|
|
102
|
+
}
|
|
103
|
+
return /* @__PURE__ */ jsx(
|
|
104
|
+
"div",
|
|
105
|
+
{
|
|
106
|
+
ref,
|
|
107
|
+
className: classes,
|
|
108
|
+
...api.ariaProps,
|
|
109
|
+
...api.dataAttributes,
|
|
110
|
+
...props
|
|
111
|
+
}
|
|
112
|
+
);
|
|
113
|
+
}
|
|
114
|
+
);
|
|
115
|
+
var CardHeader = React.forwardRef(
|
|
116
|
+
function CardHeader2({ className, ...props }, ref) {
|
|
117
|
+
const api = createCardHeader();
|
|
118
|
+
return /* @__PURE__ */ jsx(
|
|
119
|
+
"div",
|
|
120
|
+
{
|
|
121
|
+
ref,
|
|
122
|
+
className: cn(cardHeaderVariants(), className),
|
|
123
|
+
...api.dataAttributes,
|
|
124
|
+
...props
|
|
125
|
+
}
|
|
126
|
+
);
|
|
127
|
+
}
|
|
128
|
+
);
|
|
129
|
+
var CardTitle = React.forwardRef(
|
|
130
|
+
function CardTitle2({ className, ...props }, ref) {
|
|
131
|
+
const api = createCardTitle();
|
|
132
|
+
return /* @__PURE__ */ jsx(
|
|
133
|
+
"h3",
|
|
134
|
+
{
|
|
135
|
+
ref,
|
|
136
|
+
className: cn(cardTitleVariants(), className),
|
|
137
|
+
...api.dataAttributes,
|
|
138
|
+
...props
|
|
139
|
+
}
|
|
140
|
+
);
|
|
141
|
+
}
|
|
142
|
+
);
|
|
143
|
+
var CardDescription = React.forwardRef(
|
|
144
|
+
function CardDescription2({ className, ...props }, ref) {
|
|
145
|
+
const api = createCardDescription();
|
|
146
|
+
return /* @__PURE__ */ jsx(
|
|
147
|
+
"p",
|
|
148
|
+
{
|
|
149
|
+
ref,
|
|
150
|
+
className: cn(cardDescriptionVariants(), className),
|
|
151
|
+
...api.dataAttributes,
|
|
152
|
+
...props
|
|
153
|
+
}
|
|
154
|
+
);
|
|
155
|
+
}
|
|
156
|
+
);
|
|
157
|
+
var CardContent = React.forwardRef(
|
|
158
|
+
function CardContent2({ className, ...props }, ref) {
|
|
159
|
+
const api = createCardContent();
|
|
160
|
+
return /* @__PURE__ */ jsx(
|
|
161
|
+
"div",
|
|
162
|
+
{
|
|
163
|
+
ref,
|
|
164
|
+
className: cn(cardContentVariants(), className),
|
|
165
|
+
...api.dataAttributes,
|
|
166
|
+
...props
|
|
167
|
+
}
|
|
168
|
+
);
|
|
169
|
+
}
|
|
170
|
+
);
|
|
171
|
+
var CardFooter = React.forwardRef(
|
|
172
|
+
function CardFooter2({ className, ...props }, ref) {
|
|
173
|
+
const api = createCardFooter();
|
|
174
|
+
return /* @__PURE__ */ jsx(
|
|
175
|
+
"div",
|
|
176
|
+
{
|
|
177
|
+
ref,
|
|
178
|
+
className: cn(cardFooterVariants(), className),
|
|
179
|
+
...api.dataAttributes,
|
|
180
|
+
...props
|
|
181
|
+
}
|
|
182
|
+
);
|
|
183
|
+
}
|
|
184
|
+
);
|
|
185
|
+
export {
|
|
186
|
+
Card,
|
|
187
|
+
CardContent,
|
|
188
|
+
CardDescription,
|
|
189
|
+
CardFooter,
|
|
190
|
+
CardHeader,
|
|
191
|
+
CardTitle,
|
|
192
|
+
cardContentVariants,
|
|
193
|
+
cardDescriptionVariants,
|
|
194
|
+
cardFooterVariants,
|
|
195
|
+
cardHeaderVariants,
|
|
196
|
+
cardTitleVariants,
|
|
197
|
+
cardTokens,
|
|
198
|
+
cardVariants
|
|
199
|
+
};
|
|
200
|
+
//# sourceMappingURL=react-card.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../card/src/card.ts", "../../card/src/card.styles.ts", "../../react-card/src/card.tsx"],
|
|
4
|
+
"sourcesContent": ["import type { AccessibilityProps } from '@refraction-ui/shared'\n\nexport interface CardProps {\n /** Optional accessible role override */\n role?: string\n}\n\nexport interface CardAPI {\n /** ARIA attributes to spread on the element */\n ariaProps: Partial<AccessibilityProps>\n /** Data attributes for CSS styling hooks */\n dataAttributes: Record<string, string>\n}\n\nexport function createCard(props: CardProps = {}): CardAPI {\n const ariaProps: Partial<AccessibilityProps> = {}\n if (props.role) {\n ariaProps.role = props.role\n }\n\n return {\n ariaProps,\n dataAttributes: { 'data-slot': 'card' },\n }\n}\n\nexport function createCardHeader(): { dataAttributes: Record<string, string> } {\n return { dataAttributes: { 'data-slot': 'card-header' } }\n}\n\nexport function createCardTitle(): { dataAttributes: Record<string, string> } {\n return { dataAttributes: { 'data-slot': 'card-title' } }\n}\n\nexport function createCardDescription(): { dataAttributes: Record<string, string> } {\n return { dataAttributes: { 'data-slot': 'card-description' } }\n}\n\nexport function createCardContent(): { dataAttributes: Record<string, string> } {\n return { dataAttributes: { 'data-slot': 'card-content' } }\n}\n\nexport function createCardFooter(): { dataAttributes: Record<string, string> } {\n return { dataAttributes: { 'data-slot': 'card-footer' } }\n}\n", "import { cva } from '@refraction-ui/shared'\nimport type { TokenContract } from '@refraction-ui/shared'\n\nexport const cardTokens: TokenContract = {\n name: 'card',\n tokens: {\n bg: { variable: '--rfr-card-bg', fallback: 'hsl(var(--card))' },\n fg: { variable: '--rfr-card-fg', fallback: 'hsl(var(--card-foreground))' },\n border: { variable: '--rfr-card-border', fallback: 'hsl(var(--border))' },\n },\n}\n\nexport const cardVariants = cva({\n base: 'rounded-lg border bg-card text-card-foreground shadow',\n variants: {\n padding: {\n none: '',\n default: 'p-6',\n compact: 'p-4',\n },\n },\n defaultVariants: {\n padding: 'none',\n },\n})\n\nexport const cardHeaderVariants = cva({\n base: 'flex flex-col space-y-1.5 p-6',\n})\n\nexport const cardTitleVariants = cva({\n base: 'font-semibold leading-none tracking-tight',\n variants: {\n size: {\n sm: 'text-lg',\n default: 'text-2xl',\n lg: 'text-3xl',\n },\n },\n defaultVariants: {\n size: 'default',\n },\n})\n\nexport const cardDescriptionVariants = cva({\n base: 'text-sm text-muted-foreground',\n})\n\nexport const cardContentVariants = cva({\n base: 'p-6 pt-0',\n})\n\nexport const cardFooterVariants = cva({\n base: 'flex items-center p-6 pt-0',\n})\n", "import * as React from 'react'\nimport {\n createCard,\n createCardHeader,\n createCardTitle,\n createCardDescription,\n createCardContent,\n createCardFooter,\n cardVariants,\n cardHeaderVariants,\n cardTitleVariants,\n cardDescriptionVariants,\n cardContentVariants,\n cardFooterVariants,\n} from '@refraction-ui/card'\nimport { cn } from '@refraction-ui/shared'\nimport { Slot } from '@refraction-ui/react-slot'\n\nexport interface CardProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Merge the card's classes/props onto the single child element instead of\n * rendering a `<div>` (Radix-style `asChild`) — e.g.\n * `<Card asChild><a href=\"/x\">…</a></Card>` for a clickable card. Expects\n * exactly one React element child. */\n asChild?: boolean\n}\n\n/**\n * Card -- a container with rounded corners, border, and shadow.\n */\nexport const Card = React.forwardRef<HTMLDivElement, CardProps>(\n function Card({ className, asChild = false, ...props }, ref) {\n const api = createCard()\n const classes = cn(cardVariants(), className)\n\n if (asChild) {\n return (\n <Slot\n ref={ref as React.Ref<HTMLElement>}\n className={classes}\n {...api.ariaProps}\n {...api.dataAttributes}\n {...props}\n />\n )\n }\n\n return (\n <div\n ref={ref}\n className={classes}\n {...api.ariaProps}\n {...api.dataAttributes}\n {...props}\n />\n )\n },\n)\n\n/**\n * CardHeader -- top section of a card, typically contains title and description.\n */\nexport const CardHeader = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n function CardHeader({ className, ...props }, ref) {\n const api = createCardHeader()\n return (\n <div\n ref={ref}\n className={cn(cardHeaderVariants(), className)}\n {...api.dataAttributes}\n {...props}\n />\n )\n },\n)\n\n/**\n * CardTitle -- heading within a card header.\n */\nexport const CardTitle = React.forwardRef<HTMLHeadingElement, React.HTMLAttributes<HTMLHeadingElement>>(\n function CardTitle({ className, ...props }, ref) {\n const api = createCardTitle()\n return (\n <h3\n ref={ref}\n className={cn(cardTitleVariants(), className)}\n {...api.dataAttributes}\n {...props}\n />\n )\n },\n)\n\n/**\n * CardDescription -- subtext within a card header.\n */\nexport const CardDescription = React.forwardRef<HTMLParagraphElement, React.HTMLAttributes<HTMLParagraphElement>>(\n function CardDescription({ className, ...props }, ref) {\n const api = createCardDescription()\n return (\n <p\n ref={ref}\n className={cn(cardDescriptionVariants(), className)}\n {...api.dataAttributes}\n {...props}\n />\n )\n },\n)\n\n/**\n * CardContent -- main body content area of a card.\n */\nexport const CardContent = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n function CardContent({ className, ...props }, ref) {\n const api = createCardContent()\n return (\n <div\n ref={ref}\n className={cn(cardContentVariants(), className)}\n {...api.dataAttributes}\n {...props}\n />\n )\n },\n)\n\n/**\n * CardFooter -- bottom section of a card, typically contains actions.\n */\nexport const CardFooter = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n function CardFooter({ className, ...props }, ref) {\n const api = createCardFooter()\n return (\n <div\n ref={ref}\n className={cn(cardFooterVariants(), className)}\n {...api.dataAttributes}\n {...props}\n />\n )\n },\n)\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Card", "CardHeader", "CardTitle", "CardDescription", "CardContent", "CardFooter"]
|
|
7
|
+
}
|