@krrli/cm-designsystem 1.1.0 → 1.19.8
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/README.md +422 -2
- package/dist/components/avatar/Avatar.d.ts +71 -0
- package/dist/components/avatar/Avatar.js +63 -0
- package/dist/components/branding/BrandingGallery.d.ts +1 -0
- package/dist/components/branding/BrandingGallery.js +139 -0
- package/dist/components/button/Button.d.ts +54 -0
- package/dist/components/button/Button.js +56 -0
- package/dist/components/button/Button.test.d.ts +1 -0
- package/dist/components/button/Button.test.js +30 -0
- package/dist/components/color/ColorDoc.d.ts +4 -0
- package/dist/components/color/ColorDoc.js +10 -0
- package/dist/components/file-upload/FileUpload.d.ts +83 -0
- package/dist/components/file-upload/FileUpload.js +70 -0
- package/dist/components/form/Form.d.ts +54 -0
- package/dist/components/form/Form.js +38 -0
- package/dist/components/icon-button/IconButton.d.ts +50 -0
- package/dist/components/icon-button/IconButton.js +22 -0
- package/dist/components/icon-button/IconButton.test.d.ts +1 -0
- package/dist/components/icon-button/IconButton.test.js +22 -0
- package/dist/components/icons/IconBase.d.ts +5 -0
- package/dist/components/icons/IconBase.js +9 -0
- package/dist/components/icons/generated/ArrowDown.d.ts +3 -0
- package/dist/components/icons/generated/ArrowDown.js +4 -0
- package/dist/components/icons/generated/ArrowLeft.d.ts +3 -0
- package/dist/components/icons/generated/ArrowLeft.js +4 -0
- package/dist/components/icons/generated/ArrowRight.d.ts +3 -0
- package/dist/components/icons/generated/ArrowRight.js +4 -0
- package/dist/components/icons/generated/ArrowUp.d.ts +3 -0
- package/dist/components/icons/generated/ArrowUp.js +4 -0
- package/dist/components/icons/generated/Calendar.d.ts +3 -0
- package/dist/components/icons/generated/Calendar.js +4 -0
- package/dist/components/icons/generated/Cancel.d.ts +3 -0
- package/dist/components/icons/generated/Cancel.js +4 -0
- package/dist/components/icons/generated/Checkmark.d.ts +3 -0
- package/dist/components/icons/generated/Checkmark.js +4 -0
- package/dist/components/icons/generated/Edit.d.ts +3 -0
- package/dist/components/icons/generated/Edit.js +4 -0
- package/dist/components/icons/generated/Eye.d.ts +3 -0
- package/dist/components/icons/generated/Eye.js +4 -0
- package/dist/components/icons/generated/Fullscreen.d.ts +3 -0
- package/dist/components/icons/generated/Fullscreen.js +4 -0
- package/dist/components/icons/generated/HeartFilled.d.ts +3 -0
- package/dist/components/icons/generated/HeartFilled.js +4 -0
- package/dist/components/icons/generated/HeartOutline.d.ts +3 -0
- package/dist/components/icons/generated/HeartOutline.js +4 -0
- package/dist/components/icons/generated/Location.d.ts +3 -0
- package/dist/components/icons/generated/Location.js +4 -0
- package/dist/components/icons/generated/LogOut.d.ts +3 -0
- package/dist/components/icons/generated/LogOut.js +4 -0
- package/dist/components/icons/generated/Mumble.d.ts +3 -0
- package/dist/components/icons/generated/Mumble.js +4 -0
- package/dist/components/icons/generated/Profile.d.ts +3 -0
- package/dist/components/icons/generated/Profile.js +4 -0
- package/dist/components/icons/generated/ReplyFilled.d.ts +3 -0
- package/dist/components/icons/generated/ReplyFilled.js +4 -0
- package/dist/components/icons/generated/ReplyOutline.d.ts +3 -0
- package/dist/components/icons/generated/ReplyOutline.js +4 -0
- package/dist/components/icons/generated/Repost.d.ts +3 -0
- package/dist/components/icons/generated/Repost.js +4 -0
- package/dist/components/icons/generated/Send.d.ts +3 -0
- package/dist/components/icons/generated/Send.js +4 -0
- package/dist/components/icons/generated/Settings.d.ts +3 -0
- package/dist/components/icons/generated/Settings.js +4 -0
- package/dist/components/icons/generated/Share.d.ts +3 -0
- package/dist/components/icons/generated/Share.js +4 -0
- package/dist/components/icons/generated/Time.d.ts +3 -0
- package/dist/components/icons/generated/Time.js +4 -0
- package/dist/components/icons/generated/Upload.d.ts +3 -0
- package/dist/components/icons/generated/Upload.js +4 -0
- package/dist/components/icons/generated/index.d.ts +24 -0
- package/dist/components/icons/generated/index.js +24 -0
- package/dist/components/index.d.ts +25 -0
- package/dist/components/index.js +25 -0
- package/dist/components/input/Input.d.ts +61 -0
- package/dist/components/input/Input.js +47 -0
- package/dist/components/like-toggle/LikeToggle.d.ts +97 -0
- package/dist/components/like-toggle/LikeToggle.js +185 -0
- package/dist/components/like-toggle/LikeToggle.test.d.ts +1 -0
- package/dist/components/like-toggle/LikeToggle.test.js +35 -0
- package/dist/components/modal/Modal.d.ts +75 -0
- package/dist/components/modal/Modal.js +63 -0
- package/dist/components/modal/Modal.test.d.ts +1 -0
- package/dist/components/modal/Modal.test.js +24 -0
- package/dist/components/navi-button/NaviButton.d.ts +26 -0
- package/dist/components/navi-button/NaviButton.js +29 -0
- package/dist/components/navi-button/NaviButton.test.d.ts +1 -0
- package/dist/components/navi-button/NaviButton.test.js +22 -0
- package/dist/components/navi-user-button/NaviUserButton.d.ts +26 -0
- package/dist/components/navi-user-button/NaviUserButton.js +29 -0
- package/dist/components/round-button/RoundButton.d.ts +25 -0
- package/dist/components/round-button/RoundButton.js +28 -0
- package/dist/components/round-button/RoundButton.test.d.ts +1 -0
- package/dist/components/round-button/RoundButton.test.js +21 -0
- package/dist/components/tabs/TabItem.d.ts +11 -0
- package/dist/components/tabs/TabItem.js +13 -0
- package/dist/components/tabs/Tabs.d.ts +67 -0
- package/dist/components/tabs/Tabs.js +67 -0
- package/dist/components/tabs/Tabs.test.d.ts +1 -0
- package/dist/components/tabs/Tabs.test.js +61 -0
- package/dist/components/text-link/TextLink.d.ts +9 -0
- package/dist/components/text-link/TextLink.js +15 -0
- package/dist/components/text-link/TextLink.test.d.ts +1 -0
- package/dist/components/text-link/TextLink.test.js +14 -0
- package/dist/components/textarea/Textarea.d.ts +48 -0
- package/dist/components/textarea/Textarea.js +46 -0
- package/dist/components/timed-button/TimedButton.d.ts +56 -0
- package/dist/components/timed-button/TimedButton.js +106 -0
- package/dist/components/timed-button/TimedButton.test.d.ts +1 -0
- package/dist/components/timed-button/TimedButton.test.js +35 -0
- package/dist/components/toggle/Toggle.d.ts +62 -0
- package/dist/components/toggle/Toggle.js +67 -0
- package/dist/components/toggle/Toggle.test.d.ts +1 -0
- package/dist/components/toggle/Toggle.test.js +93 -0
- package/dist/components/typography/Heading.d.ts +17 -0
- package/dist/components/typography/Heading.js +11 -0
- package/dist/components/typography/Label.d.ts +15 -0
- package/dist/components/typography/Label.js +7 -0
- package/dist/components/typography/Paragraph.d.ts +15 -0
- package/dist/components/typography/Paragraph.js +7 -0
- package/dist/components/typography/Placeholder.d.ts +13 -0
- package/dist/components/typography/Placeholder.js +7 -0
- package/dist/components/typography/ValidationMessage.d.ts +15 -0
- package/dist/components/typography/ValidationMessage.js +9 -0
- package/dist/components/typography/styles.d.ts +74 -0
- package/dist/components/typography/styles.js +52 -0
- package/dist/favicon.svg +18 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.es.js +7550 -0
- package/dist/index.js +2 -0
- package/dist/logo-inline-gradient.svg +43 -0
- package/dist/setupTests.d.ts +1 -0
- package/dist/setupTests.js +7 -0
- package/package.json +78 -33
- package/.github/CODEOWNERS +0 -7
- package/.github/semantic.yml +0 -24
- package/.github/workflows/publish-npm.yml +0 -29
- package/.github/workflows/storybook.yml +0 -44
- package/.releaserc.json +0 -9
- package/.storybook/main.ts +0 -19
- package/.storybook/preview.ts +0 -21
- package/.storybook/vitest.setup.ts +0 -7
- package/src/index.ts +0 -4
- package/stories/Button.stories.ts +0 -54
- package/stories/Button.tsx +0 -37
- package/stories/Button2.stories.ts +0 -54
- package/stories/Button2.tsx +0 -41
- package/stories/Configure.mdx +0 -364
- package/stories/Header.stories.ts +0 -34
- package/stories/Header.tsx +0 -56
- package/stories/Page.stories.ts +0 -33
- package/stories/Page.tsx +0 -73
- package/stories/assets/accessibility.png +0 -0
- package/stories/assets/accessibility.svg +0 -1
- package/stories/assets/addon-library.png +0 -0
- package/stories/assets/assets.png +0 -0
- package/stories/assets/avif-test-image.avif +0 -0
- package/stories/assets/context.png +0 -0
- package/stories/assets/discord.svg +0 -1
- package/stories/assets/docs.png +0 -0
- package/stories/assets/figma-plugin.png +0 -0
- package/stories/assets/github.svg +0 -1
- package/stories/assets/share.png +0 -0
- package/stories/assets/styling.png +0 -0
- package/stories/assets/testing.png +0 -0
- package/stories/assets/theming.png +0 -0
- package/stories/assets/tutorials.svg +0 -1
- package/stories/assets/youtube.svg +0 -1
- package/stories/button.css +0 -30
- package/stories/button2.css +0 -30
- package/stories/header.css +0 -32
- package/stories/page.css +0 -68
- package/tsconfig.json +0 -13
- package/vitest.config.ts +0 -35
- package/vitest.shims.d.ts +0 -1
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const Fullscreen = (props) => (_jsxs(IconBase, { label: "Fullscreen", ...props, children: [_jsx("g", { fill: "currentColor", clipPath: "url(#a)", children: _jsx("path", { d: "M15 0h-5a1 1 0 1 0 0 2h2.587L9.294 5.293a1 1 0 1 0 1.414 1.414L14 3.414V6a1 1 0 1 0 2 0V1a1 1 0 0 0-1-1M6.707 9.293a1 1 0 0 0-1.414 0L2 12.586V10a1 1 0 0 0-2 0v5a1 1 0 0 0 1 1h5a1 1 0 0 0 0-2H3.414l3.293-3.293a1 1 0 0 0 0-1.414" }) }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const HeartFilled = (props) => (_jsxs(IconBase, { label: "HeartFilled", ...props, children: [_jsx("g", { clipPath: "url(#a)", children: _jsx("path", { fill: "currentColor", d: "M11.6 0C10.1 0 8.8.8 8 2 7.2.8 5.9 0 4.4 0 2 0 0 2 0 4.4c0 4.4 8 10.9 8 10.9s8-6.5 8-10.9C16 2 14 0 11.6 0" }) }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const HeartOutline = (props) => (_jsxs(IconBase, { label: "HeartOutline", ...props, children: [_jsx("g", { clipPath: "url(#a)", children: _jsx("path", { fill: "currentColor", d: "M7.4 15.5C6.6 14.8 0 9.3 0 5.1 0 2.4 2.2.3 4.8.3 6 .3 7.1.8 8 1.5 8.9.7 10 .3 11.2.3 13.9.3 16 2.5 16 5.1c0 4.2-6.6 9.7-7.4 10.3-.3.4-.9.4-1.2.1M4.8 2.3C3.3 2.3 2 3.6 2 5.1c0 2.2 3.5 6 6 8.2 2.1-1.9 6-5.8 6-8.2 0-1.6-1.3-2.8-2.8-2.8-.9 0-1.8.5-2.3 1.3-.4.6-1.3.6-1.7 0-.6-.8-1.4-1.3-2.4-1.3" }) }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const Location = (props) => (_jsxs(IconBase, { label: "Location", ...props, children: [_jsx("g", { clipPath: "url(#a)", children: _jsx("path", { fill: "currentColor", d: "M8 0C4.1 0 1 3.1 1 7c0 1.9.7 3.7 2.1 5 .1.1 4.1 3.7 4.2 3.8.4.3 1 .3 1.3 0 .1-.1 4.2-3.7 4.2-3.8 1.4-1.3 2.1-3.1 2.1-5 .1-3.9-3-7-6.9-7m0 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2" }) }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const LogOut = (props) => (_jsxs(IconBase, { label: "LogOut", ...props, children: [_jsxs("g", { fill: "currentColor", clipPath: "url(#a)", children: [_jsx("path", { d: "M6.293 11.955a.5.5 0 0 0 .536-.079l4-3.5a.5.5 0 0 0 0-.752l-4-3.5A.5.5 0 0 0 6 4.5V7H1a1 1 0 0 0 0 2h5v2.5a.5.5 0 0 0 .293.455" }), _jsx("path", { d: "M14 0H2a2 2 0 0 0-2 2v2a1 1 0 0 0 2 0V2h12v12H2v-2a1 1 0 1 0-2 0v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2" })] }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const Mumble = (props) => (_jsxs(IconBase, { label: "Mumble", ...props, children: [_jsxs("g", { fill: "currentColor", clipPath: "url(#a)", children: [_jsx("path", { d: "M9.793 10H6.207a.5.5 0 0 0-.353.854l1.792 1.792a.5.5 0 0 0 .708 0l1.792-1.793A.5.5 0 0 0 9.793 10" }), _jsx("path", { d: "M14.807 5.371A2.96 2.96 0 0 0 16 3a3 3 0 0 0-3-3 2.96 2.96 0 0 0-2.029.806 5.87 5.87 0 0 0-5.942 0A2.96 2.96 0 0 0 3 0a3 3 0 0 0-3 3 2.96 2.96 0 0 0 1.193 2.371C.015 7.867-.64 11.018.935 13.298 2.173 15.09 4.55 16 8 16s5.827-.91 7.065-2.702c1.575-2.28.92-5.43-.258-7.927m-1.387 6.79C12.577 13.381 10.754 14 8 14s-4.577-.62-5.42-1.839c-1.05-1.522-.417-3.836.055-5.079C3.085 5.89 4.808 2 8 2s4.914 3.89 5.365 5.082c.472 1.243 1.106 3.557.055 5.08" }), _jsx("path", { d: "M6.67 6.617c-.114-.442-.38-1.05-1.164-1.05-1.081 0-1.987 1.596-1.997 2.306s.473 1.483 1.07 1.483 1.123-.535 1.658-1.297.546-.999.432-1.442m3.825-1.05c-.784 0-1.05.608-1.163 1.05-.114.443-.103.68.432 1.442s1.06 1.297 1.658 1.297 1.08-.772 1.07-1.483c-.01-.71-.916-2.306-1.997-2.306" })] }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const Profile = (props) => (_jsx(IconBase, { label: "Profile", ...props, children: _jsx("path", { fill: "currentColor", d: "M8 7a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m0 1.5a7.01 7.01 0 0 0-7 7 .5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5 7.01 7.01 0 0 0-7-7" }) }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const ReplyFilled = (props) => (_jsxs(IconBase, { label: "ReplyFilled", ...props, children: [_jsx("g", { clipPath: "url(#a)", children: _jsx("path", { fill: "currentColor", d: "M8 0C3.6 0 0 3.1 0 7s3.6 7 8 7c.4 0 .8 0 1.1-.1L14 16v-4.4c1.2-1.2 2-2.8 2-4.6 0-3.9-3.6-7-8-7" }) }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const ReplyOutline = (props) => (_jsxs(IconBase, { label: "ReplyOutline", ...props, children: [_jsx("g", { clipPath: "url(#a)", children: _jsx("path", { fill: "currentColor", d: "M8 0C3.6 0 0 3.1 0 7s3.6 7 8 7h.6l5.4 2v-4.4c1.2-1.2 2-2.8 2-4.6 0-3.9-3.6-7-8-7m4 10.8v2.3L8.9 12H8c-3.3 0-6-2.2-6-5s2.7-5 6-5 6 2.2 6 5c0 2.2-2 3.8-2 3.8" }) }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const Repost = (props) => (_jsxs(IconBase, { label: "Repost", ...props, children: [_jsx("g", { clipPath: "url(#a)", children: _jsx("path", { fill: "currentColor", d: "M14.413.389a.5.5 0 0 0-.849-.235l-1.488 1.559a7.494 7.494 0 1 0 3.062 8.595 1 1 0 0 0-1.9-.616 5.513 5.513 0 1 1-2.573-6.5l-1.6 1.68a.5.5 0 0 0 .27.837L15.157 6.8a.48.48 0 0 0 .31-.04.5.5 0 0 0 .27-.563z" }) }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const Send = (props) => (_jsxs(IconBase, { label: "Send", ...props, children: [_jsx("g", { clipPath: "url(#a)", children: _jsx("path", { fill: "currentColor", d: "M15.707.293a1 1 0 0 0-1.043-.234l-14 5a.999.999 0 0 0-.111 1.835l4.586 2.292L10.999 5l-4.186 5.862 2.292 4.586a1.004 1.004 0 0 0 1.838-.112l5-14c.129-.363.037-.77-.236-1.043" }) }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const Settings = (props) => (_jsxs(IconBase, { label: "Settings", ...props, children: [_jsx("g", { clipPath: "url(#a)", children: _jsx("path", { fill: "currentColor", d: "M15.135 6.784a2 2 0 0 1-1.23-2.969c.322-.536.225-.998-.094-1.316l-.31-.31c-.318-.318-.78-.415-1.316-.094A2 2 0 0 1 9.216.865C9.065.258 8.669 0 8.219 0h-.438c-.45 0-.845.258-.997.865a2 2 0 0 1-2.969 1.23c-.536-.322-.999-.225-1.317.093l-.31.31c-.318.318-.415.781-.093 1.317a2 2 0 0 1-1.23 2.969C.26 6.935 0 7.33 0 7.781v.438c0 .45.258.845.865.997a2 2 0 0 1 1.23 2.969c-.322.536-.225.998.094 1.316l.31.31c.319.319.782.415 1.316.094a2 2 0 0 1 2.969 1.23c.151.607.547.865.997.865h.438c.45 0 .845-.258.997-.865a2 2 0 0 1 2.969-1.23c.535.321.997.225 1.316-.094l.31-.31c.318-.318.415-.78.094-1.316a2 2 0 0 1 1.23-2.969c.607-.151.865-.547.865-.997v-.438c0-.451-.26-.846-.865-.997M8 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6" }) }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const Share = (props) => (_jsx(IconBase, { label: "Share", ...props, children: _jsx("path", { fill: "currentColor", d: "M12 6c1.654 0 3-1.346 3-3s-1.346-3-3-3-3 1.346-3 3c0 .224.029.44.075.65L5.856 5.661A2.97 2.97 0 0 0 4 5C2.346 5 1 6.346 1 8s1.346 3 3 3c.704 0 1.344-.254 1.856-.661l3.219 2.012A3 3 0 0 0 9 13c0 1.654 1.346 3 3 3s3-1.346 3-3-1.346-3-3-3c-.704 0-1.343.254-1.856.661L6.925 8.649C6.971 8.44 7 8.223 7 8s-.029-.44-.075-.649l3.22-2.012A2.97 2.97 0 0 0 12 6m0-4a1.001 1.001 0 0 1 0 2 1.001 1.001 0 0 1 0-2M4 9a1.001 1.001 0 0 1 0-2 1.001 1.001 0 0 1 0 2m8 3a1.001 1.001 0 0 1 0 2 1.001 1.001 0 0 1 0-2" }) }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const Time = (props) => (_jsxs(IconBase, { label: "Time", ...props, children: [_jsxs("g", { fill: "currentColor", clipPath: "url(#a)", children: [_jsx("path", { d: "M8 0a8 8 0 1 0 8 8 8.024 8.024 0 0 0-8-8m0 14a6 6 0 1 1 6-6 6.02 6.02 0 0 1-6 6" }), _jsx("path", { d: "M11.5 7H9V4.5a1 1 0 1 0-2 0V8a1 1 0 0 0 1 1h3.5a1 1 0 1 0 0-2" })] }), _jsx("defs", { children: _jsx("clipPath", { id: "a", children: _jsx("path", { fill: "#fff", d: "M0 0h16v16H0z" }) }) })] }));
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { IconBase } from "../IconBase";
|
|
4
|
+
export const Upload = (props) => (_jsxs(IconBase, { label: "Upload", ...props, children: [_jsx("path", { fill: "currentColor", d: "M14 10a1 1 0 0 0-1 1v2H3v-2a1 1 0 0 0-2 0v2a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-2a1 1 0 0 0-1-1" }), _jsx("path", { fill: "currentColor", d: "M4.707 6.707 7 4.414V10a1 1 0 1 0 2 0V4.414l2.293 2.293a1 1 0 0 0 1.414-1.414l-4-4a1 1 0 0 0-1.414 0l-4 4a1 1 0 0 0 1.414 1.414" })] }));
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export * from "./ArrowDown";
|
|
2
|
+
export * from "./ArrowLeft";
|
|
3
|
+
export * from "./ArrowRight";
|
|
4
|
+
export * from "./ArrowUp";
|
|
5
|
+
export * from "./Calendar";
|
|
6
|
+
export * from "./Cancel";
|
|
7
|
+
export * from "./Checkmark";
|
|
8
|
+
export * from "./Edit";
|
|
9
|
+
export * from "./Eye";
|
|
10
|
+
export * from "./Fullscreen";
|
|
11
|
+
export * from "./HeartFilled";
|
|
12
|
+
export * from "./HeartOutline";
|
|
13
|
+
export * from "./Location";
|
|
14
|
+
export * from "./LogOut";
|
|
15
|
+
export * from "./Mumble";
|
|
16
|
+
export * from "./Profile";
|
|
17
|
+
export * from "./ReplyFilled";
|
|
18
|
+
export * from "./ReplyOutline";
|
|
19
|
+
export * from "./Repost";
|
|
20
|
+
export * from "./Send";
|
|
21
|
+
export * from "./Settings";
|
|
22
|
+
export * from "./Share";
|
|
23
|
+
export * from "./Time";
|
|
24
|
+
export * from "./Upload";
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export * from "./ArrowDown";
|
|
2
|
+
export * from "./ArrowLeft";
|
|
3
|
+
export * from "./ArrowRight";
|
|
4
|
+
export * from "./ArrowUp";
|
|
5
|
+
export * from "./Calendar";
|
|
6
|
+
export * from "./Cancel";
|
|
7
|
+
export * from "./Checkmark";
|
|
8
|
+
export * from "./Edit";
|
|
9
|
+
export * from "./Eye";
|
|
10
|
+
export * from "./Fullscreen";
|
|
11
|
+
export * from "./HeartFilled";
|
|
12
|
+
export * from "./HeartOutline";
|
|
13
|
+
export * from "./Location";
|
|
14
|
+
export * from "./LogOut";
|
|
15
|
+
export * from "./Mumble";
|
|
16
|
+
export * from "./Profile";
|
|
17
|
+
export * from "./ReplyFilled";
|
|
18
|
+
export * from "./ReplyOutline";
|
|
19
|
+
export * from "./Repost";
|
|
20
|
+
export * from "./Send";
|
|
21
|
+
export * from "./Settings";
|
|
22
|
+
export * from "./Share";
|
|
23
|
+
export * from "./Time";
|
|
24
|
+
export * from "./Upload";
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export * from "./avatar/Avatar";
|
|
2
|
+
export * from "./branding/BrandingGallery";
|
|
3
|
+
export * from "./button/Button";
|
|
4
|
+
export * from "./color/ColorDoc";
|
|
5
|
+
export * from "./file-upload/FileUpload";
|
|
6
|
+
export * from "./form/Form";
|
|
7
|
+
export * from "./icon-button/IconButton";
|
|
8
|
+
export * from "./icons/IconBase";
|
|
9
|
+
export * from "./input/Input";
|
|
10
|
+
export * from "./like-toggle/LikeToggle";
|
|
11
|
+
export * from "./modal/Modal";
|
|
12
|
+
export * from "./navi-button/NaviButton";
|
|
13
|
+
export * from "./navi-user-button/NaviUserButton";
|
|
14
|
+
export * from "./round-button/RoundButton";
|
|
15
|
+
export * from "./tabs/TabItem";
|
|
16
|
+
export * from "./tabs/Tabs";
|
|
17
|
+
export * from "./text-link/TextLink";
|
|
18
|
+
export * from "./textarea/Textarea";
|
|
19
|
+
export * from "./timed-button/TimedButton";
|
|
20
|
+
export * from "./toggle/Toggle";
|
|
21
|
+
export * from "./typography/Heading";
|
|
22
|
+
export * from "./typography/Label";
|
|
23
|
+
export * from "./typography/Paragraph";
|
|
24
|
+
export * from "./typography/Placeholder";
|
|
25
|
+
export * from "./typography/ValidationMessage";
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export * from "./avatar/Avatar";
|
|
2
|
+
export * from "./branding/BrandingGallery";
|
|
3
|
+
export * from "./button/Button";
|
|
4
|
+
export * from "./color/ColorDoc";
|
|
5
|
+
export * from "./file-upload/FileUpload";
|
|
6
|
+
export * from "./form/Form";
|
|
7
|
+
export * from "./icon-button/IconButton";
|
|
8
|
+
export * from "./icons/IconBase";
|
|
9
|
+
export * from "./input/Input";
|
|
10
|
+
export * from "./like-toggle/LikeToggle";
|
|
11
|
+
export * from "./modal/Modal";
|
|
12
|
+
export * from "./navi-button/NaviButton";
|
|
13
|
+
export * from "./navi-user-button/NaviUserButton";
|
|
14
|
+
export * from "./round-button/RoundButton";
|
|
15
|
+
export * from "./tabs/TabItem";
|
|
16
|
+
export * from "./tabs/Tabs";
|
|
17
|
+
export * from "./text-link/TextLink";
|
|
18
|
+
export * from "./textarea/Textarea";
|
|
19
|
+
export * from "./timed-button/TimedButton";
|
|
20
|
+
export * from "./toggle/Toggle";
|
|
21
|
+
export * from "./typography/Heading";
|
|
22
|
+
export * from "./typography/Label";
|
|
23
|
+
export * from "./typography/Paragraph";
|
|
24
|
+
export * from "./typography/Placeholder";
|
|
25
|
+
export * from "./typography/ValidationMessage";
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { type VariantProps } from "tailwind-variants";
|
|
3
|
+
import type { IconBaseProps } from "../icons/IconBase";
|
|
4
|
+
declare const inputStyles: import("tailwind-variants").TVReturnType<{
|
|
5
|
+
hasIcon: {
|
|
6
|
+
true: {
|
|
7
|
+
control: string[];
|
|
8
|
+
};
|
|
9
|
+
false: {
|
|
10
|
+
control: string[];
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
}, {
|
|
14
|
+
base: string[];
|
|
15
|
+
controlContainer: string[];
|
|
16
|
+
control: string[];
|
|
17
|
+
icon: string[];
|
|
18
|
+
message: string[];
|
|
19
|
+
}, undefined, {
|
|
20
|
+
hasIcon: {
|
|
21
|
+
true: {
|
|
22
|
+
control: string[];
|
|
23
|
+
};
|
|
24
|
+
false: {
|
|
25
|
+
control: string[];
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
}, {
|
|
29
|
+
base: string[];
|
|
30
|
+
controlContainer: string[];
|
|
31
|
+
control: string[];
|
|
32
|
+
icon: string[];
|
|
33
|
+
message: string[];
|
|
34
|
+
}, import("tailwind-variants").TVReturnType<{
|
|
35
|
+
hasIcon: {
|
|
36
|
+
true: {
|
|
37
|
+
control: string[];
|
|
38
|
+
};
|
|
39
|
+
false: {
|
|
40
|
+
control: string[];
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
}, {
|
|
44
|
+
base: string[];
|
|
45
|
+
controlContainer: string[];
|
|
46
|
+
control: string[];
|
|
47
|
+
icon: string[];
|
|
48
|
+
message: string[];
|
|
49
|
+
}, undefined, unknown, unknown, undefined>>;
|
|
50
|
+
type InputVariants = VariantProps<typeof inputStyles>;
|
|
51
|
+
interface InputProps extends InputVariants {
|
|
52
|
+
label: string;
|
|
53
|
+
name: string;
|
|
54
|
+
placeholder: string;
|
|
55
|
+
type?: string;
|
|
56
|
+
isRequired?: boolean;
|
|
57
|
+
children?: React.ReactElement<IconBaseProps>;
|
|
58
|
+
onChange: (value: string) => void;
|
|
59
|
+
}
|
|
60
|
+
export declare const Input: ({ type, isRequired, ...props }: InputProps) => import("react/jsx-runtime").JSX.Element;
|
|
61
|
+
export {};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as RadixForm from "@radix-ui/react-form";
|
|
3
|
+
import React, { useState } from "react";
|
|
4
|
+
import { tv } from "tailwind-variants";
|
|
5
|
+
import { Label } from "../typography/Label";
|
|
6
|
+
import { labelStyles, placeholderStyles } from "../typography/styles";
|
|
7
|
+
import { ValidationMessage } from "../typography/ValidationMessage";
|
|
8
|
+
const inputStyles = tv({
|
|
9
|
+
slots: {
|
|
10
|
+
base: ["flex", "flex-col", "gap-1"],
|
|
11
|
+
controlContainer: ["relative", "inline-block"],
|
|
12
|
+
control: [
|
|
13
|
+
"w-full",
|
|
14
|
+
"ring",
|
|
15
|
+
"focus:ring-2",
|
|
16
|
+
"ring-slate-200",
|
|
17
|
+
"hover:ring-violet-600",
|
|
18
|
+
"focus-visible:ring-violet-600",
|
|
19
|
+
"focus-within:ring-violet-600",
|
|
20
|
+
"focus-visible:outline-none",
|
|
21
|
+
"bg-slate-50",
|
|
22
|
+
"rounded-lg",
|
|
23
|
+
"p-4",
|
|
24
|
+
"text-slate-700",
|
|
25
|
+
"transition",
|
|
26
|
+
"duration-300",
|
|
27
|
+
"ease-in-out",
|
|
28
|
+
],
|
|
29
|
+
icon: ["absolute", "w-4", "h-4", "right-4", "top-4.5"],
|
|
30
|
+
message: ["text-error"],
|
|
31
|
+
},
|
|
32
|
+
variants: {
|
|
33
|
+
hasIcon: {
|
|
34
|
+
true: { control: ["pr-10"] },
|
|
35
|
+
false: { control: ["pr-4"] },
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
});
|
|
39
|
+
export const Input = ({ type = "text", isRequired = false, ...props }) => {
|
|
40
|
+
const { base, controlContainer, control, message, icon } = inputStyles({
|
|
41
|
+
hasIcon: !!props.children,
|
|
42
|
+
...props,
|
|
43
|
+
});
|
|
44
|
+
const [value, setValue] = useState("");
|
|
45
|
+
return (_jsxs(RadixForm.Field, { name: props.name, className: base(props), children: [_jsx(RadixForm.Label, { children: _jsx(Label, { size: "md", children: props.label }) }), _jsxs("div", { className: controlContainer(props), children: [_jsx(RadixForm.Control, { asChild: true, children: _jsx("input", { className: `${control(props)} ${labelStyles({ size: "md" })} ${placeholderStyles()}`, type: type, required: isRequired, placeholder: props.placeholder, onChange: (e) => setValue(e.target.value), onBlur: () => props.onChange(value) }) }), props.children &&
|
|
46
|
+
React.cloneElement(props.children, { className: icon(props) })] }), _jsxs("div", { className: message(props), children: [isRequired && (_jsx(RadixForm.Message, { match: "valueMissing", children: _jsx(ValidationMessage, { children: `${props.name} is required` }) })), _jsx(RadixForm.Message, { match: "typeMismatch", children: _jsx(ValidationMessage, { children: `${props.name} is invalid` }) })] })] }));
|
|
47
|
+
};
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { type VariantProps } from "tailwind-variants";
|
|
2
|
+
declare const toggleStyles: import("tailwind-variants").TVReturnType<{
|
|
3
|
+
pressed: {
|
|
4
|
+
false: {
|
|
5
|
+
base: string[];
|
|
6
|
+
icon: string[];
|
|
7
|
+
label: string[];
|
|
8
|
+
};
|
|
9
|
+
true: {
|
|
10
|
+
base: never[];
|
|
11
|
+
icon: string[];
|
|
12
|
+
label: string[];
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
hasLikes: {
|
|
16
|
+
true: {
|
|
17
|
+
base: string[];
|
|
18
|
+
icon: string[];
|
|
19
|
+
label: string[];
|
|
20
|
+
};
|
|
21
|
+
false: string;
|
|
22
|
+
};
|
|
23
|
+
animating: {
|
|
24
|
+
true: {};
|
|
25
|
+
false: {};
|
|
26
|
+
};
|
|
27
|
+
}, {
|
|
28
|
+
base: string[];
|
|
29
|
+
icon: string[];
|
|
30
|
+
label: never[];
|
|
31
|
+
}, undefined, {
|
|
32
|
+
pressed: {
|
|
33
|
+
false: {
|
|
34
|
+
base: string[];
|
|
35
|
+
icon: string[];
|
|
36
|
+
label: string[];
|
|
37
|
+
};
|
|
38
|
+
true: {
|
|
39
|
+
base: never[];
|
|
40
|
+
icon: string[];
|
|
41
|
+
label: string[];
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
hasLikes: {
|
|
45
|
+
true: {
|
|
46
|
+
base: string[];
|
|
47
|
+
icon: string[];
|
|
48
|
+
label: string[];
|
|
49
|
+
};
|
|
50
|
+
false: string;
|
|
51
|
+
};
|
|
52
|
+
animating: {
|
|
53
|
+
true: {};
|
|
54
|
+
false: {};
|
|
55
|
+
};
|
|
56
|
+
}, {
|
|
57
|
+
base: string[];
|
|
58
|
+
icon: string[];
|
|
59
|
+
label: never[];
|
|
60
|
+
}, import("tailwind-variants").TVReturnType<{
|
|
61
|
+
pressed: {
|
|
62
|
+
false: {
|
|
63
|
+
base: string[];
|
|
64
|
+
icon: string[];
|
|
65
|
+
label: string[];
|
|
66
|
+
};
|
|
67
|
+
true: {
|
|
68
|
+
base: never[];
|
|
69
|
+
icon: string[];
|
|
70
|
+
label: string[];
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
hasLikes: {
|
|
74
|
+
true: {
|
|
75
|
+
base: string[];
|
|
76
|
+
icon: string[];
|
|
77
|
+
label: string[];
|
|
78
|
+
};
|
|
79
|
+
false: string;
|
|
80
|
+
};
|
|
81
|
+
animating: {
|
|
82
|
+
true: {};
|
|
83
|
+
false: {};
|
|
84
|
+
};
|
|
85
|
+
}, {
|
|
86
|
+
base: string[];
|
|
87
|
+
icon: string[];
|
|
88
|
+
label: never[];
|
|
89
|
+
}, undefined, unknown, unknown, undefined>>;
|
|
90
|
+
type LikeToggleVariants = VariantProps<typeof toggleStyles>;
|
|
91
|
+
interface LikeToggleProps extends LikeToggleVariants {
|
|
92
|
+
pressed?: boolean;
|
|
93
|
+
likes?: number;
|
|
94
|
+
onLikeChange: (liked: boolean) => void;
|
|
95
|
+
}
|
|
96
|
+
export declare const LikeToggle: ({ pressed, likes, onLikeChange, }: LikeToggleProps) => import("react/jsx-runtime").JSX.Element;
|
|
97
|
+
export {};
|