@gov-design-system-ce/components 0.0.54 → 0.0.56

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 (125) hide show
  1. package/dist/cjs/{constants-393e915a.js → constants-dde21dcf.js} +4 -4
  2. package/dist/cjs/{constants-393e915a.js.map → constants-dde21dcf.js.map} +1 -1
  3. package/dist/cjs/core.cjs.js +1 -1
  4. package/dist/cjs/gov-accordion-item.cjs.entry.js +3 -3
  5. package/dist/cjs/gov-accordion-item.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gov-accordion.cjs.entry.js +1 -1
  7. package/dist/cjs/gov-app.cjs.entry.js +68 -23
  8. package/dist/cjs/gov-app.cjs.entry.js.map +1 -1
  9. package/dist/cjs/gov-form-file.cjs.entry.js +14 -2
  10. package/dist/cjs/gov-form-file.cjs.entry.js.map +1 -1
  11. package/dist/cjs/gov-icon.cjs.entry.js +1 -1
  12. package/dist/cjs/gov-message.cjs.entry.js +1 -1
  13. package/dist/cjs/gov-message.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gov-tile.cjs.entry.js +3 -17
  15. package/dist/cjs/gov-tile.cjs.entry.js.map +1 -1
  16. package/dist/cjs/loader.cjs.js +1 -1
  17. package/dist/collection/components/gov-accordion/constants.js +3 -3
  18. package/dist/collection/components/gov-accordion/constants.js.map +1 -1
  19. package/dist/collection/components/gov-accordion/gov-accordion-item.css +96 -68
  20. package/dist/collection/components/gov-accordion/gov-accordion-item.js +1 -1
  21. package/dist/collection/components/gov-accordion/gov-accordion-item.js.map +1 -1
  22. package/dist/collection/components/gov-form/file/gov-form-file.js +31 -2
  23. package/dist/collection/components/gov-form/file/gov-form-file.js.map +1 -1
  24. package/dist/collection/components/gov-message/gov-message.js +1 -1
  25. package/dist/collection/components/gov-message/gov-message.js.map +1 -1
  26. package/dist/collection/components/gov-tile/gov-tile.css +17 -36
  27. package/dist/collection/components/gov-tile/gov-tile.js +19 -45
  28. package/dist/collection/components/gov-tile/gov-tile.js.map +1 -1
  29. package/dist/collection/pages/Accordion.js +41 -2
  30. package/dist/collection/pages/Accordion.js.map +1 -1
  31. package/dist/collection/pages/Tiles.js +27 -21
  32. package/dist/collection/pages/Tiles.js.map +1 -1
  33. package/dist/components/gov-accordion-item.js +1 -1
  34. package/dist/components/gov-accordion-item.js.map +1 -1
  35. package/dist/components/gov-accordion.js +1 -1
  36. package/dist/components/gov-alert.js +1 -1
  37. package/dist/components/gov-app.js +1 -1
  38. package/dist/components/gov-app.js.map +1 -1
  39. package/dist/components/gov-attachments-item.js +1 -1
  40. package/dist/components/gov-button.js +1 -1
  41. package/dist/components/gov-card.js +1 -1
  42. package/dist/components/gov-form-autocomplete.js +1 -1
  43. package/dist/components/gov-form-checkbox.js +1 -1
  44. package/dist/components/gov-form-file.js +1 -1
  45. package/dist/components/gov-form-file.js.map +1 -1
  46. package/dist/components/gov-form-input.js +1 -1
  47. package/dist/components/gov-form-multi-select.js +1 -1
  48. package/dist/components/gov-form-select.js +1 -1
  49. package/dist/components/gov-icon.js +1 -1
  50. package/dist/components/gov-loading.js +1 -1
  51. package/dist/components/gov-message.js.map +1 -1
  52. package/dist/components/gov-modal.js +1 -1
  53. package/dist/components/gov-pagination.js +1 -1
  54. package/dist/components/gov-prompt.js +1 -1
  55. package/dist/components/gov-side-nav-item.js +1 -1
  56. package/dist/components/gov-tabs.js +1 -1
  57. package/dist/components/gov-tile.js +1 -1
  58. package/dist/components/gov-tile.js.map +1 -1
  59. package/dist/components/gov-toast.js +1 -1
  60. package/dist/components/gov-wizard-item.js +1 -1
  61. package/dist/components/{p-c055eb68.js → p-04bfe959.js} +2 -2
  62. package/dist/components/{p-3a46b683.js → p-2753b6e4.js} +2 -2
  63. package/dist/components/{p-e9a01d67.js → p-594ba760.js} +2 -2
  64. package/dist/components/{p-d6ab5b8a.js → p-6ca0c464.js} +2 -2
  65. package/dist/components/p-74b2311a.js +2 -0
  66. package/dist/components/p-74b2311a.js.map +1 -0
  67. package/dist/components/{p-b9388dc1.js → p-baf87688.js} +2 -2
  68. package/dist/components/{p-560846c7.js → p-f516d8f6.js} +2 -2
  69. package/dist/core/core.esm.js +1 -1
  70. package/dist/core/core.esm.js.map +1 -1
  71. package/dist/core/{p-dbb46457.entry.js → p-13624a77.entry.js} +2 -2
  72. package/dist/core/p-13624a77.entry.js.map +1 -0
  73. package/dist/core/{p-b9b57928.entry.js → p-4df62a13.entry.js} +2 -2
  74. package/dist/core/p-5316e768.entry.js.map +1 -1
  75. package/dist/core/p-74b2311a.js +2 -0
  76. package/dist/core/p-74b2311a.js.map +1 -0
  77. package/dist/core/p-74ce7780.entry.js +2 -0
  78. package/dist/core/p-74ce7780.entry.js.map +1 -0
  79. package/dist/core/p-74f0be51.entry.js +2 -0
  80. package/dist/core/p-74f0be51.entry.js.map +1 -0
  81. package/dist/core/p-801f1147.entry.js +2 -0
  82. package/dist/core/p-801f1147.entry.js.map +1 -0
  83. package/dist/core/{p-44af4bc9.entry.js → p-87aca157.entry.js} +2 -2
  84. package/dist/esm/{constants-858966b9.js → constants-09bda759.js} +4 -4
  85. package/dist/esm/{constants-858966b9.js.map → constants-09bda759.js.map} +1 -1
  86. package/dist/esm/core.js +1 -1
  87. package/dist/esm/gov-accordion-item.entry.js +3 -3
  88. package/dist/esm/gov-accordion-item.entry.js.map +1 -1
  89. package/dist/esm/gov-accordion.entry.js +1 -1
  90. package/dist/esm/gov-app.entry.js +68 -23
  91. package/dist/esm/gov-app.entry.js.map +1 -1
  92. package/dist/esm/gov-form-file.entry.js +14 -2
  93. package/dist/esm/gov-form-file.entry.js.map +1 -1
  94. package/dist/esm/gov-icon.entry.js +1 -1
  95. package/dist/esm/gov-message.entry.js +1 -1
  96. package/dist/esm/gov-message.entry.js.map +1 -1
  97. package/dist/esm/gov-tile.entry.js +3 -17
  98. package/dist/esm/gov-tile.entry.js.map +1 -1
  99. package/dist/esm/loader.js +1 -1
  100. package/dist/hydrate/index.js +93 -49
  101. package/dist/types/components/gov-accordion/constants.d.ts +3 -3
  102. package/dist/types/components/gov-form/file/gov-form-file.d.ts +4 -0
  103. package/dist/types/components/gov-message/gov-message.d.ts +1 -1
  104. package/dist/types/components/gov-tile/gov-tile.d.ts +4 -8
  105. package/dist/types/components.d.ts +10 -12
  106. package/package.json +2 -2
  107. package/dist/components/p-37a7409e.js +0 -2
  108. package/dist/components/p-37a7409e.js.map +0 -1
  109. package/dist/core/p-37a7409e.js +0 -2
  110. package/dist/core/p-37a7409e.js.map +0 -1
  111. package/dist/core/p-3b236ac2.entry.js +0 -2
  112. package/dist/core/p-3b236ac2.entry.js.map +0 -1
  113. package/dist/core/p-af7a89bc.entry.js +0 -2
  114. package/dist/core/p-af7a89bc.entry.js.map +0 -1
  115. package/dist/core/p-d1b7d8a6.entry.js +0 -2
  116. package/dist/core/p-d1b7d8a6.entry.js.map +0 -1
  117. package/dist/core/p-dbb46457.entry.js.map +0 -1
  118. /package/dist/components/{p-c055eb68.js.map → p-04bfe959.js.map} +0 -0
  119. /package/dist/components/{p-3a46b683.js.map → p-2753b6e4.js.map} +0 -0
  120. /package/dist/components/{p-e9a01d67.js.map → p-594ba760.js.map} +0 -0
  121. /package/dist/components/{p-d6ab5b8a.js.map → p-6ca0c464.js.map} +0 -0
  122. /package/dist/components/{p-b9388dc1.js.map → p-baf87688.js.map} +0 -0
  123. /package/dist/components/{p-560846c7.js.map → p-f516d8f6.js.map} +0 -0
  124. /package/dist/core/{p-b9b57928.entry.js.map → p-4df62a13.entry.js.map} +0 -0
  125. /package/dist/core/{p-44af4bc9.entry.js.map → p-87aca157.entry.js.map} +0 -0
@@ -287,26 +287,15 @@
287
287
  .gov-accordion-item__header[aria-expanded=""] .gov-accordion-item__arrow .gov-icon:not([slot=toggle-icon]), .gov-accordion-item__header[aria-expanded=true i] .gov-accordion-item__arrow .gov-icon:not([slot=toggle-icon]), .gov-accordion-item__header[aria-expanded="1"] .gov-accordion-item__arrow .gov-icon:not([slot=toggle-icon]) {
288
288
  transform: scale(-1);
289
289
  }
290
- .gov-accordion-item__arrow {
291
- flex: 0 0 auto;
292
- margin-left: auto;
293
- }
294
290
  .gov-accordion-item__icon {
295
291
  display: inline-flex;
296
292
  vertical-align: middle;
297
293
  flex: 0 0 auto;
298
294
  }
299
- .gov-accordion-item__suffix {
300
- display: inline-flex;
301
- vertical-align: middle;
302
- flex: 0 0 auto;
303
- align-self: start;
304
- margin-left: auto;
305
- line-height: initial;
306
- }
307
295
  .gov-accordion-item__title {
308
296
  display: flex;
309
297
  flex-direction: column;
298
+ margin-right: auto;
310
299
  }
311
300
  .gov-accordion-item__label * {
312
301
  margin-bottom: 0;
@@ -316,127 +305,166 @@
316
305
  color: var(--gov-color-secondary);
317
306
  margin-bottom: 0;
318
307
  }
308
+ .gov-accordion-item__right {
309
+ display: flex;
310
+ align-items: center;
311
+ margin-left: auto;
312
+ }
313
+ .gov-accordion-item__suffix {
314
+ display: inline-flex;
315
+ vertical-align: middle;
316
+ flex: 0 0 auto;
317
+ align-self: start;
318
+ line-height: initial;
319
+ }
320
+ .gov-accordion-item__arrow {
321
+ flex: 0 0 auto;
322
+ }
319
323
  .gov-accordion-item__content > *:last-child {
320
324
  margin-bottom: 0;
321
325
  }
322
- .gov-accordion-item[size=xs] .gov-accordion-item__header {
326
+ .gov-accordion-item[size=xs] .gov-accordion-item__header, .gov-accordion-item .gov-accordion-item[size=xs] .gov-accordion-item__header {
323
327
  gap: var(--gov-accordion-xs-headline-gap, 0.5rem);
324
328
  min-height: var(--gov-accordion-xs-min-height, 3rem);
325
329
  padding: var(--gov-accordion-xs-padding-y, 0.75rem) var(--gov-accordion-xs-padding-x, 0.5rem);
326
330
  }
327
- .gov-accordion-item[size=xs] .gov-accordion-item__label * {
331
+ .gov-accordion-item[size=xs] .gov-accordion-item__icon, .gov-accordion-item .gov-accordion-item[size=xs] .gov-accordion-item__icon {
332
+ width: calc(var(--gov-text-m-font-size) * 1.2);
333
+ height: calc(var(--gov-text-m-font-size) * 1.2);
334
+ transform: translateY(var(--gov-accordion-xs-icon-position, 0.1875rem));
335
+ }
336
+ .gov-accordion-item[size=xs] .gov-accordion-item__label *, .gov-accordion-item .gov-accordion-item[size=xs] .gov-accordion-item__label * {
328
337
  font-weight: var(--gov-text-m-font-weight);
329
338
  font-size: var(--gov-text-m-font-size);
330
339
  line-height: var(--gov-text-m-line-height);
331
340
  letter-spacing: var(--gov-text-m-letter-spacing);
332
341
  }
333
- .gov-accordion-item[size=xs] .gov-accordion-item__arrow {
334
- width: var(--gov-accordion-xs-icon-size, 1rem);
335
- height: var(--gov-accordion-xs-icon-size, 1rem);
336
- transform: translateY(var(--gov-accordion-xs-arrow-position, 0.1875rem));
337
- }
338
- .gov-accordion-item[size=xs] .gov-accordion-item__icon {
339
- width: calc(var(--gov-text-m-font-size) * 1.2);
340
- height: calc(var(--gov-text-m-font-size) * 1.2);
341
- transform: translateY(var(--gov-accordion-xs-icon-position, 0.1875rem));
342
- }
343
- .gov-accordion-item[size=xs] .gov-accordion-item__annotation {
342
+ .gov-accordion-item[size=xs] .gov-accordion-item__annotation, .gov-accordion-item .gov-accordion-item[size=xs] .gov-accordion-item__annotation {
344
343
  font-weight: var(--gov-text-s-font-weight);
345
344
  font-size: var(--gov-text-s-font-size);
346
345
  line-height: var(--gov-text-s-line-height);
347
346
  letter-spacing: var(--gov-text-s-letter-spacing);
348
347
  }
349
- .gov-accordion-item[size=xs] .gov-accordion-item__content {
348
+ .gov-accordion-item[size=xs] .gov-accordion-item__right, .gov-accordion-item .gov-accordion-item[size=xs] .gov-accordion-item__right {
349
+ gap: var(--gov-accordion-xs-headline-gap, 0.5rem);
350
+ transform: translateY(var(--gov-accordion-xs-arrow-position, 0.1875rem));
351
+ }
352
+ .gov-accordion-item[size=xs] .gov-accordion-item__right:has(.gov-accordion-item__suffix), .gov-accordion-item .gov-accordion-item[size=xs] .gov-accordion-item__right:has(.gov-accordion-item__suffix) {
353
+ transform: translateY(var(--gov-accordion-xs-icon-position, 0.1875rem));
354
+ }
355
+ .gov-accordion-item[size=xs] .gov-accordion-item__arrow, .gov-accordion-item .gov-accordion-item[size=xs] .gov-accordion-item__arrow {
356
+ width: var(--gov-accordion-xs-icon-size, 1rem);
357
+ height: var(--gov-accordion-xs-icon-size, 1rem);
358
+ }
359
+ .gov-accordion-item[size=xs] .gov-accordion-item__content, .gov-accordion-item .gov-accordion-item[size=xs] .gov-accordion-item__content {
350
360
  padding: var(--gov-accordion-xs-padding-inner, 1rem 0.5rem);
351
361
  }
352
- .gov-accordion-item[size=s] .gov-accordion-item__header {
362
+ .gov-accordion-item[size=s] .gov-accordion-item__header, .gov-accordion-item .gov-accordion-item[size=s] .gov-accordion-item__header {
353
363
  gap: var(--gov-accordion-s-headline-gap, 0.5rem);
354
364
  min-height: var(--gov-accordion-s-min-height, 3rem);
355
365
  padding: var(--gov-accordion-s-padding-y, 1.125rem) var(--gov-accordion-s-padding-x, 0.5rem);
356
366
  }
357
- .gov-accordion-item[size=s] .gov-accordion-item__label * {
367
+ .gov-accordion-item[size=s] .gov-accordion-item__icon, .gov-accordion-item .gov-accordion-item[size=s] .gov-accordion-item__icon {
368
+ width: calc(var(--gov-text-xl-font-size) * 1.2);
369
+ height: calc(var(--gov-text-xl-font-size) * 1.2);
370
+ transform: translateY(var(--gov-accordion-s-icon-position, 0.1875rem));
371
+ }
372
+ .gov-accordion-item[size=s] .gov-accordion-item__label *, .gov-accordion-item .gov-accordion-item[size=s] .gov-accordion-item__label * {
358
373
  font-weight: var(--gov-text-xl-font-weight);
359
374
  font-size: var(--gov-text-xl-font-size);
360
375
  line-height: var(--gov-text-xl-line-height);
361
376
  letter-spacing: var(--gov-text-xl-letter-spacing);
362
377
  }
363
- .gov-accordion-item[size=s] .gov-accordion-item__arrow {
364
- width: var(--gov-accordion-s-icon-size, 1rem);
365
- height: var(--gov-accordion-s-icon-size, 1rem);
366
- transform: translateY(var(--gov-accordion-s-arrow-position, 0.4375rem));
367
- }
368
- .gov-accordion-item[size=s] .gov-accordion-item__icon {
369
- width: calc(var(--gov-text-xl-font-size) * 1.2);
370
- height: calc(var(--gov-text-xl-font-size) * 1.2);
371
- transform: translateY(var(--gov-accordion-s-icon-position, 0.1875rem));
372
- }
373
- .gov-accordion-item[size=s] .gov-accordion-item__annotation {
378
+ .gov-accordion-item[size=s] .gov-accordion-item__annotation, .gov-accordion-item .gov-accordion-item[size=s] .gov-accordion-item__annotation {
374
379
  font-weight: var(--gov-text-m-font-weight);
375
380
  font-size: var(--gov-text-m-font-size);
376
381
  line-height: var(--gov-text-m-line-height);
377
382
  letter-spacing: var(--gov-text-m-letter-spacing);
378
383
  }
379
- .gov-accordion-item[size=s] .gov-accordion-item__content {
384
+ .gov-accordion-item[size=s] .gov-accordion-item__right, .gov-accordion-item .gov-accordion-item[size=s] .gov-accordion-item__right {
385
+ gap: var(--gov-accordion-s-headline-gap, 0.5rem);
386
+ transform: translateY(var(--gov-accordion-s-arrow-position, 0.4375rem));
387
+ }
388
+ .gov-accordion-item[size=s] .gov-accordion-item__right:has(.gov-accordion-item__suffix), .gov-accordion-item .gov-accordion-item[size=s] .gov-accordion-item__right:has(.gov-accordion-item__suffix) {
389
+ transform: translateY(var(--gov-accordion-s-icon-position, 0.1875rem));
390
+ }
391
+ .gov-accordion-item[size=s] .gov-accordion-item__arrow, .gov-accordion-item .gov-accordion-item[size=s] .gov-accordion-item__arrow {
392
+ width: var(--gov-accordion-s-icon-size, 1rem);
393
+ height: var(--gov-accordion-s-icon-size, 1rem);
394
+ }
395
+ .gov-accordion-item[size=s] .gov-accordion-item__content, .gov-accordion-item .gov-accordion-item[size=s] .gov-accordion-item__content {
380
396
  padding: var(--gov-accordion-s-padding-inner, 1rem 0.5rem);
381
397
  }
382
- .gov-accordion-item[size=m] .gov-accordion-item__header {
398
+ .gov-accordion-item[size=m] .gov-accordion-item__header, .gov-accordion-item .gov-accordion-item[size=m] .gov-accordion-item__header {
383
399
  gap: var(--gov-accordion-m-headline-gap, 1rem);
384
400
  min-height: var(--gov-accordion-m-min-height, 4.5rem);
385
401
  padding: var(--gov-accordion-m-padding-y, 1.25rem) var(--gov-accordion-m-padding-x, 0.5rem);
386
402
  }
387
- .gov-accordion-item[size=m] .gov-accordion-item__label * {
403
+ .gov-accordion-item[size=m] .gov-accordion-item__icon, .gov-accordion-item .gov-accordion-item[size=m] .gov-accordion-item__icon {
404
+ width: calc(var(--gov-text-2xl-font-size) * 1.2);
405
+ height: calc(var(--gov-text-2xl-font-size) * 1.2);
406
+ transform: translateY(var(--gov-accordion-m-icon-position, 0.25rem));
407
+ }
408
+ .gov-accordion-item[size=m] .gov-accordion-item__label *, .gov-accordion-item .gov-accordion-item[size=m] .gov-accordion-item__label * {
388
409
  font-weight: var(--gov-text-2xl-font-weight);
389
410
  font-size: var(--gov-text-2xl-font-size);
390
411
  line-height: var(--gov-text-2xl-line-height);
391
412
  letter-spacing: var(--gov-text-2xl-letter-spacing);
392
413
  }
393
- .gov-accordion-item[size=m] .gov-accordion-item__arrow {
394
- width: var(--gov-accordion-m-icon-size, 1.5rem);
395
- height: var(--gov-accordion-m-icon-size, 1.5rem);
396
- transform: translateY(var(--gov-accordion-m-arrow-position, 0.25rem));
397
- }
398
- .gov-accordion-item[size=m] .gov-accordion-item__icon {
399
- width: calc(var(--gov-text-2xl-font-size) * 1.2);
400
- height: calc(var(--gov-text-2xl-font-size) * 1.2);
401
- transform: translateY(var(--gov-accordion-m-icon-position, 0.25rem));
402
- }
403
- .gov-accordion-item[size=m] .gov-accordion-item__annotation {
414
+ .gov-accordion-item[size=m] .gov-accordion-item__annotation, .gov-accordion-item .gov-accordion-item[size=m] .gov-accordion-item__annotation {
404
415
  font-weight: var(--gov-text-m-font-weight);
405
416
  font-size: var(--gov-text-m-font-size);
406
417
  line-height: var(--gov-text-m-line-height);
407
418
  letter-spacing: var(--gov-text-m-letter-spacing);
408
419
  }
409
- .gov-accordion-item[size=m] .gov-accordion-item__content {
420
+ .gov-accordion-item[size=m] .gov-accordion-item__right, .gov-accordion-item .gov-accordion-item[size=m] .gov-accordion-item__right {
421
+ gap: var(--gov-accordion-m-headline-gap, 1rem);
422
+ transform: translateY(var(--gov-accordion-m-arrow-position, 0.25rem));
423
+ }
424
+ .gov-accordion-item[size=m] .gov-accordion-item__right:has(.gov-accordion-item__suffix), .gov-accordion-item .gov-accordion-item[size=m] .gov-accordion-item__right:has(.gov-accordion-item__suffix) {
425
+ transform: translateY(var(--gov-accordion-m-icon-position, 0.25rem));
426
+ }
427
+ .gov-accordion-item[size=m] .gov-accordion-item__arrow, .gov-accordion-item .gov-accordion-item[size=m] .gov-accordion-item__arrow {
428
+ width: var(--gov-accordion-m-icon-size, 1.5rem);
429
+ height: var(--gov-accordion-m-icon-size, 1.5rem);
430
+ }
431
+ .gov-accordion-item[size=m] .gov-accordion-item__content, .gov-accordion-item .gov-accordion-item[size=m] .gov-accordion-item__content {
410
432
  padding: var(--gov-accordion-m-padding-inner, 1.25rem 0.5rem);
411
433
  }
412
- .gov-accordion-item[size=l] .gov-accordion-item__header {
434
+ .gov-accordion-item[size=l] .gov-accordion-item__header, .gov-accordion-item .gov-accordion-item[size=l] .gov-accordion-item__header {
413
435
  gap: var(--gov-accordion-l-headline-gap, 1rem);
414
436
  min-height: var(--gov-accordion-l-min-height, 5.5rem);
415
437
  padding: var(--gov-accordion-l-padding-y, 1.375rem) var(--gov-accordion-l-padding-x, 0.5rem);
416
438
  }
417
- .gov-accordion-item[size=l] .gov-accordion-item__label * {
439
+ .gov-accordion-item[size=l] .gov-accordion-item__icon, .gov-accordion-item .gov-accordion-item[size=l] .gov-accordion-item__icon {
440
+ width: calc(var(--gov-text-3xl-font-size) * 1.2);
441
+ height: calc(var(--gov-text-3xl-font-size) * 1.2);
442
+ transform: translateY(var(--gov-accordion-l-icon-position, 0.3125rem));
443
+ }
444
+ .gov-accordion-item[size=l] .gov-accordion-item__label *, .gov-accordion-item .gov-accordion-item[size=l] .gov-accordion-item__label * {
418
445
  font-weight: var(--gov-text-3xl-font-weight);
419
446
  font-size: var(--gov-text-3xl-font-size);
420
447
  line-height: var(--gov-text-3xl-line-height);
421
448
  letter-spacing: var(--gov-text-3xl-letter-spacing);
422
449
  }
423
- .gov-accordion-item[size=l] .gov-accordion-item__arrow {
424
- width: var(--gov-accordion-l-icon-size, 1.5rem);
425
- height: var(--gov-accordion-l-icon-size, 1.5rem);
426
- transform: translateY(var(--gov-accordion-l-arrow-position, 0.625rem));
427
- }
428
- .gov-accordion-item[size=l] .gov-accordion-item__icon {
429
- width: calc(var(--gov-text-3xl-font-size) * 1.2);
430
- height: calc(var(--gov-text-3xl-font-size) * 1.2);
431
- transform: translateY(var(--gov-accordion-l-icon-position, 0.3125rem));
432
- }
433
- .gov-accordion-item[size=l] .gov-accordion-item__annotation {
450
+ .gov-accordion-item[size=l] .gov-accordion-item__annotation, .gov-accordion-item .gov-accordion-item[size=l] .gov-accordion-item__annotation {
434
451
  font-weight: var(--gov-text-m-font-weight);
435
452
  font-size: var(--gov-text-m-font-size);
436
453
  line-height: var(--gov-text-m-line-height);
437
454
  letter-spacing: var(--gov-text-m-letter-spacing);
438
455
  }
439
- .gov-accordion-item[size=l] .gov-accordion-item__content {
456
+ .gov-accordion-item[size=l] .gov-accordion-item__right, .gov-accordion-item .gov-accordion-item[size=l] .gov-accordion-item__right {
457
+ gap: var(--gov-accordion-l-headline-gap, 1rem);
458
+ transform: translateY(var(--gov-accordion-l-arrow-position, 0.625rem));
459
+ }
460
+ .gov-accordion-item[size=l] .gov-accordion-item__right:has(.gov-accordion-item__suffix), .gov-accordion-item .gov-accordion-item[size=l] .gov-accordion-item__right:has(.gov-accordion-item__suffix) {
461
+ transform: translateY(var(--gov-accordion-l-icon-position, 0.3125rem));
462
+ }
463
+ .gov-accordion-item[size=l] .gov-accordion-item__arrow, .gov-accordion-item .gov-accordion-item[size=l] .gov-accordion-item__arrow {
464
+ width: var(--gov-accordion-l-icon-size, 1.5rem);
465
+ height: var(--gov-accordion-l-icon-size, 1.5rem);
466
+ }
467
+ .gov-accordion-item[size=l] .gov-accordion-item__content, .gov-accordion-item .gov-accordion-item[size=l] .gov-accordion-item__content {
440
468
  padding: var(--gov-accordion-l-padding-inner, 1.25rem 0.5rem);
441
469
  }
442
470
  .gov-accordion-item[variant=primary] .gov-accordion-item::before {
@@ -46,7 +46,7 @@ export class GovAccordionItem {
46
46
  return (h(Host, { class: this.h.classes(AccordionItemClass.root), size: this.size, variant: this.variant, role: "listitem" }, h("button", { id: triggerId, class: AccordionItemClass.header, "aria-expanded": booleanString(this.isExpanded), "aria-controls": contentId, disabled: this.disabled, type: "button", "aria-disabled": toBoolAttrIfDefined(this.disabled), onClick: (e) => {
47
47
  e.stopPropagation();
48
48
  this.toggle().finally();
49
- } }, this.h.hasSlot("icon") && (h("span", { class: AccordionItemClass.icon }, h("slot", { name: "icon" }))), h("span", { class: AccordionItemClass.title }, h("span", { class: AccordionItemClass.label }, h("slot", { name: "label" })), this.h.hasSlot("annotation") && (h("span", { class: AccordionItemClass.annotation }, h("slot", { name: "annotation" })))), this.h.hasSlot("suffix") && (h("span", { class: AccordionItemClass.suffix }, h("slot", { name: "suffix" }))), h("span", { class: AccordionItemClass.arrow }, this.h.hasSlot("toggle-icon") ? (h("slot", { name: "toggle-icon" })) : (h("gov-icon", { name: "chevron-down" })))), h("div", { class: AccordionItemClass.content, id: contentId, "aria-hidden": booleanString(!this.isExpanded), hidden: !this.isExpanded, "aria-labelledby": triggerId }, h("slot", null))));
49
+ } }, this.h.hasSlot("icon") && (h("span", { class: AccordionItemClass.icon }, h("slot", { name: "icon" }))), h("span", { class: AccordionItemClass.title }, h("span", { class: AccordionItemClass.label }, h("slot", { name: "label" })), this.h.hasSlot("annotation") && (h("span", { class: AccordionItemClass.annotation }, h("slot", { name: "annotation" })))), h("span", { class: AccordionItemClass.right }, this.h.hasSlot("suffix") && (h("span", { class: AccordionItemClass.suffix }, h("slot", { name: "suffix" }))), h("span", { class: AccordionItemClass.arrow }, this.h.hasSlot("toggle-icon") ? (h("slot", { name: "toggle-icon" })) : (h("gov-icon", { name: "chevron-down" }))))), h("div", { class: AccordionItemClass.content, id: contentId, "aria-hidden": booleanString(!this.isExpanded), hidden: !this.isExpanded, "aria-labelledby": triggerId }, h("slot", null))));
50
50
  }
51
51
  /**
52
52
  * Opening the accordion
@@ -1 +1 @@
1
- {"version":3,"file":"gov-accordion-item.js","sourceRoot":"","sources":["../../../../../../src/components/gov-accordion/gov-accordion-item.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from \"@stencil/core\"\nimport { validateProp } from \"../../helpers/Validate/props\"\nimport {\n\tAccordionClass,\n\tAccordionItemClass,\n\tAccordionSizes,\n\tAccordionSizeType,\n\tAccordionVariants,\n\tAccordionVariantType,\n} from \"./constants\"\nimport { createID } from \"../../utils/string.utils\"\nimport { booleanString, govHost, toBoolAttrIfDefined } from \"../../helpers/Dom/template\"\nimport { AccordionItemEvent } from \"./gov-accordion.types\"\nimport { GovHost } from \"../../helpers/Dom/template.types\"\n\n@Component({\n\ttag: \"gov-accordion-item\",\n\tstyleUrl: \"gov-accordion-item.scss\",\n})\nexport class GovAccordionItem {\n\tprivate readonly triggerId: string\n\tprivate readonly contentId: string\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.triggerId = createID(\"GovAccordionItem\")\n\t\tthis.contentId = createID(\"GovAccordionContent\")\n\t}\n\n\t@Element() readonly host: HTMLGovAccordionItemElement\n\t@State() isExpandedState: boolean\n\n\t/**\n\t * Style variation of the button.\n\t */\n\t@Prop() variant?: AccordionVariantType\n\t/**\n\t * Custom accordion item identifier. Otherwise, it will be generated\n\t */\n\t@Prop() readonly identifier: string\n\t/**\n\t * Accordion’s size.\n\t */\n\t@Prop() size?: AccordionSizeType\n\t/**\n\t * Makes the button component disabled.\n\t * This prevents users from being able to interact with the button, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop() readonly disabled: boolean = false\n\t/**\n\t * Defines whether the accordion is open or closed by default\n\t */\n\t@Prop({ attribute: \"is-expanded\", mutable: true }) isExpanded = false\n\t/**\n\t * Called when the accordion state changes\n\t */\n\t@Event({ eventName: \"gov-change\" }) govChange: EventEmitter<AccordionItemEvent>\n\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(AccordionSizes, newValue, AccordionItemClass.root)\n\t}\n\n\t@Watch(\"variant\")\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(AccordionVariants, newValue, AccordionItemClass.root)\n\t}\n\n\tprivate emmitChange(): void {\n\t\tthis.govChange.emit({\n\t\t\topen: this.isExpanded,\n\t\t\tcomponent: AccordionItemClass.root,\n\t\t\tref: this.host,\n\t\t})\n\t}\n\n\tcomponentWillLoad(): void {\n\t\tthis.getPropsFromParents()\n\t\tthis.validateSize(this.size)\n\t\tthis.validateVariant(this.variant)\n\n\t}\n\n\tgetPropsFromParents() {\n\t\tconst accordion = this.h.getParent(AccordionClass.root)\n\t\tif (accordion) {\n\t\t\tthis.size = accordion.getAttribute(\"size\") as AccordionSizeType\n\t\t\tthis.variant = accordion.getAttribute(\"variant\") as AccordionVariantType\n\t\t}\n\t}\n\n\trender() {\n\t\tconst triggerId = this.identifier || this.triggerId\n\t\tconst contentId = this.contentId\n\n\t\treturn (\n\t\t\t<Host class={this.h.classes(AccordionItemClass.root)} size={this.size} variant={this.variant} role=\"listitem\">\n\t\t\t\t<button\n\t\t\t\t\tid={triggerId}\n\t\t\t\t\tclass={AccordionItemClass.header}\n\t\t\t\t\taria-expanded={booleanString(this.isExpanded)}\n\t\t\t\t\taria-controls={contentId}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\ttype={\"button\"}\n\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\tonClick={(e: Event) => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.toggle().finally()\n\t\t\t\t\t}}>\n\n\t\t\t\t\t{this.h.hasSlot(\"icon\") && (\n\t\t\t\t\t\t<span class={AccordionItemClass.icon}>\n\t\t\t\t\t\t\t<slot name=\"icon\" />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t)}\n\n\t\t\t\t\t<span class={AccordionItemClass.title}>\n\t\t\t\t\t\t<span class={AccordionItemClass.label}>\n\t\t\t\t\t\t\t<slot name=\"label\" />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t{this.h.hasSlot(\"annotation\") && (\n\t\t\t\t\t\t\t<span class={AccordionItemClass.annotation}>\n\t\t\t\t\t\t\t\t<slot name=\"annotation\" />\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</span>\n\n\t\t\t\t\t{this.h.hasSlot(\"suffix\") && (\n\t\t\t\t\t\t<span class={AccordionItemClass.suffix}>\n\t\t\t\t\t\t\t<slot name=\"suffix\" />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t)}\n\n\t\t\t\t\t<span class={AccordionItemClass.arrow}>\n\t\t\t\t\t\t{this.h.hasSlot(\"toggle-icon\") ? (\n\t\t\t\t\t\t\t<slot name=\"toggle-icon\" />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<gov-icon name=\"chevron-down\"></gov-icon>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</span>\n\t\t\t\t</button>\n\t\t\t\t<div\n\t\t\t\t\tclass={AccordionItemClass.content}\n\t\t\t\t\tid={contentId}\n\t\t\t\t\taria-hidden={booleanString(!this.isExpanded)}\n\t\t\t\t\thidden={!this.isExpanded}\n\t\t\t\t\taria-labelledby={triggerId}>\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\t/**\n\t * Opening the accordion\n\t */\n\t@Method()\n\tasync open(): Promise<void> {\n\t\tthis.isExpanded = true\n\t\tthis.emmitChange()\n\t}\n\n\t/**\n\t * Closing the accordion\n\t */\n\t@Method()\n\tasync close(): Promise<void> {\n\t\tthis.isExpanded = false\n\t\tthis.emmitChange()\n\t}\n\n\t/**\n\t * Accordion switch\n\t */\n\t@Method()\n\tasync toggle(): Promise<void> {\n\t\tthis.isExpanded = !this.isExpanded\n\t\tthis.emmitChange()\n\t}\n\n\t/**\n\t * Returns the current state of the component\n\t */\n\t@Method()\n\tasync currentState(): Promise<boolean> {\n\t\treturn this.isExpanded\n\t}\n}\n"]}
1
+ {"version":3,"file":"gov-accordion-item.js","sourceRoot":"","sources":["../../../../../../src/components/gov-accordion/gov-accordion-item.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from \"@stencil/core\"\nimport { validateProp } from \"../../helpers/Validate/props\"\nimport {\n\tAccordionClass,\n\tAccordionItemClass,\n\tAccordionSizes,\n\tAccordionSizeType,\n\tAccordionVariants,\n\tAccordionVariantType,\n} from \"./constants\"\nimport { createID } from \"../../utils/string.utils\"\nimport { booleanString, govHost, toBoolAttrIfDefined } from \"../../helpers/Dom/template\"\nimport { AccordionItemEvent } from \"./gov-accordion.types\"\nimport { GovHost } from \"../../helpers/Dom/template.types\"\n\n@Component({\n\ttag: \"gov-accordion-item\",\n\tstyleUrl: \"gov-accordion-item.scss\",\n})\nexport class GovAccordionItem {\n\tprivate readonly triggerId: string\n\tprivate readonly contentId: string\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.triggerId = createID(\"GovAccordionItem\")\n\t\tthis.contentId = createID(\"GovAccordionContent\")\n\t}\n\n\t@Element() readonly host: HTMLGovAccordionItemElement\n\t@State() isExpandedState: boolean\n\n\t/**\n\t * Style variation of the button.\n\t */\n\t@Prop() variant?: AccordionVariantType\n\t/**\n\t * Custom accordion item identifier. Otherwise, it will be generated\n\t */\n\t@Prop() readonly identifier: string\n\t/**\n\t * Accordion’s size.\n\t */\n\t@Prop() size?: AccordionSizeType\n\t/**\n\t * Makes the button component disabled.\n\t * This prevents users from being able to interact with the button, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop() readonly disabled: boolean = false\n\t/**\n\t * Defines whether the accordion is open or closed by default\n\t */\n\t@Prop({ attribute: \"is-expanded\", mutable: true }) isExpanded = false\n\t/**\n\t * Called when the accordion state changes\n\t */\n\t@Event({ eventName: \"gov-change\" }) govChange: EventEmitter<AccordionItemEvent>\n\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(AccordionSizes, newValue, AccordionItemClass.root)\n\t}\n\n\t@Watch(\"variant\")\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(AccordionVariants, newValue, AccordionItemClass.root)\n\t}\n\n\tprivate emmitChange(): void {\n\t\tthis.govChange.emit({\n\t\t\topen: this.isExpanded,\n\t\t\tcomponent: AccordionItemClass.root,\n\t\t\tref: this.host,\n\t\t})\n\t}\n\n\tcomponentWillLoad(): void {\n\t\tthis.getPropsFromParents()\n\t\tthis.validateSize(this.size)\n\t\tthis.validateVariant(this.variant)\n\n\t}\n\n\tgetPropsFromParents() {\n\t\tconst accordion = this.h.getParent(AccordionClass.root)\n\t\tif (accordion) {\n\t\t\tthis.size = accordion.getAttribute(\"size\") as AccordionSizeType\n\t\t\tthis.variant = accordion.getAttribute(\"variant\") as AccordionVariantType\n\t\t}\n\t}\n\n\trender() {\n\t\tconst triggerId = this.identifier || this.triggerId\n\t\tconst contentId = this.contentId\n\n\t\treturn (\n\t\t\t<Host class={this.h.classes(AccordionItemClass.root)} size={this.size} variant={this.variant} role=\"listitem\">\n\t\t\t\t<button\n\t\t\t\t\tid={triggerId}\n\t\t\t\t\tclass={AccordionItemClass.header}\n\t\t\t\t\taria-expanded={booleanString(this.isExpanded)}\n\t\t\t\t\taria-controls={contentId}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\ttype={\"button\"}\n\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\tonClick={(e: Event) => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.toggle().finally()\n\t\t\t\t\t}}>\n\n\t\t\t\t\t{this.h.hasSlot(\"icon\") && (\n\t\t\t\t\t\t<span class={AccordionItemClass.icon}>\n\t\t\t\t\t\t\t<slot name=\"icon\" />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t)}\n\n\t\t\t\t\t<span class={AccordionItemClass.title}>\n\t\t\t\t\t\t<span class={AccordionItemClass.label}>\n\t\t\t\t\t\t\t<slot name=\"label\" />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t{this.h.hasSlot(\"annotation\") && (\n\t\t\t\t\t\t\t<span class={AccordionItemClass.annotation}>\n\t\t\t\t\t\t\t\t<slot name=\"annotation\" />\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</span>\n\n\t\t\t\t\t<span class={AccordionItemClass.right}>\n\t\t\t\t\t\t{this.h.hasSlot(\"suffix\") && (\n\t\t\t\t\t\t\t<span class={AccordionItemClass.suffix}>\n\t\t\t\t\t\t\t\t<slot name=\"suffix\" />\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t<span class={AccordionItemClass.arrow}>\n\t\t\t\t\t\t\t{this.h.hasSlot(\"toggle-icon\") ? (\n\t\t\t\t\t\t\t\t<slot name=\"toggle-icon\" />\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<gov-icon name=\"chevron-down\"></gov-icon>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t</button>\n\t\t\t\t<div\n\t\t\t\t\tclass={AccordionItemClass.content}\n\t\t\t\t\tid={contentId}\n\t\t\t\t\taria-hidden={booleanString(!this.isExpanded)}\n\t\t\t\t\thidden={!this.isExpanded}\n\t\t\t\t\taria-labelledby={triggerId}>\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\t/**\n\t * Opening the accordion\n\t */\n\t@Method()\n\tasync open(): Promise<void> {\n\t\tthis.isExpanded = true\n\t\tthis.emmitChange()\n\t}\n\n\t/**\n\t * Closing the accordion\n\t */\n\t@Method()\n\tasync close(): Promise<void> {\n\t\tthis.isExpanded = false\n\t\tthis.emmitChange()\n\t}\n\n\t/**\n\t * Accordion switch\n\t */\n\t@Method()\n\tasync toggle(): Promise<void> {\n\t\tthis.isExpanded = !this.isExpanded\n\t\tthis.emmitChange()\n\t}\n\n\t/**\n\t * Returns the current state of the component\n\t */\n\t@Method()\n\tasync currentState(): Promise<boolean> {\n\t\treturn this.isExpanded\n\t}\n}\n"]}
@@ -72,6 +72,7 @@ export class GovFormFile {
72
72
  this.validateFiles(dataTransfer.files);
73
73
  }
74
74
  validateFiles(files) {
75
+ let filesBuffer = [];
75
76
  Array.from(files).map(file => {
76
77
  const isFile = this.files.find(item => item.file.name === file.name && item.file.size === file.size) || null;
77
78
  if (isFile === null) {
@@ -83,7 +84,12 @@ export class GovFormFile {
83
84
  acceptValid: isAcceptValid,
84
85
  sizeValid: isSizeValid,
85
86
  };
86
- this.files = [...this.files, newFile];
87
+ if (this.displayAttachments) {
88
+ this.files = [...this.files, newFile];
89
+ }
90
+ else {
91
+ filesBuffer = [...filesBuffer, newFile];
92
+ }
87
93
  this.govAddFile.emit({
88
94
  component: FormFileClass.root,
89
95
  file: newFile,
@@ -92,7 +98,7 @@ export class GovFormFile {
92
98
  });
93
99
  this.govFiles.emit({
94
100
  component: FormFileClass.root,
95
- files: this.files,
101
+ files: filesBuffer.length ? filesBuffer : this.files,
96
102
  });
97
103
  }
98
104
  componentWillLoad() {
@@ -155,6 +161,12 @@ export class GovFormFile {
155
161
  async getAreaRef() {
156
162
  return this.areaRef;
157
163
  }
164
+ /**
165
+ * Remove all files from component state
166
+ */
167
+ async reset() {
168
+ this.files = [];
169
+ }
158
170
  /**
159
171
  * Validate the WCAG attributes of the component
160
172
  */
@@ -640,6 +652,23 @@ export class GovFormFile {
640
652
  "tags": []
641
653
  }
642
654
  },
655
+ "reset": {
656
+ "complexType": {
657
+ "signature": "() => Promise<void>",
658
+ "parameters": [],
659
+ "references": {
660
+ "Promise": {
661
+ "location": "global",
662
+ "id": "global::Promise"
663
+ }
664
+ },
665
+ "return": "Promise<void>"
666
+ },
667
+ "docs": {
668
+ "text": "Remove all files from component state",
669
+ "tags": []
670
+ }
671
+ },
643
672
  "validateWcag": {
644
673
  "complexType": {
645
674
  "signature": "() => Promise<void>",
@@ -1 +1 @@
1
- {"version":3,"file":"gov-form-file.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/file/gov-form-file.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from \"@stencil/core\"\nimport { createID } from \"../../../utils/string.utils\"\nimport { FormFileClass } from \"./constants\"\nimport { govHost, toBoolAttr, toBoolAttrIfDefined } from \"../../../helpers/Dom/template\"\nimport { validateWcagLabelFor, validateWcagRef } from \"../../../helpers/Validate/wcag\"\nimport { canValidateWcagOnRender } from \"../../../helpers/Dom/win\"\nimport { fileAcceptValidation, fileSizeValidation, formatBytes } from \"../../../utils/file.utils\"\nimport { delay } from \"../../../utils/utils\"\nimport { GovForm } from \"../../../helpers/Dom/form.types\"\nimport { GovHost } from \"../../../helpers/Dom/template.types\"\nimport { govForm } from \"../../../helpers/Dom/form\"\nimport { GovFormFileEvent, GovFormFileItem } from \"./gov-form-file.types\"\n\n@Component({\n\ttag: \"gov-form-file\",\n\tstyleUrl: \"gov-form-file.scss\",\n})\nexport class GovFormFile {\n\tprivate f: GovForm\n\tprivate readonly h: GovHost\n\n\tprivate areaRef?: HTMLDivElement\n\tprivate inputRef?: HTMLInputElement\n\tprivate readonly fileId: string\n\n\tconstructor() {\n\t\tthis.fileId = createID(\"GovInputFile\")\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormFileElement\n\t/**\n\t * Expands the file input to fill 100% of the container width.\n\t */\n\t@Prop() readonly expanded: boolean = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the File component disabled.\n\t * This prevents users from being able to interact with the File, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop() readonly disabled: boolean\n\t/**\n\t * Show list of attachments\n\t */\n\t@Prop({ attribute: \"display-attachments\" }) readonly displayAttachments: boolean = true\n\t/**\n\t * Name of the input.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept\n\t */\n\t@Prop() readonly accept: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/multiple\n\t */\n\t@Prop() readonly multiple: boolean = false\n\t/**\n\t * Maximum embedded file size\n\t */\n\t@Prop({ attribute: \"max-file-size\" }) readonly maxFileSize: number = -1\n\t/**\n\t * Custom File identifier.\n\t */\n\t@Prop({ attribute: \"identifier\" }) readonly identifier: string\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Error message when the maximum file size is exceeded\n\t */\n\t@Prop({ attribute: \"error-size\" }) readonly errorSize: string = \"Soubor je větší než povolená velikost {FILE_SIZE}\"\n\t/**\n\t * Insert unsupported file error message\n\t */\n\t@Prop({ attribute: \"error-accept\" }) readonly errorAccept: string = \"Soubor tohoto typu není povolen\"\n\t/**\n\t * Description of the list of attachments\n\t */\n\t@Prop({ attribute: \"attachments-label\" }) readonly attachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * Indicates the id of a component that describes the input.\n\t */\n\t@Prop({ attribute: \"wcag-described-by\" }) readonly wcagDescribedBy: string\n\t/**\n\t * Indicates the id of a component that labels the input.\n\t */\n\t@Prop({ attribute: \"wcag-labelled-by\" }) readonly wcagLabelledBy: string\n\t/**\n\t * Adds accessible label for the remove button that is only shown for screen readers.\n\t */\n\t@Prop({ attribute: \"wcag-remove-label\" }) readonly wcagRemoveLabel: string = \"Odebrat soubor {FILE_NAME}\"\n\t/**\n\t * Adds accessible label for the list of attachments.\n\t */\n\t@Prop({ attribute: \"wcag-attachments-label\" }) readonly wcagAttachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * Emitted when the File has focus.\n\t */\n\t@Event({ eventName: \"gov-focus\" }) govFocus: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Emitted when the File loses focus.\n\t */\n\t@Event({ eventName: \"gov-blur\" }) govBlur: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when the list of inserted files is changed\n\t */\n\t@Event({ eventName: \"gov-files\" }) govFiles: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a new file is added\n\t */\n\t@Event({ eventName: \"gov-add-file\" }) govAddFile: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a file is removed from the list\n\t */\n\t@Event({ eventName: \"gov-remove-file\" }) govRemoveFile: EventEmitter<GovFormFileEvent>\n\n\t@State() files: GovFormFileItem[] = []\n\n\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\twatchDisabled(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"type\", \"File\")\n\t}\n\n\n\tprivate registerListeners() {\n\t\tfunction highlight() {\n\t\t\tthis.areaRef.classList.add(\"highlight\")\n\t\t}\n\n\t\tfunction unhighlight() {\n\t\t\tthis.areaRef.classList.remove(\"highlight\")\n\t\t}\n\n\t\tthis.inputRef.addEventListener(\n\t\t\t\"change\",\n\t\t\te => {\n\t\t\t\te.preventDefault()\n\t\t\t\te.stopPropagation()\n\t\t\t\tconst files = (e.target as HTMLInputElement).files\n\t\t\t\tthis.validateFiles(files)\n\t\t\t},\n\t\t\tfalse,\n\t\t)\n\t\t//this.inputRef.addEventListener('focus')\n\n\t\tif (this.expanded) {\n\t\t\tconst events = [\"dragover\", \"dragleave\"]\n\t\t\tconst inEvents = [\"dragenter\", \"dragover\", \"mouseenter\"]\n\t\t\tconst outEvents = [\"dragleave\", \"drop\", \"mouseleave\"]\n\n\t\t\tevents.map(eventName => this.inputRef.addEventListener(eventName, this.preventDefaults.bind(this), false))\n\t\t\tinEvents.map(eventName => this.inputRef.addEventListener(eventName, highlight.bind(this), false))\n\t\t\toutEvents.forEach(eventName => this.inputRef.addEventListener(eventName, unhighlight.bind(this), false))\n\n\t\t\tthis.areaRef.addEventListener(\"drop\", this.handleDrop.bind(this), false)\n\t\t}\n\t}\n\n\tpreventDefaults(e) {\n\t\te.preventDefault()\n\t\te.stopPropagation()\n\t}\n\n\thandleDrop(e: DragEvent) {\n\t\tconst dataTransfer = e.dataTransfer\n\t\tthis.validateFiles(dataTransfer.files)\n\t}\n\n\tprivate validateFiles(files: FileList) {\n\t\tArray.from(files).map(file => {\n\t\t\tconst isFile = this.files.find(item => item.file.name === file.name && item.file.size === file.size) || null\n\t\t\tif (isFile === null) {\n\t\t\t\tconst isSizeValid = typeof this.maxFileSize === \"number\" && this.maxFileSize > 0 ? fileSizeValidation(file, this.maxFileSize) : true\n\t\t\t\tconst isAcceptValid = fileAcceptValidation(file, this.accept)\n\t\t\t\tconst newFile = {\n\t\t\t\t\tid: createID(\"GovFormFile\"),\n\t\t\t\t\tfile,\n\t\t\t\t\tacceptValid: isAcceptValid,\n\t\t\t\t\tsizeValid: isSizeValid,\n\t\t\t\t}\n\t\t\t\tthis.files = [...this.files, newFile]\n\t\t\t\tthis.govAddFile.emit({\n\t\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\t\tfile: newFile,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\n\t\tthis.govFiles.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\tfiles: this.files,\n\t\t})\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.f.passAttrToLabel(\"required\", String(this.required))\n\t\tthis.watchDisabled()\n\t}\n\n\tasync componentDidRender() {\n\t\tif (canValidateWcagOnRender()) {\n\t\t\tawait delay(500)\n\t\t\tawait this.validateWcag()\n\t\t}\n\n\t\tthis.registerListeners()\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes([FormFileClass.root])} invalid={toBoolAttrIfDefined(this.invalid)} expanded={toBoolAttrIfDefined(this.expanded)}>\n\t\t\t\t<div class={FormFileClass.area} ref={el => (this.areaRef = el as HTMLDivElement)}>\n\t\t\t\t\t<slot />\n\t\t\t\t\t<input\n\t\t\t\t\t\tclass={FormFileClass.input}\n\t\t\t\t\t\tref={el => (this.inputRef = el as HTMLInputElement)}\n\t\t\t\t\t\tid={this.identifier || this.fileId}\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\taccept={this.accept}\n\t\t\t\t\t\tmultiple={this.multiple}\n\t\t\t\t\t\tonChange={this.onChangeHandler.bind(this)}\n\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\taria-required={toBoolAttrIfDefined(this.required)}\n\t\t\t\t\t\taria-invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t\t\taria-describedby={this.wcagDescribedBy}\n\t\t\t\t\t\taria-labelledby={this.wcagLabelledBy}\n\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{this.h.hasSlot(\"attachments\") ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<slot name={\"attachments\"} />\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\n\t\t\t\t{this.files.length && this.displayAttachments ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<gov-attachments label={this.wcagAttachmentsLabel} wcag-label={this.wcagAttachmentsLabel}>\n\t\t\t\t\t\t\t{this.files.map(item => (\n\t\t\t\t\t\t\t\t<gov-attachments-item wcag-remove-labelled-by={item.id} on-gov-remove={() => this.onRemoveFileHandler(item)}>\n\t\t\t\t\t\t\t\t\t<span class={\"sr-only\"} id={item.id}>\n\t\t\t\t\t\t\t\t\t\t{this.wcagRemoveLabel.replace(\"{FILE_NAME}\", item.file.name)}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t{item.file.name}\n\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" variant=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? this.errorAccept : null}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t{item.sizeValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" variant=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{this.errorSize.replace(\"{FILE_SIZE}\", formatBytes(this.maxFileSize))}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t<span slot=\"info\">({formatBytes(item.file.size)})</span>\n\t\t\t\t\t\t\t\t</gov-attachments-item>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</gov-attachments>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onRemoveFileHandler(file: GovFormFileItem) {\n\t\tconst index = this.files.findIndex(item => item.id === file.id)\n\t\tif (index !== -1) {\n\t\t\tconst files = this.files\n\t\t\tconst removeFile = this.files[index]\n\t\t\tfiles.splice(index, 1)\n\t\t\tthis.files = [...files]\n\t\t\tthis.govRemoveFile.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfile: removeFile,\n\t\t\t})\n\t\t\tthis.govFiles.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfiles,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\te.stopPropagation()\n\t}\n\n\t/**\n\t * Returns the reference of the native element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLInputElement> {\n\t\treturn this.inputRef\n\t}\n\n\t/**\n\t * Returns the reference of the native area element\n\t */\n\t@Method()\n\tasync getAreaRef(): Promise<HTMLDivElement> {\n\t\treturn this.areaRef\n\t}\n\n\t/**\n\t * Validate the WCAG attributes of the component\n\t */\n\t@Method()\n\tasync validateWcag(): Promise<void> {\n\t\tvalidateWcagRef(this.wcagDescribedBy, \"wcag-described-by\", FormFileClass.root)\n\t\tvalidateWcagRef(this.wcagLabelledBy, \"wcag-labelled-by\", FormFileClass.root)\n\t\tvalidateWcagLabelFor(this.identifier || this.fileId, this.wcagLabelledBy, FormFileClass.root)\n\t}\n}\n"]}
1
+ {"version":3,"file":"gov-form-file.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/file/gov-form-file.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from \"@stencil/core\"\nimport { createID } from \"../../../utils/string.utils\"\nimport { FormFileClass } from \"./constants\"\nimport { govHost, toBoolAttr, toBoolAttrIfDefined } from \"../../../helpers/Dom/template\"\nimport { validateWcagLabelFor, validateWcagRef } from \"../../../helpers/Validate/wcag\"\nimport { canValidateWcagOnRender } from \"../../../helpers/Dom/win\"\nimport { fileAcceptValidation, fileSizeValidation, formatBytes } from \"../../../utils/file.utils\"\nimport { delay } from \"../../../utils/utils\"\nimport { GovForm } from \"../../../helpers/Dom/form.types\"\nimport { GovHost } from \"../../../helpers/Dom/template.types\"\nimport { govForm } from \"../../../helpers/Dom/form\"\nimport { GovFormFileEvent, GovFormFileItem } from \"./gov-form-file.types\"\n\n@Component({\n\ttag: \"gov-form-file\",\n\tstyleUrl: \"gov-form-file.scss\",\n})\nexport class GovFormFile {\n\tprivate f: GovForm\n\tprivate readonly h: GovHost\n\n\tprivate areaRef?: HTMLDivElement\n\tprivate inputRef?: HTMLInputElement\n\tprivate readonly fileId: string\n\n\tconstructor() {\n\t\tthis.fileId = createID(\"GovInputFile\")\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormFileElement\n\t/**\n\t * Expands the file input to fill 100% of the container width.\n\t */\n\t@Prop() readonly expanded: boolean = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the File component disabled.\n\t * This prevents users from being able to interact with the File, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop() readonly disabled: boolean\n\t/**\n\t * Show list of attachments\n\t */\n\t@Prop({ attribute: \"display-attachments\" }) readonly displayAttachments: boolean = true\n\t/**\n\t * Name of the input.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept\n\t */\n\t@Prop() readonly accept: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/multiple\n\t */\n\t@Prop() readonly multiple: boolean = false\n\t/**\n\t * Maximum embedded file size\n\t */\n\t@Prop({ attribute: \"max-file-size\" }) readonly maxFileSize: number = -1\n\t/**\n\t * Custom File identifier.\n\t */\n\t@Prop({ attribute: \"identifier\" }) readonly identifier: string\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Error message when the maximum file size is exceeded\n\t */\n\t@Prop({ attribute: \"error-size\" }) readonly errorSize: string = \"Soubor je větší než povolená velikost {FILE_SIZE}\"\n\t/**\n\t * Insert unsupported file error message\n\t */\n\t@Prop({ attribute: \"error-accept\" }) readonly errorAccept: string = \"Soubor tohoto typu není povolen\"\n\t/**\n\t * Description of the list of attachments\n\t */\n\t@Prop({ attribute: \"attachments-label\" }) readonly attachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * Indicates the id of a component that describes the input.\n\t */\n\t@Prop({ attribute: \"wcag-described-by\" }) readonly wcagDescribedBy: string\n\t/**\n\t * Indicates the id of a component that labels the input.\n\t */\n\t@Prop({ attribute: \"wcag-labelled-by\" }) readonly wcagLabelledBy: string\n\t/**\n\t * Adds accessible label for the remove button that is only shown for screen readers.\n\t */\n\t@Prop({ attribute: \"wcag-remove-label\" }) readonly wcagRemoveLabel: string = \"Odebrat soubor {FILE_NAME}\"\n\t/**\n\t * Adds accessible label for the list of attachments.\n\t */\n\t@Prop({ attribute: \"wcag-attachments-label\" }) readonly wcagAttachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * Emitted when the File has focus.\n\t */\n\t@Event({ eventName: \"gov-focus\" }) govFocus: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Emitted when the File loses focus.\n\t */\n\t@Event({ eventName: \"gov-blur\" }) govBlur: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when the list of inserted files is changed\n\t */\n\t@Event({ eventName: \"gov-files\" }) govFiles: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a new file is added\n\t */\n\t@Event({ eventName: \"gov-add-file\" }) govAddFile: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a file is removed from the list\n\t */\n\t@Event({ eventName: \"gov-remove-file\" }) govRemoveFile: EventEmitter<GovFormFileEvent>\n\n\t@State() files: GovFormFileItem[] = []\n\n\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\twatchDisabled(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"type\", \"File\")\n\t}\n\n\n\tprivate registerListeners() {\n\t\tfunction highlight() {\n\t\t\tthis.areaRef.classList.add(\"highlight\")\n\t\t}\n\n\t\tfunction unhighlight() {\n\t\t\tthis.areaRef.classList.remove(\"highlight\")\n\t\t}\n\n\t\tthis.inputRef.addEventListener(\n\t\t\t\"change\",\n\t\t\te => {\n\t\t\t\te.preventDefault()\n\t\t\t\te.stopPropagation()\n\t\t\t\tconst files = (e.target as HTMLInputElement).files\n\t\t\t\tthis.validateFiles(files)\n\t\t\t},\n\t\t\tfalse,\n\t\t)\n\t\t//this.inputRef.addEventListener('focus')\n\n\t\tif (this.expanded) {\n\t\t\tconst events = [\"dragover\", \"dragleave\"]\n\t\t\tconst inEvents = [\"dragenter\", \"dragover\", \"mouseenter\"]\n\t\t\tconst outEvents = [\"dragleave\", \"drop\", \"mouseleave\"]\n\n\t\t\tevents.map(eventName => this.inputRef.addEventListener(eventName, this.preventDefaults.bind(this), false))\n\t\t\tinEvents.map(eventName => this.inputRef.addEventListener(eventName, highlight.bind(this), false))\n\t\t\toutEvents.forEach(eventName => this.inputRef.addEventListener(eventName, unhighlight.bind(this), false))\n\n\t\t\tthis.areaRef.addEventListener(\"drop\", this.handleDrop.bind(this), false)\n\t\t}\n\t}\n\n\tpreventDefaults(e) {\n\t\te.preventDefault()\n\t\te.stopPropagation()\n\t}\n\n\thandleDrop(e: DragEvent) {\n\t\tconst dataTransfer = e.dataTransfer\n\t\tthis.validateFiles(dataTransfer.files)\n\t}\n\n\tprivate validateFiles(files: FileList) {\n\t\tlet filesBuffer: GovFormFileItem[] = []\n\t\tArray.from(files).map(file => {\n\t\t\tconst isFile = this.files.find(item => item.file.name === file.name && item.file.size === file.size) || null\n\t\t\tif (isFile === null) {\n\t\t\t\tconst isSizeValid = typeof this.maxFileSize === \"number\" && this.maxFileSize > 0 ? fileSizeValidation(file, this.maxFileSize) : true\n\t\t\t\tconst isAcceptValid = fileAcceptValidation(file, this.accept)\n\t\t\t\tconst newFile = {\n\t\t\t\t\tid: createID(\"GovFormFile\"),\n\t\t\t\t\tfile,\n\t\t\t\t\tacceptValid: isAcceptValid,\n\t\t\t\t\tsizeValid: isSizeValid,\n\t\t\t\t}\n\t\t\t\tif (this.displayAttachments) {\n\t\t\t\t\tthis.files = [...this.files, newFile]\n\t\t\t\t} else {\n\t\t\t\t\tfilesBuffer = [...filesBuffer, newFile]\n\t\t\t\t}\n\t\t\t\tthis.govAddFile.emit({\n\t\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\t\tfile: newFile,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\n\t\tthis.govFiles.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\tfiles: filesBuffer.length ? filesBuffer : this.files,\n\t\t})\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.f.passAttrToLabel(\"required\", String(this.required))\n\t\tthis.watchDisabled()\n\t}\n\n\tasync componentDidRender() {\n\t\tif (canValidateWcagOnRender()) {\n\t\t\tawait delay(500)\n\t\t\tawait this.validateWcag()\n\t\t}\n\n\t\tthis.registerListeners()\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes([FormFileClass.root])} invalid={toBoolAttrIfDefined(this.invalid)} expanded={toBoolAttrIfDefined(this.expanded)}>\n\t\t\t\t<div class={FormFileClass.area} ref={el => (this.areaRef = el as HTMLDivElement)}>\n\t\t\t\t\t<slot />\n\t\t\t\t\t<input\n\t\t\t\t\t\tclass={FormFileClass.input}\n\t\t\t\t\t\tref={el => (this.inputRef = el as HTMLInputElement)}\n\t\t\t\t\t\tid={this.identifier || this.fileId}\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\taccept={this.accept}\n\t\t\t\t\t\tmultiple={this.multiple}\n\t\t\t\t\t\tonChange={this.onChangeHandler.bind(this)}\n\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\taria-required={toBoolAttrIfDefined(this.required)}\n\t\t\t\t\t\taria-invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t\t\taria-describedby={this.wcagDescribedBy}\n\t\t\t\t\t\taria-labelledby={this.wcagLabelledBy}\n\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{this.h.hasSlot(\"attachments\") ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<slot name={\"attachments\"} />\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\n\t\t\t\t{this.files.length && this.displayAttachments ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<gov-attachments label={this.wcagAttachmentsLabel} wcag-label={this.wcagAttachmentsLabel}>\n\t\t\t\t\t\t\t{this.files.map(item => (\n\t\t\t\t\t\t\t\t<gov-attachments-item wcag-remove-labelled-by={item.id} on-gov-remove={() => this.onRemoveFileHandler(item)}>\n\t\t\t\t\t\t\t\t\t<span class={\"sr-only\"} id={item.id}>\n\t\t\t\t\t\t\t\t\t\t{this.wcagRemoveLabel.replace(\"{FILE_NAME}\", item.file.name)}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t{item.file.name}\n\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" variant=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? this.errorAccept : null}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t{item.sizeValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" variant=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{this.errorSize.replace(\"{FILE_SIZE}\", formatBytes(this.maxFileSize))}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t<span slot=\"info\">({formatBytes(item.file.size)})</span>\n\t\t\t\t\t\t\t\t</gov-attachments-item>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</gov-attachments>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onRemoveFileHandler(file: GovFormFileItem) {\n\t\tconst index = this.files.findIndex(item => item.id === file.id)\n\t\tif (index !== -1) {\n\t\t\tconst files = this.files\n\t\t\tconst removeFile = this.files[index]\n\t\t\tfiles.splice(index, 1)\n\t\t\tthis.files = [...files]\n\t\t\tthis.govRemoveFile.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfile: removeFile,\n\t\t\t})\n\t\t\tthis.govFiles.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfiles,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\te.stopPropagation()\n\t}\n\n\t/**\n\t * Returns the reference of the native element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLInputElement> {\n\t\treturn this.inputRef\n\t}\n\n\t/**\n\t * Returns the reference of the native area element\n\t */\n\t@Method()\n\tasync getAreaRef(): Promise<HTMLDivElement> {\n\t\treturn this.areaRef\n\t}\n\n\t/**\n\t * Remove all files from component state\n\t */\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tthis.files = []\n\t}\n\n\t/**\n\t * Validate the WCAG attributes of the component\n\t */\n\t@Method()\n\tasync validateWcag(): Promise<void> {\n\t\tvalidateWcagRef(this.wcagDescribedBy, \"wcag-described-by\", FormFileClass.root)\n\t\tvalidateWcagRef(this.wcagLabelledBy, \"wcag-labelled-by\", FormFileClass.root)\n\t\tvalidateWcagLabelFor(this.identifier || this.fileId, this.wcagLabelledBy, FormFileClass.root)\n\t}\n}\n"]}
@@ -12,7 +12,7 @@ export class GovMessage {
12
12
  validateProp(Variants, newValue, MessageClass.root);
13
13
  }
14
14
  render() {
15
- return (h(Host, { class: this.h.classes(MessageClass.root), variant: this.variant, role: "alert" }, this.h.hasSlot('icon') && (h("span", { class: MessageClass.icon }, h("slot", { name: "icon" }))), h("div", { class: MessageClass.content }, h("slot", null))));
15
+ return (h(Host, { class: this.h.classes(MessageClass.root), variant: this.variant, role: "alert" }, this.h.hasSlot("icon") && (h("span", { class: MessageClass.icon }, h("slot", { name: "icon" }))), h("div", { class: MessageClass.content }, h("slot", null))));
16
16
  }
17
17
  static get is() { return "gov-message"; }
18
18
  static get originalStyleUrls() {
@@ -1 +1 @@
1
- {"version":3,"file":"gov-message.js","sourceRoot":"","sources":["../../../../../../src/components/gov-message/gov-message.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAOxD,MAAM,OAAO,UAAU;EAGtB;mBAS+C,QAAQ,CAAC,OAAO;IAR9D,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;GAC3B;EAUD,eAAe,CAAC,QAAgB;IAC/B,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAA;EACpD,CAAC;EAED,MAAM;IACL,OAAO,CACN,EAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAC,OAAO;MACjF,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAC1B,YAAM,KAAK,EAAE,YAAY,CAAC,IAAI;QAC7B,YAAM,IAAI,EAAC,MAAM,GAAG,CACd,CACP;MAED,WAAK,KAAK,EAAE,YAAY,CAAC,OAAO;QAC/B,eAAQ,CACH,CACA,CACP,CAAA;EACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import { Component, Element, h, Host, Prop, Watch } from '@stencil/core'\nimport { validateProp } from '../../helpers/Validate/props'\nimport { MessageClass } from './constants'\nimport { govHost } from '../../helpers/Dom/template'\nimport { GovHost } from '../../helpers/Dom/template.types'\nimport { Variants } from '../../core/constants/variants'\nimport { MessageVariantType } from './constants'\n\n@Component({\n\ttag: 'gov-message',\n\tstyleUrl: 'gov-message.scss',\n})\nexport class GovMessage {\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovMessageElement\n\n\t/**\n\t * Style variation of the content message.\n\t */\n\t@Prop() readonly variant: MessageVariantType = Variants.PRIMARY\n\n\t@Watch('variant')\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(Variants, newValue, MessageClass.root)\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes(MessageClass.root)} variant={this.variant} role=\"alert\">\n\t\t\t\t{this.h.hasSlot('icon') && (\n\t\t\t\t\t<span class={MessageClass.icon}>\n\t\t\t\t\t\t<slot name=\"icon\" />\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\n\t\t\t\t<div class={MessageClass.content}>\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
1
+ {"version":3,"file":"gov-message.js","sourceRoot":"","sources":["../../../../../../src/components/gov-message/gov-message.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAsB,MAAM,aAAa,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAMxD,MAAM,OAAO,UAAU;EAGtB;mBAS+C,QAAQ,CAAC,OAAO;IAR9D,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;GAC3B;EAUD,eAAe,CAAC,QAAgB;IAC/B,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAA;EACpD,CAAC;EAED,MAAM;IACL,OAAO,CACN,EAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAC,OAAO;MACjF,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAC1B,YAAM,KAAK,EAAE,YAAY,CAAC,IAAI;QAC7B,YAAM,IAAI,EAAC,MAAM,GAAG,CACd,CACP;MAED,WAAK,KAAK,EAAE,YAAY,CAAC,OAAO;QAC/B,eAAQ,CACH,CACA,CACP,CAAA;EACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import { Component, Element, h, Host, Prop, Watch } from \"@stencil/core\"\nimport { validateProp } from \"../../helpers/Validate/props\"\nimport { MessageClass, MessageVariantType } from \"./constants\"\nimport { govHost } from \"../../helpers/Dom/template\"\nimport { GovHost } from \"../../helpers/Dom/template.types\"\nimport { Variants } from \"../../core/constants/variants\"\n\n@Component({\n\ttag: \"gov-message\",\n\tstyleUrl: \"gov-message.scss\",\n})\nexport class GovMessage {\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovMessageElement\n\n\t/**\n\t * Style variation of the content message.\n\t */\n\t@Prop() readonly variant: MessageVariantType = Variants.PRIMARY\n\n\t@Watch(\"variant\")\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(Variants, newValue, MessageClass.root)\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes(MessageClass.root)} variant={this.variant} role=\"alert\">\n\t\t\t\t{this.h.hasSlot(\"icon\") && (\n\t\t\t\t\t<span class={MessageClass.icon}>\n\t\t\t\t\t\t<slot name=\"icon\" />\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\n\t\t\t\t<div class={MessageClass.content}>\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
@@ -1,4 +1,4 @@
1
- .gov-tile__heading::before {
1
+ .gov-tile__title::before {
2
2
  content: "";
3
3
  position: absolute;
4
4
  top: 0;
@@ -245,8 +245,8 @@
245
245
  transition: background-color 150ms;
246
246
  }
247
247
  .gov-tile__icon {
248
- display: flex;
249
- margin: 0rem 0rem 0.75rem;
248
+ display: block;
249
+ margin: 0rem 0rem 1.5rem;
250
250
  color: var(--gov-tile-main-color, var(--gov-color-primary));
251
251
  }
252
252
  .gov-tile__icon .gov-icon {
@@ -254,24 +254,27 @@
254
254
  height: 2.5rem;
255
255
  }
256
256
  .gov-tile__title {
257
- font-weight: var(--gov-text-xl-font-weight);
258
- font-size: var(--gov-text-xl-font-size);
259
- line-height: var(--gov-text-xl-line-height);
260
- letter-spacing: var(--gov-text-xl-letter-spacing);
261
- margin: 0 0 0.5rem;
262
- }
263
- .gov-tile__heading {
264
257
  display: flex;
265
258
  gap: 0.5rem;
266
259
  justify-content: space-between;
260
+ align-items: flex-start;
267
261
  color: var(--gov-tile-main-color, var(--gov-color-primary));
268
262
  text-decoration: none;
263
+ margin-bottom: 0.5rem;
264
+ }
265
+ .gov-tile__title [slot=title] {
266
+ font-weight: var(--gov-text-xl-font-weight);
267
+ font-size: var(--gov-text-xl-font-size);
268
+ line-height: var(--gov-text-xl-line-height);
269
+ letter-spacing: var(--gov-text-xl-letter-spacing);
270
+ margin: 0;
269
271
  }
270
272
  .gov-tile__arrow {
271
273
  flex: 0 0 auto;
272
- width: 0.75rem;
273
- height: 2rem;
274
- margin: 0.5rem;
274
+ width: 1.25rem;
275
+ height: 1.25rem;
276
+ position: relative;
277
+ top: 0.3125rem;
275
278
  color: inherit;
276
279
  }
277
280
  .gov-tile__content {
@@ -292,27 +295,10 @@
292
295
  .gov-tile[href]:hover {
293
296
  background: var(--gov-tile-hover-bg, var(--gov-color-primary-200));
294
297
  }
295
- .gov-tile[href]:hover .gov-tile__heading {
298
+ .gov-tile[href]:hover .gov-tile__title {
296
299
  color: var(--gov-tile-main-color, var(--gov-color-primary));
297
300
  }
298
301
  }
299
- @media (min-width: 30em) {
300
- .gov-tile[promotion=""], .gov-tile[promotion=true i], .gov-tile[promotion="1"] {
301
- display: grid;
302
- grid-template-columns: auto 1fr;
303
- gap: 0 0.875rem;
304
- }
305
- .gov-tile[promotion=""] .gov-tile__icon, .gov-tile[promotion=true i] .gov-tile__icon, .gov-tile[promotion="1"] .gov-tile__icon {
306
- grid-area: 1/1/3/1;
307
- margin: 0;
308
- }
309
- .gov-tile[promotion=""] .gov-tile__title, .gov-tile[promotion=true i] .gov-tile__title, .gov-tile[promotion="1"] .gov-tile__title {
310
- grid-area: 1/2/1/2;
311
- }
312
- .gov-tile[promotion=""] .gov-tile__content, .gov-tile[promotion=true i] .gov-tile__content, .gov-tile[promotion="1"] .gov-tile__content {
313
- grid-area: 2/2/2/2;
314
- }
315
- }
316
302
  @media (min-width: 48em) {
317
303
  .gov-tile {
318
304
  padding: 1.5rem;
@@ -324,9 +310,4 @@
324
310
  width: 3rem;
325
311
  height: 3rem;
326
312
  }
327
- }
328
- @media (min-width: 64em) {
329
- .gov-tile[promotion=""], .gov-tile[promotion=true i], .gov-tile[promotion="1"] {
330
- gap: 0 1.625rem;
331
- }
332
313
  }