yuyeon 0.0.23 → 0.0.24

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.
@@ -1,245 +1,256 @@
1
-
2
- @use '../../styles/palette';
3
- @use '../../styles/variables';
4
-
5
- $input-border-radius: variables.$border-radius-root !default;
6
-
7
- .y-input {
8
- font-size: 14px;
9
- flex: 1 1 auto;
10
- display: flex;
11
- align-items: flex-start;
12
- letter-spacing: normal;
13
- text-align: left;
14
-
15
- --y-input-focused-color: var(--y-theme-primary);
16
-
17
- &__prepend,
18
- &__append {
19
- height: 100%;
20
- }
21
-
22
- &__stack {
23
- display: flex;
24
- flex-direction: column;
25
- height: 100%; // auto
26
- flex: 1;
27
- flex-wrap: wrap;
28
- min-width: 0;
29
- width: 100%;
30
- }
31
-
32
- &__display {
33
- display: flex;
34
- position: relative;
35
- cursor: text;
36
- flex: 1 1 auto;
37
- border-radius: $input-border-radius;
38
- }
39
-
40
- &__plate {
41
- position: absolute;
42
- inset: 0;
43
- border-bottom: 1px solid transparent;
44
- contain: paint;
45
- border-radius: $input-border-radius;
46
- outline: 0 solid rgba(0, 0, 0, 0);
47
- transition: 140ms ease;
48
- }
49
-
50
- &__value {
51
- position: relative;
52
- flex: 1 0 auto;
53
- padding: 0.5rem 0.875rem;
54
- display: flex;
55
- align-items: center;
56
- line-height: 1em;
57
- }
58
-
59
- &__helper-text {
60
- font-size: 14px;
61
- font-weight: 320;
62
- color: #444;
63
- }
64
-
65
- @keyframes label-float {
66
- 0% {
67
- opacity: 0;
68
- }
69
- 100% {
70
- opacity: 1;
71
- transform: translateY(-26px) scale(0.74);
72
- }
73
- }
74
-
75
- @keyframes label-sink {
76
- 0% {
77
- opacity: 1;
78
- transform: translateY(-26px) scale(0.74);
79
- }
80
- 30% {
81
- opacity: 0;
82
- }
83
- 80% {
84
- opacity: 0;
85
- transform: translateY(-8px) scale(1);
86
- }
87
- 100% {
88
- opacity: 1;
89
- transform: translateY(0) scale(1);
90
- }
91
- }
92
-
93
- &__label {
94
- position: absolute;
95
- color: #5e5e5e;
96
- max-width: 90%;
97
- overflow: hidden;
98
- text-overflow: ellipsis;
99
- white-space: nowrap;
100
- pointer-events: none;
101
- left: 0;
102
- top: 6px;
103
- transform-origin: left center;
104
-
105
- &--floated {
106
- animation: label-float 200ms ease-in-out forwards;
107
- }
108
-
109
- &:not(&--floated) {
110
- animation: label-sink 200ms linear;
111
- }
112
- }
113
-
114
- &__leading {
115
- position: relative;
116
- display: inline-flex;
117
- margin-top: 10px;
118
- padding-right: 4px;
119
- align-self: flex-start;
120
-
121
- > * {
122
- width: 24px;
123
- height: 24px;
124
- user-select: none;
125
- }
126
- }
127
-
128
- &__trailing {
129
- position: relative;
130
- display: inline-flex;
131
- justify-content: center;
132
- align-items: center;
133
- }
134
-
135
- &--labeled {
136
- padding-top: 12px;
137
- margin-top: 4px;
138
- }
139
-
140
- &--filled {
141
- --y-input-default-filled: 242, 242, 242;
142
- --y-input-filled-opacity: 0.04;
143
- --y-input-filled-opacity-hover: 0.08;
144
-
145
- .y-input {
146
- &__prepend {
147
- padding-left: 12px;
148
- }
149
- //
150
- &__plate {
151
- background: rgba(var(--y-theme-on-surface-rgb, var(--y-input-default-filled)), var(--y-input-filled-opacity));
152
- }
153
-
154
- &__display:hover {
155
- --y-input-filled-opacity: var(--y-input-filled-opacity-hover);
156
- }
157
- }
158
- }
159
-
160
- &--outlined {
161
- --y-input-outlined-opacity: 0.64;
162
- --y-input-outlined-opacity-hover: 0.87;
163
-
164
- .y-input {
165
- &__plate {
166
- border: 1px solid rgba(var(--y-theme-outline-rgb), var(--y-input-outlined-opacity));
167
- box-sizing: border-box;
168
- inset: 0;
169
-
170
- &:before {
171
- top: 0;
172
- height: 100%;
173
- background: transparent;
174
- border-radius: inherit;
175
- }
176
- }
177
-
178
- &__display:hover {
179
- --y-input-outlined-opacity: var(--y-input-outlined-opacity-hover);
180
- }
181
- }
182
- }
183
-
184
- &--ceramic {
185
- .y-input__plate {
186
- border: 1px solid #e4e4e4;
187
- box-sizing: border-box;
188
- inset: 0;
189
- border-top-color: transparent;
190
- border-left-width: 0;
191
- border-right-width: 0;
192
- box-shadow: 1px 2px 8px -1px rgb(0 0 0 / 12%), -1px -1px 2px 1px rgba(0, 0, 0, 0.04),
193
- inset 1px 1px 8px -4px rgb(0 0 0 / 11%);
194
- outline: 0 solid rgba(0, 0, 0, 0);
195
- }
196
-
197
- .y-input__plate:before {
198
- inset: -1px;
199
- height: 100%;
200
- background: transparent;
201
- border-radius: inherit;
202
- }
203
- }
204
-
205
- &--focused {
206
- .y-input__value {
207
- outline: none;
208
- }
209
-
210
- .y-input__plate {
211
- outline: 1px solid rgba(var(--y-theme-primary, #4f97dc), 0.1);
212
- border-color: var(--y-input-focused-color);
213
- }
214
-
215
- .y-input__leading {
216
- color: currentColor;
217
- }
218
-
219
- &.y-input--outlined {
220
- //
221
- }
222
- }
223
-
224
- &--error {
225
- &.y-input--outlined {
226
- .y-input__plate {
227
- border-color: var(--y-palette-negative) !important;
228
- }
229
- }
230
- .y-input__helper-text {
231
- color: var(--y-palette-negative);
232
- }
233
- }
234
-
235
- &--success {
236
- &.y-input--outlined {
237
- .y-input__plate {
238
- border-color: var(--y-palette-positive) !important;
239
- }
240
- }
241
- .y-input__helper-text {
242
- color: var(--y-palette-positive);
243
- }
244
- }
245
- }
1
+
2
+ @use '../../styles/palette';
3
+ @use '../../styles/variables';
4
+
5
+ $input-border-radius: variables.$border-radius-root !default;
6
+
7
+ .y-input {
8
+ font-size: 14px;
9
+ flex: 1 1 auto;
10
+ display: flex;
11
+ align-items: flex-start;
12
+ letter-spacing: normal;
13
+ text-align: left;
14
+
15
+ --y-input-focused-color: var(--y-theme-primary);
16
+ --y-input-label-color: var(--y-theme-on-surface-variant);
17
+
18
+ &__prepend,
19
+ &__append {
20
+ height: 100%;
21
+ }
22
+
23
+ &__stack {
24
+ display: flex;
25
+ flex-direction: column;
26
+ height: 100%; // auto
27
+ flex: 1;
28
+ flex-wrap: wrap;
29
+ min-width: 0;
30
+ width: 100%;
31
+ }
32
+
33
+ &__display {
34
+ display: flex;
35
+ position: relative;
36
+ cursor: text;
37
+ flex: 1 1 auto;
38
+ border-radius: $input-border-radius;
39
+ }
40
+
41
+ &__plate {
42
+ position: absolute;
43
+ inset: 0;
44
+ border-bottom: 1px solid transparent;
45
+ contain: paint;
46
+ border-radius: $input-border-radius;
47
+ outline: 0 solid rgba(0, 0, 0, 0);
48
+ transition: 140ms ease;
49
+ }
50
+
51
+ &__value {
52
+ position: relative;
53
+ flex: 1 0 auto;
54
+ padding: 0.5rem 0.875rem;
55
+ display: flex;
56
+ align-items: center;
57
+ line-height: 1em;
58
+ }
59
+
60
+ &__helper-text {
61
+ font-size: 14px;
62
+ font-weight: 320;
63
+ color: #444;
64
+ }
65
+
66
+ @keyframes label-float {
67
+ 0% {
68
+ opacity: 0;
69
+ }
70
+ 100% {
71
+ opacity: 1;
72
+ transform: translateY(-26px) scale(0.94);
73
+ }
74
+ }
75
+
76
+ @keyframes label-sink {
77
+ 0% {
78
+ opacity: 1;
79
+ transform: translateY(-26px) scale(0.74);
80
+ }
81
+ 30% {
82
+ opacity: 0;
83
+ }
84
+ 80% {
85
+ opacity: 0;
86
+ transform: translateY(-8px) scale(1);
87
+ }
88
+ 100% {
89
+ opacity: 1;
90
+ transform: translateY(0) scale(1);
91
+ }
92
+ }
93
+
94
+ &__label {
95
+ color: var(--y-input-label-color);
96
+ padding-bottom: 4px;
97
+ font-weight: 500;
98
+ }
99
+
100
+ &__floating-label {
101
+ position: absolute;
102
+ max-width: 90%;
103
+ overflow: hidden;
104
+ text-overflow: ellipsis;
105
+ white-space: nowrap;
106
+ pointer-events: none;
107
+ padding-bottom: unset;
108
+ left: 0;
109
+ top: 6px;
110
+ transform-origin: left center;
111
+
112
+ &--floated {
113
+ animation: label-float 200ms ease-in-out forwards;
114
+ }
115
+
116
+ &:not(&--floated) {
117
+ animation: label-sink 200ms linear;
118
+ }
119
+ }
120
+
121
+ &__leading {
122
+ position: relative;
123
+ display: inline-flex;
124
+ margin-top: 10px;
125
+ padding-right: 4px;
126
+ align-self: flex-start;
127
+
128
+ > * {
129
+ width: 24px;
130
+ height: 24px;
131
+ user-select: none;
132
+ }
133
+ }
134
+
135
+ &__required-mark {
136
+ color: var(--y-theme-error);
137
+ }
138
+
139
+ &__trailing {
140
+ position: relative;
141
+ display: inline-flex;
142
+ justify-content: center;
143
+ align-items: center;
144
+ }
145
+
146
+ &--labeled {
147
+ padding-top: 12px;
148
+ margin-top: 4px;
149
+ }
150
+
151
+ &--filled {
152
+ --y-input-default-filled: 242, 242, 242;
153
+ --y-input-filled-opacity: 0.04;
154
+ --y-input-filled-opacity-hover: 0.08;
155
+
156
+ .y-input {
157
+ &__prepend {
158
+ padding-left: 12px;
159
+ }
160
+ //
161
+ &__plate {
162
+ background: rgba(var(--y-theme-on-surface-rgb, var(--y-input-default-filled)), var(--y-input-filled-opacity));
163
+ }
164
+
165
+ &__display:hover {
166
+ --y-input-filled-opacity: var(--y-input-filled-opacity-hover);
167
+ }
168
+ }
169
+ }
170
+
171
+ &--outlined {
172
+ --y-input-outlined-opacity: 0.64;
173
+ --y-input-outlined-opacity-hover: 0.87;
174
+
175
+ .y-input {
176
+ &__plate {
177
+ border: 1px solid rgba(var(--y-theme-outline-rgb), var(--y-input-outlined-opacity));
178
+ box-sizing: border-box;
179
+ inset: 0;
180
+
181
+ &:before {
182
+ top: 0;
183
+ height: 100%;
184
+ background: transparent;
185
+ border-radius: inherit;
186
+ }
187
+ }
188
+
189
+ &__display:hover {
190
+ --y-input-outlined-opacity: var(--y-input-outlined-opacity-hover);
191
+ }
192
+ }
193
+ }
194
+
195
+ &--ceramic {
196
+ .y-input__plate {
197
+ border: 1px solid #e4e4e4;
198
+ box-sizing: border-box;
199
+ inset: 0;
200
+ border-top-color: transparent;
201
+ border-left-width: 0;
202
+ border-right-width: 0;
203
+ box-shadow: 1px 2px 8px -1px rgb(0 0 0 / 12%), -1px -1px 2px 1px rgba(0, 0, 0, 0.04),
204
+ inset 1px 1px 8px -4px rgb(0 0 0 / 11%);
205
+ outline: 0 solid rgba(0, 0, 0, 0);
206
+ }
207
+
208
+ .y-input__plate:before {
209
+ inset: -1px;
210
+ height: 100%;
211
+ background: transparent;
212
+ border-radius: inherit;
213
+ }
214
+ }
215
+
216
+ &--focused {
217
+ .y-input__value {
218
+ outline: none;
219
+ }
220
+
221
+ .y-input__plate {
222
+ outline: 1px solid rgba(var(--y-theme-primary, #4f97dc), 0.1);
223
+ border-color: var(--y-input-focused-color);
224
+ }
225
+
226
+ .y-input__leading {
227
+ color: currentColor;
228
+ }
229
+
230
+ &.y-input--outlined {
231
+ //
232
+ }
233
+ }
234
+
235
+ &--error {
236
+ &.y-input--outlined {
237
+ .y-input__plate {
238
+ border-color: var(--y-palette-negative) !important;
239
+ }
240
+ }
241
+ .y-input__helper-text {
242
+ color: var(--y-palette-negative);
243
+ }
244
+ }
245
+
246
+ &--success {
247
+ &.y-input--outlined {
248
+ .y-input__plate {
249
+ border-color: var(--y-palette-positive) !important;
250
+ }
251
+ }
252
+ .y-input__helper-text {
253
+ color: var(--y-palette-positive);
254
+ }
255
+ }
256
+ }
@@ -1,33 +1,33 @@
1
- .y-layer-group {
2
- contain: layout;
3
- left: 0;
4
- top: 0;
5
- pointer-events: none;
6
- position: absolute;
7
- display: contents;
8
- }
9
-
10
- .y-layer {
11
- border-radius: inherit;
12
- display: flex;
13
- inset: 0;
14
- position: fixed;
15
- color: var(--y-theme-on-background);
16
-
17
- &__scrim {
18
- pointer-events: auto;
19
- background: rgb(var(--y-layer-scrim, 0, 0, 0));
20
- border-radius: inherit;
21
- inset: 0;
22
- opacity: 0.4;
23
- position: fixed;
24
- }
25
-
26
- &__content {
27
- outline: none;
28
- position: absolute;
29
- pointer-events: auto;
30
- contain: layout;
31
- transform-style: preserve-3d;
32
- }
33
- }
1
+ .y-layer-group {
2
+ contain: layout;
3
+ left: 0;
4
+ top: 0;
5
+ pointer-events: none;
6
+ position: absolute;
7
+ display: contents;
8
+ }
9
+
10
+ .y-layer {
11
+ border-radius: inherit;
12
+ display: flex;
13
+ inset: 0;
14
+ position: fixed;
15
+ color: var(--y-theme-on-background);
16
+
17
+ &__scrim {
18
+ pointer-events: auto;
19
+ background: rgb(var(--y-layer-scrim, 0, 0, 0));
20
+ border-radius: inherit;
21
+ inset: 0;
22
+ opacity: 0.4;
23
+ position: fixed;
24
+ }
25
+
26
+ &__content {
27
+ outline: none;
28
+ position: absolute;
29
+ pointer-events: auto;
30
+ contain: layout;
31
+ transform-style: preserve-3d;
32
+ }
33
+ }
@@ -1,22 +1,22 @@
1
- .y-menu {
2
- font-size: 0.875rem;
3
- $elevation-fallback: 1px 1px 8px -1px rgba(0, 0, 0, 0.14), 4px 4px 24px -4px rgba(0, 0, 0, 0.28), -2px -2px 8px -2px rgba(0, 0, 0, 0.14);
4
-
5
- --y-menu__border-radius: 8px;
6
- --y-menu__elevation: var(--y-elevation--level2);
7
-
8
- &__content {
9
- box-shadow: var(--y-menu__elevation, #{$elevation-fallback});
10
- border-radius: var(--y-menu__border-radius);
11
- background: var(--y-theme-surface);
12
- display: flex;
13
- flex-direction: column;
14
-
15
- > .y-card {
16
- background: rgb(var(--y-theme-surface));
17
- border-radius: inherit;
18
- overflow: auto;
19
- height: 100%;
20
- }
21
- }
22
- }
1
+ .y-menu {
2
+ font-size: 0.875rem;
3
+ $elevation-fallback: 1px 1px 8px -1px rgba(0, 0, 0, 0.14), 4px 4px 24px -4px rgba(0, 0, 0, 0.28), -2px -2px 8px -2px rgba(0, 0, 0, 0.14);
4
+
5
+ --y-menu__border-radius: 8px;
6
+ --y-menu__elevation: var(--y-elevation--level2);
7
+
8
+ &__content {
9
+ box-shadow: var(--y-menu__elevation, #{$elevation-fallback});
10
+ border-radius: var(--y-menu__border-radius);
11
+ background: var(--y-theme-surface);
12
+ display: flex;
13
+ flex-direction: column;
14
+
15
+ > .y-card {
16
+ background: rgb(var(--y-theme-surface));
17
+ border-radius: inherit;
18
+ overflow: auto;
19
+ height: 100%;
20
+ }
21
+ }
22
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"YProgressBar.mjs","names":["defineComponent","useProgress","isColorValue","YProgressBar","name","props","value","type","Number","rounded","Boolean","height","noRewindTransition","outlined","innerText","color","String","default","textColor","outlineColor","indeterminate","reverse","setup","numValue","data","delta","computed","classes","noTransition","leadColor","styles","minWidth","transform","render","slots","$slots","_createVNode","undefined","_createTextVNode"],"sources":["../../../src/components/progress-bar/YProgressBar.tsx"],"sourcesContent":["import { PropType, StyleValue, defineComponent } from 'vue';\n\nimport { useProgress } from '../../composables/progress';\nimport './YProgressBar.scss';\nimport { isColorValue } from \"../../util/color\";\n\nexport const YProgressBar = defineComponent({\n name: 'YProgressBar',\n props: {\n value: {\n type: Number as PropType<number>,\n },\n rounded: {\n type: Boolean as PropType<boolean>,\n },\n height: {\n type: Number as PropType<number>,\n },\n noRewindTransition: {\n type: Boolean as PropType<boolean>,\n },\n outlined: {\n type: Boolean as PropType<boolean>,\n },\n innerText: {\n type: Boolean as PropType<boolean>,\n },\n color: {\n type: String as PropType<string>,\n default: 'primary',\n },\n textColor: {\n type: String as PropType<string>,\n },\n outlineColor: {\n type: String as PropType<string>,\n },\n indeterminate: Boolean,\n reverse: Boolean,\n },\n setup(props) {\n const { numValue } = useProgress(props);\n\n return {\n numValue,\n };\n },\n data() {\n return {\n delta: 0,\n };\n },\n computed: {\n classes(): Record<string, boolean> {\n let noTransition = false;\n if (this.noRewindTransition && this.delta < 0) {\n noTransition = true;\n }\n return {\n 'y-progress--no-trans': noTransition,\n 'y-progress--outlined': !!this.outlined,\n 'y-progress--indeterminate': !!this.indeterminate,\n 'y-progress-bar--rounded': !!this.rounded,\n 'y-progress-bar--reverse': !!this.reverse,\n };\n },\n leadColor(): string {\n let color = this.color ?? '';\n if (!isColorValue(color)) {\n color = `var(--y-theme-${color})`;\n }\n return color;\n },\n styles(): StyleValue {\n let minWidth;\n if (this.innerText && this.numValue < 5 && this.numValue > 0) {\n minWidth = '2rem';\n }\n return {\n transform: `scaleX(${this.numValue / 100})`,\n minWidth,\n };\n },\n },\n render() {\n const {\n classes,\n numValue,\n height,\n outlineColor,\n textColor,\n styles,\n innerText,\n } = this;\n const slots = this.$slots;\n return (\n <div\n class={{ 'y-progress y-progress-bar': true, ...classes }}\n role=\"progressbar\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n aria-valuenow={numValue}\n style={{\n '--y-progress-bar__height':\n height !== undefined ? `${height}px` : undefined,\n '--y-progress-bar__outline-color':\n outlineColor !== undefined ? outlineColor : undefined,\n '--y-progress-bar__color': this.leadColor,\n }}\n >\n <div class=\"y-progress__track\"></div>\n <div class=\"y-progress__tube\">\n <div class=\"y-progress__lead\" style={styles}>\n {slots['lead-inner']\n ? slots['lead-inner']()\n : innerText && (\n <div\n class={{\n 'y-progress__lead-inner': true,\n 'y-progress__lead-inner--fixed': numValue < 3,\n }}\n style={{ color: textColor }}\n >\n <span>{numValue} %</span>\n </div>\n )}\n </div>\n </div>\n </div>\n );\n },\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"YProgressBar.mjs","names":["defineComponent","useProgress","isColorValue","YProgressBar","name","props","value","type","Number","rounded","Boolean","height","noRewindTransition","outlined","innerText","color","String","default","textColor","outlineColor","indeterminate","reverse","setup","numValue","data","delta","computed","classes","noTransition","leadColor","styles","minWidth","transform","render","slots","$slots","_createVNode","undefined","_createTextVNode"],"sources":["../../../src/components/progress-bar/YProgressBar.tsx"],"sourcesContent":["import { PropType, StyleValue, defineComponent } from 'vue';\r\n\r\nimport { useProgress } from '../../composables/progress';\r\nimport './YProgressBar.scss';\r\nimport { isColorValue } from \"../../util/color\";\r\n\r\nexport const YProgressBar = defineComponent({\r\n name: 'YProgressBar',\r\n props: {\r\n value: {\r\n type: Number as PropType<number>,\r\n },\r\n rounded: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n height: {\r\n type: Number as PropType<number>,\r\n },\r\n noRewindTransition: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n outlined: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n innerText: {\r\n type: Boolean as PropType<boolean>,\r\n },\r\n color: {\r\n type: String as PropType<string>,\r\n default: 'primary',\r\n },\r\n textColor: {\r\n type: String as PropType<string>,\r\n },\r\n outlineColor: {\r\n type: String as PropType<string>,\r\n },\r\n indeterminate: Boolean,\r\n reverse: Boolean,\r\n },\r\n setup(props) {\r\n const { numValue } = useProgress(props);\r\n\r\n return {\r\n numValue,\r\n };\r\n },\r\n data() {\r\n return {\r\n delta: 0,\r\n };\r\n },\r\n computed: {\r\n classes(): Record<string, boolean> {\r\n let noTransition = false;\r\n if (this.noRewindTransition && this.delta < 0) {\r\n noTransition = true;\r\n }\r\n return {\r\n 'y-progress--no-trans': noTransition,\r\n 'y-progress--outlined': !!this.outlined,\r\n 'y-progress--indeterminate': !!this.indeterminate,\r\n 'y-progress-bar--rounded': !!this.rounded,\r\n 'y-progress-bar--reverse': !!this.reverse,\r\n };\r\n },\r\n leadColor(): string {\r\n let color = this.color ?? '';\r\n if (!isColorValue(color)) {\r\n color = `var(--y-theme-${color})`;\r\n }\r\n return color;\r\n },\r\n styles(): StyleValue {\r\n let minWidth;\r\n if (this.innerText && this.numValue < 5 && this.numValue > 0) {\r\n minWidth = '2rem';\r\n }\r\n return {\r\n transform: `scaleX(${this.numValue / 100})`,\r\n minWidth,\r\n };\r\n },\r\n },\r\n render() {\r\n const {\r\n classes,\r\n numValue,\r\n height,\r\n outlineColor,\r\n textColor,\r\n styles,\r\n innerText,\r\n } = this;\r\n const slots = this.$slots;\r\n return (\r\n <div\r\n class={{ 'y-progress y-progress-bar': true, ...classes }}\r\n role=\"progressbar\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n aria-valuenow={numValue}\r\n style={{\r\n '--y-progress-bar__height':\r\n height !== undefined ? `${height}px` : undefined,\r\n '--y-progress-bar__outline-color':\r\n outlineColor !== undefined ? outlineColor : undefined,\r\n '--y-progress-bar__color': this.leadColor,\r\n }}\r\n >\r\n <div class=\"y-progress__track\"></div>\r\n <div class=\"y-progress__tube\">\r\n <div class=\"y-progress__lead\" style={styles}>\r\n {slots['lead-inner']\r\n ? slots['lead-inner']()\r\n : innerText && (\r\n <div\r\n class={{\r\n 'y-progress__lead-inner': true,\r\n 'y-progress__lead-inner--fixed': numValue < 3,\r\n }}\r\n style={{ color: textColor }}\r\n >\r\n <span>{numValue} %</span>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n },\r\n});\r\n"],"mappings":"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"}