@sikka/hawa 0.31.3-next → 0.31.4-next
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/appLayout/index.d.mts +1 -0
- package/dist/appLayout/index.d.ts +1 -0
- package/dist/appLayout/index.js +11 -8
- package/dist/appLayout/index.js.map +1 -1
- package/dist/appLayout/index.mjs +11 -8
- package/dist/appLayout/index.mjs.map +1 -1
- package/dist/blocks/auth/index.js +8 -2
- package/dist/blocks/auth/index.mjs +4 -4
- package/dist/blocks/feedback/index.js +8 -2
- package/dist/blocks/feedback/index.mjs +5 -5
- package/dist/blocks/index.js +8 -2
- package/dist/blocks/index.mjs +2 -2
- package/dist/blocks/misc/index.js +8 -2
- package/dist/blocks/misc/index.mjs +5 -5
- package/dist/blocks/pricing/index.js +8 -2
- package/dist/blocks/pricing/index.mjs +4 -4
- package/dist/card/index.d.mts +1 -0
- package/dist/card/index.d.ts +1 -0
- package/dist/card/index.js +8 -2
- package/dist/card/index.js.map +1 -1
- package/dist/card/index.mjs +8 -2
- package/dist/card/index.mjs.map +1 -1
- package/dist/{chunk-X5YH2OOE.mjs → chunk-2QAGLSHC.mjs} +1 -1
- package/dist/{chunk-IKHGAGYN.mjs → chunk-34LNWMOZ.mjs} +1 -1
- package/dist/{chunk-HR37LWAO.mjs → chunk-3S44N7SB.mjs} +1 -1
- package/dist/{chunk-CRKKOXUP.mjs → chunk-6HRJIMXY.mjs} +1 -1
- package/dist/{chunk-XQ3GJWXB.mjs → chunk-MQWYXMSK.mjs} +8 -2
- package/dist/{chunk-NEJHLLDI.mjs → chunk-PA3Z7W32.mjs} +8 -2
- package/dist/{chunk-DNUJA5QC.mjs → chunk-S6TZHTWS.mjs} +1 -1
- package/dist/{chunk-MS7B36BZ.mjs → chunk-WUMWQIAW.mjs} +1 -1
- package/dist/{chunk-VYAFGNRW.mjs → chunk-XRUPXLOK.mjs} +1 -1
- package/dist/{chunk-YAGZ6WVL.mjs → chunk-XZLXGXIA.mjs} +1 -1
- package/dist/combobox/index.js +1 -1
- package/dist/combobox/index.js.map +1 -1
- package/dist/combobox/index.mjs +1 -1
- package/dist/combobox/index.mjs.map +1 -1
- package/dist/destroyableCard/index.js +8 -2
- package/dist/destroyableCard/index.js.map +1 -1
- package/dist/destroyableCard/index.mjs +8 -2
- package/dist/destroyableCard/index.mjs.map +1 -1
- package/dist/elements/index.d.mts +1 -0
- package/dist/elements/index.d.ts +1 -0
- package/dist/elements/index.js +9 -3
- package/dist/elements/index.mjs +4 -4
- package/dist/index.css +12 -0
- package/dist/index.d.mts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +20 -11
- package/dist/index.mjs +20 -11
- package/dist/layout/index.d.mts +1 -0
- package/dist/layout/index.d.ts +1 -0
- package/dist/layout/index.js +19 -10
- package/dist/layout/index.mjs +13 -10
- package/dist/sonner/index.js +4 -2
- package/dist/sonner/index.js.map +1 -1
- package/dist/sonner/index.mjs +4 -2
- package/dist/sonner/index.mjs.map +1 -1
- package/dist/stats/index.js +8 -2
- package/dist/stats/index.js.map +1 -1
- package/dist/stats/index.mjs +8 -2
- package/dist/stats/index.mjs.map +1 -1
- package/package.json +1 -1
@@ -1,17 +1,17 @@
|
|
1
1
|
"use client";
|
2
2
|
import {
|
3
3
|
Input
|
4
|
-
} from "../../chunk-
|
4
|
+
} from "../../chunk-S6TZHTWS.mjs";
|
5
5
|
import {
|
6
6
|
StopPropagationWrapper
|
7
7
|
} from "../../chunk-47APBDKK.mjs";
|
8
8
|
import {
|
9
9
|
Select
|
10
|
-
} from "../../chunk-
|
10
|
+
} from "../../chunk-34LNWMOZ.mjs";
|
11
11
|
import {
|
12
12
|
EyeIcon,
|
13
13
|
HiddenEyeIcon
|
14
|
-
} from "../../chunk-
|
14
|
+
} from "../../chunk-3S44N7SB.mjs";
|
15
15
|
import {
|
16
16
|
Button,
|
17
17
|
Card,
|
@@ -23,7 +23,7 @@ import {
|
|
23
23
|
Label,
|
24
24
|
Loading,
|
25
25
|
cn
|
26
|
-
} from "../../chunk-
|
26
|
+
} from "../../chunk-PA3Z7W32.mjs";
|
27
27
|
|
28
28
|
// blocks/auth/AuthButtons.tsx
|
29
29
|
import React2 from "react";
|
@@ -349,7 +349,13 @@ Button.displayName = "Button";
|
|
349
349
|
// elements/card/Card.tsx
|
350
350
|
var React3 = __toESM(require("react"));
|
351
351
|
var Card = React3.forwardRef(
|
352
|
-
({
|
352
|
+
({
|
353
|
+
className,
|
354
|
+
variant = "default",
|
355
|
+
clickable = false,
|
356
|
+
asContainer = false,
|
357
|
+
...props
|
358
|
+
}, ref) => {
|
353
359
|
let variantStyles = {
|
354
360
|
default: cn(
|
355
361
|
"hawa-rounded-lg hawa-border hawa-bg-card hawa-text-card-foreground hawa-shadow-sm",
|
@@ -365,7 +371,7 @@ var Card = React3.forwardRef(
|
|
365
371
|
"div",
|
366
372
|
{
|
367
373
|
ref,
|
368
|
-
className: cn(className, variantStyles[variant]),
|
374
|
+
className: cn(className, !asContainer && variantStyles[variant]),
|
369
375
|
...props
|
370
376
|
}
|
371
377
|
);
|
@@ -1,26 +1,26 @@
|
|
1
1
|
"use client";
|
2
2
|
import {
|
3
3
|
Textarea
|
4
|
-
} from "../../chunk-
|
4
|
+
} from "../../chunk-XRUPXLOK.mjs";
|
5
5
|
import {
|
6
6
|
Select
|
7
|
-
} from "../../chunk-
|
7
|
+
} from "../../chunk-34LNWMOZ.mjs";
|
8
8
|
import {
|
9
9
|
Radio
|
10
|
-
} from "../../chunk-
|
10
|
+
} from "../../chunk-2QAGLSHC.mjs";
|
11
11
|
import {
|
12
12
|
BadEmoji,
|
13
13
|
GoodEmoji,
|
14
14
|
VeryBadEmoji,
|
15
15
|
VeryGoodEmoji
|
16
|
-
} from "../../chunk-
|
16
|
+
} from "../../chunk-3S44N7SB.mjs";
|
17
17
|
import {
|
18
18
|
Button,
|
19
19
|
Card,
|
20
20
|
CardContent,
|
21
21
|
Label,
|
22
22
|
cn
|
23
|
-
} from "../../chunk-
|
23
|
+
} from "../../chunk-PA3Z7W32.mjs";
|
24
24
|
|
25
25
|
// blocks/feedback/UserReferralSource.tsx
|
26
26
|
import React, { useRef, useState } from "react";
|
package/dist/blocks/index.js
CHANGED
@@ -971,7 +971,13 @@ var Alert = ({
|
|
971
971
|
// elements/card/Card.tsx
|
972
972
|
var React6 = __toESM(require("react"));
|
973
973
|
var Card = React6.forwardRef(
|
974
|
-
({
|
974
|
+
({
|
975
|
+
className,
|
976
|
+
variant = "default",
|
977
|
+
clickable = false,
|
978
|
+
asContainer = false,
|
979
|
+
...props
|
980
|
+
}, ref) => {
|
975
981
|
let variantStyles = {
|
976
982
|
default: cn(
|
977
983
|
"hawa-rounded-lg hawa-border hawa-bg-card hawa-text-card-foreground hawa-shadow-sm",
|
@@ -987,7 +993,7 @@ var Card = React6.forwardRef(
|
|
987
993
|
"div",
|
988
994
|
{
|
989
995
|
ref,
|
990
|
-
className: cn(className, variantStyles[variant]),
|
996
|
+
className: cn(className, !asContainer && variantStyles[variant]),
|
991
997
|
...props
|
992
998
|
}
|
993
999
|
);
|
package/dist/blocks/index.mjs
CHANGED
@@ -26,7 +26,7 @@ import {
|
|
26
26
|
UncheckMark,
|
27
27
|
VeryBadEmoji,
|
28
28
|
VeryGoodEmoji
|
29
|
-
} from "../chunk-
|
29
|
+
} from "../chunk-6HRJIMXY.mjs";
|
30
30
|
import "../chunk-R2SKHHDK.mjs";
|
31
31
|
import {
|
32
32
|
Button,
|
@@ -43,7 +43,7 @@ import {
|
|
43
43
|
Skeleton,
|
44
44
|
Tooltip,
|
45
45
|
cn
|
46
|
-
} from "../chunk-
|
46
|
+
} from "../chunk-MQWYXMSK.mjs";
|
47
47
|
import "../chunk-UDCDD66A.mjs";
|
48
48
|
|
49
49
|
// blocks/auth/AuthButtons.tsx
|
@@ -775,7 +775,13 @@ Button.displayName = "Button";
|
|
775
775
|
// elements/card/Card.tsx
|
776
776
|
var React16 = __toESM(require("react"));
|
777
777
|
var Card = React16.forwardRef(
|
778
|
-
({
|
778
|
+
({
|
779
|
+
className,
|
780
|
+
variant = "default",
|
781
|
+
clickable = false,
|
782
|
+
asContainer = false,
|
783
|
+
...props
|
784
|
+
}, ref) => {
|
779
785
|
let variantStyles = {
|
780
786
|
default: cn(
|
781
787
|
"hawa-rounded-lg hawa-border hawa-bg-card hawa-text-card-foreground hawa-shadow-sm",
|
@@ -791,7 +797,7 @@ var Card = React16.forwardRef(
|
|
791
797
|
"div",
|
792
798
|
{
|
793
799
|
ref,
|
794
|
-
className: cn(className, variantStyles[variant]),
|
800
|
+
className: cn(className, !asContainer && variantStyles[variant]),
|
795
801
|
...props
|
796
802
|
}
|
797
803
|
);
|
@@ -1,17 +1,17 @@
|
|
1
1
|
"use client";
|
2
2
|
import {
|
3
3
|
Input
|
4
|
-
} from "../../chunk-
|
4
|
+
} from "../../chunk-S6TZHTWS.mjs";
|
5
5
|
import {
|
6
6
|
Chip,
|
7
7
|
ScrollArea
|
8
|
-
} from "../../chunk-
|
8
|
+
} from "../../chunk-WUMWQIAW.mjs";
|
9
9
|
import {
|
10
10
|
Textarea
|
11
|
-
} from "../../chunk-
|
11
|
+
} from "../../chunk-XRUPXLOK.mjs";
|
12
12
|
import {
|
13
13
|
Select
|
14
|
-
} from "../../chunk-
|
14
|
+
} from "../../chunk-34LNWMOZ.mjs";
|
15
15
|
import {
|
16
16
|
Button,
|
17
17
|
Card,
|
@@ -21,7 +21,7 @@ import {
|
|
21
21
|
CardHeader,
|
22
22
|
CardTitle,
|
23
23
|
cn
|
24
|
-
} from "../../chunk-
|
24
|
+
} from "../../chunk-PA3Z7W32.mjs";
|
25
25
|
|
26
26
|
// blocks/misc/LegalTexts.tsx
|
27
27
|
import React11 from "react";
|
@@ -352,7 +352,13 @@ Button.displayName = "Button";
|
|
352
352
|
// elements/card/Card.tsx
|
353
353
|
var React5 = __toESM(require("react"));
|
354
354
|
var Card = React5.forwardRef(
|
355
|
-
({
|
355
|
+
({
|
356
|
+
className,
|
357
|
+
variant = "default",
|
358
|
+
clickable = false,
|
359
|
+
asContainer = false,
|
360
|
+
...props
|
361
|
+
}, ref) => {
|
356
362
|
let variantStyles = {
|
357
363
|
default: cn(
|
358
364
|
"hawa-rounded-lg hawa-border hawa-bg-card hawa-text-card-foreground hawa-shadow-sm",
|
@@ -368,7 +374,7 @@ var Card = React5.forwardRef(
|
|
368
374
|
"div",
|
369
375
|
{
|
370
376
|
ref,
|
371
|
-
className: cn(className, variantStyles[variant]),
|
377
|
+
className: cn(className, !asContainer && variantStyles[variant]),
|
372
378
|
...props
|
373
379
|
}
|
374
380
|
);
|
@@ -2,22 +2,22 @@
|
|
2
2
|
import {
|
3
3
|
Chip,
|
4
4
|
ScrollArea
|
5
|
-
} from "../../chunk-
|
5
|
+
} from "../../chunk-WUMWQIAW.mjs";
|
6
6
|
import "../../chunk-47APBDKK.mjs";
|
7
7
|
import {
|
8
8
|
Radio
|
9
|
-
} from "../../chunk-
|
9
|
+
} from "../../chunk-2QAGLSHC.mjs";
|
10
10
|
import {
|
11
11
|
CheckMark,
|
12
12
|
UncheckMark
|
13
|
-
} from "../../chunk-
|
13
|
+
} from "../../chunk-3S44N7SB.mjs";
|
14
14
|
import {
|
15
15
|
Button,
|
16
16
|
Card,
|
17
17
|
Skeleton,
|
18
18
|
Tooltip,
|
19
19
|
cn
|
20
|
-
} from "../../chunk-
|
20
|
+
} from "../../chunk-PA3Z7W32.mjs";
|
21
21
|
|
22
22
|
// blocks/pricing/PricingPlans.tsx
|
23
23
|
import React8 from "react";
|
package/dist/card/index.d.mts
CHANGED
@@ -3,6 +3,7 @@ import * as React from 'react';
|
|
3
3
|
interface CardProps extends React.HTMLAttributes<HTMLDivElement> {
|
4
4
|
clickable?: boolean;
|
5
5
|
variant?: "default" | "neoBrutalism";
|
6
|
+
asContainer?: boolean;
|
6
7
|
}
|
7
8
|
declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttributes<HTMLDivElement>>;
|
8
9
|
declare const CardHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
package/dist/card/index.d.ts
CHANGED
@@ -3,6 +3,7 @@ import * as React from 'react';
|
|
3
3
|
interface CardProps extends React.HTMLAttributes<HTMLDivElement> {
|
4
4
|
clickable?: boolean;
|
5
5
|
variant?: "default" | "neoBrutalism";
|
6
|
+
asContainer?: boolean;
|
6
7
|
}
|
7
8
|
declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttributes<HTMLDivElement>>;
|
8
9
|
declare const CardHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
package/dist/card/index.js
CHANGED
@@ -52,7 +52,13 @@ function cn(...inputs) {
|
|
52
52
|
|
53
53
|
// elements/card/Card.tsx
|
54
54
|
var Card = React.forwardRef(
|
55
|
-
({
|
55
|
+
({
|
56
|
+
className,
|
57
|
+
variant = "default",
|
58
|
+
clickable = false,
|
59
|
+
asContainer = false,
|
60
|
+
...props
|
61
|
+
}, ref) => {
|
56
62
|
let variantStyles = {
|
57
63
|
default: cn(
|
58
64
|
"hawa-rounded-lg hawa-border hawa-bg-card hawa-text-card-foreground hawa-shadow-sm",
|
@@ -68,7 +74,7 @@ var Card = React.forwardRef(
|
|
68
74
|
"div",
|
69
75
|
{
|
70
76
|
ref,
|
71
|
-
className: cn(className, variantStyles[variant]),
|
77
|
+
className: cn(className, !asContainer && variantStyles[variant]),
|
72
78
|
...props
|
73
79
|
}
|
74
80
|
);
|
package/dist/card/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../elements/card/index.ts","../../elements/card/Card.tsx","../../util/index.ts"],"sourcesContent":["export * from \"./Card\";\n","import * as React from \"react\";\n\nimport { cn } from \"@util/index\";\n\ninterface CardProps extends React.HTMLAttributes<HTMLDivElement> {\n clickable?: boolean;\n variant?: \"default\" | \"neoBrutalism\";\n}\n\ntype CardContentProps = {\n headless?: boolean;\n noPadding?: boolean;\n} & React.HTMLAttributes<HTMLDivElement>;\n\nconst Card = React.forwardRef<HTMLDivElement, CardProps>(\n ({
|
1
|
+
{"version":3,"sources":["../../elements/card/index.ts","../../elements/card/Card.tsx","../../util/index.ts"],"sourcesContent":["export * from \"./Card\";\n","import * as React from \"react\";\n\nimport { cn } from \"@util/index\";\n\ninterface CardProps extends React.HTMLAttributes<HTMLDivElement> {\n clickable?: boolean;\n variant?: \"default\" | \"neoBrutalism\";\n asContainer?: boolean;\n}\n\ntype CardContentProps = {\n headless?: boolean;\n noPadding?: boolean;\n} & React.HTMLAttributes<HTMLDivElement>;\n\nconst Card = React.forwardRef<HTMLDivElement, CardProps>(\n (\n {\n className,\n variant = \"default\",\n clickable = false,\n asContainer = false,\n ...props\n },\n ref,\n ) => {\n let variantStyles = {\n default: cn(\n \"hawa-rounded-lg hawa-border hawa-bg-card hawa-text-card-foreground hawa-shadow-sm\",\n clickable &&\n \"hawa-cursor-pointer hawa-transition-all hover:hawa-drop-shadow-md dark:hover:dark-shadow\",\n ),\n neoBrutalism: cn(\n \"neo-brutalism\",\n // \"hawa-transition-all hawa-uppercase hawa-font-mono dark:hawa-bg-black hawa-font-bold hawa-py-2 hawa-px-4 hawa-rounded hawa-border-2 hawa-border-primary hawa-shadow-color-primary hawa-transition-[hawa-transform_50ms, hawa-box-shadow_50ms] transition-all uppercase font-mono dark:bg-black font-bold py-2 px-4 rounded border-2 border-primary shadow-color-primary transition-[transform_50ms, box-shadow_50ms]\",\n clickable &&\n \"hawa-cursor-pointer active:hawa-translate-x-0.5 active:hawa-translate-y-0.5 active:hawa-shadow-color-primary-active active:translate-x-0.5 active:translate-y-0.5 active:shadow-color-primary-active\",\n ),\n };\n return (\n <div\n ref={ref}\n className={cn(className, !asContainer && variantStyles[variant])}\n {...props}\n />\n );\n },\n);\nconst CardHeader = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n \"hawa-flex hawa-flex-col hawa-space-y-1.5 hawa-p-6\",\n className,\n )}\n {...props}\n />\n));\nconst CardTitle = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLHeadingElement>\n>(({ className, ...props }, ref) => (\n <h3\n ref={ref}\n className={cn(\"hawa-text-2xl hawa-font-semibold \", className)}\n {...props}\n />\n));\nconst CardDescription = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n className={cn(\"hawa-text-sm hawa-text-muted-foreground\", className)}\n {...props}\n />\n));\nconst CardContent = React.forwardRef<HTMLDivElement, CardContentProps>(\n ({ headless, noPadding, className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n noPadding ? \"hawa-p-0\" : \"hawa-p-6\",\n headless ? \"hawa-pt-6\" : \"hawa-pt-0\",\n className,\n )}\n {...props}\n />\n ),\n);\nconst CardFooter = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement> & { noPadding?: boolean }\n>(({ className, noPadding, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n noPadding ? \"hawa-p-0\" : \"hawa-p-6\",\n \"hawa-flex hawa-items-center hawa-pt-0\",\n className,\n )}\n {...props}\n />\n));\n\nCardDescription.displayName = \"CardDescription\";\nCardContent.displayName = \"CardContent\";\nCardHeader.displayName = \"CardHeader\";\nCardFooter.displayName = \"CardFooter\";\nCardTitle.displayName = \"CardTitle\";\nCard.displayName = \"Card\";\n\nexport {\n CardDescription,\n CardContent,\n CardHeader,\n CardFooter,\n CardTitle,\n Card,\n};\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\ntype Palette = {\n name: string;\n colors: {\n [key: number]: string;\n };\n};\ntype Rgb = {\n r: number;\n g: number;\n b: number;\n};\nfunction hexToRgb(hex: string): Rgb | null {\n const sanitizedHex = hex.replaceAll(\"##\", \"#\");\n const colorParts = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(\n sanitizedHex\n );\n\n if (!colorParts) {\n return null;\n }\n\n const [, r, g, b] = colorParts;\n\n return {\n r: parseInt(r, 16),\n g: parseInt(g, 16),\n b: parseInt(b, 16)\n } as Rgb;\n}\n\nfunction rgbToHex(r: number, g: number, b: number): string {\n const toHex = (c: number) => `0${c.toString(16)}`.slice(-2);\n return `#${toHex(r)}${toHex(g)}${toHex(b)}`;\n}\n\nexport function getTextColor(color: string): \"#FFF\" | \"#333\" {\n const rgbColor = hexToRgb(color);\n\n if (!rgbColor) {\n return \"#333\";\n }\n\n const { r, g, b } = rgbColor;\n const luma = 0.2126 * r + 0.7152 * g + 0.0722 * b;\n\n return luma < 120 ? \"#FFF\" : \"#333\";\n}\n\nfunction lighten(hex: string, intensity: number): string {\n const color = hexToRgb(`#${hex}`);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r + (255 - color.r) * intensity);\n const g = Math.round(color.g + (255 - color.g) * intensity);\n const b = Math.round(color.b + (255 - color.b) * intensity);\n\n return rgbToHex(r, g, b);\n}\n\nfunction darken(hex: string, intensity: number): string {\n const color = hexToRgb(hex);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r * intensity);\n const g = Math.round(color.g * intensity);\n const b = Math.round(color.b * intensity);\n\n return rgbToHex(r, g, b);\n}\nconst parseColor = (color: any) => {\n if (color.startsWith(\"#\")) {\n // Convert hex to RGB\n let r = parseInt(color.slice(1, 3), 16);\n let g = parseInt(color.slice(3, 5), 16);\n let b = parseInt(color.slice(5, 7), 16);\n return [r, g, b];\n } else if (color.startsWith(\"rgb\")) {\n // Extract RGB values from rgb() format\n return color.match(/\\d+/g).map(Number);\n }\n // Default to white if format is unrecognized\n return [255, 255, 255];\n};\nexport const calculateLuminance = (color: any) => {\n const [r, g, b] = parseColor(color)?.map((c: any) => {\n c /= 255;\n return c <= 0.03928 ? c / 12.92 : ((c + 0.055) / 1.055) ** 2.4;\n });\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n};\n\nfunction getPallette(baseColor: string): Palette {\n const name = baseColor;\n\n const response: Palette = {\n name,\n colors: {\n 500: `#${baseColor}`.replace(\"##\", \"#\")\n }\n };\n\n const intensityMap: {\n [key: number]: number;\n } = {\n 50: 0.95,\n 100: 0.9,\n 200: 0.75,\n 300: 0.6,\n 400: 0.3,\n 600: 0.9,\n 700: 0.75,\n 800: 0.6,\n 900: 0.49\n };\n\n [50, 100, 200, 300, 400].forEach((level) => {\n response.colors[level] = lighten(baseColor, intensityMap[level]);\n });\n [600, 700, 800, 900].forEach((level) => {\n response.colors[level] = darken(baseColor, intensityMap[level]);\n });\n\n return response as Palette;\n}\n\nexport { getPallette };\n\n// const hexToRgb = (hex) => {\n// let d = hex?.split(\"#\")[1];\n// var aRgbHex = d?.match(/.{1,2}/g);\n// var aRgb = [\n// parseInt(aRgbHex[0], 16),\n// parseInt(aRgbHex[1], 16),\n// parseInt(aRgbHex[2], 16)\n// ];\n// return aRgb;\n// };\n// const getTextColor = (backColor) => {\n// let rgbArray = hexToRgb(backColor);\n// if (rgbArray[0] * 0.299 + rgbArray[1] * 0.587 + rgbArray[2] * 0.114 > 186) {\n// return \"#000000\";\n// } else {\n// return \"#ffffff\";\n// }\n// };\n// const replaceAt = function (string, index, replacement) {\n// // if (replacement == \"\" || replacement == \" \") {\n// // return (\n// // string.substring(0, index) +\n// // string.substring(index + replacement.length )\n// // );\n// // }\n// const replaced = string.substring(0, index) + replacement + string.substring(index + 1)\n// return replaced\n// };\n\n// export { hexToRgb, getTextColor, replaceAt };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,YAAuB;;;ACAvB,kBAAsC;AACtC,4BAAwB;AAEjB,SAAS,MAAM,QAAsB;AAC1C,aAAO,mCAAQ,kBAAK,MAAM,CAAC;AAC7B;;;ADUA,IAAM,OAAa;AAAA,EACjB,CACE;AAAA,IACE;AAAA,IACA,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,GAAG;AAAA,EACL,GACA,QACG;AACH,QAAI,gBAAgB;AAAA,MAClB,SAAS;AAAA,QACP;AAAA,QACA,aACE;AAAA,MACJ;AAAA,MACA,cAAc;AAAA,QACZ;AAAA;AAAA,QAEA,aACE;AAAA,MACJ;AAAA,IACF;AACA,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,WAAW,GAAG,WAAW,CAAC,eAAe,cAAc,OAAO,CAAC;AAAA,QAC9D,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACF;AACA,IAAM,aAAmB,iBAGvB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AACD,IAAM,YAAkB,iBAGtB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW,GAAG,qCAAqC,SAAS;AAAA,IAC3D,GAAG;AAAA;AACN,CACD;AACD,IAAM,kBAAwB,iBAG5B,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW,GAAG,2CAA2C,SAAS;AAAA,IACjE,GAAG;AAAA;AACN,CACD;AACD,IAAM,cAAoB;AAAA,EACxB,CAAC,EAAE,UAAU,WAAW,WAAW,GAAG,MAAM,GAAG,QAC7C;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,WAAW;AAAA,QACT,YAAY,aAAa;AAAA,QACzB,WAAW,cAAc;AAAA,QACzB;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AACA,IAAM,aAAmB,iBAGvB,CAAC,EAAE,WAAW,WAAW,GAAG,MAAM,GAAG,QACrC;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW;AAAA,MACT,YAAY,aAAa;AAAA,MACzB;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AAED,gBAAgB,cAAc;AAC9B,YAAY,cAAc;AAC1B,WAAW,cAAc;AACzB,WAAW,cAAc;AACzB,UAAU,cAAc;AACxB,KAAK,cAAc;","names":[]}
|
package/dist/card/index.mjs
CHANGED
@@ -12,7 +12,13 @@ function cn(...inputs) {
|
|
12
12
|
|
13
13
|
// elements/card/Card.tsx
|
14
14
|
var Card = React.forwardRef(
|
15
|
-
({
|
15
|
+
({
|
16
|
+
className,
|
17
|
+
variant = "default",
|
18
|
+
clickable = false,
|
19
|
+
asContainer = false,
|
20
|
+
...props
|
21
|
+
}, ref) => {
|
16
22
|
let variantStyles = {
|
17
23
|
default: cn(
|
18
24
|
"hawa-rounded-lg hawa-border hawa-bg-card hawa-text-card-foreground hawa-shadow-sm",
|
@@ -28,7 +34,7 @@ var Card = React.forwardRef(
|
|
28
34
|
"div",
|
29
35
|
{
|
30
36
|
ref,
|
31
|
-
className: cn(className, variantStyles[variant]),
|
37
|
+
className: cn(className, !asContainer && variantStyles[variant]),
|
32
38
|
...props
|
33
39
|
}
|
34
40
|
);
|
package/dist/card/index.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../elements/card/Card.tsx","../../util/index.ts"],"sourcesContent":["import * as React from \"react\";\n\nimport { cn } from \"@util/index\";\n\ninterface CardProps extends React.HTMLAttributes<HTMLDivElement> {\n clickable?: boolean;\n variant?: \"default\" | \"neoBrutalism\";\n}\n\ntype CardContentProps = {\n headless?: boolean;\n noPadding?: boolean;\n} & React.HTMLAttributes<HTMLDivElement>;\n\nconst Card = React.forwardRef<HTMLDivElement, CardProps>(\n ({
|
1
|
+
{"version":3,"sources":["../../elements/card/Card.tsx","../../util/index.ts"],"sourcesContent":["import * as React from \"react\";\n\nimport { cn } from \"@util/index\";\n\ninterface CardProps extends React.HTMLAttributes<HTMLDivElement> {\n clickable?: boolean;\n variant?: \"default\" | \"neoBrutalism\";\n asContainer?: boolean;\n}\n\ntype CardContentProps = {\n headless?: boolean;\n noPadding?: boolean;\n} & React.HTMLAttributes<HTMLDivElement>;\n\nconst Card = React.forwardRef<HTMLDivElement, CardProps>(\n (\n {\n className,\n variant = \"default\",\n clickable = false,\n asContainer = false,\n ...props\n },\n ref,\n ) => {\n let variantStyles = {\n default: cn(\n \"hawa-rounded-lg hawa-border hawa-bg-card hawa-text-card-foreground hawa-shadow-sm\",\n clickable &&\n \"hawa-cursor-pointer hawa-transition-all hover:hawa-drop-shadow-md dark:hover:dark-shadow\",\n ),\n neoBrutalism: cn(\n \"neo-brutalism\",\n // \"hawa-transition-all hawa-uppercase hawa-font-mono dark:hawa-bg-black hawa-font-bold hawa-py-2 hawa-px-4 hawa-rounded hawa-border-2 hawa-border-primary hawa-shadow-color-primary hawa-transition-[hawa-transform_50ms, hawa-box-shadow_50ms] transition-all uppercase font-mono dark:bg-black font-bold py-2 px-4 rounded border-2 border-primary shadow-color-primary transition-[transform_50ms, box-shadow_50ms]\",\n clickable &&\n \"hawa-cursor-pointer active:hawa-translate-x-0.5 active:hawa-translate-y-0.5 active:hawa-shadow-color-primary-active active:translate-x-0.5 active:translate-y-0.5 active:shadow-color-primary-active\",\n ),\n };\n return (\n <div\n ref={ref}\n className={cn(className, !asContainer && variantStyles[variant])}\n {...props}\n />\n );\n },\n);\nconst CardHeader = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n \"hawa-flex hawa-flex-col hawa-space-y-1.5 hawa-p-6\",\n className,\n )}\n {...props}\n />\n));\nconst CardTitle = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLHeadingElement>\n>(({ className, ...props }, ref) => (\n <h3\n ref={ref}\n className={cn(\"hawa-text-2xl hawa-font-semibold \", className)}\n {...props}\n />\n));\nconst CardDescription = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n className={cn(\"hawa-text-sm hawa-text-muted-foreground\", className)}\n {...props}\n />\n));\nconst CardContent = React.forwardRef<HTMLDivElement, CardContentProps>(\n ({ headless, noPadding, className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n noPadding ? \"hawa-p-0\" : \"hawa-p-6\",\n headless ? \"hawa-pt-6\" : \"hawa-pt-0\",\n className,\n )}\n {...props}\n />\n ),\n);\nconst CardFooter = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement> & { noPadding?: boolean }\n>(({ className, noPadding, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n noPadding ? \"hawa-p-0\" : \"hawa-p-6\",\n \"hawa-flex hawa-items-center hawa-pt-0\",\n className,\n )}\n {...props}\n />\n));\n\nCardDescription.displayName = \"CardDescription\";\nCardContent.displayName = \"CardContent\";\nCardHeader.displayName = \"CardHeader\";\nCardFooter.displayName = \"CardFooter\";\nCardTitle.displayName = \"CardTitle\";\nCard.displayName = \"Card\";\n\nexport {\n CardDescription,\n CardContent,\n CardHeader,\n CardFooter,\n CardTitle,\n Card,\n};\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\ntype Palette = {\n name: string;\n colors: {\n [key: number]: string;\n };\n};\ntype Rgb = {\n r: number;\n g: number;\n b: number;\n};\nfunction hexToRgb(hex: string): Rgb | null {\n const sanitizedHex = hex.replaceAll(\"##\", \"#\");\n const colorParts = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(\n sanitizedHex\n );\n\n if (!colorParts) {\n return null;\n }\n\n const [, r, g, b] = colorParts;\n\n return {\n r: parseInt(r, 16),\n g: parseInt(g, 16),\n b: parseInt(b, 16)\n } as Rgb;\n}\n\nfunction rgbToHex(r: number, g: number, b: number): string {\n const toHex = (c: number) => `0${c.toString(16)}`.slice(-2);\n return `#${toHex(r)}${toHex(g)}${toHex(b)}`;\n}\n\nexport function getTextColor(color: string): \"#FFF\" | \"#333\" {\n const rgbColor = hexToRgb(color);\n\n if (!rgbColor) {\n return \"#333\";\n }\n\n const { r, g, b } = rgbColor;\n const luma = 0.2126 * r + 0.7152 * g + 0.0722 * b;\n\n return luma < 120 ? \"#FFF\" : \"#333\";\n}\n\nfunction lighten(hex: string, intensity: number): string {\n const color = hexToRgb(`#${hex}`);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r + (255 - color.r) * intensity);\n const g = Math.round(color.g + (255 - color.g) * intensity);\n const b = Math.round(color.b + (255 - color.b) * intensity);\n\n return rgbToHex(r, g, b);\n}\n\nfunction darken(hex: string, intensity: number): string {\n const color = hexToRgb(hex);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r * intensity);\n const g = Math.round(color.g * intensity);\n const b = Math.round(color.b * intensity);\n\n return rgbToHex(r, g, b);\n}\nconst parseColor = (color: any) => {\n if (color.startsWith(\"#\")) {\n // Convert hex to RGB\n let r = parseInt(color.slice(1, 3), 16);\n let g = parseInt(color.slice(3, 5), 16);\n let b = parseInt(color.slice(5, 7), 16);\n return [r, g, b];\n } else if (color.startsWith(\"rgb\")) {\n // Extract RGB values from rgb() format\n return color.match(/\\d+/g).map(Number);\n }\n // Default to white if format is unrecognized\n return [255, 255, 255];\n};\nexport const calculateLuminance = (color: any) => {\n const [r, g, b] = parseColor(color)?.map((c: any) => {\n c /= 255;\n return c <= 0.03928 ? c / 12.92 : ((c + 0.055) / 1.055) ** 2.4;\n });\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n};\n\nfunction getPallette(baseColor: string): Palette {\n const name = baseColor;\n\n const response: Palette = {\n name,\n colors: {\n 500: `#${baseColor}`.replace(\"##\", \"#\")\n }\n };\n\n const intensityMap: {\n [key: number]: number;\n } = {\n 50: 0.95,\n 100: 0.9,\n 200: 0.75,\n 300: 0.6,\n 400: 0.3,\n 600: 0.9,\n 700: 0.75,\n 800: 0.6,\n 900: 0.49\n };\n\n [50, 100, 200, 300, 400].forEach((level) => {\n response.colors[level] = lighten(baseColor, intensityMap[level]);\n });\n [600, 700, 800, 900].forEach((level) => {\n response.colors[level] = darken(baseColor, intensityMap[level]);\n });\n\n return response as Palette;\n}\n\nexport { getPallette };\n\n// const hexToRgb = (hex) => {\n// let d = hex?.split(\"#\")[1];\n// var aRgbHex = d?.match(/.{1,2}/g);\n// var aRgb = [\n// parseInt(aRgbHex[0], 16),\n// parseInt(aRgbHex[1], 16),\n// parseInt(aRgbHex[2], 16)\n// ];\n// return aRgb;\n// };\n// const getTextColor = (backColor) => {\n// let rgbArray = hexToRgb(backColor);\n// if (rgbArray[0] * 0.299 + rgbArray[1] * 0.587 + rgbArray[2] * 0.114 > 186) {\n// return \"#000000\";\n// } else {\n// return \"#ffffff\";\n// }\n// };\n// const replaceAt = function (string, index, replacement) {\n// // if (replacement == \"\" || replacement == \" \") {\n// // return (\n// // string.substring(0, index) +\n// // string.substring(index + replacement.length )\n// // );\n// // }\n// const replaced = string.substring(0, index) + replacement + string.substring(index + 1)\n// return replaced\n// };\n\n// export { hexToRgb, getTextColor, replaceAt };\n"],"mappings":";;;AAAA,YAAY,WAAW;;;ACAvB,SAAS,YAA6B;AACtC,SAAS,eAAe;AAEjB,SAAS,MAAM,QAAsB;AAC1C,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;;;ADUA,IAAM,OAAa;AAAA,EACjB,CACE;AAAA,IACE;AAAA,IACA,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,GAAG;AAAA,EACL,GACA,QACG;AACH,QAAI,gBAAgB;AAAA,MAClB,SAAS;AAAA,QACP;AAAA,QACA,aACE;AAAA,MACJ;AAAA,MACA,cAAc;AAAA,QACZ;AAAA;AAAA,QAEA,aACE;AAAA,MACJ;AAAA,IACF;AACA,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,WAAW,GAAG,WAAW,CAAC,eAAe,cAAc,OAAO,CAAC;AAAA,QAC9D,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACF;AACA,IAAM,aAAmB,iBAGvB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AACD,IAAM,YAAkB,iBAGtB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW,GAAG,qCAAqC,SAAS;AAAA,IAC3D,GAAG;AAAA;AACN,CACD;AACD,IAAM,kBAAwB,iBAG5B,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW,GAAG,2CAA2C,SAAS;AAAA,IACjE,GAAG;AAAA;AACN,CACD;AACD,IAAM,cAAoB;AAAA,EACxB,CAAC,EAAE,UAAU,WAAW,WAAW,GAAG,MAAM,GAAG,QAC7C;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,WAAW;AAAA,QACT,YAAY,aAAa;AAAA,QACzB,WAAW,cAAc;AAAA,QACzB;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AACA,IAAM,aAAmB,iBAGvB,CAAC,EAAE,WAAW,WAAW,GAAG,MAAM,GAAG,QACrC;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW;AAAA,MACT,YAAY,aAAa;AAAA,MACzB;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AAED,gBAAgB,cAAc;AAC9B,YAAY,cAAc;AAC1B,WAAW,cAAc;AACzB,WAAW,cAAc;AACzB,UAAU,cAAc;AACxB,KAAK,cAAc;","names":[]}
|
@@ -675,7 +675,13 @@ var Logos = {
|
|
675
675
|
// elements/card/Card.tsx
|
676
676
|
import * as React4 from "react";
|
677
677
|
var Card = React4.forwardRef(
|
678
|
-
({
|
678
|
+
({
|
679
|
+
className,
|
680
|
+
variant = "default",
|
681
|
+
clickable = false,
|
682
|
+
asContainer = false,
|
683
|
+
...props
|
684
|
+
}, ref) => {
|
679
685
|
let variantStyles = {
|
680
686
|
default: cn(
|
681
687
|
"hawa-rounded-lg hawa-border hawa-bg-card hawa-text-card-foreground hawa-shadow-sm",
|
@@ -691,7 +697,7 @@ var Card = React4.forwardRef(
|
|
691
697
|
"div",
|
692
698
|
{
|
693
699
|
ref,
|
694
|
-
className: cn(className, variantStyles[variant]),
|
700
|
+
className: cn(className, !asContainer && variantStyles[variant]),
|
695
701
|
...props
|
696
702
|
}
|
697
703
|
);
|
@@ -301,7 +301,13 @@ Button.displayName = "Button";
|
|
301
301
|
// elements/card/Card.tsx
|
302
302
|
import * as React3 from "react";
|
303
303
|
var Card = React3.forwardRef(
|
304
|
-
({
|
304
|
+
({
|
305
|
+
className,
|
306
|
+
variant = "default",
|
307
|
+
clickable = false,
|
308
|
+
asContainer = false,
|
309
|
+
...props
|
310
|
+
}, ref) => {
|
305
311
|
let variantStyles = {
|
306
312
|
default: cn(
|
307
313
|
"hawa-rounded-lg hawa-border hawa-bg-card hawa-text-card-foreground hawa-shadow-sm",
|
@@ -317,7 +323,7 @@ var Card = React3.forwardRef(
|
|
317
323
|
"div",
|
318
324
|
{
|
319
325
|
ref,
|
320
|
-
className: cn(className, variantStyles[variant]),
|
326
|
+
className: cn(className, !asContainer && variantStyles[variant]),
|
321
327
|
...props
|
322
328
|
}
|
323
329
|
);
|
package/dist/combobox/index.js
CHANGED
@@ -754,7 +754,7 @@ var Combobox = React7.forwardRef(
|
|
754
754
|
{
|
755
755
|
className: cn(
|
756
756
|
"hawa-max-h-[200px]",
|
757
|
-
data.length > 0 && "hawa-overflow-y-
|
757
|
+
data.length > 0 && "hawa-overflow-y-auto"
|
758
758
|
)
|
759
759
|
},
|
760
760
|
data.map((item, i) => /* @__PURE__ */ React7.createElement(
|