@zenkigen-inc/component-ui 1.18.4 → 1.19.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/index.js CHANGED
@@ -34,6 +34,7 @@ __export(index_exports, {
34
34
  Breadcrumb: () => Breadcrumb,
35
35
  Button: () => Button,
36
36
  Checkbox: () => Checkbox,
37
+ DatePicker: () => DatePicker,
37
38
  Dropdown: () => Dropdown,
38
39
  EvaluationStar: () => EvaluationStar,
39
40
  FileInput: () => FileInput,
@@ -341,16 +342,697 @@ function Checkbox({
341
342
  ] });
342
343
  }
343
344
 
344
- // src/dropdown/dropdown.tsx
345
+ // src/date-picker/date-picker.tsx
346
+ var import_style = require("react-day-picker/style.css");
347
+ var import_react10 = require("react");
348
+ var import_react_day_picker4 = require("react-day-picker");
349
+
350
+ // src/icon-button/icon-button.tsx
351
+ var import_component_theme5 = require("@zenkigen-inc/component-theme");
352
+ var import_clsx5 = require("clsx");
353
+ var import_jsx_runtime9 = require("react/jsx-runtime");
354
+ function IconButton({
355
+ icon,
356
+ size = "medium",
357
+ variant = "outline",
358
+ isNoPadding = false,
359
+ isDisabled = false,
360
+ isSelected = false,
361
+ iconAccentColor,
362
+ ...props
363
+ }) {
364
+ const baseClasses = (0, import_clsx5.clsx)(
365
+ "typography-label16regular flex items-center justify-center gap-1 rounded",
366
+ import_component_theme5.buttonColors[variant].hover,
367
+ import_component_theme5.buttonColors[variant].active,
368
+ import_component_theme5.buttonColors[variant].disabled,
369
+ import_component_theme5.focusVisible.normal,
370
+ {
371
+ "h-4 w-4": size === "small" && isNoPadding,
372
+ "h-6 w-6": size === "small" && !isNoPadding || (size === "medium" || size === "large") && isNoPadding,
373
+ "h-8 w-8": size === "medium" && !isNoPadding,
374
+ "h-10 w-10": size === "large" && !isNoPadding,
375
+ "inline-flex": props.isAnchor,
376
+ "pointer-events-none": isDisabled,
377
+ [import_component_theme5.buttonColors[variant].selected]: isSelected,
378
+ [import_component_theme5.buttonColors[variant].base]: !isSelected
379
+ }
380
+ );
381
+ const iconSize = size === "small" ? "small" : "medium";
382
+ const iconAccentColorProps = !isSelected && iconAccentColor ? { accentColor: iconAccentColor } : {};
383
+ if (props.isAnchor === true) {
384
+ const buttonProps = Object.fromEntries(Object.entries(props).filter(([key]) => key !== "isAnchor"));
385
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("a", { className: baseClasses, ...buttonProps, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Icon, { name: icon, size: iconSize, ...iconAccentColorProps }) });
386
+ } else {
387
+ const buttonProps = Object.fromEntries(Object.entries(props).filter(([key]) => key !== "isAnchor"));
388
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("button", { type: "button", className: baseClasses, disabled: isDisabled, ...buttonProps, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Icon, { name: icon, size: iconSize, ...iconAccentColorProps }) });
389
+ }
390
+ }
391
+
392
+ // src/popover/popover.tsx
393
+ var import_react6 = require("@floating-ui/react");
394
+ var import_react7 = require("react");
395
+
396
+ // src/popover/popover-content.tsx
397
+ var import_react3 = require("@floating-ui/react");
398
+ var React = __toESM(require("react"));
399
+ var import_react4 = require("react");
400
+
401
+ // src/utils/react-utils.ts
402
+ function composeRefs(...refs) {
403
+ return (node) => {
404
+ for (const ref of refs) {
405
+ if (ref == null) {
406
+ continue;
407
+ }
408
+ if (typeof ref === "function") {
409
+ ref(node);
410
+ } else {
411
+ ref.current = node;
412
+ }
413
+ }
414
+ };
415
+ }
416
+ function isElement(node) {
417
+ return node != null && typeof node === "object" && "type" in node;
418
+ }
419
+
420
+ // src/popover/popover-context.ts
421
+ var import_react2 = require("react");
422
+ var PopoverContext = (0, import_react2.createContext)(null);
423
+ var usePopoverContext = () => {
424
+ const context = (0, import_react2.useContext)(PopoverContext);
425
+ if (context == null) {
426
+ throw new Error("Popover components must be used inside <Popover.Root>");
427
+ }
428
+ return context;
429
+ };
430
+
431
+ // src/popover/popover-content.tsx
432
+ var import_jsx_runtime10 = require("react/jsx-runtime");
433
+ var PopoverContent = (0, import_react4.forwardRef)(function PopoverContent2({ children }, ref) {
434
+ const { isOpen, triggerRef, floating, panelId, onClose } = usePopoverContext();
435
+ const shouldCloseOnOutsidePress = (0, import_react4.useCallback)(
436
+ (event) => {
437
+ const target = event.target;
438
+ if (!(target instanceof Element)) {
439
+ return true;
440
+ }
441
+ const floatingElement = floating.refs.floating.current;
442
+ const closestOverlay = target.closest(".z-overlay, .z-dropdown");
443
+ if (closestOverlay !== null && floatingElement instanceof Element) {
444
+ const isInsideOwnFloating = floatingElement.contains(closestOverlay);
445
+ return isInsideOwnFloating;
446
+ }
447
+ return true;
448
+ },
449
+ [floating.refs.floating]
450
+ );
451
+ const dismiss = (0, import_react3.useDismiss)(floating.context, {
452
+ outsidePressEvent: "pointerdown",
453
+ outsidePress: shouldCloseOnOutsidePress,
454
+ escapeKey: false
455
+ });
456
+ const interactions = (0, import_react3.useInteractions)([dismiss, (0, import_react3.useRole)(floating.context, { role: "dialog" })]);
457
+ (0, import_react4.useEffect)(() => {
458
+ if (isOpen) {
459
+ const element = floating.refs.floating.current;
460
+ element?.focus?.({ preventScroll: true });
461
+ }
462
+ }, [isOpen, floating.refs.floating]);
463
+ const prevIsOpenRef = (0, import_react4.useRef)(isOpen);
464
+ (0, import_react4.useEffect)(() => {
465
+ const hasPreviouslyBeenOpen = prevIsOpenRef.current;
466
+ prevIsOpenRef.current = isOpen;
467
+ if (hasPreviouslyBeenOpen && !isOpen) {
468
+ triggerRef.current?.focus({ preventScroll: true });
469
+ }
470
+ }, [isOpen, triggerRef]);
471
+ const handleKeyDown = (0, import_react4.useCallback)(
472
+ (event) => {
473
+ if (event.key === "Escape") {
474
+ event.stopPropagation();
475
+ if (onClose != null) {
476
+ onClose({ reason: "escape-key-down" });
477
+ }
478
+ }
479
+ },
480
+ [onClose]
481
+ );
482
+ let wrappedChildren = children;
483
+ if (isElement(children)) {
484
+ const childProps = children.props;
485
+ wrappedChildren = React.cloneElement(children, {
486
+ ...childProps,
487
+ ...childProps.id == null && { id: panelId },
488
+ ...childProps.role == null && { role: "dialog" }
489
+ });
490
+ }
491
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react3.FloatingPortal, { children: isOpen ? /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
492
+ "div",
493
+ {
494
+ ...interactions.getFloatingProps({
495
+ ref: composeRefs(floating.refs.setFloating, ref),
496
+ tabIndex: -1,
497
+ onKeyDown: handleKeyDown,
498
+ style: {
499
+ position: floating.strategy,
500
+ top: floating.y ?? 0,
501
+ left: floating.x ?? 0,
502
+ outline: "0"
503
+ }
504
+ }),
505
+ children: wrappedChildren
506
+ }
507
+ ) : null });
508
+ });
509
+
510
+ // src/popover/popover-trigger.tsx
511
+ var React2 = __toESM(require("react"));
512
+ var import_react5 = require("react");
513
+ var PopoverTrigger = (0, import_react5.forwardRef)(function PopoverTrigger2({ children }, ref) {
514
+ const { isOpen, floating, triggerRef, anchorRef, panelId } = usePopoverContext();
515
+ if (!isElement(children)) {
516
+ return null;
517
+ }
518
+ const handleTriggerRef = (node) => {
519
+ triggerRef.current = node;
520
+ if (anchorRef == null) {
521
+ floating.refs.setReference(node);
522
+ }
523
+ if (typeof ref === "function") {
524
+ ref(node);
525
+ } else if (ref != null) {
526
+ ref.current = node;
527
+ }
528
+ };
529
+ const childProps = children.props;
530
+ const childRef = childProps.ref;
531
+ return React2.cloneElement(children, {
532
+ ...childProps,
533
+ ref: composeRefs(childRef, handleTriggerRef),
534
+ "aria-haspopup": "dialog",
535
+ "aria-expanded": isOpen,
536
+ "aria-controls": panelId
537
+ });
538
+ });
539
+
540
+ // src/popover/popover.tsx
541
+ var import_jsx_runtime11 = require("react/jsx-runtime");
542
+ function Popover({
543
+ isOpen,
544
+ children,
545
+ placement = "top",
546
+ offset: offsetValue = 8,
547
+ onClose,
548
+ anchorRef
549
+ }) {
550
+ const triggerRef = (0, import_react7.useRef)(null);
551
+ const floating = (0, import_react6.useFloating)({
552
+ open: isOpen,
553
+ onOpenChange: (open) => {
554
+ if (!open && onClose != null) {
555
+ onClose({ reason: "outside-click" });
556
+ }
557
+ },
558
+ placement,
559
+ middleware: [(0, import_react6.offset)(offsetValue)],
560
+ whileElementsMounted: import_react6.autoUpdate,
561
+ strategy: "fixed"
562
+ });
563
+ (0, import_react7.useEffect)(() => {
564
+ if (anchorRef?.current) {
565
+ floating.refs.setReference(anchorRef.current);
566
+ }
567
+ }, [anchorRef, floating.refs]);
568
+ const contentId = (0, import_react6.useId)() ?? "";
569
+ const panelId = `${contentId}-panel`;
570
+ const contextValue = (0, import_react7.useMemo)(
571
+ () => ({
572
+ isOpen,
573
+ triggerRef,
574
+ anchorRef,
575
+ floating,
576
+ contentId,
577
+ panelId,
578
+ onClose
579
+ }),
580
+ [isOpen, triggerRef, anchorRef, floating, contentId, panelId, onClose]
581
+ );
582
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(PopoverContext.Provider, { value: contextValue, children });
583
+ }
584
+ Popover.Trigger = PopoverTrigger;
585
+ Popover.Content = PopoverContent;
586
+
587
+ // src/date-picker/date-picker-context.tsx
588
+ var import_react8 = require("react");
589
+ var DatePickerCompoundContext = (0, import_react8.createContext)(null);
590
+ var useDatePickerCompoundContext = (componentName) => {
591
+ const context = (0, import_react8.useContext)(DatePickerCompoundContext);
592
+ if (context == null) {
593
+ throw new Error(`${componentName} \u3092\u4F7F\u7528\u3059\u308B\u306B\u306F DatePicker \u306E\u5B50\u8981\u7D20\u3068\u3057\u3066\u914D\u7F6E\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u3002`);
594
+ }
595
+ return context;
596
+ };
597
+
598
+ // src/date-picker/date-picker-day-button.tsx
345
599
  var import_component_theme6 = require("@zenkigen-inc/component-theme");
346
- var import_clsx7 = __toESM(require("clsx"));
347
- var import_react6 = require("react");
600
+ var import_clsx7 = require("clsx");
601
+ var import_react_day_picker2 = require("react-day-picker");
602
+
603
+ // src/date-picker/date-picker-styles.ts
604
+ var import_clsx6 = require("clsx");
605
+ var import_react_day_picker = require("react-day-picker");
606
+ var defaultDayPickerClassNames = (0, import_react_day_picker.getDefaultClassNames)();
607
+ var dayPickerStyle = {
608
+ "--rdp-font-family": "Arial, 'Noto Sans JP', sans-serif",
609
+ "--rdp-nav-height": "30px",
610
+ "--rdp-day-font": "700 12px/1 'Arial', 'Noto Sans JP', sans-serif",
611
+ "--rdp-selected-font": "700 12px/1 'Arial', 'Noto Sans JP', sans-serif",
612
+ "--rdp-weekday-font": "700 12px/1 'Arial', 'Noto Sans JP', sans-serif",
613
+ "--rdp-day-width": "30px",
614
+ "--rdp-day-height": "30px",
615
+ "--rdp-day_button-width": "28px",
616
+ "--rdp-day_button-height": "28px",
617
+ "--rdp-day_button-border": "1px solid transparent",
618
+ "--rdp-weekday-padding": "0px"
619
+ };
620
+ var dayPickerClassNames = {
621
+ month: (0, import_clsx6.clsx)(defaultDayPickerClassNames.month, "flex flex-col px-[7px] py-2")
622
+ };
623
+ var dayButtonBaseClass = "relative grid size-full place-items-center rounded-full !border !border-solid";
624
+
625
+ // src/date-picker/date-picker-day-button.tsx
626
+ var import_jsx_runtime12 = require("react/jsx-runtime");
627
+ var CustomDayButton = ({ day, modifiers, className, ...buttonProps }) => {
628
+ const isSelected = Boolean(modifiers.selected);
629
+ const isOutside = Boolean(modifiers.outside);
630
+ const isMinMaxDisabled = Boolean(modifiers.minMaxDisabled);
631
+ const now = /* @__PURE__ */ new Date();
632
+ const isToday = day.date.getFullYear() === now.getFullYear() && day.date.getMonth() === now.getMonth() && day.date.getDate() === now.getDate();
633
+ const isDisabledDay = isMinMaxDisabled;
634
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
635
+ import_react_day_picker2.DayButton,
636
+ {
637
+ ...buttonProps,
638
+ day,
639
+ modifiers,
640
+ className: (0, import_clsx7.clsx)(
641
+ className,
642
+ dayButtonBaseClass,
643
+ // 共通: フォーカスリング(有効な日のみ)
644
+ // react-day-picker の rdp-day_button クラスが outline: none を設定しているため、!important で上書き
645
+ !isDisabledDay && import_component_theme6.focusVisible.normalImportant,
646
+ // minDate/maxDate 制限日
647
+ isMinMaxDisabled && "!cursor-not-allowed !border-transparent !text-disabled01",
648
+ // 範囲外の日(前後月)
649
+ isOutside && !isMinMaxDisabled && "!border-transparent !text-interactive04",
650
+ // 通常の日
651
+ !isDisabledDay && !isSelected && "!border-transparent",
652
+ !isDisabledDay && !isToday && "!text-interactive02 hover:!bg-hoverUi",
653
+ // 今日
654
+ !isDisabledDay && isToday && !isSelected && "!border-selectedUiBorder !bg-interactive01 !text-textOnColor",
655
+ // 選択された日
656
+ isSelected && "!border-selectedUiBorder !bg-uiBackgroundBlue"
657
+ )
658
+ }
659
+ );
660
+ };
661
+
662
+ // src/date-picker/date-picker-error-message.tsx
663
+ var import_clsx8 = require("clsx");
664
+ var import_react9 = require("react");
665
+ var import_jsx_runtime13 = require("react/jsx-runtime");
666
+ var DatePickerErrorMessage = (0, import_react9.forwardRef)(
667
+ ({ "aria-live": ariaLive = "assertive", ...props }, ref) => {
668
+ const { size, isError } = useDatePickerCompoundContext("DatePicker.ErrorMessage");
669
+ const typographyClass = size === "large" ? "typography-label12regular" : "typography-label11regular";
670
+ if (isError !== true) {
671
+ return null;
672
+ }
673
+ const errorMessageClassName = (0, import_clsx8.clsx)(typographyClass, "text-supportError");
674
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { ref, className: errorMessageClassName, "aria-live": ariaLive, ...props });
675
+ }
676
+ );
677
+ DatePickerErrorMessage.displayName = "DatePicker.ErrorMessage";
678
+
679
+ // src/date-picker/date-picker-month-caption.tsx
680
+ var import_clsx9 = require("clsx");
681
+ var import_react_day_picker3 = require("react-day-picker");
682
+
683
+ // src/date-picker/date-picker-utils.ts
684
+ var localDateFormatter = new Intl.DateTimeFormat("en-CA", {
685
+ year: "numeric",
686
+ month: "2-digit",
687
+ day: "2-digit"
688
+ });
689
+ var timeZoneFormatters = {
690
+ UTC: new Intl.DateTimeFormat("en-CA", {
691
+ timeZone: "UTC",
692
+ year: "numeric",
693
+ month: "2-digit",
694
+ day: "2-digit"
695
+ }),
696
+ "Asia/Tokyo": new Intl.DateTimeFormat("en-CA", {
697
+ timeZone: "Asia/Tokyo",
698
+ year: "numeric",
699
+ month: "2-digit",
700
+ day: "2-digit"
701
+ })
702
+ };
703
+ var toIsoOffset = (timeZone) => timeZone === "UTC" ? "Z" : "+09:00";
704
+ var formatDateKey = (date, timeZone) => {
705
+ const parts = timeZoneFormatters[timeZone].formatToParts(date);
706
+ const year = parts.find((p) => p.type === "year")?.value;
707
+ const month = parts.find((p) => p.type === "month")?.value;
708
+ const day = parts.find((p) => p.type === "day")?.value;
709
+ return `${year}-${month}-${day}`;
710
+ };
711
+ var formatLocalDateKey = (date = /* @__PURE__ */ new Date()) => {
712
+ return localDateFormatter.format(date);
713
+ };
714
+ var createDateFromKey = (dateKey, timeZone) => {
715
+ return /* @__PURE__ */ new Date(`${dateKey}T00:00:00${toIsoOffset(timeZone)}`);
716
+ };
717
+ var createLocalDateFromKey = (dateKey) => {
718
+ const parts = dateKey.split("-");
719
+ const year = parts[0];
720
+ const month = parts[1];
721
+ const day = parts[2];
722
+ if (year == null || month == null || day == null) {
723
+ throw new Error(`Invalid dateKey format: "${dateKey}". Expected "YYYY-MM-DD".`);
724
+ }
725
+ return new Date(Number(year), Number(month) - 1, Number(day));
726
+ };
727
+ var getMonthStartDate = (date, timeZone) => {
728
+ const parts = formatDateKey(date, timeZone).split("-");
729
+ const year = parts[0];
730
+ const month = parts[1];
731
+ if (year == null || month == null) {
732
+ throw new Error("Invalid date format from formatDateKey.");
733
+ }
734
+ return new Date(Number(year), Number(month) - 1, 1);
735
+ };
736
+ var formatDisplayDate = (date, timeZone) => {
737
+ const [year, month, day] = formatDateKey(date, timeZone).split("-");
738
+ return `${year}\u5E74${month}\u6708${day}\u65E5`;
739
+ };
740
+ var formatMonthLabel = (date) => {
741
+ const [year, month] = formatLocalDateKey(date).split("-");
742
+ return `${year}\u5E74${month}\u6708`;
743
+ };
744
+
745
+ // src/date-picker/date-picker-month-caption.tsx
746
+ var import_jsx_runtime14 = require("react/jsx-runtime");
747
+ var CustomMonthCaption = ({ calendarMonth, className, displayIndex, ...props }) => {
748
+ void displayIndex;
749
+ const { goToMonth, nextMonth, previousMonth } = (0, import_react_day_picker3.useDayPicker)();
750
+ const captionMonth = calendarMonth.date;
751
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: (0, import_clsx9.clsx)("flex items-center justify-between px-1 pb-0.5", className), ...props, children: [
752
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
753
+ IconButton,
754
+ {
755
+ icon: "angle-left",
756
+ size: "small",
757
+ variant: "text",
758
+ isDisabled: !previousMonth,
759
+ "aria-label": "\u524D\u306E\u6708",
760
+ onClick: () => previousMonth && goToMonth(previousMonth)
761
+ }
762
+ ),
763
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "typography-label12bold text-text02", children: formatMonthLabel(captionMonth) }),
764
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
765
+ IconButton,
766
+ {
767
+ icon: "angle-right",
768
+ size: "small",
769
+ variant: "text",
770
+ isDisabled: !nextMonth,
771
+ "aria-label": "\u6B21\u306E\u6708",
772
+ onClick: () => nextMonth && goToMonth(nextMonth)
773
+ }
774
+ )
775
+ ] });
776
+ };
777
+
778
+ // src/date-picker/date-picker-weekday.tsx
779
+ var import_clsx10 = require("clsx");
780
+ var import_jsx_runtime15 = require("react/jsx-runtime");
781
+ var CustomWeekday = ({ className, children, ...props }) => {
782
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
783
+ "th",
784
+ {
785
+ ...props,
786
+ className: (0, import_clsx10.clsx)(className, "m-0 flex size-7 items-center justify-center p-0 text-center text-text02"),
787
+ children
788
+ }
789
+ );
790
+ };
791
+
792
+ // src/date-picker/date-picker.tsx
793
+ var import_jsx_runtime16 = require("react/jsx-runtime");
794
+ var DatePicker = ({
795
+ value,
796
+ onChange,
797
+ isDisabled = false,
798
+ isError = false,
799
+ minDate,
800
+ maxDate,
801
+ placeholder = "\u65E5\u4ED8\u3092\u9078\u629E",
802
+ size = "medium",
803
+ timeZone = "Asia/Tokyo",
804
+ children,
805
+ onClick,
806
+ type,
807
+ ...restProps
808
+ }) => {
809
+ const autoGeneratedId = (0, import_react10.useId)();
810
+ const describedByBaseId = restProps.id ?? autoGeneratedId;
811
+ const [isOpen, setIsOpen] = (0, import_react10.useState)(false);
812
+ const [displayMonth, setDisplayMonth] = (0, import_react10.useState)(() => {
813
+ if (value == null) {
814
+ const todayKey = formatLocalDateKey(/* @__PURE__ */ new Date());
815
+ return createLocalDateFromKey(`${todayKey.slice(0, 7)}-01`);
816
+ }
817
+ return getMonthStartDate(value, timeZone);
818
+ });
819
+ const calendarRef = (0, import_react10.useRef)(null);
820
+ const selectedKey = (0, import_react10.useMemo)(() => value == null ? null : formatDateKey(value, timeZone), [value, timeZone]);
821
+ const selectedDate = (0, import_react10.useMemo)(() => {
822
+ if (selectedKey == null) {
823
+ return;
824
+ }
825
+ return createLocalDateFromKey(selectedKey);
826
+ }, [selectedKey]);
827
+ const minKey = (0, import_react10.useMemo)(() => minDate == null ? null : formatDateKey(minDate, timeZone), [minDate, timeZone]);
828
+ const maxKey = (0, import_react10.useMemo)(() => maxDate == null ? null : formatDateKey(maxDate, timeZone), [maxDate, timeZone]);
829
+ const currentMonthKey = (0, import_react10.useMemo)(() => formatLocalDateKey(displayMonth).slice(0, 7), [displayMonth]);
830
+ const isOutsideMonth = (0, import_react10.useCallback)(
831
+ (date) => formatLocalDateKey(date).slice(0, 7) !== currentMonthKey,
832
+ [currentMonthKey]
833
+ );
834
+ const isMinMaxDisabled = (0, import_react10.useCallback)(
835
+ (date) => {
836
+ const dateKey = formatLocalDateKey(date);
837
+ if (minKey != null && dateKey < minKey) {
838
+ return true;
839
+ }
840
+ if (maxKey != null && dateKey > maxKey) {
841
+ return true;
842
+ }
843
+ return false;
844
+ },
845
+ [maxKey, minKey]
846
+ );
847
+ const disabledDays = (0, import_react10.useCallback)(
848
+ (date) => {
849
+ if (isOutsideMonth(date)) {
850
+ return true;
851
+ }
852
+ return isMinMaxDisabled(date);
853
+ },
854
+ [isOutsideMonth, isMinMaxDisabled]
855
+ );
856
+ const todayForCalendar = (0, import_react10.useMemo)(() => createLocalDateFromKey(formatLocalDateKey()), []);
857
+ (0, import_react10.useEffect)(() => {
858
+ if (value == null) {
859
+ const todayKey = formatLocalDateKey(/* @__PURE__ */ new Date());
860
+ setDisplayMonth(createLocalDateFromKey(`${todayKey.slice(0, 7)}-01`));
861
+ return;
862
+ }
863
+ setDisplayMonth(getMonthStartDate(value, timeZone));
864
+ }, [value, timeZone]);
865
+ (0, import_react10.useEffect)(() => {
866
+ if (!isOpen) {
867
+ return;
868
+ }
869
+ const frame = requestAnimationFrame(() => {
870
+ const container = calendarRef.current;
871
+ if (!container) {
872
+ return;
873
+ }
874
+ const selected = container.querySelector('button[aria-selected="true"]');
875
+ const today = container.querySelector('button[aria-current="date"]');
876
+ const focusTarget = selected ?? today;
877
+ focusTarget?.focus({ preventScroll: true });
878
+ });
879
+ return () => cancelAnimationFrame(frame);
880
+ }, [displayMonth, isOpen, value]);
881
+ (0, import_react10.useEffect)(() => {
882
+ if (isDisabled) {
883
+ setIsOpen(false);
884
+ }
885
+ }, [isDisabled]);
886
+ const handleTriggerClick = (event) => {
887
+ if (isDisabled) {
888
+ event.preventDefault();
889
+ return;
890
+ }
891
+ onClick?.(event);
892
+ setIsOpen((prev) => !prev);
893
+ };
894
+ const handleClose = () => {
895
+ setIsOpen(false);
896
+ };
897
+ const handleSelect = (selected) => {
898
+ if (!selected) {
899
+ return;
900
+ }
901
+ const selectedKey2 = formatLocalDateKey(selected);
902
+ onChange(createDateFromKey(selectedKey2, timeZone));
903
+ setIsOpen(false);
904
+ };
905
+ const handleClear = () => {
906
+ onChange(null);
907
+ setIsOpen(false);
908
+ };
909
+ const handleClickToday = () => {
910
+ const todayKey = formatLocalDateKey(/* @__PURE__ */ new Date());
911
+ setDisplayMonth(createLocalDateFromKey(`${todayKey.slice(0, 7)}-01`));
912
+ };
913
+ const formatters = (0, import_react10.useMemo)(() => {
914
+ const weekdayFormatter = new Intl.DateTimeFormat("ja-JP", { weekday: "short" });
915
+ return {
916
+ formatCaption: (date) => formatMonthLabel(date),
917
+ formatDay: (date) => String(date.getDate()),
918
+ formatWeekdayName: (date) => weekdayFormatter.format(date)
919
+ };
920
+ }, []);
921
+ const iconSize = size === "large" ? "medium" : "small";
922
+ const displayText = value ? formatDisplayDate(value, timeZone) : placeholder;
923
+ const displayTextClasses = "min-w-0 truncate";
924
+ const errorIds = [];
925
+ const enhancedChildren = import_react10.Children.map(children, (child) => {
926
+ if (!(0, import_react10.isValidElement)(child)) {
927
+ return child;
928
+ }
929
+ if (child.type === DatePickerErrorMessage && isError) {
930
+ const errorChild = child;
931
+ const assignedId = errorChild.props.id ?? `${describedByBaseId}-error-${errorIds.length + 1}`;
932
+ errorIds.push(assignedId);
933
+ return (0, import_react10.cloneElement)(errorChild, { id: assignedId });
934
+ }
935
+ return child;
936
+ });
937
+ const describedByFromProps = typeof restProps["aria-describedby"] === "string" ? restProps["aria-describedby"] : null;
938
+ const describedByList = [describedByFromProps, ...errorIds].filter(
939
+ (id) => typeof id === "string" && id.trim().length > 0
940
+ );
941
+ const describedByProps = describedByList.length > 0 ? {
942
+ "aria-describedby": describedByList.join(" ")
943
+ } : {};
944
+ const shouldMarkInvalid = isError === true || errorIds.length > 0;
945
+ const ariaInvalidFromProps = restProps["aria-invalid"];
946
+ const ariaInvalidValue = ariaInvalidFromProps != null ? ariaInvalidFromProps : shouldMarkInvalid ? true : null;
947
+ const ariaInvalidProps = ariaInvalidValue == null ? {} : { "aria-invalid": ariaInvalidValue };
948
+ const mergedButtonProps = {
949
+ ...restProps,
950
+ ...describedByProps,
951
+ ...ariaInvalidProps
952
+ };
953
+ const contextValue = (0, import_react10.useMemo)(
954
+ () => ({
955
+ size,
956
+ isError
957
+ }),
958
+ [isError, size]
959
+ );
960
+ const popoverContent = /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(Popover, { isOpen, placement: "bottom-start", onClose: handleClose, children: [
961
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Popover.Trigger, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
962
+ InternalButton,
963
+ {
964
+ ...mergedButtonProps,
965
+ type: type ?? "button",
966
+ size,
967
+ variant: isError ? "outlineDanger" : "outline",
968
+ isDisabled,
969
+ before: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Icon, { name: "calendar", size: iconSize }),
970
+ justifyContent: "start",
971
+ onClick: handleTriggerClick,
972
+ children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: displayTextClasses, children: displayText })
973
+ }
974
+ ) }),
975
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Popover.Content, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { ref: calendarRef, className: "rounded bg-uiBackground01 shadow-floatingShadow", "aria-label": "\u65E5\u4ED8\u9078\u629E", children: [
976
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
977
+ import_react_day_picker4.DayPicker,
978
+ {
979
+ mode: "single",
980
+ showOutsideDays: true,
981
+ hideNavigation: true,
982
+ weekStartsOn: 0,
983
+ style: dayPickerStyle,
984
+ month: displayMonth,
985
+ onMonthChange: setDisplayMonth,
986
+ selected: selectedDate,
987
+ onSelect: handleSelect,
988
+ today: todayForCalendar,
989
+ disabled: disabledDays,
990
+ modifiers: { minMaxDisabled: isMinMaxDisabled },
991
+ classNames: dayPickerClassNames,
992
+ formatters,
993
+ fixedWeeks: true,
994
+ components: { MonthCaption: CustomMonthCaption, DayButton: CustomDayButton, Weekday: CustomWeekday }
995
+ }
996
+ ),
997
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-center justify-between border-t border-uiBorder01 px-2 py-1", children: [
998
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
999
+ IconButton,
1000
+ {
1001
+ icon: "calendar-today",
1002
+ size: "medium",
1003
+ variant: "text",
1004
+ "aria-label": "\u4ECA\u65E5\u306B\u623B\u308B",
1005
+ iconAccentColor: "supportInfo",
1006
+ onClick: handleClickToday
1007
+ }
1008
+ ),
1009
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Button, { type: "button", size: "small", variant: "text", onClick: handleClear, children: "\u30AF\u30EA\u30A2" })
1010
+ ] })
1011
+ ] }) })
1012
+ ] });
1013
+ const stackedChildren = enhancedChildren == null ? [] : import_react10.Children.toArray(enhancedChildren);
1014
+ const hasMessageChildren = stackedChildren.length > 0;
1015
+ if (!hasMessageChildren) {
1016
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DatePickerCompoundContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex flex-col", children: popoverContent }) });
1017
+ }
1018
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DatePickerCompoundContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex flex-col gap-2", children: [
1019
+ popoverContent,
1020
+ stackedChildren
1021
+ ] }) });
1022
+ };
1023
+ DatePicker.ErrorMessage = DatePickerErrorMessage;
1024
+ DatePicker.displayName = "DatePicker";
1025
+
1026
+ // src/dropdown/dropdown.tsx
1027
+ var import_component_theme8 = require("@zenkigen-inc/component-theme");
1028
+ var import_clsx13 = __toESM(require("clsx"));
1029
+ var import_react15 = require("react");
348
1030
  var import_react_dom = require("react-dom");
349
1031
 
350
1032
  // src/hooks/use-outside-click.ts
351
- var import_react2 = require("react");
1033
+ var import_react11 = require("react");
352
1034
  var useOutsideClick = (ref, handler, enabled = true) => {
353
- (0, import_react2.useEffect)(() => {
1035
+ (0, import_react11.useEffect)(() => {
354
1036
  const listener = (event) => {
355
1037
  const element = ref?.current;
356
1038
  if (element == null || Boolean(element.contains(event?.target ?? null))) {
@@ -366,8 +1048,8 @@ var useOutsideClick = (ref, handler, enabled = true) => {
366
1048
  };
367
1049
 
368
1050
  // src/dropdown/dropdown-context.ts
369
- var import_react3 = require("react");
370
- var DropdownContext = (0, import_react3.createContext)({
1051
+ var import_react12 = require("react");
1052
+ var DropdownContext = (0, import_react12.createContext)({
371
1053
  isVisible: false,
372
1054
  setIsVisible: () => false,
373
1055
  isDisabled: false,
@@ -376,31 +1058,31 @@ var DropdownContext = (0, import_react3.createContext)({
376
1058
  });
377
1059
 
378
1060
  // src/dropdown/dropdown-item.tsx
379
- var import_component_theme5 = require("@zenkigen-inc/component-theme");
380
- var import_clsx5 = __toESM(require("clsx"));
381
- var import_react4 = require("react");
382
- var import_jsx_runtime9 = require("react/jsx-runtime");
1061
+ var import_component_theme7 = require("@zenkigen-inc/component-theme");
1062
+ var import_clsx11 = __toESM(require("clsx"));
1063
+ var import_react13 = require("react");
1064
+ var import_jsx_runtime17 = require("react/jsx-runtime");
383
1065
  function DropdownItem({ children, color = "gray", onClick }) {
384
- const { setIsVisible } = (0, import_react4.useContext)(DropdownContext);
1066
+ const { setIsVisible } = (0, import_react13.useContext)(DropdownContext);
385
1067
  const handleClickItem = (event) => {
386
1068
  setIsVisible(false);
387
1069
  onClick?.(event);
388
1070
  };
389
- const itemClasses = (0, import_clsx5.default)(
1071
+ const itemClasses = (0, import_clsx11.default)(
390
1072
  "typography-label14regular flex h-8 w-full items-center px-3 hover:bg-hover02 active:bg-active02",
391
- import_component_theme5.focusVisible.inset,
1073
+ import_component_theme7.focusVisible.inset,
392
1074
  {
393
1075
  "bg-uiBackground01 fill-icon01 text-interactive02": color === "gray",
394
1076
  "fill-supportDanger text-supportDanger": color === "red"
395
1077
  }
396
1078
  );
397
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("li", { className: "flex w-full items-center", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("button", { className: itemClasses, type: "button", onClick: handleClickItem, children }) });
1079
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("li", { className: "flex w-full items-center", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("button", { className: itemClasses, type: "button", onClick: handleClickItem, children }) });
398
1080
  }
399
1081
 
400
1082
  // src/dropdown/dropdown-menu.tsx
401
- var import_clsx6 = __toESM(require("clsx"));
402
- var import_react5 = require("react");
403
- var import_jsx_runtime10 = require("react/jsx-runtime");
1083
+ var import_clsx12 = __toESM(require("clsx"));
1084
+ var import_react14 = require("react");
1085
+ var import_jsx_runtime18 = require("react/jsx-runtime");
404
1086
  function DropdownMenu({
405
1087
  children,
406
1088
  maxHeight,
@@ -408,8 +1090,8 @@ function DropdownMenu({
408
1090
  verticalPosition = "bottom",
409
1091
  horizontalAlign = "left"
410
1092
  }) {
411
- const { isVisible, isDisabled, targetDimensions, variant, portalTargetRef } = (0, import_react5.useContext)(DropdownContext);
412
- const wrapperClasses = (0, import_clsx6.default)("z-dropdown w-max overflow-y-auto rounded bg-uiBackground01 shadow-floatingShadow", {
1093
+ const { isVisible, isDisabled, targetDimensions, variant, portalTargetRef } = (0, import_react14.useContext)(DropdownContext);
1094
+ const wrapperClasses = (0, import_clsx12.default)("z-dropdown w-max overflow-y-auto rounded bg-uiBackground01 shadow-floatingShadow", {
413
1095
  absolute: !portalTargetRef,
414
1096
  "border-solid border border-uiBorder01": variant === "outline",
415
1097
  "py-1": !isNoPadding,
@@ -417,7 +1099,7 @@ function DropdownMenu({
417
1099
  "right-0": horizontalAlign === "right",
418
1100
  "left-auto": horizontalAlign === "center"
419
1101
  });
420
- return isVisible && !isDisabled && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
1102
+ return isVisible && !isDisabled && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
421
1103
  "ul",
422
1104
  {
423
1105
  className: wrapperClasses,
@@ -432,7 +1114,7 @@ function DropdownMenu({
432
1114
  }
433
1115
 
434
1116
  // src/dropdown/dropdown.tsx
435
- var import_jsx_runtime11 = require("react/jsx-runtime");
1117
+ var import_jsx_runtime19 = require("react/jsx-runtime");
436
1118
  function Dropdown({
437
1119
  children,
438
1120
  target,
@@ -445,14 +1127,14 @@ function Dropdown({
445
1127
  isArrowHidden = false,
446
1128
  portalTargetRef
447
1129
  }) {
448
- const [isVisible, setIsVisible] = (0, import_react6.useState)(false);
449
- const [targetDimensions, setTargetDimensions] = (0, import_react6.useState)({
1130
+ const [isVisible, setIsVisible] = (0, import_react15.useState)(false);
1131
+ const [targetDimensions, setTargetDimensions] = (0, import_react15.useState)({
450
1132
  width: 0,
451
1133
  height: 0
452
1134
  });
453
- const targetRef = (0, import_react6.useRef)(null);
1135
+ const targetRef = (0, import_react15.useRef)(null);
454
1136
  useOutsideClick(targetRef, () => setIsVisible(false));
455
- const handleToggle = (0, import_react6.useCallback)(() => {
1137
+ const handleToggle = (0, import_react15.useCallback)(() => {
456
1138
  if (targetRef.current === null) {
457
1139
  return;
458
1140
  }
@@ -468,24 +1150,24 @@ function Dropdown({
468
1150
  setIsVisible(true);
469
1151
  }
470
1152
  }, [isVisible]);
471
- const wrapperClasses = (0, import_clsx7.default)("relative flex shrink-0 items-center gap-1 rounded", {
1153
+ const wrapperClasses = (0, import_clsx13.default)("relative flex shrink-0 items-center gap-1 rounded", {
472
1154
  "cursor-not-allowed": isDisabled
473
1155
  });
474
- const childrenButtonClasses = (0, import_clsx7.default)(
1156
+ const childrenButtonClasses = (0, import_clsx13.default)(
475
1157
  "flex items-center justify-center rounded bg-uiBackground01 p-1 hover:bg-hover02 active:bg-active02",
476
- import_component_theme6.focusVisible.normal,
1158
+ import_component_theme8.focusVisible.normal,
477
1159
  {
478
1160
  "pointer-events-none": isDisabled,
479
1161
  "border border-uiBorder02": variant === "outline"
480
1162
  }
481
1163
  );
482
- const buttonClasses = (0, import_clsx7.default)(
1164
+ const buttonClasses = (0, import_clsx13.default)(
483
1165
  "flex items-center rounded bg-uiBackground01",
484
- import_component_theme6.buttonColors[variant].base,
485
- import_component_theme6.buttonColors[variant].hover,
486
- import_component_theme6.buttonColors[variant].active,
487
- import_component_theme6.buttonColors[variant].disabled,
488
- import_component_theme6.focusVisible.normal,
1166
+ import_component_theme8.buttonColors[variant].base,
1167
+ import_component_theme8.buttonColors[variant].hover,
1168
+ import_component_theme8.buttonColors[variant].active,
1169
+ import_component_theme8.buttonColors[variant].disabled,
1170
+ import_component_theme8.focusVisible.normal,
489
1171
  {
490
1172
  "pointer-events-none": isDisabled,
491
1173
  "h-6 px-2": size === "x-small" || size === "small",
@@ -493,19 +1175,19 @@ function Dropdown({
493
1175
  "h-10 px-4": size === "large"
494
1176
  }
495
1177
  );
496
- const labelClasses = (0, import_clsx7.default)("flex items-center", {
1178
+ const labelClasses = (0, import_clsx13.default)("flex items-center", {
497
1179
  "mr-1": !isArrowHidden && size === "x-small",
498
1180
  "mr-2": !isArrowHidden && size !== "x-small",
499
1181
  "typography-label12regular": size === "x-small",
500
1182
  "typography-label14regular": size === "small" || size === "medium",
501
1183
  "typography-label16regular": size === "large"
502
1184
  });
503
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1185
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
504
1186
  DropdownContext.Provider,
505
1187
  {
506
1188
  value: { isVisible, setIsVisible, isDisabled, targetDimensions, variant, portalTargetRef },
507
- children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { ref: targetRef, className: wrapperClasses, children: [
508
- target ? /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
1189
+ children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { ref: targetRef, className: wrapperClasses, children: [
1190
+ target ? /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
509
1191
  "button",
510
1192
  {
511
1193
  type: "button",
@@ -515,7 +1197,7 @@ function Dropdown({
515
1197
  disabled: isDisabled,
516
1198
  children: [
517
1199
  target,
518
- !isArrowHidden && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "ml-2 flex items-center fill-icon01", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1200
+ !isArrowHidden && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "ml-2 flex items-center fill-icon01", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
519
1201
  Icon,
520
1202
  {
521
1203
  name: isVisible ? "angle-small-up" : "angle-small-down",
@@ -524,10 +1206,10 @@ function Dropdown({
524
1206
  ) })
525
1207
  ]
526
1208
  }
527
- ) : /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("button", { type: "button", title, className: buttonClasses, onClick: handleToggle, disabled: isDisabled, children: [
528
- icon && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("span", { className: "mr-1 flex", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Icon, { name: icon, size: size === "large" ? "medium" : "small" }) }),
529
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("span", { className: labelClasses, children: label }),
530
- !isArrowHidden && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "ml-auto flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Icon, { name: isVisible ? "angle-small-up" : "angle-small-down", size: "small" }) })
1209
+ ) : /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("button", { type: "button", title, className: buttonClasses, onClick: handleToggle, disabled: isDisabled, children: [
1210
+ icon && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "mr-1 flex", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Icon, { name: icon, size: size === "large" ? "medium" : "small" }) }),
1211
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: labelClasses, children: label }),
1212
+ !isArrowHidden && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "ml-auto flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Icon, { name: isVisible ? "angle-small-up" : "angle-small-down", size: "small" }) })
531
1213
  ] }),
532
1214
  !portalTargetRef ? children : portalTargetRef != null && portalTargetRef.current && (0, import_react_dom.createPortal)(children, portalTargetRef.current)
533
1215
  ] })
@@ -539,14 +1221,14 @@ Dropdown.Item = DropdownItem;
539
1221
 
540
1222
  // src/evaluation-star/evaluation-star.tsx
541
1223
  var import_component_icons2 = require("@zenkigen-inc/component-icons");
542
- var import_component_theme7 = require("@zenkigen-inc/component-theme");
543
- var import_clsx8 = __toESM(require("clsx"));
544
- var import_react7 = require("react");
545
- var import_jsx_runtime12 = require("react/jsx-runtime");
1224
+ var import_component_theme9 = require("@zenkigen-inc/component-theme");
1225
+ var import_clsx14 = __toESM(require("clsx"));
1226
+ var import_react16 = require("react");
1227
+ var import_jsx_runtime20 = require("react/jsx-runtime");
546
1228
  function EvaluationStar({ value, isEditable = false, onChangeRating, size = "medium" }) {
547
1229
  const maxRating = 5;
548
- const [currentRating, setCurrentRating] = (0, import_react7.useState)(value);
549
- const handleChangeRating = (0, import_react7.useCallback)(
1230
+ const [currentRating, setCurrentRating] = (0, import_react16.useState)(value);
1231
+ const handleChangeRating = (0, import_react16.useCallback)(
550
1232
  (newRating) => {
551
1233
  if (isEditable) {
552
1234
  setCurrentRating(newRating);
@@ -557,72 +1239,30 @@ function EvaluationStar({ value, isEditable = false, onChangeRating, size = "med
557
1239
  },
558
1240
  [isEditable, onChangeRating]
559
1241
  );
560
- const starClasses = (0, import_clsx8.default)(import_component_theme7.focusVisible.inset, { "w-6 h-6": size === "large", "w-4 h-4": size === "medium" });
1242
+ const starClasses = (0, import_clsx14.default)(import_component_theme9.focusVisible.inset, { "w-6 h-6": size === "large", "w-4 h-4": size === "medium" });
561
1243
  const renderStar = (rating) => {
562
1244
  const color = rating <= currentRating ? "fill-yellow-yellow50" : "fill-icon03";
563
1245
  const IconComponent = import_component_icons2.iconElements["star-filled"];
564
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1246
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
565
1247
  "button",
566
1248
  {
567
1249
  type: "button",
568
1250
  onClick: () => handleChangeRating(rating),
569
- className: (0, import_clsx8.default)(color, starClasses),
1251
+ className: (0, import_clsx14.default)(color, starClasses),
570
1252
  disabled: !isEditable,
571
- children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(IconComponent, {})
1253
+ children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(IconComponent, {})
572
1254
  },
573
1255
  rating
574
1256
  );
575
1257
  };
576
1258
  const ratingStars = Array.from({ length: maxRating }, (_, index) => renderStar(index + 1));
577
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "flex flex-row", children: ratingStars });
1259
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "flex flex-row", children: ratingStars });
578
1260
  }
579
1261
 
580
1262
  // src/file-input/file-input.tsx
581
- var import_clsx10 = require("clsx");
582
- var import_react8 = require("react");
583
-
584
- // src/icon-button/icon-button.tsx
585
- var import_component_theme8 = require("@zenkigen-inc/component-theme");
586
- var import_clsx9 = require("clsx");
587
- var import_jsx_runtime13 = require("react/jsx-runtime");
588
- function IconButton({
589
- icon,
590
- size = "medium",
591
- variant = "outline",
592
- isNoPadding = false,
593
- isDisabled = false,
594
- isSelected = false,
595
- ...props
596
- }) {
597
- const baseClasses = (0, import_clsx9.clsx)(
598
- "typography-label16regular flex items-center justify-center gap-1 rounded",
599
- import_component_theme8.buttonColors[variant].hover,
600
- import_component_theme8.buttonColors[variant].active,
601
- import_component_theme8.buttonColors[variant].disabled,
602
- import_component_theme8.focusVisible.normal,
603
- {
604
- "h-4 w-4": size === "small" && isNoPadding,
605
- "h-6 w-6": size === "small" && !isNoPadding || (size === "medium" || size === "large") && isNoPadding,
606
- "h-8 w-8": size === "medium" && !isNoPadding,
607
- "h-10 w-10": size === "large" && !isNoPadding,
608
- "inline-flex": props.isAnchor,
609
- "pointer-events-none": isDisabled,
610
- [import_component_theme8.buttonColors[variant].selected]: isSelected,
611
- [import_component_theme8.buttonColors[variant].base]: !isSelected
612
- }
613
- );
614
- const iconSize = size === "small" ? "small" : "medium";
615
- if (props.isAnchor === true) {
616
- const buttonProps = Object.fromEntries(Object.entries(props).filter(([key]) => key !== "isAnchor"));
617
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("a", { className: baseClasses, ...buttonProps, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Icon, { name: icon, size: iconSize }) });
618
- } else {
619
- const buttonProps = Object.fromEntries(Object.entries(props).filter(([key]) => key !== "isAnchor"));
620
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("button", { type: "button", className: baseClasses, disabled: isDisabled, ...buttonProps, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Icon, { name: icon, size: iconSize }) });
621
- }
622
- }
623
-
624
- // src/file-input/file-input.tsx
625
- var import_jsx_runtime14 = require("react/jsx-runtime");
1263
+ var import_clsx15 = require("clsx");
1264
+ var import_react17 = require("react");
1265
+ var import_jsx_runtime21 = require("react/jsx-runtime");
626
1266
  var ERROR_TYPES = {
627
1267
  SIZE_TOO_LARGE: "SIZE_TOO_LARGE",
628
1268
  UNSUPPORTED_FORMAT: "UNSUPPORTED_FORMAT"
@@ -631,16 +1271,16 @@ var ERROR_MESSAGES = {
631
1271
  SIZE_TOO_LARGE: "\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u304C\u5927\u304D\u904E\u304E\u307E\u3059\u3002",
632
1272
  UNSUPPORTED_FORMAT: "\u30D5\u30A1\u30A4\u30EB\u5F62\u5F0F\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093\u3002"
633
1273
  };
634
- var FileInput = (0, import_react8.forwardRef)(
1274
+ var FileInput = (0, import_react17.forwardRef)(
635
1275
  ({ id, variant, accept, maxSize, isDisabled = false, isError = false, onSelect, onError, errorMessages, ...rest }, ref) => {
636
1276
  const size = variant === "button" ? rest.size ?? "medium" : "medium";
637
- const [selectedFile, setSelectedFile] = (0, import_react8.useState)(null);
638
- const [isDragOver, setIsDragOver] = (0, import_react8.useState)(false);
639
- const fileInputRef = (0, import_react8.useRef)(null);
640
- const errorId = (0, import_react8.useId)();
641
- const fallbackId = (0, import_react8.useId)();
1277
+ const [selectedFile, setSelectedFile] = (0, import_react17.useState)(null);
1278
+ const [isDragOver, setIsDragOver] = (0, import_react17.useState)(false);
1279
+ const fileInputRef = (0, import_react17.useRef)(null);
1280
+ const errorId = (0, import_react17.useId)();
1281
+ const fallbackId = (0, import_react17.useId)();
642
1282
  const inputId = id ?? fallbackId;
643
- const validateFile = (0, import_react8.useCallback)(
1283
+ const validateFile = (0, import_react17.useCallback)(
644
1284
  (file) => {
645
1285
  const errors = [];
646
1286
  if (maxSize != null && maxSize > 0 && file.size > maxSize) {
@@ -679,7 +1319,7 @@ var FileInput = (0, import_react8.forwardRef)(
679
1319
  },
680
1320
  [accept, maxSize, onError]
681
1321
  );
682
- const handleFileSelect = (0, import_react8.useCallback)(
1322
+ const handleFileSelect = (0, import_react17.useCallback)(
683
1323
  (file) => {
684
1324
  if (file && !validateFile(file)) {
685
1325
  return;
@@ -689,7 +1329,7 @@ var FileInput = (0, import_react8.forwardRef)(
689
1329
  },
690
1330
  [validateFile, onSelect]
691
1331
  );
692
- const handleFileInputChange = (0, import_react8.useCallback)(
1332
+ const handleFileInputChange = (0, import_react17.useCallback)(
693
1333
  (event) => {
694
1334
  if (isDisabled) {
695
1335
  return;
@@ -705,7 +1345,7 @@ var FileInput = (0, import_react8.forwardRef)(
705
1345
  },
706
1346
  [isDisabled, handleFileSelect]
707
1347
  );
708
- const handleDragOver = (0, import_react8.useCallback)(
1348
+ const handleDragOver = (0, import_react17.useCallback)(
709
1349
  (event) => {
710
1350
  event.preventDefault();
711
1351
  if (!isDisabled) {
@@ -714,11 +1354,11 @@ var FileInput = (0, import_react8.forwardRef)(
714
1354
  },
715
1355
  [isDisabled]
716
1356
  );
717
- const handleDragLeave = (0, import_react8.useCallback)((event) => {
1357
+ const handleDragLeave = (0, import_react17.useCallback)((event) => {
718
1358
  event.preventDefault();
719
1359
  setIsDragOver(false);
720
1360
  }, []);
721
- const handleDrop = (0, import_react8.useCallback)(
1361
+ const handleDrop = (0, import_react17.useCallback)(
722
1362
  (event) => {
723
1363
  event.preventDefault();
724
1364
  setIsDragOver(false);
@@ -730,19 +1370,19 @@ var FileInput = (0, import_react8.forwardRef)(
730
1370
  },
731
1371
  [isDisabled, handleFileSelect]
732
1372
  );
733
- const handleButtonClick = (0, import_react8.useCallback)(() => {
1373
+ const handleButtonClick = (0, import_react17.useCallback)(() => {
734
1374
  if (!isDisabled) {
735
1375
  fileInputRef.current?.click();
736
1376
  }
737
1377
  }, [isDisabled]);
738
- const handleClear = (0, import_react8.useCallback)(() => {
1378
+ const handleClear = (0, import_react17.useCallback)(() => {
739
1379
  setSelectedFile(null);
740
1380
  if (fileInputRef.current) {
741
1381
  fileInputRef.current.value = "";
742
1382
  }
743
1383
  onSelect?.(null);
744
1384
  }, [onSelect]);
745
- (0, import_react8.useImperativeHandle)(
1385
+ (0, import_react17.useImperativeHandle)(
746
1386
  ref,
747
1387
  () => ({
748
1388
  reset: handleClear
@@ -751,7 +1391,7 @@ var FileInput = (0, import_react8.forwardRef)(
751
1391
  );
752
1392
  const hasErrorMessages = !isDisabled && errorMessages != null && errorMessages.length > 0;
753
1393
  const hasErrors = !isDisabled && isError === true;
754
- const dropzoneClasses = (0, import_clsx10.clsx)(
1394
+ const dropzoneClasses = (0, import_clsx15.clsx)(
755
1395
  "flex flex-1 flex-col items-center justify-center gap-4 rounded border border-dashed px-6 text-center",
756
1396
  selectedFile ? "py-[52px]" : "py-4",
757
1397
  {
@@ -798,8 +1438,8 @@ var FileInput = (0, import_react8.forwardRef)(
798
1438
  return normalized.join(", ");
799
1439
  })();
800
1440
  if (variant === "button") {
801
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "flex items-center gap-2", children: [
802
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: hasErrors ? "flex-1" : "min-w-0 flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1441
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "flex items-center gap-2", children: [
1442
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: hasErrors ? "flex-1" : "min-w-0 flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
803
1443
  InternalButton,
804
1444
  {
805
1445
  size,
@@ -807,14 +1447,14 @@ var FileInput = (0, import_react8.forwardRef)(
807
1447
  isDisabled,
808
1448
  width: "100%",
809
1449
  onClick: handleButtonClick,
810
- before: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Icon, { name: "upload", size: "small" }),
811
- after: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_jsx_runtime14.Fragment, { children: selectedFile ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: (0, import_clsx10.clsx)("typography-label12regular truncate", !isDisabled && "text-text01"), children: selectedFile.name }) : "" }),
812
- children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "truncate", children: "\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E" })
1450
+ before: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Icon, { name: "upload", size: "small" }),
1451
+ after: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_jsx_runtime21.Fragment, { children: selectedFile ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { className: (0, import_clsx15.clsx)("typography-label12regular truncate", !isDisabled && "text-text01"), children: selectedFile.name }) : "" }),
1452
+ children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { className: "truncate", children: "\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E" })
813
1453
  }
814
1454
  ) }),
815
- selectedFile && !isDisabled && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(IconButton, { variant: "text", icon: "close", size: "small", onClick: handleClear }) }),
816
- hasErrors && hasErrorMessages && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { id: errorId, "data-testid": "error-messages", className: "typography-label12regular text-supportError", children: errorMessages.map((message, index) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "break-all", children: message }, index)) }),
817
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1455
+ selectedFile && !isDisabled && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(IconButton, { variant: "text", icon: "close", size: "small", onClick: handleClear }) }),
1456
+ hasErrors && hasErrorMessages && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { id: errorId, "data-testid": "error-messages", className: "typography-label12regular text-supportError", children: errorMessages.map((message, index) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "break-all", children: message }, index)) }),
1457
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
818
1458
  "input",
819
1459
  {
820
1460
  id: inputId,
@@ -829,8 +1469,8 @@ var FileInput = (0, import_react8.forwardRef)(
829
1469
  )
830
1470
  ] });
831
1471
  }
832
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "flex min-w-[320px] flex-col gap-2", children: [
833
- /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
1472
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "flex min-w-[320px] flex-col gap-2", children: [
1473
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
834
1474
  "div",
835
1475
  {
836
1476
  className: dropzoneClasses,
@@ -850,25 +1490,25 @@ var FileInput = (0, import_react8.forwardRef)(
850
1490
  "aria-disabled": isDisabled,
851
1491
  ...hasErrors && hasErrorMessages && { "aria-describedby": errorId },
852
1492
  children: [
853
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Icon, { name: "upload-document", size: "large", color: isDisabled ? "icon03" : "icon01" }),
854
- !selectedFile && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "flex flex-col gap-1", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "typography-body13regular select-none", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(import_jsx_runtime14.Fragment, { children: [
1493
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Icon, { name: "upload-document", size: "large", color: isDisabled ? "icon03" : "icon01" }),
1494
+ !selectedFile && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "flex flex-col gap-1", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "typography-body13regular select-none", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_jsx_runtime21.Fragment, { children: [
855
1495
  "\u3053\u3053\u306B\u30D5\u30A1\u30A4\u30EB\u3092\u30C9\u30ED\u30C3\u30D7\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
856
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("br", {}),
1496
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("br", {}),
857
1497
  "\u307E\u305F\u306F\u3001",
858
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: (0, import_clsx10.clsx)(!isDisabled ? "text-link01" : ""), children: "\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E" }),
1498
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { className: (0, import_clsx15.clsx)(!isDisabled ? "text-link01" : ""), children: "\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E" }),
859
1499
  "\u3057\u3066\u304F\u3060\u3055\u3044\u3002"
860
1500
  ] }) }) }),
861
- !selectedFile && /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "flex flex-col gap-1", children: [
862
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: (0, import_clsx10.clsx)("typography-label11regular", isDisabled ? "text-textPlaceholder" : "text-text02"), children: "\u5BFE\u5FDC\u5F62\u5F0F" }),
863
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: (0, import_clsx10.clsx)("typography-body12regular", isDisabled ? "text-textPlaceholder" : "text-text01"), children: acceptLabel }),
864
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: (0, import_clsx10.clsx)("typography-label11regular", isDisabled ? "text-textPlaceholder" : "text-text02"), children: "\u30B5\u30A4\u30BA" }),
865
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: (0, import_clsx10.clsx)("typography-body12regular", isDisabled ? "text-textPlaceholder" : "text-text01"), children: maxSizeLabel })
1501
+ !selectedFile && /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "flex flex-col gap-1", children: [
1502
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: (0, import_clsx15.clsx)("typography-label11regular", isDisabled ? "text-textPlaceholder" : "text-text02"), children: "\u5BFE\u5FDC\u5F62\u5F0F" }),
1503
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: (0, import_clsx15.clsx)("typography-body12regular", isDisabled ? "text-textPlaceholder" : "text-text01"), children: acceptLabel }),
1504
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: (0, import_clsx15.clsx)("typography-label11regular", isDisabled ? "text-textPlaceholder" : "text-text02"), children: "\u30B5\u30A4\u30BA" }),
1505
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: (0, import_clsx15.clsx)("typography-body12regular", isDisabled ? "text-textPlaceholder" : "text-text01"), children: maxSizeLabel })
866
1506
  ] }),
867
- selectedFile && /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "mt-2 flex flex-col items-center gap-1", children: [
868
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "typography-label11regular text-text02", children: "\u30D5\u30A1\u30A4\u30EB\u540D" }),
869
- /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "flex items-center gap-2", children: [
870
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "typography-label14regular", children: selectedFile.name }),
871
- !isDisabled && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1507
+ selectedFile && /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "mt-2 flex flex-col items-center gap-1", children: [
1508
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { className: "typography-label11regular text-text02", children: "\u30D5\u30A1\u30A4\u30EB\u540D" }),
1509
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "flex items-center gap-2", children: [
1510
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { className: "typography-label14regular", children: selectedFile.name }),
1511
+ !isDisabled && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
872
1512
  IconButton,
873
1513
  {
874
1514
  variant: "text",
@@ -882,7 +1522,7 @@ var FileInput = (0, import_react8.forwardRef)(
882
1522
  )
883
1523
  ] })
884
1524
  ] }),
885
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1525
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
886
1526
  "input",
887
1527
  {
888
1528
  id: inputId,
@@ -898,13 +1538,13 @@ var FileInput = (0, import_react8.forwardRef)(
898
1538
  ]
899
1539
  }
900
1540
  ),
901
- hasErrors && hasErrorMessages && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1541
+ hasErrors && hasErrorMessages && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
902
1542
  "div",
903
1543
  {
904
1544
  id: errorId,
905
1545
  "data-testid": "error-messages",
906
1546
  className: "typography-body13regular flex flex-col text-supportDanger",
907
- children: errorMessages.map((message, index) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { children: message }, index))
1547
+ children: errorMessages.map((message, index) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { children: message }, index))
908
1548
  }
909
1549
  )
910
1550
  ] });
@@ -913,16 +1553,16 @@ var FileInput = (0, import_react8.forwardRef)(
913
1553
  FileInput.displayName = "FileInput";
914
1554
 
915
1555
  // src/heading/heading.tsx
916
- var import_component_theme9 = require("@zenkigen-inc/component-theme");
917
- var import_clsx11 = require("clsx");
918
- var import_jsx_runtime15 = require("react/jsx-runtime");
1556
+ var import_component_theme10 = require("@zenkigen-inc/component-theme");
1557
+ var import_clsx16 = require("clsx");
1558
+ var import_jsx_runtime22 = require("react/jsx-runtime");
919
1559
  function Heading(props) {
920
1560
  const TagName = `h${props.level}`;
921
- const classes = (0, import_clsx11.clsx)(`flex items-center text-text01`, import_component_theme9.typography.heading[TagName], {
1561
+ const classes = (0, import_clsx16.clsx)(`flex items-center text-text01`, import_component_theme10.typography.heading[TagName], {
922
1562
  "gap-2": props.level === 1,
923
1563
  "gap-1": props.level > 1
924
1564
  });
925
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(TagName, { className: classes, children: [
1565
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(TagName, { className: classes, children: [
926
1566
  props.before,
927
1567
  props.children,
928
1568
  props.after
@@ -930,22 +1570,22 @@ function Heading(props) {
930
1570
  }
931
1571
 
932
1572
  // src/hooks/use-roving-focus.ts
933
- var import_react9 = require("react");
1573
+ var import_react18 = require("react");
934
1574
  var useRovingFocus = ({
935
1575
  values,
936
1576
  defaultFocusedValue,
937
1577
  isDisabled = false
938
1578
  }) => {
939
- const [focusedValue, setFocusedValue] = (0, import_react9.useState)(
1579
+ const [focusedValue, setFocusedValue] = (0, import_react18.useState)(
940
1580
  typeof defaultFocusedValue === "undefined" ? null : defaultFocusedValue
941
1581
  );
942
- const handleFocusChange = (0, import_react9.useCallback)((newValue) => {
1582
+ const handleFocusChange = (0, import_react18.useCallback)((newValue) => {
943
1583
  setFocusedValue(newValue);
944
1584
  }, []);
945
- const handleBlur = (0, import_react9.useCallback)(() => {
1585
+ const handleBlur = (0, import_react18.useCallback)(() => {
946
1586
  setFocusedValue(null);
947
1587
  }, []);
948
- const handleKeyDown = (0, import_react9.useCallback)(
1588
+ const handleKeyDown = (0, import_react18.useCallback)(
949
1589
  (event) => {
950
1590
  if (isDisabled === true || values.length === 0) return;
951
1591
  const currentIndex = focusedValue !== null && focusedValue !== "" ? values.indexOf(focusedValue) : -1;
@@ -1000,17 +1640,17 @@ var useRovingFocus = ({
1000
1640
  };
1001
1641
 
1002
1642
  // src/loading/loading.tsx
1003
- var import_clsx12 = __toESM(require("clsx"));
1004
- var import_jsx_runtime16 = require("react/jsx-runtime");
1643
+ var import_clsx17 = __toESM(require("clsx"));
1644
+ var import_jsx_runtime23 = require("react/jsx-runtime");
1005
1645
  function Loading({ size = "medium", position = "fixed", height = "100%" }) {
1006
- const wrapperClasses = (0, import_clsx12.default)(position, "left-0 top-0 z-20 flex w-full items-center justify-center");
1007
- const svgClasses = (0, import_clsx12.default)({
1646
+ const wrapperClasses = (0, import_clsx17.default)(position, "left-0 top-0 z-20 flex w-full items-center justify-center");
1647
+ const svgClasses = (0, import_clsx17.default)({
1008
1648
  "h-4 w-4": size === "small",
1009
1649
  "h-8 w-8": size === "medium",
1010
1650
  "h-16 w-16": size === "large"
1011
1651
  });
1012
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_jsx_runtime16.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: wrapperClasses, style: { height }, children: [
1013
- size === "small" && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("svg", { className: svgClasses, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1652
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_jsx_runtime23.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: wrapperClasses, style: { height }, children: [
1653
+ size === "small" && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("svg", { className: svgClasses, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1014
1654
  "circle",
1015
1655
  {
1016
1656
  className: "origin-center animate-circular-small-move stroke-interactive01",
@@ -1022,7 +1662,7 @@ function Loading({ size = "medium", position = "fixed", height = "100%" }) {
1022
1662
  fill: "none"
1023
1663
  }
1024
1664
  ) }),
1025
- size === "medium" && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("svg", { className: svgClasses, viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1665
+ size === "medium" && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("svg", { className: svgClasses, viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1026
1666
  "circle",
1027
1667
  {
1028
1668
  className: "origin-center animate-circular-medium-move stroke-interactive01",
@@ -1034,7 +1674,7 @@ function Loading({ size = "medium", position = "fixed", height = "100%" }) {
1034
1674
  fill: "none"
1035
1675
  }
1036
1676
  ) }),
1037
- size === "large" && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("svg", { className: svgClasses, viewBox: "0 0 64 64", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1677
+ size === "large" && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("svg", { className: svgClasses, viewBox: "0 0 64 64", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1038
1678
  "circle",
1039
1679
  {
1040
1680
  className: "origin-center animate-circular-large-move stroke-interactive01",
@@ -1050,13 +1690,13 @@ function Loading({ size = "medium", position = "fixed", height = "100%" }) {
1050
1690
  }
1051
1691
 
1052
1692
  // src/modal/modal.tsx
1053
- var import_react13 = require("react");
1693
+ var import_react22 = require("react");
1054
1694
  var import_react_dom2 = require("react-dom");
1055
1695
 
1056
1696
  // src/modal/body-scroll-lock.tsx
1057
- var import_react10 = require("react");
1697
+ var import_react19 = require("react");
1058
1698
  var BodyScrollLock = () => {
1059
- (0, import_react10.useLayoutEffect)(() => {
1699
+ (0, import_react19.useLayoutEffect)(() => {
1060
1700
  const { scrollX, scrollY } = window;
1061
1701
  const { body } = document;
1062
1702
  const hasVerticalScrollbar = document.documentElement.scrollHeight > document.documentElement.clientHeight;
@@ -1101,34 +1741,34 @@ function restoreProperty(element, property, value) {
1101
1741
  }
1102
1742
 
1103
1743
  // src/modal/modal-body.tsx
1104
- var import_jsx_runtime17 = require("react/jsx-runtime");
1744
+ var import_jsx_runtime24 = require("react/jsx-runtime");
1105
1745
  function ModalBody({ children }) {
1106
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "overflow-y-auto", children });
1746
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "overflow-y-auto", children });
1107
1747
  }
1108
1748
 
1109
1749
  // src/modal/modal-context.ts
1110
- var import_react11 = require("react");
1111
- var ModalContext = (0, import_react11.createContext)({
1750
+ var import_react20 = require("react");
1751
+ var ModalContext = (0, import_react20.createContext)({
1112
1752
  onClose: () => null
1113
1753
  });
1114
1754
 
1115
1755
  // src/modal/modal-footer.tsx
1116
- var import_clsx13 = __toESM(require("clsx"));
1117
- var import_jsx_runtime18 = require("react/jsx-runtime");
1756
+ var import_clsx18 = __toESM(require("clsx"));
1757
+ var import_jsx_runtime25 = require("react/jsx-runtime");
1118
1758
  function ModalFooter({ children, isNoBorder = false }) {
1119
- const wrapperClasses = (0, import_clsx13.default)("flex w-full shrink-0 items-center rounded-b-lg px-6 py-4", {
1759
+ const wrapperClasses = (0, import_clsx18.default)("flex w-full shrink-0 items-center rounded-b-lg px-6 py-4", {
1120
1760
  "border-t-[1px] border-uiBorder01": !isNoBorder
1121
1761
  });
1122
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: wrapperClasses, children });
1762
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: wrapperClasses, children });
1123
1763
  }
1124
1764
 
1125
1765
  // src/modal/modal-header.tsx
1126
- var import_clsx14 = __toESM(require("clsx"));
1127
- var import_react12 = require("react");
1128
- var import_jsx_runtime19 = require("react/jsx-runtime");
1766
+ var import_clsx19 = __toESM(require("clsx"));
1767
+ var import_react21 = require("react");
1768
+ var import_jsx_runtime26 = require("react/jsx-runtime");
1129
1769
  function ModalHeader({ children, isNoBorder = false }) {
1130
- const { onClose } = (0, import_react12.useContext)(ModalContext);
1131
- const headerClasses = (0, import_clsx14.default)(
1770
+ const { onClose } = (0, import_react21.useContext)(ModalContext);
1771
+ const headerClasses = (0, import_clsx19.default)(
1132
1772
  "typography-h5 flex w-full shrink-0 items-center justify-between rounded-t-lg px-6 text-text01",
1133
1773
  {
1134
1774
  "border-b border-uiBorder01": !isNoBorder,
@@ -1136,14 +1776,14 @@ function ModalHeader({ children, isNoBorder = false }) {
1136
1776
  "h-12": onClose
1137
1777
  }
1138
1778
  );
1139
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { className: headerClasses, children: [
1140
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { children }),
1141
- onClose && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(IconButton, { icon: "close", size: "small", variant: "text", onClick: onClose })
1779
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: headerClasses, children: [
1780
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { children }),
1781
+ onClose && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(IconButton, { icon: "close", size: "small", variant: "text", onClick: onClose })
1142
1782
  ] });
1143
1783
  }
1144
1784
 
1145
1785
  // src/modal/modal.tsx
1146
- var import_jsx_runtime20 = require("react/jsx-runtime");
1786
+ var import_jsx_runtime27 = require("react/jsx-runtime");
1147
1787
  var LIMIT_WIDTH = 320;
1148
1788
  var LIMIT_HEIGHT = 184;
1149
1789
  function Modal({
@@ -1155,16 +1795,16 @@ function Modal({
1155
1795
  onClose,
1156
1796
  portalTargetRef
1157
1797
  }) {
1158
- const [isMounted, setIsMounted] = (0, import_react13.useState)(false);
1798
+ const [isMounted, setIsMounted] = (0, import_react22.useState)(false);
1159
1799
  const renderWidth = typeof width === "number" ? Math.max(width, LIMIT_WIDTH) : width;
1160
1800
  const renderHeight = typeof height === "number" ? Math.max(height, LIMIT_HEIGHT) : height;
1161
- (0, import_react13.useEffect)(() => {
1801
+ (0, import_react22.useEffect)(() => {
1162
1802
  setIsMounted(true);
1163
1803
  }, []);
1164
- return isMounted && isOpen ? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [
1165
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(BodyScrollLock, {}),
1804
+ return isMounted && isOpen ? /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_jsx_runtime27.Fragment, { children: [
1805
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(BodyScrollLock, {}),
1166
1806
  (0, import_react_dom2.createPortal)(
1167
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ModalContext.Provider, { value: { onClose }, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "fixed left-0 top-0 z-overlay flex size-full items-center justify-center bg-backgroundOverlayBlack py-4", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1807
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(ModalContext.Provider, { value: { onClose }, children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: "fixed left-0 top-0 z-overlay flex size-full items-center justify-center bg-backgroundOverlayBlack py-4", children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
1168
1808
  "div",
1169
1809
  {
1170
1810
  className: "grid max-h-full min-h-[120px] grid-rows-[max-content_1fr_max-content] flex-col rounded-lg bg-uiBackground01 shadow-modalShadow",
@@ -1181,10 +1821,10 @@ Modal.Header = ModalHeader;
1181
1821
  Modal.Footer = ModalFooter;
1182
1822
 
1183
1823
  // src/notification-inline/notification-inline.tsx
1184
- var import_clsx15 = require("clsx");
1185
- var import_jsx_runtime21 = require("react/jsx-runtime");
1824
+ var import_clsx20 = require("clsx");
1825
+ var import_jsx_runtime28 = require("react/jsx-runtime");
1186
1826
  function NotificationInline({ state = "default", size = "medium", ...props }) {
1187
- const wrapperClasses = (0, import_clsx15.clsx)("typography-body13regular flex items-center gap-1 rounded text-text01", {
1827
+ const wrapperClasses = (0, import_clsx20.clsx)("typography-body13regular flex items-center gap-1 rounded text-text01", {
1188
1828
  "bg-uiBackgroundError": state === "attention",
1189
1829
  "bg-uiBackgroundWarning": state === "warning",
1190
1830
  "bg-uiBackgroundBlue": state === "information",
@@ -1193,7 +1833,7 @@ function NotificationInline({ state = "default", size = "medium", ...props }) {
1193
1833
  "p-2": size === "small",
1194
1834
  "p-3": size === "medium"
1195
1835
  });
1196
- const iconClasses = (0, import_clsx15.clsx)("flex items-center", {
1836
+ const iconClasses = (0, import_clsx20.clsx)("flex items-center", {
1197
1837
  "fill-supportError": state === "attention",
1198
1838
  "fill-supportWarning": state === "warning",
1199
1839
  "fill-blue-blue50": state === "information",
@@ -1209,28 +1849,28 @@ function NotificationInline({ state = "default", size = "medium", ...props }) {
1209
1849
  small: "small",
1210
1850
  medium: "medium"
1211
1851
  };
1212
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: wrapperClasses, children: [
1213
- state !== "default" && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: iconClasses, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Icon, { name: iconName[state], size: iconSize[size] }) }),
1214
- /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("p", { className: "flex-1", children: props.children }),
1215
- props.showClose === true && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(IconButton, { icon: "close", size: "small", variant: "text", onClick: props.onClickClose }) })
1852
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: wrapperClasses, children: [
1853
+ state !== "default" && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: iconClasses, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Icon, { name: iconName[state], size: iconSize[size] }) }),
1854
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "flex-1", children: props.children }),
1855
+ props.showClose === true && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(IconButton, { icon: "close", size: "small", variant: "text", onClick: props.onClickClose }) })
1216
1856
  ] });
1217
1857
  }
1218
1858
 
1219
1859
  // src/pagination/pagination-button.tsx
1220
- var import_clsx16 = require("clsx");
1221
- var import_react15 = require("react");
1860
+ var import_clsx21 = require("clsx");
1861
+ var import_react24 = require("react");
1222
1862
 
1223
1863
  // src/pagination/pagination-context.ts
1224
- var import_react14 = require("react");
1225
- var PaginationContext = (0, import_react14.createContext)({
1864
+ var import_react23 = require("react");
1865
+ var PaginationContext = (0, import_react23.createContext)({
1226
1866
  currentPage: 0
1227
1867
  });
1228
1868
 
1229
1869
  // src/pagination/pagination-button.tsx
1230
- var import_jsx_runtime22 = require("react/jsx-runtime");
1870
+ var import_jsx_runtime29 = require("react/jsx-runtime");
1231
1871
  function PaginationButton({ page, onClick }) {
1232
- const { currentPage } = (0, import_react15.useContext)(PaginationContext);
1233
- const buttonClasses = (0, import_clsx16.clsx)(
1872
+ const { currentPage } = (0, import_react24.useContext)(PaginationContext);
1873
+ const buttonClasses = (0, import_clsx21.clsx)(
1234
1874
  "flex h-8 min-w-8 items-center justify-center rounded fill-icon01 px-1",
1235
1875
  "typography-label14regular",
1236
1876
  "text-interactive02",
@@ -1238,11 +1878,11 @@ function PaginationButton({ page, onClick }) {
1238
1878
  { "border border-uiBorder02": page === currentPage },
1239
1879
  { "border-transparent": page !== currentPage }
1240
1880
  );
1241
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("button", { type: "button", className: buttonClasses, onClick: () => onClick(page), children: page });
1881
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("button", { type: "button", className: buttonClasses, onClick: () => onClick(page), children: page });
1242
1882
  }
1243
1883
 
1244
1884
  // src/pagination/pagination.tsx
1245
- var import_jsx_runtime23 = require("react/jsx-runtime");
1885
+ var import_jsx_runtime30 = require("react/jsx-runtime");
1246
1886
  var START_PAGE = 1;
1247
1887
  function Pagination({ currentPage, totalPage, sideNumPagesToShow = 3, onClick }) {
1248
1888
  if (totalPage < START_PAGE) {
@@ -1278,14 +1918,14 @@ function Pagination({ currentPage, totalPage, sideNumPagesToShow = 3, onClick })
1278
1918
  const hasHeadEllipsis = firstPageInList !== null && firstPageInList > START_PAGE + 1;
1279
1919
  const hasTailEllipsis = lastPageInList !== null && lastPageInList < totalPage - 1;
1280
1920
  const hasLastPageButton = totalPage > START_PAGE;
1281
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1921
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
1282
1922
  PaginationContext.Provider,
1283
1923
  {
1284
1924
  value: {
1285
1925
  currentPage: clampedCurrentPage
1286
1926
  },
1287
- children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("ul", { className: "flex gap-1", children: [
1288
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("li", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1927
+ children: /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("ul", { className: "flex gap-1", children: [
1928
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("li", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
1289
1929
  IconButton,
1290
1930
  {
1291
1931
  isDisabled: isFirstPage,
@@ -1295,12 +1935,12 @@ function Pagination({ currentPage, totalPage, sideNumPagesToShow = 3, onClick })
1295
1935
  onClick: () => onClick(Math.max(START_PAGE, clampedCurrentPage - 1))
1296
1936
  }
1297
1937
  ) }),
1298
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(PaginationButton, { onClick: () => onClick(START_PAGE), page: START_PAGE }) }),
1299
- hasHeadEllipsis && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("li", { className: threeDotIconClasses, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Icon, { name: "more", size: "small" }) }),
1300
- pageList.map((page, index) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(PaginationButton, { onClick: () => onClick(page), page }) }, index)),
1301
- hasTailEllipsis && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("li", { className: threeDotIconClasses, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Icon, { name: "more", size: "small" }) }),
1302
- hasLastPageButton && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(PaginationButton, { onClick: () => onClick(totalPage), page: totalPage }) }),
1303
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("li", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1938
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(PaginationButton, { onClick: () => onClick(START_PAGE), page: START_PAGE }) }),
1939
+ hasHeadEllipsis && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("li", { className: threeDotIconClasses, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Icon, { name: "more", size: "small" }) }),
1940
+ pageList.map((page, index) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(PaginationButton, { onClick: () => onClick(page), page }) }, index)),
1941
+ hasTailEllipsis && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("li", { className: threeDotIconClasses, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Icon, { name: "more", size: "small" }) }),
1942
+ hasLastPageButton && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(PaginationButton, { onClick: () => onClick(totalPage), page: totalPage }) }),
1943
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("li", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
1304
1944
  IconButton,
1305
1945
  {
1306
1946
  isDisabled: isLastPage,
@@ -1316,14 +1956,14 @@ function Pagination({ currentPage, totalPage, sideNumPagesToShow = 3, onClick })
1316
1956
  }
1317
1957
 
1318
1958
  // src/select/select.tsx
1319
- var import_react19 = require("@floating-ui/react");
1320
- var import_component_theme12 = require("@zenkigen-inc/component-theme");
1321
- var import_clsx19 = __toESM(require("clsx"));
1322
- var import_react20 = require("react");
1959
+ var import_react28 = require("@floating-ui/react");
1960
+ var import_component_theme13 = require("@zenkigen-inc/component-theme");
1961
+ var import_clsx24 = __toESM(require("clsx"));
1962
+ var import_react29 = require("react");
1323
1963
 
1324
1964
  // src/select/select-context.ts
1325
- var import_react16 = require("react");
1326
- var SelectContext = (0, import_react16.createContext)({
1965
+ var import_react25 = require("react");
1966
+ var SelectContext = (0, import_react25.createContext)({
1327
1967
  size: "medium",
1328
1968
  setIsOptionListOpen: () => false,
1329
1969
  variant: "outline",
@@ -1331,19 +1971,19 @@ var SelectContext = (0, import_react16.createContext)({
1331
1971
  });
1332
1972
 
1333
1973
  // src/select/select-item.tsx
1334
- var import_component_theme10 = require("@zenkigen-inc/component-theme");
1335
- var import_clsx17 = __toESM(require("clsx"));
1336
- var import_react17 = require("react");
1337
- var import_jsx_runtime24 = require("react/jsx-runtime");
1974
+ var import_component_theme11 = require("@zenkigen-inc/component-theme");
1975
+ var import_clsx22 = __toESM(require("clsx"));
1976
+ var import_react26 = require("react");
1977
+ var import_jsx_runtime31 = require("react/jsx-runtime");
1338
1978
  function SelectItem({ option }) {
1339
- const { setIsOptionListOpen, selectedOption, onChange, isError } = (0, import_react17.useContext)(SelectContext);
1979
+ const { setIsOptionListOpen, selectedOption, onChange, isError } = (0, import_react26.useContext)(SelectContext);
1340
1980
  const handleClickItem = (option2) => {
1341
1981
  onChange?.(option2);
1342
1982
  setIsOptionListOpen(false);
1343
1983
  };
1344
- const itemClasses = (0, import_clsx17.default)(
1984
+ const itemClasses = (0, import_clsx22.default)(
1345
1985
  "typography-label14regular flex h-8 w-full items-center px-3 hover:bg-hover02 active:bg-active02",
1346
- import_component_theme10.focusVisible.inset,
1986
+ import_component_theme11.focusVisible.inset,
1347
1987
  {
1348
1988
  "text-interactive01 fill-interactive01 bg-selectedUi": option.id === selectedOption?.id && !(isError ?? false),
1349
1989
  "text-supportError fill-supportError bg-uiBackgroundError": option.id === selectedOption?.id && isError,
@@ -1351,25 +1991,25 @@ function SelectItem({ option }) {
1351
1991
  "pr-10": option.id !== selectedOption?.id
1352
1992
  }
1353
1993
  );
1354
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("li", { className: "flex w-full items-center", "data-id": option.id, children: /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("button", { className: itemClasses, type: "button", onClick: () => handleClickItem(option), children: [
1355
- option.icon && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Icon, { name: option.icon, size: "small" }),
1356
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { className: "ml-1 flex-1 truncate text-left", children: option.label }),
1357
- option.id === selectedOption?.id && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "ml-2 flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Icon, { name: "check", size: "small" }) })
1994
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("li", { className: "flex w-full items-center", "data-id": option.id, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("button", { className: itemClasses, type: "button", onClick: () => handleClickItem(option), children: [
1995
+ option.icon && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Icon, { name: option.icon, size: "small" }),
1996
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "ml-1 flex-1 truncate text-left", children: option.label }),
1997
+ option.id === selectedOption?.id && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "ml-2 flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Icon, { name: "check", size: "small" }) })
1358
1998
  ] }) }, option.id);
1359
1999
  }
1360
2000
 
1361
2001
  // src/select/select-list.tsx
1362
- var import_component_theme11 = require("@zenkigen-inc/component-theme");
1363
- var import_clsx18 = __toESM(require("clsx"));
1364
- var import_react18 = require("react");
1365
- var import_jsx_runtime25 = require("react/jsx-runtime");
1366
- var SelectList = (0, import_react18.forwardRef)(({ children, maxHeight }, ref) => {
1367
- const { selectedOption, setIsOptionListOpen, variant, placeholder, onChange, floatingStyles, floatingRef } = (0, import_react18.useContext)(SelectContext);
2002
+ var import_component_theme12 = require("@zenkigen-inc/component-theme");
2003
+ var import_clsx23 = __toESM(require("clsx"));
2004
+ var import_react27 = require("react");
2005
+ var import_jsx_runtime32 = require("react/jsx-runtime");
2006
+ var SelectList = (0, import_react27.forwardRef)(({ children, maxHeight }, ref) => {
2007
+ const { selectedOption, setIsOptionListOpen, variant, placeholder, onChange, floatingStyles, floatingRef } = (0, import_react27.useContext)(SelectContext);
1368
2008
  const handleClickDeselect = () => {
1369
2009
  onChange?.(null);
1370
2010
  setIsOptionListOpen(false);
1371
2011
  };
1372
- (0, import_react18.useLayoutEffect)(() => {
2012
+ (0, import_react27.useLayoutEffect)(() => {
1373
2013
  if (maxHeight != null && selectedOption != null) {
1374
2014
  const container = floatingRef?.current;
1375
2015
  if (container != null) {
@@ -1387,22 +2027,22 @@ var SelectList = (0, import_react18.forwardRef)(({ children, maxHeight }, ref) =
1387
2027
  }
1388
2028
  }
1389
2029
  }, [selectedOption, maxHeight, floatingRef]);
1390
- const listClasses = (0, import_clsx18.default)("z-dropdown overflow-y-auto rounded bg-uiBackground01 py-2 shadow-floatingShadow", {
2030
+ const listClasses = (0, import_clsx23.default)("z-dropdown overflow-y-auto rounded bg-uiBackground01 py-2 shadow-floatingShadow", {
1391
2031
  "border-solid border border-uiBorder01": variant === "outline"
1392
2032
  });
1393
- const deselectButtonClasses = (0, import_clsx18.default)(
2033
+ const deselectButtonClasses = (0, import_clsx23.default)(
1394
2034
  "typography-label14regular flex h-8 w-full items-center px-3 text-interactive02 hover:bg-hover02 active:bg-active02",
1395
- import_component_theme11.focusVisible.inset
2035
+ import_component_theme12.focusVisible.inset
1396
2036
  );
1397
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("ul", { className: listClasses, style: { maxHeight, ...floatingStyles }, ref, children: [
2037
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("ul", { className: listClasses, style: { maxHeight, ...floatingStyles }, ref, children: [
1398
2038
  children,
1399
- placeholder != null && selectedOption !== null && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("button", { className: deselectButtonClasses, type: "button", onClick: handleClickDeselect, children: "\u9078\u629E\u89E3\u9664" }) })
2039
+ placeholder != null && selectedOption !== null && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("button", { className: deselectButtonClasses, type: "button", onClick: handleClickDeselect, children: "\u9078\u629E\u89E3\u9664" }) })
1400
2040
  ] });
1401
2041
  });
1402
2042
  SelectList.displayName = "SelectList";
1403
2043
 
1404
2044
  // src/select/select.tsx
1405
- var import_jsx_runtime26 = require("react/jsx-runtime");
2045
+ var import_jsx_runtime33 = require("react/jsx-runtime");
1406
2046
  var FLOATING_OFFSET = 4;
1407
2047
  function Select({
1408
2048
  children,
@@ -1419,16 +2059,16 @@ function Select({
1419
2059
  onChange,
1420
2060
  optionListMaxHeight
1421
2061
  }) {
1422
- const [isOptionListOpen, setIsOptionListOpen] = (0, import_react20.useState)(false);
1423
- const targetRef = (0, import_react20.useRef)(null);
2062
+ const [isOptionListOpen, setIsOptionListOpen] = (0, import_react29.useState)(false);
2063
+ const targetRef = (0, import_react29.useRef)(null);
1424
2064
  useOutsideClick(targetRef, () => setIsOptionListOpen(false));
1425
- const { refs, floatingStyles } = (0, import_react19.useFloating)({
2065
+ const { refs, floatingStyles } = (0, import_react28.useFloating)({
1426
2066
  open: isOptionListOpen,
1427
2067
  onOpenChange: setIsOptionListOpen,
1428
2068
  placement: "bottom-start",
1429
2069
  middleware: [
1430
- (0, import_react19.offset)(FLOATING_OFFSET),
1431
- (0, import_react19.size)({
2070
+ (0, import_react28.offset)(FLOATING_OFFSET),
2071
+ (0, import_react28.size)({
1432
2072
  apply({ availableWidth, elements, rects }) {
1433
2073
  const referenceWidth = rects.reference.width;
1434
2074
  elements.floating.style.minWidth = `${referenceWidth}px`;
@@ -1436,40 +2076,40 @@ function Select({
1436
2076
  }
1437
2077
  })
1438
2078
  ],
1439
- whileElementsMounted: import_react19.autoUpdate
2079
+ whileElementsMounted: import_react28.autoUpdate
1440
2080
  });
1441
2081
  const handleClickToggle = () => setIsOptionListOpen((prev) => !prev);
1442
2082
  const buttonVariant = isError && !isDisabled ? `${variant}Error` : variant;
1443
2083
  const isSelected = isOptionSelected && !isDisabled && selectedOption !== null && !isError;
1444
- const wrapperClasses = (0, import_clsx19.default)("relative flex shrink-0 items-center gap-1 rounded bg-uiBackground01", {
2084
+ const wrapperClasses = (0, import_clsx24.default)("relative flex shrink-0 items-center gap-1 rounded bg-uiBackground01", {
1445
2085
  "h-6": size === "x-small" || size === "small",
1446
2086
  "h-8": size === "medium",
1447
2087
  "h-10": size === "large",
1448
2088
  "cursor-not-allowed": isDisabled
1449
2089
  });
1450
- const buttonClasses = (0, import_clsx19.default)(
2090
+ const buttonClasses = (0, import_clsx24.default)(
1451
2091
  "flex size-full items-center rounded",
1452
- import_component_theme12.selectColors[buttonVariant].hover,
1453
- import_component_theme12.selectColors[buttonVariant].active,
1454
- import_component_theme12.selectColors[buttonVariant].disabled,
1455
- import_component_theme12.focusVisible.normal,
2092
+ import_component_theme13.selectColors[buttonVariant].hover,
2093
+ import_component_theme13.selectColors[buttonVariant].active,
2094
+ import_component_theme13.selectColors[buttonVariant].disabled,
2095
+ import_component_theme13.focusVisible.normal,
1456
2096
  {
1457
- [import_component_theme12.selectColors[buttonVariant].selected]: isSelected,
1458
- [import_component_theme12.selectColors[buttonVariant].base]: !isSelected,
2097
+ [import_component_theme13.selectColors[buttonVariant].selected]: isSelected,
2098
+ [import_component_theme13.selectColors[buttonVariant].base]: !isSelected,
1459
2099
  "px-2": size === "x-small" || size === "small",
1460
2100
  "px-4": size === "medium" || size === "large",
1461
2101
  "pointer-events-none": isDisabled,
1462
2102
  "border-supportError": !isSelected && !isDisabled && isError
1463
2103
  }
1464
2104
  );
1465
- const labelClasses = (0, import_clsx19.default)("overflow-hidden", {
2105
+ const labelClasses = (0, import_clsx24.default)("overflow-hidden", {
1466
2106
  "mr-1": size === "x-small",
1467
2107
  "mr-2": size !== "x-small",
1468
2108
  "typography-label12regular": size === "x-small",
1469
2109
  "typography-label14regular": size === "small" || size === "medium",
1470
2110
  "typography-label16regular": size === "large"
1471
2111
  });
1472
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2112
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
1473
2113
  SelectContext.Provider,
1474
2114
  {
1475
2115
  value: {
@@ -1483,8 +2123,8 @@ function Select({
1483
2123
  floatingStyles,
1484
2124
  floatingRef: refs.floating
1485
2125
  },
1486
- children: /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: wrapperClasses, style: { width, maxWidth }, ref: targetRef, children: [
1487
- /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
2126
+ children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: wrapperClasses, style: { width, maxWidth }, ref: targetRef, children: [
2127
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
1488
2128
  "button",
1489
2129
  {
1490
2130
  ref: refs.setReference,
@@ -1493,9 +2133,9 @@ function Select({
1493
2133
  onClick: handleClickToggle,
1494
2134
  disabled: isDisabled,
1495
2135
  children: [
1496
- selectedOption?.icon ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "mr-1 flex", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Icon, { name: selectedOption.icon, size: size === "large" ? "medium" : "small" }) }) : placeholder != null && placeholderIcon && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "mr-1 flex", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Icon, { name: placeholderIcon, size: size === "large" ? "medium" : "small" }) }),
1497
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: labelClasses, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "truncate", children: selectedOption ? selectedOption.label : placeholder != null && placeholder }) }),
1498
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "ml-auto flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2136
+ selectedOption?.icon ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "mr-1 flex", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Icon, { name: selectedOption.icon, size: size === "large" ? "medium" : "small" }) }) : placeholder != null && placeholderIcon && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "mr-1 flex", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Icon, { name: placeholderIcon, size: size === "large" ? "medium" : "small" }) }),
2137
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: labelClasses, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "truncate", children: selectedOption ? selectedOption.label : placeholder != null && placeholder }) }),
2138
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "ml-auto flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
1499
2139
  Icon,
1500
2140
  {
1501
2141
  name: isOptionListOpen ? "angle-small-up" : "angle-small-down",
@@ -1505,7 +2145,7 @@ function Select({
1505
2145
  ]
1506
2146
  }
1507
2147
  ),
1508
- isOptionListOpen && !isDisabled && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_react19.FloatingPortal, { children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "relative z-overlay", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(SelectList, { ref: refs.setFloating, maxHeight: optionListMaxHeight, children }) }) })
2148
+ isOptionListOpen && !isDisabled && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_react28.FloatingPortal, { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "relative z-overlay", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(SelectList, { ref: refs.setFloating, maxHeight: optionListMaxHeight, children }) }) })
1509
2149
  ] })
1510
2150
  }
1511
2151
  );
@@ -1513,7 +2153,7 @@ function Select({
1513
2153
  Select.Option = SelectItem;
1514
2154
 
1515
2155
  // src/pagination-select/pagination-select.tsx
1516
- var import_jsx_runtime27 = require("react/jsx-runtime");
2156
+ var import_jsx_runtime34 = require("react/jsx-runtime");
1517
2157
  function PaginationSelect({
1518
2158
  totalSize,
1519
2159
  currentPage,
@@ -1536,20 +2176,20 @@ function PaginationSelect({
1536
2176
  });
1537
2177
  const minCount = totalSize ? (currentPage - 1) * sizePerPage + 1 : 0;
1538
2178
  const maxCount = currentPage * sizePerPage > totalSize ? totalSize : currentPage * sizePerPage;
1539
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("nav", { "aria-label": "pagination", className: "flex items-center gap-x-1", children: [
1540
- /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "flex items-center gap-x-2", children: [
1541
- /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "typography-label14regular flex gap-1 text-text01", children: [
1542
- /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("span", { className: " ", children: [
2179
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("nav", { "aria-label": "pagination", className: "flex items-center gap-x-1", children: [
2180
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "flex items-center gap-x-2", children: [
2181
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "typography-label14regular flex gap-1 text-text01", children: [
2182
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("span", { className: " ", children: [
1543
2183
  minCount > 0 && `${minCount} - `,
1544
2184
  maxCount
1545
2185
  ] }),
1546
- /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("span", { children: [
2186
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("span", { children: [
1547
2187
  "/ ",
1548
2188
  totalSize
1549
2189
  ] }),
1550
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("span", { children: countLabel })
2190
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("span", { children: countLabel })
1551
2191
  ] }),
1552
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
2192
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
1553
2193
  Select,
1554
2194
  {
1555
2195
  size: "medium",
@@ -1558,17 +2198,17 @@ function PaginationSelect({
1558
2198
  optionListMaxHeight,
1559
2199
  onChange: (option) => option && onChange(Number(option.value)),
1560
2200
  isDisabled: pageMax === 0,
1561
- children: optionsList.map((option) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Select.Option, { option }, option.id))
2201
+ children: optionsList.map((option) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Select.Option, { option }, option.id))
1562
2202
  }
1563
2203
  ),
1564
- /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "typography-label14regular text-text02", children: [
2204
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "typography-label14regular text-text02", children: [
1565
2205
  "/ ",
1566
2206
  pageMax,
1567
2207
  pageLabel
1568
2208
  ] })
1569
2209
  ] }),
1570
- /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "flex items-center", children: [
1571
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
2210
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "flex items-center", children: [
2211
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
1572
2212
  IconButton,
1573
2213
  {
1574
2214
  variant: "text",
@@ -1578,7 +2218,7 @@ function PaginationSelect({
1578
2218
  onClick: onClickPrevButton
1579
2219
  }
1580
2220
  ),
1581
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
2221
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
1582
2222
  IconButton,
1583
2223
  {
1584
2224
  variant: "text",
@@ -1593,17 +2233,17 @@ function PaginationSelect({
1593
2233
  }
1594
2234
 
1595
2235
  // src/password-input/password-input.tsx
1596
- var import_react25 = require("react");
2236
+ var import_react34 = require("react");
1597
2237
 
1598
2238
  // src/text-input/text-input.tsx
1599
- var import_clsx22 = require("clsx");
1600
- var import_react24 = require("react");
2239
+ var import_clsx27 = require("clsx");
2240
+ var import_react33 = require("react");
1601
2241
 
1602
2242
  // src/text-input/text-input-context.tsx
1603
- var import_react21 = require("react");
1604
- var TextInputCompoundContext = (0, import_react21.createContext)(null);
2243
+ var import_react30 = require("react");
2244
+ var TextInputCompoundContext = (0, import_react30.createContext)(null);
1605
2245
  var useTextInputCompoundContext = (componentName) => {
1606
- const context = (0, import_react21.useContext)(TextInputCompoundContext);
2246
+ const context = (0, import_react30.useContext)(TextInputCompoundContext);
1607
2247
  if (context == null) {
1608
2248
  throw new Error(`${componentName} \u3092\u4F7F\u7528\u3059\u308B\u306B\u306F TextInput \u306E\u5B50\u8981\u7D20\u3068\u3057\u3066\u914D\u7F6E\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u3002`);
1609
2249
  }
@@ -1611,10 +2251,10 @@ var useTextInputCompoundContext = (componentName) => {
1611
2251
  };
1612
2252
 
1613
2253
  // src/text-input/text-input-error-message.tsx
1614
- var import_clsx20 = require("clsx");
1615
- var import_react22 = require("react");
1616
- var import_jsx_runtime28 = require("react/jsx-runtime");
1617
- var TextInputErrorMessage = (0, import_react22.forwardRef)(
2254
+ var import_clsx25 = require("clsx");
2255
+ var import_react31 = require("react");
2256
+ var import_jsx_runtime35 = require("react/jsx-runtime");
2257
+ var TextInputErrorMessage = (0, import_react31.forwardRef)(
1618
2258
  ({ "aria-live": ariaLive = "assertive", ...props }, ref) => {
1619
2259
  const { inputProps } = useTextInputCompoundContext("TextInput.ErrorMessage");
1620
2260
  const typographyClass = inputProps.size === "large" ? "typography-label12regular" : "typography-label11regular";
@@ -1622,26 +2262,26 @@ var TextInputErrorMessage = (0, import_react22.forwardRef)(
1622
2262
  if (!shouldRender) {
1623
2263
  return null;
1624
2264
  }
1625
- const errorMessageClassName = (0, import_clsx20.clsx)(typographyClass, "text-supportError");
1626
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { ref, className: errorMessageClassName, "aria-live": ariaLive, ...props });
2265
+ const errorMessageClassName = (0, import_clsx25.clsx)(typographyClass, "text-supportError");
2266
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { ref, className: errorMessageClassName, "aria-live": ariaLive, ...props });
1627
2267
  }
1628
2268
  );
1629
2269
  TextInputErrorMessage.displayName = "TextInput.ErrorMessage";
1630
2270
 
1631
2271
  // src/text-input/text-input-helper-message.tsx
1632
- var import_clsx21 = require("clsx");
1633
- var import_react23 = require("react");
1634
- var import_jsx_runtime29 = require("react/jsx-runtime");
1635
- var TextInputHelperMessage = (0, import_react23.forwardRef)((props, ref) => {
2272
+ var import_clsx26 = require("clsx");
2273
+ var import_react32 = require("react");
2274
+ var import_jsx_runtime36 = require("react/jsx-runtime");
2275
+ var TextInputHelperMessage = (0, import_react32.forwardRef)((props, ref) => {
1636
2276
  const { inputProps } = useTextInputCompoundContext("TextInput.HelperMessage");
1637
2277
  const typographyClass = inputProps.size === "large" ? "typography-label12regular" : "typography-label11regular";
1638
- const helperMessageClassName = (0, import_clsx21.clsx)(typographyClass, "text-text02");
1639
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { ref, className: helperMessageClassName, ...props });
2278
+ const helperMessageClassName = (0, import_clsx26.clsx)(typographyClass, "text-text02");
2279
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { ref, className: helperMessageClassName, ...props });
1640
2280
  });
1641
2281
  TextInputHelperMessage.displayName = "TextInput.HelperMessage";
1642
2282
 
1643
2283
  // src/text-input/text-input.tsx
1644
- var import_jsx_runtime30 = require("react/jsx-runtime");
2284
+ var import_jsx_runtime37 = require("react/jsx-runtime");
1645
2285
  function TextInputInner({
1646
2286
  size = "medium",
1647
2287
  isError = false,
@@ -1651,9 +2291,9 @@ function TextInputInner({
1651
2291
  children,
1652
2292
  ...props
1653
2293
  }, ref) {
1654
- const autoGeneratedId = (0, import_react24.useId)();
2294
+ const autoGeneratedId = (0, import_react33.useId)();
1655
2295
  const { className: _className, ...restInputProps } = props;
1656
- const inputPropsForContext = (0, import_react24.useMemo)(
2296
+ const inputPropsForContext = (0, import_react33.useMemo)(
1657
2297
  () => ({
1658
2298
  ...restInputProps,
1659
2299
  size,
@@ -1664,7 +2304,7 @@ function TextInputInner({
1664
2304
  }),
1665
2305
  [restInputProps, size, isError, disabled, onClickClearButton, after]
1666
2306
  );
1667
- const contextValue = (0, import_react24.useMemo)(
2307
+ const contextValue = (0, import_react33.useMemo)(
1668
2308
  () => ({
1669
2309
  inputProps: inputPropsForContext,
1670
2310
  forwardedRef: ref
@@ -1674,363 +2314,171 @@ function TextInputInner({
1674
2314
  const helperMessageIds = [];
1675
2315
  const errorIds = [];
1676
2316
  const describedByBaseId = restInputProps.id ?? autoGeneratedId;
1677
- const enhancedChildren = import_react24.Children.map(children, (child) => {
1678
- if (!(0, import_react24.isValidElement)(child)) {
2317
+ const enhancedChildren = import_react33.Children.map(children, (child) => {
2318
+ if (!(0, import_react33.isValidElement)(child)) {
1679
2319
  return child;
1680
2320
  }
1681
2321
  if (child.type === TextInputHelperMessage) {
1682
2322
  const helperChild = child;
1683
2323
  const assignedId = helperChild.props.id ?? `${describedByBaseId}-helper-${helperMessageIds.length + 1}`;
1684
2324
  helperMessageIds.push(assignedId);
1685
- return (0, import_react24.cloneElement)(helperChild, { id: assignedId });
1686
- }
1687
- if (child.type === TextInputErrorMessage && isError) {
1688
- const errorChild = child;
1689
- const assignedId = errorChild.props.id ?? `${describedByBaseId}-error-${errorIds.length + 1}`;
1690
- errorIds.push(assignedId);
1691
- return (0, import_react24.cloneElement)(errorChild, { id: assignedId });
1692
- }
1693
- return child;
1694
- });
1695
- const describedByFromProps = typeof restInputProps["aria-describedby"] === "string" ? restInputProps["aria-describedby"] : null;
1696
- const describedByList = [describedByFromProps, ...helperMessageIds, ...errorIds].filter(
1697
- (id) => typeof id === "string" && id.trim().length > 0
1698
- );
1699
- const describedByProps = describedByList.length > 0 ? {
1700
- "aria-describedby": describedByList.join(" ")
1701
- } : {};
1702
- const shouldMarkInvalid = isError === true || errorIds.length > 0;
1703
- const ariaInvalidFromProps = restInputProps["aria-invalid"];
1704
- const ariaInvalidValue = ariaInvalidFromProps != null ? ariaInvalidFromProps : shouldMarkInvalid ? true : null;
1705
- const ariaInvalidProps = ariaInvalidValue == null ? {} : { "aria-invalid": ariaInvalidValue };
1706
- const mergedInputProps = {
1707
- ...restInputProps,
1708
- ...describedByProps,
1709
- ...ariaInvalidProps,
1710
- disabled
1711
- };
1712
- const isShowClearButton = !!onClickClearButton && restInputProps.value.length !== 0 && !disabled;
1713
- const hasTrailingElement = isShowClearButton || after != null;
1714
- const inputWrapClasses = (0, import_clsx22.clsx)("relative flex items-center gap-2 overflow-hidden rounded border", {
1715
- "border-uiBorder02": !isError && !disabled,
1716
- "border-supportError": isError && !disabled,
1717
- "hover:border-hoverInput": !disabled && !isError,
1718
- "hover:focus-within:border-activeInput": !isError,
1719
- "focus-within:border-activeInput": !isError,
1720
- "bg-disabled02 border-disabled01": disabled,
1721
- "pr-2": size === "medium" && hasTrailingElement,
1722
- "pr-3": size === "large" && hasTrailingElement
1723
- });
1724
- const inputClasses = (0, import_clsx22.clsx)("flex-1 outline-0 placeholder:text-textPlaceholder disabled:text-textPlaceholder", {
1725
- ["typography-label14regular min-h-8 px-2"]: size === "medium",
1726
- ["typography-label16regular min-h-10 px-3"]: size === "large",
1727
- "text-text01": !isError,
1728
- "text-supportError": isError,
1729
- "pr-0": hasTrailingElement
1730
- });
1731
- const inputElement = /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: inputWrapClasses, children: [
1732
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("input", { ref, size: 1, className: inputClasses, ...mergedInputProps }),
1733
- after,
1734
- isShowClearButton && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(IconButton, { variant: "text", icon: "close", size: "small", onClick: onClickClearButton })
1735
- ] });
1736
- const stackedChildren = enhancedChildren == null ? [] : import_react24.Children.toArray(enhancedChildren);
1737
- const hasMessageChildren = stackedChildren.length > 0;
1738
- if (!hasMessageChildren) {
1739
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(TextInputCompoundContext.Provider, { value: contextValue, children: inputElement });
1740
- }
1741
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(TextInputCompoundContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex flex-col gap-2", children: [
1742
- inputElement,
1743
- stackedChildren
1744
- ] }) });
1745
- }
1746
- var attachStatics = (component) => {
1747
- component.HelperMessage = TextInputHelperMessage;
1748
- component.ErrorMessage = TextInputErrorMessage;
1749
- component.displayName = "TextInput";
1750
- return component;
1751
- };
1752
- var TextInputPublic = (0, import_react24.forwardRef)(function TextInputPublic2(props, ref) {
1753
- return TextInputInner(props, ref);
1754
- });
1755
- var InternalTextInputBase = (0, import_react24.forwardRef)(
1756
- function InternalTextInputBase2(props, ref) {
1757
- return TextInputInner(props, ref);
1758
- }
1759
- );
1760
- var TextInput = attachStatics(TextInputPublic);
1761
- var InternalTextInput = attachStatics(InternalTextInputBase);
1762
-
1763
- // src/password-input/password-input.tsx
1764
- var import_jsx_runtime31 = require("react/jsx-runtime");
1765
- var PasswordInputBase = (0, import_react25.forwardRef)(function PasswordInput({ disabled = false, children, ...props }, ref) {
1766
- const [isPasswordVisible, setIsPasswordVisible] = (0, import_react25.useState)(false);
1767
- const { className: _className, ...textInputProps } = props;
1768
- const handlePasswordVisibilityToggle = () => {
1769
- setIsPasswordVisible((prev) => !prev);
1770
- };
1771
- const passwordToggleButton = /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
1772
- IconButton,
1773
- {
1774
- variant: "text",
1775
- icon: isPasswordVisible === true ? "visibility-off" : "visibility",
1776
- size: "small",
1777
- onClick: handlePasswordVisibilityToggle,
1778
- isDisabled: disabled,
1779
- "aria-label": isPasswordVisible === true ? "\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u975E\u8868\u793A\u306B\u3059\u308B" : "\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u8868\u793A\u3059\u308B"
1780
- }
1781
- );
1782
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
1783
- InternalTextInput,
1784
- {
1785
- ref,
1786
- type: isPasswordVisible === true ? "text" : "password",
1787
- disabled,
1788
- after: passwordToggleButton,
1789
- ...textInputProps,
1790
- children
1791
- }
1792
- );
1793
- });
1794
- var PasswordInput2 = Object.assign(PasswordInputBase, {
1795
- HelperMessage: TextInputHelperMessage,
1796
- ErrorMessage: TextInputErrorMessage,
1797
- displayName: "PasswordInput"
1798
- });
1799
-
1800
- // src/popover/popover.tsx
1801
- var import_react30 = require("@floating-ui/react");
1802
- var import_react31 = require("react");
1803
-
1804
- // src/popover/popover-content.tsx
1805
- var import_react27 = require("@floating-ui/react");
1806
- var React = __toESM(require("react"));
1807
- var import_react28 = require("react");
1808
-
1809
- // src/utils/react-utils.ts
1810
- function composeRefs(...refs) {
1811
- return (node) => {
1812
- for (const ref of refs) {
1813
- if (ref == null) {
1814
- continue;
1815
- }
1816
- if (typeof ref === "function") {
1817
- ref(node);
1818
- } else {
1819
- ref.current = node;
1820
- }
1821
- }
1822
- };
1823
- }
1824
- function isElement(node) {
1825
- return node != null && typeof node === "object" && "type" in node;
1826
- }
1827
-
1828
- // src/popover/popover-context.ts
1829
- var import_react26 = require("react");
1830
- var PopoverContext = (0, import_react26.createContext)(null);
1831
- var usePopoverContext = () => {
1832
- const context = (0, import_react26.useContext)(PopoverContext);
1833
- if (context == null) {
1834
- throw new Error("Popover components must be used inside <Popover.Root>");
1835
- }
1836
- return context;
1837
- };
1838
-
1839
- // src/popover/popover-content.tsx
1840
- var import_jsx_runtime32 = require("react/jsx-runtime");
1841
- var PopoverContent = (0, import_react28.forwardRef)(function PopoverContent2({ children }, ref) {
1842
- const { isOpen, triggerRef, floating, panelId, onClose } = usePopoverContext();
1843
- const shouldCloseOnOutsidePress = (0, import_react28.useCallback)(
1844
- (event) => {
1845
- const target = event.target;
1846
- if (!(target instanceof Element)) {
1847
- return true;
1848
- }
1849
- const floatingElement = floating.refs.floating.current;
1850
- const closestOverlay = target.closest(".z-overlay, .z-dropdown");
1851
- if (closestOverlay !== null && floatingElement instanceof Element) {
1852
- const isInsideOwnFloating = floatingElement.contains(closestOverlay);
1853
- return isInsideOwnFloating;
1854
- }
1855
- return true;
1856
- },
1857
- [floating.refs.floating]
1858
- );
1859
- const dismiss = (0, import_react27.useDismiss)(floating.context, {
1860
- outsidePressEvent: "pointerdown",
1861
- outsidePress: shouldCloseOnOutsidePress,
1862
- escapeKey: false
1863
- });
1864
- const interactions = (0, import_react27.useInteractions)([dismiss, (0, import_react27.useRole)(floating.context, { role: "dialog" })]);
1865
- (0, import_react28.useEffect)(() => {
1866
- if (isOpen) {
1867
- const element = floating.refs.floating.current;
1868
- element?.focus?.({ preventScroll: true });
1869
- }
1870
- }, [isOpen, floating.refs.floating]);
1871
- (0, import_react28.useEffect)(() => {
1872
- if (!isOpen) {
1873
- triggerRef.current?.focus({ preventScroll: true });
1874
- }
1875
- }, [isOpen, triggerRef]);
1876
- const handleKeyDown = (0, import_react28.useCallback)(
1877
- (event) => {
1878
- if (event.key === "Escape") {
1879
- event.stopPropagation();
1880
- if (onClose != null) {
1881
- onClose({ reason: "escape-key-down" });
1882
- }
1883
- }
1884
- },
1885
- [onClose]
1886
- );
1887
- let wrappedChildren = children;
1888
- if (isElement(children)) {
1889
- const childProps = children.props;
1890
- wrappedChildren = React.cloneElement(children, {
1891
- ...childProps,
1892
- ...childProps.id == null && { id: panelId },
1893
- ...childProps.role == null && { role: "dialog" }
1894
- });
1895
- }
1896
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_react27.FloatingPortal, { children: isOpen ? /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1897
- "div",
1898
- {
1899
- ...interactions.getFloatingProps({
1900
- ref: composeRefs(floating.refs.setFloating, ref),
1901
- tabIndex: -1,
1902
- onKeyDown: handleKeyDown,
1903
- style: {
1904
- position: floating.strategy,
1905
- top: floating.y ?? 0,
1906
- left: floating.x ?? 0,
1907
- outline: "0"
1908
- }
1909
- }),
1910
- children: wrappedChildren
1911
- }
1912
- ) : null });
1913
- });
1914
-
1915
- // src/popover/popover-trigger.tsx
1916
- var React2 = __toESM(require("react"));
1917
- var import_react29 = require("react");
1918
- var PopoverTrigger = (0, import_react29.forwardRef)(function PopoverTrigger2({ children }, ref) {
1919
- const { isOpen, floating, triggerRef, anchorRef, panelId } = usePopoverContext();
1920
- if (!isElement(children)) {
1921
- return null;
1922
- }
1923
- const handleTriggerRef = (node) => {
1924
- triggerRef.current = node;
1925
- if (anchorRef == null) {
1926
- floating.refs.setReference(node);
1927
- }
1928
- if (typeof ref === "function") {
1929
- ref(node);
1930
- } else if (ref != null) {
1931
- ref.current = node;
2325
+ return (0, import_react33.cloneElement)(helperChild, { id: assignedId });
1932
2326
  }
2327
+ if (child.type === TextInputErrorMessage && isError) {
2328
+ const errorChild = child;
2329
+ const assignedId = errorChild.props.id ?? `${describedByBaseId}-error-${errorIds.length + 1}`;
2330
+ errorIds.push(assignedId);
2331
+ return (0, import_react33.cloneElement)(errorChild, { id: assignedId });
2332
+ }
2333
+ return child;
2334
+ });
2335
+ const describedByFromProps = typeof restInputProps["aria-describedby"] === "string" ? restInputProps["aria-describedby"] : null;
2336
+ const describedByList = [describedByFromProps, ...helperMessageIds, ...errorIds].filter(
2337
+ (id) => typeof id === "string" && id.trim().length > 0
2338
+ );
2339
+ const describedByProps = describedByList.length > 0 ? {
2340
+ "aria-describedby": describedByList.join(" ")
2341
+ } : {};
2342
+ const shouldMarkInvalid = isError === true || errorIds.length > 0;
2343
+ const ariaInvalidFromProps = restInputProps["aria-invalid"];
2344
+ const ariaInvalidValue = ariaInvalidFromProps != null ? ariaInvalidFromProps : shouldMarkInvalid ? true : null;
2345
+ const ariaInvalidProps = ariaInvalidValue == null ? {} : { "aria-invalid": ariaInvalidValue };
2346
+ const mergedInputProps = {
2347
+ ...restInputProps,
2348
+ ...describedByProps,
2349
+ ...ariaInvalidProps,
2350
+ disabled
1933
2351
  };
1934
- const childProps = children.props;
1935
- const childRef = childProps.ref;
1936
- return React2.cloneElement(children, {
1937
- ...childProps,
1938
- ref: composeRefs(childRef, handleTriggerRef),
1939
- "aria-haspopup": "dialog",
1940
- "aria-expanded": isOpen,
1941
- "aria-controls": panelId
2352
+ const isShowClearButton = !!onClickClearButton && restInputProps.value.length !== 0 && !disabled;
2353
+ const hasTrailingElement = isShowClearButton || after != null;
2354
+ const inputWrapClasses = (0, import_clsx27.clsx)("relative flex items-center gap-2 overflow-hidden rounded border", {
2355
+ "border-uiBorder02": !isError && !disabled,
2356
+ "border-supportError": isError && !disabled,
2357
+ "hover:border-hoverInput": !disabled && !isError,
2358
+ "hover:focus-within:border-activeInput": !isError,
2359
+ "focus-within:border-activeInput": !isError,
2360
+ "bg-disabled02 border-disabled01": disabled,
2361
+ "pr-2": size === "medium" && hasTrailingElement,
2362
+ "pr-3": size === "large" && hasTrailingElement
2363
+ });
2364
+ const inputClasses = (0, import_clsx27.clsx)("flex-1 outline-0 placeholder:text-textPlaceholder disabled:text-textPlaceholder", {
2365
+ ["typography-label14regular min-h-8 px-2"]: size === "medium",
2366
+ ["typography-label16regular min-h-10 px-3"]: size === "large",
2367
+ "text-text01": !isError,
2368
+ "text-supportError": isError,
2369
+ "pr-0": hasTrailingElement
1942
2370
  });
2371
+ const inputElement = /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: inputWrapClasses, children: [
2372
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("input", { ref, size: 1, className: inputClasses, ...mergedInputProps }),
2373
+ after,
2374
+ isShowClearButton && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(IconButton, { variant: "text", icon: "close", size: "small", onClick: onClickClearButton })
2375
+ ] });
2376
+ const stackedChildren = enhancedChildren == null ? [] : import_react33.Children.toArray(enhancedChildren);
2377
+ const hasMessageChildren = stackedChildren.length > 0;
2378
+ if (!hasMessageChildren) {
2379
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(TextInputCompoundContext.Provider, { value: contextValue, children: inputElement });
2380
+ }
2381
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(TextInputCompoundContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex flex-col gap-2", children: [
2382
+ inputElement,
2383
+ stackedChildren
2384
+ ] }) });
2385
+ }
2386
+ var attachStatics = (component) => {
2387
+ component.HelperMessage = TextInputHelperMessage;
2388
+ component.ErrorMessage = TextInputErrorMessage;
2389
+ component.displayName = "TextInput";
2390
+ return component;
2391
+ };
2392
+ var TextInputPublic = (0, import_react33.forwardRef)(function TextInputPublic2(props, ref) {
2393
+ return TextInputInner(props, ref);
1943
2394
  });
2395
+ var InternalTextInputBase = (0, import_react33.forwardRef)(
2396
+ function InternalTextInputBase2(props, ref) {
2397
+ return TextInputInner(props, ref);
2398
+ }
2399
+ );
2400
+ var TextInput = attachStatics(TextInputPublic);
2401
+ var InternalTextInput = attachStatics(InternalTextInputBase);
1944
2402
 
1945
- // src/popover/popover.tsx
1946
- var import_jsx_runtime33 = require("react/jsx-runtime");
1947
- function Popover({
1948
- isOpen,
1949
- children,
1950
- placement = "top",
1951
- offset: offsetValue = 8,
1952
- onClose,
1953
- anchorRef
1954
- }) {
1955
- const triggerRef = (0, import_react31.useRef)(null);
1956
- const floating = (0, import_react30.useFloating)({
1957
- open: isOpen,
1958
- onOpenChange: (open) => {
1959
- if (!open && onClose != null) {
1960
- onClose({ reason: "outside-click" });
1961
- }
1962
- },
1963
- placement,
1964
- middleware: [(0, import_react30.offset)(offsetValue)],
1965
- whileElementsMounted: import_react30.autoUpdate,
1966
- strategy: "fixed"
1967
- });
1968
- (0, import_react31.useEffect)(() => {
1969
- if (anchorRef?.current) {
1970
- floating.refs.setReference(anchorRef.current);
2403
+ // src/password-input/password-input.tsx
2404
+ var import_jsx_runtime38 = require("react/jsx-runtime");
2405
+ var PasswordInputBase = (0, import_react34.forwardRef)(function PasswordInput({ disabled = false, children, ...props }, ref) {
2406
+ const [isPasswordVisible, setIsPasswordVisible] = (0, import_react34.useState)(false);
2407
+ const { className: _className, ...textInputProps } = props;
2408
+ const handlePasswordVisibilityToggle = () => {
2409
+ setIsPasswordVisible((prev) => !prev);
2410
+ };
2411
+ const passwordToggleButton = /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
2412
+ IconButton,
2413
+ {
2414
+ variant: "text",
2415
+ icon: isPasswordVisible === true ? "visibility-off" : "visibility",
2416
+ size: "small",
2417
+ onClick: handlePasswordVisibilityToggle,
2418
+ isDisabled: disabled,
2419
+ "aria-label": isPasswordVisible === true ? "\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u975E\u8868\u793A\u306B\u3059\u308B" : "\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u8868\u793A\u3059\u308B"
1971
2420
  }
1972
- }, [anchorRef, floating.refs]);
1973
- const contentId = (0, import_react30.useId)() ?? "";
1974
- const panelId = `${contentId}-panel`;
1975
- const contextValue = (0, import_react31.useMemo)(
1976
- () => ({
1977
- isOpen,
1978
- triggerRef,
1979
- anchorRef,
1980
- floating,
1981
- contentId,
1982
- panelId,
1983
- onClose
1984
- }),
1985
- [isOpen, triggerRef, anchorRef, floating, contentId, panelId, onClose]
1986
2421
  );
1987
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(PopoverContext.Provider, { value: contextValue, children });
1988
- }
1989
- Popover.Trigger = PopoverTrigger;
1990
- Popover.Content = PopoverContent;
2422
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
2423
+ InternalTextInput,
2424
+ {
2425
+ ref,
2426
+ type: isPasswordVisible === true ? "text" : "password",
2427
+ disabled,
2428
+ after: passwordToggleButton,
2429
+ ...textInputProps,
2430
+ children
2431
+ }
2432
+ );
2433
+ });
2434
+ var PasswordInput2 = Object.assign(PasswordInputBase, {
2435
+ HelperMessage: TextInputHelperMessage,
2436
+ ErrorMessage: TextInputErrorMessage,
2437
+ displayName: "PasswordInput"
2438
+ });
1991
2439
 
1992
2440
  // src/popup/popup.tsx
1993
- var import_react34 = require("react");
2441
+ var import_react37 = require("react");
1994
2442
 
1995
2443
  // src/popup/popup-body.tsx
1996
- var import_jsx_runtime34 = require("react/jsx-runtime");
2444
+ var import_jsx_runtime39 = require("react/jsx-runtime");
1997
2445
  function PopupBody({ children }) {
1998
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "overflow-y-auto", children });
2446
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: "overflow-y-auto", children });
1999
2447
  }
2000
2448
 
2001
2449
  // src/popup/popup-context.ts
2002
- var import_react32 = require("react");
2003
- var PopupContext = (0, import_react32.createContext)({
2450
+ var import_react35 = require("react");
2451
+ var PopupContext = (0, import_react35.createContext)({
2004
2452
  isOpen: false,
2005
2453
  onClose: () => null
2006
2454
  });
2007
2455
 
2008
2456
  // src/popup/popup-footer.tsx
2009
- var import_jsx_runtime35 = require("react/jsx-runtime");
2457
+ var import_jsx_runtime40 = require("react/jsx-runtime");
2010
2458
  function PopupFooter({ children }) {
2011
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "flex w-full shrink-0 items-center rounded-b-lg px-6 py-3", children });
2459
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "flex w-full shrink-0 items-center rounded-b-lg px-6 py-3", children });
2012
2460
  }
2013
2461
 
2014
2462
  // src/popup/popup-header.tsx
2015
- var import_react33 = require("react");
2016
- var import_jsx_runtime36 = require("react/jsx-runtime");
2463
+ var import_react36 = require("react");
2464
+ var import_jsx_runtime41 = require("react/jsx-runtime");
2017
2465
  function PopupHeader({ children, before }) {
2018
- const { onClose } = (0, import_react33.useContext)(PopupContext);
2019
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "typography-h5 flex h-12 w-full shrink-0 items-start justify-between rounded-t-lg px-6 pt-3 text-text01", children: [
2020
- /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex items-center gap-1", children: [
2466
+ const { onClose } = (0, import_react36.useContext)(PopupContext);
2467
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "typography-h5 flex h-12 w-full shrink-0 items-start justify-between rounded-t-lg px-6 pt-3 text-text01", children: [
2468
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "flex items-center gap-1", children: [
2021
2469
  before,
2022
2470
  children
2023
2471
  ] }),
2024
- onClose && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(IconButton, { icon: "close", size: "small", variant: "text", onClick: onClose })
2472
+ onClose && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(IconButton, { icon: "close", size: "small", variant: "text", onClick: onClose })
2025
2473
  ] });
2026
2474
  }
2027
2475
 
2028
2476
  // src/popup/popup.tsx
2029
- var import_jsx_runtime37 = require("react/jsx-runtime");
2477
+ var import_jsx_runtime42 = require("react/jsx-runtime");
2030
2478
  var LIMIT_WIDTH2 = 320;
2031
2479
  var LIMIT_HEIGHT2 = 184;
2032
2480
  function useOptionalPopoverContext() {
2033
- return (0, import_react34.useContext)(PopoverContext);
2481
+ return (0, import_react37.useContext)(PopoverContext);
2034
2482
  }
2035
2483
  function Popup({ children, isOpen: controlledIsOpen, width = 480, height, onClose }) {
2036
2484
  const renderWidth = typeof width === "number" ? Math.max(width, LIMIT_WIDTH2) : width;
@@ -2041,7 +2489,7 @@ function Popup({ children, isOpen: controlledIsOpen, width = 480, height, onClos
2041
2489
  if (!isOpen) {
2042
2490
  return null;
2043
2491
  }
2044
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(PopupContext.Provider, { value: { isOpen, onClose }, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
2492
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(PopupContext.Provider, { value: { isOpen, onClose }, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2045
2493
  "div",
2046
2494
  {
2047
2495
  className: "grid max-h-full grid-rows-[max-content_1fr_max-content] flex-col rounded-lg bg-uiBackground01 shadow-floatingShadow",
@@ -2055,29 +2503,29 @@ Popup.Header = PopupHeader;
2055
2503
  Popup.Footer = PopupFooter;
2056
2504
 
2057
2505
  // src/radio/radio.tsx
2058
- var import_component_theme13 = require("@zenkigen-inc/component-theme");
2059
- var import_clsx23 = __toESM(require("clsx"));
2060
- var import_react35 = require("react");
2061
- var import_jsx_runtime38 = require("react/jsx-runtime");
2506
+ var import_component_theme14 = require("@zenkigen-inc/component-theme");
2507
+ var import_clsx28 = __toESM(require("clsx"));
2508
+ var import_react38 = require("react");
2509
+ var import_jsx_runtime43 = require("react/jsx-runtime");
2062
2510
  function Radio({ name, value, id, label, isChecked = false, isDisabled = false, onChange }) {
2063
- const [isMouseOver, setIsMouseOver] = (0, import_react35.useState)(false);
2064
- const handleMouseOverInput = (0, import_react35.useCallback)(() => {
2511
+ const [isMouseOver, setIsMouseOver] = (0, import_react38.useState)(false);
2512
+ const handleMouseOverInput = (0, import_react38.useCallback)(() => {
2065
2513
  setIsMouseOver(true);
2066
2514
  }, []);
2067
- const handleMouseOutInput = (0, import_react35.useCallback)(() => {
2515
+ const handleMouseOutInput = (0, import_react38.useCallback)(() => {
2068
2516
  setIsMouseOver(false);
2069
2517
  }, []);
2070
- const handleChange = (0, import_react35.useCallback)(
2518
+ const handleChange = (0, import_react38.useCallback)(
2071
2519
  (e) => !isDisabled && onChange?.(e),
2072
2520
  [isDisabled, onChange]
2073
2521
  );
2074
- const inputClasses = (0, import_clsx23.default)("peer absolute z-[1] size-6 opacity-0", {
2522
+ const inputClasses = (0, import_clsx28.default)("peer absolute z-[1] size-6 opacity-0", {
2075
2523
  "cursor-not-allowed": isDisabled,
2076
2524
  "cursor-pointer": !isDisabled
2077
2525
  });
2078
- const boxClasses = (0, import_clsx23.default)(
2526
+ const boxClasses = (0, import_clsx28.default)(
2079
2527
  "inline-flex size-5 items-center justify-center rounded-full border border-solid bg-white",
2080
- import_component_theme13.focusVisible.normalPeer,
2528
+ import_component_theme14.focusVisible.normalPeer,
2081
2529
  {
2082
2530
  "border-disabled01 hover:border-disabled01": isDisabled && !isMouseOver,
2083
2531
  "border-hoverUiBorder": !isDisabled && isMouseOver,
@@ -2086,22 +2534,22 @@ function Radio({ name, value, id, label, isChecked = false, isDisabled = false,
2086
2534
  "cursor-pointer": !isDisabled
2087
2535
  }
2088
2536
  );
2089
- const afterClasses = (0, import_clsx23.default)("absolute inset-0 m-auto block size-3 rounded-full", {
2537
+ const afterClasses = (0, import_clsx28.default)("absolute inset-0 m-auto block size-3 rounded-full", {
2090
2538
  "bg-disabled01": isDisabled && isChecked,
2091
2539
  "bg-activeSelectedUi": !isDisabled && isChecked,
2092
2540
  "scale-0": !isChecked,
2093
2541
  "scale-100": isChecked
2094
2542
  });
2095
- const hoverIndicatorClasses = (0, import_clsx23.default)("inline-block size-3 rounded-full", {
2543
+ const hoverIndicatorClasses = (0, import_clsx28.default)("inline-block size-3 rounded-full", {
2096
2544
  "bg-hoverUi": !isDisabled && !isChecked && isMouseOver
2097
2545
  });
2098
- const labelClasses = (0, import_clsx23.default)("typography-label14regular ml-2 flex-[1_0_0] select-none break-all", {
2546
+ const labelClasses = (0, import_clsx28.default)("typography-label14regular ml-2 flex-[1_0_0] select-none break-all", {
2099
2547
  "pointer-events-none cursor-not-allowed text-disabled01": isDisabled,
2100
2548
  "cursor-pointer text-text01": !isDisabled
2101
2549
  });
2102
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex items-center", children: [
2103
- /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex size-6 items-center justify-center", children: [
2104
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
2550
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex items-center", children: [
2551
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex size-6 items-center justify-center", children: [
2552
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2105
2553
  "input",
2106
2554
  {
2107
2555
  type: "checkbox",
@@ -2116,32 +2564,32 @@ function Radio({ name, value, id, label, isChecked = false, isDisabled = false,
2116
2564
  className: inputClasses
2117
2565
  }
2118
2566
  ),
2119
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: boxClasses, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "relative flex size-5 flex-[0_0_auto] items-center justify-center", children: [
2120
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: afterClasses }),
2121
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: hoverIndicatorClasses })
2567
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: boxClasses, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "relative flex size-5 flex-[0_0_auto] items-center justify-center", children: [
2568
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { className: afterClasses }),
2569
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { className: hoverIndicatorClasses })
2122
2570
  ] }) })
2123
2571
  ] }),
2124
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("label", { htmlFor: id, className: labelClasses, children: label })
2572
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("label", { htmlFor: id, className: labelClasses, children: label })
2125
2573
  ] });
2126
2574
  }
2127
2575
 
2128
2576
  // src/search/search.tsx
2129
- var import_clsx24 = require("clsx");
2130
- var import_react36 = require("react");
2131
- var import_jsx_runtime39 = require("react/jsx-runtime");
2132
- var Search = (0, import_react36.forwardRef)(({ width = "100%", size = "medium", ...props }, ref) => {
2133
- const classes = (0, import_clsx24.clsx)(
2577
+ var import_clsx29 = require("clsx");
2578
+ var import_react39 = require("react");
2579
+ var import_jsx_runtime44 = require("react/jsx-runtime");
2580
+ var Search = (0, import_react39.forwardRef)(({ width = "100%", size = "medium", ...props }, ref) => {
2581
+ const classes = (0, import_clsx29.clsx)(
2134
2582
  "flex items-center rounded-full border border-uiBorder02 bg-uiBackground01 focus-within:border-activeInput",
2135
2583
  { "h-8 px-3": size === "medium" },
2136
2584
  { "h-10 px-4": size === "large" }
2137
2585
  );
2138
- const inputClasses = (0, import_clsx24.clsx)("mx-2 h-full flex-1 text-text01 outline-0 placeholder:text-textPlaceholder", {
2586
+ const inputClasses = (0, import_clsx29.clsx)("mx-2 h-full flex-1 text-text01 outline-0 placeholder:text-textPlaceholder", {
2139
2587
  ["typography-label14regular"]: size === "medium",
2140
2588
  ["typography-label16regular"]: size === "large"
2141
2589
  });
2142
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: "relative", ref, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("form", { onSubmit: props.onSubmit, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: classes, style: { width }, children: [
2143
- /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Icon, { name: "search", color: "icon01", size: "medium" }),
2144
- /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
2590
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "relative", ref, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("form", { onSubmit: props.onSubmit, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: classes, style: { width }, children: [
2591
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(Icon, { name: "search", color: "icon01", size: "medium" }),
2592
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2145
2593
  "input",
2146
2594
  {
2147
2595
  type: "text",
@@ -2152,7 +2600,7 @@ var Search = (0, import_react36.forwardRef)(({ width = "100%", size = "medium",
2152
2600
  onChange: props.onChange
2153
2601
  }
2154
2602
  ),
2155
- props.onClickClearButton && props.value && props.value.length !== 0 && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
2603
+ props.onClickClearButton && props.value && props.value.length !== 0 && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2156
2604
  IconButton,
2157
2605
  {
2158
2606
  variant: "text",
@@ -2167,17 +2615,17 @@ var Search = (0, import_react36.forwardRef)(({ width = "100%", size = "medium",
2167
2615
  Search.displayName = "Search";
2168
2616
 
2169
2617
  // src/segmented-control/segmented-control.tsx
2170
- var import_react39 = __toESM(require("react"));
2618
+ var import_react42 = __toESM(require("react"));
2171
2619
 
2172
2620
  // src/segmented-control/segmented-control-context.ts
2173
- var import_react37 = require("react");
2174
- var SegmentedControlContext = (0, import_react37.createContext)(null);
2621
+ var import_react40 = require("react");
2622
+ var SegmentedControlContext = (0, import_react40.createContext)(null);
2175
2623
 
2176
2624
  // src/segmented-control/segmented-control-item.tsx
2177
- var import_component_theme14 = require("@zenkigen-inc/component-theme");
2178
- var import_clsx25 = require("clsx");
2179
- var import_react38 = require("react");
2180
- var import_jsx_runtime40 = require("react/jsx-runtime");
2625
+ var import_component_theme15 = require("@zenkigen-inc/component-theme");
2626
+ var import_clsx30 = require("clsx");
2627
+ var import_react41 = require("react");
2628
+ var import_jsx_runtime45 = require("react/jsx-runtime");
2181
2629
  var SegmentedControlItem = ({
2182
2630
  label,
2183
2631
  value,
@@ -2186,9 +2634,9 @@ var SegmentedControlItem = ({
2186
2634
  "aria-label": ariaLabel,
2187
2635
  ...rest
2188
2636
  }) => {
2189
- const context = (0, import_react38.useContext)(SegmentedControlContext);
2190
- const buttonRef = (0, import_react38.useRef)(null);
2191
- const lastInteractionWasMouse = (0, import_react38.useRef)(false);
2637
+ const context = (0, import_react41.useContext)(SegmentedControlContext);
2638
+ const buttonRef = (0, import_react41.useRef)(null);
2639
+ const lastInteractionWasMouse = (0, import_react41.useRef)(false);
2192
2640
  if (context === null) {
2193
2641
  throw new Error("SegmentedControl.Item must be used within SegmentedControl");
2194
2642
  }
@@ -2204,7 +2652,7 @@ var SegmentedControlItem = ({
2204
2652
  const isSelected = value === selectedValue;
2205
2653
  const isFocused = value === focusedValue;
2206
2654
  const isOptionDisabled = isContextDisabled || itemDisabled === true;
2207
- (0, import_react38.useEffect)(() => {
2655
+ (0, import_react41.useEffect)(() => {
2208
2656
  if (isFocused === true && buttonRef.current !== null) {
2209
2657
  buttonRef.current.focus();
2210
2658
  }
@@ -2226,7 +2674,7 @@ var SegmentedControlItem = ({
2226
2674
  lastInteractionWasMouse.current = false;
2227
2675
  onBlur?.();
2228
2676
  };
2229
- const buttonClasses = (0, import_clsx25.clsx)("relative flex items-center justify-center gap-1 rounded", import_component_theme14.focusVisible.normal, {
2677
+ const buttonClasses = (0, import_clsx30.clsx)("relative flex items-center justify-center gap-1 rounded", import_component_theme15.focusVisible.normal, {
2230
2678
  "px-2 min-h-[24px] typography-label12regular": size === "small",
2231
2679
  "px-4 min-h-[32px] typography-label14regular": size === "medium",
2232
2680
  // States - Default with hover
@@ -2236,7 +2684,7 @@ var SegmentedControlItem = ({
2236
2684
  // States - Disabled
2237
2685
  "text-disabled01 bg-transparent": isOptionDisabled === true
2238
2686
  });
2239
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
2687
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
2240
2688
  "button",
2241
2689
  {
2242
2690
  ref: buttonRef,
@@ -2253,25 +2701,25 @@ var SegmentedControlItem = ({
2253
2701
  onMouseDown: handleMouseDown,
2254
2702
  ...rest,
2255
2703
  children: [
2256
- Boolean(icon) === true && icon && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
2704
+ Boolean(icon) === true && icon && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
2257
2705
  "span",
2258
2706
  {
2259
- className: (0, import_clsx25.clsx)("flex items-center", {
2707
+ className: (0, import_clsx30.clsx)("flex items-center", {
2260
2708
  "fill-disabled01": isOptionDisabled === true,
2261
2709
  "fill-interactive01": isSelected === true && isOptionDisabled === false,
2262
2710
  "fill-icon01": isSelected === false && isOptionDisabled === false
2263
2711
  }),
2264
- children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(Icon, { name: icon, size: "small" })
2712
+ children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(Icon, { name: icon, size: "small" })
2265
2713
  }
2266
2714
  ),
2267
- Boolean(label) === true && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "whitespace-nowrap", children: label })
2715
+ Boolean(label) === true && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: "whitespace-nowrap", children: label })
2268
2716
  ]
2269
2717
  }
2270
2718
  );
2271
2719
  };
2272
2720
 
2273
2721
  // src/segmented-control/segmented-control.tsx
2274
- var import_jsx_runtime41 = require("react/jsx-runtime");
2722
+ var import_jsx_runtime46 = require("react/jsx-runtime");
2275
2723
  var SegmentedControl = ({
2276
2724
  children,
2277
2725
  value,
@@ -2281,15 +2729,15 @@ var SegmentedControl = ({
2281
2729
  "aria-label": ariaLabel,
2282
2730
  ...rest
2283
2731
  }) => {
2284
- const containerRef = (0, import_react39.useRef)(null);
2285
- const itemIds = import_react39.Children.toArray(children).filter((child) => {
2286
- if (!import_react39.default.isValidElement(child) || typeof child.props !== "object" || child.props === null || !("value" in child.props)) {
2732
+ const containerRef = (0, import_react42.useRef)(null);
2733
+ const itemIds = import_react42.Children.toArray(children).filter((child) => {
2734
+ if (!import_react42.default.isValidElement(child) || typeof child.props !== "object" || child.props === null || !("value" in child.props)) {
2287
2735
  return false;
2288
2736
  }
2289
2737
  const props = child.props;
2290
2738
  return props.isDisabled !== true;
2291
2739
  }).map((child) => child.props.value);
2292
- const childrenCount = import_react39.Children.count(children);
2740
+ const childrenCount = import_react42.Children.count(children);
2293
2741
  const containerStyle = { gridTemplateColumns: `repeat(${childrenCount}, minmax(0,1fr))` };
2294
2742
  const {
2295
2743
  focusedValue,
@@ -2316,7 +2764,7 @@ var SegmentedControl = ({
2316
2764
  onBlur: handleBlurRovingFocus,
2317
2765
  values: itemIds
2318
2766
  };
2319
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_jsx_runtime41.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(SegmentedControlContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
2767
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_jsx_runtime46.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(SegmentedControlContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
2320
2768
  "div",
2321
2769
  {
2322
2770
  ref: containerRef,
@@ -2333,37 +2781,37 @@ var SegmentedControl = ({
2333
2781
  SegmentedControl.Item = SegmentedControlItem;
2334
2782
 
2335
2783
  // src/select-sort/select-sort.tsx
2336
- var import_component_theme17 = require("@zenkigen-inc/component-theme");
2337
- var import_clsx28 = __toESM(require("clsx"));
2338
- var import_react40 = require("react");
2784
+ var import_component_theme18 = require("@zenkigen-inc/component-theme");
2785
+ var import_clsx33 = __toESM(require("clsx"));
2786
+ var import_react43 = require("react");
2339
2787
 
2340
2788
  // src/select-sort/select-list.tsx
2341
- var import_component_theme16 = require("@zenkigen-inc/component-theme");
2342
- var import_clsx27 = __toESM(require("clsx"));
2789
+ var import_component_theme17 = require("@zenkigen-inc/component-theme");
2790
+ var import_clsx32 = __toESM(require("clsx"));
2343
2791
 
2344
2792
  // src/select-sort/select-item.tsx
2345
- var import_component_theme15 = require("@zenkigen-inc/component-theme");
2346
- var import_clsx26 = __toESM(require("clsx"));
2347
- var import_jsx_runtime42 = require("react/jsx-runtime");
2793
+ var import_component_theme16 = require("@zenkigen-inc/component-theme");
2794
+ var import_clsx31 = __toESM(require("clsx"));
2795
+ var import_jsx_runtime47 = require("react/jsx-runtime");
2348
2796
  function SelectItem2({ children, isSortKey, onClickItem }) {
2349
- const itemClasses = (0, import_clsx26.default)(
2797
+ const itemClasses = (0, import_clsx31.default)(
2350
2798
  "typography-label14regular flex h-8 w-full items-center px-3 hover:bg-hover02 active:bg-active02",
2351
- import_component_theme15.focusVisible.inset,
2799
+ import_component_theme16.focusVisible.inset,
2352
2800
  {
2353
2801
  "bg-selectedUi fill-interactive01 text-interactive01": isSortKey,
2354
2802
  "bg-uiBackground01 fill-icon01 text-interactive02": !isSortKey
2355
2803
  }
2356
2804
  );
2357
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("li", { className: "flex w-full items-center", onClick: onClickItem, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("button", { className: itemClasses, type: "button", children: [
2358
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "ml-1 mr-6", children }),
2359
- isSortKey && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "ml-auto flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Icon, { name: "check", size: "small" }) })
2805
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("li", { className: "flex w-full items-center", onClick: onClickItem, children: /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("button", { className: itemClasses, type: "button", children: [
2806
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "ml-1 mr-6", children }),
2807
+ isSortKey && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "ml-auto flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(Icon, { name: "check", size: "small" }) })
2360
2808
  ] }) });
2361
2809
  }
2362
2810
 
2363
2811
  // src/select-sort/select-list.tsx
2364
- var import_jsx_runtime43 = require("react/jsx-runtime");
2812
+ var import_jsx_runtime48 = require("react/jsx-runtime");
2365
2813
  function SelectList2({ size, variant, sortOrder, onClickItem, onClickDeselect }) {
2366
- const listClasses = (0, import_clsx27.default)(
2814
+ const listClasses = (0, import_clsx32.default)(
2367
2815
  "absolute z-dropdown w-max overflow-y-auto rounded bg-uiBackground01 py-2 shadow-floatingShadow",
2368
2816
  {
2369
2817
  "top-7": size === "x-small" || size === "small",
@@ -2372,19 +2820,19 @@ function SelectList2({ size, variant, sortOrder, onClickItem, onClickDeselect })
2372
2820
  "border-solid border border-uiBorder01": variant === "outline"
2373
2821
  }
2374
2822
  );
2375
- const deselectButtonClasses = (0, import_clsx27.default)(
2823
+ const deselectButtonClasses = (0, import_clsx32.default)(
2376
2824
  "typography-label14regular flex h-8 w-full items-center px-3 text-interactive02 hover:bg-hover02 active:bg-active02",
2377
- import_component_theme16.focusVisible.inset
2825
+ import_component_theme17.focusVisible.inset
2378
2826
  );
2379
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("ul", { className: listClasses, children: [
2380
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectItem2, { isSortKey: sortOrder === "ascend", onClickItem: () => onClickItem("ascend"), children: "\u6607\u9806\u3067\u4E26\u3073\u66FF\u3048" }),
2381
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectItem2, { isSortKey: sortOrder === "descend", onClickItem: () => onClickItem("descend"), children: "\u964D\u9806\u3067\u4E26\u3073\u66FF\u3048" }),
2382
- sortOrder !== null && onClickDeselect && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("button", { className: deselectButtonClasses, type: "button", onClick: onClickDeselect, children: "\u9078\u629E\u89E3\u9664" }) })
2827
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("ul", { className: listClasses, children: [
2828
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(SelectItem2, { isSortKey: sortOrder === "ascend", onClickItem: () => onClickItem("ascend"), children: "\u6607\u9806\u3067\u4E26\u3073\u66FF\u3048" }),
2829
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(SelectItem2, { isSortKey: sortOrder === "descend", onClickItem: () => onClickItem("descend"), children: "\u964D\u9806\u3067\u4E26\u3073\u66FF\u3048" }),
2830
+ sortOrder !== null && onClickDeselect && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("button", { className: deselectButtonClasses, type: "button", onClick: onClickDeselect, children: "\u9078\u629E\u89E3\u9664" }) })
2383
2831
  ] });
2384
2832
  }
2385
2833
 
2386
2834
  // src/select-sort/select-sort.tsx
2387
- var import_jsx_runtime44 = require("react/jsx-runtime");
2835
+ var import_jsx_runtime49 = require("react/jsx-runtime");
2388
2836
  function SelectSort({
2389
2837
  size = "medium",
2390
2838
  variant = "outline",
@@ -2396,54 +2844,54 @@ function SelectSort({
2396
2844
  onChange,
2397
2845
  onClickDeselect
2398
2846
  }) {
2399
- const [isOptionListOpen, setIsOptionListOpen] = (0, import_react40.useState)(false);
2400
- const targetRef = (0, import_react40.useRef)(null);
2847
+ const [isOptionListOpen, setIsOptionListOpen] = (0, import_react43.useState)(false);
2848
+ const targetRef = (0, import_react43.useRef)(null);
2401
2849
  useOutsideClick(targetRef, () => setIsOptionListOpen(false));
2402
2850
  const handleClickToggle = () => setIsOptionListOpen((prev) => !prev);
2403
- const handleClickItem = (0, import_react40.useCallback)(
2851
+ const handleClickItem = (0, import_react43.useCallback)(
2404
2852
  (value) => {
2405
2853
  onChange?.(value);
2406
2854
  setIsOptionListOpen(false);
2407
2855
  },
2408
2856
  [onChange]
2409
2857
  );
2410
- const wrapperClasses = (0, import_clsx28.default)("relative flex shrink-0 items-center gap-1 rounded", {
2858
+ const wrapperClasses = (0, import_clsx33.default)("relative flex shrink-0 items-center gap-1 rounded", {
2411
2859
  "h-6": size === "x-small" || size === "small",
2412
2860
  "h-8": size === "medium",
2413
2861
  "h-10": size === "large",
2414
2862
  "cursor-not-allowed": isDisabled
2415
2863
  });
2416
- const buttonClasses = (0, import_clsx28.default)(
2864
+ const buttonClasses = (0, import_clsx33.default)(
2417
2865
  "flex size-full items-center rounded",
2418
- import_component_theme17.buttonColors[variant].hover,
2419
- import_component_theme17.buttonColors[variant].active,
2420
- import_component_theme17.buttonColors[variant].disabled,
2421
- import_component_theme17.focusVisible.normal,
2866
+ import_component_theme18.buttonColors[variant].hover,
2867
+ import_component_theme18.buttonColors[variant].active,
2868
+ import_component_theme18.buttonColors[variant].disabled,
2869
+ import_component_theme18.focusVisible.normal,
2422
2870
  {
2423
- [import_component_theme17.buttonColors[variant].selected]: isSortKey,
2424
- [import_component_theme17.buttonColors[variant].base]: !isSortKey,
2871
+ [import_component_theme18.buttonColors[variant].selected]: isSortKey,
2872
+ [import_component_theme18.buttonColors[variant].base]: !isSortKey,
2425
2873
  "px-2": size === "x-small" || size === "small",
2426
2874
  "px-4": size === "medium" || size === "large",
2427
2875
  "pointer-events-none": isDisabled
2428
2876
  }
2429
2877
  );
2430
- const labelClasses = (0, import_clsx28.default)("truncate", {
2878
+ const labelClasses = (0, import_clsx33.default)("truncate", {
2431
2879
  "typography-label12regular": size === "x-small",
2432
2880
  "typography-label14regular": size === "small" || size === "medium",
2433
2881
  "typography-label16regular": size === "large",
2434
2882
  "mr-1": size === "x-small",
2435
2883
  "mr-2": size !== "x-small"
2436
2884
  });
2437
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: wrapperClasses, style: { width }, ref: targetRef, children: [
2438
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("button", { className: buttonClasses, type: "button", onClick: handleClickToggle, disabled: isDisabled, children: [
2439
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: labelClasses, children: label }),
2440
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "ml-auto flex items-center", children: isSortKey ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2885
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: wrapperClasses, style: { width }, ref: targetRef, children: [
2886
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("button", { className: buttonClasses, type: "button", onClick: handleClickToggle, disabled: isDisabled, children: [
2887
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: labelClasses, children: label }),
2888
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "ml-auto flex items-center", children: isSortKey ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
2441
2889
  Icon,
2442
2890
  {
2443
2891
  name: sortOrder === "ascend" ? "arrow-up" : "arrow-down",
2444
2892
  size: size === "large" ? "medium" : "small"
2445
2893
  }
2446
- ) : /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2894
+ ) : /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
2447
2895
  Icon,
2448
2896
  {
2449
2897
  name: isOptionListOpen ? "angle-small-up" : "angle-small-down",
@@ -2451,7 +2899,7 @@ function SelectSort({
2451
2899
  }
2452
2900
  ) })
2453
2901
  ] }),
2454
- isOptionListOpen && !isDisabled && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2902
+ isOptionListOpen && !isDisabled && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
2455
2903
  SelectList2,
2456
2904
  {
2457
2905
  size,
@@ -2465,10 +2913,10 @@ function SelectSort({
2465
2913
  }
2466
2914
 
2467
2915
  // src/sort-button/sort-button.tsx
2468
- var import_component_theme18 = require("@zenkigen-inc/component-theme");
2469
- var import_clsx29 = __toESM(require("clsx"));
2470
- var import_react41 = require("react");
2471
- var import_jsx_runtime45 = require("react/jsx-runtime");
2916
+ var import_component_theme19 = require("@zenkigen-inc/component-theme");
2917
+ var import_clsx34 = __toESM(require("clsx"));
2918
+ var import_react44 = require("react");
2919
+ var import_jsx_runtime50 = require("react/jsx-runtime");
2472
2920
  function SortButton({
2473
2921
  size = "medium",
2474
2922
  width,
@@ -2479,7 +2927,7 @@ function SortButton({
2479
2927
  "aria-label": ariaLabel,
2480
2928
  ...rest
2481
2929
  }) {
2482
- const handleClick = (0, import_react41.useCallback)(() => {
2930
+ const handleClick = (0, import_react44.useCallback)(() => {
2483
2931
  if (isDisabled || !onClick) return;
2484
2932
  onClick();
2485
2933
  }, [isDisabled, onClick]);
@@ -2488,36 +2936,36 @@ function SortButton({
2488
2936
  if (sortOrder === "descend") return "arrow-down";
2489
2937
  return "angle-small-down";
2490
2938
  };
2491
- const wrapperClasses = (0, import_clsx29.default)("relative flex shrink-0 items-center gap-1 rounded", {
2939
+ const wrapperClasses = (0, import_clsx34.default)("relative flex shrink-0 items-center gap-1 rounded", {
2492
2940
  "h-6": size === "x-small" || size === "small",
2493
2941
  "h-8": size === "medium",
2494
2942
  "h-10": size === "large",
2495
2943
  "cursor-not-allowed": isDisabled
2496
2944
  });
2497
- const buttonClasses = (0, import_clsx29.default)(
2945
+ const buttonClasses = (0, import_clsx34.default)(
2498
2946
  "flex size-full items-center rounded",
2499
- import_component_theme18.buttonColors.text.hover,
2500
- import_component_theme18.buttonColors.text.active,
2501
- import_component_theme18.buttonColors.text.disabled,
2502
- import_component_theme18.focusVisible.normal,
2947
+ import_component_theme19.buttonColors.text.hover,
2948
+ import_component_theme19.buttonColors.text.active,
2949
+ import_component_theme19.buttonColors.text.disabled,
2950
+ import_component_theme19.focusVisible.normal,
2503
2951
  {
2504
- [import_component_theme18.buttonColors.text.selected]: !isDisabled && sortOrder !== null,
2952
+ [import_component_theme19.buttonColors.text.selected]: !isDisabled && sortOrder !== null,
2505
2953
  // ソート状態時は選択状態のスタイル
2506
- [import_component_theme18.buttonColors.text.base]: sortOrder === null,
2954
+ [import_component_theme19.buttonColors.text.base]: sortOrder === null,
2507
2955
  // ソートなし時は通常のスタイル
2508
2956
  "px-2": size === "x-small" || size === "small",
2509
2957
  "px-4": size === "medium" || size === "large",
2510
2958
  "pointer-events-none": isDisabled
2511
2959
  }
2512
2960
  );
2513
- const labelClasses = (0, import_clsx29.default)("truncate", {
2961
+ const labelClasses = (0, import_clsx34.default)("truncate", {
2514
2962
  "typography-label12regular": size === "x-small",
2515
2963
  "typography-label14regular": size === "small" || size === "medium",
2516
2964
  "typography-label16regular": size === "large",
2517
2965
  "mr-1": size === "x-small",
2518
2966
  "mr-2": size !== "x-small"
2519
2967
  });
2520
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: wrapperClasses, style: { width }, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
2968
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: wrapperClasses, style: { width }, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
2521
2969
  "button",
2522
2970
  {
2523
2971
  className: buttonClasses,
@@ -2528,22 +2976,22 @@ function SortButton({
2528
2976
  "aria-label": ariaLabel,
2529
2977
  "aria-disabled": isDisabled,
2530
2978
  children: [
2531
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: labelClasses, children: label }),
2532
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "ml-auto flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(Icon, { name: getIconName(), size: size === "large" ? "medium" : "small" }) })
2979
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: labelClasses, children: label }),
2980
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "ml-auto flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Icon, { name: getIconName(), size: size === "large" ? "medium" : "small" }) })
2533
2981
  ]
2534
2982
  }
2535
2983
  ) });
2536
2984
  }
2537
2985
 
2538
2986
  // src/tab/tab.tsx
2539
- var import_clsx31 = require("clsx");
2540
- var import_react42 = require("react");
2987
+ var import_clsx36 = require("clsx");
2988
+ var import_react45 = require("react");
2541
2989
 
2542
2990
  // src/tab/tab-item.tsx
2543
- var import_clsx30 = require("clsx");
2544
- var import_jsx_runtime46 = require("react/jsx-runtime");
2991
+ var import_clsx35 = require("clsx");
2992
+ var import_jsx_runtime51 = require("react/jsx-runtime");
2545
2993
  var TabItem = ({ isSelected = false, isDisabled = false, icon, ...props }) => {
2546
- const classes = (0, import_clsx30.clsx)(
2994
+ const classes = (0, import_clsx35.clsx)(
2547
2995
  "group relative z-0 flex items-center justify-center gap-1 py-2 leading-[24px] before:absolute before:inset-x-0 before:bottom-0 before:h-[2px] hover:text-interactive01 disabled:pointer-events-none disabled:text-disabled01",
2548
2996
  {
2549
2997
  "typography-label14regular text-interactive02": !isSelected,
@@ -2551,12 +2999,12 @@ var TabItem = ({ isSelected = false, isDisabled = false, icon, ...props }) => {
2551
2999
  "before:bg-interactive01 hover:before:bg-interactive01 pointer-events-none": isSelected
2552
3000
  }
2553
3001
  );
2554
- const iconWrapperClasses = (0, import_clsx30.clsx)("flex shrink-0 items-center", {
3002
+ const iconWrapperClasses = (0, import_clsx35.clsx)("flex shrink-0 items-center", {
2555
3003
  "fill-disabled01": isDisabled,
2556
3004
  "fill-interactive01": !isDisabled && isSelected,
2557
3005
  "fill-icon01 group-hover:fill-interactive01": !isDisabled && !isSelected
2558
3006
  });
2559
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
3007
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
2560
3008
  "button",
2561
3009
  {
2562
3010
  type: "button",
@@ -2566,7 +3014,7 @@ var TabItem = ({ isSelected = false, isDisabled = false, icon, ...props }) => {
2566
3014
  disabled: isDisabled,
2567
3015
  onClick: () => props.onClick(props.id),
2568
3016
  children: [
2569
- icon != null && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: iconWrapperClasses, children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(Icon, { name: icon, size: "small" }) }),
3017
+ icon != null && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: iconWrapperClasses, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Icon, { name: icon, size: "small" }) }),
2570
3018
  props.children
2571
3019
  ]
2572
3020
  }
@@ -2574,39 +3022,39 @@ var TabItem = ({ isSelected = false, isDisabled = false, icon, ...props }) => {
2574
3022
  };
2575
3023
 
2576
3024
  // src/tab/tab.tsx
2577
- var import_jsx_runtime47 = require("react/jsx-runtime");
3025
+ var import_jsx_runtime52 = require("react/jsx-runtime");
2578
3026
  function Tab({ children, layout = "auto" }) {
2579
- const childrenCount = import_react42.Children.count(children);
3027
+ const childrenCount = import_react45.Children.count(children);
2580
3028
  const containerStyle = layout === "equal" ? { gridTemplateColumns: `repeat(${childrenCount}, minmax(0,1fr))` } : {};
2581
- const containerClasses = (0, import_clsx31.clsx)(
3029
+ const containerClasses = (0, import_clsx36.clsx)(
2582
3030
  "relative gap-4 px-6 before:absolute before:inset-x-0 before:bottom-0 before:h-px before:bg-uiBorder01",
2583
3031
  {
2584
3032
  flex: layout === "auto",
2585
3033
  grid: layout === "equal"
2586
3034
  }
2587
3035
  );
2588
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { role: "tablist", className: containerClasses, style: containerStyle, children });
3036
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { role: "tablist", className: containerClasses, style: containerStyle, children });
2589
3037
  }
2590
3038
  Tab.Item = TabItem;
2591
3039
 
2592
3040
  // src/table/table-cell.tsx
2593
- var import_clsx32 = __toESM(require("clsx"));
2594
- var import_jsx_runtime48 = require("react/jsx-runtime");
3041
+ var import_clsx37 = __toESM(require("clsx"));
3042
+ var import_jsx_runtime53 = require("react/jsx-runtime");
2595
3043
  function TableCell({ children, className, isHeader = false }) {
2596
- const classes = (0, import_clsx32.default)("border-b border-uiBorder01", { "sticky top-0 z-10 bg-white": isHeader }, className);
2597
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: classes, children });
3044
+ const classes = (0, import_clsx37.default)("border-b border-uiBorder01", { "sticky top-0 z-10 bg-white": isHeader }, className);
3045
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: classes, children });
2598
3046
  }
2599
3047
 
2600
3048
  // src/table/table-row.tsx
2601
- var import_clsx33 = __toESM(require("clsx"));
2602
- var import_jsx_runtime49 = require("react/jsx-runtime");
3049
+ var import_clsx38 = __toESM(require("clsx"));
3050
+ var import_jsx_runtime54 = require("react/jsx-runtime");
2603
3051
  function TableRow({ children, isHoverBackgroundVisible = false }) {
2604
- const rowClasses = (0, import_clsx33.default)("contents", isHoverBackgroundVisible && "[&:hover>div]:bg-hoverUi02");
2605
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: rowClasses, children });
3052
+ const rowClasses = (0, import_clsx38.default)("contents", isHoverBackgroundVisible && "[&:hover>div]:bg-hoverUi02");
3053
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: rowClasses, children });
2606
3054
  }
2607
3055
 
2608
3056
  // src/table/table.tsx
2609
- var import_jsx_runtime50 = require("react/jsx-runtime");
3057
+ var import_jsx_runtime55 = require("react/jsx-runtime");
2610
3058
  function Table({
2611
3059
  width,
2612
3060
  templateRows,
@@ -2615,7 +3063,7 @@ function Table({
2615
3063
  autoRows,
2616
3064
  children
2617
3065
  }) {
2618
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
3066
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
2619
3067
  "div",
2620
3068
  {
2621
3069
  className: "grid",
@@ -2634,23 +3082,23 @@ Table.Row = TableRow;
2634
3082
  Table.Cell = TableCell;
2635
3083
 
2636
3084
  // src/tag/tag.tsx
2637
- var import_component_theme20 = require("@zenkigen-inc/component-theme");
2638
- var import_clsx35 = __toESM(require("clsx"));
3085
+ var import_component_theme21 = require("@zenkigen-inc/component-theme");
3086
+ var import_clsx40 = __toESM(require("clsx"));
2639
3087
 
2640
3088
  // src/tag/delete-icon.tsx
2641
- var import_component_theme19 = require("@zenkigen-inc/component-theme");
2642
- var import_clsx34 = __toESM(require("clsx"));
2643
- var import_jsx_runtime51 = require("react/jsx-runtime");
3089
+ var import_component_theme20 = require("@zenkigen-inc/component-theme");
3090
+ var import_clsx39 = __toESM(require("clsx"));
3091
+ var import_jsx_runtime56 = require("react/jsx-runtime");
2644
3092
  var DeleteIcon = ({ color, variant, onClick }) => {
2645
- const deleteButtonClasses = (0, import_clsx34.default)(
3093
+ const deleteButtonClasses = (0, import_clsx39.default)(
2646
3094
  "group ml-2 size-[14px] rounded-full p-0.5 hover:cursor-pointer hover:bg-iconOnColor focus-visible:bg-iconOnColor",
2647
- import_component_theme19.focusVisible.normal
3095
+ import_component_theme20.focusVisible.normal
2648
3096
  );
2649
- const deletePathClasses = (0, import_clsx34.default)({
3097
+ const deletePathClasses = (0, import_clsx39.default)({
2650
3098
  "fill-interactive02": color === "gray" || variant === "light",
2651
3099
  "group-hover:fill-interactive02 group-focus-visible:fill-interactive02 fill-iconOnColor": color !== "gray"
2652
3100
  });
2653
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("button", { type: "button", className: deleteButtonClasses, onClick, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("svg", { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
3101
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("button", { type: "button", className: deleteButtonClasses, onClick, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("svg", { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
2654
3102
  "path",
2655
3103
  {
2656
3104
  fillRule: "evenodd",
@@ -2662,11 +3110,11 @@ var DeleteIcon = ({ color, variant, onClick }) => {
2662
3110
  };
2663
3111
 
2664
3112
  // src/tag/tag.tsx
2665
- var import_jsx_runtime52 = require("react/jsx-runtime");
3113
+ var import_jsx_runtime57 = require("react/jsx-runtime");
2666
3114
  function Tag({ id, children, color, variant = "normal", size = "medium", isEditable, onDelete }) {
2667
- const wrapperClasses = (0, import_clsx35.default)("flex", "items-center", "justify-center", {
2668
- [import_component_theme20.tagColors[color]]: variant === "normal",
2669
- [import_component_theme20.tagLightColors[color]]: variant === "light",
3115
+ const wrapperClasses = (0, import_clsx40.default)("flex", "items-center", "justify-center", {
3116
+ [import_component_theme21.tagColors[color]]: variant === "normal",
3117
+ [import_component_theme21.tagLightColors[color]]: variant === "light",
2670
3118
  "h-[14px] typography-label11regular": !isEditable && size === "x-small",
2671
3119
  "h-4 typography-label12regular": !isEditable && size === "small",
2672
3120
  "h-[18px] typography-label14regular": !isEditable && size === "medium",
@@ -2676,21 +3124,21 @@ function Tag({ id, children, color, variant = "normal", size = "medium", isEdita
2676
3124
  "py-0.5 px-1": !isEditable,
2677
3125
  "py-1 px-2": isEditable
2678
3126
  });
2679
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)("div", { className: wrapperClasses, children: [
3127
+ return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: wrapperClasses, children: [
2680
3128
  children,
2681
- isEditable ? /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(DeleteIcon, { onClick: () => onDelete(id), color, variant }) : null
3129
+ isEditable ? /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(DeleteIcon, { onClick: () => onDelete(id), color, variant }) : null
2682
3130
  ] });
2683
3131
  }
2684
3132
 
2685
3133
  // src/text-area/text-area.tsx
2686
- var import_clsx38 = require("clsx");
2687
- var import_react46 = require("react");
3134
+ var import_clsx43 = require("clsx");
3135
+ var import_react49 = require("react");
2688
3136
 
2689
3137
  // src/text-area/text-area-context.tsx
2690
- var import_react43 = require("react");
2691
- var TextAreaCompoundContext = (0, import_react43.createContext)(null);
3138
+ var import_react46 = require("react");
3139
+ var TextAreaCompoundContext = (0, import_react46.createContext)(null);
2692
3140
  var useTextAreaCompoundContext = (componentName) => {
2693
- const context = (0, import_react43.useContext)(TextAreaCompoundContext);
3141
+ const context = (0, import_react46.useContext)(TextAreaCompoundContext);
2694
3142
  if (context == null) {
2695
3143
  throw new Error(`${componentName} \u3092\u4F7F\u7528\u3059\u308B\u306B\u306F TextArea \u306E\u5B50\u8981\u7D20\u3068\u3057\u3066\u914D\u7F6E\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u3002`);
2696
3144
  }
@@ -2698,10 +3146,10 @@ var useTextAreaCompoundContext = (componentName) => {
2698
3146
  };
2699
3147
 
2700
3148
  // src/text-area/text-area-error-message.tsx
2701
- var import_clsx36 = require("clsx");
2702
- var import_react44 = require("react");
2703
- var import_jsx_runtime53 = require("react/jsx-runtime");
2704
- var TextAreaErrorMessage = (0, import_react44.forwardRef)(
3149
+ var import_clsx41 = require("clsx");
3150
+ var import_react47 = require("react");
3151
+ var import_jsx_runtime58 = require("react/jsx-runtime");
3152
+ var TextAreaErrorMessage = (0, import_react47.forwardRef)(
2705
3153
  ({ "aria-live": ariaLive = "assertive", ...props }, ref) => {
2706
3154
  const { textAreaProps } = useTextAreaCompoundContext("TextArea.ErrorMessage");
2707
3155
  const typographyClass = textAreaProps.size === "large" ? "typography-label12regular" : "typography-label11regular";
@@ -2709,26 +3157,26 @@ var TextAreaErrorMessage = (0, import_react44.forwardRef)(
2709
3157
  if (!shouldRender) {
2710
3158
  return null;
2711
3159
  }
2712
- const errorMessageClassName = (0, import_clsx36.clsx)(typographyClass, "text-supportError");
2713
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { ref, className: errorMessageClassName, "aria-live": ariaLive, ...props });
3160
+ const errorMessageClassName = (0, import_clsx41.clsx)(typographyClass, "text-supportError");
3161
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { ref, className: errorMessageClassName, "aria-live": ariaLive, ...props });
2714
3162
  }
2715
3163
  );
2716
3164
  TextAreaErrorMessage.displayName = "TextArea.ErrorMessage";
2717
3165
 
2718
3166
  // src/text-area/text-area-helper-message.tsx
2719
- var import_clsx37 = require("clsx");
2720
- var import_react45 = require("react");
2721
- var import_jsx_runtime54 = require("react/jsx-runtime");
2722
- var TextAreaHelperMessage = (0, import_react45.forwardRef)((props, ref) => {
3167
+ var import_clsx42 = require("clsx");
3168
+ var import_react48 = require("react");
3169
+ var import_jsx_runtime59 = require("react/jsx-runtime");
3170
+ var TextAreaHelperMessage = (0, import_react48.forwardRef)((props, ref) => {
2723
3171
  const { textAreaProps } = useTextAreaCompoundContext("TextArea.HelperMessage");
2724
3172
  const typographyClass = textAreaProps.size === "large" ? "typography-label12regular" : "typography-label11regular";
2725
- const helperMessageClassName = (0, import_clsx37.clsx)(typographyClass, "text-text02");
2726
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { ref, className: helperMessageClassName, ...props });
3173
+ const helperMessageClassName = (0, import_clsx42.clsx)(typographyClass, "text-text02");
3174
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { ref, className: helperMessageClassName, ...props });
2727
3175
  });
2728
3176
  TextAreaHelperMessage.displayName = "TextArea.HelperMessage";
2729
3177
 
2730
3178
  // src/text-area/text-area.tsx
2731
- var import_jsx_runtime55 = require("react/jsx-runtime");
3179
+ var import_jsx_runtime60 = require("react/jsx-runtime");
2732
3180
  function TextAreaInner({
2733
3181
  size = "medium",
2734
3182
  isResizable = false,
@@ -2741,15 +3189,15 @@ function TextAreaInner({
2741
3189
  className,
2742
3190
  ...props
2743
3191
  }, ref) {
2744
- const autoGeneratedId = (0, import_react46.useId)();
2745
- const textAreaPropsForContext = (0, import_react46.useMemo)(
3192
+ const autoGeneratedId = (0, import_react49.useId)();
3193
+ const textAreaPropsForContext = (0, import_react49.useMemo)(
2746
3194
  () => ({
2747
3195
  size,
2748
3196
  isError
2749
3197
  }),
2750
3198
  [size, isError]
2751
3199
  );
2752
- const contextValue = (0, import_react46.useMemo)(
3200
+ const contextValue = (0, import_react49.useMemo)(
2753
3201
  () => ({
2754
3202
  textAreaProps: textAreaPropsForContext,
2755
3203
  forwardedRef: ref
@@ -2759,21 +3207,21 @@ function TextAreaInner({
2759
3207
  const helperMessageIds = [];
2760
3208
  const errorIds = [];
2761
3209
  const describedByBaseId = props.id ?? autoGeneratedId;
2762
- const enhancedChildren = import_react46.Children.map(children, (child) => {
2763
- if (!(0, import_react46.isValidElement)(child)) {
3210
+ const enhancedChildren = import_react49.Children.map(children, (child) => {
3211
+ if (!(0, import_react49.isValidElement)(child)) {
2764
3212
  return child;
2765
3213
  }
2766
3214
  if (child.type === TextAreaHelperMessage) {
2767
3215
  const helperChild = child;
2768
3216
  const assignedId = helperChild.props.id ?? `${describedByBaseId}-helper-${helperMessageIds.length + 1}`;
2769
3217
  helperMessageIds.push(assignedId);
2770
- return (0, import_react46.cloneElement)(helperChild, { id: assignedId });
3218
+ return (0, import_react49.cloneElement)(helperChild, { id: assignedId });
2771
3219
  }
2772
3220
  if (child.type === TextAreaErrorMessage && isError) {
2773
3221
  const errorChild = child;
2774
3222
  const assignedId = errorChild.props.id ?? `${describedByBaseId}-error-${errorIds.length + 1}`;
2775
3223
  errorIds.push(assignedId);
2776
- return (0, import_react46.cloneElement)(errorChild, { id: assignedId });
3224
+ return (0, import_react49.cloneElement)(errorChild, { id: assignedId });
2777
3225
  }
2778
3226
  return child;
2779
3227
  });
@@ -2793,7 +3241,7 @@ function TextAreaInner({
2793
3241
  ...describedByProps,
2794
3242
  ...ariaInvalidProps
2795
3243
  };
2796
- const textAreaWrapperClassName = (0, import_clsx38.clsx)(
3244
+ const textAreaWrapperClassName = (0, import_clsx43.clsx)(
2797
3245
  "box-border flex w-full overflow-hidden rounded border",
2798
3246
  {
2799
3247
  "border-supportError": isError && !disabled,
@@ -2805,7 +3253,7 @@ function TextAreaInner({
2805
3253
  },
2806
3254
  className
2807
3255
  );
2808
- const textAreaClassName = (0, import_clsx38.clsx)(
3256
+ const textAreaClassName = (0, import_clsx43.clsx)(
2809
3257
  "w-full border-none bg-uiBackground01 outline-0 placeholder:text-textPlaceholder disabled:text-textPlaceholder",
2810
3258
  {
2811
3259
  "typography-body14regular px-2 py-2": size === "medium",
@@ -2818,7 +3266,7 @@ function TextAreaInner({
2818
3266
  }
2819
3267
  );
2820
3268
  const hasHeight = height != null && String(height).trim().length > 0;
2821
- const textAreaElement = /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
3269
+ const textAreaElement = /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
2822
3270
  "div",
2823
3271
  {
2824
3272
  className: textAreaWrapperClassName,
@@ -2828,7 +3276,7 @@ function TextAreaInner({
2828
3276
  ...!autoHeight && hasHeight ? { height } : {},
2829
3277
  ...autoHeight && hasHeight ? { minHeight: height } : {}
2830
3278
  },
2831
- children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
3279
+ children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
2832
3280
  "textarea",
2833
3281
  {
2834
3282
  ref,
@@ -2843,12 +3291,12 @@ function TextAreaInner({
2843
3291
  )
2844
3292
  }
2845
3293
  );
2846
- const stackedChildren = enhancedChildren == null ? [] : import_react46.Children.toArray(enhancedChildren);
3294
+ const stackedChildren = enhancedChildren == null ? [] : import_react49.Children.toArray(enhancedChildren);
2847
3295
  const hasMessageChildren = stackedChildren.length > 0;
2848
3296
  if (!hasMessageChildren) {
2849
- return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(TextAreaCompoundContext.Provider, { value: contextValue, children: textAreaElement });
3297
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(TextAreaCompoundContext.Provider, { value: contextValue, children: textAreaElement });
2850
3298
  }
2851
- return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(TextAreaCompoundContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: "flex flex-col gap-2", children: [
3299
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(TextAreaCompoundContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "flex flex-col gap-2", children: [
2852
3300
  textAreaElement,
2853
3301
  stackedChildren
2854
3302
  ] }) });
@@ -2859,15 +3307,15 @@ var attachStatics2 = (component) => {
2859
3307
  component.displayName = "TextArea";
2860
3308
  return component;
2861
3309
  };
2862
- var TextAreaBase = (0, import_react46.forwardRef)(function TextAreaBase2(props, ref) {
3310
+ var TextAreaBase = (0, import_react49.forwardRef)(function TextAreaBase2(props, ref) {
2863
3311
  return TextAreaInner(props, ref);
2864
3312
  });
2865
3313
  var TextArea = attachStatics2(TextAreaBase);
2866
3314
 
2867
3315
  // src/toast/toast.tsx
2868
- var import_clsx39 = __toESM(require("clsx"));
2869
- var import_react47 = require("react");
2870
- var import_jsx_runtime56 = require("react/jsx-runtime");
3316
+ var import_clsx44 = __toESM(require("clsx"));
3317
+ var import_react50 = require("react");
3318
+ var import_jsx_runtime61 = require("react/jsx-runtime");
2871
3319
  var CLOSE_TIME_MSEC = 5e3;
2872
3320
  function Toast({
2873
3321
  state = "information",
@@ -2877,8 +3325,8 @@ function Toast({
2877
3325
  children,
2878
3326
  onClickClose
2879
3327
  }) {
2880
- const [isRemoving, setIsRemoving] = (0, import_react47.useState)(false);
2881
- const handleClose = (0, import_react47.useCallback)(() => {
3328
+ const [isRemoving, setIsRemoving] = (0, import_react50.useState)(false);
3329
+ const handleClose = (0, import_react50.useCallback)(() => {
2882
3330
  if (isAnimation) {
2883
3331
  setIsRemoving(true);
2884
3332
  } else {
@@ -2886,17 +3334,17 @@ function Toast({
2886
3334
  }
2887
3335
  }, [isAnimation, onClickClose]);
2888
3336
  const handleAnimationEnd = (e) => window.getComputedStyle(e.currentTarget).opacity === "0" && onClickClose();
2889
- const wrapperClasses = (0, import_clsx39.default)("pointer-events-auto flex items-start gap-1 bg-white p-4 shadow-floatingShadow", {
3337
+ const wrapperClasses = (0, import_clsx44.default)("pointer-events-auto flex items-start gap-1 bg-white p-4 shadow-floatingShadow", {
2890
3338
  ["animate-toast-in"]: isAnimation && !isRemoving,
2891
3339
  ["animate-toast-out opacity-0"]: isAnimation && isRemoving
2892
3340
  });
2893
- const iconClasses = (0, import_clsx39.default)("flex items-center", {
3341
+ const iconClasses = (0, import_clsx44.default)("flex items-center", {
2894
3342
  "fill-supportSuccess": state === "success",
2895
3343
  "fill-supportError": state === "error",
2896
3344
  "fill-supportWarning": state === "warning",
2897
3345
  "fill-supportInfo": state === "information"
2898
3346
  });
2899
- const textClasses = (0, import_clsx39.default)("typography-body13regular flex-1 pt-[3px]", {
3347
+ const textClasses = (0, import_clsx44.default)("typography-body13regular flex-1 pt-[3px]", {
2900
3348
  "text-supportError": state === "error",
2901
3349
  "text-text01": state === "success" || state === "warning" || state === "information"
2902
3350
  });
@@ -2906,7 +3354,7 @@ function Toast({
2906
3354
  warning: "warning",
2907
3355
  information: "information-filled"
2908
3356
  };
2909
- (0, import_react47.useEffect)(() => {
3357
+ (0, import_react50.useEffect)(() => {
2910
3358
  const timer = window.setTimeout(() => {
2911
3359
  if (isAutoClose) {
2912
3360
  setIsRemoving(true);
@@ -2914,45 +3362,45 @@ function Toast({
2914
3362
  }, CLOSE_TIME_MSEC);
2915
3363
  return () => window.clearTimeout(timer);
2916
3364
  }, [isAutoClose]);
2917
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: wrapperClasses, style: { width }, onAnimationEnd: handleAnimationEnd, children: [
2918
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: iconClasses, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(Icon, { name: iconName[state] }) }),
2919
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("p", { className: textClasses, children }),
2920
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(IconButton, { icon: "close", size: "medium", variant: "text", onClick: handleClose, isNoPadding: true })
3365
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: wrapperClasses, style: { width }, onAnimationEnd: handleAnimationEnd, children: [
3366
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: iconClasses, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Icon, { name: iconName[state] }) }),
3367
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("p", { className: textClasses, children }),
3368
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(IconButton, { icon: "close", size: "medium", variant: "text", onClick: handleClose, isNoPadding: true })
2921
3369
  ] });
2922
3370
  }
2923
3371
 
2924
3372
  // src/toast/toast-provider.tsx
2925
- var import_react48 = require("react");
3373
+ var import_react51 = require("react");
2926
3374
  var import_react_dom3 = require("react-dom");
2927
- var import_jsx_runtime57 = require("react/jsx-runtime");
2928
- var ToastContext = (0, import_react48.createContext)({});
3375
+ var import_jsx_runtime62 = require("react/jsx-runtime");
3376
+ var ToastContext = (0, import_react51.createContext)({});
2929
3377
  var ToastProvider = ({ children }) => {
2930
- const [isClientRender, setIsClientRender] = (0, import_react48.useState)(false);
2931
- const [toasts, setToasts] = (0, import_react48.useState)([]);
2932
- const addToast = (0, import_react48.useCallback)(({ message, state }) => {
3378
+ const [isClientRender, setIsClientRender] = (0, import_react51.useState)(false);
3379
+ const [toasts, setToasts] = (0, import_react51.useState)([]);
3380
+ const addToast = (0, import_react51.useCallback)(({ message, state }) => {
2933
3381
  setToasts((prev) => [...prev, { id: Math.trunc(Math.random() * 1e5), message, state }]);
2934
3382
  }, []);
2935
- const removeToast = (0, import_react48.useCallback)((id) => {
3383
+ const removeToast = (0, import_react51.useCallback)((id) => {
2936
3384
  setToasts((prev) => prev.filter((snackbar) => snackbar.id !== id));
2937
3385
  }, []);
2938
- (0, import_react48.useEffect)(() => {
3386
+ (0, import_react51.useEffect)(() => {
2939
3387
  setIsClientRender(true);
2940
3388
  }, []);
2941
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(ToastContext.Provider, { value: { addToast, removeToast }, children: [
3389
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(ToastContext.Provider, { value: { addToast, removeToast }, children: [
2942
3390
  children,
2943
3391
  isClientRender && (0, import_react_dom3.createPortal)(
2944
- /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "pointer-events-none fixed bottom-0 left-0 z-toast mb-4 ml-4 flex w-full flex-col-reverse gap-[16px]", children: toasts.map(({ id, message, state }) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(Toast, { state, isAutoClose: true, isAnimation: true, onClickClose: () => removeToast(id), width: 475, children: message }, id)) }),
3392
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "pointer-events-none fixed bottom-0 left-0 z-toast mb-4 ml-4 flex w-full flex-col-reverse gap-[16px]", children: toasts.map(({ id, message, state }) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Toast, { state, isAutoClose: true, isAnimation: true, onClickClose: () => removeToast(id), width: 475, children: message }, id)) }),
2945
3393
  document.body
2946
3394
  )
2947
3395
  ] });
2948
3396
  };
2949
3397
  var useToast = () => {
2950
- return (0, import_react48.useContext)(ToastContext);
3398
+ return (0, import_react51.useContext)(ToastContext);
2951
3399
  };
2952
3400
 
2953
3401
  // src/toggle/toggle.tsx
2954
- var import_clsx40 = __toESM(require("clsx"));
2955
- var import_jsx_runtime58 = require("react/jsx-runtime");
3402
+ var import_clsx45 = __toESM(require("clsx"));
3403
+ var import_jsx_runtime63 = require("react/jsx-runtime");
2956
3404
  function Toggle({
2957
3405
  id,
2958
3406
  size = "medium",
@@ -2962,7 +3410,7 @@ function Toggle({
2962
3410
  labelPosition = "right",
2963
3411
  isDisabled = false
2964
3412
  }) {
2965
- const baseClasses = (0, import_clsx40.default)("relative flex items-center rounded-full", {
3413
+ const baseClasses = (0, import_clsx45.default)("relative flex items-center rounded-full", {
2966
3414
  "bg-disabledOn": isDisabled && isChecked,
2967
3415
  "bg-disabled01": isDisabled && !isChecked,
2968
3416
  "bg-interactive01 peer-hover:bg-hover01": !isDisabled && isChecked,
@@ -2970,16 +3418,16 @@ function Toggle({
2970
3418
  "w-8 h-4 px-[3px]": size === "small",
2971
3419
  "w-12 h-6 px-1": size === "medium" || size === "large"
2972
3420
  });
2973
- const inputClasses = (0, import_clsx40.default)(
3421
+ const inputClasses = (0, import_clsx45.default)(
2974
3422
  "peer absolute inset-0 z-[1] opacity-0",
2975
3423
  isDisabled ? "cursor-not-allowed" : "cursor-pointer"
2976
3424
  );
2977
- const indicatorClasses = (0, import_clsx40.default)("rounded-full bg-iconOnColor", {
3425
+ const indicatorClasses = (0, import_clsx45.default)("rounded-full bg-iconOnColor", {
2978
3426
  "w-2.5 h-2.5": size === "small",
2979
3427
  "w-4 h-4": size === "medium" || size === "large",
2980
3428
  "ml-auto": isChecked
2981
3429
  });
2982
- const labelClasses = (0, import_clsx40.default)("break-all", {
3430
+ const labelClasses = (0, import_clsx45.default)("break-all", {
2983
3431
  "mr-2": labelPosition === "left",
2984
3432
  "ml-2": labelPosition === "right",
2985
3433
  "typography-label14regular": size === "small" || size === "medium",
@@ -2987,9 +3435,9 @@ function Toggle({
2987
3435
  "pointer-events-none cursor-not-allowed text-disabled01": isDisabled,
2988
3436
  "cursor-pointer text-text01": !isDisabled
2989
3437
  });
2990
- return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "relative flex flex-[0_0_auto] items-center", children: [
2991
- label != null && labelPosition === "left" && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("label", { htmlFor: id, className: labelClasses, children: label }),
2992
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
3438
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { className: "relative flex flex-[0_0_auto] items-center", children: [
3439
+ label != null && labelPosition === "left" && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("label", { htmlFor: id, className: labelClasses, children: label }),
3440
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
2993
3441
  "input",
2994
3442
  {
2995
3443
  className: inputClasses,
@@ -3001,23 +3449,23 @@ function Toggle({
3001
3449
  disabled: isDisabled
3002
3450
  }
3003
3451
  ),
3004
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: baseClasses, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: indicatorClasses }) }),
3005
- label != null && labelPosition === "right" && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("label", { htmlFor: id, className: labelClasses, children: label })
3452
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: baseClasses, children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("span", { className: indicatorClasses }) }),
3453
+ label != null && labelPosition === "right" && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("label", { htmlFor: id, className: labelClasses, children: label })
3006
3454
  ] });
3007
3455
  }
3008
3456
 
3009
3457
  // src/tooltip/tooltip.tsx
3010
- var import_react50 = require("react");
3458
+ var import_react53 = require("react");
3011
3459
  var import_react_dom4 = require("react-dom");
3012
3460
 
3013
3461
  // src/tooltip/tooltip-content.tsx
3014
- var import_clsx42 = __toESM(require("clsx"));
3462
+ var import_clsx47 = __toESM(require("clsx"));
3015
3463
 
3016
3464
  // src/tooltip/tail-icon.tsx
3017
- var import_clsx41 = __toESM(require("clsx"));
3018
- var import_jsx_runtime59 = require("react/jsx-runtime");
3465
+ var import_clsx46 = __toESM(require("clsx"));
3466
+ var import_jsx_runtime64 = require("react/jsx-runtime");
3019
3467
  var TailIcon = (props) => {
3020
- const tailClasses = (0, import_clsx41.default)("absolute fill-uiBackgroundTooltip", {
3468
+ const tailClasses = (0, import_clsx46.default)("absolute fill-uiBackgroundTooltip", {
3021
3469
  "rotate-180": props.verticalPosition === "bottom",
3022
3470
  "rotate-0": props.verticalPosition !== "bottom",
3023
3471
  "-top-1": props.verticalPosition === "bottom" && props.size === "small",
@@ -3032,9 +3480,9 @@ var TailIcon = (props) => {
3032
3480
  "left-1/2 -translate-x-2": props.horizontalAlign === "center" && props.size !== "small"
3033
3481
  });
3034
3482
  if (props.size === "small") {
3035
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("svg", { className: tailClasses, width: "8", height: "4", viewBox: "0 0 8 4", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("path", { d: "M4 4L0 0H8L4 4Z" }) });
3483
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("svg", { className: tailClasses, width: "8", height: "4", viewBox: "0 0 8 4", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("path", { d: "M4 4L0 0H8L4 4Z" }) });
3036
3484
  } else {
3037
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
3485
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
3038
3486
  "svg",
3039
3487
  {
3040
3488
  className: tailClasses,
@@ -3043,14 +3491,14 @@ var TailIcon = (props) => {
3043
3491
  viewBox: "0 0 14 8",
3044
3492
  fill: "none",
3045
3493
  xmlns: "http://www.w3.org/2000/svg",
3046
- children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("path", { d: "M7 8L0 0H14L7 8Z" })
3494
+ children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("path", { d: "M7 8L0 0H14L7 8Z" })
3047
3495
  }
3048
3496
  );
3049
3497
  }
3050
3498
  };
3051
3499
 
3052
3500
  // src/tooltip/tooltip-content.tsx
3053
- var import_jsx_runtime60 = require("react/jsx-runtime");
3501
+ var import_jsx_runtime65 = require("react/jsx-runtime");
3054
3502
  var TooltipContent = ({
3055
3503
  content,
3056
3504
  horizontalAlign,
@@ -3060,7 +3508,7 @@ var TooltipContent = ({
3060
3508
  maxWidth,
3061
3509
  isPortal = false
3062
3510
  }) => {
3063
- const tooltipWrapperClasses = (0, import_clsx42.default)("absolute z-tooltip m-auto flex", {
3511
+ const tooltipWrapperClasses = (0, import_clsx47.default)("absolute z-tooltip m-auto flex", {
3064
3512
  "top-0": !isPortal && verticalPosition === "top",
3065
3513
  "bottom-0": !isPortal && verticalPosition === "bottom",
3066
3514
  "justify-start": horizontalAlign === "left",
@@ -3069,7 +3517,7 @@ var TooltipContent = ({
3069
3517
  "w-[24px]": size === "small",
3070
3518
  "w-[46px]": size !== "small"
3071
3519
  });
3072
- const tooltipBodyClasses = (0, import_clsx42.default)(
3520
+ const tooltipBodyClasses = (0, import_clsx47.default)(
3073
3521
  "absolute z-tooltip inline-block w-max rounded bg-uiBackgroundTooltip text-textOnColor",
3074
3522
  {
3075
3523
  "typography-body12regular": size === "small",
@@ -3086,7 +3534,7 @@ var TooltipContent = ({
3086
3534
  transform: `translate(${tooltipPosition.translateX}, ${tooltipPosition.translateY})`,
3087
3535
  ...tooltipPosition
3088
3536
  } : {};
3089
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: tooltipWrapperClasses, style: tooltipWrapperStyle, children: /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
3537
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: tooltipWrapperClasses, style: tooltipWrapperStyle, children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
3090
3538
  "div",
3091
3539
  {
3092
3540
  className: tooltipBodyClasses,
@@ -3095,16 +3543,16 @@ var TooltipContent = ({
3095
3543
  },
3096
3544
  children: [
3097
3545
  content,
3098
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(TailIcon, { size, verticalPosition, horizontalAlign })
3546
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(TailIcon, { size, verticalPosition, horizontalAlign })
3099
3547
  ]
3100
3548
  }
3101
3549
  ) });
3102
3550
  };
3103
3551
 
3104
3552
  // src/tooltip/tooltip-hook.ts
3105
- var import_react49 = require("react");
3553
+ var import_react52 = require("react");
3106
3554
  var useTooltip = () => {
3107
- const calculatePosition = (0, import_react49.useCallback)(
3555
+ const calculatePosition = (0, import_react52.useCallback)(
3108
3556
  (args) => {
3109
3557
  const result = {
3110
3558
  maxWidth: "none",
@@ -3156,7 +3604,7 @@ var useTooltip = () => {
3156
3604
  };
3157
3605
 
3158
3606
  // src/tooltip/tooltip.tsx
3159
- var import_jsx_runtime61 = require("react/jsx-runtime");
3607
+ var import_jsx_runtime66 = require("react/jsx-runtime");
3160
3608
  function Tooltip({
3161
3609
  children,
3162
3610
  content,
@@ -3168,8 +3616,8 @@ function Tooltip({
3168
3616
  portalTarget
3169
3617
  }) {
3170
3618
  const { calculatePosition } = useTooltip();
3171
- const [isVisible, setIsVisible] = (0, import_react50.useState)(false);
3172
- const [tooltipPosition, setTooltipPosition] = (0, import_react50.useState)({
3619
+ const [isVisible, setIsVisible] = (0, import_react53.useState)(false);
3620
+ const [tooltipPosition, setTooltipPosition] = (0, import_react53.useState)({
3173
3621
  maxWidth: "none",
3174
3622
  width: "auto",
3175
3623
  left: "0px",
@@ -3178,23 +3626,23 @@ function Tooltip({
3178
3626
  translateX: "0",
3179
3627
  translateY: "0"
3180
3628
  });
3181
- const targetRef = (0, import_react50.useRef)(null);
3182
- const handleMouseOverWrapper = (0, import_react50.useCallback)(() => {
3629
+ const targetRef = (0, import_react53.useRef)(null);
3630
+ const handleMouseOverWrapper = (0, import_react53.useCallback)(() => {
3183
3631
  if (isDisabledHover) {
3184
3632
  return;
3185
3633
  }
3186
3634
  setIsVisible(true);
3187
3635
  }, [isDisabledHover]);
3188
- const handleMouseOutWrapper = (0, import_react50.useCallback)(() => {
3636
+ const handleMouseOutWrapper = (0, import_react53.useCallback)(() => {
3189
3637
  setIsVisible(false);
3190
3638
  }, []);
3191
- (0, import_react50.useEffect)(() => {
3639
+ (0, import_react53.useEffect)(() => {
3192
3640
  if (targetRef.current === null) return;
3193
3641
  const dimensions = targetRef.current?.getBoundingClientRect();
3194
3642
  const position = calculatePosition({ dimensions, maxWidth, verticalPosition, horizontalAlign, tooltipSize: size });
3195
3643
  setTooltipPosition(position);
3196
3644
  }, [calculatePosition, horizontalAlign, maxWidth, size, verticalPosition]);
3197
- return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(
3645
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
3198
3646
  "div",
3199
3647
  {
3200
3648
  ref: targetRef,
@@ -3203,7 +3651,7 @@ function Tooltip({
3203
3651
  onMouseLeave: handleMouseOutWrapper,
3204
3652
  children: [
3205
3653
  children,
3206
- isVisible && (portalTarget == null ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
3654
+ isVisible && (portalTarget == null ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
3207
3655
  TooltipContent,
3208
3656
  {
3209
3657
  content,
@@ -3214,7 +3662,7 @@ function Tooltip({
3214
3662
  tooltipPosition
3215
3663
  }
3216
3664
  ) : (0, import_react_dom4.createPortal)(
3217
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
3665
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
3218
3666
  TooltipContent,
3219
3667
  {
3220
3668
  isPortal: true,
@@ -3238,6 +3686,7 @@ function Tooltip({
3238
3686
  Breadcrumb,
3239
3687
  Button,
3240
3688
  Checkbox,
3689
+ DatePicker,
3241
3690
  Dropdown,
3242
3691
  EvaluationStar,
3243
3692
  FileInput,