@remember-web/primitive 0.1.17 → 0.1.19
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/src/Buttons/Button/index.cjs.js +5 -6
- package/dist/src/Buttons/Button/index.cjs.js.map +1 -1
- package/dist/src/Buttons/Button/index.d.ts +3 -8
- package/dist/src/Buttons/Button/index.d.ts.map +1 -1
- package/dist/src/Buttons/Button/index.esm.js +3 -4
- package/dist/src/Buttons/Button/index.esm.js.map +1 -1
- package/dist/src/Buttons/Button/styles.cjs.js +1 -1
- package/dist/src/Buttons/Button/styles.cjs.js.map +1 -1
- package/dist/src/Buttons/Button/styles.d.ts +1 -2
- package/dist/src/Buttons/Button/styles.d.ts.map +1 -1
- package/dist/src/Buttons/Button/styles.esm.js +1 -1
- package/dist/src/Buttons/Button/styles.esm.js.map +1 -1
- package/dist/src/Buttons/Button/types.d.ts +4 -6
- package/dist/src/Buttons/Button/types.d.ts.map +1 -1
- package/dist/src/Common/Flex/index.cjs.js +8 -7
- package/dist/src/Common/Flex/index.cjs.js.map +1 -1
- package/dist/src/Common/Flex/index.d.ts +5 -4
- package/dist/src/Common/Flex/index.d.ts.map +1 -1
- package/dist/src/Common/Flex/index.esm.js +8 -7
- package/dist/src/Common/Flex/index.esm.js.map +1 -1
- package/dist/src/Common/Grid/index.cjs.js +1 -0
- package/dist/src/Common/Grid/index.cjs.js.map +1 -1
- package/dist/src/Common/Grid/index.d.ts +1 -0
- package/dist/src/Common/Grid/index.d.ts.map +1 -1
- package/dist/src/Common/Grid/index.esm.js +1 -0
- package/dist/src/Common/Grid/index.esm.js.map +1 -1
- package/dist/src/Common/Typography/index.cjs.js +4 -7
- package/dist/src/Common/Typography/index.cjs.js.map +1 -1
- package/dist/src/Common/Typography/index.d.ts +6 -9
- package/dist/src/Common/Typography/index.d.ts.map +1 -1
- package/dist/src/Common/Typography/index.esm.js +4 -7
- package/dist/src/Common/Typography/index.esm.js.map +1 -1
- package/dist/src/Common/index.d.ts +1 -1
- package/dist/src/Common/index.d.ts.map +1 -1
- package/dist/src/Control/BaseToggle/ToggleIcon/index.cjs.js +14 -3
- package/dist/src/Control/BaseToggle/ToggleIcon/index.cjs.js.map +1 -1
- package/dist/src/Control/BaseToggle/ToggleIcon/index.d.ts.map +1 -1
- package/dist/src/Control/BaseToggle/ToggleIcon/index.esm.js +9 -3
- package/dist/src/Control/BaseToggle/ToggleIcon/index.esm.js.map +1 -1
- package/dist/src/Control/BaseToggle/styles.cjs.js +2 -2
- package/dist/src/Control/BaseToggle/styles.cjs.js.map +1 -1
- package/dist/src/Control/BaseToggle/styles.esm.js +2 -2
- package/dist/src/Control/BaseToggle/styles.esm.js.map +1 -1
- package/dist/src/Modals/Dialog/index.cjs.js +1 -1
- package/dist/src/Modals/Dialog/index.cjs.js.map +1 -1
- package/dist/src/Modals/Dialog/index.esm.js +1 -1
- package/dist/src/Modals/Dialog/index.esm.js.map +1 -1
- package/dist/src/Paginations/CompactPagination/index.cjs.js +1 -1
- package/dist/src/Paginations/CompactPagination/index.cjs.js.map +1 -1
- package/dist/src/Paginations/CompactPagination/index.esm.js +1 -1
- package/dist/src/Paginations/CompactPagination/index.esm.js.map +1 -1
- package/dist/src/index.cjs.js +6 -6
- package/dist/src/index.esm.js +1 -1
- package/package.json +2 -2
- package/src/Buttons/Button/Button.stories.tsx +1 -1
- package/src/Buttons/Button/index.tsx +32 -39
- package/src/Buttons/Button/styles.ts +2 -3
- package/src/Buttons/Button/types.ts +6 -12
- package/src/Common/Divider/Divider.stories.tsx +1 -1
- package/src/Common/Flex/index.tsx +29 -28
- package/src/Common/Grid/index.tsx +1 -0
- package/src/Common/Typography/index.tsx +24 -37
- package/src/Common/index.ts +1 -1
- package/src/Control/BaseToggle/ToggleIcon/index.tsx +14 -1
- package/src/Control/BaseToggle/styles.ts +10 -10
- package/src/Modals/Dialog/index.tsx +1 -1
- package/src/Paginations/CompactPagination/index.tsx +1 -1
|
@@ -1,54 +1,41 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
+
import { type TypographyStyle } from '@remember-web/mixin';
|
|
3
4
|
import type {
|
|
4
|
-
ComponentPropsWithoutRef,
|
|
5
|
-
ComponentPropsWithRef,
|
|
6
5
|
CSSProperties,
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
ComponentProps,
|
|
7
|
+
ForwardedRef,
|
|
9
8
|
ReactNode,
|
|
10
9
|
} from 'react';
|
|
11
10
|
import { forwardRef } from 'react';
|
|
12
|
-
import {
|
|
11
|
+
import type { PolymorphicComponent } from 'styled-components';
|
|
13
12
|
|
|
14
13
|
import { StyledTypography } from './styles';
|
|
15
14
|
|
|
16
|
-
const Typography =
|
|
17
|
-
{
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
$ellipsis={ellipsis}
|
|
34
|
-
$maxWidth={maxWidth}
|
|
35
|
-
{...props}
|
|
36
|
-
>
|
|
37
|
-
{children}
|
|
38
|
-
</StyledTypography>
|
|
39
|
-
);
|
|
15
|
+
const Typography = forwardRef(function (
|
|
16
|
+
{ variant, color, children, ellipsis, maxWidth, ...props }: TypographyProps,
|
|
17
|
+
ref: ForwardedRef<HTMLDivElement | null>
|
|
18
|
+
) {
|
|
19
|
+
return (
|
|
20
|
+
<StyledTypography
|
|
21
|
+
ref={ref}
|
|
22
|
+
$variant={variant}
|
|
23
|
+
$color={color}
|
|
24
|
+
$ellipsis={ellipsis}
|
|
25
|
+
$maxWidth={maxWidth}
|
|
26
|
+
{...props}
|
|
27
|
+
>
|
|
28
|
+
{children}
|
|
29
|
+
</StyledTypography>
|
|
30
|
+
);
|
|
31
|
+
}) as PolymorphicComponent<'web', TypographyProps>;
|
|
40
32
|
|
|
41
|
-
type TypographyProps
|
|
33
|
+
type TypographyProps = {
|
|
42
34
|
variant: TypographyStyle;
|
|
43
|
-
as?: T;
|
|
44
35
|
color?: string;
|
|
45
36
|
children?: ReactNode;
|
|
46
37
|
ellipsis?: number;
|
|
47
38
|
maxWidth?: CSSProperties['maxWidth'];
|
|
48
|
-
} &
|
|
49
|
-
|
|
50
|
-
type TypographyComponentWithRef = <T extends ElementType = 'div'>(
|
|
51
|
-
props: TypographyProps<T> & { ref?: ComponentPropsWithRef<T>['ref'] }
|
|
52
|
-
) => ReactElement | null;
|
|
39
|
+
} & ComponentProps<'div'>;
|
|
53
40
|
|
|
54
|
-
export default
|
|
41
|
+
export default Typography;
|
package/src/Common/index.ts
CHANGED
|
@@ -19,6 +19,7 @@ import {
|
|
|
19
19
|
type SvgSizeProps,
|
|
20
20
|
type WithSvgSizeComponentType,
|
|
21
21
|
} from '@remember-web/icon/util';
|
|
22
|
+
import styled from 'styled-components';
|
|
22
23
|
|
|
23
24
|
import type { ToggleStatusType, ToggleVariantType } from '../types';
|
|
24
25
|
|
|
@@ -68,5 +69,17 @@ export function ToggleIcon({
|
|
|
68
69
|
|
|
69
70
|
const Icon = ICON_NAME[variant][status];
|
|
70
71
|
|
|
71
|
-
return
|
|
72
|
+
return (
|
|
73
|
+
<ToggleIconContainer className={`toggleIcon ${className}`}>
|
|
74
|
+
<Icon size={iconSize} />
|
|
75
|
+
</ToggleIconContainer>
|
|
76
|
+
);
|
|
72
77
|
}
|
|
78
|
+
|
|
79
|
+
const ToggleIconContainer = styled.div`
|
|
80
|
+
border-radius: 50%;
|
|
81
|
+
|
|
82
|
+
> svg {
|
|
83
|
+
display: block;
|
|
84
|
+
}
|
|
85
|
+
`;
|
|
@@ -13,7 +13,7 @@ export const ToggleRoot = styled.label<{ $gap?: number }>`
|
|
|
13
13
|
user-select: none;
|
|
14
14
|
align-items: center;
|
|
15
15
|
|
|
16
|
-
& >
|
|
16
|
+
& > .toggleIcon {
|
|
17
17
|
transition: filter 0.2s ease-in-out;
|
|
18
18
|
flex-shrink: 0;
|
|
19
19
|
}
|
|
@@ -23,7 +23,7 @@ export const ToggleRoot = styled.label<{ $gap?: number }>`
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
@media (hover: hover) {
|
|
26
|
-
&:hover >
|
|
26
|
+
&:hover > .toggleIcon {
|
|
27
27
|
filter: grayscale(0.05) brightness(0.95);
|
|
28
28
|
}
|
|
29
29
|
}
|
|
@@ -36,32 +36,32 @@ export const ToggleInput = styled.input`
|
|
|
36
36
|
height: 0px;
|
|
37
37
|
margin-left: -1px;
|
|
38
38
|
|
|
39
|
-
&:checked ~
|
|
39
|
+
&:checked ~ .toggleIcon.offIcon {
|
|
40
40
|
display: none;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
&:not(:checked) ~
|
|
43
|
+
&:not(:checked) ~ .toggleIcon.onIcon {
|
|
44
44
|
display: none;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
&[type='checkbox']:indeterminate ~
|
|
48
|
-
&[type='checkbox']:indeterminate ~
|
|
47
|
+
&[type='checkbox']:indeterminate ~ .toggleIcon.offIcon,
|
|
48
|
+
&[type='checkbox']:indeterminate ~ .toggleIcon.onIcon {
|
|
49
49
|
display: none;
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
-
&[type='checkbox']:not(:indeterminate) ~
|
|
52
|
+
&[type='checkbox']:not(:indeterminate) ~ .toggleIcon.indeterminateIcon {
|
|
53
53
|
display: none;
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
&:disabled ~
|
|
56
|
+
&:disabled ~ .toggleIcon {
|
|
57
57
|
filter: grayscale(1) brightness(1.1);
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
-
&:not(:disabled):active ~
|
|
60
|
+
&:not(:disabled):active ~ .toggleIcon {
|
|
61
61
|
filter: grayscale(0.1) brightness(0.9);
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
-
&:focus-visible ~
|
|
64
|
+
&:focus-visible ~ .toggleIcon {
|
|
65
65
|
outline: solid 2px ${primary100};
|
|
66
66
|
outline-offset: -1px;
|
|
67
67
|
}
|
|
@@ -4,7 +4,7 @@ import type { DialogContentProps, DialogProps } from '@radix-ui/react-dialog';
|
|
|
4
4
|
import { Root, Trigger, Close, Portal } from '@radix-ui/react-dialog';
|
|
5
5
|
import { IconClose, PictogramAlert, PictogramCheck } from '@remember-web/icon';
|
|
6
6
|
|
|
7
|
-
import
|
|
7
|
+
import Flex from '@/Common/Flex';
|
|
8
8
|
|
|
9
9
|
import {
|
|
10
10
|
DialogContent,
|