dso-toolkit 81.1.0 → 83.0.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.
Files changed (42) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/dist/dso.css +57 -1271
  3. package/dist/dso.css.map +1 -1
  4. package/dist/dso.min.css +1 -1
  5. package/dist/dso.min.css.map +1 -1
  6. package/dist/index.js +0 -2
  7. package/package.json +19 -19
  8. package/src/components/definition-list/definition-list.scss +1 -1
  9. package/src/components/form-group/checkboxes/form-group-checkboxes.scss +3 -3
  10. package/src/components/form-group/confirm/form-group-confirm.scss +2 -2
  11. package/src/components/form-group/files/form-group-files.scss +1 -2
  12. package/src/components/form-group/radios/form-group-radios.scss +5 -7
  13. package/src/components/justify-form-groups/justify-form-groups.scss +1 -1
  14. package/src/components/preformatted-text/preformatted-text.scss +1 -1
  15. package/src/dso.scss +0 -6
  16. package/src/global/spacing.scss +17 -0
  17. package/src/utilities.scss +2 -2
  18. package/src/components/accordion/_index.scss +0 -1
  19. package/src/components/accordion/accordion-theme-compact.scss +0 -161
  20. package/src/components/accordion/accordion-theme-conclusion.scss +0 -119
  21. package/src/components/accordion/accordion-theme-default.scss +0 -115
  22. package/src/components/accordion/accordion.scss +0 -400
  23. package/src/components/accordion/accordion.variables.scss +0 -35
  24. package/src/components/accordion/readme.md +0 -33
  25. package/src/components/card/_index.scss +0 -1
  26. package/src/components/card/card.scss +0 -126
  27. package/src/components/card/card.variables.scss +0 -7
  28. package/src/components/document-list/document-list.scss +0 -97
  29. package/src/components/document-list/readme.md +0 -1
  30. package/src/components/progress-bar/_index.scss +0 -2
  31. package/src/components/progress-bar/progress-bar.mixins.scss +0 -27
  32. package/src/components/progress-bar/progress-bar.scss +0 -5
  33. package/src/components/progress-bar/progress-bar.variables.scss +0 -9
  34. package/src/components/progress-bar/readme.md +0 -1
  35. package/src/components/progress-indicator/_index.scss +0 -1
  36. package/src/components/progress-indicator/progress-indicator.mixins.scss +0 -55
  37. package/src/components/progress-indicator/progress-indicator.scss +0 -40
  38. package/src/components/selectable/_index.scss +0 -2
  39. package/src/components/selectable/readme.md +0 -1
  40. package/src/components/selectable/selectable.mixins.scss +0 -238
  41. package/src/components/selectable/selectable.scss +0 -25
  42. package/src/components/selectable/selectable.variables.scss +0 -13
@@ -1,400 +0,0 @@
1
- @use "../../variables/units";
2
- @use "../../variables/colors";
3
- @use "../../variables/typography";
4
- @use "../../components/link";
5
- @use "../../components/accordion";
6
-
7
- @use "../../di";
8
-
9
- @use "accordion-theme-compact";
10
- @use "accordion-theme-conclusion";
11
- @use "accordion-theme-default";
12
-
13
- .dso-accordion {
14
- margin-block-end: units.$block-spacing-xlarge;
15
-
16
- // dit is een nested accordion.
17
- .dso-accordion {
18
- margin-block-end: 0;
19
- }
20
-
21
- .dso-section-body {
22
- border-block-start: 0;
23
- margin-block-start: accordion.$border-radius * -1;
24
- padding-block: units.$u2 + accordion.$border-radius units.$u2;
25
- padding-inline: units.$u2;
26
-
27
- > *:first-child:not(.dso-info) {
28
- margin-block-start: 0;
29
- }
30
-
31
- > *:last-child:not(.dso-info) {
32
- margin-block-end: 0;
33
- }
34
-
35
- .dso-rich-content + .dso-accordion,
36
- .dso-accordion + .dso-rich-content {
37
- margin-block-start: units.$u2;
38
- }
39
- }
40
-
41
- &.dso-accordion-reverse-align {
42
- .dso-section-handle {
43
- a,
44
- button {
45
- padding-inline-start: units.$u2;
46
- padding-inline-end: units.$u6;
47
-
48
- &::before {
49
- inset-inline: auto 0;
50
- }
51
-
52
- .dso-icon {
53
- display: block;
54
- float: inline-start;
55
- font-weight: 400;
56
- margin-inline-start: 0;
57
- margin-inline-end: units.$u1;
58
- padding-inline-start: 0;
59
- text-decoration: underline;
60
- }
61
- }
62
- }
63
- }
64
-
65
- &:not(.dso-accordion-compact):not(.dso-accordion-conclusion):not(.dso-accordion-compact-black) {
66
- &,
67
- .dso-nested-accordion .dso-accordion {
68
- @include accordion-theme-default.default();
69
- }
70
- }
71
-
72
- &.dso-accordion-conclusion {
73
- &,
74
- .dso-nested-accordion .dso-accordion {
75
- @include accordion-theme-conclusion.conclusion();
76
- }
77
- }
78
-
79
- &:not(.dso-accordion-compact):not(.dso-accordion-compact-black).dso-accordion-reverse-align .dso-section-handle {
80
- a::before,
81
- button::before {
82
- inset-inline-end: units.$u2;
83
- }
84
- }
85
-
86
- &.dso-accordion-compact,
87
- &.dso-accordion-compact-black {
88
- &,
89
- .dso-nested-accordion .dso-accordion {
90
- @include accordion-theme-compact.compact();
91
- }
92
-
93
- .dso-accordion-wijzigactie-voegtoe {
94
- background-color: colors.$lime-20;
95
-
96
- .dso-section-body {
97
- background-color: colors.$lime-20;
98
- }
99
- }
100
-
101
- .dso-accordion-wijzigactie-verwijder {
102
- text-decoration: line-through;
103
- background-color: colors.$rood-20;
104
-
105
- .dso-section-body {
106
- text-decoration: line-through;
107
- background-color: colors.$rood-20;
108
- }
109
- }
110
- }
111
-
112
- &.dso-accordion-compact-black {
113
- .dso-accordion-section {
114
- .dso-section-handle {
115
- a,
116
- a:hover,
117
- button,
118
- button:hover {
119
- color: accordion.$compact-black-color;
120
- &::before {
121
- @include di.base("chevron-right-zwart", accordion.$chevron-icon-size);
122
- }
123
- }
124
- }
125
- &.dso-open:not(.dso-nested-accordion) {
126
- .dso-section-handle {
127
- a,
128
- a:hover,
129
- button,
130
- button:hover {
131
- color: accordion.$compact-black-color;
132
- &::before {
133
- @include di.base("chevron-down-zwart", accordion.$chevron-icon-size);
134
- }
135
- }
136
- }
137
- }
138
- &.dso-accordion-section-activate {
139
- .dso-section-handle {
140
- display: flex;
141
- }
142
-
143
- dso-slide-toggle {
144
- margin-block-start: accordion.$block-padding - accordion.$compact-border-width;
145
- margin-inline: units.$u1;
146
-
147
- button.dso-slider {
148
- padding-inline-start: 0;
149
- }
150
-
151
- button.dso-slider,
152
- button.dso-slider:hover {
153
- &::before,
154
- &::after {
155
- content: none;
156
- }
157
- }
158
- }
159
- }
160
- }
161
- }
162
-
163
- &.dso-accordion-compact-black.dso-accordion-reverse-align {
164
- .dso-accordion-section:not(.dso-open) {
165
- .dso-section-handle {
166
- a,
167
- a:hover,
168
- button,
169
- button:hover {
170
- &::before {
171
- @include di.base("chevron-down-zwart", accordion.$chevron-icon-size);
172
- }
173
- }
174
- }
175
- }
176
- .dso-accordion-section {
177
- &.dso-open:not(.dso-nested-accordion) {
178
- .dso-section-handle {
179
- a,
180
- a:hover,
181
- button,
182
- button:hover {
183
- &::before {
184
- @include di.base("chevron-up-zwart", accordion.$chevron-icon-size);
185
- }
186
- }
187
- }
188
- }
189
- }
190
- }
191
-
192
- .dso-section-body dl:last-child {
193
- margin-block-end: 0;
194
- }
195
- }
196
-
197
- // Section
198
- .dso-section-handle {
199
- font-weight: 600;
200
- position: relative;
201
-
202
- a {
203
- @include link.clean();
204
- }
205
-
206
- a,
207
- button {
208
- align-items: flex-start;
209
- background-color: transparent;
210
- border: 0;
211
- display: flex;
212
- padding-block: accordion.$block-padding;
213
- padding-inline: accordion.$chevron-inline-start-offset accordion.$inline-padding;
214
- text-align: start;
215
- inline-size: 100%;
216
- overflow-wrap: anywhere;
217
-
218
- &::before {
219
- content: "";
220
- display: inline-block;
221
- inset-inline-start: units.$u2;
222
- position: absolute;
223
- }
224
-
225
- &::after {
226
- content: "";
227
- position: absolute;
228
- inset-inline-end: units.$u2;
229
- inset-block-start: (accordion.$handle-block-size - accordion.$state-icon-size) * 0.5;
230
- }
231
-
232
- .dso-section-handle-addons {
233
- margin-inline-start: auto;
234
- text-align: end;
235
-
236
- .dso-status,
237
- .dso-icon {
238
- font-weight: 400;
239
- font-size: typography.$font-size-small;
240
- margin-inline-start: units.$u2;
241
- }
242
-
243
- dso-attachments-counter,
244
- .dso-attachments {
245
- margin-inline-start: units.$u2;
246
- }
247
-
248
- .dso-attachments {
249
- &::after {
250
- @include di.base("paperclip-grijs", accordion.$chevron-icon-size);
251
- }
252
- }
253
- }
254
-
255
- > .dso-label {
256
- padding-inline-start: units.$u1;
257
- word-break: normal;
258
-
259
- & + .dso-icon,
260
- & + .dso-attachments,
261
- & + .dso-status {
262
- margin-inline-start: 0;
263
- }
264
- }
265
- }
266
- }
267
-
268
- // Create space between sections of the default accordion
269
- // ------------------------------------------------------
270
- :where(.dso-accordion-section) {
271
- & + & {
272
- margin-block-start: units.$u1 * 0.5;
273
- }
274
- }
275
-
276
- // exceptions to the rule ^^:
277
- :where(.dso-accordion-compact, .dso-accordion-compact-black) {
278
- + :where(.dso-accordion-section) {
279
- margin-block-start: 0;
280
- }
281
- }
282
-
283
- .dso-accordion-section {
284
- .dso-section-handle,
285
- > h1.dso-section-handle,
286
- > h2.dso-section-handle,
287
- > h3.dso-section-handle,
288
- > h4.dso-section-handle,
289
- > h5.dso-section-handle {
290
- font-size: 1em;
291
- line-height: accordion.$handle-line-height;
292
- margin: 0;
293
-
294
- a:active {
295
- text-decoration: none;
296
- }
297
- }
298
-
299
- &.dso-success,
300
- &.dso-error,
301
- &.dso-danger,
302
- &.dso-warning,
303
- &.dso-info {
304
- > .dso-section-handle {
305
- a,
306
- button {
307
- padding-inline-end: units.$u7;
308
- }
309
- }
310
- }
311
-
312
- &.dso-success {
313
- > .dso-section-handle {
314
- a::after,
315
- button::after {
316
- @include di.base("status-success", accordion.$chevron-icon-size);
317
- }
318
- }
319
- }
320
-
321
- &.dso-error {
322
- > .dso-section-handle {
323
- a::after,
324
- button::after {
325
- @include di.base("status-error", accordion.$chevron-icon-size);
326
- }
327
- }
328
- }
329
-
330
- &.dso-danger {
331
- > .dso-section-handle {
332
- a::after,
333
- button::after {
334
- @include di.base("status-danger", accordion.$chevron-icon-size);
335
- }
336
- }
337
- }
338
-
339
- &.dso-warning {
340
- > .dso-section-handle {
341
- a::after,
342
- button::after {
343
- @include di.base("status-warning", accordion.$chevron-icon-size);
344
- }
345
- }
346
- }
347
-
348
- &.dso-info {
349
- > .dso-section-handle {
350
- a::after,
351
- button::after {
352
- @include di.base("status-info", accordion.$chevron-icon-size);
353
- }
354
- }
355
- }
356
-
357
- &.dso-open {
358
- &.dso-nested-accordion {
359
- border-radius: 0 0 accordion.$border-radius accordion.$border-radius;
360
-
361
- > .dso-section-body {
362
- padding-block: (units.$u2 + accordion.$border-radius - 1) units.$u2; // corrections for missing borders in nested accordion
363
- padding-inline: (units.$u2 + 1); // corrections for missing borders in nested accordion
364
- }
365
-
366
- .dso-accordion-section .dso-section-body {
367
- background-color: colors.$wit;
368
- }
369
- }
370
- }
371
-
372
- &:not(.dso-open) {
373
- .dso-section-body {
374
- display: none;
375
- }
376
- }
377
- }
378
-
379
- // Web component
380
- dso-accordion-section {
381
- > *:first-child:not(.dso-info) {
382
- margin-block-start: 0;
383
- }
384
-
385
- > *:last-child:not(.dso-info) {
386
- margin-block-end: 0;
387
- }
388
-
389
- &.dso-accordion-compact:last-child,
390
- &.dso-accordion-compact-black:last-child {
391
- border-block-end: 1px solid accordion.$compact-border-color;
392
- }
393
- }
394
-
395
- dso-accordion {
396
- .dso-rich-content + dso-accordion,
397
- dso-accordion + .dso-rich-content {
398
- margin-block-start: units.$u2;
399
- }
400
- }
@@ -1,35 +0,0 @@
1
- @use "../../variables/colors";
2
- @use "../../variables/units";
3
-
4
- $default-border-color: colors.$mauve;
5
- $default-color: colors.$mauve;
6
- $default-nested-handle-bgcolor: colors.$mauve;
7
- $default-nested-body-bgcolor: colors.$grijs-10;
8
-
9
- $conclusion-bgcolor: colors.$grijs-5;
10
- $conclusion-hover-bgcolor: colors.$grijs-10;
11
- $conclusion-border-color: colors.$grijs-5;
12
- $conclusion-color: colors.$zwart;
13
- $conclusion-nested-handle-bgcolor: $conclusion-bgcolor;
14
- $conclusion-nested-body-bgcolor: colors.$wit;
15
-
16
- $compact-color: colors.$grasgroen;
17
- $compact-border-color: colors.$grijs-20;
18
- $compact-border-width: 1px;
19
-
20
- $compact-black-color: colors.$zwart;
21
-
22
- $neutral-color: colors.$zwart;
23
- $neutral-border-color: colors.$bosgroen;
24
-
25
- $border-radius: units.$u1 * 0.5;
26
- $inline-padding: units.$u2;
27
- $block-padding: units.$u1 * 1.5;
28
- $chevron-icon-size: units.$u3;
29
- $chevron-space: units.$u3;
30
- $chevron-inline-start-offset: $chevron-icon-size + $chevron-space;
31
- $handle-line-height: 1.375em;
32
- $handle-block-size: units.$u6;
33
- $state-icon-size: units.$u3;
34
-
35
- $slide-toggle-inline-size: units.$u5;
@@ -1,33 +0,0 @@
1
- # `.dso-accordion`
2
-
3
- Varianten:
4
-
5
- - `.dso-accordion.dso-accordion-compact`
6
- - `.dso-accordion.dso-accordion-conclusion`
7
-
8
- ## Instructies voor afnemers
9
-
10
- Een accordion (`.dso-accordion`) bestaat uit secties (`.dso-accordion-section`). Een sectie heeft een handle (`.dso-section-handle`) en body (`.dso-section-body`).
11
-
12
- Een accordion section in de state "open" moet een `.dso-open` class op `.dso-accordion-section` krijgen. Dit zorgt voor het "chevron-up"-icoon. Ook als het `.dso-accordion-section` element niet in het DOM staat, moet een open accordion altijd `.dso-open` krijgen.
13
-
14
- Er zijn 4 modifiers: `.dso-succes`, `.dso-warning`, `.dso-info` en `.dso-error` die op de `.dso-accordion-section` kunnen.
15
-
16
- Het is mogelijk om een accordion in een accordion te plaatsen. Er moet dan wel `.dso-nested-accordion` op de `.dso-accordion-section` worden gezet.
17
-
18
- Voegt u via een modifier een statusicoon toe aan de uitklapbare knop (`.dso-succes`, `.dso-warning`, `.dso-info` of `.dso-error`)? Let dan op de volgende dingen:
19
-
20
- - Beschrijf de betekenis van het statusicoon in de context van de accordion met een .sr-only span. Plaats deze in de tekst van de knop.
21
- - Voorbeeldtekst voor `.dso-succes`: "Informatie bouwwerkzaamheden `<span class="sr-only">(afgerond)</span>`"
22
-
23
- ## Gedrag en toegankelijkheid
24
-
25
- Let bij implementatie van het accordion op het volgende:
26
-
27
- - Gebruik voor de uitklapbare knoppen `<button>` als de locatie van de gebruiker ongewijzigd blijft. Als er genavigeerd wordt, gebruik dan een `<a>`.
28
- - Geef deze knoppen een heading op het juiste niveau.
29
- - Meestal is dat 1 niveau onder het niveau van de heading die boven het accordion staat. Stel dat het accordion direct onder de paginatitel staat (dat is een `<h1>`). Dan krijgt de knop `<h2>`.
30
- - In een genest accordion heeft de geneste knop een heading van 1 niveau onder de heading van de bovenliggende knop. Stel dat de bovenliggende knop een `<h2>` heeft. Dan krijgt de geneste knop een `<h3>`.
31
- - Geef de knoppen het aria-expanded attribuut. Screenreaders hebben dit attribuut nodig om te bepalen of een knop is ingeklapt of uitgeklapt.
32
- - Zorg daarnaast dat scripting de modifier `.dso-open` meegeeft (zie HTML) aan het bovenliggende element van een uitgeklapte knop. De scripting moet de modifier weer weghalen bij het inklappen. Daarmee zorg je dat het verschil tussen een ingeklapte knop en een uitgeklapte knop goed zichtbaar is.
33
- - Zorg dat de scripting het attribuut `aria-expanded="true"` zet bij het uitklappen en op `"false"` bij het inklappen.
@@ -1 +0,0 @@
1
- @forward "card.variables";
@@ -1,126 +0,0 @@
1
- @use "../../variables/colors";
2
- @use "../../variables/media-query-breakpoints";
3
- @use "../../variables/units";
4
-
5
- @use "card.variables" as card-variables;
6
-
7
- @use "../button";
8
-
9
- .dso-card {
10
- &:has(.dso-card-heading a:is(:hover, :focus-visible)) {
11
- background-color: colors.$grijs-5;
12
-
13
- .dso-card-heading a:hover {
14
- color: card-variables.$heading-anchor-hover-color;
15
- text-decoration: underline;
16
- }
17
- }
18
-
19
- &.dso-is-selectable {
20
- .dso-card-container {
21
- display: grid;
22
- grid-template-columns: 1fr minmax(0, 100%);
23
-
24
- .dso-card-heading,
25
- .dso-card-content {
26
- grid-column: 2 /-1;
27
- }
28
- }
29
- }
30
-
31
- .dso-rich-content.dso-rich-content {
32
- :first-child {
33
- margin-block-start: 0;
34
- }
35
-
36
- :last-child {
37
- margin-block-end: 0;
38
- }
39
- }
40
-
41
- .dso-selectable {
42
- label {
43
- font-size: 0;
44
- }
45
- }
46
-
47
- .dso-card-container {
48
- padding-block: units.$u2;
49
- padding-inline: units.$u2;
50
- inline-size: 100%;
51
-
52
- &.dso-card-active {
53
- background-color: card-variables.$background-color-active;
54
- }
55
-
56
- .dso-card-selectable {
57
- grid-row: span 2;
58
- }
59
- }
60
-
61
- .dso-card-heading {
62
- align-items: center;
63
- display: flex;
64
- margin-block-end: units.$u1;
65
-
66
- h2:first-child,
67
- h3:first-child,
68
- h4:first-child,
69
- h5:first-child {
70
- align-items: center;
71
- display: flex;
72
- font-size: 1.125em;
73
- margin-block-end: 0;
74
- margin-block-start: 0;
75
-
76
- span {
77
- margin-inline-end: units.$u1 * 0.5;
78
-
79
- + dso-icon {
80
- flex-shrink: 0;
81
- position: relative;
82
- }
83
- }
84
- }
85
-
86
- a {
87
- text-decoration: none;
88
-
89
- &,
90
- &#{button.$not-dso-buttons}:visited,
91
- &:active,
92
- &:focus-visible {
93
- color: card-variables.$heading-anchor-color;
94
- }
95
- }
96
-
97
- @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {
98
- flex-wrap: wrap;
99
- }
100
- }
101
-
102
- .dso-card-interactions {
103
- display: flex;
104
- justify-content: space-between;
105
- margin-inline-start: auto;
106
-
107
- .dso-card-interaction {
108
- align-items: center;
109
- display: flex;
110
- text-align: center;
111
-
112
- p {
113
- margin-block-end: 0;
114
- }
115
- }
116
-
117
- .dso-info-button {
118
- margin: 0;
119
- }
120
-
121
- @media screen and (max-width: media-query-breakpoints.$screen-xs-min) {
122
- flex-basis: 100%;
123
- margin-block-start: units.$u2;
124
- }
125
- }
126
- }
@@ -1,7 +0,0 @@
1
- @use "../../variables/colors";
2
-
3
- $background-color-hover: colors.$grijs-5;
4
- $background-color-active: colors.$grijs-10;
5
-
6
- $heading-anchor-color: colors.$bosgroen;
7
- $heading-anchor-hover-color: colors.$bosgroen;
@@ -1,97 +0,0 @@
1
- @use "../../utilities";
2
- @use "../../variables/units";
3
- @use "../../variables/colors";
4
- @use "../list";
5
-
6
- @use "../grid/grid.variables" as css-grid-variables;
7
-
8
- .dso-document-list {
9
- @include list.unstyled();
10
- margin-block: 0;
11
- margin-inline: css-grid-variables.$grid-gutter-width * -0.5;
12
- }
13
-
14
- .dso-document-list-item {
15
- display: flex;
16
- flex-direction: column;
17
-
18
- &.dso-document-list-item-sticky {
19
- .dso-document-list-item-heading {
20
- padding-block: css-grid-variables.$grid-gutter-width * 0.25;
21
- padding-inline: css-grid-variables.$grid-gutter-width * 0.5;
22
-
23
- h2 {
24
- font-size: 1.25rem;
25
- line-height: 1.2;
26
- }
27
-
28
- .dso-document-list-item-container {
29
- display: none;
30
- }
31
- }
32
- }
33
-
34
- .dso-document-list-item-heading {
35
- background-color: colors.$grijs-5;
36
- color: colors.$zwart;
37
- padding: #{css-grid-variables.$grid-gutter-width * 0.5};
38
- inline-size: 100%;
39
-
40
- a {
41
- color: colors.$zwart;
42
- }
43
-
44
- > :first-child {
45
- margin: 0;
46
- }
47
-
48
- .dso-document-list-item-container {
49
- position: relative;
50
- }
51
-
52
- .dso-document-list-item-type,
53
- .dso-document-list-item-owner {
54
- margin-block: 0 units.$u1;
55
- margin-inline: 0;
56
- display: inline-block;
57
- }
58
-
59
- .dso-document-list-item-status {
60
- dso-badge,
61
- .dso-badge {
62
- margin-inline-end: units.$u1;
63
- }
64
- }
65
- }
66
-
67
- .dso-document-list-item-content {
68
- padding: #{css-grid-variables.$grid-gutter-width * 0.5};
69
- }
70
- }
71
-
72
- .dso-document-list-item-open-document {
73
- float: inline-end;
74
- }
75
-
76
- dso-responsive-element[small] > .dso-document-list {
77
- .dso-document-list-item-container {
78
- @include utilities.clearfix();
79
- }
80
-
81
- .dso-document-list-item-status {
82
- margin-block: 0 units.$u1;
83
- margin-inline: 0;
84
- }
85
- }
86
-
87
- dso-responsive-element:not([small]) > .dso-document-list {
88
- .dso-document-list-item {
89
- &-type {
90
- margin-inline-end: units.$u1;
91
- }
92
-
93
- &-status {
94
- margin: 0;
95
- }
96
- }
97
- }
@@ -1 +0,0 @@
1
- # `.dso-document-list`
@@ -1,2 +0,0 @@
1
- @forward "progress-bar.mixins";
2
- @forward "progress-bar.variables";