@sikka/hawa 0.42.8-next → 0.42.10-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 +4 -0
- package/dist/appLayout/index.d.ts +4 -0
- package/dist/appLayout/index.js +11 -2
- package/dist/appLayout/index.js.map +1 -1
- package/dist/appLayout/index.mjs +11 -2
- package/dist/appLayout/index.mjs.map +1 -1
- package/dist/blocks/auth/index.d.mts +4 -2
- package/dist/blocks/auth/index.d.ts +4 -2
- package/dist/blocks/auth/index.js +19 -14
- package/dist/blocks/auth/index.mjs +19 -14
- package/dist/blocks/index.d.mts +4 -2
- package/dist/blocks/index.d.ts +4 -2
- package/dist/blocks/index.js +19 -14
- package/dist/blocks/index.mjs +7 -2
- package/dist/{chunk-RIZBMJNK.mjs → chunk-NPYUEHMC.mjs} +13 -13
- package/dist/elements/index.js +13 -13
- package/dist/elements/index.mjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.mts +8 -2
- package/dist/index.d.ts +8 -2
- package/dist/index.js +30 -16
- package/dist/index.mjs +30 -16
- package/dist/layout/index.d.mts +4 -0
- package/dist/layout/index.d.ts +4 -0
- package/dist/layout/index.js +11 -2
- package/dist/layout/index.mjs +11 -2
- package/dist/pinInput/index.js +13 -13
- package/dist/pinInput/index.js.map +1 -1
- package/dist/pinInput/index.mjs +13 -13
- package/dist/pinInput/index.mjs.map +1 -1
- package/dist/sidebar/index.d.mts +4 -0
- package/dist/sidebar/index.d.ts +4 -0
- package/dist/sidebar/index.js +11 -2
- package/dist/sidebar/index.js.map +1 -1
- package/dist/sidebar/index.mjs +11 -2
- package/dist/sidebar/index.mjs.map +1 -1
- package/package.json +7 -7
package/dist/elements/index.mjs
CHANGED
package/dist/index.css
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*
|
2
|
-
! tailwindcss v3.4.
|
2
|
+
! tailwindcss v3.4.6 | MIT License | https://tailwindcss.com
|
3
3
|
*//*
|
4
4
|
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
|
5
5
|
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
|
package/dist/index.d.mts
CHANGED
@@ -1279,6 +1279,10 @@ type SubItem = {
|
|
1279
1279
|
value: string;
|
1280
1280
|
label: string;
|
1281
1281
|
slug?: string;
|
1282
|
+
badge?: {
|
1283
|
+
label: string;
|
1284
|
+
color: ChipColors;
|
1285
|
+
};
|
1282
1286
|
icon?: any;
|
1283
1287
|
onMouseDown?: (e: React$1.MouseEvent) => void;
|
1284
1288
|
onClick?: (e: React$1.MouseEvent) => void;
|
@@ -1647,13 +1651,15 @@ type PricingCardProps = {
|
|
1647
1651
|
type LoginFormTypes = {
|
1648
1652
|
/** Object containing text labels used throughout the form. */
|
1649
1653
|
texts?: LoginFormTextsTypes;
|
1650
|
-
/** If true, only logos are displayed in third-party auth buttons
|
1654
|
+
/** If true, only logos are displayed in third-party auth buttons.*/
|
1651
1655
|
logosOnly?: boolean;
|
1652
1656
|
/** Direction of text and UI elements, either left-to-right or right-to-left. */
|
1653
1657
|
direction?: DirectionType;
|
1654
1658
|
/** If true, an error alert is displayed at the top of the form. */
|
1655
1659
|
showError?: boolean;
|
1656
|
-
/**
|
1660
|
+
/** Callback function triggered when the error alert is dismissed. */
|
1661
|
+
onErrorDismissed?: () => void;
|
1662
|
+
/** Title text of error alert.*/
|
1657
1663
|
errorTitle?: string;
|
1658
1664
|
/** Description text of error alert. */
|
1659
1665
|
errorText?: string;
|
package/dist/index.d.ts
CHANGED
@@ -1279,6 +1279,10 @@ type SubItem = {
|
|
1279
1279
|
value: string;
|
1280
1280
|
label: string;
|
1281
1281
|
slug?: string;
|
1282
|
+
badge?: {
|
1283
|
+
label: string;
|
1284
|
+
color: ChipColors;
|
1285
|
+
};
|
1282
1286
|
icon?: any;
|
1283
1287
|
onMouseDown?: (e: React$1.MouseEvent) => void;
|
1284
1288
|
onClick?: (e: React$1.MouseEvent) => void;
|
@@ -1647,13 +1651,15 @@ type PricingCardProps = {
|
|
1647
1651
|
type LoginFormTypes = {
|
1648
1652
|
/** Object containing text labels used throughout the form. */
|
1649
1653
|
texts?: LoginFormTextsTypes;
|
1650
|
-
/** If true, only logos are displayed in third-party auth buttons
|
1654
|
+
/** If true, only logos are displayed in third-party auth buttons.*/
|
1651
1655
|
logosOnly?: boolean;
|
1652
1656
|
/** Direction of text and UI elements, either left-to-right or right-to-left. */
|
1653
1657
|
direction?: DirectionType;
|
1654
1658
|
/** If true, an error alert is displayed at the top of the form. */
|
1655
1659
|
showError?: boolean;
|
1656
|
-
/**
|
1660
|
+
/** Callback function triggered when the error alert is dismissed. */
|
1661
|
+
onErrorDismissed?: () => void;
|
1662
|
+
/** Title text of error alert.*/
|
1657
1663
|
errorTitle?: string;
|
1658
1664
|
/** Description text of error alert. */
|
1659
1665
|
errorText?: string;
|
package/dist/index.js
CHANGED
@@ -7922,19 +7922,19 @@ var PhoneInput = ({
|
|
7922
7922
|
var React50 = __toESM(require("react"));
|
7923
7923
|
var import_input_otp = require("input-otp");
|
7924
7924
|
|
7925
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7925
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/createLucideIcon.js
|
7926
7926
|
var import_react41 = require("react");
|
7927
7927
|
|
7928
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7928
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/shared/src/utils.js
|
7929
7929
|
var toKebabCase = (string9) => string9.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
|
7930
7930
|
var mergeClasses = (...classes) => classes.filter((className, index, array) => {
|
7931
7931
|
return Boolean(className) && array.indexOf(className) === index;
|
7932
7932
|
}).join(" ");
|
7933
7933
|
|
7934
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7934
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/Icon.js
|
7935
7935
|
var import_react40 = require("react");
|
7936
7936
|
|
7937
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7937
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/defaultAttributes.js
|
7938
7938
|
var defaultAttributes = {
|
7939
7939
|
xmlns: "http://www.w3.org/2000/svg",
|
7940
7940
|
width: 24,
|
@@ -7947,7 +7947,7 @@ var defaultAttributes = {
|
|
7947
7947
|
strokeLinejoin: "round"
|
7948
7948
|
};
|
7949
7949
|
|
7950
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7950
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/Icon.js
|
7951
7951
|
var Icon = (0, import_react40.forwardRef)(
|
7952
7952
|
({
|
7953
7953
|
color = "currentColor",
|
@@ -7979,7 +7979,7 @@ var Icon = (0, import_react40.forwardRef)(
|
|
7979
7979
|
}
|
7980
7980
|
);
|
7981
7981
|
|
7982
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7982
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/createLucideIcon.js
|
7983
7983
|
var createLucideIcon = (iconName, iconNode) => {
|
7984
7984
|
const Component = (0, import_react41.forwardRef)(
|
7985
7985
|
({ className, ...props }, ref) => (0, import_react41.createElement)(Icon, {
|
@@ -7993,7 +7993,7 @@ var createLucideIcon = (iconName, iconNode) => {
|
|
7993
7993
|
return Component;
|
7994
7994
|
};
|
7995
7995
|
|
7996
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7996
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/dot.js
|
7997
7997
|
var Dot = createLucideIcon("Dot", [
|
7998
7998
|
["circle", { cx: "12.1", cy: "12.1", r: "1", key: "18d7e5" }]
|
7999
7999
|
]);
|
@@ -9658,7 +9658,8 @@ var SidebarItem = ({
|
|
9658
9658
|
isOpen ? "hawa-opacity-100" : "hawa-opacity-0"
|
9659
9659
|
)
|
9660
9660
|
},
|
9661
|
-
item.label
|
9661
|
+
item.label,
|
9662
|
+
item.badge && /* @__PURE__ */ React72.createElement(Chip, { label: item.badge.label, color: "hyper", size: "small" })
|
9662
9663
|
)
|
9663
9664
|
)
|
9664
9665
|
),
|
@@ -9695,7 +9696,15 @@ var SidebarItem = ({
|
|
9695
9696
|
)
|
9696
9697
|
},
|
9697
9698
|
subitem.icon && subitem.icon,
|
9698
|
-
subitem.label
|
9699
|
+
subitem.label,
|
9700
|
+
subitem.badge && /* @__PURE__ */ React72.createElement(
|
9701
|
+
Chip,
|
9702
|
+
{
|
9703
|
+
label: subitem.badge.label,
|
9704
|
+
color: "hyper",
|
9705
|
+
size: "small"
|
9706
|
+
}
|
9707
|
+
)
|
9699
9708
|
))
|
9700
9709
|
))
|
9701
9710
|
);
|
@@ -11207,7 +11216,12 @@ var LoginForm = ({
|
|
11207
11216
|
direction: props.direction,
|
11208
11217
|
title: props.errorTitle,
|
11209
11218
|
text: props.errorText,
|
11210
|
-
severity: "error"
|
11219
|
+
severity: "error",
|
11220
|
+
onAlertClosed: () => {
|
11221
|
+
if (props.onErrorDismissed) {
|
11222
|
+
props.onErrorDismissed();
|
11223
|
+
}
|
11224
|
+
}
|
11211
11225
|
}
|
11212
11226
|
), /* @__PURE__ */ import_react67.default.createElement(
|
11213
11227
|
"form",
|
@@ -13797,7 +13811,7 @@ var Usage = (props) => {
|
|
13797
13811
|
|
13798
13812
|
lucide-react/dist/esm/shared/src/utils.js:
|
13799
13813
|
(**
|
13800
|
-
* @license lucide-react v0.
|
13814
|
+
* @license lucide-react v0.408.0 - ISC
|
13801
13815
|
*
|
13802
13816
|
* This source code is licensed under the ISC license.
|
13803
13817
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -13805,7 +13819,7 @@ lucide-react/dist/esm/shared/src/utils.js:
|
|
13805
13819
|
|
13806
13820
|
lucide-react/dist/esm/defaultAttributes.js:
|
13807
13821
|
(**
|
13808
|
-
* @license lucide-react v0.
|
13822
|
+
* @license lucide-react v0.408.0 - ISC
|
13809
13823
|
*
|
13810
13824
|
* This source code is licensed under the ISC license.
|
13811
13825
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -13813,7 +13827,7 @@ lucide-react/dist/esm/defaultAttributes.js:
|
|
13813
13827
|
|
13814
13828
|
lucide-react/dist/esm/Icon.js:
|
13815
13829
|
(**
|
13816
|
-
* @license lucide-react v0.
|
13830
|
+
* @license lucide-react v0.408.0 - ISC
|
13817
13831
|
*
|
13818
13832
|
* This source code is licensed under the ISC license.
|
13819
13833
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -13821,7 +13835,7 @@ lucide-react/dist/esm/Icon.js:
|
|
13821
13835
|
|
13822
13836
|
lucide-react/dist/esm/createLucideIcon.js:
|
13823
13837
|
(**
|
13824
|
-
* @license lucide-react v0.
|
13838
|
+
* @license lucide-react v0.408.0 - ISC
|
13825
13839
|
*
|
13826
13840
|
* This source code is licensed under the ISC license.
|
13827
13841
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -13829,7 +13843,7 @@ lucide-react/dist/esm/createLucideIcon.js:
|
|
13829
13843
|
|
13830
13844
|
lucide-react/dist/esm/icons/dot.js:
|
13831
13845
|
(**
|
13832
|
-
* @license lucide-react v0.
|
13846
|
+
* @license lucide-react v0.408.0 - ISC
|
13833
13847
|
*
|
13834
13848
|
* This source code is licensed under the ISC license.
|
13835
13849
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -13837,7 +13851,7 @@ lucide-react/dist/esm/icons/dot.js:
|
|
13837
13851
|
|
13838
13852
|
lucide-react/dist/esm/lucide-react.js:
|
13839
13853
|
(**
|
13840
|
-
* @license lucide-react v0.
|
13854
|
+
* @license lucide-react v0.408.0 - ISC
|
13841
13855
|
*
|
13842
13856
|
* This source code is licensed under the ISC license.
|
13843
13857
|
* See the LICENSE file in the root directory of this source tree.
|
package/dist/index.mjs
CHANGED
@@ -7678,19 +7678,19 @@ var PhoneInput = ({
|
|
7678
7678
|
import * as React50 from "react";
|
7679
7679
|
import { OTPInput, OTPInputContext } from "input-otp";
|
7680
7680
|
|
7681
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7681
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/createLucideIcon.js
|
7682
7682
|
import { forwardRef as forwardRef25, createElement as createElement24 } from "react";
|
7683
7683
|
|
7684
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7684
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/shared/src/utils.js
|
7685
7685
|
var toKebabCase = (string9) => string9.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
|
7686
7686
|
var mergeClasses = (...classes) => classes.filter((className, index, array) => {
|
7687
7687
|
return Boolean(className) && array.indexOf(className) === index;
|
7688
7688
|
}).join(" ");
|
7689
7689
|
|
7690
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7690
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/Icon.js
|
7691
7691
|
import { forwardRef as forwardRef24, createElement as createElement23 } from "react";
|
7692
7692
|
|
7693
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7693
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/defaultAttributes.js
|
7694
7694
|
var defaultAttributes = {
|
7695
7695
|
xmlns: "http://www.w3.org/2000/svg",
|
7696
7696
|
width: 24,
|
@@ -7703,7 +7703,7 @@ var defaultAttributes = {
|
|
7703
7703
|
strokeLinejoin: "round"
|
7704
7704
|
};
|
7705
7705
|
|
7706
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7706
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/Icon.js
|
7707
7707
|
var Icon = forwardRef24(
|
7708
7708
|
({
|
7709
7709
|
color = "currentColor",
|
@@ -7735,7 +7735,7 @@ var Icon = forwardRef24(
|
|
7735
7735
|
}
|
7736
7736
|
);
|
7737
7737
|
|
7738
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7738
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/createLucideIcon.js
|
7739
7739
|
var createLucideIcon = (iconName, iconNode) => {
|
7740
7740
|
const Component = forwardRef25(
|
7741
7741
|
({ className, ...props }, ref) => createElement24(Icon, {
|
@@ -7749,7 +7749,7 @@ var createLucideIcon = (iconName, iconNode) => {
|
|
7749
7749
|
return Component;
|
7750
7750
|
};
|
7751
7751
|
|
7752
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
7752
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/dot.js
|
7753
7753
|
var Dot = createLucideIcon("Dot", [
|
7754
7754
|
["circle", { cx: "12.1", cy: "12.1", r: "1", key: "18d7e5" }]
|
7755
7755
|
]);
|
@@ -9421,7 +9421,8 @@ var SidebarItem = ({
|
|
9421
9421
|
isOpen ? "hawa-opacity-100" : "hawa-opacity-0"
|
9422
9422
|
)
|
9423
9423
|
},
|
9424
|
-
item.label
|
9424
|
+
item.label,
|
9425
|
+
item.badge && /* @__PURE__ */ React72.createElement(Chip, { label: item.badge.label, color: "hyper", size: "small" })
|
9425
9426
|
)
|
9426
9427
|
)
|
9427
9428
|
),
|
@@ -9458,7 +9459,15 @@ var SidebarItem = ({
|
|
9458
9459
|
)
|
9459
9460
|
},
|
9460
9461
|
subitem.icon && subitem.icon,
|
9461
|
-
subitem.label
|
9462
|
+
subitem.label,
|
9463
|
+
subitem.badge && /* @__PURE__ */ React72.createElement(
|
9464
|
+
Chip,
|
9465
|
+
{
|
9466
|
+
label: subitem.badge.label,
|
9467
|
+
color: "hyper",
|
9468
|
+
size: "small"
|
9469
|
+
}
|
9470
|
+
)
|
9462
9471
|
))
|
9463
9472
|
))
|
9464
9473
|
);
|
@@ -10975,7 +10984,12 @@ var LoginForm = ({
|
|
10975
10984
|
direction: props.direction,
|
10976
10985
|
title: props.errorTitle,
|
10977
10986
|
text: props.errorText,
|
10978
|
-
severity: "error"
|
10987
|
+
severity: "error",
|
10988
|
+
onAlertClosed: () => {
|
10989
|
+
if (props.onErrorDismissed) {
|
10990
|
+
props.onErrorDismissed();
|
10991
|
+
}
|
10992
|
+
}
|
10979
10993
|
}
|
10980
10994
|
), /* @__PURE__ */ React82.createElement(
|
10981
10995
|
"form",
|
@@ -13564,7 +13578,7 @@ export {
|
|
13564
13578
|
|
13565
13579
|
lucide-react/dist/esm/shared/src/utils.js:
|
13566
13580
|
(**
|
13567
|
-
* @license lucide-react v0.
|
13581
|
+
* @license lucide-react v0.408.0 - ISC
|
13568
13582
|
*
|
13569
13583
|
* This source code is licensed under the ISC license.
|
13570
13584
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -13572,7 +13586,7 @@ lucide-react/dist/esm/shared/src/utils.js:
|
|
13572
13586
|
|
13573
13587
|
lucide-react/dist/esm/defaultAttributes.js:
|
13574
13588
|
(**
|
13575
|
-
* @license lucide-react v0.
|
13589
|
+
* @license lucide-react v0.408.0 - ISC
|
13576
13590
|
*
|
13577
13591
|
* This source code is licensed under the ISC license.
|
13578
13592
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -13580,7 +13594,7 @@ lucide-react/dist/esm/defaultAttributes.js:
|
|
13580
13594
|
|
13581
13595
|
lucide-react/dist/esm/Icon.js:
|
13582
13596
|
(**
|
13583
|
-
* @license lucide-react v0.
|
13597
|
+
* @license lucide-react v0.408.0 - ISC
|
13584
13598
|
*
|
13585
13599
|
* This source code is licensed under the ISC license.
|
13586
13600
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -13588,7 +13602,7 @@ lucide-react/dist/esm/Icon.js:
|
|
13588
13602
|
|
13589
13603
|
lucide-react/dist/esm/createLucideIcon.js:
|
13590
13604
|
(**
|
13591
|
-
* @license lucide-react v0.
|
13605
|
+
* @license lucide-react v0.408.0 - ISC
|
13592
13606
|
*
|
13593
13607
|
* This source code is licensed under the ISC license.
|
13594
13608
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -13596,7 +13610,7 @@ lucide-react/dist/esm/createLucideIcon.js:
|
|
13596
13610
|
|
13597
13611
|
lucide-react/dist/esm/icons/dot.js:
|
13598
13612
|
(**
|
13599
|
-
* @license lucide-react v0.
|
13613
|
+
* @license lucide-react v0.408.0 - ISC
|
13600
13614
|
*
|
13601
13615
|
* This source code is licensed under the ISC license.
|
13602
13616
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -13604,7 +13618,7 @@ lucide-react/dist/esm/icons/dot.js:
|
|
13604
13618
|
|
13605
13619
|
lucide-react/dist/esm/lucide-react.js:
|
13606
13620
|
(**
|
13607
|
-
* @license lucide-react v0.
|
13621
|
+
* @license lucide-react v0.408.0 - ISC
|
13608
13622
|
*
|
13609
13623
|
* This source code is licensed under the ISC license.
|
13610
13624
|
* See the LICENSE file in the root directory of this source tree.
|
package/dist/layout/index.d.mts
CHANGED
package/dist/layout/index.d.ts
CHANGED
package/dist/layout/index.js
CHANGED
@@ -445,7 +445,8 @@ var SidebarItem = ({
|
|
445
445
|
isOpen ? "hawa-opacity-100" : "hawa-opacity-0"
|
446
446
|
)
|
447
447
|
},
|
448
|
-
item.label
|
448
|
+
item.label,
|
449
|
+
item.badge && /* @__PURE__ */ React5.createElement(Chip, { label: item.badge.label, color: "hyper", size: "small" })
|
449
450
|
)
|
450
451
|
)
|
451
452
|
),
|
@@ -482,7 +483,15 @@ var SidebarItem = ({
|
|
482
483
|
)
|
483
484
|
},
|
484
485
|
subitem.icon && subitem.icon,
|
485
|
-
subitem.label
|
486
|
+
subitem.label,
|
487
|
+
subitem.badge && /* @__PURE__ */ React5.createElement(
|
488
|
+
Chip,
|
489
|
+
{
|
490
|
+
label: subitem.badge.label,
|
491
|
+
color: "hyper",
|
492
|
+
size: "small"
|
493
|
+
}
|
494
|
+
)
|
486
495
|
))
|
487
496
|
))
|
488
497
|
);
|
package/dist/layout/index.mjs
CHANGED
@@ -185,7 +185,8 @@ var SidebarItem = ({
|
|
185
185
|
isOpen ? "hawa-opacity-100" : "hawa-opacity-0"
|
186
186
|
)
|
187
187
|
},
|
188
|
-
item.label
|
188
|
+
item.label,
|
189
|
+
item.badge && /* @__PURE__ */ React2.createElement(Chip, { label: item.badge.label, color: "hyper", size: "small" })
|
189
190
|
)
|
190
191
|
)
|
191
192
|
),
|
@@ -222,7 +223,15 @@ var SidebarItem = ({
|
|
222
223
|
)
|
223
224
|
},
|
224
225
|
subitem.icon && subitem.icon,
|
225
|
-
subitem.label
|
226
|
+
subitem.label,
|
227
|
+
subitem.badge && /* @__PURE__ */ React2.createElement(
|
228
|
+
Chip,
|
229
|
+
{
|
230
|
+
label: subitem.badge.label,
|
231
|
+
color: "hyper",
|
232
|
+
size: "small"
|
233
|
+
}
|
234
|
+
)
|
226
235
|
))
|
227
236
|
))
|
228
237
|
);
|
package/dist/pinInput/index.js
CHANGED
@@ -52,19 +52,19 @@ function cn(...inputs) {
|
|
52
52
|
// elements/pinInput/PinInput.tsx
|
53
53
|
var import_input_otp = require("input-otp");
|
54
54
|
|
55
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
55
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/createLucideIcon.js
|
56
56
|
var import_react2 = require("react");
|
57
57
|
|
58
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
58
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/shared/src/utils.js
|
59
59
|
var toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
|
60
60
|
var mergeClasses = (...classes) => classes.filter((className, index, array) => {
|
61
61
|
return Boolean(className) && array.indexOf(className) === index;
|
62
62
|
}).join(" ");
|
63
63
|
|
64
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
64
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/Icon.js
|
65
65
|
var import_react = require("react");
|
66
66
|
|
67
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
67
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/defaultAttributes.js
|
68
68
|
var defaultAttributes = {
|
69
69
|
xmlns: "http://www.w3.org/2000/svg",
|
70
70
|
width: 24,
|
@@ -77,7 +77,7 @@ var defaultAttributes = {
|
|
77
77
|
strokeLinejoin: "round"
|
78
78
|
};
|
79
79
|
|
80
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
80
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/Icon.js
|
81
81
|
var Icon = (0, import_react.forwardRef)(
|
82
82
|
({
|
83
83
|
color = "currentColor",
|
@@ -109,7 +109,7 @@ var Icon = (0, import_react.forwardRef)(
|
|
109
109
|
}
|
110
110
|
);
|
111
111
|
|
112
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
112
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/createLucideIcon.js
|
113
113
|
var createLucideIcon = (iconName, iconNode) => {
|
114
114
|
const Component = (0, import_react2.forwardRef)(
|
115
115
|
({ className, ...props }, ref) => (0, import_react2.createElement)(Icon, {
|
@@ -123,7 +123,7 @@ var createLucideIcon = (iconName, iconNode) => {
|
|
123
123
|
return Component;
|
124
124
|
};
|
125
125
|
|
126
|
-
// ../../node_modules/.pnpm/lucide-react@0.
|
126
|
+
// ../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/dot.js
|
127
127
|
var Dot = createLucideIcon("Dot", [
|
128
128
|
["circle", { cx: "12.1", cy: "12.1", r: "1", key: "18d7e5" }]
|
129
129
|
]);
|
@@ -214,7 +214,7 @@ var PinInput = ({
|
|
214
214
|
|
215
215
|
lucide-react/dist/esm/shared/src/utils.js:
|
216
216
|
(**
|
217
|
-
* @license lucide-react v0.
|
217
|
+
* @license lucide-react v0.408.0 - ISC
|
218
218
|
*
|
219
219
|
* This source code is licensed under the ISC license.
|
220
220
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -222,7 +222,7 @@ lucide-react/dist/esm/shared/src/utils.js:
|
|
222
222
|
|
223
223
|
lucide-react/dist/esm/defaultAttributes.js:
|
224
224
|
(**
|
225
|
-
* @license lucide-react v0.
|
225
|
+
* @license lucide-react v0.408.0 - ISC
|
226
226
|
*
|
227
227
|
* This source code is licensed under the ISC license.
|
228
228
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -230,7 +230,7 @@ lucide-react/dist/esm/defaultAttributes.js:
|
|
230
230
|
|
231
231
|
lucide-react/dist/esm/Icon.js:
|
232
232
|
(**
|
233
|
-
* @license lucide-react v0.
|
233
|
+
* @license lucide-react v0.408.0 - ISC
|
234
234
|
*
|
235
235
|
* This source code is licensed under the ISC license.
|
236
236
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -238,7 +238,7 @@ lucide-react/dist/esm/Icon.js:
|
|
238
238
|
|
239
239
|
lucide-react/dist/esm/createLucideIcon.js:
|
240
240
|
(**
|
241
|
-
* @license lucide-react v0.
|
241
|
+
* @license lucide-react v0.408.0 - ISC
|
242
242
|
*
|
243
243
|
* This source code is licensed under the ISC license.
|
244
244
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -246,7 +246,7 @@ lucide-react/dist/esm/createLucideIcon.js:
|
|
246
246
|
|
247
247
|
lucide-react/dist/esm/icons/dot.js:
|
248
248
|
(**
|
249
|
-
* @license lucide-react v0.
|
249
|
+
* @license lucide-react v0.408.0 - ISC
|
250
250
|
*
|
251
251
|
* This source code is licensed under the ISC license.
|
252
252
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -254,7 +254,7 @@ lucide-react/dist/esm/icons/dot.js:
|
|
254
254
|
|
255
255
|
lucide-react/dist/esm/lucide-react.js:
|
256
256
|
(**
|
257
|
-
* @license lucide-react v0.
|
257
|
+
* @license lucide-react v0.408.0 - ISC
|
258
258
|
*
|
259
259
|
* This source code is licensed under the ISC license.
|
260
260
|
* See the LICENSE file in the root directory of this source tree.
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../elements/pinInput/index.ts","../../elements/pinInput/PinInput.tsx","../../util/index.ts","../../../../node_modules/.pnpm/lucide-react@0.403.0_react@18.3.1/node_modules/shared/src/utils.ts","../../../../node_modules/.pnpm/lucide-react@0.403.0_react@18.3.1/node_modules/lucide-react/src/defaultAttributes.ts","../../../../node_modules/.pnpm/lucide-react@0.403.0_react@18.3.1/node_modules/lucide-react/src/Icon.ts","../../../../node_modules/.pnpm/lucide-react@0.403.0_react@18.3.1/node_modules/lucide-react/src/createLucideIcon.ts","../../../../node_modules/.pnpm/lucide-react@0.403.0_react@18.3.1/node_modules/lucide-react/src/icons/dot.ts","../../elements/helperText/HelperText.tsx"],"sourcesContent":["export * from \"./PinInput\";\n","import * as React from \"react\";\n\nimport { cn } from \"@util/index\";\nimport { OTPInput, OTPInputContext, OTPInputProps } from \"input-otp\";\nimport { Dot } from \"lucide-react\";\n\nimport { HelperText } from \"../helperText\";\n\nconst PinInputRoot = React.forwardRef<\n React.ElementRef<typeof OTPInput>,\n React.ComponentPropsWithoutRef<typeof OTPInput>\n>(({ className, containerClassName, ...props }, ref) => (\n <OTPInput\n ref={ref}\n containerClassName={cn(\n \"hawa-flex hawa-items-center hawa-gap-2 has-[:disabled]:hawa-opacity-50\",\n containerClassName,\n )}\n className={cn(\"disabled:hawa-cursor-not-allowed\", className)}\n {...props}\n />\n));\nPinInputRoot.displayName = \"PinInputRoot\";\n\nconst PinInputGroup = React.forwardRef<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\">\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"hawa-flex hawa-items-center\", className)}\n {...props}\n />\n));\nPinInputGroup.displayName = \"PinInputGroup\";\n\nconst PinInputSlot = React.forwardRef<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\"> & { index: number }\n>(({ index, className, ...props }, ref) => {\n const pinInputContext = React.useContext(OTPInputContext);\n const { char, hasFakeCaret, isActive } = pinInputContext.slots[index];\n\n return (\n <div\n ref={ref}\n className={cn(\n \"hawa-border-input hawa-relative hawa-flex hawa-h-10 hawa-w-10 hawa-items-center hawa-justify-center hawa-border-y hawa-border-r hawa-text-sm hawa-transition-all first:hawa-rounded-l-md first:hawa-border-l last:hawa-rounded-r-md\",\n isActive &&\n \"hawa-ring-ring hawa-ring-offset-background hawa-z-10 hawa-ring-2\",\n className,\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"hawa-pointer-events-none hawa-absolute hawa-inset-0 hawa-flex hawa-items-center hawa-justify-center\">\n <div className=\"hawa-animate-caret-blink hawa-bg-foreground hawa-h-4 hawa-w-px hawa-duration-1000\" />\n </div>\n )}\n </div>\n );\n});\nPinInputSlot.displayName = \"PinInputSlot\";\n\nconst PinInputSeperator = React.forwardRef<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\">\n>(({ ...props }, ref) => (\n <div ref={ref} role=\"separator\" {...props}>\n <Dot />\n </div>\n));\nPinInputSeperator.displayName = \"PinInputSeperator\";\n\ntype PinInputProps = Omit<OTPInputProps, \"render\"> & {\n /*\n * The position of the separator in the pin input\n * @default 3\n */\n separatorPosition?: number;\n helperText?: any;\n};\n\nconst PinInput: React.FC<PinInputProps> = ({\n separatorPosition = 0,\n ...props\n}) => {\n const maxLength = props.maxLength || 6; // Assuming a default maxLength of 6 if not provided\n const clampedSeparatorPosition = Math.min(separatorPosition, maxLength);\n\n const firstGroupLength =\n clampedSeparatorPosition > 0 ? clampedSeparatorPosition : 0;\n const secondGroupLength = maxLength - firstGroupLength;\n\n return (\n <div className=\"hawa-flex hawa-flex-col hawa-gap-2\">\n <PinInputRoot {...props}>\n {firstGroupLength > 0 && (\n <PinInputGroup className=\"hawa-w-full\">\n {[...Array(firstGroupLength)].map((_, index) => (\n <PinInputSlot key={index} index={index} className=\"hawa-w-full\" />\n ))}\n </PinInputGroup>\n )}\n {separatorPosition > 0 && separatorPosition < props.maxLength && (\n <PinInputSeperator />\n )}\n {secondGroupLength > 0 && (\n <PinInputGroup className=\"hawa-w-full\">\n {[...Array(secondGroupLength)].map((_, index) => (\n <PinInputSlot\n key={index + firstGroupLength}\n index={index + firstGroupLength}\n className=\"hawa-w-full\"\n />\n ))}\n </PinInputGroup>\n )}\n </PinInputRoot>\n <HelperText helperText={props.helperText} />\n </div>\n );\n};\n\nexport {\n PinInput,\n PinInputRoot,\n PinInputGroup,\n PinInputSlot,\n PinInputSeperator,\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","import { CamelToPascal } from './utility-types';\n\n/**\n * Converts string to kebab case\n *\n * @param {string} string\n * @returns {string} A kebabized string\n */\nexport const toKebabCase = (string: string) =>\n string.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();\n\n/**\n * Converts string to pascal case\n *\n * @param {string} string\n * @returns {string} A pascalized string\n */\nexport const toPascalCase = <T extends string>(string: T): CamelToPascal<T> => {\n const camelCase = string.replace(/^([A-Z])|[\\s-_]+(\\w)/g, (match, p1, p2) =>\n p2 ? p2.toUpperCase() : p1.toLowerCase(),\n );\n\n return (camelCase.charAt(0).toUpperCase() + camelCase.slice(1)) as CamelToPascal<T>;\n};\n\n/**\n * Merges classes into a single string\n *\n * @param {array} classes\n * @returns {string} A string of classes\n */\nexport const mergeClasses = <ClassType = string | undefined | null>(...classes: ClassType[]) =>\n classes\n .filter((className, index, array) => {\n return Boolean(className) && array.indexOf(className) === index;\n })\n .join(' ');\n","export default {\n xmlns: 'http://www.w3.org/2000/svg',\n width: 24,\n height: 24,\n viewBox: '0 0 24 24',\n fill: 'none',\n stroke: 'currentColor',\n strokeWidth: 2,\n strokeLinecap: 'round',\n strokeLinejoin: 'round',\n};\n","import { createElement, forwardRef } from 'react';\nimport defaultAttributes from './defaultAttributes';\nimport { IconNode, LucideProps } from './types';\nimport { mergeClasses } from '@lucide/shared';\n\ninterface IconComponentProps extends LucideProps {\n iconNode: IconNode;\n}\n\n/**\n * Lucide icon component\n *\n * @component Icon\n * @param {object} props\n * @param {string} props.color - The color of the icon\n * @param {number} props.size - The size of the icon\n * @param {number} props.strokeWidth - The stroke width of the icon\n * @param {boolean} props.absoluteStrokeWidth - Whether to use absolute stroke width\n * @param {string} props.className - The class name of the icon\n * @param {IconNode} props.children - The children of the icon\n * @param {IconNode} props.iconNode - The icon node of the icon\n *\n * @returns {ForwardRefExoticComponent} LucideIcon\n */\nconst Icon = forwardRef<SVGSVGElement, IconComponentProps>(\n (\n {\n color = 'currentColor',\n size = 24,\n strokeWidth = 2,\n absoluteStrokeWidth,\n className = '',\n children,\n iconNode,\n ...rest\n },\n ref,\n ) => {\n return createElement(\n 'svg',\n {\n ref,\n ...defaultAttributes,\n width: size,\n height: size,\n stroke: color,\n strokeWidth: absoluteStrokeWidth ? (Number(strokeWidth) * 24) / Number(size) : strokeWidth,\n className: mergeClasses('lucide', className),\n ...rest,\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...(Array.isArray(children) ? children : [children]),\n ],\n );\n },\n);\n\nexport default Icon;\n","import { createElement, forwardRef } from 'react';\nimport { mergeClasses, toKebabCase } from '@lucide/shared';\nimport { IconNode, LucideProps } from './types';\nimport Icon from './Icon';\n\n/**\n * Create a Lucide icon component\n * @param {string} iconName\n * @param {array} iconNode\n * @returns {ForwardRefExoticComponent} LucideIcon\n */\nconst createLucideIcon = (iconName: string, iconNode: IconNode) => {\n const Component = forwardRef<SVGSVGElement, LucideProps>(({ className, ...props }, ref) =>\n createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(`lucide-${toKebabCase(iconName)}`, className),\n ...props,\n }),\n );\n\n Component.displayName = `${iconName}`;\n\n return Component;\n};\n\nexport default createLucideIcon;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Dot\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/dot\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Dot = createLucideIcon('Dot', [\n ['circle', { cx: '12.1', cy: '12.1', r: '1', key: '18d7e5' }],\n]);\n\nexport default Dot;\n","import React from \"react\";\n\nimport { cn } from \"@util/index\";\n\nexport const HelperText = ({ helperText }: { helperText?: any }) => (\n <p\n className={cn(\n \"hawa-my-0 hawa-text-start hawa-text-xs hawa-text-helper-color hawa-transition-all\",\n helperText ? \"hawa-h-4 hawa-opacity-100\" : \"hawa-h-0 hawa-opacity-0\",\n )}\n >\n {helperText}\n </p>\n);\n"],"mappings":"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","names":["React","import_react","React"]}
|
1
|
+
{"version":3,"sources":["../../elements/pinInput/index.ts","../../elements/pinInput/PinInput.tsx","../../util/index.ts","../../../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/shared/src/utils.ts","../../../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/src/defaultAttributes.ts","../../../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/src/Icon.ts","../../../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/src/createLucideIcon.ts","../../../../node_modules/.pnpm/lucide-react@0.408.0_react@18.3.1/node_modules/lucide-react/src/icons/dot.ts","../../elements/helperText/HelperText.tsx"],"sourcesContent":["export * from \"./PinInput\";\n","import * as React from \"react\";\n\nimport { cn } from \"@util/index\";\nimport { OTPInput, OTPInputContext, OTPInputProps } from \"input-otp\";\nimport { Dot } from \"lucide-react\";\n\nimport { HelperText } from \"../helperText\";\n\nconst PinInputRoot = React.forwardRef<\n React.ElementRef<typeof OTPInput>,\n React.ComponentPropsWithoutRef<typeof OTPInput>\n>(({ className, containerClassName, ...props }, ref) => (\n <OTPInput\n ref={ref}\n containerClassName={cn(\n \"hawa-flex hawa-items-center hawa-gap-2 has-[:disabled]:hawa-opacity-50\",\n containerClassName,\n )}\n className={cn(\"disabled:hawa-cursor-not-allowed\", className)}\n {...props}\n />\n));\nPinInputRoot.displayName = \"PinInputRoot\";\n\nconst PinInputGroup = React.forwardRef<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\">\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"hawa-flex hawa-items-center\", className)}\n {...props}\n />\n));\nPinInputGroup.displayName = \"PinInputGroup\";\n\nconst PinInputSlot = React.forwardRef<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\"> & { index: number }\n>(({ index, className, ...props }, ref) => {\n const pinInputContext = React.useContext(OTPInputContext);\n const { char, hasFakeCaret, isActive } = pinInputContext.slots[index];\n\n return (\n <div\n ref={ref}\n className={cn(\n \"hawa-border-input hawa-relative hawa-flex hawa-h-10 hawa-w-10 hawa-items-center hawa-justify-center hawa-border-y hawa-border-r hawa-text-sm hawa-transition-all first:hawa-rounded-l-md first:hawa-border-l last:hawa-rounded-r-md\",\n isActive &&\n \"hawa-ring-ring hawa-ring-offset-background hawa-z-10 hawa-ring-2\",\n className,\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"hawa-pointer-events-none hawa-absolute hawa-inset-0 hawa-flex hawa-items-center hawa-justify-center\">\n <div className=\"hawa-animate-caret-blink hawa-bg-foreground hawa-h-4 hawa-w-px hawa-duration-1000\" />\n </div>\n )}\n </div>\n );\n});\nPinInputSlot.displayName = \"PinInputSlot\";\n\nconst PinInputSeperator = React.forwardRef<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\">\n>(({ ...props }, ref) => (\n <div ref={ref} role=\"separator\" {...props}>\n <Dot />\n </div>\n));\nPinInputSeperator.displayName = \"PinInputSeperator\";\n\ntype PinInputProps = Omit<OTPInputProps, \"render\"> & {\n /*\n * The position of the separator in the pin input\n * @default 3\n */\n separatorPosition?: number;\n helperText?: any;\n};\n\nconst PinInput: React.FC<PinInputProps> = ({\n separatorPosition = 0,\n ...props\n}) => {\n const maxLength = props.maxLength || 6; // Assuming a default maxLength of 6 if not provided\n const clampedSeparatorPosition = Math.min(separatorPosition, maxLength);\n\n const firstGroupLength =\n clampedSeparatorPosition > 0 ? clampedSeparatorPosition : 0;\n const secondGroupLength = maxLength - firstGroupLength;\n\n return (\n <div className=\"hawa-flex hawa-flex-col hawa-gap-2\">\n <PinInputRoot {...props}>\n {firstGroupLength > 0 && (\n <PinInputGroup className=\"hawa-w-full\">\n {[...Array(firstGroupLength)].map((_, index) => (\n <PinInputSlot key={index} index={index} className=\"hawa-w-full\" />\n ))}\n </PinInputGroup>\n )}\n {separatorPosition > 0 && separatorPosition < props.maxLength && (\n <PinInputSeperator />\n )}\n {secondGroupLength > 0 && (\n <PinInputGroup className=\"hawa-w-full\">\n {[...Array(secondGroupLength)].map((_, index) => (\n <PinInputSlot\n key={index + firstGroupLength}\n index={index + firstGroupLength}\n className=\"hawa-w-full\"\n />\n ))}\n </PinInputGroup>\n )}\n </PinInputRoot>\n <HelperText helperText={props.helperText} />\n </div>\n );\n};\n\nexport {\n PinInput,\n PinInputRoot,\n PinInputGroup,\n PinInputSlot,\n PinInputSeperator,\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","import { CamelToPascal } from './utility-types';\n\n/**\n * Converts string to kebab case\n *\n * @param {string} string\n * @returns {string} A kebabized string\n */\nexport const toKebabCase = (string: string) =>\n string.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();\n\n/**\n * Converts string to pascal case\n *\n * @param {string} string\n * @returns {string} A pascalized string\n */\nexport const toPascalCase = <T extends string>(string: T): CamelToPascal<T> => {\n const camelCase = string.replace(/^([A-Z])|[\\s-_]+(\\w)/g, (match, p1, p2) =>\n p2 ? p2.toUpperCase() : p1.toLowerCase(),\n );\n\n return (camelCase.charAt(0).toUpperCase() + camelCase.slice(1)) as CamelToPascal<T>;\n};\n\n/**\n * Merges classes into a single string\n *\n * @param {array} classes\n * @returns {string} A string of classes\n */\nexport const mergeClasses = <ClassType = string | undefined | null>(...classes: ClassType[]) =>\n classes\n .filter((className, index, array) => {\n return Boolean(className) && array.indexOf(className) === index;\n })\n .join(' ');\n","export default {\n xmlns: 'http://www.w3.org/2000/svg',\n width: 24,\n height: 24,\n viewBox: '0 0 24 24',\n fill: 'none',\n stroke: 'currentColor',\n strokeWidth: 2,\n strokeLinecap: 'round',\n strokeLinejoin: 'round',\n};\n","import { createElement, forwardRef } from 'react';\nimport defaultAttributes from './defaultAttributes';\nimport { IconNode, LucideProps } from './types';\nimport { mergeClasses } from '@lucide/shared';\n\ninterface IconComponentProps extends LucideProps {\n iconNode: IconNode;\n}\n\n/**\n * Lucide icon component\n *\n * @component Icon\n * @param {object} props\n * @param {string} props.color - The color of the icon\n * @param {number} props.size - The size of the icon\n * @param {number} props.strokeWidth - The stroke width of the icon\n * @param {boolean} props.absoluteStrokeWidth - Whether to use absolute stroke width\n * @param {string} props.className - The class name of the icon\n * @param {IconNode} props.children - The children of the icon\n * @param {IconNode} props.iconNode - The icon node of the icon\n *\n * @returns {ForwardRefExoticComponent} LucideIcon\n */\nconst Icon = forwardRef<SVGSVGElement, IconComponentProps>(\n (\n {\n color = 'currentColor',\n size = 24,\n strokeWidth = 2,\n absoluteStrokeWidth,\n className = '',\n children,\n iconNode,\n ...rest\n },\n ref,\n ) => {\n return createElement(\n 'svg',\n {\n ref,\n ...defaultAttributes,\n width: size,\n height: size,\n stroke: color,\n strokeWidth: absoluteStrokeWidth ? (Number(strokeWidth) * 24) / Number(size) : strokeWidth,\n className: mergeClasses('lucide', className),\n ...rest,\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...(Array.isArray(children) ? children : [children]),\n ],\n );\n },\n);\n\nexport default Icon;\n","import { createElement, forwardRef } from 'react';\nimport { mergeClasses, toKebabCase } from '@lucide/shared';\nimport { IconNode, LucideProps } from './types';\nimport Icon from './Icon';\n\n/**\n * Create a Lucide icon component\n * @param {string} iconName\n * @param {array} iconNode\n * @returns {ForwardRefExoticComponent} LucideIcon\n */\nconst createLucideIcon = (iconName: string, iconNode: IconNode) => {\n const Component = forwardRef<SVGSVGElement, LucideProps>(({ className, ...props }, ref) =>\n createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(`lucide-${toKebabCase(iconName)}`, className),\n ...props,\n }),\n );\n\n Component.displayName = `${iconName}`;\n\n return Component;\n};\n\nexport default createLucideIcon;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Dot\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/dot\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Dot = createLucideIcon('Dot', [\n ['circle', { cx: '12.1', cy: '12.1', r: '1', key: '18d7e5' }],\n]);\n\nexport default Dot;\n","import React from \"react\";\n\nimport { cn } from \"@util/index\";\n\nexport const HelperText = ({ helperText }: { helperText?: any }) => (\n <p\n className={cn(\n \"hawa-my-0 hawa-text-start hawa-text-xs hawa-text-helper-color hawa-transition-all\",\n helperText ? \"hawa-h-4 hawa-opacity-100\" : \"hawa-h-0 hawa-opacity-0\",\n )}\n >\n {helperText}\n </p>\n);\n"],"mappings":"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","names":["React","import_react","React"]}
|