@teach-in/react 1.5.0 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-2UHA3DYG.mjs → chunk-6BWSC6ZH.mjs} +3 -10
- package/dist/chunk-7WIZONLU.mjs +81 -0
- package/dist/chunk-ALGSVEUS.mjs +1 -0
- package/dist/chunk-BHOCYKBI.mjs +81 -0
- package/dist/{chunk-VXYV37IM.mjs → chunk-C5FQB2UN.mjs} +16 -8
- package/dist/{chunk-CKJ5U5Q4.mjs → chunk-DEKPRZIQ.mjs} +1 -1
- package/dist/chunk-GEPCSZCU.mjs +71 -0
- package/dist/chunk-VDPROXMN.mjs +57 -0
- package/dist/{chunk-R46SWVWL.mjs → chunk-ZK6VZMUJ.mjs} +1 -1
- package/dist/index.js +487 -248
- package/dist/index.mjs +189 -181
- package/dist/ui/data/index.js +56 -7
- package/dist/ui/data/index.mjs +10 -8
- package/dist/ui/data/user/index.js +51 -2
- package/dist/ui/data/user/index.mjs +3 -1
- package/dist/ui/data/user/user.d.ts +24 -2
- package/dist/ui/data/user/user.js +52 -2
- package/dist/ui/data/user/user.mjs +4 -1
- package/dist/ui/feedback/index.mjs +12 -12
- package/dist/ui/feedback/progress/index.mjs +3 -3
- package/dist/ui/form/index.js +76 -18
- package/dist/ui/form/index.mjs +24 -19
- package/dist/ui/form/rhf/fields/autocomplete-field.mjs +19 -14
- package/dist/ui/form/rhf/fields/checkbox-field.mjs +19 -14
- package/dist/ui/form/rhf/fields/date-picker-field.mjs +19 -14
- package/dist/ui/form/rhf/fields/email-field.js +58 -3
- package/dist/ui/form/rhf/fields/email-field.mjs +20 -15
- package/dist/ui/form/rhf/fields/index.js +76 -18
- package/dist/ui/form/rhf/fields/index.mjs +21 -16
- package/dist/ui/form/rhf/fields/input-field.mjs +19 -14
- package/dist/ui/form/rhf/fields/radio-field.mjs +19 -14
- package/dist/ui/form/rhf/fields/search-field.mjs +19 -14
- package/dist/ui/form/rhf/fields/select-field.js +18 -15
- package/dist/ui/form/rhf/fields/select-field.mjs +20 -15
- package/dist/ui/form/rhf/fields/switch-field.mjs +19 -14
- package/dist/ui/form/rhf/fields/text-field.mjs +19 -14
- package/dist/ui/form/rhf/fields/textarea-field.mjs +19 -14
- package/dist/ui/form/rhf/index.js +76 -18
- package/dist/ui/form/rhf/index.mjs +21 -16
- package/dist/ui/format/index.mjs +6 -6
- package/dist/ui/index.js +487 -248
- package/dist/ui/index.mjs +189 -181
- package/dist/ui/inputs/checkbox/index.mjs +3 -3
- package/dist/ui/inputs/email/email.js +58 -3
- package/dist/ui/inputs/email/email.mjs +1 -1
- package/dist/ui/inputs/email/index.js +58 -3
- package/dist/ui/inputs/email/index.mjs +1 -1
- package/dist/ui/inputs/index.d.ts +1 -0
- package/dist/ui/inputs/index.js +273 -67
- package/dist/ui/inputs/index.mjs +36 -26
- package/dist/ui/inputs/number/index.d.ts +1 -0
- package/dist/ui/inputs/number/index.js +218 -0
- package/dist/ui/inputs/number/index.mjs +12 -0
- package/dist/ui/inputs/number/number.d.ts +12 -0
- package/dist/ui/inputs/number/number.js +219 -0
- package/dist/ui/inputs/number/number.mjs +13 -0
- package/dist/ui/inputs/number/use-number.d.ts +20 -0
- package/dist/ui/inputs/number/use-number.js +104 -0
- package/dist/ui/inputs/number/use-number.mjs +7 -0
- package/dist/ui/inputs/radio/index.mjs +3 -3
- package/dist/ui/inputs/select/index.d.ts +1 -1
- package/dist/ui/inputs/select/index.js +23 -17
- package/dist/ui/inputs/select/index.mjs +8 -4
- package/dist/ui/inputs/select/select.d.ts +11 -22
- package/dist/ui/inputs/select/select.js +23 -17
- package/dist/ui/inputs/select/select.mjs +8 -4
- package/dist/ui/inputs/select/use-select.d.ts +0 -1
- package/dist/ui/inputs/select/use-select.js +2 -9
- package/dist/ui/inputs/select/use-select.mjs +1 -1
- package/dist/ui/inputs/switch/index.mjs +3 -3
- package/dist/ui/layout/container/container.mjs +88 -85
- package/dist/ui/layout/container/index.mjs +88 -85
- package/dist/ui/layout/index.js +7 -7
- package/dist/ui/layout/index.mjs +95 -92
- package/dist/ui/layout/page/index.mjs +6 -6
- package/dist/ui/layout/page/page-loading.mjs +5 -5
- package/dist/ui/layout/page/section-loading.mjs +5 -5
- package/dist/ui/navigation/index.mjs +5 -5
- package/dist/ui/overlays/index.mjs +4 -4
- package/dist/ui/provider/index.mjs +5 -5
- package/dist/ui/provider/ui-provider.mjs +5 -5
- package/dist/ui/surface/index.mjs +1 -1
- package/dist/ui/theme/colors/index.mjs +1 -1
- package/dist/ui/theme/colors.mjs +1 -1
- package/dist/ui/theme/index.mjs +1 -1
- package/dist/ui/theme/theme.d.ts +2 -1
- package/dist/ui/theme/theme.mjs +1 -1
- package/package.json +13 -9
- package/LICENSE +0 -21
- package/dist/chunk-46SKVFMZ.mjs +0 -16
- package/dist/chunk-XHCXM5MU.mjs +0 -14
- /package/dist/{chunk-UQAG7TKJ.mjs → chunk-37MCHF7U.mjs} +0 -0
package/dist/index.js
CHANGED
|
@@ -64,19 +64,19 @@ __export(index_exports, {
|
|
|
64
64
|
FavoriteSwitch: () => FavoriteSwitch,
|
|
65
65
|
Flex: () => Flex,
|
|
66
66
|
Form: () => Form,
|
|
67
|
-
FormatBoolean: () =>
|
|
67
|
+
FormatBoolean: () => Boolean2,
|
|
68
68
|
FormatCurrency: () => Currency,
|
|
69
69
|
FormatDate: () => DateFormat,
|
|
70
70
|
FormatDatetime: () => Datetime,
|
|
71
71
|
FormatDuration: () => Duration,
|
|
72
|
-
FormatNumber: () =>
|
|
72
|
+
FormatNumber: () => Number3,
|
|
73
73
|
FormatPercent: () => Percent,
|
|
74
74
|
FormatPlural: () => Plural,
|
|
75
75
|
FormatTime: () => Time,
|
|
76
76
|
FormatUUID: () => Uuid,
|
|
77
77
|
Grid: () => Grid,
|
|
78
78
|
Header: () => Header2,
|
|
79
|
-
Image: () =>
|
|
79
|
+
Image: () => Image2,
|
|
80
80
|
Input: () => Input,
|
|
81
81
|
InputField: () => InputField,
|
|
82
82
|
Link: () => Link,
|
|
@@ -88,6 +88,7 @@ __export(index_exports, {
|
|
|
88
88
|
NavbarMenu: () => NavbarMenu,
|
|
89
89
|
NavbarMenuItem: () => NavbarMenuItem,
|
|
90
90
|
NavbarMenuToggle: () => NavbarMenuToggle,
|
|
91
|
+
Number: () => Number2,
|
|
91
92
|
PageContent: () => PageContent,
|
|
92
93
|
PageLoading: () => PageLoading,
|
|
93
94
|
Pagination: () => Pagination,
|
|
@@ -107,6 +108,7 @@ __export(index_exports, {
|
|
|
107
108
|
SectionTitle: () => SectionTitle,
|
|
108
109
|
Select: () => Select,
|
|
109
110
|
SelectField: () => SelectField,
|
|
111
|
+
SelectItem: () => SelectItem,
|
|
110
112
|
Spinner: () => Spinner,
|
|
111
113
|
Switch: () => Switch,
|
|
112
114
|
SwitchField: () => SwitchField,
|
|
@@ -202,20 +204,69 @@ var getKeyValue = import_table.getKeyValue;
|
|
|
202
204
|
// src/ui/data/user/user.tsx
|
|
203
205
|
var import_react4 = __toESM(require("react"));
|
|
204
206
|
var import_user = require("@heroui/user");
|
|
207
|
+
var import_image = require("@heroui/image");
|
|
208
|
+
var import_tailwind_variants = require("tailwind-variants");
|
|
209
|
+
|
|
210
|
+
// src/ui/style/css.ts
|
|
211
|
+
var import_clsx = require("clsx");
|
|
212
|
+
var import_tailwind_merge = require("tailwind-merge");
|
|
213
|
+
function cn(...inputs) {
|
|
214
|
+
return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
// src/ui/data/user/user.tsx
|
|
205
218
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
206
|
-
|
|
207
|
-
|
|
219
|
+
function getNameInitials(fullName) {
|
|
220
|
+
const normalizedFullName = fullName.trim();
|
|
221
|
+
const parts = normalizedFullName.split(" ").filter((part) => part.length > 0);
|
|
222
|
+
if (parts.length >= 2) {
|
|
223
|
+
return parts[0][0].toUpperCase() + parts[1][0].toUpperCase();
|
|
224
|
+
}
|
|
225
|
+
return normalizedFullName.slice(0, 2).toUpperCase();
|
|
226
|
+
}
|
|
227
|
+
var userVariants = (0, import_tailwind_variants.tv)({
|
|
228
|
+
base: "flex items-start gap-2 hyphens-auto",
|
|
229
|
+
variants: {
|
|
230
|
+
direction: {
|
|
231
|
+
row: "flex-row",
|
|
232
|
+
column: "flex-col items-center"
|
|
233
|
+
}
|
|
234
|
+
},
|
|
235
|
+
defaultVariants: {
|
|
236
|
+
direction: "row"
|
|
237
|
+
}
|
|
208
238
|
});
|
|
239
|
+
var User = import_react4.default.forwardRef(
|
|
240
|
+
({ name, avatarProps, className, direction = "row", ...props }, ref) => {
|
|
241
|
+
var _a, _b;
|
|
242
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
243
|
+
import_user.User,
|
|
244
|
+
{
|
|
245
|
+
ref,
|
|
246
|
+
avatarProps: {
|
|
247
|
+
...avatarProps,
|
|
248
|
+
className: cn("shrink-0", avatarProps == null ? void 0 : avatarProps.className),
|
|
249
|
+
name: (_a = avatarProps == null ? void 0 : avatarProps.name) != null ? _a : getNameInitials(name),
|
|
250
|
+
ImgComponent: import_image.Image,
|
|
251
|
+
showFallback: (_b = avatarProps == null ? void 0 : avatarProps.showFallback) != null ? _b : true
|
|
252
|
+
},
|
|
253
|
+
className: userVariants({ direction, className }),
|
|
254
|
+
name,
|
|
255
|
+
...props
|
|
256
|
+
}
|
|
257
|
+
);
|
|
258
|
+
}
|
|
259
|
+
);
|
|
209
260
|
User.displayName = "TeachInUI.User";
|
|
210
261
|
|
|
211
262
|
// src/ui/data/image/image.tsx
|
|
212
263
|
var import_react5 = __toESM(require("react"));
|
|
213
|
-
var
|
|
264
|
+
var import_image2 = require("@heroui/image");
|
|
214
265
|
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
215
|
-
var
|
|
216
|
-
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
266
|
+
var Image2 = import_react5.default.forwardRef(({ ...props }, ref) => {
|
|
267
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_image2.Image, { ref, ...props });
|
|
217
268
|
});
|
|
218
|
-
|
|
269
|
+
Image2.displayName = "TeachInUI.Image";
|
|
219
270
|
|
|
220
271
|
// src/ui/feedback/alert/alert.tsx
|
|
221
272
|
var import_react6 = __toESM(require("react"));
|
|
@@ -359,7 +410,7 @@ var import_react20 = __toESM(require("react"));
|
|
|
359
410
|
// src/ui/inputs/input/input.tsx
|
|
360
411
|
var import_react19 = __toESM(require("react"));
|
|
361
412
|
var import_input = require("@heroui/input");
|
|
362
|
-
var
|
|
413
|
+
var import_tailwind_variants2 = require("tailwind-variants");
|
|
363
414
|
|
|
364
415
|
// src/ui/inputs/clear-button.tsx
|
|
365
416
|
var import_react17 = __toESM(require("react"));
|
|
@@ -445,7 +496,7 @@ function useInput({
|
|
|
445
496
|
|
|
446
497
|
// src/ui/inputs/input/input.tsx
|
|
447
498
|
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
448
|
-
var inputWrapperVariants = (0,
|
|
499
|
+
var inputWrapperVariants = (0, import_tailwind_variants2.tv)({
|
|
449
500
|
variants: {
|
|
450
501
|
variant: {
|
|
451
502
|
flat: "",
|
|
@@ -504,21 +555,219 @@ Input.displayName = "TeachInUI.Input";
|
|
|
504
555
|
|
|
505
556
|
// src/ui/inputs/email/email.tsx
|
|
506
557
|
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
507
|
-
var
|
|
508
|
-
|
|
509
|
-
|
|
558
|
+
var EMAIL_REGEX = /^(?!\.)(?!.*\.\.)[A-Za-zА-Яа-яЁё0-9._+%-]+(?<!\.)@(?:(?:[A-Za-zА-Яа-яЁё0-9](?:[A-Za-zА-Яа-яЁё0-9-]*[A-Za-zА-Яа-яЁё0-9])?)\.)+[A-Za-zА-Яа-яЁё]{2,}$/u;
|
|
559
|
+
var DEFAULT_ERROR_MESSAGE = "\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 email";
|
|
560
|
+
var defaultValidateEmail = (value) => {
|
|
561
|
+
if (!value) {
|
|
562
|
+
return;
|
|
563
|
+
}
|
|
564
|
+
return EMAIL_REGEX.test(value) ? true : DEFAULT_ERROR_MESSAGE;
|
|
565
|
+
};
|
|
566
|
+
function getValidationMessage(result) {
|
|
567
|
+
if (typeof result === "string") {
|
|
568
|
+
return result;
|
|
569
|
+
}
|
|
570
|
+
if (Array.isArray(result)) {
|
|
571
|
+
return result.join(" ");
|
|
572
|
+
}
|
|
573
|
+
return;
|
|
574
|
+
}
|
|
575
|
+
var Email = import_react20.default.forwardRef(
|
|
576
|
+
({
|
|
577
|
+
defaultValue,
|
|
578
|
+
errorMessage,
|
|
579
|
+
isInvalid,
|
|
580
|
+
onValueChange,
|
|
581
|
+
validate = defaultValidateEmail,
|
|
582
|
+
value,
|
|
583
|
+
...props
|
|
584
|
+
}, ref) => {
|
|
585
|
+
const [internalValue, setInternalValue] = import_react20.default.useState(defaultValue != null ? defaultValue : "");
|
|
586
|
+
const isControlled = value !== void 0;
|
|
587
|
+
const currentValue = isControlled ? value : internalValue;
|
|
588
|
+
const handleValueChange = import_react20.default.useCallback(
|
|
589
|
+
(nextValue) => {
|
|
590
|
+
if (!isControlled) {
|
|
591
|
+
setInternalValue(nextValue);
|
|
592
|
+
}
|
|
593
|
+
onValueChange == null ? void 0 : onValueChange(nextValue);
|
|
594
|
+
},
|
|
595
|
+
[isControlled, onValueChange]
|
|
596
|
+
);
|
|
597
|
+
const validationMessage = getValidationMessage(validate(currentValue != null ? currentValue : ""));
|
|
598
|
+
const resolvedErrorMessage = errorMessage != null ? errorMessage : validationMessage;
|
|
599
|
+
const resolvedIsInvalid = isInvalid != null ? isInvalid : Boolean(validationMessage);
|
|
600
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
601
|
+
Input,
|
|
602
|
+
{
|
|
603
|
+
ref,
|
|
604
|
+
autoComplete: "email",
|
|
605
|
+
errorMessage: resolvedErrorMessage,
|
|
606
|
+
isInvalid: resolvedIsInvalid,
|
|
607
|
+
type: "email",
|
|
608
|
+
validate,
|
|
609
|
+
value: currentValue,
|
|
610
|
+
onValueChange: handleValueChange,
|
|
611
|
+
...props
|
|
612
|
+
}
|
|
613
|
+
);
|
|
614
|
+
}
|
|
615
|
+
);
|
|
510
616
|
Email.displayName = "TeachInUI.Email";
|
|
511
617
|
|
|
512
|
-
// src/ui/inputs/
|
|
618
|
+
// src/ui/inputs/number/number.tsx
|
|
513
619
|
var import_react22 = __toESM(require("react"));
|
|
620
|
+
var import_number_input = require("@heroui/number-input");
|
|
621
|
+
var import_tailwind_variants3 = require("tailwind-variants");
|
|
622
|
+
|
|
623
|
+
// src/ui/inputs/number/use-number.ts
|
|
624
|
+
var import_number = require("@internationalized/number");
|
|
625
|
+
var import_react21 = require("react");
|
|
626
|
+
function normalizeNumberValue(value) {
|
|
627
|
+
if (value == null || Number.isNaN(value)) {
|
|
628
|
+
return null;
|
|
629
|
+
}
|
|
630
|
+
return value;
|
|
631
|
+
}
|
|
632
|
+
function useNumber({
|
|
633
|
+
locale,
|
|
634
|
+
value,
|
|
635
|
+
onChange,
|
|
636
|
+
onValueChange,
|
|
637
|
+
onClear,
|
|
638
|
+
isReadOnly,
|
|
639
|
+
isClearable = true,
|
|
640
|
+
ref
|
|
641
|
+
}) {
|
|
642
|
+
const inputRef = (0, import_react21.useRef)(null);
|
|
643
|
+
const currentValue = normalizeNumberValue(value);
|
|
644
|
+
const hasValue = currentValue !== null;
|
|
645
|
+
const currentLocale = locale != null ? locale : Intl.NumberFormat().resolvedOptions().locale;
|
|
646
|
+
const numberParser = (0, import_react21.useMemo)(() => new import_number.NumberParser(currentLocale), [currentLocale]);
|
|
647
|
+
const emitValueChange = (0, import_react21.useCallback)(
|
|
648
|
+
(newValue) => {
|
|
649
|
+
onValueChange == null ? void 0 : onValueChange(newValue);
|
|
650
|
+
onChange == null ? void 0 : onChange(newValue);
|
|
651
|
+
},
|
|
652
|
+
[onChange, onValueChange]
|
|
653
|
+
);
|
|
654
|
+
const handleValueChange = (0, import_react21.useCallback)(
|
|
655
|
+
(incomingValue) => {
|
|
656
|
+
let newValue = null;
|
|
657
|
+
if (incomingValue === null) {
|
|
658
|
+
newValue = null;
|
|
659
|
+
} else if (typeof incomingValue === "number") {
|
|
660
|
+
newValue = Number.isNaN(incomingValue) ? null : incomingValue;
|
|
661
|
+
} else {
|
|
662
|
+
const rawValue = incomingValue.target.value;
|
|
663
|
+
newValue = rawValue === "" ? null : numberParser.parse(rawValue);
|
|
664
|
+
newValue = Number.isNaN(newValue) ? null : newValue;
|
|
665
|
+
}
|
|
666
|
+
emitValueChange(newValue);
|
|
667
|
+
},
|
|
668
|
+
[emitValueChange, numberParser]
|
|
669
|
+
);
|
|
670
|
+
const handleClear = (0, import_react21.useCallback)(() => {
|
|
671
|
+
var _a;
|
|
672
|
+
onClear == null ? void 0 : onClear();
|
|
673
|
+
emitValueChange(null);
|
|
674
|
+
(_a = inputRef.current) == null ? void 0 : _a.focus();
|
|
675
|
+
}, [emitValueChange, onClear]);
|
|
676
|
+
const mergedRef = (0, import_react21.useCallback)(
|
|
677
|
+
(node) => {
|
|
678
|
+
inputRef.current = node;
|
|
679
|
+
if (typeof ref === "function") {
|
|
680
|
+
ref(node);
|
|
681
|
+
} else if (ref) {
|
|
682
|
+
ref.current = node;
|
|
683
|
+
}
|
|
684
|
+
},
|
|
685
|
+
[ref]
|
|
686
|
+
);
|
|
687
|
+
const showClearButton = hasValue && !isReadOnly && isClearable;
|
|
688
|
+
return {
|
|
689
|
+
inputRef,
|
|
690
|
+
currentValue,
|
|
691
|
+
hasValue,
|
|
692
|
+
handleValueChange,
|
|
693
|
+
handleClear,
|
|
694
|
+
mergedRef,
|
|
695
|
+
showClearButton
|
|
696
|
+
};
|
|
697
|
+
}
|
|
698
|
+
|
|
699
|
+
// src/ui/inputs/number/number.tsx
|
|
700
|
+
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
701
|
+
var inputWrapperVariants2 = (0, import_tailwind_variants3.tv)({
|
|
702
|
+
variants: {
|
|
703
|
+
variant: {
|
|
704
|
+
flat: "",
|
|
705
|
+
underlined: "",
|
|
706
|
+
bordered: "border-1",
|
|
707
|
+
faded: "border-1"
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
});
|
|
711
|
+
var Number2 = import_react22.default.forwardRef(
|
|
712
|
+
({
|
|
713
|
+
locale,
|
|
714
|
+
value,
|
|
715
|
+
onChange,
|
|
716
|
+
onValueChange,
|
|
717
|
+
onClear,
|
|
718
|
+
variant,
|
|
719
|
+
classNames,
|
|
720
|
+
endContent,
|
|
721
|
+
isReadOnly,
|
|
722
|
+
isClearable,
|
|
723
|
+
...props
|
|
724
|
+
}, ref) => {
|
|
725
|
+
const { currentValue, handleValueChange, handleClear, mergedRef, showClearButton } = useNumber({
|
|
726
|
+
locale,
|
|
727
|
+
value,
|
|
728
|
+
onChange,
|
|
729
|
+
onValueChange,
|
|
730
|
+
onClear,
|
|
731
|
+
isReadOnly,
|
|
732
|
+
isClearable,
|
|
733
|
+
ref
|
|
734
|
+
});
|
|
735
|
+
const normalizedValue = currentValue === null ? globalThis.Number.NaN : currentValue;
|
|
736
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
737
|
+
import_number_input.NumberInput,
|
|
738
|
+
{
|
|
739
|
+
ref: mergedRef,
|
|
740
|
+
classNames: {
|
|
741
|
+
...classNames,
|
|
742
|
+
inputWrapper: cn(inputWrapperVariants2({ variant }), classNames == null ? void 0 : classNames.inputWrapper),
|
|
743
|
+
innerWrapper: cn("group", classNames == null ? void 0 : classNames.innerWrapper)
|
|
744
|
+
},
|
|
745
|
+
endContent: (endContent || showClearButton) && /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: "flex items-center gap-1", children: [
|
|
746
|
+
endContent,
|
|
747
|
+
showClearButton && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ClearButton, { onClear: handleClear })
|
|
748
|
+
] }),
|
|
749
|
+
inputMode: "decimal",
|
|
750
|
+
isReadOnly,
|
|
751
|
+
value: normalizedValue,
|
|
752
|
+
variant,
|
|
753
|
+
onChange: handleValueChange,
|
|
754
|
+
...props
|
|
755
|
+
}
|
|
756
|
+
);
|
|
757
|
+
}
|
|
758
|
+
);
|
|
759
|
+
Number2.displayName = "TeachInUI.Number";
|
|
760
|
+
|
|
761
|
+
// src/ui/inputs/search/search.tsx
|
|
762
|
+
var import_react24 = __toESM(require("react"));
|
|
514
763
|
var import_lucide_react2 = require("lucide-react");
|
|
515
764
|
var import_button4 = require("@heroui/button");
|
|
516
|
-
var
|
|
765
|
+
var import_tailwind_variants4 = require("tailwind-variants");
|
|
517
766
|
|
|
518
767
|
// src/ui/inputs/search/use-search.ts
|
|
519
|
-
var
|
|
768
|
+
var import_react23 = require("react");
|
|
520
769
|
function useSearch({ value, onSearch, onCancel, onKeyDown }) {
|
|
521
|
-
const handleKeyDown = (0,
|
|
770
|
+
const handleKeyDown = (0, import_react23.useCallback)(
|
|
522
771
|
(event) => {
|
|
523
772
|
if (event.key === "Enter") {
|
|
524
773
|
event.preventDefault();
|
|
@@ -532,7 +781,7 @@ function useSearch({ value, onSearch, onCancel, onKeyDown }) {
|
|
|
532
781
|
[onSearch, onCancel, onKeyDown]
|
|
533
782
|
);
|
|
534
783
|
const hasValue = value !== void 0 && String(value).length > 0;
|
|
535
|
-
const handleSearchClick = (0,
|
|
784
|
+
const handleSearchClick = (0, import_react23.useCallback)(() => {
|
|
536
785
|
if (hasValue) {
|
|
537
786
|
onSearch == null ? void 0 : onSearch(value);
|
|
538
787
|
}
|
|
@@ -545,8 +794,8 @@ function useSearch({ value, onSearch, onCancel, onKeyDown }) {
|
|
|
545
794
|
}
|
|
546
795
|
|
|
547
796
|
// src/ui/inputs/search/search.tsx
|
|
548
|
-
var
|
|
549
|
-
var searchIconVariants = (0,
|
|
797
|
+
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
798
|
+
var searchIconVariants = (0, import_tailwind_variants4.tv)({
|
|
550
799
|
base: "size-5 shrink-0",
|
|
551
800
|
variants: {
|
|
552
801
|
variant: {
|
|
@@ -557,7 +806,7 @@ var searchIconVariants = (0, import_tailwind_variants2.tv)({
|
|
|
557
806
|
}
|
|
558
807
|
}
|
|
559
808
|
});
|
|
560
|
-
var Search =
|
|
809
|
+
var Search = import_react24.default.forwardRef(
|
|
561
810
|
({ variant = "bordered", radius = "full", value, onSearch, onCancel, onKeyDown, ...props }, ref) => {
|
|
562
811
|
const { handleKeyDown, handleSearchClick, hasValue } = useSearch({
|
|
563
812
|
value,
|
|
@@ -565,12 +814,12 @@ var Search = import_react22.default.forwardRef(
|
|
|
565
814
|
onCancel,
|
|
566
815
|
onKeyDown
|
|
567
816
|
});
|
|
568
|
-
return /* @__PURE__ */ (0,
|
|
817
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
569
818
|
Input,
|
|
570
819
|
{
|
|
571
820
|
ref,
|
|
572
821
|
radius,
|
|
573
|
-
startContent: onSearch ? /* @__PURE__ */ (0,
|
|
822
|
+
startContent: onSearch ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
574
823
|
import_button4.Button,
|
|
575
824
|
{
|
|
576
825
|
isIconOnly: true,
|
|
@@ -580,9 +829,9 @@ var Search = import_react22.default.forwardRef(
|
|
|
580
829
|
size: "sm",
|
|
581
830
|
variant: "light",
|
|
582
831
|
onPress: handleSearchClick,
|
|
583
|
-
children: /* @__PURE__ */ (0,
|
|
832
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_lucide_react2.SearchIcon, { className: searchIconVariants({ variant }) })
|
|
584
833
|
}
|
|
585
|
-
) : /* @__PURE__ */ (0,
|
|
834
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_lucide_react2.SearchIcon, { className: searchIconVariants({ variant }) }),
|
|
586
835
|
value,
|
|
587
836
|
variant,
|
|
588
837
|
onKeyDown: handleKeyDown,
|
|
@@ -594,12 +843,12 @@ var Search = import_react22.default.forwardRef(
|
|
|
594
843
|
Search.displayName = "TeachInUI.Search";
|
|
595
844
|
|
|
596
845
|
// src/ui/inputs/select/select.tsx
|
|
597
|
-
var
|
|
846
|
+
var import_react26 = __toESM(require("react"));
|
|
598
847
|
var import_select = require("@heroui/select");
|
|
599
|
-
var
|
|
848
|
+
var import_tailwind_variants5 = require("tailwind-variants");
|
|
600
849
|
|
|
601
850
|
// src/ui/inputs/select/use-select.ts
|
|
602
|
-
var
|
|
851
|
+
var import_react25 = require("react");
|
|
603
852
|
function useSelect({
|
|
604
853
|
value,
|
|
605
854
|
onChange,
|
|
@@ -608,34 +857,27 @@ function useSelect({
|
|
|
608
857
|
isClearable = true
|
|
609
858
|
}) {
|
|
610
859
|
const isMultiple = selectionMode === "multiple";
|
|
611
|
-
const [
|
|
612
|
-
isMultiple ? [] : null
|
|
613
|
-
);
|
|
614
|
-
const isControlled = value !== void 0;
|
|
615
|
-
const currentValue = isControlled ? value : internalValue;
|
|
860
|
+
const currentValue = value != null ? value : isMultiple ? [] : null;
|
|
616
861
|
const hasValue = currentValue != null && (Array.isArray(currentValue) ? currentValue.length > 0 : currentValue !== "");
|
|
617
|
-
const handleChange = (0,
|
|
862
|
+
const handleChange = (0, import_react25.useCallback)(
|
|
618
863
|
(newValue) => {
|
|
619
|
-
if (!isControlled) {
|
|
620
|
-
setInternalValue(newValue);
|
|
621
|
-
}
|
|
622
864
|
if (isMultiple) {
|
|
623
865
|
onChange == null ? void 0 : onChange(newValue);
|
|
624
866
|
} else {
|
|
625
867
|
onChange == null ? void 0 : onChange(newValue);
|
|
626
868
|
}
|
|
627
869
|
},
|
|
628
|
-
[
|
|
870
|
+
[onChange, isMultiple]
|
|
629
871
|
);
|
|
630
|
-
const handleClear = (0,
|
|
872
|
+
const handleClear = (0, import_react25.useCallback)(() => {
|
|
631
873
|
onClear == null ? void 0 : onClear();
|
|
632
874
|
handleChange(isMultiple ? [] : null);
|
|
633
875
|
}, [onClear, handleChange, isMultiple]);
|
|
634
|
-
const selectedKeys = (0,
|
|
876
|
+
const selectedKeys = (0, import_react25.useMemo)(() => {
|
|
635
877
|
if (currentValue == null) return /* @__PURE__ */ new Set();
|
|
636
878
|
return new Set(Array.isArray(currentValue) ? currentValue : [currentValue]);
|
|
637
879
|
}, [currentValue]);
|
|
638
|
-
const handleSelectionChange = (0,
|
|
880
|
+
const handleSelectionChange = (0, import_react25.useCallback)(
|
|
639
881
|
(keys) => {
|
|
640
882
|
var _a;
|
|
641
883
|
if (keys === "all") return;
|
|
@@ -656,8 +898,8 @@ function useSelect({
|
|
|
656
898
|
}
|
|
657
899
|
|
|
658
900
|
// src/ui/inputs/select/select.tsx
|
|
659
|
-
var
|
|
660
|
-
var selectWrapperVariants = (0,
|
|
901
|
+
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
902
|
+
var selectWrapperVariants = (0, import_tailwind_variants5.tv)({
|
|
661
903
|
variants: {
|
|
662
904
|
variant: {
|
|
663
905
|
flat: "",
|
|
@@ -667,12 +909,14 @@ var selectWrapperVariants = (0, import_tailwind_variants3.tv)({
|
|
|
667
909
|
}
|
|
668
910
|
}
|
|
669
911
|
});
|
|
670
|
-
var Select =
|
|
912
|
+
var Select = import_react26.default.forwardRef(
|
|
671
913
|
({
|
|
672
914
|
value,
|
|
673
|
-
defaultSelectedKeys,
|
|
674
915
|
items,
|
|
916
|
+
children,
|
|
917
|
+
selectedKeys: selectedKeysProp,
|
|
675
918
|
onChange,
|
|
919
|
+
onSelectionChange,
|
|
676
920
|
selectionMode,
|
|
677
921
|
onClear,
|
|
678
922
|
variant,
|
|
@@ -681,6 +925,8 @@ var Select = import_react24.default.forwardRef(
|
|
|
681
925
|
isClearable,
|
|
682
926
|
...props
|
|
683
927
|
}, ref) => {
|
|
928
|
+
const usesExternalSelectionControl = selectedKeysProp !== void 0 || onSelectionChange !== void 0;
|
|
929
|
+
const selectChildren = children != null ? children : (item) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_select.SelectItem, { children: item.label }, item.key);
|
|
684
930
|
const { selectedKeys, handleSelectionChange, handleClear, showClearButton } = useSelect({
|
|
685
931
|
value,
|
|
686
932
|
onChange,
|
|
@@ -688,48 +934,48 @@ var Select = import_react24.default.forwardRef(
|
|
|
688
934
|
selectionMode,
|
|
689
935
|
isClearable
|
|
690
936
|
});
|
|
691
|
-
return /* @__PURE__ */ (0,
|
|
937
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
692
938
|
import_select.Select,
|
|
693
939
|
{
|
|
694
940
|
ref,
|
|
695
941
|
classNames: {
|
|
696
942
|
...classNames,
|
|
697
|
-
trigger: selectWrapperVariants({ variant }),
|
|
943
|
+
trigger: cn(selectWrapperVariants({ variant }), classNames == null ? void 0 : classNames.trigger),
|
|
698
944
|
innerWrapper: "group"
|
|
699
945
|
},
|
|
700
|
-
|
|
701
|
-
endContent: (endContent || showClearButton) && /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "flex items-center gap-1", children: [
|
|
946
|
+
endContent: (endContent || showClearButton) && /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { className: "flex items-center gap-1", children: [
|
|
702
947
|
endContent,
|
|
703
|
-
showClearButton && /* @__PURE__ */ (0,
|
|
948
|
+
showClearButton && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(ClearButton, { onClear: handleClear })
|
|
704
949
|
] }),
|
|
705
950
|
items,
|
|
706
|
-
selectedKeys,
|
|
951
|
+
selectedKeys: usesExternalSelectionControl ? selectedKeysProp : selectedKeys,
|
|
707
952
|
selectionMode,
|
|
708
953
|
variant,
|
|
709
|
-
onSelectionChange: handleSelectionChange,
|
|
954
|
+
onSelectionChange: usesExternalSelectionControl ? onSelectionChange : handleSelectionChange,
|
|
710
955
|
...props,
|
|
711
|
-
children:
|
|
956
|
+
children: selectChildren
|
|
712
957
|
}
|
|
713
958
|
);
|
|
714
959
|
}
|
|
715
960
|
);
|
|
716
961
|
Select.displayName = "TeachInUI.Select";
|
|
962
|
+
var SelectItem = import_select.SelectItem;
|
|
717
963
|
|
|
718
964
|
// src/ui/inputs/switch/switch.tsx
|
|
719
|
-
var
|
|
965
|
+
var import_react27 = __toESM(require("react"));
|
|
720
966
|
var import_switch = require("@heroui/switch");
|
|
721
|
-
var
|
|
722
|
-
var Switch =
|
|
723
|
-
return /* @__PURE__ */ (0,
|
|
967
|
+
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
968
|
+
var Switch = import_react27.default.forwardRef(({ ...props }, ref) => {
|
|
969
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_switch.Switch, { ref, ...props });
|
|
724
970
|
});
|
|
725
971
|
Switch.displayName = "TeachInUI.Switch";
|
|
726
972
|
|
|
727
973
|
// src/ui/inputs/switch/favorite-switch.tsx
|
|
728
974
|
var import_switch2 = require("@heroui/switch");
|
|
729
975
|
var import_lucide_react3 = require("lucide-react");
|
|
730
|
-
var
|
|
731
|
-
var
|
|
732
|
-
var bookmarkVariants = (0,
|
|
976
|
+
var import_tailwind_variants6 = require("tailwind-variants");
|
|
977
|
+
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
978
|
+
var bookmarkVariants = (0, import_tailwind_variants6.tv)({
|
|
733
979
|
base: "stroke-default-400 group-hover:fill-primary-100 group-hover:stroke-default-400",
|
|
734
980
|
variants: {
|
|
735
981
|
size: {
|
|
@@ -745,7 +991,7 @@ var bookmarkVariants = (0, import_tailwind_variants4.tv)({
|
|
|
745
991
|
size: "md"
|
|
746
992
|
}
|
|
747
993
|
});
|
|
748
|
-
var wrapperVariants = (0,
|
|
994
|
+
var wrapperVariants = (0, import_tailwind_variants6.tv)({
|
|
749
995
|
base: "flex cursor-pointer items-center justify-center rounded-sm bg-transparent!",
|
|
750
996
|
variants: {
|
|
751
997
|
size: {
|
|
@@ -763,16 +1009,16 @@ function FavoriteSwitch({ isSelected, onValueChange, size }) {
|
|
|
763
1009
|
isSelected,
|
|
764
1010
|
onValueChange
|
|
765
1011
|
});
|
|
766
|
-
return /* @__PURE__ */ (0,
|
|
767
|
-
/* @__PURE__ */ (0,
|
|
768
|
-
/* @__PURE__ */ (0,
|
|
1012
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(Component, { ...getBaseProps(), children: [
|
|
1013
|
+
/* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "sr-only", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("input", { ...getInputProps() }) }),
|
|
1014
|
+
/* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
769
1015
|
"div",
|
|
770
1016
|
{
|
|
771
1017
|
...getWrapperProps(),
|
|
772
1018
|
className: slots.wrapper({
|
|
773
1019
|
class: wrapperVariants({ size })
|
|
774
1020
|
}),
|
|
775
|
-
children: /* @__PURE__ */ (0,
|
|
1021
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
776
1022
|
import_lucide_react3.BookmarkIcon,
|
|
777
1023
|
{
|
|
778
1024
|
absoluteStrokeWidth: true,
|
|
@@ -792,45 +1038,45 @@ var import_radio = require("@heroui/radio");
|
|
|
792
1038
|
var Radio = Object.assign(import_radio.Radio, { displayName: "TeachInUI.Radio" });
|
|
793
1039
|
|
|
794
1040
|
// src/ui/inputs/radio/radio-group.tsx
|
|
795
|
-
var
|
|
1041
|
+
var import_react28 = __toESM(require("react"));
|
|
796
1042
|
var import_radio2 = require("@heroui/radio");
|
|
797
|
-
var
|
|
798
|
-
var RadioGroup =
|
|
1043
|
+
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
1044
|
+
var RadioGroup = import_react28.default.forwardRef(
|
|
799
1045
|
(props, ref) => {
|
|
800
|
-
return /* @__PURE__ */ (0,
|
|
1046
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_radio2.RadioGroup, { ref, ...props });
|
|
801
1047
|
}
|
|
802
1048
|
);
|
|
803
1049
|
RadioGroup.displayName = "TeachInUI.RadioGroup";
|
|
804
1050
|
|
|
805
1051
|
// src/ui/inputs/text/text.tsx
|
|
806
|
-
var
|
|
807
|
-
var
|
|
808
|
-
var Text =
|
|
809
|
-
return /* @__PURE__ */ (0,
|
|
1052
|
+
var import_react29 = __toESM(require("react"));
|
|
1053
|
+
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
1054
|
+
var Text = import_react29.default.forwardRef(({ ...props }, ref) => {
|
|
1055
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Input, { ref, type: "text", ...props });
|
|
810
1056
|
});
|
|
811
1057
|
Text.displayName = "TeachInUI.Text";
|
|
812
1058
|
|
|
813
1059
|
// src/ui/inputs/textarea/textarea.tsx
|
|
814
1060
|
var import_input6 = require("@heroui/input");
|
|
815
|
-
var
|
|
816
|
-
var
|
|
817
|
-
var Textarea =
|
|
1061
|
+
var import_react30 = __toESM(require("react"));
|
|
1062
|
+
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
1063
|
+
var Textarea = import_react30.default.forwardRef(
|
|
818
1064
|
({ minRows = 4, ...props }, ref) => {
|
|
819
|
-
return /* @__PURE__ */ (0,
|
|
1065
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_input6.Textarea, { ref, minRows, ...props });
|
|
820
1066
|
}
|
|
821
1067
|
);
|
|
822
1068
|
Textarea.displayName = "TeachInUI.Textarea";
|
|
823
1069
|
|
|
824
1070
|
// src/ui/form/rhf/fields/input-field.tsx
|
|
825
|
-
var
|
|
1071
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
826
1072
|
function InputField({ name, ...props }) {
|
|
827
1073
|
const { control } = (0, import_react_hook_form.useFormContext)();
|
|
828
|
-
return /* @__PURE__ */ (0,
|
|
1074
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
829
1075
|
import_react_hook_form.Controller,
|
|
830
1076
|
{
|
|
831
1077
|
control,
|
|
832
1078
|
name,
|
|
833
|
-
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0,
|
|
1079
|
+
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
834
1080
|
Input,
|
|
835
1081
|
{
|
|
836
1082
|
...props,
|
|
@@ -848,15 +1094,15 @@ InputField.displayName = "TeachInUI.InputField";
|
|
|
848
1094
|
|
|
849
1095
|
// src/ui/form/rhf/fields/text-field.tsx
|
|
850
1096
|
var import_react_hook_form2 = require("react-hook-form");
|
|
851
|
-
var
|
|
1097
|
+
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
852
1098
|
function TextField({ name, ...props }) {
|
|
853
1099
|
const { control } = (0, import_react_hook_form2.useFormContext)();
|
|
854
|
-
return /* @__PURE__ */ (0,
|
|
1100
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
855
1101
|
import_react_hook_form2.Controller,
|
|
856
1102
|
{
|
|
857
1103
|
control,
|
|
858
1104
|
name,
|
|
859
|
-
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0,
|
|
1105
|
+
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Text, { ...props, ...field, ref, errorMessage: error == null ? void 0 : error.message, isInvalid: !!error })
|
|
860
1106
|
}
|
|
861
1107
|
);
|
|
862
1108
|
}
|
|
@@ -864,15 +1110,15 @@ TextField.displayName = "TeachInUI.TextField";
|
|
|
864
1110
|
|
|
865
1111
|
// src/ui/form/rhf/fields/email-field.tsx
|
|
866
1112
|
var import_react_hook_form3 = require("react-hook-form");
|
|
867
|
-
var
|
|
1113
|
+
var import_jsx_runtime30 = require("react/jsx-runtime");
|
|
868
1114
|
function EmailField({ name, ...props }) {
|
|
869
1115
|
const { control } = (0, import_react_hook_form3.useFormContext)();
|
|
870
|
-
return /* @__PURE__ */ (0,
|
|
1116
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
871
1117
|
import_react_hook_form3.Controller,
|
|
872
1118
|
{
|
|
873
1119
|
control,
|
|
874
1120
|
name,
|
|
875
|
-
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0,
|
|
1121
|
+
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Email, { ...props, ...field, ref, errorMessage: error == null ? void 0 : error.message, isInvalid: !!error })
|
|
876
1122
|
}
|
|
877
1123
|
);
|
|
878
1124
|
}
|
|
@@ -880,15 +1126,15 @@ EmailField.displayName = "TeachInUI.EmailField";
|
|
|
880
1126
|
|
|
881
1127
|
// src/ui/form/rhf/fields/search-field.tsx
|
|
882
1128
|
var import_react_hook_form4 = require("react-hook-form");
|
|
883
|
-
var
|
|
1129
|
+
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
884
1130
|
function SearchField({ name, ...props }) {
|
|
885
1131
|
const { control } = (0, import_react_hook_form4.useFormContext)();
|
|
886
|
-
return /* @__PURE__ */ (0,
|
|
1132
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
887
1133
|
import_react_hook_form4.Controller,
|
|
888
1134
|
{
|
|
889
1135
|
control,
|
|
890
1136
|
name,
|
|
891
|
-
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0,
|
|
1137
|
+
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
892
1138
|
Search,
|
|
893
1139
|
{
|
|
894
1140
|
...props,
|
|
@@ -906,15 +1152,15 @@ SearchField.displayName = "TeachInUI.SearchField";
|
|
|
906
1152
|
|
|
907
1153
|
// src/ui/form/rhf/fields/textarea-field.tsx
|
|
908
1154
|
var import_react_hook_form5 = require("react-hook-form");
|
|
909
|
-
var
|
|
1155
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
910
1156
|
function TextareaField({ name, ...props }) {
|
|
911
1157
|
const { control } = (0, import_react_hook_form5.useFormContext)();
|
|
912
|
-
return /* @__PURE__ */ (0,
|
|
1158
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
913
1159
|
import_react_hook_form5.Controller,
|
|
914
1160
|
{
|
|
915
1161
|
control,
|
|
916
1162
|
name,
|
|
917
|
-
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0,
|
|
1163
|
+
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
918
1164
|
Textarea,
|
|
919
1165
|
{
|
|
920
1166
|
...props,
|
|
@@ -931,15 +1177,15 @@ TextareaField.displayName = "TeachInUI.TextareaField";
|
|
|
931
1177
|
|
|
932
1178
|
// src/ui/form/rhf/fields/select-field.tsx
|
|
933
1179
|
var import_react_hook_form6 = require("react-hook-form");
|
|
934
|
-
var
|
|
1180
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
935
1181
|
function SelectField({ name, selectionMode, ...props }) {
|
|
936
1182
|
const { control } = (0, import_react_hook_form6.useFormContext)();
|
|
937
|
-
return /* @__PURE__ */ (0,
|
|
1183
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
938
1184
|
import_react_hook_form6.Controller,
|
|
939
1185
|
{
|
|
940
1186
|
control,
|
|
941
1187
|
name,
|
|
942
|
-
render: ({ field, fieldState: { error } }) => /* @__PURE__ */ (0,
|
|
1188
|
+
render: ({ field, fieldState: { error } }) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
943
1189
|
Select,
|
|
944
1190
|
{
|
|
945
1191
|
selectionMode,
|
|
@@ -957,15 +1203,15 @@ SelectField.displayName = "TeachInUI.SelectField";
|
|
|
957
1203
|
|
|
958
1204
|
// src/ui/form/rhf/fields/autocomplete-field.tsx
|
|
959
1205
|
var import_react_hook_form7 = require("react-hook-form");
|
|
960
|
-
var
|
|
1206
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
961
1207
|
function AutocompleteField({ name, ...props }) {
|
|
962
1208
|
const { control } = (0, import_react_hook_form7.useFormContext)();
|
|
963
|
-
return /* @__PURE__ */ (0,
|
|
1209
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
964
1210
|
import_react_hook_form7.Controller,
|
|
965
1211
|
{
|
|
966
1212
|
control,
|
|
967
1213
|
name,
|
|
968
|
-
render: ({ field, fieldState: { error } }) => /* @__PURE__ */ (0,
|
|
1214
|
+
render: ({ field, fieldState: { error } }) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
969
1215
|
Autocomplete,
|
|
970
1216
|
{
|
|
971
1217
|
...props,
|
|
@@ -982,15 +1228,15 @@ AutocompleteField.displayName = "TeachInUI.AutocompleteField";
|
|
|
982
1228
|
|
|
983
1229
|
// src/ui/form/rhf/fields/date-picker-field.tsx
|
|
984
1230
|
var import_react_hook_form8 = require("react-hook-form");
|
|
985
|
-
var
|
|
1231
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
986
1232
|
function DatePickerField({ name, ...props }) {
|
|
987
1233
|
const { control } = (0, import_react_hook_form8.useFormContext)();
|
|
988
|
-
return /* @__PURE__ */ (0,
|
|
1234
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
989
1235
|
import_react_hook_form8.Controller,
|
|
990
1236
|
{
|
|
991
1237
|
control,
|
|
992
1238
|
name,
|
|
993
|
-
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0,
|
|
1239
|
+
render: ({ field: { ref, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
994
1240
|
DatePicker,
|
|
995
1241
|
{
|
|
996
1242
|
...props,
|
|
@@ -1007,17 +1253,17 @@ DatePickerField.displayName = "TeachInUI.DatePickerField";
|
|
|
1007
1253
|
|
|
1008
1254
|
// src/ui/form/rhf/fields/checkbox-field.tsx
|
|
1009
1255
|
var import_react_hook_form9 = require("react-hook-form");
|
|
1010
|
-
var
|
|
1256
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
1011
1257
|
function CheckboxField({ name, ...props }) {
|
|
1012
1258
|
const { control } = (0, import_react_hook_form9.useFormContext)();
|
|
1013
|
-
return /* @__PURE__ */ (0,
|
|
1259
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
1014
1260
|
import_react_hook_form9.Controller,
|
|
1015
1261
|
{
|
|
1016
1262
|
control,
|
|
1017
1263
|
name,
|
|
1018
|
-
render: ({ field, fieldState: { error } }) => /* @__PURE__ */ (0,
|
|
1019
|
-
/* @__PURE__ */ (0,
|
|
1020
|
-
error && /* @__PURE__ */ (0,
|
|
1264
|
+
render: ({ field, fieldState: { error } }) => /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { children: [
|
|
1265
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Checkbox, { ...props, isSelected: field.value, onValueChange: field.onChange }),
|
|
1266
|
+
error && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "text-tiny text-danger", children: error.message })
|
|
1021
1267
|
] })
|
|
1022
1268
|
}
|
|
1023
1269
|
);
|
|
@@ -1026,17 +1272,17 @@ CheckboxField.displayName = "TeachInUI.CheckboxField";
|
|
|
1026
1272
|
|
|
1027
1273
|
// src/ui/form/rhf/fields/switch-field.tsx
|
|
1028
1274
|
var import_react_hook_form10 = require("react-hook-form");
|
|
1029
|
-
var
|
|
1275
|
+
var import_jsx_runtime37 = require("react/jsx-runtime");
|
|
1030
1276
|
function SwitchField({ name, ...props }) {
|
|
1031
1277
|
const { control } = (0, import_react_hook_form10.useFormContext)();
|
|
1032
|
-
return /* @__PURE__ */ (0,
|
|
1278
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
1033
1279
|
import_react_hook_form10.Controller,
|
|
1034
1280
|
{
|
|
1035
1281
|
control,
|
|
1036
1282
|
name,
|
|
1037
|
-
render: ({ field, fieldState: { error } }) => /* @__PURE__ */ (0,
|
|
1038
|
-
/* @__PURE__ */ (0,
|
|
1039
|
-
error && /* @__PURE__ */ (0,
|
|
1283
|
+
render: ({ field, fieldState: { error } }) => /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { children: [
|
|
1284
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Switch, { ...props, isSelected: field.value, onValueChange: field.onChange }),
|
|
1285
|
+
error && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("span", { className: "text-tiny text-danger", children: error.message })
|
|
1040
1286
|
] })
|
|
1041
1287
|
}
|
|
1042
1288
|
);
|
|
@@ -1045,15 +1291,15 @@ SwitchField.displayName = "TeachInUI.SwitchField";
|
|
|
1045
1291
|
|
|
1046
1292
|
// src/ui/form/rhf/fields/radio-field.tsx
|
|
1047
1293
|
var import_react_hook_form11 = require("react-hook-form");
|
|
1048
|
-
var
|
|
1294
|
+
var import_jsx_runtime38 = require("react/jsx-runtime");
|
|
1049
1295
|
function RadioField({ name, ...props }) {
|
|
1050
1296
|
const { control } = (0, import_react_hook_form11.useFormContext)();
|
|
1051
|
-
return /* @__PURE__ */ (0,
|
|
1297
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
1052
1298
|
import_react_hook_form11.Controller,
|
|
1053
1299
|
{
|
|
1054
1300
|
control,
|
|
1055
1301
|
name,
|
|
1056
|
-
render: ({ field: { ref, value, onChange, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0,
|
|
1302
|
+
render: ({ field: { ref, value, onChange, ...field }, fieldState: { error } }) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
1057
1303
|
RadioGroup,
|
|
1058
1304
|
{
|
|
1059
1305
|
...props,
|
|
@@ -1072,15 +1318,15 @@ RadioField.displayName = "TeachInUI.RadioField";
|
|
|
1072
1318
|
|
|
1073
1319
|
// src/ui/form/form.tsx
|
|
1074
1320
|
var import_form = require("@heroui/form");
|
|
1075
|
-
var
|
|
1076
|
-
var
|
|
1077
|
-
var Form =
|
|
1078
|
-
return /* @__PURE__ */ (0,
|
|
1321
|
+
var import_react31 = __toESM(require("react"));
|
|
1322
|
+
var import_jsx_runtime39 = require("react/jsx-runtime");
|
|
1323
|
+
var Form = import_react31.default.forwardRef(({ ...props }, ref) => {
|
|
1324
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_form.Form, { ref, ...props });
|
|
1079
1325
|
});
|
|
1080
1326
|
Form.displayName = "TeachInUI.Form";
|
|
1081
1327
|
|
|
1082
1328
|
// src/ui/format/datetime.tsx
|
|
1083
|
-
var
|
|
1329
|
+
var import_jsx_runtime40 = require("react/jsx-runtime");
|
|
1084
1330
|
var defaultFormat = {
|
|
1085
1331
|
day: "numeric",
|
|
1086
1332
|
month: "long",
|
|
@@ -1096,15 +1342,15 @@ function Datetime({
|
|
|
1096
1342
|
fallback = "\u2014"
|
|
1097
1343
|
}) {
|
|
1098
1344
|
const formatter = new Intl.DateTimeFormat(locale, format);
|
|
1099
|
-
if (!value) return /* @__PURE__ */ (0,
|
|
1345
|
+
if (!value) return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_jsx_runtime40.Fragment, { children: fallback });
|
|
1100
1346
|
const date = value instanceof Date ? value : new Date(value);
|
|
1101
|
-
if (isNaN(date.getTime())) return /* @__PURE__ */ (0,
|
|
1102
|
-
return /* @__PURE__ */ (0,
|
|
1347
|
+
if (isNaN(date.getTime())) return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_jsx_runtime40.Fragment, { children: fallback });
|
|
1348
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_jsx_runtime40.Fragment, { children: formatter.format(date) });
|
|
1103
1349
|
}
|
|
1104
1350
|
Datetime.displayName = "TeachInUI.FormatDatetime";
|
|
1105
1351
|
|
|
1106
1352
|
// src/ui/format/date.tsx
|
|
1107
|
-
var
|
|
1353
|
+
var import_jsx_runtime41 = require("react/jsx-runtime");
|
|
1108
1354
|
var defaultFormat2 = {
|
|
1109
1355
|
day: "numeric",
|
|
1110
1356
|
month: "long",
|
|
@@ -1117,15 +1363,15 @@ function DateFormat({
|
|
|
1117
1363
|
fallback = "\u2014"
|
|
1118
1364
|
}) {
|
|
1119
1365
|
const formatter = new Intl.DateTimeFormat(locale, format);
|
|
1120
|
-
if (!value) return /* @__PURE__ */ (0,
|
|
1366
|
+
if (!value) return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_jsx_runtime41.Fragment, { children: fallback });
|
|
1121
1367
|
const date = value instanceof Date ? value : new Date(value);
|
|
1122
|
-
if (isNaN(date.getTime())) return /* @__PURE__ */ (0,
|
|
1123
|
-
return /* @__PURE__ */ (0,
|
|
1368
|
+
if (isNaN(date.getTime())) return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_jsx_runtime41.Fragment, { children: fallback });
|
|
1369
|
+
return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_jsx_runtime41.Fragment, { children: formatter.format(date) });
|
|
1124
1370
|
}
|
|
1125
1371
|
DateFormat.displayName = "TeachInUI.FormatDate";
|
|
1126
1372
|
|
|
1127
1373
|
// src/ui/format/time.tsx
|
|
1128
|
-
var
|
|
1374
|
+
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
1129
1375
|
var defaultFormat3 = {
|
|
1130
1376
|
hour: "2-digit",
|
|
1131
1377
|
minute: "2-digit"
|
|
@@ -1137,15 +1383,15 @@ function Time({
|
|
|
1137
1383
|
fallback = "\u2014"
|
|
1138
1384
|
}) {
|
|
1139
1385
|
const formatter = new Intl.DateTimeFormat(locale, format);
|
|
1140
|
-
if (!value) return /* @__PURE__ */ (0,
|
|
1386
|
+
if (!value) return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_jsx_runtime42.Fragment, { children: fallback });
|
|
1141
1387
|
const date = value instanceof Date ? value : new Date(value);
|
|
1142
|
-
if (isNaN(date.getTime())) return /* @__PURE__ */ (0,
|
|
1143
|
-
return /* @__PURE__ */ (0,
|
|
1388
|
+
if (isNaN(date.getTime())) return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_jsx_runtime42.Fragment, { children: fallback });
|
|
1389
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_jsx_runtime42.Fragment, { children: formatter.format(date) });
|
|
1144
1390
|
}
|
|
1145
1391
|
Time.displayName = "TeachInUI.FormatTime";
|
|
1146
1392
|
|
|
1147
1393
|
// src/ui/format/currency.tsx
|
|
1148
|
-
var
|
|
1394
|
+
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
1149
1395
|
function Currency({
|
|
1150
1396
|
amount,
|
|
1151
1397
|
currency = "RUB",
|
|
@@ -1160,23 +1406,23 @@ function Currency({
|
|
|
1160
1406
|
maximumFractionDigits: decimals
|
|
1161
1407
|
}
|
|
1162
1408
|
});
|
|
1163
|
-
return /* @__PURE__ */ (0,
|
|
1409
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_jsx_runtime43.Fragment, { children: formatter.format(amount) });
|
|
1164
1410
|
}
|
|
1165
1411
|
Currency.displayName = "TeachInUI.FormatCurrency";
|
|
1166
1412
|
|
|
1167
1413
|
// src/ui/format/number.tsx
|
|
1168
|
-
var
|
|
1169
|
-
function
|
|
1414
|
+
var import_jsx_runtime44 = require("react/jsx-runtime");
|
|
1415
|
+
function Number3({ value, decimals, locale = "ru-RU" }) {
|
|
1170
1416
|
const formatter = new Intl.NumberFormat(locale, {
|
|
1171
1417
|
minimumFractionDigits: decimals != null ? decimals : 0,
|
|
1172
1418
|
maximumFractionDigits: decimals != null ? decimals : 2
|
|
1173
1419
|
});
|
|
1174
|
-
return /* @__PURE__ */ (0,
|
|
1420
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_jsx_runtime44.Fragment, { children: formatter.format(value) });
|
|
1175
1421
|
}
|
|
1176
|
-
|
|
1422
|
+
Number3.displayName = "TeachInUI.FormatNumber";
|
|
1177
1423
|
|
|
1178
1424
|
// src/ui/format/percent.tsx
|
|
1179
|
-
var
|
|
1425
|
+
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
1180
1426
|
function Percent({
|
|
1181
1427
|
value,
|
|
1182
1428
|
decimals = 1,
|
|
@@ -1189,12 +1435,12 @@ function Percent({
|
|
|
1189
1435
|
maximumFractionDigits: decimals
|
|
1190
1436
|
});
|
|
1191
1437
|
const normalizedValue = unit === "percent" ? value / 100 : value;
|
|
1192
|
-
return /* @__PURE__ */ (0,
|
|
1438
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_jsx_runtime45.Fragment, { children: formatter.format(normalizedValue) });
|
|
1193
1439
|
}
|
|
1194
1440
|
Percent.displayName = "TeachInUI.FormatPercent";
|
|
1195
1441
|
|
|
1196
1442
|
// src/ui/format/plural.tsx
|
|
1197
|
-
var
|
|
1443
|
+
var import_jsx_runtime46 = require("react/jsx-runtime");
|
|
1198
1444
|
function Plural({
|
|
1199
1445
|
count,
|
|
1200
1446
|
one,
|
|
@@ -1215,12 +1461,12 @@ function Plural({
|
|
|
1215
1461
|
};
|
|
1216
1462
|
const selectedForm = forms[rule];
|
|
1217
1463
|
const result = showCount ? `${count} ${selectedForm}` : selectedForm;
|
|
1218
|
-
return /* @__PURE__ */ (0,
|
|
1464
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_jsx_runtime46.Fragment, { children: result });
|
|
1219
1465
|
}
|
|
1220
1466
|
Plural.displayName = "TeachInUI.FormatPlural";
|
|
1221
1467
|
|
|
1222
1468
|
// src/ui/format/duration.tsx
|
|
1223
|
-
var
|
|
1469
|
+
var import_jsx_runtime47 = require("react/jsx-runtime");
|
|
1224
1470
|
function Duration({
|
|
1225
1471
|
minutes = 0,
|
|
1226
1472
|
hours = 0,
|
|
@@ -1242,25 +1488,25 @@ function Duration({
|
|
|
1242
1488
|
if (remainingMinutes > 0 || totalDays === 0 && totalHours === 0) {
|
|
1243
1489
|
parts.push(compact ? `${remainingMinutes}\u043C` : `${remainingMinutes} \u043C\u0438\u043D`);
|
|
1244
1490
|
}
|
|
1245
|
-
return /* @__PURE__ */ (0,
|
|
1491
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_jsx_runtime47.Fragment, { children: parts.join(" ") });
|
|
1246
1492
|
}
|
|
1247
1493
|
Duration.displayName = "TeachInUI.FormatDuration";
|
|
1248
1494
|
|
|
1249
1495
|
// src/ui/format/boolean.tsx
|
|
1250
|
-
var
|
|
1251
|
-
function
|
|
1496
|
+
var import_jsx_runtime48 = require("react/jsx-runtime");
|
|
1497
|
+
function Boolean2({
|
|
1252
1498
|
value,
|
|
1253
1499
|
trueLabel = "\u0414\u0430",
|
|
1254
1500
|
falseLabel = "\u041D\u0435\u0442",
|
|
1255
1501
|
nullLabel = "\u2014"
|
|
1256
1502
|
}) {
|
|
1257
|
-
if (value === null || value === void 0) return /* @__PURE__ */ (0,
|
|
1258
|
-
return /* @__PURE__ */ (0,
|
|
1503
|
+
if (value === null || value === void 0) return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_jsx_runtime48.Fragment, { children: nullLabel });
|
|
1504
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_jsx_runtime48.Fragment, { children: value ? trueLabel : falseLabel });
|
|
1259
1505
|
}
|
|
1260
|
-
|
|
1506
|
+
Boolean2.displayName = "TeachInUI.FormatBoolean";
|
|
1261
1507
|
|
|
1262
1508
|
// src/ui/format/uuid.tsx
|
|
1263
|
-
var
|
|
1509
|
+
var import_jsx_runtime49 = require("react/jsx-runtime");
|
|
1264
1510
|
var uuidHyphenatedRegex = /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/;
|
|
1265
1511
|
function normalizeUuid(value) {
|
|
1266
1512
|
const trimmed = value.trim();
|
|
@@ -1283,20 +1529,20 @@ function Uuid({
|
|
|
1283
1529
|
showVersion = false,
|
|
1284
1530
|
invalidFallback = "\u2014"
|
|
1285
1531
|
}) {
|
|
1286
|
-
if (!value) return /* @__PURE__ */ (0,
|
|
1532
|
+
if (!value) return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_jsx_runtime49.Fragment, { children: invalidFallback });
|
|
1287
1533
|
const normalized = normalizeUuid(value);
|
|
1288
|
-
if (!normalized) return /* @__PURE__ */ (0,
|
|
1534
|
+
if (!normalized) return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_jsx_runtime49.Fragment, { children: invalidFallback });
|
|
1289
1535
|
const formatted = letterCase === "upper" ? normalized.toUpperCase() : normalized;
|
|
1290
|
-
if (!showVersion) return /* @__PURE__ */ (0,
|
|
1536
|
+
if (!showVersion) return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_jsx_runtime49.Fragment, { children: formatted });
|
|
1291
1537
|
const version = detectUuidVersion(normalized);
|
|
1292
|
-
return /* @__PURE__ */ (0,
|
|
1538
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_jsx_runtime49.Fragment, { children: version !== null ? `${formatted} (v${version})` : formatted });
|
|
1293
1539
|
}
|
|
1294
1540
|
Uuid.displayName = "TeachInUI.FormatUUID";
|
|
1295
1541
|
|
|
1296
1542
|
// src/ui/surface/bento/bento.tsx
|
|
1297
|
-
var
|
|
1298
|
-
var
|
|
1299
|
-
var bento = (0,
|
|
1543
|
+
var import_tailwind_variants7 = require("tailwind-variants");
|
|
1544
|
+
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
1545
|
+
var bento = (0, import_tailwind_variants7.tv)({
|
|
1300
1546
|
base: "p-8 transition-colors",
|
|
1301
1547
|
variants: {
|
|
1302
1548
|
color: {
|
|
@@ -1333,23 +1579,14 @@ var bento = (0, import_tailwind_variants5.tv)({
|
|
|
1333
1579
|
}
|
|
1334
1580
|
});
|
|
1335
1581
|
var Bento = ({ className, ...props }) => {
|
|
1336
|
-
return /* @__PURE__ */ (0,
|
|
1582
|
+
return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: bento({ ...props, className }), ...props });
|
|
1337
1583
|
};
|
|
1338
1584
|
Bento.displayName = "TeachInUI.Bento";
|
|
1339
1585
|
|
|
1340
1586
|
// src/ui/surface/card/card.tsx
|
|
1341
|
-
var
|
|
1587
|
+
var import_react32 = __toESM(require("react"));
|
|
1342
1588
|
var import_card = require("@heroui/card");
|
|
1343
|
-
|
|
1344
|
-
// src/ui/style/css.ts
|
|
1345
|
-
var import_clsx = require("clsx");
|
|
1346
|
-
var import_tailwind_merge = require("tailwind-merge");
|
|
1347
|
-
function cn(...inputs) {
|
|
1348
|
-
return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
|
|
1349
|
-
}
|
|
1350
|
-
|
|
1351
|
-
// src/ui/surface/card/card.tsx
|
|
1352
|
-
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
1589
|
+
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
1353
1590
|
var CardBase = extendVariants2(import_card.Card, {
|
|
1354
1591
|
variants: {
|
|
1355
1592
|
radius: {
|
|
@@ -1362,20 +1599,20 @@ var CardBase = extendVariants2(import_card.Card, {
|
|
|
1362
1599
|
shadow: "none"
|
|
1363
1600
|
}
|
|
1364
1601
|
});
|
|
1365
|
-
var Root =
|
|
1366
|
-
return /* @__PURE__ */ (0,
|
|
1602
|
+
var Root = import_react32.default.forwardRef(({ children, className, ...props }, ref) => {
|
|
1603
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(CardBase, { ref, className: cn("bg-default-100", className), ...props, children });
|
|
1367
1604
|
});
|
|
1368
1605
|
Root.displayName = "TeachInUI.Card.Root";
|
|
1369
|
-
var Header =
|
|
1370
|
-
return /* @__PURE__ */ (0,
|
|
1606
|
+
var Header = import_react32.default.forwardRef(({ children, ...props }, ref) => {
|
|
1607
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_card.CardHeader, { ref, ...props, children });
|
|
1371
1608
|
});
|
|
1372
1609
|
Header.displayName = "TeachInUI.Card.Header";
|
|
1373
|
-
var Body =
|
|
1374
|
-
return /* @__PURE__ */ (0,
|
|
1610
|
+
var Body = import_react32.default.forwardRef(({ children, ...props }, ref) => {
|
|
1611
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_card.CardBody, { ref, ...props, children });
|
|
1375
1612
|
});
|
|
1376
1613
|
Body.displayName = "TeachInUI.Card.Body";
|
|
1377
|
-
var Footer =
|
|
1378
|
-
return /* @__PURE__ */ (0,
|
|
1614
|
+
var Footer = import_react32.default.forwardRef(({ children, ...props }, ref) => {
|
|
1615
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_card.CardFooter, { ref, ...props, children });
|
|
1379
1616
|
});
|
|
1380
1617
|
Footer.displayName = "TeachInUI.Card.Footer";
|
|
1381
1618
|
var Card = {
|
|
@@ -1387,9 +1624,9 @@ var Card = {
|
|
|
1387
1624
|
|
|
1388
1625
|
// src/ui/layout/container/container.tsx
|
|
1389
1626
|
var import_react_slot = require("@radix-ui/react-slot");
|
|
1390
|
-
var
|
|
1391
|
-
var
|
|
1392
|
-
var variants = (0,
|
|
1627
|
+
var import_tailwind_variants8 = require("tailwind-variants");
|
|
1628
|
+
var import_jsx_runtime52 = require("react/jsx-runtime");
|
|
1629
|
+
var variants = (0, import_tailwind_variants8.tv)({
|
|
1393
1630
|
base: "w-full mx-auto px-6",
|
|
1394
1631
|
variants: {
|
|
1395
1632
|
size: {
|
|
@@ -1408,58 +1645,58 @@ var variants = (0, import_tailwind_variants6.tv)({
|
|
|
1408
1645
|
});
|
|
1409
1646
|
var Container = ({ children, asChild = false, className, size, ...props }) => {
|
|
1410
1647
|
const Comp = asChild ? import_react_slot.Slot : "div";
|
|
1411
|
-
return /* @__PURE__ */ (0,
|
|
1648
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(Comp, { className: cn(variants({ size }), className), ...props, children });
|
|
1412
1649
|
};
|
|
1413
1650
|
Container.displayName = "TeachInUI.Container";
|
|
1414
1651
|
|
|
1415
1652
|
// src/ui/layout/page/breadcrumbs.tsx
|
|
1416
1653
|
var import_breadcrumbs = require("@heroui/breadcrumbs");
|
|
1417
|
-
var
|
|
1418
|
-
var Breadcrumbs = ({ items }) => /* @__PURE__ */ (0,
|
|
1654
|
+
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
1655
|
+
var Breadcrumbs = ({ items }) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_breadcrumbs.Breadcrumbs, { children: items.map((item) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_breadcrumbs.BreadcrumbItem, { href: item.href, isDisabled: item.href === void 0, children: item.label }, item.label)) });
|
|
1419
1656
|
|
|
1420
1657
|
// src/ui/layout/page/page-content.tsx
|
|
1421
|
-
var
|
|
1658
|
+
var import_jsx_runtime54 = require("react/jsx-runtime");
|
|
1422
1659
|
var Root2 = ({
|
|
1423
1660
|
children,
|
|
1424
1661
|
breadcrumbs = []
|
|
1425
|
-
}) => /* @__PURE__ */ (0,
|
|
1426
|
-
breadcrumbs.length > 0 && /* @__PURE__ */ (0,
|
|
1662
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "flex flex-col gap-6", children: [
|
|
1663
|
+
breadcrumbs.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(Breadcrumbs, { items: breadcrumbs }),
|
|
1427
1664
|
children
|
|
1428
1665
|
] });
|
|
1429
1666
|
Root2.displayName = "TeachInUI.PageContent.Root";
|
|
1430
|
-
var Header2 = ({ children, ...others }) => /* @__PURE__ */ (0,
|
|
1667
|
+
var Header2 = ({ children, ...others }) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("header", { className: "flex items-center justify-between gap-4", role: "banner", ...others, children });
|
|
1431
1668
|
Header2.displayName = "TeachInUI.PageContent.Header";
|
|
1432
1669
|
var Title = ({
|
|
1433
1670
|
children,
|
|
1434
1671
|
...others
|
|
1435
|
-
}) => /* @__PURE__ */ (0,
|
|
1672
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("h1", { className: "text-4xl leading-10 font-bold", ...others, children });
|
|
1436
1673
|
Title.displayName = "TeachInUI.PageContent.Title";
|
|
1437
1674
|
var Actions = ({
|
|
1438
1675
|
children,
|
|
1439
1676
|
...others
|
|
1440
|
-
}) => /* @__PURE__ */ (0,
|
|
1677
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "flex gap-2", role: "group", ...others, children });
|
|
1441
1678
|
Actions.displayName = "TeachInUI.PageContent.Actions";
|
|
1442
|
-
var Body2 = ({ children }) => /* @__PURE__ */ (0,
|
|
1679
|
+
var Body2 = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "flex flex-col gap-6", children });
|
|
1443
1680
|
Body2.displayName = "TeachInUI.PageContent.Body";
|
|
1444
1681
|
var Section = ({
|
|
1445
1682
|
children,
|
|
1446
1683
|
...others
|
|
1447
|
-
}) => /* @__PURE__ */ (0,
|
|
1684
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("section", { className: "flex flex-col gap-4", ...others, children });
|
|
1448
1685
|
Section.displayName = "TeachInUI.PageContent.Section";
|
|
1449
1686
|
var SectionHeader = ({
|
|
1450
1687
|
children,
|
|
1451
1688
|
...others
|
|
1452
|
-
}) => /* @__PURE__ */ (0,
|
|
1689
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "flex items-center justify-between", ...others, children });
|
|
1453
1690
|
SectionHeader.displayName = "TeachInUI.PageContent.SectionHeader";
|
|
1454
1691
|
var SectionTitle = ({
|
|
1455
1692
|
children,
|
|
1456
1693
|
...others
|
|
1457
|
-
}) => /* @__PURE__ */ (0,
|
|
1694
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("h2", { className: "text-3xl leading-9 font-bold", ...others, children });
|
|
1458
1695
|
SectionTitle.displayName = "TeachInUI.PageContent.SectionTitle";
|
|
1459
1696
|
var SectionActions = ({
|
|
1460
1697
|
children,
|
|
1461
1698
|
...others
|
|
1462
|
-
}) => /* @__PURE__ */ (0,
|
|
1699
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "flex gap-2", role: "group", ...others, children });
|
|
1463
1700
|
SectionActions.displayName = "TeachInUI.PageContent.SectionActions";
|
|
1464
1701
|
var PageContent = {
|
|
1465
1702
|
Root: Root2,
|
|
@@ -1474,19 +1711,19 @@ var PageContent = {
|
|
|
1474
1711
|
};
|
|
1475
1712
|
|
|
1476
1713
|
// src/ui/layout/page/page-loading.tsx
|
|
1477
|
-
var
|
|
1478
|
-
var PageLoading = () => /* @__PURE__ */ (0,
|
|
1714
|
+
var import_jsx_runtime55 = require("react/jsx-runtime");
|
|
1715
|
+
var PageLoading = () => /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "flex h-screen items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(Spinner, {}) });
|
|
1479
1716
|
PageLoading.displayName = "TeachInUI.PageLoading";
|
|
1480
1717
|
|
|
1481
1718
|
// src/ui/layout/page/section-loading.tsx
|
|
1482
|
-
var
|
|
1483
|
-
var SectionLoading = () => /* @__PURE__ */ (0,
|
|
1719
|
+
var import_jsx_runtime56 = require("react/jsx-runtime");
|
|
1720
|
+
var SectionLoading = () => /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "flex min-h-[400px] items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(Spinner, {}) });
|
|
1484
1721
|
SectionLoading.displayName = "TeachInUI.SectionLoading";
|
|
1485
1722
|
|
|
1486
1723
|
// src/ui/layout/flex/flex.tsx
|
|
1487
|
-
var
|
|
1488
|
-
var
|
|
1489
|
-
var variants2 = (0,
|
|
1724
|
+
var import_tailwind_variants9 = require("tailwind-variants");
|
|
1725
|
+
var import_jsx_runtime57 = require("react/jsx-runtime");
|
|
1726
|
+
var variants2 = (0, import_tailwind_variants9.tv)({
|
|
1490
1727
|
base: "flex",
|
|
1491
1728
|
variants: {
|
|
1492
1729
|
direction: {
|
|
@@ -1533,14 +1770,14 @@ var variants2 = (0, import_tailwind_variants7.tv)({
|
|
|
1533
1770
|
}
|
|
1534
1771
|
});
|
|
1535
1772
|
var Flex = ({ className, ...props }) => {
|
|
1536
|
-
return /* @__PURE__ */ (0,
|
|
1773
|
+
return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: variants2({ ...props, className }), ...props });
|
|
1537
1774
|
};
|
|
1538
1775
|
Flex.displayName = "TeachInUI.Flex";
|
|
1539
1776
|
|
|
1540
1777
|
// src/ui/layout/grid/grid.tsx
|
|
1541
|
-
var
|
|
1542
|
-
var
|
|
1543
|
-
var variants3 = (0,
|
|
1778
|
+
var import_tailwind_variants10 = require("tailwind-variants");
|
|
1779
|
+
var import_jsx_runtime58 = require("react/jsx-runtime");
|
|
1780
|
+
var variants3 = (0, import_tailwind_variants10.tv)({
|
|
1544
1781
|
base: "grid",
|
|
1545
1782
|
variants: {
|
|
1546
1783
|
columns: {
|
|
@@ -1589,26 +1826,26 @@ var variants3 = (0, import_tailwind_variants8.tv)({
|
|
|
1589
1826
|
}
|
|
1590
1827
|
});
|
|
1591
1828
|
var Grid = ({ className, ...props }) => {
|
|
1592
|
-
return /* @__PURE__ */ (0,
|
|
1829
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: variants3({ ...props, className }), ...props });
|
|
1593
1830
|
};
|
|
1594
1831
|
Grid.displayName = "TeachInUI.Grid";
|
|
1595
1832
|
|
|
1596
1833
|
// src/ui/layout/divider/divider.tsx
|
|
1597
|
-
var
|
|
1834
|
+
var import_react33 = __toESM(require("react"));
|
|
1598
1835
|
var import_divider = require("@heroui/divider");
|
|
1599
|
-
var
|
|
1600
|
-
var Divider =
|
|
1836
|
+
var import_jsx_runtime59 = require("react/jsx-runtime");
|
|
1837
|
+
var Divider = import_react33.default.forwardRef((props, ref) => {
|
|
1601
1838
|
const { ...restProps } = props;
|
|
1602
|
-
return /* @__PURE__ */ (0,
|
|
1839
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_divider.Divider, { ref, ...restProps });
|
|
1603
1840
|
});
|
|
1604
1841
|
Divider.displayName = "TeachInUI.Divider";
|
|
1605
1842
|
|
|
1606
1843
|
// src/ui/layout/scroll-shadow/scroll-shadow.tsx
|
|
1607
|
-
var
|
|
1844
|
+
var import_react34 = __toESM(require("react"));
|
|
1608
1845
|
var import_scroll_shadow = require("@heroui/scroll-shadow");
|
|
1609
|
-
var
|
|
1610
|
-
var ScrollShadow =
|
|
1611
|
-
return /* @__PURE__ */ (0,
|
|
1846
|
+
var import_jsx_runtime60 = require("react/jsx-runtime");
|
|
1847
|
+
var ScrollShadow = import_react34.default.forwardRef((props, ref) => {
|
|
1848
|
+
return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_scroll_shadow.ScrollShadow, { ref, ...props });
|
|
1612
1849
|
});
|
|
1613
1850
|
ScrollShadow.displayName = "TeachInUI.ScrollShadow";
|
|
1614
1851
|
|
|
@@ -1619,18 +1856,18 @@ var AccordionItem = Object.assign(import_accordion.AccordionItem, { displayName:
|
|
|
1619
1856
|
|
|
1620
1857
|
// src/ui/navigation/link/link.tsx
|
|
1621
1858
|
var import_link = require("@heroui/link");
|
|
1622
|
-
var
|
|
1859
|
+
var import_jsx_runtime61 = require("react/jsx-runtime");
|
|
1623
1860
|
function Link({ children, ...props }) {
|
|
1624
|
-
return /* @__PURE__ */ (0,
|
|
1861
|
+
return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_link.Link, { ...props, children });
|
|
1625
1862
|
}
|
|
1626
1863
|
Link.displayName = "TeachInUI.Link";
|
|
1627
1864
|
|
|
1628
1865
|
// src/ui/navigation/tabs/tabs.tsx
|
|
1629
|
-
var
|
|
1866
|
+
var import_react35 = __toESM(require("react"));
|
|
1630
1867
|
var import_tabs = require("@heroui/tabs");
|
|
1631
|
-
var
|
|
1632
|
-
var Root3 =
|
|
1633
|
-
return /* @__PURE__ */ (0,
|
|
1868
|
+
var import_jsx_runtime62 = require("react/jsx-runtime");
|
|
1869
|
+
var Root3 = import_react35.default.forwardRef(({ children, ...props }, ref) => {
|
|
1870
|
+
return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_tabs.Tabs, { ref, ...props, children });
|
|
1634
1871
|
});
|
|
1635
1872
|
Root3.displayName = "TeachInUI.Tabs.Root";
|
|
1636
1873
|
var Tab = Object.assign(import_tabs.Tab, {
|
|
@@ -1642,35 +1879,35 @@ var Tabs = {
|
|
|
1642
1879
|
};
|
|
1643
1880
|
|
|
1644
1881
|
// src/ui/navigation/navbar/navbar.tsx
|
|
1645
|
-
var
|
|
1882
|
+
var import_react36 = __toESM(require("react"));
|
|
1646
1883
|
var import_navbar = require("@heroui/navbar");
|
|
1647
|
-
var
|
|
1648
|
-
var Navbar =
|
|
1649
|
-
return /* @__PURE__ */ (0,
|
|
1884
|
+
var import_jsx_runtime63 = require("react/jsx-runtime");
|
|
1885
|
+
var Navbar = import_react36.default.forwardRef((props, ref) => {
|
|
1886
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_navbar.Navbar, { ref, ...props });
|
|
1650
1887
|
});
|
|
1651
1888
|
Navbar.displayName = "TeachInUI.Navbar";
|
|
1652
|
-
var NavbarBrand =
|
|
1653
|
-
return /* @__PURE__ */ (0,
|
|
1889
|
+
var NavbarBrand = import_react36.default.forwardRef((props, ref) => {
|
|
1890
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_navbar.NavbarBrand, { ref, ...props });
|
|
1654
1891
|
});
|
|
1655
1892
|
NavbarBrand.displayName = "TeachInUI.NavbarBrand";
|
|
1656
|
-
var NavbarContent =
|
|
1657
|
-
return /* @__PURE__ */ (0,
|
|
1893
|
+
var NavbarContent = import_react36.default.forwardRef((props, ref) => {
|
|
1894
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_navbar.NavbarContent, { ref, ...props });
|
|
1658
1895
|
});
|
|
1659
1896
|
NavbarContent.displayName = "TeachInUI.NavbarContent";
|
|
1660
|
-
var NavbarItem =
|
|
1661
|
-
return /* @__PURE__ */ (0,
|
|
1897
|
+
var NavbarItem = import_react36.default.forwardRef((props, ref) => {
|
|
1898
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_navbar.NavbarItem, { ref, ...props });
|
|
1662
1899
|
});
|
|
1663
1900
|
NavbarItem.displayName = "TeachInUI.NavbarItem";
|
|
1664
|
-
var NavbarMenu =
|
|
1665
|
-
return /* @__PURE__ */ (0,
|
|
1901
|
+
var NavbarMenu = import_react36.default.forwardRef((props, ref) => {
|
|
1902
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_navbar.NavbarMenu, { ref, ...props });
|
|
1666
1903
|
});
|
|
1667
1904
|
NavbarMenu.displayName = "TeachInUI.NavbarMenu";
|
|
1668
|
-
var NavbarMenuItem =
|
|
1669
|
-
return /* @__PURE__ */ (0,
|
|
1905
|
+
var NavbarMenuItem = import_react36.default.forwardRef((props, ref) => {
|
|
1906
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_navbar.NavbarMenuItem, { ref, ...props });
|
|
1670
1907
|
});
|
|
1671
1908
|
NavbarMenuItem.displayName = "TeachInUI.NavbarMenuItem";
|
|
1672
|
-
var NavbarMenuToggle =
|
|
1673
|
-
return /* @__PURE__ */ (0,
|
|
1909
|
+
var NavbarMenuToggle = import_react36.default.forwardRef((props, ref) => {
|
|
1910
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_navbar.NavbarMenuToggle, { ref, ...props });
|
|
1674
1911
|
});
|
|
1675
1912
|
NavbarMenuToggle.displayName = "TeachInUI.NavbarMenuToggle";
|
|
1676
1913
|
|
|
@@ -1683,30 +1920,30 @@ var BreadcrumbItem2 = Object.assign(import_breadcrumbs3.BreadcrumbItem, {
|
|
|
1683
1920
|
|
|
1684
1921
|
// src/ui/overlays/modal/modal.tsx
|
|
1685
1922
|
var import_modal = require("@heroui/modal");
|
|
1686
|
-
var
|
|
1923
|
+
var import_jsx_runtime64 = require("react/jsx-runtime");
|
|
1687
1924
|
function Root4({
|
|
1688
1925
|
size = "md",
|
|
1689
1926
|
placement = "center",
|
|
1690
1927
|
children,
|
|
1691
1928
|
...props
|
|
1692
1929
|
}) {
|
|
1693
|
-
return /* @__PURE__ */ (0,
|
|
1930
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_modal.Modal, { placement, size, ...props, children });
|
|
1694
1931
|
}
|
|
1695
1932
|
Root4.displayName = "TeachInUI.Modal.Root";
|
|
1696
1933
|
function Content({ children, ...props }) {
|
|
1697
|
-
return /* @__PURE__ */ (0,
|
|
1934
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_modal.ModalContent, { ...props, children: (onClose) => typeof children === "function" ? children(onClose) : children });
|
|
1698
1935
|
}
|
|
1699
1936
|
Content.displayName = "TeachInUI.Modal.Content";
|
|
1700
1937
|
function Header3({ children, ...props }) {
|
|
1701
|
-
return /* @__PURE__ */ (0,
|
|
1938
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_modal.ModalHeader, { ...props, children });
|
|
1702
1939
|
}
|
|
1703
1940
|
Header3.displayName = "TeachInUI.Modal.Header";
|
|
1704
1941
|
function Body3({ children, ...props }) {
|
|
1705
|
-
return /* @__PURE__ */ (0,
|
|
1942
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_modal.ModalBody, { ...props, children });
|
|
1706
1943
|
}
|
|
1707
1944
|
Body3.displayName = "TeachInUI.Modal.Body";
|
|
1708
1945
|
function Footer2({ children, ...props }) {
|
|
1709
|
-
return /* @__PURE__ */ (0,
|
|
1946
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_modal.ModalFooter, { ...props, children });
|
|
1710
1947
|
}
|
|
1711
1948
|
Footer2.displayName = "TeachInUI.Modal.Footer";
|
|
1712
1949
|
var Modal = {
|
|
@@ -1731,17 +1968,17 @@ var DropdownSection = Object.assign(import_dropdown.DropdownSection, {
|
|
|
1731
1968
|
|
|
1732
1969
|
// src/ui/overlays/popover/popover.tsx
|
|
1733
1970
|
var import_popover = require("@heroui/popover");
|
|
1734
|
-
var
|
|
1971
|
+
var import_jsx_runtime65 = require("react/jsx-runtime");
|
|
1735
1972
|
var Root5 = ({ children, ...props }) => {
|
|
1736
|
-
return /* @__PURE__ */ (0,
|
|
1973
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_popover.Popover, { ...props, children });
|
|
1737
1974
|
};
|
|
1738
1975
|
Root5.displayName = "TeachInUI.Popover.Root";
|
|
1739
1976
|
var Trigger = ({ children, ...props }) => {
|
|
1740
|
-
return /* @__PURE__ */ (0,
|
|
1977
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_popover.PopoverTrigger, { ...props, children });
|
|
1741
1978
|
};
|
|
1742
1979
|
Trigger.displayName = "TeachInUI.Popover.Trigger";
|
|
1743
1980
|
var Content2 = ({ children, ...props }) => {
|
|
1744
|
-
return /* @__PURE__ */ (0,
|
|
1981
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_popover.PopoverContent, { ...props, children });
|
|
1745
1982
|
};
|
|
1746
1983
|
Content2.displayName = "TeachInUI.Popover.Content";
|
|
1747
1984
|
var Popover = {
|
|
@@ -1752,7 +1989,7 @@ var Popover = {
|
|
|
1752
1989
|
|
|
1753
1990
|
// src/ui/provider/ui-provider.tsx
|
|
1754
1991
|
var import_system3 = require("@heroui/system");
|
|
1755
|
-
var
|
|
1992
|
+
var import_jsx_runtime66 = require("react/jsx-runtime");
|
|
1756
1993
|
function UIProvider({
|
|
1757
1994
|
children,
|
|
1758
1995
|
locale = "ru-RU",
|
|
@@ -1760,9 +1997,9 @@ function UIProvider({
|
|
|
1760
1997
|
navigate,
|
|
1761
1998
|
toastProviderProps
|
|
1762
1999
|
}) {
|
|
1763
|
-
return /* @__PURE__ */ (0,
|
|
2000
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_system3.HeroUIProvider, { labelPlacement, locale, navigate, children: [
|
|
1764
2001
|
children,
|
|
1765
|
-
/* @__PURE__ */ (0,
|
|
2002
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(ToastProvider, { ...toastProviderProps })
|
|
1766
2003
|
] });
|
|
1767
2004
|
}
|
|
1768
2005
|
|
|
@@ -2216,6 +2453,7 @@ var theme = (0, import_theme.heroui)({
|
|
|
2216
2453
|
NavbarMenu,
|
|
2217
2454
|
NavbarMenuItem,
|
|
2218
2455
|
NavbarMenuToggle,
|
|
2456
|
+
Number,
|
|
2219
2457
|
PageContent,
|
|
2220
2458
|
PageLoading,
|
|
2221
2459
|
Pagination,
|
|
@@ -2235,6 +2473,7 @@ var theme = (0, import_theme.heroui)({
|
|
|
2235
2473
|
SectionTitle,
|
|
2236
2474
|
Select,
|
|
2237
2475
|
SelectField,
|
|
2476
|
+
SelectItem,
|
|
2238
2477
|
Spinner,
|
|
2239
2478
|
Switch,
|
|
2240
2479
|
SwitchField,
|