@faststore/ui 3.15.0 → 3.16.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.
package/README.md CHANGED
@@ -29,10 +29,10 @@
29
29
 
30
30
  ## Installation
31
31
 
32
- From the command line in your project directory, run yarn add `@faststore/ui`.
32
+ From the command line in your project directory, run pnpm add `@faststore/ui`.
33
33
 
34
34
  ```cmd
35
- yarn add @faststore/ui
35
+ pnpm add @faststore/ui
36
36
  ```
37
37
 
38
38
  ## Usage
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@faststore/ui",
3
- "version": "3.15.0",
3
+ "version": "3.16.0",
4
4
  "description": "A lightweight, framework agnostic component library for React",
5
5
  "author": "emersonlaurentino",
6
6
  "license": "MIT",
@@ -47,7 +47,7 @@
47
47
  }
48
48
  ],
49
49
  "dependencies": {
50
- "@faststore/components": "^3.15.0",
50
+ "@faststore/components": "^3.16.0",
51
51
  "include-media": "^1.4.10",
52
52
  "modern-normalize": "^1.1.0",
53
53
  "react-swipeable": "^7.0.0",
@@ -59,12 +59,15 @@
59
59
  },
60
60
  "devDependencies": {
61
61
  "@size-limit/preset-small-lib": "^7.0.8",
62
+ "@types/node": "^18.11.16",
63
+ "@types/react": "^18.2.42",
62
64
  "@types/tabbable": "^3.1.1",
63
65
  "babel-loader": "^8.2.5",
64
- "size-limit": "^7.0.8"
66
+ "size-limit": "^7.0.8",
67
+ "tslib": "^2.3.1"
65
68
  },
66
69
  "volta": {
67
70
  "extends": "../../package.json"
68
71
  },
69
- "gitHead": "2cf5890d1b5edd9fbf7c9e7e94fbba57771c2a0a"
72
+ "gitHead": "f8e0fe29267488a76fb8d85c33c3aa2cebf0d0f9"
70
73
  }
@@ -4,9 +4,64 @@
4
4
  // --------------------------------------------------------
5
5
 
6
6
  // Default properties
7
- --fs-checkbox-field-gap : var(--fs-spacing-1);
7
+ --fs-checkbox-field-gap : var(--fs-spacing-1);
8
+
9
+ // Label
10
+ --fs-checkbox-field-label-color : var(--fs-color-text-light);
11
+ --fs-checkbox-field-label-size : var(--fs-text-size-1);
12
+ --fs-checkbox-field-label-weight : var(--fs-text-weight-regular);
13
+ --fs-checkbox-field-label-line-height : 1.42;
14
+
15
+ /* Error tokens */
16
+ --fs-checkbox-field-error-message-size : var(--fs-text-size-legend);
17
+ --fs-checkbox-field-error-message-line-height : 1.1;
18
+ --fs-checkbox-field-error-message-margin-top : var(--fs-spacing-0);
19
+ --fs-checkbox-field-error-message-color : var(--fs-color-danger-text);
20
+ --fs-checkbox-field-error-border-color : var(--fs-color-danger-border);
8
21
 
9
22
  display: flex;
10
- align-items: center;
11
23
  column-gap: var(--fs-checkbox-field-gap);
12
- };
24
+
25
+ [data-fs-checkbox] {
26
+ flex-shrink: 0;
27
+ }
28
+
29
+ [data-fs-checkbox-field-content] {
30
+ display: flex;
31
+ flex-direction: column;
32
+ }
33
+
34
+ [data-fs-checkbox-field-label] {
35
+ color: var(--fs-checkbox-field-label-color);
36
+ font-size: var(--fs-checkbox-field-label-size);
37
+ font-weight: var(--fs-checkbox-field-label-weight);
38
+ line-height: var(--fs-checkbox-field-label-line-height);
39
+ }
40
+
41
+ // --------------------------------------------------------
42
+ // Variants Styles
43
+ // --------------------------------------------------------
44
+
45
+ &[data-fs-checkbox-field-alignment='center'] {
46
+ align-items: center;
47
+ }
48
+ &[data-fs-checkbox-field-alignment='top'] {
49
+ align-items: flex-start;
50
+ }
51
+ &[data-fs-checkbox-field-alignment='bottom'] {
52
+ align-items: flex-end;
53
+ }
54
+
55
+ &[data-fs-checkbox-field-error='true'] {
56
+ [data-fs-checkbox-field-error-message] {
57
+ margin-top: var(--fs-checkbox-field-error-message-margin-top);
58
+ font-size: var(--fs-checkbox-field-error-message-size);
59
+ line-height: var(--fs-checkbox-field-error-message-line-height);
60
+ color: var(--fs-checkbox-field-error-message-color);
61
+ }
62
+
63
+ [data-fs-checkbox]:not(:disabled) {
64
+ border-color: var(--fs-checkbox-field-error-border-color);
65
+ }
66
+ }
67
+ }
@@ -4,17 +4,21 @@
4
4
  // --------------------------------------------------------
5
5
 
6
6
  // Default properties
7
- --fs-rating-gap : var(--fs-spacing-0);
8
- --fs-rating-color : var(--fs-color-text);
7
+ --fs-rating-gap : var(--fs-spacing-0);
8
+ --fs-rating-color : var(--fs-color-main-2);
9
+ --fs-rating-color-empty : var(--fs-color-neutral-4);
9
10
 
10
11
  // Icon
11
- --fs-rating-icon-width : var(--fs-spacing-3);
12
- --fs-rating-icon-height : var(--fs-rating-icon-width);
12
+ --fs-rating-icon-width : var(--fs-spacing-3);
13
+ --fs-rating-icon-height : var(--fs-rating-icon-width);
13
14
 
14
15
  // Actionable
15
- --fs-rating-actionable-gap : 0;
16
- --fs-rating-actionable-icon-width : var(--fs-rating-icon-width);
17
- --fs-rating-actionable-icon-height : var(--fs-rating-actionable-icon-width);
16
+ --fs-rating-actionable-gap : 0;
17
+ --fs-rating-actionable-icon-width : var(--fs-rating-icon-width);
18
+ --fs-rating-actionable-icon-height : var(--fs-rating-actionable-icon-width);
19
+ --fs-rating-actionable-icon-color : var(--fs-rating-color-empty);
20
+ --fs-rating-actionable-icon-color-selected : var(--fs-rating-color);
21
+ --fs-rating-button-min-height : var(--fs-spacing-5);
18
22
 
19
23
  // --------------------------------------------------------
20
24
  // Structural Styles
@@ -23,16 +27,29 @@
23
27
  display: flex;
24
28
 
25
29
  [data-fs-icon] {
26
- color: var(--fs-rating-color);
27
30
  width: var(--fs-rating-icon-width);
28
31
  height: var(--fs-rating-icon-height);
32
+ color: var(--fs-rating-color);
29
33
  }
30
34
 
31
35
  [data-fs-rating-button] {
36
+ --fs-button-small-min-height: var(--fs-rating-button-min-height);
37
+
32
38
  color: unset;
33
- &[data-fs-button-variant=tertiary]:hover,
34
- &[data-fs-button-variant=tertiary]:focus,
35
- &[data-fs-button-variant=tertiary]:active { color: unset; }
39
+
40
+ &[disabled] [data-fs-button-wrapper] {
41
+ background-color: transparent;
42
+
43
+ &:hover {
44
+ background-color: transparent;
45
+ }
46
+ }
47
+
48
+ &[data-fs-button-variant="tertiary"]:hover,
49
+ &[data-fs-button-variant="tertiary"]:focus,
50
+ &[data-fs-button-variant="tertiary"]:active {
51
+ color: unset;
52
+ }
36
53
  }
37
54
 
38
55
  [data-fs-rating-icon-wrapper] {
@@ -42,17 +59,21 @@
42
59
  overflow: hidden;
43
60
  }
44
61
 
45
- svg[data-fs-rating-icon-outline] {
46
- fill: none;
62
+ svg[data-fs-rating-icon-outline] {
63
+ fill: none;
47
64
  }
48
65
 
49
- [data-fs-rating-item] { position: relative; }
66
+ [data-fs-rating-item] {
67
+ position: relative;
68
+ fill: var(--fs-rating-color);
69
+ }
50
70
 
51
71
  // --------------------------------------------------------
52
72
  // Variants Styles
53
73
  // --------------------------------------------------------
54
74
 
55
75
  [data-fs-rating-item="empty"] svg[data-fs-icon] {
76
+ color: var(--fs-rating-color-empty);
56
77
  fill: none;
57
78
  }
58
79
 
@@ -66,10 +87,17 @@
66
87
 
67
88
  &[data-fs-rating-actionable="true"] {
68
89
  column-gap: var(--fs-rating-actionable-gap);
90
+
91
+ [data-fs-rating-item="full"] svg[data-fs-icon] {
92
+ color: var(--fs-rating-actionable-icon-color-selected);
93
+ fill: var(--fs-rating-actionable-icon-color-selected);
94
+ }
95
+
69
96
  [data-fs-icon] {
70
97
  width: var(--fs-rating-actionable-icon-width);
71
98
  height: var(--fs-rating-actionable-icon-height);
99
+ color: var(--fs-rating-actionable-color);
100
+ color: var(--fs-rating-actionable-icon-color);
72
101
  }
73
102
  }
74
-
75
103
  }
@@ -0,0 +1,44 @@
1
+ [data-fs-rating-field] {
2
+ // --------------------------------------------------------
3
+ // Design Tokens for Rating Field
4
+ // --------------------------------------------------------
5
+
6
+ // Label
7
+ --fs-rating-field-label-color : var(--fs-color-text-light);
8
+ --fs-rating-field-label-size : var(--fs-text-size-2);
9
+ --fs-rating-field-label-line-height : var(--fs-text-size-4);
10
+
11
+ // Error
12
+ --fs-rating-field-error-message-size : var(--fs-text-size-legend);
13
+ --fs-rating-field-error-message-line-height : 1.1;
14
+ --fs-rating-field-error-message-color : var(--fs-color-danger-text);
15
+
16
+ // --------------------------------------------------------
17
+ // Structural Styles
18
+ // --------------------------------------------------------
19
+ display: flex;
20
+ flex-direction: column;
21
+
22
+ [data-fs-rating-field-label] {
23
+ margin-bottom: var(--fs-spacing-0);
24
+ font-size: var(--fs-rating-field-label-size);
25
+ line-height: var(--fs-rating-field-label-line-height);
26
+ color: var(--fs-rating-field-label-color);
27
+ }
28
+
29
+ [data-fs-rating-field-error-message] {
30
+ margin-top: var(--fs-spacing-0);
31
+ font-size: var(--fs-rating-field-error-message-size);
32
+ line-height: var(--fs-rating-field-error-message-line-height);
33
+ color: var(--fs-rating-field-error-message-color);
34
+ }
35
+
36
+ // --------------------------------------------------------
37
+ // Variants Styles
38
+ // --------------------------------------------------------
39
+ &[data-fs-rating-field-error="true"] {
40
+ [data-fs-rating-item="empty"] [data-fs-icon] {
41
+ color: var(--fs-rating-field-error-message-color);
42
+ }
43
+ }
44
+ }
@@ -41,6 +41,7 @@
41
41
  @import "../components/molecules/QuantitySelector/styles";
42
42
  @import "../components/molecules/RadioField/styles";
43
43
  @import "../components/molecules/Rating/styles";
44
+ @import "../components/molecules/RatingField/styles";
44
45
  @import "../components/molecules/RegionBar/styles";
45
46
  @import "../components/molecules/SearchAutoComplete/styles";
46
47
  @import "../components/molecules/SearchDropdown/styles";