@kubetail/ui 2.3.0 → 2.4.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/elements/avatar.cjs +2 -0
- package/dist/elements/avatar.cjs.map +1 -0
- package/dist/elements/avatar.d.ts +11 -0
- package/dist/elements/avatar.js +53 -0
- package/dist/elements/avatar.js.map +1 -0
- package/dist/elements/avatar.stories.d.ts +15 -0
- package/dist/elements/avatar.test.d.ts +0 -0
- package/dist/elements/button.d.ts +1 -1
- package/package.json +6 -1
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../_virtual/_rolldown/runtime.cjs`),t=require(`../lib/utils.cjs`);let n=require(`react/jsx-runtime`),r=require(`react`);r=e.__toESM(r);let i=require(`radix-ui`);function a({className:e,size:r=`default`,...a}){return(0,n.jsx)(i.Avatar.Root,{"data-slot":`avatar`,"data-size":r,className:t.cn(`group/avatar relative flex size-8 shrink-0 rounded-full select-none data-[size=lg]:size-10 data-[size=sm]:size-6`,e),...a})}function o({className:e,...r}){return(0,n.jsx)(i.Avatar.Image,{"data-slot":`avatar-image`,className:t.cn(`aspect-square size-full rounded-full`,e),...r})}function s({className:e,...r}){return(0,n.jsx)(i.Avatar.Fallback,{"data-slot":`avatar-fallback`,className:t.cn(`flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs`,e),...r})}function c({className:e,...r}){return(0,n.jsx)(`span`,{"data-slot":`avatar-badge`,className:t.cn(`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=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2`,e),...r})}function l({className:e,...r}){return(0,n.jsx)(`div`,{"data-slot":`avatar-group`,className:t.cn(`group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background`,e),...r})}function u({className:e,...r}){return(0,n.jsx)(`div`,{"data-slot":`avatar-group-count`,className:t.cn(`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})}exports.Avatar=a,exports.AvatarBadge=c,exports.AvatarFallback=s,exports.AvatarGroup=l,exports.AvatarGroupCount=u,exports.AvatarImage=o;
|
|
2
|
+
//# sourceMappingURL=avatar.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avatar.cjs","names":[],"sources":["../../src/elements/avatar.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Avatar as AvatarPrimitive } from 'radix-ui';\n\nimport { cn } from '@/lib/utils';\n\nfunction Avatar({\n className,\n size = 'default',\n ...props\n}: React.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 data-[size=lg]:size-10 data-[size=sm]:size-6',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>) {\n return (\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n className={cn('aspect-square size-full rounded-full', className)}\n {...props}\n />\n );\n}\n\nfunction AvatarFallback({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Fallback>) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn(\n 'flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarBadge({ className, ...props }: React.ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"avatar-badge\"\n className={cn(\n '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',\n 'group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden',\n 'group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2',\n 'group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroup({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"avatar-group\"\n className={cn(\n 'group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroupCount({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"avatar-group-count\"\n className={cn(\n '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',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Avatar, AvatarImage, AvatarFallback, AvatarBadge, AvatarGroup, AvatarGroupCount };\n"],"mappings":"kQAOA,SAAS,EAAO,CACd,YACA,OAAO,UACP,GAAG,GAGF,CACD,OAAA,EAAA,EAAA,KACG,EAAA,OAAgB,KAAjB,CACE,YAAU,SACV,YAAW,EACX,UAAW,EAAA,GACT,mHACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,EAAY,CAAE,YAAW,GAAG,GAA6D,CAChG,OAAA,EAAA,EAAA,KACG,EAAA,OAAgB,MAAjB,CACE,YAAU,eACV,UAAW,EAAA,GAAG,uCAAwC,EAAU,CAChE,GAAI,EACJ,CAAA,CAIN,SAAS,EAAe,CAAE,YAAW,GAAG,GAAgE,CACtG,OAAA,EAAA,EAAA,KACG,EAAA,OAAgB,SAAjB,CACE,YAAU,kBACV,UAAW,EAAA,GACT,qIACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,EAAY,CAAE,YAAW,GAAG,GAAuC,CAC1E,OAAA,EAAA,EAAA,KACG,OAAD,CACE,YAAU,eACV,UAAW,EAAA,GACT,4JACA,gFACA,4FACA,gFACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OAAA,EAAA,EAAA,KACG,MAAD,CACE,YAAU,eACV,UAAW,EAAA,GACT,sGACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,EAAiB,CAAE,YAAW,GAAG,GAAsC,CAC9E,OAAA,EAAA,EAAA,KACG,MAAD,CACE,YAAU,qBACV,UAAW,EAAA,GACT,2VACA,EACD,CACD,GAAI,EACJ,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Avatar as AvatarPrimitive } from 'radix-ui';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
declare function Avatar({ className, size, ...props }: React.ComponentProps<typeof AvatarPrimitive.Root> & {
|
|
4
|
+
size?: 'default' | 'sm' | 'lg';
|
|
5
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
declare function AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
declare function AvatarFallback({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Fallback>): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
declare function AvatarBadge({ className, ...props }: React.ComponentProps<'span'>): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
declare function AvatarGroup({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
declare function AvatarGroupCount({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export { Avatar, AvatarImage, AvatarFallback, AvatarBadge, AvatarGroup, AvatarGroupCount };
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn as e } from "../lib/utils.js";
|
|
3
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
4
|
+
import "react";
|
|
5
|
+
import { Avatar as n } from "radix-ui";
|
|
6
|
+
//#region src/elements/avatar.tsx
|
|
7
|
+
function r({ className: r, size: i = "default", ...a }) {
|
|
8
|
+
return /* @__PURE__ */ t(n.Root, {
|
|
9
|
+
"data-slot": "avatar",
|
|
10
|
+
"data-size": i,
|
|
11
|
+
className: e("group/avatar relative flex size-8 shrink-0 rounded-full select-none data-[size=lg]:size-10 data-[size=sm]:size-6", r),
|
|
12
|
+
...a
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function i({ className: r, ...i }) {
|
|
16
|
+
return /* @__PURE__ */ t(n.Image, {
|
|
17
|
+
"data-slot": "avatar-image",
|
|
18
|
+
className: e("aspect-square size-full rounded-full", r),
|
|
19
|
+
...i
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
function a({ className: r, ...i }) {
|
|
23
|
+
return /* @__PURE__ */ t(n.Fallback, {
|
|
24
|
+
"data-slot": "avatar-fallback",
|
|
25
|
+
className: e("flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs", r),
|
|
26
|
+
...i
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
function o({ className: n, ...r }) {
|
|
30
|
+
return /* @__PURE__ */ t("span", {
|
|
31
|
+
"data-slot": "avatar-badge",
|
|
32
|
+
className: e("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=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2", n),
|
|
33
|
+
...r
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
function s({ className: n, ...r }) {
|
|
37
|
+
return /* @__PURE__ */ t("div", {
|
|
38
|
+
"data-slot": "avatar-group",
|
|
39
|
+
className: e("group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background", n),
|
|
40
|
+
...r
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
function c({ className: n, ...r }) {
|
|
44
|
+
return /* @__PURE__ */ t("div", {
|
|
45
|
+
"data-slot": "avatar-group-count",
|
|
46
|
+
className: e("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", n),
|
|
47
|
+
...r
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
//#endregion
|
|
51
|
+
export { r as Avatar, o as AvatarBadge, a as AvatarFallback, s as AvatarGroup, c as AvatarGroupCount, i as AvatarImage };
|
|
52
|
+
|
|
53
|
+
//# sourceMappingURL=avatar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avatar.js","names":[],"sources":["../../src/elements/avatar.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Avatar as AvatarPrimitive } from 'radix-ui';\n\nimport { cn } from '@/lib/utils';\n\nfunction Avatar({\n className,\n size = 'default',\n ...props\n}: React.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 data-[size=lg]:size-10 data-[size=sm]:size-6',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>) {\n return (\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n className={cn('aspect-square size-full rounded-full', className)}\n {...props}\n />\n );\n}\n\nfunction AvatarFallback({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Fallback>) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn(\n 'flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarBadge({ className, ...props }: React.ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"avatar-badge\"\n className={cn(\n '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',\n 'group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden',\n 'group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2',\n 'group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroup({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"avatar-group\"\n className={cn(\n 'group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction AvatarGroupCount({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"avatar-group-count\"\n className={cn(\n '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',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Avatar, AvatarImage, AvatarFallback, AvatarBadge, AvatarGroup, AvatarGroupCount };\n"],"mappings":";;;;;;AAOA,SAAS,EAAO,EACd,cACA,UAAO,WACP,GAAG,KAGF;AACD,QACE,kBAAC,EAAgB,MAAjB;EACE,aAAU;EACV,aAAW;EACX,WAAW,EACT,oHACA,EACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAY,EAAE,cAAW,GAAG,KAA6D;AAChG,QACE,kBAAC,EAAgB,OAAjB;EACE,aAAU;EACV,WAAW,EAAG,wCAAwC,EAAU;EAChE,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAe,EAAE,cAAW,GAAG,KAAgE;AACtG,QACE,kBAAC,EAAgB,UAAjB;EACE,aAAU;EACV,WAAW,EACT,sIACA,EACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAY,EAAE,cAAW,GAAG,KAAuC;AAC1E,QACE,kBAAC,QAAD;EACE,aAAU;EACV,WAAW,EACT,6JACA,iFACA,6FACA,iFACA,EACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAY,EAAE,cAAW,GAAG,KAAsC;AACzE,QACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,uGACA,EACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,EAAiB,EAAE,cAAW,GAAG,KAAsC;AAC9E,QACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,4VACA,EACD;EACD,GAAI;EACJ,CAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Avatar } from './avatar';
|
|
2
|
+
declare const meta: {
|
|
3
|
+
title: string;
|
|
4
|
+
tags: string[];
|
|
5
|
+
component: typeof Avatar;
|
|
6
|
+
parameters: {
|
|
7
|
+
docs: {
|
|
8
|
+
description: {
|
|
9
|
+
component: string;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export default meta;
|
|
15
|
+
export declare function Demo(): import("react/jsx-runtime").JSX.Element;
|
|
File without changes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VariantProps } from 'class-variance-authority';
|
|
2
2
|
declare const buttonVariants: (props?: ({
|
|
3
|
-
variant?: "default" | "destructive" | "outline" | "secondary" | "ghost" |
|
|
3
|
+
variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
|
|
4
4
|
size?: "default" | "sm" | "lg" | "icon" | "icon-sm" | "icon-lg" | null | undefined;
|
|
5
5
|
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
6
6
|
export type ButtonVariantProps = VariantProps<typeof buttonVariants>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kubetail/ui",
|
|
3
|
-
"version": "v2.
|
|
3
|
+
"version": "v2.4.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/kubetail-org/kubetail-ui"
|
|
@@ -47,6 +47,7 @@
|
|
|
47
47
|
"@radix-ui/react-toggle": "^1",
|
|
48
48
|
"@radix-ui/react-tooltip": "^1",
|
|
49
49
|
"lucide-react": "*",
|
|
50
|
+
"radix-ui": "^1",
|
|
50
51
|
"react": "^19",
|
|
51
52
|
"react-day-picker": "^9",
|
|
52
53
|
"react-dom": "^19",
|
|
@@ -93,6 +94,9 @@
|
|
|
93
94
|
"lucide-react": {
|
|
94
95
|
"optional": true
|
|
95
96
|
},
|
|
97
|
+
"radix-ui": {
|
|
98
|
+
"optional": true
|
|
99
|
+
},
|
|
96
100
|
"react-day-picker": {
|
|
97
101
|
"optional": true
|
|
98
102
|
},
|
|
@@ -148,6 +152,7 @@
|
|
|
148
152
|
"jsdom": "^29.0.0",
|
|
149
153
|
"lucide-react": "^0.577.0",
|
|
150
154
|
"prettier": "^3.8.1",
|
|
155
|
+
"radix-ui": "^1.4.3",
|
|
151
156
|
"react-day-picker": "^9.14.0",
|
|
152
157
|
"react-docgen-typescript": "^2.4.0",
|
|
153
158
|
"react-hook-form": "^7.71.2",
|