@brainfish-ai/components 0.26.0 → 0.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/alert-dialog.d.ts +6 -2
- package/dist/button.d.ts +4 -2
- package/dist/chat-search.d.ts +14 -1
- package/dist/confirm-dialog.d.ts +3 -1
- package/dist/convos.d.ts +3 -0
- package/dist/esm/chunks/ChatSearch.bblH7kYY.js +95 -0
- package/dist/esm/chunks/ChatSearch.bblH7kYY.js.map +1 -0
- package/dist/esm/chunks/Conversation.CuRp-tJL.js +22 -0
- package/dist/esm/chunks/{Conversation.BriXFYqU.js.map → Conversation.CuRp-tJL.js.map} +1 -1
- package/dist/esm/chunks/FormattedMessage.XNMN23hm.js +23 -0
- package/dist/esm/chunks/FormattedMessage.XNMN23hm.js.map +1 -0
- package/dist/esm/chunks/MermaidDiagram.PRgXQ5Yh.js +2 -0
- package/dist/esm/chunks/{MermaidDiagram.xQ0CVFOI.js.map → MermaidDiagram.PRgXQ5Yh.js.map} +1 -1
- package/dist/esm/chunks/_commonjsHelpers.lGe4XDVY.js +2 -0
- package/dist/esm/chunks/_commonjsHelpers.lGe4XDVY.js.map +1 -0
- package/dist/esm/chunks/button.D_2SonNs.js +3 -0
- package/dist/esm/chunks/button.D_2SonNs.js.map +1 -0
- package/dist/esm/chunks/chart.BDL2tf-S.js +10 -0
- package/dist/esm/chunks/{chart.4ZbtBMmR.js.map → chart.BDL2tf-S.js.map} +1 -1
- package/dist/esm/chunks/chat-logo.CqPppEb9.js +3 -0
- package/dist/esm/chunks/chat-logo.CqPppEb9.js.map +1 -0
- package/dist/esm/chunks/combobox.MyoPH18G.js +6 -0
- package/dist/esm/chunks/{combobox.CJKym3Z1.js.map → combobox.MyoPH18G.js.map} +1 -1
- package/dist/esm/chunks/dark.DuW7JuAk.js +2 -0
- package/dist/esm/chunks/{dark.Cq2RCgy4.js.map → dark.DuW7JuAk.js.map} +1 -1
- package/dist/esm/chunks/data-table.CJOR-1Kf.js +5 -0
- package/dist/esm/chunks/{data-table.DbcAYxMY.js.map → data-table.CJOR-1Kf.js.map} +1 -1
- package/dist/esm/chunks/date-picker.C2VT_rZ9.js +4 -0
- package/dist/esm/chunks/{date-picker._cBTpdEK.js.map → date-picker.C2VT_rZ9.js.map} +1 -1
- package/dist/esm/chunks/extends.DPdBf6DS.js +2 -0
- package/dist/esm/chunks/extends.DPdBf6DS.js.map +1 -0
- package/dist/esm/chunks/feature-flags.DOcVlPHk.js +3 -0
- package/dist/esm/chunks/{feature-flags.DeDEcnd1.js.map → feature-flags.DOcVlPHk.js.map} +1 -1
- package/dist/esm/chunks/feedback.CLMuSvsg.js +13 -0
- package/dist/esm/chunks/{feedback.W2OzN-5r.js.map → feedback.CLMuSvsg.js.map} +1 -1
- package/dist/esm/chunks/file-upload-status.D8RhMcbO.js +8 -0
- package/dist/esm/chunks/{file-upload-status.DP2iuttI.js.map → file-upload-status.D8RhMcbO.js.map} +1 -1
- package/dist/esm/chunks/filters.BHp3ukNW.js +22 -0
- package/dist/esm/chunks/{filters.-7vSLEQ2.js.map → filters.BHp3ukNW.js.map} +1 -1
- package/dist/esm/chunks/font-picker.B9GPXyK4.js +6 -0
- package/dist/esm/chunks/{font-picker.DisEoE8a.js.map → font-picker.B9GPXyK4.js.map} +1 -1
- package/dist/esm/chunks/formatDate.D2xEZm8f.js +2 -0
- package/dist/esm/chunks/{formatDate.CWN6IFKq.js.map → formatDate.D2xEZm8f.js.map} +1 -1
- package/dist/esm/chunks/formatNumber.DhVn228t.js +2 -0
- package/dist/esm/chunks/{formatNumber.Bm2k8QrT.js.map → formatNumber.DhVn228t.js.map} +1 -1
- package/dist/esm/chunks/generating-star.BN9p_FDu.js +7 -0
- package/dist/esm/chunks/generating-star.BN9p_FDu.js.map +1 -0
- package/dist/esm/chunks/header-nav.DdOXbPSM.js +10 -0
- package/dist/esm/chunks/{header-nav.b4hvOsKc.js.map → header-nav.DdOXbPSM.js.map} +1 -1
- package/dist/esm/chunks/header-pane.DrVjpN5S.js +20 -0
- package/dist/esm/chunks/{header-pane.BFXHXxVn.js.map → header-pane.DrVjpN5S.js.map} +1 -1
- package/dist/esm/chunks/hooks.BQTKhHSv.js +2 -0
- package/dist/esm/chunks/hooks.BQTKhHSv.js.map +1 -0
- package/dist/esm/chunks/index.uF4ME3WQ.js +4 -0
- package/dist/esm/chunks/{index.BqibIWDw.js.map → index.uF4ME3WQ.js.map} +1 -1
- package/dist/esm/chunks/input-with-tags.DLv9e0XI.js +5 -0
- package/dist/esm/chunks/{input-with-tags.tg2nhPFv.js.map → input-with-tags.DLv9e0XI.js.map} +1 -1
- package/dist/esm/chunks/logo.CketsPBx.js +5 -0
- package/dist/esm/chunks/{logo.D5BMN6Db.js.map → logo.CketsPBx.js.map} +1 -1
- package/dist/esm/chunks/primary.CMQbo1GJ.js +2 -0
- package/dist/esm/chunks/{primary.CtiRZbqq.js.map → primary.CMQbo1GJ.js.map} +1 -1
- package/dist/esm/chunks/review-list.Cn5bw-lP.js +6 -0
- package/dist/esm/chunks/review-list.Cn5bw-lP.js.map +1 -0
- package/dist/esm/chunks/sidebar.DsEgGwJU.js +25 -0
- package/dist/esm/chunks/sidebar.DsEgGwJU.js.map +1 -0
- package/dist/esm/chunks/simpleSelect.DK1qZSXM.js +3 -0
- package/dist/esm/chunks/{simpleSelect.B1rktKkt.js.map → simpleSelect.DK1qZSXM.js.map} +1 -1
- package/dist/esm/chunks/status-badge.BLB0pWDn.js +3 -0
- package/dist/esm/chunks/status-badge.BLB0pWDn.js.map +1 -0
- package/dist/esm/chunks/trend-value.BPBDBsk2.js +3 -0
- package/dist/esm/chunks/{trend-value.COSukPwk.js.map → trend-value.BPBDBsk2.js.map} +1 -1
- package/dist/esm/chunks/two-level-combobox.DJYP--W9.js +8 -0
- package/dist/esm/chunks/{two-level-combobox.BXs2z9u5.js.map → two-level-combobox.DJYP--W9.js.map} +1 -1
- package/dist/esm/chunks/useChartDateFormatters.Dx2h5AAm.js +2 -0
- package/dist/esm/chunks/{useChartDateFormatters.DS9ASgFO.js.map → useChartDateFormatters.Dx2h5AAm.js.map} +1 -1
- package/dist/esm/chunks/utils.C6Qu-kwd.js +2 -0
- package/dist/esm/chunks/{utils.Cwtlq8dh.js.map → utils.C6Qu-kwd.js.map} +1 -1
- package/dist/esm/colors.js +1 -169
- package/dist/esm/colors.js.map +1 -1
- package/dist/esm/components/article-suggestions-banner.js +4 -53
- package/dist/esm/components/article-suggestions-banner.js.map +1 -1
- package/dist/esm/components/articles-coverage.js +4 -116
- package/dist/esm/components/articles-coverage.js.map +1 -1
- package/dist/esm/components/articles-updated.js +4 -74
- package/dist/esm/components/articles-updated.js.map +1 -1
- package/dist/esm/components/breadcrumbs.js +3 -13
- package/dist/esm/components/breadcrumbs.js.map +1 -1
- package/dist/esm/components/chart-area-linear.js +6 -66
- package/dist/esm/components/chart-area-linear.js.map +1 -1
- package/dist/esm/components/chart-radial-stacked.js +2 -48
- package/dist/esm/components/chart-radial-stacked.js.map +1 -1
- package/dist/esm/components/chat-search.js +1 -1
- package/dist/esm/components/combobox.js +1 -1
- package/dist/esm/components/confirm-dialog.js +2 -47
- package/dist/esm/components/confirm-dialog.js.map +1 -1
- package/dist/esm/components/conversation.js +1 -1
- package/dist/esm/components/convos.js +27 -607
- package/dist/esm/components/convos.js.map +1 -1
- package/dist/esm/components/data-table.js +1 -1
- package/dist/esm/components/date-picker.js +1 -1
- package/dist/esm/components/discoveries-created.js +4 -64
- package/dist/esm/components/discoveries-created.js.map +1 -1
- package/dist/esm/components/feedback.js +1 -1
- package/dist/esm/components/file-upload.js +1 -1
- package/dist/esm/components/filter.js +1 -1
- package/dist/esm/components/font-picker.js +1 -1
- package/dist/esm/components/generating-star.js +1 -1
- package/dist/esm/components/input-with-tags.js +1 -1
- package/dist/esm/components/logo.js +1 -1
- package/dist/esm/components/markdown.js +1 -2
- package/dist/esm/components/markdown.js.map +1 -1
- package/dist/esm/components/metric-card.js +3 -29
- package/dist/esm/components/metric-card.js.map +1 -1
- package/dist/esm/components/select.js +1 -1
- package/dist/esm/components/trend-value.js +1 -1
- package/dist/esm/components/two-level-combobox.js +1 -1
- package/dist/esm/components/ui/accordion.js +7 -46
- package/dist/esm/components/ui/accordion.js.map +1 -1
- package/dist/esm/components/ui/alert-dialog.js +3 -114
- package/dist/esm/components/ui/alert-dialog.js.map +1 -1
- package/dist/esm/components/ui/alert.js +4 -103
- package/dist/esm/components/ui/alert.js.map +1 -1
- package/dist/esm/components/ui/avatar.js +7 -89
- package/dist/esm/components/ui/avatar.js.map +1 -1
- package/dist/esm/components/ui/badge.js +2 -26
- package/dist/esm/components/ui/badge.js.map +1 -1
- package/dist/esm/components/ui/breadcrumb.js +4 -60
- package/dist/esm/components/ui/breadcrumb.js.map +1 -1
- package/dist/esm/components/ui/button-group.js +4 -88
- package/dist/esm/components/ui/button-group.js.map +1 -1
- package/dist/esm/components/ui/button.js +1 -5
- package/dist/esm/components/ui/button.js.map +1 -1
- package/dist/esm/components/ui/calendar.js +2 -20
- package/dist/esm/components/ui/calendar.js.map +1 -1
- package/dist/esm/components/ui/card.js +1 -55
- package/dist/esm/components/ui/card.js.map +1 -1
- package/dist/esm/components/ui/collapsible.js +1 -33
- package/dist/esm/components/ui/collapsible.js.map +1 -1
- package/dist/esm/components/ui/combobox.js +1 -1
- package/dist/esm/components/ui/command.js +2 -79
- package/dist/esm/components/ui/command.js.map +1 -1
- package/dist/esm/components/ui/dialog.js +4 -60
- package/dist/esm/components/ui/dialog.js.map +1 -1
- package/dist/esm/components/ui/div-button.js +2 -61
- package/dist/esm/components/ui/div-button.js.map +1 -1
- package/dist/esm/components/ui/dropdown-menu.js +3 -114
- package/dist/esm/components/ui/dropdown-menu.js.map +1 -1
- package/dist/esm/components/ui/icon.js +2 -25
- package/dist/esm/components/ui/icon.js.map +1 -1
- package/dist/esm/components/ui/input.js +4 -47
- package/dist/esm/components/ui/input.js.map +1 -1
- package/dist/esm/components/ui/item.js +11 -140
- package/dist/esm/components/ui/item.js.map +1 -1
- package/dist/esm/components/ui/label.js +1 -19
- package/dist/esm/components/ui/label.js.map +1 -1
- package/dist/esm/components/ui/popover.js +1 -31
- package/dist/esm/components/ui/popover.js.map +1 -1
- package/dist/esm/components/ui/progress.js +2 -22
- package/dist/esm/components/ui/progress.js.map +1 -1
- package/dist/esm/components/ui/scroll-area.js +2 -32
- package/dist/esm/components/ui/scroll-area.js.map +1 -1
- package/dist/esm/components/ui/select.js +5 -66
- package/dist/esm/components/ui/select.js.map +1 -1
- package/dist/esm/components/ui/separator.js +1 -23
- package/dist/esm/components/ui/separator.js.map +1 -1
- package/dist/esm/components/ui/sheet.js +3 -62
- package/dist/esm/components/ui/sheet.js.map +1 -1
- package/dist/esm/components/ui/spinner.js +2 -17
- package/dist/esm/components/ui/spinner.js.map +1 -1
- package/dist/esm/components/ui/switch.js +2 -26
- package/dist/esm/components/ui/switch.js.map +1 -1
- package/dist/esm/components/ui/table.js +1 -82
- package/dist/esm/components/ui/table.js.map +1 -1
- package/dist/esm/components/ui/textarea.js +1 -33
- package/dist/esm/components/ui/textarea.js.map +1 -1
- package/dist/esm/components/ui/tooltip.js +3 -31
- package/dist/esm/components/ui/tooltip.js.map +1 -1
- package/dist/esm/global.css +1 -1
- package/dist/esm/index.js +1 -53
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/layouts/full-layout.js +1 -1
- package/dist/esm/layouts/header-nav.js +1 -1
- package/dist/esm/layouts/sidebar.js +1 -1
- package/dist/esm/logos/microsoft-logo.js +6 -66
- package/dist/esm/logos/microsoft-logo.js.map +1 -1
- package/dist/esm/logos/microsoft-teams-logo.js +12 -112
- package/dist/esm/logos/microsoft-teams-logo.js.map +1 -1
- package/dist/esm/logos/slack-logo.js +3 -39
- package/dist/esm/logos/slack-logo.js.map +1 -1
- package/dist/esm/scenes/knowledge-review.js +17 -380
- package/dist/esm/scenes/knowledge-review.js.map +1 -1
- package/dist/esm/tailwind.preset.js +1 -1526
- package/dist/esm/tailwind.preset.js.map +1 -1
- package/dist/index.d.ts +32 -5
- package/dist/logo.d.ts +9 -0
- package/dist/stats.html +47 -46
- package/package.json +17 -18
- package/tailwind.preset.ts +1 -0
- package/dist/esm/chunks/ChatSearch.CeQrTOVx.js +0 -6825
- package/dist/esm/chunks/ChatSearch.CeQrTOVx.js.map +0 -1
- package/dist/esm/chunks/Conversation.BriXFYqU.js +0 -831
- package/dist/esm/chunks/FormattedMessage.CRbM-hF6.js +0 -39715
- package/dist/esm/chunks/FormattedMessage.CRbM-hF6.js.map +0 -1
- package/dist/esm/chunks/MermaidDiagram.xQ0CVFOI.js +0 -50
- package/dist/esm/chunks/_commonjsHelpers.BFTU3MAI.js +0 -8
- package/dist/esm/chunks/_commonjsHelpers.BFTU3MAI.js.map +0 -1
- package/dist/esm/chunks/button.DQL6gCAt.js +0 -48
- package/dist/esm/chunks/button.DQL6gCAt.js.map +0 -1
- package/dist/esm/chunks/chart.4ZbtBMmR.js +0 -199
- package/dist/esm/chunks/combobox.CJKym3Z1.js +0 -95
- package/dist/esm/chunks/dark.Cq2RCgy4.js +0 -18
- package/dist/esm/chunks/data-table.DbcAYxMY.js +0 -102
- package/dist/esm/chunks/date-picker._cBTpdEK.js +0 -26
- package/dist/esm/chunks/extends.mO86zOh3.js +0 -12
- package/dist/esm/chunks/extends.mO86zOh3.js.map +0 -1
- package/dist/esm/chunks/feature-flags.DeDEcnd1.js +0 -22
- package/dist/esm/chunks/feedback.W2OzN-5r.js +0 -214
- package/dist/esm/chunks/file-upload-status.DP2iuttI.js +0 -141
- package/dist/esm/chunks/filters.-7vSLEQ2.js +0 -565
- package/dist/esm/chunks/font-picker.DisEoE8a.js +0 -181
- package/dist/esm/chunks/formatDate.CWN6IFKq.js +0 -952
- package/dist/esm/chunks/formatNumber.Bm2k8QrT.js +0 -10
- package/dist/esm/chunks/generating-star.DMDPNTaM.js +0 -1501
- package/dist/esm/chunks/generating-star.DMDPNTaM.js.map +0 -1
- package/dist/esm/chunks/header-nav.b4hvOsKc.js +0 -197
- package/dist/esm/chunks/header-pane.BFXHXxVn.js +0 -559
- package/dist/esm/chunks/hooks.BWVaVAT-.js +0 -343
- package/dist/esm/chunks/hooks.BWVaVAT-.js.map +0 -1
- package/dist/esm/chunks/index.BqibIWDw.js +0 -137
- package/dist/esm/chunks/input-with-tags.tg2nhPFv.js +0 -110
- package/dist/esm/chunks/logo.D5BMN6Db.js +0 -191
- package/dist/esm/chunks/primary.CtiRZbqq.js +0 -18
- package/dist/esm/chunks/review-list.BtSnfpSc.js +0 -117
- package/dist/esm/chunks/review-list.BtSnfpSc.js.map +0 -1
- package/dist/esm/chunks/sidebar.BamKohb5.js +0 -803
- package/dist/esm/chunks/sidebar.BamKohb5.js.map +0 -1
- package/dist/esm/chunks/simpleSelect.B1rktKkt.js +0 -23
- package/dist/esm/chunks/status-badge.eFJ1PYeb.js +0 -18
- package/dist/esm/chunks/status-badge.eFJ1PYeb.js.map +0 -1
- package/dist/esm/chunks/trend-value.COSukPwk.js +0 -51
- package/dist/esm/chunks/two-level-combobox.BXs2z9u5.js +0 -132
- package/dist/esm/chunks/useChartDateFormatters.DS9ASgFO.js +0 -11
- package/dist/esm/chunks/utils.Cwtlq8dh.js +0 -45
|
@@ -1,30 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import { Tooltip, TooltipTrigger, TooltipContent } from './ui/tooltip.js';
|
|
5
|
-
import { c as cn } from '../chunks/utils.Cwtlq8dh.js';
|
|
6
|
-
import { f as formatNumber } from '../chunks/formatNumber.Bm2k8QrT.js';
|
|
7
|
-
|
|
8
|
-
const description = "A card to display metrics and its trend";
|
|
9
|
-
function MetricCard({ title, value, trend, trendValue, className }) {
|
|
10
|
-
let formattedValue = formatNumber(Number(value));
|
|
11
|
-
if (isNaN(Number(value))) {
|
|
12
|
-
formattedValue = value;
|
|
13
|
-
}
|
|
14
|
-
const showTooltip = Number(value) >= 1e3;
|
|
15
|
-
return /* @__PURE__ */ React__default.createElement(Card, { className: cn("p-4 shadow-none", className) }, /* @__PURE__ */ React__default.createElement(CardHeader, { className: "p-0 space-y-0", "data-name": "header" }, /* @__PURE__ */ React__default.createElement(CardDescription, { "data-name": "title", className: "uppercase font-inter heading-xxxs tracking-normal text-dark" }, title), /* @__PURE__ */ React__default.createElement(CardTitle, { className: "justify-start text-dark text-[64px] font-normal font-inter leading-[72px]" }, showTooltip ? /* @__PURE__ */ React__default.createElement(Tooltip, null, /* @__PURE__ */ React__default.createElement(TooltipTrigger, { asChild: true }, /* @__PURE__ */ React__default.createElement("span", null, formattedValue)), /* @__PURE__ */ React__default.createElement(TooltipContent, null, value)) : /* @__PURE__ */ React__default.createElement("span", null, formattedValue))), /* @__PURE__ */ React__default.createElement(
|
|
16
|
-
CardContent,
|
|
17
|
-
{
|
|
18
|
-
"data-name": "content",
|
|
19
|
-
className: cn("p-0 flex items-center gap-[2px]", {
|
|
20
|
-
"text-green-600": trend === Trend.UP,
|
|
21
|
-
"text-red-600": trend === Trend.DOWN,
|
|
22
|
-
"text-dark-600": trend === Trend.FLAT
|
|
23
|
-
})
|
|
24
|
-
},
|
|
25
|
-
/* @__PURE__ */ React__default.createElement(TrendValue, { trend, trendValue })
|
|
26
|
-
));
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
export { MetricCard, description };
|
|
1
|
+
import e from"react";import{T as t,a}from"../chunks/trend-value.BPBDBsk2.js";import{Card as r,CardHeader as n,CardDescription as m,CardTitle as s,CardContent as l}from"./ui/card.js";import{Tooltip as c,TooltipTrigger as o,TooltipContent as i}from"./ui/tooltip.js";import{c as d}from"../chunks/utils.C6Qu-kwd.js";import{f as p}from"../chunks/formatNumber.DhVn228t.js";const u="A card to display metrics and its trend";function f({title:u,value:f,trend:x,trendValue:N,className:E}){let h=p(Number(f));isNaN(Number(f))&&(h=f);const k=Number(f)>=1e3;/* @__PURE__ */
|
|
2
|
+
return e.createElement(r,{className:d("p-4 shadow-none",E)},/* @__PURE__ */e.createElement(n,{className:"p-0 space-y-0","data-name":"header"},/* @__PURE__ */e.createElement(m,{"data-name":"title",className:"uppercase font-inter heading-xxxs tracking-normal text-dark"},u),/* @__PURE__ */e.createElement(s,{className:"justify-start text-dark text-[64px] font-normal font-inter leading-[72px]"},k?/* @__PURE__ */e.createElement(c,null,/* @__PURE__ */e.createElement(o,{asChild:!0},/* @__PURE__ */e.createElement("span",null,h)),/* @__PURE__ */e.createElement(i,null,f)):/* @__PURE__ */e.createElement("span",null,h))),/* @__PURE__ */e.createElement(l,{"data-name":"content",className:d("p-0 flex items-center gap-[2px]",{"text-green-600":x===t.UP,"text-red-600":x===t.DOWN,"text-dark-600":x===t.FLAT})},
|
|
3
|
+
/* @__PURE__ */e.createElement(a,{trend:x,trendValue:N})))}export{f as MetricCard,u as description};
|
|
30
4
|
//# sourceMappingURL=metric-card.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metric-card.js","sources":["../../../src/components/metric-card/metric-card.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Trend, TrendValue } from '../trend-value';\n\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';\nimport { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip';\nimport { cn } from '@/lib/utils';\nimport { formatNumber } from '@/lib/formatNumber';\n\nexport const description = 'A card to display metrics and its trend';\n\nexport interface MetricCardProps {\n title: string;\n value: string;\n trend: Trend;\n trendValue: string;\n className?: string;\n}\n\nexport function MetricCard({ title, value, trend, trendValue, className }: MetricCardProps) {\n let formattedValue = formatNumber(Number(value));\n if (isNaN(Number(value))) {\n formattedValue = value;\n }\n const showTooltip = Number(value) >= 1000;\n\n return (\n <Card className={cn('p-4 shadow-none', className)}>\n <CardHeader className=\"p-0 space-y-0\" data-name=\"header\">\n <CardDescription data-name=\"title\" className=\"uppercase font-inter heading-xxxs tracking-normal text-dark\">\n {title}\n </CardDescription>\n <CardTitle className=\"justify-start text-dark text-[64px] font-normal font-inter leading-[72px]\">\n {showTooltip ? (\n <Tooltip>\n <TooltipTrigger asChild>\n <span>{formattedValue}</span>\n </TooltipTrigger>\n <TooltipContent>{value}</TooltipContent>\n </Tooltip>\n ) : (\n <span>{formattedValue}</span>\n )}\n </CardTitle>\n </CardHeader>\n <CardContent\n data-name=\"content\"\n className={cn('p-0 flex items-center gap-[2px]', {\n 'text-green-600': trend === Trend.UP,\n 'text-red-600': trend === Trend.DOWN,\n 'text-dark-600': trend === Trend.FLAT,\n })}\n >\n <TrendValue trend={trend} trendValue={trendValue} />\n </CardContent>\n </Card>\n );\n}\n"],"names":["
|
|
1
|
+
{"version":3,"file":"metric-card.js","sources":["../../../src/components/metric-card/metric-card.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Trend, TrendValue } from '../trend-value';\n\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';\nimport { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip';\nimport { cn } from '@/lib/utils';\nimport { formatNumber } from '@/lib/formatNumber';\n\nexport const description = 'A card to display metrics and its trend';\n\nexport interface MetricCardProps {\n title: string;\n value: string;\n trend: Trend;\n trendValue: string;\n className?: string;\n}\n\nexport function MetricCard({ title, value, trend, trendValue, className }: MetricCardProps) {\n let formattedValue = formatNumber(Number(value));\n if (isNaN(Number(value))) {\n formattedValue = value;\n }\n const showTooltip = Number(value) >= 1000;\n\n return (\n <Card className={cn('p-4 shadow-none', className)}>\n <CardHeader className=\"p-0 space-y-0\" data-name=\"header\">\n <CardDescription data-name=\"title\" className=\"uppercase font-inter heading-xxxs tracking-normal text-dark\">\n {title}\n </CardDescription>\n <CardTitle className=\"justify-start text-dark text-[64px] font-normal font-inter leading-[72px]\">\n {showTooltip ? (\n <Tooltip>\n <TooltipTrigger asChild>\n <span>{formattedValue}</span>\n </TooltipTrigger>\n <TooltipContent>{value}</TooltipContent>\n </Tooltip>\n ) : (\n <span>{formattedValue}</span>\n )}\n </CardTitle>\n </CardHeader>\n <CardContent\n data-name=\"content\"\n className={cn('p-0 flex items-center gap-[2px]', {\n 'text-green-600': trend === Trend.UP,\n 'text-red-600': trend === Trend.DOWN,\n 'text-dark-600': trend === Trend.FLAT,\n })}\n >\n <TrendValue trend={trend} trendValue={trendValue} />\n </CardContent>\n </Card>\n );\n}\n"],"names":["description","MetricCard","title","value","trend","trendValue","className","formattedValue","formatNumber","Number","isNaN","showTooltip","React","createElement","Card","cn","CardHeader","CardDescription","CardTitle","Tooltip","TooltipTrigger","asChild","TooltipContent","CardContent","Trend","UP","DOWN","FLAT","TrendValue"],"mappings":"+WASO,MAAMA,EAAc,0CAUpB,SAASC,GAAWC,MAAEA,EAAAC,MAAOA,QAAOC,EAAAC,WAAOA,EAAAC,UAAYA,IAC5D,IAAIC,EAAiBC,EAAaC,OAAON,IACrCO,MAAMD,OAAON,MACfI,EAAiBJ,GAEnB,MAAMQ,EAAcF,OAAON,IAAU;AAErC,OACES,EAAAC,cAACC,GAAKR,UAAWS,EAAG,kBAAmBT,mCACpCU,EAAA,CAAWV,UAAU,gBAAgB,YAAU,yCAC7CW,EAAA,CAAgB,YAAU,QAAQX,UAAU,+DAC1CJ,kBAEHU,EAAAC,cAACK,EAAA,CAAUZ,UAAU,6EAClBK,iCACEQ,EAAA,oBACCP,EAAAC,cAACO,GAAeC,SAAO,kBACrBT,EAAAC,cAAC,OAAA,KAAMN,mBAETK,EAAAC,cAACS,EAAA,KAAgBnB,mCAGlB,OAAA,KAAMI,oBAIbK,EAAAC,cAACU,EAAA,CACC,YAAU,UACVjB,UAAWS,EAAG,kCAAmC,CAC/C,iBAAkBX,IAAUoB,EAAMC,GAClC,eAAgBrB,IAAUoB,EAAME,KAChC,gBAAiBtB,IAAUoB,EAAMG;eAGnCf,EAAAC,cAACe,EAAA,CAAWxB,QAAcC,gBAIlC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export
|
|
1
|
+
export{S as SimpleSelect}from"../chunks/simpleSelect.DK1qZSXM.js";
|
|
2
2
|
//# sourceMappingURL=select.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export
|
|
1
|
+
export{T as Trend,a as TrendValue}from"../chunks/trend-value.BPBDBsk2.js";
|
|
2
2
|
//# sourceMappingURL=trend-value.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export
|
|
1
|
+
export{T as TwoLevelCombobox}from"../chunks/two-level-combobox.DJYP--W9.js";
|
|
2
2
|
//# sourceMappingURL=two-level-combobox.js.map
|
|
@@ -1,47 +1,8 @@
|
|
|
1
|
-
import *
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
function AccordionItem({ className, ...props }) {
|
|
10
|
-
return /* @__PURE__ */ React.createElement(
|
|
11
|
-
AccordionPrimitive.Item,
|
|
12
|
-
{
|
|
13
|
-
"data-slot": "accordion-item",
|
|
14
|
-
className: cn("border-b [&>h3]:my-0", className),
|
|
15
|
-
...props
|
|
16
|
-
}
|
|
17
|
-
);
|
|
18
|
-
}
|
|
19
|
-
function AccordionTrigger({ className, children, ...props }) {
|
|
20
|
-
return /* @__PURE__ */ React.createElement(AccordionPrimitive.Header, { className: "flex" }, /* @__PURE__ */ React.createElement(
|
|
21
|
-
AccordionPrimitive.Trigger,
|
|
22
|
-
{
|
|
23
|
-
"data-slot": "accordion-trigger",
|
|
24
|
-
className: cn(
|
|
25
|
-
"focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:no-underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180 group",
|
|
26
|
-
className
|
|
27
|
-
),
|
|
28
|
-
...props
|
|
29
|
-
},
|
|
30
|
-
children,
|
|
31
|
-
/* @__PURE__ */ React.createElement(CaretDown, { className: "text-muted-foreground size-4 shrink-0 translate-y-0.5 transition-transform duration-200 hover:bg-dark-300 hover:group-[&[data-state=open]]:bg-dark-200 rounded-sm group-hover:transition-colors hover:duration-300 hover:ease-in-out" })
|
|
32
|
-
));
|
|
33
|
-
}
|
|
34
|
-
function AccordionContent({ className, children, ...props }) {
|
|
35
|
-
return /* @__PURE__ */ React.createElement(
|
|
36
|
-
AccordionPrimitive.Content,
|
|
37
|
-
{
|
|
38
|
-
"data-slot": "accordion-content",
|
|
39
|
-
className: "data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm",
|
|
40
|
-
...props
|
|
41
|
-
},
|
|
42
|
-
/* @__PURE__ */ React.createElement("div", { className: cn("pt-0 pb-4", className) }, children)
|
|
43
|
-
);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger };
|
|
1
|
+
import*as e from"react";import*as t from"@radix-ui/react-accordion";import{CaretDown as a}from"@phosphor-icons/react";import{c as r}from"../../chunks/utils.C6Qu-kwd.js";function o({...a}){/* @__PURE__ */
|
|
2
|
+
return e.createElement(t.Root,{"data-slot":"accordion",...a})}function n({className:a,...o}){/* @__PURE__ */
|
|
3
|
+
return e.createElement(t.Item,{"data-slot":"accordion-item",className:r("border-b [&>h3]:my-0",a),...o})}function s({className:o,children:n,...s}){/* @__PURE__ */
|
|
4
|
+
return e.createElement(t.Header,{className:"flex"},/* @__PURE__ */e.createElement(t.Trigger,{"data-slot":"accordion-trigger",className:r("focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:no-underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180 group",o),...s},n,
|
|
5
|
+
/* @__PURE__ */e.createElement(a,{className:"text-muted-foreground size-4 shrink-0 translate-y-0.5 transition-transform duration-200 hover:bg-dark-300 hover:group-[&[data-state=open]]:bg-dark-200 rounded-sm group-hover:transition-colors hover:duration-300 hover:ease-in-out"})))}function i({className:a,children:o,...n}){/* @__PURE__ */
|
|
6
|
+
return e.createElement(t.Content,{"data-slot":"accordion-content",className:"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm",...n},
|
|
7
|
+
/* @__PURE__ */e.createElement("div",{className:r("pt-0 pb-4",a)},o))}export{o as Accordion,i as AccordionContent,n as AccordionItem,s as AccordionTrigger};
|
|
47
8
|
//# sourceMappingURL=accordion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accordion.js","sources":["../../../../src/components/ui/accordion.tsx"],"sourcesContent":["import * as React from 'react';\nimport * as AccordionPrimitive from '@radix-ui/react-accordion';\nimport { CaretDown } from '@phosphor-icons/react';\n\nimport { cn } from '@/lib/utils';\n\nfunction Accordion({ ...props }: React.ComponentProps<typeof AccordionPrimitive.Root>) {\n return <AccordionPrimitive.Root data-slot=\"accordion\" {...props} />;\n}\n\nfunction AccordionItem({ className, ...props }: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn('border-b [&>h3]:my-0', className)}\n {...props}\n />\n );\n}\n\nfunction AccordionTrigger({ className, children, ...props }: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n 'focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:no-underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180 group',\n className,\n )}\n {...props}\n >\n {children}\n <CaretDown className=\"text-muted-foreground size-4 shrink-0 translate-y-0.5 transition-transform duration-200 hover:bg-dark-300 hover:group-[&[data-state=open]]:bg-dark-200 rounded-sm group-hover:transition-colors hover:duration-300 hover:ease-in-out\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\nfunction AccordionContent({ className, children, ...props }: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn('pt-0 pb-4', className)}>{children}</div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n"],"names":[
|
|
1
|
+
{"version":3,"file":"accordion.js","sources":["../../../../src/components/ui/accordion.tsx"],"sourcesContent":["import * as React from 'react';\nimport * as AccordionPrimitive from '@radix-ui/react-accordion';\nimport { CaretDown } from '@phosphor-icons/react';\n\nimport { cn } from '@/lib/utils';\n\nfunction Accordion({ ...props }: React.ComponentProps<typeof AccordionPrimitive.Root>) {\n return <AccordionPrimitive.Root data-slot=\"accordion\" {...props} />;\n}\n\nfunction AccordionItem({ className, ...props }: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn('border-b [&>h3]:my-0', className)}\n {...props}\n />\n );\n}\n\nfunction AccordionTrigger({ className, children, ...props }: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n 'focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:no-underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180 group',\n className,\n )}\n {...props}\n >\n {children}\n <CaretDown className=\"text-muted-foreground size-4 shrink-0 translate-y-0.5 transition-transform duration-200 hover:bg-dark-300 hover:group-[&[data-state=open]]:bg-dark-200 rounded-sm group-hover:transition-colors hover:duration-300 hover:ease-in-out\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\nfunction AccordionContent({ className, children, ...props }: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn('pt-0 pb-4', className)}>{children}</div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n"],"names":["Accordion","props","AccordionPrimitive","Root","AccordionItem","className","React","createElement","Item","cn","AccordionTrigger","children","Header","Trigger","CaretDown","AccordionContent","Content"],"mappings":"yKAMA,SAASA,MAAeC;AACtB,uBAAQC,EAAmBC,KAAnB,CAAwB,YAAU,eAAgBF,GAC5D,CAEA,SAASG,GAAcC,UAAEA,KAAcJ;AACrC,OACEK,EAAAC,cAACL,EAAmBM,KAAnB,CACC,YAAU,iBACVH,UAAWI,EAAG,uBAAwBJ,MAClCJ,GAGV,CAEA,SAASS,GAAiBL,UAAEA,EAAAM,SAAWA,KAAaV;AAClD,OACEK,EAAAC,cAACL,EAAmBU,OAAnB,CAA0BP,UAAU,uBACnCC,EAAAC,cAACL,EAAmBW,QAAnB,CACC,YAAU,oBACVR,UAAWI,EACT,sTACAJ,MAEEJ,GAEHU;eACDL,EAAAC,cAACO,EAAA,CAAUT,UAAU,0OAI7B,CAEA,SAASU,GAAiBV,UAAEA,EAAAM,SAAWA,KAAaV;AAClD,OACEK,EAAAC,cAACL,EAAmBc,QAAnB,CACC,YAAU,oBACVX,UAAU,+GACNJ;+BAEH,MAAA,CAAII,UAAWI,EAAG,YAAaJ,IAAaM,GAGnD"}
|
|
@@ -1,115 +1,4 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import { b as buttonVariants } from '../../chunks/button.DQL6gCAt.js';
|
|
5
|
-
|
|
6
|
-
const AlertDialogContext = React.createContext({});
|
|
7
|
-
const AlertDialog = React.forwardRef(({ onOpenChange, ...props }, _ref) => {
|
|
8
|
-
const handleClose = React.useCallback(() => {
|
|
9
|
-
onOpenChange?.(false);
|
|
10
|
-
}, [onOpenChange]);
|
|
11
|
-
return /* @__PURE__ */ React.createElement(AlertDialogContext.Provider, { value: { onClose: handleClose } }, /* @__PURE__ */ React.createElement(AlertDialogPrimitive.Root, { onOpenChange, ...props }));
|
|
12
|
-
});
|
|
13
|
-
AlertDialog.displayName = AlertDialogPrimitive.Root.displayName;
|
|
14
|
-
const AlertDialogTrigger = AlertDialogPrimitive.Trigger;
|
|
15
|
-
const AlertDialogPortal = AlertDialogPrimitive.Portal;
|
|
16
|
-
const AlertDialogOverlay = React.forwardRef(({ className, zIndex, ...props }, ref) => /* @__PURE__ */ React.createElement(
|
|
17
|
-
AlertDialogPrimitive.Overlay,
|
|
18
|
-
{
|
|
19
|
-
className: cn(
|
|
20
|
-
"fixed inset-0 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
21
|
-
zIndex || "z-50",
|
|
22
|
-
className
|
|
23
|
-
),
|
|
24
|
-
...props,
|
|
25
|
-
ref
|
|
26
|
-
}
|
|
27
|
-
));
|
|
28
|
-
AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;
|
|
29
|
-
const AlertDialogContent = React.forwardRef(({ className, zIndex, ...props }, ref) => /* @__PURE__ */ React.createElement(AlertDialogPortal, null, /* @__PURE__ */ React.createElement(AlertDialogOverlay, { zIndex }), /* @__PURE__ */ React.createElement(
|
|
30
|
-
AlertDialogPrimitive.Content,
|
|
31
|
-
{
|
|
32
|
-
ref,
|
|
33
|
-
className: cn(
|
|
34
|
-
"fixed left-[50%] top-[50%] grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] border border-border bg-background p-0 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-md",
|
|
35
|
-
zIndex || "z-50",
|
|
36
|
-
className
|
|
37
|
-
),
|
|
38
|
-
...props
|
|
39
|
-
}
|
|
40
|
-
)));
|
|
41
|
-
AlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;
|
|
42
|
-
const AlertDialogHeader = ({ className, ...props }) => /* @__PURE__ */ React.createElement("div", { className: cn("flex flex-col text-center sm:text-left", className), ...props });
|
|
43
|
-
AlertDialogHeader.displayName = "AlertDialogHeader";
|
|
44
|
-
const AlertDialogFooter = ({ className, ...props }) => /* @__PURE__ */ React.createElement(
|
|
45
|
-
"div",
|
|
46
|
-
{
|
|
47
|
-
className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2 pb-4 px-4", className),
|
|
48
|
-
...props
|
|
49
|
-
}
|
|
50
|
-
);
|
|
51
|
-
AlertDialogFooter.displayName = "AlertDialogFooter";
|
|
52
|
-
const AlertDialogTitle = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React.createElement(
|
|
53
|
-
AlertDialogPrimitive.Title,
|
|
54
|
-
{
|
|
55
|
-
ref,
|
|
56
|
-
className: cn("text-lg font-medium px-4 my-0 h-12 flex items-center", className),
|
|
57
|
-
...props
|
|
58
|
-
}
|
|
59
|
-
));
|
|
60
|
-
AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;
|
|
61
|
-
const AlertDialogDescription = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React.createElement(AlertDialogPrimitive.Description, { ref, className: cn("text-sm px-4 py-3 my-0", className), ...props }));
|
|
62
|
-
AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
|
|
63
|
-
const AlertDialogAction = React.forwardRef(({ className, variant, asChild, onClick, ...props }, ref) => {
|
|
64
|
-
const { onClose } = React.useContext(AlertDialogContext);
|
|
65
|
-
const handleClick = React.useCallback(
|
|
66
|
-
async (event) => {
|
|
67
|
-
if (!onClick) return;
|
|
68
|
-
const result = onClick(event);
|
|
69
|
-
const isPromise = (value) => value != null && typeof value === "object" && "then" in value;
|
|
70
|
-
if (isPromise(result)) {
|
|
71
|
-
event.preventDefault();
|
|
72
|
-
try {
|
|
73
|
-
await result;
|
|
74
|
-
onClose?.();
|
|
75
|
-
} catch (error) {
|
|
76
|
-
console.error("AlertDialogAction onClick failed:", error);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
},
|
|
80
|
-
[onClick, onClose]
|
|
81
|
-
);
|
|
82
|
-
if (asChild) {
|
|
83
|
-
return /* @__PURE__ */ React.createElement(
|
|
84
|
-
AlertDialogPrimitive.Action,
|
|
85
|
-
{
|
|
86
|
-
ref,
|
|
87
|
-
className: cn(buttonVariants({ variant }), className),
|
|
88
|
-
onClick: handleClick,
|
|
89
|
-
...props
|
|
90
|
-
}
|
|
91
|
-
);
|
|
92
|
-
}
|
|
93
|
-
return /* @__PURE__ */ React.createElement(
|
|
94
|
-
AlertDialogPrimitive.Action,
|
|
95
|
-
{
|
|
96
|
-
ref,
|
|
97
|
-
className: cn(buttonVariants({ variant }), className),
|
|
98
|
-
onClick: handleClick,
|
|
99
|
-
...props
|
|
100
|
-
}
|
|
101
|
-
);
|
|
102
|
-
});
|
|
103
|
-
AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;
|
|
104
|
-
const AlertDialogCancel = React.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ React.createElement(
|
|
105
|
-
AlertDialogPrimitive.Cancel,
|
|
106
|
-
{
|
|
107
|
-
ref,
|
|
108
|
-
className: cn(buttonVariants({ variant: variant || "link" }), "mt-2 sm:mt-0 text-foreground", className),
|
|
109
|
-
...props
|
|
110
|
-
}
|
|
111
|
-
));
|
|
112
|
-
AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;
|
|
113
|
-
|
|
114
|
-
export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger };
|
|
1
|
+
import*as e from"react";import*as a from"@radix-ui/react-alert-dialog";import{c as t}from"../../chunks/utils.C6Qu-kwd.js";import{b as s}from"../../chunks/button.D_2SonNs.js";const l=e.createContext({}),o=e.forwardRef(({onOpenChange:t,...s},o)=>{const n=e.useCallback(()=>{t?.(!1)},[t]);/* @__PURE__ */
|
|
2
|
+
return e.createElement(l.Provider,{value:{onClose:n}},/* @__PURE__ */e.createElement(a.Root,{onOpenChange:t,...s}))});o.displayName=a.Root.displayName;const n=a.Trigger,r=a.Portal,d=e.forwardRef(({className:s,zIndex:l,...o},n)=>/* @__PURE__ */e.createElement(a.Overlay,{className:t("fixed inset-0 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",l||"z-50",s),...o,ref:n}));d.displayName=a.Overlay.displayName;const c=e.forwardRef(({className:s,zIndex:l,...o},n)=>/* @__PURE__ */e.createElement(r,null,/* @__PURE__ */e.createElement(d,{zIndex:l}),/* @__PURE__ */e.createElement(a.Content,{ref:n,className:t("fixed left-[50%] top-[50%] grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] border border-border bg-background p-0 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-md",l||"z-50",s),...o})));c.displayName=a.Content.displayName;const i=({className:a,...s})=>/* @__PURE__ */e.createElement("div",{className:t("flex flex-col text-center sm:text-left",a),...s});i.displayName="AlertDialogHeader";const m=({className:a,...s})=>/* @__PURE__ */e.createElement("div",{className:t("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2 pb-4 px-4",a),...s});m.displayName="AlertDialogFooter";const f=e.forwardRef(({className:s,...l},o)=>/* @__PURE__ */e.createElement(a.Title,{ref:o,className:t("text-lg font-medium px-4 my-0 h-12 flex items-center",s),...l}));f.displayName=a.Title.displayName;const p=e.forwardRef(({className:s,...l},o)=>/* @__PURE__ */e.createElement(a.Description,{ref:o,className:t("text-sm px-4 py-3 my-0",s),...l}));p.displayName=a.Description.displayName;const N=e.forwardRef(({className:o,variant:n,asChild:r,onClick:d,...c},i)=>{const{onClose:m}=e.useContext(l),f=e.useCallback(async e=>{if(!d)return;const a=d(e);if(null!=(t=a)&&"object"==typeof t&&"then"in t){e.preventDefault();try{await a,m?.()}catch(s){console.error("AlertDialogAction onClick failed:",s)}}var t},[d,m]);/* @__PURE__ */
|
|
3
|
+
return e.createElement(a.Action,{ref:i,className:t(s({variant:n}),o),onClick:f,...c})});N.displayName=a.Action.displayName;const u=e.forwardRef(({className:l,variant:o,...n},r)=>/* @__PURE__ */e.createElement(a.Cancel,{ref:r,className:t(s({variant:o||"link"}),"mt-2 sm:mt-0 text-foreground",l),...n}));u.displayName=a.Cancel.displayName;export{o as AlertDialog,N as AlertDialogAction,u as AlertDialogCancel,c as AlertDialogContent,p as AlertDialogDescription,m as AlertDialogFooter,i as AlertDialogHeader,d as AlertDialogOverlay,r as AlertDialogPortal,f as AlertDialogTitle,n as AlertDialogTrigger};
|
|
115
4
|
//# sourceMappingURL=alert-dialog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alert-dialog.js","sources":["../../../../src/components/ui/alert-dialog.tsx"],"sourcesContent":["import * as React from 'react';\nimport * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';\nimport { VariantProps } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\nimport { buttonVariants } from '@/components/ui/button';\n\n// Context to provide dialog close function\nconst AlertDialogContext = React.createContext<{\n onClose?: () => void;\n}>({});\n\nconst AlertDialog = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Root>\n>(({ onOpenChange, ...props }, _ref) => {\n const handleClose = React.useCallback(() => {\n onOpenChange?.(false);\n }, [onOpenChange]);\n\n return (\n <AlertDialogContext.Provider value={{ onClose: handleClose }}>\n <AlertDialogPrimitive.Root onOpenChange={onOpenChange} {...props} />\n </AlertDialogContext.Provider>\n );\n});\nAlertDialog.displayName = AlertDialogPrimitive.Root.displayName;\n\nconst AlertDialogTrigger = AlertDialogPrimitive.Trigger;\n\nconst AlertDialogPortal = AlertDialogPrimitive.Portal;\n\nconst AlertDialogOverlay = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Overlay> & {\n zIndex?: string;\n }\n>(({ className, zIndex, ...props }, ref) => (\n <AlertDialogPrimitive.Overlay\n className={cn(\n 'fixed inset-0 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',\n zIndex || 'z-50',\n className,\n )}\n {...props}\n ref={ref}\n />\n));\nAlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;\n\nconst AlertDialogContent = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Content> & {\n zIndex?: string;\n }\n>(({ className, zIndex, ...props }, ref) => (\n <AlertDialogPortal>\n <AlertDialogOverlay zIndex={zIndex} />\n <AlertDialogPrimitive.Content\n ref={ref}\n className={cn(\n 'fixed left-[50%] top-[50%] grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] border border-border bg-background p-0 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-md',\n zIndex || 'z-50',\n className,\n )}\n {...props}\n />\n </AlertDialogPortal>\n));\nAlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;\n\nconst AlertDialogHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn('flex flex-col text-center sm:text-left', className)} {...props} />\n);\nAlertDialogHeader.displayName = 'AlertDialogHeader';\n\nconst AlertDialogFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn('flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2 pb-4 px-4', className)}\n {...props}\n />\n);\nAlertDialogFooter.displayName = 'AlertDialogFooter';\n\nconst AlertDialogTitle = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Title\n ref={ref}\n className={cn('text-lg font-medium px-4 my-0 h-12 flex items-center', className)}\n {...props}\n />\n));\nAlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;\n\nconst AlertDialogDescription = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Description ref={ref} className={cn('text-sm px-4 py-3 my-0', className)} {...props} />\n));\nAlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;\n\nconst AlertDialogAction = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Action>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Action> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean;\n }\n>(({ className, variant, asChild, onClick, ...props }, ref) => {\n const { onClose } = React.useContext(AlertDialogContext);\n\n const handleClick = React.useCallback(\n async (event: React.MouseEvent<HTMLButtonElement>) => {\n if (!onClick) return;\n\n const result = onClick(event);\n const isPromise = (value: unknown): value is Promise<unknown> =>\n value != null && typeof value === 'object' && 'then' in value;\n\n if (isPromise(result)) {\n event.preventDefault();\n try {\n await result;\n onClose?.();\n } catch (error) {\n console.error('AlertDialogAction onClick failed:', error);\n }\n }\n },\n [onClick, onClose],\n );\n\n if (asChild) {\n return (\n <AlertDialogPrimitive.Action\n ref={ref}\n className={cn(buttonVariants({ variant }), className)}\n onClick={handleClick}\n {...props}\n />\n );\n }\n\n return (\n <AlertDialogPrimitive.Action\n ref={ref}\n className={cn(buttonVariants({ variant }), className)}\n onClick={handleClick}\n {...props}\n />\n );\n});\nAlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;\n\nconst AlertDialogCancel = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Cancel>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Cancel> & VariantProps<typeof buttonVariants>\n>(({ className, variant, ...props }, ref) => (\n <AlertDialogPrimitive.Cancel\n ref={ref}\n className={cn(buttonVariants({ variant: variant || 'link' }), 'mt-2 sm:mt-0 text-foreground', className)}\n {...props}\n />\n));\nAlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;\n\nexport {\n AlertDialog,\n AlertDialogPortal,\n AlertDialogOverlay,\n AlertDialogTrigger,\n AlertDialogContent,\n AlertDialogHeader,\n AlertDialogFooter,\n AlertDialogTitle,\n AlertDialogDescription,\n AlertDialogAction,\n AlertDialogCancel,\n};\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"alert-dialog.js","sources":["../../../../src/components/ui/alert-dialog.tsx"],"sourcesContent":["import * as React from 'react';\nimport * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';\nimport { VariantProps } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\nimport { buttonVariants } from '@/components/ui/button';\n\n// Context to provide dialog close function\nconst AlertDialogContext = React.createContext<{\n onClose?: () => void;\n}>({});\n\nconst AlertDialog = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Root>\n>(({ onOpenChange, ...props }, _ref) => {\n const handleClose = React.useCallback(() => {\n onOpenChange?.(false);\n }, [onOpenChange]);\n\n return (\n <AlertDialogContext.Provider value={{ onClose: handleClose }}>\n <AlertDialogPrimitive.Root onOpenChange={onOpenChange} {...props} />\n </AlertDialogContext.Provider>\n );\n});\nAlertDialog.displayName = AlertDialogPrimitive.Root.displayName;\n\nconst AlertDialogTrigger = AlertDialogPrimitive.Trigger;\n\nconst AlertDialogPortal = AlertDialogPrimitive.Portal;\n\nconst AlertDialogOverlay = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Overlay> & {\n zIndex?: string;\n }\n>(({ className, zIndex, ...props }, ref) => (\n <AlertDialogPrimitive.Overlay\n className={cn(\n 'fixed inset-0 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',\n zIndex || 'z-50',\n className,\n )}\n {...props}\n ref={ref}\n />\n));\nAlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;\n\nconst AlertDialogContent = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Content> & {\n zIndex?: string;\n }\n>(({ className, zIndex, ...props }, ref) => (\n <AlertDialogPortal>\n <AlertDialogOverlay zIndex={zIndex} />\n <AlertDialogPrimitive.Content\n ref={ref}\n className={cn(\n 'fixed left-[50%] top-[50%] grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] border border-border bg-background p-0 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-md',\n zIndex || 'z-50',\n className,\n )}\n {...props}\n />\n </AlertDialogPortal>\n));\nAlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;\n\nconst AlertDialogHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div className={cn('flex flex-col text-center sm:text-left', className)} {...props} />\n);\nAlertDialogHeader.displayName = 'AlertDialogHeader';\n\nconst AlertDialogFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn('flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2 pb-4 px-4', className)}\n {...props}\n />\n);\nAlertDialogFooter.displayName = 'AlertDialogFooter';\n\nconst AlertDialogTitle = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Title\n ref={ref}\n className={cn('text-lg font-medium px-4 my-0 h-12 flex items-center', className)}\n {...props}\n />\n));\nAlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;\n\nconst AlertDialogDescription = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Description ref={ref} className={cn('text-sm px-4 py-3 my-0', className)} {...props} />\n));\nAlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;\n\nconst AlertDialogAction = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Action>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Action> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean;\n }\n>(({ className, variant, asChild, onClick, ...props }, ref) => {\n const { onClose } = React.useContext(AlertDialogContext);\n\n const handleClick = React.useCallback(\n async (event: React.MouseEvent<HTMLButtonElement>) => {\n if (!onClick) return;\n\n const result = onClick(event);\n const isPromise = (value: unknown): value is Promise<unknown> =>\n value != null && typeof value === 'object' && 'then' in value;\n\n if (isPromise(result)) {\n event.preventDefault();\n try {\n await result;\n onClose?.();\n } catch (error) {\n console.error('AlertDialogAction onClick failed:', error);\n }\n }\n },\n [onClick, onClose],\n );\n\n if (asChild) {\n return (\n <AlertDialogPrimitive.Action\n ref={ref}\n className={cn(buttonVariants({ variant }), className)}\n onClick={handleClick}\n {...props}\n />\n );\n }\n\n return (\n <AlertDialogPrimitive.Action\n ref={ref}\n className={cn(buttonVariants({ variant }), className)}\n onClick={handleClick}\n {...props}\n />\n );\n});\nAlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;\n\nconst AlertDialogCancel = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Cancel>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Cancel> & VariantProps<typeof buttonVariants>\n>(({ className, variant, ...props }, ref) => (\n <AlertDialogPrimitive.Cancel\n ref={ref}\n className={cn(buttonVariants({ variant: variant || 'link' }), 'mt-2 sm:mt-0 text-foreground', className)}\n {...props}\n />\n));\nAlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;\n\nexport {\n AlertDialog,\n AlertDialogPortal,\n AlertDialogOverlay,\n AlertDialogTrigger,\n AlertDialogContent,\n AlertDialogHeader,\n AlertDialogFooter,\n AlertDialogTitle,\n AlertDialogDescription,\n AlertDialogAction,\n AlertDialogCancel,\n};\n"],"names":["AlertDialogContext","React","createContext","AlertDialog","forwardRef","onOpenChange","props","_ref","handleClose","useCallback","Provider","value","onClose","createElement","AlertDialogPrimitive","Root","displayName","AlertDialogTrigger","Trigger","AlertDialogPortal","Portal","AlertDialogOverlay","className","zIndex","ref","Overlay","cn","AlertDialogContent","Content","AlertDialogHeader","AlertDialogFooter","AlertDialogTitle","Title","AlertDialogDescription","Description","AlertDialogAction","variant","asChild","onClick","useContext","handleClick","async","event","result","preventDefault","error","console","Action","buttonVariants","AlertDialogCancel","Cancel"],"mappings":"8KAQA,MAAMA,EAAqBC,EAAMC,cAE9B,IAEGC,EAAcF,EAAMG,WAGxB,EAAGC,kBAAiBC,GAASC,KAC7B,MAAMC,EAAcP,EAAMQ,YAAY,KACpCJ,KAAe,IACd,CAACA;AAEJ,uBACGL,EAAmBU,SAAnB,CAA4BC,MAAO,CAAEC,QAASJ,mBAC7CP,EAAAY,cAACC,EAAqBC,KAArB,CAA0BV,kBAAgCC,OAIjEH,EAAYa,YAAcF,EAAqBC,KAAKC,YAEpD,MAAMC,EAAqBH,EAAqBI,QAE1CC,EAAoBL,EAAqBM,OAEzCC,EAAqBpB,EAAMG,WAK/B,EAAGkB,YAAWC,YAAWjB,GAASkB,mBAClCvB,EAAAY,cAACC,EAAqBW,QAArB,CACCH,UAAWI,EACT,oJACAH,GAAU,OACVD,MAEEhB,EACJkB,SAGJH,EAAmBL,YAAcF,EAAqBW,QAAQT,YAE9D,MAAMW,EAAqB1B,EAAMG,WAK/B,EAAGkB,YAAWC,YAAWjB,GAASkB,mBAClCvB,EAAAY,cAACM,EAAA,oBACClB,EAAAY,cAACQ,EAAA,CAAmBE,0BACpBtB,EAAAY,cAACC,EAAqBc,QAArB,CACCJ,MACAF,UAAWI,EACT,igBACAH,GAAU,OACVD,MAEEhB,MAIVqB,EAAmBX,YAAcF,EAAqBc,QAAQZ,YAE9D,MAAMa,EAAoB,EAAGP,eAAchB,oBACzCL,EAAAY,cAAC,MAAA,CAAIS,UAAWI,EAAG,yCAA0CJ,MAAgBhB,IAE/EuB,EAAkBb,YAAc,oBAEhC,MAAMc,EAAoB,EAAGR,eAAchB,oBACzCL,EAAAY,cAAC,MAAA,CACCS,UAAWI,EAAG,0EAA2EJ,MACrFhB,IAGRwB,EAAkBd,YAAc,oBAEhC,MAAMe,EAAmB9B,EAAMG,WAG7B,EAAGkB,eAAchB,GAASkB,mBAC1BvB,EAAAY,cAACC,EAAqBkB,MAArB,CACCR,MACAF,UAAWI,EAAG,uDAAwDJ,MAClEhB,KAGRyB,EAAiBf,YAAcF,EAAqBkB,MAAMhB,YAE1D,MAAMiB,EAAyBhC,EAAMG,WAGnC,EAAGkB,eAAchB,GAASkB,mBAC1BvB,EAAAY,cAACC,EAAqBoB,YAArB,CAAiCV,MAAUF,UAAWI,EAAG,yBAA0BJ,MAAgBhB,KAEtG2B,EAAuBjB,YAAcF,EAAqBoB,YAAYlB,YAEtE,MAAMmB,EAAoBlC,EAAMG,WAM9B,EAAGkB,YAAWc,UAASC,UAASC,aAAYhC,GAASkB,KACrD,MAAMZ,QAAEA,GAAYX,EAAMsC,WAAWvC,GAE/BwC,EAAcvC,EAAMQ,YACxBgC,MAAOC,IACL,IAAKJ,EAAS,OAEd,MAAMK,EAASL,EAAQI,GAIvB,GAFW,OADQ/B,EAGLgC,IAFsB,iBAAVhC,GAAsB,SAAUA,EAEnC,CACrB+B,EAAME,iBACN,UACQD,EACN/B,KACF,OAASiC,GACPC,QAAQD,MAAM,oCAAqCA,EACrD,CACF,CAXkB,IAAClC,GAarB,CAAC2B,EAAS1B;AAGZ,OAEIX,EAAAY,cAACC,EAAqBiC,OAArB,CACCvB,MACAF,UAAWI,EAAGsB,EAAe,CAAEZ,YAAYd,GAC3CgB,QAASE,KACLlC,MAcZ6B,EAAkBnB,YAAcF,EAAqBiC,OAAO/B,YAE5D,MAAMiC,EAAoBhD,EAAMG,WAG9B,EAAGkB,YAAWc,aAAY9B,GAASkB,mBACnCvB,EAAAY,cAACC,EAAqBoC,OAArB,CACC1B,MACAF,UAAWI,EAAGsB,EAAe,CAAEZ,QAASA,GAAW,SAAW,+BAAgCd,MAC1FhB,KAGR2C,EAAkBjC,YAAcF,EAAqBoC,OAAOlC"}
|
|
@@ -1,104 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const alertVariants = cva(
|
|
6
|
-
"relative w-full rounded-lg border px-4 py-3 text-sm flex gap-3 [&>svg]:size-5 [&>svg]:shrink-0",
|
|
7
|
-
{
|
|
8
|
-
variants: {
|
|
9
|
-
variant: {
|
|
10
|
-
default: "bg-card text-card-foreground",
|
|
11
|
-
danger: "border-red bg-red-100 text-dark [&>svg]:text-red",
|
|
12
|
-
success: "border-green bg-green-100 text-dark [&>svg]:text-green",
|
|
13
|
-
warning: "border-yellow bg-yellow-100 text-dark [&>svg]:text-yellow",
|
|
14
|
-
info: "border-blue bg-blue-100 text-dark [&>svg]:text-blue"
|
|
15
|
-
},
|
|
16
|
-
layout: {
|
|
17
|
-
compact: "items-center",
|
|
18
|
-
longForm: "p-8 items-start [&_[data-slot='alert-description']]:space-y-4 [&_[data-slot='alert-description']>p]:my-0"
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
defaultVariants: {
|
|
22
|
-
variant: "default",
|
|
23
|
-
layout: "compact"
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
);
|
|
27
|
-
const Alert = React.forwardRef(
|
|
28
|
-
({ className, variant, layout, children, ...props }, ref) => {
|
|
29
|
-
const wrappedChildren = [];
|
|
30
|
-
let contentChildren = [];
|
|
31
|
-
React.Children.forEach(children, (child) => {
|
|
32
|
-
if (React.isValidElement(child)) {
|
|
33
|
-
const isTitle = child.type === AlertTitle;
|
|
34
|
-
const isDescription = child.type === AlertDescription;
|
|
35
|
-
if (isTitle || isDescription) {
|
|
36
|
-
contentChildren.push(child);
|
|
37
|
-
} else {
|
|
38
|
-
if (contentChildren.length > 0) {
|
|
39
|
-
wrappedChildren.push(
|
|
40
|
-
/* @__PURE__ */ React.createElement(AlertContent, { key: `content-${wrappedChildren.length}` }, contentChildren)
|
|
41
|
-
);
|
|
42
|
-
contentChildren = [];
|
|
43
|
-
}
|
|
44
|
-
wrappedChildren.push(child);
|
|
45
|
-
}
|
|
46
|
-
} else {
|
|
47
|
-
if (contentChildren.length > 0) {
|
|
48
|
-
wrappedChildren.push(
|
|
49
|
-
/* @__PURE__ */ React.createElement(AlertContent, { key: `content-${wrappedChildren.length}` }, contentChildren)
|
|
50
|
-
);
|
|
51
|
-
contentChildren = [];
|
|
52
|
-
}
|
|
53
|
-
wrappedChildren.push(child);
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
if (contentChildren.length > 0) {
|
|
57
|
-
wrappedChildren.push(/* @__PURE__ */ React.createElement(AlertContent, { key: `content-${wrappedChildren.length}` }, contentChildren));
|
|
58
|
-
}
|
|
59
|
-
return /* @__PURE__ */ React.createElement(
|
|
60
|
-
"div",
|
|
61
|
-
{
|
|
62
|
-
ref,
|
|
63
|
-
"data-slot": "alert",
|
|
64
|
-
role: "alert",
|
|
65
|
-
className: cn(alertVariants({ variant, layout }), className),
|
|
66
|
-
...props
|
|
67
|
-
},
|
|
68
|
-
wrappedChildren
|
|
69
|
-
);
|
|
70
|
-
}
|
|
71
|
-
);
|
|
72
|
-
Alert.displayName = "Alert";
|
|
73
|
-
const AlertTitle = React.forwardRef(({ className, ...props }, ref) => (
|
|
74
|
-
// eslint-disable-next-line jsx-a11y/heading-has-content
|
|
75
|
-
/* @__PURE__ */ React.createElement("h5", { ref, "data-slot": "alert-title", className: cn("line-clamp-1 min-h-4 heading-xs", className), ...props })
|
|
76
|
-
));
|
|
77
|
-
AlertTitle.displayName = "AlertTitle";
|
|
78
|
-
const AlertDescription = React.forwardRef(
|
|
79
|
-
({ className, ...props }, ref) => /* @__PURE__ */ React.createElement(
|
|
80
|
-
"div",
|
|
81
|
-
{
|
|
82
|
-
ref,
|
|
83
|
-
"data-slot": "alert-description",
|
|
84
|
-
className: cn("text-dark/80 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed", className),
|
|
85
|
-
...props
|
|
86
|
-
}
|
|
87
|
-
)
|
|
88
|
-
);
|
|
89
|
-
AlertDescription.displayName = "AlertDescription";
|
|
90
|
-
const AlertContent = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React.createElement("div", { ref, "data-slot": "alert-content", className: cn("flex flex-col gap-1 flex-grow", className), ...props }));
|
|
91
|
-
AlertContent.displayName = "AlertContent";
|
|
92
|
-
const AlertAction = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React.createElement(
|
|
93
|
-
"div",
|
|
94
|
-
{
|
|
95
|
-
ref,
|
|
96
|
-
"data-slot": "alert-action",
|
|
97
|
-
className: cn("self-start flex items-start justify-end", className),
|
|
98
|
-
...props
|
|
99
|
-
}
|
|
100
|
-
));
|
|
101
|
-
AlertAction.displayName = "AlertAction";
|
|
102
|
-
|
|
103
|
-
export { Alert, AlertAction, AlertContent, AlertDescription, AlertTitle };
|
|
1
|
+
import*as e from"react";import{cva as t}from"class-variance-authority";import{c as a}from"../../chunks/utils.C6Qu-kwd.js";const r=t("relative w-full rounded-lg border px-4 py-3 text-sm flex gap-3 [&>svg]:size-5 [&>svg]:shrink-0",{variants:{variant:{default:"bg-card text-card-foreground",danger:"border-red bg-red-100 text-dark [&>svg]:text-red",success:"border-green bg-green-100 text-dark [&>svg]:text-green",warning:"border-yellow bg-yellow-100 text-dark [&>svg]:text-yellow",info:"border-blue bg-blue-100 text-dark [&>svg]:text-blue"},layout:{compact:"items-center",longForm:"p-8 items-start [&_[data-slot='alert-description']]:space-y-4 [&_[data-slot='alert-description']>p]:my-0"}},defaultVariants:{variant:"default",layout:"compact"}}),l=e.forwardRef(({className:t,variant:l,layout:c,children:d,...i},m)=>{const f=[];let p=[];return e.Children.forEach(d,t=>{if(e.isValidElement(t)){const a=t.type===s,r=t.type===n;a||r?p.push(t):(p.length>0&&(f.push(
|
|
2
|
+
/* @__PURE__ */e.createElement(o,{key:`content-${f.length}`},p)),p=[]),f.push(t))}else p.length>0&&(f.push(
|
|
3
|
+
/* @__PURE__ */e.createElement(o,{key:`content-${f.length}`},p)),p=[]),f.push(t)}),p.length>0&&f.push(/* @__PURE__ */e.createElement(o,{key:`content-${f.length}`},p)),/* @__PURE__ */e.createElement("div",{ref:m,"data-slot":"alert",role:"alert",className:a(r({variant:l,layout:c}),t),...i},f)});l.displayName="Alert";const s=e.forwardRef(({className:t,...r},l)=>
|
|
4
|
+
/* @__PURE__ */e.createElement("h5",{ref:l,"data-slot":"alert-title",className:a("line-clamp-1 min-h-4 heading-xs",t),...r}));s.displayName="AlertTitle";const n=e.forwardRef(({className:t,...r},l)=>/* @__PURE__ */e.createElement("div",{ref:l,"data-slot":"alert-description",className:a("text-dark/80 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",t),...r}));n.displayName="AlertDescription";const o=e.forwardRef(({className:t,...r},l)=>/* @__PURE__ */e.createElement("div",{ref:l,"data-slot":"alert-content",className:a("flex flex-col gap-1 flex-grow",t),...r}));o.displayName="AlertContent";const c=e.forwardRef(({className:t,...r},l)=>/* @__PURE__ */e.createElement("div",{ref:l,"data-slot":"alert-action",className:a("self-start flex items-start justify-end",t),...r}));c.displayName="AlertAction";export{l as Alert,c as AlertAction,o as AlertContent,n as AlertDescription,s as AlertTitle};
|
|
104
5
|
//# sourceMappingURL=alert.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alert.js","sources":["../../../../src/components/ui/alert.tsx"],"sourcesContent":["import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm flex gap-3 [&>svg]:size-5 [&>svg]:shrink-0',\n {\n variants: {\n variant: {\n default: 'bg-card text-card-foreground',\n danger: 'border-red bg-red-100 text-dark [&>svg]:text-red',\n success: 'border-green bg-green-100 text-dark [&>svg]:text-green',\n warning: 'border-yellow bg-yellow-100 text-dark [&>svg]:text-yellow',\n info: 'border-blue bg-blue-100 text-dark [&>svg]:text-blue',\n },\n layout: {\n compact: 'items-center',\n longForm:\n \"p-8 items-start [&_[data-slot='alert-description']]:space-y-4 [&_[data-slot='alert-description']>p]:my-0\",\n },\n },\n defaultVariants: {\n variant: 'default',\n layout: 'compact',\n },\n },\n);\n\nconst Alert = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'> & VariantProps<typeof alertVariants>>(\n ({ className, variant, layout, children, ...props }, ref) => {\n // Group title and description elements into AlertContent\n const wrappedChildren: React.ReactNode[] = [];\n let contentChildren: React.ReactNode[] = [];\n\n React.Children.forEach(children, (child) => {\n if (React.isValidElement(child)) {\n const isTitle = child.type === AlertTitle;\n const isDescription = child.type === AlertDescription;\n\n if (isTitle || isDescription) {\n contentChildren.push(child);\n } else {\n // If we have accumulated content children, wrap them first\n if (contentChildren.length > 0) {\n wrappedChildren.push(\n <AlertContent key={`content-${wrappedChildren.length}`}>{contentChildren}</AlertContent>,\n );\n contentChildren = [];\n }\n wrappedChildren.push(child);\n }\n } else {\n // If we have accumulated content children, wrap them first\n if (contentChildren.length > 0) {\n wrappedChildren.push(\n <AlertContent key={`content-${wrappedChildren.length}`}>{contentChildren}</AlertContent>,\n );\n contentChildren = [];\n }\n wrappedChildren.push(child);\n }\n });\n\n // Handle any remaining content children\n if (contentChildren.length > 0) {\n wrappedChildren.push(<AlertContent key={`content-${wrappedChildren.length}`}>{contentChildren}</AlertContent>);\n }\n\n return (\n <div\n ref={ref}\n data-slot=\"alert\"\n role=\"alert\"\n className={cn(alertVariants({ variant, layout }), className)}\n {...props}\n >\n {wrappedChildren}\n </div>\n );\n },\n);\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef<HTMLHeadingElement, React.ComponentProps<'h5'>>(({ className, ...props }, ref) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h5 ref={ref} data-slot=\"alert-title\" className={cn('line-clamp-1 min-h-4 heading-xs', className)} {...props} />\n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"alert-description\"\n className={cn('text-dark/80 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed', className)}\n {...props}\n />\n ),\n);\nAlertDescription.displayName = 'AlertDescription';\n\nconst AlertContent = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => (\n <div ref={ref} data-slot=\"alert-content\" className={cn('flex flex-col gap-1 flex-grow', className)} {...props} />\n));\nAlertContent.displayName = 'AlertContent';\n\nconst AlertAction = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"alert-action\"\n className={cn('self-start flex items-start justify-end', className)}\n {...props}\n />\n));\nAlertAction.displayName = 'AlertAction';\n\nexport { Alert, AlertTitle, AlertDescription, AlertContent, AlertAction };\n"],"names":[
|
|
1
|
+
{"version":3,"file":"alert.js","sources":["../../../../src/components/ui/alert.tsx"],"sourcesContent":["import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst alertVariants = cva(\n 'relative w-full rounded-lg border px-4 py-3 text-sm flex gap-3 [&>svg]:size-5 [&>svg]:shrink-0',\n {\n variants: {\n variant: {\n default: 'bg-card text-card-foreground',\n danger: 'border-red bg-red-100 text-dark [&>svg]:text-red',\n success: 'border-green bg-green-100 text-dark [&>svg]:text-green',\n warning: 'border-yellow bg-yellow-100 text-dark [&>svg]:text-yellow',\n info: 'border-blue bg-blue-100 text-dark [&>svg]:text-blue',\n },\n layout: {\n compact: 'items-center',\n longForm:\n \"p-8 items-start [&_[data-slot='alert-description']]:space-y-4 [&_[data-slot='alert-description']>p]:my-0\",\n },\n },\n defaultVariants: {\n variant: 'default',\n layout: 'compact',\n },\n },\n);\n\nconst Alert = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'> & VariantProps<typeof alertVariants>>(\n ({ className, variant, layout, children, ...props }, ref) => {\n // Group title and description elements into AlertContent\n const wrappedChildren: React.ReactNode[] = [];\n let contentChildren: React.ReactNode[] = [];\n\n React.Children.forEach(children, (child) => {\n if (React.isValidElement(child)) {\n const isTitle = child.type === AlertTitle;\n const isDescription = child.type === AlertDescription;\n\n if (isTitle || isDescription) {\n contentChildren.push(child);\n } else {\n // If we have accumulated content children, wrap them first\n if (contentChildren.length > 0) {\n wrappedChildren.push(\n <AlertContent key={`content-${wrappedChildren.length}`}>{contentChildren}</AlertContent>,\n );\n contentChildren = [];\n }\n wrappedChildren.push(child);\n }\n } else {\n // If we have accumulated content children, wrap them first\n if (contentChildren.length > 0) {\n wrappedChildren.push(\n <AlertContent key={`content-${wrappedChildren.length}`}>{contentChildren}</AlertContent>,\n );\n contentChildren = [];\n }\n wrappedChildren.push(child);\n }\n });\n\n // Handle any remaining content children\n if (contentChildren.length > 0) {\n wrappedChildren.push(<AlertContent key={`content-${wrappedChildren.length}`}>{contentChildren}</AlertContent>);\n }\n\n return (\n <div\n ref={ref}\n data-slot=\"alert\"\n role=\"alert\"\n className={cn(alertVariants({ variant, layout }), className)}\n {...props}\n >\n {wrappedChildren}\n </div>\n );\n },\n);\nAlert.displayName = 'Alert';\n\nconst AlertTitle = React.forwardRef<HTMLHeadingElement, React.ComponentProps<'h5'>>(({ className, ...props }, ref) => (\n // eslint-disable-next-line jsx-a11y/heading-has-content\n <h5 ref={ref} data-slot=\"alert-title\" className={cn('line-clamp-1 min-h-4 heading-xs', className)} {...props} />\n));\nAlertTitle.displayName = 'AlertTitle';\n\nconst AlertDescription = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"alert-description\"\n className={cn('text-dark/80 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed', className)}\n {...props}\n />\n ),\n);\nAlertDescription.displayName = 'AlertDescription';\n\nconst AlertContent = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => (\n <div ref={ref} data-slot=\"alert-content\" className={cn('flex flex-col gap-1 flex-grow', className)} {...props} />\n));\nAlertContent.displayName = 'AlertContent';\n\nconst AlertAction = React.forwardRef<HTMLDivElement, React.ComponentProps<'div'>>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"alert-action\"\n className={cn('self-start flex items-start justify-end', className)}\n {...props}\n />\n));\nAlertAction.displayName = 'AlertAction';\n\nexport { Alert, AlertTitle, AlertDescription, AlertContent, AlertAction };\n"],"names":["alertVariants","cva","variants","variant","default","danger","success","warning","info","layout","compact","longForm","defaultVariants","Alert","React","forwardRef","className","children","props","ref","wrappedChildren","contentChildren","Children","forEach","child","isValidElement","isTitle","type","AlertTitle","isDescription","AlertDescription","push","length","AlertContent","key","createElement","role","cn","displayName","AlertAction"],"mappings":"0HAKA,MAAMA,EAAgBC,EACpB,iGACA,CACEC,SAAU,CACRC,QAAS,CACPC,QAAS,+BACTC,OAAQ,mDACRC,QAAS,yDACTC,QAAS,4DACTC,KAAM,uDAERC,OAAQ,CACNC,QAAS,eACTC,SACE,6GAGNC,gBAAiB,CACfT,QAAS,UACTM,OAAQ,aAKRI,EAAQC,EAAMC,WAClB,EAAGC,YAAWb,UAASM,SAAQQ,cAAaC,GAASC,KAEnD,MAAMC,EAAqC,GAC3C,IAAIC,EAAqC,GAoCzC,OAlCAP,EAAMQ,SAASC,QAAQN,EAAWO,IAChC,GAAIV,EAAMW,eAAeD,GAAQ,CAC/B,MAAME,EAAUF,EAAMG,OAASC,EACzBC,EAAgBL,EAAMG,OAASG,EAEjCJ,GAAWG,EACbR,EAAgBU,KAAKP,IAGjBH,EAAgBW,OAAS,IAC3BZ,EAAgBW;+BACbE,EAAA,CAAaC,IAAK,WAAWd,EAAgBY,UAAWX,IAE3DA,EAAkB,IAEpBD,EAAgBW,KAAKP,GAEzB,MAEMH,EAAgBW,OAAS,IAC3BZ,EAAgBW;+BACbE,EAAA,CAAaC,IAAK,WAAWd,EAAgBY,UAAWX,IAE3DA,EAAkB,IAEpBD,EAAgBW,KAAKP,KAKrBH,EAAgBW,OAAS,GAC3BZ,EAAgBW,oCAAME,EAAA,CAAaC,IAAK,WAAWd,EAAgBY,UAAWX,mBAI9EP,EAAAqB,cAAC,MAAA,CACChB,MACA,YAAU,QACViB,KAAK,QACLpB,UAAWqB,EAAGrC,EAAc,CAAEG,UAASM,WAAWO,MAC9CE,GAEHE,KAKTP,EAAMyB,YAAc,QAEpB,MAAMV,EAAad,EAAMC,WAA2D,EAAGC,eAAcE,GAASC;eAE5GL,EAAAqB,cAAC,KAAA,CAAGhB,MAAU,YAAU,cAAcH,UAAWqB,EAAG,kCAAmCrB,MAAgBE,KAEzGU,EAAWU,YAAc,aAEzB,MAAMR,EAAmBhB,EAAMC,WAC7B,EAAGC,eAAcE,GAASC,mBACxBL,EAAAqB,cAAC,MAAA,CACChB,MACA,YAAU,oBACVH,UAAWqB,EAAG,4EAA6ErB,MACvFE,KAIVY,EAAiBQ,YAAc,mBAE/B,MAAML,EAAenB,EAAMC,WAAwD,EAAGC,eAAcE,GAASC,mBAC3GL,EAAAqB,cAAC,OAAIhB,MAAU,YAAU,gBAAgBH,UAAWqB,EAAG,gCAAiCrB,MAAgBE,KAE1Ge,EAAaK,YAAc,eAE3B,MAAMC,EAAczB,EAAMC,WAAwD,EAAGC,eAAcE,GAASC,mBAC1GL,EAAAqB,cAAC,MAAA,CACChB,MACA,YAAU,eACVH,UAAWqB,EAAG,0CAA2CrB,MACrDE,KAGRqB,EAAYD,YAAc"}
|
|
@@ -1,90 +1,8 @@
|
|
|
1
|
-
import *
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
function
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
...props
|
|
9
|
-
}) {
|
|
10
|
-
return /* @__PURE__ */ React.createElement(
|
|
11
|
-
AvatarPrimitive.Root,
|
|
12
|
-
{
|
|
13
|
-
"data-slot": "avatar",
|
|
14
|
-
"data-size": size,
|
|
15
|
-
className: cn(
|
|
16
|
-
"group/avatar relative flex size-8 shrink-0 select-none data-[size=lg]:size-10 data-[size=sm]:size-6",
|
|
17
|
-
className
|
|
18
|
-
),
|
|
19
|
-
...props
|
|
20
|
-
}
|
|
21
|
-
);
|
|
22
|
-
}
|
|
23
|
-
function AvatarImage({ className, ...props }) {
|
|
24
|
-
return /* @__PURE__ */ React.createElement(
|
|
25
|
-
AvatarPrimitive.Image,
|
|
26
|
-
{
|
|
27
|
-
"data-slot": "avatar-image",
|
|
28
|
-
className: cn("aspect-square size-full overflow-hidden rounded-full", className),
|
|
29
|
-
...props
|
|
30
|
-
}
|
|
31
|
-
);
|
|
32
|
-
}
|
|
33
|
-
function AvatarFallback({ className, ...props }) {
|
|
34
|
-
return /* @__PURE__ */ React.createElement(
|
|
35
|
-
AvatarPrimitive.Fallback,
|
|
36
|
-
{
|
|
37
|
-
"data-slot": "avatar-fallback",
|
|
38
|
-
className: cn(
|
|
39
|
-
"flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs",
|
|
40
|
-
className
|
|
41
|
-
),
|
|
42
|
-
...props
|
|
43
|
-
}
|
|
44
|
-
);
|
|
45
|
-
}
|
|
46
|
-
function AvatarBadge({ className, ...props }) {
|
|
47
|
-
return /* @__PURE__ */ React.createElement(
|
|
48
|
-
"span",
|
|
49
|
-
{
|
|
50
|
-
"data-slot": "avatar-badge",
|
|
51
|
-
className: cn(
|
|
52
|
-
"absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-primary text-primary-foreground ring-2 ring-background select-none",
|
|
53
|
-
"group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden",
|
|
54
|
-
"group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2 group-data-[size=default]/avatar:ring-1",
|
|
55
|
-
"group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2",
|
|
56
|
-
className
|
|
57
|
-
),
|
|
58
|
-
...props
|
|
59
|
-
}
|
|
60
|
-
);
|
|
61
|
-
}
|
|
62
|
-
function AvatarGroup({ className, ...props }) {
|
|
63
|
-
return /* @__PURE__ */ React.createElement(
|
|
64
|
-
"div",
|
|
65
|
-
{
|
|
66
|
-
"data-slot": "avatar-group",
|
|
67
|
-
className: cn(
|
|
68
|
-
"group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background",
|
|
69
|
-
className
|
|
70
|
-
),
|
|
71
|
-
...props
|
|
72
|
-
}
|
|
73
|
-
);
|
|
74
|
-
}
|
|
75
|
-
function AvatarGroupCount({ className, ...props }) {
|
|
76
|
-
return /* @__PURE__ */ React.createElement(
|
|
77
|
-
"div",
|
|
78
|
-
{
|
|
79
|
-
"data-slot": "avatar-group-count",
|
|
80
|
-
className: cn(
|
|
81
|
-
"relative flex size-8 shrink-0 items-center justify-center rounded-full bg-muted text-sm text-muted-foreground ring-2 ring-background group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3",
|
|
82
|
-
className
|
|
83
|
-
),
|
|
84
|
-
...props
|
|
85
|
-
}
|
|
86
|
-
);
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage };
|
|
1
|
+
import*as a from"react";import*as e from"@radix-ui/react-avatar";import{c as t}from"../../chunks/utils.C6Qu-kwd.js";function r({className:r,size:s="default",...i}){/* @__PURE__ */
|
|
2
|
+
return a.createElement(e.Root,{"data-slot":"avatar","data-size":s,className:t("group/avatar relative flex size-8 shrink-0 select-none data-[size=lg]:size-10 data-[size=sm]:size-6",r),...i})}function s({className:r,...s}){/* @__PURE__ */
|
|
3
|
+
return a.createElement(e.Image,{"data-slot":"avatar-image",className:t("aspect-square size-full overflow-hidden rounded-full",r),...s})}function i({className:r,...s}){/* @__PURE__ */
|
|
4
|
+
return a.createElement(e.Fallback,{"data-slot":"avatar-fallback",className:t("flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs",r),...s})}function u({className:e,...r}){/* @__PURE__ */
|
|
5
|
+
return a.createElement("span",{"data-slot":"avatar-badge",className:t("absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-primary text-primary-foreground ring-2 ring-background select-none","group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden","group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2 group-data-[size=default]/avatar:ring-1","group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2",e),...r})}function o({className:e,...r}){/* @__PURE__ */
|
|
6
|
+
return a.createElement("div",{"data-slot":"avatar-group",className:t("group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background",e),...r})}function l({className:e,...r}){/* @__PURE__ */
|
|
7
|
+
return a.createElement("div",{"data-slot":"avatar-group-count",className:t("relative flex size-8 shrink-0 items-center justify-center rounded-full bg-muted text-sm text-muted-foreground ring-2 ring-background group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3",e),...r})}export{r as Avatar,u as AvatarBadge,i as AvatarFallback,o as AvatarGroup,l as AvatarGroupCount,s as AvatarImage};
|
|
90
8
|
//# sourceMappingURL=avatar.js.map
|