@saas-ui/react 3.0.0-alpha.4 → 3.0.0-alpha.6
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +19 -0
- package/dist/chunk-2EUACKRH.js +26 -0
- package/dist/chunk-3Z2C27LI.js +51 -0
- package/dist/chunk-4TR3AOMG.js +33 -0
- package/dist/chunk-6LOMIKR5.js +69 -0
- package/dist/chunk-6ZNR6N2K.js +45 -0
- package/dist/chunk-7C3IZBNJ.js +38 -0
- package/dist/chunk-BCNPBZZK.js +45 -0
- package/dist/{chunk-KHRLZUV4.js → chunk-BFA5FCA2.js} +16 -1
- package/dist/chunk-CTOVNZVS.js +1 -0
- package/dist/chunk-DPMEXCSG.js +137 -0
- package/dist/chunk-F3CVOMG5.js +160 -0
- package/dist/chunk-FJFNGSPL.js +23 -0
- package/dist/chunk-GEPWRHHH.js +65 -0
- package/dist/chunk-HELHPHIQ.js +35 -0
- package/dist/chunk-I2RXEKTB.js +38 -0
- package/dist/chunk-L356FPLY.js +20 -0
- package/dist/chunk-LIYUBUOP.js +119 -0
- package/dist/chunk-M7FOBCOV.js +184 -0
- package/dist/chunk-NSD5HRIP.js +46 -0
- package/dist/chunk-QMG6HP7Z.js +87 -0
- package/dist/chunk-QSNSWCTM.js +32 -0
- package/dist/chunk-S3CQW7GD.js +100 -0
- package/dist/chunk-SA3OGTOO.js +23 -0
- package/dist/chunk-UCQ3LZIE.js +43 -0
- package/dist/chunk-ULAJ3JEO.js +32 -0
- package/dist/chunk-VF3BV2BY.js +87 -0
- package/dist/chunk-WYLMBMAH.js +22 -0
- package/dist/chunk-YWJZWB6I.js +1892 -0
- package/dist/chunk-ZWSZQZ5G.js +73 -0
- package/dist/components/app-shell/index.js +3 -40
- package/dist/components/avatar/index.cjs +69 -0
- package/dist/components/avatar/index.d.cts +18 -0
- package/dist/components/avatar/index.d.ts +18 -0
- package/dist/components/avatar/index.js +10 -0
- package/dist/components/breadcrumbs/index.js +3 -32
- package/dist/components/button/index.js +3 -40
- package/dist/components/checkbox/index.js +3 -15
- package/dist/components/command/index.js +3 -28
- package/dist/components/dialog/index.js +5 -67
- package/dist/components/drawer/index.d.cts +2 -2
- package/dist/components/drawer/index.d.ts +2 -2
- package/dist/components/drawer/index.js +5 -59
- package/dist/components/empty-state/index.js +3 -18
- package/dist/components/grid-list/index.js +3 -40
- package/dist/components/icon-badge/index.js +3 -33
- package/dist/components/link/index.js +2 -14
- package/dist/components/loading-overlay/index.js +5 -1885
- package/dist/components/menu/index.cjs +263 -0
- package/dist/components/menu/index.d.cts +30 -0
- package/dist/components/menu/index.d.ts +30 -0
- package/dist/components/menu/index.js +9 -0
- package/dist/components/navbar/index.d.cts +4 -4
- package/dist/components/navbar/index.d.ts +4 -4
- package/dist/components/navbar/index.js +3 -45
- package/dist/components/number-input/index.js +3 -26
- package/dist/components/password-input/index.js +4 -225
- package/dist/components/persona/index.js +6 -178
- package/dist/components/pin-input/index.js +3 -21
- package/dist/components/radio/index.js +4 -16
- package/dist/components/search-input/index.js +4 -114
- package/dist/components/segmented-control/index.cjs +2 -0
- package/dist/components/segmented-control/index.d.cts +2 -0
- package/dist/components/segmented-control/index.d.ts +2 -0
- package/dist/components/segmented-control/index.js +2 -0
- package/dist/components/select/index.js +4 -94
- package/dist/components/sidebar/index.d.cts +11 -11
- package/dist/components/sidebar/index.d.ts +11 -11
- package/dist/components/sidebar/index.js +7 -129
- package/dist/components/steps/index.js +5 -64
- package/dist/components/switch/index.js +3 -18
- package/dist/components/toaster/index.cjs +54 -0
- package/dist/components/toaster/index.d.cts +10 -0
- package/dist/components/toaster/index.d.ts +10 -0
- package/dist/components/toaster/index.js +10 -0
- package/dist/components/tooltip/index.cjs +57 -0
- package/dist/components/tooltip/index.d.cts +14 -0
- package/dist/components/tooltip/index.d.ts +14 -0
- package/dist/components/tooltip/index.js +8 -0
- package/dist/index.cjs +3707 -8
- package/dist/index.d.cts +37 -2
- package/dist/index.d.ts +37 -2
- package/dist/index.js +285 -4
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
@@ -1,5 +1,24 @@
|
|
1
1
|
# @saas-ui/react
|
2
2
|
|
3
|
+
## 3.0.0-alpha.6
|
4
|
+
|
5
|
+
### Minor Changes
|
6
|
+
|
7
|
+
- 95c8652: Update to Chakra UI 3.2.1
|
8
|
+
|
9
|
+
### Patch Changes
|
10
|
+
|
11
|
+
- Updated dependencies [95c8652]
|
12
|
+
- @saas-ui/hooks@3.0.0-alpha.4
|
13
|
+
- @saas-ui/core@3.0.0-alpha.4
|
14
|
+
|
15
|
+
## 3.0.0-alpha.5
|
16
|
+
|
17
|
+
### Minor Changes
|
18
|
+
|
19
|
+
- e9fec88: Added toaster and menu components
|
20
|
+
- f62c3d6: Export all components from root barrel file
|
21
|
+
|
3
22
|
## 3.0.0-alpha.4
|
4
23
|
|
5
24
|
### Patch Changes
|
@@ -0,0 +1,26 @@
|
|
1
|
+
'use client'
|
2
|
+
|
3
|
+
// src/components/pin-input/pin-input.tsx
|
4
|
+
import { forwardRef } from "react";
|
5
|
+
import { PinInput as ChakraPinInput, Group } from "@chakra-ui/react";
|
6
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
7
|
+
var PinInput = forwardRef(
|
8
|
+
function PinInput2(props, ref) {
|
9
|
+
const {
|
10
|
+
pinLength = 4,
|
11
|
+
inputProps,
|
12
|
+
rootRef,
|
13
|
+
attached,
|
14
|
+
gap = attached ? 0 : 2,
|
15
|
+
...rest
|
16
|
+
} = props;
|
17
|
+
return /* @__PURE__ */ jsxs(ChakraPinInput.Root, { ref: rootRef, ...rest, children: [
|
18
|
+
/* @__PURE__ */ jsx(ChakraPinInput.HiddenInput, { ref, ...inputProps }),
|
19
|
+
/* @__PURE__ */ jsx(ChakraPinInput.Control, { children: /* @__PURE__ */ jsx(Group, { attached, gap, children: Array.from({ length: pinLength }).map((_, index) => /* @__PURE__ */ jsx(ChakraPinInput.Input, { index }, index)) }) })
|
20
|
+
] });
|
21
|
+
}
|
22
|
+
);
|
23
|
+
|
24
|
+
export {
|
25
|
+
PinInput
|
26
|
+
};
|
@@ -0,0 +1,51 @@
|
|
1
|
+
'use client'
|
2
|
+
import {
|
3
|
+
__export
|
4
|
+
} from "./chunk-RTMS5TJN.js";
|
5
|
+
|
6
|
+
// src/components/navbar/navbar.tsx
|
7
|
+
var navbar_exports = {};
|
8
|
+
__export(navbar_exports, {
|
9
|
+
Brand: () => NavbarBrand,
|
10
|
+
Content: () => NavbarContent,
|
11
|
+
Item: () => NavbarItem,
|
12
|
+
Link: () => NavbarLink,
|
13
|
+
Root: () => NavbarRoot
|
14
|
+
});
|
15
|
+
import { Navbar } from "@saas-ui/core/navbar";
|
16
|
+
|
17
|
+
// src/components/navbar/navbar.context.ts
|
18
|
+
import { createSlotRecipeContext } from "@chakra-ui/react";
|
19
|
+
var {
|
20
|
+
withProvider,
|
21
|
+
withContext,
|
22
|
+
useStyles: useNavbarStyles
|
23
|
+
} = createSlotRecipeContext({
|
24
|
+
key: "suiNavbar"
|
25
|
+
});
|
26
|
+
|
27
|
+
// src/components/navbar/navbar.tsx
|
28
|
+
var NavbarRoot = withProvider(
|
29
|
+
Navbar.Root,
|
30
|
+
"root"
|
31
|
+
);
|
32
|
+
var NavbarBrand = withContext(
|
33
|
+
Navbar.Brand,
|
34
|
+
"brand"
|
35
|
+
);
|
36
|
+
var NavbarContent = withContext(
|
37
|
+
Navbar.Content,
|
38
|
+
"content"
|
39
|
+
);
|
40
|
+
var NavbarItem = withContext(
|
41
|
+
Navbar.Item,
|
42
|
+
"item"
|
43
|
+
);
|
44
|
+
var NavbarLink = withContext(
|
45
|
+
Navbar.Link,
|
46
|
+
"link"
|
47
|
+
);
|
48
|
+
|
49
|
+
export {
|
50
|
+
navbar_exports
|
51
|
+
};
|
@@ -0,0 +1,33 @@
|
|
1
|
+
'use client'
|
2
|
+
|
3
|
+
// src/components/command/command.tsx
|
4
|
+
import { Kbd } from "@chakra-ui/react";
|
5
|
+
import {
|
6
|
+
createRecipeContext
|
7
|
+
} from "@chakra-ui/react";
|
8
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
9
|
+
var { withContext } = createRecipeContext({
|
10
|
+
key: "suiCommand"
|
11
|
+
});
|
12
|
+
var Key = ({ children }) => {
|
13
|
+
if (typeof children !== "string") {
|
14
|
+
return /* @__PURE__ */ jsx(Fragment, { children });
|
15
|
+
}
|
16
|
+
if (["then", "or", "+"].includes(children)) {
|
17
|
+
return /* @__PURE__ */ jsx("span", { children });
|
18
|
+
}
|
19
|
+
return /* @__PURE__ */ jsx(Kbd, { children });
|
20
|
+
};
|
21
|
+
var Command = (props) => {
|
22
|
+
const { children, ...rest } = props;
|
23
|
+
if (typeof children !== "string") {
|
24
|
+
return /* @__PURE__ */ jsx(Fragment, { children });
|
25
|
+
}
|
26
|
+
const keys = children.split(/\s|\+/);
|
27
|
+
return /* @__PURE__ */ jsx(CommandRoot, { ...rest, children: keys.map((key) => /* @__PURE__ */ jsx(Key, { children: key }, key)) });
|
28
|
+
};
|
29
|
+
var CommandRoot = withContext("span");
|
30
|
+
|
31
|
+
export {
|
32
|
+
Command
|
33
|
+
};
|
@@ -0,0 +1,69 @@
|
|
1
|
+
'use client'
|
2
|
+
import {
|
3
|
+
CheckIcon
|
4
|
+
} from "./chunk-VDXTEASE.js";
|
5
|
+
import {
|
6
|
+
__export
|
7
|
+
} from "./chunk-RTMS5TJN.js";
|
8
|
+
|
9
|
+
// src/components/steps/steps.tsx
|
10
|
+
var steps_exports = {};
|
11
|
+
__export(steps_exports, {
|
12
|
+
CompletedContent: () => StepsCompletedContent,
|
13
|
+
Content: () => StepsContent,
|
14
|
+
Indicator: () => StepsIndicator,
|
15
|
+
Item: () => StepsItem,
|
16
|
+
List: () => StepsList,
|
17
|
+
NextTrigger: () => StepsNextTrigger,
|
18
|
+
PrevTrigger: () => StepsPrevTrigger,
|
19
|
+
Root: () => StepsRoot
|
20
|
+
});
|
21
|
+
import { Box, Steps as ChakraSteps } from "@chakra-ui/react";
|
22
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
23
|
+
var StepsItem = (props) => {
|
24
|
+
const { title, description, completedIcon, icon, ...rest } = props;
|
25
|
+
return /* @__PURE__ */ jsxs(ChakraSteps.Item, { ...rest, children: [
|
26
|
+
/* @__PURE__ */ jsxs(ChakraSteps.Trigger, { children: [
|
27
|
+
/* @__PURE__ */ jsx(ChakraSteps.Indicator, { children: /* @__PURE__ */ jsx(
|
28
|
+
ChakraSteps.Status,
|
29
|
+
{
|
30
|
+
complete: completedIcon || /* @__PURE__ */ jsx(CheckIcon, {}),
|
31
|
+
incomplete: icon || /* @__PURE__ */ jsx(ChakraSteps.Number, {})
|
32
|
+
}
|
33
|
+
) }),
|
34
|
+
/* @__PURE__ */ jsx(StepInfo, { title, description })
|
35
|
+
] }),
|
36
|
+
/* @__PURE__ */ jsx(ChakraSteps.Separator, {})
|
37
|
+
] });
|
38
|
+
};
|
39
|
+
var StepInfo = (props) => {
|
40
|
+
const { title, description } = props;
|
41
|
+
if (title && description) {
|
42
|
+
return /* @__PURE__ */ jsxs(Box, { children: [
|
43
|
+
/* @__PURE__ */ jsx(ChakraSteps.Title, { children: title }),
|
44
|
+
/* @__PURE__ */ jsx(ChakraSteps.Description, { children: description })
|
45
|
+
] });
|
46
|
+
}
|
47
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
48
|
+
title && /* @__PURE__ */ jsx(ChakraSteps.Title, { children: title }),
|
49
|
+
description && /* @__PURE__ */ jsx(ChakraSteps.Description, { children: description })
|
50
|
+
] });
|
51
|
+
};
|
52
|
+
var StepsIndicator = (props) => {
|
53
|
+
const { icon = /* @__PURE__ */ jsx(ChakraSteps.Number, {}), completedIcon } = props;
|
54
|
+
return /* @__PURE__ */ jsx(ChakraSteps.Indicator, { children: /* @__PURE__ */ jsx(ChakraSteps.Status, { complete: completedIcon, incomplete: icon }) });
|
55
|
+
};
|
56
|
+
var StepsList = ChakraSteps.List;
|
57
|
+
var StepsRoot = ChakraSteps.Root;
|
58
|
+
var StepsContent = ChakraSteps.Content;
|
59
|
+
var StepsCompletedContent = ChakraSteps.CompletedContent;
|
60
|
+
var StepsNextTrigger = (props) => {
|
61
|
+
return /* @__PURE__ */ jsx(ChakraSteps.NextTrigger, { ...props });
|
62
|
+
};
|
63
|
+
var StepsPrevTrigger = (props) => {
|
64
|
+
return /* @__PURE__ */ jsx(ChakraSteps.PrevTrigger, { ...props });
|
65
|
+
};
|
66
|
+
|
67
|
+
export {
|
68
|
+
steps_exports
|
69
|
+
};
|
@@ -0,0 +1,45 @@
|
|
1
|
+
'use client'
|
2
|
+
|
3
|
+
// src/components/app-shell/app-shell.tsx
|
4
|
+
import { forwardRef } from "react";
|
5
|
+
import {
|
6
|
+
createSlotRecipeContext
|
7
|
+
} from "@chakra-ui/react";
|
8
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
9
|
+
var {
|
10
|
+
withProvider,
|
11
|
+
withContext,
|
12
|
+
useStyles: useAppShellStyles
|
13
|
+
} = createSlotRecipeContext({
|
14
|
+
key: "suiAppShell"
|
15
|
+
});
|
16
|
+
var AppShellRoot = withProvider(
|
17
|
+
"div",
|
18
|
+
"root",
|
19
|
+
{ forwardAsChild: true }
|
20
|
+
);
|
21
|
+
var AppShellContent = withContext("div", "content", { forwardAsChild: true });
|
22
|
+
var AppShellMain = withContext(
|
23
|
+
"div",
|
24
|
+
"main",
|
25
|
+
{ forwardAsChild: true }
|
26
|
+
);
|
27
|
+
var AppShell = forwardRef(
|
28
|
+
(props, ref) => {
|
29
|
+
const { header, sidebar, aside, footer, children, ...rootProps } = props;
|
30
|
+
return /* @__PURE__ */ jsxs(AppShellRoot, { ref, ...rootProps, children: [
|
31
|
+
header,
|
32
|
+
/* @__PURE__ */ jsxs(AppShellContent, { children: [
|
33
|
+
sidebar,
|
34
|
+
/* @__PURE__ */ jsx(AppShellMain, { children }),
|
35
|
+
aside
|
36
|
+
] }),
|
37
|
+
footer
|
38
|
+
] });
|
39
|
+
}
|
40
|
+
);
|
41
|
+
AppShell.displayName = "AppShell";
|
42
|
+
|
43
|
+
export {
|
44
|
+
AppShell
|
45
|
+
};
|
@@ -0,0 +1,38 @@
|
|
1
|
+
'use client'
|
2
|
+
import {
|
3
|
+
__export
|
4
|
+
} from "./chunk-RTMS5TJN.js";
|
5
|
+
|
6
|
+
// src/components/breadcrumbs/namespace.ts
|
7
|
+
var namespace_exports = {};
|
8
|
+
__export(namespace_exports, {
|
9
|
+
CurrentLink: () => BreadcrumbCurrentLink,
|
10
|
+
Ellipsis: () => BreadcrumbEllipsis,
|
11
|
+
Link: () => BreadcrumbLink,
|
12
|
+
Root: () => BreadcrumbRoot
|
13
|
+
});
|
14
|
+
|
15
|
+
// src/components/breadcrumbs/breadcrumb.tsx
|
16
|
+
import { Children, Fragment, forwardRef, isValidElement } from "react";
|
17
|
+
import { Breadcrumb } from "@chakra-ui/react";
|
18
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
19
|
+
var BreadcrumbRoot = forwardRef(
|
20
|
+
function BreadcrumbRoot2(props, ref) {
|
21
|
+
const { separator = "/", separatorGap, children, ...rest } = props;
|
22
|
+
const validChildren = Children.toArray(children).filter(isValidElement);
|
23
|
+
return /* @__PURE__ */ jsx(Breadcrumb.Root, { ref, ...rest, children: /* @__PURE__ */ jsx(Breadcrumb.List, { gap: separatorGap, children: validChildren.map((child, index) => {
|
24
|
+
const last = index === validChildren.length - 1;
|
25
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
26
|
+
/* @__PURE__ */ jsx(Breadcrumb.Item, { children: child }),
|
27
|
+
!last && /* @__PURE__ */ jsx(Breadcrumb.Separator, { children: separator })
|
28
|
+
] }, index);
|
29
|
+
}) }) });
|
30
|
+
}
|
31
|
+
);
|
32
|
+
var BreadcrumbLink = Breadcrumb.Link;
|
33
|
+
var BreadcrumbCurrentLink = Breadcrumb.CurrentLink;
|
34
|
+
var BreadcrumbEllipsis = Breadcrumb.Ellipsis;
|
35
|
+
|
36
|
+
export {
|
37
|
+
namespace_exports
|
38
|
+
};
|
@@ -0,0 +1,45 @@
|
|
1
|
+
'use client'
|
2
|
+
|
3
|
+
// src/components/button/button.tsx
|
4
|
+
import { forwardRef } from "react";
|
5
|
+
import {
|
6
|
+
AbsoluteCenter,
|
7
|
+
Button as ButtonPrimitive,
|
8
|
+
Span,
|
9
|
+
Spinner
|
10
|
+
} from "@chakra-ui/react";
|
11
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
12
|
+
var Button = forwardRef(
|
13
|
+
function Button2(props, ref) {
|
14
|
+
const {
|
15
|
+
loading,
|
16
|
+
disabled,
|
17
|
+
loadingText,
|
18
|
+
children,
|
19
|
+
variant = "glass",
|
20
|
+
colorPalette = variant === "glass" ? "accent" : "gray",
|
21
|
+
...rest
|
22
|
+
} = props;
|
23
|
+
return /* @__PURE__ */ jsx(
|
24
|
+
ButtonPrimitive,
|
25
|
+
{
|
26
|
+
colorPalette,
|
27
|
+
disabled: loading || disabled,
|
28
|
+
variant,
|
29
|
+
ref,
|
30
|
+
...rest,
|
31
|
+
children: loading && !loadingText ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
32
|
+
/* @__PURE__ */ jsx(AbsoluteCenter, { display: "inline-flex", children: /* @__PURE__ */ jsx(Spinner, { size: "inherit", color: "inherit" }) }),
|
33
|
+
/* @__PURE__ */ jsx(Span, { opacity: 0, children })
|
34
|
+
] }) : loading && loadingText ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
35
|
+
/* @__PURE__ */ jsx(Spinner, { size: "inherit", color: "inherit" }),
|
36
|
+
loadingText
|
37
|
+
] }) : children
|
38
|
+
}
|
39
|
+
);
|
40
|
+
}
|
41
|
+
);
|
42
|
+
|
43
|
+
export {
|
44
|
+
Button
|
45
|
+
};
|
@@ -1,5 +1,9 @@
|
|
1
1
|
'use client'
|
2
2
|
|
3
|
+
// src/components/link/link.tsx
|
4
|
+
import React2 from "react";
|
5
|
+
import { Link as ChakraLink } from "@chakra-ui/react";
|
6
|
+
|
3
7
|
// src/provider/sui-provider.tsx
|
4
8
|
import * as React from "react";
|
5
9
|
import { ChakraProvider } from "@chakra-ui/react";
|
@@ -27,9 +31,20 @@ function useLink() {
|
|
27
31
|
return chakra.a;
|
28
32
|
}
|
29
33
|
|
34
|
+
// src/components/link/link.tsx
|
35
|
+
import { jsx as jsx2 } from "react/jsx-runtime";
|
36
|
+
var Link = React2.forwardRef(
|
37
|
+
(props, ref) => {
|
38
|
+
const LinkComponent = useLink();
|
39
|
+
return /* @__PURE__ */ jsx2(ChakraLink, { asChild: true, children: /* @__PURE__ */ jsx2(LinkComponent, { ref, ...props }) });
|
40
|
+
}
|
41
|
+
);
|
42
|
+
Link.displayName = "Link";
|
43
|
+
|
30
44
|
export {
|
31
45
|
SuiContext,
|
32
46
|
SuiProvider,
|
33
47
|
useSui,
|
34
|
-
useLink
|
48
|
+
useLink,
|
49
|
+
Link
|
35
50
|
};
|
@@ -0,0 +1 @@
|
|
1
|
+
'use client'
|
@@ -0,0 +1,137 @@
|
|
1
|
+
'use client'
|
2
|
+
import {
|
3
|
+
__export
|
4
|
+
} from "./chunk-RTMS5TJN.js";
|
5
|
+
|
6
|
+
// src/components/sidebar/sidebar.tsx
|
7
|
+
var sidebar_exports = {};
|
8
|
+
__export(sidebar_exports, {
|
9
|
+
Backdrop: () => SidebarBackdrop,
|
10
|
+
Body: () => SidebarBody,
|
11
|
+
FlyoutTrigger: () => SidebarFlyoutTrigger,
|
12
|
+
Footer: () => SidebarFooter,
|
13
|
+
Group: () => SidebarGroup,
|
14
|
+
GroupContent: () => SidebarGroupContent,
|
15
|
+
GroupEndElement: () => SidebarGroupEndElement,
|
16
|
+
GroupHeader: () => SidebarGroupHeader,
|
17
|
+
GroupTitle: () => SidebarGroupTitle,
|
18
|
+
Header: () => SidebarHeader,
|
19
|
+
NavButton: () => SidebarNavButton,
|
20
|
+
NavItem: () => SidebarNavItem,
|
21
|
+
NavItemEndElement: () => SidebarNavItemEndElement,
|
22
|
+
Provider: () => SidebarProvider,
|
23
|
+
Root: () => SidebarRoot,
|
24
|
+
Track: () => SidebarTrack,
|
25
|
+
Trigger: () => SidebarTrigger
|
26
|
+
});
|
27
|
+
import { Sidebar, useSidebar } from "@saas-ui/core/sidebar";
|
28
|
+
|
29
|
+
// src/components/sidebar/sidebar.context.ts
|
30
|
+
import { createSlotRecipeContext } from "@chakra-ui/react";
|
31
|
+
var {
|
32
|
+
withContext,
|
33
|
+
useRecipeResult,
|
34
|
+
StylesProvider,
|
35
|
+
ClassNamesProvider,
|
36
|
+
useStyles: useSidebarStyles
|
37
|
+
} = createSlotRecipeContext({
|
38
|
+
key: "suiSidebar"
|
39
|
+
});
|
40
|
+
var {
|
41
|
+
withProvider: withItemProvider,
|
42
|
+
withContext: withItemContext,
|
43
|
+
useStyles: useSidebarItemStyles
|
44
|
+
} = createSlotRecipeContext({
|
45
|
+
key: "suiSidebarNavItem"
|
46
|
+
});
|
47
|
+
|
48
|
+
// src/components/sidebar/sidebar.tsx
|
49
|
+
import { jsx } from "react/jsx-runtime";
|
50
|
+
var SidebarProvider = function SidebarProvider2(props) {
|
51
|
+
return /* @__PURE__ */ jsx(Sidebar.Provider, { ...props, children: /* @__PURE__ */ jsx(RecipeProvider, { ...props, children: props.children }) });
|
52
|
+
};
|
53
|
+
function RecipeProvider(props) {
|
54
|
+
const { mode } = useSidebar();
|
55
|
+
const { styles, classNames } = useRecipeResult({
|
56
|
+
...props,
|
57
|
+
mode
|
58
|
+
});
|
59
|
+
return /* @__PURE__ */ jsx(StylesProvider, { value: styles, children: /* @__PURE__ */ jsx(ClassNamesProvider, { value: classNames, children: props.children }) });
|
60
|
+
}
|
61
|
+
var SidebarRoot = withContext(
|
62
|
+
Sidebar.Root,
|
63
|
+
"root"
|
64
|
+
);
|
65
|
+
var SidebarTrigger = withContext(
|
66
|
+
Sidebar.Trigger,
|
67
|
+
"trigger",
|
68
|
+
{
|
69
|
+
forwardAsChild: true
|
70
|
+
}
|
71
|
+
);
|
72
|
+
var SidebarFlyoutTrigger = withContext(Sidebar.FlyoutTrigger, "flyoutTrigger", {
|
73
|
+
forwardAsChild: true
|
74
|
+
});
|
75
|
+
var SidebarBackdrop = withContext(
|
76
|
+
Sidebar.Backdrop,
|
77
|
+
"backdrop",
|
78
|
+
{
|
79
|
+
forwardAsChild: true
|
80
|
+
}
|
81
|
+
);
|
82
|
+
var SidebarHeader = withContext(
|
83
|
+
Sidebar.Header,
|
84
|
+
"header"
|
85
|
+
);
|
86
|
+
var SidebarBody = withContext(
|
87
|
+
Sidebar.Body,
|
88
|
+
"body"
|
89
|
+
);
|
90
|
+
var SidebarFooter = withContext(
|
91
|
+
Sidebar.Footer,
|
92
|
+
"footer"
|
93
|
+
);
|
94
|
+
var SidebarTrack = withContext(
|
95
|
+
Sidebar.Track,
|
96
|
+
"track",
|
97
|
+
{
|
98
|
+
forwardAsChild: true
|
99
|
+
}
|
100
|
+
);
|
101
|
+
var SidebarGroup = withContext(
|
102
|
+
Sidebar.Group,
|
103
|
+
"group",
|
104
|
+
{
|
105
|
+
defaultProps: {
|
106
|
+
role: "group"
|
107
|
+
}
|
108
|
+
}
|
109
|
+
);
|
110
|
+
var SidebarGroupHeader = withContext(
|
111
|
+
Sidebar.GroupHeader,
|
112
|
+
"groupHeader"
|
113
|
+
);
|
114
|
+
var SidebarGroupTitle = withContext(Sidebar.GroupTitle, "groupTitle");
|
115
|
+
var SidebarGroupEndElement = withContext(Sidebar.GroupEndElement, "groupEndElement");
|
116
|
+
var SidebarGroupContent = withContext(
|
117
|
+
Sidebar.GroupContent,
|
118
|
+
"groupContent"
|
119
|
+
);
|
120
|
+
var SidebarNavItem = withItemProvider(
|
121
|
+
Sidebar.NavItem,
|
122
|
+
"item"
|
123
|
+
);
|
124
|
+
var SidebarNavButton = withItemContext(Sidebar.NavButton, "button", {
|
125
|
+
forwardAsChild: true
|
126
|
+
});
|
127
|
+
var SidebarNavItemEndElement = withItemContext(Sidebar.NavItemEndElement, "endElement");
|
128
|
+
|
129
|
+
// src/components/sidebar/index.ts
|
130
|
+
import { useSidebar as useSidebar2 } from "@saas-ui/core/sidebar";
|
131
|
+
|
132
|
+
export {
|
133
|
+
useSidebarStyles,
|
134
|
+
useSidebarItemStyles,
|
135
|
+
sidebar_exports,
|
136
|
+
useSidebar2 as useSidebar
|
137
|
+
};
|
@@ -0,0 +1,160 @@
|
|
1
|
+
'use client'
|
2
|
+
|
3
|
+
// ../../node_modules/react-icons/lib/iconBase.mjs
|
4
|
+
import React2 from "react";
|
5
|
+
|
6
|
+
// ../../node_modules/react-icons/lib/iconContext.mjs
|
7
|
+
import React from "react";
|
8
|
+
var DefaultContext = {
|
9
|
+
color: void 0,
|
10
|
+
size: void 0,
|
11
|
+
className: void 0,
|
12
|
+
style: void 0,
|
13
|
+
attr: void 0
|
14
|
+
};
|
15
|
+
var IconContext = React.createContext && /* @__PURE__ */ React.createContext(DefaultContext);
|
16
|
+
|
17
|
+
// ../../node_modules/react-icons/lib/iconBase.mjs
|
18
|
+
var _excluded = ["attr", "size", "title"];
|
19
|
+
function _objectWithoutProperties(source, excluded) {
|
20
|
+
if (source == null) return {};
|
21
|
+
var target = _objectWithoutPropertiesLoose(source, excluded);
|
22
|
+
var key, i;
|
23
|
+
if (Object.getOwnPropertySymbols) {
|
24
|
+
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
|
25
|
+
for (i = 0; i < sourceSymbolKeys.length; i++) {
|
26
|
+
key = sourceSymbolKeys[i];
|
27
|
+
if (excluded.indexOf(key) >= 0) continue;
|
28
|
+
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
29
|
+
target[key] = source[key];
|
30
|
+
}
|
31
|
+
}
|
32
|
+
return target;
|
33
|
+
}
|
34
|
+
function _objectWithoutPropertiesLoose(source, excluded) {
|
35
|
+
if (source == null) return {};
|
36
|
+
var target = {};
|
37
|
+
for (var key in source) {
|
38
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
39
|
+
if (excluded.indexOf(key) >= 0) continue;
|
40
|
+
target[key] = source[key];
|
41
|
+
}
|
42
|
+
}
|
43
|
+
return target;
|
44
|
+
}
|
45
|
+
function _extends() {
|
46
|
+
_extends = Object.assign ? Object.assign.bind() : function(target) {
|
47
|
+
for (var i = 1; i < arguments.length; i++) {
|
48
|
+
var source = arguments[i];
|
49
|
+
for (var key in source) {
|
50
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
51
|
+
target[key] = source[key];
|
52
|
+
}
|
53
|
+
}
|
54
|
+
}
|
55
|
+
return target;
|
56
|
+
};
|
57
|
+
return _extends.apply(this, arguments);
|
58
|
+
}
|
59
|
+
function ownKeys(e, r) {
|
60
|
+
var t = Object.keys(e);
|
61
|
+
if (Object.getOwnPropertySymbols) {
|
62
|
+
var o = Object.getOwnPropertySymbols(e);
|
63
|
+
r && (o = o.filter(function(r2) {
|
64
|
+
return Object.getOwnPropertyDescriptor(e, r2).enumerable;
|
65
|
+
})), t.push.apply(t, o);
|
66
|
+
}
|
67
|
+
return t;
|
68
|
+
}
|
69
|
+
function _objectSpread(e) {
|
70
|
+
for (var r = 1; r < arguments.length; r++) {
|
71
|
+
var t = null != arguments[r] ? arguments[r] : {};
|
72
|
+
r % 2 ? ownKeys(Object(t), true).forEach(function(r2) {
|
73
|
+
_defineProperty(e, r2, t[r2]);
|
74
|
+
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r2) {
|
75
|
+
Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));
|
76
|
+
});
|
77
|
+
}
|
78
|
+
return e;
|
79
|
+
}
|
80
|
+
function _defineProperty(obj, key, value) {
|
81
|
+
key = _toPropertyKey(key);
|
82
|
+
if (key in obj) {
|
83
|
+
Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true });
|
84
|
+
} else {
|
85
|
+
obj[key] = value;
|
86
|
+
}
|
87
|
+
return obj;
|
88
|
+
}
|
89
|
+
function _toPropertyKey(t) {
|
90
|
+
var i = _toPrimitive(t, "string");
|
91
|
+
return "symbol" == typeof i ? i : i + "";
|
92
|
+
}
|
93
|
+
function _toPrimitive(t, r) {
|
94
|
+
if ("object" != typeof t || !t) return t;
|
95
|
+
var e = t[Symbol.toPrimitive];
|
96
|
+
if (void 0 !== e) {
|
97
|
+
var i = e.call(t, r || "default");
|
98
|
+
if ("object" != typeof i) return i;
|
99
|
+
throw new TypeError("@@toPrimitive must return a primitive value.");
|
100
|
+
}
|
101
|
+
return ("string" === r ? String : Number)(t);
|
102
|
+
}
|
103
|
+
function Tree2Element(tree) {
|
104
|
+
return tree && tree.map((node, i) => /* @__PURE__ */ React2.createElement(node.tag, _objectSpread({
|
105
|
+
key: i
|
106
|
+
}, node.attr), Tree2Element(node.child)));
|
107
|
+
}
|
108
|
+
function GenIcon(data) {
|
109
|
+
return (props) => /* @__PURE__ */ React2.createElement(IconBase, _extends({
|
110
|
+
attr: _objectSpread({}, data.attr)
|
111
|
+
}, props), Tree2Element(data.child));
|
112
|
+
}
|
113
|
+
function IconBase(props) {
|
114
|
+
var elem = (conf) => {
|
115
|
+
var {
|
116
|
+
attr,
|
117
|
+
size,
|
118
|
+
title
|
119
|
+
} = props, svgProps = _objectWithoutProperties(props, _excluded);
|
120
|
+
var computedSize = size || conf.size || "1em";
|
121
|
+
var className;
|
122
|
+
if (conf.className) className = conf.className;
|
123
|
+
if (props.className) className = (className ? className + " " : "") + props.className;
|
124
|
+
return /* @__PURE__ */ React2.createElement("svg", _extends({
|
125
|
+
stroke: "currentColor",
|
126
|
+
fill: "currentColor",
|
127
|
+
strokeWidth: "0"
|
128
|
+
}, conf.attr, attr, svgProps, {
|
129
|
+
className,
|
130
|
+
style: _objectSpread(_objectSpread({
|
131
|
+
color: props.color || conf.color
|
132
|
+
}, conf.style), props.style),
|
133
|
+
height: computedSize,
|
134
|
+
width: computedSize,
|
135
|
+
xmlns: "http://www.w3.org/2000/svg"
|
136
|
+
}), title && /* @__PURE__ */ React2.createElement("title", null, title), props.children);
|
137
|
+
};
|
138
|
+
return IconContext !== void 0 ? /* @__PURE__ */ React2.createElement(IconContext.Consumer, null, (conf) => elem(conf)) : elem(DefaultContext);
|
139
|
+
}
|
140
|
+
|
141
|
+
// ../../node_modules/react-icons/lu/index.mjs
|
142
|
+
function LuCheck(props) {
|
143
|
+
return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 24 24", "fill": "none", "stroke": "currentColor", "strokeWidth": "2", "strokeLinecap": "round", "strokeLinejoin": "round" }, "child": [{ "tag": "polyline", "attr": { "points": "20 6 9 17 4 12" }, "child": [] }] })(props);
|
144
|
+
}
|
145
|
+
function LuChevronRight(props) {
|
146
|
+
return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 24 24", "fill": "none", "stroke": "currentColor", "strokeWidth": "2", "strokeLinecap": "round", "strokeLinejoin": "round" }, "child": [{ "tag": "path", "attr": { "d": "m9 18 6-6-6-6" }, "child": [] }] })(props);
|
147
|
+
}
|
148
|
+
function LuEyeOff(props) {
|
149
|
+
return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 24 24", "fill": "none", "stroke": "currentColor", "strokeWidth": "2", "strokeLinecap": "round", "strokeLinejoin": "round" }, "child": [{ "tag": "path", "attr": { "d": "M9.88 9.88a3 3 0 1 0 4.24 4.24" }, "child": [] }, { "tag": "path", "attr": { "d": "M10.73 5.08A10.43 10.43 0 0 1 12 5c7 0 10 7 10 7a13.16 13.16 0 0 1-1.67 2.68" }, "child": [] }, { "tag": "path", "attr": { "d": "M6.61 6.61A13.526 13.526 0 0 0 2 12s3 7 10 7a9.74 9.74 0 0 0 5.39-1.61" }, "child": [] }, { "tag": "line", "attr": { "x1": "2", "x2": "22", "y1": "2", "y2": "22" }, "child": [] }] })(props);
|
150
|
+
}
|
151
|
+
function LuEye(props) {
|
152
|
+
return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 24 24", "fill": "none", "stroke": "currentColor", "strokeWidth": "2", "strokeLinecap": "round", "strokeLinejoin": "round" }, "child": [{ "tag": "path", "attr": { "d": "M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z" }, "child": [] }, { "tag": "circle", "attr": { "cx": "12", "cy": "12", "r": "3" }, "child": [] }] })(props);
|
153
|
+
}
|
154
|
+
|
155
|
+
export {
|
156
|
+
LuCheck,
|
157
|
+
LuChevronRight,
|
158
|
+
LuEyeOff,
|
159
|
+
LuEye
|
160
|
+
};
|