@julseb-lib/react 0.1.10 → 0.1.12
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.css +61 -117
- package/dist/julseb-lib-react.cjs.js +12 -12
- package/dist/julseb-lib-react.es.js +1868 -1794
- package/dist/julseb-lib-react.umd.js +12 -12
- package/dist/lib/Variables.ts +20 -19
- package/dist/lib/components/Accordion/Accordion.tsx +1 -1
- package/dist/lib/components/Accordion/AccordionContent.tsx +2 -2
- package/dist/lib/components/Accordion/AccordionTitle.tsx +4 -3
- package/dist/lib/components/Alert/Alert.tsx +2 -2
- package/dist/lib/components/Autocomplete/Autocomplete.tsx +1 -1
- package/dist/lib/components/Avatar/Avatar.tsx +3 -7
- package/dist/lib/components/BackToTop/BackToTop.tsx +4 -3
- package/dist/lib/components/Badge/Badge.tsx +1 -1
- package/dist/lib/components/Breadcrumbs/Breadcrumbs.tsx +1 -1
- package/dist/lib/components/Burger/Burger.tsx +11 -4
- package/dist/lib/components/Button/Button.tsx +5 -4
- package/dist/lib/components/ButtonGroup/ButtonGroup.tsx +4 -2
- package/dist/lib/components/ButtonIcon/ButtonFn.tsx +3 -1
- package/dist/lib/components/ButtonIcon/ButtonIcon.tsx +9 -2
- package/dist/lib/components/CodeContainer/CodeContainer.tsx +5 -5
- package/dist/lib/components/Cover/Cover.tsx +1 -1
- package/dist/lib/components/DragList/DragList.tsx +1 -1
- package/dist/lib/components/DragList/DragListItem.tsx +4 -3
- package/dist/lib/components/Drawer/Drawer.tsx +1 -1
- package/dist/lib/components/Dropdown/Dropdown.tsx +1 -1
- package/dist/lib/components/Fade/Fade.tsx +4 -4
- package/dist/lib/components/Fieldset/Fieldset.tsx +2 -2
- package/dist/lib/components/Footer/Footer.tsx +103 -0
- package/dist/lib/components/Footer/index.ts +1 -0
- package/dist/lib/components/Footer/types.ts +54 -0
- package/dist/lib/components/Form/Form.tsx +1 -1
- package/dist/lib/components/Header/Header.tsx +15 -6
- package/dist/lib/components/Header/types.ts +1 -1
- package/dist/lib/components/Image/Image.tsx +1 -1
- package/dist/lib/components/Input/Input.tsx +2 -2
- package/dist/lib/components/Input/templates/ColorInput.tsx +4 -0
- package/dist/lib/components/InputCheck/InputCheck.tsx +2 -2
- package/dist/lib/components/InputComponents/InputButton.tsx +7 -2
- package/dist/lib/components/InputComponents/classes.ts +1 -1
- package/dist/lib/components/InputContainer/InputContainer.tsx +1 -1
- package/dist/lib/components/InputCounter/InputCounter.tsx +2 -2
- package/dist/lib/components/InputImage/InputImage.tsx +1 -1
- package/dist/lib/components/InputPhone/InputPhone.tsx +1 -1
- package/dist/lib/components/InputPin/InputPin.tsx +3 -1
- package/dist/lib/components/InputSlider/InputSlider.tsx +1 -1
- package/dist/lib/components/Key/Key.tsx +2 -2
- package/dist/lib/components/ListGroup/ListGroup.tsx +1 -1
- package/dist/lib/components/ListGroup/ListGroupItem.tsx +1 -1
- package/dist/lib/components/ListGroup/ListGroupTitle.tsx +1 -1
- package/dist/lib/components/Loader/Loader.tsx +1 -1
- package/dist/lib/components/Loader/templates/LoaderOne.tsx +1 -1
- package/dist/lib/components/Loader/templates/LoaderThree.tsx +3 -3
- package/dist/lib/components/Loader/templates/LoaderTwo.tsx +2 -2
- package/dist/lib/components/MarkdownContainer/MarkdownContainer.tsx +2 -2
- package/dist/lib/components/Meta/Meta.tsx +125 -0
- package/dist/lib/components/Meta/index.ts +1 -0
- package/dist/lib/components/Meta/types.ts +35 -0
- package/dist/lib/components/Modal/Modal.tsx +1 -1
- package/dist/lib/components/PageLayout/PageLayout.tsx +64 -0
- package/dist/lib/components/PageLayout/index.ts +1 -0
- package/dist/lib/components/PageLayout/types.ts +29 -0
- package/dist/lib/components/PageLoading/PageLoading.tsx +1 -1
- package/dist/lib/components/Pagination/Pagination.tsx +1 -1
- package/dist/lib/components/Pagination/PaginationButton.tsx +1 -1
- package/dist/lib/components/Paginator/Paginator.tsx +1 -1
- package/dist/lib/components/ProgressBar/ProgressBar.tsx +4 -7
- package/dist/lib/components/ProgressBar/types.ts +1 -1
- package/dist/lib/components/ProgressCircle/ProgressCircle.tsx +7 -3
- package/dist/lib/components/ProgressCircle/types.ts +1 -2
- package/dist/lib/components/Rating/Rating.tsx +1 -1
- package/dist/lib/components/Select/Select.tsx +1 -1
- package/dist/lib/components/Skeleton/Skeleton.tsx +5 -2
- package/dist/lib/components/Skeleton/SkeletonCard.tsx +4 -1
- package/dist/lib/components/Slideshow/Slideshow.tsx +1 -1
- package/dist/lib/components/Slideshow/SlideshowPagination.tsx +1 -1
- package/dist/lib/components/SrOnly/SrOnly.tsx +33 -0
- package/dist/lib/components/SrOnly/index.ts +1 -0
- package/dist/lib/components/SrOnly/types.ts +7 -0
- package/dist/lib/components/Sticky/Sticky.tsx +8 -8
- package/dist/lib/components/Table/Table.tsx +8 -5
- package/dist/lib/components/Tabs/Tabs.tsx +1 -1
- package/dist/lib/components/Tabs/TabsButton.tsx +4 -2
- package/dist/lib/components/Tabs/TabsButtonsContainer.tsx +1 -1
- package/dist/lib/components/Tabs/TabsContainer.tsx +1 -1
- package/dist/lib/components/Tabs/TabsContent.tsx +1 -1
- package/dist/lib/components/Tag/Tag.tsx +1 -1
- package/dist/lib/components/Text/templates/Blockquote.tsx +1 -1
- package/dist/lib/components/Text/templates/Dl.tsx +1 -1
- package/dist/lib/components/Text/templates/H1.tsx +2 -2
- package/dist/lib/components/Text/templates/H2.tsx +2 -2
- package/dist/lib/components/Text/templates/H3.tsx +2 -2
- package/dist/lib/components/Text/templates/H4.tsx +2 -2
- package/dist/lib/components/Text/templates/H5.tsx +2 -2
- package/dist/lib/components/Text/templates/H6.tsx +1 -1
- package/dist/lib/components/Text/templates/Ol.tsx +1 -1
- package/dist/lib/components/Text/templates/P.tsx +1 -1
- package/dist/lib/components/Text/templates/Small.tsx +1 -1
- package/dist/lib/components/Text/templates/Ul.tsx +1 -1
- package/dist/lib/components/Toast/Toast.tsx +5 -4
- package/dist/lib/components/Tooltip/Tooltip.tsx +29 -22
- package/dist/lib/components/Wrapper/Wrapper.tsx +1 -1
- package/dist/lib/index.css +61 -117
- package/dist/lib/index.ts +4 -1
- package/dist/lib/types/components-items-props.ts +1 -24
- package/dist/lib/types/components-props.ts +4 -1
- package/dist/lib/types/global.ts +11 -13
- package/dist/lib/utils/design-tokens.ts +2 -7
- package/dist/lib/utils/gen-gap.ts +21 -21
- package/dist/lib/utils/gen-ring-color.ts +21 -0
- package/dist/lib/utils/index.ts +1 -0
- package/package.json +3 -3
- package/dist/lib/components/IconMenu/IconMenu.module.css +0 -239
- package/dist/lib/components/IconMenu/IconMenu.tsx +0 -101
- package/dist/lib/components/IconMenu/IconMenuItem.tsx +0 -53
- package/dist/lib/components/IconMenu/index.ts +0 -1
- package/dist/lib/components/IconMenu/types.ts +0 -48
- package/dist/react.css +0 -1
|
@@ -2,7 +2,7 @@ import { type FC } from "react"
|
|
|
2
2
|
import { BiX } from "react-icons/bi"
|
|
3
3
|
import { Text } from "../Text"
|
|
4
4
|
import { Loader } from "../Loader"
|
|
5
|
-
import { clsx, genTextColorHover } from "../../utils"
|
|
5
|
+
import { clsx, genRingColor, genTextColorHover } from "../../utils"
|
|
6
6
|
import { genToastColors } from "./utils"
|
|
7
7
|
import type { ILibToast } from "./types"
|
|
8
8
|
|
|
@@ -19,11 +19,11 @@ import type { ILibToast } from "./types"
|
|
|
19
19
|
* closeToast={handleClose}
|
|
20
20
|
* />
|
|
21
21
|
*
|
|
22
|
-
* @extends
|
|
22
|
+
* @extends HTMLDivElement
|
|
23
23
|
*
|
|
24
24
|
* @prop {string} [props.className] - Additional CSS classes to apply to the toast container.
|
|
25
25
|
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
26
|
-
* @prop {React.Ref<
|
|
26
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the toast element.
|
|
27
27
|
* @prop {React.ReactNode} [props.body] - Body content to display below the title.
|
|
28
28
|
* @prop {React.ReactNode} [props.title] - Title content to display in the toast header.
|
|
29
29
|
* @prop {"success" | "error" | "warning" | "info" | "loading"} [props.status="success"] - Status type that determines the toast appearance and behavior.
|
|
@@ -85,8 +85,9 @@ export const Toast: FC<ILibToast> = ({
|
|
|
85
85
|
<button
|
|
86
86
|
onClick={closeToast}
|
|
87
87
|
className={clsx(
|
|
88
|
-
"inline-flex justify-center items-center size-6",
|
|
88
|
+
"inline-flex justify-center items-center rounded-md outline-none size-6",
|
|
89
89
|
genTextColorHover["gray"],
|
|
90
|
+
genRingColor["gray"],
|
|
90
91
|
"toast-close-button",
|
|
91
92
|
)}
|
|
92
93
|
>
|
|
@@ -9,36 +9,43 @@ import type {
|
|
|
9
9
|
} from "../../types"
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
* Tooltip component for displaying contextual information on hover or click.
|
|
12
|
+
* Tooltip component for displaying contextual information on hover or click interactions.
|
|
13
13
|
*
|
|
14
14
|
* @component
|
|
15
|
-
* @example
|
|
16
|
-
* <Tooltip tooltip="Hello world!" position="top" trigger="hover" backgroundColor="black" textColor="white" />
|
|
17
15
|
*
|
|
18
|
-
* @
|
|
16
|
+
* @example
|
|
17
|
+
* <Tooltip
|
|
18
|
+
* tooltip="This is a helpful tooltip"
|
|
19
|
+
* position="top"
|
|
20
|
+
* trigger="hover"
|
|
21
|
+
* backgroundColor="black-80"
|
|
22
|
+
* textColor="white"
|
|
23
|
+
* >
|
|
24
|
+
* <button>Hover me</button>
|
|
25
|
+
* </Tooltip>
|
|
19
26
|
*
|
|
20
27
|
* @extends HTMLDivElement
|
|
21
28
|
*
|
|
22
|
-
* @prop {
|
|
23
|
-
* @prop {
|
|
24
|
-
* @prop {
|
|
25
|
-
* @prop {React.
|
|
26
|
-
* @prop {
|
|
27
|
-
* @prop {
|
|
28
|
-
* @prop {
|
|
29
|
-
* @prop {
|
|
30
|
-
* @prop {
|
|
31
|
-
* @prop {
|
|
32
|
-
* @prop {
|
|
33
|
-
* @prop {
|
|
34
|
-
* @prop {
|
|
35
|
-
* @prop {
|
|
36
|
-
* @prop {function} [props.
|
|
37
|
-
* @prop {function} [props.
|
|
38
|
-
* @prop {function} [props.onMouseLeave] - Mouse leave event handler.
|
|
39
|
-
* @prop {object} [props.rest] - Additional props spread to the tooltip container.
|
|
29
|
+
* @prop {string} [props.className] - Additional CSS classes to apply to the tooltip container.
|
|
30
|
+
* @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
|
|
31
|
+
* @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the tooltip container element.
|
|
32
|
+
* @prop {React.ReactNode} [props.children] - The element that triggers the tooltip on interaction.
|
|
33
|
+
* @prop {string} [props.tooltip] - The tooltip text content to display.
|
|
34
|
+
* @prop {"top" | "bottom" | "left" | "right"} [props.position="top"] - Position of the tooltip relative to the trigger element.
|
|
35
|
+
* @prop {boolean} [props.hideArrow] - Whether to hide the tooltip arrow pointer.
|
|
36
|
+
* @prop {"hover" | "click"} [props.trigger="hover"] - Event that triggers the tooltip display.
|
|
37
|
+
* @prop {LibAllColorsAndOverlays} [props.backgroundColor="black-80"] - Background color for the tooltip.
|
|
38
|
+
* @prop {LibAllColors} [props.textColor="white"] - Text color for the tooltip content.
|
|
39
|
+
* @prop {LibSpacers} [props.offset="xs"] - Distance offset between tooltip and trigger element.
|
|
40
|
+
* @prop {string} [props.tooltipClasses] - Additional CSS classes for the tooltip element.
|
|
41
|
+
* @prop {React.CSSProperties} [props.tooltipStyle] - Additional inline styles for the tooltip element.
|
|
42
|
+
* @prop {function} [props.onClick] - Click event handler for the trigger element.
|
|
43
|
+
* @prop {function} [props.onMouseEnter] - Mouse enter event handler for the trigger element.
|
|
44
|
+
* @prop {function} [props.onMouseLeave] - Mouse leave event handler for the trigger element.
|
|
40
45
|
*
|
|
41
46
|
* @returns {JSX.Element} The rendered Tooltip component.
|
|
47
|
+
*
|
|
48
|
+
* @see https://doc-julseb-lib-react.vercel.app/components/tooltip
|
|
42
49
|
*/
|
|
43
50
|
export const Tooltip: FC<ILibTooltip> = ({
|
|
44
51
|
className,
|
|
@@ -43,7 +43,7 @@ export const Wrapper: FC<ILibWrapper> = ({
|
|
|
43
43
|
<Element
|
|
44
44
|
ref={ref}
|
|
45
45
|
className={clsx(
|
|
46
|
-
"z-10 relative flex sm:flex-row flex-col justify-stretch sm:justify-center-safe gap-
|
|
46
|
+
"z-10 relative flex sm:flex-row flex-col justify-stretch sm:justify-center-safe gap-5 px-4 md:px-5 lg:px-12 w-full",
|
|
47
47
|
(genBgAllColors as any)[backgroundColor],
|
|
48
48
|
genMinHeight[minHeight],
|
|
49
49
|
genGap[gap],
|
package/dist/lib/index.css
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
@import "tailwindcss";
|
|
3
3
|
/* @custom-variant dark (&:where(.dark, .dark *)); */
|
|
4
4
|
|
|
5
|
+
:root {
|
|
6
|
+
--font-lato: "Lato", sans-serif;
|
|
7
|
+
--font-sans: var(--font-lato);
|
|
8
|
+
--font-mono: monospace;
|
|
9
|
+
}
|
|
10
|
+
|
|
5
11
|
@theme {
|
|
6
12
|
--color-primary-50: var(--color-blue-50);
|
|
7
13
|
--color-primary-100: var(--color-blue-100);
|
|
@@ -73,12 +79,6 @@
|
|
|
73
79
|
--color-background: var(--color-white);
|
|
74
80
|
--color-font: var(--color-black);
|
|
75
81
|
|
|
76
|
-
--font-lato:
|
|
77
|
-
"Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
|
|
78
|
-
sans-serif;
|
|
79
|
-
--font-family-body: var(--font-lato);
|
|
80
|
-
--font-family-code: monospace;
|
|
81
|
-
|
|
82
82
|
--font-weight-thin: 100;
|
|
83
83
|
--font-weight-light: 300;
|
|
84
84
|
--font-weight-normal: 400;
|
|
@@ -100,7 +100,16 @@
|
|
|
100
100
|
rgba(255, 255, 255, 0.35) 100%
|
|
101
101
|
);
|
|
102
102
|
|
|
103
|
-
--
|
|
103
|
+
--font-sans: var(--font-lato);
|
|
104
|
+
--font-mono: monospace;
|
|
105
|
+
|
|
106
|
+
--spacer-2xs: 4px;
|
|
107
|
+
--spacer-xs: 8px;
|
|
108
|
+
--spacer-sm: 12px;
|
|
109
|
+
--spacer-md: 16px;
|
|
110
|
+
--spacer-lg: 24px;
|
|
111
|
+
--spacer-xl: 32px;
|
|
112
|
+
--spacer-2xl: 48px;
|
|
104
113
|
|
|
105
114
|
--main-default: 600px;
|
|
106
115
|
--main-large: 800px;
|
|
@@ -109,64 +118,54 @@
|
|
|
109
118
|
--aside-default: 250px;
|
|
110
119
|
--aside-small: 200px;
|
|
111
120
|
|
|
112
|
-
--shadow-
|
|
113
|
-
0px 10px 14px 8px rgba(0, 0, 0, 0.2), 0px 4px 4px rgba(0, 0, 0, 0.3);
|
|
114
|
-
--shadow-xl:
|
|
115
|
-
0px 8px 12px 6px rgba(0, 0, 0, 0.15), 0px 4px 4px rgba(0, 0, 0, 0.3);
|
|
116
|
-
--shadow-lg:
|
|
117
|
-
0px 6px 10px 4px rgba(0, 0, 0, 0.15), 0px 2px 3px rgba(0, 0, 0, 0.3);
|
|
118
|
-
--shadow-md:
|
|
119
|
-
0px 4px 8px 3px rgba(0, 0, 0, 0.15), 0px 1px 3px rgba(0, 0, 0, 0.3);
|
|
120
|
-
--shadow-sm:
|
|
121
|
-
0px 1px 2px rgba(0, 0, 0, 0.3), 0px 2px 6px 2px rgba(0, 0, 0, 0.15);
|
|
121
|
+
--shadow-2xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);
|
|
122
122
|
--shadow-xs:
|
|
123
123
|
0px 1px 2px rgba(0, 0, 0, 0.3), 0px 1px 3px 1px rgba(0, 0, 0, 0.15);
|
|
124
|
-
--shadow-
|
|
124
|
+
--shadow-sm:
|
|
125
|
+
0px 1px 2px rgba(0, 0, 0, 0.3), 0px 2px 6px 2px rgba(0, 0, 0, 0.15);
|
|
126
|
+
--shadow-md:
|
|
127
|
+
0px 4px 8px 3px rgba(0, 0, 0, 0.15), 0px 1px 3px rgba(0, 0, 0, 0.3);
|
|
128
|
+
--shadow-lg:
|
|
129
|
+
0px 6px 10px 4px rgba(0, 0, 0, 0.15), 0px 2px 3px rgba(0, 0, 0, 0.3);
|
|
130
|
+
--shadow-xl:
|
|
131
|
+
0px 8px 12px 6px rgba(0, 0, 0, 0.15), 0px 4px 4px rgba(0, 0, 0, 0.3);
|
|
132
|
+
--shadow-2xl:
|
|
133
|
+
0px 10px 14px 8px rgba(0, 0, 0, 0.2), 0px 4px 4px rgba(0, 0, 0, 0.3);
|
|
125
134
|
--shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.06);
|
|
126
135
|
--shadow-none: none;
|
|
127
136
|
|
|
128
|
-
--spacer-2xs: 4px;
|
|
129
|
-
--spacer-xs: 8px;
|
|
130
|
-
--spacer-sm: 12px;
|
|
131
|
-
--spacer-md: 16px;
|
|
132
|
-
--spacer-lg: 24px;
|
|
133
|
-
--spacer-xl: 32px;
|
|
134
|
-
--spacer-2xl: 48px;
|
|
135
|
-
|
|
136
137
|
--animate-cubic-bezier: cubic-bezier(0.5, 0, 0.5, 1);
|
|
137
138
|
|
|
138
|
-
--
|
|
139
|
-
--
|
|
140
|
-
--
|
|
141
|
-
|
|
142
|
-
--
|
|
143
|
-
--
|
|
144
|
-
--
|
|
145
|
-
--
|
|
146
|
-
--
|
|
147
|
-
--
|
|
148
|
-
--
|
|
149
|
-
--
|
|
150
|
-
--
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
body {
|
|
156
|
-
font-family: var(--font-family-body);
|
|
157
|
-
}
|
|
139
|
+
--transition-short: all 200ms ease;
|
|
140
|
+
--transition-long: all 500ms ease;
|
|
141
|
+
--transition-bezier: all 500ms cubic-bezier(0.25, 0.75, 0, 0.66);
|
|
142
|
+
|
|
143
|
+
--text-display-h1: 5rem;
|
|
144
|
+
--text-display-h2: 4rem;
|
|
145
|
+
--text-display-h3: 3.5rem;
|
|
146
|
+
--text-display-h4: 3rem;
|
|
147
|
+
--text-display-h5: 2.5rem;
|
|
148
|
+
--text-h1: 2.5rem;
|
|
149
|
+
--text-h2: 2rem;
|
|
150
|
+
--text-h3: 1.8rem;
|
|
151
|
+
--text-h4: 1.5rem;
|
|
152
|
+
--text-h5: 1.3rem;
|
|
153
|
+
--text-h6: 1.1rem;
|
|
154
|
+
--text-body: 1rem;
|
|
155
|
+
--text-small: 0.875rem;
|
|
158
156
|
}
|
|
159
157
|
|
|
160
158
|
/*====================== Common styles ======================*/
|
|
161
159
|
|
|
162
160
|
html,
|
|
163
161
|
body {
|
|
164
|
-
font-family: var(--font-
|
|
162
|
+
font-family: var(--font-sans);
|
|
165
163
|
width: 100%;
|
|
166
164
|
min-height: 100vh;
|
|
167
165
|
background-color: var(--color-background);
|
|
168
166
|
color: var(--color-font);
|
|
169
167
|
max-width: 100dvw;
|
|
168
|
+
line-height: var(--leading-normal);
|
|
170
169
|
|
|
171
170
|
&.dark {
|
|
172
171
|
--color-background: var(--color-black);
|
|
@@ -181,7 +180,7 @@ body {
|
|
|
181
180
|
a,
|
|
182
181
|
button {
|
|
183
182
|
cursor: pointer;
|
|
184
|
-
transition:
|
|
183
|
+
transition: var(--transition-short);
|
|
185
184
|
|
|
186
185
|
&:disabled {
|
|
187
186
|
cursor: not-allowed;
|
|
@@ -195,73 +194,73 @@ button {
|
|
|
195
194
|
max-width: 100%;
|
|
196
195
|
}
|
|
197
196
|
|
|
198
|
-
.no-scrollbar::-webkit-scrollbar {
|
|
199
|
-
display: none;
|
|
200
|
-
}
|
|
201
|
-
|
|
202
197
|
.no-scrollbar {
|
|
203
198
|
-ms-overflow-style: none;
|
|
204
199
|
scrollbar-width: none;
|
|
200
|
+
|
|
201
|
+
&::-webkit-scrollbar {
|
|
202
|
+
display: none;
|
|
203
|
+
}
|
|
205
204
|
}
|
|
206
205
|
|
|
207
206
|
/*====================== Fonts ======================*/
|
|
208
207
|
|
|
209
208
|
.lato-thin {
|
|
210
|
-
font-family: var(--font-
|
|
209
|
+
font-family: var(--font-sans);
|
|
211
210
|
font-weight: var(--font-weight-thin);
|
|
212
211
|
font-style: normal;
|
|
213
212
|
}
|
|
214
213
|
|
|
215
214
|
.lato-light {
|
|
216
|
-
font-family: var(--font-
|
|
215
|
+
font-family: var(--font-sans);
|
|
217
216
|
font-weight: var(--font-weight-light);
|
|
218
217
|
font-style: normal;
|
|
219
218
|
}
|
|
220
219
|
|
|
221
220
|
.lato-regular {
|
|
222
|
-
font-family: var(--font-
|
|
221
|
+
font-family: var(--font-sans);
|
|
223
222
|
font-weight: var(--font-weight-normal);
|
|
224
223
|
font-style: normal;
|
|
225
224
|
}
|
|
226
225
|
|
|
227
226
|
.lato-bold {
|
|
228
|
-
font-family: var(--font-
|
|
227
|
+
font-family: var(--font-sans);
|
|
229
228
|
font-weight: var(--font-weight-bold);
|
|
230
229
|
font-style: normal;
|
|
231
230
|
}
|
|
232
231
|
|
|
233
232
|
.lato-black {
|
|
234
|
-
font-family: var(--font-
|
|
233
|
+
font-family: var(--font-sans);
|
|
235
234
|
font-weight: var(--font-weight-black);
|
|
236
235
|
font-style: normal;
|
|
237
236
|
}
|
|
238
237
|
|
|
239
238
|
.lato-thin-italic {
|
|
240
|
-
font-family: var(--font-
|
|
239
|
+
font-family: var(--font-sans);
|
|
241
240
|
font-weight: var(--font-weight-thin);
|
|
242
241
|
font-style: italic;
|
|
243
242
|
}
|
|
244
243
|
|
|
245
244
|
.lato-light-italic {
|
|
246
|
-
font-family: var(--font-
|
|
245
|
+
font-family: var(--font-sans);
|
|
247
246
|
font-weight: var(--font-weight-light);
|
|
248
247
|
font-style: italic;
|
|
249
248
|
}
|
|
250
249
|
|
|
251
250
|
.lato-regular-italic {
|
|
252
|
-
font-family: var(--font-
|
|
251
|
+
font-family: var(--font-sans);
|
|
253
252
|
font-weight: var(--font-weight-normal);
|
|
254
253
|
font-style: italic;
|
|
255
254
|
}
|
|
256
255
|
|
|
257
256
|
.lato-bold-italic {
|
|
258
|
-
font-family: var(--font-
|
|
257
|
+
font-family: var(--font-sans);
|
|
259
258
|
font-weight: var(--font-weight-bold);
|
|
260
259
|
font-style: italic;
|
|
261
260
|
}
|
|
262
261
|
|
|
263
262
|
.lato-black-italic {
|
|
264
|
-
font-family: var(--font-
|
|
263
|
+
font-family: var(--font-sans);
|
|
265
264
|
font-weight: var(--font-weight-black);
|
|
266
265
|
font-style: italic;
|
|
267
266
|
}
|
|
@@ -360,24 +359,6 @@ button {
|
|
|
360
359
|
}
|
|
361
360
|
}
|
|
362
361
|
|
|
363
|
-
.animate-shine {
|
|
364
|
-
position: relative;
|
|
365
|
-
overflow: hidden;
|
|
366
|
-
|
|
367
|
-
&:before {
|
|
368
|
-
content: "";
|
|
369
|
-
position: absolute;
|
|
370
|
-
top: -200px;
|
|
371
|
-
bottom: -200px;
|
|
372
|
-
background-color: var(--color-white);
|
|
373
|
-
opacity: 0.7;
|
|
374
|
-
filter: blur(20px);
|
|
375
|
-
width: 100px;
|
|
376
|
-
transform: skew(-15deg);
|
|
377
|
-
animation: shine 2000ms ease-in-out infinite;
|
|
378
|
-
}
|
|
379
|
-
}
|
|
380
|
-
|
|
381
362
|
@keyframes spin {
|
|
382
363
|
from {
|
|
383
364
|
transform: rotate(0deg);
|
|
@@ -388,15 +369,6 @@ button {
|
|
|
388
369
|
}
|
|
389
370
|
}
|
|
390
371
|
|
|
391
|
-
.animate-spin {
|
|
392
|
-
animation: spin 1200ms linear infinite;
|
|
393
|
-
}
|
|
394
|
-
|
|
395
|
-
.animate-bezier {
|
|
396
|
-
animation: spin 1200ms var(--animate-cubic-bezier) infinite;
|
|
397
|
-
animation-delay: var(--spinner-delay);
|
|
398
|
-
}
|
|
399
|
-
|
|
400
372
|
@keyframes loader-pulse {
|
|
401
373
|
0%,
|
|
402
374
|
100% {
|
|
@@ -408,30 +380,6 @@ button {
|
|
|
408
380
|
}
|
|
409
381
|
}
|
|
410
382
|
|
|
411
|
-
.dot {
|
|
412
|
-
animation: loader-pulse 1200ms linear infinite;
|
|
413
|
-
animation-delay: var(--dot-delay);
|
|
414
|
-
}
|
|
415
|
-
|
|
416
|
-
input::-webkit-slider-thumb {
|
|
417
|
-
box-shadow: var(--shadow-lg);
|
|
418
|
-
}
|
|
419
|
-
|
|
420
|
-
@keyframes toast-timer-animation {
|
|
421
|
-
0% {
|
|
422
|
-
width: 100%;
|
|
423
|
-
}
|
|
424
|
-
|
|
425
|
-
100% {
|
|
426
|
-
width: 0;
|
|
427
|
-
}
|
|
428
|
-
}
|
|
429
|
-
|
|
430
|
-
.toast-timer {
|
|
431
|
-
animation: toast-timer-animation var(--toast-timer-duration) linear
|
|
432
|
-
forwards;
|
|
433
|
-
}
|
|
434
|
-
|
|
435
383
|
.Toastify__progress-bar--bg {
|
|
436
384
|
background-color: transparent !important;
|
|
437
385
|
}
|
|
@@ -445,8 +393,4 @@ button {
|
|
|
445
393
|
width: var(--meter-value);
|
|
446
394
|
}
|
|
447
395
|
}
|
|
448
|
-
|
|
449
|
-
.progress-bar-animated:before {
|
|
450
|
-
animation: progress-bar calc(var(--progress-speed) * 50ms) ease forwards;
|
|
451
|
-
}
|
|
452
396
|
}
|
package/dist/lib/index.ts
CHANGED
|
@@ -122,5 +122,8 @@ export * from "./components/Fade"
|
|
|
122
122
|
export * from "./components/BackToTop"
|
|
123
123
|
export * from "./components/Drawer"
|
|
124
124
|
export * from "./components/Header"
|
|
125
|
-
export * from "./components/
|
|
125
|
+
export * from "./components/Footer"
|
|
126
|
+
export * from "./components/Meta"
|
|
127
|
+
export * from "./components/PageLayout"
|
|
128
|
+
export * from "./components/SrOnly"
|
|
126
129
|
/* Prepend here - DO NOT REMOVE */
|
|
@@ -1,9 +1,4 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
ButtonHTMLAttributes,
|
|
3
|
-
ElementType,
|
|
4
|
-
RefObject,
|
|
5
|
-
ReactElement,
|
|
6
|
-
} from "react"
|
|
1
|
+
import type { ButtonHTMLAttributes, ElementType, RefObject } from "react"
|
|
7
2
|
import type { ClassNames, ReactChildren } from "./global"
|
|
8
3
|
|
|
9
4
|
/**
|
|
@@ -187,21 +182,3 @@ export type LibMdEditorOptions = {
|
|
|
187
182
|
viewLive?: boolean
|
|
188
183
|
viewPreview?: boolean
|
|
189
184
|
}
|
|
190
|
-
|
|
191
|
-
/**
|
|
192
|
-
* @description Props for button items within IconMenu components, combining base item functionality with button-specific properties.
|
|
193
|
-
*
|
|
194
|
-
* @extends LibItemBase<HTMLButtonElement>
|
|
195
|
-
* @extends ButtonHTMLAttributes<HTMLButtonElement>
|
|
196
|
-
* @prop {ElementType} [element] - HTML element type to render as the container.
|
|
197
|
-
* @prop {RefObject<HTMLButtonElement>} [ref] - Ref to the button element.
|
|
198
|
-
* @prop {string} [id] - Unique identifier for the menu item.
|
|
199
|
-
* @prop {string} label - Text label displayed for the menu item.
|
|
200
|
-
* @prop {ReactElement} icon - Icon element displayed alongside the label.
|
|
201
|
-
*/
|
|
202
|
-
export interface LibIconMenuItem
|
|
203
|
-
extends LibItemBase<HTMLButtonElement>,
|
|
204
|
-
Omit<ButtonHTMLAttributes<HTMLButtonElement>, "className"> {
|
|
205
|
-
label: string
|
|
206
|
-
icon: ReactElement
|
|
207
|
-
}
|
|
@@ -59,5 +59,8 @@ export * from "../components/Fade/types"
|
|
|
59
59
|
export * from "../components/BackToTop/types"
|
|
60
60
|
export * from "../components/Drawer/types"
|
|
61
61
|
export * from "../components/Header/types"
|
|
62
|
-
export * from "../components/
|
|
62
|
+
export * from "../components/Footer/types"
|
|
63
|
+
export * from "../components/Meta/types"
|
|
64
|
+
export * from "../components/PageLayout/types"
|
|
65
|
+
export * from "../components/SrOnly/types"
|
|
63
66
|
/* Prepend here - DO NOT REMOVE */
|
package/dist/lib/types/global.ts
CHANGED
|
@@ -563,25 +563,23 @@ export type LibHeaderPosition = Extract<
|
|
|
563
563
|
>
|
|
564
564
|
|
|
565
565
|
/**
|
|
566
|
-
* @description All
|
|
567
|
-
* @type {"
|
|
566
|
+
* @description All footer direction tokens available in the library for controlling the layout direction of footer content.
|
|
567
|
+
* @type {"horizontal" | "vertical"}
|
|
568
568
|
* @example
|
|
569
|
-
* direction="
|
|
570
|
-
* direction="
|
|
571
|
-
* direction="left"
|
|
572
|
-
* direction="right"
|
|
569
|
+
* direction="horizontal"
|
|
570
|
+
* direction="vertical"
|
|
573
571
|
*/
|
|
574
|
-
export type
|
|
575
|
-
keyof typeof designTokens.libIconMenuDirections
|
|
572
|
+
export type LibFooterDirection = keyof typeof designTokens.libFooterDirection
|
|
576
573
|
|
|
577
574
|
/**
|
|
578
|
-
* @description All
|
|
579
|
-
* @type {"
|
|
575
|
+
* @description All footer links separator tokens available in the library for controlling the visual separator between footer links.
|
|
576
|
+
* @type {"dot" | "dash"}
|
|
580
577
|
* @example
|
|
581
|
-
*
|
|
582
|
-
*
|
|
578
|
+
* separator="dot"
|
|
579
|
+
* separator="dash"
|
|
583
580
|
*/
|
|
584
|
-
export type
|
|
581
|
+
export type LibFooterLinksSeparator =
|
|
582
|
+
keyof typeof designTokens.libFooterLinksSeparator
|
|
585
583
|
|
|
586
584
|
/**
|
|
587
585
|
* @description Type of values for InputPin component representing a collection of pin input values.
|
|
@@ -534,14 +534,9 @@ export const designTokens = {
|
|
|
534
534
|
|
|
535
535
|
libNavMobileVariants: { full: "full", top: "top", drawer: "drawer" },
|
|
536
536
|
|
|
537
|
-
|
|
538
|
-
left: "left",
|
|
539
|
-
up: "up",
|
|
540
|
-
right: "right",
|
|
541
|
-
down: "down",
|
|
542
|
-
},
|
|
537
|
+
libFooterDirection: { horizontal: "horizontal", vertical: "vertical" },
|
|
543
538
|
|
|
544
|
-
|
|
539
|
+
libFooterLinksSeparator: { dot: "dot", dash: "dash" },
|
|
545
540
|
|
|
546
541
|
libCountryCodes: {
|
|
547
542
|
af: "af",
|
|
@@ -1,34 +1,34 @@
|
|
|
1
1
|
import type { LibSpacers } from "../types"
|
|
2
2
|
|
|
3
3
|
export const genGap: Record<LibSpacers, string> = {
|
|
4
|
-
"2xl": "gap-
|
|
5
|
-
xl: "gap-
|
|
6
|
-
lg: "gap-
|
|
7
|
-
md: "gap-
|
|
8
|
-
sm: "gap-
|
|
9
|
-
xs: "gap-
|
|
10
|
-
"2xs": "gap-
|
|
4
|
+
"2xl": "gap-12",
|
|
5
|
+
xl: "gap-8",
|
|
6
|
+
lg: "gap-5",
|
|
7
|
+
md: "gap-4",
|
|
8
|
+
sm: "gap-3",
|
|
9
|
+
xs: "gap-2",
|
|
10
|
+
"2xs": "gap-1",
|
|
11
11
|
"0px": "0px",
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
export const genRowGap: Record<LibSpacers, string> = {
|
|
15
|
-
"2xl": "gap-y-
|
|
16
|
-
xl: "gap-y-
|
|
17
|
-
lg: "gap-y-
|
|
18
|
-
md: "gap-y-
|
|
19
|
-
sm: "gap-y-
|
|
20
|
-
xs: "gap-y-
|
|
21
|
-
"2xs": "gap-y-
|
|
15
|
+
"2xl": "gap-y-12",
|
|
16
|
+
xl: "gap-y-8",
|
|
17
|
+
lg: "gap-y-5",
|
|
18
|
+
md: "gap-y-4",
|
|
19
|
+
sm: "gap-y-3",
|
|
20
|
+
xs: "gap-y-2",
|
|
21
|
+
"2xs": "gap-y-1",
|
|
22
22
|
"0px": "0px",
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
export const genColGap: Record<LibSpacers, string> = {
|
|
26
|
-
"2xl": "gap-x-
|
|
27
|
-
xl: "gap-x-
|
|
28
|
-
lg: "gap-x-
|
|
29
|
-
md: "gap-x-
|
|
30
|
-
sm: "gap-x-
|
|
31
|
-
xs: "gap-x-
|
|
32
|
-
"2xs": "gap-x-
|
|
26
|
+
"2xl": "gap-x-12",
|
|
27
|
+
xl: "gap-x-8",
|
|
28
|
+
lg: "gap-x-5",
|
|
29
|
+
md: "gap-x-4",
|
|
30
|
+
sm: "gap-x-3",
|
|
31
|
+
xs: "gap-x-2",
|
|
32
|
+
"2xs": "gap-x-1",
|
|
33
33
|
"0px": "0px",
|
|
34
34
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { LibColorsHover } from "../types"
|
|
2
|
+
|
|
3
|
+
export const genRingColor: Record<LibColorsHover, string> = {
|
|
4
|
+
primary: "focus:ring-1 focus:ring-primary-800",
|
|
5
|
+
secondary: "focus:ring-1 focus:ring-secondary-800",
|
|
6
|
+
success: "focus:ring-1 focus:ring-success-800",
|
|
7
|
+
danger: "focus:ring-1 focus:ring-danger-800",
|
|
8
|
+
warning: "focus:ring-1 focus:ring-warning-800",
|
|
9
|
+
gray: "focus:ring-1 focus:ring-gray-800",
|
|
10
|
+
white: "focus:ring-1 focus:ring-gray-500",
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export const genRingColorChildren: Record<LibColorsHover, string> = {
|
|
14
|
+
primary: "[&>*]:focus:ring-1 [&>*]:focus:ring-primary-800",
|
|
15
|
+
secondary: "[&>*]:focus:ring-1 [&>*]:focus:ring-secondary-800",
|
|
16
|
+
success: "[&>*]:focus:ring-1 [&>*]:focus:ring-success-800",
|
|
17
|
+
danger: "[&>*]:focus:ring-1 [&>*]:focus:ring-danger-800",
|
|
18
|
+
warning: "[&>*]:focus:ring-1 [&>*]:focus:ring-warning-800",
|
|
19
|
+
gray: "[&>*]:focus:ring-1 [&>*]:focus:ring-gray-800",
|
|
20
|
+
white: "[&>*]:focus:ring-1 [&>*]:focus:ring-gray-500",
|
|
21
|
+
}
|
package/dist/lib/utils/index.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@julseb-lib/react",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.12",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"scripts": {
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"check-errors": "tsc --noEmit"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@julseb-lib/utils": "^0.0.
|
|
30
|
+
"@julseb-lib/utils": "^0.0.14",
|
|
31
31
|
"@tailwindcss/forms": "^0.5.10",
|
|
32
32
|
"@tailwindcss/postcss": "^4.1.11",
|
|
33
33
|
"@tailwindcss/vite": "^4.1.11",
|
|
@@ -37,7 +37,6 @@
|
|
|
37
37
|
"postcss": "^8.5.6",
|
|
38
38
|
"react": "^19.1.0",
|
|
39
39
|
"react-dom": "^19.1.0",
|
|
40
|
-
"react-helmet-async": "^2.0.5",
|
|
41
40
|
"react-icons": "^5.5.0",
|
|
42
41
|
"react-router-dom": "^7.6.3",
|
|
43
42
|
"react-syntax-highlighter": "^15.6.1",
|
|
@@ -59,6 +58,7 @@
|
|
|
59
58
|
"@typescript-eslint/eslint-plugin": "^8.35.1",
|
|
60
59
|
"@typescript-eslint/parser": "^8.35.1",
|
|
61
60
|
"@vitejs/plugin-react": "^4.6.0",
|
|
61
|
+
"axios": "^1.10.0",
|
|
62
62
|
"cross-env": "^7.0.3",
|
|
63
63
|
"cssjson-cli": "^1.0.1",
|
|
64
64
|
"dotenv": "^17.0.0",
|