@c-rex/ui 0.0.11 → 0.0.13
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/package.json +34 -54
- package/src/alert.tsx +58 -0
- package/src/breadcrumb.tsx +115 -0
- package/src/button.tsx +66 -0
- package/src/command.tsx +151 -0
- package/src/dialog.tsx +122 -0
- package/src/hooks/use-mobile.tsx +19 -0
- package/src/input.tsx +22 -0
- package/src/popover.tsx +31 -0
- package/src/select.tsx +157 -0
- package/src/separator.tsx +29 -0
- package/src/sheet.tsx +140 -0
- package/src/sidebar.tsx +785 -0
- package/src/skeleton.tsx +15 -0
- package/src/table.tsx +120 -0
- package/src/tooltip.tsx +30 -0
- package/dist/alert.cjs.js +0 -197
- package/dist/alert.cjs.js.map +0 -1
- package/dist/alert.d.cts +0 -11
- package/dist/alert.d.ts +0 -11
- package/dist/alert.esm.js +0 -116
- package/dist/alert.esm.js.map +0 -1
- package/dist/breadcrumb.cjs.js +0 -299
- package/dist/breadcrumb.cjs.js.map +0 -1
- package/dist/breadcrumb.d.cts +0 -22
- package/dist/breadcrumb.d.ts +0 -22
- package/dist/breadcrumb.esm.js +0 -202
- package/dist/breadcrumb.esm.js.map +0 -1
- package/dist/button.cjs.js +0 -200
- package/dist/button.cjs.js.map +0 -1
- package/dist/button.d.cts +0 -15
- package/dist/button.d.ts +0 -15
- package/dist/button.esm.js +0 -123
- package/dist/button.esm.js.map +0 -1
- package/dist/command.cjs.js +0 -387
- package/dist/command.cjs.js.map +0 -1
- package/dist/command.d.cts +0 -83
- package/dist/command.d.ts +0 -83
- package/dist/command.esm.js +0 -282
- package/dist/command.esm.js.map +0 -1
- package/dist/dialog.cjs.js +0 -290
- package/dist/dialog.cjs.js.map +0 -1
- package/dist/dialog.d.cts +0 -22
- package/dist/dialog.d.ts +0 -22
- package/dist/dialog.esm.js +0 -181
- package/dist/dialog.esm.js.map +0 -1
- package/dist/hooks/use-mobile.cjs.js +0 -127
- package/dist/hooks/use-mobile.cjs.js.map +0 -1
- package/dist/hooks/use-mobile.d.cts +0 -3
- package/dist/hooks/use-mobile.d.ts +0 -3
- package/dist/hooks/use-mobile.esm.js +0 -66
- package/dist/hooks/use-mobile.esm.js.map +0 -1
- package/dist/input.cjs.js +0 -155
- package/dist/input.cjs.js.map +0 -1
- package/dist/input.d.cts +0 -5
- package/dist/input.d.ts +0 -5
- package/dist/input.esm.js +0 -82
- package/dist/input.esm.js.map +0 -1
- package/dist/popover.cjs.js +0 -175
- package/dist/popover.cjs.js.map +0 -1
- package/dist/popover.d.cts +0 -9
- package/dist/popover.d.ts +0 -9
- package/dist/popover.esm.js +0 -90
- package/dist/popover.esm.js.map +0 -1
- package/dist/select.cjs.js +0 -326
- package/dist/select.cjs.js.map +0 -1
- package/dist/select.d.cts +0 -15
- package/dist/select.d.ts +0 -15
- package/dist/select.esm.js +0 -217
- package/dist/select.esm.js.map +0 -1
- package/dist/separator.cjs.js +0 -158
- package/dist/separator.cjs.js.map +0 -1
- package/dist/separator.d.cts +0 -6
- package/dist/separator.d.ts +0 -6
- package/dist/separator.esm.js +0 -85
- package/dist/separator.esm.js.map +0 -1
- package/dist/sheet.cjs.js +0 -308
- package/dist/sheet.cjs.js.map +0 -1
- package/dist/sheet.d.cts +0 -29
- package/dist/sheet.d.ts +0 -29
- package/dist/sheet.esm.js +0 -199
- package/dist/sheet.esm.js.map +0 -1
- package/dist/sidebar.cjs.js +0 -1077
- package/dist/sidebar.cjs.js.map +0 -1
- package/dist/sidebar.d.cts +0 -72
- package/dist/sidebar.d.ts +0 -72
- package/dist/sidebar.esm.js +0 -912
- package/dist/sidebar.esm.js.map +0 -1
- package/dist/skeleton.cjs.js +0 -138
- package/dist/skeleton.cjs.js.map +0 -1
- package/dist/skeleton.d.cts +0 -5
- package/dist/skeleton.d.ts +0 -5
- package/dist/skeleton.esm.js +0 -76
- package/dist/skeleton.esm.js.map +0 -1
- package/dist/table.cjs.js +0 -254
- package/dist/table.cjs.js.map +0 -1
- package/dist/table.d.cts +0 -12
- package/dist/table.d.ts +0 -12
- package/dist/table.esm.js +0 -153
- package/dist/table.esm.js.map +0 -1
- package/dist/tooltip.cjs.js +0 -173
- package/dist/tooltip.cjs.js.map +0 -1
- package/dist/tooltip.d.cts +0 -9
- package/dist/tooltip.d.ts +0 -9
- package/dist/tooltip.esm.js +0 -88
- package/dist/tooltip.esm.js.map +0 -1
package/dist/sidebar.esm.js
DELETED
|
@@ -1,912 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
function _array_like_to_array(arr, len) {
|
|
3
|
-
if (len == null || len > arr.length) len = arr.length;
|
|
4
|
-
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
5
|
-
return arr2;
|
|
6
|
-
}
|
|
7
|
-
function _array_with_holes(arr) {
|
|
8
|
-
if (Array.isArray(arr)) return arr;
|
|
9
|
-
}
|
|
10
|
-
function _define_property(obj, key, value) {
|
|
11
|
-
if (key in obj) {
|
|
12
|
-
Object.defineProperty(obj, key, {
|
|
13
|
-
value: value,
|
|
14
|
-
enumerable: true,
|
|
15
|
-
configurable: true,
|
|
16
|
-
writable: true
|
|
17
|
-
});
|
|
18
|
-
} else {
|
|
19
|
-
obj[key] = value;
|
|
20
|
-
}
|
|
21
|
-
return obj;
|
|
22
|
-
}
|
|
23
|
-
function _extends() {
|
|
24
|
-
_extends = Object.assign || function(target) {
|
|
25
|
-
for(var i = 1; i < arguments.length; i++){
|
|
26
|
-
var source = arguments[i];
|
|
27
|
-
for(var key in source){
|
|
28
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
29
|
-
target[key] = source[key];
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
return target;
|
|
34
|
-
};
|
|
35
|
-
return _extends.apply(this, arguments);
|
|
36
|
-
}
|
|
37
|
-
function _iterable_to_array_limit(arr, i) {
|
|
38
|
-
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
39
|
-
if (_i == null) return;
|
|
40
|
-
var _arr = [];
|
|
41
|
-
var _n = true;
|
|
42
|
-
var _d = false;
|
|
43
|
-
var _s, _e;
|
|
44
|
-
try {
|
|
45
|
-
for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
|
|
46
|
-
_arr.push(_s.value);
|
|
47
|
-
if (i && _arr.length === i) break;
|
|
48
|
-
}
|
|
49
|
-
} catch (err) {
|
|
50
|
-
_d = true;
|
|
51
|
-
_e = err;
|
|
52
|
-
} finally{
|
|
53
|
-
try {
|
|
54
|
-
if (!_n && _i["return"] != null) _i["return"]();
|
|
55
|
-
} finally{
|
|
56
|
-
if (_d) throw _e;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
return _arr;
|
|
60
|
-
}
|
|
61
|
-
function _non_iterable_rest() {
|
|
62
|
-
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
63
|
-
}
|
|
64
|
-
function _object_destructuring_empty(o) {
|
|
65
|
-
if (o === null || o === void 0) throw new TypeError("Cannot destructure " + o);
|
|
66
|
-
return o;
|
|
67
|
-
}
|
|
68
|
-
function _object_spread(target) {
|
|
69
|
-
for(var i = 1; i < arguments.length; i++){
|
|
70
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
|
71
|
-
var ownKeys = Object.keys(source);
|
|
72
|
-
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
73
|
-
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
74
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
75
|
-
}));
|
|
76
|
-
}
|
|
77
|
-
ownKeys.forEach(function(key) {
|
|
78
|
-
_define_property(target, key, source[key]);
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
return target;
|
|
82
|
-
}
|
|
83
|
-
function ownKeys(object, enumerableOnly) {
|
|
84
|
-
var keys = Object.keys(object);
|
|
85
|
-
if (Object.getOwnPropertySymbols) {
|
|
86
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
87
|
-
if (enumerableOnly) {
|
|
88
|
-
symbols = symbols.filter(function(sym) {
|
|
89
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
keys.push.apply(keys, symbols);
|
|
93
|
-
}
|
|
94
|
-
return keys;
|
|
95
|
-
}
|
|
96
|
-
function _object_spread_props(target, source) {
|
|
97
|
-
source = source != null ? source : {};
|
|
98
|
-
if (Object.getOwnPropertyDescriptors) {
|
|
99
|
-
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
100
|
-
} else {
|
|
101
|
-
ownKeys(Object(source)).forEach(function(key) {
|
|
102
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
return target;
|
|
106
|
-
}
|
|
107
|
-
function _object_without_properties(source, excluded) {
|
|
108
|
-
if (source == null) return {};
|
|
109
|
-
var target = _object_without_properties_loose(source, excluded);
|
|
110
|
-
var key, i;
|
|
111
|
-
if (Object.getOwnPropertySymbols) {
|
|
112
|
-
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
|
|
113
|
-
for(i = 0; i < sourceSymbolKeys.length; i++){
|
|
114
|
-
key = sourceSymbolKeys[i];
|
|
115
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
116
|
-
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
117
|
-
target[key] = source[key];
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
return target;
|
|
121
|
-
}
|
|
122
|
-
function _object_without_properties_loose(source, excluded) {
|
|
123
|
-
if (source == null) return {};
|
|
124
|
-
var target = {};
|
|
125
|
-
var sourceKeys = Object.keys(source);
|
|
126
|
-
var key, i;
|
|
127
|
-
for(i = 0; i < sourceKeys.length; i++){
|
|
128
|
-
key = sourceKeys[i];
|
|
129
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
130
|
-
target[key] = source[key];
|
|
131
|
-
}
|
|
132
|
-
return target;
|
|
133
|
-
}
|
|
134
|
-
function _sliced_to_array(arr, i) {
|
|
135
|
-
return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
|
|
136
|
-
}
|
|
137
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
138
|
-
if (!o) return;
|
|
139
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
140
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
141
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
142
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
143
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
144
|
-
}
|
|
145
|
-
// src/sidebar.tsx
|
|
146
|
-
import * as React6 from "react";
|
|
147
|
-
import { Slot as Slot2 } from "@radix-ui/react-slot";
|
|
148
|
-
import { cva as cva3 } from "class-variance-authority";
|
|
149
|
-
import { PanelLeft } from "lucide-react";
|
|
150
|
-
// ../utils/src/classMerge.ts
|
|
151
|
-
import { clsx } from "clsx";
|
|
152
|
-
import { twMerge } from "tailwind-merge";
|
|
153
|
-
function cn() {
|
|
154
|
-
for(var _len = arguments.length, inputs = new Array(_len), _key = 0; _key < _len; _key++){
|
|
155
|
-
inputs[_key] = arguments[_key];
|
|
156
|
-
}
|
|
157
|
-
return twMerge(clsx(inputs));
|
|
158
|
-
}
|
|
159
|
-
// src/hooks/use-mobile.tsx
|
|
160
|
-
import { useEffect, useState } from "react";
|
|
161
|
-
var MOBILE_BREAKPOINT = 768;
|
|
162
|
-
function useIsMobile() {
|
|
163
|
-
var _useState = _sliced_to_array(useState(void 0), 2), isMobile = _useState[0], setIsMobile = _useState[1];
|
|
164
|
-
useEffect(function() {
|
|
165
|
-
var mql = window.matchMedia("(max-width: ".concat(MOBILE_BREAKPOINT - 1, "px)"));
|
|
166
|
-
var onChange = function() {
|
|
167
|
-
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
168
|
-
};
|
|
169
|
-
mql.addEventListener("change", onChange);
|
|
170
|
-
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
171
|
-
return function() {
|
|
172
|
-
return mql.removeEventListener("change", onChange);
|
|
173
|
-
};
|
|
174
|
-
}, []);
|
|
175
|
-
return !!isMobile;
|
|
176
|
-
}
|
|
177
|
-
// src/button.tsx
|
|
178
|
-
import * as React from "react";
|
|
179
|
-
import { Slot } from "@radix-ui/react-slot";
|
|
180
|
-
import { cva } from "class-variance-authority";
|
|
181
|
-
import { jsx } from "react/jsx-runtime";
|
|
182
|
-
var buttonVariants = cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", {
|
|
183
|
-
variants: {
|
|
184
|
-
variant: {
|
|
185
|
-
default: "bg-primary text-primary-foreground shadow hover:bg-primary/90",
|
|
186
|
-
destructive: "bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
|
|
187
|
-
outline: "border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",
|
|
188
|
-
secondary: "bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",
|
|
189
|
-
ghost: "hover:bg-accent hover:text-accent-foreground",
|
|
190
|
-
link: "text-primary underline-offset-4 hover:underline"
|
|
191
|
-
},
|
|
192
|
-
size: {
|
|
193
|
-
default: "h-9 px-4 py-2",
|
|
194
|
-
sm: "h-8 rounded-md px-3 text-xs",
|
|
195
|
-
lg: "h-10 rounded-md px-8",
|
|
196
|
-
icon: "h-9 w-9"
|
|
197
|
-
},
|
|
198
|
-
rounded: {
|
|
199
|
-
default: "rounded-md",
|
|
200
|
-
sm: "rounded-sm",
|
|
201
|
-
lg: "rounded-lg",
|
|
202
|
-
xl: "rounded-xl",
|
|
203
|
-
"2xl": "rounded-2xl",
|
|
204
|
-
full: "rounded-full"
|
|
205
|
-
}
|
|
206
|
-
},
|
|
207
|
-
defaultVariants: {
|
|
208
|
-
variant: "default",
|
|
209
|
-
size: "default",
|
|
210
|
-
rounded: "default"
|
|
211
|
-
}
|
|
212
|
-
});
|
|
213
|
-
var Button = React.forwardRef(function(_param, ref) {
|
|
214
|
-
var className = _param.className, variant = _param.variant, size = _param.size, rounded = _param.rounded, _param_asChild = _param.asChild, asChild = _param_asChild === void 0 ? false : _param_asChild, props = _object_without_properties(_param, [
|
|
215
|
-
"className",
|
|
216
|
-
"variant",
|
|
217
|
-
"size",
|
|
218
|
-
"rounded",
|
|
219
|
-
"asChild"
|
|
220
|
-
]);
|
|
221
|
-
var Comp = asChild ? Slot : "button";
|
|
222
|
-
return /* @__PURE__ */ jsx(Comp, _object_spread({
|
|
223
|
-
className: cn(buttonVariants({
|
|
224
|
-
variant: variant,
|
|
225
|
-
size: size,
|
|
226
|
-
rounded: rounded,
|
|
227
|
-
className: className
|
|
228
|
-
})),
|
|
229
|
-
ref: ref
|
|
230
|
-
}, props));
|
|
231
|
-
});
|
|
232
|
-
Button.displayName = "Button";
|
|
233
|
-
// src/input.tsx
|
|
234
|
-
import * as React2 from "react";
|
|
235
|
-
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
236
|
-
var Input = React2.forwardRef(function(_param, ref) {
|
|
237
|
-
var className = _param.className, type = _param.type, props = _object_without_properties(_param, [
|
|
238
|
-
"className",
|
|
239
|
-
"type"
|
|
240
|
-
]);
|
|
241
|
-
return /* @__PURE__ */ jsx2("input", _object_spread({
|
|
242
|
-
type: type,
|
|
243
|
-
className: cn("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", className),
|
|
244
|
-
ref: ref
|
|
245
|
-
}, props));
|
|
246
|
-
});
|
|
247
|
-
Input.displayName = "Input";
|
|
248
|
-
// src/separator.tsx
|
|
249
|
-
import * as React3 from "react";
|
|
250
|
-
import * as SeparatorPrimitive from "@radix-ui/react-separator";
|
|
251
|
-
import { jsx as jsx3 } from "react/jsx-runtime";
|
|
252
|
-
var Separator = React3.forwardRef(function(_param, ref) {
|
|
253
|
-
var className = _param.className, _param_orientation = _param.orientation, orientation = _param_orientation === void 0 ? "horizontal" : _param_orientation, _param_decorative = _param.decorative, decorative = _param_decorative === void 0 ? true : _param_decorative, props = _object_without_properties(_param, [
|
|
254
|
-
"className",
|
|
255
|
-
"orientation",
|
|
256
|
-
"decorative"
|
|
257
|
-
]);
|
|
258
|
-
return /* @__PURE__ */ jsx3(SeparatorPrimitive.Root, _object_spread({
|
|
259
|
-
ref: ref,
|
|
260
|
-
decorative: decorative,
|
|
261
|
-
orientation: orientation,
|
|
262
|
-
className: cn("shrink-0 bg-border", orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]", className)
|
|
263
|
-
}, props));
|
|
264
|
-
});
|
|
265
|
-
Separator.displayName = SeparatorPrimitive.Root.displayName;
|
|
266
|
-
// src/sheet.tsx
|
|
267
|
-
import * as React4 from "react";
|
|
268
|
-
import * as SheetPrimitive from "@radix-ui/react-dialog";
|
|
269
|
-
import { cva as cva2 } from "class-variance-authority";
|
|
270
|
-
import { X } from "lucide-react";
|
|
271
|
-
import { jsx as jsx4, jsxs } from "react/jsx-runtime";
|
|
272
|
-
var Sheet = SheetPrimitive.Root;
|
|
273
|
-
var SheetPortal = SheetPrimitive.Portal;
|
|
274
|
-
var SheetOverlay = React4.forwardRef(function(_param, ref) {
|
|
275
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
276
|
-
"className"
|
|
277
|
-
]);
|
|
278
|
-
return /* @__PURE__ */ jsx4(SheetPrimitive.Overlay, _object_spread_props(_object_spread({
|
|
279
|
-
className: cn("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", className)
|
|
280
|
-
}, props), {
|
|
281
|
-
ref: ref
|
|
282
|
-
}));
|
|
283
|
-
});
|
|
284
|
-
SheetOverlay.displayName = SheetPrimitive.Overlay.displayName;
|
|
285
|
-
var sheetVariants = cva2("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=open]:animate-in data-[state=closed]:animate-out", {
|
|
286
|
-
variants: {
|
|
287
|
-
side: {
|
|
288
|
-
top: "inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
|
|
289
|
-
bottom: "inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
|
|
290
|
-
left: "inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",
|
|
291
|
-
right: "inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"
|
|
292
|
-
}
|
|
293
|
-
},
|
|
294
|
-
defaultVariants: {
|
|
295
|
-
side: "right"
|
|
296
|
-
}
|
|
297
|
-
});
|
|
298
|
-
var SheetContent = React4.forwardRef(function(_param, ref) {
|
|
299
|
-
var _param_side = _param.side, side = _param_side === void 0 ? "right" : _param_side, className = _param.className, children = _param.children, props = _object_without_properties(_param, [
|
|
300
|
-
"side",
|
|
301
|
-
"className",
|
|
302
|
-
"children"
|
|
303
|
-
]);
|
|
304
|
-
return /* @__PURE__ */ jsxs(SheetPortal, {
|
|
305
|
-
children: [
|
|
306
|
-
/* @__PURE__ */ jsx4(SheetOverlay, {}),
|
|
307
|
-
/* @__PURE__ */ jsxs(SheetPrimitive.Content, _object_spread_props(_object_spread({
|
|
308
|
-
ref: ref,
|
|
309
|
-
className: cn(sheetVariants({
|
|
310
|
-
side: side
|
|
311
|
-
}), className)
|
|
312
|
-
}, props), {
|
|
313
|
-
children: [
|
|
314
|
-
/* @__PURE__ */ jsxs(SheetPrimitive.Close, {
|
|
315
|
-
className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",
|
|
316
|
-
children: [
|
|
317
|
-
/* @__PURE__ */ jsx4(X, {
|
|
318
|
-
className: "h-4 w-4"
|
|
319
|
-
}),
|
|
320
|
-
/* @__PURE__ */ jsx4("span", {
|
|
321
|
-
className: "sr-only",
|
|
322
|
-
children: "Close"
|
|
323
|
-
})
|
|
324
|
-
]
|
|
325
|
-
}),
|
|
326
|
-
children
|
|
327
|
-
]
|
|
328
|
-
}))
|
|
329
|
-
]
|
|
330
|
-
});
|
|
331
|
-
});
|
|
332
|
-
SheetContent.displayName = SheetPrimitive.Content.displayName;
|
|
333
|
-
var SheetHeader = function(_param) {
|
|
334
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
335
|
-
"className"
|
|
336
|
-
]);
|
|
337
|
-
return /* @__PURE__ */ jsx4("div", _object_spread({
|
|
338
|
-
className: cn("flex flex-col space-y-2 text-center sm:text-left", className)
|
|
339
|
-
}, props));
|
|
340
|
-
};
|
|
341
|
-
SheetHeader.displayName = "SheetHeader";
|
|
342
|
-
var SheetFooter = function(_param) {
|
|
343
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
344
|
-
"className"
|
|
345
|
-
]);
|
|
346
|
-
return /* @__PURE__ */ jsx4("div", _object_spread({
|
|
347
|
-
className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className)
|
|
348
|
-
}, props));
|
|
349
|
-
};
|
|
350
|
-
SheetFooter.displayName = "SheetFooter";
|
|
351
|
-
var SheetTitle = React4.forwardRef(function(_param, ref) {
|
|
352
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
353
|
-
"className"
|
|
354
|
-
]);
|
|
355
|
-
return /* @__PURE__ */ jsx4(SheetPrimitive.Title, _object_spread({
|
|
356
|
-
ref: ref,
|
|
357
|
-
className: cn("text-lg font-semibold text-foreground", className)
|
|
358
|
-
}, props));
|
|
359
|
-
});
|
|
360
|
-
SheetTitle.displayName = SheetPrimitive.Title.displayName;
|
|
361
|
-
var SheetDescription = React4.forwardRef(function(_param, ref) {
|
|
362
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
363
|
-
"className"
|
|
364
|
-
]);
|
|
365
|
-
return /* @__PURE__ */ jsx4(SheetPrimitive.Description, _object_spread({
|
|
366
|
-
ref: ref,
|
|
367
|
-
className: cn("text-sm text-muted-foreground", className)
|
|
368
|
-
}, props));
|
|
369
|
-
});
|
|
370
|
-
SheetDescription.displayName = SheetPrimitive.Description.displayName;
|
|
371
|
-
// src/skeleton.tsx
|
|
372
|
-
import { jsx as jsx5 } from "react/jsx-runtime";
|
|
373
|
-
function Skeleton(_param) {
|
|
374
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
375
|
-
"className"
|
|
376
|
-
]);
|
|
377
|
-
return /* @__PURE__ */ jsx5("div", _object_spread({
|
|
378
|
-
className: cn("animate-pulse rounded-md bg-primary/10", className)
|
|
379
|
-
}, props));
|
|
380
|
-
}
|
|
381
|
-
// src/tooltip.tsx
|
|
382
|
-
import * as React5 from "react";
|
|
383
|
-
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
|
384
|
-
import { jsx as jsx6 } from "react/jsx-runtime";
|
|
385
|
-
var TooltipProvider = TooltipPrimitive.Provider;
|
|
386
|
-
var Tooltip = TooltipPrimitive.Root;
|
|
387
|
-
var TooltipTrigger = TooltipPrimitive.Trigger;
|
|
388
|
-
var TooltipContent = React5.forwardRef(function(_param, ref) {
|
|
389
|
-
var className = _param.className, _param_sideOffset = _param.sideOffset, sideOffset = _param_sideOffset === void 0 ? 4 : _param_sideOffset, props = _object_without_properties(_param, [
|
|
390
|
-
"className",
|
|
391
|
-
"sideOffset"
|
|
392
|
-
]);
|
|
393
|
-
return /* @__PURE__ */ jsx6(TooltipPrimitive.Portal, {
|
|
394
|
-
children: /* @__PURE__ */ jsx6(TooltipPrimitive.Content, _object_spread({
|
|
395
|
-
ref: ref,
|
|
396
|
-
sideOffset: sideOffset,
|
|
397
|
-
className: cn("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", className)
|
|
398
|
-
}, props))
|
|
399
|
-
});
|
|
400
|
-
});
|
|
401
|
-
TooltipContent.displayName = TooltipPrimitive.Content.displayName;
|
|
402
|
-
// src/sidebar.tsx
|
|
403
|
-
import { jsx as jsx7, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
404
|
-
var SIDEBAR_COOKIE_NAME = "sidebar_state";
|
|
405
|
-
var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
|
|
406
|
-
var SIDEBAR_WIDTH = "16rem";
|
|
407
|
-
var SIDEBAR_WIDTH_MOBILE = "18rem";
|
|
408
|
-
var SIDEBAR_WIDTH_ICON = "3rem";
|
|
409
|
-
var SIDEBAR_KEYBOARD_SHORTCUT = "b";
|
|
410
|
-
var SidebarContext = React6.createContext(null);
|
|
411
|
-
function useSidebar() {
|
|
412
|
-
var context = React6.useContext(SidebarContext);
|
|
413
|
-
if (!context) {
|
|
414
|
-
throw new Error("useSidebar must be used within a SidebarProvider.");
|
|
415
|
-
}
|
|
416
|
-
return context;
|
|
417
|
-
}
|
|
418
|
-
var SidebarProvider = React6.forwardRef(function(_param, ref) {
|
|
419
|
-
var _param_defaultOpen = _param.defaultOpen, defaultOpen = _param_defaultOpen === void 0 ? true : _param_defaultOpen, openProp = _param.open, setOpenProp = _param.onOpenChange, className = _param.className, style = _param.style, children = _param.children, props = _object_without_properties(_param, [
|
|
420
|
-
"defaultOpen",
|
|
421
|
-
"open",
|
|
422
|
-
"onOpenChange",
|
|
423
|
-
"className",
|
|
424
|
-
"style",
|
|
425
|
-
"children"
|
|
426
|
-
]);
|
|
427
|
-
var isMobile = useIsMobile();
|
|
428
|
-
var _React6_useState = _sliced_to_array(React6.useState(false), 2), openMobile = _React6_useState[0], setOpenMobile = _React6_useState[1];
|
|
429
|
-
var _React6_useState1 = _sliced_to_array(React6.useState(defaultOpen), 2), _open = _React6_useState1[0], _setOpen = _React6_useState1[1];
|
|
430
|
-
var open = openProp !== null && openProp !== void 0 ? openProp : _open;
|
|
431
|
-
var setOpen = React6.useCallback(function(value) {
|
|
432
|
-
var openState = typeof value === "function" ? value(open) : value;
|
|
433
|
-
if (setOpenProp) {
|
|
434
|
-
setOpenProp(openState);
|
|
435
|
-
} else {
|
|
436
|
-
_setOpen(openState);
|
|
437
|
-
}
|
|
438
|
-
document.cookie = "".concat(SIDEBAR_COOKIE_NAME, "=").concat(openState, "; path=/; max-age=").concat(SIDEBAR_COOKIE_MAX_AGE);
|
|
439
|
-
}, [
|
|
440
|
-
setOpenProp,
|
|
441
|
-
open
|
|
442
|
-
]);
|
|
443
|
-
var toggleSidebar = React6.useCallback(function() {
|
|
444
|
-
return isMobile ? setOpenMobile(function(open2) {
|
|
445
|
-
return !open2;
|
|
446
|
-
}) : setOpen(function(open2) {
|
|
447
|
-
return !open2;
|
|
448
|
-
});
|
|
449
|
-
}, [
|
|
450
|
-
isMobile,
|
|
451
|
-
setOpen,
|
|
452
|
-
setOpenMobile
|
|
453
|
-
]);
|
|
454
|
-
React6.useEffect(function() {
|
|
455
|
-
var handleKeyDown = function(event) {
|
|
456
|
-
if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
|
|
457
|
-
event.preventDefault();
|
|
458
|
-
toggleSidebar();
|
|
459
|
-
}
|
|
460
|
-
};
|
|
461
|
-
window.addEventListener("keydown", handleKeyDown);
|
|
462
|
-
return function() {
|
|
463
|
-
return window.removeEventListener("keydown", handleKeyDown);
|
|
464
|
-
};
|
|
465
|
-
}, [
|
|
466
|
-
toggleSidebar
|
|
467
|
-
]);
|
|
468
|
-
var state = open ? "expanded" : "collapsed";
|
|
469
|
-
var contextValue = React6.useMemo(function() {
|
|
470
|
-
return {
|
|
471
|
-
state: state,
|
|
472
|
-
open: open,
|
|
473
|
-
setOpen: setOpen,
|
|
474
|
-
isMobile: isMobile,
|
|
475
|
-
openMobile: openMobile,
|
|
476
|
-
setOpenMobile: setOpenMobile,
|
|
477
|
-
toggleSidebar: toggleSidebar
|
|
478
|
-
};
|
|
479
|
-
}, [
|
|
480
|
-
state,
|
|
481
|
-
open,
|
|
482
|
-
setOpen,
|
|
483
|
-
isMobile,
|
|
484
|
-
openMobile,
|
|
485
|
-
setOpenMobile,
|
|
486
|
-
toggleSidebar
|
|
487
|
-
]);
|
|
488
|
-
return /* @__PURE__ */ jsx7(SidebarContext.Provider, {
|
|
489
|
-
value: contextValue,
|
|
490
|
-
children: /* @__PURE__ */ jsx7(TooltipProvider, {
|
|
491
|
-
delayDuration: 0,
|
|
492
|
-
children: /* @__PURE__ */ jsx7("div", _object_spread_props(_object_spread({
|
|
493
|
-
style: _object_spread({
|
|
494
|
-
"--sidebar-width": SIDEBAR_WIDTH,
|
|
495
|
-
"--sidebar-width-icon": SIDEBAR_WIDTH_ICON
|
|
496
|
-
}, style),
|
|
497
|
-
className: cn("group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-sidebar", className),
|
|
498
|
-
ref: ref
|
|
499
|
-
}, props), {
|
|
500
|
-
children: children
|
|
501
|
-
}))
|
|
502
|
-
})
|
|
503
|
-
});
|
|
504
|
-
});
|
|
505
|
-
SidebarProvider.displayName = "SidebarProvider";
|
|
506
|
-
var Sidebar = React6.forwardRef(function(_param, ref) {
|
|
507
|
-
var _param_side = _param.side, side = _param_side === void 0 ? "left" : _param_side, _param_variant = _param.variant, variant = _param_variant === void 0 ? "sidebar" : _param_variant, _param_collapsible = _param.collapsible, collapsible = _param_collapsible === void 0 ? "offcanvas" : _param_collapsible, className = _param.className, children = _param.children, props = _object_without_properties(_param, [
|
|
508
|
-
"side",
|
|
509
|
-
"variant",
|
|
510
|
-
"collapsible",
|
|
511
|
-
"className",
|
|
512
|
-
"children"
|
|
513
|
-
]);
|
|
514
|
-
var _useSidebar = useSidebar(), isMobile = _useSidebar.isMobile, state = _useSidebar.state, openMobile = _useSidebar.openMobile, setOpenMobile = _useSidebar.setOpenMobile;
|
|
515
|
-
if (collapsible === "none") {
|
|
516
|
-
return /* @__PURE__ */ jsx7("div", _object_spread_props(_object_spread({
|
|
517
|
-
className: cn("flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground", className),
|
|
518
|
-
ref: ref
|
|
519
|
-
}, props), {
|
|
520
|
-
children: children
|
|
521
|
-
}));
|
|
522
|
-
}
|
|
523
|
-
if (isMobile) {
|
|
524
|
-
return /* @__PURE__ */ jsx7(Sheet, _object_spread_props(_object_spread({
|
|
525
|
-
open: openMobile,
|
|
526
|
-
onOpenChange: setOpenMobile
|
|
527
|
-
}, props), {
|
|
528
|
-
children: /* @__PURE__ */ jsxs2(SheetContent, {
|
|
529
|
-
"data-sidebar": "sidebar",
|
|
530
|
-
"data-mobile": "true",
|
|
531
|
-
className: "w-[--sidebar-width] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",
|
|
532
|
-
style: {
|
|
533
|
-
"--sidebar-width": SIDEBAR_WIDTH_MOBILE
|
|
534
|
-
},
|
|
535
|
-
side: side,
|
|
536
|
-
children: [
|
|
537
|
-
/* @__PURE__ */ jsxs2(SheetHeader, {
|
|
538
|
-
className: "sr-only",
|
|
539
|
-
children: [
|
|
540
|
-
/* @__PURE__ */ jsx7(SheetTitle, {
|
|
541
|
-
children: "Sidebar"
|
|
542
|
-
}),
|
|
543
|
-
/* @__PURE__ */ jsx7(SheetDescription, {
|
|
544
|
-
children: "Displays the mobile sidebar."
|
|
545
|
-
})
|
|
546
|
-
]
|
|
547
|
-
}),
|
|
548
|
-
/* @__PURE__ */ jsx7("div", {
|
|
549
|
-
className: "flex h-full w-full flex-col",
|
|
550
|
-
children: children
|
|
551
|
-
})
|
|
552
|
-
]
|
|
553
|
-
})
|
|
554
|
-
}));
|
|
555
|
-
}
|
|
556
|
-
return /* @__PURE__ */ jsxs2("div", {
|
|
557
|
-
ref: ref,
|
|
558
|
-
className: "group peer hidden text-sidebar-foreground md:block",
|
|
559
|
-
"data-state": state,
|
|
560
|
-
"data-collapsible": state === "collapsed" ? collapsible : "",
|
|
561
|
-
"data-variant": variant,
|
|
562
|
-
"data-side": side,
|
|
563
|
-
children: [
|
|
564
|
-
/* @__PURE__ */ jsx7("div", {
|
|
565
|
-
className: cn("relative w-[--sidebar-width] bg-transparent transition-[width] duration-200 ease-linear", "group-data-[collapsible=offcanvas]:w-0", "group-data-[side=right]:rotate-180", variant === "floating" || variant === "inset" ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]" : "group-data-[collapsible=icon]:w-[--sidebar-width-icon]")
|
|
566
|
-
}),
|
|
567
|
-
/* @__PURE__ */ jsx7("div", _object_spread_props(_object_spread({
|
|
568
|
-
className: cn("fixed inset-y-0 z-10 hidden h-svh w-[--sidebar-width] transition-[left,right,width] duration-200 ease-linear md:flex", side === "left" ? "left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]" : "right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]", // Adjust the padding for floating and inset variants.
|
|
569
|
-
variant === "floating" || variant === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]" : "group-data-[collapsible=icon]:w-[--sidebar-width-icon] group-data-[side=left]:border-r group-data-[side=right]:border-l", className)
|
|
570
|
-
}, props), {
|
|
571
|
-
children: /* @__PURE__ */ jsx7("div", {
|
|
572
|
-
"data-sidebar": "sidebar",
|
|
573
|
-
className: "flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow",
|
|
574
|
-
children: children
|
|
575
|
-
})
|
|
576
|
-
}))
|
|
577
|
-
]
|
|
578
|
-
});
|
|
579
|
-
});
|
|
580
|
-
Sidebar.displayName = "Sidebar";
|
|
581
|
-
var SidebarTrigger = React6.forwardRef(function(_param, ref) {
|
|
582
|
-
var className = _param.className, onClick = _param.onClick, props = _object_without_properties(_param, [
|
|
583
|
-
"className",
|
|
584
|
-
"onClick"
|
|
585
|
-
]);
|
|
586
|
-
var toggleSidebar = useSidebar().toggleSidebar;
|
|
587
|
-
return /* @__PURE__ */ jsxs2(Button, _object_spread_props(_object_spread({
|
|
588
|
-
ref: ref,
|
|
589
|
-
"data-sidebar": "trigger",
|
|
590
|
-
variant: "ghost",
|
|
591
|
-
size: "icon",
|
|
592
|
-
className: cn("h-7 w-7", className),
|
|
593
|
-
onClick: function(event) {
|
|
594
|
-
onClick === null || onClick === void 0 ? void 0 : onClick(event);
|
|
595
|
-
toggleSidebar();
|
|
596
|
-
}
|
|
597
|
-
}, props), {
|
|
598
|
-
children: [
|
|
599
|
-
/* @__PURE__ */ jsx7(PanelLeft, {}),
|
|
600
|
-
/* @__PURE__ */ jsx7("span", {
|
|
601
|
-
className: "sr-only",
|
|
602
|
-
children: "Toggle Sidebar"
|
|
603
|
-
})
|
|
604
|
-
]
|
|
605
|
-
}));
|
|
606
|
-
});
|
|
607
|
-
SidebarTrigger.displayName = "SidebarTrigger";
|
|
608
|
-
var SidebarRail = React6.forwardRef(function(_param, ref) {
|
|
609
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
610
|
-
"className"
|
|
611
|
-
]);
|
|
612
|
-
var toggleSidebar = useSidebar().toggleSidebar;
|
|
613
|
-
return /* @__PURE__ */ jsx7("button", _object_spread({
|
|
614
|
-
ref: ref,
|
|
615
|
-
"data-sidebar": "rail",
|
|
616
|
-
"aria-label": "Toggle Sidebar",
|
|
617
|
-
tabIndex: -1,
|
|
618
|
-
onClick: toggleSidebar,
|
|
619
|
-
title: "Toggle Sidebar",
|
|
620
|
-
className: cn("absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex", "[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize", "[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize", "group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full group-data-[collapsible=offcanvas]:hover:bg-sidebar", "[[data-side=left][data-collapsible=offcanvas]_&]:-right-2", "[[data-side=right][data-collapsible=offcanvas]_&]:-left-2", className)
|
|
621
|
-
}, props));
|
|
622
|
-
});
|
|
623
|
-
SidebarRail.displayName = "SidebarRail";
|
|
624
|
-
var SidebarInset = React6.forwardRef(function(_param, ref) {
|
|
625
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
626
|
-
"className"
|
|
627
|
-
]);
|
|
628
|
-
return /* @__PURE__ */ jsx7("main", _object_spread({
|
|
629
|
-
ref: ref,
|
|
630
|
-
className: cn("relative flex w-full flex-1 flex-col bg-background", "md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow", className)
|
|
631
|
-
}, props));
|
|
632
|
-
});
|
|
633
|
-
SidebarInset.displayName = "SidebarInset";
|
|
634
|
-
var SidebarInput = React6.forwardRef(function(_param, ref) {
|
|
635
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
636
|
-
"className"
|
|
637
|
-
]);
|
|
638
|
-
return /* @__PURE__ */ jsx7(Input, _object_spread({
|
|
639
|
-
ref: ref,
|
|
640
|
-
"data-sidebar": "input",
|
|
641
|
-
className: cn("h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring", className)
|
|
642
|
-
}, props));
|
|
643
|
-
});
|
|
644
|
-
SidebarInput.displayName = "SidebarInput";
|
|
645
|
-
var SidebarHeader = React6.forwardRef(function(_param, ref) {
|
|
646
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
647
|
-
"className"
|
|
648
|
-
]);
|
|
649
|
-
return /* @__PURE__ */ jsx7("div", _object_spread({
|
|
650
|
-
ref: ref,
|
|
651
|
-
"data-sidebar": "header",
|
|
652
|
-
className: cn("flex flex-col gap-2 p-2", className)
|
|
653
|
-
}, props));
|
|
654
|
-
});
|
|
655
|
-
SidebarHeader.displayName = "SidebarHeader";
|
|
656
|
-
var SidebarFooter = React6.forwardRef(function(_param, ref) {
|
|
657
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
658
|
-
"className"
|
|
659
|
-
]);
|
|
660
|
-
return /* @__PURE__ */ jsx7("div", _object_spread({
|
|
661
|
-
ref: ref,
|
|
662
|
-
"data-sidebar": "footer",
|
|
663
|
-
className: cn("flex flex-col gap-2 p-2", className)
|
|
664
|
-
}, props));
|
|
665
|
-
});
|
|
666
|
-
SidebarFooter.displayName = "SidebarFooter";
|
|
667
|
-
var SidebarSeparator = React6.forwardRef(function(_param, ref) {
|
|
668
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
669
|
-
"className"
|
|
670
|
-
]);
|
|
671
|
-
return /* @__PURE__ */ jsx7(Separator, _object_spread({
|
|
672
|
-
ref: ref,
|
|
673
|
-
"data-sidebar": "separator",
|
|
674
|
-
className: cn("mx-2 w-auto bg-sidebar-border", className)
|
|
675
|
-
}, props));
|
|
676
|
-
});
|
|
677
|
-
SidebarSeparator.displayName = "SidebarSeparator";
|
|
678
|
-
var SidebarContent = React6.forwardRef(function(_param, ref) {
|
|
679
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
680
|
-
"className"
|
|
681
|
-
]);
|
|
682
|
-
return /* @__PURE__ */ jsx7("div", _object_spread({
|
|
683
|
-
ref: ref,
|
|
684
|
-
"data-sidebar": "content",
|
|
685
|
-
className: cn("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden", className)
|
|
686
|
-
}, props));
|
|
687
|
-
});
|
|
688
|
-
SidebarContent.displayName = "SidebarContent";
|
|
689
|
-
var SidebarGroup = React6.forwardRef(function(_param, ref) {
|
|
690
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
691
|
-
"className"
|
|
692
|
-
]);
|
|
693
|
-
return /* @__PURE__ */ jsx7("div", _object_spread({
|
|
694
|
-
ref: ref,
|
|
695
|
-
"data-sidebar": "group",
|
|
696
|
-
className: cn("relative flex w-full min-w-0 flex-col p-2", className)
|
|
697
|
-
}, props));
|
|
698
|
-
});
|
|
699
|
-
SidebarGroup.displayName = "SidebarGroup";
|
|
700
|
-
var SidebarGroupLabel = React6.forwardRef(function(_param, ref) {
|
|
701
|
-
var className = _param.className, _param_asChild = _param.asChild, asChild = _param_asChild === void 0 ? false : _param_asChild, props = _object_without_properties(_param, [
|
|
702
|
-
"className",
|
|
703
|
-
"asChild"
|
|
704
|
-
]);
|
|
705
|
-
var Comp = asChild ? Slot2 : "div";
|
|
706
|
-
return /* @__PURE__ */ jsx7(Comp, _object_spread({
|
|
707
|
-
ref: ref,
|
|
708
|
-
"data-sidebar": "group-label",
|
|
709
|
-
className: cn("flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 outline-none ring-sidebar-ring transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0", "group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0", className)
|
|
710
|
-
}, props));
|
|
711
|
-
});
|
|
712
|
-
SidebarGroupLabel.displayName = "SidebarGroupLabel";
|
|
713
|
-
var SidebarGroupAction = React6.forwardRef(function(_param, ref) {
|
|
714
|
-
var className = _param.className, _param_asChild = _param.asChild, asChild = _param_asChild === void 0 ? false : _param_asChild, props = _object_without_properties(_param, [
|
|
715
|
-
"className",
|
|
716
|
-
"asChild"
|
|
717
|
-
]);
|
|
718
|
-
var Comp = asChild ? Slot2 : "button";
|
|
719
|
-
return /* @__PURE__ */ jsx7(Comp, _object_spread({
|
|
720
|
-
ref: ref,
|
|
721
|
-
"data-sidebar": "group-action",
|
|
722
|
-
className: cn("absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0", // Increases the hit area of the button on mobile.
|
|
723
|
-
"after:absolute after:-inset-2 after:md:hidden", "group-data-[collapsible=icon]:hidden", className)
|
|
724
|
-
}, props));
|
|
725
|
-
});
|
|
726
|
-
SidebarGroupAction.displayName = "SidebarGroupAction";
|
|
727
|
-
var SidebarGroupContent = React6.forwardRef(function(_param, ref) {
|
|
728
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
729
|
-
"className"
|
|
730
|
-
]);
|
|
731
|
-
return /* @__PURE__ */ jsx7("div", _object_spread({
|
|
732
|
-
ref: ref,
|
|
733
|
-
"data-sidebar": "group-content",
|
|
734
|
-
className: cn("w-full text-sm", className)
|
|
735
|
-
}, props));
|
|
736
|
-
});
|
|
737
|
-
SidebarGroupContent.displayName = "SidebarGroupContent";
|
|
738
|
-
var SidebarMenu = React6.forwardRef(function(_param, ref) {
|
|
739
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
740
|
-
"className"
|
|
741
|
-
]);
|
|
742
|
-
return /* @__PURE__ */ jsx7("ul", _object_spread({
|
|
743
|
-
ref: ref,
|
|
744
|
-
"data-sidebar": "menu",
|
|
745
|
-
className: cn("flex w-full min-w-0 flex-col gap-1", className)
|
|
746
|
-
}, props));
|
|
747
|
-
});
|
|
748
|
-
SidebarMenu.displayName = "SidebarMenu";
|
|
749
|
-
var SidebarMenuItem = React6.forwardRef(function(_param, ref) {
|
|
750
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
751
|
-
"className"
|
|
752
|
-
]);
|
|
753
|
-
return /* @__PURE__ */ jsx7("li", _object_spread({
|
|
754
|
-
ref: ref,
|
|
755
|
-
"data-sidebar": "menu-item",
|
|
756
|
-
className: cn("group/menu-item relative", className)
|
|
757
|
-
}, props));
|
|
758
|
-
});
|
|
759
|
-
SidebarMenuItem.displayName = "SidebarMenuItem";
|
|
760
|
-
var sidebarMenuButtonVariants = cva3("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0", {
|
|
761
|
-
variants: {
|
|
762
|
-
variant: {
|
|
763
|
-
default: "hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",
|
|
764
|
-
outline: "bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]"
|
|
765
|
-
},
|
|
766
|
-
size: {
|
|
767
|
-
default: "text-sm",
|
|
768
|
-
sm: "text-xs",
|
|
769
|
-
lg: "text-sm group-data-[collapsible=icon]:!p-0"
|
|
770
|
-
}
|
|
771
|
-
},
|
|
772
|
-
defaultVariants: {
|
|
773
|
-
variant: "default",
|
|
774
|
-
size: "default"
|
|
775
|
-
}
|
|
776
|
-
});
|
|
777
|
-
var SidebarMenuButton = React6.forwardRef(function(_param, ref) {
|
|
778
|
-
var _param_asChild = _param.asChild, asChild = _param_asChild === void 0 ? false : _param_asChild, _param_isActive = _param.isActive, isActive = _param_isActive === void 0 ? false : _param_isActive, _param_variant = _param.variant, variant = _param_variant === void 0 ? "default" : _param_variant, _param_size = _param.size, size = _param_size === void 0 ? "default" : _param_size, tooltip = _param.tooltip, className = _param.className, props = _object_without_properties(_param, [
|
|
779
|
-
"asChild",
|
|
780
|
-
"isActive",
|
|
781
|
-
"variant",
|
|
782
|
-
"size",
|
|
783
|
-
"tooltip",
|
|
784
|
-
"className"
|
|
785
|
-
]);
|
|
786
|
-
var Comp = asChild ? Slot2 : "button";
|
|
787
|
-
var _useSidebar = useSidebar(), isMobile = _useSidebar.isMobile, state = _useSidebar.state;
|
|
788
|
-
var button = /* @__PURE__ */ jsx7(Comp, _object_spread({
|
|
789
|
-
ref: ref,
|
|
790
|
-
"data-sidebar": "menu-button",
|
|
791
|
-
"data-size": size,
|
|
792
|
-
"data-active": isActive,
|
|
793
|
-
className: cn(isActive && "font-bold", sidebarMenuButtonVariants({
|
|
794
|
-
variant: variant,
|
|
795
|
-
size: size
|
|
796
|
-
}), className)
|
|
797
|
-
}, props));
|
|
798
|
-
if (!tooltip) {
|
|
799
|
-
return button;
|
|
800
|
-
}
|
|
801
|
-
if (typeof tooltip === "string") {
|
|
802
|
-
tooltip = {
|
|
803
|
-
children: tooltip
|
|
804
|
-
};
|
|
805
|
-
}
|
|
806
|
-
return /* @__PURE__ */ jsxs2(Tooltip, {
|
|
807
|
-
children: [
|
|
808
|
-
/* @__PURE__ */ jsx7(TooltipTrigger, {
|
|
809
|
-
asChild: true,
|
|
810
|
-
children: button
|
|
811
|
-
}),
|
|
812
|
-
/* @__PURE__ */ jsx7(TooltipContent, _object_spread({
|
|
813
|
-
side: "right",
|
|
814
|
-
align: "center",
|
|
815
|
-
hidden: state !== "collapsed" || isMobile
|
|
816
|
-
}, tooltip))
|
|
817
|
-
]
|
|
818
|
-
});
|
|
819
|
-
});
|
|
820
|
-
SidebarMenuButton.displayName = "SidebarMenuButton";
|
|
821
|
-
var SidebarMenuAction = React6.forwardRef(function(_param, ref) {
|
|
822
|
-
var className = _param.className, _param_asChild = _param.asChild, asChild = _param_asChild === void 0 ? false : _param_asChild, _param_showOnHover = _param.showOnHover, showOnHover = _param_showOnHover === void 0 ? false : _param_showOnHover, props = _object_without_properties(_param, [
|
|
823
|
-
"className",
|
|
824
|
-
"asChild",
|
|
825
|
-
"showOnHover"
|
|
826
|
-
]);
|
|
827
|
-
var Comp = asChild ? Slot2 : "button";
|
|
828
|
-
return /* @__PURE__ */ jsx7(Comp, _object_spread({
|
|
829
|
-
ref: ref,
|
|
830
|
-
"data-sidebar": "menu-action",
|
|
831
|
-
className: cn("absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/menu-button:text-sidebar-accent-foreground [&>svg]:size-4 [&>svg]:shrink-0", // Increases the hit area of the button on mobile.
|
|
832
|
-
"after:absolute after:-inset-2 after:md:hidden", "peer-data-[size=sm]/menu-button:top-1", "peer-data-[size=default]/menu-button:top-1.5", "peer-data-[size=lg]/menu-button:top-2.5", "group-data-[collapsible=icon]:hidden", showOnHover && "group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0", className)
|
|
833
|
-
}, props));
|
|
834
|
-
});
|
|
835
|
-
SidebarMenuAction.displayName = "SidebarMenuAction";
|
|
836
|
-
var SidebarMenuBadge = React6.forwardRef(function(_param, ref) {
|
|
837
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
838
|
-
"className"
|
|
839
|
-
]);
|
|
840
|
-
return /* @__PURE__ */ jsx7("div", _object_spread({
|
|
841
|
-
ref: ref,
|
|
842
|
-
"data-sidebar": "menu-badge",
|
|
843
|
-
className: cn("pointer-events-none absolute right-1 flex h-5 min-w-5 select-none items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums text-sidebar-foreground", "peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground", "peer-data-[size=sm]/menu-button:top-1", "peer-data-[size=default]/menu-button:top-1.5", "peer-data-[size=lg]/menu-button:top-2.5", "group-data-[collapsible=icon]:hidden", className)
|
|
844
|
-
}, props));
|
|
845
|
-
});
|
|
846
|
-
SidebarMenuBadge.displayName = "SidebarMenuBadge";
|
|
847
|
-
var SidebarMenuSkeleton = React6.forwardRef(function(_param, ref) {
|
|
848
|
-
var className = _param.className, _param_showIcon = _param.showIcon, showIcon = _param_showIcon === void 0 ? false : _param_showIcon, props = _object_without_properties(_param, [
|
|
849
|
-
"className",
|
|
850
|
-
"showIcon"
|
|
851
|
-
]);
|
|
852
|
-
var width = React6.useMemo(function() {
|
|
853
|
-
return "".concat(Math.floor(Math.random() * 40) + 50, "%");
|
|
854
|
-
}, []);
|
|
855
|
-
return /* @__PURE__ */ jsxs2("div", _object_spread_props(_object_spread({
|
|
856
|
-
ref: ref,
|
|
857
|
-
"data-sidebar": "menu-skeleton",
|
|
858
|
-
className: cn("flex h-8 items-center gap-2 rounded-md px-2", className)
|
|
859
|
-
}, props), {
|
|
860
|
-
children: [
|
|
861
|
-
showIcon && /* @__PURE__ */ jsx7(Skeleton, {
|
|
862
|
-
className: "size-4 rounded-md",
|
|
863
|
-
"data-sidebar": "menu-skeleton-icon"
|
|
864
|
-
}),
|
|
865
|
-
/* @__PURE__ */ jsx7(Skeleton, {
|
|
866
|
-
className: "h-4 max-w-[--skeleton-width] flex-1",
|
|
867
|
-
"data-sidebar": "menu-skeleton-text",
|
|
868
|
-
style: {
|
|
869
|
-
"--skeleton-width": width
|
|
870
|
-
}
|
|
871
|
-
})
|
|
872
|
-
]
|
|
873
|
-
}));
|
|
874
|
-
});
|
|
875
|
-
SidebarMenuSkeleton.displayName = "SidebarMenuSkeleton";
|
|
876
|
-
var SidebarMenuSub = React6.forwardRef(function(_param, ref) {
|
|
877
|
-
var className = _param.className, props = _object_without_properties(_param, [
|
|
878
|
-
"className"
|
|
879
|
-
]);
|
|
880
|
-
return /* @__PURE__ */ jsx7("ul", _object_spread({
|
|
881
|
-
ref: ref,
|
|
882
|
-
"data-sidebar": "menu-sub",
|
|
883
|
-
className: cn("mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5", "group-data-[collapsible=icon]:hidden", className)
|
|
884
|
-
}, props));
|
|
885
|
-
});
|
|
886
|
-
SidebarMenuSub.displayName = "SidebarMenuSub";
|
|
887
|
-
var SidebarMenuSubItem = React6.forwardRef(function(_param, ref) {
|
|
888
|
-
var props = _extends({}, _object_destructuring_empty(_param));
|
|
889
|
-
return /* @__PURE__ */ jsx7("li", _object_spread({
|
|
890
|
-
ref: ref
|
|
891
|
-
}, props));
|
|
892
|
-
});
|
|
893
|
-
SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
|
|
894
|
-
var SidebarMenuSubButton = React6.forwardRef(function(_param, ref) {
|
|
895
|
-
var _param_asChild = _param.asChild, asChild = _param_asChild === void 0 ? false : _param_asChild, _param_size = _param.size, size = _param_size === void 0 ? "md" : _param_size, isActive = _param.isActive, className = _param.className, props = _object_without_properties(_param, [
|
|
896
|
-
"asChild",
|
|
897
|
-
"size",
|
|
898
|
-
"isActive",
|
|
899
|
-
"className"
|
|
900
|
-
]);
|
|
901
|
-
var Comp = asChild ? Slot2 : "a";
|
|
902
|
-
return /* @__PURE__ */ jsx7(Comp, _object_spread({
|
|
903
|
-
ref: ref,
|
|
904
|
-
"data-sidebar": "menu-sub-button",
|
|
905
|
-
"data-size": size,
|
|
906
|
-
"data-active": isActive,
|
|
907
|
-
className: cn("flex min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md p-2 text-sidebar-foreground outline-none ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground", "data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground", size === "sm" && "text-xs", size === "md" && "text-sm", isActive && "font-bold", "group-data-[collapsible=icon]:hidden", className)
|
|
908
|
-
}, props));
|
|
909
|
-
});
|
|
910
|
-
SidebarMenuSubButton.displayName = "SidebarMenuSubButton";
|
|
911
|
-
export { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };
|
|
912
|
-
//# sourceMappingURL=sidebar.esm.js.map
|