@customafk/lunas-ui 0.0.2-h → 0.0.2-i

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.
@@ -10,8 +10,7 @@ var DEFAULT_ICON_SIZE = 24;
10
10
 
11
11
  // packages/Icons/AvatarIcon.tsx
12
12
  import { jsx, jsxs } from "react/jsx-runtime";
13
- var AvatarIcon = (props) => {
14
- const { bgColor, color, size } = props;
13
+ var AvatarIcon = ({ bgColor, color, size, ...Props }) => {
15
14
  return /* @__PURE__ */ jsxs(
16
15
  "svg",
17
16
  {
@@ -20,7 +19,7 @@ var AvatarIcon = (props) => {
20
19
  height: size ?? DEFAULT_ICON_SIZE,
21
20
  viewBox: "0 0 96 96",
22
21
  fill: "none",
23
- ...props,
22
+ ...Props,
24
23
  children: [
25
24
  /* @__PURE__ */ jsx(
26
25
  "path",
@@ -5,7 +5,7 @@ import { VariantProps } from 'class-variance-authority';
5
5
 
6
6
  declare const buttonVariants: (props?: ({
7
7
  variant?: "default" | "secondary" | "outline" | "destructive" | "destructive-secondary" | "destructive-outline" | "sort-outline" | "normal" | null | undefined;
8
- size?: "base" | "small" | "default" | "large" | null | undefined;
8
+ size?: "small" | "default" | "base" | "large" | null | undefined;
9
9
  } & class_variance_authority_dist_types.ClassProp) | undefined) => string;
10
10
 
11
11
  interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
@@ -8,7 +8,7 @@ declare const Command: React.ForwardRefExoticComponent<Omit<{
8
8
  ref?: React.Ref<HTMLDivElement>;
9
9
  } & {
10
10
  asChild?: boolean;
11
- }, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "asChild"> & {
11
+ }, "key" | "asChild" | keyof React.HTMLAttributes<HTMLDivElement>> & {
12
12
  label?: string;
13
13
  shouldFilter?: boolean;
14
14
  filter?: (value: string, search: string, keywords?: string[]) => number;
@@ -26,7 +26,7 @@ declare const CommandInput: React.ForwardRefExoticComponent<Omit<Omit<Pick<Pick<
26
26
  ref?: React.Ref<HTMLInputElement>;
27
27
  } & {
28
28
  asChild?: boolean;
29
- }, "key" | "asChild" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "onChange" | "type" | "value"> & {
29
+ }, "key" | "asChild" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "type" | "value" | "onChange"> & {
30
30
  value?: string;
31
31
  onValueChange?: (search: string) => void;
32
32
  } & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
@@ -36,7 +36,7 @@ declare const CommandList: React.ForwardRefExoticComponent<Omit<{
36
36
  ref?: React.Ref<HTMLDivElement>;
37
37
  } & {
38
38
  asChild?: boolean;
39
- }, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "asChild"> & {
39
+ }, "key" | "asChild" | keyof React.HTMLAttributes<HTMLDivElement>> & {
40
40
  label?: string;
41
41
  } & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
42
42
  declare const CommandEmpty: React.ForwardRefExoticComponent<Omit<{
@@ -45,14 +45,14 @@ declare const CommandEmpty: React.ForwardRefExoticComponent<Omit<{
45
45
  ref?: React.Ref<HTMLDivElement>;
46
46
  } & {
47
47
  asChild?: boolean;
48
- }, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "asChild"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
48
+ }, "key" | "asChild" | keyof React.HTMLAttributes<HTMLDivElement>> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
49
49
  declare const CommandGroup: React.ForwardRefExoticComponent<Omit<{
50
50
  children?: React.ReactNode;
51
51
  } & Omit<Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
52
52
  ref?: React.Ref<HTMLDivElement>;
53
53
  } & {
54
54
  asChild?: boolean;
55
- }, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "asChild">, "value" | "heading"> & {
55
+ }, "key" | "asChild" | keyof React.HTMLAttributes<HTMLDivElement>>, "value" | "heading"> & {
56
56
  heading?: React.ReactNode;
57
57
  value?: string;
58
58
  forceMount?: boolean;
@@ -61,7 +61,7 @@ declare const CommandSeparator: React.ForwardRefExoticComponent<Omit<Pick<Pick<R
61
61
  ref?: React.Ref<HTMLDivElement>;
62
62
  } & {
63
63
  asChild?: boolean;
64
- }, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "asChild"> & {
64
+ }, "key" | "asChild" | keyof React.HTMLAttributes<HTMLDivElement>> & {
65
65
  alwaysRender?: boolean;
66
66
  } & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
67
67
  declare const CommandItem: React.ForwardRefExoticComponent<Omit<{
@@ -70,7 +70,7 @@ declare const CommandItem: React.ForwardRefExoticComponent<Omit<{
70
70
  ref?: React.Ref<HTMLDivElement>;
71
71
  } & {
72
72
  asChild?: boolean;
73
- }, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "asChild">, "onSelect" | "disabled" | "value"> & {
73
+ }, "key" | "asChild" | keyof React.HTMLAttributes<HTMLDivElement>>, "disabled" | "value" | "onSelect"> & {
74
74
  disabled?: boolean;
75
75
  onSelect?: (value: string) => void;
76
76
  value?: string;
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { FC } from 'react';
2
2
 
3
3
  interface IProps {
4
4
  readonly fullname: string;
@@ -7,6 +7,6 @@ interface IProps {
7
7
  readonly size?: number;
8
8
  readonly isButton?: boolean;
9
9
  }
10
- declare const UserAvatar: React.MemoExoticComponent<React.ForwardRefExoticComponent<IProps & React.RefAttributes<HTMLButtonElement>>>;
10
+ declare const UserAvatar: FC<IProps>;
11
11
 
12
12
  export { UserAvatar as default };
@@ -3,15 +3,14 @@ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { en
3
3
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
4
 
5
5
  // packages/Atoms/UserAvatar/index.tsx
6
- import { forwardRef, memo } from "react";
6
+ import { memo } from "react";
7
7
 
8
8
  // packages/utils/constants.ts
9
9
  var DEFAULT_ICON_SIZE = 24;
10
10
 
11
11
  // packages/Icons/AvatarIcon.tsx
12
12
  import { jsx, jsxs } from "react/jsx-runtime";
13
- var AvatarIcon = (props) => {
14
- const { bgColor, color, size } = props;
13
+ var AvatarIcon = ({ bgColor, color, size, ...Props }) => {
15
14
  return /* @__PURE__ */ jsxs(
16
15
  "svg",
17
16
  {
@@ -20,7 +19,7 @@ var AvatarIcon = (props) => {
20
19
  height: size ?? DEFAULT_ICON_SIZE,
21
20
  viewBox: "0 0 96 96",
22
21
  fill: "none",
23
- ...props,
22
+ ...Props,
24
23
  children: [
25
24
  /* @__PURE__ */ jsx(
26
25
  "path",
@@ -433,33 +432,29 @@ var cn = (...inputs) => {
433
432
 
434
433
  // packages/Atoms/UserAvatar/index.tsx
435
434
  import { jsx as jsx2 } from "react/jsx-runtime";
436
- var UserAvatar = memo(
437
- forwardRef(
438
- ({ fullname, email, src: source, size, isButton = true }, reference) => {
439
- return /* @__PURE__ */ jsx2(
440
- "button",
435
+ var UserAvatar = memo(({ fullname, email, src: source, size, isButton = true }) => {
436
+ const Comp = isButton ? "button" : "div";
437
+ return /* @__PURE__ */ jsx2(
438
+ Comp,
439
+ {
440
+ disabled: !isButton,
441
+ className: cn(
442
+ "flex size-fit items-center justify-center rounded-full transition-all duration-300",
443
+ "enabled:hover:shadow-ui-flat",
444
+ "enabled:hover:scale-110"
445
+ ),
446
+ children: source ? /* @__PURE__ */ jsx2(
447
+ "img",
441
448
  {
442
- disabled: !isButton,
443
- ref: reference,
444
- className: cn(
445
- "flex size-fit items-center justify-center rounded-full transition-all duration-300",
446
- "enabled:hover:shadow-ui-flat",
447
- "enabled:hover:scale-110"
448
- ),
449
- children: source ? /* @__PURE__ */ jsx2(
450
- "img",
451
- {
452
- style: { width: size, height: size },
453
- className: cn("rounded-full object-fill"),
454
- src: source,
455
- alt: fullname
456
- }
457
- ) : /* @__PURE__ */ jsx2(AvatarIcon_default, { bgColor: color_hash_default.hex(fullname + email), size })
449
+ style: { width: size, height: size },
450
+ className: cn("rounded-full object-fill"),
451
+ src: source,
452
+ alt: fullname
458
453
  }
459
- );
454
+ ) : /* @__PURE__ */ jsx2(AvatarIcon_default, { bgColor: color_hash_default.hex(fullname + email), size })
460
455
  }
461
- )
462
- );
456
+ );
457
+ });
463
458
  UserAvatar.displayName = "UserAvatar";
464
459
  var UserAvatar_default = UserAvatar;
465
460
  export {
@@ -3,7 +3,7 @@ import { I as IIconProps } from '../types-BgHhiNa-.js';
3
3
  import { FC } from 'react';
4
4
 
5
5
  declare const AvatarIcon: {
6
- (props: IIconProps): react_jsx_runtime.JSX.Element;
6
+ ({ bgColor, color, size, ...Props }: IIconProps): react_jsx_runtime.JSX.Element;
7
7
  displayName: string;
8
8
  };
9
9
 
@@ -3,8 +3,7 @@ var DEFAULT_ICON_SIZE = 24;
3
3
 
4
4
  // packages/Icons/AvatarIcon.tsx
5
5
  import { jsx, jsxs } from "react/jsx-runtime";
6
- var AvatarIcon = (props) => {
7
- const { bgColor, color, size } = props;
6
+ var AvatarIcon = ({ bgColor, color, size, ...Props }) => {
8
7
  return /* @__PURE__ */ jsxs(
9
8
  "svg",
10
9
  {
@@ -13,7 +12,7 @@ var AvatarIcon = (props) => {
13
12
  height: size ?? DEFAULT_ICON_SIZE,
14
13
  viewBox: "0 0 96 96",
15
14
  fill: "none",
16
- ...props,
15
+ ...Props,
17
16
  children: [
18
17
  /* @__PURE__ */ jsx(
19
18
  "path",
@@ -400,12 +400,11 @@ var SheetDescription = forwardRef(({ className, ...props }, ref) => /* @__PURE__
400
400
  SheetDescription.displayName = SheetPrimitive.Description.displayName;
401
401
 
402
402
  // packages/Atoms/UserAvatar/index.tsx
403
- import { forwardRef as forwardRef2, memo as memo2 } from "react";
403
+ import { memo as memo2 } from "react";
404
404
 
405
405
  // packages/Icons/AvatarIcon.tsx
406
406
  import { jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
407
- var AvatarIcon = (props) => {
408
- const { bgColor, color, size } = props;
407
+ var AvatarIcon = ({ bgColor, color, size, ...Props }) => {
409
408
  return /* @__PURE__ */ jsxs2(
410
409
  "svg",
411
410
  {
@@ -414,7 +413,7 @@ var AvatarIcon = (props) => {
414
413
  height: size ?? DEFAULT_ICON_SIZE,
415
414
  viewBox: "0 0 96 96",
416
415
  fill: "none",
417
- ...props,
416
+ ...Props,
418
417
  children: [
419
418
  /* @__PURE__ */ jsx4(
420
419
  "path",
@@ -583,38 +582,34 @@ var color_hash_default = colorHash;
583
582
 
584
583
  // packages/Atoms/UserAvatar/index.tsx
585
584
  import { jsx as jsx5 } from "react/jsx-runtime";
586
- var UserAvatar = memo2(
587
- forwardRef2(
588
- ({ fullname, email, src: source, size, isButton = true }, reference) => {
589
- return /* @__PURE__ */ jsx5(
590
- "button",
585
+ var UserAvatar = memo2(({ fullname, email, src: source, size, isButton = true }) => {
586
+ const Comp = isButton ? "button" : "div";
587
+ return /* @__PURE__ */ jsx5(
588
+ Comp,
589
+ {
590
+ disabled: !isButton,
591
+ className: cn(
592
+ "flex size-fit items-center justify-center rounded-full transition-all duration-300",
593
+ "enabled:hover:shadow-ui-flat",
594
+ "enabled:hover:scale-110"
595
+ ),
596
+ children: source ? /* @__PURE__ */ jsx5(
597
+ "img",
591
598
  {
592
- disabled: !isButton,
593
- ref: reference,
594
- className: cn(
595
- "flex size-fit items-center justify-center rounded-full transition-all duration-300",
596
- "enabled:hover:shadow-ui-flat",
597
- "enabled:hover:scale-110"
598
- ),
599
- children: source ? /* @__PURE__ */ jsx5(
600
- "img",
601
- {
602
- style: { width: size, height: size },
603
- className: cn("rounded-full object-fill"),
604
- src: source,
605
- alt: fullname
606
- }
607
- ) : /* @__PURE__ */ jsx5(AvatarIcon_default, { bgColor: color_hash_default.hex(fullname + email), size })
599
+ style: { width: size, height: size },
600
+ className: cn("rounded-full object-fill"),
601
+ src: source,
602
+ alt: fullname
608
603
  }
609
- );
604
+ ) : /* @__PURE__ */ jsx5(AvatarIcon_default, { bgColor: color_hash_default.hex(fullname + email), size })
610
605
  }
611
- )
612
- );
606
+ );
607
+ });
613
608
  UserAvatar.displayName = "UserAvatar";
614
609
  var UserAvatar_default = UserAvatar;
615
610
 
616
611
  // packages/Layout/Flex/index.tsx
617
- import { forwardRef as forwardRef3, memo as memo3, useMemo } from "react";
612
+ import { forwardRef as forwardRef2, memo as memo3, useMemo } from "react";
618
613
 
619
614
  // packages/Layout/Flex/flexVariant.ts
620
615
  import { cva as cva2 } from "class-variance-authority";
@@ -917,7 +912,7 @@ var commonLayout = cva3("", {
917
912
  // packages/Layout/Flex/index.tsx
918
913
  import { jsx as jsx6 } from "react/jsx-runtime";
919
914
  var Flex = memo3(
920
- forwardRef3(
915
+ forwardRef2(
921
916
  ({
922
917
  vertical = false,
923
918
  wrap = "nowrap",
@@ -1271,6 +1271,7 @@ var Lucide2FillCartIcon = ({ color, size }) => {
1271
1271
  var Lucide2FillCartIcon_default = Lucide2FillCartIcon;
1272
1272
 
1273
1273
  // packages/Molecules/CartSheet/index.tsx
1274
+ import { VisuallyHidden } from "@radix-ui/react-visually-hidden";
1274
1275
  import { jsx as jsx15, jsxs as jsxs9 } from "react/jsx-runtime";
1275
1276
  var CartSheet = ({
1276
1277
  isNew,
@@ -1303,7 +1304,8 @@ var CartSheet = ({
1303
1304
  /* @__PURE__ */ jsx15(Button_default, { className: "px-5 py-3", onClick: onCheckout, children: "Thanh to\xE1n" })
1304
1305
  ] })
1305
1306
  ] })
1306
- ] }) })
1307
+ ] }) }),
1308
+ /* @__PURE__ */ jsx15(VisuallyHidden, { children: /* @__PURE__ */ jsx15(SheetTitle, {}) })
1307
1309
  ] });
1308
1310
  };
1309
1311
  var CartSheet_default = memo5(CartSheet);
@@ -1657,12 +1659,11 @@ var MenuItem = ({
1657
1659
  var MenuItem_default = memo6(MenuItem);
1658
1660
 
1659
1661
  // packages/Atoms/UserAvatar/index.tsx
1660
- import { forwardRef as forwardRef8, memo as memo7 } from "react";
1662
+ import { memo as memo7 } from "react";
1661
1663
 
1662
1664
  // packages/Icons/AvatarIcon.tsx
1663
1665
  import { jsx as jsx20, jsxs as jsxs14 } from "react/jsx-runtime";
1664
- var AvatarIcon = (props) => {
1665
- const { bgColor, color, size } = props;
1666
+ var AvatarIcon = ({ bgColor, color, size, ...Props }) => {
1666
1667
  return /* @__PURE__ */ jsxs14(
1667
1668
  "svg",
1668
1669
  {
@@ -1671,7 +1672,7 @@ var AvatarIcon = (props) => {
1671
1672
  height: size ?? DEFAULT_ICON_SIZE,
1672
1673
  viewBox: "0 0 96 96",
1673
1674
  fill: "none",
1674
- ...props,
1675
+ ...Props,
1675
1676
  children: [
1676
1677
  /* @__PURE__ */ jsx20(
1677
1678
  "path",
@@ -1840,33 +1841,29 @@ var color_hash_default = colorHash;
1840
1841
 
1841
1842
  // packages/Atoms/UserAvatar/index.tsx
1842
1843
  import { jsx as jsx21 } from "react/jsx-runtime";
1843
- var UserAvatar = memo7(
1844
- forwardRef8(
1845
- ({ fullname, email, src: source, size, isButton = true }, reference) => {
1846
- return /* @__PURE__ */ jsx21(
1847
- "button",
1844
+ var UserAvatar = memo7(({ fullname, email, src: source, size, isButton = true }) => {
1845
+ const Comp = isButton ? "button" : "div";
1846
+ return /* @__PURE__ */ jsx21(
1847
+ Comp,
1848
+ {
1849
+ disabled: !isButton,
1850
+ className: cn(
1851
+ "flex size-fit items-center justify-center rounded-full transition-all duration-300",
1852
+ "enabled:hover:shadow-ui-flat",
1853
+ "enabled:hover:scale-110"
1854
+ ),
1855
+ children: source ? /* @__PURE__ */ jsx21(
1856
+ "img",
1848
1857
  {
1849
- disabled: !isButton,
1850
- ref: reference,
1851
- className: cn(
1852
- "flex size-fit items-center justify-center rounded-full transition-all duration-300",
1853
- "enabled:hover:shadow-ui-flat",
1854
- "enabled:hover:scale-110"
1855
- ),
1856
- children: source ? /* @__PURE__ */ jsx21(
1857
- "img",
1858
- {
1859
- style: { width: size, height: size },
1860
- className: cn("rounded-full object-fill"),
1861
- src: source,
1862
- alt: fullname
1863
- }
1864
- ) : /* @__PURE__ */ jsx21(AvatarIcon_default, { bgColor: color_hash_default.hex(fullname + email), size })
1858
+ style: { width: size, height: size },
1859
+ className: cn("rounded-full object-fill"),
1860
+ src: source,
1861
+ alt: fullname
1865
1862
  }
1866
- );
1863
+ ) : /* @__PURE__ */ jsx21(AvatarIcon_default, { bgColor: color_hash_default.hex(fullname + email), size })
1867
1864
  }
1868
- )
1869
- );
1865
+ );
1866
+ });
1870
1867
  UserAvatar.displayName = "UserAvatar";
1871
1868
  var UserAvatar_default = UserAvatar;
1872
1869
 
@@ -2036,6 +2033,7 @@ Lucide2UserIcon.displayName = "Lucide2UserIcon";
2036
2033
  var Lucide2UserIcon_default = Lucide2UserIcon;
2037
2034
 
2038
2035
  // packages/Molecules/UserSheet/index.tsx
2036
+ import { VisuallyHidden as VisuallyHidden2 } from "@radix-ui/react-visually-hidden";
2039
2037
  import { Fragment as Fragment2, jsx as jsx28, jsxs as jsxs16 } from "react/jsx-runtime";
2040
2038
  var UserSheet = ({
2041
2039
  initialActiveItem,
@@ -2049,7 +2047,7 @@ var UserSheet = ({
2049
2047
  setActiveItem(initialActiveItem);
2050
2048
  }, [initialActiveItem]);
2051
2049
  return /* @__PURE__ */ jsxs16(Sheet, { children: [
2052
- /* @__PURE__ */ jsx28(SheetTrigger, { className: "rounded-full border border-ui-border-200", children: /* @__PURE__ */ jsx28(UserAvatar_default, { fullname, email, src: avatar, size: 36 }) }),
2050
+ /* @__PURE__ */ jsx28(SheetTrigger, { className: "rounded-full border border-ui-border-200", children: /* @__PURE__ */ jsx28(UserAvatar_default, { isButton: false, fullname, email, src: avatar, size: 36 }) }),
2053
2051
  /* @__PURE__ */ jsxs16(SheetContent, { className: "w-64", children: [
2054
2052
  /* @__PURE__ */ jsx28(Flex_default, { vertical: true, gapY: "3", width: "full", px: "6", pt: "6", pb: "4", align: "start", children: !fullname || !email ? /* @__PURE__ */ jsxs16(Fragment2, { children: [
2055
2053
  /* @__PURE__ */ jsx28(Skeleton, { className: "size-16 rounded-full" }),
@@ -2159,7 +2157,8 @@ var UserSheet = ({
2159
2157
  }
2160
2158
  }
2161
2159
  ) })
2162
- ] })
2160
+ ] }),
2161
+ /* @__PURE__ */ jsx28(VisuallyHidden2, { children: /* @__PURE__ */ jsx28(SheetTitle, {}) })
2163
2162
  ] });
2164
2163
  };
2165
2164
  var UserSheet_default = memo8(UserSheet);
@@ -2184,7 +2183,7 @@ var Header = memo9((props) => {
2184
2183
  "header",
2185
2184
  {
2186
2185
  className: cn(
2187
- "relative flex h-fit w-full items-center justify-start bg-ui-surface-50 py-2 pl-8 pr-4 shadow-ui-sticky-nav",
2186
+ "relative flex h-fit min-h-[3.375rem] w-full items-center justify-start bg-ui-surface-50 py-2 pl-8 pr-4 shadow-ui-sticky-nav",
2188
2187
  className
2189
2188
  ),
2190
2189
  children: [
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@customafk/lunas-ui",
3
3
  "private": false,
4
- "version": "0.0.2-h",
4
+ "version": "0.0.2-i",
5
5
  "type": "module",
6
6
  "homepage": "https://docs.customafk.com",
7
7
  "repository": {
@@ -308,6 +308,7 @@
308
308
  "@radix-ui/react-slider": "^1.2.1",
309
309
  "@radix-ui/react-slot": "^1.1.0",
310
310
  "@radix-ui/react-switch": "^1.1.1",
311
+ "@radix-ui/react-visually-hidden": "^1.1.0",
311
312
  "class-variance-authority": "^0.7.0",
312
313
  "clsx": "^2.1.1",
313
314
  "cmdk": "^1.0.0",