@de-kit/st-ui 0.1.0 → 0.1.2

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 (50) hide show
  1. package/README.md +19 -17
  2. package/dist/components/button/button.cjs +4 -7
  3. package/dist/components/button/button.cjs.map +1 -1
  4. package/dist/components/button/button.d.cts +4 -5
  5. package/dist/components/button/button.d.ts +4 -5
  6. package/dist/components/button/button.js +4 -5
  7. package/dist/components/button/button.js.map +1 -1
  8. package/dist/components/button/button.scss +94 -0
  9. package/dist/components/button/index.d.cts +2 -2
  10. package/dist/components/button/index.d.ts +2 -2
  11. package/dist/components/checkbox/checkbox.cjs +4 -6
  12. package/dist/components/checkbox/checkbox.cjs.map +1 -1
  13. package/dist/components/checkbox/checkbox.js +4 -4
  14. package/dist/components/checkbox/checkbox.js.map +1 -1
  15. package/dist/components/checkbox/{checkbox.module.scss → checkbox.scss} +11 -13
  16. package/dist/components/input/input.cjs +2 -4
  17. package/dist/components/input/input.cjs.map +1 -1
  18. package/dist/components/input/input.js +2 -2
  19. package/dist/components/input/input.js.map +1 -1
  20. package/dist/components/input/{input.module.scss → input.scss} +11 -13
  21. package/dist/components/radio/radio.cjs +4 -6
  22. package/dist/components/radio/radio.cjs.map +1 -1
  23. package/dist/components/radio/radio.js +4 -4
  24. package/dist/components/radio/radio.js.map +1 -1
  25. package/dist/components/radio/{radio.module.scss → radio.scss} +14 -13
  26. package/dist/components/spinner/spinner.cjs +2 -4
  27. package/dist/components/spinner/spinner.cjs.map +1 -1
  28. package/dist/components/spinner/spinner.js +2 -2
  29. package/dist/components/spinner/spinner.js.map +1 -1
  30. package/dist/components/spinner/{spinner.module.scss → spinner.scss} +3 -3
  31. package/dist/components/textarea/textarea.cjs +4 -6
  32. package/dist/components/textarea/textarea.cjs.map +1 -1
  33. package/dist/components/textarea/textarea.js +4 -4
  34. package/dist/components/textarea/textarea.js.map +1 -1
  35. package/dist/components/textarea/textarea.scss +58 -0
  36. package/dist/index.cjs +1 -0
  37. package/dist/index.d.cts +2 -2
  38. package/dist/index.d.ts +2 -2
  39. package/dist/index.js +1 -0
  40. package/dist/lib/cn.cjs +2 -2
  41. package/dist/lib/cn.cjs.map +1 -1
  42. package/dist/lib/cn.js +2 -2
  43. package/dist/lib/cn.js.map +1 -1
  44. package/dist/styles/global.scss +17 -17
  45. package/dist/styles/mixins.scss +22 -24
  46. package/dist/styles/vars.scss +31 -34
  47. package/package.json +2 -2
  48. package/dist/_virtual/_rolldown/runtime.cjs +0 -22
  49. package/dist/components/button/button.module.scss +0 -95
  50. package/dist/components/textarea/textarea.module.scss +0 -60
@@ -1,5 +1,3 @@
1
- @import './vars.scss';
2
-
3
1
  @mixin btn-focus {
4
2
  &:focus {
5
3
  outline: initial;
@@ -10,7 +8,7 @@
10
8
  }
11
9
 
12
10
  &:focus-visible {
13
- outline: 1px solid $colorBlack;
11
+ outline: 1px solid var(--color-black);
14
12
  background: transparent;
15
13
  }
16
14
  }
@@ -39,12 +37,12 @@
39
37
  padding: 0 9px;
40
38
  font-size: 14px;
41
39
  font-weight: 700;
42
- color: $colorWhite;
43
- background-color: $colorBlue;
40
+ color: var(--color-white);
41
+ background-color: var(--color-blue);
44
42
  border: none;
45
43
  border-radius: 5px;
46
44
  cursor: pointer;
47
- transition: $tr;
45
+ transition: all var(--default-transition-duration) var(--default-transition-timing-function);
48
46
 
49
47
  &:disabled {
50
48
  background-color: rgba(0, 0, 0, 0.1);
@@ -54,19 +52,19 @@
54
52
 
55
53
  &:active,
56
54
  &:hover {
57
- background-color: $colorBlack;
55
+ background-color: var(--color-black);
58
56
  }
59
57
  }
60
58
 
61
59
  @mixin input-min {
62
60
  height: 38px;
63
- border-radius: $borderRadius;
64
- border: 4px solid $colorWhite;
61
+ border-radius: var(--radius-sm);
62
+ border: 4px solid var(--color-white);
65
63
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
66
64
  padding: 0 15px;
67
65
  font-size: 14px;
68
- transition: $tr;
69
- background-color: $colorWhite;
66
+ transition: all var(--default-transition-duration) var(--default-transition-timing-function);
67
+ background-color: var(--color-white);
70
68
  appearance: none;
71
69
  outline: none;
72
70
 
@@ -76,10 +74,10 @@
76
74
  }
77
75
 
78
76
  &--recommend {
79
- background-color: rgba(#ffbf00, 0.1);
77
+ background-color: color-mix(in srgb, var(--color-yellow) 10%, transparent);
80
78
 
81
79
  &:not([value='']) {
82
- background-color: $colorWhite;
80
+ background-color: var(--color-white);
83
81
  }
84
82
  }
85
83
 
@@ -87,14 +85,14 @@
87
85
  background-color: rgba(#ff002a, 0.1);
88
86
 
89
87
  &:valid {
90
- background-color: $colorWhite;
88
+ background-color: var(--color-white);
91
89
  }
92
90
  }
93
91
 
94
92
  &:disabled {
95
93
  background-color: rgba(0, 0, 0, 0.1);
96
- border-color: $borderColor;
97
- color: rgba($colorBlack, 0.5);
94
+ border-color: var(--color-border);
95
+ color: color-mix(in srgb, var(--color-black) 50%, transparent);
98
96
  outline-offset: 0;
99
97
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
100
98
 
@@ -105,10 +103,10 @@
105
103
  }
106
104
 
107
105
  &::-webkit-input-placeholder {
108
- color: rgba($colorBlack, 0.5);
106
+ color: color-mix(in srgb, var(--color-black) 50%, transparent);
109
107
  }
110
108
 
111
- @media (max-width: $tabletWidth) {
109
+ @media (max-width: 680px) {
112
110
  font-size: 16px;
113
111
  }
114
112
  }
@@ -122,7 +120,7 @@
122
120
  display: block;
123
121
  width: calc(100% - 1px);
124
122
  height: 2px;
125
- background-color: $colorBlack;
123
+ background-color: var(--color-black);
126
124
  }
127
125
 
128
126
  @mixin popupShow {
@@ -141,11 +139,11 @@
141
139
  z-index: 0;
142
140
  max-width: $maxWidth;
143
141
  padding: $padding;
144
- box-shadow: $popupBoxShadow;
145
- background: $colorWhite;
142
+ box-shadow: var(--shadow-xl);
143
+ background: var(--color-white);
146
144
  border-radius: 5px;
147
145
  text-align: left;
148
- color: $colorBlack;
146
+ color: var(--color-black);
149
147
  }
150
148
 
151
149
  @mixin buttonArea($width: 20px) {
@@ -168,7 +166,7 @@
168
166
  line-height: 20px;
169
167
  font-weight: 900;
170
168
 
171
- @media (min-width: $tabletWidth) {
169
+ @media (min-width: 680px) {
172
170
  margin-bottom: 15px;
173
171
  }
174
172
  }
@@ -177,7 +175,7 @@
177
175
  display: flex;
178
176
  align-items: center;
179
177
  justify-content: center;
180
- border: 1px solid $borderColor;
178
+ border: 1px solid var(--color-border);
181
179
  overflow: hidden;
182
180
 
183
181
  img {
@@ -1,39 +1,36 @@
1
- // Токены splittest. Источник: splittest-frontend/src/app/styles/vars.scss
2
- $colorBlack: #000;
3
- $colorWhite: #fff;
1
+ // Токены splittest. Имена как у Tailwind, значения свои — не дефолтная шкала.
2
+ // В @media custom properties нельзя: там те же px, что у --breakpoint-*.
3
+ :root {
4
+ --color-black: #000;
5
+ --color-white: #fff;
6
+ --color-blue: #002bff;
7
+ --color-red: #ff0000;
8
+ --color-green: #00a66f;
9
+ --color-yellow: #ffbf00;
10
+ --color-orange: #ff7f00;
11
+ --color-gray: #808080;
12
+ --color-neutral-100: #f7f7f7;
13
+ --color-neutral-200: #e5e5e5;
14
+ --color-neutral-500: #727272;
15
+ --color-input: #d9d9d9;
16
+ --color-border: color-mix(in srgb, var(--color-black) 10%, transparent);
17
+ --color-sidebar: color-mix(in srgb, var(--color-black) 3%, transparent);
4
18
 
5
- $colorBlue: #002bff;
6
- $colorRed: #ff0000;
7
- $colorGreen: #00a66f;
8
- $colorYellow: #ffbf00;
9
- $colorGray: #e5e5e5;
10
- $colorGrayIcon: #727272;
11
- $colorGrayTwo: #808080;
12
- $colorOrange: #ff7f00;
13
- $colorBackground: #f7f7f7;
19
+ --radius-sm: 5px;
20
+ --radius-lg: 10px;
14
21
 
15
- $borderRadius: 5px;
16
- $borderRadiusBig: 10px;
17
- $borderColor: rgba($colorBlack, 0.1);
18
- $borderShadowTop: 0 -1px 0 0 $borderColor;
19
- $borderShadowBottom: 0 1px 0 0 $borderColor;
20
- $borderInputColor: #d9d9d9;
21
- $tr: all 0.3s ease;
22
- $trParam: 0.3s ease;
23
- $trBg: background-color 0.3s ease;
24
- $popupBoxShadow: 0px 10px 40px 0px rgba(0, 0, 0, 0.15);
25
- $bgColorSidebarBlock: rgba(0, 0, 0, 0.03);
22
+ --font-sans: 'Inter', sans-serif;
23
+ --text-sm: 14px;
26
24
 
27
- $inputRecomendBg: rgba(#ffbf00, 0.1);
28
- $inputRequiredBg: rgba(#ff0000, 0.1);
29
- $inputErrorBorder: rgba(#ff0000, 0.5);
25
+ --shadow-xl: 0 10px 40px 0 rgb(0 0 0 / 0.15);
26
+ --shadow-t: 0 -1px 0 0 var(--color-border);
27
+ --shadow-b: 0 1px 0 0 var(--color-border);
30
28
 
31
- $desktopWidth: 1200px;
32
- $laptopWidth: 1000px;
33
- $tabletWidth: 680px;
34
- $mobileWidth: 576px;
29
+ --breakpoint-sm: 576px;
30
+ --breakpoint-md: 680px;
31
+ --breakpoint-lg: 1000px;
32
+ --breakpoint-xl: 1200px;
35
33
 
36
- $mainFontName: 'Inter', sans-serif;
37
- $bodyFontSize: 14px;
38
- $mainBgColor: #fff;
39
- $mainIndexBgColor: #f0f1f5;
34
+ --default-transition-duration: 0.3s;
35
+ --default-transition-timing-function: ease;
36
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@de-kit/st-ui",
3
- "version": "0.1.0",
4
- "description": "React-компоненты splittest: SCSS-модули и токены из основного фронтенда",
3
+ "version": "0.1.2",
4
+ "description": "React-компоненты splittest: глобальный SCSS и токены из основного фронтенда",
5
5
  "license": "UNLICENSED",
6
6
  "repository": {
7
7
  "type": "git",
@@ -1,22 +0,0 @@
1
- // \0rolldown/runtime.js
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __copyProps = (to, from, except, desc) => {
9
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
10
- key = keys[i];
11
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
12
- get: ((k) => from[k]).bind(null, key),
13
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
14
- });
15
- }
16
- return to;
17
- };
18
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule || !__hasOwnProp.call(mod, "default") ? __defProp(target, "default", {
19
- value: mod,
20
- enumerable: true
21
- }) : target, mod));
22
- exports.__toESM = __toESM;
@@ -1,95 +0,0 @@
1
- @import '../../styles/vars.scss';
2
-
3
- .button {
4
- box-sizing: border-box;
5
- width: fit-content;
6
- display: flex;
7
- align-items: center;
8
- padding: 10px 18px;
9
- border-radius: 30px;
10
- font-size: 14px;
11
- line-height: 20px;
12
- background-color: $colorBlack;
13
- color: $colorWhite;
14
- fill: $colorWhite;
15
- font-weight: bold;
16
- font-family: $mainFontName;
17
- border: 2px solid $colorBlack;
18
- flex-shrink: 0;
19
- cursor: pointer;
20
- transition: none;
21
- gap: 5px;
22
- text-decoration: none;
23
-
24
- &.active,
25
- &.disabled,
26
- &:active,
27
- &:disabled {
28
- background-color: $colorGray;
29
- color: $colorGrayIcon;
30
- fill: $colorGrayIcon;
31
- border-color: $colorGray;
32
- }
33
-
34
- &.disabled,
35
- &:disabled {
36
- cursor: default;
37
- pointer-events: none;
38
- user-select: none;
39
- }
40
- }
41
-
42
- .outline {
43
- background-color: transparent;
44
- color: $colorBlack;
45
- fill: $colorBlack;
46
- max-height: 40px;
47
- border: 2px solid $colorBlack;
48
-
49
- &:disabled {
50
- background-color: transparent;
51
- border: 2px solid $colorBlack;
52
- }
53
- }
54
-
55
- .fullWidth {
56
- width: 100%;
57
- text-align: center;
58
- justify-content: center;
59
- }
60
-
61
- .withIcon {
62
- padding: 8px 18px 8px 14px;
63
- gap: 5px;
64
- text-align: left;
65
-
66
- .icon {
67
- flex-shrink: 0;
68
- }
69
- }
70
-
71
- .link {
72
- border: none;
73
- background-color: transparent;
74
- color: $colorBlack;
75
- fill: $colorBlack;
76
- border-radius: 0;
77
- padding: 0;
78
-
79
- &:active,
80
- &:disabled {
81
- background-color: transparent;
82
- color: rgba(0, 0, 0, 0.5);
83
- fill: rgba(0, 0, 0, 0.5);
84
- }
85
- }
86
-
87
- .disabled {
88
- background-color: $colorGray;
89
- color: $colorGrayIcon;
90
- fill: $colorGrayIcon;
91
- border-color: $colorGray;
92
- cursor: default;
93
- pointer-events: none;
94
- user-select: none;
95
- }
@@ -1,60 +0,0 @@
1
- @import '../../styles/vars.scss';
2
-
3
- .wrap {
4
- position: relative;
5
- }
6
-
7
- .textarea {
8
- box-sizing: border-box;
9
- width: 100%;
10
- min-height: 160px;
11
- display: flex;
12
- align-items: center;
13
- padding: 10px 15px;
14
- font-size: 14px;
15
- line-height: 20px;
16
- background-color: transparent;
17
- color: $colorBlack;
18
- border-radius: $borderRadius;
19
- resize: none;
20
- font-family: $mainFontName;
21
- border: 1px solid $borderInputColor;
22
- outline: 1px solid transparent;
23
- transition:
24
- background 0.3s,
25
- border-color 0.3s,
26
- box-shadow 0.2s;
27
-
28
- &:focus {
29
- border-color: $colorBlack;
30
- outline: 1px solid $colorBlack;
31
- }
32
-
33
- &:disabled {
34
- background-color: $colorGray;
35
- border-color: $colorGray;
36
- color: rgba($colorBlack, 0.5);
37
- fill: $colorGrayIcon;
38
- }
39
-
40
- &--recommended {
41
- background-color: $inputRecomendBg;
42
- }
43
-
44
- &--error {
45
- border-color: $inputErrorBorder;
46
- }
47
-
48
- @media (min-width: $tabletWidth) {
49
- min-height: 80px;
50
- }
51
- }
52
-
53
- .counter {
54
- display: block;
55
- margin-top: 5px;
56
- font-size: 11px;
57
- line-height: 20px;
58
- color: rgba($colorBlack, 0.5);
59
- text-align: left;
60
- }