@ship-ui/core 0.14.21 → 0.14.23

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/index.d.ts CHANGED
@@ -144,7 +144,6 @@ declare class ShipCardComponent {
144
144
 
145
145
  declare class ShipCheckboxComponent {
146
146
  currentClassList: _angular_core.Signal<string>;
147
- showClasses: _angular_core.Signal<string[]>;
148
147
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipCheckboxComponent, never>;
149
148
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipCheckboxComponent, "sh-checkbox", never, {}, {}, never, ["*"], true, never>;
150
149
  }
@@ -410,8 +409,7 @@ declare class ShipProgressBarComponent {
410
409
  }
411
410
 
412
411
  declare class ShipRadioComponent {
413
- #private;
414
- onClick(): void;
412
+ currentClassList: _angular_core.Signal<string>;
415
413
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipRadioComponent, never>;
416
414
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipRadioComponent, "sh-radio", never, {}, {}, never, ["*"], true, never>;
417
415
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ship-ui/core",
3
3
  "license": "MIT",
4
- "version": "0.14.21",
4
+ "version": "0.14.23",
5
5
  "peerDependencies": {
6
6
  "@angular/common": ">=19",
7
7
  "@angular/core": ">=19"
@@ -6,9 +6,7 @@ $shipCheckbox: true !default;
6
6
  sh-checkbox {
7
7
  .sh-sheet {
8
8
  --box-bw: #{p2r(1)};
9
- --box-c: var(--sheet-c);
10
9
  --box-bc: var(--sheet-bc);
11
- --box-bg: var(--sheet-bg);
12
10
  --sheet-s: var(--shape-1);
13
11
  }
14
12
 
@@ -20,7 +18,7 @@ $shipCheckbox: true !default;
20
18
  position: relative;
21
19
  border: 0;
22
20
 
23
- > input[type='checkbox'] {
21
+ > input {
24
22
  appearance: none;
25
23
  position: absolute;
26
24
  inset: 0;
@@ -47,11 +45,7 @@ $shipCheckbox: true !default;
47
45
  height: p2r(20);
48
46
  cursor: pointer;
49
47
  position: relative;
50
- border-radius: var(--shape-1);
51
48
  border: var(--box-bw) solid var(--box-bc);
52
- background: var(--box-bg);
53
- font-size: p2r(12);
54
- color: var(--box-c);
55
49
 
56
50
  sh-icon {
57
51
  opacity: 0;
@@ -93,7 +87,7 @@ $shipCheckbox: true !default;
93
87
  }
94
88
  }
95
89
 
96
- &:has(input[type='checkbox']:checked),
90
+ &:has(input:checked),
97
91
  &.indeterminate,
98
92
  &.active {
99
93
  .box sh-icon {
@@ -34,6 +34,10 @@ $shipList: true !default;
34
34
  line-height: p2r(24);
35
35
  }
36
36
 
37
+ &[shsortable] [item]:active {
38
+ transform: scale(1);
39
+ }
40
+
37
41
  > [action],
38
42
  > [item] {
39
43
  border-radius: var(--list-s);
@@ -69,16 +73,13 @@ $shipList: true !default;
69
73
  }
70
74
  }
71
75
 
72
- :has(input[type='checkbox']),
73
- :has(input[type='radio']),
76
+ :has(input),
74
77
  > [action] {
75
78
  cursor: pointer;
76
79
  }
77
80
 
78
- > [item]:has(input[type='checkbox']:checked),
79
- > [action]:has(input[type='checkbox']:checked),
80
- > [item]:has(input[type='radio']:checked),
81
- > [action]:has(input[type='radio']:checked),
81
+ > [item]:has(input:checked),
82
+ > [action]:has(input:checked),
82
83
  > [action].active,
83
84
  > [action].selected {
84
85
  --list-color: var(--base-12);
@@ -88,10 +89,8 @@ $shipList: true !default;
88
89
  }
89
90
 
90
91
  &.primary {
91
- > [item]:has(input[type='checkbox']:checked),
92
- > [action]:has(input[type='checkbox']:checked),
93
- > [item]:has(input[type='radio']:checked),
94
- > [action]:has(input[type='radio']:checked),
92
+ > [item]:has(input:checked),
93
+ > [action]:has(input:checked),
95
94
  > [action].active,
96
95
  > [action].selected {
97
96
  sh-icon:first-child {
@@ -101,10 +100,8 @@ $shipList: true !default;
101
100
  }
102
101
 
103
102
  &.accent {
104
- > [item]:has(input[type='checkbox']:checked),
105
- > [action]:has(input[type='checkbox']:checked),
106
- > [item]:has(input[type='radio']:checked),
107
- > [action]:has(input[type='radio']:checked),
103
+ > [item]:has(input:checked),
104
+ > [action]:has(input:checked),
108
105
  > [action].active,
109
106
  > [action].selected {
110
107
  sh-icon:first-child {
@@ -114,10 +111,8 @@ $shipList: true !default;
114
111
  }
115
112
 
116
113
  &.warn {
117
- > [item]:has(input[type='checkbox']:checked),
118
- > [action]:has(input[type='checkbox']:checked),
119
- > [item]:has(input[type='radio']:checked),
120
- > [action]:has(input[type='radio']:checked),
114
+ > [item]:has(input:checked),
115
+ > [action]:has(input:checked),
121
116
  > [action].active,
122
117
  > [action].selected {
123
118
  sh-icon:first-child {
@@ -127,10 +122,8 @@ $shipList: true !default;
127
122
  }
128
123
 
129
124
  &.error {
130
- > [item]:has(input[type='checkbox']:checked),
131
- > [action]:has(input[type='checkbox']:checked),
132
- > [item]:has(input[type='radio']:checked),
133
- > [action]:has(input[type='radio']:checked),
125
+ > [item]:has(input:checked),
126
+ > [action]:has(input:checked),
134
127
  > [action].active,
135
128
  > [action].selected {
136
129
  sh-icon:first-child {
@@ -140,10 +133,8 @@ $shipList: true !default;
140
133
  }
141
134
 
142
135
  &.success {
143
- > [item]:has(input[type='checkbox']:checked),
144
- > [action]:has(input[type='checkbox']:checked),
145
- > [item]:has(input[type='radio']:checked),
146
- > [action]:has(input[type='radio']:checked),
136
+ > [item]:has(input:checked),
137
+ > [action]:has(input:checked),
147
138
  > [action].active,
148
139
  > [action].selected {
149
140
  sh-icon:first-child {
@@ -4,12 +4,9 @@ $shipRadio: true !default;
4
4
 
5
5
  @if $shipRadio == true {
6
6
  sh-radio {
7
- --radio-bw: #{p2r(1)};
8
- --radio-bg: var(--base-2);
9
- --radio-bc: var(--base-4);
10
- --radio-c: var(--base-8);
11
- --radiod-o: 0;
12
7
  --radiod-c: var(--base-8);
8
+ --radiod-o: 0;
9
+ --radio-bc: var(--base-4);
13
10
 
14
11
  display: flex;
15
12
  align-items: center;
@@ -18,7 +15,7 @@ $shipRadio: true !default;
18
15
  user-select: none;
19
16
  position: relative;
20
17
 
21
- > input[type='radio'] {
18
+ > input {
22
19
  appearance: none;
23
20
  position: absolute;
24
21
  inset: 0;
@@ -37,7 +34,7 @@ $shipRadio: true !default;
37
34
  cursor: initial;
38
35
  }
39
36
 
40
- &:has(input[type='radio']:checked),
37
+ &:has(input:checked),
41
38
  &.active {
42
39
  --radiod-o: 1;
43
40
  }
@@ -51,10 +48,6 @@ $shipRadio: true !default;
51
48
  cursor: pointer;
52
49
  position: relative;
53
50
  border-radius: 50%;
54
- border: var(--radio-bw) solid var(--radio-bc);
55
- background: var(--radio-bg);
56
- font-size: p2r(12);
57
- color: var(--radio-c);
58
51
 
59
52
  &:after {
60
53
  content: '';
@@ -72,110 +65,44 @@ $shipRadio: true !default;
72
65
  }
73
66
 
74
67
  &.primary {
75
- --radio-c: var(--primary-8);
76
68
  --radiod-c: var(--primary-8);
77
- --radio-bg: var(--primary-3);
78
- --radio-bc: var(--primary-4);
79
69
  }
80
70
 
81
71
  &.accent {
82
- --radio-c: var(--accent-8);
83
72
  --radiod-c: var(--accent-8);
84
- --radio-bg: var(--accent-3);
85
- --radio-bc: var(--accent-4);
86
73
  }
87
74
 
88
75
  &.warn {
89
- --radio-c: var(--warn-8);
90
76
  --radiod-c: var(--warn-8);
91
- --radio-bg: var(--warn-3);
92
- --radio-bc: var(--warn-4);
93
77
  }
94
78
 
95
79
  &.error {
96
- --radio-c: var(--error-8);
97
80
  --radiod-c: var(--error-8);
98
- --radio-bg: var(--error-3);
99
- --radio-bc: var(--error-4);
100
81
  }
101
82
 
102
83
  &.success {
103
- --radio-c: var(--success-8);
104
84
  --radiod-c: var(--success-8);
105
- --radio-bg: var(--success-3);
106
- --radio-bc: var(--success-4);
107
- }
108
-
109
- &.outlined {
110
- --radio-bg: var(--base-1);
111
-
112
- &.primary,
113
- &.accent,
114
- &.warn,
115
- &.error,
116
- &.success {
117
- --radio-bc: var(--base-4);
118
- }
119
85
  }
120
86
 
121
87
  &.flat,
122
88
  &.raised {
123
- --radio-c: #fff;
124
- --radio-bc: var(--base-4);
125
- --radio-bg: var(--base-2);
126
- --radiod-c: #fff;
127
- }
128
-
129
- &.flat:has(input[type='radio']:checked),
130
- &.flat.active {
131
- --radio-bw: 0;
132
- --radio-bg: var(--base-8);
133
89
  --radiod-c: #fff;
134
-
135
- &.primary {
136
- --radio-bg: var(--primary-8);
137
- }
138
-
139
- &.accent {
140
- --radio-bg: var(--accent-8);
141
- }
142
-
143
- &.warn {
144
- --radio-bg: var(--warn-8);
145
- }
146
-
147
- &.error {
148
- --radio-bg: var(--error-8);
149
- }
150
-
151
- &.success {
152
- --radio-bg: var(--success-8);
153
- }
154
90
  }
155
91
 
156
- &.raised:has(input[type='radio']:checked),
157
- &.raised.active {
158
- --radio-bw: 0;
159
- --radio-bg: var(--base-g2);
160
-
161
- &.primary {
162
- --radio-bg: var(--primary-g2);
163
- }
164
-
165
- &.accent {
166
- --radio-bg: var(--accent-g2);
167
- }
168
-
169
- &.warn {
170
- --radio-bg: var(--warn-g2);
171
- }
172
-
173
- &.error {
174
- --radio-bg: var(--error-g2);
92
+ &.raised,
93
+ &.flat {
94
+ &:has(input) {
95
+ &:not(:has(input:checked)) .radio {
96
+ background: transparent;
97
+ border: 1px solid var(--radio-bc);
98
+ }
175
99
  }
176
100
 
177
- &.success {
178
- --radio-bg: var(--success-g2);
101
+ &:not(:has(input)) {
102
+ .radio:not(.active) {
103
+ background: transparent;
104
+ border: 1px solid var(--radio-bc);
105
+ }
179
106
  }
180
107
  }
181
108
  }