tempest-react-sdk 0.73.0 → 0.75.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/README.md +6 -4
- package/dist/br/BrazilMap.module.cjs.map +1 -1
- package/dist/br/BrazilMap.module.js.map +1 -1
- package/dist/br/MapMarkers.cjs +1 -1
- package/dist/br/MapMarkers.cjs.map +1 -1
- package/dist/br/MapMarkers.js +19 -22
- package/dist/br/MapMarkers.js.map +1 -1
- package/dist/br/MunicipalitySearch.cjs +1 -1
- package/dist/br/MunicipalitySearch.cjs.map +1 -1
- package/dist/br/MunicipalitySearch.js +66 -48
- package/dist/br/MunicipalitySearch.js.map +1 -1
- package/dist/br/MunicipalitySearch.module.cjs +1 -1
- package/dist/br/MunicipalitySearch.module.cjs.map +1 -1
- package/dist/br/MunicipalitySearch.module.js +4 -3
- package/dist/br/MunicipalitySearch.module.js.map +1 -1
- package/dist/br.d.ts +12 -0
- package/dist/components/AIChat/AIChat.module.cjs.map +1 -1
- package/dist/components/AIChat/AIChat.module.js.map +1 -1
- package/dist/components/AIChat/AIChatTurn.cjs +1 -1
- package/dist/components/AIChat/AIChatTurn.cjs.map +1 -1
- package/dist/components/AIChat/AIChatTurn.js +1 -1
- package/dist/components/AIChat/AIChatTurn.js.map +1 -1
- package/dist/components/AppBar/AppBar.cjs +1 -1
- package/dist/components/AppBar/AppBar.cjs.map +1 -1
- package/dist/components/AppBar/AppBar.js +1 -0
- package/dist/components/AppBar/AppBar.js.map +1 -1
- package/dist/components/AppBar/AppBar.module.cjs +1 -1
- package/dist/components/AppBar/AppBar.module.cjs.map +1 -1
- package/dist/components/AppBar/AppBar.module.js +12 -11
- package/dist/components/AppBar/AppBar.module.js.map +1 -1
- package/dist/components/AppShell/AppShell.module.cjs.map +1 -1
- package/dist/components/AppShell/AppShell.module.js.map +1 -1
- package/dist/components/Button/Button.cjs +1 -1
- package/dist/components/Button/Button.cjs.map +1 -1
- package/dist/components/Button/Button.js +41 -36
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/Button/Button.module.cjs.map +1 -1
- package/dist/components/Button/Button.module.js.map +1 -1
- package/dist/components/Button/ButtonContent.cjs +2 -0
- package/dist/components/Button/ButtonContent.cjs.map +1 -0
- package/dist/components/Button/ButtonContent.js +34 -0
- package/dist/components/Button/ButtonContent.js.map +1 -0
- package/dist/components/Button/ButtonSlot.cjs +2 -0
- package/dist/components/Button/ButtonSlot.cjs.map +1 -0
- package/dist/components/Button/ButtonSlot.js +36 -0
- package/dist/components/Button/ButtonSlot.js.map +1 -0
- package/dist/components/Button/button-class.cjs +2 -0
- package/dist/components/Button/button-class.cjs.map +1 -0
- package/dist/components/Button/button-class.js +13 -0
- package/dist/components/Button/button-class.js.map +1 -0
- package/dist/components/Button/link-rel.cjs +2 -0
- package/dist/components/Button/link-rel.cjs.map +1 -0
- package/dist/components/Button/link-rel.js +11 -0
- package/dist/components/Button/link-rel.js.map +1 -0
- package/dist/components/Button/slot.cjs +2 -0
- package/dist/components/Button/slot.cjs.map +1 -0
- package/dist/components/Button/slot.js +41 -0
- package/dist/components/Button/slot.js.map +1 -0
- package/dist/components/Carousel/Carousel.module.cjs.map +1 -1
- package/dist/components/Carousel/Carousel.module.js.map +1 -1
- package/dist/components/Chat/Chat.module.cjs.map +1 -1
- package/dist/components/Chat/Chat.module.js.map +1 -1
- package/dist/components/Collapsible/Collapsible.cjs +1 -1
- package/dist/components/Collapsible/Collapsible.cjs.map +1 -1
- package/dist/components/Collapsible/Collapsible.js +1 -1
- package/dist/components/Collapsible/Collapsible.js.map +1 -1
- package/dist/components/Combobox/Combobox.cjs +1 -1
- package/dist/components/Combobox/Combobox.cjs.map +1 -1
- package/dist/components/Combobox/Combobox.js +18 -23
- package/dist/components/Combobox/Combobox.js.map +1 -1
- package/dist/components/Combobox/use-listbox-dismiss.cjs +2 -0
- package/dist/components/Combobox/use-listbox-dismiss.cjs.map +1 -0
- package/dist/components/Combobox/use-listbox-dismiss.js +34 -0
- package/dist/components/Combobox/use-listbox-dismiss.js.map +1 -0
- package/dist/components/Dropzone/Dropzone.module.cjs.map +1 -1
- package/dist/components/Dropzone/Dropzone.module.js.map +1 -1
- package/dist/components/FilterBar/FilterBar.module.cjs.map +1 -1
- package/dist/components/FilterBar/FilterBar.module.js.map +1 -1
- package/dist/components/FloatingActionButton/FloatingActionButton.module.cjs.map +1 -1
- package/dist/components/FloatingActionButton/FloatingActionButton.module.js.map +1 -1
- package/dist/components/Form/Form.cjs.map +1 -1
- package/dist/components/Form/Form.js.map +1 -1
- package/dist/components/ImageCropper/ImageCropper.module.cjs.map +1 -1
- package/dist/components/ImageCropper/ImageCropper.module.js.map +1 -1
- package/dist/components/InstallButton/InstallButton.cjs.map +1 -1
- package/dist/components/InstallButton/InstallButton.js.map +1 -1
- package/dist/components/ListTile/ListTile.module.cjs.map +1 -1
- package/dist/components/ListTile/ListTile.module.js.map +1 -1
- package/dist/components/Markdown/Markdown.module.cjs.map +1 -1
- package/dist/components/Markdown/Markdown.module.js.map +1 -1
- package/dist/components/Menubar/Menubar.module.cjs.map +1 -1
- package/dist/components/Menubar/Menubar.module.js.map +1 -1
- package/dist/components/Modal/Modal.cjs +1 -1
- package/dist/components/Modal/Modal.cjs.map +1 -1
- package/dist/components/Modal/Modal.js +1 -1
- package/dist/components/Modal/Modal.js.map +1 -1
- package/dist/components/Modal/Modal.module.cjs +1 -1
- package/dist/components/Modal/Modal.module.cjs.map +1 -1
- package/dist/components/Modal/Modal.module.js +1 -1
- package/dist/components/Modal/Modal.module.js.map +1 -1
- package/dist/components/MultiSelect/MultiSelect.cjs +1 -1
- package/dist/components/MultiSelect/MultiSelect.cjs.map +1 -1
- package/dist/components/MultiSelect/MultiSelect.js +55 -54
- package/dist/components/MultiSelect/MultiSelect.js.map +1 -1
- package/dist/components/Navbar/Navbar.cjs +1 -1
- package/dist/components/Navbar/Navbar.cjs.map +1 -1
- package/dist/components/Navbar/Navbar.js +1 -0
- package/dist/components/Navbar/Navbar.js.map +1 -1
- package/dist/components/Navbar/Navbar.module.cjs +1 -1
- package/dist/components/Navbar/Navbar.module.cjs.map +1 -1
- package/dist/components/Navbar/Navbar.module.js +9 -8
- package/dist/components/Navbar/Navbar.module.js.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.module.cjs.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.module.js.map +1 -1
- package/dist/components/NavigationRail/NavigationRail.module.cjs.map +1 -1
- package/dist/components/NavigationRail/NavigationRail.module.js.map +1 -1
- package/dist/components/NotificationCenter/NotificationCenter.module.cjs.map +1 -1
- package/dist/components/NotificationCenter/NotificationCenter.module.js.map +1 -1
- package/dist/components/Page/Page.cjs +1 -1
- package/dist/components/Page/Page.cjs.map +1 -1
- package/dist/components/Page/Page.js +23 -39
- package/dist/components/Page/Page.js.map +1 -1
- package/dist/components/Page/Page.module.cjs +1 -1
- package/dist/components/Page/Page.module.cjs.map +1 -1
- package/dist/components/Page/Page.module.js +5 -11
- package/dist/components/Page/Page.module.js.map +1 -1
- package/dist/components/PasswordInput/PasswordInput.module.cjs.map +1 -1
- package/dist/components/PasswordInput/PasswordInput.module.js.map +1 -1
- package/dist/components/PinInput/PinInput.module.cjs.map +1 -1
- package/dist/components/PinInput/PinInput.module.js.map +1 -1
- package/dist/components/Reveal/Reveal.cjs +2 -0
- package/dist/components/Reveal/Reveal.cjs.map +1 -0
- package/dist/components/Reveal/Reveal.js +56 -0
- package/dist/components/Reveal/Reveal.js.map +1 -0
- package/dist/components/Reveal/Reveal.module.cjs +3 -0
- package/dist/components/Reveal/Reveal.module.cjs.map +1 -0
- package/dist/components/Reveal/Reveal.module.js +7 -0
- package/dist/components/Reveal/Reveal.module.js.map +1 -0
- package/dist/components/Reveal/reveal-threshold.cjs +2 -0
- package/dist/components/Reveal/reveal-threshold.cjs.map +1 -0
- package/dist/components/Reveal/reveal-threshold.js +13 -0
- package/dist/components/Reveal/reveal-threshold.js.map +1 -0
- package/dist/components/SectionHeader/SectionHeader.cjs +2 -0
- package/dist/components/SectionHeader/SectionHeader.cjs.map +1 -0
- package/dist/components/SectionHeader/SectionHeader.js +66 -0
- package/dist/components/SectionHeader/SectionHeader.js.map +1 -0
- package/dist/components/SectionHeader/SectionHeader.module.cjs +3 -0
- package/dist/components/SectionHeader/SectionHeader.module.cjs.map +1 -0
- package/dist/components/SectionHeader/SectionHeader.module.js +15 -0
- package/dist/components/SectionHeader/SectionHeader.module.js.map +1 -0
- package/dist/components/Timeline/Timeline.cjs +1 -1
- package/dist/components/Timeline/Timeline.cjs.map +1 -1
- package/dist/components/Timeline/Timeline.js +22 -15
- package/dist/components/Timeline/Timeline.js.map +1 -1
- package/dist/components/Timeline/Timeline.module.cjs +1 -1
- package/dist/components/Timeline/Timeline.module.cjs.map +1 -1
- package/dist/components/Timeline/Timeline.module.js +1 -1
- package/dist/components/Timeline/Timeline.module.js.map +1 -1
- package/dist/components/Tour/Tour.module.cjs.map +1 -1
- package/dist/components/Tour/Tour.module.js.map +1 -1
- package/dist/components/Transfer/Transfer.module.cjs.map +1 -1
- package/dist/components/Transfer/Transfer.module.js.map +1 -1
- package/dist/components/VirtualTable/VirtualTable.module.cjs.map +1 -1
- package/dist/components/VirtualTable/VirtualTable.module.js.map +1 -1
- package/dist/geo/TrajectoryMap.module.cjs.map +1 -1
- package/dist/geo/TrajectoryMap.module.js.map +1 -1
- package/dist/icons/IconPicker.module.cjs.map +1 -1
- package/dist/icons/IconPicker.module.js.map +1 -1
- package/dist/styles/Reveal.css +2 -0
- package/dist/styles/SectionHeader.css +2 -0
- package/dist/styles/actions.css +26 -24
- package/dist/styles/base.css +3 -1
- package/dist/styles/br.css +3 -3
- package/dist/styles/chat.css +5 -5
- package/dist/styles/component/AIChat.css +3 -3
- package/dist/styles/component/AppBar.css +1 -0
- package/dist/styles/component/AppShell.css +1 -1
- package/dist/styles/component/BrazilMap.css +2 -2
- package/dist/styles/component/Button.css +25 -23
- package/dist/styles/component/Carousel.css +3 -3
- package/dist/styles/component/Chat.css +2 -2
- package/dist/styles/component/Dropzone.css +2 -1
- package/dist/styles/component/FilterBar.css +2 -2
- package/dist/styles/component/FloatingActionButton.css +1 -1
- package/dist/styles/component/IconPicker.css +1 -1
- package/dist/styles/component/ImageCropper.css +2 -2
- package/dist/styles/component/ListTile.css +1 -1
- package/dist/styles/component/Markdown.css +1 -1
- package/dist/styles/component/Menubar.css +1 -1
- package/dist/styles/component/Modal.css +2 -2
- package/dist/styles/component/MunicipalitySearch.css +1 -1
- package/dist/styles/component/Navbar.css +1 -0
- package/dist/styles/component/NavigationMenu.css +1 -1
- package/dist/styles/component/NavigationRail.css +1 -1
- package/dist/styles/component/NotificationCenter.css +3 -3
- package/dist/styles/component/Page.css +0 -6
- package/dist/styles/component/PasswordInput.css +1 -1
- package/dist/styles/component/PinInput.css +1 -1
- package/dist/styles/component/Reveal.css +9 -0
- package/dist/styles/component/SectionHeader.css +9 -0
- package/dist/styles/component/Timeline.css +5 -5
- package/dist/styles/component/Tour.css +2 -2
- package/dist/styles/component/TrajectoryMap.css +1 -1
- package/dist/styles/component/Transfer.css +2 -2
- package/dist/styles/component/VirtualTable.css +2 -2
- package/dist/styles/core.css +3 -1
- package/dist/styles/data.css +15 -15
- package/dist/styles/feedback.css +3 -3
- package/dist/styles/forms.css +6 -5
- package/dist/styles/geo.css +1 -1
- package/dist/styles/icons.css +1 -1
- package/dist/styles/inverse.css +372 -0
- package/dist/styles/layout.css +9 -7
- package/dist/styles/manifest.json +14 -1
- package/dist/styles/navigation.css +8 -6
- package/dist/styles/overlay.css +2 -2
- package/dist/styles/utility.css +8 -0
- package/dist/styles.css +1 -1
- package/dist/tempest-react-sdk.cjs +1 -1
- package/dist/tempest-react-sdk.d.ts +473 -11
- package/dist/tempest-react-sdk.js +350 -346
- package/dist/theme/create-theme.cjs +3 -3
- package/dist/theme/create-theme.cjs.map +1 -1
- package/dist/theme/create-theme.js +72 -55
- package/dist/theme/create-theme.js.map +1 -1
- package/dist/theme/inverse-render.cjs +3 -0
- package/dist/theme/inverse-render.cjs.map +1 -0
- package/dist/theme/inverse-render.js +10 -0
- package/dist/theme/inverse-render.js.map +1 -0
- package/dist/theme/inverse-restore.cjs +5 -0
- package/dist/theme/inverse-restore.cjs.map +1 -0
- package/dist/theme/inverse-restore.js +30 -0
- package/dist/theme/inverse-restore.js.map +1 -0
- package/dist/theme/inverse-surface.cjs +2 -0
- package/dist/theme/inverse-surface.cjs.map +1 -0
- package/dist/theme/inverse-surface.js +255 -0
- package/dist/theme/inverse-surface.js.map +1 -0
- package/dist/theme/status-tokens.cjs +2 -0
- package/dist/theme/status-tokens.cjs.map +1 -0
- package/dist/theme/status-tokens.js +15 -0
- package/dist/theme/status-tokens.js.map +1 -0
- package/dist/vite/create-vite-config.cjs +1 -1
- package/dist/vite/create-vite-config.cjs.map +1 -1
- package/dist/vite/create-vite-config.js +6 -4
- package/dist/vite/create-vite-config.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require("../../utils/cn.cjs"),t=require("./Timeline.module.cjs");let n=require("react/jsx-runtime");function
|
|
1
|
+
const e=require("../../utils/cn.cjs"),t=require("./Timeline.module.cjs");let n=require("react/jsx-runtime");var r={primary:t.default.markerPrimary,success:t.default.markerSuccess,warning:t.default.markerWarning,danger:t.default.markerDanger,neutral:t.default.markerNeutral};function i({items:i,connector:a=!0,className:o,...s}){return(0,n.jsx)(`ol`,{className:e.cn(t.default.timeline,o),...s,children:i.map((o,s)=>{let c=s===i.length-1;return(0,n.jsxs)(`li`,{className:t.default.item,children:[(0,n.jsxs)(`div`,{className:t.default.markerColumn,children:[(0,n.jsx)(`span`,{className:e.cn(t.default.marker,r[o.marker??`primary`]),"aria-hidden":`true`,children:o.icon}),a&&!c&&(0,n.jsx)(`span`,{className:t.default.line,"aria-hidden":`true`})]}),(0,n.jsxs)(`div`,{className:t.default.body,children:[(0,n.jsxs)(`div`,{className:t.default.row,children:[(0,n.jsx)(`span`,{className:t.default.title,children:o.title}),o.meta&&(0,n.jsx)(`span`,{className:t.default.meta,children:o.meta})]}),o.description&&(0,n.jsx)(`p`,{className:t.default.description,children:o.description})]})]},o.id)})})}exports.Timeline=i;
|
|
2
2
|
//# sourceMappingURL=Timeline.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timeline.cjs","names":[],"sources":["../../../src/components/Timeline/Timeline.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from \"react\";\nimport { cn } from \"@/utils/cn\";\nimport styles from \"./Timeline.module.css\";\n\nexport type TimelineMarker = \"primary\" | \"success\" | \"warning\" | \"danger\" | \"neutral\";\n\nexport interface TimelineItem {\n /** Stable identifier (used as React key). */\n id: string;\n /** Title rendered as the entry headline. */\n title: ReactNode;\n /** Optional subtitle / description below the title. */\n description?: ReactNode;\n /** Right-aligned meta column (timestamps, durations). */\n meta?: ReactNode;\n /** Optional custom icon rendered inside the marker. */\n icon?: ReactNode;\n /** Marker color. Default `\"primary\"`. */\n marker?: TimelineMarker;\n}\n\nexport interface TimelineProps extends HTMLAttributes<HTMLOListElement> {\n items: TimelineItem[];\n /** Show the connecting line between markers. Default `true`. */\n connector?: boolean;\n}\n\n/**\n * Vertical event timeline — activity feeds, order trackers, audit logs.\n * Each entry has a marker (color or custom icon), title, optional\n * description and right-aligned meta column.\n *\n * @example\n * <Timeline items={[\n * { id: \"1\", title: \"Pedido criado\", meta: \"10:24\", marker: \"primary\" },\n * { id: \"2\", title: \"Aprovação\", meta: \"10:25\", marker: \"success\" },\n * { id: \"3\", title: \"Saiu pra entrega\", meta: \"11:00\", marker: \"warning\" },\n * ]} />\n */\nexport function Timeline({ items, connector = true, className, ...props }: TimelineProps) {\n return (\n <ol className={cn(styles.timeline,
|
|
1
|
+
{"version":3,"file":"Timeline.cjs","names":[],"sources":["../../../src/components/Timeline/Timeline.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from \"react\";\nimport { cn } from \"@/utils/cn\";\nimport styles from \"./Timeline.module.css\";\n\nexport type TimelineMarker = \"primary\" | \"success\" | \"warning\" | \"danger\" | \"neutral\";\n\n/**\n * The class each marker color applies, keyed by the published CSS-module names.\n *\n * The build exports CSS-module keys in camelCase only (`localsConvention:\n * \"camelCaseOnly\"` in `vite.config.ts`), so a kebab lookup such as\n * `styles[\"marker-primary\"]` is `undefined` in `dist/` — which is how every marker\n * shipped transparent until issue #405. A `Record` over the union also makes the\n * type-checker demand an entry for every color added to {@link TimelineMarker}.\n */\nconst MARKER_CLASS: Record<TimelineMarker, string> = {\n primary: styles.markerPrimary,\n success: styles.markerSuccess,\n warning: styles.markerWarning,\n danger: styles.markerDanger,\n neutral: styles.markerNeutral,\n};\n\nexport interface TimelineItem {\n /** Stable identifier (used as React key). */\n id: string;\n /** Title rendered as the entry headline. */\n title: ReactNode;\n /** Optional subtitle / description below the title. */\n description?: ReactNode;\n /** Right-aligned meta column (timestamps, durations). */\n meta?: ReactNode;\n /** Optional custom icon rendered inside the marker. */\n icon?: ReactNode;\n /** Marker color. Default `\"primary\"`. */\n marker?: TimelineMarker;\n}\n\nexport interface TimelineProps extends HTMLAttributes<HTMLOListElement> {\n items: TimelineItem[];\n /** Show the connecting line between markers. Default `true`. */\n connector?: boolean;\n}\n\n/**\n * Vertical event timeline — activity feeds, order trackers, audit logs.\n * Each entry has a marker (color or custom icon), title, optional\n * description and right-aligned meta column.\n *\n * @example\n * <Timeline items={[\n * { id: \"1\", title: \"Pedido criado\", meta: \"10:24\", marker: \"primary\" },\n * { id: \"2\", title: \"Aprovação\", meta: \"10:25\", marker: \"success\" },\n * { id: \"3\", title: \"Saiu pra entrega\", meta: \"11:00\", marker: \"warning\" },\n * ]} />\n */\nexport function Timeline({ items, connector = true, className, ...props }: TimelineProps) {\n return (\n <ol className={cn(styles.timeline, className)} {...props}>\n {items.map((item, index) => {\n const isLast = index === items.length - 1;\n return (\n <li key={item.id} className={styles.item}>\n <div className={styles.markerColumn}>\n <span\n className={cn(\n styles.marker,\n MARKER_CLASS[item.marker ?? \"primary\"],\n )}\n aria-hidden=\"true\"\n >\n {item.icon}\n </span>\n {connector && !isLast && (\n <span className={styles.line} aria-hidden=\"true\" />\n )}\n </div>\n <div className={styles.body}>\n <div className={styles.row}>\n <span className={styles.title}>{item.title}</span>\n {item.meta && <span className={styles.meta}>{item.meta}</span>}\n </div>\n {item.description && (\n <p className={styles.description}>{item.description}</p>\n )}\n </div>\n </li>\n );\n })}\n </ol>\n );\n}\n"],"mappings":"4GAeA,IAAM,EAA+C,CACjD,QAAS,EAAA,QAAO,cAChB,QAAS,EAAA,QAAO,cAChB,QAAS,EAAA,QAAO,cAChB,OAAQ,EAAA,QAAO,aACf,QAAS,EAAA,QAAO,aACpB,EAmCA,SAAgB,EAAS,CAAE,QAAO,YAAY,GAAM,YAAW,GAAG,GAAwB,CACtF,OACI,EAAA,EAAA,IAAA,CAAC,KAAD,CAAI,UAAW,EAAA,GAAG,EAAA,QAAO,SAAU,CAAS,EAAG,GAAI,EAC9C,SAAA,EAAM,KAAK,EAAM,IAAU,CACxB,IAAM,EAAS,IAAU,EAAM,OAAS,EACxC,OACI,EAAA,EAAA,KAAA,CAAC,KAAD,CAAkB,UAAW,EAAA,QAAO,KAApC,SAAA,EACI,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAW,EAAA,QAAO,aAAvB,SAAA,EACI,EAAA,EAAA,IAAA,CAAC,OAAD,CACI,UAAW,EAAA,GACP,EAAA,QAAO,OACP,EAAa,EAAK,QAAU,UAChC,EACA,cAAY,OAEX,SAAA,EAAK,IACJ,CAAA,EACL,GAAa,CAAC,IACX,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAW,EAAA,QAAO,KAAM,cAAY,MAAQ,CAAA,CAErD,CACL,CAAA,GAAA,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAW,EAAA,QAAO,KAAvB,SAAA,EACI,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAW,EAAA,QAAO,IAAvB,SAAA,EACI,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAW,EAAA,QAAO,MAAQ,SAAA,EAAK,KAAY,CAAA,EAChD,EAAK,OAAQ,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAW,EAAA,QAAO,KAAO,SAAA,EAAK,IAAW,CAAA,CAC5D,CACJ,CAAA,EAAA,EAAK,cACF,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAW,EAAA,QAAO,YAAc,SAAA,EAAK,WAAe,CAAA,CAE1D,CACL,CAAA,CAAA,CAxBK,EAAA,EAAK,EAwBV,CAEZ,CAAC,CACD,CAAA,CAEZ"}
|
|
@@ -2,21 +2,28 @@ import { cn as e } from "../../utils/cn.js";
|
|
|
2
2
|
import t from "./Timeline.module.js";
|
|
3
3
|
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
4
4
|
//#region src/components/Timeline/Timeline.tsx
|
|
5
|
-
|
|
5
|
+
var i = {
|
|
6
|
+
primary: t.markerPrimary,
|
|
7
|
+
success: t.markerSuccess,
|
|
8
|
+
warning: t.markerWarning,
|
|
9
|
+
danger: t.markerDanger,
|
|
10
|
+
neutral: t.markerNeutral
|
|
11
|
+
};
|
|
12
|
+
function a({ items: a, connector: o = !0, className: s, ...c }) {
|
|
6
13
|
return /* @__PURE__ */ n("ol", {
|
|
7
|
-
className: e(t.timeline,
|
|
8
|
-
...
|
|
9
|
-
children:
|
|
10
|
-
let
|
|
14
|
+
className: e(t.timeline, s),
|
|
15
|
+
...c,
|
|
16
|
+
children: a.map((s, c) => {
|
|
17
|
+
let l = c === a.length - 1;
|
|
11
18
|
return /* @__PURE__ */ r("li", {
|
|
12
19
|
className: t.item,
|
|
13
20
|
children: [/* @__PURE__ */ r("div", {
|
|
14
21
|
className: t.markerColumn,
|
|
15
22
|
children: [/* @__PURE__ */ n("span", {
|
|
16
|
-
className: e(t.marker,
|
|
23
|
+
className: e(t.marker, i[s.marker ?? "primary"]),
|
|
17
24
|
"aria-hidden": "true",
|
|
18
|
-
children:
|
|
19
|
-
}),
|
|
25
|
+
children: s.icon
|
|
26
|
+
}), o && !l && /* @__PURE__ */ n("span", {
|
|
20
27
|
className: t.line,
|
|
21
28
|
"aria-hidden": "true"
|
|
22
29
|
})]
|
|
@@ -26,21 +33,21 @@ function i({ items: i, connector: a = !0, className: o, ...s }) {
|
|
|
26
33
|
className: t.row,
|
|
27
34
|
children: [/* @__PURE__ */ n("span", {
|
|
28
35
|
className: t.title,
|
|
29
|
-
children:
|
|
30
|
-
}),
|
|
36
|
+
children: s.title
|
|
37
|
+
}), s.meta && /* @__PURE__ */ n("span", {
|
|
31
38
|
className: t.meta,
|
|
32
|
-
children:
|
|
39
|
+
children: s.meta
|
|
33
40
|
})]
|
|
34
|
-
}),
|
|
41
|
+
}), s.description && /* @__PURE__ */ n("p", {
|
|
35
42
|
className: t.description,
|
|
36
|
-
children:
|
|
43
|
+
children: s.description
|
|
37
44
|
})]
|
|
38
45
|
})]
|
|
39
|
-
},
|
|
46
|
+
}, s.id);
|
|
40
47
|
})
|
|
41
48
|
});
|
|
42
49
|
}
|
|
43
50
|
//#endregion
|
|
44
|
-
export {
|
|
51
|
+
export { a as Timeline };
|
|
45
52
|
|
|
46
53
|
//# sourceMappingURL=Timeline.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timeline.js","names":[],"sources":["../../../src/components/Timeline/Timeline.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from \"react\";\nimport { cn } from \"@/utils/cn\";\nimport styles from \"./Timeline.module.css\";\n\nexport type TimelineMarker = \"primary\" | \"success\" | \"warning\" | \"danger\" | \"neutral\";\n\nexport interface TimelineItem {\n /** Stable identifier (used as React key). */\n id: string;\n /** Title rendered as the entry headline. */\n title: ReactNode;\n /** Optional subtitle / description below the title. */\n description?: ReactNode;\n /** Right-aligned meta column (timestamps, durations). */\n meta?: ReactNode;\n /** Optional custom icon rendered inside the marker. */\n icon?: ReactNode;\n /** Marker color. Default `\"primary\"`. */\n marker?: TimelineMarker;\n}\n\nexport interface TimelineProps extends HTMLAttributes<HTMLOListElement> {\n items: TimelineItem[];\n /** Show the connecting line between markers. Default `true`. */\n connector?: boolean;\n}\n\n/**\n * Vertical event timeline — activity feeds, order trackers, audit logs.\n * Each entry has a marker (color or custom icon), title, optional\n * description and right-aligned meta column.\n *\n * @example\n * <Timeline items={[\n * { id: \"1\", title: \"Pedido criado\", meta: \"10:24\", marker: \"primary\" },\n * { id: \"2\", title: \"Aprovação\", meta: \"10:25\", marker: \"success\" },\n * { id: \"3\", title: \"Saiu pra entrega\", meta: \"11:00\", marker: \"warning\" },\n * ]} />\n */\nexport function Timeline({ items, connector = true, className, ...props }: TimelineProps) {\n return (\n <ol className={cn(styles.timeline,
|
|
1
|
+
{"version":3,"file":"Timeline.js","names":[],"sources":["../../../src/components/Timeline/Timeline.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from \"react\";\nimport { cn } from \"@/utils/cn\";\nimport styles from \"./Timeline.module.css\";\n\nexport type TimelineMarker = \"primary\" | \"success\" | \"warning\" | \"danger\" | \"neutral\";\n\n/**\n * The class each marker color applies, keyed by the published CSS-module names.\n *\n * The build exports CSS-module keys in camelCase only (`localsConvention:\n * \"camelCaseOnly\"` in `vite.config.ts`), so a kebab lookup such as\n * `styles[\"marker-primary\"]` is `undefined` in `dist/` — which is how every marker\n * shipped transparent until issue #405. A `Record` over the union also makes the\n * type-checker demand an entry for every color added to {@link TimelineMarker}.\n */\nconst MARKER_CLASS: Record<TimelineMarker, string> = {\n primary: styles.markerPrimary,\n success: styles.markerSuccess,\n warning: styles.markerWarning,\n danger: styles.markerDanger,\n neutral: styles.markerNeutral,\n};\n\nexport interface TimelineItem {\n /** Stable identifier (used as React key). */\n id: string;\n /** Title rendered as the entry headline. */\n title: ReactNode;\n /** Optional subtitle / description below the title. */\n description?: ReactNode;\n /** Right-aligned meta column (timestamps, durations). */\n meta?: ReactNode;\n /** Optional custom icon rendered inside the marker. */\n icon?: ReactNode;\n /** Marker color. Default `\"primary\"`. */\n marker?: TimelineMarker;\n}\n\nexport interface TimelineProps extends HTMLAttributes<HTMLOListElement> {\n items: TimelineItem[];\n /** Show the connecting line between markers. Default `true`. */\n connector?: boolean;\n}\n\n/**\n * Vertical event timeline — activity feeds, order trackers, audit logs.\n * Each entry has a marker (color or custom icon), title, optional\n * description and right-aligned meta column.\n *\n * @example\n * <Timeline items={[\n * { id: \"1\", title: \"Pedido criado\", meta: \"10:24\", marker: \"primary\" },\n * { id: \"2\", title: \"Aprovação\", meta: \"10:25\", marker: \"success\" },\n * { id: \"3\", title: \"Saiu pra entrega\", meta: \"11:00\", marker: \"warning\" },\n * ]} />\n */\nexport function Timeline({ items, connector = true, className, ...props }: TimelineProps) {\n return (\n <ol className={cn(styles.timeline, className)} {...props}>\n {items.map((item, index) => {\n const isLast = index === items.length - 1;\n return (\n <li key={item.id} className={styles.item}>\n <div className={styles.markerColumn}>\n <span\n className={cn(\n styles.marker,\n MARKER_CLASS[item.marker ?? \"primary\"],\n )}\n aria-hidden=\"true\"\n >\n {item.icon}\n </span>\n {connector && !isLast && (\n <span className={styles.line} aria-hidden=\"true\" />\n )}\n </div>\n <div className={styles.body}>\n <div className={styles.row}>\n <span className={styles.title}>{item.title}</span>\n {item.meta && <span className={styles.meta}>{item.meta}</span>}\n </div>\n {item.description && (\n <p className={styles.description}>{item.description}</p>\n )}\n </div>\n </li>\n );\n })}\n </ol>\n );\n}\n"],"mappings":";;;;AAeA,IAAM,IAA+C;CACjD,SAAS,EAAO;CAChB,SAAS,EAAO;CAChB,SAAS,EAAO;CAChB,QAAQ,EAAO;CACf,SAAS,EAAO;AACpB;AAmCA,SAAgB,EAAS,EAAE,UAAO,eAAY,IAAM,cAAW,GAAG,KAAwB;CACtF,OACI,kBAAC,MAAD;EAAI,WAAW,EAAG,EAAO,UAAU,CAAS;EAAG,GAAI;EAC9C,UAAA,EAAM,KAAK,GAAM,MAAU;GACxB,IAAM,IAAS,MAAU,EAAM,SAAS;GACxC,OACI,kBAAC,MAAD;IAAkB,WAAW,EAAO;IAApC,UAAA,CACI,kBAAC,OAAD;KAAK,WAAW,EAAO;KAAvB,UAAA,CACI,kBAAC,QAAD;MACI,WAAW,EACP,EAAO,QACP,EAAa,EAAK,UAAU,UAChC;MACA,eAAY;MAEX,UAAA,EAAK;KACJ,CAAA,GACL,KAAa,CAAC,KACX,kBAAC,QAAD;MAAM,WAAW,EAAO;MAAM,eAAY;KAAQ,CAAA,CAErD;IACL,CAAA,GAAA,kBAAC,OAAD;KAAK,WAAW,EAAO;KAAvB,UAAA,CACI,kBAAC,OAAD;MAAK,WAAW,EAAO;MAAvB,UAAA,CACI,kBAAC,QAAD;OAAM,WAAW,EAAO;OAAQ,UAAA,EAAK;MAAY,CAAA,GAChD,EAAK,QAAQ,kBAAC,QAAD;OAAM,WAAW,EAAO;OAAO,UAAA,EAAK;MAAW,CAAA,CAC5D;KACJ,CAAA,GAAA,EAAK,eACF,kBAAC,KAAD;MAAG,WAAW,EAAO;MAAc,UAAA,EAAK;KAAe,CAAA,CAE1D;IACL,CAAA,CAAA;GAxBK,GAAA,EAAK,EAwBV;EAEZ,CAAC;CACD,CAAA;AAEZ"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
require("../../styles/component/Timeline.css");
|
|
2
|
-
var e=`tempest_timeline_utrkA`,t=`tempest_item_T5xdQ`,n=`tempest_markerColumn_BMe4d`,r=`tempest_marker_kmPV-`,i=`
|
|
2
|
+
var e=`tempest_timeline_utrkA`,t=`tempest_item_T5xdQ`,n=`tempest_markerColumn_BMe4d`,r=`tempest_marker_kmPV-`,i=`tempest_markerPrimary_7elrv`,a=`tempest_markerSuccess_QosJP`,o=`tempest_markerWarning_u04NG`,s=`tempest_markerDanger_xtUJj`,c=`tempest_markerNeutral_y7MKa`,l=`tempest_line_CwY-N`,u=`tempest_body_KpMJ6`,d=`tempest_row_AX2ti`,f=`tempest_title_DxfAX`,p=`tempest_meta_GU0ih`,m=`tempest_description_f9sxV`,h={timeline:e,item:t,markerColumn:n,marker:r,markerPrimary:i,markerSuccess:a,markerWarning:o,markerDanger:s,markerNeutral:c,line:l,body:u,row:d,title:f,meta:p,description:m};exports.body=u,exports.default=h,exports.description=m,exports.item=t,exports.line=l,exports.marker=r,exports.markerColumn=n,exports.markerDanger=s,exports.markerNeutral=c,exports.markerPrimary=i,exports.markerSuccess=a,exports.markerWarning=o,exports.meta=p,exports.row=d,exports.timeline=e,exports.title=f;
|
|
3
3
|
//# sourceMappingURL=Timeline.module.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timeline.module.cjs","names":[],"sources":["../../../src/components/Timeline/Timeline.module.css"],"sourcesContent":[".timeline {\n list-style: none;\n margin: 0;\n padding: 0;\n font-family: var(--tempest-font-sans);\n color: var(--tempest-text);\n}\n\n.item {\n display: flex;\n gap: var(--tempest-space-3);\n padding-bottom: var(--tempest-space-4);\n}\n\n.item:last-child {\n padding-bottom: 0;\n}\n\n.markerColumn {\n flex: 0 0 auto;\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 16px;\n padding-top: 4px;\n}\n\n.marker {\n width: 14px;\n height: 14px;\n border-radius: var(--tempest-radius-full);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 10px;\n flex: 0 0 auto;\n}\n\n.
|
|
1
|
+
{"version":3,"file":"Timeline.module.cjs","names":[],"sources":["../../../src/components/Timeline/Timeline.module.css"],"sourcesContent":[".timeline {\n list-style: none;\n margin: 0;\n padding: 0;\n font-family: var(--tempest-font-sans);\n color: var(--tempest-text);\n}\n\n.item {\n display: flex;\n gap: var(--tempest-space-3);\n padding-bottom: var(--tempest-space-4);\n}\n\n.item:last-child {\n padding-bottom: 0;\n}\n\n.markerColumn {\n flex: 0 0 auto;\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 16px;\n padding-top: 4px;\n}\n\n.marker {\n width: 14px;\n height: 14px;\n border-radius: var(--tempest-radius-full);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 10px;\n flex: 0 0 auto;\n}\n\n.markerPrimary {\n background: var(--tempest-primary);\n}\n.markerSuccess {\n background: var(--tempest-success-solid, var(--tempest-success));\n}\n.markerWarning {\n background: var(--tempest-warning-solid, var(--tempest-warning));\n}\n.markerDanger {\n background: var(--tempest-danger-solid, var(--tempest-danger));\n}\n.markerNeutral {\n background: var(--tempest-gray-400, var(--tempest-border));\n}\n\n.line {\n flex: 1 1 auto;\n width: 2px;\n background: var(--tempest-border);\n margin-top: 4px;\n}\n\n.body {\n flex: 1 1 auto;\n min-width: 0;\n}\n\n.row {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: var(--tempest-space-3);\n}\n\n.title {\n font-weight: var(--tempest-weight-medium);\n font-size: var(--tempest-text-sm);\n line-height: var(--tempest-leading-snug);\n}\n\n.meta {\n font-size: var(--tempest-text-xs);\n color: var(--tempest-text-muted);\n white-space: nowrap;\n}\n\n.description {\n margin: var(--tempest-space-1) 0 0;\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-sm);\n line-height: var(--tempest-leading-snug);\n}\n"],"mappings":";"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "../../styles/component/Timeline.css";
|
|
2
2
|
//#region src/components/Timeline/Timeline.module.css
|
|
3
|
-
var e = "tempest_timeline_utrkA", t = "tempest_item_T5xdQ", n = "tempest_markerColumn_BMe4d", r = "tempest_marker_kmPV-", i = "
|
|
3
|
+
var e = "tempest_timeline_utrkA", t = "tempest_item_T5xdQ", n = "tempest_markerColumn_BMe4d", r = "tempest_marker_kmPV-", i = "tempest_markerPrimary_7elrv", a = "tempest_markerSuccess_QosJP", o = "tempest_markerWarning_u04NG", s = "tempest_markerDanger_xtUJj", c = "tempest_markerNeutral_y7MKa", l = "tempest_line_CwY-N", u = "tempest_body_KpMJ6", d = "tempest_row_AX2ti", f = "tempest_title_DxfAX", p = "tempest_meta_GU0ih", m = "tempest_description_f9sxV", h = {
|
|
4
4
|
timeline: e,
|
|
5
5
|
item: t,
|
|
6
6
|
markerColumn: n,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timeline.module.js","names":[],"sources":["../../../src/components/Timeline/Timeline.module.css"],"sourcesContent":[".timeline {\n list-style: none;\n margin: 0;\n padding: 0;\n font-family: var(--tempest-font-sans);\n color: var(--tempest-text);\n}\n\n.item {\n display: flex;\n gap: var(--tempest-space-3);\n padding-bottom: var(--tempest-space-4);\n}\n\n.item:last-child {\n padding-bottom: 0;\n}\n\n.markerColumn {\n flex: 0 0 auto;\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 16px;\n padding-top: 4px;\n}\n\n.marker {\n width: 14px;\n height: 14px;\n border-radius: var(--tempest-radius-full);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 10px;\n flex: 0 0 auto;\n}\n\n.
|
|
1
|
+
{"version":3,"file":"Timeline.module.js","names":[],"sources":["../../../src/components/Timeline/Timeline.module.css"],"sourcesContent":[".timeline {\n list-style: none;\n margin: 0;\n padding: 0;\n font-family: var(--tempest-font-sans);\n color: var(--tempest-text);\n}\n\n.item {\n display: flex;\n gap: var(--tempest-space-3);\n padding-bottom: var(--tempest-space-4);\n}\n\n.item:last-child {\n padding-bottom: 0;\n}\n\n.markerColumn {\n flex: 0 0 auto;\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 16px;\n padding-top: 4px;\n}\n\n.marker {\n width: 14px;\n height: 14px;\n border-radius: var(--tempest-radius-full);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 10px;\n flex: 0 0 auto;\n}\n\n.markerPrimary {\n background: var(--tempest-primary);\n}\n.markerSuccess {\n background: var(--tempest-success-solid, var(--tempest-success));\n}\n.markerWarning {\n background: var(--tempest-warning-solid, var(--tempest-warning));\n}\n.markerDanger {\n background: var(--tempest-danger-solid, var(--tempest-danger));\n}\n.markerNeutral {\n background: var(--tempest-gray-400, var(--tempest-border));\n}\n\n.line {\n flex: 1 1 auto;\n width: 2px;\n background: var(--tempest-border);\n margin-top: 4px;\n}\n\n.body {\n flex: 1 1 auto;\n min-width: 0;\n}\n\n.row {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: var(--tempest-space-3);\n}\n\n.title {\n font-weight: var(--tempest-weight-medium);\n font-size: var(--tempest-text-sm);\n line-height: var(--tempest-leading-snug);\n}\n\n.meta {\n font-size: var(--tempest-text-xs);\n color: var(--tempest-text-muted);\n white-space: nowrap;\n}\n\n.description {\n margin: var(--tempest-space-1) 0 0;\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-sm);\n line-height: var(--tempest-leading-snug);\n}\n"],"mappings":";"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tour.module.cjs","names":[],"sources":["../../../src/components/Tour/Tour.module.css"],"sourcesContent":[".root {\n position: fixed;\n inset: 0;\n z-index: var(--tempest-z-modal, 1000);\n font-family: var(--tempest-font-sans);\n pointer-events: none;\n}\n\n/*\n * The dimmed area is four rectangles, each one hit-testable, so the page behind is\n * blocked while the highlighted element stays clickable. A single overlay with a\n * `box-shadow` hole looks the same and blocks nothing: a shadow is not hit-tested.\n */\n.backdrop {\n position: fixed;\n background-color: var(--tempest-tour-backdrop, rgb(0 0 0 / 55%));\n pointer-events: auto;\n}\n\n.spotlight {\n position: fixed;\n border-radius: var(--tempest-radius-md);\n box-shadow: 0 0 0 2px var(--tempest-primary);\n pointer-events: none;\n}\n\n.card {\n position: fixed;\n display: flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n width: min(22rem, calc(100vw - 2rem));\n padding: var(--tempest-space-4);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n box-shadow: var(--tempest-shadow-lg);\n color: var(--tempest-text);\n pointer-events: auto;\n}\n\n.card:focus-visible {\n outline:
|
|
1
|
+
{"version":3,"file":"Tour.module.cjs","names":[],"sources":["../../../src/components/Tour/Tour.module.css"],"sourcesContent":[".root {\n position: fixed;\n inset: 0;\n z-index: var(--tempest-z-modal, 1000);\n font-family: var(--tempest-font-sans);\n pointer-events: none;\n}\n\n/*\n * The dimmed area is four rectangles, each one hit-testable, so the page behind is\n * blocked while the highlighted element stays clickable. A single overlay with a\n * `box-shadow` hole looks the same and blocks nothing: a shadow is not hit-tested.\n */\n.backdrop {\n position: fixed;\n background-color: var(--tempest-tour-backdrop, rgb(0 0 0 / 55%));\n pointer-events: auto;\n}\n\n.spotlight {\n position: fixed;\n border-radius: var(--tempest-radius-md);\n box-shadow: 0 0 0 2px var(--tempest-primary);\n pointer-events: none;\n}\n\n.card {\n position: fixed;\n display: flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n width: min(22rem, calc(100vw - 2rem));\n padding: var(--tempest-space-4);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n box-shadow: var(--tempest-shadow-lg);\n color: var(--tempest-text);\n pointer-events: auto;\n}\n\n.card:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-2);\n}\n\n.progress {\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-xs);\n font-variant-numeric: tabular-nums;\n}\n\n.close {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 1.75rem;\n height: 1.75rem;\n padding: 0;\n border: none;\n border-radius: var(--tempest-radius-sm);\n background: none;\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-lg);\n line-height: 1;\n cursor: pointer;\n}\n\n.close:hover {\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n}\n\n.title {\n margin: 0;\n font-size: var(--tempest-text-base);\n font-weight: var(--tempest-weight-semibold);\n}\n\n.body {\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-sm);\n line-height: var(--tempest-leading-normal);\n}\n\n.footer {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-3);\n margin-block-start: var(--tempest-space-2);\n}\n\n.actions {\n display: flex;\n gap: var(--tempest-space-2);\n margin-inline-start: auto;\n}\n\n.skip {\n padding: 0;\n border: none;\n background: none;\n color: var(--tempest-text-muted);\n font: inherit;\n font-size: var(--tempest-text-xs);\n text-decoration: underline;\n cursor: pointer;\n}\n\n.primary,\n.secondary {\n padding: var(--tempest-space-2) var(--tempest-space-4);\n border-radius: var(--tempest-radius-md);\n font: inherit;\n font-size: var(--tempest-text-sm);\n font-weight: var(--tempest-weight-medium);\n cursor: pointer;\n}\n\n.primary {\n border: none;\n background-color: var(--tempest-primary);\n color: var(--tempest-primary-foreground);\n}\n\n.secondary {\n border: 1px solid var(--tempest-border);\n background-color: var(--tempest-bg);\n color: var(--tempest-text);\n}\n\n.primary:focus-visible,\n.secondary:focus-visible,\n.skip:focus-visible,\n.close:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n/* The spotlight ring is decoration; a reader who asked for less motion gets none. */\n@media (prefers-reduced-motion: no-preference) {\n .spotlight {\n transition:\n top var(--tempest-duration-base) var(--tempest-ease-out),\n left var(--tempest-duration-base) var(--tempest-ease-out),\n width var(--tempest-duration-base) var(--tempest-ease-out),\n height var(--tempest-duration-base) var(--tempest-ease-out);\n }\n\n .card {\n transition:\n top var(--tempest-duration-base) var(--tempest-ease-out),\n left var(--tempest-duration-base) var(--tempest-ease-out);\n }\n}\n"],"mappings":";"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tour.module.js","names":[],"sources":["../../../src/components/Tour/Tour.module.css"],"sourcesContent":[".root {\n position: fixed;\n inset: 0;\n z-index: var(--tempest-z-modal, 1000);\n font-family: var(--tempest-font-sans);\n pointer-events: none;\n}\n\n/*\n * The dimmed area is four rectangles, each one hit-testable, so the page behind is\n * blocked while the highlighted element stays clickable. A single overlay with a\n * `box-shadow` hole looks the same and blocks nothing: a shadow is not hit-tested.\n */\n.backdrop {\n position: fixed;\n background-color: var(--tempest-tour-backdrop, rgb(0 0 0 / 55%));\n pointer-events: auto;\n}\n\n.spotlight {\n position: fixed;\n border-radius: var(--tempest-radius-md);\n box-shadow: 0 0 0 2px var(--tempest-primary);\n pointer-events: none;\n}\n\n.card {\n position: fixed;\n display: flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n width: min(22rem, calc(100vw - 2rem));\n padding: var(--tempest-space-4);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n box-shadow: var(--tempest-shadow-lg);\n color: var(--tempest-text);\n pointer-events: auto;\n}\n\n.card:focus-visible {\n outline:
|
|
1
|
+
{"version":3,"file":"Tour.module.js","names":[],"sources":["../../../src/components/Tour/Tour.module.css"],"sourcesContent":[".root {\n position: fixed;\n inset: 0;\n z-index: var(--tempest-z-modal, 1000);\n font-family: var(--tempest-font-sans);\n pointer-events: none;\n}\n\n/*\n * The dimmed area is four rectangles, each one hit-testable, so the page behind is\n * blocked while the highlighted element stays clickable. A single overlay with a\n * `box-shadow` hole looks the same and blocks nothing: a shadow is not hit-tested.\n */\n.backdrop {\n position: fixed;\n background-color: var(--tempest-tour-backdrop, rgb(0 0 0 / 55%));\n pointer-events: auto;\n}\n\n.spotlight {\n position: fixed;\n border-radius: var(--tempest-radius-md);\n box-shadow: 0 0 0 2px var(--tempest-primary);\n pointer-events: none;\n}\n\n.card {\n position: fixed;\n display: flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n width: min(22rem, calc(100vw - 2rem));\n padding: var(--tempest-space-4);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n box-shadow: var(--tempest-shadow-lg);\n color: var(--tempest-text);\n pointer-events: auto;\n}\n\n.card:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-2);\n}\n\n.progress {\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-xs);\n font-variant-numeric: tabular-nums;\n}\n\n.close {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 1.75rem;\n height: 1.75rem;\n padding: 0;\n border: none;\n border-radius: var(--tempest-radius-sm);\n background: none;\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-lg);\n line-height: 1;\n cursor: pointer;\n}\n\n.close:hover {\n background-color: var(--tempest-surface);\n color: var(--tempest-text);\n}\n\n.title {\n margin: 0;\n font-size: var(--tempest-text-base);\n font-weight: var(--tempest-weight-semibold);\n}\n\n.body {\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-sm);\n line-height: var(--tempest-leading-normal);\n}\n\n.footer {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-3);\n margin-block-start: var(--tempest-space-2);\n}\n\n.actions {\n display: flex;\n gap: var(--tempest-space-2);\n margin-inline-start: auto;\n}\n\n.skip {\n padding: 0;\n border: none;\n background: none;\n color: var(--tempest-text-muted);\n font: inherit;\n font-size: var(--tempest-text-xs);\n text-decoration: underline;\n cursor: pointer;\n}\n\n.primary,\n.secondary {\n padding: var(--tempest-space-2) var(--tempest-space-4);\n border-radius: var(--tempest-radius-md);\n font: inherit;\n font-size: var(--tempest-text-sm);\n font-weight: var(--tempest-weight-medium);\n cursor: pointer;\n}\n\n.primary {\n border: none;\n background-color: var(--tempest-primary);\n color: var(--tempest-primary-foreground);\n}\n\n.secondary {\n border: 1px solid var(--tempest-border);\n background-color: var(--tempest-bg);\n color: var(--tempest-text);\n}\n\n.primary:focus-visible,\n.secondary:focus-visible,\n.skip:focus-visible,\n.close:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n}\n\n/* The spotlight ring is decoration; a reader who asked for less motion gets none. */\n@media (prefers-reduced-motion: no-preference) {\n .spotlight {\n transition:\n top var(--tempest-duration-base) var(--tempest-ease-out),\n left var(--tempest-duration-base) var(--tempest-ease-out),\n width var(--tempest-duration-base) var(--tempest-ease-out),\n height var(--tempest-duration-base) var(--tempest-ease-out);\n }\n\n .card {\n transition:\n top var(--tempest-duration-base) var(--tempest-ease-out),\n left var(--tempest-duration-base) var(--tempest-ease-out);\n }\n}\n"],"mappings":";"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transfer.module.cjs","names":[],"sources":["../../../src/components/Transfer/Transfer.module.css"],"sourcesContent":[".wrapper {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);\n gap: var(--tempest-space-3);\n align-items: stretch;\n font-family: var(--tempest-font-sans);\n}\n\n/*\n * The move controls sit between the panes in the grid, but come **last** in the\n * DOM: a keyboard reaching the buttons before it has seen what they act on has to\n * go back, and a screen reader reads \"move checked to the right\" with no idea what\n * is checked. Order 2 puts them back in the middle visually.\n */\n.controls {\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: var(--tempest-space-2);\n order: 2;\n}\n\n.pane {\n display: flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n min-width: 0;\n padding: var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n}\n\n.pane:first-of-type {\n order: 1;\n}\n\n.pane:last-of-type {\n order: 3;\n}\n\n.paneHeader {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-2);\n min-width: 0;\n}\n\n.paneTitle {\n display: flex;\n align-items: center;\n gap: var(--tempest-space-2);\n min-width: 0;\n}\n\n.title {\n margin: 0;\n overflow: hidden;\n color: var(--tempest-text);\n font-size: var(--tempest-text-sm);\n font-weight: var(--tempest-weight-semibold);\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.count {\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-xs);\n font-variant-numeric: tabular-nums;\n white-space: nowrap;\n}\n\n.search {\n width: 100%;\n min-width: 0;\n padding: var(--tempest-space-2) var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background-color: var(--tempest-bg);\n color: inherit;\n font: inherit;\n font-size: var(--tempest-text-sm);\n}\n\n.search:focus-visible {\n outline:
|
|
1
|
+
{"version":3,"file":"Transfer.module.cjs","names":[],"sources":["../../../src/components/Transfer/Transfer.module.css"],"sourcesContent":[".wrapper {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);\n gap: var(--tempest-space-3);\n align-items: stretch;\n font-family: var(--tempest-font-sans);\n}\n\n/*\n * The move controls sit between the panes in the grid, but come **last** in the\n * DOM: a keyboard reaching the buttons before it has seen what they act on has to\n * go back, and a screen reader reads \"move checked to the right\" with no idea what\n * is checked. Order 2 puts them back in the middle visually.\n */\n.controls {\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: var(--tempest-space-2);\n order: 2;\n}\n\n.pane {\n display: flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n min-width: 0;\n padding: var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n}\n\n.pane:first-of-type {\n order: 1;\n}\n\n.pane:last-of-type {\n order: 3;\n}\n\n.paneHeader {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-2);\n min-width: 0;\n}\n\n.paneTitle {\n display: flex;\n align-items: center;\n gap: var(--tempest-space-2);\n min-width: 0;\n}\n\n.title {\n margin: 0;\n overflow: hidden;\n color: var(--tempest-text);\n font-size: var(--tempest-text-sm);\n font-weight: var(--tempest-weight-semibold);\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.count {\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-xs);\n font-variant-numeric: tabular-nums;\n white-space: nowrap;\n}\n\n.search {\n width: 100%;\n min-width: 0;\n padding: var(--tempest-space-2) var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background-color: var(--tempest-bg);\n color: inherit;\n font: inherit;\n font-size: var(--tempest-text-sm);\n}\n\n.search:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: calc(var(--tempest-focus-ring-width) * -1);\n}\n\n.list {\n display: flex;\n flex-direction: column;\n gap: var(--tempest-space-1);\n margin: 0;\n padding: 0;\n overflow-y: auto;\n overscroll-behavior: contain;\n list-style: none;\n}\n\n.row {\n padding: var(--tempest-space-1) var(--tempest-space-2);\n border-radius: var(--tempest-radius-sm);\n font-size: var(--tempest-text-sm);\n}\n\n.row:hover {\n background-color: var(--tempest-surface);\n}\n\n.empty {\n padding: var(--tempest-space-4) var(--tempest-space-2);\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-sm);\n text-align: center;\n}\n\n.control {\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--tempest-control-height-sm);\n height: var(--tempest-control-height-sm);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background-color: var(--tempest-bg);\n color: var(--tempest-text);\n font-size: var(--tempest-text-base);\n line-height: 1;\n cursor: pointer;\n}\n\n.control:hover:not(:disabled) {\n border-color: var(--tempest-primary);\n color: var(--tempest-primary);\n}\n\n.control:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: 1px;\n}\n\n.control:disabled {\n color: var(--tempest-text-subtle);\n cursor: not-allowed;\n}\n\n/*\n * Below the md breakpoint the panes stack and the controls turn horizontal: two\n * 16rem lists side by side on a phone leave each about 150px wide, where a role\n * name wraps to three lines.\n */\n@media (max-width: 640px) {\n .wrapper {\n grid-template-columns: minmax(0, 1fr);\n }\n\n .controls {\n flex-direction: row;\n justify-content: center;\n }\n}\n"],"mappings":";"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transfer.module.js","names":[],"sources":["../../../src/components/Transfer/Transfer.module.css"],"sourcesContent":[".wrapper {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);\n gap: var(--tempest-space-3);\n align-items: stretch;\n font-family: var(--tempest-font-sans);\n}\n\n/*\n * The move controls sit between the panes in the grid, but come **last** in the\n * DOM: a keyboard reaching the buttons before it has seen what they act on has to\n * go back, and a screen reader reads \"move checked to the right\" with no idea what\n * is checked. Order 2 puts them back in the middle visually.\n */\n.controls {\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: var(--tempest-space-2);\n order: 2;\n}\n\n.pane {\n display: flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n min-width: 0;\n padding: var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n}\n\n.pane:first-of-type {\n order: 1;\n}\n\n.pane:last-of-type {\n order: 3;\n}\n\n.paneHeader {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-2);\n min-width: 0;\n}\n\n.paneTitle {\n display: flex;\n align-items: center;\n gap: var(--tempest-space-2);\n min-width: 0;\n}\n\n.title {\n margin: 0;\n overflow: hidden;\n color: var(--tempest-text);\n font-size: var(--tempest-text-sm);\n font-weight: var(--tempest-weight-semibold);\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.count {\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-xs);\n font-variant-numeric: tabular-nums;\n white-space: nowrap;\n}\n\n.search {\n width: 100%;\n min-width: 0;\n padding: var(--tempest-space-2) var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background-color: var(--tempest-bg);\n color: inherit;\n font: inherit;\n font-size: var(--tempest-text-sm);\n}\n\n.search:focus-visible {\n outline:
|
|
1
|
+
{"version":3,"file":"Transfer.module.js","names":[],"sources":["../../../src/components/Transfer/Transfer.module.css"],"sourcesContent":[".wrapper {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);\n gap: var(--tempest-space-3);\n align-items: stretch;\n font-family: var(--tempest-font-sans);\n}\n\n/*\n * The move controls sit between the panes in the grid, but come **last** in the\n * DOM: a keyboard reaching the buttons before it has seen what they act on has to\n * go back, and a screen reader reads \"move checked to the right\" with no idea what\n * is checked. Order 2 puts them back in the middle visually.\n */\n.controls {\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: var(--tempest-space-2);\n order: 2;\n}\n\n.pane {\n display: flex;\n flex-direction: column;\n gap: var(--tempest-space-2);\n min-width: 0;\n padding: var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n}\n\n.pane:first-of-type {\n order: 1;\n}\n\n.pane:last-of-type {\n order: 3;\n}\n\n.paneHeader {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--tempest-space-2);\n min-width: 0;\n}\n\n.paneTitle {\n display: flex;\n align-items: center;\n gap: var(--tempest-space-2);\n min-width: 0;\n}\n\n.title {\n margin: 0;\n overflow: hidden;\n color: var(--tempest-text);\n font-size: var(--tempest-text-sm);\n font-weight: var(--tempest-weight-semibold);\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.count {\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-xs);\n font-variant-numeric: tabular-nums;\n white-space: nowrap;\n}\n\n.search {\n width: 100%;\n min-width: 0;\n padding: var(--tempest-space-2) var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background-color: var(--tempest-bg);\n color: inherit;\n font: inherit;\n font-size: var(--tempest-text-sm);\n}\n\n.search:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: calc(var(--tempest-focus-ring-width) * -1);\n}\n\n.list {\n display: flex;\n flex-direction: column;\n gap: var(--tempest-space-1);\n margin: 0;\n padding: 0;\n overflow-y: auto;\n overscroll-behavior: contain;\n list-style: none;\n}\n\n.row {\n padding: var(--tempest-space-1) var(--tempest-space-2);\n border-radius: var(--tempest-radius-sm);\n font-size: var(--tempest-text-sm);\n}\n\n.row:hover {\n background-color: var(--tempest-surface);\n}\n\n.empty {\n padding: var(--tempest-space-4) var(--tempest-space-2);\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-sm);\n text-align: center;\n}\n\n.control {\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--tempest-control-height-sm);\n height: var(--tempest-control-height-sm);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background-color: var(--tempest-bg);\n color: var(--tempest-text);\n font-size: var(--tempest-text-base);\n line-height: 1;\n cursor: pointer;\n}\n\n.control:hover:not(:disabled) {\n border-color: var(--tempest-primary);\n color: var(--tempest-primary);\n}\n\n.control:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: 1px;\n}\n\n.control:disabled {\n color: var(--tempest-text-subtle);\n cursor: not-allowed;\n}\n\n/*\n * Below the md breakpoint the panes stack and the controls turn horizontal: two\n * 16rem lists side by side on a phone leave each about 150px wide, where a role\n * name wraps to three lines.\n */\n@media (max-width: 640px) {\n .wrapper {\n grid-template-columns: minmax(0, 1fr);\n }\n\n .controls {\n flex-direction: row;\n justify-content: center;\n }\n}\n"],"mappings":";"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualTable.module.cjs","names":[],"sources":["../../../src/components/VirtualTable/VirtualTable.module.css"],"sourcesContent":[".scroll {\n width: 100%;\n overflow: auto;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.table {\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n font-family: var(--tempest-font-sans);\n font-size: var(--tempest-text-base);\n line-height: var(--tempest-leading-snug);\n /*\n * Fixed layout is what keeps columns from jumping mid-scroll: with `auto`,\n * the browser sizes each column from the rows currently in the DOM, and a\n * virtualized table swaps those rows out as you scroll.\n */\n table-layout: fixed;\n}\n\n.caption {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border-width: 0;\n}\n\n/*\n * `border-collapse: separate` above exists for this: a sticky `<th>` inside a\n * collapsed table loses its bottom border while scrolling, because the shared\n * border belongs to the cell that scrolled away.\n */\n.head .th {\n position: sticky;\n top: 0;\n z-index: 1;\n}\n\n.th,\n.td {\n padding: 0 var(--tempest-space-4);\n text-align: left;\n border-bottom: 1px solid var(--tempest-border);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.th {\n padding-block: var(--tempest-space-3);\n background-color: var(--tempest-surface);\n color: var(--tempest-text-muted);\n font-weight: var(--tempest-weight-semibold);\n font-size: var(--tempest-text-xs);\n letter-spacing: var(--tempest-tracking-wider);\n text-transform: uppercase;\n}\n\n.alignRight {\n text-align: right;\n}\n\n.alignCenter {\n text-align: center;\n}\n\n.sortButton {\n display: inline-flex;\n align-items: center;\n gap: var(--tempest-space-1);\n padding: 0;\n border: none;\n background: none;\n color: inherit;\n font: inherit;\n letter-spacing: inherit;\n text-transform: inherit;\n cursor: pointer;\n}\n\n.sortButton:focus-visible {\n outline:
|
|
1
|
+
{"version":3,"file":"VirtualTable.module.cjs","names":[],"sources":["../../../src/components/VirtualTable/VirtualTable.module.css"],"sourcesContent":[".scroll {\n width: 100%;\n overflow: auto;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.table {\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n font-family: var(--tempest-font-sans);\n font-size: var(--tempest-text-base);\n line-height: var(--tempest-leading-snug);\n /*\n * Fixed layout is what keeps columns from jumping mid-scroll: with `auto`,\n * the browser sizes each column from the rows currently in the DOM, and a\n * virtualized table swaps those rows out as you scroll.\n */\n table-layout: fixed;\n}\n\n.caption {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border-width: 0;\n}\n\n/*\n * `border-collapse: separate` above exists for this: a sticky `<th>` inside a\n * collapsed table loses its bottom border while scrolling, because the shared\n * border belongs to the cell that scrolled away.\n */\n.head .th {\n position: sticky;\n top: 0;\n z-index: 1;\n}\n\n.th,\n.td {\n padding: 0 var(--tempest-space-4);\n text-align: left;\n border-bottom: 1px solid var(--tempest-border);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.th {\n padding-block: var(--tempest-space-3);\n background-color: var(--tempest-surface);\n color: var(--tempest-text-muted);\n font-weight: var(--tempest-weight-semibold);\n font-size: var(--tempest-text-xs);\n letter-spacing: var(--tempest-tracking-wider);\n text-transform: uppercase;\n}\n\n.alignRight {\n text-align: right;\n}\n\n.alignCenter {\n text-align: center;\n}\n\n.sortButton {\n display: inline-flex;\n align-items: center;\n gap: var(--tempest-space-1);\n padding: 0;\n border: none;\n background: none;\n color: inherit;\n font: inherit;\n letter-spacing: inherit;\n text-transform: inherit;\n cursor: pointer;\n}\n\n.sortButton:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n border-radius: var(--tempest-radius-sm);\n}\n\n.sortIndicator {\n font-size: var(--tempest-text-xs);\n opacity: 0.55;\n}\n\n.tr.clickable {\n cursor: pointer;\n transition: background-color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n@media (hover: hover) and (pointer: fine) {\n .tr.clickable:hover {\n background-color: var(--tempest-surface);\n }\n}\n\n.tr.clickable:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: calc(var(--tempest-focus-ring-width) * -1);\n}\n\n.emptyRow {\n padding: var(--tempest-space-8) var(--tempest-space-4);\n text-align: center;\n color: var(--tempest-text-muted);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .tr.clickable {\n transition: none;\n }\n}\n"],"mappings":";"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualTable.module.js","names":[],"sources":["../../../src/components/VirtualTable/VirtualTable.module.css"],"sourcesContent":[".scroll {\n width: 100%;\n overflow: auto;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.table {\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n font-family: var(--tempest-font-sans);\n font-size: var(--tempest-text-base);\n line-height: var(--tempest-leading-snug);\n /*\n * Fixed layout is what keeps columns from jumping mid-scroll: with `auto`,\n * the browser sizes each column from the rows currently in the DOM, and a\n * virtualized table swaps those rows out as you scroll.\n */\n table-layout: fixed;\n}\n\n.caption {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border-width: 0;\n}\n\n/*\n * `border-collapse: separate` above exists for this: a sticky `<th>` inside a\n * collapsed table loses its bottom border while scrolling, because the shared\n * border belongs to the cell that scrolled away.\n */\n.head .th {\n position: sticky;\n top: 0;\n z-index: 1;\n}\n\n.th,\n.td {\n padding: 0 var(--tempest-space-4);\n text-align: left;\n border-bottom: 1px solid var(--tempest-border);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.th {\n padding-block: var(--tempest-space-3);\n background-color: var(--tempest-surface);\n color: var(--tempest-text-muted);\n font-weight: var(--tempest-weight-semibold);\n font-size: var(--tempest-text-xs);\n letter-spacing: var(--tempest-tracking-wider);\n text-transform: uppercase;\n}\n\n.alignRight {\n text-align: right;\n}\n\n.alignCenter {\n text-align: center;\n}\n\n.sortButton {\n display: inline-flex;\n align-items: center;\n gap: var(--tempest-space-1);\n padding: 0;\n border: none;\n background: none;\n color: inherit;\n font: inherit;\n letter-spacing: inherit;\n text-transform: inherit;\n cursor: pointer;\n}\n\n.sortButton:focus-visible {\n outline:
|
|
1
|
+
{"version":3,"file":"VirtualTable.module.js","names":[],"sources":["../../../src/components/VirtualTable/VirtualTable.module.css"],"sourcesContent":[".scroll {\n width: 100%;\n overflow: auto;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n background-color: var(--tempest-bg);\n box-shadow: var(--tempest-shadow-xs);\n}\n\n.table {\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n font-family: var(--tempest-font-sans);\n font-size: var(--tempest-text-base);\n line-height: var(--tempest-leading-snug);\n /*\n * Fixed layout is what keeps columns from jumping mid-scroll: with `auto`,\n * the browser sizes each column from the rows currently in the DOM, and a\n * virtualized table swaps those rows out as you scroll.\n */\n table-layout: fixed;\n}\n\n.caption {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border-width: 0;\n}\n\n/*\n * `border-collapse: separate` above exists for this: a sticky `<th>` inside a\n * collapsed table loses its bottom border while scrolling, because the shared\n * border belongs to the cell that scrolled away.\n */\n.head .th {\n position: sticky;\n top: 0;\n z-index: 1;\n}\n\n.th,\n.td {\n padding: 0 var(--tempest-space-4);\n text-align: left;\n border-bottom: 1px solid var(--tempest-border);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.th {\n padding-block: var(--tempest-space-3);\n background-color: var(--tempest-surface);\n color: var(--tempest-text-muted);\n font-weight: var(--tempest-weight-semibold);\n font-size: var(--tempest-text-xs);\n letter-spacing: var(--tempest-tracking-wider);\n text-transform: uppercase;\n}\n\n.alignRight {\n text-align: right;\n}\n\n.alignCenter {\n text-align: center;\n}\n\n.sortButton {\n display: inline-flex;\n align-items: center;\n gap: var(--tempest-space-1);\n padding: 0;\n border: none;\n background: none;\n color: inherit;\n font: inherit;\n letter-spacing: inherit;\n text-transform: inherit;\n cursor: pointer;\n}\n\n.sortButton:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: var(--tempest-focus-ring-offset);\n border-radius: var(--tempest-radius-sm);\n}\n\n.sortIndicator {\n font-size: var(--tempest-text-xs);\n opacity: 0.55;\n}\n\n.tr.clickable {\n cursor: pointer;\n transition: background-color var(--tempest-duration-fast) var(--tempest-ease-out);\n}\n\n@media (hover: hover) and (pointer: fine) {\n .tr.clickable:hover {\n background-color: var(--tempest-surface);\n }\n}\n\n.tr.clickable:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: calc(var(--tempest-focus-ring-width) * -1);\n}\n\n.emptyRow {\n padding: var(--tempest-space-8) var(--tempest-space-4);\n text-align: center;\n color: var(--tempest-text-muted);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .tr.clickable {\n transition: none;\n }\n}\n"],"mappings":";"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TrajectoryMap.module.cjs","names":[],"sources":["../../src/geo/TrajectoryMap.module.css"],"sourcesContent":[".map {\n position: relative;\n width: 100%;\n overflow: hidden;\n background: var(--tempest-surface-2);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n font-family: var(--tempest-font-sans);\n}\n\n.svg {\n display: block;\n width: 100%;\n}\n\n.empty,\n.loading {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-sm);\n}\n\n.grid line {\n stroke: var(--tempest-border);\n stroke-width: 1;\n stroke-dasharray: 3 5;\n opacity: 0.5;\n}\n\n.path {\n stroke: var(--tempest-primary);\n stroke-width: 3;\n stroke-linecap: round;\n stroke-linejoin: round;\n}\n\n.start {\n fill: var(--tempest-success-solid);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.end {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.current {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.pulse {\n fill: var(--tempest-primary);\n opacity: 0.25;\n transform-origin: center;\n transform-box: fill-box;\n animation: tempest-geo-pulse 1.8s ease-out infinite;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .pulse {\n animation: none;\n }\n}\n\n@keyframes tempest-geo-pulse {\n 0% {\n transform: scale(0.6);\n opacity: 0.35;\n }\n 100% {\n transform: scale(1.6);\n opacity: 0;\n }\n}\n\n.marker {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.marker[role=\"button\"] {\n cursor: pointer;\n}\n\n.marker[role=\"button\"]:focus-visible {\n outline: none;\n stroke: var(--tempest-
|
|
1
|
+
{"version":3,"file":"TrajectoryMap.module.cjs","names":[],"sources":["../../src/geo/TrajectoryMap.module.css"],"sourcesContent":[".map {\n position: relative;\n width: 100%;\n overflow: hidden;\n background: var(--tempest-surface-2);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n font-family: var(--tempest-font-sans);\n}\n\n.svg {\n display: block;\n width: 100%;\n}\n\n.empty,\n.loading {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-sm);\n}\n\n.grid line {\n stroke: var(--tempest-border);\n stroke-width: 1;\n stroke-dasharray: 3 5;\n opacity: 0.5;\n}\n\n.path {\n stroke: var(--tempest-primary);\n stroke-width: 3;\n stroke-linecap: round;\n stroke-linejoin: round;\n}\n\n.start {\n fill: var(--tempest-success-solid);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.end {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.current {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.pulse {\n fill: var(--tempest-primary);\n opacity: 0.25;\n transform-origin: center;\n transform-box: fill-box;\n animation: tempest-geo-pulse 1.8s ease-out infinite;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .pulse {\n animation: none;\n }\n}\n\n@keyframes tempest-geo-pulse {\n 0% {\n transform: scale(0.6);\n opacity: 0.35;\n }\n 100% {\n transform: scale(1.6);\n opacity: 0;\n }\n}\n\n.marker {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.marker[role=\"button\"] {\n cursor: pointer;\n}\n\n.marker[role=\"button\"]:focus-visible {\n outline: none;\n stroke: var(--tempest-focus-ring-color);\n stroke-width: 3;\n}\n\n.scale line {\n stroke: var(--tempest-text);\n stroke-width: 2;\n}\n\n.scale text {\n fill: var(--tempest-text);\n font-size: var(--tempest-text-xs);\n font-family: var(--tempest-font-sans);\n}\n"],"mappings":";"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TrajectoryMap.module.js","names":[],"sources":["../../src/geo/TrajectoryMap.module.css"],"sourcesContent":[".map {\n position: relative;\n width: 100%;\n overflow: hidden;\n background: var(--tempest-surface-2);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n font-family: var(--tempest-font-sans);\n}\n\n.svg {\n display: block;\n width: 100%;\n}\n\n.empty,\n.loading {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-sm);\n}\n\n.grid line {\n stroke: var(--tempest-border);\n stroke-width: 1;\n stroke-dasharray: 3 5;\n opacity: 0.5;\n}\n\n.path {\n stroke: var(--tempest-primary);\n stroke-width: 3;\n stroke-linecap: round;\n stroke-linejoin: round;\n}\n\n.start {\n fill: var(--tempest-success-solid);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.end {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.current {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.pulse {\n fill: var(--tempest-primary);\n opacity: 0.25;\n transform-origin: center;\n transform-box: fill-box;\n animation: tempest-geo-pulse 1.8s ease-out infinite;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .pulse {\n animation: none;\n }\n}\n\n@keyframes tempest-geo-pulse {\n 0% {\n transform: scale(0.6);\n opacity: 0.35;\n }\n 100% {\n transform: scale(1.6);\n opacity: 0;\n }\n}\n\n.marker {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.marker[role=\"button\"] {\n cursor: pointer;\n}\n\n.marker[role=\"button\"]:focus-visible {\n outline: none;\n stroke: var(--tempest-
|
|
1
|
+
{"version":3,"file":"TrajectoryMap.module.js","names":[],"sources":["../../src/geo/TrajectoryMap.module.css"],"sourcesContent":[".map {\n position: relative;\n width: 100%;\n overflow: hidden;\n background: var(--tempest-surface-2);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-lg);\n font-family: var(--tempest-font-sans);\n}\n\n.svg {\n display: block;\n width: 100%;\n}\n\n.empty,\n.loading {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n color: var(--tempest-text-muted);\n font-size: var(--tempest-text-sm);\n}\n\n.grid line {\n stroke: var(--tempest-border);\n stroke-width: 1;\n stroke-dasharray: 3 5;\n opacity: 0.5;\n}\n\n.path {\n stroke: var(--tempest-primary);\n stroke-width: 3;\n stroke-linecap: round;\n stroke-linejoin: round;\n}\n\n.start {\n fill: var(--tempest-success-solid);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.end {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.current {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.pulse {\n fill: var(--tempest-primary);\n opacity: 0.25;\n transform-origin: center;\n transform-box: fill-box;\n animation: tempest-geo-pulse 1.8s ease-out infinite;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .pulse {\n animation: none;\n }\n}\n\n@keyframes tempest-geo-pulse {\n 0% {\n transform: scale(0.6);\n opacity: 0.35;\n }\n 100% {\n transform: scale(1.6);\n opacity: 0;\n }\n}\n\n.marker {\n fill: var(--tempest-primary);\n stroke: var(--tempest-surface);\n stroke-width: 2;\n}\n\n.marker[role=\"button\"] {\n cursor: pointer;\n}\n\n.marker[role=\"button\"]:focus-visible {\n outline: none;\n stroke: var(--tempest-focus-ring-color);\n stroke-width: 3;\n}\n\n.scale line {\n stroke: var(--tempest-text);\n stroke-width: 2;\n}\n\n.scale text {\n fill: var(--tempest-text);\n font-size: var(--tempest-text-xs);\n font-family: var(--tempest-font-sans);\n}\n"],"mappings":";"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconPicker.module.cjs","names":[],"sources":["../../src/icons/IconPicker.module.css"],"sourcesContent":[".picker {\n display: inline-flex;\n align-items: center;\n gap: var(--tempest-space-2);\n font-family: var(--tempest-font-sans);\n}\n\n.preview {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: 0 0 auto;\n width: 34px;\n height: 34px;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background: var(--tempest-surface);\n color: var(--tempest-text);\n}\n\n.input {\n flex: 1 1 auto;\n min-width: 0;\n padding: var(--tempest-space-2) var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background: var(--tempest-bg);\n color: var(--tempest-text);\n font-family: inherit;\n font-size: var(--tempest-text-sm);\n min-height: 34px;\n}\n\n.input:focus-visible {\n outline:
|
|
1
|
+
{"version":3,"file":"IconPicker.module.cjs","names":[],"sources":["../../src/icons/IconPicker.module.css"],"sourcesContent":[".picker {\n display: inline-flex;\n align-items: center;\n gap: var(--tempest-space-2);\n font-family: var(--tempest-font-sans);\n}\n\n.preview {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: 0 0 auto;\n width: 34px;\n height: 34px;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background: var(--tempest-surface);\n color: var(--tempest-text);\n}\n\n.input {\n flex: 1 1 auto;\n min-width: 0;\n padding: var(--tempest-space-2) var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background: var(--tempest-bg);\n color: var(--tempest-text);\n font-family: inherit;\n font-size: var(--tempest-text-sm);\n min-height: 34px;\n}\n\n.input:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: 1px;\n}\n\n.input[aria-invalid=\"true\"] {\n border-color: var(--tempest-danger);\n}\n"],"mappings":";"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconPicker.module.js","names":[],"sources":["../../src/icons/IconPicker.module.css"],"sourcesContent":[".picker {\n display: inline-flex;\n align-items: center;\n gap: var(--tempest-space-2);\n font-family: var(--tempest-font-sans);\n}\n\n.preview {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: 0 0 auto;\n width: 34px;\n height: 34px;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background: var(--tempest-surface);\n color: var(--tempest-text);\n}\n\n.input {\n flex: 1 1 auto;\n min-width: 0;\n padding: var(--tempest-space-2) var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background: var(--tempest-bg);\n color: var(--tempest-text);\n font-family: inherit;\n font-size: var(--tempest-text-sm);\n min-height: 34px;\n}\n\n.input:focus-visible {\n outline:
|
|
1
|
+
{"version":3,"file":"IconPicker.module.js","names":[],"sources":["../../src/icons/IconPicker.module.css"],"sourcesContent":[".picker {\n display: inline-flex;\n align-items: center;\n gap: var(--tempest-space-2);\n font-family: var(--tempest-font-sans);\n}\n\n.preview {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: 0 0 auto;\n width: 34px;\n height: 34px;\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background: var(--tempest-surface);\n color: var(--tempest-text);\n}\n\n.input {\n flex: 1 1 auto;\n min-width: 0;\n padding: var(--tempest-space-2) var(--tempest-space-3);\n border: 1px solid var(--tempest-border);\n border-radius: var(--tempest-radius-md);\n background: var(--tempest-bg);\n color: var(--tempest-text);\n font-family: inherit;\n font-size: var(--tempest-text-sm);\n min-height: 34px;\n}\n\n.input:focus-visible {\n outline: var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);\n outline-offset: 1px;\n}\n\n.input[aria-invalid=\"true\"] {\n border-color: var(--tempest-danger);\n}\n"],"mappings":";"}
|
package/dist/styles/actions.css
CHANGED
|
@@ -1,27 +1,29 @@
|
|
|
1
1
|
/* Generated by scripts/split-css.mjs — do not edit. */
|
|
2
|
-
.tempest_button_2ZuB7{justify-content:center;align-items:center;gap:var(--tempest-control-gap,var(--tempest-space-2));border-radius:var(--tempest-control-radius,var(--tempest-radius-md));font-family:var(--tempest-font-sans);font-weight:var(--tempest-weight-semibold);line-height:var(--tempest-leading-none);letter-spacing:var(--tempest-tracking-normal);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:var(--tempest-transition-base);box-shadow:var(--tempest-shadow-xs);border:1px solid #0000;text-decoration:none;display:inline-flex;position:relative}
|
|
2
|
+
.tempest_button_2ZuB7{justify-content:center;align-items:center;gap:var(--tempest-control-gap,var(--tempest-space-2));border-radius:var(--tempest-control-radius,var(--tempest-radius-md));font-family:var(--tempest-font-sans);font-weight:var(--tempest-weight-semibold);line-height:var(--tempest-leading-none);letter-spacing:var(--tempest-tracking-normal);color:var(--_tempest-button-fg);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:var(--tempest-transition-base);box-shadow:var(--tempest-shadow-xs);border:1px solid #0000;text-decoration:none;display:inline-flex;position:relative}
|
|
3
3
|
.tempest_button_2ZuB7:focus-visible{outline:var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);outline-offset:var(--tempest-focus-ring-offset)}
|
|
4
|
-
@media (hover:hover) and (pointer:fine){.tempest_button_2ZuB7:hover:not(:disabled){box-shadow:var(--tempest-shadow-sm)}}
|
|
5
|
-
.tempest_button_2ZuB7:active:not(:disabled){box-shadow:var(--tempest-shadow-xs);transform:translateY(1px)}
|
|
6
|
-
.tempest_button_2ZuB7:disabled{opacity:.55;box-shadow:none}
|
|
7
|
-
.
|
|
8
|
-
.
|
|
9
|
-
.tempest_primary_s1sM6
|
|
10
|
-
.
|
|
11
|
-
.
|
|
12
|
-
.
|
|
13
|
-
.
|
|
14
|
-
.
|
|
15
|
-
.
|
|
16
|
-
.
|
|
17
|
-
.
|
|
18
|
-
.tempest_ghost_1KINV
|
|
19
|
-
.
|
|
20
|
-
.
|
|
21
|
-
.
|
|
22
|
-
.
|
|
23
|
-
.
|
|
24
|
-
.
|
|
4
|
+
@media (hover:hover) and (pointer:fine){.tempest_button_2ZuB7:hover:not(:disabled,[aria-disabled=true]){box-shadow:var(--tempest-shadow-sm)}}
|
|
5
|
+
.tempest_button_2ZuB7:active:not(:disabled,[aria-disabled=true]){box-shadow:var(--tempest-shadow-xs);transform:translateY(1px)}
|
|
6
|
+
.tempest_button_2ZuB7:disabled,.tempest_button_2ZuB7[aria-disabled=true]{opacity:.55;box-shadow:none}
|
|
7
|
+
.tempest_button_2ZuB7[aria-disabled=true]{cursor:not-allowed}
|
|
8
|
+
a.tempest_button_2ZuB7:is(:link,:visited,:hover,:active,:focus,:not([href])){color:var(--_tempest-button-fg);text-decoration:none}
|
|
9
|
+
.tempest_primary_s1sM6{background-color:var(--tempest-primary);--_tempest-button-fg:var(--tempest-primary-foreground)}
|
|
10
|
+
.tempest_primary_s1sM6:hover:not(:disabled,[aria-disabled=true]){background-color:var(--tempest-primary-hover)}
|
|
11
|
+
.tempest_primary_s1sM6:active:not(:disabled,[aria-disabled=true]){background-color:var(--tempest-primary-active)}
|
|
12
|
+
.tempest_secondary_R0waJ{background-color:var(--tempest-surface);--_tempest-button-fg:var(--tempest-text);border-color:var(--tempest-border)}
|
|
13
|
+
.tempest_secondary_R0waJ:hover:not(:disabled,[aria-disabled=true]){background-color:var(--tempest-surface-2);border-color:var(--tempest-border-strong)}
|
|
14
|
+
.tempest_danger_V4fX8{background-color:var(--tempest-danger-solid);--_tempest-button-fg:var(--tempest-danger-on-solid)}
|
|
15
|
+
.tempest_danger_V4fX8:hover:not(:disabled,[aria-disabled=true]){background-color:var(--tempest-danger-hover)}
|
|
16
|
+
.tempest_success_w6qB6{background-color:var(--tempest-success-solid);--_tempest-button-fg:var(--tempest-success-on-solid)}
|
|
17
|
+
.tempest_success_w6qB6:hover:not(:disabled,[aria-disabled=true]){filter:brightness(.92)}
|
|
18
|
+
.tempest_ghost_1KINV{--_tempest-button-fg:var(--tempest-text);box-shadow:none;background-color:#0000}
|
|
19
|
+
.tempest_ghost_1KINV:hover:not(:disabled,[aria-disabled=true]){background-color:var(--tempest-surface);box-shadow:none}
|
|
20
|
+
.tempest_ghost_1KINV:active:not(:disabled,[aria-disabled=true]){background-color:var(--tempest-surface-2);box-shadow:none}
|
|
21
|
+
.tempest_soft_c3kzm{background-color:var(--tempest-primary-soft);--_tempest-button-fg:var(--tempest-primary-on-soft);box-shadow:none}
|
|
22
|
+
.tempest_soft_c3kzm:hover:not(:disabled,[aria-disabled=true]){background-color:var(--tempest-primary-soft-hover)}
|
|
23
|
+
.tempest_outline_F5jq-{--_tempest-button-fg:var(--tempest-primary);border-color:var(--tempest-primary);box-shadow:none;background-color:#0000}
|
|
24
|
+
.tempest_outline_F5jq-:hover:not(:disabled,[aria-disabled=true]){background-color:var(--tempest-primary-soft);--_tempest-button-fg:var(--tempest-primary-on-soft)}
|
|
25
|
+
.tempest_link_Zt5hw{--_tempest-button-fg:var(--tempest-primary);box-shadow:none;border-radius:var(--tempest-radius-sm);background-color:#0000;padding-left:0;padding-right:0}
|
|
26
|
+
.tempest_link_Zt5hw:hover:not(:disabled,[aria-disabled=true]){--_tempest-button-fg:var(--tempest-primary-hover);box-shadow:none;background:0 0;text-decoration:underline}
|
|
25
27
|
.tempest_xs_cF6m0{height:var(--tempest-control-height-xs);padding:0 var(--tempest-control-padding-xs);font-size:var(--tempest-control-font-xs)}
|
|
26
28
|
.tempest_sm_NhG0g{height:var(--tempest-control-height-sm);padding:0 var(--tempest-control-padding-sm);font-size:var(--tempest-control-font-sm)}
|
|
27
29
|
.tempest_md_hH4h3{height:var(--tempest-control-height-md);padding:0 var(--tempest-control-padding-md);font-size:var(--tempest-control-font-md)}
|
|
@@ -37,7 +39,7 @@
|
|
|
37
39
|
.tempest_pill_lx8lt{border-radius:var(--tempest-radius-full)}
|
|
38
40
|
.tempest_fullWidth_36oJT{width:100%}
|
|
39
41
|
.tempest_content_EKXmF{justify-content:center;align-items:center;gap:var(--tempest-control-gap,var(--tempest-space-2));min-width:0;display:inline-flex}
|
|
40
|
-
.tempest_loading_EQAt2 .tempest_hiddenText_hIiJ2{
|
|
42
|
+
.tempest_loading_EQAt2 .tempest_hiddenText_hIiJ2{opacity:0;pointer-events:none}
|
|
41
43
|
.tempest_spinner_ZExvW{animation:.8s linear infinite tempest_tempest-spin_UOSVC;position:absolute}
|
|
42
44
|
@keyframes tempest_tempest-spin_UOSVC{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
|
|
43
45
|
.tempest_root_5ZetV{display:inline-flex;position:relative}
|
|
@@ -58,7 +60,7 @@
|
|
|
58
60
|
@media (prefers-reduced-motion:reduce){.tempest_menu_-RiRW{animation:none}}
|
|
59
61
|
.tempest_fab_U3NIL{justify-content:center;align-items:center;gap:var(--tempest-space-2);cursor:pointer;font-family:var(--tempest-font-sans);font-weight:var(--tempest-weight-semibold);box-shadow:var(--tempest-shadow-lg);transition:background var(--tempest-duration-fast,.12s) var(--tempest-ease-out,ease-out), box-shadow var(--tempest-duration-fast,.12s) var(--tempest-ease-out,ease-out), transform var(--tempest-duration-fast,.12s) var(--tempest-ease-out,ease-out);border:0;display:inline-flex}
|
|
60
62
|
.tempest_fab_U3NIL:active{transform:scale(.96)}
|
|
61
|
-
.tempest_fab_U3NIL:focus-visible{outline:var(--tempest-focus-ring-width,2px) solid var(--tempest-focus-ring-color,
|
|
63
|
+
.tempest_fab_U3NIL:focus-visible{outline:var(--tempest-focus-ring-width,2px) solid var(--tempest-focus-ring-color,currentColor);outline-offset:var(--tempest-focus-ring-offset,2px)}
|
|
62
64
|
.tempest_fab_U3NIL:disabled{opacity:.5;cursor:not-allowed;box-shadow:var(--tempest-shadow-sm)}
|
|
63
65
|
.tempest_primary_8lnHI{background:var(--tempest-primary);color:var(--tempest-primary-foreground)}
|
|
64
66
|
.tempest_primary_8lnHI:hover:not(:disabled){background:var(--tempest-primary-active,var(--tempest-primary))}
|
package/dist/styles/base.css
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
/* Generated by scripts/split-css.mjs — do not edit. */
|
|
2
2
|
*,:before,:after{box-sizing:border-box}
|
|
3
3
|
html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;tab-size:4}
|
|
4
|
-
:where(html,body
|
|
4
|
+
:where(html,body){height:100%}
|
|
5
|
+
:where(#root){min-height:100%}
|
|
6
|
+
:where(#root:has(>:only-child)){height:100%}
|
|
5
7
|
body{background-color:var(--tempest-bg);color:var(--tempest-text);margin:0}
|
|
6
8
|
img,svg,video,canvas,audio,iframe,embed,object{max-width:100%;display:block}
|
|
7
9
|
img,video{height:auto}
|
package/dist/styles/br.css
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
.tempest_state_JV7Hu{fill:var(--tempest-surface-3);stroke:var(--tempest-border-strong);stroke-width:.75px;stroke-linejoin:round;transition:fill .12s,opacity .12s}
|
|
6
6
|
.tempest_state_JV7Hu[role=button]{cursor:pointer}
|
|
7
7
|
.tempest_state_JV7Hu[role=button]:hover{fill:var(--tempest-primary-soft)}
|
|
8
|
-
.tempest_state_JV7Hu[role=button]:focus-visible{stroke:var(--tempest-
|
|
8
|
+
.tempest_state_JV7Hu[role=button]:focus-visible{stroke:var(--tempest-focus-ring-color);stroke-width:1.5px;outline:none}
|
|
9
9
|
.tempest_selected_CNxWu{fill:var(--tempest-primary);stroke:var(--tempest-primary-active);stroke-width:1.25px}
|
|
10
10
|
.tempest_selected_CNxWu:hover{fill:var(--tempest-primary-hover)}
|
|
11
11
|
.tempest_label_PK-ES{fill:var(--tempest-text);font-size:10px;font-weight:var(--tempest-weight-medium);pointer-events:none;-webkit-user-select:none;user-select:none}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
.tempest_marker_5td7B{stroke:var(--tempest-surface);stroke-width:2px}
|
|
16
16
|
.tempest_marker_5td7B[role=button]{cursor:pointer}
|
|
17
17
|
.tempest_marker_5td7B[role=button]:hover{stroke:var(--tempest-primary-active)}
|
|
18
|
-
.tempest_marker_5td7B[role=button]:focus-visible{stroke:var(--tempest-
|
|
18
|
+
.tempest_marker_5td7B[role=button]:focus-visible{stroke:var(--tempest-focus-ring-color);stroke-width:3px;outline:none}
|
|
19
19
|
.tempest_zoomReset_IXmak{top:var(--tempest-space-2);right:var(--tempest-space-2);padding:var(--tempest-space-1) var(--tempest-space-2);font-family:var(--tempest-font-sans);font-size:var(--tempest-text-xs);color:var(--tempest-text);background:var(--tempest-surface);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-sm);cursor:pointer;position:absolute}
|
|
20
20
|
.tempest_zoomReset_IXmak:hover{background:var(--tempest-surface-2)}
|
|
21
21
|
.tempest_legend_jti9g{gap:var(--tempest-space-1);padding:var(--tempest-space-2) var(--tempest-space-3);background:var(--tempest-surface);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);font-family:var(--tempest-font-sans);font-size:var(--tempest-text-xs);color:var(--tempest-text);flex-direction:column;min-width:160px;display:inline-flex}
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
.tempest_search_iYSqC{font-family:var(--tempest-font-sans);position:relative}
|
|
30
30
|
.tempest_results_-a0Jg{z-index:10;margin:var(--tempest-space-1) 0 0;padding:var(--tempest-space-1);background:var(--tempest-surface);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);max-height:260px;box-shadow:var(--tempest-shadow-md,0 4px 12px #0000001f);list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}
|
|
31
31
|
.tempest_result_D5-no{justify-content:space-between;align-items:center;gap:var(--tempest-space-2);width:100%;padding:var(--tempest-space-2) var(--tempest-space-3);border-radius:var(--tempest-radius-sm);font-size:var(--tempest-text-sm);color:var(--tempest-text);text-align:left;cursor:pointer;background:0 0;border:none;display:flex}
|
|
32
|
-
.tempest_result_D5-no:hover,.tempest_result_D5-no
|
|
32
|
+
.tempest_result_D5-no:hover,.tempest_result_D5-no.tempest_active_qX2ct{background:var(--tempest-primary-soft)}
|
|
33
33
|
.tempest_uf_Rj15X{font-size:var(--tempest-text-xs);color:var(--tempest-text-muted);font-weight:var(--tempest-weight-medium)}
|
|
34
34
|
.tempest_pix_sx91C{align-items:center;gap:var(--tempest-space-3);font-family:var(--tempest-font-sans);flex-direction:column;display:inline-flex}
|
|
35
35
|
.tempest_symbol_tVr1U{padding:var(--tempest-space-2);border-radius:var(--tempest-radius-md);border:1px solid var(--tempest-border);background:#fff}
|
package/dist/styles/chat.css
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
.tempest_header_KYy5l{padding:var(--tempest-space-3) var(--tempest-space-4);border-bottom:1px solid var(--tempest-border);flex:none}
|
|
4
4
|
.tempest_threadWrapper_LjoF6{flex:auto;min-width:0;min-height:0;display:flex;position:relative}
|
|
5
5
|
.tempest_thread_RqELz{gap:var(--tempest-space-5);min-width:0;min-height:0;padding:var(--tempest-space-4);overscroll-behavior:contain;flex-direction:column;flex:auto;display:flex;overflow-y:auto}
|
|
6
|
-
.tempest_thread_RqELz:focus-visible{outline:
|
|
6
|
+
.tempest_thread_RqELz:focus-visible{outline:var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);outline-offset:calc(var(--tempest-focus-ring-width) * -1)}
|
|
7
7
|
.tempest_jump_oBKxQ{right:var(--tempest-space-4);bottom:var(--tempest-space-3);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-full);background-color:var(--tempest-surface);width:2rem;height:2rem;color:var(--tempest-text);box-shadow:var(--tempest-shadow-md);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute}
|
|
8
8
|
.tempest_jump_oBKxQ:focus-visible{outline:var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);outline-offset:2px}
|
|
9
9
|
@media (pointer:coarse){.tempest_jump_oBKxQ:after{content:"";position:absolute;inset:-6px}}
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
@media (prefers-reduced-motion:reduce){.tempest_actions_SZnxe .tempest_action_YPvQH{transition:none}}
|
|
55
55
|
.tempest_editor_rk4hA{gap:var(--tempest-space-2);flex-direction:column;width:100%;max-width:min(85%,36rem);display:flex}
|
|
56
56
|
.tempest_editField_Z9neJ{width:100%;padding:var(--tempest-space-2) var(--tempest-space-3);border:1px solid var(--tempest-primary);border-radius:var(--tempest-radius-lg);background-color:var(--tempest-bg);color:var(--tempest-text);font:inherit;font-size:var(--tempest-text-sm);line-height:var(--tempest-leading-normal);resize:vertical}
|
|
57
|
-
.tempest_editField_Z9neJ:focus-visible{outline:
|
|
57
|
+
.tempest_editField_Z9neJ:focus-visible{outline:var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);outline-offset:calc(var(--tempest-focus-ring-width) * -1)}
|
|
58
58
|
.tempest_editActions_vfC0b{justify-content:flex-end;gap:var(--tempest-space-2);display:flex}
|
|
59
59
|
.tempest_ghost_S1yuC{padding:var(--tempest-space-1) var(--tempest-space-3);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);color:var(--tempest-text);font:inherit;font-size:var(--tempest-text-sm);cursor:pointer;background-color:#0000}
|
|
60
60
|
.tempest_primary_wZ-Wu{padding:var(--tempest-space-1) var(--tempest-space-3);border-radius:var(--tempest-radius-md);background-color:var(--tempest-primary);color:var(--tempest-primary-foreground);font:inherit;font-size:var(--tempest-text-sm);font-weight:var(--tempest-weight-medium);cursor:pointer;border:none}
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
.tempest_suggestion_4NYhq:focus-visible{outline:var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);outline-offset:2px}
|
|
67
67
|
.tempest_composer_AaB1Q{gap:var(--tempest-space-1);padding:var(--tempest-space-3) var(--tempest-space-4);border-top:1px solid var(--tempest-border);flex-direction:column;flex:none;display:flex}
|
|
68
68
|
.tempest_composerBox_Fz-GG{align-items:flex-end;gap:var(--tempest-space-2);max-width:var(--tempest-ai-chat-width,48rem);width:100%;padding:var(--tempest-space-2);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-lg);background-color:var(--tempest-surface);margin-inline:auto;display:flex}
|
|
69
|
-
.tempest_composerBox_Fz-GG:focus-within{border-color:var(--tempest-primary)}
|
|
69
|
+
.tempest_composerBox_Fz-GG:focus-within{border-color:var(--tempest-primary);box-shadow:0 0 0 var(--tempest-focus-ring-width) var(--tempest-focus-ring-color)}
|
|
70
70
|
.tempest_field_7m1Pa{min-width:0;padding:var(--tempest-space-1) var(--tempest-space-2);color:inherit;font:inherit;font-size:var(--tempest-text-sm);line-height:var(--tempest-leading-normal);resize:none;background:0 0;border:none;flex:auto}
|
|
71
71
|
.tempest_field_7m1Pa:focus-visible{outline:none}
|
|
72
72
|
.tempest_field_7m1Pa:disabled{color:var(--tempest-text-subtle);cursor:not-allowed}
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
.tempest_panel_xUVw0{min-width:0;min-height:0;height:var(--tempest-chat-height,100%);background-color:var(--tempest-bg);color:var(--tempest-text);font-family:var(--tempest-font-sans);flex-direction:column;display:flex}
|
|
81
81
|
.tempest_header_muoPu{padding:var(--tempest-space-3) var(--tempest-space-4);border-bottom:1px solid var(--tempest-border);flex:none}
|
|
82
82
|
.tempest_thread_-j8yS{gap:var(--tempest-space-3);min-height:0;padding:var(--tempest-space-4);overscroll-behavior:contain;flex-direction:column;flex:auto;display:flex;overflow-y:auto}
|
|
83
|
-
.tempest_thread_-j8yS:focus-visible{outline:
|
|
83
|
+
.tempest_thread_-j8yS:focus-visible{outline:var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);outline-offset:calc(var(--tempest-focus-ring-width) * -1)}
|
|
84
84
|
.tempest_day_uLsWA{align-items:center;gap:var(--tempest-space-3);display:flex}
|
|
85
85
|
.tempest_day_uLsWA:before,.tempest_day_uLsWA:after{background-color:var(--tempest-border);content:"";flex:auto;height:1px}
|
|
86
86
|
.tempest_dayLabel_m8rDy{color:var(--tempest-text-subtle);font-size:var(--tempest-text-xs);text-transform:capitalize}
|
|
@@ -133,7 +133,7 @@
|
|
|
133
133
|
.tempest_typing_zdp3O{padding:0 var(--tempest-space-4) var(--tempest-space-2);color:var(--tempest-text-subtle);font-size:var(--tempest-text-xs);flex:none;margin:0}
|
|
134
134
|
.tempest_composer_krOGl{align-items:flex-end;gap:var(--tempest-space-2);padding:var(--tempest-space-3) var(--tempest-space-4);border-top:1px solid var(--tempest-border);flex:none;display:flex}
|
|
135
135
|
.tempest_field_fBY-q{min-width:0;padding:var(--tempest-space-2) var(--tempest-space-3);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);color:inherit;font:inherit;font-size:var(--tempest-text-sm);line-height:var(--tempest-leading-normal);resize:none;flex:auto}
|
|
136
|
-
.tempest_field_fBY-q:focus-visible{outline:
|
|
136
|
+
.tempest_field_fBY-q:focus-visible{outline:var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);outline-offset:calc(var(--tempest-focus-ring-width) * -1)}
|
|
137
137
|
.tempest_field_fBY-q:disabled{background-color:var(--tempest-surface-2);color:var(--tempest-text-subtle);cursor:not-allowed}
|
|
138
138
|
.tempest_composerActions_MYwQx{align-items:center;gap:var(--tempest-space-2);display:flex}
|
|
139
139
|
.tempest_send_NwcaR{padding:var(--tempest-space-2) var(--tempest-space-4);border-radius:var(--tempest-radius-md);background-color:var(--tempest-primary);color:var(--tempest-primary-foreground);font:inherit;font-size:var(--tempest-text-sm);font-weight:var(--tempest-weight-medium);cursor:pointer;border:none}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
.tempest_header_KYy5l{padding:var(--tempest-space-3) var(--tempest-space-4);border-bottom:1px solid var(--tempest-border);flex:none}
|
|
4
4
|
.tempest_threadWrapper_LjoF6{flex:auto;min-width:0;min-height:0;display:flex;position:relative}
|
|
5
5
|
.tempest_thread_RqELz{gap:var(--tempest-space-5);min-width:0;min-height:0;padding:var(--tempest-space-4);overscroll-behavior:contain;flex-direction:column;flex:auto;display:flex;overflow-y:auto}
|
|
6
|
-
.tempest_thread_RqELz:focus-visible{outline:
|
|
6
|
+
.tempest_thread_RqELz:focus-visible{outline:var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);outline-offset:calc(var(--tempest-focus-ring-width) * -1)}
|
|
7
7
|
.tempest_jump_oBKxQ{right:var(--tempest-space-4);bottom:var(--tempest-space-3);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-full);background-color:var(--tempest-surface);width:2rem;height:2rem;color:var(--tempest-text);box-shadow:var(--tempest-shadow-md);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute}
|
|
8
8
|
.tempest_jump_oBKxQ:focus-visible{outline:var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);outline-offset:2px}
|
|
9
9
|
@media (pointer:coarse){.tempest_jump_oBKxQ:after{content:"";position:absolute;inset:-6px}}
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
@media (prefers-reduced-motion:reduce){.tempest_actions_SZnxe .tempest_action_YPvQH{transition:none}}
|
|
55
55
|
.tempest_editor_rk4hA{gap:var(--tempest-space-2);flex-direction:column;width:100%;max-width:min(85%,36rem);display:flex}
|
|
56
56
|
.tempest_editField_Z9neJ{width:100%;padding:var(--tempest-space-2) var(--tempest-space-3);border:1px solid var(--tempest-primary);border-radius:var(--tempest-radius-lg);background-color:var(--tempest-bg);color:var(--tempest-text);font:inherit;font-size:var(--tempest-text-sm);line-height:var(--tempest-leading-normal);resize:vertical}
|
|
57
|
-
.tempest_editField_Z9neJ:focus-visible{outline:
|
|
57
|
+
.tempest_editField_Z9neJ:focus-visible{outline:var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);outline-offset:calc(var(--tempest-focus-ring-width) * -1)}
|
|
58
58
|
.tempest_editActions_vfC0b{justify-content:flex-end;gap:var(--tempest-space-2);display:flex}
|
|
59
59
|
.tempest_ghost_S1yuC{padding:var(--tempest-space-1) var(--tempest-space-3);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);color:var(--tempest-text);font:inherit;font-size:var(--tempest-text-sm);cursor:pointer;background-color:#0000}
|
|
60
60
|
.tempest_primary_wZ-Wu{padding:var(--tempest-space-1) var(--tempest-space-3);border-radius:var(--tempest-radius-md);background-color:var(--tempest-primary);color:var(--tempest-primary-foreground);font:inherit;font-size:var(--tempest-text-sm);font-weight:var(--tempest-weight-medium);cursor:pointer;border:none}
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
.tempest_suggestion_4NYhq:focus-visible{outline:var(--tempest-focus-ring-width) solid var(--tempest-focus-ring-color);outline-offset:2px}
|
|
67
67
|
.tempest_composer_AaB1Q{gap:var(--tempest-space-1);padding:var(--tempest-space-3) var(--tempest-space-4);border-top:1px solid var(--tempest-border);flex-direction:column;flex:none;display:flex}
|
|
68
68
|
.tempest_composerBox_Fz-GG{align-items:flex-end;gap:var(--tempest-space-2);max-width:var(--tempest-ai-chat-width,48rem);width:100%;padding:var(--tempest-space-2);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-lg);background-color:var(--tempest-surface);margin-inline:auto;display:flex}
|
|
69
|
-
.tempest_composerBox_Fz-GG:focus-within{border-color:var(--tempest-primary)}
|
|
69
|
+
.tempest_composerBox_Fz-GG:focus-within{border-color:var(--tempest-primary);box-shadow:0 0 0 var(--tempest-focus-ring-width) var(--tempest-focus-ring-color)}
|
|
70
70
|
.tempest_field_7m1Pa{min-width:0;padding:var(--tempest-space-1) var(--tempest-space-2);color:inherit;font:inherit;font-size:var(--tempest-text-sm);line-height:var(--tempest-leading-normal);resize:none;background:0 0;border:none;flex:auto}
|
|
71
71
|
.tempest_field_7m1Pa:focus-visible{outline:none}
|
|
72
72
|
.tempest_field_7m1Pa:disabled{color:var(--tempest-text-subtle);cursor:not-allowed}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
.tempest_bar_SHqWS.tempest_centered_S0CCw{grid-template-columns:1fr auto 1fr}
|
|
4
4
|
.tempest_bar_SHqWS.tempest_surface_fusKb{background:var(--tempest-surface);color:var(--tempest-text)}
|
|
5
5
|
.tempest_bar_SHqWS.tempest_primary_QcCyN{background:var(--tempest-primary);color:var(--tempest-primary-foreground)}
|
|
6
|
+
.tempest_bar_SHqWS.tempest_inverse_Icool{background:var(--tempest-bg);color:var(--tempest-text)}
|
|
6
7
|
.tempest_bar_SHqWS.tempest_transparent_uGrsu{color:inherit;background:0 0}
|
|
7
8
|
.tempest_bar_SHqWS.tempest_bordered_5M9FZ{border-bottom:1px solid var(--tempest-border)}
|
|
8
9
|
.tempest_bar_SHqWS.tempest_sticky_DStUO{z-index:30;position:sticky;top:0}
|