@krrli/cm-designsystem 1.1.0 → 1.19.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. package/README.md +391 -2
  2. package/dist/components/avatar/Avatar.d.ts +71 -0
  3. package/dist/components/avatar/Avatar.js +63 -0
  4. package/dist/components/branding/BrandingGallery.d.ts +1 -0
  5. package/dist/components/branding/BrandingGallery.js +139 -0
  6. package/dist/components/button/Button.d.ts +54 -0
  7. package/dist/components/button/Button.js +56 -0
  8. package/dist/components/button/Button.test.d.ts +1 -0
  9. package/dist/components/button/Button.test.js +30 -0
  10. package/dist/components/color/ColorDoc.d.ts +4 -0
  11. package/dist/components/color/ColorDoc.js +10 -0
  12. package/dist/components/file-upload/FileUpload.d.ts +83 -0
  13. package/dist/components/file-upload/FileUpload.js +70 -0
  14. package/dist/components/form/Form.d.ts +54 -0
  15. package/dist/components/form/Form.js +38 -0
  16. package/dist/components/icon-button/IconButton.d.ts +50 -0
  17. package/dist/components/icon-button/IconButton.js +22 -0
  18. package/dist/components/icon-button/IconButton.test.d.ts +1 -0
  19. package/dist/components/icon-button/IconButton.test.js +22 -0
  20. package/dist/components/icons/IconBase.d.ts +5 -0
  21. package/dist/components/icons/IconBase.js +9 -0
  22. package/dist/components/icons/generated/ArrowDown.d.ts +3 -0
  23. package/dist/components/icons/generated/ArrowDown.js +4 -0
  24. package/dist/components/icons/generated/ArrowLeft.d.ts +3 -0
  25. package/dist/components/icons/generated/ArrowLeft.js +4 -0
  26. package/dist/components/icons/generated/ArrowRight.d.ts +3 -0
  27. package/dist/components/icons/generated/ArrowRight.js +4 -0
  28. package/dist/components/icons/generated/ArrowUp.d.ts +3 -0
  29. package/dist/components/icons/generated/ArrowUp.js +4 -0
  30. package/dist/components/icons/generated/Calendar.d.ts +3 -0
  31. package/dist/components/icons/generated/Calendar.js +4 -0
  32. package/dist/components/icons/generated/Cancel.d.ts +3 -0
  33. package/dist/components/icons/generated/Cancel.js +4 -0
  34. package/dist/components/icons/generated/Checkmark.d.ts +3 -0
  35. package/dist/components/icons/generated/Checkmark.js +4 -0
  36. package/dist/components/icons/generated/Edit.d.ts +3 -0
  37. package/dist/components/icons/generated/Edit.js +4 -0
  38. package/dist/components/icons/generated/Eye.d.ts +3 -0
  39. package/dist/components/icons/generated/Eye.js +4 -0
  40. package/dist/components/icons/generated/Fullscreen.d.ts +3 -0
  41. package/dist/components/icons/generated/Fullscreen.js +4 -0
  42. package/dist/components/icons/generated/HeartFilled.d.ts +3 -0
  43. package/dist/components/icons/generated/HeartFilled.js +4 -0
  44. package/dist/components/icons/generated/HeartOutline.d.ts +3 -0
  45. package/dist/components/icons/generated/HeartOutline.js +4 -0
  46. package/dist/components/icons/generated/Location.d.ts +3 -0
  47. package/dist/components/icons/generated/Location.js +4 -0
  48. package/dist/components/icons/generated/LogOut.d.ts +3 -0
  49. package/dist/components/icons/generated/LogOut.js +4 -0
  50. package/dist/components/icons/generated/Mumble.d.ts +3 -0
  51. package/dist/components/icons/generated/Mumble.js +4 -0
  52. package/dist/components/icons/generated/Profile.d.ts +3 -0
  53. package/dist/components/icons/generated/Profile.js +4 -0
  54. package/dist/components/icons/generated/ReplyFilled.d.ts +3 -0
  55. package/dist/components/icons/generated/ReplyFilled.js +4 -0
  56. package/dist/components/icons/generated/ReplyOutline.d.ts +3 -0
  57. package/dist/components/icons/generated/ReplyOutline.js +4 -0
  58. package/dist/components/icons/generated/Repost.d.ts +3 -0
  59. package/dist/components/icons/generated/Repost.js +4 -0
  60. package/dist/components/icons/generated/Send.d.ts +3 -0
  61. package/dist/components/icons/generated/Send.js +4 -0
  62. package/dist/components/icons/generated/Settings.d.ts +3 -0
  63. package/dist/components/icons/generated/Settings.js +4 -0
  64. package/dist/components/icons/generated/Share.d.ts +3 -0
  65. package/dist/components/icons/generated/Share.js +4 -0
  66. package/dist/components/icons/generated/Time.d.ts +3 -0
  67. package/dist/components/icons/generated/Time.js +4 -0
  68. package/dist/components/icons/generated/Upload.d.ts +3 -0
  69. package/dist/components/icons/generated/Upload.js +4 -0
  70. package/dist/components/icons/generated/index.d.ts +24 -0
  71. package/dist/components/icons/generated/index.js +24 -0
  72. package/dist/components/index.d.ts +25 -0
  73. package/dist/components/index.js +25 -0
  74. package/dist/components/input/Input.d.ts +61 -0
  75. package/dist/components/input/Input.js +47 -0
  76. package/dist/components/like-toggle/LikeToggle.d.ts +97 -0
  77. package/dist/components/like-toggle/LikeToggle.js +185 -0
  78. package/dist/components/like-toggle/LikeToggle.test.d.ts +1 -0
  79. package/dist/components/like-toggle/LikeToggle.test.js +35 -0
  80. package/dist/components/modal/Modal.d.ts +75 -0
  81. package/dist/components/modal/Modal.js +63 -0
  82. package/dist/components/modal/Modal.test.d.ts +1 -0
  83. package/dist/components/modal/Modal.test.js +24 -0
  84. package/dist/components/navi-button/NaviButton.d.ts +26 -0
  85. package/dist/components/navi-button/NaviButton.js +29 -0
  86. package/dist/components/navi-button/NaviButton.test.d.ts +1 -0
  87. package/dist/components/navi-button/NaviButton.test.js +22 -0
  88. package/dist/components/navi-user-button/NaviUserButton.d.ts +26 -0
  89. package/dist/components/navi-user-button/NaviUserButton.js +29 -0
  90. package/dist/components/round-button/RoundButton.d.ts +25 -0
  91. package/dist/components/round-button/RoundButton.js +28 -0
  92. package/dist/components/round-button/RoundButton.test.d.ts +1 -0
  93. package/dist/components/round-button/RoundButton.test.js +21 -0
  94. package/dist/components/tabs/TabItem.d.ts +11 -0
  95. package/dist/components/tabs/TabItem.js +13 -0
  96. package/dist/components/tabs/Tabs.d.ts +67 -0
  97. package/dist/components/tabs/Tabs.js +67 -0
  98. package/dist/components/tabs/Tabs.test.d.ts +1 -0
  99. package/dist/components/tabs/Tabs.test.js +61 -0
  100. package/dist/components/text-link/TextLink.d.ts +9 -0
  101. package/dist/components/text-link/TextLink.js +15 -0
  102. package/dist/components/text-link/TextLink.test.d.ts +1 -0
  103. package/dist/components/text-link/TextLink.test.js +14 -0
  104. package/dist/components/textarea/Textarea.d.ts +48 -0
  105. package/dist/components/textarea/Textarea.js +46 -0
  106. package/dist/components/timed-button/TimedButton.d.ts +56 -0
  107. package/dist/components/timed-button/TimedButton.js +106 -0
  108. package/dist/components/timed-button/TimedButton.test.d.ts +1 -0
  109. package/dist/components/timed-button/TimedButton.test.js +35 -0
  110. package/dist/components/toggle/Toggle.d.ts +62 -0
  111. package/dist/components/toggle/Toggle.js +67 -0
  112. package/dist/components/toggle/Toggle.test.d.ts +1 -0
  113. package/dist/components/toggle/Toggle.test.js +93 -0
  114. package/dist/components/typography/Heading.d.ts +17 -0
  115. package/dist/components/typography/Heading.js +11 -0
  116. package/dist/components/typography/Label.d.ts +15 -0
  117. package/dist/components/typography/Label.js +7 -0
  118. package/dist/components/typography/Paragraph.d.ts +15 -0
  119. package/dist/components/typography/Paragraph.js +7 -0
  120. package/dist/components/typography/Placeholder.d.ts +13 -0
  121. package/dist/components/typography/Placeholder.js +7 -0
  122. package/dist/components/typography/ValidationMessage.d.ts +15 -0
  123. package/dist/components/typography/ValidationMessage.js +9 -0
  124. package/dist/components/typography/styles.d.ts +74 -0
  125. package/dist/components/typography/styles.js +52 -0
  126. package/dist/favicon.svg +18 -0
  127. package/dist/index.d.ts +1 -0
  128. package/dist/index.es.js +7550 -0
  129. package/dist/index.js +2 -0
  130. package/dist/logo-inline-gradient.svg +43 -0
  131. package/dist/setupTests.d.ts +1 -0
  132. package/dist/setupTests.js +7 -0
  133. package/package.json +78 -33
  134. package/.github/CODEOWNERS +0 -7
  135. package/.github/semantic.yml +0 -24
  136. package/.github/workflows/publish-npm.yml +0 -29
  137. package/.github/workflows/storybook.yml +0 -44
  138. package/.releaserc.json +0 -9
  139. package/.storybook/main.ts +0 -19
  140. package/.storybook/preview.ts +0 -21
  141. package/.storybook/vitest.setup.ts +0 -7
  142. package/src/index.ts +0 -4
  143. package/stories/Button.stories.ts +0 -54
  144. package/stories/Button.tsx +0 -37
  145. package/stories/Button2.stories.ts +0 -54
  146. package/stories/Button2.tsx +0 -41
  147. package/stories/Configure.mdx +0 -364
  148. package/stories/Header.stories.ts +0 -34
  149. package/stories/Header.tsx +0 -56
  150. package/stories/Page.stories.ts +0 -33
  151. package/stories/Page.tsx +0 -73
  152. package/stories/assets/accessibility.png +0 -0
  153. package/stories/assets/accessibility.svg +0 -1
  154. package/stories/assets/addon-library.png +0 -0
  155. package/stories/assets/assets.png +0 -0
  156. package/stories/assets/avif-test-image.avif +0 -0
  157. package/stories/assets/context.png +0 -0
  158. package/stories/assets/discord.svg +0 -1
  159. package/stories/assets/docs.png +0 -0
  160. package/stories/assets/figma-plugin.png +0 -0
  161. package/stories/assets/github.svg +0 -1
  162. package/stories/assets/share.png +0 -0
  163. package/stories/assets/styling.png +0 -0
  164. package/stories/assets/testing.png +0 -0
  165. package/stories/assets/theming.png +0 -0
  166. package/stories/assets/tutorials.svg +0 -1
  167. package/stories/assets/youtube.svg +0 -1
  168. package/stories/button.css +0 -30
  169. package/stories/button2.css +0 -30
  170. package/stories/header.css +0 -32
  171. package/stories/page.css +0 -68
  172. package/tsconfig.json +0 -13
  173. package/vitest.config.ts +0 -35
  174. 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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const HeartFilled: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const HeartOutline: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const Location: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const LogOut: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const Mumble: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const Profile: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const ReplyFilled: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const ReplyOutline: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const Repost: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const Send: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const Settings: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const Share: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const Time: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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,3 @@
1
+ import * as React from "react";
2
+ import { IconBase } from "../IconBase";
3
+ export declare const Upload: (props: React.ComponentProps<typeof IconBase>) => import("react/jsx-runtime").JSX.Element;
@@ -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 {};