@ramme-io/ui 4.1.0 → 4.2.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.
Files changed (44) hide show
  1. package/README.md +4 -3
  2. package/dist/component-registry.js +55 -52
  3. package/dist/components/ai/AIChatThread/AIChatThread.js +3 -3
  4. package/dist/components/ai/NewsSummaryCard/NewsSummaryCard.js +17 -17
  5. package/dist/components/ai/StockChart/StockChart.js +35 -35
  6. package/dist/components/auth/LoginPage.d.ts +22 -0
  7. package/dist/components/auth/LoginPage.js +50 -42
  8. package/dist/components/data-display/StatusBadge.d.ts +4 -3
  9. package/dist/components/data-display/StatusBadge.js +18 -18
  10. package/dist/components/feedback/Alert.js +19 -19
  11. package/dist/components/forms/ComboBox.js +2 -2
  12. package/dist/components/forms/DatePicker.js +37 -32
  13. package/dist/components/forms/FileUpload.js +39 -37
  14. package/dist/components/forms/Input.js +19 -18
  15. package/dist/components/forms/MultiSelect.js +9 -8
  16. package/dist/components/forms/SegmentedControl.js +10 -10
  17. package/dist/components/forms/Select.js +9 -8
  18. package/dist/components/forms/Textarea.d.ts +13 -11
  19. package/dist/components/forms/Textarea.js +36 -16
  20. package/dist/components/layout/Accordion.js +25 -32
  21. package/dist/components/layout/Card.js +38 -21
  22. package/dist/components/layout/DetailDrawer.d.ts +9 -1
  23. package/dist/components/layout/DetailDrawer.js +60 -51
  24. package/dist/components/layout/Drawer.js +47 -39
  25. package/dist/components/layout/Modal.js +28 -23
  26. package/dist/components/layout/SettingsContainer.js +23 -13
  27. package/dist/components/layout/Sheet.d.ts +58 -0
  28. package/dist/components/layout/Sheet.js +146 -0
  29. package/dist/components/navigation/MobileNav.d.ts +44 -1
  30. package/dist/components/navigation/MobileNav.js +96 -70
  31. package/dist/components/navigation/Tabs.js +19 -12
  32. package/dist/components/ui/icon-loader.d.ts +1 -1
  33. package/dist/index.css +1 -1
  34. package/dist/index.d.ts +3 -0
  35. package/dist/index.js +218 -209
  36. package/dist/lib/hooks/useDialogFocus.d.ts +1 -0
  37. package/dist/lib/hooks/useDialogFocus.js +46 -0
  38. package/dist/lib/hooks/useSheetGesture.d.ts +81 -0
  39. package/dist/lib/hooks/useSheetGesture.js +70 -0
  40. package/dist/setupTests.d.ts +1 -0
  41. package/dist/wizardManifest.js +139 -14
  42. package/package.json +9 -2
  43. package/src/wizardManifest.ts +139 -14
  44. package/tailwind.preset.js +8 -0
package/dist/index.d.ts CHANGED
@@ -67,6 +67,8 @@ export * from './lib/hooks/useDataFetch';
67
67
  export * from './lib/hooks/useChartTheme';
68
68
  export * from './lib/hooks/useMediaQuery';
69
69
  export * from './lib/hooks/useBodyScrollLock';
70
+ export * from './lib/hooks/useSheetGesture';
71
+ export * from './lib/hooks/useDialogFocus';
70
72
  export * from './components/hardware/CircularDial';
71
73
  export * from './components/hardware/HardwareCommandButton';
72
74
  export * from './components/hardware/Sparkline';
@@ -89,6 +91,7 @@ export * from './components/layout/Statusbar';
89
91
  export * from './components/layout/Accordion';
90
92
  export * from './components/layout/Card';
91
93
  export * from './components/layout/Drawer';
94
+ export * from './components/layout/Sheet';
92
95
  export * from './components/layout/List';
93
96
  export * from './components/layout/Modal';
94
97
  export * from './components/layout/Sidebar';
package/dist/index.js CHANGED
@@ -6,19 +6,19 @@ import { Loader as n } from "./blocks/ai/Loader.js";
6
6
  import { Actions as s, Suggestion as T } from "./blocks/ai/Actions.js";
7
7
  import { PromptInput as h } from "./blocks/ai/PromptInput.js";
8
8
  import { Message as c } from "./blocks/ai/Message.js";
9
- import { Conversation as u } from "./blocks/ai/Conversation.js";
9
+ import { Conversation as S } from "./blocks/ai/Conversation.js";
10
10
  import { ChatFAB as b } from "./blocks/ai/ChatFAB.js";
11
- import { AIChatThread as A } from "./components/ai/AIChatThread/AIChatThread.js";
12
- import { KeyInjectionOverlay as B } from "./components/ai/KeyInjectionOverlay.js";
13
- import { TAY_DREAMBOAT_THEME as R, ThemeProvider as v, availableThemes as L, useTheme as E } from "./contexts/ThemeContext.js";
11
+ import { AIChatThread as D } from "./components/ai/AIChatThread/AIChatThread.js";
12
+ import { KeyInjectionOverlay as A } from "./components/ai/KeyInjectionOverlay.js";
13
+ import { TAY_DREAMBOAT_THEME as B, ThemeProvider as R, availableThemes as E, useTheme as v } from "./contexts/ThemeContext.js";
14
14
  import { AuthLayout as y } from "./components/auth/AuthLayout.js";
15
- import { LoginPage as F } from "./components/auth/LoginPage.js";
15
+ import { LoginPage as w } from "./components/auth/LoginPage.js";
16
16
  import { SignupPage as O } from "./components/auth/SignupPage.js";
17
17
  import { DataTable as H } from "./components/data-display/DataTable.js";
18
- import { ActivityFeed as N } from "./components/data-display/ActivityFeed.js";
19
- import { Table as K } from "./components/data-display/Table.js";
20
- import { AreaChart as Q } from "./components/data-display/AreaChart.js";
21
- import { BarChart as Y } from "./components/data-display/BarChart.js";
18
+ import { ActivityFeed as V } from "./components/data-display/ActivityFeed.js";
19
+ import { Table as N } from "./components/data-display/Table.js";
20
+ import { AreaChart as Y } from "./components/data-display/AreaChart.js";
21
+ import { BarChart as W } from "./components/data-display/BarChart.js";
22
22
  import { ChartWithTable as j } from "./components/data-display/ChartWithTable.js";
23
23
  import { LineChart as q } from "./components/data-display/LineChart.js";
24
24
  import { PieChart as Z } from "./components/data-display/PieChart.js";
@@ -32,19 +32,19 @@ import { EmptyState as sr } from "./components/feedback/EmptyState.js";
32
32
  import { Skeleton as dr } from "./components/feedback/Skeleton.js";
33
33
  import { Plan as Cr } from "./components/feedback/Plan.js";
34
34
  import { TippyTooltip as gr } from "./components/feedback/TippyTooltip.js";
35
- import { Toast as Sr } from "./components/feedback/Toast.js";
36
- import { ToastProvider as Pr, useToast as Ar } from "./components/feedback/ToastProvider.js";
37
- import { Label as Br } from "./components/forms/Label.js";
38
- import { ButtonGroup as Rr } from "./components/forms/ButtonGroup.js";
39
- import { Checkbox as Lr } from "./components/forms/Checkbox.js";
35
+ import { Toast as ur } from "./components/feedback/Toast.js";
36
+ import { ToastProvider as Pr, useToast as Dr } from "./components/feedback/ToastProvider.js";
37
+ import { Label as Ar } from "./components/forms/Label.js";
38
+ import { ButtonGroup as Br } from "./components/forms/ButtonGroup.js";
39
+ import { Checkbox as Er } from "./components/forms/Checkbox.js";
40
40
  import { ComboBox as Mr } from "./components/forms/ComboBox.js";
41
- import { DatePicker as wr } from "./components/forms/DatePicker.js";
41
+ import { DatePicker as Fr } from "./components/forms/DatePicker.js";
42
42
  import { FileUpload as kr } from "./components/forms/FileUpload.js";
43
43
  import { FormTemplate as _r } from "./components/forms/FormTemplate.js";
44
44
  import { Input as Gr } from "./components/forms/Input.js";
45
- import { MultiSelect as Vr } from "./components/forms/MultiSelect.js";
45
+ import { MultiSelect as Kr } from "./components/forms/MultiSelect.js";
46
46
  import { Radio as Ur } from "./components/forms/Radio.js";
47
- import { SearchInput as Wr } from "./components/forms/SearchInput.js";
47
+ import { SearchInput as Qr } from "./components/forms/SearchInput.js";
48
48
  import { SegmentedControl as zr } from "./components/forms/SegmentedControl.js";
49
49
  import { Select as Xr } from "./components/forms/Select.js";
50
50
  import { Textarea as Jr } from "./components/forms/Textarea.js";
@@ -53,241 +53,250 @@ import { useDataFetch as eo } from "./lib/hooks/useDataFetch.js";
53
53
  import { useChartTheme as mo } from "./lib/hooks/useChartTheme.js";
54
54
  import { MOBILE_BREAKPOINT_PX as po, MOBILE_BREAKPOINT_QUERY as fo, useIsMobile as xo, useMediaQuery as io } from "./lib/hooks/useMediaQuery.js";
55
55
  import { useBodyScrollLock as lo } from "./lib/hooks/useBodyScrollLock.js";
56
- import { CircularDial as To } from "./components/hardware/CircularDial.js";
57
- import { HardwareCommandButton as Co } from "./components/hardware/HardwareCommandButton.js";
58
- import { Sparkline as go } from "./components/hardware/Sparkline.js";
59
- import { EdgeInsightTerminal as So } from "./components/hardware/EdgeInsightTerminal.js";
60
- import { DeviceCard as Po } from "./blocks/iot/DeviceCard.js";
61
- import { WaterPumpControl as Do } from "./blocks/iot/WaterPumpControl.js";
62
- import { TelemetryLog as Io } from "./blocks/iot/TelemetryLog.js";
63
- import { DataCard as vo } from "./components/molecular/DataCard.js";
64
- import { StateMatrix as Eo } from "./components/molecular/StateMatrix.js";
65
- import { ConnectorOverlay as yo } from "./components/molecular/ConnectorOverlay.js";
66
- import { AppShell as Fo } from "./components/layout/AppShell.js";
67
- import { SettingsContainer as Oo } from "./components/layout/SettingsContainer.js";
68
- import { DetailDrawer as Ho } from "./components/layout/DetailDrawer.js";
69
- import { RammeInspectorTrigger as No } from "./components/layout/RammeInspectorTrigger.js";
70
- import { AboutRamme as Ko } from "./components/layout/AboutRamme.js";
71
- import { Header as Qo } from "./components/layout/Header.js";
72
- import { Toolbar as Yo } from "./components/layout/Toolbar.js";
73
- import { FilterPanel as jo } from "./components/layout/FilterPanel.js";
74
- import { Statusbar as qo } from "./components/layout/Statusbar.js";
75
- import { Accordion as Zo, AccordionItem as $o } from "./components/layout/Accordion.js";
76
- import { Card as oe, CardContent as ee, CardDescription as te, CardFooter as me, CardHeader as ae, CardLabel as pe, CardTitle as fe } from "./components/layout/Card.js";
77
- import { Drawer as ie } from "./components/layout/Drawer.js";
78
- import { DefinitionDescription as le, DefinitionList as se, DefinitionTerm as Te, List as de, ListItem as he } from "./components/layout/List.js";
79
- import { Modal as ce } from "./components/layout/Modal.js";
80
- import { Sidebar as ue } from "./components/layout/Sidebar.js";
81
- import { ActionBar as be } from "./components/layout/ActionBar.js";
82
- import { PageContainer as Ae } from "./components/layout/PageContainer.js";
83
- import { PageHeader as Be } from "./components/layout/PageHeader.js";
84
- import { SectionHeader as Re } from "./components/layout/SectionHeader.js";
85
- import { ButtonItem as Le, UserNav as Ee } from "./components/layout/UserNav.js";
86
- import { CollectionLayout as ye } from "./components/layout/CollectionLayout.js";
87
- import { DenseMetricRibbon as Fe } from "./components/layout/DenseMetricRibbon.js";
88
- import { BreadcrumbItem as Oe, Breadcrumbs as _e } from "./components/navigation/Breadcrumbs.js";
89
- import { Menu as Ge, MenuDivider as Ne, MenuItem as Ve } from "./components/navigation/Menu.js";
90
- import { MobileNav as Ue } from "./components/navigation/MobileNav.js";
91
- import { Pagination as We } from "./components/navigation/Pagination.js";
92
- import { Stepper as ze } from "./components/navigation/Stepper.js";
93
- import { TabPanel as Xe, Tabs as qe } from "./components/navigation/Tabs.js";
94
- import { FinancialAssetSchema as Ze, WatchlistEngine as $e } from "./blocks/engines/WatchlistEngine.js";
95
- import { Avatar as ot } from "./components/ui/Avatar.js";
96
- import { Badge as tt, badgeVariants as mt } from "./components/ui/Badge.js";
97
- import { Button as pt, buttonVariants as ft } from "./components/ui/Button.js";
98
- import { Icon as it } from "./components/ui/Icon.js";
99
- import { BrandLogo as lt } from "./components/ui/BrandLogo.js";
100
- import { cn as Tt } from "./utils/cn.js";
101
- import { formatValue as ht } from "./lib/formatters.js";
102
- import { ThemeSynthesizer as ct } from "./components/theme/ThemeSynthesizer.js";
103
- import { AestheticProfileGrid as ut } from "./components/theme/AestheticProfileGrid.js";
104
- import { FineTuningControls as bt } from "./components/theme/FineTuningControls.js";
105
- import { PaletteSwatch as At, ThemeLivePreview as Dt } from "./components/theme/ThemeLivePreview.js";
106
- import { ThemeSettings as It } from "./components/theme/ThemeSettings.js";
107
- import { ThemeLab as vt } from "./components/theme/ThemeLab.js";
108
- import { AESTHETIC_PROFILES as Et, generateFromProfile as Mt, generateFromPrompt as yt, generateRandom as wt, hslToCssString as Ft, hslToRgb as kt, hslToRgbString as Ot, lightToDark as _t, paletteToRgbVars as Ht } from "./lib/theme/ThemeGenerator.logic.js";
109
- import { THEME_TOKEN_VARS as Nt, applyThemeToDom as Vt, generateRandomTheme as Kt, getContrastColor as Ut, hexToRgbTriplet as Qt, isCustomTheme as Wt, loadGoogleFont as Yt, randomRgb as zt, tokensToVars as jt } from "./lib/theme/themeUtils.js";
110
- import { generateThemeFromPrompt as qt } from "./lib/theme/themeAgent.js";
111
- import { CompanyProfileCard as Zt } from "./components/ai/CompanyProfileCard/CompanyProfileCard.js";
112
- import { CounterpartyGraphCard as rm } from "./components/ai/CounterpartyGraphCard/CounterpartyGraphCard.js";
113
- import { DivergenceMetricsCard as em } from "./components/ai/DivergenceMetricsCard/DivergenceMetricsCard.js";
114
- import { ArchitectureReferenceCard as mm } from "./components/ai/ArchitectureReferenceCard/ArchitectureReferenceCard.js";
115
- import { LiveQuoteCard as pm } from "./components/ai/LiveQuoteCard/LiveQuoteCard.js";
116
- import { NewsSummaryCard as xm } from "./components/ai/NewsSummaryCard/NewsSummaryCard.js";
117
- import { StockChart as nm } from "./components/ai/StockChart/StockChart.js";
118
- import { TelemetryGraph as sm } from "./components/ai/TelemetryGraph/TelemetryGraph.js";
119
- import { ShowroomContainer as dm } from "./components/showroom/ShowroomContainer.js";
120
- import { ShowroomSidebar as Cm } from "./components/showroom/ShowroomSidebar.js";
121
- import { ShowroomCanvas as gm } from "./components/showroom/ShowroomCanvas.js";
122
- import { SkuBadge as Sm } from "./components/showroom/SkuBadge.js";
123
- import { resolvePreview as Pm } from "./components/showroom/ShowroomRenderer.js";
56
+ import { DISMISS_THRESHOLD as To, FLICK_VELOCITY as ho, settleTo as Co, useSheetGesture as co } from "./lib/hooks/useSheetGesture.js";
57
+ import { useDialogFocus as So } from "./lib/hooks/useDialogFocus.js";
58
+ import { CircularDial as bo } from "./components/hardware/CircularDial.js";
59
+ import { HardwareCommandButton as Do } from "./components/hardware/HardwareCommandButton.js";
60
+ import { Sparkline as Ao } from "./components/hardware/Sparkline.js";
61
+ import { EdgeInsightTerminal as Bo } from "./components/hardware/EdgeInsightTerminal.js";
62
+ import { DeviceCard as Eo } from "./blocks/iot/DeviceCard.js";
63
+ import { WaterPumpControl as Mo } from "./blocks/iot/WaterPumpControl.js";
64
+ import { TelemetryLog as Fo } from "./blocks/iot/TelemetryLog.js";
65
+ import { DataCard as ko } from "./components/molecular/DataCard.js";
66
+ import { StateMatrix as _o } from "./components/molecular/StateMatrix.js";
67
+ import { ConnectorOverlay as Go } from "./components/molecular/ConnectorOverlay.js";
68
+ import { AppShell as Ko } from "./components/layout/AppShell.js";
69
+ import { SettingsContainer as Uo } from "./components/layout/SettingsContainer.js";
70
+ import { DetailDrawer as Qo } from "./components/layout/DetailDrawer.js";
71
+ import { RammeInspectorTrigger as zo } from "./components/layout/RammeInspectorTrigger.js";
72
+ import { AboutRamme as Xo } from "./components/layout/AboutRamme.js";
73
+ import { Header as Jo } from "./components/layout/Header.js";
74
+ import { Toolbar as $o } from "./components/layout/Toolbar.js";
75
+ import { FilterPanel as oe } from "./components/layout/FilterPanel.js";
76
+ import { Statusbar as te } from "./components/layout/Statusbar.js";
77
+ import { Accordion as ae, AccordionItem as pe } from "./components/layout/Accordion.js";
78
+ import { Card as xe, CardContent as ie, CardDescription as ne, CardFooter as le, CardHeader as se, CardLabel as Te, CardTitle as de } from "./components/layout/Card.js";
79
+ import { Drawer as Ce } from "./components/layout/Drawer.js";
80
+ import { Sheet as ge } from "./components/layout/Sheet.js";
81
+ import { DefinitionDescription as ue, DefinitionList as be, DefinitionTerm as Pe, List as De, ListItem as Ie } from "./components/layout/List.js";
82
+ import { Modal as Le } from "./components/layout/Modal.js";
83
+ import { Sidebar as Re } from "./components/layout/Sidebar.js";
84
+ import { ActionBar as ve } from "./components/layout/ActionBar.js";
85
+ import { PageContainer as ye } from "./components/layout/PageContainer.js";
86
+ import { PageHeader as we } from "./components/layout/PageHeader.js";
87
+ import { SectionHeader as Oe } from "./components/layout/SectionHeader.js";
88
+ import { ButtonItem as He, UserNav as Ge } from "./components/layout/UserNav.js";
89
+ import { CollectionLayout as Ke } from "./components/layout/CollectionLayout.js";
90
+ import { DenseMetricRibbon as Ue } from "./components/layout/DenseMetricRibbon.js";
91
+ import { BreadcrumbItem as Qe, Breadcrumbs as We } from "./components/navigation/Breadcrumbs.js";
92
+ import { Menu as je, MenuDivider as Xe, MenuItem as qe } from "./components/navigation/Menu.js";
93
+ import { MobileNav as Ze } from "./components/navigation/MobileNav.js";
94
+ import { Pagination as rt } from "./components/navigation/Pagination.js";
95
+ import { Stepper as et } from "./components/navigation/Stepper.js";
96
+ import { TabPanel as mt, Tabs as at } from "./components/navigation/Tabs.js";
97
+ import { FinancialAssetSchema as ft, WatchlistEngine as xt } from "./blocks/engines/WatchlistEngine.js";
98
+ import { Avatar as nt } from "./components/ui/Avatar.js";
99
+ import { Badge as st, badgeVariants as Tt } from "./components/ui/Badge.js";
100
+ import { Button as ht, buttonVariants as Ct } from "./components/ui/Button.js";
101
+ import { Icon as gt } from "./components/ui/Icon.js";
102
+ import { BrandLogo as ut } from "./components/ui/BrandLogo.js";
103
+ import { cn as Pt } from "./utils/cn.js";
104
+ import { formatValue as It } from "./lib/formatters.js";
105
+ import { ThemeSynthesizer as Lt } from "./components/theme/ThemeSynthesizer.js";
106
+ import { AestheticProfileGrid as Rt } from "./components/theme/AestheticProfileGrid.js";
107
+ import { FineTuningControls as vt } from "./components/theme/FineTuningControls.js";
108
+ import { PaletteSwatch as yt, ThemeLivePreview as Ft } from "./components/theme/ThemeLivePreview.js";
109
+ import { ThemeSettings as kt } from "./components/theme/ThemeSettings.js";
110
+ import { ThemeLab as _t } from "./components/theme/ThemeLab.js";
111
+ import { AESTHETIC_PROFILES as Gt, generateFromProfile as Vt, generateFromPrompt as Kt, generateRandom as Nt, hslToCssString as Ut, hslToRgb as Yt, hslToRgbString as Qt, lightToDark as Wt, paletteToRgbVars as zt } from "./lib/theme/ThemeGenerator.logic.js";
112
+ import { THEME_TOKEN_VARS as Xt, applyThemeToDom as qt, generateRandomTheme as Jt, getContrastColor as Zt, hexToRgbTriplet as $t, isCustomTheme as rm, loadGoogleFont as om, randomRgb as em, tokensToVars as tm } from "./lib/theme/themeUtils.js";
113
+ import { generateThemeFromPrompt as am } from "./lib/theme/themeAgent.js";
114
+ import { CompanyProfileCard as fm } from "./components/ai/CompanyProfileCard/CompanyProfileCard.js";
115
+ import { CounterpartyGraphCard as im } from "./components/ai/CounterpartyGraphCard/CounterpartyGraphCard.js";
116
+ import { DivergenceMetricsCard as lm } from "./components/ai/DivergenceMetricsCard/DivergenceMetricsCard.js";
117
+ import { ArchitectureReferenceCard as Tm } from "./components/ai/ArchitectureReferenceCard/ArchitectureReferenceCard.js";
118
+ import { LiveQuoteCard as hm } from "./components/ai/LiveQuoteCard/LiveQuoteCard.js";
119
+ import { NewsSummaryCard as cm } from "./components/ai/NewsSummaryCard/NewsSummaryCard.js";
120
+ import { StockChart as Sm } from "./components/ai/StockChart/StockChart.js";
121
+ import { TelemetryGraph as bm } from "./components/ai/TelemetryGraph/TelemetryGraph.js";
122
+ import { ShowroomContainer as Dm } from "./components/showroom/ShowroomContainer.js";
123
+ import { ShowroomSidebar as Am } from "./components/showroom/ShowroomSidebar.js";
124
+ import { ShowroomCanvas as Bm } from "./components/showroom/ShowroomCanvas.js";
125
+ import { SkuBadge as Em } from "./components/showroom/SkuBadge.js";
126
+ import { resolvePreview as Mm } from "./components/showroom/ShowroomRenderer.js";
124
127
  export {
125
- Et as AESTHETIC_PROFILES,
126
- A as AIChatThread,
128
+ Gt as AESTHETIC_PROFILES,
129
+ D as AIChatThread,
127
130
  a as AUTO_REGISTRY,
128
- Ko as AboutRamme,
129
- Zo as Accordion,
130
- $o as AccordionItem,
131
- be as ActionBar,
131
+ Xo as AboutRamme,
132
+ ae as Accordion,
133
+ pe as AccordionItem,
134
+ ve as ActionBar,
132
135
  s as Actions,
133
- N as ActivityFeed,
134
- ut as AestheticProfileGrid,
136
+ V as ActivityFeed,
137
+ Rt as AestheticProfileGrid,
135
138
  nr as Alert,
136
- Fo as AppShell,
137
- mm as ArchitectureReferenceCard,
138
- Q as AreaChart,
139
+ Ko as AppShell,
140
+ Tm as ArchitectureReferenceCard,
141
+ Y as AreaChart,
139
142
  y as AuthLayout,
140
- ot as Avatar,
141
- tt as Badge,
142
- Y as BarChart,
143
- lt as BrandLogo,
144
- Oe as BreadcrumbItem,
145
- _e as Breadcrumbs,
146
- pt as Button,
147
- Rr as ButtonGroup,
148
- Le as ButtonItem,
149
- oe as Card,
150
- ee as CardContent,
151
- te as CardDescription,
152
- me as CardFooter,
153
- ae as CardHeader,
154
- pe as CardLabel,
155
- fe as CardTitle,
143
+ nt as Avatar,
144
+ st as Badge,
145
+ W as BarChart,
146
+ ut as BrandLogo,
147
+ Qe as BreadcrumbItem,
148
+ We as Breadcrumbs,
149
+ ht as Button,
150
+ Br as ButtonGroup,
151
+ He as ButtonItem,
152
+ xe as Card,
153
+ ie as CardContent,
154
+ ne as CardDescription,
155
+ le as CardFooter,
156
+ se as CardHeader,
157
+ Te as CardLabel,
158
+ de as CardTitle,
156
159
  j as ChartWithTable,
157
160
  b as ChatFAB,
158
- Lr as Checkbox,
159
- To as CircularDial,
161
+ Er as Checkbox,
162
+ bo as CircularDial,
160
163
  er as CodeBlock,
161
- ye as CollectionLayout,
164
+ Ke as CollectionLayout,
162
165
  Mr as ComboBox,
163
- Zt as CompanyProfileCard,
164
- yo as ConnectorOverlay,
165
- u as Conversation,
166
- rm as CounterpartyGraphCard,
167
- vo as DataCard,
166
+ fm as CompanyProfileCard,
167
+ Go as ConnectorOverlay,
168
+ S as Conversation,
169
+ im as CounterpartyGraphCard,
170
+ To as DISMISS_THRESHOLD,
171
+ ko as DataCard,
168
172
  H as DataTable,
169
- wr as DatePicker,
170
- le as DefinitionDescription,
171
- se as DefinitionList,
172
- Te as DefinitionTerm,
173
- Fe as DenseMetricRibbon,
174
- Ho as DetailDrawer,
175
- Po as DeviceCard,
176
- em as DivergenceMetricsCard,
177
- ie as Drawer,
178
- So as EdgeInsightTerminal,
173
+ Fr as DatePicker,
174
+ ue as DefinitionDescription,
175
+ be as DefinitionList,
176
+ Pe as DefinitionTerm,
177
+ Ue as DenseMetricRibbon,
178
+ Qo as DetailDrawer,
179
+ Eo as DeviceCard,
180
+ lm as DivergenceMetricsCard,
181
+ Ce as Drawer,
182
+ Bo as EdgeInsightTerminal,
179
183
  sr as EmptyState,
184
+ ho as FLICK_VELOCITY,
180
185
  kr as FileUpload,
181
- jo as FilterPanel,
182
- Ze as FinancialAssetSchema,
183
- bt as FineTuningControls,
186
+ oe as FilterPanel,
187
+ ft as FinancialAssetSchema,
188
+ vt as FineTuningControls,
184
189
  _r as FormTemplate,
185
- Co as HardwareCommandButton,
186
- Qo as Header,
187
- it as Icon,
190
+ Do as HardwareCommandButton,
191
+ Jo as Header,
192
+ gt as Icon,
188
193
  Gr as Input,
189
- B as KeyInjectionOverlay,
194
+ A as KeyInjectionOverlay,
190
195
  pr as KpiGrid,
191
- Br as Label,
196
+ Ar as Label,
192
197
  q as LineChart,
193
- de as List,
194
- he as ListItem,
195
- pm as LiveQuoteCard,
198
+ De as List,
199
+ Ie as ListItem,
200
+ hm as LiveQuoteCard,
196
201
  n as Loader,
197
- F as LoginPage,
202
+ w as LoginPage,
198
203
  po as MOBILE_BREAKPOINT_PX,
199
204
  fo as MOBILE_BREAKPOINT_QUERY,
200
- Ge as Menu,
201
- Ne as MenuDivider,
202
- Ve as MenuItem,
205
+ je as Menu,
206
+ Xe as MenuDivider,
207
+ qe as MenuItem,
203
208
  c as Message,
204
- Ue as MobileNav,
205
- ce as Modal,
206
- Vr as MultiSelect,
207
- xm as NewsSummaryCard,
208
- Ae as PageContainer,
209
- Be as PageHeader,
210
- We as Pagination,
211
- At as PaletteSwatch,
209
+ Ze as MobileNav,
210
+ Le as Modal,
211
+ Kr as MultiSelect,
212
+ cm as NewsSummaryCard,
213
+ ye as PageContainer,
214
+ we as PageHeader,
215
+ rt as Pagination,
216
+ yt as PaletteSwatch,
212
217
  Z as PieChart,
213
218
  Cr as Plan,
214
219
  h as PromptInput,
215
220
  Ur as Radio,
216
- No as RammeInspectorTrigger,
221
+ zo as RammeInspectorTrigger,
217
222
  rr as ScatterChart,
218
- Wr as SearchInput,
219
- Re as SectionHeader,
223
+ Qr as SearchInput,
224
+ Oe as SectionHeader,
220
225
  zr as SegmentedControl,
221
226
  Xr as Select,
222
- Oo as SettingsContainer,
223
- gm as ShowroomCanvas,
224
- dm as ShowroomContainer,
225
- Cm as ShowroomSidebar,
226
- ue as Sidebar,
227
+ Uo as SettingsContainer,
228
+ ge as Sheet,
229
+ Bm as ShowroomCanvas,
230
+ Dm as ShowroomContainer,
231
+ Am as ShowroomSidebar,
232
+ Re as Sidebar,
227
233
  O as SignupPage,
228
234
  dr as Skeleton,
229
- Sm as SkuBadge,
230
- go as Sparkline,
235
+ Em as SkuBadge,
236
+ Ao as Sparkline,
231
237
  mr as StatCard,
232
- Eo as StateMatrix,
238
+ _o as StateMatrix,
233
239
  xr as StatusBadge,
234
- qo as Statusbar,
235
- ze as Stepper,
236
- nm as StockChart,
240
+ te as Statusbar,
241
+ et as Stepper,
242
+ Sm as StockChart,
237
243
  T as Suggestion,
238
244
  $r as Switch,
239
- R as TAY_DREAMBOAT_THEME,
240
- Nt as THEME_TOKEN_VARS,
241
- Xe as TabPanel,
242
- K as Table,
243
- qe as Tabs,
244
- sm as TelemetryGraph,
245
- Io as TelemetryLog,
245
+ B as TAY_DREAMBOAT_THEME,
246
+ Xt as THEME_TOKEN_VARS,
247
+ mt as TabPanel,
248
+ N as Table,
249
+ at as Tabs,
250
+ bm as TelemetryGraph,
251
+ Fo as TelemetryLog,
246
252
  Jr as Textarea,
247
- vt as ThemeLab,
248
- Dt as ThemeLivePreview,
249
- v as ThemeProvider,
250
- It as ThemeSettings,
251
- ct as ThemeSynthesizer,
253
+ _t as ThemeLab,
254
+ Ft as ThemeLivePreview,
255
+ R as ThemeProvider,
256
+ kt as ThemeSettings,
257
+ Lt as ThemeSynthesizer,
252
258
  gr as TippyTooltip,
253
- Sr as Toast,
259
+ ur as Toast,
254
260
  Pr as ToastProvider,
255
261
  ro as ToggleSwitch,
256
- Yo as Toolbar,
257
- Ee as UserNav,
258
- $e as WatchlistEngine,
259
- Do as WaterPumpControl,
260
- Vt as applyThemeToDom,
261
- L as availableThemes,
262
- mt as badgeVariants,
263
- ft as buttonVariants,
264
- Tt as cn,
265
- ht as formatValue,
266
- Mt as generateFromProfile,
267
- yt as generateFromPrompt,
268
- wt as generateRandom,
269
- Kt as generateRandomTheme,
270
- qt as generateThemeFromPrompt,
271
- Ut as getContrastColor,
272
- Qt as hexToRgbTriplet,
273
- Ft as hslToCssString,
274
- kt as hslToRgb,
275
- Ot as hslToRgbString,
276
- Wt as isCustomTheme,
277
- _t as lightToDark,
278
- Yt as loadGoogleFont,
262
+ $o as Toolbar,
263
+ Ge as UserNav,
264
+ xt as WatchlistEngine,
265
+ Mo as WaterPumpControl,
266
+ qt as applyThemeToDom,
267
+ E as availableThemes,
268
+ Tt as badgeVariants,
269
+ Ct as buttonVariants,
270
+ Pt as cn,
271
+ It as formatValue,
272
+ Vt as generateFromProfile,
273
+ Kt as generateFromPrompt,
274
+ Nt as generateRandom,
275
+ Jt as generateRandomTheme,
276
+ am as generateThemeFromPrompt,
277
+ Zt as getContrastColor,
278
+ $t as hexToRgbTriplet,
279
+ Ut as hslToCssString,
280
+ Yt as hslToRgb,
281
+ Qt as hslToRgbString,
282
+ rm as isCustomTheme,
283
+ Wt as lightToDark,
284
+ om as loadGoogleFont,
279
285
  f as mockChartData,
280
286
  x as mockTableData,
281
- Ht as paletteToRgbVars,
282
- zt as randomRgb,
283
- Pm as resolvePreview,
284
- jt as tokensToVars,
287
+ zt as paletteToRgbVars,
288
+ em as randomRgb,
289
+ Mm as resolvePreview,
290
+ Co as settleTo,
291
+ tm as tokensToVars,
285
292
  lo as useBodyScrollLock,
286
293
  mo as useChartTheme,
287
294
  eo as useDataFetch,
295
+ So as useDialogFocus,
288
296
  xo as useIsMobile,
289
297
  io as useMediaQuery,
290
- E as useTheme,
291
- Ar as useToast,
298
+ co as useSheetGesture,
299
+ v as useTheme,
300
+ Dr as useToast,
292
301
  t as wizardManifest
293
302
  };
@@ -0,0 +1 @@
1
+ export declare function useDialogFocus(isActive: boolean, containerRef: React.RefObject<HTMLElement | null>): void;
@@ -0,0 +1,46 @@
1
+ import { useRef as m, useEffect as b } from "react";
2
+ const y = [
3
+ "a[href]",
4
+ "button:not([disabled])",
5
+ 'input:not([disabled]):not([type="hidden"])',
6
+ "select:not([disabled])",
7
+ "textarea:not([disabled])",
8
+ '[tabindex]:not([tabindex="-1"])'
9
+ ].join(","), l = (o) => Array.from(o.querySelectorAll(y)).filter(
10
+ // offsetParent is null for display:none. A zero-size element is still
11
+ // reachable by keyboard, so size is not the test — visibility is.
12
+ (n) => !n.hasAttribute("aria-hidden") && n.getAttribute("tabindex") !== "-1"
13
+ );
14
+ function E(o, n) {
15
+ const i = m(null);
16
+ b(() => {
17
+ if (!o) return;
18
+ const e = n.current;
19
+ if (!e) return;
20
+ i.current = document.activeElement instanceof HTMLElement ? document.activeElement : null;
21
+ const s = () => {
22
+ (l(e)[0] ?? e).focus();
23
+ };
24
+ s();
25
+ const d = requestAnimationFrame(() => {
26
+ e.contains(document.activeElement) || s();
27
+ }), u = (t) => {
28
+ if (t.key !== "Tab") return;
29
+ const r = l(e);
30
+ if (r.length === 0) {
31
+ t.preventDefault(), e.focus();
32
+ return;
33
+ }
34
+ const a = r[0], f = r[r.length - 1], c = document.activeElement;
35
+ t.shiftKey && (c === a || !e.contains(c)) ? (t.preventDefault(), f.focus()) : !t.shiftKey && (c === f || !e.contains(c)) && (t.preventDefault(), a.focus());
36
+ };
37
+ return document.addEventListener("keydown", u, !0), () => {
38
+ cancelAnimationFrame(d), document.removeEventListener("keydown", u, !0);
39
+ const t = i.current;
40
+ t && document.contains(t) && t.focus();
41
+ };
42
+ }, [o, n]);
43
+ }
44
+ export {
45
+ E as useDialogFocus
46
+ };