brd-ui-kit 0.1.79 → 0.1.80
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/brd-ui-kit.css +1 -1
- package/dist/components/input-field/input-field.d.ts +2 -0
- package/dist/components/transfer-list/index.d.ts +1 -0
- package/dist/components/transfer-list/transfer-list-card.d.ts +22 -0
- package/dist/components/transfer-list/transfer-list.d.ts +12 -0
- package/dist/components/transfer-list.d.ts +2 -0
- package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts +3 -3
- package/dist/components-basic-avatar-basic-avatar.cjs +2 -2
- package/dist/components-basic-avatar-basic-avatar.cjs.map +1 -1
- package/dist/components-basic-avatar-basic-avatar.js +35 -32
- package/dist/components-basic-avatar-basic-avatar.js.map +1 -1
- package/dist/components-input-field-input-field.cjs +1 -1
- package/dist/components-input-field-input-field.cjs.map +1 -1
- package/dist/components-input-field-input-field.js +44 -36
- package/dist/components-input-field-input-field.js.map +1 -1
- package/dist/components-transfer-list-transfer-list-card.cjs +2 -0
- package/dist/components-transfer-list-transfer-list-card.cjs.map +1 -0
- package/dist/components-transfer-list-transfer-list-card.js +8 -0
- package/dist/components-transfer-list-transfer-list-card.js.map +1 -0
- package/dist/components-transfer-list-transfer-list.cjs +2 -0
- package/dist/components-transfer-list-transfer-list.cjs.map +1 -0
- package/dist/components-transfer-list-transfer-list.js +121 -0
- package/dist/components-transfer-list-transfer-list.js.map +1 -0
- package/dist/components-transfer-list.cjs +2 -0
- package/dist/components-transfer-list.cjs.map +1 -0
- package/dist/components-transfer-list.js +5 -0
- package/dist/components-transfer-list.js.map +1 -0
- package/dist/components-ui-avatar-avatar.cjs.map +1 -1
- package/dist/components-ui-avatar-avatar.js.map +1 -1
- package/dist/components-ui-dropdown-menu-dropdown-menu.cjs.map +1 -1
- package/dist/components-ui-dropdown-menu-dropdown-menu.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +14 -12
- package/dist/index.js.map +1 -1
- package/dist/transfer-list-card-3JPB-sdd.js +525 -0
- package/dist/transfer-list-card-3JPB-sdd.js.map +1 -0
- package/dist/transfer-list-card-D2oGp-Rw.cjs +28 -0
- package/dist/transfer-list-card-D2oGp-Rw.cjs.map +1 -0
- package/package.json +10 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./brd-ui-kit.css');const e=require("react/jsx-runtime");;/* empty css */const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./brd-ui-kit.css');const e=require("react/jsx-runtime");;/* empty css */const t=require("./lib-utils.cjs");require("class-variance-authority");require("./components-ui-badge-badge.styles.cjs");require("./components-ui-button-button.cjs");require("./components-ui-button-button.styles.cjs");require("./components-ui-card-card.cjs");require("./components-ui-checkbox-checkbox.cjs");require("phosphor-strokes-icons/icons/CaretDown");require("react");require("./calendar-PqChui7l.cjs");const p=require("./components-ui-icon-icon.cjs");require("phosphor-strokes-icons/icons");require("./components-ui-combobox-combobox.cjs");require("./components-ui-dialog-dialog.cjs");require("./components-ui-label-label.cjs");require("./components-ui-separator-separator.cjs");require("./components-ui-field-field.styles.cjs");require("./components-ui-input-input.styles.cjs");require("./components-ui-textarea-textarea.cjs");require("./components-ui-input-group-input-group.styles.cjs");require("./components-ui-navigation-item-navigation-item.styles.cjs");require("./components-ui-navigation-menu-navigation-menu.styles.cjs");require("./components-ui-pagination-pagination.cjs");require("./components-ui-progress-progress.cjs");require("./components-ui-radio-group-radio-group.cjs");require("./components-ui-switch-switch.cjs");require("./components-ui-toggle-toggle.styles.cjs");require("./components-ui-toggle-group-toggle-group.cjs");require("./components-ui-table-table.cjs");require("./components-ui-tabs-tabs.cjs");require("./components-ui-tooltip-tooltip.cjs");const m=require("./components-ui-typography-typography.cjs");require("./components-ui-typography-typography.styles.cjs");const q=require("./components-ui-avatar-avatar.cjs");require("phosphor-strokes-icons/icons/CaretLeft");require("phosphor-strokes-icons/icons/CaretRight");require("./components-app-pagination-app-pagination.styles.cjs");require("phosphor-strokes-icons/icons/CaretUpDown");require("./components-app-sidebar-app-sidebar.styles.cjs");require("./components-data-table-data-table.styles.cjs");require("./components-ui-dropdown-menu-dropdown-menu.styles.cjs");require("phosphor-strokes-icons/icons/Eye");require("phosphor-strokes-icons/icons/EyeSlash");require("./components-select-field-select-field.cjs");require("./lodash-kqhtUJfz.cjs");require("./chart-9H_9wEfR.cjs");require("phosphor-strokes-icons/icons/CheckCircle");require("phosphor-strokes-icons/icons/Info");require("phosphor-strokes-icons/icons/SpinnerGap");require("phosphor-strokes-icons/icons/Warning");require("phosphor-strokes-icons/icons/X");require("phosphor-strokes-icons/icons/XCircle");require("./index-DGxwh2Ms.cjs");require("./index-fTTv8YY8.cjs");require("phosphor-strokes-icons/icons/Plus");require("phosphor-strokes-icons/icons/CaretUp");require("phosphor-strokes-icons/icons/EnvelopeSimple");require("phosphor-strokes-icons/icons/MaxLogo");require("phosphor-strokes-icons/icons/Phone");require("phosphor-strokes-icons/icons/TelegramLogo");require("phosphor-strokes-icons/icons/WhatsAppLogoFilled");require("./components-input-phone-input-phone.cjs");require("./components-card-info-card-info.styles.cjs");const x=r=>{const[i,u]=r.trim().split(" ");return`${i[0].toUpperCase()}. ${u[0].toUpperCase()}.`},y=({initials:r,avatar:i,fallback:u,image:a,icon:n,showDeleteOnHover:c=!0,onClick:o=()=>{}})=>{const s=e.jsxs(q.Avatar,{...i,className:t.cn("h-18 w-18",i?.className),children:[e.jsx(q.AvatarImage,{...a,alt:"avatar",className:t.cn("h-full w-full border-0",a?.className)}),e.jsx(q.AvatarFallback,{...u,children:e.jsx(m.Typography,{variant:"body-xxl-medium",className:t.cn("text-info-new-text",r?.className),children:x(r?.text??"")})})]});return c?e.jsxs("div",{className:"relative inline-block",children:[s,e.jsx("div",{className:`text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex
|
|
2
2
|
cursor-pointer items-center justify-center rounded-full opacity-0
|
|
3
|
-
transition-opacity hover:opacity-100`,onClick:l=>l.stopPropagation(),children:e.jsx(p.Icon,{...n,type:"x",onClick:o})})]}):
|
|
3
|
+
transition-opacity hover:opacity-100`,onClick:l=>l.stopPropagation(),children:e.jsx(p.Icon,{...n,type:"x",onClick:o})})]}):s};exports.BasicAvatar=y;
|
|
4
4
|
//# sourceMappingURL=components-basic-avatar-basic-avatar.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-basic-avatar-basic-avatar.cjs","sources":["../src/components/basic-avatar/basic-avatar.tsx"],"sourcesContent":["import { Icon, Typography, cn } from \"@/index\";\nimport type { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"../ui/avatar\";\nimport type { IconProps } from \"../ui/icon\";\n\ntype AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: \"default\" | \"sm\" | \"lg\";\n};\ntype AvatarFallbackProps = React.ComponentProps<typeof AvatarPrimitive.Fallback>;\ntype AvatarImageProps = React.ComponentProps<typeof AvatarPrimitive.Image>;\n\ntype Props = {\n initials?: {\n text?: string;\n className?: string;\n };\n hasBadge?: boolean;\n avatar?: AvatarProps;\n fallback?: AvatarFallbackProps;\n image?: AvatarImageProps;\n showDeleteOnHover?: boolean;\n icon?: IconProps;\n onClick?: (e: React.MouseEvent<HTMLDivElement>) => void;\n};\n\nexport const BasicAvatar = ({\n initials,\n avatar,\n fallback,\n image,\n icon,\n showDeleteOnHover = true,\n onClick = () => {},\n}: Props) => {\n const content = (\n <Avatar\n {...avatar}\n className={cn(\"h-18 w-18\", avatar?.className)}\n >\n <AvatarImage\n {...image}\n alt=\"avatar\"\n className={cn(\"h-full w-full border-0\", image?.className)}\n />\n <AvatarFallback {...fallback}>\n <Typography\n variant=\"body-xxl-medium\"\n className={cn(\"text-info-new-text\", initials?.className)}\n >\n {initials?.text}\n </Typography>\n </AvatarFallback>\n </Avatar>\n );\n\n if (!showDeleteOnHover) {\n return content;\n }\n\n return (\n <div className=\"relative inline-block\">\n {content}\n <div\n className=\"text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex\n cursor-pointer items-center justify-center rounded-full opacity-0\n transition-opacity hover:opacity-100\"\n onClick={(e) => e.stopPropagation()}\n >\n <Icon\n {...icon}\n type=\"x\"\n onClick={onClick}\n />\n </div>\n </div>\n );\n};\n\nexport type {\n AvatarFallbackProps,\n AvatarImageProps,\n AvatarProps,\n Props as BasicAvatarProps,\n};\n"],"names":["BasicAvatar","initials","avatar","fallback","image","icon","showDeleteOnHover","onClick","content","jsxs","Avatar","cn","jsx","AvatarImage","AvatarFallback","Typography","e","Icon"],"mappings":"
|
|
1
|
+
{"version":3,"file":"components-basic-avatar-basic-avatar.cjs","sources":["../src/components/basic-avatar/basic-avatar.tsx"],"sourcesContent":["import { Icon, Typography, cn } from \"@/index\";\nimport type { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"../ui/avatar\";\nimport type { IconProps } from \"../ui/icon\";\n\ntype AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: \"default\" | \"sm\" | \"lg\";\n};\ntype AvatarFallbackProps = React.ComponentProps<typeof AvatarPrimitive.Fallback>;\ntype AvatarImageProps = React.ComponentProps<typeof AvatarPrimitive.Image>;\n\ntype Props = {\n initials?: {\n text?: string;\n className?: string;\n };\n hasBadge?: boolean;\n avatar?: AvatarProps;\n fallback?: AvatarFallbackProps;\n image?: AvatarImageProps;\n showDeleteOnHover?: boolean;\n icon?: IconProps;\n onClick?: (e: React.MouseEvent<HTMLDivElement>) => void;\n};\n\nconst getInitials = (fullName: string): string => {\n const [firstName, lastName] = fullName.trim().split(\" \");\n return `${firstName[0].toUpperCase()}. ${lastName[0].toUpperCase()}.`;\n};\n\nexport const BasicAvatar = ({\n initials,\n avatar,\n fallback,\n image,\n icon,\n showDeleteOnHover = true,\n onClick = () => {},\n}: Props) => {\n const content = (\n <Avatar\n {...avatar}\n className={cn(\"h-18 w-18\", avatar?.className)}\n >\n <AvatarImage\n {...image}\n alt=\"avatar\"\n className={cn(\"h-full w-full border-0\", image?.className)}\n />\n <AvatarFallback {...fallback}>\n <Typography\n variant=\"body-xxl-medium\"\n className={cn(\"text-info-new-text\", initials?.className)}\n >\n {getInitials(initials?.text ?? \"\")}\n </Typography>\n </AvatarFallback>\n </Avatar>\n );\n\n if (!showDeleteOnHover) {\n return content;\n }\n\n return (\n <div className=\"relative inline-block\">\n {content}\n <div\n className=\"text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex\n cursor-pointer items-center justify-center rounded-full opacity-0\n transition-opacity hover:opacity-100\"\n onClick={(e) => e.stopPropagation()}\n >\n <Icon\n {...icon}\n type=\"x\"\n onClick={onClick}\n />\n </div>\n </div>\n );\n};\n\nexport type {\n AvatarFallbackProps,\n AvatarImageProps,\n AvatarProps,\n Props as BasicAvatarProps,\n};\n"],"names":["getInitials","fullName","firstName","lastName","BasicAvatar","initials","avatar","fallback","image","icon","showDeleteOnHover","onClick","content","jsxs","Avatar","cn","jsx","AvatarImage","AvatarFallback","Typography","e","Icon"],"mappings":"4pGAyBA,MAAMA,EAAeC,GAA6B,CAChD,KAAM,CAACC,EAAWC,CAAQ,EAAIF,EAAS,KAAA,EAAO,MAAM,GAAG,EACvD,MAAO,GAAGC,EAAU,CAAC,EAAE,YAAA,CAAa,KAAKC,EAAS,CAAC,EAAE,YAAA,CAAa,GACpE,EAEaC,EAAc,CAAC,CAC1B,SAAAC,EACA,OAAAC,EACA,SAAAC,EACA,MAAAC,EACA,KAAAC,EACA,kBAAAC,EAAoB,GACpB,QAAAC,EAAU,IAAM,CAAC,CACnB,IAAa,CACX,MAAMC,EACJC,EAAAA,KAACC,EAAAA,OAAA,CACE,GAAGR,EACJ,UAAWS,EAAAA,GAAG,YAAaT,GAAQ,SAAS,EAE5C,SAAA,CAAAU,EAAAA,IAACC,EAAAA,YAAA,CACE,GAAGT,EACJ,IAAI,SACJ,UAAWO,EAAAA,GAAG,yBAA0BP,GAAO,SAAS,CAAA,CAAA,EAE1DQ,EAAAA,IAACE,EAAAA,eAAA,CAAgB,GAAGX,EAClB,SAAAS,EAAAA,IAACG,EAAAA,WAAA,CACC,QAAQ,kBACR,UAAWJ,EAAAA,GAAG,qBAAsBV,GAAU,SAAS,EAEtD,SAAAL,EAAYK,GAAU,MAAQ,EAAE,CAAA,CAAA,CACnC,CACF,CAAA,CAAA,CAAA,EAIJ,OAAKK,EAKHG,EAAAA,KAAC,MAAA,CAAI,UAAU,wBACZ,SAAA,CAAAD,EACDI,EAAAA,IAAC,MAAA,CACC,UAAU;AAAA;AAAA,gDAGV,QAAUI,GAAMA,EAAE,gBAAA,EAElB,SAAAJ,EAAAA,IAACK,EAAAA,KAAA,CACE,GAAGZ,EACJ,KAAK,IACL,QAAAE,CAAA,CAAA,CACF,CAAA,CACF,EACF,EAlBOC,CAoBX"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { jsxs as
|
|
1
|
+
import { jsxs as a, jsx as t } from "react/jsx-runtime";
|
|
2
2
|
import './brd-ui-kit.css';/* empty css */
|
|
3
|
-
import { cn as
|
|
3
|
+
import { cn as m } from "./lib-utils.js";
|
|
4
4
|
import "class-variance-authority";
|
|
5
5
|
import "./components-ui-badge-badge.styles.js";
|
|
6
6
|
import "./components-ui-button-button.js";
|
|
@@ -10,7 +10,7 @@ import "./components-ui-checkbox-checkbox.js";
|
|
|
10
10
|
import "phosphor-strokes-icons/icons/CaretDown";
|
|
11
11
|
import "react";
|
|
12
12
|
import "./calendar-XWqEaWHP.js";
|
|
13
|
-
import { Icon as
|
|
13
|
+
import { Icon as f } from "./components-ui-icon-icon.js";
|
|
14
14
|
import "phosphor-strokes-icons/icons";
|
|
15
15
|
import "./components-ui-combobox-combobox.js";
|
|
16
16
|
import "./components-ui-dialog-dialog.js";
|
|
@@ -31,7 +31,7 @@ import "./components-ui-toggle-group-toggle-group.js";
|
|
|
31
31
|
import "./components-ui-table-table.js";
|
|
32
32
|
import "./components-ui-tabs-tabs.js";
|
|
33
33
|
import "./components-ui-tooltip-tooltip.js";
|
|
34
|
-
import { Typography as
|
|
34
|
+
import { Typography as d } from "./components-ui-typography-typography.js";
|
|
35
35
|
import "./components-ui-typography-typography.styles.js";
|
|
36
36
|
import { Avatar as u, AvatarImage as x, AvatarFallback as v } from "./components-ui-avatar-avatar.js";
|
|
37
37
|
import "phosphor-strokes-icons/icons/CaretLeft";
|
|
@@ -63,63 +63,66 @@ import "phosphor-strokes-icons/icons/TelegramLogo";
|
|
|
63
63
|
import "phosphor-strokes-icons/icons/WhatsAppLogoFilled";
|
|
64
64
|
import "./components-input-phone-input-phone.js";
|
|
65
65
|
import "./components-card-info-card-info.styles.js";
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
66
|
+
const y = (r) => {
|
|
67
|
+
const [o, i] = r.trim().split(" ");
|
|
68
|
+
return `${o[0].toUpperCase()}. ${i[0].toUpperCase()}.`;
|
|
69
|
+
}, $t = ({
|
|
70
|
+
initials: r,
|
|
71
|
+
avatar: o,
|
|
72
|
+
fallback: i,
|
|
73
|
+
image: p,
|
|
74
|
+
icon: s,
|
|
75
|
+
showDeleteOnHover: n = !0,
|
|
76
|
+
onClick: l = () => {
|
|
74
77
|
}
|
|
75
78
|
}) => {
|
|
76
|
-
const
|
|
79
|
+
const e = /* @__PURE__ */ a(
|
|
77
80
|
u,
|
|
78
81
|
{
|
|
79
|
-
...
|
|
80
|
-
className:
|
|
82
|
+
...o,
|
|
83
|
+
className: m("h-18 w-18", o?.className),
|
|
81
84
|
children: [
|
|
82
|
-
/* @__PURE__ */
|
|
85
|
+
/* @__PURE__ */ t(
|
|
83
86
|
x,
|
|
84
87
|
{
|
|
85
|
-
...
|
|
88
|
+
...p,
|
|
86
89
|
alt: "avatar",
|
|
87
|
-
className:
|
|
90
|
+
className: m("h-full w-full border-0", p?.className)
|
|
88
91
|
}
|
|
89
92
|
),
|
|
90
|
-
/* @__PURE__ */
|
|
91
|
-
|
|
93
|
+
/* @__PURE__ */ t(v, { ...i, children: /* @__PURE__ */ t(
|
|
94
|
+
d,
|
|
92
95
|
{
|
|
93
96
|
variant: "body-xxl-medium",
|
|
94
|
-
className:
|
|
95
|
-
children:
|
|
97
|
+
className: m("text-info-new-text", r?.className),
|
|
98
|
+
children: y(r?.text ?? "")
|
|
96
99
|
}
|
|
97
100
|
) })
|
|
98
101
|
]
|
|
99
102
|
}
|
|
100
103
|
);
|
|
101
|
-
return
|
|
102
|
-
|
|
103
|
-
/* @__PURE__ */
|
|
104
|
+
return n ? /* @__PURE__ */ a("div", { className: "relative inline-block", children: [
|
|
105
|
+
e,
|
|
106
|
+
/* @__PURE__ */ t(
|
|
104
107
|
"div",
|
|
105
108
|
{
|
|
106
109
|
className: `text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex
|
|
107
110
|
cursor-pointer items-center justify-center rounded-full opacity-0
|
|
108
111
|
transition-opacity hover:opacity-100`,
|
|
109
|
-
onClick: (
|
|
110
|
-
children: /* @__PURE__ */
|
|
111
|
-
|
|
112
|
+
onClick: (c) => c.stopPropagation(),
|
|
113
|
+
children: /* @__PURE__ */ t(
|
|
114
|
+
f,
|
|
112
115
|
{
|
|
113
|
-
...
|
|
116
|
+
...s,
|
|
114
117
|
type: "x",
|
|
115
|
-
onClick:
|
|
118
|
+
onClick: l
|
|
116
119
|
}
|
|
117
120
|
)
|
|
118
121
|
}
|
|
119
122
|
)
|
|
120
|
-
] }) :
|
|
123
|
+
] }) : e;
|
|
121
124
|
};
|
|
122
125
|
export {
|
|
123
|
-
|
|
126
|
+
$t as BasicAvatar
|
|
124
127
|
};
|
|
125
128
|
//# sourceMappingURL=components-basic-avatar-basic-avatar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-basic-avatar-basic-avatar.js","sources":["../src/components/basic-avatar/basic-avatar.tsx"],"sourcesContent":["import { Icon, Typography, cn } from \"@/index\";\nimport type { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"../ui/avatar\";\nimport type { IconProps } from \"../ui/icon\";\n\ntype AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: \"default\" | \"sm\" | \"lg\";\n};\ntype AvatarFallbackProps = React.ComponentProps<typeof AvatarPrimitive.Fallback>;\ntype AvatarImageProps = React.ComponentProps<typeof AvatarPrimitive.Image>;\n\ntype Props = {\n initials?: {\n text?: string;\n className?: string;\n };\n hasBadge?: boolean;\n avatar?: AvatarProps;\n fallback?: AvatarFallbackProps;\n image?: AvatarImageProps;\n showDeleteOnHover?: boolean;\n icon?: IconProps;\n onClick?: (e: React.MouseEvent<HTMLDivElement>) => void;\n};\n\nexport const BasicAvatar = ({\n initials,\n avatar,\n fallback,\n image,\n icon,\n showDeleteOnHover = true,\n onClick = () => {},\n}: Props) => {\n const content = (\n <Avatar\n {...avatar}\n className={cn(\"h-18 w-18\", avatar?.className)}\n >\n <AvatarImage\n {...image}\n alt=\"avatar\"\n className={cn(\"h-full w-full border-0\", image?.className)}\n />\n <AvatarFallback {...fallback}>\n <Typography\n variant=\"body-xxl-medium\"\n className={cn(\"text-info-new-text\", initials?.className)}\n >\n {initials?.text}\n </Typography>\n </AvatarFallback>\n </Avatar>\n );\n\n if (!showDeleteOnHover) {\n return content;\n }\n\n return (\n <div className=\"relative inline-block\">\n {content}\n <div\n className=\"text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex\n cursor-pointer items-center justify-center rounded-full opacity-0\n transition-opacity hover:opacity-100\"\n onClick={(e) => e.stopPropagation()}\n >\n <Icon\n {...icon}\n type=\"x\"\n onClick={onClick}\n />\n </div>\n </div>\n );\n};\n\nexport type {\n AvatarFallbackProps,\n AvatarImageProps,\n AvatarProps,\n Props as BasicAvatarProps,\n};\n"],"names":["BasicAvatar","initials","avatar","fallback","image","icon","showDeleteOnHover","onClick","content","jsxs","Avatar","cn","jsx","AvatarImage","AvatarFallback","Typography","e","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"components-basic-avatar-basic-avatar.js","sources":["../src/components/basic-avatar/basic-avatar.tsx"],"sourcesContent":["import { Icon, Typography, cn } from \"@/index\";\nimport type { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"../ui/avatar\";\nimport type { IconProps } from \"../ui/icon\";\n\ntype AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: \"default\" | \"sm\" | \"lg\";\n};\ntype AvatarFallbackProps = React.ComponentProps<typeof AvatarPrimitive.Fallback>;\ntype AvatarImageProps = React.ComponentProps<typeof AvatarPrimitive.Image>;\n\ntype Props = {\n initials?: {\n text?: string;\n className?: string;\n };\n hasBadge?: boolean;\n avatar?: AvatarProps;\n fallback?: AvatarFallbackProps;\n image?: AvatarImageProps;\n showDeleteOnHover?: boolean;\n icon?: IconProps;\n onClick?: (e: React.MouseEvent<HTMLDivElement>) => void;\n};\n\nconst getInitials = (fullName: string): string => {\n const [firstName, lastName] = fullName.trim().split(\" \");\n return `${firstName[0].toUpperCase()}. ${lastName[0].toUpperCase()}.`;\n};\n\nexport const BasicAvatar = ({\n initials,\n avatar,\n fallback,\n image,\n icon,\n showDeleteOnHover = true,\n onClick = () => {},\n}: Props) => {\n const content = (\n <Avatar\n {...avatar}\n className={cn(\"h-18 w-18\", avatar?.className)}\n >\n <AvatarImage\n {...image}\n alt=\"avatar\"\n className={cn(\"h-full w-full border-0\", image?.className)}\n />\n <AvatarFallback {...fallback}>\n <Typography\n variant=\"body-xxl-medium\"\n className={cn(\"text-info-new-text\", initials?.className)}\n >\n {getInitials(initials?.text ?? \"\")}\n </Typography>\n </AvatarFallback>\n </Avatar>\n );\n\n if (!showDeleteOnHover) {\n return content;\n }\n\n return (\n <div className=\"relative inline-block\">\n {content}\n <div\n className=\"text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex\n cursor-pointer items-center justify-center rounded-full opacity-0\n transition-opacity hover:opacity-100\"\n onClick={(e) => e.stopPropagation()}\n >\n <Icon\n {...icon}\n type=\"x\"\n onClick={onClick}\n />\n </div>\n </div>\n );\n};\n\nexport type {\n AvatarFallbackProps,\n AvatarImageProps,\n AvatarProps,\n Props as BasicAvatarProps,\n};\n"],"names":["getInitials","fullName","firstName","lastName","BasicAvatar","initials","avatar","fallback","image","icon","showDeleteOnHover","onClick","content","jsxs","Avatar","cn","jsx","AvatarImage","AvatarFallback","Typography","e","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,MAAMA,IAAc,CAACC,MAA6B;AAChD,QAAM,CAACC,GAAWC,CAAQ,IAAIF,EAAS,KAAA,EAAO,MAAM,GAAG;AACvD,SAAO,GAAGC,EAAU,CAAC,EAAE,YAAA,CAAa,KAAKC,EAAS,CAAC,EAAE,YAAA,CAAa;AACpE,GAEaC,KAAc,CAAC;AAAA,EAC1B,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,mBAAAC,IAAoB;AAAA,EACpB,SAAAC,IAAU,MAAM;AAAA,EAAC;AACnB,MAAa;AACX,QAAMC,IACJ,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACE,GAAGR;AAAA,MACJ,WAAWS,EAAG,aAAaT,GAAQ,SAAS;AAAA,MAE5C,UAAA;AAAA,QAAA,gBAAAU;AAAA,UAACC;AAAA,UAAA;AAAA,YACE,GAAGT;AAAA,YACJ,KAAI;AAAA,YACJ,WAAWO,EAAG,0BAA0BP,GAAO,SAAS;AAAA,UAAA;AAAA,QAAA;AAAA,QAE1D,gBAAAQ,EAACE,GAAA,EAAgB,GAAGX,GAClB,UAAA,gBAAAS;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,WAAWJ,EAAG,sBAAsBV,GAAU,SAAS;AAAA,YAEtD,UAAAL,EAAYK,GAAU,QAAQ,EAAE;AAAA,UAAA;AAAA,QAAA,EACnC,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAIJ,SAAKK,IAKH,gBAAAG,EAAC,OAAA,EAAI,WAAU,yBACZ,UAAA;AAAA,IAAAD;AAAA,IACD,gBAAAI;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAU;AAAA;AAAA;AAAA,QAGV,SAAS,CAACI,MAAMA,EAAE,gBAAA;AAAA,QAElB,UAAA,gBAAAJ;AAAA,UAACK;AAAA,UAAA;AAAA,YACE,GAAGZ;AAAA,YACJ,MAAK;AAAA,YACL,SAAAE;AAAA,UAAA;AAAA,QAAA;AAAA,MACF;AAAA,IAAA;AAAA,EACF,GACF,IAlBOC;AAoBX;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),t=require("./components-ui-field-field.cjs"),m=require("./components-ui-input-input.cjs"),o=require("./components-ui-input-group-input-group.cjs"),j=({date:p=[],isValid:l,disabled:e=!1,label:s,description:c,classes:i,ref:d,...a})=>{const u={...l===!0&&!e&&{"aria-valid":!0},...l===!1&&!e&&{"aria-invalid":!0},disabled:e};return n.jsx(t.FieldSet,{className:i?.fieldset,children:n.jsx(t.FieldGroup,{className:i?.fieldgroup,children:n.jsxs(t.Field,{className:i?.field,children:[s&&n.jsx(t.FieldLabel,{...u,children:s}),p.length>0?n.jsxs(o.InputGroup,{"data-slot":!0,className:i?.inputgroup,children:[n.jsx(o.InputGroupInput,{ref:d,...a,...u,disabled:e}),p.map(r=>n.jsx(o.InputGroupAddon,{align:r.position,className:i?.inputaddon,children:r.component},r.id))]}):n.jsx(m.Input,{ref:d,...a,...u,disabled:e}),c&&n.jsx(t.FieldDescription,{...u,children:c})]})})})};exports.InputField=j;
|
|
2
2
|
//# sourceMappingURL=components-input-field-input-field.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-input-field-input-field.cjs","sources":["../src/components/input-field/input-field.tsx"],"sourcesContent":["import type { ComponentPropsWithRef, ReactNode } from \"react\";\nimport { Field, FieldDescription, FieldGroup, FieldLabel, FieldSet } from \"../ui/field\";\nimport { Input } from \"../ui/input\";\nimport { InputGroup, InputGroupAddon, InputGroupInput } from \"../ui/input-group\";\n\nexport type DateAddon = {\n id: string | number;\n position?: \"inline-start\" | \"inline-end\" | \"block-start\" | \"block-end\" | null;\n component: ReactNode;\n};\n\ntype BaseProps = {\n date?: DateAddon[];\n isValid?: boolean;\n label?: string;\n description?: string;\n classes?: {\n fieldset?: string;\n fieldgroup?: string;\n field?: string;\n };\n};\n\ntype InputFieldProps = BaseProps & ComponentPropsWithRef<\"input\">;\n\nexport const InputField = ({\n date = [],\n isValid,\n disabled = false,\n label,\n description,\n classes,\n ref,\n ...rest\n}: InputFieldProps) => {\n const validationProps = {\n ...(isValid === true && !disabled && { \"aria-valid\": true }),\n ...(isValid === false && !disabled && { \"aria-invalid\": true }),\n disabled,\n };\n\n return (\n <FieldSet className={classes?.fieldset}>\n <FieldGroup className={classes?.fieldgroup}>\n <Field className={classes?.field}>\n {label && <FieldLabel {...validationProps}>{label}</FieldLabel>}\n {date.length > 0 ? (\n <InputGroup
|
|
1
|
+
{"version":3,"file":"components-input-field-input-field.cjs","sources":["../src/components/input-field/input-field.tsx"],"sourcesContent":["import type { ComponentPropsWithRef, ReactNode } from \"react\";\nimport { Field, FieldDescription, FieldGroup, FieldLabel, FieldSet } from \"../ui/field\";\nimport { Input } from \"../ui/input\";\nimport { InputGroup, InputGroupAddon, InputGroupInput } from \"../ui/input-group\";\n\nexport type DateAddon = {\n id: string | number;\n position?: \"inline-start\" | \"inline-end\" | \"block-start\" | \"block-end\" | null;\n component: ReactNode;\n};\n\ntype BaseProps = {\n date?: DateAddon[];\n isValid?: boolean;\n label?: string;\n description?: string;\n classes?: {\n fieldset?: string;\n fieldgroup?: string;\n field?: string;\n inputgroup?: string;\n inputaddon?: string;\n };\n};\n\ntype InputFieldProps = BaseProps & ComponentPropsWithRef<\"input\">;\n\nexport const InputField = ({\n date = [],\n isValid,\n disabled = false,\n label,\n description,\n classes,\n ref,\n ...rest\n}: InputFieldProps) => {\n const validationProps = {\n ...(isValid === true && !disabled && { \"aria-valid\": true }),\n ...(isValid === false && !disabled && { \"aria-invalid\": true }),\n disabled,\n };\n\n return (\n <FieldSet className={classes?.fieldset}>\n <FieldGroup className={classes?.fieldgroup}>\n <Field className={classes?.field}>\n {label && <FieldLabel {...validationProps}>{label}</FieldLabel>}\n {date.length > 0 ? (\n <InputGroup\n data-slot\n className={classes?.inputgroup}\n >\n <InputGroupInput\n ref={ref}\n {...rest}\n {...validationProps}\n disabled={disabled}\n />\n {date.map((e) => (\n <InputGroupAddon\n key={e.id}\n align={e.position}\n className={classes?.inputaddon}\n >\n {e.component}\n </InputGroupAddon>\n ))}\n </InputGroup>\n ) : (\n <Input\n ref={ref}\n {...rest}\n {...validationProps}\n disabled={disabled}\n />\n )}\n {description && (\n <FieldDescription {...validationProps}>{description}</FieldDescription>\n )}\n </Field>\n </FieldGroup>\n </FieldSet>\n );\n};\n\ntype InputProps = InputFieldProps;\n\nexport type { InputFieldProps, InputProps };\n"],"names":["InputField","date","isValid","disabled","label","description","classes","ref","rest","validationProps","jsx","FieldSet","FieldGroup","jsxs","Field","FieldLabel","InputGroup","InputGroupInput","e","InputGroupAddon","Input","FieldDescription"],"mappings":"wQA2BaA,EAAa,CAAC,CACzB,KAAAC,EAAO,CAAA,EACP,QAAAC,EACA,SAAAC,EAAW,GACX,MAAAC,EACA,YAAAC,EACA,QAAAC,EACA,IAAAC,EACA,GAAGC,CACL,IAAuB,CACrB,MAAMC,EAAkB,CACtB,GAAIP,IAAY,IAAQ,CAACC,GAAY,CAAE,aAAc,EAAA,EACrD,GAAID,IAAY,IAAS,CAACC,GAAY,CAAE,eAAgB,EAAA,EACxD,SAAAA,CAAA,EAGF,OACEO,EAAAA,IAACC,EAAAA,SAAA,CAAS,UAAWL,GAAS,SAC5B,SAAAI,EAAAA,IAACE,aAAA,CAAW,UAAWN,GAAS,WAC9B,SAAAO,OAACC,EAAAA,MAAA,CAAM,UAAWR,GAAS,MACxB,SAAA,CAAAF,GAASM,EAAAA,IAACK,aAAA,CAAY,GAAGN,EAAkB,SAAAL,EAAM,EACjDH,EAAK,OAAS,EACbY,EAAAA,KAACG,EAAAA,WAAA,CACC,YAAS,GACT,UAAWV,GAAS,WAEpB,SAAA,CAAAI,EAAAA,IAACO,EAAAA,gBAAA,CACC,IAAAV,EACC,GAAGC,EACH,GAAGC,EACJ,SAAAN,CAAA,CAAA,EAEDF,EAAK,IAAKiB,GACTR,EAAAA,IAACS,EAAAA,gBAAA,CAEC,MAAOD,EAAE,SACT,UAAWZ,GAAS,WAEnB,SAAAY,EAAE,SAAA,EAJEA,EAAE,EAAA,CAMV,CAAA,CAAA,CAAA,EAGHR,EAAAA,IAACU,EAAAA,MAAA,CACC,IAAAb,EACC,GAAGC,EACH,GAAGC,EACJ,SAAAN,CAAA,CAAA,EAGHE,GACCK,EAAAA,IAACW,EAAAA,iBAAA,CAAkB,GAAGZ,EAAkB,SAAAJ,CAAA,CAAY,CAAA,CAAA,CAExD,EACF,EACF,CAEJ"}
|
|
@@ -1,52 +1,60 @@
|
|
|
1
1
|
import { jsx as r, jsxs as d } from "react/jsx-runtime";
|
|
2
2
|
import { FieldSet as c, FieldGroup as f, Field as h, FieldLabel as F, FieldDescription as I } from "./components-ui-field-field.js";
|
|
3
|
-
import { Input as
|
|
4
|
-
import { InputGroup as
|
|
3
|
+
import { Input as N } from "./components-ui-input-input.js";
|
|
4
|
+
import { InputGroup as g, InputGroupInput as G, InputGroupAddon as s } from "./components-ui-input-group-input-group.js";
|
|
5
5
|
const D = ({
|
|
6
|
-
date:
|
|
7
|
-
isValid:
|
|
6
|
+
date: p = [],
|
|
7
|
+
isValid: e,
|
|
8
8
|
disabled: i = !1,
|
|
9
9
|
label: l,
|
|
10
10
|
description: u,
|
|
11
|
-
classes:
|
|
12
|
-
ref:
|
|
13
|
-
...
|
|
11
|
+
classes: n,
|
|
12
|
+
ref: a,
|
|
13
|
+
...m
|
|
14
14
|
}) => {
|
|
15
|
-
const
|
|
16
|
-
...
|
|
17
|
-
...
|
|
15
|
+
const o = {
|
|
16
|
+
...e === !0 && !i && { "aria-valid": !0 },
|
|
17
|
+
...e === !1 && !i && { "aria-invalid": !0 },
|
|
18
18
|
disabled: i
|
|
19
19
|
};
|
|
20
|
-
return /* @__PURE__ */ r(c, { className:
|
|
21
|
-
l && /* @__PURE__ */ r(F, { ...
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
g,
|
|
25
|
-
{
|
|
26
|
-
ref: m,
|
|
27
|
-
...a,
|
|
28
|
-
...n,
|
|
29
|
-
disabled: i
|
|
30
|
-
}
|
|
31
|
-
),
|
|
32
|
-
e.map((t) => /* @__PURE__ */ r(
|
|
33
|
-
v,
|
|
34
|
-
{
|
|
35
|
-
align: t.position,
|
|
36
|
-
children: t.component
|
|
37
|
-
},
|
|
38
|
-
t.id
|
|
39
|
-
))
|
|
40
|
-
] }) : /* @__PURE__ */ r(
|
|
41
|
-
s,
|
|
20
|
+
return /* @__PURE__ */ r(c, { className: n?.fieldset, children: /* @__PURE__ */ r(f, { className: n?.fieldgroup, children: /* @__PURE__ */ d(h, { className: n?.field, children: [
|
|
21
|
+
l && /* @__PURE__ */ r(F, { ...o, children: l }),
|
|
22
|
+
p.length > 0 ? /* @__PURE__ */ d(
|
|
23
|
+
g,
|
|
42
24
|
{
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
25
|
+
"data-slot": !0,
|
|
26
|
+
className: n?.inputgroup,
|
|
27
|
+
children: [
|
|
28
|
+
/* @__PURE__ */ r(
|
|
29
|
+
G,
|
|
30
|
+
{
|
|
31
|
+
ref: a,
|
|
32
|
+
...m,
|
|
33
|
+
...o,
|
|
34
|
+
disabled: i
|
|
35
|
+
}
|
|
36
|
+
),
|
|
37
|
+
p.map((t) => /* @__PURE__ */ r(
|
|
38
|
+
s,
|
|
39
|
+
{
|
|
40
|
+
align: t.position,
|
|
41
|
+
className: n?.inputaddon,
|
|
42
|
+
children: t.component
|
|
43
|
+
},
|
|
44
|
+
t.id
|
|
45
|
+
))
|
|
46
|
+
]
|
|
47
|
+
}
|
|
48
|
+
) : /* @__PURE__ */ r(
|
|
49
|
+
N,
|
|
50
|
+
{
|
|
51
|
+
ref: a,
|
|
52
|
+
...m,
|
|
53
|
+
...o,
|
|
46
54
|
disabled: i
|
|
47
55
|
}
|
|
48
56
|
),
|
|
49
|
-
u && /* @__PURE__ */ r(I, { ...
|
|
57
|
+
u && /* @__PURE__ */ r(I, { ...o, children: u })
|
|
50
58
|
] }) }) });
|
|
51
59
|
};
|
|
52
60
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-input-field-input-field.js","sources":["../src/components/input-field/input-field.tsx"],"sourcesContent":["import type { ComponentPropsWithRef, ReactNode } from \"react\";\nimport { Field, FieldDescription, FieldGroup, FieldLabel, FieldSet } from \"../ui/field\";\nimport { Input } from \"../ui/input\";\nimport { InputGroup, InputGroupAddon, InputGroupInput } from \"../ui/input-group\";\n\nexport type DateAddon = {\n id: string | number;\n position?: \"inline-start\" | \"inline-end\" | \"block-start\" | \"block-end\" | null;\n component: ReactNode;\n};\n\ntype BaseProps = {\n date?: DateAddon[];\n isValid?: boolean;\n label?: string;\n description?: string;\n classes?: {\n fieldset?: string;\n fieldgroup?: string;\n field?: string;\n };\n};\n\ntype InputFieldProps = BaseProps & ComponentPropsWithRef<\"input\">;\n\nexport const InputField = ({\n date = [],\n isValid,\n disabled = false,\n label,\n description,\n classes,\n ref,\n ...rest\n}: InputFieldProps) => {\n const validationProps = {\n ...(isValid === true && !disabled && { \"aria-valid\": true }),\n ...(isValid === false && !disabled && { \"aria-invalid\": true }),\n disabled,\n };\n\n return (\n <FieldSet className={classes?.fieldset}>\n <FieldGroup className={classes?.fieldgroup}>\n <Field className={classes?.field}>\n {label && <FieldLabel {...validationProps}>{label}</FieldLabel>}\n {date.length > 0 ? (\n <InputGroup
|
|
1
|
+
{"version":3,"file":"components-input-field-input-field.js","sources":["../src/components/input-field/input-field.tsx"],"sourcesContent":["import type { ComponentPropsWithRef, ReactNode } from \"react\";\nimport { Field, FieldDescription, FieldGroup, FieldLabel, FieldSet } from \"../ui/field\";\nimport { Input } from \"../ui/input\";\nimport { InputGroup, InputGroupAddon, InputGroupInput } from \"../ui/input-group\";\n\nexport type DateAddon = {\n id: string | number;\n position?: \"inline-start\" | \"inline-end\" | \"block-start\" | \"block-end\" | null;\n component: ReactNode;\n};\n\ntype BaseProps = {\n date?: DateAddon[];\n isValid?: boolean;\n label?: string;\n description?: string;\n classes?: {\n fieldset?: string;\n fieldgroup?: string;\n field?: string;\n inputgroup?: string;\n inputaddon?: string;\n };\n};\n\ntype InputFieldProps = BaseProps & ComponentPropsWithRef<\"input\">;\n\nexport const InputField = ({\n date = [],\n isValid,\n disabled = false,\n label,\n description,\n classes,\n ref,\n ...rest\n}: InputFieldProps) => {\n const validationProps = {\n ...(isValid === true && !disabled && { \"aria-valid\": true }),\n ...(isValid === false && !disabled && { \"aria-invalid\": true }),\n disabled,\n };\n\n return (\n <FieldSet className={classes?.fieldset}>\n <FieldGroup className={classes?.fieldgroup}>\n <Field className={classes?.field}>\n {label && <FieldLabel {...validationProps}>{label}</FieldLabel>}\n {date.length > 0 ? (\n <InputGroup\n data-slot\n className={classes?.inputgroup}\n >\n <InputGroupInput\n ref={ref}\n {...rest}\n {...validationProps}\n disabled={disabled}\n />\n {date.map((e) => (\n <InputGroupAddon\n key={e.id}\n align={e.position}\n className={classes?.inputaddon}\n >\n {e.component}\n </InputGroupAddon>\n ))}\n </InputGroup>\n ) : (\n <Input\n ref={ref}\n {...rest}\n {...validationProps}\n disabled={disabled}\n />\n )}\n {description && (\n <FieldDescription {...validationProps}>{description}</FieldDescription>\n )}\n </Field>\n </FieldGroup>\n </FieldSet>\n );\n};\n\ntype InputProps = InputFieldProps;\n\nexport type { InputFieldProps, InputProps };\n"],"names":["InputField","date","isValid","disabled","label","description","classes","ref","rest","validationProps","jsx","FieldSet","FieldGroup","jsxs","Field","FieldLabel","InputGroup","InputGroupInput","e","InputGroupAddon","Input","FieldDescription"],"mappings":";;;;AA2BO,MAAMA,IAAa,CAAC;AAAA,EACzB,MAAAC,IAAO,CAAA;AAAA,EACP,SAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,SAAAC;AAAA,EACA,KAAAC;AAAA,EACA,GAAGC;AACL,MAAuB;AACrB,QAAMC,IAAkB;AAAA,IACtB,GAAIP,MAAY,MAAQ,CAACC,KAAY,EAAE,cAAc,GAAA;AAAA,IACrD,GAAID,MAAY,MAAS,CAACC,KAAY,EAAE,gBAAgB,GAAA;AAAA,IACxD,UAAAA;AAAA,EAAA;AAGF,SACE,gBAAAO,EAACC,GAAA,EAAS,WAAWL,GAAS,UAC5B,UAAA,gBAAAI,EAACE,GAAA,EAAW,WAAWN,GAAS,YAC9B,UAAA,gBAAAO,EAACC,GAAA,EAAM,WAAWR,GAAS,OACxB,UAAA;AAAA,IAAAF,KAAS,gBAAAM,EAACK,GAAA,EAAY,GAAGN,GAAkB,UAAAL,GAAM;AAAA,IACjDH,EAAK,SAAS,IACb,gBAAAY;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,aAAS;AAAA,QACT,WAAWV,GAAS;AAAA,QAEpB,UAAA;AAAA,UAAA,gBAAAI;AAAA,YAACO;AAAA,YAAA;AAAA,cACC,KAAAV;AAAA,cACC,GAAGC;AAAA,cACH,GAAGC;AAAA,cACJ,UAAAN;AAAA,YAAA;AAAA,UAAA;AAAA,UAEDF,EAAK,IAAI,CAACiB,MACT,gBAAAR;AAAA,YAACS;AAAA,YAAA;AAAA,cAEC,OAAOD,EAAE;AAAA,cACT,WAAWZ,GAAS;AAAA,cAEnB,UAAAY,EAAE;AAAA,YAAA;AAAA,YAJEA,EAAE;AAAA,UAAA,CAMV;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,IAGH,gBAAAR;AAAA,MAACU;AAAA,MAAA;AAAA,QACC,KAAAb;AAAA,QACC,GAAGC;AAAA,QACH,GAAGC;AAAA,QACJ,UAAAN;AAAA,MAAA;AAAA,IAAA;AAAA,IAGHE,KACC,gBAAAK,EAACW,GAAA,EAAkB,GAAGZ,GAAkB,UAAAJ,EAAA,CAAY;AAAA,EAAA,EAAA,CAExD,GACF,GACF;AAEJ;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("react/jsx-runtime");const r=require("./transfer-list-card-D2oGp-Rw.cjs");require("phosphor-strokes-icons/icons");require("@radix-ui/react-dropdown-menu");exports.TransferListCard=r.TransferListCard;
|
|
2
|
+
//# sourceMappingURL=components-transfer-list-transfer-list-card.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-transfer-list-transfer-list-card.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import "react/jsx-runtime";
|
|
2
|
+
import { T as p } from "./transfer-list-card-3JPB-sdd.js";
|
|
3
|
+
import "phosphor-strokes-icons/icons";
|
|
4
|
+
import "@radix-ui/react-dropdown-menu";
|
|
5
|
+
export {
|
|
6
|
+
p as TransferListCard
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=components-transfer-list-transfer-list-card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-transfer-list-transfer-list-card.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react/jsx-runtime"),l=require("./transfer-list-card-D2oGp-Rw.cjs");require("phosphor-strokes-icons/icons");require("@radix-ui/react-dropdown-menu");const t=require("react"),f=!1,h=!0,w=({list:r,onChange:m})=>{const a=t.useMemo(()=>r.filter(e=>!e.inTarget),[r]),i=t.useMemo(()=>r.filter(e=>e.inTarget),[r]),[n,g]=t.useState([]),T=t.useMemo(()=>new Set(n),[n]),x=t.useMemo(()=>new Set(a.map(e=>e.id)),[a]),I=t.useMemo(()=>new Set(i.map(e=>e.id)),[i]),C=t.useMemo(()=>n.filter(e=>x.has(e)).length,[n,x]),b=t.useMemo(()=>n.filter(e=>I.has(e)).length,[n,I]),S=t.useCallback(e=>{g(s=>s.includes(e)?s.filter(d=>d!==e):[...s,e])},[]),o=t.useCallback((e,s)=>{const d=s??n;if(d.length===0)return;const k=new Set(d),v=r.map(u=>!k.has(u.id)||u.inTarget===e?u:{...u,inTarget:e});m(v),g([])},[r,m,n]),M=t.useCallback(e=>{o(e,r.filter(s=>s.inTarget!==e).map(s=>s.id))},[r,o]),j=t.useCallback(e=>{o(h,[e])},[o]),p=t.useCallback(e=>{o(f,[e])},[o]);return c.jsxs("div",{className:"ml-100 flex h-full min-h-0 w-fit gap-6",children:[c.jsx(l.TransferListCard,{items:a,selectedSet:T,onSelectItem:S,onMoveItem:j,direction:"right",showHeaderTooltip:!0,headerButton:{icon:"caret-right",onClick:()=>M(h),disabled:a.length===0},showFooterIcons:!1}),c.jsxs("div",{className:"flex h-full flex-col justify-center gap-8",children:[c.jsx(l.f,{variant:"circle",onClick:()=>o(h),disabled:C===0,children:c.jsx(l.y,{type:"caret-right",className:"text-placeholder-text"})}),c.jsx(l.f,{variant:"circle",onClick:()=>o(f),disabled:b===0,children:c.jsx(l.y,{type:"caret-left",className:"text-placeholder-text"})})]}),c.jsx(l.TransferListCard,{items:i,selectedSet:T,onSelectItem:S,onMoveItem:p,direction:"left",headerButton:{icon:"caret-left",onClick:()=>M(f),disabled:i.length===0},showFooterIcons:!0})]})};exports.TransferList=w;
|
|
2
|
+
//# sourceMappingURL=components-transfer-list-transfer-list.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-transfer-list-transfer-list.cjs","sources":["../src/components/transfer-list/transfer-list.tsx"],"sourcesContent":["import { Button, Icon } from \"brd-ui-kit\";\nimport { useCallback, useMemo, useState } from \"react\";\nimport { TransferListCard } from \"./transfer-list-card\";\n\nexport type TransferListItem = {\n id: string;\n label: string;\n disabled?: boolean;\n inTarget: boolean;\n};\n\ntype Props = {\n list: TransferListItem[];\n onChange: (item: TransferListItem[]) => void;\n};\n\nconst MOVE_TO_LEFT = false;\nconst MOVE_TO_RIGHT = true;\n\nexport const TransferList = ({ list, onChange }: Props) => {\n const leftItems = useMemo(() => list.filter((i) => !i.inTarget), [list]);\n const rightItems = useMemo(() => list.filter((i) => i.inTarget), [list]);\n\n const [selectedIds, setSelectedIds] = useState<string[]>([]);\n\n const selectedSet = useMemo(() => new Set(selectedIds), [selectedIds]);\n const leftIdSet = useMemo(() => new Set(leftItems.map((item) => item.id)), [leftItems]);\n const rightIdSet = useMemo(\n () => new Set(rightItems.map((item) => item.id)),\n [rightItems],\n );\n\n const selectedLeftCount = useMemo(\n () => selectedIds.filter((id) => leftIdSet.has(id)).length,\n [selectedIds, leftIdSet],\n );\n const selectedRightCount = useMemo(\n () => selectedIds.filter((id) => rightIdSet.has(id)).length,\n [selectedIds, rightIdSet],\n );\n\n const onSelectItem = useCallback((id: string) => {\n setSelectedIds((prev) =>\n prev.includes(id) ? prev.filter((itemId) => itemId !== id) : [...prev, id],\n );\n }, []);\n\n const moveSelectedItems = useCallback(\n (move: boolean, ids?: string[]) => {\n const resolvedIds = ids ?? selectedIds;\n if (resolvedIds.length === 0) return;\n\n const idsToMoveSet = new Set(resolvedIds);\n\n const newData = list.map((item) => {\n if (!idsToMoveSet.has(item.id) || item.inTarget === move) {\n return item;\n }\n\n return {\n ...item,\n inTarget: move,\n };\n });\n\n onChange(newData);\n setSelectedIds([]);\n },\n [list, onChange, selectedIds],\n );\n\n const allMoveSelectedItems = useCallback(\n (move: boolean) => {\n moveSelectedItems(\n move,\n list.filter((item) => item.inTarget !== move).map((item) => item.id),\n );\n },\n [list, moveSelectedItems],\n );\n\n const moveToRight = useCallback(\n (itemId: string) => {\n moveSelectedItems(MOVE_TO_RIGHT, [itemId]);\n },\n [moveSelectedItems],\n );\n\n const moveToLeft = useCallback(\n (itemId: string) => {\n moveSelectedItems(MOVE_TO_LEFT, [itemId]);\n },\n [moveSelectedItems],\n );\n\n return (\n <div className=\"ml-100 flex h-full min-h-0 w-fit gap-6\">\n <TransferListCard\n items={leftItems}\n selectedSet={selectedSet}\n onSelectItem={onSelectItem}\n onMoveItem={moveToRight}\n direction=\"right\"\n showHeaderTooltip={true}\n headerButton={{\n icon: \"caret-right\",\n onClick: () => allMoveSelectedItems(MOVE_TO_RIGHT),\n disabled: leftItems.length === 0,\n }}\n showFooterIcons={false}\n />\n\n <div className=\"flex h-full flex-col justify-center gap-8\">\n <Button\n variant=\"circle\"\n onClick={() => moveSelectedItems(MOVE_TO_RIGHT)}\n disabled={selectedLeftCount === 0}\n >\n <Icon\n type=\"caret-right\"\n className=\"text-placeholder-text\"\n />\n </Button>\n\n <Button\n variant=\"circle\"\n onClick={() => moveSelectedItems(MOVE_TO_LEFT)}\n disabled={selectedRightCount === 0}\n >\n <Icon\n type=\"caret-left\"\n className=\"text-placeholder-text\"\n />\n </Button>\n </div>\n\n <TransferListCard\n items={rightItems}\n selectedSet={selectedSet}\n onSelectItem={onSelectItem}\n onMoveItem={moveToLeft}\n direction=\"left\"\n headerButton={{\n icon: \"caret-left\",\n onClick: () => allMoveSelectedItems(MOVE_TO_LEFT),\n disabled: rightItems.length === 0,\n }}\n showFooterIcons\n />\n </div>\n );\n};\n"],"names":["MOVE_TO_LEFT","MOVE_TO_RIGHT","TransferList","list","onChange","leftItems","useMemo","i","rightItems","selectedIds","setSelectedIds","useState","selectedSet","leftIdSet","item","rightIdSet","selectedLeftCount","id","selectedRightCount","onSelectItem","useCallback","prev","itemId","moveSelectedItems","move","ids","resolvedIds","idsToMoveSet","newData","allMoveSelectedItems","moveToRight","moveToLeft","jsxs","jsx","TransferListCard","Button","Icon"],"mappings":"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"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { jsxs as w, jsx as c } from "react/jsx-runtime";
|
|
2
|
+
import { T as v, f as C, y as M } from "./transfer-list-card-3JPB-sdd.js";
|
|
3
|
+
import "phosphor-strokes-icons/icons";
|
|
4
|
+
import "@radix-ui/react-dropdown-menu";
|
|
5
|
+
import { useMemo as r, useState as _, useCallback as l } from "react";
|
|
6
|
+
const h = !1, m = !0, H = ({ list: o, onChange: g }) => {
|
|
7
|
+
const i = r(() => o.filter((e) => !e.inTarget), [o]), a = r(() => o.filter((e) => e.inTarget), [o]), [n, u] = _([]), T = r(() => new Set(n), [n]), p = r(() => new Set(i.map((e) => e.id)), [i]), I = r(
|
|
8
|
+
() => new Set(a.map((e) => e.id)),
|
|
9
|
+
[a]
|
|
10
|
+
), b = r(
|
|
11
|
+
() => n.filter((e) => p.has(e)).length,
|
|
12
|
+
[n, p]
|
|
13
|
+
), k = r(
|
|
14
|
+
() => n.filter((e) => I.has(e)).length,
|
|
15
|
+
[n, I]
|
|
16
|
+
), S = l((e) => {
|
|
17
|
+
u(
|
|
18
|
+
(t) => t.includes(e) ? t.filter((d) => d !== e) : [...t, e]
|
|
19
|
+
);
|
|
20
|
+
}, []), s = l(
|
|
21
|
+
(e, t) => {
|
|
22
|
+
const d = t ?? n;
|
|
23
|
+
if (d.length === 0) return;
|
|
24
|
+
const N = new Set(d), O = o.map((f) => !N.has(f.id) || f.inTarget === e ? f : {
|
|
25
|
+
...f,
|
|
26
|
+
inTarget: e
|
|
27
|
+
});
|
|
28
|
+
g(O), u([]);
|
|
29
|
+
},
|
|
30
|
+
[o, g, n]
|
|
31
|
+
), x = l(
|
|
32
|
+
(e) => {
|
|
33
|
+
s(
|
|
34
|
+
e,
|
|
35
|
+
o.filter((t) => t.inTarget !== e).map((t) => t.id)
|
|
36
|
+
);
|
|
37
|
+
},
|
|
38
|
+
[o, s]
|
|
39
|
+
), L = l(
|
|
40
|
+
(e) => {
|
|
41
|
+
s(m, [e]);
|
|
42
|
+
},
|
|
43
|
+
[s]
|
|
44
|
+
), y = l(
|
|
45
|
+
(e) => {
|
|
46
|
+
s(h, [e]);
|
|
47
|
+
},
|
|
48
|
+
[s]
|
|
49
|
+
);
|
|
50
|
+
return /* @__PURE__ */ w("div", { className: "ml-100 flex h-full min-h-0 w-fit gap-6", children: [
|
|
51
|
+
/* @__PURE__ */ c(
|
|
52
|
+
v,
|
|
53
|
+
{
|
|
54
|
+
items: i,
|
|
55
|
+
selectedSet: T,
|
|
56
|
+
onSelectItem: S,
|
|
57
|
+
onMoveItem: L,
|
|
58
|
+
direction: "right",
|
|
59
|
+
showHeaderTooltip: !0,
|
|
60
|
+
headerButton: {
|
|
61
|
+
icon: "caret-right",
|
|
62
|
+
onClick: () => x(m),
|
|
63
|
+
disabled: i.length === 0
|
|
64
|
+
},
|
|
65
|
+
showFooterIcons: !1
|
|
66
|
+
}
|
|
67
|
+
),
|
|
68
|
+
/* @__PURE__ */ w("div", { className: "flex h-full flex-col justify-center gap-8", children: [
|
|
69
|
+
/* @__PURE__ */ c(
|
|
70
|
+
C,
|
|
71
|
+
{
|
|
72
|
+
variant: "circle",
|
|
73
|
+
onClick: () => s(m),
|
|
74
|
+
disabled: b === 0,
|
|
75
|
+
children: /* @__PURE__ */ c(
|
|
76
|
+
M,
|
|
77
|
+
{
|
|
78
|
+
type: "caret-right",
|
|
79
|
+
className: "text-placeholder-text"
|
|
80
|
+
}
|
|
81
|
+
)
|
|
82
|
+
}
|
|
83
|
+
),
|
|
84
|
+
/* @__PURE__ */ c(
|
|
85
|
+
C,
|
|
86
|
+
{
|
|
87
|
+
variant: "circle",
|
|
88
|
+
onClick: () => s(h),
|
|
89
|
+
disabled: k === 0,
|
|
90
|
+
children: /* @__PURE__ */ c(
|
|
91
|
+
M,
|
|
92
|
+
{
|
|
93
|
+
type: "caret-left",
|
|
94
|
+
className: "text-placeholder-text"
|
|
95
|
+
}
|
|
96
|
+
)
|
|
97
|
+
}
|
|
98
|
+
)
|
|
99
|
+
] }),
|
|
100
|
+
/* @__PURE__ */ c(
|
|
101
|
+
v,
|
|
102
|
+
{
|
|
103
|
+
items: a,
|
|
104
|
+
selectedSet: T,
|
|
105
|
+
onSelectItem: S,
|
|
106
|
+
onMoveItem: y,
|
|
107
|
+
direction: "left",
|
|
108
|
+
headerButton: {
|
|
109
|
+
icon: "caret-left",
|
|
110
|
+
onClick: () => x(h),
|
|
111
|
+
disabled: a.length === 0
|
|
112
|
+
},
|
|
113
|
+
showFooterIcons: !0
|
|
114
|
+
}
|
|
115
|
+
)
|
|
116
|
+
] });
|
|
117
|
+
};
|
|
118
|
+
export {
|
|
119
|
+
H as TransferList
|
|
120
|
+
};
|
|
121
|
+
//# sourceMappingURL=components-transfer-list-transfer-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-transfer-list-transfer-list.js","sources":["../src/components/transfer-list/transfer-list.tsx"],"sourcesContent":["import { Button, Icon } from \"brd-ui-kit\";\nimport { useCallback, useMemo, useState } from \"react\";\nimport { TransferListCard } from \"./transfer-list-card\";\n\nexport type TransferListItem = {\n id: string;\n label: string;\n disabled?: boolean;\n inTarget: boolean;\n};\n\ntype Props = {\n list: TransferListItem[];\n onChange: (item: TransferListItem[]) => void;\n};\n\nconst MOVE_TO_LEFT = false;\nconst MOVE_TO_RIGHT = true;\n\nexport const TransferList = ({ list, onChange }: Props) => {\n const leftItems = useMemo(() => list.filter((i) => !i.inTarget), [list]);\n const rightItems = useMemo(() => list.filter((i) => i.inTarget), [list]);\n\n const [selectedIds, setSelectedIds] = useState<string[]>([]);\n\n const selectedSet = useMemo(() => new Set(selectedIds), [selectedIds]);\n const leftIdSet = useMemo(() => new Set(leftItems.map((item) => item.id)), [leftItems]);\n const rightIdSet = useMemo(\n () => new Set(rightItems.map((item) => item.id)),\n [rightItems],\n );\n\n const selectedLeftCount = useMemo(\n () => selectedIds.filter((id) => leftIdSet.has(id)).length,\n [selectedIds, leftIdSet],\n );\n const selectedRightCount = useMemo(\n () => selectedIds.filter((id) => rightIdSet.has(id)).length,\n [selectedIds, rightIdSet],\n );\n\n const onSelectItem = useCallback((id: string) => {\n setSelectedIds((prev) =>\n prev.includes(id) ? prev.filter((itemId) => itemId !== id) : [...prev, id],\n );\n }, []);\n\n const moveSelectedItems = useCallback(\n (move: boolean, ids?: string[]) => {\n const resolvedIds = ids ?? selectedIds;\n if (resolvedIds.length === 0) return;\n\n const idsToMoveSet = new Set(resolvedIds);\n\n const newData = list.map((item) => {\n if (!idsToMoveSet.has(item.id) || item.inTarget === move) {\n return item;\n }\n\n return {\n ...item,\n inTarget: move,\n };\n });\n\n onChange(newData);\n setSelectedIds([]);\n },\n [list, onChange, selectedIds],\n );\n\n const allMoveSelectedItems = useCallback(\n (move: boolean) => {\n moveSelectedItems(\n move,\n list.filter((item) => item.inTarget !== move).map((item) => item.id),\n );\n },\n [list, moveSelectedItems],\n );\n\n const moveToRight = useCallback(\n (itemId: string) => {\n moveSelectedItems(MOVE_TO_RIGHT, [itemId]);\n },\n [moveSelectedItems],\n );\n\n const moveToLeft = useCallback(\n (itemId: string) => {\n moveSelectedItems(MOVE_TO_LEFT, [itemId]);\n },\n [moveSelectedItems],\n );\n\n return (\n <div className=\"ml-100 flex h-full min-h-0 w-fit gap-6\">\n <TransferListCard\n items={leftItems}\n selectedSet={selectedSet}\n onSelectItem={onSelectItem}\n onMoveItem={moveToRight}\n direction=\"right\"\n showHeaderTooltip={true}\n headerButton={{\n icon: \"caret-right\",\n onClick: () => allMoveSelectedItems(MOVE_TO_RIGHT),\n disabled: leftItems.length === 0,\n }}\n showFooterIcons={false}\n />\n\n <div className=\"flex h-full flex-col justify-center gap-8\">\n <Button\n variant=\"circle\"\n onClick={() => moveSelectedItems(MOVE_TO_RIGHT)}\n disabled={selectedLeftCount === 0}\n >\n <Icon\n type=\"caret-right\"\n className=\"text-placeholder-text\"\n />\n </Button>\n\n <Button\n variant=\"circle\"\n onClick={() => moveSelectedItems(MOVE_TO_LEFT)}\n disabled={selectedRightCount === 0}\n >\n <Icon\n type=\"caret-left\"\n className=\"text-placeholder-text\"\n />\n </Button>\n </div>\n\n <TransferListCard\n items={rightItems}\n selectedSet={selectedSet}\n onSelectItem={onSelectItem}\n onMoveItem={moveToLeft}\n direction=\"left\"\n headerButton={{\n icon: \"caret-left\",\n onClick: () => allMoveSelectedItems(MOVE_TO_LEFT),\n disabled: rightItems.length === 0,\n }}\n showFooterIcons\n />\n </div>\n );\n};\n"],"names":["MOVE_TO_LEFT","MOVE_TO_RIGHT","TransferList","list","onChange","leftItems","useMemo","i","rightItems","selectedIds","setSelectedIds","useState","selectedSet","leftIdSet","item","rightIdSet","selectedLeftCount","id","selectedRightCount","onSelectItem","useCallback","prev","itemId","moveSelectedItems","move","ids","resolvedIds","idsToMoveSet","newData","allMoveSelectedItems","moveToRight","moveToLeft","jsxs","jsx","TransferListCard","Button","Icon"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-transfer-list.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-transfer-list.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-ui-avatar-avatar.cjs","sources":["../src/components/ui/avatar/avatar.tsx"],"sourcesContent":["import { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport type { ComponentProps } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\
|
|
1
|
+
{"version":3,"file":"components-ui-avatar-avatar.cjs","sources":["../src/components/ui/avatar/avatar.tsx"],"sourcesContent":["import { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport type { ComponentProps } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Avatar({\n className,\n size = \"default\",\n ...props\n}: ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: \"default\" | \"sm\" | \"lg\";\n}) {\n return (\n <AvatarPrimitive.Root\n data-slot=\"avatar\"\n data-size={size}\n className={cn(\n `group/avatar relative flex size-8 shrink-0 rounded-full select-none\n after:absolute after:inset-0 after:rounded-full after:mix-blend-darken\n data-[size=lg]:size-10 data-[size=sm]:size-6 dark:after:mix-blend-lighten`,\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarImage({\n className,\n ...props\n}: ComponentProps<typeof AvatarPrimitive.Image>) {\n return (\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n className={cn(\"aspect-square size-full rounded-full object-cover\", className)}\n {...props}\n />\n );\n}\n\nfunction AvatarFallback({\n className,\n ...props\n}: ComponentProps<typeof AvatarPrimitive.Fallback>) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn(\n `bg-muted text-muted-foreground flex size-full items-center justify-center\n rounded-full text-sm group-data-[size=sm]/avatar:text-xs`,\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarBadge({ className, ...props }: ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"avatar-badge\"\n className={cn(\n `bg-primary text-primary-foreground absolute right-0 bottom-0 z-10 inline-flex\n items-center justify-center rounded-full bg-blend-color ring-2 ring-transparent\n select-none`,\n \"group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden\",\n `group-data-[size=default]/avatar:size-2.5\n group-data-[size=default]/avatar:[&>svg]:size-2`,\n `translate-x-1/4 translate-y-1/4 group-data-[size=lg]/avatar:size-3\n group-data-[size=lg]/avatar:[&>svg]:size-2`,\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroup({ className, ...props }: ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"avatar-group\"\n className={cn(\n `group/avatar-group *:data-[slot=avatar]:ring-background flex -space-x-2\n *:data-[slot=avatar]:ring-2`,\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroupCount({ className, ...props }: ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"avatar-group-count\"\n className={cn(\n `bg-muted text-muted-foreground ring-background relative flex size-8 shrink-0\n items-center justify-center rounded-full text-sm ring-2\n group-has-data-[size=lg]/avatar-group:size-10\n group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4\n group-has-data-[size=lg]/avatar-group:[&>svg]:size-5\n group-has-data-[size=sm]/avatar-group:[&>svg]:size-3`,\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Avatar,\n AvatarBadge,\n AvatarFallback,\n AvatarGroup,\n AvatarGroupCount,\n AvatarImage,\n};\n"],"names":["Avatar","className","size","props","jsx","AvatarPrimitive","cn","AvatarImage","AvatarFallback","AvatarBadge","AvatarGroup","AvatarGroupCount"],"mappings":"stDAKA,SAASA,EAAO,CACd,UAAAC,EACA,KAAAC,EAAO,UACP,GAAGC,CACL,EAEG,CACD,OACEC,EAAAA,IAACC,EAAgB,KAAhB,CACC,YAAU,SACV,YAAWH,EACX,UAAWI,EAAAA,GACT;AAAA;AAAA,mFAGAL,CAAA,EAED,GAAGE,CAAA,CAAA,CAGV,CAEA,SAASI,EAAY,CACnB,UAAAN,EACA,GAAGE,CACL,EAAiD,CAC/C,OACEC,EAAAA,IAACC,EAAgB,MAAhB,CACC,YAAU,eACV,UAAWC,EAAAA,GAAG,oDAAqDL,CAAS,EAC3E,GAAGE,CAAA,CAAA,CAGV,CAEA,SAASK,EAAe,CACtB,UAAAP,EACA,GAAGE,CACL,EAAoD,CAClD,OACEC,EAAAA,IAACC,EAAgB,SAAhB,CACC,YAAU,kBACV,UAAWC,EAAAA,GACT;AAAA,kEAEAL,CAAA,EAED,GAAGE,CAAA,CAAA,CAGV,CAEA,SAASM,EAAY,CAAE,UAAAR,EAAW,GAAGE,GAAiC,CACpE,OACEC,EAAAA,IAAC,OAAA,CACC,YAAU,eACV,UAAWE,EAAAA,GACT;AAAA;AAAA,qBAGA,gFACA;AAAA,yDAEA;AAAA,oDAEAL,CAAA,EAED,GAAGE,CAAA,CAAA,CAGV,CAEA,SAASO,EAAY,CAAE,UAAAT,EAAW,GAAGE,GAAgC,CACnE,OACEC,EAAAA,IAAC,MAAA,CACC,YAAU,eACV,UAAWE,EAAAA,GACT;AAAA,qCAEAL,CAAA,EAED,GAAGE,CAAA,CAAA,CAGV,CAEA,SAASQ,EAAiB,CAAE,UAAAV,EAAW,GAAGE,GAAgC,CACxE,OACEC,EAAAA,IAAC,MAAA,CACC,YAAU,qBACV,UAAWE,EAAAA,GACT;AAAA;AAAA;AAAA;AAAA;AAAA,8DAMAL,CAAA,EAED,GAAGE,CAAA,CAAA,CAGV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-ui-avatar-avatar.js","sources":["../src/components/ui/avatar/avatar.tsx"],"sourcesContent":["import { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport type { ComponentProps } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\
|
|
1
|
+
{"version":3,"file":"components-ui-avatar-avatar.js","sources":["../src/components/ui/avatar/avatar.tsx"],"sourcesContent":["import { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport type { ComponentProps } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Avatar({\n className,\n size = \"default\",\n ...props\n}: ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: \"default\" | \"sm\" | \"lg\";\n}) {\n return (\n <AvatarPrimitive.Root\n data-slot=\"avatar\"\n data-size={size}\n className={cn(\n `group/avatar relative flex size-8 shrink-0 rounded-full select-none\n after:absolute after:inset-0 after:rounded-full after:mix-blend-darken\n data-[size=lg]:size-10 data-[size=sm]:size-6 dark:after:mix-blend-lighten`,\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarImage({\n className,\n ...props\n}: ComponentProps<typeof AvatarPrimitive.Image>) {\n return (\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n className={cn(\"aspect-square size-full rounded-full object-cover\", className)}\n {...props}\n />\n );\n}\n\nfunction AvatarFallback({\n className,\n ...props\n}: ComponentProps<typeof AvatarPrimitive.Fallback>) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn(\n `bg-muted text-muted-foreground flex size-full items-center justify-center\n rounded-full text-sm group-data-[size=sm]/avatar:text-xs`,\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarBadge({ className, ...props }: ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"avatar-badge\"\n className={cn(\n `bg-primary text-primary-foreground absolute right-0 bottom-0 z-10 inline-flex\n items-center justify-center rounded-full bg-blend-color ring-2 ring-transparent\n select-none`,\n \"group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden\",\n `group-data-[size=default]/avatar:size-2.5\n group-data-[size=default]/avatar:[&>svg]:size-2`,\n `translate-x-1/4 translate-y-1/4 group-data-[size=lg]/avatar:size-3\n group-data-[size=lg]/avatar:[&>svg]:size-2`,\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroup({ className, ...props }: ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"avatar-group\"\n className={cn(\n `group/avatar-group *:data-[slot=avatar]:ring-background flex -space-x-2\n *:data-[slot=avatar]:ring-2`,\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroupCount({ className, ...props }: ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"avatar-group-count\"\n className={cn(\n `bg-muted text-muted-foreground ring-background relative flex size-8 shrink-0\n items-center justify-center rounded-full text-sm ring-2\n group-has-data-[size=lg]/avatar-group:size-10\n group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4\n group-has-data-[size=lg]/avatar-group:[&>svg]:size-5\n group-has-data-[size=sm]/avatar-group:[&>svg]:size-3`,\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Avatar,\n AvatarBadge,\n AvatarFallback,\n AvatarGroup,\n AvatarGroupCount,\n AvatarImage,\n};\n"],"names":["Avatar","className","size","props","jsx","AvatarPrimitive","cn","AvatarImage","AvatarFallback","AvatarBadge","AvatarGroup","AvatarGroupCount"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,SAASA,EAAO;AAAA,EACd,WAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,GAAGC;AACL,GAEG;AACD,SACE,gBAAAC;AAAA,IAACC,EAAgB;AAAA,IAAhB;AAAA,MACC,aAAU;AAAA,MACV,aAAWH;AAAA,MACX,WAAWI;AAAA,QACT;AAAA;AAAA;AAAA,QAGAL;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASI,EAAY;AAAA,EACnB,WAAAN;AAAA,EACA,GAAGE;AACL,GAAiD;AAC/C,SACE,gBAAAC;AAAA,IAACC,EAAgB;AAAA,IAAhB;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,EAAG,qDAAqDL,CAAS;AAAA,MAC3E,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASK,EAAe;AAAA,EACtB,WAAAP;AAAA,EACA,GAAGE;AACL,GAAoD;AAClD,SACE,gBAAAC;AAAA,IAACC,EAAgB;AAAA,IAAhB;AAAA,MACC,aAAU;AAAA,MACV,WAAWC;AAAA,QACT;AAAA;AAAA,QAEAL;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASM,EAAY,EAAE,WAAAR,GAAW,GAAGE,KAAiC;AACpE,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWE;AAAA,QACT;AAAA;AAAA;AAAA,QAGA;AAAA,QACA;AAAA;AAAA,QAEA;AAAA;AAAA,QAEAL;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASO,EAAY,EAAE,WAAAT,GAAW,GAAGE,KAAgC;AACnE,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWE;AAAA,QACT;AAAA;AAAA,QAEAL;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASQ,EAAiB,EAAE,WAAAV,GAAW,GAAGE,KAAgC;AACxE,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWE;AAAA,QACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAMAL;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGV;"}
|