@jetbrains/kotlin-web-site-ui 4.13.0-alpha.7 → 4.13.0

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.
@@ -10,10 +10,10 @@ const BREAKPOINTS_NAMES = Object.freeze(Object.keys(BREAKPOINTS));
10
10
 
11
11
  function isBreakpointKey(key) {
12
12
  return BREAKPOINTS_NAMES.includes(key);
13
- } // --- Generate media queries for min <= width <= max ---
13
+ } // --- Generate media queries for min < width <= max ---
14
14
 
15
15
 
16
- function generateInMediaItem([name, value], index, list) {
16
+ function generateOnlyMediaItem([name, value], index, list) {
17
17
  if (!isBreakpointKey(name)) throw new Error(`Invalid breakpoint name: ${name}`);
18
18
  let result = value === Infinity ? 'width' : `width <= ${value}px`;
19
19
 
@@ -24,23 +24,25 @@ function generateInMediaItem([name, value], index, list) {
24
24
  return [name, `(${result})`];
25
25
  }
26
26
 
27
- const BREAKPOINTS_IN_MEDIA = Object.fromEntries(Object.entries(BREAKPOINTS).map(generateInMediaItem)); // --- Generate media queries for width > max ---
27
+ const BREAKPOINTS_ONLY_MEDIA = Object.fromEntries(Object.entries(BREAKPOINTS).map(generateOnlyMediaItem)); // --- Generate media queries for width > max ---
28
28
 
29
- function generateMoreMediaItem([name, value]) {
29
+ function generateUpMediaItem([name], index, list) {
30
30
  if (!isBreakpointKey(name)) throw new Error(`Invalid breakpoint name: ${name}`);
31
- return [name, `(width > ${value}px)`];
31
+ if (index === 0) return null;
32
+ return [name, `(${list[index - 1][1]}px < width)`];
32
33
  }
33
34
 
34
- const BREAKPOINTS_MORE_MEDIA = Object.fromEntries(Object.entries(BREAKPOINTS).filter(([, value]) => value !== Infinity).map(generateMoreMediaItem)); // --- Generate media queries for width < min ---
35
+ const BREAKPOINTS_UP_MEDIA = Object.fromEntries(Object.entries(BREAKPOINTS).map(generateUpMediaItem).filter(function filterNull(v) {
36
+ return v !== null;
37
+ })); // --- Generate media queries for width < min ---
35
38
 
36
- function generateLessMediaItem([name], index, list) {
39
+ function generateDownMediaItem([name, value]) {
37
40
  if (!isBreakpointKey(name)) throw new Error(`Invalid breakpoint name: ${name}`);
38
- if (index === 0) return null;
39
- const value = list[index - 1][1];
41
+ if (value === Infinity) return null;
40
42
  return [name, `(width <= ${value}px)`];
41
43
  }
42
44
 
43
- const BREAKPOINTS_LESS_MEDIA = Object.fromEntries(Object.entries(BREAKPOINTS).map(generateLessMediaItem).filter(Boolean)); // ===== BACKWARD COMPATIBILITY =====
45
+ const BREAKPOINTS_DOWN_MEDIA = Object.fromEntries(Object.entries(BREAKPOINTS).map(generateDownMediaItem).filter(Boolean)); // ===== BACKWARD COMPATIBILITY =====
44
46
  // --- Generate media queries for (max-width: max) ---
45
47
 
46
48
  function generateMaxMediaItem([name, value]) {
@@ -48,7 +50,7 @@ function generateMaxMediaItem([name, value]) {
48
50
  return [name, `(max-width: ${value}px)`];
49
51
  }
50
52
 
51
- const BREAKPOINTS_MAX_MEDIA = Object.fromEntries(Object.entries(BREAKPOINTS).filter(([, value]) => value !== Infinity).map(generateMaxMediaItem)); // --- Generate media queries for (max-width: max) ---
53
+ const BREAKPOINTS_MAX_MEDIA = Object.fromEntries(Object.entries(BREAKPOINTS).filter(([, value]) => value !== Infinity).map(generateMaxMediaItem)); // --- Generate media queries for (min-width: min) ---
52
54
 
53
55
  function generateMinMediaItem([name, value]) {
54
56
  if (!isBreakpointKey(name)) throw new Error(`Invalid breakpoint name: ${name}`);
@@ -56,4 +58,4 @@ function generateMinMediaItem([name, value]) {
56
58
  }
57
59
 
58
60
  const BREAKPOINTS_MIN_MEDIA = Object.fromEntries(Object.entries(BREAKPOINTS).filter(([, value]) => value !== Infinity).map(generateMinMediaItem));
59
- export { BREAKPOINTS, BREAKPOINTS_IN_MEDIA, BREAKPOINTS_LESS_MEDIA, BREAKPOINTS_MAX_MEDIA, BREAKPOINTS_MIN_MEDIA, BREAKPOINTS_MORE_MEDIA, BREAKPOINTS_NAMES };
61
+ export { BREAKPOINTS, BREAKPOINTS_DOWN_MEDIA, BREAKPOINTS_MAX_MEDIA, BREAKPOINTS_MIN_MEDIA, BREAKPOINTS_NAMES, BREAKPOINTS_ONLY_MEDIA, BREAKPOINTS_UP_MEDIA };
@@ -1,5 +1,5 @@
1
1
  import { useMedia } from 'the-platform/useMedia';
2
- import { BREAKPOINTS_MAX_MEDIA, BREAKPOINTS_MORE_MEDIA } from './constants.js';
2
+ import { BREAKPOINTS_MAX_MEDIA, BREAKPOINTS_UP_MEDIA } from './constants.js';
3
3
 
4
4
  function useMS() {
5
5
  return useMedia(BREAKPOINTS_MAX_MEDIA.MS, false);
@@ -22,7 +22,7 @@ function useDS() {
22
22
  }
23
23
 
24
24
  function useDL() {
25
- return useMedia(BREAKPOINTS_MORE_MEDIA.DS, false);
25
+ return useMedia(BREAKPOINTS_UP_MEDIA.DS, false);
26
26
  }
27
27
 
28
28
  export { useDL, useDS, useML, useMS, useTL, useTS };
@@ -1,2 +1,2 @@
1
- export { BREAKPOINTS, BREAKPOINTS_IN_MEDIA, BREAKPOINTS_LESS_MEDIA, BREAKPOINTS_MAX_MEDIA, BREAKPOINTS_MIN_MEDIA, BREAKPOINTS_MORE_MEDIA, BREAKPOINTS_NAMES } from './constants.js';
1
+ export { BREAKPOINTS, BREAKPOINTS_DOWN_MEDIA, BREAKPOINTS_MAX_MEDIA, BREAKPOINTS_MIN_MEDIA, BREAKPOINTS_NAMES, BREAKPOINTS_ONLY_MEDIA, BREAKPOINTS_UP_MEDIA } from './constants.js';
2
2
  export { useDL, useDS, useML, useMS, useTL, useTS } from './hooks.js';
@@ -8,19 +8,19 @@
8
8
  @custom-media --ktl-ts-min (min-width: 809px);
9
9
  @custom-media --ktl-tl-min (min-width: 1001px);
10
10
  @custom-media --ktl-ds-min (min-width: 1191px);
11
- @custom-media --ktl-ms-in (width <= 472px);
12
- @custom-media --ktl-ml-in (472px < width <= 640px);
13
- @custom-media --ktl-ts-in (640px < width <= 808px);
14
- @custom-media --ktl-tl-in (808px < width <= 1000px);
15
- @custom-media --ktl-ds-in (1000px < width <= 1190px);
16
- @custom-media --ktl-dl-in (1190px < width);
17
- @custom-media --ktl-ms-more (width > 472px);
18
- @custom-media --ktl-ml-more (width > 640px);
19
- @custom-media --ktl-ts-more (width > 808px);
20
- @custom-media --ktl-tl-more (width > 1000px);
21
- @custom-media --ktl-ds-more (width > 1190px);
22
- @custom-media --ktl-ml-less (width <= 472px);
23
- @custom-media --ktl-ts-less (width <= 640px);
24
- @custom-media --ktl-tl-less (width <= 808px);
25
- @custom-media --ktl-ds-less (width <= 1000px);
26
- @custom-media --ktl-dl-less (width <= 1190px);
11
+ @custom-media --ktl-ms-only (width <= 472px);
12
+ @custom-media --ktl-ml-only (472px < width <= 640px);
13
+ @custom-media --ktl-ts-only (640px < width <= 808px);
14
+ @custom-media --ktl-tl-only (808px < width <= 1000px);
15
+ @custom-media --ktl-ds-only (1000px < width <= 1190px);
16
+ @custom-media --ktl-dl-only (1190px < width);
17
+ @custom-media --ktl-ml-up (472px < width);
18
+ @custom-media --ktl-ts-up (640px < width);
19
+ @custom-media --ktl-tl-up (808px < width);
20
+ @custom-media --ktl-ds-up (1000px < width);
21
+ @custom-media --ktl-dl-up (1190px < width);
22
+ @custom-media --ktl-ms-down (width <= 472px);
23
+ @custom-media --ktl-ml-down (width <= 640px);
24
+ @custom-media --ktl-ts-down (width <= 808px);
25
+ @custom-media --ktl-tl-down (width <= 1000px);
26
+ @custom-media --ktl-ds-down (width <= 1190px);
@@ -5,42 +5,42 @@
5
5
  --ktl-layout-width: 1144px;
6
6
  }
7
7
 
8
- @media (1000px < width <= 1190px) {.ktl-layout-v2,
8
+ @media (--ktl-ds-in) {.ktl-layout-v2,
9
9
  .ktl-layout-to-2 .ktl-layout,
10
10
  .ktl-layout-to-2 .ktl-layout {
11
11
  --ktl-layout-width: 952px;
12
12
  }
13
13
  }
14
14
 
15
- @media (width <= 808px) {.ktl-layout-v2,
15
+ @media (--ktl-tl-less) {.ktl-layout-v2,
16
16
  .ktl-layout-to-2 .ktl-layout,
17
17
  .ktl-layout-to-2 .ktl-layout {
18
18
  --ktl-layout-spacing: 48px;
19
19
  }
20
20
  }
21
21
 
22
- @media (808px < width <= 1000px) {.ktl-layout-v2,
22
+ @media (--ktl-tl-in) {.ktl-layout-v2,
23
23
  .ktl-layout-to-2 .ktl-layout,
24
24
  .ktl-layout-to-2 .ktl-layout {
25
25
  --ktl-layout-width: 760px;
26
26
  }
27
27
  }
28
28
 
29
- @media (640px < width <= 808px) {.ktl-layout-v2,
29
+ @media (--ktl-ts-in) {.ktl-layout-v2,
30
30
  .ktl-layout-to-2 .ktl-layout,
31
31
  .ktl-layout-to-2 .ktl-layout {
32
32
  --ktl-layout-width: 568px;
33
33
  }
34
34
  }
35
35
 
36
- @media (472px < width <= 640px) {.ktl-layout-v2,
36
+ @media (--ktl-ml-in) {.ktl-layout-v2,
37
37
  .ktl-layout-to-2 .ktl-layout,
38
38
  .ktl-layout-to-2 .ktl-layout {
39
39
  --ktl-layout-width: 424px;
40
40
  }
41
41
  }
42
42
 
43
- @media (width <= 472px) {.ktl-layout-v2,
43
+ @media (--ktl-ms-in) {.ktl-layout-v2,
44
44
  .ktl-layout-to-2 .ktl-layout,
45
45
  .ktl-layout-to-2 .ktl-layout {
46
46
  --ktl-layout-width: 312px;
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.13.0-alpha.7",
4
+ "version": "4.13.0",
5
5
  "license": "Apache-2.0",
6
6
  "author": "JetBrains",
7
7
  "files": [