@docubook/ui-react 2.0.0-beta.0 → 2.0.0-beta.2

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.
Files changed (102) hide show
  1. package/dist/base/breadcrumbs.d.ts +15 -0
  2. package/dist/{collapse.d.ts → base/collapse.d.ts} +5 -7
  3. package/dist/base/drawer.d.ts +41 -0
  4. package/dist/base/dropdown.d.ts +16 -0
  5. package/dist/base/input.d.ts +14 -0
  6. package/dist/base/kbd.d.ts +39 -0
  7. package/dist/base/modal.d.ts +14 -0
  8. package/dist/base/navbar.d.ts +32 -0
  9. package/dist/base/pagination.d.ts +17 -0
  10. package/dist/base/theme-controller.d.ts +17 -0
  11. package/dist/{toggle.d.ts → base/toggle.d.ts} +6 -8
  12. package/dist/breadcrumbs.js +28 -13
  13. package/dist/breadcrumbs.js.map +1 -0
  14. package/dist/cn.js +10 -6
  15. package/dist/cn.js.map +1 -0
  16. package/dist/collapse.js +76 -11
  17. package/dist/collapse.js.map +1 -0
  18. package/dist/drawer.js +69 -15
  19. package/dist/drawer.js.map +1 -0
  20. package/dist/dropdown.js +52 -11
  21. package/dist/dropdown.js.map +1 -0
  22. package/dist/index.d.ts +23 -15
  23. package/dist/index.js +13 -84
  24. package/dist/input.js +21 -9
  25. package/dist/input.js.map +1 -0
  26. package/dist/kbd.js +74 -8
  27. package/dist/kbd.js.map +1 -0
  28. package/dist/modal.js +34 -9
  29. package/dist/modal.js.map +1 -0
  30. package/dist/navbar.js +53 -13
  31. package/dist/navbar.js.map +1 -0
  32. package/dist/pagination.js +60 -7
  33. package/dist/pagination.js.map +1 -0
  34. package/dist/theme-controller.js +50 -7
  35. package/dist/theme-controller.js.map +1 -0
  36. package/dist/toggle.js +65 -9
  37. package/dist/toggle.js.map +1 -0
  38. package/dist/utils/cn.d.ts +2 -0
  39. package/dist/utils/types.d.ts +4 -0
  40. package/package.json +44 -109
  41. package/dist/breadcrumbs.cjs +0 -13
  42. package/dist/breadcrumbs.d.cts +0 -19
  43. package/dist/breadcrumbs.d.ts +0 -19
  44. package/dist/chunk-2DFF5NEL.cjs +0 -45
  45. package/dist/chunk-5SA5UPFQ.cjs +0 -66
  46. package/dist/chunk-5UVG5YY5.js +0 -49
  47. package/dist/chunk-6B7U7IWT.cjs +0 -53
  48. package/dist/chunk-BHHZBMD4.cjs +0 -101
  49. package/dist/chunk-CK4TY6B7.cjs +0 -89
  50. package/dist/chunk-CNOJNKZ2.js +0 -89
  51. package/dist/chunk-FQQILPIP.js +0 -133
  52. package/dist/chunk-GRADTONK.js +0 -45
  53. package/dist/chunk-HTH2UTCL.cjs +0 -49
  54. package/dist/chunk-MWJV72OM.cjs +0 -41
  55. package/dist/chunk-ND7BTYGG.js +0 -123
  56. package/dist/chunk-OGI5BHGM.js +0 -25
  57. package/dist/chunk-OO3HHTPV.cjs +0 -123
  58. package/dist/chunk-OTJGG73E.js +0 -101
  59. package/dist/chunk-PFRBA5BH.js +0 -66
  60. package/dist/chunk-QOGH6NKS.js +0 -45
  61. package/dist/chunk-RDRDPR67.cjs +0 -25
  62. package/dist/chunk-REZ4W4BZ.cjs +0 -92
  63. package/dist/chunk-RXFYKKNI.js +0 -53
  64. package/dist/chunk-SV4L2FGT.cjs +0 -133
  65. package/dist/chunk-SX6DOGUE.js +0 -41
  66. package/dist/chunk-TDFVUBGO.cjs +0 -45
  67. package/dist/chunk-WY6GLRTT.js +0 -92
  68. package/dist/cn.cjs +0 -6
  69. package/dist/cn.d.cts +0 -5
  70. package/dist/cn.d.ts +0 -5
  71. package/dist/collapse.cjs +0 -12
  72. package/dist/collapse.d.cts +0 -31
  73. package/dist/drawer.cjs +0 -16
  74. package/dist/drawer.d.cts +0 -44
  75. package/dist/drawer.d.ts +0 -44
  76. package/dist/dropdown.cjs +0 -12
  77. package/dist/dropdown.d.cts +0 -20
  78. package/dist/dropdown.d.ts +0 -20
  79. package/dist/index.cjs +0 -84
  80. package/dist/index.d.cts +0 -15
  81. package/dist/input.cjs +0 -10
  82. package/dist/input.d.cts +0 -17
  83. package/dist/input.d.ts +0 -17
  84. package/dist/kbd.cjs +0 -10
  85. package/dist/kbd.d.cts +0 -43
  86. package/dist/kbd.d.ts +0 -43
  87. package/dist/modal.cjs +0 -10
  88. package/dist/modal.d.cts +0 -17
  89. package/dist/modal.d.ts +0 -17
  90. package/dist/navbar.cjs +0 -13
  91. package/dist/navbar.d.cts +0 -36
  92. package/dist/navbar.d.ts +0 -36
  93. package/dist/pagination.cjs +0 -7
  94. package/dist/pagination.d.cts +0 -21
  95. package/dist/pagination.d.ts +0 -21
  96. package/dist/theme-controller.cjs +0 -8
  97. package/dist/theme-controller.d.cts +0 -21
  98. package/dist/theme-controller.d.ts +0 -21
  99. package/dist/toggle.cjs +0 -10
  100. package/dist/toggle.d.cts +0 -35
  101. package/dist/types-BZI5Cv8-.d.cts +0 -6
  102. package/dist/types-BZI5Cv8-.d.ts +0 -6
@@ -0,0 +1,4 @@
1
+ export type Size = "xs" | "sm" | "md" | "lg";
2
+ export type Color = "primary" | "secondary" | "accent" | "neutral" | "success" | "warning" | "info" | "error";
3
+ export type Side = "left" | "right";
4
+ export type Placement = "top" | "middle" | "bottom";
package/package.json CHANGED
@@ -1,141 +1,76 @@
1
1
  {
2
2
  "name": "@docubook/ui-react",
3
- "version": "2.0.0-beta.0",
3
+ "version": "2.0.0-beta.2",
4
4
  "description": "React + DaisyUI component library for documentation sites",
5
5
  "type": "module",
6
- "main": "./dist/index.cjs",
6
+ "main": "./dist/index.js",
7
7
  "module": "./dist/index.js",
8
8
  "types": "./dist/index.d.ts",
9
9
  "exports": {
10
10
  ".": {
11
- "import": {
12
- "types": "./dist/index.d.ts",
13
- "default": "./dist/index.js"
14
- },
15
- "require": {
16
- "types": "./dist/index.d.cts",
17
- "default": "./dist/index.cjs"
18
- }
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.js",
13
+ "default": "./dist/index.js"
19
14
  },
20
15
  "./cn": {
21
- "import": {
22
- "types": "./dist/cn.d.ts",
23
- "default": "./dist/cn.js"
24
- },
25
- "require": {
26
- "types": "./dist/cn.d.cts",
27
- "default": "./dist/cn.cjs"
28
- }
16
+ "types": "./dist/cn.d.ts",
17
+ "import": "./dist/cn.js",
18
+ "default": "./dist/cn.js"
29
19
  },
30
20
  "./input": {
31
- "import": {
32
- "types": "./dist/input.d.ts",
33
- "default": "./dist/input.js"
34
- },
35
- "require": {
36
- "types": "./dist/input.d.cts",
37
- "default": "./dist/input.cjs"
38
- }
21
+ "types": "./dist/input.d.ts",
22
+ "import": "./dist/input.js",
23
+ "default": "./dist/input.js"
39
24
  },
40
25
  "./kbd": {
41
- "import": {
42
- "types": "./dist/kbd.d.ts",
43
- "default": "./dist/kbd.js"
44
- },
45
- "require": {
46
- "types": "./dist/kbd.d.cts",
47
- "default": "./dist/kbd.cjs"
48
- }
26
+ "types": "./dist/kbd.d.ts",
27
+ "import": "./dist/kbd.js",
28
+ "default": "./dist/kbd.js"
49
29
  },
50
30
  "./toggle": {
51
- "import": {
52
- "types": "./dist/toggle.d.ts",
53
- "default": "./dist/toggle.js"
54
- },
55
- "require": {
56
- "types": "./dist/toggle.d.cts",
57
- "default": "./dist/toggle.cjs"
58
- }
31
+ "types": "./dist/toggle.d.ts",
32
+ "import": "./dist/toggle.js",
33
+ "default": "./dist/toggle.js"
59
34
  },
60
35
  "./dropdown": {
61
- "import": {
62
- "types": "./dist/dropdown.d.ts",
63
- "default": "./dist/dropdown.js"
64
- },
65
- "require": {
66
- "types": "./dist/dropdown.d.cts",
67
- "default": "./dist/dropdown.cjs"
68
- }
36
+ "types": "./dist/dropdown.d.ts",
37
+ "import": "./dist/dropdown.js",
38
+ "default": "./dist/dropdown.js"
69
39
  },
70
40
  "./modal": {
71
- "import": {
72
- "types": "./dist/modal.d.ts",
73
- "default": "./dist/modal.js"
74
- },
75
- "require": {
76
- "types": "./dist/modal.d.cts",
77
- "default": "./dist/modal.cjs"
78
- }
41
+ "types": "./dist/modal.d.ts",
42
+ "import": "./dist/modal.js",
43
+ "default": "./dist/modal.js"
79
44
  },
80
45
  "./drawer": {
81
- "import": {
82
- "types": "./dist/drawer.d.ts",
83
- "default": "./dist/drawer.js"
84
- },
85
- "require": {
86
- "types": "./dist/drawer.d.cts",
87
- "default": "./dist/drawer.cjs"
88
- }
46
+ "types": "./dist/drawer.d.ts",
47
+ "import": "./dist/drawer.js",
48
+ "default": "./dist/drawer.js"
89
49
  },
90
50
  "./collapse": {
91
- "import": {
92
- "types": "./dist/collapse.d.ts",
93
- "default": "./dist/collapse.js"
94
- },
95
- "require": {
96
- "types": "./dist/collapse.d.cts",
97
- "default": "./dist/collapse.cjs"
98
- }
51
+ "types": "./dist/collapse.d.ts",
52
+ "import": "./dist/collapse.js",
53
+ "default": "./dist/collapse.js"
99
54
  },
100
55
  "./theme-controller": {
101
- "import": {
102
- "types": "./dist/theme-controller.d.ts",
103
- "default": "./dist/theme-controller.js"
104
- },
105
- "require": {
106
- "types": "./dist/theme-controller.d.cts",
107
- "default": "./dist/theme-controller.cjs"
108
- }
56
+ "types": "./dist/theme-controller.d.ts",
57
+ "import": "./dist/theme-controller.js",
58
+ "default": "./dist/theme-controller.js"
109
59
  },
110
60
  "./navbar": {
111
- "import": {
112
- "types": "./dist/navbar.d.ts",
113
- "default": "./dist/navbar.js"
114
- },
115
- "require": {
116
- "types": "./dist/navbar.d.cts",
117
- "default": "./dist/navbar.cjs"
118
- }
61
+ "types": "./dist/navbar.d.ts",
62
+ "import": "./dist/navbar.js",
63
+ "default": "./dist/navbar.js"
119
64
  },
120
65
  "./breadcrumbs": {
121
- "import": {
122
- "types": "./dist/breadcrumbs.d.ts",
123
- "default": "./dist/breadcrumbs.js"
124
- },
125
- "require": {
126
- "types": "./dist/breadcrumbs.d.cts",
127
- "default": "./dist/breadcrumbs.cjs"
128
- }
66
+ "types": "./dist/breadcrumbs.d.ts",
67
+ "import": "./dist/breadcrumbs.js",
68
+ "default": "./dist/breadcrumbs.js"
129
69
  },
130
70
  "./pagination": {
131
- "import": {
132
- "types": "./dist/pagination.d.ts",
133
- "default": "./dist/pagination.js"
134
- },
135
- "require": {
136
- "types": "./dist/pagination.d.cts",
137
- "default": "./dist/pagination.cjs"
138
- }
71
+ "types": "./dist/pagination.d.ts",
72
+ "import": "./dist/pagination.js",
73
+ "default": "./dist/pagination.js"
139
74
  },
140
75
  "./styles.css": "./styles.css"
141
76
  },
@@ -163,7 +98,7 @@
163
98
  "jsdom": "^26.1.0",
164
99
  "react": "^19.2.0",
165
100
  "react-dom": "^19.2.0",
166
- "tsup": "^8.5.0",
101
+ "vite": "^8.2.1",
167
102
  "typescript": "^5.9.3"
168
103
  },
169
104
  "publishConfig": {
@@ -193,8 +128,8 @@
193
128
  "tailwind-merge": "^2.6.1"
194
129
  },
195
130
  "scripts": {
196
- "build": "tsup",
197
- "dev": "tsup --watch",
131
+ "build": "vite build && tsc -p tsconfig.build.json",
132
+ "dev": "vite build --watch",
198
133
  "typecheck": "tsc --noEmit",
199
134
  "lint": "eslint src --ext .ts,.tsx",
200
135
  "test": "vitest run",
@@ -1,13 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
-
4
-
5
-
6
- var _chunkRDRDPR67cjs = require('./chunk-RDRDPR67.cjs');
7
- require('./chunk-2DFF5NEL.cjs');
8
-
9
-
10
-
11
-
12
-
13
- exports.Breadcrumb = _chunkRDRDPR67cjs.Breadcrumb; exports.BreadcrumbItem = _chunkRDRDPR67cjs.BreadcrumbItem; exports.BreadcrumbList = _chunkRDRDPR67cjs.BreadcrumbList; exports.BreadcrumbPage = _chunkRDRDPR67cjs.BreadcrumbPage;
@@ -1,19 +0,0 @@
1
- import * as react from 'react';
2
- import { ReactNode } from 'react';
3
-
4
- interface BreadcrumbProps {
5
- children: ReactNode;
6
- className?: string;
7
- }
8
- interface BreadcrumbItemProps {
9
- children: ReactNode;
10
- className?: string;
11
- }
12
- declare function Breadcrumb({ children, className }: BreadcrumbProps): react.JSX.Element;
13
- declare function BreadcrumbItem({ children, className }: BreadcrumbItemProps): react.JSX.Element;
14
- declare function BreadcrumbPage({ children, className }: BreadcrumbItemProps): react.JSX.Element;
15
- declare function BreadcrumbList({ children }: {
16
- children: React.ReactNode;
17
- }): react.JSX.Element;
18
-
19
- export { Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbList, BreadcrumbPage, type BreadcrumbProps };
@@ -1,19 +0,0 @@
1
- import * as react from 'react';
2
- import { ReactNode } from 'react';
3
-
4
- interface BreadcrumbProps {
5
- children: ReactNode;
6
- className?: string;
7
- }
8
- interface BreadcrumbItemProps {
9
- children: ReactNode;
10
- className?: string;
11
- }
12
- declare function Breadcrumb({ children, className }: BreadcrumbProps): react.JSX.Element;
13
- declare function BreadcrumbItem({ children, className }: BreadcrumbItemProps): react.JSX.Element;
14
- declare function BreadcrumbPage({ children, className }: BreadcrumbItemProps): react.JSX.Element;
15
- declare function BreadcrumbList({ children }: {
16
- children: React.ReactNode;
17
- }): react.JSX.Element;
18
-
19
- export { Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbList, BreadcrumbPage, type BreadcrumbProps };
@@ -1,45 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var __defProp = Object.defineProperty;
2
- var __defProps = Object.defineProperties;
3
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
- var __spreadValues = (a, b) => {
9
- for (var prop in b || (b = {}))
10
- if (__hasOwnProp.call(b, prop))
11
- __defNormalProp(a, prop, b[prop]);
12
- if (__getOwnPropSymbols)
13
- for (var prop of __getOwnPropSymbols(b)) {
14
- if (__propIsEnum.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- }
17
- return a;
18
- };
19
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
- var __objRest = (source, exclude) => {
21
- var target = {};
22
- for (var prop in source)
23
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
- target[prop] = source[prop];
25
- if (source != null && __getOwnPropSymbols)
26
- for (var prop of __getOwnPropSymbols(source)) {
27
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
- target[prop] = source[prop];
29
- }
30
- return target;
31
- };
32
-
33
- // src/utils/cn.ts
34
- var _clsx = require('clsx');
35
- var _tailwindmerge = require('tailwind-merge');
36
- function cn(...inputs) {
37
- return _tailwindmerge.twMerge.call(void 0, _clsx.clsx.call(void 0, inputs));
38
- }
39
-
40
-
41
-
42
-
43
-
44
-
45
- exports.__spreadValues = __spreadValues; exports.__spreadProps = __spreadProps; exports.__objRest = __objRest; exports.cn = cn;
@@ -1,66 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
- var _chunk2DFF5NELcjs = require('./chunk-2DFF5NEL.cjs');
4
-
5
- // src/base/theme-controller.tsx
6
- var _react = require('react');
7
- var _jsxruntime = require('react/jsx-runtime');
8
- function applyTheme(theme) {
9
- if (typeof document !== "undefined") {
10
- document.documentElement.classList.toggle("dark", theme === "dark");
11
- }
12
- }
13
- function useApplyThemeOnMount(theme) {
14
- const applied = _react.useRef.call(void 0, false);
15
- _react.useEffect.call(void 0, () => {
16
- if (!applied.current) {
17
- applyTheme(theme);
18
- applied.current = true;
19
- }
20
- }, [theme]);
21
- }
22
- function ThemeControllerToggle({
23
- defaultTheme = "light",
24
- lightTheme = "light",
25
- darkTheme = "dark",
26
- onThemeChange,
27
- className,
28
- label,
29
- size = "md",
30
- children
31
- }) {
32
- const [checked, setChecked] = _react.useState.call(void 0, () => {
33
- if (typeof window === "undefined") return false;
34
- return (localStorage.getItem("theme") || defaultTheme) === darkTheme;
35
- });
36
- useApplyThemeOnMount(checked ? darkTheme : lightTheme);
37
- const handleChange = (newChecked) => {
38
- const newTheme = newChecked ? darkTheme : lightTheme;
39
- setChecked(newChecked);
40
- applyTheme(newTheme);
41
- localStorage.setItem("theme", newTheme);
42
- onThemeChange == null ? void 0 : onThemeChange(newTheme);
43
- };
44
- if (children) {
45
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className, children: children({ isDark: checked, checked, toggle: handleChange }) });
46
- }
47
- const toggleEl = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
48
- "input",
49
- {
50
- type: "checkbox",
51
- className: _chunk2DFF5NELcjs.cn.call(void 0, "toggle theme-controller", `toggle-${size}`),
52
- checked,
53
- value: darkTheme,
54
- onChange: (e) => handleChange(e.target.checked)
55
- }
56
- );
57
- if (!label) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className, children: toggleEl });
58
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "label", { className: _chunk2DFF5NELcjs.cn.call(void 0, "flex cursor-pointer items-center gap-3", className), children: [
59
- toggleEl,
60
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-base-content", children: label })
61
- ] });
62
- }
63
-
64
-
65
-
66
- exports.ThemeControllerToggle = ThemeControllerToggle;
@@ -1,49 +0,0 @@
1
- import {
2
- __objRest,
3
- __spreadProps,
4
- __spreadValues,
5
- cn
6
- } from "./chunk-GRADTONK.js";
7
-
8
- // src/base/modal.tsx
9
- import { forwardRef, useRef, useCallback } from "react";
10
- import { jsx, jsxs } from "react/jsx-runtime";
11
- var Modal = forwardRef(
12
- (_a, ref) => {
13
- var _b = _a, { children, className, closeOnBackdrop = true, placement, boxClassName } = _b, props = __objRest(_b, ["children", "className", "closeOnBackdrop", "placement", "boxClassName"]);
14
- return /* @__PURE__ */ jsxs(
15
- "dialog",
16
- __spreadProps(__spreadValues({
17
- ref,
18
- className: cn("modal", placement && `modal-${placement}`, className)
19
- }, props), {
20
- children: [
21
- /* @__PURE__ */ jsx("div", { className: cn("modal-box", boxClassName), children }),
22
- closeOnBackdrop && /* @__PURE__ */ jsx("form", { method: "dialog", className: "modal-backdrop", children: /* @__PURE__ */ jsx("button", { children: "esc" }) })
23
- ]
24
- })
25
- );
26
- }
27
- );
28
- Modal.displayName = "Modal";
29
- function useModal() {
30
- const ref = useRef(null);
31
- const open = useCallback(() => {
32
- var _a;
33
- (_a = ref.current) == null ? void 0 : _a.showModal();
34
- setTimeout(() => {
35
- var _a2, _b;
36
- (_b = (_a2 = ref.current) == null ? void 0 : _a2.querySelector("input, [autofocus]")) == null ? void 0 : _b.focus();
37
- }, 0);
38
- }, []);
39
- const close = useCallback(() => {
40
- var _a;
41
- return (_a = ref.current) == null ? void 0 : _a.close();
42
- }, []);
43
- return { ref, open, close };
44
- }
45
-
46
- export {
47
- Modal,
48
- useModal
49
- };
@@ -1,53 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
- var _chunk2DFF5NELcjs = require('./chunk-2DFF5NEL.cjs');
4
-
5
- // src/base/navbar.tsx
6
- var _jsxruntime = require('react/jsx-runtime');
7
- function Navbar({ id, children, className, style }) {
8
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "nav", { id, className: _chunk2DFF5NELcjs.cn.call(void 0, "navbar", className), style, children });
9
- }
10
- function Logo({ src, alt, text, href = "/", className }) {
11
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, className: _chunk2DFF5NELcjs.cn.call(void 0, "flex items-center gap-2", className), children: [
12
- src ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src, alt: alt || text || "Logo", className: "h-8 w-8" }) : null,
13
- text && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xl font-bold", children: text })
14
- ] });
15
- }
16
- function NavMenu({ items, activePath, className }) {
17
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ul", { className: _chunk2DFF5NELcjs.cn.call(void 0, "menu menu-horizontal gap-1", className), children: items.map((item) => {
18
- const isActive = activePath ? item.href === "/" ? activePath === "/" : activePath === item.href || activePath.startsWith(item.href + "/") : false;
19
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "li", { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
20
- "a",
21
- {
22
- href: item.href,
23
- className: _chunk2DFF5NELcjs.cn.call(void 0, isActive && "active"),
24
- target: item.isExternal ? "_blank" : void 0,
25
- rel: item.isExternal ? "noopener noreferrer" : void 0,
26
- children: item.title
27
- }
28
- ) }, item.href);
29
- }) });
30
- }
31
- function NavMenuLink({
32
- item,
33
- isActive,
34
- className
35
- }) {
36
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37
- "a",
38
- {
39
- href: item.href,
40
- className: _chunk2DFF5NELcjs.cn.call(void 0, isActive && "active", className),
41
- target: item.isExternal ? "_blank" : void 0,
42
- rel: item.isExternal ? "noopener noreferrer" : void 0,
43
- children: item.title
44
- }
45
- );
46
- }
47
-
48
-
49
-
50
-
51
-
52
-
53
- exports.Navbar = Navbar; exports.Logo = Logo; exports.NavMenu = NavMenu; exports.NavMenuLink = NavMenuLink;
@@ -1,101 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
- var _chunk2DFF5NELcjs = require('./chunk-2DFF5NEL.cjs');
4
-
5
- // src/base/drawer.tsx
6
- var _react = require('react');
7
- var _jsxruntime = require('react/jsx-runtime');
8
- function Drawer({
9
- id,
10
- children,
11
- defaultOpen = false,
12
- side = "left",
13
- breakpoint = "lg",
14
- withOverlay = true,
15
- overlayClassName,
16
- sideClassName,
17
- contentClassName,
18
- className
19
- }) {
20
- const [isOpen, setIsOpen] = _react.useState.call(void 0, defaultOpen);
21
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
22
- "div",
23
- {
24
- className: _chunk2DFF5NELcjs.cn.call(void 0,
25
- "drawer",
26
- breakpoint && `${breakpoint}:drawer-open`,
27
- side === "right" && "drawer-end",
28
- className
29
- ),
30
- children: [
31
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32
- "input",
33
- {
34
- id,
35
- type: "checkbox",
36
- className: "drawer-toggle",
37
- checked: isOpen,
38
- onChange: () => setIsOpen(!isOpen),
39
- "aria-label": "Toggle drawer"
40
- }
41
- ),
42
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk2DFF5NELcjs.cn.call(void 0, "drawer-content flex flex-col", contentClassName), children }),
43
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk2DFF5NELcjs.cn.call(void 0, "drawer-side", sideClassName), children: withOverlay && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44
- "label",
45
- {
46
- htmlFor: id,
47
- "aria-label": "Close sidebar",
48
- className: _chunk2DFF5NELcjs.cn.call(void 0, "drawer-overlay", overlayClassName),
49
- onClick: () => setIsOpen(false)
50
- }
51
- ) })
52
- ]
53
- }
54
- );
55
- }
56
- function useDrawerState(initialState = false) {
57
- const [isOpen, setIsOpen] = _react.useState.call(void 0, initialState);
58
- return {
59
- isOpen,
60
- open: () => setIsOpen(true),
61
- close: () => setIsOpen(false),
62
- toggle: () => setIsOpen((prev) => !prev)
63
- };
64
- }
65
- function DrawerTrigger({ drawerId, children, className }) {
66
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "label", { htmlFor: drawerId, className: _chunk2DFF5NELcjs.cn.call(void 0, "label cursor-pointer", className), children });
67
- }
68
- function DrawerSidePanel({
69
- id,
70
- children,
71
- side = "left",
72
- withOverlay = true,
73
- overlayClassName,
74
- className
75
- }) {
76
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk2DFF5NELcjs.cn.call(void 0, "drawer-side", side === "right" && "drawer-end", className), children: [
77
- withOverlay && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
78
- "label",
79
- {
80
- htmlFor: id,
81
- "aria-label": "Close sidebar",
82
- className: _chunk2DFF5NELcjs.cn.call(void 0, "drawer-overlay", overlayClassName)
83
- }
84
- ),
85
- children
86
- ] });
87
- }
88
- function DrawerContent({
89
- children,
90
- className
91
- }) {
92
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk2DFF5NELcjs.cn.call(void 0, "drawer-content", className), children });
93
- }
94
-
95
-
96
-
97
-
98
-
99
-
100
-
101
- exports.Drawer = Drawer; exports.useDrawerState = useDrawerState; exports.DrawerTrigger = DrawerTrigger; exports.DrawerSidePanel = DrawerSidePanel; exports.DrawerContent = DrawerContent;
@@ -1,89 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
-
4
-
5
-
6
- var _chunk2DFF5NELcjs = require('./chunk-2DFF5NEL.cjs');
7
-
8
- // src/base/dropdown.tsx
9
- var _react = require('react');
10
- var _jsxruntime = require('react/jsx-runtime');
11
- var Dropdown = _react.forwardRef.call(void 0,
12
- (_a, ref) => {
13
- var _b = _a, { className, align = "start", disabled = false, trigger, children, menuClassName } = _b, props = _chunk2DFF5NELcjs.__objRest.call(void 0, _b, ["className", "align", "disabled", "trigger", "children", "menuClassName"]);
14
- const detailsRef = _react.useRef.call(void 0, null);
15
- _react.useEffect.call(void 0, () => {
16
- const handler = (e) => {
17
- if (detailsRef.current && !detailsRef.current.contains(e.target)) {
18
- detailsRef.current.open = false;
19
- }
20
- };
21
- document.addEventListener("click", handler);
22
- return () => document.removeEventListener("click", handler);
23
- }, []);
24
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
25
- "details",
26
- _chunk2DFF5NELcjs.__spreadProps.call(void 0, _chunk2DFF5NELcjs.__spreadValues.call(void 0, {
27
- ref: (el) => {
28
- detailsRef.current = el;
29
- if (typeof ref === "function") ref(el);
30
- else if (ref) ref.current = el;
31
- },
32
- className: _chunk2DFF5NELcjs.cn.call(void 0, "relative", disabled && "pointer-events-none opacity-50", className)
33
- }, props), {
34
- children: [
35
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "summary", { className: "cursor-pointer", style: { listStyle: "none" }, children: trigger }),
36
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37
- "ul",
38
- {
39
- className: _chunk2DFF5NELcjs.cn.call(void 0,
40
- "bg-base-100 rounded-box border-base-300 absolute z-50 mt-1 min-w-[240px] space-y-1 border p-2 shadow-lg",
41
- align === "end" ? "right-0" : "left-0",
42
- menuClassName
43
- ),
44
- children
45
- }
46
- )
47
- ]
48
- })
49
- );
50
- }
51
- );
52
- Dropdown.displayName = "Dropdown";
53
- var DropdownItem = _react.forwardRef.call(void 0,
54
- (_a, ref) => {
55
- var _b = _a, { className, children } = _b, props = _chunk2DFF5NELcjs.__objRest.call(void 0, _b, ["className", "children"]);
56
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
57
- "li",
58
- _chunk2DFF5NELcjs.__spreadProps.call(void 0, _chunk2DFF5NELcjs.__spreadValues.call(void 0, {
59
- ref,
60
- className: _chunk2DFF5NELcjs.cn.call(void 0,
61
- "hover:bg-base-200 text-base-content/80 hover:text-base-content relative flex cursor-pointer items-center gap-2 rounded px-2 py-2 text-sm transition-colors outline-none",
62
- className
63
- ),
64
- role: "menuitem"
65
- }, props), {
66
- children
67
- })
68
- );
69
- }
70
- );
71
- DropdownItem.displayName = "DropdownItem";
72
- var DropdownLink = _react.forwardRef.call(void 0, (_a, ref) => {
73
- var _b = _a, { className, children, href } = _b, props = _chunk2DFF5NELcjs.__objRest.call(void 0, _b, ["className", "children", "href"]);
74
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
75
- "li",
76
- {
77
- role: "menuitem",
78
- className: "hover:bg-base-200 text-base-content/80 hover:text-base-content relative flex cursor-pointer items-center gap-2 rounded px-2 py-2 text-sm transition-colors outline-none",
79
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "a", _chunk2DFF5NELcjs.__spreadProps.call(void 0, _chunk2DFF5NELcjs.__spreadValues.call(void 0, { ref, href, className: _chunk2DFF5NELcjs.cn.call(void 0, "text-inherit no-underline", className) }, props), { children }))
80
- }
81
- );
82
- });
83
- DropdownLink.displayName = "DropdownLink";
84
-
85
-
86
-
87
-
88
-
89
- exports.Dropdown = Dropdown; exports.DropdownItem = DropdownItem; exports.DropdownLink = DropdownLink;