@worldcoin/mini-apps-ui-kit-react 1.0.0-canary.20 → 1.0.0-canary.22
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/components/AlertDialog/AlertDialog.d.ts +1 -1
- package/dist/components/AlertDialog/AlertDialog.js +7 -1
- package/dist/components/Button/Button.js +3 -1
- package/dist/components/Checkbox/Checkbox.js +2 -1
- package/dist/components/Chip/Chip.d.ts +1 -1
- package/dist/components/CircularState/CircularState.d.ts +8 -0
- package/dist/components/CircularState/CircularState.js +41 -0
- package/dist/components/CircularState/index.d.ts +2 -0
- package/dist/components/ClearButton/ClearButton.js +2 -0
- package/dist/components/ColorPicker/ColorPicker.js +2 -1
- package/dist/components/Drawer/Drawer.d.ts +1 -1
- package/dist/components/Drawer/Drawer.js +2 -0
- package/dist/components/Icons/Clock.d.ts +2 -0
- package/dist/components/Icons/Clock.js +30 -0
- package/dist/components/Icons/Warning.d.ts +2 -0
- package/dist/components/Icons/Warning.js +26 -0
- package/dist/components/LiveFeedback/LiveFeedback.js +18 -0
- package/dist/components/NumberPad/NumberPad.js +5 -3
- package/dist/components/OTPField/OTPField.js +3 -1
- package/dist/components/PasteButton/PasteButton.js +2 -0
- package/dist/components/PhoneField/GroupedCountryList.js +2 -1
- package/dist/components/RadioGroup/RadioGroup.js +2 -1
- package/dist/components/Select/Select.js +2 -1
- package/dist/components/Switch/Switch.js +2 -1
- package/dist/components/Tabs/Tabs.js +3 -1
- package/dist/components/Toast/use-toast.d.ts +2 -10
- package/dist/components/Toast/use-toast.js +9 -2
- package/dist/components/ToggleGroup/ToggleGroup.js +10 -1
- package/dist/components/Token/icons/doge.d.ts +3 -0
- package/dist/components/Token/icons/doge.js +29 -0
- package/dist/components/Token/icons/index.d.ts +5 -0
- package/dist/components/Token/icons/index.js +11 -1
- package/dist/components/Token/icons/link.d.ts +3 -0
- package/dist/components/Token/icons/link.js +27 -0
- package/dist/components/Token/icons/sol.d.ts +3 -0
- package/dist/components/Token/icons/sol.js +93 -0
- package/dist/components/Token/icons/sui.d.ts +3 -0
- package/dist/components/Token/icons/sui.js +29 -0
- package/dist/components/Token/icons/xrp.d.ts +3 -0
- package/dist/components/Token/icons/xrp.js +34 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2 -0
- package/dist/lib/haptics.d.ts +28 -0
- package/dist/lib/haptics.js +45 -0
- package/package.json +5 -1
- package/public/globals.css +1 -1
@@ -2,7 +2,7 @@ import { BottomBarProps } from '../BottomBar';
|
|
2
2
|
import { AlertDialogCloseProps, AlertDialogContentProps, AlertDialogDescriptionProps, AlertDialogHeaderProps, AlertDialogProps, AlertDialogTitleProps, AlertDialogTriggerProps } from './types';
|
3
3
|
import * as React from "react";
|
4
4
|
declare const AlertDialog: {
|
5
|
-
({ dismissible, modal, ...props }: AlertDialogProps): import("react/jsx-runtime").JSX.Element;
|
5
|
+
({ dismissible, modal, repositionInputs, ...props }: AlertDialogProps): import("react/jsx-runtime").JSX.Element;
|
6
6
|
displayName: string;
|
7
7
|
};
|
8
8
|
declare const AlertDialogTrigger: React.ForwardRefExoticComponent<AlertDialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
@@ -8,12 +8,18 @@ import { AlertDialogContext, useAlertDialog } from "./use-alert-dialog.js";
|
|
8
8
|
import { BottomBar } from "../BottomBar/BottomBar.js";
|
9
9
|
import { Typography } from "../Typography/Typography.js";
|
10
10
|
import { Button } from "../Button/Button.js";
|
11
|
-
const AlertDialog = ({
|
11
|
+
const AlertDialog = ({
|
12
|
+
dismissible = true,
|
13
|
+
modal = true,
|
14
|
+
repositionInputs = false,
|
15
|
+
...props
|
16
|
+
}) => /* @__PURE__ */ jsx(AlertDialogContext.Provider, { value: { dismissible }, children: /* @__PURE__ */ jsx(
|
12
17
|
Drawer.Root,
|
13
18
|
{
|
14
19
|
shouldScaleBackground: false,
|
15
20
|
dismissible,
|
16
21
|
modal,
|
22
|
+
repositionInputs,
|
17
23
|
...props
|
18
24
|
}
|
19
25
|
) });
|
@@ -1,5 +1,6 @@
|
|
1
1
|
"use client";
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
3
|
+
import haptics, { withHaptics } from "../../lib/haptics.js";
|
3
4
|
import { cn } from "../../lib/utils.js";
|
4
5
|
import { Slot } from "../../node_modules/.pnpm/@radix-ui_react-slot@1.1.1_@types_react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-slot/dist/index.js";
|
5
6
|
import { cva } from "../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js";
|
@@ -32,7 +33,7 @@ const buttonVariants = cva(
|
|
32
33
|
}
|
33
34
|
);
|
34
35
|
const Button = forwardRef(
|
35
|
-
({ variant = "primary", size = "lg", fullWidth, asChild, children, ...props }, ref) => {
|
36
|
+
({ variant = "primary", size = "lg", fullWidth, asChild, onClick, children, ...props }, ref) => {
|
36
37
|
const Comp = asChild ? Slot : "button";
|
37
38
|
return /* @__PURE__ */ jsx(
|
38
39
|
Comp,
|
@@ -51,6 +52,7 @@ const Button = forwardRef(
|
|
51
52
|
}),
|
52
53
|
props.className
|
53
54
|
),
|
55
|
+
onClick: withHaptics(onClick, () => haptics.impact(size === "lg" ? "medium" : "light")),
|
54
56
|
children
|
55
57
|
}
|
56
58
|
);
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
2
|
+
import { withHaptics } from "../../lib/haptics.js";
|
2
3
|
import { Root, Indicator } from "../../node_modules/.pnpm/@radix-ui_react-checkbox@1.1.3_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react@18._5vtvszwgvdmnkk62ia2dob365m/node_modules/@radix-ui/react-checkbox/dist/index.js";
|
3
4
|
import { forwardRef } from "react";
|
4
5
|
import { Tick } from "../Icons/Tick.js";
|
@@ -9,7 +10,7 @@ const Checkbox = forwardRef(
|
|
9
10
|
{
|
10
11
|
ref,
|
11
12
|
checked,
|
12
|
-
onCheckedChange,
|
13
|
+
onCheckedChange: withHaptics(onCheckedChange),
|
13
14
|
disabled,
|
14
15
|
className: "flex size-6 items-center justify-center rounded-md border-[0.09375rem] transition-all data-[state=checked]:border-gray-900 data-[state=checked]:bg-gray-900 data-[state=unchecked]:border-gray-200 data-[state=unchecked]:bg-transparent disabled:cursor-not-allowed disabled:opacity-20",
|
15
16
|
...props,
|
@@ -20,7 +20,7 @@ interface ChipProps extends HTMLAttributes<HTMLDivElement> {
|
|
20
20
|
className?: string;
|
21
21
|
}
|
22
22
|
declare const Chip: import('react').ForwardRefExoticComponent<ChipProps & VariantProps<(props?: ({
|
23
|
-
variant?: "
|
23
|
+
variant?: "success" | "warning" | "error" | "default" | "important" | null | undefined;
|
24
24
|
isIcon?: boolean | null | undefined;
|
25
25
|
} & import('class-variance-authority/types').ClassProp) | undefined) => string> & import('react').RefAttributes<HTMLDivElement>>;
|
26
26
|
export { Chip };
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { CircularIconProps } from '../CircularIcon/CircularIcon';
|
2
|
+
interface CircularStateProps extends Omit<CircularIconProps, "children"> {
|
3
|
+
/** The state to display in the circular icon. */
|
4
|
+
value: "success" | "error" | "warning" | "pending" | "critical";
|
5
|
+
}
|
6
|
+
declare function CircularState({ value, size, className, ...props }: CircularStateProps): import("react/jsx-runtime").JSX.Element;
|
7
|
+
export { CircularState };
|
8
|
+
export type { CircularStateProps };
|
@@ -0,0 +1,41 @@
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
2
|
+
import { cn } from "../../lib/utils.js";
|
3
|
+
import { CircularIcon } from "../CircularIcon/CircularIcon.js";
|
4
|
+
import { Clock } from "../Icons/Clock.js";
|
5
|
+
import { Tick } from "../Icons/Tick.js";
|
6
|
+
import { Warning } from "../Icons/Warning.js";
|
7
|
+
import { XMark } from "../Icons/XMark.js";
|
8
|
+
const icon = {
|
9
|
+
success: /* @__PURE__ */ jsx(Tick, {}),
|
10
|
+
error: /* @__PURE__ */ jsx(XMark, {}),
|
11
|
+
warning: /* @__PURE__ */ jsx(Warning, {}),
|
12
|
+
pending: /* @__PURE__ */ jsx(Clock, {}),
|
13
|
+
critical: /* @__PURE__ */ jsx(XMark, {})
|
14
|
+
};
|
15
|
+
const iconClasses = {
|
16
|
+
success: "bg-success-600",
|
17
|
+
error: "bg-gray-400",
|
18
|
+
warning: "bg-warning-600",
|
19
|
+
pending: "bg-gray-400",
|
20
|
+
critical: "bg-error-600"
|
21
|
+
};
|
22
|
+
function CircularState({ value, size, className, ...props }) {
|
23
|
+
return /* @__PURE__ */ jsx(
|
24
|
+
CircularIcon,
|
25
|
+
{
|
26
|
+
className: cn(
|
27
|
+
"text-gray-0",
|
28
|
+
size !== "xs" && "shadow-[inset_0_0_0_1px_rgba(255,255,255,0.3)]",
|
29
|
+
iconClasses[value],
|
30
|
+
"bg-[radial-gradient(111.32%_111.8%_at_22.73%_0%,_rgba(255,255,255,0.2)_0%,_rgba(255,255,255,0)_100%)]",
|
31
|
+
className
|
32
|
+
),
|
33
|
+
size,
|
34
|
+
...props,
|
35
|
+
children: icon[value]
|
36
|
+
}
|
37
|
+
);
|
38
|
+
}
|
39
|
+
export {
|
40
|
+
CircularState
|
41
|
+
};
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
2
|
+
import haptics from "../../lib/haptics.js";
|
2
3
|
import * as React from "react";
|
3
4
|
import { cn } from "../../lib/utils.js";
|
4
5
|
import { Clear } from "./Clear.js";
|
@@ -10,6 +11,7 @@ const ClearButton = React.forwardRef(
|
|
10
11
|
if (inputRef && "current" in inputRef && inputRef.current) {
|
11
12
|
inputRef.current.value = "";
|
12
13
|
onClear == null ? void 0 : onClear();
|
14
|
+
haptics.impact("light");
|
13
15
|
}
|
14
16
|
};
|
15
17
|
return /* @__PURE__ */ jsx(
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
2
|
+
import { withHaptics } from "../../lib/haptics.js";
|
2
3
|
import { Item as Item2, Indicator, Root as Root2 } from "../../node_modules/.pnpm/@radix-ui_react-radio-group@1.2.2_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react@_2u6lfd2xt65wmbxn7lgvaxqbmy/node_modules/@radix-ui/react-radio-group/dist/index.js";
|
3
4
|
import { forwardRef } from "react";
|
4
5
|
const ColorPickerItem = forwardRef(
|
@@ -25,7 +26,7 @@ const ColorPickerGroup = forwardRef(
|
|
25
26
|
{
|
26
27
|
ref,
|
27
28
|
value,
|
28
|
-
onValueChange: onChange,
|
29
|
+
onValueChange: withHaptics(onChange),
|
29
30
|
className: "flex gap-4 items-center",
|
30
31
|
...props,
|
31
32
|
children
|
@@ -5,7 +5,7 @@ import * as React from "react";
|
|
5
5
|
* @param props DrawerProps
|
6
6
|
*/
|
7
7
|
declare const Drawer: {
|
8
|
-
({ dismissible, height, modal, ...props }: DrawerProps): import("react/jsx-runtime").JSX.Element;
|
8
|
+
({ dismissible, height, modal, repositionInputs, ...props }: DrawerProps): import("react/jsx-runtime").JSX.Element;
|
9
9
|
displayName: string;
|
10
10
|
};
|
11
11
|
declare const DrawerTrigger: React.ForwardRefExoticComponent<DrawerTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
@@ -11,6 +11,7 @@ const Drawer = ({
|
|
11
11
|
dismissible = true,
|
12
12
|
height = "full",
|
13
13
|
modal = true,
|
14
|
+
repositionInputs = false,
|
14
15
|
...props
|
15
16
|
}) => /* @__PURE__ */ jsx(DrawerContext.Provider, { value: { dismissible, height }, children: /* @__PURE__ */ jsx(
|
16
17
|
Drawer$1.Root,
|
@@ -20,6 +21,7 @@ const Drawer = ({
|
|
20
21
|
modal,
|
21
22
|
direction: "bottom",
|
22
23
|
handleOnly: true,
|
24
|
+
repositionInputs,
|
23
25
|
...props
|
24
26
|
}
|
25
27
|
) });
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
2
|
+
function Clock(props) {
|
3
|
+
return /* @__PURE__ */ jsxs(
|
4
|
+
"svg",
|
5
|
+
{
|
6
|
+
width: "48",
|
7
|
+
height: "48",
|
8
|
+
viewBox: "0 0 48 48",
|
9
|
+
fill: "none",
|
10
|
+
xmlns: "http://www.w3.org/2000/svg",
|
11
|
+
...props,
|
12
|
+
children: [
|
13
|
+
/* @__PURE__ */ jsx("path", { d: "M24 12L24 24L36 24", stroke: "white", "stroke-width": "3" }),
|
14
|
+
/* @__PURE__ */ jsx(
|
15
|
+
"path",
|
16
|
+
{
|
17
|
+
d: "M24 44C35.0457 44 44 35.0457 44 24C44 12.9543 35.0457 4 24 4C12.9543 4 4 12.9543 4 24C4 35.0457 12.9543 44 24 44Z",
|
18
|
+
stroke: "white",
|
19
|
+
"stroke-width": "3",
|
20
|
+
"stroke-linecap": "round",
|
21
|
+
"stroke-linejoin": "round"
|
22
|
+
}
|
23
|
+
)
|
24
|
+
]
|
25
|
+
}
|
26
|
+
);
|
27
|
+
}
|
28
|
+
export {
|
29
|
+
Clock
|
30
|
+
};
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
2
|
+
function Warning(props) {
|
3
|
+
return /* @__PURE__ */ jsx(
|
4
|
+
"svg",
|
5
|
+
{
|
6
|
+
width: "44",
|
7
|
+
height: "44",
|
8
|
+
viewBox: "0 0 44 44",
|
9
|
+
fill: "none",
|
10
|
+
xmlns: "http://www.w3.org/2000/svg",
|
11
|
+
...props,
|
12
|
+
children: /* @__PURE__ */ jsx(
|
13
|
+
"path",
|
14
|
+
{
|
15
|
+
"fill-rule": "evenodd",
|
16
|
+
"clip-rule": "evenodd",
|
17
|
+
d: "M22 0.835449L42.6702 38.0417H1.32983L22 0.835449ZM23.375 15.125V25.2083H20.625V15.125H23.375ZM20.6213 32.5505L23.3987 32.5499L23.3981 29.7999L20.6207 29.8005L20.6213 32.5505Z",
|
18
|
+
fill: "white"
|
19
|
+
}
|
20
|
+
)
|
21
|
+
}
|
22
|
+
);
|
23
|
+
}
|
24
|
+
export {
|
25
|
+
Warning
|
26
|
+
};
|
@@ -1,10 +1,28 @@
|
|
1
|
+
"use client";
|
1
2
|
import { jsxs, jsx, Fragment } from "react/jsx-runtime";
|
3
|
+
import haptics from "../../lib/haptics.js";
|
2
4
|
import { cn } from "../../lib/utils.js";
|
5
|
+
import { useRef, useEffect } from "react";
|
3
6
|
import { Fail } from "../Icons/Fail.js";
|
4
7
|
import { Success } from "../Icons/Success.js";
|
5
8
|
import { Spinner } from "../Spinner/Spinner.js";
|
6
9
|
import { Typography } from "../Typography/Typography.js";
|
10
|
+
function usePrevious(value) {
|
11
|
+
const ref = useRef();
|
12
|
+
useEffect(() => {
|
13
|
+
ref.current = value;
|
14
|
+
});
|
15
|
+
return ref.current;
|
16
|
+
}
|
7
17
|
function LiveFeedback({ state, children, className, label }) {
|
18
|
+
const prevState = usePrevious(state);
|
19
|
+
if (state !== prevState) {
|
20
|
+
if (state === "success") {
|
21
|
+
haptics.notification("success");
|
22
|
+
} else if (state === "failed") {
|
23
|
+
haptics.notification("error");
|
24
|
+
}
|
25
|
+
}
|
8
26
|
return /* @__PURE__ */ jsxs("div", { className: cn("relative", className), children: [
|
9
27
|
/* @__PURE__ */ jsx(
|
10
28
|
"div",
|
@@ -1,5 +1,6 @@
|
|
1
1
|
"use client";
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
3
|
+
import haptics from "../../lib/haptics.js";
|
3
4
|
import { cn } from "../../lib/utils.js";
|
4
5
|
import { useLongPress } from "../../node_modules/.pnpm/@uidotdev_usehooks@2.4.1_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@uidotdev/usehooks/index.js";
|
5
6
|
import { typographyVariants } from "../Typography/Typography.js";
|
@@ -32,6 +33,7 @@ const NumberPad = ({
|
|
32
33
|
console.error("NumberPad value must be a valid number or empty string");
|
33
34
|
}
|
34
35
|
const handleButtonClick = (buttonValue) => {
|
36
|
+
haptics.impact("light");
|
35
37
|
if (!onChange || disabled) return;
|
36
38
|
if (buttonValue === "del") {
|
37
39
|
onChange(value.slice(0, -1));
|
@@ -53,11 +55,11 @@ const NumberPad = ({
|
|
53
55
|
disabled,
|
54
56
|
className: cn(
|
55
57
|
typographyVariants({ variant: "heading", level: 3 }),
|
56
|
-
"h-12 min-w-28 flex items-center justify-center select-none
|
57
|
-
"disabled:text-gray-300 disabled:cursor-not-allowed
|
58
|
+
"h-12 min-w-28 flex items-center justify-center select-none",
|
59
|
+
"disabled:text-gray-300 disabled:cursor-not-allowed"
|
58
60
|
),
|
59
61
|
...button.value === "del" ? longPressAttributes : {},
|
60
|
-
children: /* @__PURE__ */ jsx("span", { className: "duration-200 transition-colors size-12 flex items-center justify-center rounded-full
|
62
|
+
children: /* @__PURE__ */ jsx("span", { className: "duration-200 transition-colors size-12 flex items-center justify-center rounded-full", children: button.label || button.value })
|
61
63
|
},
|
62
64
|
button.value
|
63
65
|
)) });
|
@@ -1,5 +1,6 @@
|
|
1
1
|
"use client";
|
2
2
|
import { jsx, Fragment } from "react/jsx-runtime";
|
3
|
+
import { withHaptics } from "../../lib/haptics.js";
|
3
4
|
import { cn } from "../../lib/utils.js";
|
4
5
|
import { cva } from "../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js";
|
5
6
|
import { OTPInput as Lt, REGEXP_ONLY_DIGITS as Kt, REGEXP_ONLY_CHARS as Jt, REGEXP_ONLY_DIGITS_AND_CHARS as Qt } from "../../node_modules/.pnpm/input-otp@1.4.1_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/input-otp/dist/index.js";
|
@@ -34,7 +35,7 @@ const inputModeDictionary = {
|
|
34
35
|
digitsAndChars: "text"
|
35
36
|
};
|
36
37
|
const OTPField = React.forwardRef(
|
37
|
-
({ maxLength = 6, error, children, mode = "digits", pattern, ...props }, ref) => {
|
38
|
+
({ maxLength = 6, error, children, mode = "digits", pattern, onChange, ...props }, ref) => {
|
38
39
|
return /* @__PURE__ */ jsx(
|
39
40
|
Lt,
|
40
41
|
{
|
@@ -43,6 +44,7 @@ const OTPField = React.forwardRef(
|
|
43
44
|
maxLength,
|
44
45
|
inputMode: inputModeDictionary[mode],
|
45
46
|
pattern: pattern || patternDictionary[mode],
|
47
|
+
onChange: withHaptics(onChange),
|
46
48
|
containerClassName: "flex items-center gap-2 has-[:disabled]:opacity-50",
|
47
49
|
render: ({ slots }) => /* @__PURE__ */ jsx(Fragment, { children: slots.map(({ isActive, char }, idx) => /* @__PURE__ */ jsx(
|
48
50
|
"div",
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { jsxs, jsx } from "react/jsx-runtime";
|
2
|
+
import haptics from "../../lib/haptics.js";
|
2
3
|
import * as React from "react";
|
3
4
|
import { cn } from "../../lib/utils.js";
|
4
5
|
import { MagicWand } from "../Icons/MagicWand.js";
|
@@ -11,6 +12,7 @@ const PasteButton = React.forwardRef(
|
|
11
12
|
const text = await navigator.clipboard.readText();
|
12
13
|
inputRef.current.value = text;
|
13
14
|
onPaste == null ? void 0 : onPaste(text);
|
15
|
+
haptics.impact("light");
|
14
16
|
}
|
15
17
|
} catch (error) {
|
16
18
|
console.error("Failed to read clipboard:", error);
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { jsxs, jsx, Fragment } from "react/jsx-runtime";
|
2
|
+
import { withHaptics } from "../../lib/haptics.js";
|
2
3
|
import { Magnifier } from "../Icons/Magnifier.js";
|
3
4
|
import CountryListItem from "./CountryListItem.js";
|
4
5
|
import { Typography } from "../Typography/Typography.js";
|
@@ -21,7 +22,7 @@ function GroupedCountryList({
|
|
21
22
|
{
|
22
23
|
countryCode: country.countryCode,
|
23
24
|
countryName: country.name,
|
24
|
-
onClick: onSelect,
|
25
|
+
onClick: withHaptics(onSelect),
|
25
26
|
isSelected: value === country.countryCode
|
26
27
|
}
|
27
28
|
) }, country.countryCode)),
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
2
|
+
import { withHaptics } from "../../lib/haptics.js";
|
2
3
|
import { Root as Root2 } from "../../node_modules/.pnpm/@radix-ui_react-radio-group@1.2.2_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react@_2u6lfd2xt65wmbxn7lgvaxqbmy/node_modules/@radix-ui/react-radio-group/dist/index.js";
|
3
4
|
import { cva } from "../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js";
|
4
5
|
import { forwardRef } from "react";
|
@@ -27,7 +28,7 @@ const RadioGroup = forwardRef(
|
|
27
28
|
{
|
28
29
|
ref,
|
29
30
|
defaultValue,
|
30
|
-
onValueChange,
|
31
|
+
onValueChange: withHaptics(onValueChange),
|
31
32
|
className: radioGroupVariants({ orientation }),
|
32
33
|
disabled,
|
33
34
|
orientation,
|
@@ -1,6 +1,7 @@
|
|
1
1
|
"use client";
|
2
2
|
import { jsxs, jsx } from "react/jsx-runtime";
|
3
3
|
import { DROPDOWN_CONTAINER_STYLES } from "../../lib/constants/dropdownStyles.js";
|
4
|
+
import { withHaptics } from "../../lib/haptics.js";
|
4
5
|
import { Root as Root2, Trigger, Value, Icon, Portal, Content as Content2, Viewport, Item, ItemText } from "../../node_modules/.pnpm/@radix-ui_react-select@2.1.4_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react@18.3._atdh45n5c7sked5b6tbwgdz7re/node_modules/@radix-ui/react-select/dist/index.js";
|
5
6
|
import { cva } from "../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js";
|
6
7
|
import { forwardRef, useState, useEffect } from "react";
|
@@ -76,7 +77,7 @@ const Select = forwardRef(
|
|
76
77
|
{
|
77
78
|
value,
|
78
79
|
open: isOpen,
|
79
|
-
onValueChange: onChange,
|
80
|
+
onValueChange: withHaptics(onChange),
|
80
81
|
defaultOpen,
|
81
82
|
onOpenChange: handleOpenChange,
|
82
83
|
name,
|
@@ -1,5 +1,6 @@
|
|
1
1
|
"use client";
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
3
|
+
import { withHaptics } from "../../lib/haptics.js";
|
3
4
|
import { Root, Thumb } from "../../node_modules/.pnpm/@radix-ui_react-switch@1.1.2_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react@18.3._udl6ccyllphugejc6sszfrese4/node_modules/@radix-ui/react-switch/dist/index.js";
|
4
5
|
import { forwardRef } from "react";
|
5
6
|
const Switch = forwardRef(
|
@@ -9,7 +10,7 @@ const Switch = forwardRef(
|
|
9
10
|
{
|
10
11
|
ref,
|
11
12
|
checked,
|
12
|
-
onCheckedChange,
|
13
|
+
onCheckedChange: withHaptics(onCheckedChange),
|
13
14
|
disabled,
|
14
15
|
className: "relative inline-flex h-6 w-10 items-center rounded-full border-2 transition-all data-[state=checked]:border-gray-900 data-[state=checked]:bg-gray-900 data-[state=unchecked]:border-gray-300 data-[state=unchecked]:bg-gray-300 disabled:cursor-not-allowed disabled:opacity-20",
|
15
16
|
...rest,
|
@@ -1,12 +1,13 @@
|
|
1
1
|
"use client";
|
2
2
|
import { jsx, jsxs } from "react/jsx-runtime";
|
3
|
+
import { withHaptics } from "../../lib/haptics.js";
|
3
4
|
import { Slot } from "../../node_modules/.pnpm/@radix-ui_react-slot@1.1.1_@types_react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-slot/dist/index.js";
|
4
5
|
import { Root as Root2, Item as Item2 } from "../../node_modules/.pnpm/@radix-ui_react-toggle-group@1.1.2_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react_3smwloudr6a3igss4kifyxcwju/node_modules/@radix-ui/react-toggle-group/dist/index.js";
|
5
6
|
import * as React from "react";
|
6
7
|
import { cn } from "../../lib/utils.js";
|
7
8
|
import { Typography } from "../Typography/Typography.js";
|
8
9
|
const Tabs = React.forwardRef(
|
9
|
-
({ children, className, ...props }, ref) => {
|
10
|
+
({ children, className, onValueChange, ...props }, ref) => {
|
10
11
|
return /* @__PURE__ */ jsx(
|
11
12
|
Root2,
|
12
13
|
{
|
@@ -16,6 +17,7 @@ const Tabs = React.forwardRef(
|
|
16
17
|
style: {
|
17
18
|
gridTemplateColumns: `repeat(${React.Children.count(children)}, 1fr)`
|
18
19
|
},
|
20
|
+
onValueChange: withHaptics(onValueChange),
|
19
21
|
...props,
|
20
22
|
children
|
21
23
|
}
|
@@ -34,16 +34,8 @@ declare const toast: ({ ...props }: Toast) => {
|
|
34
34
|
};
|
35
35
|
declare function useToast(): {
|
36
36
|
toast: {
|
37
|
-
success: (props: Omit<Toast, "variant">) =>
|
38
|
-
|
39
|
-
dismiss: () => void;
|
40
|
-
update: (props: ToasterToast) => void;
|
41
|
-
};
|
42
|
-
error: (props: Omit<Toast, "variant">) => {
|
43
|
-
id: string;
|
44
|
-
dismiss: () => void;
|
45
|
-
update: (props: ToasterToast) => void;
|
46
|
-
};
|
37
|
+
success: (props: Omit<Toast, "variant">) => void;
|
38
|
+
error: (props: Omit<Toast, "variant">) => void;
|
47
39
|
};
|
48
40
|
dismiss: (toastId?: string) => void;
|
49
41
|
toasts: ToasterToast[];
|
@@ -1,4 +1,5 @@
|
|
1
1
|
"use client";
|
2
|
+
import haptics from "../../lib/haptics.js";
|
2
3
|
import { useState, useEffect } from "react";
|
3
4
|
const TOAST_LIMIT = 1;
|
4
5
|
const TOAST_REMOVE_DELAY = 1e6;
|
@@ -113,8 +114,14 @@ function useToast() {
|
|
113
114
|
return {
|
114
115
|
...state,
|
115
116
|
toast: {
|
116
|
-
success: (props) =>
|
117
|
-
|
117
|
+
success: (props) => {
|
118
|
+
toast({ ...props, variant: "success" });
|
119
|
+
haptics.notification("success");
|
120
|
+
},
|
121
|
+
error: (props) => {
|
122
|
+
toast({ ...props, variant: "error" });
|
123
|
+
haptics.notification("error");
|
124
|
+
}
|
118
125
|
},
|
119
126
|
dismiss: (toastId) => dispatch({ type: "DISMISS_TOAST", toastId })
|
120
127
|
};
|
@@ -1,9 +1,18 @@
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
2
|
+
import { withHaptics } from "../../lib/haptics.js";
|
2
3
|
import { Root as Root2, Item as Item2 } from "../../node_modules/.pnpm/@radix-ui_react-toggle-group@1.1.2_@types_react-dom@18.3.5_@types_react@18.3.18__@types_react_3smwloudr6a3igss4kifyxcwju/node_modules/@radix-ui/react-toggle-group/dist/index.js";
|
3
4
|
import * as React from "react";
|
4
5
|
import { cn } from "../../lib/utils.js";
|
5
6
|
import { typographyVariants } from "../Typography/Typography.js";
|
6
|
-
const ToggleGroupRoot = React.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx(
|
7
|
+
const ToggleGroupRoot = React.forwardRef(({ onValueChange, ...props }, ref) => /* @__PURE__ */ jsx(
|
8
|
+
Root2,
|
9
|
+
{
|
10
|
+
ref,
|
11
|
+
className: cn("inline-flex gap-5"),
|
12
|
+
onValueChange: withHaptics(onValueChange),
|
13
|
+
...props
|
14
|
+
}
|
15
|
+
));
|
7
16
|
ToggleGroupRoot.displayName = "ToggleGroup";
|
8
17
|
const ToggleGroupItem = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(
|
9
18
|
Item2,
|
@@ -0,0 +1,29 @@
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
2
|
+
import { getBackgroundClass, getIconFillClass } from "./utils.js";
|
3
|
+
const DOGE = (props) => /* @__PURE__ */ jsxs(
|
4
|
+
"svg",
|
5
|
+
{
|
6
|
+
width: "88",
|
7
|
+
height: "88",
|
8
|
+
viewBox: "0 0 88 88",
|
9
|
+
fill: "none",
|
10
|
+
xmlns: "http://www.w3.org/2000/svg",
|
11
|
+
...props,
|
12
|
+
style: { color: "#988430" },
|
13
|
+
children: [
|
14
|
+
/* @__PURE__ */ jsx("rect", { width: "88", height: "88", rx: "44", className: getBackgroundClass(props) }),
|
15
|
+
/* @__PURE__ */ jsx(
|
16
|
+
"path",
|
17
|
+
{
|
18
|
+
fillRule: "evenodd",
|
19
|
+
clipRule: "evenodd",
|
20
|
+
d: "M63.871 34.1006C59.9176 23.8914 50.1446 22 50.1446 22H22.2619L22.3695 32.3989H27.9223V55.6198H22.2615V66H49.3728C55.9067 66 61.1444 59.4339 61.1444 59.4339C69.5318 47.5297 63.8705 34.1006 63.8705 34.1006H63.871ZM49.5183 52.4379C49.5183 52.4379 47.3917 55.506 45.0779 55.506H40.4495L40.3398 32.4244H46.2796C46.2796 32.4244 49.0317 32.9998 50.9543 38.4459C50.9543 38.4459 53.5033 46.2433 49.5183 52.4379Z",
|
21
|
+
className: getIconFillClass(props)
|
22
|
+
}
|
23
|
+
)
|
24
|
+
]
|
25
|
+
}
|
26
|
+
);
|
27
|
+
export {
|
28
|
+
DOGE as default
|
29
|
+
};
|
@@ -4,3 +4,8 @@ export { default as DAI } from './dai';
|
|
4
4
|
export { default as USDC } from './usdc';
|
5
5
|
export { default as USDT } from './usdt';
|
6
6
|
export { default as WLD } from './wld';
|
7
|
+
export { default as SOL } from './sol';
|
8
|
+
export { default as SUI } from './sui';
|
9
|
+
export { default as DOGE } from './doge';
|
10
|
+
export { default as XRP } from './xrp';
|
11
|
+
export { default as LINK } from './link';
|
@@ -4,11 +4,21 @@ import { default as default4 } from "./dai.js";
|
|
4
4
|
import { default as default5 } from "./usdc.js";
|
5
5
|
import { default as default6 } from "./usdt.js";
|
6
6
|
import { default as default7 } from "./wld.js";
|
7
|
+
import { default as default8 } from "./sol.js";
|
8
|
+
import { default as default9 } from "./sui.js";
|
9
|
+
import { default as default10 } from "./doge.js";
|
10
|
+
import { default as default11 } from "./xrp.js";
|
11
|
+
import { default as default12 } from "./link.js";
|
7
12
|
export {
|
8
13
|
default2 as BTC,
|
9
14
|
default4 as DAI,
|
15
|
+
default10 as DOGE,
|
10
16
|
default3 as ETH,
|
17
|
+
default12 as LINK,
|
18
|
+
default8 as SOL,
|
19
|
+
default9 as SUI,
|
11
20
|
default5 as USDC,
|
12
21
|
default6 as USDT,
|
13
|
-
default7 as WLD
|
22
|
+
default7 as WLD,
|
23
|
+
default11 as XRP
|
14
24
|
};
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
2
|
+
import { getBackgroundClass, getIconFillClass } from "./utils.js";
|
3
|
+
const LINK = (props) => /* @__PURE__ */ jsxs(
|
4
|
+
"svg",
|
5
|
+
{
|
6
|
+
width: "88",
|
7
|
+
height: "88",
|
8
|
+
viewBox: "0 0 88 88",
|
9
|
+
fill: "none",
|
10
|
+
xmlns: "http://www.w3.org/2000/svg",
|
11
|
+
...props,
|
12
|
+
style: { color: "#2A5ADA" },
|
13
|
+
children: [
|
14
|
+
/* @__PURE__ */ jsx("rect", { width: "88", height: "88", rx: "44", className: getBackgroundClass(props) }),
|
15
|
+
/* @__PURE__ */ jsx(
|
16
|
+
"path",
|
17
|
+
{
|
18
|
+
d: "M44 20L39.5963 22.5321L27.5963 29.4679L23.1926 32V56L27.5963 58.5321L39.7064 65.4679L44.1101 68L48.5137 65.4679L60.4036 58.5321L64.8073 56V32L60.4036 29.4679L48.4036 22.5321L44 20ZM32 50.9358V37.0642L44 30.1284L56 37.0642V50.9358L44 57.8716L32 50.9358Z",
|
19
|
+
className: getIconFillClass(props)
|
20
|
+
}
|
21
|
+
)
|
22
|
+
]
|
23
|
+
}
|
24
|
+
);
|
25
|
+
export {
|
26
|
+
LINK as default
|
27
|
+
};
|
@@ -0,0 +1,93 @@
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
2
|
+
import { getBackgroundClass, getIconFillClass } from "./utils.js";
|
3
|
+
const SOL = (props) => /* @__PURE__ */ jsxs(
|
4
|
+
"svg",
|
5
|
+
{
|
6
|
+
width: "88",
|
7
|
+
height: "88",
|
8
|
+
viewBox: "0 0 88 88",
|
9
|
+
fill: "none",
|
10
|
+
xmlns: "http://www.w3.org/2000/svg",
|
11
|
+
...props,
|
12
|
+
children: [
|
13
|
+
/* @__PURE__ */ jsx("rect", { width: "88", height: "88", rx: "44", className: getBackgroundClass(props) }),
|
14
|
+
/* @__PURE__ */ jsxs("g", { "clip-path": "url(#clip0_2277_732)", children: [
|
15
|
+
/* @__PURE__ */ jsx(
|
16
|
+
"path",
|
17
|
+
{
|
18
|
+
d: "M27.6616 54.1925C27.9537 53.8944 28.3553 53.7205 28.7813 53.7205H67.4088C68.1146 53.7205 68.4676 54.59 67.9686 55.0993L60.338 62.888C60.0459 63.1862 59.6443 63.3601 59.2184 63.3601H20.5909C19.885 63.3601 19.5321 62.4905 20.031 61.9812L27.6616 54.1925Z",
|
19
|
+
className: props.variant !== "color" || props.disabled ? getIconFillClass(props) : void 0,
|
20
|
+
fill: props.variant === "color" ? "url(#paint0_linear_2277_732)" : void 0
|
21
|
+
}
|
22
|
+
),
|
23
|
+
/* @__PURE__ */ jsx(
|
24
|
+
"path",
|
25
|
+
{
|
26
|
+
d: "M27.6616 25.1121C27.9659 24.8139 28.3675 24.64 28.7813 24.64H67.4088C68.1146 24.64 68.4676 25.5096 67.9686 26.0189L60.338 33.8076C60.0459 34.1057 59.6443 34.2796 59.2184 34.2796H20.5909C19.885 34.2796 19.5321 33.4101 20.031 32.9008L27.6616 25.1121Z",
|
27
|
+
className: props.variant !== "color" || props.disabled ? getIconFillClass(props) : void 0,
|
28
|
+
fill: props.variant === "color" ? "url(#paint1_linear_2277_732)" : void 0
|
29
|
+
}
|
30
|
+
),
|
31
|
+
/* @__PURE__ */ jsx(
|
32
|
+
"path",
|
33
|
+
{
|
34
|
+
d: "M60.338 39.5591C60.0459 39.261 59.6443 39.0871 59.2184 39.0871H20.5909C19.885 39.0871 19.5321 39.9566 20.031 40.4659L27.6616 48.2547C27.9537 48.5528 28.3553 48.7267 28.7813 48.7267H67.4088C68.1146 48.7267 68.4676 47.8571 67.9686 47.3478L60.338 39.5591Z",
|
35
|
+
className: props.variant !== "color" || props.disabled ? getIconFillClass(props) : void 0,
|
36
|
+
fill: props.variant === "color" ? "url(#paint2_linear_2277_732)" : void 0
|
37
|
+
}
|
38
|
+
)
|
39
|
+
] }),
|
40
|
+
/* @__PURE__ */ jsxs("defs", { children: [
|
41
|
+
/* @__PURE__ */ jsxs(
|
42
|
+
"linearGradient",
|
43
|
+
{
|
44
|
+
id: "paint0_linear_2277_732",
|
45
|
+
x1: "63.7187",
|
46
|
+
y1: "19.9873",
|
47
|
+
x2: "36.1134",
|
48
|
+
y2: "71.7889",
|
49
|
+
gradientUnits: "userSpaceOnUse",
|
50
|
+
children: [
|
51
|
+
/* @__PURE__ */ jsx("stop", { "stop-color": "#00FFA3" }),
|
52
|
+
/* @__PURE__ */ jsx("stop", { offset: "1", "stop-color": "#DC1FFF" })
|
53
|
+
]
|
54
|
+
}
|
55
|
+
),
|
56
|
+
/* @__PURE__ */ jsxs(
|
57
|
+
"linearGradient",
|
58
|
+
{
|
59
|
+
id: "paint1_linear_2277_732",
|
60
|
+
x1: "52.0295",
|
61
|
+
y1: "13.758",
|
62
|
+
x2: "24.4242",
|
63
|
+
y2: "65.5596",
|
64
|
+
gradientUnits: "userSpaceOnUse",
|
65
|
+
children: [
|
66
|
+
/* @__PURE__ */ jsx("stop", { "stop-color": "#00FFA3" }),
|
67
|
+
/* @__PURE__ */ jsx("stop", { offset: "1", "stop-color": "#DC1FFF" })
|
68
|
+
]
|
69
|
+
}
|
70
|
+
),
|
71
|
+
/* @__PURE__ */ jsxs(
|
72
|
+
"linearGradient",
|
73
|
+
{
|
74
|
+
id: "paint2_linear_2277_732",
|
75
|
+
x1: "57.8369",
|
76
|
+
y1: "16.8528",
|
77
|
+
x2: "30.2316",
|
78
|
+
y2: "68.6544",
|
79
|
+
gradientUnits: "userSpaceOnUse",
|
80
|
+
children: [
|
81
|
+
/* @__PURE__ */ jsx("stop", { "stop-color": "#00FFA3" }),
|
82
|
+
/* @__PURE__ */ jsx("stop", { offset: "1", "stop-color": "#DC1FFF" })
|
83
|
+
]
|
84
|
+
}
|
85
|
+
),
|
86
|
+
/* @__PURE__ */ jsx("clipPath", { id: "clip0_2277_732", children: /* @__PURE__ */ jsx("rect", { width: "48.4", height: "38.72", fill: "white", transform: "translate(19.8 24.64)" }) })
|
87
|
+
] })
|
88
|
+
]
|
89
|
+
}
|
90
|
+
);
|
91
|
+
export {
|
92
|
+
SOL as default
|
93
|
+
};
|
@@ -0,0 +1,29 @@
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
2
|
+
import { getBackgroundClass, getIconFillClass } from "./utils.js";
|
3
|
+
const SUI = (props) => /* @__PURE__ */ jsxs(
|
4
|
+
"svg",
|
5
|
+
{
|
6
|
+
width: "88",
|
7
|
+
height: "88",
|
8
|
+
viewBox: "0 0 88 88",
|
9
|
+
fill: "none",
|
10
|
+
xmlns: "http://www.w3.org/2000/svg",
|
11
|
+
...props,
|
12
|
+
style: { color: "#61BFFF" },
|
13
|
+
children: [
|
14
|
+
/* @__PURE__ */ jsx("rect", { width: "88", height: "88", rx: "44", className: getBackgroundClass(props) }),
|
15
|
+
/* @__PURE__ */ jsx(
|
16
|
+
"path",
|
17
|
+
{
|
18
|
+
fillRule: "evenodd",
|
19
|
+
clipRule: "evenodd",
|
20
|
+
d: "M55.6288 39.886C57.6422 42.4157 58.8555 45.6295 58.8555 49.1143C58.8555 52.5991 57.6164 55.9032 55.5385 58.4587L55.3578 58.6781L55.3061 58.3942C55.2674 58.1618 55.2158 57.9166 55.1642 57.6714C54.1316 53.1153 50.7501 49.2046 45.1744 46.0296C41.4186 43.9 39.2631 41.3316 38.6953 38.4146C38.3339 36.5303 38.6049 34.633 39.1212 33.0068C39.6503 31.3805 40.4247 30.0253 41.083 29.2122L43.2513 26.5663C43.6256 26.1017 44.3484 26.1017 44.7227 26.5663L55.6288 39.886ZM59.0491 37.2401L44.542 19.5064C44.2709 19.1708 43.7418 19.1708 43.4707 19.5064L28.9507 37.2401L28.8991 37.3047C26.2403 40.6217 24.6399 44.8293 24.6399 49.4111C24.6399 60.0849 33.3132 68.7453 43.9999 68.7453C54.6866 68.7453 63.3599 60.0849 63.3599 49.4111C63.3599 44.8293 61.7595 40.6217 59.0878 37.3047L59.0491 37.2401ZM32.4226 39.8344L33.7133 38.2469L33.752 38.5437C33.7778 38.776 33.8165 39.0084 33.8682 39.2407C34.7071 43.6418 37.7143 47.3202 42.7221 50.1597C47.0846 52.6378 49.6143 55.4902 50.35 58.6265C50.6597 59.9301 50.7114 61.2207 50.5823 62.3436L50.5694 62.4081L50.5049 62.434C48.543 63.3891 46.3231 63.9311 43.987 63.9311C35.7913 63.9311 29.1443 57.2971 29.1443 49.1143C29.1443 45.6037 30.3705 42.3641 32.4226 39.8344Z",
|
21
|
+
className: getIconFillClass(props)
|
22
|
+
}
|
23
|
+
)
|
24
|
+
]
|
25
|
+
}
|
26
|
+
);
|
27
|
+
export {
|
28
|
+
SUI as default
|
29
|
+
};
|
@@ -0,0 +1,34 @@
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
2
|
+
import { getBackgroundClass, getIconFillClass } from "./utils.js";
|
3
|
+
const XRP = (props) => /* @__PURE__ */ jsxs(
|
4
|
+
"svg",
|
5
|
+
{
|
6
|
+
width: "88",
|
7
|
+
height: "88",
|
8
|
+
viewBox: "0 0 88 88",
|
9
|
+
fill: "none",
|
10
|
+
xmlns: "http://www.w3.org/2000/svg",
|
11
|
+
...props,
|
12
|
+
style: { color: "#23292F" },
|
13
|
+
children: [
|
14
|
+
/* @__PURE__ */ jsx("rect", { width: "88", height: "88", rx: "44", className: getBackgroundClass(props) }),
|
15
|
+
/* @__PURE__ */ jsx(
|
16
|
+
"path",
|
17
|
+
{
|
18
|
+
d: "M60.9687 24.125H67.9062L53.4687 38.42C48.2403 43.5941 39.7634 43.5941 34.5312 38.42L20.0881 24.125H27.0312L38 34.9841C39.5981 36.5592 41.7519 37.4421 43.9958 37.4421C46.2397 37.4421 48.3934 36.5592 49.9916 34.9841L60.9687 24.125Z",
|
19
|
+
className: getIconFillClass(props)
|
20
|
+
}
|
21
|
+
),
|
22
|
+
/* @__PURE__ */ jsx(
|
23
|
+
"path",
|
24
|
+
{
|
25
|
+
d: "M26.9422 63.875H20L34.5312 49.4919C39.7597 44.3178 48.2366 44.3178 53.4688 49.4919L68 63.875H61.0625L50 52.9278C48.4019 51.3527 46.2481 50.4697 44.0042 50.4697C41.7603 50.4697 39.6066 51.3527 38.0084 52.9278L26.9422 63.875Z",
|
26
|
+
className: getIconFillClass(props)
|
27
|
+
}
|
28
|
+
)
|
29
|
+
]
|
30
|
+
}
|
31
|
+
);
|
32
|
+
export {
|
33
|
+
XRP as default
|
34
|
+
};
|
package/dist/index.d.ts
CHANGED
@@ -2,6 +2,7 @@ export { Button } from './components/Button';
|
|
2
2
|
export { Checkbox } from './components/Checkbox';
|
3
3
|
export { Chip } from './components/Chip';
|
4
4
|
export { CircularIcon } from './components/CircularIcon';
|
5
|
+
export { CircularState } from './components/CircularState';
|
5
6
|
export { ColorPickerItem, ColorPickerGroup } from './components/ColorPicker';
|
6
7
|
export { Flag } from './components/Flag';
|
7
8
|
export type { CountryCode } from './components/Flag';
|
package/dist/index.js
CHANGED
@@ -3,6 +3,7 @@ import { Button } from "./components/Button/Button.js";
|
|
3
3
|
import { Checkbox } from "./components/Checkbox/Checkbox.js";
|
4
4
|
import { Chip } from "./components/Chip/Chip.js";
|
5
5
|
import { CircularIcon } from "./components/CircularIcon/CircularIcon.js";
|
6
|
+
import { CircularState } from "./components/CircularState/CircularState.js";
|
6
7
|
import { ColorPickerGroup, ColorPickerItem } from "./components/ColorPicker/ColorPicker.js";
|
7
8
|
import { Flag } from "./components/Flag/Flag.js";
|
8
9
|
import * as Form from "./components/Form/Form.js";
|
@@ -53,6 +54,7 @@ export {
|
|
53
54
|
Checkbox,
|
54
55
|
Chip,
|
55
56
|
CircularIcon,
|
57
|
+
CircularState,
|
56
58
|
ColorPickerGroup,
|
57
59
|
ColorPickerItem,
|
58
60
|
CountryDrawer,
|
@@ -0,0 +1,28 @@
|
|
1
|
+
type NotificationType = "success" | "warning" | "error";
|
2
|
+
type ImpactStyle = "light" | "medium" | "heavy" | "soft" | "rigid";
|
3
|
+
interface HapticFeedbackParams {
|
4
|
+
hapticsType: "impact" | "notification" | "selectionChanged";
|
5
|
+
style?: ImpactStyle | NotificationType;
|
6
|
+
}
|
7
|
+
declare global {
|
8
|
+
interface Window {
|
9
|
+
MiniKit?: {
|
10
|
+
commands?: {
|
11
|
+
sendHapticFeedback?: (params: HapticFeedbackParams) => void;
|
12
|
+
};
|
13
|
+
};
|
14
|
+
}
|
15
|
+
}
|
16
|
+
/**
|
17
|
+
* Wraps a function with haptic feedback
|
18
|
+
* @param fn The function to wrap (can be undefined)
|
19
|
+
* @param hapticFn The haptic feedback function to call (defaults to selection)
|
20
|
+
* @returns A new function that triggers haptic feedback and calls the original function if provided
|
21
|
+
*/
|
22
|
+
export declare function withHaptics<T extends (...args: any[]) => any>(fn: T | undefined, hapticFn?: () => void): T;
|
23
|
+
declare const haptics: {
|
24
|
+
notification: (type: NotificationType) => void;
|
25
|
+
selection: () => void;
|
26
|
+
impact: (style: ImpactStyle) => void;
|
27
|
+
};
|
28
|
+
export default haptics;
|
@@ -0,0 +1,45 @@
|
|
1
|
+
const sendHapticFeedback = (params) => {
|
2
|
+
var _a, _b, _c;
|
3
|
+
try {
|
4
|
+
(_c = (_b = (_a = window.MiniKit) == null ? void 0 : _a.commands) == null ? void 0 : _b.sendHapticFeedback) == null ? void 0 : _c.call(_b, params);
|
5
|
+
} catch (error) {
|
6
|
+
console.warn("Haptic feedback not supported:", error);
|
7
|
+
}
|
8
|
+
};
|
9
|
+
function withHaptics(fn, hapticFn = haptics.selection) {
|
10
|
+
return (...args) => {
|
11
|
+
if (!fn) {
|
12
|
+
hapticFn();
|
13
|
+
return void 0;
|
14
|
+
}
|
15
|
+
const result = fn(...args);
|
16
|
+
if (result instanceof Promise) {
|
17
|
+
return result.finally(() => hapticFn());
|
18
|
+
}
|
19
|
+
hapticFn();
|
20
|
+
return result;
|
21
|
+
};
|
22
|
+
}
|
23
|
+
const haptics = {
|
24
|
+
notification: (type) => {
|
25
|
+
sendHapticFeedback({
|
26
|
+
hapticsType: "notification",
|
27
|
+
style: type
|
28
|
+
});
|
29
|
+
},
|
30
|
+
selection: () => {
|
31
|
+
sendHapticFeedback({
|
32
|
+
hapticsType: "selectionChanged"
|
33
|
+
});
|
34
|
+
},
|
35
|
+
impact: (style) => {
|
36
|
+
sendHapticFeedback({
|
37
|
+
hapticsType: "impact",
|
38
|
+
style
|
39
|
+
});
|
40
|
+
}
|
41
|
+
};
|
42
|
+
export {
|
43
|
+
haptics as default,
|
44
|
+
withHaptics
|
45
|
+
};
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@worldcoin/mini-apps-ui-kit-react",
|
3
|
-
"version": "1.0.0-canary.
|
3
|
+
"version": "1.0.0-canary.22",
|
4
4
|
"type": "module",
|
5
5
|
"main": "dist/index.js",
|
6
6
|
"module": "dist/index.js",
|
@@ -232,6 +232,10 @@
|
|
232
232
|
"types": "./dist/components/LiveFeedback/index.d.ts",
|
233
233
|
"default": "./dist/components/LiveFeedback/index.js"
|
234
234
|
},
|
235
|
+
"./CircularState": {
|
236
|
+
"types": "./dist/components/CircularState/index.d.ts",
|
237
|
+
"default": "./dist/components/CircularState/index.js"
|
238
|
+
},
|
235
239
|
"./tailwind": {
|
236
240
|
"types": "./dist/tailwind/index.d.ts",
|
237
241
|
"import": "./dist/tailwind/index.js",
|
package/public/globals.css
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
@font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-350.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-350Italic.woff) format("woff");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-500.woff) format("woff");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-500Italic.woff) format("woff");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-600.woff) format("woff");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:TWK Lausanne;src:url(../public/fonts/TWKLausanne-600Italic.woff) format("woff");font-weight:600;font-style:italic;font-display:swap}:root{--font-sans:"TWK Lausanne",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{display:none}input::-webkit-clear-button{display:none}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{display:none}input::-webkit-calendar-picker-indicator{display:none}input::-webkit-datetime-edit,input::-webkit-datetime-edit-ampm-field,input::-webkit-datetime-edit-day-field,input::-webkit-datetime-edit-fields-wrapper,input::-webkit-datetime-edit-hour-field,input::-webkit-datetime-edit-minute-field,input::-webkit-datetime-edit-month-field,input::-webkit-datetime-edit-second-field,input::-webkit-datetime-edit-text,input::-webkit-datetime-edit-year-field{display:none}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
|
2
2
|
|
3
|
-
/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border-width:0;border-style:solid;border-color:rgb(var(--gray-200)/1)}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-sans);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:rgb(var(--gray-400)/1)}input::placeholder,textarea::placeholder{opacity:1;color:rgb(var(--gray-400)/1)}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--font-sans:TWK Lausanne;--gray-0:255 255 255;--gray-50:249 250 251;--gray-100:243 244 245;--gray-200:235 236 239;--gray-300:214 217 221;--gray-350:177 184 194;--gray-400:155 163 174;--gray-500:113 118 128;--gray-700:60 66 75;--gray-900:24 24 24;--success-100:230 249 236;--success-200:204 243 217;--success-300:153 232 179;--success-400:102 220 141;--success-500:51 209 103;--success-600:0 194 48;--success-700:0 155 38;--success-800:0 116 29;--success-900:0 77 19;--error-100:254 233 231;--error-200:253 211 207;--error-300:251 167 159;--error-400:249 123 111;--error-500:247 80 63;--error-600:242 40 13;--error-700:194 32 10;--error-800:145 24 8;--error-900:97 16 5;--warning-100:255 246 230;--warning-200:255 237 204;--warning-300:255 219 153;--warning-400:255 201 102;--warning-500:255 184 51;--warning-600:255 174 0;--warning-700:204 139 0;--warning-800:153 104 0;--warning-900:102 70 0;--info-100:230 240 255;--info-200:204 224 255;--info-300:153 194 255;--info-400:102 163 255;--info-500:51 133 255;--info-600:0 92 255;--info-700:0 74 204;--info-800:0 55 153;--info-900:0 36 102;--world-blue-primary:63,219,237;--world-blue-secondary:236,251,253;--carrot-orange-primary:255,90,0;--carrot-orange-secondary:255,237,230;--purple-primary:134,0,255;--purple-secondary:242,230,255;--green-primary:0,194,48;--green-secondary:230,249,236;--blue-primary:0,92,255;--blue-secondary:230,240,255;--worldcoin-primary:24,24,24;--worldcoin-secondary:243,244,245;--digital-dollars-primary:0,194,48;--digital-dollars-secondary:230,249,236;--bitcoin-primary:255,90,0;--bitcoin-secondary:255,237,230;--ethereum-primary:51,133,255;--ethereum-secondary:230,240,255}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.start-0{inset-inline-start:0}.top-0{top:0}.top-1\/2{top:50%}.top-6{top:1.5rem}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.m-3{margin:.75rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-4{margin-left:1rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-24{margin-top:6rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.size-10{width:2.5rem;height:2.5rem}.size-11{width:2.75rem;height:2.75rem}.size-12{width:3rem;height:3rem}.size-16{width:4rem;height:4rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-9{width:2.25rem;height:2.25rem}.size-\[0\.875rem\]{width:.875rem;height:.875rem}.size-\[1\.5rem\]{width:1.5rem;height:1.5rem}.size-\[1\.625rem\]{width:1.625rem;height:1.625rem}.size-\[2\.125rem\]{width:2.125rem;height:2.125rem}.size-\[3\.25rem\]{width:3.25rem;height:3.25rem}.size-\[5\.5rem\]{width:5.5rem;height:5.5rem}.size-full{width:100%;height:100%}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-20{height:5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-9{height:2.25rem}.h-\[1\.625rem\]{height:1.625rem}.h-\[1px\]{height:1px}.h-\[3\.125rem\]{height:3.125rem}.h-\[3\.5rem\]{height:3.5rem}.h-\[3\.75rem\]{height:3.75rem}.h-\[4\.25rem\]{height:4.25rem}.h-\[4\.5rem\]{height:4.5rem}.h-\[4\.75rem\]{height:4.75rem}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.max-h-\[11\.75rem\]{max-height:11.75rem}.max-h-screen{max-height:100vh}.min-h-14{min-height:3.5rem}.min-h-\[7\.5rem\]{min-height:7.5rem}.w-1{width:.25rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-24{width:6rem}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-80{width:20rem}.w-\[300px\]{width:300px}.w-\[400px\]{width:400px}.w-\[7\.5rem\]{width:7.5rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-14{min-width:3.5rem}.min-w-28{min-width:7rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.translate-x-0{--tw-translate-x:0px}.translate-x-0,.translate-x-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-4{--tw-translate-x:1rem}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.transform,.translate-y-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-y{resize:vertical}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.auto-cols-fr{grid-auto-columns:minmax(0,1fr)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-5{row-gap:1.25rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden,.truncate{overflow:hidden}.truncate{white-space:nowrap}.text-ellipsis,.truncate{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[0\.625rem\]{border-radius:.625rem}.rounded-\[1\.75rem\]{border-radius:1.75rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-t-\[0\.625rem\]{border-top-left-radius:.625rem;border-top-right-radius:.625rem}.rounded-t-\[1\.75rem\]{border-top-left-radius:1.75rem;border-top-right-radius:1.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-\[0\.09375rem\]{border-width:.09375rem}.border-x{border-left-width:1px}.border-r,.border-x{border-right-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-error-600{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.border-error-700{--tw-border-opacity:1;border-color:rgb(var(--error-700)/var(--tw-border-opacity,1))}.border-gray-0{--tw-border-opacity:1;border-color:rgb(var(--gray-0)/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(var(--gray-200)/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(var(--gray-400)/var(--tw-border-opacity,1))}.border-gray-900{--tw-border-opacity:1;border-color:rgb(var(--gray-900)/var(--tw-border-opacity,1))}.bg-current{background-color:currentColor}.bg-error-100{--tw-bg-opacity:1;background-color:rgb(var(--error-100)/var(--tw-bg-opacity,1))}.bg-error-500{--tw-bg-opacity:1;background-color:rgb(var(--error-500)/var(--tw-bg-opacity,1))}.bg-gray-0{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(var(--gray-200)/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(var(--gray-300)/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(var(--gray-900)/var(--tw-bg-opacity,1))}.bg-gray-900\/40{background-color:rgb(var(--gray-900)/.4)}.bg-info-100{--tw-bg-opacity:1;background-color:rgb(var(--info-100)/var(--tw-bg-opacity,1))}.bg-success-100{--tw-bg-opacity:1;background-color:rgb(var(--success-100)/var(--tw-bg-opacity,1))}.bg-success-500{--tw-bg-opacity:1;background-color:rgb(var(--success-500)/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-warning-100{--tw-bg-opacity:1;background-color:rgb(var(--warning-100)/var(--tw-bg-opacity,1))}.fill-current{fill:currentColor}.fill-gray-0{fill:rgb(var(--gray-0)/1)}.fill-gray-100{fill:rgb(var(--gray-100)/1)}.fill-gray-350{fill:rgb(var(--gray-350)/1)}.fill-gray-900{fill:rgb(var(--gray-900)/1)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\.5{padding:.125rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[3px\]{padding:3px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem}.pb-2,.py-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:1.625rem}.text-2xs{font-size:.6875rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.125rem}.text-5xl{font-size:2.5rem}.text-6xl{font-size:2.75rem}.text-7xl{font-size:3.5rem}.text-\[1\.375rem\]{font-size:1.375rem}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[3\.5rem\]{font-size:3.5rem}.text-base{font-size:1.0625rem}.text-lg{font-size:1.1875rem}.text-sm{font-size:.9375rem}.text-xl{font-size:1.3125rem}.text-xs{font-size:.8125rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-\[1\.2\]{line-height:1.2}.leading-compact{line-height:1.3}.leading-narrow{line-height:1.2}.leading-none{line-height:1}.tracking-\[-0\.01em\]{letter-spacing:-.01em}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-normal{letter-spacing:0}.text-error-600{--tw-text-opacity:1;color:rgb(var(--error-600)/var(--tw-text-opacity,1))}.text-error-700{--tw-text-opacity:1;color:rgb(var(--error-700)/var(--tw-text-opacity,1))}.text-gray-0{--tw-text-opacity:1;color:rgb(var(--gray-0)/var(--tw-text-opacity,1))}.text-gray-350{--tw-text-opacity:1;color:rgb(var(--gray-350)/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(var(--gray-400)/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(var(--gray-900)/var(--tw-text-opacity,1))}.text-info-700{--tw-text-opacity:1;color:rgb(var(--info-700)/var(--tw-text-opacity,1))}.text-success-600{--tw-text-opacity:1;color:rgb(var(--success-600)/var(--tw-text-opacity,1))}.text-success-700{--tw-text-opacity:1;color:rgb(var(--success-700)/var(--tw-text-opacity,1))}.text-warning-700{--tw-text-opacity:1;color:rgb(var(--warning-700)/var(--tw-text-opacity,1))}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-20{opacity:.2}.shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[top\2c transform\2c scale\2c opacity\2c color\]{transition-property:top,transform,scale,opacity,color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-100{animation-duration:.1s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.placeholder\:text-gray-500::-moz-placeholder{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.placeholder\:text-gray-500::placeholder{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.placeholder\:text-transparent::-moz-placeholder{color:transparent}.placeholder\:text-transparent::placeholder{color:transparent}.focus-within\:isolate:focus-within{isolation:isolate}.focus-within\:border-error-600:focus-within{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.focus-within\:border-gray-300:focus-within{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.focus-within\:bg-gray-0:focus-within{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-200)/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.hover\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-700)/var(--tw-bg-opacity,1))}.hover\:text-gray-500:hover{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.focus\:border-error-600:focus{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.focus\:border-gray-300:focus{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.focus\:bg-gray-0:focus{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:border-gray-100:disabled{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.disabled\:bg-gray-100:disabled{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.disabled\:bg-gray-50:disabled{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.disabled\:text-gray-300:disabled{--tw-text-opacity:1;color:rgb(var(--gray-300)/var(--tw-text-opacity,1))}.disabled\:text-gray-400:disabled{--tw-text-opacity:1;color:rgb(var(--gray-400)/var(--tw-text-opacity,1))}.disabled\:opacity-20:disabled{opacity:.2}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-90:disabled{opacity:.9}.disabled\:active\:bg-transparent:active:disabled{background-color:transparent}.group:last-child .group-last\:hidden{display:none}.group:active .group-active\:bg-gray-50{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.peer:-moz-placeholder-shown~.peer-placeholder-shown\:text-sm{font-size:.9375rem}.peer:placeholder-shown~.peer-placeholder-shown\:text-sm{font-size:.9375rem}.peer:focus~.peer-focus\:pointer-events-auto{pointer-events:auto}.peer:focus~.peer-focus\:top-\[1\.125rem\]{top:1.125rem}.peer:focus~.peer-focus\:border-gray-300{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.peer:focus~.peer-focus\:bg-gray-0{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.peer:focus~.peer-focus\:text-xs{font-size:.8125rem}.peer:not(:-moz-placeholder-shown)~.peer-\[\:not\(\:-moz-placeholder-shown\)\]\:pointer-events-auto{pointer-events:auto}.peer:not(:placeholder-shown)~.peer-\[\:not\(\:placeholder-shown\)\]\:pointer-events-auto{pointer-events:auto}.peer:not(:-moz-placeholder-shown)~.peer-\[\:not\(\:-moz-placeholder-shown\)\]\:top-\[1\.125rem\]{top:1.125rem}.peer:not(:placeholder-shown)~.peer-\[\:not\(\:placeholder-shown\)\]\:top-\[1\.125rem\]{top:1.125rem}.peer:not(:-moz-placeholder-shown)~.peer-\[\:not\(\:-moz-placeholder-shown\)\]\:text-xs{font-size:.8125rem}.peer:not(:placeholder-shown)~.peer-\[\:not\(\:placeholder-shown\)\]\:text-xs{font-size:.8125rem}.has-\[input\:disabled\]\:cursor-not-allowed:has(input:disabled){cursor:not-allowed}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.has-\[input\:disabled\]\:opacity-50:has(input:disabled){opacity:.5}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x)}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end],.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x)}.data-\[state\=checked\]\:border-gray-900[data-state=checked]{--tw-border-opacity:1;border-color:rgb(var(--gray-900)/var(--tw-border-opacity,1))}.data-\[state\=closed\]\:border-gray-100[data-state=closed]{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.data-\[state\=unchecked\]\:border-gray-200[data-state=unchecked]{--tw-border-opacity:1;border-color:rgb(var(--gray-200)/var(--tw-border-opacity,1))}.data-\[state\=unchecked\]\:border-gray-300[data-state=unchecked]{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.data-\[state\=checked\]\:bg-gray-900[data-state=checked]{--tw-bg-opacity:1;background-color:rgb(var(--gray-900)/var(--tw-bg-opacity,1))}.data-\[state\=closed\]\:bg-gray-100[data-state=closed],.data-\[state\=on\]\:bg-gray-100[data-state=on]{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.data-\[state\=unchecked\]\:bg-gray-300[data-state=unchecked]{--tw-bg-opacity:1;background-color:rgb(var(--gray-300)/var(--tw-bg-opacity,1))}.data-\[state\=unchecked\]\:bg-transparent[data-state=unchecked]{background-color:transparent}.data-\[placeholder\]\:text-gray-500[data-placeholder]{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.data-\[state\=on\]\:text-gray-900[data-state=on]{--tw-text-opacity:1;color:rgb(var(--gray-900)/var(--tw-text-opacity,1))}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial}.data-\[state\=closed\]\:fade-out-50[data-state=closed]{--tw-exit-opacity:0.5}.data-\[state\=closed\]\:slide-out-to-top-full[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y:-100%}.group[data-state=on] .group-data-\[state\=on\]\:block{display:block}.group[data-state=on] .group-data-\[state\=on\]\:hidden{display:none}@media (min-width:768px){.md\:grid-cols-\[1fr_2fr\]{grid-template-columns:1fr 2fr}}.\[\&\:has\(\>\*\:nth-child\(2\)\)\]\:grid-cols-2:has(>:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}.\[\&\>\*\]\:col-span-1>*{grid-column:span 1/span 1}.\[\&\>span\:first-of-type\]\:line-clamp-1>span:first-of-type{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}
|
3
|
+
/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border-width:0;border-style:solid;border-color:rgb(var(--gray-200)/1)}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-sans);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:rgb(var(--gray-400)/1)}input::placeholder,textarea::placeholder{opacity:1;color:rgb(var(--gray-400)/1)}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--font-sans:TWK Lausanne;--gray-0:255 255 255;--gray-50:249 250 251;--gray-100:243 244 245;--gray-200:235 236 239;--gray-300:214 217 221;--gray-350:177 184 194;--gray-400:155 163 174;--gray-500:113 118 128;--gray-700:60 66 75;--gray-900:24 24 24;--success-100:230 249 236;--success-200:204 243 217;--success-300:153 232 179;--success-400:102 220 141;--success-500:51 209 103;--success-600:0 194 48;--success-700:0 155 38;--success-800:0 116 29;--success-900:0 77 19;--error-100:254 233 231;--error-200:253 211 207;--error-300:251 167 159;--error-400:249 123 111;--error-500:247 80 63;--error-600:242 40 13;--error-700:194 32 10;--error-800:145 24 8;--error-900:97 16 5;--warning-100:255 246 230;--warning-200:255 237 204;--warning-300:255 219 153;--warning-400:255 201 102;--warning-500:255 184 51;--warning-600:255 174 0;--warning-700:204 139 0;--warning-800:153 104 0;--warning-900:102 70 0;--info-100:230 240 255;--info-200:204 224 255;--info-300:153 194 255;--info-400:102 163 255;--info-500:51 133 255;--info-600:0 92 255;--info-700:0 74 204;--info-800:0 55 153;--info-900:0 36 102;--world-blue-primary:63,219,237;--world-blue-secondary:236,251,253;--carrot-orange-primary:255,90,0;--carrot-orange-secondary:255,237,230;--purple-primary:134,0,255;--purple-secondary:242,230,255;--green-primary:0,194,48;--green-secondary:230,249,236;--blue-primary:0,92,255;--blue-secondary:230,240,255;--worldcoin-primary:24,24,24;--worldcoin-secondary:243,244,245;--digital-dollars-primary:0,194,48;--digital-dollars-secondary:230,249,236;--bitcoin-primary:255,90,0;--bitcoin-secondary:255,237,230;--ethereum-primary:51,133,255;--ethereum-secondary:230,240,255}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.start-0{inset-inline-start:0}.top-0{top:0}.top-1\/2{top:50%}.top-6{top:1.5rem}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.m-3{margin:.75rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-4{margin-left:1rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-24{margin-top:6rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.size-10{width:2.5rem;height:2.5rem}.size-11{width:2.75rem;height:2.75rem}.size-12{width:3rem;height:3rem}.size-16{width:4rem;height:4rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-9{width:2.25rem;height:2.25rem}.size-\[0\.875rem\]{width:.875rem;height:.875rem}.size-\[1\.5rem\]{width:1.5rem;height:1.5rem}.size-\[1\.625rem\]{width:1.625rem;height:1.625rem}.size-\[2\.125rem\]{width:2.125rem;height:2.125rem}.size-\[3\.25rem\]{width:3.25rem;height:3.25rem}.size-\[5\.5rem\]{width:5.5rem;height:5.5rem}.size-full{width:100%;height:100%}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-20{height:5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-9{height:2.25rem}.h-\[1\.625rem\]{height:1.625rem}.h-\[1px\]{height:1px}.h-\[3\.125rem\]{height:3.125rem}.h-\[3\.5rem\]{height:3.5rem}.h-\[3\.75rem\]{height:3.75rem}.h-\[4\.25rem\]{height:4.25rem}.h-\[4\.5rem\]{height:4.5rem}.h-\[4\.75rem\]{height:4.75rem}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.max-h-\[11\.75rem\]{max-height:11.75rem}.max-h-screen{max-height:100vh}.min-h-14{min-height:3.5rem}.min-h-\[7\.5rem\]{min-height:7.5rem}.w-1{width:.25rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-24{width:6rem}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-80{width:20rem}.w-\[300px\]{width:300px}.w-\[400px\]{width:400px}.w-\[7\.5rem\]{width:7.5rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-14{min-width:3.5rem}.min-w-28{min-width:7rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.translate-x-0{--tw-translate-x:0px}.translate-x-0,.translate-x-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-4{--tw-translate-x:1rem}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.transform,.translate-y-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-y{resize:vertical}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.auto-cols-fr{grid-auto-columns:minmax(0,1fr)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-5{row-gap:1.25rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden,.truncate{overflow:hidden}.truncate{white-space:nowrap}.text-ellipsis,.truncate{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[0\.625rem\]{border-radius:.625rem}.rounded-\[1\.75rem\]{border-radius:1.75rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-t-\[0\.625rem\]{border-top-left-radius:.625rem;border-top-right-radius:.625rem}.rounded-t-\[1\.75rem\]{border-top-left-radius:1.75rem;border-top-right-radius:1.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-\[0\.09375rem\]{border-width:.09375rem}.border-x{border-left-width:1px}.border-r,.border-x{border-right-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-error-600{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.border-error-700{--tw-border-opacity:1;border-color:rgb(var(--error-700)/var(--tw-border-opacity,1))}.border-gray-0{--tw-border-opacity:1;border-color:rgb(var(--gray-0)/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(var(--gray-200)/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(var(--gray-400)/var(--tw-border-opacity,1))}.border-gray-900{--tw-border-opacity:1;border-color:rgb(var(--gray-900)/var(--tw-border-opacity,1))}.bg-current{background-color:currentColor}.bg-error-100{--tw-bg-opacity:1;background-color:rgb(var(--error-100)/var(--tw-bg-opacity,1))}.bg-error-500{--tw-bg-opacity:1;background-color:rgb(var(--error-500)/var(--tw-bg-opacity,1))}.bg-error-600{--tw-bg-opacity:1;background-color:rgb(var(--error-600)/var(--tw-bg-opacity,1))}.bg-gray-0{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(var(--gray-200)/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(var(--gray-300)/var(--tw-bg-opacity,1))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(var(--gray-400)/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(var(--gray-900)/var(--tw-bg-opacity,1))}.bg-gray-900\/40{background-color:rgb(var(--gray-900)/.4)}.bg-info-100{--tw-bg-opacity:1;background-color:rgb(var(--info-100)/var(--tw-bg-opacity,1))}.bg-success-100{--tw-bg-opacity:1;background-color:rgb(var(--success-100)/var(--tw-bg-opacity,1))}.bg-success-500{--tw-bg-opacity:1;background-color:rgb(var(--success-500)/var(--tw-bg-opacity,1))}.bg-success-600{--tw-bg-opacity:1;background-color:rgb(var(--success-600)/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-warning-100{--tw-bg-opacity:1;background-color:rgb(var(--warning-100)/var(--tw-bg-opacity,1))}.bg-warning-600{--tw-bg-opacity:1;background-color:rgb(var(--warning-600)/var(--tw-bg-opacity,1))}.bg-\[radial-gradient\(111\.32\%_111\.8\%_at_22\.73\%_0\%\2c _rgba\(255\2c 255\2c 255\2c 0\.2\)_0\%\2c _rgba\(255\2c 255\2c 255\2c 0\)_100\%\)\]{background-image:radial-gradient(111.32% 111.8% at 22.73% 0,hsla(0,0%,100%,.2) 0,hsla(0,0%,100%,0) 100%)}.fill-current{fill:currentColor}.fill-gray-0{fill:rgb(var(--gray-0)/1)}.fill-gray-100{fill:rgb(var(--gray-100)/1)}.fill-gray-350{fill:rgb(var(--gray-350)/1)}.fill-gray-900{fill:rgb(var(--gray-900)/1)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\.5{padding:.125rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[3px\]{padding:3px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem}.pb-2,.py-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:1.625rem}.text-2xs{font-size:.6875rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.125rem}.text-5xl{font-size:2.5rem}.text-6xl{font-size:2.75rem}.text-7xl{font-size:3.5rem}.text-\[1\.375rem\]{font-size:1.375rem}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[3\.5rem\]{font-size:3.5rem}.text-base{font-size:1.0625rem}.text-lg{font-size:1.1875rem}.text-sm{font-size:.9375rem}.text-xl{font-size:1.3125rem}.text-xs{font-size:.8125rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-\[1\.2\]{line-height:1.2}.leading-compact{line-height:1.3}.leading-narrow{line-height:1.2}.leading-none{line-height:1}.tracking-\[-0\.01em\]{letter-spacing:-.01em}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-normal{letter-spacing:0}.text-error-600{--tw-text-opacity:1;color:rgb(var(--error-600)/var(--tw-text-opacity,1))}.text-error-700{--tw-text-opacity:1;color:rgb(var(--error-700)/var(--tw-text-opacity,1))}.text-gray-0{--tw-text-opacity:1;color:rgb(var(--gray-0)/var(--tw-text-opacity,1))}.text-gray-350{--tw-text-opacity:1;color:rgb(var(--gray-350)/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(var(--gray-400)/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(var(--gray-900)/var(--tw-text-opacity,1))}.text-info-700{--tw-text-opacity:1;color:rgb(var(--info-700)/var(--tw-text-opacity,1))}.text-success-600{--tw-text-opacity:1;color:rgb(var(--success-600)/var(--tw-text-opacity,1))}.text-success-700{--tw-text-opacity:1;color:rgb(var(--success-700)/var(--tw-text-opacity,1))}.text-warning-700{--tw-text-opacity:1;color:rgb(var(--warning-700)/var(--tw-text-opacity,1))}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-20{opacity:.2}.shadow-\[inset_0_0_0_1px_rgba\(255\2c 255\2c 255\2c 0\.3\)\]{--tw-shadow:inset 0 0 0 1px hsla(0,0%,100%,.3);--tw-shadow-colored:inset 0 0 0 1px var(--tw-shadow-color)}.shadow-\[inset_0_0_0_1px_rgba\(255\2c 255\2c 255\2c 0\.3\)\],.shadow-none{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[top\2c transform\2c scale\2c opacity\2c color\]{transition-property:top,transform,scale,opacity,color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-100{animation-duration:.1s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.placeholder\:text-gray-500::-moz-placeholder{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.placeholder\:text-gray-500::placeholder{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.placeholder\:text-transparent::-moz-placeholder{color:transparent}.placeholder\:text-transparent::placeholder{color:transparent}.focus-within\:isolate:focus-within{isolation:isolate}.focus-within\:border-error-600:focus-within{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.focus-within\:border-gray-300:focus-within{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.focus-within\:bg-gray-0:focus-within{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-200)/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.hover\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(var(--gray-700)/var(--tw-bg-opacity,1))}.hover\:text-gray-500:hover{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.focus\:border-error-600:focus{--tw-border-opacity:1;border-color:rgb(var(--error-600)/var(--tw-border-opacity,1))}.focus\:border-gray-300:focus{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.focus\:bg-gray-0:focus{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:border-gray-100:disabled{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.disabled\:bg-gray-100:disabled{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.disabled\:bg-gray-50:disabled{--tw-bg-opacity:1;background-color:rgb(var(--gray-50)/var(--tw-bg-opacity,1))}.disabled\:text-gray-300:disabled{--tw-text-opacity:1;color:rgb(var(--gray-300)/var(--tw-text-opacity,1))}.disabled\:text-gray-400:disabled{--tw-text-opacity:1;color:rgb(var(--gray-400)/var(--tw-text-opacity,1))}.disabled\:opacity-20:disabled{opacity:.2}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-90:disabled{opacity:.9}.group:last-child .group-last\:hidden{display:none}.peer:-moz-placeholder-shown~.peer-placeholder-shown\:text-sm{font-size:.9375rem}.peer:placeholder-shown~.peer-placeholder-shown\:text-sm{font-size:.9375rem}.peer:focus~.peer-focus\:pointer-events-auto{pointer-events:auto}.peer:focus~.peer-focus\:top-\[1\.125rem\]{top:1.125rem}.peer:focus~.peer-focus\:border-gray-300{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.peer:focus~.peer-focus\:bg-gray-0{--tw-bg-opacity:1;background-color:rgb(var(--gray-0)/var(--tw-bg-opacity,1))}.peer:focus~.peer-focus\:text-xs{font-size:.8125rem}.peer:not(:-moz-placeholder-shown)~.peer-\[\:not\(\:-moz-placeholder-shown\)\]\:pointer-events-auto{pointer-events:auto}.peer:not(:placeholder-shown)~.peer-\[\:not\(\:placeholder-shown\)\]\:pointer-events-auto{pointer-events:auto}.peer:not(:-moz-placeholder-shown)~.peer-\[\:not\(\:-moz-placeholder-shown\)\]\:top-\[1\.125rem\]{top:1.125rem}.peer:not(:placeholder-shown)~.peer-\[\:not\(\:placeholder-shown\)\]\:top-\[1\.125rem\]{top:1.125rem}.peer:not(:-moz-placeholder-shown)~.peer-\[\:not\(\:-moz-placeholder-shown\)\]\:text-xs{font-size:.8125rem}.peer:not(:placeholder-shown)~.peer-\[\:not\(\:placeholder-shown\)\]\:text-xs{font-size:.8125rem}.has-\[input\:disabled\]\:cursor-not-allowed:has(input:disabled){cursor:not-allowed}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.has-\[input\:disabled\]\:opacity-50:has(input:disabled){opacity:.5}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x)}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end],.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x)}.data-\[state\=checked\]\:border-gray-900[data-state=checked]{--tw-border-opacity:1;border-color:rgb(var(--gray-900)/var(--tw-border-opacity,1))}.data-\[state\=closed\]\:border-gray-100[data-state=closed]{--tw-border-opacity:1;border-color:rgb(var(--gray-100)/var(--tw-border-opacity,1))}.data-\[state\=unchecked\]\:border-gray-200[data-state=unchecked]{--tw-border-opacity:1;border-color:rgb(var(--gray-200)/var(--tw-border-opacity,1))}.data-\[state\=unchecked\]\:border-gray-300[data-state=unchecked]{--tw-border-opacity:1;border-color:rgb(var(--gray-300)/var(--tw-border-opacity,1))}.data-\[state\=checked\]\:bg-gray-900[data-state=checked]{--tw-bg-opacity:1;background-color:rgb(var(--gray-900)/var(--tw-bg-opacity,1))}.data-\[state\=closed\]\:bg-gray-100[data-state=closed],.data-\[state\=on\]\:bg-gray-100[data-state=on]{--tw-bg-opacity:1;background-color:rgb(var(--gray-100)/var(--tw-bg-opacity,1))}.data-\[state\=unchecked\]\:bg-gray-300[data-state=unchecked]{--tw-bg-opacity:1;background-color:rgb(var(--gray-300)/var(--tw-bg-opacity,1))}.data-\[state\=unchecked\]\:bg-transparent[data-state=unchecked]{background-color:transparent}.data-\[placeholder\]\:text-gray-500[data-placeholder]{--tw-text-opacity:1;color:rgb(var(--gray-500)/var(--tw-text-opacity,1))}.data-\[state\=on\]\:text-gray-900[data-state=on]{--tw-text-opacity:1;color:rgb(var(--gray-900)/var(--tw-text-opacity,1))}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial}.data-\[state\=closed\]\:fade-out-50[data-state=closed]{--tw-exit-opacity:0.5}.data-\[state\=closed\]\:slide-out-to-top-full[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y:-100%}.group[data-state=on] .group-data-\[state\=on\]\:block{display:block}.group[data-state=on] .group-data-\[state\=on\]\:hidden{display:none}@media (min-width:768px){.md\:grid-cols-\[1fr_2fr\]{grid-template-columns:1fr 2fr}}.\[\&\:has\(\>\*\:nth-child\(2\)\)\]\:grid-cols-2:has(>:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}.\[\&\>\*\]\:col-span-1>*{grid-column:span 1/span 1}.\[\&\>span\:first-of-type\]\:line-clamp-1>span:first-of-type{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}
|