@jetbrains/kotlin-web-site-ui 4.8.0-alpha.0 → 4.8.0-alpha.10

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 (32) hide show
  1. package/out/components/footer/footer.js +20 -23
  2. package/out/components/footer/footer.module.pcss.js +1 -4
  3. package/out/components/footer/index.css +133 -93
  4. package/out/components/footer/nav/nav-item.js +1 -1
  5. package/out/components/footer/social-list/social-data.js +7 -12
  6. package/out/components/footer/social-list/social-item/social-item.js +8 -4
  7. package/out/components/footer/social-list/social-item/social-item.module.pcss.js +1 -2
  8. package/out/components/header/index.css +6 -6
  9. package/out/components/sidebar/index.css +108 -0
  10. package/out/components/sidebar/index.js +2 -0
  11. package/out/components/sidebar/sidebar.js +50 -0
  12. package/out/components/sidebar/sidebar.module.css.js +10 -0
  13. package/out/components/sidebar-menu/index.css +36 -0
  14. package/out/components/sidebar-menu/index.js +3 -0
  15. package/out/components/sidebar-menu/menu-header.js +30 -0
  16. package/out/components/sidebar-menu/menu-header.module.css.js +7 -0
  17. package/out/components/sidebar-menu/menu-item.js +20 -0
  18. package/out/components/sidebar-menu/popup.module.css.js +5 -0
  19. package/out/components/sidebar-menu/sidebar-menu.js +32 -0
  20. package/out/components/top-menu/index.css +2 -2
  21. package/out/components/typography/index.css +1 -1
  22. package/out/components/youtube-player/index.css +1 -1
  23. package/package.json +6 -5
  24. package/out/components/footer/social-list/svg/github-logo.svg.js +0 -35
  25. package/out/components/footer/social-list/svg/reddit-logo.svg.js +0 -33
  26. package/out/components/footer/social-list/svg/slack-logo.svg.js +0 -33
  27. package/out/components/footer/social-list/svg/stackoverflow-logo.svg.js +0 -36
  28. package/out/components/footer/social-list/svg/twitter-logo.svg.js +0 -33
  29. package/out/components/footer/social-list/svg/youtube-logo.svg.js +0 -35
  30. package/out/components/nav-item/index.css +0 -46
  31. package/out/components/nav-item/index.js +0 -34
  32. package/out/components/nav-item/nav-item.module.pcss.js +0 -10
@@ -1,5 +1,4 @@
1
1
  import React__default from 'react';
2
- import { useTheme } from '@rescui/ui-contexts';
3
2
  import { SocialList } from './social-list/social-list.js';
4
3
  import { NavList } from './nav/nav-list.js';
5
4
  import { Logo } from './logo/logo.js';
@@ -12,44 +11,42 @@ const Footer = ({
12
11
  className
13
12
  }) => {
14
13
  const textCn = useTextStyles();
15
- const theme = useTheme();
16
14
  const linkClass = textCn('rs-link', {
17
- hardness: 'pale',
18
- mode: 'clear'
15
+ hardness: 'hard'
19
16
  });
20
17
  return React__default.createElement("footer", {
21
- className: classNames(styles.footer, className, {
22
- [styles.footerDarkTheme]: theme === 'dark'
23
- }),
18
+ className: classNames(styles.footer, className),
24
19
  ref: forwardedRef
20
+ }, React__default.createElement("div", {
21
+ className: 'ktl-layout ktl-layout--center'
25
22
  }, React__default.createElement("div", {
26
23
  className: styles.socialListArea
27
24
  }, React__default.createElement("div", {
28
- className: classNames(textCn('rs-h4'), styles.socialListTitle)
29
- }, "Stay in touch:"), React__default.createElement(SocialList, null)), React__default.createElement(NavList, {
30
- className: styles.navListArea
25
+ className: classNames(textCn('rs-text-2'), styles.socialListTitle)
26
+ }, "Stay in touch:"), React__default.createElement(SocialList, null)), React__default.createElement(NavList, null), React__default.createElement(Logo, {
27
+ className: styles.logoArea
31
28
  }), React__default.createElement("div", {
32
29
  className: classNames(textCn('rs-text-3', {
33
- hardness: 'pale'
30
+ hardness: 'hard'
34
31
  }), styles.textArea)
35
32
  }, React__default.createElement("div", {
33
+ className: styles.motto
34
+ }, "Supported and developed by\u00A0", React__default.createElement("a", {
35
+ className: classNames(linkClass),
36
+ href: "https://www.jetbrains.com/",
37
+ target: "_blank"
38
+ }, "JetBrains"), "."), React__default.createElement("div", {
36
39
  className: styles.copyright
37
40
  }, "Kotlin\u2122 is\u00A0protected under the", ' ', React__default.createElement("a", {
38
- className: classNames(linkClass, styles.underlinedLink),
41
+ className: classNames(linkClass),
39
42
  href: "https://kotlinlang.org/foundation/kotlin-foundation.html"
40
- }, "Kotlin\u00A0Foundation"), ' ', "and licensed under the", ' ', React__default.createElement("a", {
41
- className: classNames(linkClass, styles.underlinedLink),
43
+ }, "Kotlin\u00A0Foundation"), ' ', React__default.createElement("br", {
44
+ className: styles.copyrightBreakLine
45
+ }), "and\u00A0licensed under the", ' ', React__default.createElement("a", {
46
+ className: classNames(linkClass),
42
47
  target: "_blank",
43
48
  href: "https://github.com/JetBrains/kotlin-web-site/blob/master/LICENSE"
44
- }, "Apache 2\u00A0license"), "."), ' ', React__default.createElement("div", {
45
- className: styles.motto
46
- }, "Supported and developed by\u00A0", React__default.createElement("a", {
47
- className: classNames(linkClass, styles.underlinedLink),
48
- href: "https://www.jetbrains.com/",
49
- target: "_blank"
50
- }, "JetBrains"))), React__default.createElement(Logo, {
51
- className: styles.logoArea
52
- }));
49
+ }, "Apache 2\u00A0license"), "."))));
53
50
  };
54
51
 
55
52
  export { Footer };
@@ -1,13 +1,10 @@
1
1
  var styles = {
2
2
  "footer": "ktl-footer-module_footer_m67Up",
3
- "footerDarkTheme": "ktl-footer-module_footer-dark-theme_YUAFI",
4
- "underlinedLink": "ktl-footer-module_underlined-link_G0wkq",
5
3
  "socialListArea": "ktl-footer-module_social-list-area_bS3eE",
6
4
  "socialListTitle": "ktl-footer-module_social-list-title_HPzIP",
7
- "navListArea": "ktl-footer-module_nav-list-area_7JJh0",
8
5
  "textArea": "ktl-footer-module_text-area_flccc",
9
6
  "logoArea": "ktl-footer-module_logo-area_SsNTa",
10
7
  "copyright": "ktl-footer-module_copyright_XjtgY",
11
- "motto": "ktl-footer-module_motto_SiU1V"
8
+ "copyrightBreakLine": "ktl-footer-module_copyrightBreakLine_0hI7E"
12
9
  };
13
10
  export { styles as default };
@@ -1,19 +1,26 @@
1
1
  .ktl-social-list-module_social-list_K2Nqu {
2
2
  display: grid;
3
- -moz-column-gap: 18px;
4
- column-gap: 18px;
5
3
  grid-auto-flow: column;
6
4
  justify-content: start;
7
- margin: -6px 0;
8
5
  }
9
6
 
10
- @media (max-width: 480px) {
11
- .ktl-social-list-module_social-list_K2Nqu {
12
- -moz-column-gap: 8px;
13
- column-gap: 8px;
14
- }
7
+ @media (max-width: 616px) {.ktl-social-list-module_social-list_K2Nqu {
8
+ -moz-column-gap: var(--ktl-box-block-l);
9
+ column-gap: var(--ktl-box-block-l)
10
+ }
11
+ }
12
+
13
+ @media (max-width: 472px) {.ktl-social-list-module_social-list_K2Nqu {
14
+ -moz-column-gap: var(--ktl-box-block-l);
15
+ column-gap: var(--ktl-box-block-l);
16
+ grid-template-columns: repeat(3, -webkit-min-content);
17
+ grid-template-columns: repeat(3, min-content);
18
+ grid-auto-flow: row
19
+ }
15
20
  }
16
21
 
22
+
23
+
17
24
  :root {
18
25
  --ktl-light-grey: #f4f4f4;
19
26
  --ktl-dark-100: rgba(39, 40, 44, 1);
@@ -33,7 +40,7 @@
33
40
  --ktl-mobile-dropdown-list-z-index: 907;
34
41
  --ktl-header-height-mobile: 52px;
35
42
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
36
- --rs-font-family-ui: var(--ktl-font-family-inter);
43
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
37
44
  }
38
45
 
39
46
  :root {
@@ -51,33 +58,10 @@
51
58
  }
52
59
 
53
60
  .ktl-social-item-module_social-item_GpKEF {
54
- width: 36px;
55
- height: 36px;
56
- padding: 6px;
57
61
  display: flex;
58
62
  align-items: center;
59
- justify-content: center;
60
- box-sizing: border-box;
61
- border-radius: 50%;
62
- transition: color var(--ktl-transition-xfast),
63
- background-color var(--ktl-transition-xfast);
64
- color: var(--ktl-icon-color-dark);
65
63
  }
66
64
 
67
- .ktl-social-item-module_social-item_GpKEF:hover,
68
- .ktl-social-item-module_social-item_GpKEF :focus {
69
- color: var(--ktl-icon-color-dark);
70
- background: rgba(39, 40, 44, 0.05);
71
- }
72
-
73
- .ktl-social-item-module_social-item-dark-theme_rOJWT {
74
- color: var(--ktl-color-white-light);
75
- }
76
-
77
- .ktl-social-item-module_social-item-dark-theme_rOJWT:hover, .ktl-social-item-module_social-item-dark-theme_rOJWT:focus {
78
- color: var(--ktl-color-white-light);
79
- background: rgba(255, 255, 255, 0.1);
80
- }
81
65
  .ktl-nav-list-module_nav-list_-k4np {
82
66
  display: flex;
83
67
  flex-wrap: wrap;
@@ -86,6 +70,22 @@
86
70
  list-style: none;
87
71
  }
88
72
 
73
+ @media (max-width: 616px) {.ktl-nav-list-module_nav-list_-k4np {
74
+ padding: var(--ktl-box-section-s) 0;
75
+ margin: var(--ktl-box-section-s) 0 0;
76
+ border-top: 1px solid rgba(255, 255, 255, 0.2);
77
+ border-bottom: 1px solid rgba(255, 255, 255, 0.2);
78
+ display: grid;
79
+ grid-template-columns: 1fr 1fr;
80
+ gap: var(--ktl-box-section-s)
81
+ }
82
+ }
83
+
84
+ @media (max-width: 472px) {.ktl-nav-list-module_nav-list_-k4np {
85
+ grid-template-columns: 1fr
86
+ }
87
+ }
88
+
89
89
  :root {
90
90
  --ktl-light-grey: #f4f4f4;
91
91
  --ktl-dark-100: rgba(39, 40, 44, 1);
@@ -105,7 +105,7 @@
105
105
  --ktl-mobile-dropdown-list-z-index: 907;
106
106
  --ktl-header-height-mobile: 52px;
107
107
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
108
- --rs-font-family-ui: var(--ktl-font-family-inter);
108
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
109
109
  }
110
110
 
111
111
  :root {
@@ -125,7 +125,8 @@
125
125
  .ktl-nav-item-module_nav-item_isoyN {
126
126
  padding-right: 12px;
127
127
  margin-right: 12px;
128
- line-height: 32px;
128
+ margin-top: 12px;
129
+ line-height: var(--ktl-box-section-s);
129
130
  position: relative;
130
131
  }
131
132
 
@@ -135,9 +136,9 @@
135
136
  right: 0;
136
137
  top: 50%;
137
138
  width: 1px;
138
- height: 12px;
139
+ height: var(--ktl-box-section-s);
139
140
  transform: translateY(-50%);
140
- background-color: rgba(39, 40, 44, 0.5);
141
+ background-color: rgba(255, 255, 255, 0.2);
141
142
  }
142
143
 
143
144
  .ktl-nav-item-module_nav-item_isoyN:last-child {
@@ -146,18 +147,30 @@
146
147
  }
147
148
 
148
149
  .ktl-nav-item-module_nav-item-dark-theme_FijdH:not(:last-child)::after {
149
- background-color: rgba(255, 255, 255, 0.50)
150
+ background-color: rgba(255, 255, 255, 0.2)
150
151
  }
151
152
 
152
- @media (min-width: 640px) {
153
+ @media (max-width: 616px) {
153
154
  .ktl-nav-item-module_nav-item_isoyN {
154
- line-height: 1.5;
155
+ margin: 0;
156
+ padding: 0;
155
157
  }
158
+
159
+ .ktl-nav-item-module_nav-item_isoyN:not(:last-child)::after {
160
+ display: none;
161
+ }
156
162
  }
157
163
  .ktl-logo-module_link_bNecp {
158
164
  text-decoration: none;
165
+ height: 60px;
166
+ width: 60px;
167
+ display: block;
159
168
  }
160
169
 
170
+ .ktl-logo-module_link_bNecp:hover {
171
+ text-decoration: none;
172
+ }
173
+
161
174
  :root {
162
175
  --ktl-light-grey: #f4f4f4;
163
176
  --ktl-dark-100: rgba(39, 40, 44, 1);
@@ -177,7 +190,7 @@
177
190
  --ktl-mobile-dropdown-list-z-index: 907;
178
191
  --ktl-header-height-mobile: 52px;
179
192
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
180
- --rs-font-family-ui: var(--ktl-font-family-inter);
193
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
181
194
  }
182
195
 
183
196
  :root {
@@ -195,96 +208,123 @@
195
208
  }
196
209
 
197
210
  .ktl-footer-module_footer_m67Up {
198
- background: var(--ktl-light-grey);
199
- padding: 32px 16px 16px;
211
+ background: var(--ktl-dark-100);
212
+ padding: var(--ktl-box-page-m) 0;
200
213
  min-width: 320px;
201
214
  box-sizing: border-box;
202
- display: grid;
203
- grid-template-columns: auto 75px;
204
- grid-template-rows: auto;
205
- grid-template-areas:
206
- 'social-list social-list'
207
- 'nav-list nav-list'
208
- 'text logo';
209
- grid-column-gap: 16px;
210
- font-family: var(--ktl-font-family-inter);
211
215
  text-rendering:optimizeLegibility;
212
216
  -webkit-font-smoothing:antialiased;
213
217
  -moz-osx-font-smoothing:grayscale;
214
218
  }
215
219
 
216
- .ktl-footer-module_footer-dark-theme_YUAFI {
217
- background: var(--ktl-dark-100);
218
- }
219
-
220
- .ktl-footer-module_footer-dark-theme_YUAFI .ktl-footer-module_underlined-link_G0wkq {
221
- border-color: inherit;
220
+ .ktl-footer-module_footer_m67Up :focus-visible, .ktl-footer-module_footer_m67Up :focus[data-focus-method=key] {
221
+ outline: none;
222
+ box-shadow: var(--ktl-focus-outline);
222
223
  }
223
224
 
224
225
  .ktl-footer-module_social-list-area_bS3eE {
225
- grid-area: social-list;
226
+ display: flex;
227
+ align-items: center;
226
228
  }
227
229
 
228
230
  .ktl-footer-module_social-list-title_HPzIP {
229
- margin-bottom: 8px;
230
- }
231
-
232
- .ktl-footer-module_nav-list-area_7JJh0 {
233
- grid-area: nav-list;
234
- margin: 24px 0 32px;
231
+ margin-right: var(--ktl-box-block-m);
235
232
  }
236
233
 
237
234
  .ktl-footer-module_text-area_flccc {
238
- grid-area: text;
235
+ margin-top: var(--ktl-box-block-m);
239
236
  }
240
237
 
241
238
  .ktl-footer-module_logo-area_SsNTa {
242
- grid-area: logo;
239
+ margin-top: var(--ktl-box-page-m);
243
240
  }
244
241
 
245
242
  .ktl-footer-module_copyright_XjtgY {
246
243
  display: inline;
247
244
  }
248
245
 
249
- .ktl-footer-module_motto_SiU1V {
250
- display: inline;
251
- }
252
-
253
- .ktl-footer-module_underlined-link_G0wkq {
254
- border-color: var(--ktl-light-dark-20);
246
+ .ktl-footer-module_copyrightBreakLine_0hI7E {
247
+ display: none;
255
248
  }
256
249
 
257
- @media (min-width: 641px) {
250
+ @media (max-width: 808px) {
258
251
  .ktl-footer-module_footer_m67Up {
259
- padding: 32px;
260
- grid-template-columns: auto 60px;
261
- grid-template-areas:
262
- 'social-list logo'
263
- 'nav-list logo'
264
- 'text text';
252
+ padding: var(--ktl-box-section-l) 0;
265
253
  }
254
+ }
266
255
 
267
- .ktl-footer-module_text-area_flccc {
268
- display: flex;
269
- justify-content: space-between;
256
+ @media (max-width: 616px) {
257
+ .ktl-footer-module_social-list-area_bS3eE {
258
+ display: block;
270
259
  }
271
260
 
272
- .ktl-footer-module_motto_SiU1V {
273
- margin-left: 16px;
274
- text-align: right;
261
+ .ktl-footer-module_logo-area_SsNTa {
262
+ margin-top: var(--ktl-box-section-s);
275
263
  }
276
264
 
277
- .ktl-footer-module_social-list-area_bS3eE {
278
- display: flex;
279
- align-items: center;
265
+ .ktl-footer-module_copyrightBreakLine_0hI7E {
266
+ display: inline;
280
267
  }
268
+ }
281
269
 
282
- .ktl-footer-module_social-list-title_HPzIP {
283
- margin-bottom: 0;
284
- margin-right: 24px;
270
+ @media (max-width: 472px) {
271
+ .ktl-footer-module_footer_m67Up {
272
+ padding: var(--ktl-box-section-s) 0 var(--ktl-box-section-l);
285
273
  }
286
274
 
287
- .ktl-footer-module_nav-list-area_7JJh0 {
288
- margin: 16px 0;
275
+ .ktl-footer-module_copyrightBreakLine_0hI7E {
276
+ display: none;
289
277
  }
290
278
  }
279
+ .ktl-layout {
280
+ --ktl-layout-spacing: 72px;
281
+ --ktl-layout-width: 1144px;
282
+ }
283
+
284
+ @media (max-width: 1190px) {.ktl-layout {
285
+ --ktl-layout-width: 952px;
286
+ }
287
+ }
288
+
289
+ @media (max-width: 1000px) {.ktl-layout {
290
+ --ktl-layout-spacing: 48px;
291
+ --ktl-layout-width: 760px;
292
+ }
293
+ }
294
+
295
+ @media (max-width: 808px) {.ktl-layout {
296
+ --ktl-layout-width: 568px;
297
+ }
298
+ }
299
+
300
+ @media (max-width: 616px) {.ktl-layout {
301
+ --ktl-layout-width: 424px;
302
+ }
303
+ }
304
+
305
+ @media (max-width: 472px) {.ktl-layout {
306
+ --ktl-layout-width: 328px;
307
+ }
308
+ }
309
+
310
+ @media (max-width: 374px) {.ktl-layout {
311
+ --ktl-layout-width: 272px;
312
+ }
313
+ }
314
+
315
+ .ktl-layout {
316
+
317
+ box-sizing: border-box;
318
+ width: var(--ktl-layout-width);
319
+
320
+ transition: width 200ms;
321
+ will-change: width;
322
+ }
323
+ .ktl-layout--center {
324
+ margin-left: auto;
325
+ margin-right: auto;
326
+ }
327
+ .ktl-layout--spacing {
328
+ margin-top: var(--ktl-layout-spacing);
329
+ margin-bottom: var(--ktl-layout-spacing);
330
+ }
@@ -18,7 +18,7 @@ const NavItem = ({
18
18
  href: data.url,
19
19
  title: data.title,
20
20
  className: classNames(textCn('rs-link', {
21
- hardness: 'average',
21
+ hardness: 'hard',
22
22
  mode: 'clear'
23
23
  }))
24
24
  }, data.title));
@@ -1,38 +1,33 @@
1
- import SvgGithubLogo from './svg/github-logo.svg.js';
2
- import SvgRedditLogo from './svg/reddit-logo.svg.js';
3
- import SvgSlackLogo from './svg/slack-logo.svg.js';
4
- import SvgStackoverflowLogo from './svg/stackoverflow-logo.svg.js';
5
- import SvgTwitterLogo from './svg/twitter-logo.svg.js';
6
- import SvgYoutubeLogo from './svg/youtube-logo.svg.js';
1
+ import { GitHubIcon, TwitterIcon, SlackIcon, RedditIcon, StackOverflowIcon, YoutubeIcon } from '@rescui/icons';
7
2
  const socialList = [{
8
3
  url: 'https://github.com/JetBrains/kotlin',
9
4
  title: 'Kotlin on GitHub',
10
5
  logoAlt: 'GitHub logo',
11
- icon: SvgGithubLogo
6
+ icon: GitHubIcon
12
7
  }, {
13
8
  url: 'https://twitter.com/kotlin',
14
9
  title: 'Kotlin on Twitter',
15
10
  logoAlt: 'Twitter logo',
16
- icon: SvgTwitterLogo
11
+ icon: TwitterIcon
17
12
  }, {
18
13
  url: 'https://surveys.jetbrains.com/s3/kotlin-slack-sign-up',
19
14
  title: 'Kotlin Slack',
20
15
  logoAlt: 'Slack logo',
21
- icon: SvgSlackLogo
16
+ icon: SlackIcon
22
17
  }, {
23
18
  url: 'https://www.reddit.com/r/Kotlin/',
24
19
  title: 'Kotlin on Reddit',
25
20
  logoAlt: 'Reddit logo',
26
- icon: SvgRedditLogo
21
+ icon: RedditIcon
27
22
  }, {
28
23
  url: 'https://stackoverflow.com/questions/tagged/kotlin',
29
24
  title: 'Kotlin on Stack Overflow',
30
25
  logoAlt: 'Stack Overflow logo',
31
- icon: SvgStackoverflowLogo
26
+ icon: StackOverflowIcon
32
27
  }, {
33
28
  url: 'https://www.youtube.com/channel/UCP7uiEZIqci43m22KDl0sNw',
34
29
  title: 'Kotlin on YouTube',
35
30
  logoAlt: 'YouTube logo',
36
- icon: SvgYoutubeLogo
31
+ icon: YoutubeIcon
37
32
  }];
38
33
  export { socialList };
@@ -2,20 +2,24 @@ import React__default from 'react';
2
2
  import { useTheme } from '@rescui/ui-contexts';
3
3
  import classNames from 'classnames';
4
4
  import styles from './social-item.module.pcss.js';
5
+ import Button from '@rescui/button';
5
6
 
6
7
  const SocialItem = ({
7
8
  socialNetwork
8
9
  }) => {
9
10
  const SocialIcon = socialNetwork.icon;
10
11
  const theme = useTheme();
11
- return React__default.createElement("a", {
12
+ return React__default.createElement(Button, {
13
+ mode: 'clear',
14
+ size: 'l',
12
15
  target: "_blank",
16
+ href: socialNetwork.url,
17
+ title: socialNetwork.title,
13
18
  className: classNames(styles.socialItem, {
14
19
  [styles.socialItemDarkTheme]: theme === 'dark'
15
20
  }),
16
- href: socialNetwork.url,
17
- title: socialNetwork.title
18
- }, React__default.createElement(SocialIcon, null));
21
+ icon: React__default.createElement(SocialIcon, null)
22
+ });
19
23
  };
20
24
 
21
25
  export { SocialItem };
@@ -1,5 +1,4 @@
1
1
  var styles = {
2
- "socialItem": "ktl-social-item-module_social-item_GpKEF",
3
- "socialItemDarkTheme": "ktl-social-item-module_social-item-dark-theme_rOJWT"
2
+ "socialItem": "ktl-social-item-module_social-item_GpKEF"
4
3
  };
5
4
  export { styles as default };
@@ -41,7 +41,7 @@
41
41
  --ktl-mobile-dropdown-list-z-index: 907;
42
42
  --ktl-header-height-mobile: 52px;
43
43
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
44
- --rs-font-family-ui: var(--ktl-font-family-inter);
44
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
45
45
  }
46
46
 
47
47
  :root {
@@ -106,7 +106,7 @@
106
106
  --ktl-mobile-dropdown-list-z-index: 907;
107
107
  --ktl-header-height-mobile: 52px;
108
108
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
109
- --rs-font-family-ui: var(--ktl-font-family-inter);
109
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
110
110
  }
111
111
 
112
112
  :root {
@@ -270,7 +270,7 @@
270
270
  --ktl-mobile-dropdown-list-z-index: 907;
271
271
  --ktl-header-height-mobile: 52px;
272
272
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
273
- --rs-font-family-ui: var(--ktl-font-family-inter);
273
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
274
274
  }
275
275
 
276
276
  :root {
@@ -748,7 +748,7 @@
748
748
  --ktl-mobile-dropdown-list-z-index: 907;
749
749
  --ktl-header-height-mobile: 52px;
750
750
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
751
- --rs-font-family-ui: var(--ktl-font-family-inter);
751
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
752
752
  }
753
753
 
754
754
  :root {
@@ -826,7 +826,7 @@
826
826
  --ktl-mobile-dropdown-list-z-index: 907;
827
827
  --ktl-header-height-mobile: 52px;
828
828
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
829
- --rs-font-family-ui: var(--ktl-font-family-inter);
829
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
830
830
  }
831
831
 
832
832
  :root {
@@ -899,7 +899,7 @@
899
899
  --ktl-mobile-dropdown-list-z-index: 907;
900
900
  --ktl-header-height-mobile: 52px;
901
901
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
902
- --rs-font-family-ui: var(--ktl-font-family-inter);
902
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
903
903
  }
904
904
 
905
905
  :root {
@@ -0,0 +1,108 @@
1
+ .ktl-sidebar-module_popup_bidR1 {
2
+ position: fixed;
3
+ top: 0;
4
+ left: 0;
5
+ right: 0;
6
+ bottom: 0;
7
+ z-index: 910;
8
+
9
+ --ktf-header-animation-timing: 250ms;
10
+ --ktf-header-animation-function: cubic-bezier(0.4, 0, 0.2, 1);
11
+ }
12
+
13
+ .ktl-sidebar-module_popup_bidR1::before {
14
+ display: block;
15
+ content: '';
16
+
17
+ position: absolute;
18
+ top: 0;
19
+ bottom: 0;
20
+ right: 0;
21
+ left: 0;
22
+
23
+ visibility: visible;
24
+ -webkit-backdrop-filter: blur(4px);
25
+ backdrop-filter: blur(4px);
26
+
27
+ transition: background-color var(--ktf-header-animation-function) var(--ktf-header-animation-timing),
28
+ visibility var(--ktf-header-animation-function) var(--ktf-header-animation-timing),
29
+ -webkit-backdrop-filter var(--ktf-header-animation-function) var(--ktf-header-animation-timing);
30
+
31
+ transition: background-color var(--ktf-header-animation-function) var(--ktf-header-animation-timing),
32
+ visibility var(--ktf-header-animation-function) var(--ktf-header-animation-timing),
33
+ backdrop-filter var(--ktf-header-animation-function) var(--ktf-header-animation-timing);
34
+
35
+ transition: background-color var(--ktf-header-animation-function) var(--ktf-header-animation-timing),
36
+ visibility var(--ktf-header-animation-function) var(--ktf-header-animation-timing),
37
+ backdrop-filter var(--ktf-header-animation-function) var(--ktf-header-animation-timing),
38
+ -webkit-backdrop-filter var(--ktf-header-animation-function) var(--ktf-header-animation-timing);
39
+ will-change: background-color, visible;
40
+ }
41
+
42
+ .ktl-sidebar-module_popup_bidR1.ktl-sidebar-module_tabletMode_vcf0T {
43
+ --ktl-sidebar-width: 320px;
44
+ }
45
+
46
+ .ktl-sidebar-module_popup_bidR1.ktl-sidebar-module_mobileMode_yCmFY {
47
+ --ktl-sidebar-width: 100%;
48
+ }
49
+
50
+ @media (min-width: 473px) {
51
+
52
+ .ktl-sidebar-module_popup_bidR1:not(:is(.ktl-sidebar-module_tabletMode_vcf0T, .ktl-sidebar-module_mobileMode_yCmFY)) {
53
+ --ktl-sidebar-width: 320px
54
+ }
55
+ }
56
+
57
+ @media (max-width: 472px) {
58
+
59
+ .ktl-sidebar-module_popup_bidR1:not(:is(.ktl-sidebar-module_tabletMode_vcf0T, .ktl-sidebar-module_mobileMode_yCmFY)) {
60
+ --ktl-sidebar-width: 100%
61
+ }
62
+ }
63
+
64
+ .ktl-sidebar-module_content_SzdiT {
65
+ margin-left: auto;
66
+ height: 100%;
67
+ max-width: 100%;
68
+ width: var(--ktl-sidebar-width, auto);
69
+ }
70
+
71
+ .ktl-sidebar-module_dark_GNaUl::before {
72
+ background-color: rgba(0, 0, 0, 0.5);
73
+ }
74
+
75
+ .ktl-sidebar-module_dark_GNaUl > .ktl-sidebar-module_content_SzdiT {
76
+ background-color: var(--ktl-dark-100);
77
+ }
78
+
79
+ .ktl-sidebar-module_light_OnGcf::before {
80
+ background-color: rgba(0, 0, 0, 0.62);
81
+ }
82
+
83
+ .ktl-sidebar-module_light_OnGcf > .ktl-sidebar-module_content_SzdiT {
84
+ background-color: #fff;
85
+ }
86
+
87
+ .ktl-sidebar-module_popup_bidR1 > .ktl-sidebar-module_content_SzdiT {
88
+ transform: translateX(0);
89
+
90
+ transition: transform var(--ktf-header-animation-function) var(--ktf-header-animation-timing),
91
+ visibility var(--ktf-header-animation-function) var(--ktf-header-animation-timing);
92
+ will-change: transform;
93
+ }
94
+
95
+ .ktl-sidebar-module_close_lN33m {
96
+ --ktf-header-animation-timing: 300ms;
97
+ pointer-events: none;
98
+ }
99
+
100
+ .ktl-sidebar-module_close_lN33m::before {
101
+ background: rgba(0, 0, 0, 0);
102
+ visibility: hidden;
103
+ }
104
+
105
+ .ktl-sidebar-module_close_lN33m > .ktl-sidebar-module_content_SzdiT {
106
+ transform: translateX(100%);
107
+ visibility: hidden;
108
+ }
@@ -0,0 +1,2 @@
1
+ import './index.css';
2
+ export { Sidebar, SidebarContext, useSidebarContext } from './sidebar.js';
@@ -0,0 +1,50 @@
1
+ import React, { createContext, useContext, useRef, useCallback } from 'react';
2
+ import cn from 'classnames';
3
+ import { RemoveScrollBar } from 'react-remove-scroll-bar';
4
+ import { useTheme } from '@rescui/ui-contexts';
5
+ import styles from './sidebar.module.css.js';
6
+ const SidebarContext = createContext({});
7
+
8
+ function useSidebarContext() {
9
+ return useContext(SidebarContext);
10
+ }
11
+
12
+ function Sidebar({
13
+ className,
14
+ classNameContent,
15
+ mode,
16
+ children,
17
+ isOpen,
18
+ onClose
19
+ }) {
20
+ const ref = useRef(null);
21
+ const theme = useTheme();
22
+ const onToggleClick = useCallback(e => {
23
+ if (e.currentTarget == e.target) onClose();
24
+ }, [onClose]);
25
+ const classes = cn(className, styles.popup, styles[theme || 'light'], {
26
+ [styles.close]: !isOpen,
27
+ [styles[`${mode}Mode`]]: Boolean(mode && styles[`${mode}Mode`])
28
+ });
29
+ const disableProps = {};
30
+
31
+ if (!isOpen) {
32
+ disableProps.tabIndex = -1;
33
+ disableProps.role = 'none';
34
+ }
35
+
36
+ return React.createElement(SidebarContext.Provider, {
37
+ value: {
38
+ onClose
39
+ }
40
+ }, React.createElement("div", {
41
+ className: classes,
42
+ onClick: onToggleClick,
43
+ ...disableProps
44
+ }, isOpen && React.createElement(RemoveScrollBar, null), React.createElement("div", {
45
+ ref: ref,
46
+ className: cn(classNameContent, styles.content)
47
+ }, children)));
48
+ }
49
+
50
+ export { Sidebar, SidebarContext, useSidebarContext };
@@ -0,0 +1,10 @@
1
+ var styles = {
2
+ "popup": "ktl-sidebar-module_popup_bidR1",
3
+ "tabletMode": "ktl-sidebar-module_tabletMode_vcf0T",
4
+ "mobileMode": "ktl-sidebar-module_mobileMode_yCmFY",
5
+ "content": "ktl-sidebar-module_content_SzdiT",
6
+ "dark": "ktl-sidebar-module_dark_GNaUl",
7
+ "light": "ktl-sidebar-module_light_OnGcf",
8
+ "close": "ktl-sidebar-module_close_lN33m"
9
+ };
10
+ export { styles as default };
@@ -0,0 +1,36 @@
1
+ .ktl-popup-module_popup_b34tS {
2
+ display: flex;
3
+ flex-direction: column;
4
+ }
5
+
6
+ .ktl-popup-module_menu_wZMEB {
7
+ padding: 0;
8
+ margin: 0;
9
+ }
10
+
11
+ .ktl-menu-header-module_header_nm8jO {
12
+ display: flex;
13
+ align-items: center;
14
+ justify-content: space-between;
15
+ padding-left: var(--ktl-box-block-l);
16
+ border-bottom: 1px solid transparent;
17
+ margin-bottom: var(--ktl-box-block-m);
18
+ }
19
+
20
+ .ktl-menu-header-module_light_3UtZR {
21
+ border-bottom-color: var(--ktl-divider-color);
22
+ }
23
+
24
+ .ktl-menu-header-module_dark_jdymL {
25
+ border-bottom-color: rgba(255, 255, 255, 0.30);
26
+ }
27
+
28
+ .ktl-menu-header-module_header_nm8jO > .ktl-menu-header-module_trigger_FbJ59 {
29
+ display: flex;
30
+ align-items: center;
31
+ justify-content: center;
32
+ cursor: pointer;
33
+ border-radius: 50%;
34
+ width: 52px;
35
+ height: 52px;
36
+ }
@@ -0,0 +1,3 @@
1
+ import './index.css';
2
+ export { SidebarMenu } from './sidebar-menu.js';
3
+ export { SidebarMenuHeader } from './menu-header.js';
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ import cn from 'classnames';
3
+ import { useTheme } from '@rescui/ui-contexts';
4
+ import { CloseIcon } from '@rescui/icons';
5
+ import { Button } from '@rescui/button';
6
+ import { useSidebarContext } from '@jetbrains/kotlin-web-site-ui/out/components/sidebar';
7
+ import styles from './menu-header.module.css.js';
8
+
9
+ function SidebarMenuHeader({
10
+ className,
11
+ children,
12
+ onClose
13
+ }) {
14
+ const theme = useTheme();
15
+ const {
16
+ onClose: onCloseContext
17
+ } = useSidebarContext();
18
+ const close = onClose || onCloseContext;
19
+ return React.createElement("div", {
20
+ className: cn(styles[theme || 'light'], className, styles.header)
21
+ }, children, React.createElement(Button, {
22
+ "aria-label": "close menu",
23
+ mode: "clear",
24
+ className: styles.trigger,
25
+ onClick: close,
26
+ icon: React.createElement(CloseIcon, null)
27
+ }));
28
+ }
29
+
30
+ export { SidebarMenuHeader };
@@ -0,0 +1,7 @@
1
+ var styles = {
2
+ "header": "ktl-menu-header-module_header_nm8jO",
3
+ "light": "ktl-menu-header-module_light_3UtZR",
4
+ "dark": "ktl-menu-header-module_dark_jdymL",
5
+ "trigger": "ktl-menu-header-module_trigger_FbJ59"
6
+ };
7
+ export { styles as default };
@@ -0,0 +1,20 @@
1
+ import React, { useCallback } from 'react';
2
+ import { MenuItem } from '@rescui/menu';
3
+
4
+ function SidebarMenuItem({
5
+ index,
6
+ isActive,
7
+ onClick,
8
+ ...props
9
+ }) {
10
+ const handleClick = useCallback(e => {
11
+ if (onClick) onClick(e, index);
12
+ }, [onClick, index]);
13
+ return React.createElement(MenuItem, {
14
+ selected: isActive,
15
+ ...props,
16
+ onClick: handleClick
17
+ });
18
+ }
19
+
20
+ export { SidebarMenuItem };
@@ -0,0 +1,5 @@
1
+ var styles = {
2
+ "popup": "ktl-popup-module_popup_b34tS",
3
+ "menu": "ktl-popup-module_menu_wZMEB"
4
+ };
5
+ export { styles as default };
@@ -0,0 +1,32 @@
1
+ import React from 'react';
2
+ import cn from 'classnames';
3
+ import { Menu } from '@rescui/menu';
4
+ import { Sidebar } from '@jetbrains/kotlin-web-site-ui/out/components/sidebar';
5
+ import { SidebarMenuItem } from './menu-item.js';
6
+ import styles from './popup.module.css.js';
7
+ import '@rescui/ui-contexts';
8
+ import '@rescui/icons';
9
+ import '@rescui/button';
10
+
11
+ function SidebarMenu({
12
+ className,
13
+ before,
14
+ activeIndex,
15
+ items,
16
+ onItemClick,
17
+ ...props
18
+ }) {
19
+ return React.createElement(Sidebar, { ...props,
20
+ className: cn(className, styles.popup)
21
+ }, before, React.createElement(Menu, {
22
+ className: styles.menu
23
+ }, items.map((item, i) => React.createElement(SidebarMenuItem, {
24
+ key: i,
25
+ isActive: i === activeIndex,
26
+ index: i,
27
+ ...item,
28
+ onClick: onItemClick
29
+ }))));
30
+ }
31
+
32
+ export { SidebarMenu };
@@ -17,7 +17,7 @@
17
17
  --ktl-mobile-dropdown-list-z-index: 907;
18
18
  --ktl-header-height-mobile: 52px;
19
19
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
20
- --rs-font-family-ui: var(--ktl-font-family-inter);
20
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
21
21
  }
22
22
 
23
23
  :root {
@@ -109,7 +109,7 @@
109
109
  --ktl-mobile-dropdown-list-z-index: 907;
110
110
  --ktl-header-height-mobile: 52px;
111
111
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
112
- --rs-font-family-ui: var(--ktl-font-family-inter);
112
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
113
113
  }
114
114
 
115
115
  :root {
@@ -17,7 +17,7 @@
17
17
  --ktl-mobile-dropdown-list-z-index: 907;
18
18
  --ktl-header-height-mobile: 52px;
19
19
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
20
- --rs-font-family-ui: var(--ktl-font-family-inter);
20
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
21
21
  }
22
22
 
23
23
  :root {
@@ -17,7 +17,7 @@
17
17
  --ktl-mobile-dropdown-list-z-index: 907;
18
18
  --ktl-header-height-mobile: 52px;
19
19
  --ktl-font-family-inter: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
20
- --rs-font-family-ui: var(--ktl-font-family-inter);
20
+ --ktl-focus-outline: rgba(107,87,255,.8) 0 0 0 4px;
21
21
  }
22
22
 
23
23
  :root {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@jetbrains/kotlin-web-site-ui",
3
3
  "description": "UI components for Kotlin web sites development",
4
- "version": "4.8.0-alpha.0",
4
+ "version": "4.8.0-alpha.10",
5
5
  "license": "Apache-2.0",
6
6
  "author": "JetBrains",
7
7
  "files": [
@@ -48,15 +48,16 @@
48
48
  "@babel/preset-typescript": "^7.13.0",
49
49
  "@babel/register": "^7.11.5",
50
50
  "@react-hook/resize-observer": "^1.2.5",
51
- "@rescui/button": "^0.2.1",
51
+ "@rescui/button": "^0.10.0",
52
52
  "@rescui/checkbox": "^0.1.0",
53
53
  "@rescui/focus-manager": "^0.1.1",
54
- "@rescui/icons": "^0.8.2",
54
+ "@rescui/icons": "^0.12.0",
55
55
  "@rescui/input": "^0.4.6",
56
+ "@rescui/menu": "^0.9.4",
56
57
  "@rescui/switcher": "^0.2.2",
57
58
  "@rescui/tooltip": "^0.1.2",
58
- "@rescui/typography": "^0.7.3",
59
- "@rescui/ui-contexts": "^0.1.3",
59
+ "@rescui/typography": "^0.11.0",
60
+ "@rescui/ui-contexts": "^0.4.3",
60
61
  "@rollup/plugin-babel": "^5.3.1",
61
62
  "@rollup/plugin-json": "^4.1.0",
62
63
  "@rollup/plugin-node-resolve": "^13.1.3",
@@ -1,35 +0,0 @@
1
- import * as React from 'react';
2
-
3
- var _path;
4
-
5
- function _extends() {
6
- _extends = Object.assign || function (target) {
7
- for (var i = 1; i < arguments.length; i++) {
8
- var source = arguments[i];
9
-
10
- for (var key in source) {
11
- if (Object.prototype.hasOwnProperty.call(source, key)) {
12
- target[key] = source[key];
13
- }
14
- }
15
- }
16
-
17
- return target;
18
- };
19
-
20
- return _extends.apply(this, arguments);
21
- }
22
-
23
- const SvgGithubLogo = props => /*#__PURE__*/React.createElement("svg", _extends({
24
- width: 18,
25
- height: 18,
26
- fill: "none",
27
- xmlns: "http://www.w3.org/2000/svg"
28
- }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
29
- fillRule: "evenodd",
30
- clipRule: "evenodd",
31
- d: "M17.9 9.2a8.94 8.94 0 0 1-6.4 8.6.392.392 0 0 1-.4-.4v-3a1.58 1.58 0 0 0-.5-1.2 3.734 3.734 0 0 0 3.9-3.4 4.244 4.244 0 0 0-.9-3.5c.29-.79.217-1.669-.2-2.4a7.24 7.24 0 0 0-2.4.9c-1.44-.4-2.96-.4-4.4 0a4.62 4.62 0 0 0-2.3-.9h-.1A2.75 2.75 0 0 0 4 6.3a4.075 4.075 0 0 0-.9 3.5A3.81 3.81 0 0 0 7 13.2c-.198.148-.34.36-.4.6a2.638 2.638 0 0 0-.1.7 1.943 1.943 0 0 1-2.2-.5c-.5-.8-.9-1.2-1.4-1.3-.5-.1-.6.2-.6.2.079.26.26.476.5.6.387.216.674.575.8 1a1.827 1.827 0 0 0 1.2 1.2 3.915 3.915 0 0 0 1.9 0v1.7a.297.297 0 0 1-.4.3A8.82 8.82 0 0 1 0 9.2a8.95 8.95 0 0 1 17.9 0Z",
32
- fill: "currentColor"
33
- })));
34
-
35
- export { SvgGithubLogo as default };
@@ -1,33 +0,0 @@
1
- import * as React from 'react';
2
-
3
- var _path;
4
-
5
- function _extends() {
6
- _extends = Object.assign || function (target) {
7
- for (var i = 1; i < arguments.length; i++) {
8
- var source = arguments[i];
9
-
10
- for (var key in source) {
11
- if (Object.prototype.hasOwnProperty.call(source, key)) {
12
- target[key] = source[key];
13
- }
14
- }
15
- }
16
-
17
- return target;
18
- };
19
-
20
- return _extends.apply(this, arguments);
21
- }
22
-
23
- const SvgRedditLogo = props => /*#__PURE__*/React.createElement("svg", _extends({
24
- width: 20,
25
- height: 18,
26
- fill: "none",
27
- xmlns: "http://www.w3.org/2000/svg"
28
- }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
29
- d: "M20 9.068a2.183 2.183 0 0 0-2.186-2.186 2.2 2.2 0 0 0-1.524.61c-1.505-1.076-3.566-1.775-5.86-1.865L11.434.932l3.261.699a1.559 1.559 0 0 0 3.119-.072A1.56 1.56 0 0 0 16.254 0c-.609 0-1.147.358-1.397.878l-3.638-.77a.381.381 0 0 0-.287.053.347.347 0 0 0-.161.251L9.659 5.645c-2.33.072-4.426.77-5.95 1.864a2.2 2.2 0 0 0-1.523-.61 2.183 2.183 0 0 0-.896 4.176c-.036.22-.054.441-.053.664 0 3.368 3.924 6.11 8.763 6.11s8.764-2.723 8.764-6.11c0-.223-.018-.444-.054-.664A2.208 2.208 0 0 0 20 9.069Zm-15.018 1.56a1.56 1.56 0 0 1 3.118 0c0 .86-.698 1.559-1.559 1.559-.86.017-1.559-.7-1.559-1.56Zm8.728 4.139c-1.076 1.075-3.119 1.147-3.71 1.147-.61 0-2.652-.09-3.71-1.147a.4.4 0 0 1 0-.573.4.4 0 0 1 .574 0c.68.68 2.115.913 3.136.913 1.022 0 2.473-.232 3.136-.913a.401.401 0 0 1 .574 0 .436.436 0 0 1 0 .573Zm-.287-2.563a1.56 1.56 0 0 1 0-3.118c.86 0 1.56.699 1.56 1.56 0 .841-.7 1.558-1.56 1.558Z",
30
- fill: "currentColor"
31
- })));
32
-
33
- export { SvgRedditLogo as default };
@@ -1,33 +0,0 @@
1
- import * as React from 'react';
2
-
3
- var _path;
4
-
5
- function _extends() {
6
- _extends = Object.assign || function (target) {
7
- for (var i = 1; i < arguments.length; i++) {
8
- var source = arguments[i];
9
-
10
- for (var key in source) {
11
- if (Object.prototype.hasOwnProperty.call(source, key)) {
12
- target[key] = source[key];
13
- }
14
- }
15
- }
16
-
17
- return target;
18
- };
19
-
20
- return _extends.apply(this, arguments);
21
- }
22
-
23
- const SvgSlackLogo = props => /*#__PURE__*/React.createElement("svg", _extends({
24
- width: 18,
25
- height: 18,
26
- fill: "none",
27
- xmlns: "http://www.w3.org/2000/svg"
28
- }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
29
- d: "M6.63 9.49a1.895 1.895 0 0 0-1.89 1.89v4.73a1.89 1.89 0 1 0 3.78 0v-4.73a1.895 1.895 0 0 0-1.89-1.89ZM.01 11.38a1.89 1.89 0 1 0 3.78 0V9.49H1.91a1.897 1.897 0 0 0-1.9 1.89ZM6.63 0a1.89 1.89 0 1 0 0 3.78h1.89v-1.9A1.886 1.886 0 0 0 6.63 0ZM1.89 8.53h4.74a1.89 1.89 0 1 0 0-3.78H1.89a1.89 1.89 0 0 0 0 3.78Zm14.2-3.79a1.895 1.895 0 0 0-1.89 1.89v1.89h1.89a1.89 1.89 0 1 0 0-3.78ZM9.48 1.89v4.74a1.89 1.89 0 1 0 3.78 0V1.89a1.89 1.89 0 1 0-3.78 0Zm3.78 14.22a1.895 1.895 0 0 0-1.89-1.89H9.48v1.89a1.89 1.89 0 1 0 3.78 0Zm2.85-6.62h-4.74a1.89 1.89 0 1 0 0 3.78h4.74a1.89 1.89 0 1 0 0-3.78Z",
30
- fill: "currentColor"
31
- })));
32
-
33
- export { SvgSlackLogo as default };
@@ -1,36 +0,0 @@
1
- import * as React from 'react';
2
-
3
- var _path, _path2;
4
-
5
- function _extends() {
6
- _extends = Object.assign || function (target) {
7
- for (var i = 1; i < arguments.length; i++) {
8
- var source = arguments[i];
9
-
10
- for (var key in source) {
11
- if (Object.prototype.hasOwnProperty.call(source, key)) {
12
- target[key] = source[key];
13
- }
14
- }
15
- }
16
-
17
- return target;
18
- };
19
-
20
- return _extends.apply(this, arguments);
21
- }
22
-
23
- const SvgStackoverflowLogo = props => /*#__PURE__*/React.createElement("svg", _extends({
24
- width: 16,
25
- height: 19,
26
- fill: "none",
27
- xmlns: "http://www.w3.org/2000/svg"
28
- }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
29
- d: "M13.527 17.27V12.19h1.685v6.764H0v-6.763h1.685v5.078h11.842Z",
30
- fill: "currentColor"
31
- })), _path2 || (_path2 = /*#__PURE__*/React.createElement("path", {
32
- d: "m3.546 11.71 8.274 1.73.35-1.664-8.274-1.73-.35 1.664ZM4.64 7.77l7.661 3.568.7-1.532-7.66-3.59-.7 1.554Zm2.123-3.765 6.501 5.407 1.073-1.292-6.501-5.406-1.073 1.291ZM10.966 0 9.609 1.007l5.034 6.785L16 6.785 10.966 0ZM3.37 15.562h8.448v-1.685H3.371v1.685Z",
33
- fill: "currentColor"
34
- })));
35
-
36
- export { SvgStackoverflowLogo as default };
@@ -1,33 +0,0 @@
1
- import * as React from 'react';
2
-
3
- var _path;
4
-
5
- function _extends() {
6
- _extends = Object.assign || function (target) {
7
- for (var i = 1; i < arguments.length; i++) {
8
- var source = arguments[i];
9
-
10
- for (var key in source) {
11
- if (Object.prototype.hasOwnProperty.call(source, key)) {
12
- target[key] = source[key];
13
- }
14
- }
15
- }
16
-
17
- return target;
18
- };
19
-
20
- return _extends.apply(this, arguments);
21
- }
22
-
23
- const SvgTwitterLogo = props => /*#__PURE__*/React.createElement("svg", _extends({
24
- width: 20,
25
- height: 17,
26
- fill: "none",
27
- xmlns: "http://www.w3.org/2000/svg"
28
- }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
29
- d: "M6.29 16.25A11.59 11.59 0 0 0 18 4.58v-.53a8.3 8.3 0 0 0 2-2.13 8.36 8.36 0 0 1-2.36.65A4.16 4.16 0 0 0 19.45.3a8.19 8.19 0 0 1-2.61 1 4.11 4.11 0 0 0-7 3.75A11.7 11.7 0 0 1 1.39.75a4.11 4.11 0 0 0 1.27 5.48A4.06 4.06 0 0 1 .8 5.71a4.11 4.11 0 0 0 3.29 4 4.13 4.13 0 0 1-1.85.07 4.12 4.12 0 0 0 3.83 2.85A8.25 8.25 0 0 1 1 14.47a7.94 7.94 0 0 1-1-.06 11.69 11.69 0 0 0 6.29 1.84Z",
30
- fill: "currentColor"
31
- })));
32
-
33
- export { SvgTwitterLogo as default };
@@ -1,35 +0,0 @@
1
- import * as React from 'react';
2
-
3
- var _path;
4
-
5
- function _extends() {
6
- _extends = Object.assign || function (target) {
7
- for (var i = 1; i < arguments.length; i++) {
8
- var source = arguments[i];
9
-
10
- for (var key in source) {
11
- if (Object.prototype.hasOwnProperty.call(source, key)) {
12
- target[key] = source[key];
13
- }
14
- }
15
- }
16
-
17
- return target;
18
- };
19
-
20
- return _extends.apply(this, arguments);
21
- }
22
-
23
- const SvgYoutubeLogo = props => /*#__PURE__*/React.createElement("svg", _extends({
24
- width: 24,
25
- height: 24,
26
- fill: "none",
27
- xmlns: "http://www.w3.org/2000/svg"
28
- }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
29
- fillRule: "evenodd",
30
- clipRule: "evenodd",
31
- d: "M21.005 5.617c.43.633.702 1.36.795 2.119.124 1.146.191 2.299.2 3.452v1.618a34.375 34.375 0 0 1-.2 3.454 4.808 4.808 0 0 1-.795 2.116 2.772 2.772 0 0 1-2.003.904c-2.8.215-7.002.222-7.002.222s-5.2-.05-6.8-.214a3.27 3.27 0 0 1-2.205-.912 4.8 4.8 0 0 1-.795-2.117 34.354 34.354 0 0 1-.2-3.453v-1.618c.009-1.154.075-2.306.2-3.452.093-.76.365-1.486.795-2.12a2.76 2.76 0 0 1 2.003-.901c2.799-.217 6.997-.217 6.997-.217h.01s4.198 0 6.997.217a2.76 2.76 0 0 1 2.003.902ZM15.755 12 9.501 8.249v7.502L15.754 12Z",
32
- fill: "currentColor"
33
- })));
34
-
35
- export { SvgYoutubeLogo as default };
@@ -1,46 +0,0 @@
1
- .ktl-nav-item-module_navItem_gRy22 {
2
- padding: 0 12px;
3
- height: 52px;
4
- cursor: pointer;
5
- display: inline-flex;
6
- align-items: center;
7
- position: relative;
8
- box-sizing: border-box;
9
- border: 0;
10
- background: none;
11
- color: #ffffff;
12
- }
13
- .ktl-nav-item-module_navItem_gRy22:hover {
14
- background: rgba(255, 255, 255, 0.10);
15
- }
16
-
17
- .ktl-nav-item-module_rightIcon_XlxMF {
18
- flex-direction: row-reverse;
19
- }
20
-
21
- .ktl-nav-item-module_navItemActive_gI8Nv::after {
22
- content: '';
23
- width: 100%;
24
- height: 2px;
25
- background: #ffffff;
26
- position: absolute;
27
- bottom: 0;
28
- left: 0;
29
- }
30
-
31
- .ktl-nav-item-module_title_9VXwr {
32
- display: block;
33
- }
34
-
35
- .ktl-nav-item-module_titleWithIcon_CVqpS {
36
- margin-left: 8px;
37
- }
38
-
39
- .ktl-nav-item-module_titleWithIconRight_FwEnm {
40
- margin-left: 0;
41
- margin-right: 8px;
42
- }
43
-
44
- .ktl-nav-item-module_titleWithoutIcon_XgnMl {
45
- margin: 0;
46
- }
@@ -1,34 +0,0 @@
1
- import './index.css';
2
- import React from 'react';
3
- import cn from 'classnames';
4
- import styles from './nav-item.module.pcss.js';
5
- import { useTextStyles } from '@rescui/typography';
6
-
7
- const NavItem = ({
8
- children,
9
- icon,
10
- active,
11
- iconPosition,
12
- onClick
13
- }) => {
14
- const textCn = useTextStyles();
15
- const navItemClass = cn(styles.navItem, {
16
- [styles.navItemActive]: active,
17
- [styles.rightIcon]: iconPosition === 'right'
18
- });
19
- const textStyles = cn(styles.title, {
20
- [styles.titleWithIcon]: icon,
21
- [styles.titleWithIconRight]: iconPosition === 'right',
22
- [styles.titleWithoutIcon]: !children
23
- });
24
- return React.createElement("div", {
25
- className: navItemClass,
26
- onClick: onClick
27
- }, icon ? icon : null, React.createElement("div", {
28
- className: cn(textCn('rs-text-2', {
29
- hardness: 'hard'
30
- }), textStyles)
31
- }, children));
32
- };
33
-
34
- export { NavItem, NavItem as default };
@@ -1,10 +0,0 @@
1
- var styles = {
2
- "navItem": "ktl-nav-item-module_navItem_gRy22",
3
- "rightIcon": "ktl-nav-item-module_rightIcon_XlxMF",
4
- "navItemActive": "ktl-nav-item-module_navItemActive_gI8Nv",
5
- "title": "ktl-nav-item-module_title_9VXwr",
6
- "titleWithIcon": "ktl-nav-item-module_titleWithIcon_CVqpS",
7
- "titleWithIconRight": "ktl-nav-item-module_titleWithIconRight_FwEnm",
8
- "titleWithoutIcon": "ktl-nav-item-module_titleWithoutIcon_XgnMl"
9
- };
10
- export { styles as default };