@fpkit/acss 0.5.4 → 0.5.6
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/libs/chunk-PWVRDQ3R.js +8 -0
- package/libs/chunk-PWVRDQ3R.js.map +1 -0
- package/libs/chunk-SVS4MX3U.cjs +31 -0
- package/libs/chunk-SVS4MX3U.cjs.map +1 -0
- package/libs/{icons-2f29127c.d.ts → icons-31ace3de.d.ts} +87 -81
- package/libs/icons.cjs +2 -2
- package/libs/icons.d.cts +1 -1
- package/libs/icons.d.ts +1 -1
- package/libs/icons.js +1 -1
- package/libs/index.cjs +42 -42
- package/libs/index.cjs.map +1 -1
- package/libs/index.d.cts +59 -29
- package/libs/index.d.ts +59 -29
- package/libs/index.js +7 -7
- package/libs/index.js.map +1 -1
- package/package.json +4 -3
- package/src/components/README.mdx +84 -0
- package/src/components/alert/README.mdx +86 -0
- package/src/components/alert/alert.mdx +74 -0
- package/src/components/alert/alert.scss +80 -0
- package/src/components/alert/alert.stories.tsx +132 -0
- package/src/components/alert/alert.tsx +154 -0
- package/src/components/alert/elements/README.mdx +77 -0
- package/src/components/alert/elements/dismiss-button.stories.tsx +31 -0
- package/src/components/alert/elements/dismiss-button.tsx +28 -0
- package/src/components/badge/badge.mdx +124 -0
- package/src/components/badge/badge.scss +4 -4
- package/src/components/badge/badge.stories.tsx +21 -23
- package/src/components/breadcrumbs/breadcrumb.scss +2 -2
- package/src/components/breadcrumbs/breadcrumb.stories.tsx +42 -47
- package/src/components/buttons/button.scss +41 -15
- package/src/components/buttons/button.stories.tsx +8 -1
- package/src/components/buttons/button.test.tsx +72 -72
- package/src/components/cards/card.stories.tsx +15 -15
- package/src/components/details/details.scss +26 -6
- package/src/components/details/details.stories.tsx +33 -30
- package/src/components/details/details.tsx +17 -17
- package/src/components/dialog/README.mdx +187 -0
- package/src/components/dialog/dialog-modal.stories.tsx +113 -0
- package/src/components/dialog/dialog-modal.tsx +111 -0
- package/src/components/dialog/dialog.scss +76 -0
- package/src/components/dialog/dialog.stories.tsx +116 -0
- package/src/components/dialog/dialog.tsx +128 -0
- package/src/components/dialog/hooks/useClickOutside.ts +33 -0
- package/src/components/dialog/views/README.mdx +182 -0
- package/src/components/dialog/views/dialog-footer.tsx +45 -0
- package/src/components/dialog/views/dialog-header.stories.tsx +42 -0
- package/src/components/dialog/views/dialog-header.tsx +61 -0
- package/src/components/form/form.stories.tsx +16 -16
- package/src/components/form/input.stories.tsx +62 -62
- package/src/components/form/select.stories.tsx +22 -15
- package/src/components/heading/heading.stories.tsx +32 -33
- package/src/components/heading/heading.tsx +1 -1
- package/src/components/icons/components/add.tsx +14 -14
- package/src/components/icons/components/alert-solid.tsx +36 -0
- package/src/components/icons/components/alert-square-solid.tsx +36 -0
- package/src/components/icons/components/info-solid.tsx +40 -0
- package/src/components/icons/components/info.tsx +36 -0
- package/src/components/icons/components/question-solid.tsx +36 -0
- package/src/components/icons/components/success-solid.tsx +36 -0
- package/src/components/icons/components/svg.tsx +0 -1
- package/src/components/icons/components/warn-solid.tsx +36 -0
- package/src/components/icons/icon.scss +1 -3
- package/src/components/icons/icon.stories.tsx +87 -78
- package/src/components/icons/icon.tsx +57 -52
- package/src/components/icons/index.ts +36 -29
- package/src/components/icons/types.ts +1 -1
- package/src/components/images/figure.stories.tsx +13 -13
- package/src/components/images/img.stories.tsx +12 -12
- package/src/components/link/link.stories.tsx +32 -35
- package/src/components/link/link.tsx +27 -14
- package/src/components/list/list.stories.tsx +16 -16
- package/src/components/modal/dialog.tsx +13 -12
- package/src/components/modal/modal.tsx +28 -30
- package/src/components/nav/nav.stories.tsx +25 -24
- package/src/components/popover/popover.stories.tsx +17 -18
- package/src/components/progress/progress.stories.tsx +14 -20
- package/src/components/tag/tag.stories.tsx +17 -18
- package/src/components/text/text.stories.tsx +28 -29
- package/src/components/text-to-speech/TextToSpeech.stories.tsx +100 -101
- package/src/components/ui.tsx +28 -25
- package/src/decorators/instructions.tsx +44 -0
- package/src/hooks/useDialogClickHandler.ts +26 -0
- package/src/index.scss +23 -22
- package/src/index.ts +31 -30
- package/src/patterns/page/page-header.stories.tsx +17 -21
- package/src/sass/_globals.scss +14 -32
- package/src/sass/_styles.scss +2 -1
- package/src/sass/styles/_colors.scss +13 -0
- package/src/styles/alert/alert.css +68 -0
- package/src/styles/alert/alert.css.map +1 -0
- package/src/styles/badge/badge.css +3 -3
- package/src/styles/breadcrumbs/breadcrumb.css +1 -1
- package/src/styles/buttons/button.css +25 -2
- package/src/styles/buttons/button.css.map +1 -1
- package/src/styles/details/details.css +19 -4
- package/src/styles/details/details.css.map +1 -1
- package/src/styles/dialog/dialog.css +76 -0
- package/src/styles/dialog/dialog.css.map +1 -0
- package/src/styles/icons/icon.css +1 -3
- package/src/styles/icons/icon.css.map +1 -1
- package/src/styles/index.css +213 -60
- package/src/styles/index.css.map +1 -1
- package/libs/chunk-TBM2QIVT.js +0 -8
- package/libs/chunk-TBM2QIVT.js.map +0 -1
- package/libs/chunk-VAH6X2DZ.cjs +0 -31
- package/libs/chunk-VAH6X2DZ.cjs.map +0 -1
- package/libs/components/badge/badge.css +0 -1
- package/libs/components/badge/badge.css.map +0 -1
- package/libs/components/badge/badge.min.css +0 -3
- package/libs/components/breadcrumbs/breadcrumb.css +0 -1
- package/libs/components/breadcrumbs/breadcrumb.css.map +0 -1
- package/libs/components/breadcrumbs/breadcrumb.min.css +0 -3
- package/libs/components/buttons/button.css +0 -1
- package/libs/components/buttons/button.css.map +0 -1
- package/libs/components/buttons/button.min.css +0 -3
- package/libs/components/cards/card-style.css +0 -1
- package/libs/components/cards/card-style.css.map +0 -1
- package/libs/components/cards/card-style.min.css +0 -3
- package/libs/components/cards/card.css +0 -1
- package/libs/components/cards/card.css.map +0 -1
- package/libs/components/cards/card.min.css +0 -3
- package/libs/components/details/details.css +0 -1
- package/libs/components/details/details.css.map +0 -1
- package/libs/components/details/details.min.css +0 -3
- package/libs/components/form/form.css +0 -1
- package/libs/components/form/form.css.map +0 -1
- package/libs/components/form/form.min.css +0 -3
- package/libs/components/icons/icon.css +0 -1
- package/libs/components/icons/icon.css.map +0 -1
- package/libs/components/icons/icon.min.css +0 -3
- package/libs/components/images/img.css +0 -1
- package/libs/components/images/img.css.map +0 -1
- package/libs/components/images/img.min.css +0 -3
- package/libs/components/layout/landmarks.css +0 -1
- package/libs/components/layout/landmarks.css.map +0 -1
- package/libs/components/layout/landmarks.min.css +0 -3
- package/libs/components/link/link.css +0 -1
- package/libs/components/link/link.css.map +0 -1
- package/libs/components/link/link.min.css +0 -3
- package/libs/components/nav/nav.css +0 -1
- package/libs/components/nav/nav.css.map +0 -1
- package/libs/components/nav/nav.min.css +0 -3
- package/libs/components/progress/progress.css +0 -1
- package/libs/components/progress/progress.css.map +0 -1
- package/libs/components/progress/progress.min.css +0 -3
- package/libs/components/styles/index.css +0 -1
- package/libs/components/styles/index.css.map +0 -1
- package/libs/components/styles/index.min.css +0 -3
- package/libs/components/tag/tag.css +0 -1
- package/libs/components/tag/tag.css.map +0 -1
- package/libs/components/tag/tag.min.css +0 -3
- package/libs/components/text-to-speech/text-to-speech.css +0 -1
- package/libs/components/text-to-speech/text-to-speech.css.map +0 -1
- package/libs/components/text-to-speech/text-to-speech.min.css +0 -3
- package/libs/index.css +0 -1
- package/libs/index.css.map +0 -1
- package/src/components/readme.stories.mdx +0 -7
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
|
|
3
|
+
import { IconProps } from "../types";
|
|
4
|
+
import Svg from "./svg";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Add Icon component
|
|
8
|
+
* @param {string} fill - Icon fill color (default: 'currentColor')
|
|
9
|
+
* @param {string} size - Icon size (default: '24')
|
|
10
|
+
* @param {IconProps} props - Other icon properties
|
|
11
|
+
* @returns {JSX.Element} - Rendered component
|
|
12
|
+
*/
|
|
13
|
+
export const InfoSolid = ({
|
|
14
|
+
fill = "currentColor",
|
|
15
|
+
size = 24,
|
|
16
|
+
role = "img",
|
|
17
|
+
alt = "Add icon",
|
|
18
|
+
...props
|
|
19
|
+
}: Pick<
|
|
20
|
+
IconProps,
|
|
21
|
+
"strokeColor" | "fill" | "styles" | "size" | "role" | "alt"
|
|
22
|
+
>): JSX.Element => {
|
|
23
|
+
return (
|
|
24
|
+
<Svg size={size} role={role} alt={alt} {...props}>
|
|
25
|
+
<g fill={fill}>
|
|
26
|
+
<path
|
|
27
|
+
fill={fill}
|
|
28
|
+
d="M8,17.06V20h8v-2.94c3.059-1.514,5-4.607,5-8.06c0-4.963-4.038-9-9-9S3,4.037,3,9 C3,12.452,4.941,15.546,8,17.06z M7,9c0-2.757,2.243-5,5-5h1v2h-1c-1.654,0-3,1.346-3,3v1H7V9z"
|
|
29
|
+
></path>{" "}
|
|
30
|
+
<path
|
|
31
|
+
fill={fill}
|
|
32
|
+
d="M8,22v1c0,0.553,0.448,1,1,1h6c0.552,0,1-0.447,1-1v-1H8z"
|
|
33
|
+
></path>
|
|
34
|
+
</g>
|
|
35
|
+
</Svg>
|
|
36
|
+
);
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
export default InfoSolid;
|
|
40
|
+
InfoSolid.displayName = "InfoSolid";
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
|
|
3
|
+
import { IconProps } from "../types";
|
|
4
|
+
import Svg from "./svg";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Add Icon component
|
|
8
|
+
* @param {string} fill - Icon fill color (default: 'currentColor')
|
|
9
|
+
* @param {string} size - Icon size (default: '24')
|
|
10
|
+
* @param {IconProps} props - Other icon properties
|
|
11
|
+
* @returns {JSX.Element} - Rendered component
|
|
12
|
+
*/
|
|
13
|
+
export const Info = ({
|
|
14
|
+
fill = "currentColor",
|
|
15
|
+
size = 24,
|
|
16
|
+
role = "img",
|
|
17
|
+
alt = "Info icon",
|
|
18
|
+
...props
|
|
19
|
+
}: Pick<
|
|
20
|
+
IconProps,
|
|
21
|
+
"strokeColor" | "fill" | "styles" | "size" | "role" | "alt"
|
|
22
|
+
>): JSX.Element => {
|
|
23
|
+
return (
|
|
24
|
+
<Svg size={size} role={role} alt={alt} {...props}>
|
|
25
|
+
<g fill={fill}>
|
|
26
|
+
<path
|
|
27
|
+
d="M11 17h2v-6h-2v6zm1-15C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zM11 9h2V7h-2v2z"
|
|
28
|
+
fill={fill}
|
|
29
|
+
/>
|
|
30
|
+
</g>
|
|
31
|
+
</Svg>
|
|
32
|
+
);
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
export default Info;
|
|
36
|
+
Info.displayName = "Info";
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
|
|
3
|
+
import { IconProps } from "../types";
|
|
4
|
+
import Svg from "./svg";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Add Icon component
|
|
8
|
+
* @param {string} fill - Icon fill color (default: 'currentColor')
|
|
9
|
+
* @param {string} size - Icon size (default: '24')
|
|
10
|
+
* @param {IconProps} props - Other icon properties
|
|
11
|
+
* @returns {JSX.Element} - Rendered component
|
|
12
|
+
*/
|
|
13
|
+
export const QuestionSolid = ({
|
|
14
|
+
fill = "currentColor",
|
|
15
|
+
size = 24,
|
|
16
|
+
role = "img",
|
|
17
|
+
alt = "Add icon",
|
|
18
|
+
...props
|
|
19
|
+
}: Pick<
|
|
20
|
+
IconProps,
|
|
21
|
+
"strokeColor" | "fill" | "styles" | "size" | "role" | "alt"
|
|
22
|
+
>): JSX.Element => {
|
|
23
|
+
return (
|
|
24
|
+
<Svg size={size} role={role} alt={alt} {...props}>
|
|
25
|
+
<g fill={fill}>
|
|
26
|
+
<path
|
|
27
|
+
d="M12,0C5.383,0,0,5.383,0,12s5.383,12,12,12,12-5.383,12-12S18.617,0,12,0Zm0,19.5c-.69,0-1.25-.56-1.25-1.25s.56-1.25,1.25-1.25,1.25,.56,1.25,1.25-.56,1.25-1.25,1.25Zm2.688-7.198c-1.444,1.224-1.688,1.667-1.688,2.198,0,.553-.447,1-1,1s-1-.447-1-1c0-1.434,.807-2.379,2.395-3.724,.447-.38,1.844-1.72,1.024-3.046-.532-.861-2.517-.984-4.162-.256-.507,.223-1.096-.006-1.319-.511-.223-.505,.006-1.096,.511-1.319,2.33-1.03,5.463-.924,6.672,1.035,1.103,1.784,.554,3.938-1.433,5.622Z"
|
|
28
|
+
fill={fill}
|
|
29
|
+
></path>
|
|
30
|
+
</g>
|
|
31
|
+
</Svg>
|
|
32
|
+
);
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
export default QuestionSolid;
|
|
36
|
+
QuestionSolid.displayName = "QuestionSolid";
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
|
|
3
|
+
import { IconProps } from "../types";
|
|
4
|
+
import Svg from "./svg";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Add Icon component
|
|
8
|
+
* @param {string} fill - Icon fill color (default: 'currentColor')
|
|
9
|
+
* @param {string} size - Icon size (default: '24')
|
|
10
|
+
* @param {IconProps} props - Other icon properties
|
|
11
|
+
* @returns {JSX.Element} - Rendered component
|
|
12
|
+
*/
|
|
13
|
+
export const SuccessSolid = ({
|
|
14
|
+
fill = "currentColor",
|
|
15
|
+
size = 24,
|
|
16
|
+
role = "img",
|
|
17
|
+
alt = "Add icon",
|
|
18
|
+
...props
|
|
19
|
+
}: Pick<
|
|
20
|
+
IconProps,
|
|
21
|
+
"strokeColor" | "fill" | "styles" | "size" | "role" | "alt"
|
|
22
|
+
>): JSX.Element => {
|
|
23
|
+
return (
|
|
24
|
+
<Svg size={size} role={role} alt={alt} {...props}>
|
|
25
|
+
<g fill={fill}>
|
|
26
|
+
<path
|
|
27
|
+
d="M12,0C5.373,0,0,5.373,0,12s5.373,12,12,12,12-5.373,12-12C23.981,5.381,18.619,.019,12,0Zm7.207,7.707l-9,9c-.195,.195-.451,.293-.707,.293s-.512-.098-.707-.293l-4-4c-.391-.391-.391-1.023,0-1.414s1.023-.391,1.414,0l3.293,3.293L17.793,6.293c.391-.391,1.023-.391,1.414,0s.391,1.023,0,1.414Z"
|
|
28
|
+
fill={fill}
|
|
29
|
+
></path>
|
|
30
|
+
</g>
|
|
31
|
+
</Svg>
|
|
32
|
+
);
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
export default SuccessSolid;
|
|
36
|
+
SuccessSolid.displayName = "SuccessSolid";
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
|
|
3
|
+
import { IconProps } from "../types";
|
|
4
|
+
import Svg from "./svg";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Add Icon component
|
|
8
|
+
* @param {string} fill - Icon fill color (default: 'currentColor')
|
|
9
|
+
* @param {string} size - Icon size (default: '24')
|
|
10
|
+
* @param {IconProps} props - Other icon properties
|
|
11
|
+
* @returns {JSX.Element} - Rendered component
|
|
12
|
+
*/
|
|
13
|
+
export const WarnSolid = ({
|
|
14
|
+
fill = "currentColor",
|
|
15
|
+
size = 24,
|
|
16
|
+
role = "img",
|
|
17
|
+
alt = "Add icon",
|
|
18
|
+
...props
|
|
19
|
+
}: Pick<
|
|
20
|
+
IconProps,
|
|
21
|
+
"strokeColor" | "fill" | "styles" | "size" | "role" | "alt"
|
|
22
|
+
>): JSX.Element => {
|
|
23
|
+
return (
|
|
24
|
+
<Svg size={size} role={role} alt={alt} {...props}>
|
|
25
|
+
<g fill={fill}>
|
|
26
|
+
<path
|
|
27
|
+
d="M23.641,18.485L14.732,1.643C13.931,.134,12.059-.44,10.55,.361c-.546,.29-.992,.736-1.282,1.282L.359,18.485c-.793,1.504-.217,3.367,1.288,4.16,.445,.235,.942,.357,1.445,.355H20.908c1.7,.005,3.083-1.369,3.088-3.07,.002-.504-.12-1-.355-1.445Zm-11.641,1.515c-.828,0-1.5-.672-1.5-1.5s.672-1.5,1.5-1.5,1.5,.672,1.5,1.5-.672,1.5-1.5,1.5Zm.53-5h-1.061c-.264,0-.483-.205-.499-.469l-.438-7c-.018-.288,.211-.531,.499-.531h1.936c.288,0,.517,.243,.499,.531l-.438,7c-.016,.264-.235,.469-.499,.469Z"
|
|
28
|
+
fill={fill}
|
|
29
|
+
/>
|
|
30
|
+
</g>
|
|
31
|
+
</Svg>
|
|
32
|
+
);
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
export default WarnSolid;
|
|
36
|
+
WarnSolid.displayName = "WarnSolid";
|
|
@@ -5,13 +5,11 @@
|
|
|
5
5
|
--icon-width: max-content;
|
|
6
6
|
--icon-gap: 0.2rem;
|
|
7
7
|
--icon-height: max-content;
|
|
8
|
-
--icon-fs: inherit;
|
|
9
8
|
|
|
10
9
|
display: var(--icon-display);
|
|
11
10
|
flex-direction: var(--icon-direction);
|
|
12
11
|
gap: var(--icon-gap);
|
|
13
|
-
|
|
12
|
+
place-items: var(--icons-placement);
|
|
14
13
|
width: var(--icon-width);
|
|
15
14
|
height: var(--icon-height);
|
|
16
|
-
font-size: var(--icon-fs);
|
|
17
15
|
}
|
|
@@ -1,96 +1,63 @@
|
|
|
1
|
-
import * as React from
|
|
1
|
+
import * as React from "react";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import { Meta, StoryObj } from "@storybook/react";
|
|
4
4
|
|
|
5
|
-
import { Button } from
|
|
6
|
-
import { Icon } from
|
|
7
|
-
import
|
|
8
|
-
// import './icon.scss'
|
|
9
|
-
|
|
5
|
+
import { Button } from "#components/buttons/button";
|
|
6
|
+
import { Icon } from "./icon";
|
|
7
|
+
import "./icon.scss";
|
|
10
8
|
|
|
11
9
|
const meta: Meta<typeof Icon> = {
|
|
12
10
|
component: Icon,
|
|
13
|
-
title:
|
|
11
|
+
title: "FP.React Components/Icons",
|
|
12
|
+
tags: ["rc"],
|
|
14
13
|
args: {
|
|
15
14
|
// styles: Icon.styles,
|
|
16
15
|
},
|
|
17
16
|
decorators: [
|
|
18
17
|
(Story) => (
|
|
19
|
-
<section style={{ minWidth:
|
|
18
|
+
<section style={{ minWidth: "60vw", textAlign: "center" }}>
|
|
20
19
|
<Story />
|
|
21
20
|
</section>
|
|
22
21
|
),
|
|
23
22
|
],
|
|
24
|
-
} as Meta
|
|
23
|
+
} as Meta;
|
|
25
24
|
|
|
26
|
-
export default meta
|
|
27
|
-
type Story = StoryObj<typeof Icon
|
|
25
|
+
export default meta;
|
|
26
|
+
type Story = StoryObj<typeof Icon>;
|
|
28
27
|
|
|
29
28
|
export const IconSet = {
|
|
30
29
|
args: {},
|
|
31
|
-
render: (
|
|
30
|
+
render: () => {
|
|
32
31
|
return (
|
|
33
32
|
<Icon>
|
|
34
33
|
<Icon.Code styles={Icon.Code.styles} />
|
|
35
|
-
Code Icon{
|
|
34
|
+
Code Icon{" "}
|
|
36
35
|
</Icon>
|
|
37
|
-
)
|
|
36
|
+
);
|
|
38
37
|
},
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
export const IconSizes = {
|
|
43
|
-
args: {},
|
|
44
|
-
render: (...args: any) => {
|
|
45
|
-
return (
|
|
46
|
-
<Icon>
|
|
47
|
-
<Icon.ArrowUp size={16} />
|
|
48
|
-
<Icon.ArrowUp size={24} />
|
|
49
|
-
<Icon.ArrowUp size={32} />
|
|
50
|
-
<Icon.ArrowUp size={48} />
|
|
51
|
-
<Icon.ArrowUp size={64} />
|
|
52
|
-
<Icon.ArrowUp size={96} />
|
|
53
|
-
<Icon.ArrowUp size={128} />
|
|
54
|
-
</Icon>
|
|
55
|
-
)
|
|
56
|
-
},
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
export const HeadingIcon = {
|
|
60
|
-
args: {},
|
|
61
|
-
render: (...args: any) => {
|
|
62
|
-
return (
|
|
63
|
-
<Heading type="h1">
|
|
64
|
-
<Icon>
|
|
65
|
-
<Icon.Code size={32} /> Code Icon
|
|
66
|
-
</Icon>
|
|
67
|
-
</Heading>
|
|
68
|
-
)
|
|
69
|
-
},
|
|
70
|
-
}
|
|
38
|
+
};
|
|
71
39
|
|
|
72
40
|
export const IconButton = {
|
|
73
41
|
args: {},
|
|
74
|
-
render: (
|
|
42
|
+
render: () => {
|
|
75
43
|
return (
|
|
76
|
-
|
|
44
|
+
<>
|
|
77
45
|
<Button type="button">
|
|
78
46
|
<Icon>
|
|
79
47
|
<Icon.Code />
|
|
80
48
|
</Icon>
|
|
81
49
|
Click Me
|
|
82
50
|
</Button>
|
|
83
|
-
|
|
84
|
-
)
|
|
51
|
+
</>
|
|
52
|
+
);
|
|
85
53
|
},
|
|
86
|
-
}
|
|
87
|
-
|
|
54
|
+
};
|
|
88
55
|
|
|
89
56
|
export const Code: Story = {
|
|
90
57
|
args: {
|
|
91
58
|
children: <Icon.Code role="img" aria-label="code icon" />,
|
|
92
59
|
},
|
|
93
|
-
} as Story
|
|
60
|
+
} as Story;
|
|
94
61
|
|
|
95
62
|
export const Home: Story = {
|
|
96
63
|
args: {
|
|
@@ -101,142 +68,184 @@ export const Home: Story = {
|
|
|
101
68
|
</>
|
|
102
69
|
),
|
|
103
70
|
},
|
|
104
|
-
} as Story
|
|
71
|
+
} as Story;
|
|
105
72
|
|
|
106
73
|
export const Add: Story = {
|
|
107
74
|
args: {
|
|
108
75
|
children: <Icon.Add />,
|
|
109
76
|
},
|
|
110
|
-
} as Story
|
|
77
|
+
} as Story;
|
|
111
78
|
|
|
112
79
|
export const ArrowDown: Story = {
|
|
113
80
|
args: {
|
|
114
81
|
children: <Icon.ArrowDown />,
|
|
115
82
|
},
|
|
116
|
-
} as Story
|
|
83
|
+
} as Story;
|
|
117
84
|
|
|
118
85
|
export const ArrowLeft: Story = {
|
|
119
86
|
args: {
|
|
120
87
|
children: <Icon.ArrowLeft />,
|
|
121
88
|
},
|
|
122
|
-
} as Story
|
|
89
|
+
} as Story;
|
|
123
90
|
|
|
124
91
|
export const ArrowRight: Story = {
|
|
125
92
|
args: {
|
|
126
93
|
children: <Icon.ArrowRight />,
|
|
127
94
|
},
|
|
128
|
-
} as Story
|
|
95
|
+
} as Story;
|
|
129
96
|
|
|
130
97
|
export const ArrowUp: Story = {
|
|
131
98
|
args: {
|
|
132
99
|
children: <Icon.ArrowUp />,
|
|
133
100
|
},
|
|
134
|
-
} as Story
|
|
101
|
+
} as Story;
|
|
135
102
|
|
|
136
103
|
export const Chat: Story = {
|
|
137
104
|
args: {
|
|
138
105
|
children: <Icon.Chat />,
|
|
139
106
|
},
|
|
140
|
-
} as Story
|
|
107
|
+
} as Story;
|
|
141
108
|
|
|
142
109
|
export const User: Story = {
|
|
143
110
|
args: {
|
|
144
111
|
children: <Icon.User />,
|
|
145
112
|
},
|
|
146
|
-
} as Story
|
|
113
|
+
} as Story;
|
|
147
114
|
|
|
148
115
|
export const Left: Story = {
|
|
149
116
|
args: {
|
|
150
117
|
children: <Icon.Left />,
|
|
151
118
|
},
|
|
152
|
-
} as Story
|
|
119
|
+
} as Story;
|
|
153
120
|
|
|
154
121
|
export const Right: Story = {
|
|
155
122
|
args: {
|
|
156
123
|
children: <Icon.Right />,
|
|
157
124
|
},
|
|
158
|
-
} as Story
|
|
125
|
+
} as Story;
|
|
159
126
|
|
|
160
127
|
export const Up: Story = {
|
|
161
128
|
args: {
|
|
162
129
|
children: <Icon.Up />,
|
|
163
130
|
},
|
|
164
|
-
} as Story
|
|
131
|
+
} as Story;
|
|
165
132
|
|
|
166
133
|
export const Down: Story = {
|
|
167
134
|
args: {
|
|
168
135
|
children: <Icon.Down />,
|
|
169
136
|
},
|
|
170
|
-
} as Story
|
|
137
|
+
} as Story;
|
|
171
138
|
|
|
172
139
|
export const Minus: Story = {
|
|
173
140
|
args: {
|
|
174
141
|
children: <Icon.Minus />,
|
|
175
142
|
},
|
|
176
|
-
} as Story
|
|
143
|
+
} as Story;
|
|
177
144
|
|
|
178
145
|
export const Remove: Story = {
|
|
179
146
|
args: {
|
|
180
147
|
children: <Icon.Remove />,
|
|
181
148
|
},
|
|
182
|
-
} as Story
|
|
149
|
+
} as Story;
|
|
183
150
|
|
|
184
151
|
export const Star: Story = {
|
|
185
152
|
args: {
|
|
186
153
|
children: <Icon.Star />,
|
|
187
154
|
},
|
|
188
|
-
} as Story
|
|
155
|
+
} as Story;
|
|
189
156
|
|
|
190
157
|
export const Copy: Story = {
|
|
191
158
|
args: {
|
|
192
159
|
children: <Icon.Copy />,
|
|
193
160
|
},
|
|
194
|
-
} as Story
|
|
161
|
+
} as Story;
|
|
195
162
|
|
|
196
163
|
export const Play: Story = {
|
|
197
164
|
args: {
|
|
198
165
|
children: <Icon.Play />,
|
|
199
166
|
},
|
|
200
|
-
} as Story
|
|
167
|
+
} as Story;
|
|
201
168
|
|
|
202
169
|
export const Pause: Story = {
|
|
203
170
|
args: {
|
|
204
171
|
children: <Icon.Pause />,
|
|
205
172
|
},
|
|
206
|
-
} as Story
|
|
173
|
+
} as Story;
|
|
207
174
|
|
|
208
175
|
export const Resume: Story = {
|
|
209
176
|
args: {
|
|
210
177
|
children: <Icon.Resume />,
|
|
211
178
|
},
|
|
212
|
-
} as Story
|
|
179
|
+
} as Story;
|
|
213
180
|
|
|
214
181
|
export const Stop: Story = {
|
|
215
182
|
args: {
|
|
216
183
|
children: <Icon.Stop />,
|
|
217
184
|
},
|
|
218
|
-
} as Story
|
|
185
|
+
} as Story;
|
|
219
186
|
|
|
220
187
|
export const PlaySolid: Story = {
|
|
221
188
|
args: {
|
|
222
189
|
children: <Icon.PlaySolid />,
|
|
223
190
|
},
|
|
224
|
-
} as Story
|
|
191
|
+
} as Story;
|
|
225
192
|
|
|
226
193
|
export const PauseSolid: Story = {
|
|
227
194
|
args: {
|
|
228
195
|
children: <Icon.PauseSolid />,
|
|
229
196
|
},
|
|
230
|
-
} as Story
|
|
197
|
+
} as Story;
|
|
231
198
|
|
|
232
199
|
export const ResumeSolid: Story = {
|
|
233
200
|
args: {
|
|
234
201
|
children: <Icon.ResumeSolid />,
|
|
235
202
|
},
|
|
236
|
-
} as Story
|
|
203
|
+
} as Story;
|
|
237
204
|
|
|
238
205
|
export const StopSolid: Story = {
|
|
239
206
|
args: {
|
|
240
207
|
children: <Icon.StopSolid />,
|
|
241
208
|
},
|
|
242
|
-
} as Story
|
|
209
|
+
} as Story;
|
|
210
|
+
|
|
211
|
+
export const Info: Story = {
|
|
212
|
+
args: {
|
|
213
|
+
children: <Icon.Info />,
|
|
214
|
+
},
|
|
215
|
+
} as Story;
|
|
216
|
+
|
|
217
|
+
export const Alert: Story = {
|
|
218
|
+
args: {
|
|
219
|
+
children: <Icon.AlertSolid />,
|
|
220
|
+
},
|
|
221
|
+
} as Story;
|
|
222
|
+
|
|
223
|
+
export const InfoSolid: Story = {
|
|
224
|
+
args: {
|
|
225
|
+
children: <Icon.InfoSolid />,
|
|
226
|
+
},
|
|
227
|
+
} as Story;
|
|
228
|
+
|
|
229
|
+
export const QuestionSolid: Story = {
|
|
230
|
+
args: {
|
|
231
|
+
children: <Icon.QuestionSolid />,
|
|
232
|
+
},
|
|
233
|
+
} as Story;
|
|
234
|
+
|
|
235
|
+
export const WarnSolid: Story = {
|
|
236
|
+
args: {
|
|
237
|
+
children: <Icon.WarnSolid />,
|
|
238
|
+
},
|
|
239
|
+
} as Story;
|
|
240
|
+
|
|
241
|
+
export const SuccessSolid: Story = {
|
|
242
|
+
args: {
|
|
243
|
+
children: <Icon.SuccessSolid />,
|
|
244
|
+
},
|
|
245
|
+
} as Story;
|
|
246
|
+
|
|
247
|
+
export const AlertSquareSolid: Story = {
|
|
248
|
+
args: {
|
|
249
|
+
children: <Icon.AlertSquareSolid />,
|
|
250
|
+
},
|
|
251
|
+
} as Story;
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
Copy,
|
|
10
10
|
Down,
|
|
11
11
|
Home,
|
|
12
|
+
Info,
|
|
12
13
|
Left,
|
|
13
14
|
Minus,
|
|
14
15
|
Remove,
|
|
@@ -23,11 +24,17 @@ import {
|
|
|
23
24
|
PlaySolid,
|
|
24
25
|
PauseSolid,
|
|
25
26
|
ResumeSolid,
|
|
26
|
-
StopSolid
|
|
27
|
-
|
|
27
|
+
StopSolid,
|
|
28
|
+
AlertSolid,
|
|
29
|
+
InfoSolid,
|
|
30
|
+
QuestionSolid,
|
|
31
|
+
WarnSolid,
|
|
32
|
+
SuccessSolid,
|
|
33
|
+
AlertSquareSolid,
|
|
34
|
+
} from "./index";
|
|
28
35
|
|
|
29
|
-
import UI from
|
|
30
|
-
import React from
|
|
36
|
+
import UI from "#components/ui";
|
|
37
|
+
import React from "react";
|
|
31
38
|
|
|
32
39
|
/**
|
|
33
40
|
* The default styles object for the Icon component.
|
|
@@ -39,26 +46,15 @@ import React from 'react'
|
|
|
39
46
|
* @property {string} width - Sets width to 'auto' for automatic sizing.
|
|
40
47
|
*/
|
|
41
48
|
const defaultStyles = {
|
|
42
|
-
display:
|
|
43
|
-
direction:
|
|
44
|
-
gap:
|
|
45
|
-
placeItems:
|
|
46
|
-
width:
|
|
47
|
-
}
|
|
49
|
+
display: "inline-flex",
|
|
50
|
+
direction: "row",
|
|
51
|
+
gap: ".2rem",
|
|
52
|
+
placeItems: "center",
|
|
53
|
+
width: "auto",
|
|
54
|
+
};
|
|
48
55
|
|
|
49
|
-
export type IconProps = React.ComponentProps<typeof UI
|
|
56
|
+
export type IconProps = React.ComponentProps<typeof UI>;
|
|
50
57
|
|
|
51
|
-
/**
|
|
52
|
-
* A component for rendering icons with consistent styling and behavior.
|
|
53
|
-
*
|
|
54
|
-
* @param {object} props - The component props
|
|
55
|
-
* @param {string} [props.id] - Optional unique identifier for the icon
|
|
56
|
-
* @param {string} [props.classes] - CSS classes to apply to the icon
|
|
57
|
-
* @param {React.ReactNode} [props.children] - Child elements to render inside the icon
|
|
58
|
-
* @param {object} [props.styles] - Custom styles to apply to the icon
|
|
59
|
-
* @param {...any} [props.props] - Additional props to spread to the underlying UI component
|
|
60
|
-
* @returns {JSX.Element} The rendered icon component
|
|
61
|
-
*/
|
|
62
58
|
export const Icon = ({
|
|
63
59
|
id,
|
|
64
60
|
classes,
|
|
@@ -78,34 +74,43 @@ export const Icon = ({
|
|
|
78
74
|
>
|
|
79
75
|
{children}
|
|
80
76
|
</UI>
|
|
81
|
-
)
|
|
82
|
-
}
|
|
77
|
+
);
|
|
78
|
+
};
|
|
83
79
|
|
|
84
|
-
export default Icon
|
|
85
|
-
Icon.displayName =
|
|
86
|
-
Icon.
|
|
87
|
-
Icon.
|
|
88
|
-
Icon.
|
|
89
|
-
Icon.
|
|
90
|
-
Icon.
|
|
91
|
-
Icon.
|
|
92
|
-
Icon.
|
|
93
|
-
Icon.
|
|
94
|
-
Icon.
|
|
95
|
-
Icon.Home = Home
|
|
96
|
-
Icon.
|
|
97
|
-
Icon.
|
|
98
|
-
Icon.
|
|
99
|
-
Icon.
|
|
100
|
-
Icon.
|
|
101
|
-
Icon.
|
|
102
|
-
Icon.
|
|
103
|
-
Icon.
|
|
104
|
-
Icon.
|
|
105
|
-
Icon.
|
|
106
|
-
Icon.
|
|
107
|
-
Icon.
|
|
108
|
-
Icon.
|
|
109
|
-
Icon.
|
|
110
|
-
Icon.
|
|
111
|
-
Icon.StopSolid = StopSolid
|
|
80
|
+
export default Icon;
|
|
81
|
+
Icon.displayName = "Icon";
|
|
82
|
+
Icon.Add = Add;
|
|
83
|
+
Icon.ArrowDown = ArrowDown;
|
|
84
|
+
Icon.ArrowLeft = ArrowLeft;
|
|
85
|
+
Icon.ArrowRight = ArrowRight;
|
|
86
|
+
Icon.ArrowUp = ArrowUp;
|
|
87
|
+
Icon.Chat = Chat;
|
|
88
|
+
Icon.Code = Code;
|
|
89
|
+
Icon.Copy = Copy;
|
|
90
|
+
Icon.Down = Down;
|
|
91
|
+
Icon.Home = Home;
|
|
92
|
+
Icon.Info = Info;
|
|
93
|
+
Icon.InfoSolid = InfoSolid;
|
|
94
|
+
Icon.AlertSolid = AlertSolid;
|
|
95
|
+
Icon.Left = Left;
|
|
96
|
+
Icon.Minus = Minus;
|
|
97
|
+
Icon.Pause = Pause;
|
|
98
|
+
Icon.PauseSolid = PauseSolid;
|
|
99
|
+
Icon.Play = Play;
|
|
100
|
+
Icon.PlaySolid = PlaySolid;
|
|
101
|
+
Icon.Remove = Remove;
|
|
102
|
+
Icon.Resume = Resume;
|
|
103
|
+
Icon.ResumeSolid = ResumeSolid;
|
|
104
|
+
Icon.Right = Right;
|
|
105
|
+
Icon.Star = Star;
|
|
106
|
+
Icon.Stop = Stop;
|
|
107
|
+
Icon.StopSolid = StopSolid;
|
|
108
|
+
Icon.Up = Up;
|
|
109
|
+
Icon.User = User;
|
|
110
|
+
Icon.styles = defaultStyles;
|
|
111
|
+
Icon.QuestionSolid = QuestionSolid;
|
|
112
|
+
Icon.WarnSolid = WarnSolid;
|
|
113
|
+
Icon.SuccessSolid = SuccessSolid;
|
|
114
|
+
Icon.AlertSquareSolid = AlertSquareSolid;
|
|
115
|
+
// aliases
|
|
116
|
+
Icon.Close = Icon.Remove;
|