@team-frieeren/components 1.0.1 → 1.0.3

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/client.d.ts CHANGED
@@ -1,5 +1,8 @@
1
+ import "./style/client.scss";
1
2
  export { useFunnel } from "./components/Funnel";
2
3
  export { safeLocalStorage, safeSessionStorage } from "./shared/storage";
3
4
  export { RouterProvider, useRouter } from "./hooks/useRouter";
4
5
  export { WindowRouter } from "./router/windowRouter";
5
6
  export { useToast, ToastProvider } from "./components/Toast";
7
+ export { Popup } from "./components/Popup";
8
+ export { BottomSheet } from "./components/BottomSheet";
package/dist/client.js CHANGED
@@ -3,6 +3,36 @@ import * as React from 'react';
3
3
  import { Children, isValidElement, useEffect, createContext, useContext, useMemo, useCallback, useState, Fragment as Fragment$1 } from 'react';
4
4
  import cx from 'classnames';
5
5
  import { createPortal } from 'react-dom';
6
+ import { Dialog } from 'radix-ui';
7
+ import { Drawer } from 'vaul';
8
+
9
+ function styleInject(css, ref) {
10
+ if (ref === void 0) ref = {};
11
+ var insertAt = ref.insertAt;
12
+ if (!css || typeof document === 'undefined') {
13
+ return;
14
+ }
15
+ var head = document.head || document.getElementsByTagName('head')[0];
16
+ var style = document.createElement('style');
17
+ style.type = 'text/css';
18
+ if (insertAt === 'top') {
19
+ if (head.firstChild) {
20
+ head.insertBefore(style, head.firstChild);
21
+ } else {
22
+ head.appendChild(style);
23
+ }
24
+ } else {
25
+ head.appendChild(style);
26
+ }
27
+ if (style.styleSheet) {
28
+ style.styleSheet.cssText = css;
29
+ } else {
30
+ style.appendChild(document.createTextNode(css));
31
+ }
32
+ }
33
+
34
+ var css_248z$1 = "@import url(\"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css\");\n/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--seed-palette-color-base-200:#f6f7f9;--seed-palette-color-base-300:#edf0f3;--seed-palette-color-base-400:#e0e5ea;--seed-palette-color-base-500:#c6ccd1;--seed-palette-color-base-600:#a6abaf;--seed-palette-color-base-700:#7b8287;--seed-palette-color-base-900:#25292c;--seed-palette-color-base-1000:#191b1c;--seed-palette-color-blue-100:#f0f9ff;--seed-palette-color-blue-200:#e0f2fe;--seed-palette-color-blue-300:#bae6fd;--seed-palette-color-blue-400:#7dd3fc;--seed-palette-color-blue-500:#38bdf8;--seed-palette-color-blue-600:#0ea5e9;--seed-palette-color-blue-700:#0284c7;--seed-palette-color-blue-800:#0369a1;--seed-palette-color-blue-900:#075985;--seed-palette-color-blue-1000:#0c4a6e;--seed-palette-color-purple-100:#f9fafe;--seed-palette-color-purple-200:#ecedfc;--seed-palette-color-purple-300:#d0d2f7;--seed-palette-color-purple-400:#b5b8f2;--seed-palette-color-purple-500:#9a9eec;--seed-palette-color-purple-600:#7a82e4;--seed-palette-color-purple-700:#6167c9;--seed-palette-color-purple-800:#5756a6;--seed-palette-color-purple-900:#494582;--seed-palette-color-purple-1000:#38325d;--seed-palette-color-red-100:#fef2f2;--seed-palette-color-red-200:#fee2e2;--seed-palette-color-red-300:#fecaca;--seed-palette-color-red-400:#fca5a5;--seed-palette-color-red-500:#f87171;--seed-palette-color-red-600:#ef4444;--seed-palette-color-red-700:#dc2626;--seed-palette-color-red-800:#b91c1c;--seed-palette-color-red-900:#991b1b;--seed-palette-color-red-1000:#7f1d1d;--seed-palette-color-orange-100:#fff7ed;--seed-palette-color-orange-200:#ffedd5;--seed-palette-color-orange-300:#fed7aa;--seed-palette-color-orange-400:#fdba74;--seed-palette-color-orange-500:#fb923c;--seed-palette-color-orange-600:#f97316;--seed-palette-color-orange-700:#ea580c;--seed-palette-color-orange-800:#c2410c;--seed-palette-color-orange-900:#9a3412;--seed-palette-color-orange-1000:#7c2d12;--seed-palette-color-yellow-100:#fefce8;--seed-palette-color-yellow-200:#fef9c3;--seed-palette-color-yellow-300:#fef08a;--seed-palette-color-yellow-400:#fde047;--seed-palette-color-yellow-500:#facc15;--seed-palette-color-yellow-600:#eab308;--seed-palette-color-yellow-700:#ca8a04;--seed-palette-color-yellow-800:#a16207;--seed-palette-color-yellow-900:#854d0e;--seed-palette-color-yellow-1000:#713f12;--seed-palette-color-green-100:#e9ffe9;--seed-palette-color-green-200:#d5ffd5;--seed-palette-color-green-300:#bdffbd;--seed-palette-color-green-400:#89ee89;--seed-palette-color-green-500:#60e060;--seed-palette-color-green-600:#50bf50;--seed-palette-color-green-700:#2fa32f;--seed-palette-color-green-800:#1e861e;--seed-palette-color-green-900:#156015;--seed-palette-color-green-1000:#063f06;--seed-ui-color-text-white:#fff;--seed-ui-color-text-disabled:#c6ccd1;--seed-ui-color-text-lite:#a6abaf;--seed-ui-color-text-dark:#494f54;--seed-ui-color-text-black:#191b1c;--seed-ui-color-background-white:#fff;--seed-ui-color-background-container:#fff;--seed-ui-color-background-gray:#f6f7f9;--seed-ui-color-background-chips:#f6f7f9;--seed-ui-color-background-placeholder:#e0e5ea;--seed-ui-color-background-guide:#e0e5ea;--seed-ui-color-background-focus:#191b1c;--seed-ui-color-icon-white:#fff;--seed-ui-color-icon-lite:#a6abaf;--seed-ui-color-icon-dark:#494f54;--seed-ui-color-icon-black:#191b1c;--seed-ui-color-line-white:#fff;--seed-ui-color-line-lite:#edf0f3;--seed-ui-color-line-medium:#c6ccd1;--seed-ui-color-line-dark:#494f54;--seed-ui-color-line-focus:#25292c;--seed-ui-color-toast-complete:#50bf50;--seed-ui-color-toast-error:#ef4444;--seed-ui-color-toast-caution:#fef08a;--seed-ui-color-misc-black-70:rgba(0,0,0,.7);--seed-ui-color-misc-black-40:rgba(0,0,0,.4);--seed-brand-color-primary:#50bf50;--seed-brand-color-secondary1:#bdffbd;--seed-brand-color-secondary2:#e9ffe9;--seed-brand-color-point1:#ef4444;--seed-brand-color-point2:#f87171;--seed-brand-color-point3:#fb923c;--seed-brand-color-point4:#fef08a;--seed-font-family-head:pretendard;--seed-font-family-title:pretendard;--seed-font-family-body:pretendard;--seed-font-family-paragraph:pretendard;--seed-font-family-caption:pretendard;--seed-font-weight-400:regular;--seed-font-weight-500:medium;--seed-font-weight-700:bold;--seed-font-size-xs:12px;--seed-font-size-s:14px;--seed-font-size-sm:16px;--seed-font-size-md:18px;--seed-font-size-lg:20px;--seed-font-size-xl:22px;--seed-font-size-2xl:24px;--seed-font-size-4xl:32px;--seed-font-size-5xl:40px;--seed-font-size-6xl:48px;--seed-font-size-3xl:28px;--seed-font-line-height-sm:16px;--seed-font-line-height-2xl:24px;--seed-font-line-height-4xl:32px;--seed-font-line-height-5xl:40px;--seed-font-line-height-6xl:48px;--seed-font-line-height-lg:20px;--seed-font-line-height-3xl:28px;--seed-font-line-height-s:14px;--seed-spacing-200:4px;--seed-spacing-400:12px;--seed-spacing-500:16px;--seed-spacing-700:24px;--seed-spacing-800:28px;--seed-spacing-1000:40px;--seed-spacing-1100:48px;--seed-spacing-1200:56px;--seed-spacing-1300:64px;--seed-spacing-1400:72px;--seed-rounding-100:0px;--seed-rounding-200:4px;--seed-rounding-300:8px;--seed-rounding-400:12px;--seed-rounding-500:16px;--seed-rounding-600:20px;--seed-rounding-700:24px;--seed-rounding-800:28px;--seed-rounding-900:32px;--seed-rounding-1000:40px;--seed-rounding-1100:48px;--seed-rounding-1200:56px;--seed-rounding-1300:64px;--seed-rounding-1400:72px}.popup{animation:popup-content-show .15s cubic-bezier(.16,1,.3,1);background-color:var(--seed-ui-color-background-white);border-radius:16px;box-shadow:0 4px 16px 0 hsla(0,0%,43%,.07);left:50%;max-height:85vh;max-width:450px;overflow-y:auto;padding:24px 16px;position:fixed;top:50%;transform:translate(-50%,-50%);width:100%}.popup:focus{outline:none}.popup--actions{display:flex;gap:8px;justify-content:flex-end;margin-top:24px}.popup--actions>*{flex:1}.popup--actions-typeB{display:flex;gap:8px;justify-content:space-between}.popup--actions-left{flex:0 0 auto;min-width:76px}.popup--actions-right{flex:1 1 auto}@keyframes popup-overlay-show{0%{opacity:0}to{opacity:1}}@keyframes popup-content-show{0%{opacity:0;transform:translate(-50%,-48%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.visually-hidden{clip:rect(0 0 0 0);word-wrap:normal;border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}:root{--seed-palette-color-base-100:#fff;--seed-palette-color-base-800:#494f54;--seed-spacing-100:0px;--seed-spacing-300:8px;--seed-spacing-600:20px;--seed-spacing-900:32px}.overlay{background-color:rgba(0,0,0,.4);inset:0;position:fixed}.drawer-content{background-color:#fff;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;bottom:0;height:fit-content;left:0;max-height:calc(100dvh - 32px);outline:none;overflow-y:hidden;position:fixed;right:0}.drawer-content-inner{-webkit-overflow-scrolling:touch;max-height:calc(100dvh - 68px);overflow-y:auto}.bottomsheet-container--radius-none{border-top:var(--seed-spacing-100)}.bottomsheet-container--radius-small{border-radius:var(--seed-spacing-300)}.bottomsheet-container--radius-medium{border-radius:var(--seed-spacing-700)}.bottomsheet-container--radius-large{border-radius:var(--seed-spacing-900)}.bottomsheet-container--theme-light{background-color:var(--seed-palette-color-base-100)}.bottomsheet-container--theme-dark{background-color:var(--seed-palette-color-base-800)}.drawer-handle{height:36px;width:100%}@keyframes toast-enter-top{0%{opacity:.5;transform:translate3d(0,-200%,0) scale(.6)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes toast-exit-top{0%{opacity:1;transform:translateZ(-1px) scale(1)}to{opacity:0;transform:translate3d(0,-150%,-1px) scale(.6)}}@keyframes toast-enter-bottom{0%{opacity:.5;transform:translate3d(0,200%,0) scale(.6)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes toast-exit-bottom{0%{opacity:1;transform:translateZ(-1px) scale(1)}to{opacity:0;transform:translate3d(0,150%,-1px) scale(.6)}}@keyframes toast-fade-in{0%{opacity:0}to{opacity:1}}@keyframes toast-fade-out{0%{opacity:1}to{opacity:0}}.toast--content{align-items:center;background:var(--seed-ui-color-misc-black-70);border-radius:var(--seed-rounding-300);box-shadow:0 3px 10px rgba(0,0,0,.1),0 3px 3px rgba(0,0,0,.05);box-sizing:border-box;color:#363636;display:flex;gap:var(--seed-spacing-600);justify-content:space-between;min-height:56px;opacity:0;padding:var(--seed-spacing-500);pointer-events:auto;position:relative;transition:transform .23s cubic-bezier(.21,1.02,.73,1);will-change:transform}.toast--content.top.visible{animation:toast-enter-top .35s cubic-bezier(.21,1.02,.73,1) forwards}.toast--content.top.hidden{animation:toast-exit-top .4s cubic-bezier(.06,.71,.55,1) forwards}.toast--content.bottom.visible{animation:toast-enter-bottom .35s cubic-bezier(.21,1.02,.73,1) forwards}.toast--content.bottom.hidden{animation:toast-exit-bottom .4s cubic-bezier(.06,.71,.55,1) forwards}@media (prefers-reduced-motion:reduce){.toast--content.visible{animation:toast-fade-in .35s ease-in forwards}.toast--content.hidden{animation:toast-fade-out .4s ease-out forwards}}.toast--type-message{gap:var(--seed-spacing-300)}.toast--type-icon,.toast--type-message{align-items:center;display:flex}.toast--type-icon[data-toast-type=default]{display:none}.toast--message{color:var(--seed-ui-color-text-white);font-size:var(--seed-font-size-s);font-weight:var(--seed-font-weight-400);line-height:var(--seed-font-line-height-sm)}.toast--action-link{text-decoration:underline;text-underline-offset:2px}.toast--action-button,.toast--action-link{color:var(--seed-ui-color-text-white);cursor:pointer;flex-shrink:0;font-size:var(--seed-font-size-xs);font-weight:var(--seed-font-weight-400)}.toast--action-button{align-items:center;background-color:var(--seed-brand-color-primary);border-radius:var(--seed-rounding-400);display:flex;justify-content:center;padding:var(--seed-spacing-200) var(--seed-spacing-300)}.toaster-content{bottom:0;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:9999}.toast-wrapper{position:absolute}.toast-wrapper>*{transition:all .23s cubic-bezier(.21,1.02,.73,1)}.toast-wrapper.toast-wrapper--top-right{right:0}.toast-wrapper.toast-wrapper--top-left{left:0}.toast-wrapper.toast-wrapper--top-center{left:50%}.toast-wrapper.toast-wrapper--bottom-right{bottom:0;right:0}.toast-wrapper.toast-wrapper--bottom-left{bottom:0;left:0}.toast-wrapper.toast-wrapper--bottom-center{bottom:0;left:50%}";
35
+ styleInject(css_248z$1);
6
36
 
7
37
  var _assign = function __assign() {
8
38
  _assign = Object.assign || function __assign(t) {
@@ -630,4 +660,225 @@ var useToast = function useToast() {
630
660
  return context;
631
661
  };
632
662
 
633
- export { RouterProvider, ToastProvider, WindowRouter, safeLocalStorage, safeSessionStorage, useFunnel, useRouter, useToast };
663
+ var css_248z = ".popup{animation:popup-content-show .15s cubic-bezier(.16,1,.3,1);background-color:var(--seed-ui-color-background-white);border-radius:16px;box-shadow:0 4px 16px 0 hsla(0,0%,43%,.07);left:50%;max-height:85vh;max-width:450px;overflow-y:auto;padding:24px 16px;position:fixed;top:50%;transform:translate(-50%,-50%);width:100%}.popup:focus{outline:none}.popup--actions{display:flex;gap:8px;justify-content:flex-end;margin-top:24px}.popup--actions>*{flex:1}.popup--actions-typeB{display:flex;gap:8px;justify-content:space-between}.popup--actions-left{flex:0 0 auto;min-width:76px}.popup--actions-right{flex:1 1 auto}@keyframes popup-overlay-show{0%{opacity:0}to{opacity:1}}@keyframes popup-content-show{0%{opacity:0;transform:translate(-50%,-48%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.visually-hidden{clip:rect(0 0 0 0);word-wrap:normal;border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}";
664
+ styleInject(css_248z);
665
+
666
+ var Popup = function Popup(props) {
667
+ var _a;
668
+ var className = props.className,
669
+ children = props.children,
670
+ buttonLayoutType = props.buttonLayoutType,
671
+ container = props.container,
672
+ title = props.title,
673
+ description = props.description,
674
+ onClose = props.onClose,
675
+ rest = __rest(props, ["className", "children", "buttonLayoutType", "container", "title", "description", "onClose"]);
676
+ return jsx(Dialog.Root, _assign({}, rest, {
677
+ defaultOpen: true,
678
+ children: jsxs(Dialog.Portal, {
679
+ container: container || document.body,
680
+ children: [jsx(Dialog.Overlay, {
681
+ className: "popup--overlay",
682
+ onClick: onClose
683
+ }), jsxs(Dialog.Content, {
684
+ "data-frieeren-component": "Popup",
685
+ className: cx("popup", (_a = {}, _a["popup--layout-".concat(buttonLayoutType)] = buttonLayoutType, _a), className),
686
+ children: [jsx(Dialog.Title, {
687
+ className: "visually-hidden",
688
+ children: title || "Popup"
689
+ }), jsx(Dialog.Description, {
690
+ className: "visually-hidden",
691
+ children: description || "Popup"
692
+ }), jsx("div", {
693
+ className: "popup--body",
694
+ children: children
695
+ }), buttonLayoutType === "typeA" && "button" in props && props.button && jsx("div", {
696
+ className: "popup--actions",
697
+ children: props.button
698
+ }), buttonLayoutType === "typeB" && "leftButton" in props && "rightButton" in props && jsxs("div", {
699
+ className: "popup--actions popup--actions-typeB",
700
+ children: [jsx("div", {
701
+ className: "popup--actions-left",
702
+ children: props.leftButton
703
+ }), jsx("div", {
704
+ className: "popup--actions-right",
705
+ children: props.rightButton
706
+ })]
707
+ })]
708
+ })]
709
+ })
710
+ }));
711
+ };
712
+
713
+ var SpacingMap = {
714
+ m: ["margin"],
715
+ mx: ["marginLeft", "marginRight"],
716
+ my: ["marginTop", "marginBottom"],
717
+ mt: ["marginTop"],
718
+ mb: ["marginBottom"],
719
+ ml: ["marginLeft"],
720
+ mr: ["marginRight"],
721
+ p: ["padding"],
722
+ px: ["paddingLeft", "paddingRight"],
723
+ py: ["paddingTop", "paddingBottom"],
724
+ pt: ["paddingTop"],
725
+ pb: ["paddingBottom"],
726
+ pl: ["paddingLeft"],
727
+ pr: ["paddingRight"]
728
+ };
729
+ var getSpacingStyle = function getSpacingStyle(props) {
730
+ var style = {};
731
+ Object.entries(props).forEach(function (_a) {
732
+ var key = _a[0],
733
+ value = _a[1];
734
+ if (value === undefined) return;
735
+ var properties = SpacingMap[key];
736
+ properties.forEach(function (property) {
737
+ style[property] = value;
738
+ });
739
+ });
740
+ return style;
741
+ };
742
+
743
+ function Box(_a) {
744
+ var _b = _a.as,
745
+ Component = _b === void 0 ? "div" : _b,
746
+ className = _a.className,
747
+ style = _a.style,
748
+ width = _a.width,
749
+ height = _a.height,
750
+ _c = _a.display,
751
+ display = _c === void 0 ? "inline-block" : _c,
752
+ children = _a.children,
753
+ rest = __rest(_a, ["as", "className", "style", "width", "height", "display", "children"]);
754
+ var m = rest.m,
755
+ mt = rest.mt,
756
+ mb = rest.mb,
757
+ ml = rest.ml,
758
+ mr = rest.mr,
759
+ mx = rest.mx,
760
+ my = rest.my,
761
+ p = rest.p,
762
+ pt = rest.pt,
763
+ pb = rest.pb,
764
+ pl = rest.pl,
765
+ pr = rest.pr,
766
+ px = rest.px,
767
+ py = rest.py,
768
+ props = __rest(rest, ["m", "mt", "mb", "ml", "mr", "mx", "my", "p", "pt", "pb", "pl", "pr", "px", "py"]);
769
+ var spacingStyle = getSpacingStyle({
770
+ m: m,
771
+ mt: mt,
772
+ mb: mb,
773
+ ml: ml,
774
+ mr: mr,
775
+ mx: mx,
776
+ my: my,
777
+ p: p,
778
+ pt: pt,
779
+ pb: pb,
780
+ pl: pl,
781
+ pr: pr,
782
+ px: px,
783
+ py: py
784
+ });
785
+ return jsx(Component, _assign({
786
+ "data-frieeren-component": "Box",
787
+ className: cx("box", className),
788
+ style: _assign(_assign({
789
+ width: width,
790
+ height: height,
791
+ display: display
792
+ }, spacingStyle), style)
793
+ }, props, {
794
+ children: children
795
+ }));
796
+ }
797
+
798
+ function Flex(_a) {
799
+ var _b = _a.as,
800
+ Component = _b === void 0 ? "div" : _b,
801
+ align = _a.align,
802
+ justify = _a.justify,
803
+ flex = _a.flex,
804
+ direction = _a.direction,
805
+ wrap = _a.wrap,
806
+ gap = _a.gap,
807
+ className = _a.className,
808
+ style = _a.style,
809
+ rest = __rest(_a, ["as", "align", "justify", "flex", "direction", "wrap", "gap", "className", "style"]);
810
+ return jsx(Box, _assign({
811
+ "data-frieeren-component": "Flex",
812
+ as: Component,
813
+ className: cx("flex", className),
814
+ style: _assign({
815
+ display: "flex",
816
+ alignItems: align,
817
+ justifyContent: justify,
818
+ flex: flex,
819
+ flexDirection: direction,
820
+ flexWrap: wrap,
821
+ gap: gap
822
+ }, style)
823
+ }, rest));
824
+ }
825
+
826
+ var BottomSheet = function BottomSheet(_a) {
827
+ var _b;
828
+ var open = _a.open,
829
+ onClose = _a.onClose,
830
+ _c = _a.locked,
831
+ locked = _c === void 0 ? true : _c,
832
+ _d = _a.showHandle,
833
+ showHandle = _d === void 0 ? true : _d,
834
+ _e = _a.handleOnly,
835
+ handleOnly = _e === void 0 ? false : _e,
836
+ radius = _a.radius,
837
+ _f = _a.theme,
838
+ theme = _f === void 0 ? "light" : _f,
839
+ _g = _a.zIndex,
840
+ zIndex = _g === void 0 ? 1 : _g,
841
+ className = _a.className,
842
+ children = _a.children;
843
+ return jsx(Drawer.Root, {
844
+ open: open,
845
+ onClose: onClose,
846
+ modal: locked,
847
+ handleOnly: handleOnly,
848
+ children: jsxs(Drawer.Portal, {
849
+ children: [jsx(Drawer.Overlay, {
850
+ className: "overlay",
851
+ "data-frieeren-component": "BottomSheetOverlay",
852
+ style: {
853
+ zIndex: zIndex
854
+ }
855
+ }), jsxs(Drawer.Content, {
856
+ className: cx("drawer-content", (_b = {}, _b["bottomsheet-container--radius-".concat(radius)] = radius, _b["bottomsheet-container--theme-".concat(theme)] = theme, _b), className),
857
+ "data-frieeren-component": "BottomSheet",
858
+ style: {
859
+ zIndex: zIndex
860
+ },
861
+ children: [jsx(SwitchCase, {
862
+ value: String(showHandle),
863
+ caseBy: {
864
+ "true": jsx(Flex, {
865
+ className: "drawer-handle",
866
+ align: "center",
867
+ justify: "center",
868
+ children: jsx(Drawer.Handle, {
869
+ style: {
870
+ width: 36
871
+ }
872
+ })
873
+ })
874
+ }
875
+ }), jsx("div", {
876
+ className: "drawer-content-inner",
877
+ children: children
878
+ })]
879
+ })]
880
+ })
881
+ });
882
+ };
883
+
884
+ export { BottomSheet, Popup, RouterProvider, ToastProvider, WindowRouter, safeLocalStorage, safeSessionStorage, useFunnel, useRouter, useToast };
package/dist/index.css CHANGED
@@ -1669,75 +1669,6 @@ button {
1669
1669
  .toggle-thumb[data-state=checked] {
1670
1670
  transform: translateX(26px);
1671
1671
  }
1672
- .popup {
1673
- background-color: var(--seed-ui-color-background-white);
1674
- border-radius: 16px;
1675
- box-shadow: 0px 4px 16px 0px rgba(109, 109, 109, 0.07);
1676
- position: fixed;
1677
- top: 50%;
1678
- left: 50%;
1679
- transform: translate(-50%, -50%);
1680
- width: 100%;
1681
- max-width: 450px;
1682
- max-height: 85vh;
1683
- padding: 24px 16px;
1684
- animation: popup-content-show 150ms cubic-bezier(0.16, 1, 0.3, 1);
1685
- overflow-y: auto;
1686
- }
1687
- .popup:focus {
1688
- outline: none;
1689
- }
1690
- .popup--actions {
1691
- display: flex;
1692
- justify-content: flex-end;
1693
- gap: 8px;
1694
- margin-top: 24px;
1695
- }
1696
- .popup--actions > * {
1697
- flex: 1;
1698
- }
1699
- .popup--actions-typeB {
1700
- display: flex;
1701
- justify-content: space-between;
1702
- gap: 8px;
1703
- }
1704
- .popup--actions-left {
1705
- min-width: 76px;
1706
- flex: 0 0 auto;
1707
- }
1708
- .popup--actions-right {
1709
- flex: 1 1 auto;
1710
- }
1711
- @keyframes popup-overlay-show {
1712
- from {
1713
- opacity: 0;
1714
- }
1715
- to {
1716
- opacity: 1;
1717
- }
1718
- }
1719
- @keyframes popup-content-show {
1720
- from {
1721
- opacity: 0;
1722
- transform: translate(-50%, -48%) scale(0.96);
1723
- }
1724
- to {
1725
- opacity: 1;
1726
- transform: translate(-50%, -50%) scale(1);
1727
- }
1728
- }
1729
- .visually-hidden {
1730
- border: 0;
1731
- clip: rect(0 0 0 0);
1732
- height: 1px;
1733
- margin: -1px;
1734
- overflow: hidden;
1735
- padding: 0;
1736
- position: absolute;
1737
- width: 1px;
1738
- white-space: nowrap;
1739
- word-wrap: normal;
1740
- }
1741
1672
  @charset "UTF-8";
1742
1673
  :root {
1743
1674
  --input-transition: 0.2s ease-in-out;
package/dist/index.d.ts CHANGED
@@ -9,7 +9,5 @@ export { RadioGroup } from "./components/RadioGroup";
9
9
  export { Checkbox } from "./components/Checkbox";
10
10
  export { Toggle } from "./components/Toggle";
11
11
  export { Select } from "./components/Select";
12
- export { Popup } from "./components/Popup";
13
- export { BottomSheet } from "./components/BottomSheet";
14
12
  export { Input } from "./components/Input";
15
13
  export { Tabs } from "./components/Tabs";
package/dist/index.js CHANGED
@@ -4,11 +4,38 @@ import * as React from 'react';
4
4
  import { forwardRef, useState, useCallback, useEffect, useRef } from 'react';
5
5
  import * as RadioGroupBase from '@radix-ui/react-radio-group';
6
6
  import * as CheckboxBase from '@radix-ui/react-checkbox';
7
- import { Switch, Dialog } from 'radix-ui';
7
+ import { Switch } from 'radix-ui';
8
8
  import * as SelectBase from '@radix-ui/react-select';
9
- import { Drawer } from 'vaul';
10
9
  import * as TabsBase from '@radix-ui/react-tabs';
11
10
 
11
+ function styleInject(css, ref) {
12
+ if (ref === void 0) ref = {};
13
+ var insertAt = ref.insertAt;
14
+ if (!css || typeof document === 'undefined') {
15
+ return;
16
+ }
17
+ var head = document.head || document.getElementsByTagName('head')[0];
18
+ var style = document.createElement('style');
19
+ style.type = 'text/css';
20
+ if (insertAt === 'top') {
21
+ if (head.firstChild) {
22
+ head.insertBefore(style, head.firstChild);
23
+ } else {
24
+ head.appendChild(style);
25
+ }
26
+ } else {
27
+ head.appendChild(style);
28
+ }
29
+ if (style.styleSheet) {
30
+ style.styleSheet.cssText = css;
31
+ } else {
32
+ style.appendChild(document.createTextNode(css));
33
+ }
34
+ }
35
+
36
+ var css_248z$3 = "@charset \"UTF-8\";@import url(\"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css\");\n/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}:root{--seed-palette-color-base-200:#f6f7f9;--seed-palette-color-base-300:#edf0f3;--seed-palette-color-base-400:#e0e5ea;--seed-palette-color-base-600:#a6abaf;--seed-palette-color-base-700:#7b8287;--seed-palette-color-blue-100:#f0f9ff;--seed-palette-color-blue-300:#bae6fd;--seed-palette-color-blue-400:#7dd3fc;--seed-palette-color-blue-500:#38bdf8;--seed-palette-color-blue-600:#0ea5e9;--seed-palette-color-blue-700:#0284c7;--seed-palette-color-blue-900:#075985;--seed-palette-color-purple-100:#f9fafe;--seed-palette-color-purple-200:#ecedfc;--seed-palette-color-purple-300:#d0d2f7;--seed-palette-color-purple-400:#b5b8f2;--seed-palette-color-purple-500:#9a9eec;--seed-palette-color-purple-600:#7a82e4;--seed-palette-color-purple-700:#6167c9;--seed-palette-color-purple-800:#5756a6;--seed-palette-color-purple-900:#494582;--seed-palette-color-purple-1000:#38325d;--seed-palette-color-red-100:#fef2f2;--seed-palette-color-red-200:#fee2e2;--seed-palette-color-red-300:#fecaca;--seed-palette-color-red-400:#fca5a5;--seed-palette-color-red-500:#f87171;--seed-palette-color-red-600:#ef4444;--seed-palette-color-red-700:#dc2626;--seed-palette-color-red-800:#b91c1c;--seed-palette-color-red-900:#991b1b;--seed-palette-color-red-1000:#7f1d1d;--seed-palette-color-orange-100:#fff7ed;--seed-palette-color-orange-200:#ffedd5;--seed-palette-color-orange-300:#fed7aa;--seed-palette-color-orange-400:#fdba74;--seed-palette-color-orange-500:#fb923c;--seed-palette-color-orange-600:#f97316;--seed-palette-color-orange-700:#ea580c;--seed-palette-color-orange-800:#c2410c;--seed-palette-color-orange-900:#9a3412;--seed-palette-color-orange-1000:#7c2d12;--seed-palette-color-yellow-100:#fefce8;--seed-palette-color-yellow-200:#fef9c3;--seed-palette-color-yellow-300:#fef08a;--seed-palette-color-yellow-400:#fde047;--seed-palette-color-yellow-500:#facc15;--seed-palette-color-yellow-600:#eab308;--seed-palette-color-yellow-700:#ca8a04;--seed-palette-color-yellow-800:#a16207;--seed-palette-color-yellow-900:#854d0e;--seed-palette-color-yellow-1000:#713f12;--seed-palette-color-green-100:#e9ffe9;--seed-palette-color-green-200:#d5ffd5;--seed-palette-color-green-300:#bdffbd;--seed-palette-color-green-400:#89ee89;--seed-palette-color-green-500:#60e060;--seed-palette-color-green-600:#50bf50;--seed-palette-color-green-700:#2fa32f;--seed-palette-color-green-800:#1e861e;--seed-palette-color-green-900:#156015;--seed-palette-color-green-1000:#063f06;--seed-ui-color-text-white:#fff;--seed-ui-color-text-disabled:#c6ccd1;--seed-ui-color-text-lite:#a6abaf;--seed-ui-color-text-dark:#494f54;--seed-ui-color-text-black:#191b1c;--seed-ui-color-background-white:#fff;--seed-ui-color-background-container:#fff;--seed-ui-color-background-gray:#f6f7f9;--seed-ui-color-background-chips:#f6f7f9;--seed-ui-color-background-placeholder:#e0e5ea;--seed-ui-color-background-guide:#e0e5ea;--seed-ui-color-background-focus:#191b1c;--seed-ui-color-icon-white:#fff;--seed-ui-color-icon-lite:#a6abaf;--seed-ui-color-icon-dark:#494f54;--seed-ui-color-icon-black:#191b1c;--seed-ui-color-line-white:#fff;--seed-ui-color-line-lite:#edf0f3;--seed-ui-color-line-medium:#c6ccd1;--seed-ui-color-line-dark:#494f54;--seed-ui-color-line-focus:#25292c;--seed-ui-color-toast-complete:#50bf50;--seed-ui-color-toast-error:#ef4444;--seed-ui-color-toast-caution:#fef08a;--seed-ui-color-misc-black-70:rgba(0,0,0,.7);--seed-ui-color-misc-black-40:rgba(0,0,0,.4);--seed-brand-color-primary:#50bf50;--seed-brand-color-secondary1:#bdffbd;--seed-brand-color-secondary2:#e9ffe9;--seed-brand-color-point1:#ef4444;--seed-brand-color-point2:#f87171;--seed-brand-color-point3:#fb923c;--seed-brand-color-point4:#fef08a;--seed-font-family-head:pretendard;--seed-font-family-title:pretendard;--seed-font-family-body:pretendard;--seed-font-family-paragraph:pretendard;--seed-font-family-caption:pretendard;--seed-font-weight-400:regular;--seed-font-weight-500:medium;--seed-font-weight-700:bold;--seed-font-size-xs:12px;--seed-font-size-s:14px;--seed-font-size-sm:16px;--seed-font-size-md:18px;--seed-font-size-lg:20px;--seed-font-size-xl:22px;--seed-font-size-2xl:24px;--seed-font-size-4xl:32px;--seed-font-size-5xl:40px;--seed-font-size-6xl:48px;--seed-font-size-3xl:28px;--seed-font-line-height-sm:16px;--seed-font-line-height-2xl:24px;--seed-font-line-height-4xl:32px;--seed-font-line-height-5xl:40px;--seed-font-line-height-6xl:48px;--seed-font-line-height-lg:20px;--seed-font-line-height-3xl:28px;--seed-font-line-height-s:14px;--seed-spacing-200:4px;--seed-spacing-400:12px;--seed-spacing-500:16px;--seed-spacing-700:24px;--seed-spacing-800:28px;--seed-spacing-1000:40px;--seed-spacing-1100:48px;--seed-spacing-1200:56px;--seed-spacing-1300:64px;--seed-spacing-1400:72px;--seed-rounding-100:0px;--seed-rounding-200:4px;--seed-rounding-300:8px;--seed-rounding-400:12px;--seed-rounding-500:16px;--seed-rounding-600:20px;--seed-rounding-700:24px;--seed-rounding-800:28px;--seed-rounding-900:32px;--seed-rounding-1000:40px;--seed-rounding-1100:48px;--seed-rounding-1200:56px;--seed-rounding-1300:64px;--seed-rounding-1400:72px}.box{box-sizing:border-box}:root{--button-loading-dot-delay:0.2s;--button-loading-dot-duration:1.4s}.button{border:none;border-radius:var(--seed-spacing-300);box-sizing:border-box;cursor:pointer;font-weight:500;position:relative;transition:all .2s ease-in-out}.button:disabled{cursor:not-allowed}.button.button--loading{cursor:wait}.button--size-lg{font-size:16px;gap:var(--seed-spacing-300);height:52px;padding:var(--seed-spacing-500) var(--seed-spacing-700)}.button--size-lg>.button--content span{height:20px}.button--size-md{font-size:14px;gap:var(--seed-spacing-300);height:48px;padding:var(--seed-spacing-300) var(--seed-spacing-400)}.button--size-md>.button--content span{height:20px}.button--type-solid-green{background-color:var(--seed-brand-color-primary);color:var(--seed-ui-color-line-white)}.button--type-solid-green:active:not(:disabled),.button--type-solid-green:hover:not(:disabled){background-color:var(--seed-palette-color-green-700)}.button--type-solid-green.disabled{background-color:var(--seed-ui-color-background-guide);border-color:var(--seed-ui-color-background-guide);color:var(--seed-ui-color-text-disabled)}.button--type-solid-red{background-color:var(--seed-brand-color-point2);color:var(--seed-ui-color-line-white)}.button--type-solid-red:active:not(:disabled),.button--type-solid-red:hover:not(:disabled){background-color:var(--seed-palette-color-red-600)}.button--type-solid-red.disabled{background-color:var(--seed-ui-color-background-guide);border-color:var(--seed-ui-color-background-guide);color:var(--seed-ui-color-text-disabled)}.button--type-outline-green{background-color:var(--seed-ui-color-background-container);border:1px solid var(--seed-brand-color-primary);color:var(--seed-brand-color-primary)}.button--type-outline-green:active:not(:disabled),.button--type-outline-green:hover:not(:disabled){background-color:var(--seed-brand-color-secondary2)}.button--type-outline-green.disabled{background-color:var(--seed-ui-color-background-white);border-color:var(---seed-ui-color-line-lite);color:var(--seed-ui-color-text-disabled)}.button--type-outline-gray{background-color:var(--seed-ui-color-background-white);border:1px solid var(--seed-ui-color-line-dark);color:var(--seed-ui-color-text-black)}.button--type-outline-gray:active:not(:disabled),.button--type-outline-gray:hover:not(:disabled){background-color:var(--seed-ui-color-background-gray)}.button--type-outline-gray.disabled{background-color:var(--seed-ui-color-background-white);border-color:var(---seed-ui-color-line-lite);color:var(--seed-ui-color-text-disabled)}.button--type-text-none{background-color:transparent;color:var(--seed-ui-color-text-black)}.button--type-text-none:active:not(:disabled),.button--type-text-none:hover:not(:disabled){color:var(--seed-ui-color-text-lite)}.button--type-text-none.disabled{color:var(--seed-ui-color-text-disabled)}.button--display-inline{display:inline-flex}.button--display-block{display:flex}.button--content,.button--display-full{display:flex;width:100%}.button--content{align-items:center;flex-direction:row;justify-content:center;opacity:1;transition:opacity .2s}.button--content.button--content--hidden{opacity:0}.button--loading{align-items:center;display:flex;gap:12px;justify-content:center;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.button--loading-dot{animation:loadingDot var(--button-loading-dot-duration) infinite;background-color:currentColor;border-radius:50%;height:8px;opacity:0;width:8px}.button--loading-dot:nth-child(2){animation-delay:var(--button-loading-dot-delay)}.button--loading-dot:nth-child(3){animation-delay:calc(var(--button-loading-dot-delay)*2)}@keyframes loadingDot{0%,20%{opacity:0;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}80%,to{opacity:0;transform:translateY(0)}}:root{--font-weight-regular:400;--font-weight-medium:500;--font-weight-bold:700;--font-size-heading:24px;--font-size-body:16px;--font-size-text:14px;--line-height-default:1.4;--font-display-block:block;--font-display-inline-block:inline-block;--font-display-inline:inline;--font-display-flex:flex;--font-display-inline-flex:inline-flex;--font-display-none:none}.text{box-sizing:border-box}.text--font-weight-regular{font-weight:var(--font-weight-regular)}.text--font-weight-medium{font-weight:var(--font-weight-medium)}.text--font-weight-bold{font-weight:var(--font-weight-bold)}.text--typography-heading{font-size:var(--font-size-heading);line-height:var(--line-height-default)}.text--typography-body{font-size:var(--font-size-body);line-height:var(--line-height-default)}.text--typography-text{font-size:var(--font-size-text);line-height:var(--line-height-default)}.text--single-line{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text--multi-line{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.text--display-block{display:var(--font-display-block)}.text--display-inline-block{display:var(--font-display-inline-block)}.text--display-inline{display:var(--font-display-inline)}.text--display-flex{display:var(--font-display-flex)}.text--display-inline-flex{display:var(--font-display-inline-flex)}.text--display-none{display:var(--font-display-none)}:root{--seed-palette-color-base-900:#25292c;--seed-spacing-100:0px;--seed-spacing-300:8px;--seed-spacing-600:20px;--seed-spacing-900:32px}.overlay{animation:overlayShow .25s cubic-bezier(.3,0,0,1);background-color:rgba(0,0,0,.4);inset:0;position:fixed}.dialog-content{animation:contentShow .3s cubic-bezier(.3,0,0,1);background-color:#fff;border-radius:6px;box-shadow:0 10px 38px -10px rgba(14,18,22,.35),0 10px 20px -15px rgba(14,18,22,.2);left:50%;max-height:85vh;max-width:450px;padding:25px;position:fixed;top:50%;transform:translate(-50%,-50%);width:90vw}.dialog-handle{margin-top:10px;width:45px}@keyframes overlayShow{0%{opacity:0}to{opacity:1}}@keyframes contentShow{0%{opacity:0;transform:translate(-50%,-48%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.dialog-content--theme-light{background-color:var(--seed-palette-color-base-100)}.dialog-content--theme-dark{background-color:var(--seed-palette-color-base-900)}.dialog-content--radius-none{border-radius:var(--seed-spacing-100)}.dialog-content--radius-small{border-radius:var(--seed-spacing-300)}.dialog-content--radius-medium{border-radius:var(--seed-spacing-600)}.dialog-content--radius-large{border-radius:var(--seed-spacing-900)}.popover-content{animation-duration:.4s;animation-timing-function:cubic-bezier(.16,1,.3,1);background-color:#fff;border-radius:4px;box-shadow:0 10px 38px -10px rgba(14,18,22,.35),0 10px 20px -15px rgba(14,18,22,.2);padding:20px;width:260px;will-change:transform,opacity}:root{--seed-palette-color-base-100:#fff;--seed-palette-color-base-500:#c6ccd1;--seed-palette-color-base-800:#494f54;--seed-palette-color-base-1000:#191b1c;--seed-palette-color-blue-200:#e0f2fe;--seed-palette-color-blue-800:#0369a1;--seed-palette-color-blue-1000:#0c4a6e}button{all:unset}.SelectTrigger{align-items:center;background-color:#fff;border-radius:4px;box-shadow:0 2px 10px var(--seed-palette-color-base-1000);color:var(--seed-palette-color-base-1000);display:inline-flex;font-size:13px;gap:5px;height:35px;justify-content:center;line-height:1;padding:0 15px}.SelectTrigger:hover{background-color:var(--seed-palette-color-blue-200)}.SelectTrigger:focus{box-shadow:0 0 0 2px #000}.SelectTrigger[data-placeholder]{color:var(--seed-palette-color-base-800)}.SelectIcon{color:var(--seed-palette-color-base-1000)}.SelectContent{background-color:#fff;border-radius:6px;box-shadow:0 10px 38px -10px rgba(22,23,24,.35),0 10px 20px -15px rgba(22,23,24,.2);overflow:hidden}.SelectViewport{padding:5px}.SelectItem{align-items:center;border-radius:3px;color:var(--seed-palette-color-base-1000);display:flex;font-size:13px;height:25px;line-height:1;padding:0 35px 0 25px;position:relative;user-select:none}.SelectItem[data-disabled]{color:var(--seed-palette-color-blue-800);pointer-events:none}.SelectItem[data-highlighted]{background-color:var(--seed-palette-color-base-800);color:var(--seed-color-violet-1);outline:none}.SelectLabel{color:var(--seed-palette-color-blue-1000);font-size:12px;line-height:25px;padding:0 25px}.SelectSeparator{background-color:var(--seed-palette-color-base-500);height:1px;margin:5px}.SelectItemIndicator{display:inline-flex;left:0;position:absolute;width:25px}.SelectItemIndicator,.SelectScrollButton{align-items:center;justify-content:center}.SelectScrollButton{background-color:#fff;color:var(--seed-palette-color-base-1000);cursor:default;display:flex;height:25px}.toggle{background-color:var(--seed-palette-color-base-400);border-radius:var(--seed-rounding-500);height:28px;position:relative;width:52px}.toggle[data-state=checked]{background-color:var(--seed-brand-color-primary)}.toggle-thumb{background-color:var(--seed-ui-color-icon-white);border-radius:var(--seed-rounding-400);box-shadow:0 4px 4px 0 rgba(0,0,0,.15);display:block;height:22px;transform:translateX(4px);transition:transform .1s;width:22px;will-change:transform}.toggle-thumb[data-state=checked]{transform:translateX(26px)}:root{--input-transition:0.2s ease-in-out}.input-wrapper{align-items:center;display:flex;position:relative;width:100%}.input-wrapper.input--display-line .input{border:1px solid var(--seed-ui-color-line-medium);border-radius:0}.input-wrapper.input--display-line .input:focus,.input-wrapper.input--display-line .input:hover:not(:disabled){border-bottom-color:var(--seed-brand-color-primary)}.input-wrapper.input--display-box .input{border:1px solid var(--seed-ui-color-line-medium);border-radius:var(--seed-spacing-300)}.input-wrapper.input--display-box .input:focus,.input-wrapper.input--display-box .input:hover:not(:disabled){border-color:var(--seed-brand-color-primary)}.input-wrapper.input--error .input,.input-wrapper.input--error .input:focus{border-color:var(--seed-brand-color-point2)}.input-wrapper.input--disabled{cursor:not-allowed;opacity:.5}.input-wrapper.input--disabled .input{border:1px solid var(--seed-ui-color-line-medium);color:var(--seed-ui-color-text-disabled)}.input{background:var(--seed-ui-color-background-white);color:var(--seed-ui-color-text-black);font-size:var(--seed-font-size-sm);height:var(--seed-font-line-height-lg);line-height:var(--seed-font-size-sm);padding:17px var(--seed-spacing-500);transition:all var(--input-transition);width:100%}.input:focus{outline:none}.input[type=file]{color:transparent;cursor:pointer}.input[type=file]::-webkit-file-upload-button{visibility:hidden;width:0}.input[type=file]:before{color:var(--seed-ui-color-text-lite);content:\"파일 선택\"}.input[type=file].has-file:before{color:var(--seed-ui-color-text-black);content:\"파일 선택 완료\"}.input[type=file]:disabled:before{background:var(--seed-ui-color-background-guide);color:var(--seed-ui-color-text-disabled);cursor:not-allowed}.input--action{background:none;border:none;color:var(--seed-ui-color-text-lite);cursor:pointer;position:absolute;right:var(--seed-spacing-500);top:50%;transform:translateY(-50%)}.input--action:hover:not(:disabled){color:var(--seed-ui-color-text-dark)}.input--action.input--action-link{height:24px}.input--action.input--close{height:16px}.tabs{display:flex;flex-direction:column;position:relative}.tabs--indicator,.tabs--list,.tabs--trigger{box-sizing:border-box}.tabs--list-wrapper{position:relative}.tabs--list{background-color:var(--seed-ui-color-background-chips);display:flex;gap:var(--seed-spacing-200);height:48px;padding:var(--seed-spacing-200)}.tabs--indicator,.tabs--list{border-radius:var(--seed-rounding-500)}.tabs--indicator{background-color:var(--seed-ui-color-background-white);box-shadow:4px 4px 20px 0 rgba(0,0,0,.08);height:calc(48px - var(--seed-spacing-200)*2);left:0;position:absolute;top:var(--seed-spacing-200);transition:all .2s ease-in-out;z-index:0}.tabs--trigger{align-items:center;border-radius:var(--seed-rounding-400);display:flex;flex:1;font-size:var(--seed-font-size-s);justify-content:center;position:relative;transition:all .2s ease-in-out;z-index:1}.tabs--trigger[data-state=inactive]{color:var(--seed-ui-color-text-lite);font-weight:var(--seed-font-weight-400)}.tabs--trigger[data-state=active]{color:var(--seed-ui-color-text-black);font-weight:var(--seed-font-weight-700)}";
37
+ styleInject(css_248z$3);
38
+
12
39
  var _assign = function __assign() {
13
40
  _assign = Object.assign || function __assign(t) {
14
41
  for (var s, i = 1, n = arguments.length; i < n; i++) {
@@ -339,6 +366,9 @@ var Checkbox = {
339
366
  Indicator: Indicator
340
367
  };
341
368
 
369
+ var css_248z$2 = ".toggle{background-color:var(--seed-palette-color-base-400);border-radius:var(--seed-rounding-500);height:28px;position:relative;width:52px}.toggle[data-state=checked]{background-color:var(--seed-brand-color-primary)}.toggle-thumb{background-color:var(--seed-ui-color-icon-white);border-radius:var(--seed-rounding-400);box-shadow:0 4px 4px 0 rgba(0,0,0,.15);display:block;height:22px;transform:translateX(4px);transition:transform .1s;width:22px;will-change:transform}.toggle-thumb[data-state=checked]{transform:translateX(26px)}";
370
+ styleInject(css_248z$2);
371
+
342
372
  var Toggle = /*#__PURE__*/forwardRef(function (_a, ref) {
343
373
  var className = _a.className,
344
374
  _b = _a.states,
@@ -434,122 +464,8 @@ var Select = {
434
464
  Value: Value
435
465
  };
436
466
 
437
- var Popup = function Popup(props) {
438
- var _a;
439
- var className = props.className,
440
- children = props.children,
441
- buttonLayoutType = props.buttonLayoutType,
442
- container = props.container,
443
- title = props.title,
444
- description = props.description,
445
- onClose = props.onClose,
446
- rest = __rest(props, ["className", "children", "buttonLayoutType", "container", "title", "description", "onClose"]);
447
- return jsx(Dialog.Root, _assign({}, rest, {
448
- defaultOpen: true,
449
- children: jsxs(Dialog.Portal, {
450
- container: container || document.body,
451
- children: [jsx(Dialog.Overlay, {
452
- className: "popup--overlay",
453
- onClick: onClose
454
- }), jsxs(Dialog.Content, {
455
- "data-frieeren-component": "Popup",
456
- className: cx("popup", (_a = {}, _a["popup--layout-".concat(buttonLayoutType)] = buttonLayoutType, _a), className),
457
- children: [jsx(Dialog.Title, {
458
- className: "visually-hidden",
459
- children: title || "Popup"
460
- }), jsx(Dialog.Description, {
461
- className: "visually-hidden",
462
- children: description || "Popup"
463
- }), jsx("div", {
464
- className: "popup--body",
465
- children: children
466
- }), buttonLayoutType === "typeA" && "button" in props && props.button && jsx("div", {
467
- className: "popup--actions",
468
- children: props.button
469
- }), buttonLayoutType === "typeB" && "leftButton" in props && "rightButton" in props && jsxs("div", {
470
- className: "popup--actions popup--actions-typeB",
471
- children: [jsx("div", {
472
- className: "popup--actions-left",
473
- children: props.leftButton
474
- }), jsx("div", {
475
- className: "popup--actions-right",
476
- children: props.rightButton
477
- })]
478
- })]
479
- })]
480
- })
481
- }));
482
- };
483
-
484
- function SwitchCase(_a) {
485
- var _b;
486
- var value = _a.value,
487
- caseBy = _a.caseBy,
488
- _c = _a.defaultComponent,
489
- defaultComponent = _c === void 0 ? null : _c;
490
- if (value == null) {
491
- return defaultComponent;
492
- }
493
- return (_b = caseBy[value]) !== null && _b !== void 0 ? _b : defaultComponent;
494
- }
495
-
496
- var BottomSheet = function BottomSheet(_a) {
497
- var _b;
498
- var open = _a.open,
499
- onClose = _a.onClose,
500
- _c = _a.locked,
501
- locked = _c === void 0 ? true : _c,
502
- _d = _a.showHandle,
503
- showHandle = _d === void 0 ? true : _d,
504
- _e = _a.handleOnly,
505
- handleOnly = _e === void 0 ? false : _e,
506
- radius = _a.radius,
507
- _f = _a.theme,
508
- theme = _f === void 0 ? "light" : _f,
509
- _g = _a.zIndex,
510
- zIndex = _g === void 0 ? 1 : _g,
511
- className = _a.className,
512
- children = _a.children;
513
- return jsx(Drawer.Root, {
514
- open: open,
515
- onClose: onClose,
516
- modal: locked,
517
- handleOnly: handleOnly,
518
- children: jsxs(Drawer.Portal, {
519
- children: [jsx(Drawer.Overlay, {
520
- className: "overlay",
521
- "data-frieeren-component": "BottomSheetOverlay",
522
- style: {
523
- zIndex: zIndex
524
- }
525
- }), jsxs(Drawer.Content, {
526
- className: cx("drawer-content", (_b = {}, _b["bottomsheet-container--radius-".concat(radius)] = radius, _b["bottomsheet-container--theme-".concat(theme)] = theme, _b), className),
527
- "data-frieeren-component": "BottomSheet",
528
- style: {
529
- zIndex: zIndex
530
- },
531
- children: [jsx(SwitchCase, {
532
- value: String(showHandle),
533
- caseBy: {
534
- "true": jsx(Flex, {
535
- className: "drawer-handle",
536
- align: "center",
537
- justify: "center",
538
- children: jsx(Drawer.Handle, {
539
- style: {
540
- width: 36
541
- }
542
- })
543
- })
544
- }
545
- }), jsx("div", {
546
- className: "drawer-content-inner",
547
- children: children
548
- })]
549
- })]
550
- })
551
- });
552
- };
467
+ var css_248z$1 = "@charset \"UTF-8\";:root{--input-transition:0.2s ease-in-out}.input-wrapper{align-items:center;display:flex;position:relative;width:100%}.input-wrapper.input--display-line .input{border:1px solid var(--seed-ui-color-line-medium);border-radius:0}.input-wrapper.input--display-line .input:focus,.input-wrapper.input--display-line .input:hover:not(:disabled){border-bottom-color:var(--seed-brand-color-primary)}.input-wrapper.input--display-box .input{border:1px solid var(--seed-ui-color-line-medium);border-radius:var(--seed-spacing-300)}.input-wrapper.input--display-box .input:focus,.input-wrapper.input--display-box .input:hover:not(:disabled){border-color:var(--seed-brand-color-primary)}.input-wrapper.input--error .input,.input-wrapper.input--error .input:focus{border-color:var(--seed-brand-color-point2)}.input-wrapper.input--disabled{cursor:not-allowed;opacity:.5}.input-wrapper.input--disabled .input{border:1px solid var(--seed-ui-color-line-medium);color:var(--seed-ui-color-text-disabled)}.input{background:var(--seed-ui-color-background-white);color:var(--seed-ui-color-text-black);font-size:var(--seed-font-size-sm);height:var(--seed-font-line-height-lg);line-height:var(--seed-font-size-sm);padding:17px var(--seed-spacing-500);transition:all var(--input-transition);width:100%}.input:focus{outline:none}.input[type=file]{color:transparent;cursor:pointer}.input[type=file]::-webkit-file-upload-button{visibility:hidden;width:0}.input[type=file]:before{color:var(--seed-ui-color-text-lite);content:\"파일 선택\"}.input[type=file].has-file:before{color:var(--seed-ui-color-text-black);content:\"파일 선택 완료\"}.input[type=file]:disabled:before{background:var(--seed-ui-color-background-guide);color:var(--seed-ui-color-text-disabled);cursor:not-allowed}.input--action{background:none;border:none;color:var(--seed-ui-color-text-lite);cursor:pointer;position:absolute;right:var(--seed-spacing-500);top:50%;transform:translateY(-50%)}.input--action:hover:not(:disabled){color:var(--seed-ui-color-text-dark)}.input--action.input--action-link{height:24px}.input--action.input--close{height:16px}";
468
+ styleInject(css_248z$1);
553
469
 
554
470
  var _rect, _path$1;
555
471
  function _extends$1() { return _extends$1 = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends$1.apply(null, arguments); }
@@ -651,6 +567,9 @@ var Input = /*#__PURE__*/forwardRef(function (_a, ref) {
651
567
  });
652
568
  Input.displayName = "Input";
653
569
 
570
+ var css_248z = ".tabs{display:flex;flex-direction:column;position:relative}.tabs--indicator,.tabs--list,.tabs--trigger{box-sizing:border-box}.tabs--list-wrapper{position:relative}.tabs--list{background-color:var(--seed-ui-color-background-chips);display:flex;gap:var(--seed-spacing-200);height:48px;padding:var(--seed-spacing-200)}.tabs--indicator,.tabs--list{border-radius:var(--seed-rounding-500)}.tabs--indicator{background-color:var(--seed-ui-color-background-white);box-shadow:4px 4px 20px 0 rgba(0,0,0,.08);height:calc(48px - var(--seed-spacing-200)*2);left:0;position:absolute;top:var(--seed-spacing-200);transition:all .2s ease-in-out;z-index:0}.tabs--trigger{align-items:center;border-radius:var(--seed-rounding-400);display:flex;flex:1;font-size:var(--seed-font-size-s);justify-content:center;position:relative;transition:all .2s ease-in-out;z-index:1}.tabs--trigger[data-state=inactive]{color:var(--seed-ui-color-text-lite);font-weight:var(--seed-font-weight-400)}.tabs--trigger[data-state=active]{color:var(--seed-ui-color-text-black);font-weight:var(--seed-font-weight-700)}";
571
+ styleInject(css_248z);
572
+
654
573
  var Root = function Root(_a) {
655
574
  var props = __rest(_a, []);
656
575
  return jsx(TabsBase.Root, _assign({
@@ -783,4 +702,4 @@ var Tabs = function Tabs(props) {
783
702
  }));
784
703
  };
785
704
 
786
- export { BottomSheet, Box, Button, Checkbox, Container, Flex, Grid, Input, Popup, RadioGroup, Select, Tabs, Text, Toggle };
705
+ export { Box, Button, Checkbox, Container, Flex, Grid, Input, RadioGroup, Select, Tabs, Text, Toggle };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@team-frieeren/components",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",