@rovula/ui 0.0.66 → 0.0.68

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.
Files changed (134) hide show
  1. package/dist/cjs/bundle.css +993 -979
  2. package/dist/cjs/bundle.js +3 -3
  3. package/dist/cjs/bundle.js.map +1 -1
  4. package/dist/cjs/types/components/ActionButton/ActionButton.d.ts +6 -6
  5. package/dist/cjs/types/components/ActionButton/ActionButton.stories.d.ts +97 -96
  6. package/dist/cjs/types/components/AlertDialog/AlertDialog.stories.d.ts +1 -1
  7. package/dist/cjs/types/components/Avatar/Avatar.stories.d.ts +7 -7
  8. package/dist/cjs/types/components/Avatar/AvatarGroup.stories.d.ts +1 -1
  9. package/dist/cjs/types/components/Button/Button.d.ts +9 -9
  10. package/dist/cjs/types/components/Button/Buttons.stories.d.ts +139 -138
  11. package/dist/cjs/types/components/Calendar/Calendar.stories.d.ts +213 -388
  12. package/dist/cjs/types/components/Checkbox/Checkbox.stories.d.ts +92 -91
  13. package/dist/cjs/types/components/Collapsible/Collapsible.d.ts +3 -3
  14. package/dist/cjs/types/components/DataTable/DataTable.stories.d.ts +1 -1
  15. package/dist/cjs/types/components/DatePicker/DatePicker.stories.d.ts +224 -399
  16. package/dist/cjs/types/components/Dialog/Dialog.d.ts +2 -2
  17. package/dist/cjs/types/components/Dialog/Dialog.stories.d.ts +1 -1
  18. package/dist/cjs/types/components/Dropdown/Dropdown.d.ts +21 -21
  19. package/dist/cjs/types/components/Dropdown/Dropdown.stories.d.ts +134 -134
  20. package/dist/cjs/types/components/DropdownMenu/DropdownMenu.d.ts +3 -3
  21. package/dist/cjs/types/components/DropdownMenu/DropdownMenu.stories.d.ts +1 -1
  22. package/dist/cjs/types/components/Icon/Icon.stories.d.ts +294 -294
  23. package/dist/cjs/types/components/Input/Input.d.ts +8 -8
  24. package/dist/cjs/types/components/Input/Input.stories.d.ts +225 -225
  25. package/dist/cjs/types/components/InputFilter/InputFilter.d.ts +18 -18
  26. package/dist/cjs/types/components/InputFilter/InputFilter.stories.d.ts +127 -127
  27. package/dist/cjs/types/components/Label/Label.stories.d.ts +87 -86
  28. package/dist/cjs/types/components/Loading/Loading.stories.d.ts +10 -10
  29. package/dist/cjs/types/components/Navbar/Navbar.stories.d.ts +1 -1
  30. package/dist/cjs/types/components/Popover/Popover.stories.d.ts +1 -1
  31. package/dist/cjs/types/components/ProgressBar/ProgressBar.stories.d.ts +9 -9
  32. package/dist/cjs/types/components/RadioGroup/RadioGroup.stories.d.ts +85 -84
  33. package/dist/cjs/types/components/Search/Search.stories.d.ts +114 -114
  34. package/dist/cjs/types/components/Slider/Slider.stories.d.ts +85 -83
  35. package/dist/cjs/types/components/Switch/Switch.stories.d.ts +92 -91
  36. package/dist/cjs/types/components/Table/Table.d.ts +2 -2
  37. package/dist/cjs/types/components/Table/Table.stories.d.ts +87 -86
  38. package/dist/cjs/types/components/Tabs/Tabs.d.ts +6 -0
  39. package/dist/cjs/types/components/Tabs/Tabs.stories.d.ts +57 -31
  40. package/dist/cjs/types/components/Text/Text.stories.d.ts +3 -3
  41. package/dist/cjs/types/components/TextInput/TextInput.d.ts +21 -21
  42. package/dist/cjs/types/components/TextInput/TextInput.stories.d.ts +128 -128
  43. package/dist/cjs/types/components/Toast/Toast.stories.d.ts +91 -90
  44. package/dist/cjs/types/components/Toast/useToast.d.ts +3 -0
  45. package/dist/cjs/types/components/Tooltip/Tooltip.stories.d.ts +1 -1
  46. package/dist/cjs/types/icons/type.d.ts +0 -1
  47. package/dist/components/Tabs/Tabs.js +24 -15
  48. package/dist/components/Tabs/Tabs.stories.js +12 -0
  49. package/dist/components/Toast/Toast.js +1 -1
  50. package/dist/components/Toast/Toaster.js +2 -2
  51. package/dist/esm/bundle.css +993 -979
  52. package/dist/esm/bundle.js +3 -3
  53. package/dist/esm/bundle.js.map +1 -1
  54. package/dist/esm/types/components/ActionButton/ActionButton.d.ts +6 -6
  55. package/dist/esm/types/components/ActionButton/ActionButton.stories.d.ts +97 -96
  56. package/dist/esm/types/components/AlertDialog/AlertDialog.stories.d.ts +1 -1
  57. package/dist/esm/types/components/Avatar/Avatar.stories.d.ts +7 -7
  58. package/dist/esm/types/components/Avatar/AvatarGroup.stories.d.ts +1 -1
  59. package/dist/esm/types/components/Button/Button.d.ts +9 -9
  60. package/dist/esm/types/components/Button/Buttons.stories.d.ts +139 -138
  61. package/dist/esm/types/components/Calendar/Calendar.stories.d.ts +213 -388
  62. package/dist/esm/types/components/Checkbox/Checkbox.stories.d.ts +92 -91
  63. package/dist/esm/types/components/Collapsible/Collapsible.d.ts +3 -3
  64. package/dist/esm/types/components/DataTable/DataTable.stories.d.ts +1 -1
  65. package/dist/esm/types/components/DatePicker/DatePicker.stories.d.ts +224 -399
  66. package/dist/esm/types/components/Dialog/Dialog.d.ts +2 -2
  67. package/dist/esm/types/components/Dialog/Dialog.stories.d.ts +1 -1
  68. package/dist/esm/types/components/Dropdown/Dropdown.d.ts +21 -21
  69. package/dist/esm/types/components/Dropdown/Dropdown.stories.d.ts +134 -134
  70. package/dist/esm/types/components/DropdownMenu/DropdownMenu.d.ts +3 -3
  71. package/dist/esm/types/components/DropdownMenu/DropdownMenu.stories.d.ts +1 -1
  72. package/dist/esm/types/components/Icon/Icon.stories.d.ts +294 -294
  73. package/dist/esm/types/components/Input/Input.d.ts +8 -8
  74. package/dist/esm/types/components/Input/Input.stories.d.ts +225 -225
  75. package/dist/esm/types/components/InputFilter/InputFilter.d.ts +18 -18
  76. package/dist/esm/types/components/InputFilter/InputFilter.stories.d.ts +127 -127
  77. package/dist/esm/types/components/Label/Label.stories.d.ts +87 -86
  78. package/dist/esm/types/components/Loading/Loading.stories.d.ts +10 -10
  79. package/dist/esm/types/components/Navbar/Navbar.stories.d.ts +1 -1
  80. package/dist/esm/types/components/Popover/Popover.stories.d.ts +1 -1
  81. package/dist/esm/types/components/ProgressBar/ProgressBar.stories.d.ts +9 -9
  82. package/dist/esm/types/components/RadioGroup/RadioGroup.stories.d.ts +85 -84
  83. package/dist/esm/types/components/Search/Search.stories.d.ts +114 -114
  84. package/dist/esm/types/components/Slider/Slider.stories.d.ts +85 -83
  85. package/dist/esm/types/components/Switch/Switch.stories.d.ts +92 -91
  86. package/dist/esm/types/components/Table/Table.d.ts +2 -2
  87. package/dist/esm/types/components/Table/Table.stories.d.ts +87 -86
  88. package/dist/esm/types/components/Tabs/Tabs.d.ts +6 -0
  89. package/dist/esm/types/components/Tabs/Tabs.stories.d.ts +57 -31
  90. package/dist/esm/types/components/Text/Text.stories.d.ts +3 -3
  91. package/dist/esm/types/components/TextInput/TextInput.d.ts +21 -21
  92. package/dist/esm/types/components/TextInput/TextInput.stories.d.ts +128 -128
  93. package/dist/esm/types/components/Toast/Toast.stories.d.ts +91 -90
  94. package/dist/esm/types/components/Toast/useToast.d.ts +3 -0
  95. package/dist/esm/types/components/Tooltip/Tooltip.stories.d.ts +1 -1
  96. package/dist/esm/types/icons/type.d.ts +0 -1
  97. package/dist/index.d.ts +101 -93
  98. package/dist/src/theme/global.css +998 -981
  99. package/package.json +2 -1
  100. package/src/components/Tabs/Tabs.stories.tsx +38 -0
  101. package/src/components/Tabs/Tabs.tsx +31 -9
  102. package/src/components/Toast/Toast.tsx +1 -1
  103. package/src/components/Toast/Toaster.tsx +12 -1
  104. package/src/components/Toast/useToast.ts +3 -0
  105. package/dist/theme/global.css +0 -30
  106. package/dist/theme/main-preset.js +0 -283
  107. package/dist/theme/plugins/utilities/typography.js +0 -93
  108. package/dist/theme/presets/colors.js +0 -136
  109. package/dist/theme/theme.d.ts +0 -69
  110. package/dist/theme/themes/xspector/baseline.css +0 -9
  111. package/dist/theme/themes/xspector/color.css +0 -81
  112. package/dist/theme/themes/xspector/components/action-button.css +0 -100
  113. package/dist/theme/themes/xspector/components/dropdown-menu.css +0 -28
  114. package/dist/theme/themes/xspector/components/loading.css +0 -11
  115. package/dist/theme/themes/xspector/components/switch.css +0 -30
  116. package/dist/theme/themes/xspector/palette.css +0 -122
  117. package/dist/theme/themes/xspector/state.css +0 -89
  118. package/dist/theme/themes/xspector/transparent.css +0 -68
  119. package/dist/theme/themes/xspector/typography.css +0 -27
  120. package/dist/theme/tokens/baseline.css +0 -12
  121. package/dist/theme/tokens/color.css +0 -78
  122. package/dist/theme/tokens/components/action-button.css +0 -127
  123. package/dist/theme/tokens/components/button.css +0 -512
  124. package/dist/theme/tokens/components/dropdown-menu.css +0 -27
  125. package/dist/theme/tokens/components/loading.css +0 -11
  126. package/dist/theme/tokens/components/navbar.css +0 -8
  127. package/dist/theme/tokens/components/progress-bar.css +0 -8
  128. package/dist/theme/tokens/components/switch.css +0 -30
  129. package/dist/theme/tokens/palette.css +0 -122
  130. package/dist/theme/tokens/state.css +0 -82
  131. package/dist/theme/tokens/transparent.css +0 -68
  132. package/dist/theme/tokens/typography.css +0 -199
  133. package/dist/theme/tokens/variables.css +0 -28
  134. package/dist/theme/utils.js +0 -109
@@ -5,7 +5,7 @@ import "./Tabs.css";
5
5
  import ActionButton from "../ActionButton/ActionButton";
6
6
  import Icon from "../Icon/Icon";
7
7
  import { Loading } from "@/index";
8
- const Tabs = ({ tabs = [], value, initialTab = 0, tabBarSize = 38, enableBorderLine = true, enableAddTabButton = false, keepIconSpace = true, disabled = false, keepMounted = false, tabMode = "start", className, tabBarClassName, tabBarContainerClassName, tabBarWrapperClassName, tabButtonClassName, tabButtonActiveClassName, tabContentClassName, addTabButtonWrapperClassName, borderSliderClassName, leftAction, rightAction, onAddTab, onTabChange, }) => {
8
+ const Tabs = ({ tabs = [], value, initialTab = 0, tabBarSize = 38, enableBorderLine = true, enableAddTabButton = false, keepIconSpace = true, disabled = false, keepMounted = false, tabMode = "start", className, tabBarClassName, tabBarContainerClassName, tabBarWrapperClassName, tabButtonClassName, tabButtonActiveClassName, tabButtonActiveDisableClassName, tabButtonDisableClassName, tabContentClassName, addTabButtonWrapperClassName, borderSliderClassName, leftAction, rightAction, onAddTab, onTabChange, }) => {
9
9
  const [activeTab, setActiveTab] = useState(initialTab);
10
10
  const [sliderStyle, setSliderStyle] = useState({
11
11
  width: "0px",
@@ -62,25 +62,34 @@ const Tabs = ({ tabs = [], value, initialTab = 0, tabBarSize = 38, enableBorderL
62
62
  [`border-b-[1px] border-base-stroke`]: enableBorderLine,
63
63
  "border-state-disable-outline": disabled,
64
64
  "flex-1": tabMode === "justify",
65
- tabBarContainerClassName,
66
- }), children: [leftAction, _jsx("div", { className: cn("relative flex flex-row overflow-x-auto", {
65
+ }, tabBarContainerClassName), children: [leftAction, _jsx("div", { className: cn("relative flex flex-row overflow-x-auto", {
67
66
  "flex-1": tabMode === "justify",
68
67
  }, tabBarWrapperClassName), children: _jsxs("div", { className: cn("tabs-scrollbar overflow-x-auto w-full", `relative flex gap-3 h-[${tabBarSize}px] box-border`, {
69
68
  "gap-0": tabMode === "justify",
70
69
  }, tabBarClassName), style: {
71
70
  justifyContent: tabMode === "justify" ? "stretch" : tabMode,
72
- }, role: "tablist", children: [tabs.map((tab, index) => (_jsxs("button", { ref: (el) => (tabRefs.current[index] = el), role: "tab", "aria-selected": index === activeTab, "aria-controls": `tab-content-${index}`, disabled: disabled || tab.disabled, id: `tab-${index}`, className: cn("flex justify-center flex-row items-center py-3 cursor-pointer transition-colors duration-300 box-border gap-1 flex-shrink-0 typography-subtitile6", {
73
- "text-foreground": index === activeTab,
74
- "text-text-grey-medium hover:text-text-grey-dark active:text-text-dark": index !== activeTab,
75
- "text-state-disable-solid pointer-events-none": disabled || tab.disabled,
76
- "text-state-disable-outline": (index === activeTab && disabled) || tab.disabled,
77
- [tabButtonClassName !== null && tabButtonClassName !== void 0 ? tabButtonClassName : ""]: true,
78
- [tabButtonActiveClassName !== null && tabButtonActiveClassName !== void 0 ? tabButtonActiveClassName : ""]: index === activeTab,
79
- "flex-1": tabMode === "justify",
80
- }), onClick: () => {
81
- setActiveTab(index);
82
- onTabChange === null || onTabChange === void 0 ? void 0 : onTabChange(index);
83
- }, children: [(keepIconSpace || tab.startTabContent) && (_jsx("div", { className: "h-full w-3 flex items-center justify-center", children: tab.isLoading ? _jsx(Loading, {}) : tab.startTabContent })), tab.label, (keepIconSpace || tab.endTabContent) && (_jsx("div", { className: "h-full w-3 flex items-center justify-center", children: tab.endTabContent }))] }, index))), _jsx("div", { className: cn(`absolute left-0 bottom-0 h-[2px] rounded-full bg-foreground transition-all duration-300 ease-in-out`, {
71
+ }, role: "tablist", children: [tabs.map((tab, index) => {
72
+ var _a, _b, _c, _d, _e, _f, _g, _h;
73
+ return (_jsxs("button", { ref: (el) => (tabRefs.current[index] = el), role: "tab", "aria-selected": index === activeTab, "aria-controls": `tab-content-${index}`, disabled: disabled || tab.disabled, id: `tab-${index}`, className: cn("flex justify-center flex-row items-center py-3 cursor-pointer transition-colors duration-300 box-border gap-1 flex-shrink-0 typography-subtitile6", {
74
+ "text-foreground": index === activeTab,
75
+ "text-text-grey-medium hover:text-text-grey-dark active:text-text-dark": index !== activeTab,
76
+ // -- disabled
77
+ "text-state-disable-solid pointer-events-none": disabled || tab.disabled,
78
+ [(_b = (_a = tab.disableClassName) !== null && _a !== void 0 ? _a : tabButtonDisableClassName) !== null && _b !== void 0 ? _b : ""]: disabled || tab.disabled,
79
+ // --
80
+ "text-state-disable-outline": index === activeTab && (disabled || tab.disabled),
81
+ // -- active disabled --
82
+ [(_d = (_c = tab.activeDisableClassName) !== null && _c !== void 0 ? _c : tabButtonActiveDisableClassName) !== null && _d !== void 0 ? _d : ""]: index === activeTab && (disabled || tab.disabled),
83
+ // -- class name
84
+ [(_f = (_e = tab.className) !== null && _e !== void 0 ? _e : tabButtonClassName) !== null && _f !== void 0 ? _f : ""]: true,
85
+ // -- active --
86
+ [(_h = (_g = tab.activeClassName) !== null && _g !== void 0 ? _g : tabButtonActiveClassName) !== null && _h !== void 0 ? _h : ""]: index === activeTab,
87
+ "flex-1": tabMode === "justify",
88
+ }), onClick: () => {
89
+ setActiveTab(index);
90
+ onTabChange === null || onTabChange === void 0 ? void 0 : onTabChange(index);
91
+ }, children: [(keepIconSpace || tab.startTabContent) && (_jsx("div", { className: "h-full w-3 flex items-center justify-center", children: tab.isLoading ? _jsx(Loading, {}) : tab.startTabContent })), tab.label, (keepIconSpace || tab.endTabContent) && (_jsx("div", { className: "h-full w-3 flex items-center justify-center", children: tab.endTabContent }))] }, index));
92
+ }), _jsx("div", { className: cn(`absolute left-0 bottom-0 h-[2px] rounded-full bg-foreground transition-all duration-300 ease-in-out`, {
84
93
  "bg-state-disable-solid": disabled,
85
94
  }, borderSliderClassName), style: sliderStyle })] }) }), enableAddTabButton && (_jsx("div", { className: cn("sticky right-0 flex content-center items-center mx-4", addTabButtonWrapperClassName), children: _jsx(ActionButton, { variant: "outline", size: "sm", onClick: () => onAddTab === null || onAddTab === void 0 ? void 0 : onAddTab(), disabled: disabled, children: _jsx(Icon, { name: "plus" }) }) })), rightAction] }), _jsx("div", { className: cn("mt-4 text-foreground", tabContentClassName), role: "tabpanel", id: `tab-content-${activeTab}`, "aria-labelledby": `tab-${activeTab}`, children: tabs.map((tab, idx) => {
86
95
  var _a;
@@ -174,3 +174,15 @@ export const Controller = {
174
174
  } }))] }));
175
175
  },
176
176
  };
177
+ export const CustomClassname = {
178
+ args: {
179
+ initialTab: 0,
180
+ tabs: tabs.map((tab, i) => (Object.assign(Object.assign({}, tab), { disabled: i !== 0, activeClassName: "text-green-500",
181
+ // className: "text-red-500",
182
+ disableClassName: i === 1 && "text-pink-200", activeDisableClassName: "text-red-500" }))),
183
+ },
184
+ render: (args) => {
185
+ const props = Object.assign({}, args);
186
+ return (_jsxs("div", { className: "flex flex-row gap-4", children: [_jsx(Tabs, Object.assign({ tabs: tabs }, props, { tabButtonDisableClassName: "text-red-500", tabButtonActiveDisableClassName: "text-blue-500", tabBarContainerClassName: "border-red-500" })), _jsx(Tabs, Object.assign({ tabs: tabs }, props, { disabled: true, tabButtonDisableClassName: "text-red-500", tabButtonActiveDisableClassName: "text-blue-500", tabBarContainerClassName: "border-blue-500" }))] }));
187
+ },
188
+ };
@@ -46,7 +46,7 @@ const ToastTitle = React.forwardRef((_a, ref) => {
46
46
  ToastTitle.displayName = ToastPrimitives.Title.displayName;
47
47
  const ToastDescription = React.forwardRef((_a, ref) => {
48
48
  var { className } = _a, props = __rest(_a, ["className"]);
49
- return (_jsx(ToastPrimitives.Description, Object.assign({ ref: ref, className: cn("typography-subtitile5 text-input-default-tex", className) }, props)));
49
+ return (_jsx(ToastPrimitives.Description, Object.assign({ ref: ref, className: cn("typography-subtitile5 text-input-default-text", className) }, props)));
50
50
  });
51
51
  ToastDescription.displayName = ToastPrimitives.Description.displayName;
52
52
  export { ToastProvider, ToastViewport, Toast, ToastTitle, ToastDescription, ToastClose, ToastAction, };
@@ -20,7 +20,7 @@ export function Toaster(_a) {
20
20
  var { viewportClassName, titleClassName, descriptionClassName, contentClassName, iconWrapperClassName, actionWrapperClassName } = _a, toastProviderProps = __rest(_a, ["viewportClassName", "titleClassName", "descriptionClassName", "contentClassName", "iconWrapperClassName", "actionWrapperClassName"]);
21
21
  const { toasts, position } = useToast();
22
22
  return (_jsxs(ToastProvider, Object.assign({}, toastProviderProps, { children: [toasts.map(function (_a) {
23
- var { id, title, description, action, contentMode = "horizontal" } = _a, props = __rest(_a, ["id", "title", "description", "action", "contentMode"]);
24
- return (_jsxs(Toast, Object.assign({}, props, { children: [_jsx("div", { className: cn(toastIconVariants({ variant: props.variant }), iconWrapperClassName), children: _jsx(Icon, { type: "heroicons", name: "check-circle", className: "size-6" }) }), _jsxs("div", { className: cn(toastContentVariants({ contentMode }), contentClassName), children: [title && (_jsx(ToastTitle, { className: titleClassName, children: title })), description && (_jsx(ToastDescription, { className: descriptionClassName, children: description }))] }), _jsx("div", { className: cn("self-center ml-[var(--spacing-spacing-xl)]", actionWrapperClassName), children: action }), _jsx(ToastClose, {})] }), id));
23
+ var { id, title, description, action, contentMode = "horizontal", iconProps, renderIcon } = _a, props = __rest(_a, ["id", "title", "description", "action", "contentMode", "iconProps", "renderIcon"]);
24
+ return (_jsxs(Toast, Object.assign({}, props, { children: [_jsx("div", { className: cn(toastIconVariants({ variant: props.variant }), iconWrapperClassName), children: renderIcon ? (renderIcon === null || renderIcon === void 0 ? void 0 : renderIcon()) : (_jsx(Icon, Object.assign({ type: "heroicons", name: "check-circle", className: "size-6" }, iconProps))) }), _jsxs("div", { className: cn(toastContentVariants({ contentMode }), contentClassName), children: [title && (_jsx(ToastTitle, { className: titleClassName, children: title })), description && (_jsx(ToastDescription, { className: descriptionClassName, children: description }))] }), _jsx("div", { className: cn("self-center ml-[var(--spacing-spacing-xl)]", actionWrapperClassName), children: action }), _jsx(ToastClose, {})] }), id));
25
25
  }), _jsx(ToastViewport, { position: position, className: viewportClassName })] })));
26
26
  }