@xyd-js/components 0.1.0-xyd.7 → 0.1.0-xyd.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.
Files changed (223) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/LICENSE +21 -0
  3. package/dist/CTABanner-4FVIoaTR.js +2 -0
  4. package/dist/CTABanner-4FVIoaTR.js.map +1 -0
  5. package/dist/CTABanner-C6afsXoE.js +2 -0
  6. package/dist/CTABanner-C6afsXoE.js.map +1 -0
  7. package/dist/CTABanner-CEKs-Hb-.js +2 -0
  8. package/dist/CTABanner-CEKs-Hb-.js.map +1 -0
  9. package/dist/CTABanner-CUNcTr6s.js +2 -0
  10. package/dist/CTABanner-CUNcTr6s.js.map +1 -0
  11. package/dist/CTABanner-D02aIAsD.js +2 -0
  12. package/dist/CTABanner-D02aIAsD.js.map +1 -0
  13. package/dist/CTABanner-Dm3tUG3I.js +2 -0
  14. package/dist/CTABanner-Dm3tUG3I.js.map +1 -0
  15. package/dist/CTABanner-MCOcVowa.js +2 -0
  16. package/dist/CTABanner-MCOcVowa.js.map +1 -0
  17. package/dist/CTABanner-X6K49gSr.js +2 -0
  18. package/dist/CTABanner-X6K49gSr.js.map +1 -0
  19. package/dist/CodeSample-B9VUhTKF.js +2 -0
  20. package/dist/CodeSample-B9VUhTKF.js.map +1 -0
  21. package/dist/CodeSample-BSXeFy0x.js +2 -0
  22. package/dist/CodeSample-BSXeFy0x.js.map +1 -0
  23. package/dist/CodeSample-BwP208sQ.js +2 -0
  24. package/dist/CodeSample-BwP208sQ.js.map +1 -0
  25. package/dist/CodeSample-CUemtj_W.js +2 -0
  26. package/dist/CodeSample-CUemtj_W.js.map +1 -0
  27. package/dist/CodeSample-D0iKih-A.js +2 -0
  28. package/dist/CodeSample-D0iKih-A.js.map +1 -0
  29. package/dist/CodeSample-D33vTa6M.js +2 -0
  30. package/dist/CodeSample-D33vTa6M.js.map +1 -0
  31. package/dist/CodeSample-DUSx2KBt.js +2 -0
  32. package/dist/CodeSample-DUSx2KBt.js.map +1 -0
  33. package/dist/CodeSample-P4yxkHPW.js +2 -0
  34. package/dist/CodeSample-P4yxkHPW.js.map +1 -0
  35. package/dist/HomeView-ACBdUgyz.js +2 -0
  36. package/dist/HomeView-ACBdUgyz.js.map +1 -0
  37. package/dist/HomeView-B0ATNUF1.js +2 -0
  38. package/dist/HomeView-B0ATNUF1.js.map +1 -0
  39. package/dist/HomeView-COJrg8Ju.js +2 -0
  40. package/dist/HomeView-COJrg8Ju.js.map +1 -0
  41. package/dist/HomeView-Cun4apuy.js +2 -0
  42. package/dist/HomeView-Cun4apuy.js.map +1 -0
  43. package/dist/HomeView-D4DXEOOn.js +2 -0
  44. package/dist/HomeView-D4DXEOOn.js.map +1 -0
  45. package/dist/HomeView-DaH1PSBB.js +2 -0
  46. package/dist/HomeView-DaH1PSBB.js.map +1 -0
  47. package/dist/HomeView-O_lj2c2t.js +2 -0
  48. package/dist/HomeView-O_lj2c2t.js.map +1 -0
  49. package/dist/HomeView-_Nu2RcOM.js +2 -0
  50. package/dist/HomeView-_Nu2RcOM.js.map +1 -0
  51. package/dist/UnderlineNav-BCyB0G5d.js +2 -0
  52. package/dist/UnderlineNav-BCyB0G5d.js.map +1 -0
  53. package/dist/UnderlineNav-BEhDJk0H.js +2 -0
  54. package/dist/UnderlineNav-BEhDJk0H.js.map +1 -0
  55. package/dist/UnderlineNav-BqZ2xAp7.js +2 -0
  56. package/dist/UnderlineNav-BqZ2xAp7.js.map +1 -0
  57. package/dist/UnderlineNav-C2-4Vyj8.js +2 -0
  58. package/dist/UnderlineNav-C2-4Vyj8.js.map +1 -0
  59. package/dist/UnderlineNav-Co08Gykm.js +2 -0
  60. package/dist/UnderlineNav-Co08Gykm.js.map +1 -0
  61. package/dist/UnderlineNav-DC3UVmnZ.js +2 -0
  62. package/dist/UnderlineNav-DC3UVmnZ.js.map +1 -0
  63. package/dist/UnderlineNav-DsRYwuGB.js +2 -0
  64. package/dist/UnderlineNav-DsRYwuGB.js.map +1 -0
  65. package/dist/UnderlineNav-FbclXKUW.js +2 -0
  66. package/dist/UnderlineNav-FbclXKUW.js.map +1 -0
  67. package/dist/{_rollupPluginBabelHelpers-BMmCG_qQ.js → _rollupPluginBabelHelpers-BEouSrrZ.js} +2 -2
  68. package/dist/_rollupPluginBabelHelpers-BEouSrrZ.js.map +1 -0
  69. package/dist/{_rollupPluginBabelHelpers-DsEzE6Ab.js → _rollupPluginBabelHelpers-BHehKRBq.js} +2 -2
  70. package/dist/_rollupPluginBabelHelpers-BHehKRBq.js.map +1 -0
  71. package/dist/_rollupPluginBabelHelpers-Bunpz22T.js +2 -0
  72. package/dist/_rollupPluginBabelHelpers-Bunpz22T.js.map +1 -0
  73. package/dist/_rollupPluginBabelHelpers-CVblpRvU.js +2 -0
  74. package/dist/_rollupPluginBabelHelpers-CVblpRvU.js.map +1 -0
  75. package/dist/_rollupPluginBabelHelpers-CxmswfqM.js +2 -0
  76. package/dist/_rollupPluginBabelHelpers-CxmswfqM.js.map +1 -0
  77. package/dist/_rollupPluginBabelHelpers-DQJTK9EO.js +2 -0
  78. package/dist/_rollupPluginBabelHelpers-DQJTK9EO.js.map +1 -0
  79. package/dist/_rollupPluginBabelHelpers-DuRQdJ01.js +2 -0
  80. package/dist/_rollupPluginBabelHelpers-DuRQdJ01.js.map +1 -0
  81. package/dist/_rollupPluginBabelHelpers-tRAa4O0f.js +2 -0
  82. package/dist/_rollupPluginBabelHelpers-tRAa4O0f.js.map +1 -0
  83. package/dist/brand.d.ts +9 -9
  84. package/dist/brand.js +1 -1
  85. package/dist/brand.js.map +1 -1
  86. package/dist/coder.js +1 -1
  87. package/dist/content.d.ts +4 -3
  88. package/dist/content.js +1 -1
  89. package/dist/content.js.map +1 -1
  90. package/dist/index-B0FncPxO.js +2 -0
  91. package/dist/index-B0FncPxO.js.map +1 -0
  92. package/dist/index-BEm-xkm-.js +2 -0
  93. package/dist/index-BEm-xkm-.js.map +1 -0
  94. package/dist/index-BHwtxG27.js +2 -0
  95. package/dist/index-BHwtxG27.js.map +1 -0
  96. package/dist/index-BTcmIG47.js +2 -0
  97. package/dist/index-BTcmIG47.js.map +1 -0
  98. package/dist/index-CNkHt1r7.js +2 -0
  99. package/dist/index-CNkHt1r7.js.map +1 -0
  100. package/dist/index-D0XuyFm7.js +2 -0
  101. package/dist/index-D0XuyFm7.js.map +1 -0
  102. package/dist/index-DBspcqWq.js +2 -0
  103. package/dist/index-DBspcqWq.js.map +1 -0
  104. package/dist/index-DVBO4gYE.js +2 -0
  105. package/dist/index-DVBO4gYE.js.map +1 -0
  106. package/dist/index.css +217 -216
  107. package/dist/layouts.d.ts +1 -1
  108. package/dist/layouts.js +1 -1
  109. package/dist/layouts.js.map +1 -1
  110. package/dist/pages.js +1 -1
  111. package/dist/pages.js.map +1 -1
  112. package/dist/{tslib.es6-DDIOdJiV.js → tslib.es6-BBkx4Se1.js} +1 -1
  113. package/dist/{tslib.es6-DDIOdJiV.js.map → tslib.es6-BBkx4Se1.js.map} +1 -1
  114. package/dist/{tslib.es6-DUrRPhZd.js → tslib.es6-BF6ZLEXa.js} +1 -1
  115. package/dist/{tslib.es6-DUrRPhZd.js.map → tslib.es6-BF6ZLEXa.js.map} +1 -1
  116. package/dist/tslib.es6-BOZCDgb8.js +2 -0
  117. package/dist/tslib.es6-BOZCDgb8.js.map +1 -0
  118. package/dist/tslib.es6-Cjl5tesf.js +2 -0
  119. package/dist/tslib.es6-Cjl5tesf.js.map +1 -0
  120. package/dist/tslib.es6-DEH7Dkgy.js +2 -0
  121. package/dist/tslib.es6-DEH7Dkgy.js.map +1 -0
  122. package/dist/tslib.es6-DTeJ7dWi.js +2 -0
  123. package/dist/tslib.es6-DTeJ7dWi.js.map +1 -0
  124. package/dist/tslib.es6-U9-f6pA7.js +2 -0
  125. package/dist/tslib.es6-U9-f6pA7.js.map +1 -0
  126. package/dist/tslib.es6-cb69JjeS.js +2 -0
  127. package/dist/tslib.es6-cb69JjeS.js.map +1 -0
  128. package/dist/views.js +1 -1
  129. package/dist/writer.d.ts +4 -3
  130. package/dist/writer.js +1 -1
  131. package/dist/writer.js.map +1 -1
  132. package/package.json +12 -11
  133. package/rollup.config.js +20 -1
  134. package/src/brand/Button/Button.styles.tsx +31 -0
  135. package/src/brand/Button/Button.tsx +3 -35
  136. package/src/brand/CTABanner/CTABanner.styles.tsx +82 -0
  137. package/src/brand/CTABanner/CTABanner.tsx +34 -112
  138. package/src/brand/Footer/Footer.styles.tsx +21 -0
  139. package/src/brand/Footer/Footer.tsx +4 -24
  140. package/src/brand/TODO.md +1 -0
  141. package/src/coder/Code/Code.styles.tsx +45 -48
  142. package/src/coder/Code/Code.tsx +8 -8
  143. package/src/coder/Code/CodeLoader.tsx +2 -2
  144. package/src/coder/Code/annotations.tsx +1 -1
  145. package/src/coder/CodeCopy/CodeCopy.styles.tsx +19 -0
  146. package/src/coder/CodeCopy/CodeCopy.tsx +2 -4
  147. package/src/coder/CodeTabs/CodeTabs.styles.tsx +101 -97
  148. package/src/coder/CodeTabs/CodeTabs.tsx +11 -14
  149. package/src/content/Anchor/Anchor.styles.tsx +5 -0
  150. package/src/content/Anchor/Anchor.tsx +4 -14
  151. package/src/content/Content/Content.styles.tsx +9 -0
  152. package/src/content/Content/Content.tsx +4 -12
  153. package/src/content/Content.tsx +1 -2
  154. package/src/content/Subtitle/Subtitle.styles.ts +8 -0
  155. package/src/content/Subtitle/Subtitle.tsx +1 -10
  156. package/src/layouts/Layout.styles.tsx +135 -131
  157. package/src/layouts/Layout.tsx +21 -23
  158. package/src/layouts/LayoutPrimary/LayoutPrimary.styles.tsx +298 -277
  159. package/src/layouts/LayoutPrimary/LayoutPrimary.tsx +39 -42
  160. package/src/pages/HomePage/HomePage.styles.tsx +16 -0
  161. package/src/pages/HomePage/HomePage.tsx +7 -21
  162. package/src/pages/TODO.md +1 -0
  163. package/src/ui/Loader/Loader.styles.tsx +48 -46
  164. package/src/ui/Loader/Loader.tsx +8 -8
  165. package/src/ui/TODO.md +2 -0
  166. package/src/utils/useStyle.ts +19 -0
  167. package/src/views/HomeView/HomeView.styles.tsx +37 -0
  168. package/src/views/HomeView/HomeView.tsx +5 -45
  169. package/src/views/TODO.md +1 -0
  170. package/src/writer/Badge/Badge.styles.tsx +31 -30
  171. package/src/writer/Badge/Badge.tsx +40 -9
  172. package/src/writer/Blockquote/Blockquote.styles.tsx +6 -8
  173. package/src/writer/Blockquote/Blockquote.tsx +2 -2
  174. package/src/writer/Breadcrumbs/Breadcrumbs.styles.ts +27 -26
  175. package/src/writer/Breadcrumbs/Breadcrumbs.tsx +5 -5
  176. package/src/writer/Callout/Callout.styles.tsx +44 -48
  177. package/src/writer/Callout/Callout.tsx +5 -5
  178. package/src/writer/Code/Code.styles.tsx +11 -13
  179. package/src/writer/Code/Code.tsx +2 -2
  180. package/src/writer/Details/Details.styles.tsx +101 -90
  181. package/src/writer/Details/Details.tsx +32 -33
  182. package/src/writer/GuideCard/GuideCard.styles.tsx +116 -112
  183. package/src/writer/GuideCard/GuideCard.tsx +19 -19
  184. package/src/writer/Heading/Heading.styles.tsx +65 -61
  185. package/src/writer/Heading/Heading.tsx +11 -11
  186. package/src/writer/Hr/Hr.styles.tsx +3 -5
  187. package/src/writer/Hr/Hr.tsx +2 -2
  188. package/src/writer/NavLinks/NavLinks.styles.ts +30 -31
  189. package/src/writer/NavLinks/NavLinks.tsx +6 -6
  190. package/src/writer/Pre/Pre.styles.tsx +8 -10
  191. package/src/writer/Pre/Pre.tsx +2 -2
  192. package/src/writer/Steps/Steps.styles.tsx +30 -31
  193. package/src/writer/Steps/Steps.tsx +3 -4
  194. package/src/writer/Table/Table.styles.tsx +32 -31
  195. package/src/writer/Table/Table.tsx +5 -5
  196. package/src/writer/Tabs/Tabs.styles.tsx +60 -63
  197. package/src/writer/Tabs/Tabs.tsx +11 -16
  198. package/src/writer/UnderlineNav/UnderlineNav.styles.tsx +44 -42
  199. package/src/writer/UnderlineNav/UnderlineNav.tsx +5 -5
  200. package/tsconfig.json +2 -3
  201. package/dist/CTABanner-BrdYlhnD.js +0 -2
  202. package/dist/CTABanner-BrdYlhnD.js.map +0 -1
  203. package/dist/CTABanner-XQNnnpUx.js +0 -2
  204. package/dist/CTABanner-XQNnnpUx.js.map +0 -1
  205. package/dist/CodeSample-Cp42Adjc.js +0 -2
  206. package/dist/CodeSample-Cp42Adjc.js.map +0 -1
  207. package/dist/CodeSample-DxPp80ID.js +0 -2
  208. package/dist/CodeSample-DxPp80ID.js.map +0 -1
  209. package/dist/HomeView-BN9mZXh9.js +0 -2
  210. package/dist/HomeView-BN9mZXh9.js.map +0 -1
  211. package/dist/HomeView-BVaaV0uE.js +0 -2
  212. package/dist/HomeView-BVaaV0uE.js.map +0 -1
  213. package/dist/UnderlineNav-Bs7Ot9Ch.js +0 -2
  214. package/dist/UnderlineNav-Bs7Ot9Ch.js.map +0 -1
  215. package/dist/UnderlineNav-C2aEVraN.js +0 -2
  216. package/dist/UnderlineNav-C2aEVraN.js.map +0 -1
  217. package/dist/_rollupPluginBabelHelpers-BMmCG_qQ.js.map +0 -1
  218. package/dist/_rollupPluginBabelHelpers-DsEzE6Ab.js.map +0 -1
  219. package/dist/index-BVUz77Tm.js +0 -2
  220. package/dist/index-BVUz77Tm.js.map +0 -1
  221. package/dist/index-jxd3nv2J.js +0 -2
  222. package/dist/index-jxd3nv2J.js.map +0 -1
  223. package/src/coder/CodeCopy/CodeCopy.style.tsx +0 -21
@@ -1,36 +1,35 @@
1
1
  import {css} from "@linaria/core";
2
2
 
3
- export const $steps = {
4
- host: css`
5
- padding-left: 0;
6
- list-style: none;
7
- counter-reset: ordered-listitem;
3
+ export const StepsHost = css`
4
+ padding-left: 0;
5
+ list-style: none;
6
+ counter-reset: ordered-listitem;
8
7
 
9
- display: flex;
10
- flex-direction: column;
11
- gap: 6px;
12
- `,
13
- li: css`
14
- padding-left: 32px;
15
- position: relative;
16
- line-height: 1.5;
8
+ display: flex;
9
+ flex-direction: column;
10
+ gap: 6px;
11
+ `;
17
12
 
18
- &::after {
19
- position: absolute;
20
- top: 0;
21
- left: 0;
22
- counter-increment: ordered-listitem;
23
- content: counter(ordered-listitem);
13
+ export const StepsLi = css`
14
+ padding-left: 32px;
15
+ position: relative;
16
+ line-height: 1.5;
24
17
 
25
- background: #ececf1;
26
- color: #353740;
27
- font-size: 12px;
28
- line-height: 24px;
29
- font-weight: 500;
30
- text-align: center;
31
- height: 24px;
32
- width: 24px;
33
- border-radius: 12px;
34
- }
35
- `,
36
- }
18
+ &::after {
19
+ position: absolute;
20
+ top: 0;
21
+ left: 0;
22
+ counter-increment: ordered-listitem;
23
+ content: counter(ordered-listitem);
24
+
25
+ background: #ececf1;
26
+ color: #353740;
27
+ font-size: 12px;
28
+ line-height: 24px;
29
+ font-weight: 500;
30
+ text-align: center;
31
+ height: 24px;
32
+ width: 24px;
33
+ border-radius: 12px;
34
+ }
35
+ `;
@@ -1,16 +1,15 @@
1
1
  import React from "react"
2
2
 
3
- import {$steps} from "./Steps.styles";
3
+ import * as cn from "./Steps.styles";
4
4
 
5
5
  export interface StepsProps {
6
6
  children: React.ReactNode;
7
7
  }
8
8
 
9
9
  export function Steps({children}: StepsProps) {
10
- return <ol className={$steps.host}>
10
+ return <ol className={cn.StepsHost}>
11
11
  {children}
12
12
  </ol>
13
-
14
13
  }
15
14
 
16
15
  export interface StepsItemProps {
@@ -18,7 +17,7 @@ export interface StepsItemProps {
18
17
  }
19
18
 
20
19
  Steps.Item = function StepsItem({children}: StepsItemProps) {
21
- return <li className={$steps.li}>
20
+ return <li className={cn.StepsLi}>
22
21
  {children}
23
22
  </li>
24
23
  }
@@ -4,36 +4,37 @@ const colors = {
4
4
  primary: "#D1D5DB"
5
5
  }
6
6
 
7
- export const $table = {
8
- host: css`
9
- display: block;
10
- overflow-x: scroll;
11
-
12
- border-collapse: collapse;
13
- border-radius: 3px;
14
- `,
15
- th: css`
16
- padding: 0.5rem 1rem;
17
- margin: 0;
18
-
19
- font-weight: 600;
20
- border-width: 1px;
21
- border-color: ${colors.primary};
22
- background: rgba(234, 238, 242, 0.5);
23
- `,
24
- tr: css`
25
- padding: 0;
26
- margin: 0;
27
- border-top-width: 1px;
28
- border-color: ${colors.primary};
29
- `,
30
- td: css`
31
- padding: 0.5rem 1rem;
32
- margin: 0;
33
-
34
- border-width: 1px;
35
- border-color: ${colors.primary};
36
- `
37
- }
7
+ export const TableHost = css`
8
+ display: block;
9
+ overflow-x: scroll;
10
+
11
+ border-collapse: collapse;
12
+ border-radius: 3px;
13
+ `;
14
+
15
+ export const TableTh = css`
16
+ padding: 0.5rem 1rem;
17
+ margin: 0;
18
+
19
+ font-weight: 600;
20
+ border-width: 1px;
21
+ border-color: ${colors.primary};
22
+ background: rgba(234, 238, 242, 0.5);
23
+ `;
24
+
25
+ export const TableTr = css`
26
+ padding: 0;
27
+ margin: 0;
28
+ border-top-width: 1px;
29
+ border-color: ${colors.primary};
30
+ `;
31
+
32
+ export const TableTd = css`
33
+ padding: 0.5rem 1rem;
34
+ margin: 0;
35
+
36
+ border-width: 1px;
37
+ border-color: ${colors.primary};
38
+ `;
38
39
 
39
40
 
@@ -1,13 +1,13 @@
1
1
  import React from "react"
2
2
 
3
- import {$table} from "./Table.styles";
3
+ import * as cn from "./Table.styles";
4
4
 
5
5
  export interface TableProps {
6
6
  children: React.ReactNode;
7
7
  }
8
8
 
9
9
  export function Table({children}: TableProps) {
10
- return <table className={$table.host}>
10
+ return <table className={cn.TableHost}>
11
11
  {children}
12
12
  </table>
13
13
  }
@@ -17,7 +17,7 @@ export interface TableThProps {
17
17
  }
18
18
 
19
19
  Table.Th = function TableTh({children}: TableThProps) {
20
- return <th className={$table.th}>
20
+ return <th className={cn.TableTh}>
21
21
  {children}
22
22
  </th>
23
23
  }
@@ -27,7 +27,7 @@ export interface TableTrProps {
27
27
  }
28
28
 
29
29
  Table.Tr = function TableTr({children}: TableTrProps) {
30
- return <tr className={$table.tr}>
30
+ return <tr className={cn.TableTr}>
31
31
  {children}
32
32
  </tr>
33
33
 
@@ -38,7 +38,7 @@ export interface TableTdProps {
38
38
  }
39
39
 
40
40
  Table.Td = function TableTd({children}: TableTdProps) {
41
- return <td className={$table.td}>
41
+ return <td className={cn.TableTd}>
42
42
  {children}
43
43
  </td>
44
44
 
@@ -1,77 +1,74 @@
1
1
  import {css} from "@linaria/core";
2
2
 
3
- export const $sample = {
4
- host: css`
5
- position: relative;
6
- max-width: 100%;
7
- `,
8
- buttons: css`
9
- display: flex;
10
- align-items: center;
11
- `,
12
- content: css`
13
- margin-top: 16px;
14
- `
15
- }
3
+ export const TabsSampleHost = css`
4
+ position: relative;
5
+ max-width: 100%;
6
+ `;
16
7
 
17
- export const $arrow = {
18
- host: css`
19
- padding: 8px;
20
- background-color: #ffffff;
21
- box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
22
- `,
23
- icon: css`
24
- width: 16px;
25
- height: 16px;
26
- `
27
- }
8
+ export const TabsSampleButtons = css`
9
+ display: flex;
10
+ align-items: center;
11
+ `;
12
+
13
+ export const TabsSampleContent = css`
14
+ margin-top: 16px;
15
+ `;
16
+
17
+ export const TabsArrowHost = css`
18
+ padding: 8px;
19
+ background-color: #ffffff;
20
+ box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
21
+ `;
28
22
 
29
- export const $scroller = {
30
- host: css`
31
- overflow-x: auto;
32
- flex-grow: 1;
33
- `,
34
- container: css`
35
- display: inline-flex;
36
- gap: 4px;
23
+ export const TabsArrowIcon = css`
24
+ width: 16px;
25
+ height: 16px;
26
+ `;
37
27
 
38
- border-radius: 8px;
39
- background-color: #F3F4F6;
40
-
41
- padding: 4px;
42
- margin-left: 4px;
43
- `
44
- }
28
+ export const TabsScrollerHost = css`
29
+ overflow-x: auto;
30
+ flex-grow: 1;
31
+ `;
45
32
 
46
- export const $button = {
47
- host: css`
48
- padding: 0.5rem 1rem;
33
+ export const TabsScrollerContainer = css`
34
+ display: inline-flex;
35
+ gap: 4px;
49
36
 
50
- border-radius: 0.375rem;
51
- font-size: 0.875rem;
52
- line-height: 1.25rem;
53
- font-weight: 500;
54
- white-space: nowrap;
37
+ border-radius: 8px;
38
+ background-color: #F3F4F6;
39
+
40
+ padding: 4px;
41
+ margin-left: 4px;
42
+ `;
55
43
 
56
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
57
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
58
- transition-duration: 300ms;
44
+ export const TabsButtonHost = css`
45
+ padding: 0.5rem 1rem;
59
46
 
60
- color: #6B7280;
47
+ border-radius: 0.375rem;
48
+ font-size: 0.875rem;
49
+ line-height: 1.25rem;
50
+ font-weight: 500;
51
+ white-space: nowrap;
61
52
 
62
- &:hover {
63
- color: #111827;
64
- }
53
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
54
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
55
+ transition-duration: 300ms;
65
56
 
66
- &[data-state="active"] {
67
- color: #111827;
68
- background-color: #ffffff;
69
- box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
70
- }
71
- `,
72
- $$active: css`
57
+ color: #6B7280;
58
+
59
+ &:hover {
60
+ color: #111827;
61
+ }
62
+
63
+ &[data-state="active"] {
73
64
  color: #111827;
74
65
  background-color: #ffffff;
75
66
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
76
- `
77
- }
67
+ }
68
+ `;
69
+
70
+ export const TabsButtonActive = css`
71
+ color: #111827;
72
+ background-color: #ffffff;
73
+ box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
74
+ `;
@@ -2,12 +2,7 @@ import React, {useState, useRef, useEffect} from 'react'
2
2
  import * as RadixTabs from "@radix-ui/react-tabs"
3
3
  import {ChevronLeft, ChevronRight} from "lucide-react"
4
4
 
5
- import {
6
- $sample,
7
- $arrow,
8
- $scroller,
9
- $button
10
- } from "./Tabs.styles";
5
+ import * as cn from "./Tabs.styles";
11
6
 
12
7
  export interface TabsProps {
13
8
  children: React.ReactNode;
@@ -45,23 +40,23 @@ export function Tabs({children, items, tabIndex}: TabsProps) {
45
40
 
46
41
  return (
47
42
  <RadixTabs.Root asChild value={value} onValueChange={setActiveTab}>
48
- <div className={$sample.host}>
49
- <div className={$sample.buttons}>
43
+ <div className={cn.TabsSampleHost}>
44
+ <div className={cn.TabsSampleButtons}>
50
45
  {showLeftArrow && (
51
46
  <button
52
47
  onClick={() => scroll('left')}
53
- className={$arrow.host}
48
+ className={cn.TabsArrowHost}
54
49
  >
55
- <ChevronLeft className={$arrow.icon}/>
50
+ <ChevronLeft className={cn.TabsArrowIcon}/>
56
51
  </button>
57
52
  )}
58
53
 
59
54
  <div
60
55
  ref={scrollContainerRef}
61
56
  onScroll={handleScroll}
62
- className={$scroller.host}
57
+ className={cn.TabsScrollerHost}
63
58
  >
64
- <div className={$scroller.container}>
59
+ <div className={cn.TabsScrollerContainer}>
65
60
  <RadixTabs.List>
66
61
  {items.map((item, index) => <TabsItem key={index} value={item}>
67
62
  {item}
@@ -74,14 +69,14 @@ export function Tabs({children, items, tabIndex}: TabsProps) {
74
69
  {showRightArrow && (
75
70
  <button
76
71
  onClick={() => scroll('right')}
77
- className={$arrow.host}
72
+ className={cn.TabsArrowHost}
78
73
  >
79
- <ChevronRight className={$arrow.icon}/>
74
+ <ChevronRight className={cn.TabsArrowIcon}/>
80
75
  </button>
81
76
  )}
82
77
  </div>
83
78
 
84
- <div className={$sample.content}>
79
+ <div className={cn.TabsSampleContent}>
85
80
  {children}
86
81
  </div>
87
82
  </div>
@@ -91,7 +86,7 @@ export function Tabs({children, items, tabIndex}: TabsProps) {
91
86
 
92
87
  function TabsItem({children, value}) {
93
88
  return <RadixTabs.Trigger asChild value={value}>
94
- <button className={`${$button.host}`}>
89
+ <button className={`${cn.TabsButtonHost}`}>
95
90
  {children}
96
91
  </button>
97
92
  </RadixTabs.Trigger>
@@ -1,45 +1,47 @@
1
1
  import {css} from "@linaria/core"
2
2
 
3
- export const $nav = {
4
- host: css`
5
- align-items: center;
6
- display: flex;
7
-
8
- height: 42px;
9
-
10
- background-color: #fff;
11
- border-bottom: 1px solid hsl(212, 15%, calc(96% - 12% * 1));
12
-
13
- z-index: 99;
14
- `,
15
- ul: css`
16
- display: flex;
17
- gap: 10px;
18
-
19
- height: 100%;
20
- color: hsl(212, 15%, calc(96% - 12% * 4));
21
-
22
- list-style: none;
23
- padding: 0;
24
- white-space: nowrap;
25
- `,
26
- item: css`
27
- height: 100%;
28
-
29
- &[data-state="active"] { // TODO: in the future it should not be possible
30
- a {
31
- border-bottom-color: rgb(112, 81, 212);
32
- }
3
+ export const UnderlineNavHost = css`
4
+ align-items: center;
5
+ display: flex;
6
+
7
+ height: 42px;
8
+
9
+ background-color: #fff;
10
+ border-bottom: 1px solid hsl(212, 15%, calc(96% - 12% * 1));
11
+
12
+ z-index: 99;
13
+ `;
14
+
15
+ export const UnderlineNavUl = css`
16
+ display: flex;
17
+ gap: 10px;
18
+
19
+ height: 100%;
20
+ color: hsl(212, 15%, calc(96% - 12% * 4));
21
+
22
+ list-style: none;
23
+ padding: 0;
24
+ white-space: nowrap;
25
+ `;
26
+
27
+ export const UnderlineNavItem = css`
28
+ height: 100%;
29
+
30
+ &[data-state="active"] { // TODO: in the future it should not be possible
31
+ a {
32
+ border-bottom-color: rgb(112, 81, 212);
33
33
  }
34
- `,
35
- itemLink: css`
36
- display: inline-flex;
37
- border-bottom: 3px solid transparent;
38
- text-decoration: none;
39
-
40
- height: 100%;
41
- padding: 10px;
42
- `,
43
- itemLink$$active: css`
44
- `
45
- }
34
+ }
35
+ `;
36
+
37
+ export const UnderlineNavItemLink = css`
38
+ display: inline-flex;
39
+ border-bottom: 3px solid transparent;
40
+ text-decoration: none;
41
+
42
+ height: 100%;
43
+ padding: 10px;
44
+ `;
45
+
46
+ export const UnderlineNavItemLinkActive = css`
47
+ `;
@@ -1,7 +1,7 @@
1
1
  import React from "react"
2
2
  import * as RadixTabs from "@radix-ui/react-tabs";
3
3
 
4
- import {$nav} from "./UnderlineNav.styles"
4
+ import * as cn from "./UnderlineNav.styles"
5
5
 
6
6
  export interface TabsProps {
7
7
  children: React.ReactNode
@@ -11,9 +11,9 @@ export interface TabsProps {
11
11
 
12
12
  export function UnderlineNav({children, value, onChange}: TabsProps) {
13
13
  return <RadixTabs.Root asChild value={value} onValueChange={onChange}>
14
- <nav className={$nav.host}>
14
+ <nav className={cn.UnderlineNavHost}>
15
15
  <RadixTabs.List asChild>
16
- <ul className={$nav.ul}>
16
+ <ul className={cn.UnderlineNavUl}>
17
17
  {children}
18
18
  </ul>
19
19
  </RadixTabs.List>
@@ -29,8 +29,8 @@ export interface UnderlineNavItemProps {
29
29
 
30
30
  UnderlineNav.Item = function UnderlineNavItem({children, value, href}: UnderlineNavItemProps) {
31
31
  return <RadixTabs.Trigger asChild value={value}>
32
- <li className={$nav.item}>
33
- <a href={href} className={`${$nav.itemLink}`}>
32
+ <li className={cn.UnderlineNavItem}>
33
+ <a href={href} className={`${cn.UnderlineNavItemLink}`}>
34
34
  {children}
35
35
  </a>
36
36
  </li>
package/tsconfig.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "compilerOptions": {
3
3
  "module": "esnext",
4
4
  "esModuleInterop": true,
5
- "moduleResolution": "bundler", // Update this line
5
+ "moduleResolution": "bundler",
6
6
  "target": "ES6",
7
7
  "lib": [
8
8
  "dom",
@@ -12,7 +12,7 @@
12
12
  "allowJs": true,
13
13
  "skipLibCheck": true,
14
14
  "strict": false,
15
- "noEmit": true,
15
+ "noEmit": false,
16
16
  "incremental": false,
17
17
  "resolveJsonModule": true,
18
18
  "isolatedModules": true,
@@ -23,7 +23,6 @@
23
23
  }
24
24
  ],
25
25
  "strictNullChecks": true,
26
- "allowImportingTsExtensions": true,
27
26
  "baseUrl": ".",
28
27
  "paths": {
29
28
  "*": ["*", "*.ts"]
@@ -1,2 +0,0 @@
1
- import e from"react";var a="hn2r3b2",n="hgvnekf";function t(t){var r=t.children,c=t.kind;return e.createElement("button",{className:"\n ".concat(a,"\n ").concat("secondary"===c&&n,"\n ")},r)}var r="h1vbgqbd",c="c1qluffv",l="h7zyorj",s="h10nnuqu";function m(a){var n=a.children;return e.createElement("div",{className:r},e.createElement("div",{className:c},e.createElement("div",{className:l},n)))}var i="h1xgyvqe",v="t1rx1fna",u="s9nduqh";m.Heading=function(a){var n=a.title,t=a.subtitle,r=a.headingEffect;return e.createElement("div",{className:i},e.createElement("h1",{className:v},r?e.createElement("span",{className:s},n):n),e.createElement("p",{className:u},t))};var o="hth6on8";m.ButtonGroup=function(a){var n=a.children;return e.createElement("div",{className:o},n)};export{t as B,m as C};
2
- //# sourceMappingURL=CTABanner-BrdYlhnD.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CTABanner-BrdYlhnD.js","sources":["../src/brand/Button/Button.tsx","../src/brand/CTABanner/CTABanner.tsx"],"sourcesContent":["import React from \"react\";\nimport {css} from \"@linaria/core\";\n\nconst $button = {\n host: css`\n display: inline-block;\n border: 1px solid transparent;\n text-align: center;\n font-weight: 600;\n white-space: nowrap;\n border-radius: 20px;\n padding: 0 20px;\n line-height: 38px;\n font-size: 14px;\n border-color: transparent;\n color: #3c3c43;\n background-color: #f7f7f8;\n\n transition: color .25s, border-color .25s, background-color .25s;\n\n &:hover {\n background: #e3e3e6;\n }\n `,\n\n host$$secondary: css`\n color: #fff;\n background-color: rgb(112, 81, 212);\n\n &:hover {\n background-color: rgb(95, 59, 211)\n }\n `\n}\n\nexport interface ButtonProps {\n children: React.ReactNode\n kind?: \"secondary\"\n}\n\nexport function Button({children, kind}: ButtonProps) {\n return <button className={`\n ${$button.host}\n ${kind === \"secondary\" && $button.host$$secondary}\n `}>\n {children}\n </button>\n}","import React from \"react\"\nimport {css} from \"@linaria/core\";\n\nconst $banner = {\n host: css`\n padding: 20px;\n `,\n container: css`\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 80px;\n `,\n hero: css`\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n gap: 40px;\n `,\n headingEffect: css`\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n\n background: -webkit-linear-gradient(\n 120deg,\n var(--headingEffect-color-tertiary) 20%,\n var(--headingEffect-color-tertiary) 30%,\n var(--headingEffect-color-secondary) 60%,\n var(--headingEffect-color-primary) 75%,\n var(--headingEffect-color-primary) 85%\n );\n background-clip: text;\n -webkit-text-fill-color: transparent;\n animation: wave 5s infinite;\n background-size: 200% 200%;\n background-position: 50% 50%; // Start with all colors visible\n\n @keyframes wave {\n 0% {\n background-position: 50% 50%;\n }\n 50% {\n background-position: 0% 50%;\n }\n 100% {\n background-position: 50% 50%;\n }\n }\n `\n}\n\nexport interface CTABannerProps {\n children: React.ReactNode\n}\n\nexport function CTABanner({children}: CTABannerProps) {\n return <div className={$banner.host}>\n <div className={$banner.container}>\n <div className={$banner.hero}>\n {children}\n </div>\n </div>\n </div>\n}\n\nconst $heading = {\n host: css`\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n `,\n title: css`\n font-size: 76px;\n font-weight: 900;\n text-align: center;\n letter-spacing: 3px;\n margin: 0;\n `,\n subtitle: css`\n color: #3c3c43;\n font-size: 46px;\n font-weight: 600;\n text-align: center;\n `\n}\n\nexport interface CTABannerHeadingProps {\n title: string\n subtitle: string | React.ReactNode\n headingEffect?: boolean\n}\n\nCTABanner.Heading = function CTABannerHeading({title, subtitle, headingEffect}: CTABannerHeadingProps) {\n return <div className={$heading.host}>\n <h1 className={$heading.title}>\n {\n headingEffect\n ? <span className={$banner.headingEffect}>\n {title}\n </span>\n : title\n }\n </h1>\n <p className={$heading.subtitle}>\n {subtitle}\n </p>\n </div>\n}\n\nconst $btnGroup = {\n host: css`\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 10px;\n `\n}\n\nCTABanner.ButtonGroup = function CTABannerButtonGroup({children}) {\n return <div className={$btnGroup.host}>\n {children}\n </div>\n}"],"names":["$button","Button","children","_ref","kind","React","createElement","className","concat","$banner","CTABanner","$heading","Heading","CTABannerHeading","title","_ref2","subtitle","headingEffect","$btnGroup","ButtonGroup","CTABannerButtonGroup"],"mappings":"qBAGA,IAAMA,EAoBD,UApBCA,EAsBa,mBAeHC,EAAMA,GAA8B,IAA5BC,EAAQC,EAARD,SAAUE,EAAAA,EAAAA,KAC9B,OAAOC,EAAAC,cAAA,SAAA,CAAQC,UAASC,aAAAA,OAClBR,EAAY,cAAAQ,OACH,cAATJ,GAAwBJ,EAAuB,WAEhDE,EAET,CC5CA,IAAMO,EAGD,WAHCA,EASD,WATCA,EAgBD,UAhBCA,EAiBW,WAsCD,SAAAC,EAASA,GAA2B,IAAzBR,EAAAA,EAAAA,SACvB,OAAOG,EAAKC,cAAA,MAAA,CAAAC,UAAWE,GACnBJ,EAAAC,cAAA,MAAA,CAAKC,UAAWE,GACZJ,EAAKC,cAAA,MAAA,CAAAC,UAAWE,GACXP,IAIjB,CAEA,IAAMS,EAMD,WANCA,EAaD,WAbCA,EAcM,UAcZD,EAAUE,QAAU,SAAyBC,GAAwD,IAAtDC,EAAKC,EAALD,MAAOE,EAAQD,EAARC,SAAUC,EAAAA,EAAAA,cAC5D,OAAOZ,EAAKC,cAAA,MAAA,CAAAC,UAAWI,GACnBN,EAAAC,cAAA,KAAA,CAAIC,UAAWI,GAEPM,EACMZ,wBAAME,UAAWE,GACdK,GAEHA,GAGdT,EAAGC,cAAA,IAAA,CAAAC,UAAWI,GACTK,GAGb,EAEA,IAAME,EACE,UAQRR,EAAUS,YAAc,SAA6BC,GAAW,IAATlB,EAAAA,EAAAA,SACnD,OAAOG,EAAAC,cAAA,MAAA,CAAKC,UAAWW,GAClBhB,EAET"}
@@ -1,2 +0,0 @@
1
- import e from"react";var a="hn2r3b2",n="hgvnekf";function t(t){var r=t.children,c=t.kind;return e.createElement("button",{className:"\n ".concat(a,"\n ").concat("secondary"===c&&n,"\n ")},r)}var r="h1vbgqbd",c="c1qluffv",l="h7zyorj",s="h10nnuqu";function m(a){var n=a.children;return e.createElement("div",{className:r},e.createElement("div",{className:c},e.createElement("div",{className:l},n)))}var i="h1xgyvqe",v="t1rx1fna",u="s9nduqh";m.Heading=function(a){var n=a.title,t=a.subtitle,r=a.headingEffect;return e.createElement("div",{className:i},e.createElement("h1",{className:v},r?e.createElement("span",{className:s},n):n),e.createElement("p",{className:u},t))};var o="hth6on8";m.ButtonGroup=function(a){var n=a.children;return e.createElement("div",{className:o},n)};export{t as B,m as C};
2
- //# sourceMappingURL=CTABanner-XQNnnpUx.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CTABanner-XQNnnpUx.js","sources":["../src/brand/Button/Button.tsx","../src/brand/CTABanner/CTABanner.tsx"],"sourcesContent":["import React from \"react\";\nimport {css} from \"@linaria/core\";\n\nconst $button = {\n host: css`\n display: inline-block;\n border: 1px solid transparent;\n text-align: center;\n font-weight: 600;\n white-space: nowrap;\n border-radius: 20px;\n padding: 0 20px;\n line-height: 38px;\n font-size: 14px;\n border-color: transparent;\n color: #3c3c43;\n background-color: #f7f7f8;\n\n transition: color .25s, border-color .25s, background-color .25s;\n\n &:hover {\n background: #e3e3e6;\n }\n `,\n\n host$$secondary: css`\n color: #fff;\n background-color: rgb(112, 81, 212);\n\n &:hover {\n background-color: rgb(95, 59, 211)\n }\n `\n}\n\nexport interface ButtonProps {\n children: React.ReactNode\n kind?: \"secondary\"\n}\n\nexport function Button({children, kind}: ButtonProps) {\n return <button className={`\n ${$button.host}\n ${kind === \"secondary\" && $button.host$$secondary}\n `}>\n {children}\n </button>\n}","import React from \"react\"\nimport {css} from \"@linaria/core\";\n\nconst $banner = {\n host: css`\n padding: 20px;\n `,\n container: css`\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 80px;\n `,\n hero: css`\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n gap: 40px;\n `,\n headingEffect: css`\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n\n background: -webkit-linear-gradient(\n 120deg,\n var(--headingEffect-color-tertiary) 20%,\n var(--headingEffect-color-tertiary) 30%,\n var(--headingEffect-color-secondary) 60%,\n var(--headingEffect-color-primary) 75%,\n var(--headingEffect-color-primary) 85%\n );\n background-clip: text;\n -webkit-text-fill-color: transparent;\n animation: wave 5s infinite;\n background-size: 200% 200%;\n background-position: 50% 50%; // Start with all colors visible\n\n @keyframes wave {\n 0% {\n background-position: 50% 50%;\n }\n 50% {\n background-position: 0% 50%;\n }\n 100% {\n background-position: 50% 50%;\n }\n }\n `\n}\n\nexport interface CTABannerProps {\n children: React.ReactNode\n}\n\nexport function CTABanner({children}: CTABannerProps) {\n return <div className={$banner.host}>\n <div className={$banner.container}>\n <div className={$banner.hero}>\n {children}\n </div>\n </div>\n </div>\n}\n\nconst $heading = {\n host: css`\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n `,\n title: css`\n font-size: 76px;\n font-weight: 900;\n text-align: center;\n letter-spacing: 3px;\n margin: 0;\n `,\n subtitle: css`\n color: #3c3c43;\n font-size: 46px;\n font-weight: 600;\n text-align: center;\n `\n}\n\nexport interface CTABannerHeadingProps {\n title: string\n subtitle: string | React.ReactNode\n headingEffect?: boolean\n}\n\nCTABanner.Heading = function CTABannerHeading({title, subtitle, headingEffect}: CTABannerHeadingProps) {\n return <div className={$heading.host}>\n <h1 className={$heading.title}>\n {\n headingEffect\n ? <span className={$banner.headingEffect}>\n {title}\n </span>\n : title\n }\n </h1>\n <p className={$heading.subtitle}>\n {subtitle}\n </p>\n </div>\n}\n\nconst $btnGroup = {\n host: css`\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 10px;\n `\n}\n\nCTABanner.ButtonGroup = function CTABannerButtonGroup({children}) {\n return <div className={$btnGroup.host}>\n {children}\n </div>\n}"],"names":["$button","Button","children","_ref","kind","React","createElement","className","concat","$banner","CTABanner","$heading","Heading","CTABannerHeading","title","_ref2","subtitle","headingEffect","$btnGroup","ButtonGroup","CTABannerButtonGroup"],"mappings":"qBAGA,IAAMA,EAoBD,UApBCA,EAsBa,mBAeHC,EAAMA,GAA8B,IAA5BC,EAAQC,EAARD,SAAUE,EAAAA,EAAAA,KAC9B,OAAOC,EAAAC,cAAA,SAAA,CAAQC,UAASC,aAAAA,OAClBR,EAAY,cAAAQ,OACH,cAATJ,GAAwBJ,EAAuB,WAEhDE,EAET,CC5CA,IAAMO,EAGD,WAHCA,EASD,WATCA,EAgBD,UAhBCA,EAiBW,WAsCD,SAAAC,EAASA,GAA2B,IAAzBR,EAAAA,EAAAA,SACvB,OAAOG,EAAKC,cAAA,MAAA,CAAAC,UAAWE,GACnBJ,EAAAC,cAAA,MAAA,CAAKC,UAAWE,GACZJ,EAAKC,cAAA,MAAA,CAAAC,UAAWE,GACXP,IAIjB,CAEA,IAAMS,EAMD,WANCA,EAaD,WAbCA,EAcM,UAcZD,EAAUE,QAAU,SAAyBC,GAAwD,IAAtDC,EAAKC,EAALD,MAAOE,EAAQD,EAARC,SAAUC,EAAAA,EAAAA,cAC5D,OAAOZ,EAAKC,cAAA,MAAA,CAAAC,UAAWI,GACnBN,EAAAC,cAAA,KAAA,CAAIC,UAAWI,GAEPM,EACMZ,wBAAME,UAAWE,GACdK,GAEHA,GAGdT,EAAGC,cAAA,IAAA,CAAAC,UAAWI,GACTK,GAGb,EAEA,IAAME,EACE,UAQRR,EAAUS,YAAc,SAA6BC,GAAW,IAATlB,EAAAA,EAAAA,SACnD,OAAOG,EAAAC,cAAA,MAAA,CAAKC,UAAWW,GAClBhB,EAET"}