@fiestaboard/ui 6.0.3 → 6.1.1
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/components/ai/actions.d.ts +17 -0
- package/dist/components/ai/actions.js +33 -0
- package/dist/components/ai/actions.js.map +1 -0
- package/dist/components/ai/conversation.d.ts +44 -0
- package/dist/components/ai/conversation.js +91 -0
- package/dist/components/ai/conversation.js.map +1 -0
- package/dist/components/ai/loader.d.ts +18 -0
- package/dist/components/ai/loader.js +26 -0
- package/dist/components/ai/loader.js.map +1 -0
- package/dist/components/ai/message.d.ts +51 -0
- package/dist/components/ai/message.js +48 -0
- package/dist/components/ai/message.js.map +1 -0
- package/dist/components/ai/prompt-input.d.ts +61 -0
- package/dist/components/ai/prompt-input.js +104 -0
- package/dist/components/ai/prompt-input.js.map +1 -0
- package/dist/components/ai/shimmer.d.ts +14 -0
- package/dist/components/ai/shimmer.js +16 -0
- package/dist/components/ai/shimmer.js.map +1 -0
- package/dist/components/ai/spotlight.d.ts +59 -0
- package/dist/components/ai/spotlight.js +74 -0
- package/dist/components/ai/spotlight.js.map +1 -0
- package/dist/components/ai/suggestion.d.ts +20 -0
- package/dist/components/ai/suggestion.js +27 -0
- package/dist/components/ai/suggestion.js.map +1 -0
- package/dist/components/ai/task.d.ts +36 -0
- package/dist/components/ai/task.js +97 -0
- package/dist/components/ai/task.js.map +1 -0
- package/dist/components/ai/tool.d.ts +59 -0
- package/dist/components/ai/tool.js +145 -0
- package/dist/components/ai/tool.js.map +1 -0
- package/dist/components/chrome/board-selector.d.ts +20 -0
- package/dist/components/chrome/board-selector.js +54 -27
- package/dist/components/chrome/board-selector.js.map +1 -1
- package/dist/components/feedback/status-dot.d.ts +5 -3
- package/dist/components/feedback/status-dot.js +7 -6
- package/dist/components/feedback/status-dot.js.map +1 -1
- package/dist/index.d.ts +10 -0
- package/dist/index.js +11 -1
- package/dist/theme.css +93 -0
- package/package.json +1 -1
|
@@ -28,14 +28,15 @@ var r = n("inline-block shrink-0 rounded-full align-middle transition-[backgroun
|
|
|
28
28
|
pulse: !1
|
|
29
29
|
}
|
|
30
30
|
}), i = { boxShadow: "0 0 var(--status-dot-glow) color-mix(in oklch, var(--status-dot-color) 50%, transparent)" };
|
|
31
|
-
function a({ className: n, status: a = "neutral", size: o = "md", pulse: s = !1, glow: c = !1, label: l = null, style: u,
|
|
32
|
-
let
|
|
31
|
+
function a({ className: n, status: a = "neutral", size: o = "md", pulse: s = !1, glow: c = !1, label: l = null, style: u, role: d, ...f }) {
|
|
32
|
+
let p = l == null, m = d ?? (p ? void 0 : "status"), h = !p && m === "img";
|
|
33
33
|
return /* @__PURE__ */ t("span", {
|
|
34
34
|
"data-slot": "status-dot",
|
|
35
35
|
"data-status": a,
|
|
36
36
|
"data-size": o,
|
|
37
|
-
role:
|
|
38
|
-
"aria-hidden":
|
|
37
|
+
role: m,
|
|
38
|
+
"aria-hidden": p || void 0,
|
|
39
|
+
"aria-label": h ? l : void 0,
|
|
39
40
|
className: e(r({
|
|
40
41
|
status: a,
|
|
41
42
|
size: o,
|
|
@@ -45,8 +46,8 @@ function a({ className: n, status: a = "neutral", size: o = "md", pulse: s = !1,
|
|
|
45
46
|
...i,
|
|
46
47
|
...u
|
|
47
48
|
} : u,
|
|
48
|
-
...
|
|
49
|
-
children:
|
|
49
|
+
...f,
|
|
50
|
+
children: p || h ? null : /* @__PURE__ */ t("span", {
|
|
50
51
|
className: "sr-only",
|
|
51
52
|
children: l
|
|
52
53
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-dot.js","names":[],"sources":["../../../src/components/feedback/status-dot.tsx"],"mappings":";;;;;AAkBA,IAAM,IAAoB,EACxB,6GACA;CACE,UAAU;EACR,QAAQ;GACN,SAAS;GACT,SAAS;GACT,QAAQ;GACR,MAAM;GACN,SAAS;EACX;EAIA,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;EACN;EAOA,OAAO;GACL,MAAM;GACN,OAAO;EACT;CACF;CACA,iBAAiB;EACf,QAAQ;EACR,MAAM;EACN,OAAO;CACT;AACF,CACF,GAMM,IAAkC,EACtC,WAAW,2FACb;
|
|
1
|
+
{"version":3,"file":"status-dot.js","names":[],"sources":["../../../src/components/feedback/status-dot.tsx"],"mappings":";;;;;AAkBA,IAAM,IAAoB,EACxB,6GACA;CACE,UAAU;EACR,QAAQ;GACN,SAAS;GACT,SAAS;GACT,QAAQ;GACR,MAAM;GACN,SAAS;EACX;EAIA,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;EACN;EAOA,OAAO;GACL,MAAM;GACN,OAAO;EACT;CACF;CACA,iBAAiB;EACf,QAAQ;EACR,MAAM;EACN,OAAO;CACT;AACF,CACF,GAMM,IAAkC,EACtC,WAAW,2FACb;AA8CA,SAAS,EAAU,EACjB,cACA,YAAS,WACT,UAAO,MACP,WAAQ,IACR,UAAO,IACP,WAAQ,MACR,UACA,SACA,GAAG,KACc;CACjB,IAAM,IAAa,KAAS,MACtB,IAAe,MAAS,IAAa,KAAA,IAAY,WAGjD,IAAmB,CAAC,KAAc,MAAiB;CACzD,OACE,kBAAC,QAAD;EACE,aAAU;EACV,eAAa;EACb,aAAW;EACX,MAAM;EACN,eAAa,KAAc,KAAA;EAC3B,cAAY,IAAmB,IAAQ,KAAA;EACvC,WAAW,EAAG,EAAkB;GAAE;GAAQ;GAAM;EAAM,CAAC,GAAG,CAAS;EAEnE,OAAO,IAAO;GAAE,GAAG;GAAY,GAAG;EAAM,IAAI;EAC5C,GAAI;EASH,UAAA,KAAc,IAAmB,OAAO,kBAAC,QAAD;GAAM,WAAU;GAAW,UAAA;EAAY,CAAA;CAC5E,CAAA;AAEV"}
|
package/dist/index.d.ts
CHANGED
|
@@ -122,3 +122,13 @@ export * from "./components/editor/utils/insertion";
|
|
|
122
122
|
export * from "./components/editor/utils/length-calculator";
|
|
123
123
|
export * from "./components/editor/utils/serialization";
|
|
124
124
|
export * from "./components/editor/utils/stroke-transaction";
|
|
125
|
+
export * from "./components/ai/actions";
|
|
126
|
+
export * from "./components/ai/conversation";
|
|
127
|
+
export * from "./components/ai/loader";
|
|
128
|
+
export * from "./components/ai/message";
|
|
129
|
+
export * from "./components/ai/prompt-input";
|
|
130
|
+
export * from "./components/ai/shimmer";
|
|
131
|
+
export * from "./components/ai/spotlight";
|
|
132
|
+
export * from "./components/ai/suggestion";
|
|
133
|
+
export * from "./components/ai/task";
|
|
134
|
+
export * from "./components/ai/tool";
|
package/dist/index.js
CHANGED
|
@@ -114,4 +114,14 @@ import { DEFAULT_TEMPLATE_EDITOR_LABELS as $i, TemplateEditor as ea } from "./co
|
|
|
114
114
|
import { DEFAULT_FILTER_PICKER_LABELS as ta, FilterPickerContent as na } from "./components/editor/filter-picker-content.js";
|
|
115
115
|
import { DEFAULT_VARIABLE_PICKER_LABELS as ra, VariablePickerContent as ia, createLucideIconResolver as aa, getPluginsWithNestedArrays as oa } from "./components/editor/variable-picker-content.js";
|
|
116
116
|
import { calculateLineLength as sa, getOverflowAmount as ca, willOverflow as la } from "./components/editor/utils/length-calculator.js";
|
|
117
|
-
|
|
117
|
+
import { Action as ua, Actions as da } from "./components/ai/actions.js";
|
|
118
|
+
import { Conversation as fa, ConversationContent as pa, ConversationScrollButton as ma, DEFAULT_CONVERSATION_LABELS as ha } from "./components/ai/conversation.js";
|
|
119
|
+
import { Loader as ga } from "./components/ai/loader.js";
|
|
120
|
+
import { Message as _a, MessageAvatar as va, MessageContent as ya, messageContentVariants as ba, messageVariants as xa } from "./components/ai/message.js";
|
|
121
|
+
import { DEFAULT_PROMPT_INPUT_LABELS as Sa, PromptInput as Ca, PromptInputSubmit as wa, PromptInputTextarea as Ta, PromptInputToolbar as Ea, PromptInputTools as Da } from "./components/ai/prompt-input.js";
|
|
122
|
+
import { Shimmer as Oa } from "./components/ai/shimmer.js";
|
|
123
|
+
import { GhostValue as ka, SpotlightCaption as Aa, SpotlightRing as ja, revealedLength as Ma, spotlightRingVariants as Na } from "./components/ai/spotlight.js";
|
|
124
|
+
import { Suggestion as Pa, Suggestions as Fa } from "./components/ai/suggestion.js";
|
|
125
|
+
import { DEFAULT_TASK_LABELS as Ia, Task as La, TaskContent as Ra, TaskItem as za, TaskTrigger as Ba } from "./components/ai/task.js";
|
|
126
|
+
import { DEFAULT_TOOL_LABELS as Va, Tool as Ha, ToolContent as Ua, ToolHeader as Wa, ToolInput as Ga, ToolOutput as Ka } from "./components/ai/tool.js";
|
|
127
|
+
export { cr as ALL_COLOR_CODES, lr as AVAILABLE_COLORS, t as Accordion, n as AccordionContent, r as AccordionItem, i as AccordionTrigger, ua as Action, _ as ActionCard, da as Actions, E as Alert, D as AlertDescription, $ as AlertDialog, ee as AlertDialogAction, te as AlertDialogCancel, ne as AlertDialogContent, re as AlertDialogDescription, ie as AlertDialogFooter, ae as AlertDialogHeader, oe as AlertDialogOverlay, se as AlertDialogPortal, ce as AlertDialogTitle, le as AlertDialogTrigger, O as AlertTitle, _r as BOARD_CHARS, ri as BOARD_CODE_TO_COLOR, ur as BOARD_COLORS, ii as BOARD_COLOR_CODES, M as Badge, Jr as BarList, kr as BoardBackdrop, Rr as BoardDisplay, vn as BoardIcon, yn as BoardSelector, Zr as BoardShowcase, Or as BoardTeaser, J as Box, bn as Breadcrumb, xn as BreadcrumbEllipsis, Sn as BreadcrumbItem, Cn as BreadcrumbLink, wn as BreadcrumbList, Tn as BreadcrumbPage, En as BreadcrumbSeparator, A as Button, dr as COLOR_CODE_MAP, fr as COLOR_DISPLAY, ai as CURSOR_ANCHOR, s as Card, c as CardAction, l as CardContent, u as CardDescription, d as CardFooter, f as CardHeader, p as CardTitle, L as Checkbox, P as Chip, Ye as Code, y as Collapsible, b as CollapsibleContent, x as CollapsibleTrigger, Ai as ColorPickerContent, mi as ColorTileNode, fi as ColorTileNodeView, R as Combobox, fa as Conversation, pa as ConversationContent, ma as ConversationScrollButton, V as CopyButton, oi as DEFAULT_BOARD_LINES, si as DEFAULT_BOARD_WIDTH, ji as DEFAULT_COLOR_PICKER_LABELS, pi as DEFAULT_COLOR_TILE_NODE_VIEW_LABELS, z as DEFAULT_COMBOBOX_LABELS, ha as DEFAULT_CONVERSATION_LABELS, zi as DEFAULT_DRAW_CHAR_PICKER_LABELS, hi as DEFAULT_FILL_SPACE_NODE_VIEW_LABELS, ta as DEFAULT_FILTER_PICKER_LABELS, Vi as DEFAULT_FORMATTING_PICKER_LABELS, vi as DEFAULT_FORMULA_NODE_VIEW_LABELS, Sa as DEFAULT_PROMPT_INPUT_LABELS, Wr as DEFAULT_SHAPE_LABELS, Qr as DEFAULT_SHOWCASE_LABELS, Ia as DEFAULT_TASK_LABELS, $i as DEFAULT_TEMPLATE_EDITOR_LABELS, Yi as DEFAULT_TEMPLATE_EDITOR_TOOLBAR_LABELS, Ui as DEFAULT_TOOLBAR_DROPDOWN_LABELS, Va as DEFAULT_TOOL_LABELS, wi as DEFAULT_VARIABLE_NODE_VIEW_LABELS, ra as DEFAULT_VARIABLE_PICKER_LABELS, Di as DEFAULT_WRAPPED_TEXT_VIEW_LABELS, jr as DEVICE_DIMENSIONS, Mi as DRAW_CHARS, ue as Dialog, de as DialogClose, fe as DialogContent, pe as DialogDescription, me as DialogFooter, he as DialogHeader, ge as DialogOverlay, _e as DialogPortal, ve as DialogTitle, ye as DialogTrigger, Bi as DrawCharPickerContent, be as DropdownMenu, xe as DropdownMenuCheckboxItem, Se as DropdownMenuContent, Ce as DropdownMenuGroup, we as DropdownMenuItem, Te as DropdownMenuLabel, Ee as DropdownMenuPortal, De as DropdownMenuRadioGroup, Oe as DropdownMenuRadioItem, ke as DropdownMenuSeparator, Ae as DropdownMenuShortcut, je as DropdownMenuSub, Me as DropdownMenuSubContent, Ne as DropdownMenuSubTrigger, Pe as DropdownMenuTrigger, vr as EXTRA_CHARS, I as EmptyState, pr as FIESTABOARD_COLORS, Dn as FIESTA_ICON_DATA_URI, On as FIESTA_ICON_PALETTE, kn as FIESTA_ICON_SVG, ci as FILL_SPACE_REPEAT_VAR, li as FILL_SPACE_VAR, zr as FLAP_SPEED_PRESETS, ht as FadeContent, G as Field, An as FiestaIcon, jn as FiestaLogo, _i as FillSpaceNode, gi as FillSpaceNodeView, na as FilterPickerContent, Y as Flex, Hi as FormattingPickerContent, bi as FormulaNode, yi as FormulaNodeView, ka as GhostValue, Z as Grid, Xe as Heading, h as IconTile, K as Input, S as JsonTree, Qe as Kbd, W as Label, Mn as LanguageSelector, Fe as Lightbox, Ie as LightboxClose, Le as LightboxContent, Re as LightboxFooter, ze as LightboxOverlay, Be as LightboxPortal, Ve as LightboxTrigger, xi as LineNavigation, et as List, tt as ListItem, ga as Loader, Mr as MAX_NOTES_PER_AXIS, Nn as MainContent, C as MediaFrame, w as MediaFrameBar, T as MediaFrameMedia, _a as Message, va as MessageAvatar, ya as MessageContent, Nr as NOTE_COLS, Pr as NOTE_ROWS, Pn as NavList, Fn as NavListItem, In as NavListLink, Ln as NavListSection, Rn as NavListSectionContent, zn as NavListSectionTrigger, ui as NodeViewInjectionProvider, Hn as PAGE_HUES, $r as PLUGIN_CATEGORIES, Bn as PageCard, Un as PageHeader, Wn as PageIconGradientDefs, Kn as PageInset, qn as PageLayout, Vn as PageSection, Jn as PageToolbar, Yn as Pagination, ni as PluginCard, ei as PluginCategoryBadge, He as Popover, Ue as PopoverClose, We as PopoverContent, Ge as PopoverDescription, Ke as PopoverTitle, qe as PopoverTrigger, Ca as PromptInput, wa as PromptInputSubmit, Ta as PromptInputTextarea, Ea as PromptInputToolbar, Da as PromptInputTools, Hr as ScaledBoardDisplay, ti as ScaledBoardTeaser, rt as ScrollArea, it as ScrollBar, q as SecretInput, Kt as SegmentedControl, qt as SegmentedControlItem, yt as Select, bt as SelectContent, xt as SelectGroup, St as SelectItem, Ct as SelectLabel, wt as SelectScrollDownButton, Tt as SelectScrollUpButton, Et as SelectSeparator, Dt as SelectTrigger, Ot as SelectValue, nn as Sheet, rn as SheetClose, an as SheetContent, on as SheetDescription, sn as SheetFooter, cn as SheetHeader, ln as SheetOverlay, un as SheetPortal, dn as SheetTitle, fn as SheetTrigger, Oa as Shimmer, Zn as Sidebar, Si as SingleParagraphDoc, gt as Skeleton, Qn as SkipToContent, kt as Slider, a as Spinner, Aa as SpotlightCaption, ja as SpotlightRing, en as Stack, Yr as StatStrip, Xr as StatStripItem, Ur as StaticBoardDisplay, _t as StatusDot, Pa as Suggestion, Fa as Suggestions, At as Swatch, jt as SwatchGroup, Lt as Switch, at as Table, ot as TableBody, st as TableCell, ct as TableHead, lt as TableHeader, ut as TableRow, dt as Tabs, ft as TabsContent, pt as TabsList, mt as TabsTrigger, La as Task, Ra as TaskContent, za as TaskItem, Ba as TaskTrigger, ea as TemplateEditor, Xi as TemplateEditorToolbar, H as Text, _n as TextLink, Rt as Textarea, $n as ThemeToggle, zt as TimePicker, Bt as TimezonePicker, Ht as Toggle, Jt as ToggleCard, Yt as ToggleCardGroup, Ut as ToggleGroup, Ha as Tool, Ua as ToolContent, Wa as ToolHeader, Ga as ToolInput, Ka as ToolOutput, Wi as ToolbarDropdown, pn as Tooltip, mn as TooltipContent, hn as TooltipProvider, gn as TooltipTrigger, er as TopNav, tr as TopNavActions, nr as TopNavBrand, rr as TopNavItem, ir as TopNavLink, ar as TopNavList, or as TopNavMenuTrigger, Ci as TrailingNewline, Ei as VariableNode, Ti as VariableNodeView, ia as VariablePickerContent, sr as WizardProgress, Ar as WizardShell, ki as WrappedTextNode, Oi as WrappedTextView, v as actionCardMedallionVariants, k as alertVariants, yr as applyCode62Glyph, N as badgeVariants, Ni as brushToCell, Zi as buildStrokeTransaction, j as buttonVariants, sa as calculateLineLength, m as cardSurfaceClassName, Pi as cellsToLine, F as chipVariants, e as cn, aa as createLucideIconResolver, B as defaultComboboxFilter, Br as deriveFlapTiming, X as flexVariants, mr as getBoardColor, br as getCharFromToken, xr as getCharIndex, ca as getOverflowAmount, oa as getPluginsWithNestedArrays, Q as gridVariants, Ze as headingVariants, g as iconTileVariants, Ji as insertTemplateContent, Sr as isColorTile, Fr as isNoteArray, Fi as isPositionalLine, hr as isValidBoardColor, Qi as lineRanges, Ii as lineToCells, Vt as listTimezones, nt as listVariants, ba as messageContentVariants, Cr as messageToGrid, wr as messageToText, xa as messageVariants, Ir as noteArrayDimensions, Gn as pageHue, Xn as paginationRange, Li as paintLine, Tr as parseLine, Gi as parseLineContent, Ki as parseTemplateSimple, Gr as previewLabel, Kr as previewLabels, qr as previewMessage, Ri as renderPositionalLine, Er as resolveCode62Glyph, gr as resolveColorCode, Lr as resolveDimensions, Vr as resolveFlapSpeed, Ma as revealedLength, Xt as segmentedControlItemVariants, Zt as segmentedControlVariants, qi as serializeTemplateSimple, o as spinnerVariants, Na as spotlightRingVariants, tn as stackVariants, vt as statusDotVariants, Mt as swatchFillVariants, Nt as swatchGlyphVariants, Pt as swatchGroupVariants, Ft as swatchIndicatorVariants, It as swatchVariants, U as textVariants, Qt as toggleCardGroupVariants, $t as toggleCardVariants, Wt as toggleGroupVariants, Gt as toggleVariants, Dr as tokensEqual, $e as useKbdPlatform, di as useNodeViewInjection, Je as usePopoverClose, la as willOverflow };
|
package/dist/theme.css
CHANGED
|
@@ -1690,6 +1690,99 @@ html[data-board-switch="backward"]::view-transition-new(board-page) {
|
|
|
1690
1690
|
}
|
|
1691
1691
|
}
|
|
1692
1692
|
|
|
1693
|
+
/* ============================================================
|
|
1694
|
+
* AI family — shimmer, spotlight pulse, ghost caret
|
|
1695
|
+
*
|
|
1696
|
+
* Owned by src/components/ai/. Each has its own reduced-motion pose rather
|
|
1697
|
+
* than relying on the 1ms backstop below: a shimmer frozen mid-sweep leaves
|
|
1698
|
+
* half the text at 30% opacity, a pulse frozen at its widest reads as a
|
|
1699
|
+
* second border, a caret frozen invisible reads as nothing being typed.
|
|
1700
|
+
* ============================================================ */
|
|
1701
|
+
@keyframes ai-shimmer {
|
|
1702
|
+
from {
|
|
1703
|
+
background-position: 200% center;
|
|
1704
|
+
}
|
|
1705
|
+
to {
|
|
1706
|
+
background-position: -200% center;
|
|
1707
|
+
}
|
|
1708
|
+
}
|
|
1709
|
+
|
|
1710
|
+
.ai-shimmer {
|
|
1711
|
+
color: transparent;
|
|
1712
|
+
background-image: linear-gradient(
|
|
1713
|
+
90deg,
|
|
1714
|
+
var(--muted-foreground) 0%,
|
|
1715
|
+
var(--foreground) 50%,
|
|
1716
|
+
var(--muted-foreground) 100%
|
|
1717
|
+
);
|
|
1718
|
+
background-size: 200% auto;
|
|
1719
|
+
background-clip: text;
|
|
1720
|
+
-webkit-background-clip: text;
|
|
1721
|
+
animation: ai-shimmer 2s linear infinite;
|
|
1722
|
+
}
|
|
1723
|
+
|
|
1724
|
+
@keyframes ai-spotlight-pulse {
|
|
1725
|
+
0%,
|
|
1726
|
+
100% {
|
|
1727
|
+
box-shadow: 0 0 0 0 color-mix(in oklch, var(--brand) 45%, transparent);
|
|
1728
|
+
}
|
|
1729
|
+
50% {
|
|
1730
|
+
box-shadow: 0 0 0 6px color-mix(in oklch, var(--brand) 0%, transparent);
|
|
1731
|
+
}
|
|
1732
|
+
}
|
|
1733
|
+
|
|
1734
|
+
.ai-spotlight-pulse {
|
|
1735
|
+
animation: ai-spotlight-pulse 1.6s ease-out infinite;
|
|
1736
|
+
}
|
|
1737
|
+
|
|
1738
|
+
@keyframes ai-caret-blink {
|
|
1739
|
+
0%,
|
|
1740
|
+
49% {
|
|
1741
|
+
opacity: 1;
|
|
1742
|
+
}
|
|
1743
|
+
50%,
|
|
1744
|
+
100% {
|
|
1745
|
+
opacity: 0;
|
|
1746
|
+
}
|
|
1747
|
+
}
|
|
1748
|
+
|
|
1749
|
+
.ai-caret {
|
|
1750
|
+
display: inline-block;
|
|
1751
|
+
width: 1px;
|
|
1752
|
+
height: 1em;
|
|
1753
|
+
margin-left: 1px;
|
|
1754
|
+
vertical-align: -0.15em;
|
|
1755
|
+
background-color: var(--brand);
|
|
1756
|
+
animation: ai-caret-blink 1s steps(1) infinite;
|
|
1757
|
+
}
|
|
1758
|
+
|
|
1759
|
+
@media (prefers-reduced-motion: reduce) {
|
|
1760
|
+
.ai-shimmer {
|
|
1761
|
+
animation: none;
|
|
1762
|
+
color: var(--muted-foreground);
|
|
1763
|
+
background-image: none;
|
|
1764
|
+
}
|
|
1765
|
+
|
|
1766
|
+
.ai-spotlight-pulse {
|
|
1767
|
+
animation: none;
|
|
1768
|
+
}
|
|
1769
|
+
|
|
1770
|
+
.ai-caret {
|
|
1771
|
+
animation: none;
|
|
1772
|
+
}
|
|
1773
|
+
}
|
|
1774
|
+
|
|
1775
|
+
.reduce-motion .ai-shimmer {
|
|
1776
|
+
animation: none;
|
|
1777
|
+
color: var(--muted-foreground);
|
|
1778
|
+
background-image: none;
|
|
1779
|
+
}
|
|
1780
|
+
|
|
1781
|
+
.reduce-motion .ai-spotlight-pulse,
|
|
1782
|
+
.reduce-motion .ai-caret {
|
|
1783
|
+
animation: none;
|
|
1784
|
+
}
|
|
1785
|
+
|
|
1693
1786
|
/* ============================================================
|
|
1694
1787
|
* Reduced-motion backstop (issue #180)
|
|
1695
1788
|
*
|