@shoplflow/base 0.26.7 → 0.26.9
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.cjs +264 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +58 -1
- package/dist/index.d.ts +58 -1
- package/dist/index.js +266 -3
- package/dist/index.js.map +1 -1
- package/package.json +6 -5
package/dist/index.cjs
CHANGED
|
@@ -942,7 +942,7 @@ var ModalBody = ({
|
|
|
942
942
|
}) => {
|
|
943
943
|
const { height: windowHeight } = useViewportSizeObserver();
|
|
944
944
|
const headerHeight = 64;
|
|
945
|
-
const footerHeight =
|
|
945
|
+
const footerHeight = 72;
|
|
946
946
|
const topBottomMargin = 64;
|
|
947
947
|
const getHeaderFooterHeight = React3.useCallback(() => {
|
|
948
948
|
let result = 0;
|
|
@@ -2794,6 +2794,12 @@ exports.TagSizeVariants = {
|
|
|
2794
2794
|
S: "S",
|
|
2795
2795
|
M: "M"
|
|
2796
2796
|
};
|
|
2797
|
+
var StyledTree = styled6__default.default.div``;
|
|
2798
|
+
var Tree = (_a) => {
|
|
2799
|
+
var rest = __objRest(_a, []);
|
|
2800
|
+
return /* @__PURE__ */ jsxRuntime.jsx(StyledTree, __spreadProps(__spreadValues({}, rest), { "data-shoplflow": "Tree", children: "Tree" }));
|
|
2801
|
+
};
|
|
2802
|
+
exports.Tree = Tree;
|
|
2797
2803
|
var StyledInput = styled6__default.default.input`
|
|
2798
2804
|
padding: 4px 0 4px 12px;
|
|
2799
2805
|
background-color: transparent;
|
|
@@ -3436,6 +3442,263 @@ var Tooltip = (_a) => {
|
|
|
3436
3442
|
};
|
|
3437
3443
|
Tooltip.Content = TooltipContent;
|
|
3438
3444
|
exports.Tooltip = Tooltip;
|
|
3445
|
+
exports.TabsContext = React3.createContext(null);
|
|
3446
|
+
exports.useTabs = () => {
|
|
3447
|
+
const context = React3.useContext(exports.TabsContext);
|
|
3448
|
+
if (context === null) {
|
|
3449
|
+
throw new Error("useTabs should be used in Tabs");
|
|
3450
|
+
}
|
|
3451
|
+
return context;
|
|
3452
|
+
};
|
|
3453
|
+
var getHoverTabStyleByStyleVar = (styleVar) => {
|
|
3454
|
+
switch (styleVar) {
|
|
3455
|
+
case "INFO": {
|
|
3456
|
+
return react$1.css`
|
|
3457
|
+
::after {
|
|
3458
|
+
content: '';
|
|
3459
|
+
position: absolute;
|
|
3460
|
+
left: 0;
|
|
3461
|
+
right: 0;
|
|
3462
|
+
bottom: -2px;
|
|
3463
|
+
height: 2px;
|
|
3464
|
+
background: ${exports.colorTokens.neutral500};
|
|
3465
|
+
}
|
|
3466
|
+
`;
|
|
3467
|
+
}
|
|
3468
|
+
default: {
|
|
3469
|
+
return null;
|
|
3470
|
+
}
|
|
3471
|
+
}
|
|
3472
|
+
};
|
|
3473
|
+
var getWrapperStyleByStyleVar = (styleVar) => {
|
|
3474
|
+
switch (styleVar) {
|
|
3475
|
+
case "INFO": {
|
|
3476
|
+
return react$1.css`
|
|
3477
|
+
padding-inline: 16px;
|
|
3478
|
+
`;
|
|
3479
|
+
}
|
|
3480
|
+
default: {
|
|
3481
|
+
return null;
|
|
3482
|
+
}
|
|
3483
|
+
}
|
|
3484
|
+
};
|
|
3485
|
+
var getActiveTriggerStyleByStyleVar = (styleVar) => {
|
|
3486
|
+
switch (styleVar) {
|
|
3487
|
+
case "INFO": {
|
|
3488
|
+
return react$1.css`
|
|
3489
|
+
::after {
|
|
3490
|
+
content: '';
|
|
3491
|
+
position: absolute;
|
|
3492
|
+
left: 0;
|
|
3493
|
+
right: 0;
|
|
3494
|
+
bottom: -2px;
|
|
3495
|
+
height: 2px;
|
|
3496
|
+
background: #000;
|
|
3497
|
+
}
|
|
3498
|
+
`;
|
|
3499
|
+
}
|
|
3500
|
+
default: {
|
|
3501
|
+
return null;
|
|
3502
|
+
}
|
|
3503
|
+
}
|
|
3504
|
+
};
|
|
3505
|
+
var StyledTab = styled6__default.default.div`
|
|
3506
|
+
display: flex;
|
|
3507
|
+
flex-direction: row;
|
|
3508
|
+
align-items: center;
|
|
3509
|
+
padding: 12px 16px;
|
|
3510
|
+
width: fit-content;
|
|
3511
|
+
cursor: pointer;
|
|
3512
|
+
position: relative;
|
|
3513
|
+
user-select: none;
|
|
3514
|
+
|
|
3515
|
+
${({ styleVar }) => styleVar && getWrapperStyleByStyleVar(styleVar)};
|
|
3516
|
+
|
|
3517
|
+
/* hover style */
|
|
3518
|
+
${({ isActive, isHover, styleVar }) => !isActive && isHover && styleVar && getHoverTabStyleByStyleVar(styleVar)}
|
|
3519
|
+
|
|
3520
|
+
/* active style */
|
|
3521
|
+
${({ isActive, styleVar }) => isActive && styleVar && getActiveTriggerStyleByStyleVar(styleVar)}
|
|
3522
|
+
`;
|
|
3523
|
+
var getTextStyleByStyleVar = (styleVar) => {
|
|
3524
|
+
switch (styleVar) {
|
|
3525
|
+
case "NORMAL": {
|
|
3526
|
+
return react$1.css`
|
|
3527
|
+
color: ${exports.colorTokens.neutral400};
|
|
3528
|
+
`;
|
|
3529
|
+
}
|
|
3530
|
+
case "INFO": {
|
|
3531
|
+
return react$1.css`
|
|
3532
|
+
color: ${exports.colorTokens.neutral500};
|
|
3533
|
+
`;
|
|
3534
|
+
}
|
|
3535
|
+
}
|
|
3536
|
+
};
|
|
3537
|
+
var getHoverTextStyleByStyleVar = (styleVar) => {
|
|
3538
|
+
switch (styleVar) {
|
|
3539
|
+
case "NORMAL": {
|
|
3540
|
+
return react$1.css`
|
|
3541
|
+
color: ${exports.colorTokens.neutral500};
|
|
3542
|
+
`;
|
|
3543
|
+
}
|
|
3544
|
+
case "INFO": {
|
|
3545
|
+
return react$1.css`
|
|
3546
|
+
color: ${exports.colorTokens.neutral700};
|
|
3547
|
+
`;
|
|
3548
|
+
}
|
|
3549
|
+
default: {
|
|
3550
|
+
return null;
|
|
3551
|
+
}
|
|
3552
|
+
}
|
|
3553
|
+
};
|
|
3554
|
+
var getActiveTextStyleByStyleVar = (styleVar, activeColor) => {
|
|
3555
|
+
switch (styleVar) {
|
|
3556
|
+
case "NORMAL": {
|
|
3557
|
+
return react$1.css`
|
|
3558
|
+
color: ${activeColor ? exports.colorTokens[activeColor] : exports.colorTokens.neutral700};
|
|
3559
|
+
`;
|
|
3560
|
+
}
|
|
3561
|
+
case "INFO": {
|
|
3562
|
+
return react$1.css`
|
|
3563
|
+
color: ${exports.colorTokens.neutral700};
|
|
3564
|
+
`;
|
|
3565
|
+
}
|
|
3566
|
+
default: {
|
|
3567
|
+
return react$1.css`
|
|
3568
|
+
color: ${exports.colorTokens.primary300};
|
|
3569
|
+
`;
|
|
3570
|
+
}
|
|
3571
|
+
}
|
|
3572
|
+
};
|
|
3573
|
+
var StyledTabText = styled6__default.default(exports.Text)`
|
|
3574
|
+
cursor: pointer;
|
|
3575
|
+
|
|
3576
|
+
${({ styleVar }) => styleVar && getTextStyleByStyleVar(styleVar)};
|
|
3577
|
+
|
|
3578
|
+
/* hover style */
|
|
3579
|
+
${({ isHover, styleVar, isActive }) => !isActive && isHover && styleVar && getHoverTextStyleByStyleVar(styleVar)}
|
|
3580
|
+
|
|
3581
|
+
/* active style */
|
|
3582
|
+
${({ isActive, styleVar, activeColor }) => isActive && styleVar && getActiveTextStyleByStyleVar(styleVar, activeColor)}
|
|
3583
|
+
`;
|
|
3584
|
+
var StyledIndicator = styled6__default.default(framerMotion.motion.div)`
|
|
3585
|
+
position: absolute;
|
|
3586
|
+
bottom: -2px;
|
|
3587
|
+
left: 0px;
|
|
3588
|
+
right: 0px;
|
|
3589
|
+
height: 2px;
|
|
3590
|
+
background-color: black;
|
|
3591
|
+
width: 100%;
|
|
3592
|
+
`;
|
|
3593
|
+
var Indicator = ({ layoutId }) => {
|
|
3594
|
+
return /* @__PURE__ */ jsxRuntime.jsx(StyledIndicator, { layoutId, transition: { duration: 0.2 } });
|
|
3595
|
+
};
|
|
3596
|
+
var Tab = (_a) => {
|
|
3597
|
+
var _b = _a, {
|
|
3598
|
+
value,
|
|
3599
|
+
label,
|
|
3600
|
+
leftSource,
|
|
3601
|
+
rightSource,
|
|
3602
|
+
as,
|
|
3603
|
+
styleVar = "NORMAL",
|
|
3604
|
+
sizeVar = "L",
|
|
3605
|
+
onClick,
|
|
3606
|
+
activeColor
|
|
3607
|
+
} = _b, args = __objRest(_b, [
|
|
3608
|
+
"value",
|
|
3609
|
+
"label",
|
|
3610
|
+
"leftSource",
|
|
3611
|
+
"rightSource",
|
|
3612
|
+
"as",
|
|
3613
|
+
"styleVar",
|
|
3614
|
+
"sizeVar",
|
|
3615
|
+
"onClick",
|
|
3616
|
+
"activeColor"
|
|
3617
|
+
]);
|
|
3618
|
+
const { activeTab, setActiveTab } = exports.useTabs();
|
|
3619
|
+
const [isHover, setIsHover] = React3.useState(false);
|
|
3620
|
+
const isActive = value === activeTab;
|
|
3621
|
+
const hoverHandler = React3.useCallback(() => {
|
|
3622
|
+
setIsHover(true);
|
|
3623
|
+
}, []);
|
|
3624
|
+
const unhoverHandler = React3.useCallback(() => {
|
|
3625
|
+
setIsHover(false);
|
|
3626
|
+
}, []);
|
|
3627
|
+
const clickHandler = (event) => {
|
|
3628
|
+
onClick == null ? void 0 : onClick(event);
|
|
3629
|
+
setActiveTab(value);
|
|
3630
|
+
};
|
|
3631
|
+
let typography = "title1_700";
|
|
3632
|
+
if (styleVar === "INFO") {
|
|
3633
|
+
typography = "body1_700";
|
|
3634
|
+
}
|
|
3635
|
+
if (styleVar === "NORMAL" && sizeVar === "M") {
|
|
3636
|
+
typography = "title2_700";
|
|
3637
|
+
}
|
|
3638
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3639
|
+
StyledTab,
|
|
3640
|
+
__spreadProps(__spreadValues({
|
|
3641
|
+
isActive,
|
|
3642
|
+
as,
|
|
3643
|
+
onClick: clickHandler,
|
|
3644
|
+
onMouseOver: hoverHandler,
|
|
3645
|
+
onMouseLeave: unhoverHandler,
|
|
3646
|
+
onFocus: hoverHandler,
|
|
3647
|
+
onBlur: unhoverHandler,
|
|
3648
|
+
isHover,
|
|
3649
|
+
styleVar
|
|
3650
|
+
}, args), {
|
|
3651
|
+
children: [
|
|
3652
|
+
leftSource,
|
|
3653
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3654
|
+
StyledTabText,
|
|
3655
|
+
{
|
|
3656
|
+
isHover,
|
|
3657
|
+
lineClamp: 2,
|
|
3658
|
+
typography: `${typography}`,
|
|
3659
|
+
isActive,
|
|
3660
|
+
activeColor,
|
|
3661
|
+
styleVar,
|
|
3662
|
+
children: label
|
|
3663
|
+
}
|
|
3664
|
+
),
|
|
3665
|
+
rightSource,
|
|
3666
|
+
styleVar === "INFO" && isActive && /* @__PURE__ */ jsxRuntime.jsx(Indicator, { layoutId: "underline" })
|
|
3667
|
+
]
|
|
3668
|
+
})
|
|
3669
|
+
);
|
|
3670
|
+
};
|
|
3671
|
+
var Tabs = ({ children, initialTab, onChange }) => {
|
|
3672
|
+
const [activeTab, setActiveTab] = React3.useState(initialTab);
|
|
3673
|
+
React3.useEffect(() => {
|
|
3674
|
+
if (!onChange || !activeTab) {
|
|
3675
|
+
return;
|
|
3676
|
+
}
|
|
3677
|
+
onChange(activeTab);
|
|
3678
|
+
}, [activeTab]);
|
|
3679
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3680
|
+
exports.TabsContext.Provider,
|
|
3681
|
+
{
|
|
3682
|
+
value: {
|
|
3683
|
+
activeTab,
|
|
3684
|
+
setActiveTab
|
|
3685
|
+
},
|
|
3686
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(framerMotion.LayoutGroup, { children: /* @__PURE__ */ jsxRuntime.jsx(framerMotion.AnimatePresence, { children }) })
|
|
3687
|
+
}
|
|
3688
|
+
);
|
|
3689
|
+
};
|
|
3690
|
+
Tabs.Tab = Tab;
|
|
3691
|
+
exports.Tabs = Tabs;
|
|
3692
|
+
|
|
3693
|
+
// src/components/Tabs/Tabs.types.ts
|
|
3694
|
+
exports.TabStyleVariants = {
|
|
3695
|
+
NORMAL: "NORMAL",
|
|
3696
|
+
INFO: "INFO"
|
|
3697
|
+
};
|
|
3698
|
+
exports.TabSizeVariants = {
|
|
3699
|
+
M: "M",
|
|
3700
|
+
L: "L"
|
|
3701
|
+
};
|
|
3439
3702
|
var PaginationWrapper = styled6__default.default.div`
|
|
3440
3703
|
display: flex;
|
|
3441
3704
|
align-items: center;
|