@nation-a/ui 0.10.8 → 0.11.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.cjs +217 -22
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +217 -22
- package/dist/index.js.map +1 -1
- package/dist/styled-system/styles.css +0 -4
- package/dist/types/components/Tabs/Tabs.stories.d.ts +1 -1
- package/dist/types/components/Tabs/index.d.ts +2 -2
- package/dist/types/components/index.d.ts +1 -0
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -3557,11 +3557,42 @@ const getPortalNode = (cb) => {
|
|
|
3557
3557
|
};
|
|
3558
3558
|
const subscribe = () => () => {
|
|
3559
3559
|
};
|
|
3560
|
+
function useDebounce(value, delay2) {
|
|
3561
|
+
const [debouncedValue, setDebouncedValue] = React.useState(value);
|
|
3562
|
+
React.useEffect(() => {
|
|
3563
|
+
const timer = setTimeout(() => {
|
|
3564
|
+
setDebouncedValue(value);
|
|
3565
|
+
}, delay2);
|
|
3566
|
+
return () => {
|
|
3567
|
+
clearTimeout(timer);
|
|
3568
|
+
};
|
|
3569
|
+
}, [value, delay2]);
|
|
3570
|
+
return debouncedValue;
|
|
3571
|
+
}
|
|
3560
3572
|
const [TabsProvider, useTabsContext] = createContext({
|
|
3561
3573
|
name: "TabsContext",
|
|
3562
3574
|
hookName: "useTabsContext",
|
|
3563
3575
|
providerName: "<TabsProvider />"
|
|
3564
3576
|
});
|
|
3577
|
+
const TabContent = React.forwardRef((props, ref) => {
|
|
3578
|
+
const [contentProps, localProps] = createSplitProps()(props, ["value"]);
|
|
3579
|
+
const tabs = useTabsContext();
|
|
3580
|
+
const renderStrategyProps = useRenderStrategyPropsContext();
|
|
3581
|
+
const presence = usePresence({
|
|
3582
|
+
...renderStrategyProps,
|
|
3583
|
+
present: useDebounce(tabs.value === props.value, 0),
|
|
3584
|
+
immediate: true
|
|
3585
|
+
});
|
|
3586
|
+
const mergedProps = mergeProps(tabs.getContentProps(contentProps), presence.getPresenceProps(), localProps);
|
|
3587
|
+
return /* @__PURE__ */ jsxRuntime.jsx(PresenceProvider, { value: presence, children: presence.unmounted ? null : /* @__PURE__ */ jsxRuntime.jsx(ark.div, { ...mergedProps, ref: composeRefs(presence.ref, ref) }) });
|
|
3588
|
+
});
|
|
3589
|
+
TabContent.displayName = "TabContent";
|
|
3590
|
+
const TabIndicator = React.forwardRef((props, ref) => {
|
|
3591
|
+
const tabs = useTabsContext();
|
|
3592
|
+
const mergedProps = mergeProps(tabs.getIndicatorProps(), props);
|
|
3593
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ark.div, { ...mergedProps, ref });
|
|
3594
|
+
});
|
|
3595
|
+
TabIndicator.displayName = "TabIndicator";
|
|
3565
3596
|
const TabList = React.forwardRef((props, ref) => {
|
|
3566
3597
|
const tabs = useTabsContext();
|
|
3567
3598
|
const mergedProps = mergeProps(tabs.getListProps(), props);
|
|
@@ -5961,16 +5992,16 @@ const dialogRecipe = sva({
|
|
|
5961
5992
|
}
|
|
5962
5993
|
}
|
|
5963
5994
|
});
|
|
5964
|
-
const { withRootProvider: withRootProvider$
|
|
5965
|
-
const Root$
|
|
5966
|
-
const Backdrop$1 = withContext$
|
|
5967
|
-
const Trigger$
|
|
5968
|
-
const Content$
|
|
5969
|
-
const Title = withContext$
|
|
5970
|
-
const Description$1 = withContext$
|
|
5971
|
-
const Positioner = withContext$
|
|
5972
|
-
const Header = withContext$
|
|
5973
|
-
const Footer = withContext$
|
|
5995
|
+
const { withRootProvider: withRootProvider$2, withContext: withContext$3 } = createStyleContext(dialogRecipe);
|
|
5996
|
+
const Root$3 = withRootProvider$2(DialogRoot);
|
|
5997
|
+
const Backdrop$1 = withContext$3(DialogBackdrop, "backdrop");
|
|
5998
|
+
const Trigger$2 = withContext$3(DialogTrigger, "trigger");
|
|
5999
|
+
const Content$2 = withContext$3(DialogContent, "content");
|
|
6000
|
+
const Title = withContext$3(DialogTitle, "title");
|
|
6001
|
+
const Description$1 = withContext$3(DialogDescription, "description");
|
|
6002
|
+
const Positioner = withContext$3(DialogPositioner, "positioner");
|
|
6003
|
+
const Header = withContext$3(ark.header, "header");
|
|
6004
|
+
const Footer = withContext$3(
|
|
5974
6005
|
({ orientation = "horizontal", className, ...props }) => {
|
|
5975
6006
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5976
6007
|
ark.footer,
|
|
@@ -5988,13 +6019,13 @@ const Footer = withContext$2(
|
|
|
5988
6019
|
},
|
|
5989
6020
|
"footer"
|
|
5990
6021
|
);
|
|
5991
|
-
const Body = withContext$
|
|
5992
|
-
const CloseTrigger = withContext$
|
|
6022
|
+
const Body = withContext$3(ark.main, "body");
|
|
6023
|
+
const CloseTrigger = withContext$3(DialogCloseTrigger, "closeTrigger");
|
|
5993
6024
|
const Dialog = {
|
|
5994
|
-
Root: Root$
|
|
6025
|
+
Root: Root$3,
|
|
5995
6026
|
Backdrop: Backdrop$1,
|
|
5996
|
-
Trigger: Trigger$
|
|
5997
|
-
Content: Content$
|
|
6027
|
+
Trigger: Trigger$2,
|
|
6028
|
+
Content: Content$2,
|
|
5998
6029
|
Title,
|
|
5999
6030
|
Description: Description$1,
|
|
6000
6031
|
Positioner,
|
|
@@ -9914,20 +9945,20 @@ const navigationRecipe = sva({
|
|
|
9914
9945
|
}
|
|
9915
9946
|
}
|
|
9916
9947
|
});
|
|
9917
|
-
const { withRootProvider, withContext: withContext$
|
|
9918
|
-
const Root$
|
|
9919
|
-
const Trigger = withContext$
|
|
9948
|
+
const { withRootProvider: withRootProvider$1, withContext: withContext$2 } = createStyleContext(navigationRecipe);
|
|
9949
|
+
const Root$2 = withRootProvider$1(TabsRoot);
|
|
9950
|
+
const Trigger$1 = withContext$2(
|
|
9920
9951
|
({ icon, label, ...props }) => /* @__PURE__ */ jsxRuntime.jsxs(TabTrigger, { ...props, children: [
|
|
9921
9952
|
icon,
|
|
9922
9953
|
label
|
|
9923
9954
|
] }),
|
|
9924
9955
|
"trigger"
|
|
9925
9956
|
);
|
|
9926
|
-
const List = withContext$
|
|
9957
|
+
const List$1 = withContext$2(TabList, "list");
|
|
9927
9958
|
const Navigation = {
|
|
9928
|
-
Root: Root$
|
|
9929
|
-
Item: Trigger,
|
|
9930
|
-
List
|
|
9959
|
+
Root: Root$2,
|
|
9960
|
+
Item: Trigger$1,
|
|
9961
|
+
List: List$1
|
|
9931
9962
|
};
|
|
9932
9963
|
const tagRecipe = cva({
|
|
9933
9964
|
base: {
|
|
@@ -10448,6 +10479,169 @@ const Textarea = React.forwardRef(
|
|
|
10448
10479
|
);
|
|
10449
10480
|
Textarea.displayName = "Textarea";
|
|
10450
10481
|
const index = React.memo(Textarea);
|
|
10482
|
+
const tabsRecipe = sva({
|
|
10483
|
+
className: "tabs",
|
|
10484
|
+
slots: anatomy$1.keys(),
|
|
10485
|
+
base: {
|
|
10486
|
+
root: {
|
|
10487
|
+
display: "flex",
|
|
10488
|
+
width: "full",
|
|
10489
|
+
flexDirection: "column"
|
|
10490
|
+
},
|
|
10491
|
+
list: {
|
|
10492
|
+
display: "flex",
|
|
10493
|
+
flexShrink: "0",
|
|
10494
|
+
flexDirection: "row",
|
|
10495
|
+
overflowX: "auto",
|
|
10496
|
+
position: "relative",
|
|
10497
|
+
scrollbarWidth: "none",
|
|
10498
|
+
"&::-webkit-scrollbar": {
|
|
10499
|
+
display: "none"
|
|
10500
|
+
}
|
|
10501
|
+
},
|
|
10502
|
+
trigger: {
|
|
10503
|
+
alignItems: "center",
|
|
10504
|
+
color: "content.neutral.subtlest",
|
|
10505
|
+
cursor: "pointer",
|
|
10506
|
+
display: "inline-flex",
|
|
10507
|
+
flexShrink: "0",
|
|
10508
|
+
gap: "2",
|
|
10509
|
+
justifyContent: "center",
|
|
10510
|
+
px: "4",
|
|
10511
|
+
py: "2",
|
|
10512
|
+
textStyle: "label.md",
|
|
10513
|
+
transition: "all",
|
|
10514
|
+
transitionDuration: "normal",
|
|
10515
|
+
transitionTimingFunction: "default",
|
|
10516
|
+
whiteSpace: "nowrap",
|
|
10517
|
+
_disabled: {
|
|
10518
|
+
color: "content.neutral.disabled",
|
|
10519
|
+
cursor: "not-allowed"
|
|
10520
|
+
},
|
|
10521
|
+
_hover: {
|
|
10522
|
+
color: "content.neutral.hovered"
|
|
10523
|
+
},
|
|
10524
|
+
_selected: {
|
|
10525
|
+
color: "content.neutral.bold"
|
|
10526
|
+
}
|
|
10527
|
+
},
|
|
10528
|
+
content: {
|
|
10529
|
+
pt: "4"
|
|
10530
|
+
},
|
|
10531
|
+
indicator: {
|
|
10532
|
+
width: "var(--width)",
|
|
10533
|
+
height: "2px",
|
|
10534
|
+
borderRadius: "xs",
|
|
10535
|
+
background: "content.neutral.bold",
|
|
10536
|
+
bottom: "0px"
|
|
10537
|
+
}
|
|
10538
|
+
},
|
|
10539
|
+
variants: {
|
|
10540
|
+
variant: {
|
|
10541
|
+
line: {
|
|
10542
|
+
list: {
|
|
10543
|
+
borderBottomWidth: "1px",
|
|
10544
|
+
borderColor: "background.neutral.selected"
|
|
10545
|
+
}
|
|
10546
|
+
},
|
|
10547
|
+
enclosed: {
|
|
10548
|
+
list: {
|
|
10549
|
+
p: "16px 0 0 16px",
|
|
10550
|
+
borderRadius: "md",
|
|
10551
|
+
gap: "16"
|
|
10552
|
+
},
|
|
10553
|
+
trigger: {
|
|
10554
|
+
borderRadius: "full",
|
|
10555
|
+
_selected: {
|
|
10556
|
+
background: "background.neutral.selected"
|
|
10557
|
+
}
|
|
10558
|
+
},
|
|
10559
|
+
indicator: {
|
|
10560
|
+
display: "none"
|
|
10561
|
+
}
|
|
10562
|
+
}
|
|
10563
|
+
},
|
|
10564
|
+
fitted: {
|
|
10565
|
+
true: {
|
|
10566
|
+
root: {
|
|
10567
|
+
width: "100%"
|
|
10568
|
+
},
|
|
10569
|
+
list: {
|
|
10570
|
+
width: "100%",
|
|
10571
|
+
p: 1,
|
|
10572
|
+
overflowX: "visible"
|
|
10573
|
+
},
|
|
10574
|
+
trigger: {
|
|
10575
|
+
flex: 1,
|
|
10576
|
+
justifyContent: "center",
|
|
10577
|
+
overflow: "hidden",
|
|
10578
|
+
textOverflow: "ellipsis",
|
|
10579
|
+
whiteSpace: "nowrap"
|
|
10580
|
+
}
|
|
10581
|
+
}
|
|
10582
|
+
},
|
|
10583
|
+
bottomLine: {
|
|
10584
|
+
true: {
|
|
10585
|
+
list: {
|
|
10586
|
+
borderBottomWidth: "1px",
|
|
10587
|
+
borderColor: "background.neutral.selected"
|
|
10588
|
+
}
|
|
10589
|
+
},
|
|
10590
|
+
false: {
|
|
10591
|
+
list: {
|
|
10592
|
+
borderBottomWidth: "0px"
|
|
10593
|
+
}
|
|
10594
|
+
}
|
|
10595
|
+
},
|
|
10596
|
+
shadow: {
|
|
10597
|
+
true: {
|
|
10598
|
+
list: {
|
|
10599
|
+
boxShadow: "0px 8px 12px 0px var(--colors-semantic-shadow-overlay, rgba(0, 0, 0, 0.08))"
|
|
10600
|
+
}
|
|
10601
|
+
}
|
|
10602
|
+
}
|
|
10603
|
+
},
|
|
10604
|
+
compoundVariants: [
|
|
10605
|
+
{
|
|
10606
|
+
variant: "enclosed",
|
|
10607
|
+
fitted: true,
|
|
10608
|
+
css: {
|
|
10609
|
+
list: {
|
|
10610
|
+
background: "background.neutral.default",
|
|
10611
|
+
borderRadius: "full"
|
|
10612
|
+
}
|
|
10613
|
+
}
|
|
10614
|
+
},
|
|
10615
|
+
{
|
|
10616
|
+
variant: "enclosed",
|
|
10617
|
+
bottomLine: true,
|
|
10618
|
+
css: {
|
|
10619
|
+
list: {
|
|
10620
|
+
borderBottomWidth: "0px"
|
|
10621
|
+
}
|
|
10622
|
+
}
|
|
10623
|
+
}
|
|
10624
|
+
],
|
|
10625
|
+
defaultVariants: {
|
|
10626
|
+
variant: "line",
|
|
10627
|
+
fitted: false,
|
|
10628
|
+
bottomLine: true,
|
|
10629
|
+
shadow: false
|
|
10630
|
+
}
|
|
10631
|
+
});
|
|
10632
|
+
const { withRootProvider, withContext: withContext$1 } = createStyleContext(tabsRecipe);
|
|
10633
|
+
const Root$1 = withRootProvider(TabsRoot);
|
|
10634
|
+
const List = withContext$1(TabList, "list");
|
|
10635
|
+
const Trigger = withContext$1(TabTrigger, "trigger");
|
|
10636
|
+
const Content$1 = withContext$1(TabContent, "content");
|
|
10637
|
+
const Indicator = withContext$1(TabIndicator, "indicator");
|
|
10638
|
+
const Tabs = Object.assign(Root$1, {
|
|
10639
|
+
Root: Root$1,
|
|
10640
|
+
List,
|
|
10641
|
+
Trigger,
|
|
10642
|
+
Content: Content$1,
|
|
10643
|
+
Indicator
|
|
10644
|
+
});
|
|
10451
10645
|
function definePreset(preset2) {
|
|
10452
10646
|
return preset2;
|
|
10453
10647
|
}
|
|
@@ -11027,6 +11221,7 @@ exports.Navigation = Navigation;
|
|
|
11027
11221
|
exports.Portal = Portal;
|
|
11028
11222
|
exports.Spinner = Spinner;
|
|
11029
11223
|
exports.Stack = Stack2;
|
|
11224
|
+
exports.Tabs = Tabs;
|
|
11030
11225
|
exports.Tag = index$2;
|
|
11031
11226
|
exports.Text = Text;
|
|
11032
11227
|
exports.TextArea = index;
|