@gov-design-system-ce/components 0.0.66 → 0.0.67
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/core.cjs.js +1 -1
- package/dist/cjs/gov-accordion-item.cjs.entry.js +1 -1
- package/dist/cjs/gov-accordion-item.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-accordion.cjs.entry.js +2 -2
- package/dist/cjs/gov-app.cjs.entry.js +159 -0
- package/dist/cjs/gov-app.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-attachments_3.cjs.entry.js +2 -2
- package/dist/cjs/gov-backdrop.cjs.entry.js +2 -2
- package/dist/cjs/gov-breadcrumbs.cjs.entry.js +2 -2
- package/dist/cjs/gov-button.cjs.entry.js +8 -3
- package/dist/cjs/gov-button.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-card.cjs.entry.js +2 -2
- package/dist/cjs/gov-chip.cjs.entry.js +6 -1
- package/dist/cjs/gov-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-control-group.cjs.entry.js +2 -2
- package/dist/cjs/gov-control-group.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-error-code.cjs.entry.js +1 -1
- package/dist/cjs/gov-error-code.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-form-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/gov-form-control.cjs.entry.js +1 -1
- package/dist/cjs/gov-form-control.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-form-file.cjs.entry.js +2 -2
- package/dist/cjs/gov-form-input.cjs.entry.js +2 -2
- package/dist/cjs/gov-form-label.cjs.entry.js +1 -1
- package/dist/cjs/gov-form-label.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-form-multi-select.cjs.entry.js +73 -10
- package/dist/cjs/gov-form-multi-select.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-form-radio.cjs.entry.js +2 -2
- package/dist/cjs/gov-form-select.cjs.entry.js +2 -2
- package/dist/cjs/gov-form-switch.cjs.entry.js +2 -2
- package/dist/cjs/gov-icon.cjs.entry.js +2 -2
- package/dist/cjs/gov-infobar.cjs.entry.js +3 -3
- package/dist/cjs/gov-infobar.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-modal.cjs.entry.js +11 -11
- package/dist/cjs/gov-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-nav.cjs.entry.js +2 -2
- package/dist/cjs/gov-pagination.cjs.entry.js +2 -2
- package/dist/cjs/gov-prompt.cjs.entry.js +14 -14
- package/dist/cjs/gov-prompt.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-side-nav.cjs.entry.js +2 -2
- package/dist/cjs/gov-skeleton.cjs.entry.js +2 -2
- package/dist/cjs/gov-statsbar-item.cjs.entry.js +1 -1
- package/dist/cjs/gov-statsbar-item.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-tabs.cjs.entry.js +2 -2
- package/dist/cjs/gov-tag.cjs.entry.js +6 -1
- package/dist/cjs/gov-tag.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/gov-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/gov-wizard.cjs.entry.js +2 -2
- package/dist/cjs/helpers-2c870ff5.js +19 -0
- package/dist/cjs/helpers-2c870ff5.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{wcag-d7912060.js → wcag-ebd590c0.js} +2 -2
- package/dist/cjs/{wcag-d7912060.js.map → wcag-ebd590c0.js.map} +1 -1
- package/dist/cjs/{win-0427c131.js → win-9d1a8a53.js} +2 -2
- package/dist/cjs/win-9d1a8a53.js.map +1 -0
- package/dist/collection/components/gov-accordion/gov-accordion-item.css +1 -0
- package/dist/collection/components/gov-button/button/gov-button.js +44 -5
- package/dist/collection/components/gov-button/button/gov-button.js.map +1 -1
- package/dist/collection/components/gov-chip/gov-chip.js +40 -1
- package/dist/collection/components/gov-chip/gov-chip.js.map +1 -1
- package/dist/collection/components/gov-control-group/constants.js +1 -1
- package/dist/collection/components/gov-control-group/constants.js.map +1 -1
- package/dist/collection/components/gov-control-group/gov-control-group.css +18 -0
- package/dist/collection/components/gov-control-group/gov-control-group.js +1 -1
- package/dist/collection/components/gov-error-code/gov-error-code.css +4 -4
- package/dist/collection/components/gov-form/control/gov-form-control.css +13 -13
- package/dist/collection/components/gov-form/label/gov-form-label.css +5 -0
- package/dist/collection/components/gov-form/multiselect/gov-form-multi-select.js +250 -11
- package/dist/collection/components/gov-form/multiselect/gov-form-multi-select.js.map +1 -1
- package/dist/collection/components/gov-form/multiselect/gov-form-multi-select.types.js.map +1 -1
- package/dist/collection/components/gov-icon/helpers.js +14 -0
- package/dist/collection/components/gov-icon/helpers.js.map +1 -0
- package/dist/collection/components/gov-infobar/gov-infobar.css +3 -5
- package/dist/collection/components/gov-modal/gov-modal.js +13 -12
- package/dist/collection/components/gov-modal/gov-modal.js.map +1 -1
- package/dist/collection/components/gov-promp/gov-prompt.js +18 -17
- package/dist/collection/components/gov-promp/gov-prompt.js.map +1 -1
- package/dist/collection/components/gov-statsbar/gov-statsbar-item.css +2 -2
- package/dist/collection/components/gov-tag/gov-tag.js +40 -1
- package/dist/collection/components/gov-tag/gov-tag.js.map +1 -1
- package/dist/collection/components/gov-tooltip/gov-tooltip.css +0 -2
- package/dist/collection/helpers/Dom/win.js +1 -1
- package/dist/collection/helpers/Dom/win.js.map +1 -1
- package/dist/collection/pages/Button.js +4 -0
- package/dist/collection/pages/Button.js.map +1 -1
- package/dist/collection/pages/ControlGroup.js +95 -0
- package/dist/collection/pages/ControlGroup.js.map +1 -1
- package/dist/collection/pages/Forms.js +16 -0
- package/dist/collection/pages/Forms.js.map +1 -1
- package/dist/collection/pages/Infobar.js +44 -0
- package/dist/collection/pages/Infobar.js.map +1 -1
- package/dist/collection/utils/helpers.types.js +54 -0
- package/dist/collection/utils/helpers.types.js.map +1 -0
- package/dist/components/gov-accordion-item.js +1 -1
- package/dist/components/gov-accordion-item.js.map +1 -1
- package/dist/components/gov-accordion.js +1 -1
- package/dist/components/gov-app.js +1 -1
- package/dist/components/gov-app.js.map +1 -1
- package/dist/components/gov-attachments-item.js +1 -1
- package/dist/components/gov-attachments.js +1 -1
- package/dist/components/gov-backdrop.js +1 -1
- package/dist/components/gov-breadcrumbs.js +1 -1
- package/dist/components/gov-button.js +1 -1
- package/dist/components/gov-card.js +1 -1
- package/dist/components/gov-chip.js +1 -1
- package/dist/components/gov-control-group.js +1 -1
- package/dist/components/gov-control-group.js.map +1 -1
- package/dist/components/gov-error-code.js +1 -1
- package/dist/components/gov-error-code.js.map +1 -1
- package/dist/components/gov-form-autocomplete.js +1 -1
- package/dist/components/gov-form-checkbox.js +1 -1
- package/dist/components/gov-form-control.js +1 -1
- package/dist/components/gov-form-control.js.map +1 -1
- package/dist/components/gov-form-file.js +1 -1
- package/dist/components/gov-form-input.js +1 -1
- package/dist/components/gov-form-label.js +1 -1
- package/dist/components/gov-form-label.js.map +1 -1
- package/dist/components/gov-form-multi-select.js +1 -1
- package/dist/components/gov-form-multi-select.js.map +1 -1
- package/dist/components/gov-form-radio.js +1 -1
- package/dist/components/gov-form-select.js +1 -1
- package/dist/components/gov-form-switch.js +1 -1
- package/dist/components/gov-icon.js +1 -1
- package/dist/components/gov-infobar.js +1 -1
- package/dist/components/gov-infobar.js.map +1 -1
- package/dist/components/gov-loading.js +1 -1
- package/dist/components/gov-modal.js +1 -1
- package/dist/components/gov-modal.js.map +1 -1
- package/dist/components/gov-nav.js +1 -1
- package/dist/components/gov-pagination.js +1 -1
- package/dist/components/gov-prompt.js +1 -1
- package/dist/components/gov-prompt.js.map +1 -1
- package/dist/components/gov-side-nav-item.js +1 -1
- package/dist/components/gov-side-nav.js +1 -1
- package/dist/components/gov-skeleton.js +1 -1
- package/dist/components/gov-statsbar-item.js +1 -1
- package/dist/components/gov-statsbar-item.js.map +1 -1
- package/dist/components/gov-tabs.js +1 -1
- package/dist/components/gov-tag.js +1 -1
- package/dist/components/gov-tag.js.map +1 -1
- package/dist/components/gov-tile.js +1 -1
- package/dist/components/gov-toast.js +1 -1
- package/dist/components/gov-tooltip-content.js +1 -1
- package/dist/components/gov-tooltip.js +1 -1
- package/dist/components/gov-tooltip.js.map +1 -1
- package/dist/components/gov-wizard-item.js +1 -1
- package/dist/components/gov-wizard.js +1 -1
- package/dist/components/p-00b7c4f5.js +2 -0
- package/dist/components/{p-d60bcfde.js → p-26dfbba1.js} +2 -2
- package/dist/components/p-2bf5b814.js +2 -0
- package/dist/components/p-2bf5b814.js.map +1 -0
- package/dist/{core/p-4bd25e13.entry.js → components/p-3e4eae42.js} +2 -2
- package/dist/components/p-3e4eae42.js.map +1 -0
- package/dist/components/{p-3718261d.js → p-464fc42a.js} +2 -2
- package/dist/components/{p-977c00bf.js → p-4fdfb242.js} +2 -2
- package/dist/components/{p-f2efd9b5.js → p-530fbb0a.js} +2 -2
- package/dist/components/{p-4d3ad11d.js → p-8cdad015.js} +2 -2
- package/dist/components/{p-01973e7c.js → p-a00cf51c.js} +2 -2
- package/dist/components/{p-517eadc5.js → p-a0a3393f.js} +2 -2
- package/dist/components/p-b07b6908.js +2 -0
- package/dist/components/p-b07b6908.js.map +1 -0
- package/dist/components/p-d23e6972.js +2 -0
- package/dist/components/p-d23e6972.js.map +1 -0
- package/dist/core/core.css +1 -1
- package/dist/core/core.esm.js +1 -1
- package/dist/core/core.esm.js.map +1 -1
- package/dist/core/{p-c0be9590.entry.js → p-093160bb.entry.js} +2 -2
- package/dist/core/{p-9af6210d.entry.js → p-0950ca8d.entry.js} +2 -2
- package/dist/core/{p-466f885b.entry.js → p-13942637.entry.js} +2 -2
- package/dist/core/p-13942637.entry.js.map +1 -0
- package/dist/core/p-1fd3d109.entry.js +2 -0
- package/dist/core/{p-2bcabdd5.entry.js.map → p-1fd3d109.entry.js.map} +1 -1
- package/dist/core/{p-965f24fb.entry.js → p-26921fac.entry.js} +2 -2
- package/dist/core/{p-c3e4700b.entry.js → p-28c83bdf.entry.js} +2 -2
- package/dist/core/p-2bf5b814.js +2 -0
- package/dist/core/p-2bf5b814.js.map +1 -0
- package/dist/core/p-31b93317.entry.js +2 -0
- package/dist/core/p-31b93317.entry.js.map +1 -0
- package/dist/core/{p-e9c0fac1.entry.js → p-3aa4cf18.entry.js} +2 -2
- package/dist/core/{p-029beaf4.entry.js → p-6b1c11ba.entry.js} +2 -2
- package/dist/core/p-6b1c11ba.entry.js.map +1 -0
- package/dist/core/p-74882c70.entry.js +2 -0
- package/dist/core/p-74882c70.entry.js.map +1 -0
- package/dist/core/{p-b3840f50.entry.js → p-79ca1b62.entry.js} +2 -2
- package/dist/core/{p-a54c1e85.entry.js → p-7cd73b1e.entry.js} +2 -2
- package/dist/core/p-878741b6.entry.js +2 -0
- package/dist/core/{p-9d4a6e9b.entry.js.map → p-878741b6.entry.js.map} +1 -1
- package/dist/core/{p-2016172f.entry.js → p-89b3e4d4.entry.js} +2 -2
- package/dist/core/{p-2016172f.entry.js.map → p-89b3e4d4.entry.js.map} +1 -1
- package/dist/core/p-9aeb4282.entry.js +2 -0
- package/dist/core/p-9aeb4282.entry.js.map +1 -0
- package/dist/core/{p-a3b6c5c7.entry.js → p-9d10131d.entry.js} +2 -2
- package/dist/core/p-a7d895cb.entry.js +2 -0
- package/dist/core/{p-7b7f8cc2.entry.js.map → p-a7d895cb.entry.js.map} +1 -1
- package/dist/core/{p-a133cdda.entry.js → p-acb40ea2.entry.js} +2 -2
- package/dist/core/{p-b49ac370.entry.js → p-af1433f7.entry.js} +2 -2
- package/dist/core/{p-eb0c9716.entry.js → p-ba7cbd7f.entry.js} +2 -2
- package/dist/core/p-bb7f0a66.entry.js +2 -0
- package/dist/core/p-bb7f0a66.entry.js.map +1 -0
- package/dist/core/p-bd763705.entry.js +2 -0
- package/dist/core/p-bd763705.entry.js.map +1 -0
- package/dist/core/p-bf39d442.entry.js +2 -0
- package/dist/core/p-bf39d442.entry.js.map +1 -0
- package/dist/core/p-c44d44df.entry.js +2 -0
- package/dist/core/p-c44d44df.entry.js.map +1 -0
- package/dist/core/{p-87b5668e.entry.js → p-cef10fe5.entry.js} +2 -2
- package/dist/core/p-d1a3e571.entry.js +2 -0
- package/dist/core/p-d1a3e571.entry.js.map +1 -0
- package/dist/core/p-d23e6972.js +2 -0
- package/dist/core/p-d23e6972.js.map +1 -0
- package/dist/core/{p-4accef73.entry.js → p-d4d59523.entry.js} +2 -2
- package/dist/core/p-ea275d90.entry.js +2 -0
- package/dist/core/p-ea275d90.entry.js.map +1 -0
- package/dist/core/p-ecc8cc47.entry.js +2 -0
- package/dist/core/p-ecc8cc47.entry.js.map +1 -0
- package/dist/core/p-ee35ca3f.entry.js +2 -0
- package/dist/core/p-ee35ca3f.entry.js.map +1 -0
- package/dist/core/{p-6833aeaf.entry.js → p-f4a6a339.entry.js} +2 -2
- package/dist/core/p-faabd332.js +2 -0
- package/dist/core/p-fc81b896.entry.js +2 -0
- package/dist/core/p-fc81b896.entry.js.map +1 -0
- package/dist/core/{p-83afcd5b.entry.js → p-fda41420.entry.js} +2 -2
- package/dist/esm/core.js +1 -1
- package/dist/esm/gov-accordion-item.entry.js +1 -1
- package/dist/esm/gov-accordion-item.entry.js.map +1 -1
- package/dist/esm/gov-accordion.entry.js +2 -2
- package/dist/esm/gov-app.entry.js +159 -0
- package/dist/esm/gov-app.entry.js.map +1 -1
- package/dist/esm/gov-attachments_3.entry.js +2 -2
- package/dist/esm/gov-backdrop.entry.js +2 -2
- package/dist/esm/gov-breadcrumbs.entry.js +2 -2
- package/dist/esm/gov-button.entry.js +8 -3
- package/dist/esm/gov-button.entry.js.map +1 -1
- package/dist/esm/gov-card.entry.js +2 -2
- package/dist/esm/gov-chip.entry.js +6 -1
- package/dist/esm/gov-chip.entry.js.map +1 -1
- package/dist/esm/gov-control-group.entry.js +2 -2
- package/dist/esm/gov-control-group.entry.js.map +1 -1
- package/dist/esm/gov-error-code.entry.js +1 -1
- package/dist/esm/gov-error-code.entry.js.map +1 -1
- package/dist/esm/gov-form-checkbox.entry.js +2 -2
- package/dist/esm/gov-form-control.entry.js +1 -1
- package/dist/esm/gov-form-control.entry.js.map +1 -1
- package/dist/esm/gov-form-file.entry.js +2 -2
- package/dist/esm/gov-form-input.entry.js +2 -2
- package/dist/esm/gov-form-label.entry.js +1 -1
- package/dist/esm/gov-form-label.entry.js.map +1 -1
- package/dist/esm/gov-form-multi-select.entry.js +73 -10
- package/dist/esm/gov-form-multi-select.entry.js.map +1 -1
- package/dist/esm/gov-form-radio.entry.js +2 -2
- package/dist/esm/gov-form-select.entry.js +2 -2
- package/dist/esm/gov-form-switch.entry.js +2 -2
- package/dist/esm/gov-icon.entry.js +2 -2
- package/dist/esm/gov-infobar.entry.js +3 -3
- package/dist/esm/gov-infobar.entry.js.map +1 -1
- package/dist/esm/gov-modal.entry.js +11 -11
- package/dist/esm/gov-modal.entry.js.map +1 -1
- package/dist/esm/gov-nav.entry.js +2 -2
- package/dist/esm/gov-pagination.entry.js +2 -2
- package/dist/esm/gov-prompt.entry.js +14 -14
- package/dist/esm/gov-prompt.entry.js.map +1 -1
- package/dist/esm/gov-side-nav.entry.js +2 -2
- package/dist/esm/gov-skeleton.entry.js +2 -2
- package/dist/esm/gov-statsbar-item.entry.js +1 -1
- package/dist/esm/gov-statsbar-item.entry.js.map +1 -1
- package/dist/esm/gov-tabs.entry.js +2 -2
- package/dist/esm/gov-tag.entry.js +6 -1
- package/dist/esm/gov-tag.entry.js.map +1 -1
- package/dist/esm/gov-tooltip.entry.js +1 -1
- package/dist/esm/gov-tooltip.entry.js.map +1 -1
- package/dist/esm/gov-wizard.entry.js +2 -2
- package/dist/esm/helpers-bc0fd116.js +17 -0
- package/dist/esm/helpers-bc0fd116.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{wcag-06bd4d01.js → wcag-b7b67e25.js} +2 -2
- package/dist/esm/{wcag-06bd4d01.js.map → wcag-b7b67e25.js.map} +1 -1
- package/dist/esm/{win-0a50f66e.js → win-0d231cca.js} +2 -2
- package/dist/esm/win-0d231cca.js.map +1 -0
- package/dist/hydrate/index.js +305 -44
- package/dist/types/components/gov-button/button/gov-button.d.ts +9 -1
- package/dist/types/components/gov-chip/gov-chip.d.ts +8 -0
- package/dist/types/components/gov-control-group/constants.d.ts +1 -1
- package/dist/types/components/gov-form/multiselect/gov-form-multi-select.d.ts +33 -1
- package/dist/types/components/gov-form/multiselect/gov-form-multi-select.types.d.ts +1 -0
- package/dist/types/components/gov-icon/helpers.d.ts +5 -0
- package/dist/types/components/gov-modal/gov-modal.d.ts +3 -3
- package/dist/types/components/gov-promp/gov-prompt.d.ts +3 -3
- package/dist/types/components/gov-tag/gov-tag.d.ts +8 -0
- package/dist/types/components.d.ts +86 -2
- package/dist/types/utils/helpers.types.d.ts +49 -0
- package/package.json +2 -2
- package/dist/cjs/win-0427c131.js.map +0 -1
- package/dist/collection/helpers/StorybookDocsTemplate.js +0 -9
- package/dist/collection/helpers/StorybookDocsTemplate.js.map +0 -1
- package/dist/components/p-7fe7f6cd.js +0 -2
- package/dist/components/p-7fe7f6cd.js.map +0 -1
- package/dist/components/p-ae894a40.js +0 -2
- package/dist/components/p-cac3881f.js +0 -2
- package/dist/components/p-cac3881f.js.map +0 -1
- package/dist/components/p-d71d23ef.js +0 -2
- package/dist/components/p-d71d23ef.js.map +0 -1
- package/dist/core/p-029beaf4.entry.js.map +0 -1
- package/dist/core/p-14ca0233.entry.js +0 -2
- package/dist/core/p-14ca0233.entry.js.map +0 -1
- package/dist/core/p-2a95f9fb.entry.js +0 -2
- package/dist/core/p-2a95f9fb.entry.js.map +0 -1
- package/dist/core/p-2bcabdd5.entry.js +0 -2
- package/dist/core/p-356adceb.entry.js +0 -2
- package/dist/core/p-356adceb.entry.js.map +0 -1
- package/dist/core/p-3bd226fc.entry.js +0 -2
- package/dist/core/p-3bd226fc.entry.js.map +0 -1
- package/dist/core/p-466f885b.entry.js.map +0 -1
- package/dist/core/p-4bd25e13.entry.js.map +0 -1
- package/dist/core/p-53549fe4.entry.js +0 -2
- package/dist/core/p-53549fe4.entry.js.map +0 -1
- package/dist/core/p-570ef4e5.js +0 -2
- package/dist/core/p-603a9d99.entry.js +0 -2
- package/dist/core/p-603a9d99.entry.js.map +0 -1
- package/dist/core/p-7b7f8cc2.entry.js +0 -2
- package/dist/core/p-7d85bc32.entry.js +0 -2
- package/dist/core/p-7d85bc32.entry.js.map +0 -1
- package/dist/core/p-8811fe68.entry.js +0 -2
- package/dist/core/p-8811fe68.entry.js.map +0 -1
- package/dist/core/p-9d4a6e9b.entry.js +0 -2
- package/dist/core/p-a9493d11.entry.js +0 -2
- package/dist/core/p-a9493d11.entry.js.map +0 -1
- package/dist/core/p-c5e9da95.entry.js +0 -2
- package/dist/core/p-c5e9da95.entry.js.map +0 -1
- package/dist/core/p-cac3881f.js +0 -2
- package/dist/core/p-cac3881f.js.map +0 -1
- package/dist/core/p-d4c468b9.entry.js +0 -2
- package/dist/core/p-d4c468b9.entry.js.map +0 -1
- package/dist/esm/win-0a50f66e.js.map +0 -1
- package/dist/types/helpers/StorybookDocsTemplate.d.ts +0 -3
- /package/dist/components/{p-ae894a40.js.map → p-00b7c4f5.js.map} +0 -0
- /package/dist/components/{p-d60bcfde.js.map → p-26dfbba1.js.map} +0 -0
- /package/dist/components/{p-3718261d.js.map → p-464fc42a.js.map} +0 -0
- /package/dist/components/{p-977c00bf.js.map → p-4fdfb242.js.map} +0 -0
- /package/dist/components/{p-f2efd9b5.js.map → p-530fbb0a.js.map} +0 -0
- /package/dist/components/{p-4d3ad11d.js.map → p-8cdad015.js.map} +0 -0
- /package/dist/components/{p-01973e7c.js.map → p-a00cf51c.js.map} +0 -0
- /package/dist/components/{p-517eadc5.js.map → p-a0a3393f.js.map} +0 -0
- /package/dist/core/{p-c0be9590.entry.js.map → p-093160bb.entry.js.map} +0 -0
- /package/dist/core/{p-9af6210d.entry.js.map → p-0950ca8d.entry.js.map} +0 -0
- /package/dist/core/{p-965f24fb.entry.js.map → p-26921fac.entry.js.map} +0 -0
- /package/dist/core/{p-c3e4700b.entry.js.map → p-28c83bdf.entry.js.map} +0 -0
- /package/dist/core/{p-e9c0fac1.entry.js.map → p-3aa4cf18.entry.js.map} +0 -0
- /package/dist/core/{p-b3840f50.entry.js.map → p-79ca1b62.entry.js.map} +0 -0
- /package/dist/core/{p-a54c1e85.entry.js.map → p-7cd73b1e.entry.js.map} +0 -0
- /package/dist/core/{p-a3b6c5c7.entry.js.map → p-9d10131d.entry.js.map} +0 -0
- /package/dist/core/{p-a133cdda.entry.js.map → p-acb40ea2.entry.js.map} +0 -0
- /package/dist/core/{p-b49ac370.entry.js.map → p-af1433f7.entry.js.map} +0 -0
- /package/dist/core/{p-eb0c9716.entry.js.map → p-ba7cbd7f.entry.js.map} +0 -0
- /package/dist/core/{p-87b5668e.entry.js.map → p-cef10fe5.entry.js.map} +0 -0
- /package/dist/core/{p-4accef73.entry.js.map → p-d4d59523.entry.js.map} +0 -0
- /package/dist/core/{p-6833aeaf.entry.js.map → p-f4a6a339.entry.js.map} +0 -0
- /package/dist/core/{p-570ef4e5.js.map → p-faabd332.js.map} +0 -0
- /package/dist/core/{p-83afcd5b.entry.js.map → p-fda41420.entry.js.map} +0 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
const gov_log = require('./gov.log-0c9dca27.js');
|
|
4
4
|
const string_utils = require('./string.utils-0f08c48c.js');
|
|
5
|
-
const win = require('./win-
|
|
5
|
+
const win = require('./win-9d1a8a53.js');
|
|
6
6
|
|
|
7
7
|
const validateWcagProp = (value, propName, component) => {
|
|
8
8
|
if (value === undefined || String(value).length === 0) {
|
|
@@ -64,4 +64,4 @@ exports.validateWcagLabelFor = validateWcagLabelFor;
|
|
|
64
64
|
exports.validateWcagProp = validateWcagProp;
|
|
65
65
|
exports.validateWcagRef = validateWcagRef;
|
|
66
66
|
|
|
67
|
-
//# sourceMappingURL=wcag-
|
|
67
|
+
//# sourceMappingURL=wcag-ebd590c0.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"wcag-
|
|
1
|
+
{"file":"wcag-ebd590c0.js","mappings":";;;;;;MAIa,gBAAgB,GAAG,CAAC,KAAyB,EAAE,QAAgB,EAAE,SAAiB;EAC9F,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;IACtDA,qBAAa,CAAC,IAAI,SAAS,WAAW,QAAQ,qDAAqD,CAAC,CAAA;GACpG;AACF,EAAC;MAEY,eAAe,GAAG,CAAC,WAAmB,EAAE,IAAY,EAAE,SAAiB;EACnF,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,KAAK,SAAS,EAAE;IACpE,OAAO,IAAI,CAAA;GACX;EACD,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;IACrCA,qBAAa,CAAC,IAAI,SAAS,iBAAiB,IAAI,mCAAmC,CAAC,CAAA;IACpF,OAAO,KAAK,CAAA;GACZ;EACD,IAAI,OAAO,GAAG,EAAE,CAAA;EAChB,MAAM,YAAY,GAAGC,8BAAiB,CAAC,WAAW,CAAC,CAAA;EACnD,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;IAChC,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC;MACxC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAA;KAC1B,CAAC,CAAA;GACF;EAED,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW;IAClC,IAAIC,gBAAY,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;;MAExD,OAAO,KAAK,CAAA;KACZ;SAAM;MACN,OAAO,IAAI,CAAA;KACX;GACD,CAAC,CAAC,MAAM,CAAA;AACV,EAAC;MAEY,oBAAoB,GAAG,CAAC,OAAe,EAAE,UAA8B,EAAE,SAAiB;EACtG,MAAM,OAAO,GAAGA,gBAAY,EAAE,CAAC,aAAa,CAAC,QAAQ,OAAO,GAAG,CAAC,CAAA;EAChE,IAAI,OAAO,KAAK,IAAI,EAAE;IACrB,MAAM,YAAY,GAAGA,gBAAY,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,CAAA;IAC9D,IAAI,YAAY,KAAK,IAAI,EAAE;MAC1BF,qBAAa,CAAC,IAAI,SAAS,8EAA8E,CAAC,CAAA;MAC1G,OAAO,KAAK,CAAA;KACZ;GACD;EACD,OAAO,IAAI,CAAA;AACZ,EAAC;MAEY,iBAAiB,GAAG,CAAC,KAAyB,EAAE,UAA8B,EAAE,SAAiB;EAC7G,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;IAClD,OAAO,IAAI,CAAA;GACX;EACD,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;IAC5D,MAAM,YAAY,GAAGE,gBAAY,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,CAAA;IAC9D,IAAI,YAAY,EAAE;MACjB,OAAO,IAAI,CAAA;KACX;GACD;EACDF,qBAAa,CAAC,IAAI,SAAS,yEAAyE,CAAC,CAAA;EACrG,OAAO,KAAK,CAAA;AACb;;;;;;;","names":["govWarningLog","splitByWhitespace","documentNode"],"sources":["../../../packages/core/src/helpers/Validate/wcag.ts"],"sourcesContent":["import { govWarningLog } from '../Log/gov.log'\nimport { splitByWhitespace } from '../../utils/string.utils'\nimport { documentNode } from '../Dom/win'\n\nexport const validateWcagProp = (value: string | undefined, propName: string, component: string): void => {\n\tif (value === undefined || String(value).length === 0) {\n\t\tgovWarningLog(`[${component}]: The (${propName}) attribute is important for correct accessibility.`)\n\t}\n}\n\nexport const validateWcagRef = (referenceId: string, name: string, component: string): boolean => {\n\tif (typeof referenceId === 'undefined' || referenceId === undefined) {\n\t\treturn true\n\t}\n\tif (String(referenceId).length === 0) {\n\t\tgovWarningLog(`[${component}]: Attribute (${name}) is defined with an empty value.`)\n\t\treturn false\n\t}\n\tlet strings = []\n\tconst referenceIds = splitByWhitespace(referenceId)\n\tif (Array.isArray(referenceIds)) {\n\t\tstrings = referenceIds.filter(function (e) {\n\t\t\treturn e.trim().length > 0\n\t\t})\n\t}\n\n\treturn !!strings.filter(referenceId => {\n\t\tif (documentNode().getElementById(referenceId) === null) {\n\t\t\t//govWarningLog(`[${component}][${name}]: Reference to element with id (${referenceId}) does not exist.`)\n\t\t\treturn false\n\t\t} else {\n\t\t\treturn true\n\t\t}\n\t}).length\n}\n\nexport const validateWcagLabelFor = (inputId: string, labelledBy: string | undefined, component: string): boolean => {\n\tconst labelEl = documentNode().querySelector(`[for=${inputId}]`)\n\tif (labelEl === null) {\n\t\tconst labelledByEl = documentNode().getElementById(labelledBy)\n\t\tif (labelledByEl === null) {\n\t\t\tgovWarningLog(`[${component}]: The form element has no defined wcag-label or wcag-labelled-by attribute.`)\n\t\t\treturn false\n\t\t}\n\t}\n\treturn true\n}\n\nexport const validateWcagLabel = (label: string | undefined, labelledBy: string | undefined, component: string): boolean => {\n\tif (typeof label === 'string' && label.length > 0) {\n\t\treturn true\n\t}\n\tif (typeof labelledBy === 'string' && labelledBy.length > 0) {\n\t\tconst labelledByEl = documentNode().getElementById(labelledBy)\n\t\tif (labelledByEl) {\n\t\t\treturn true\n\t\t}\n\t}\n\tgovWarningLog(`[${component}]: The element has no defined wcag-label or wcag-labelled-by attribute.`)\n\treturn false\n}\n"],"version":3}
|
|
@@ -7,7 +7,7 @@ const getWindowProperty = (name) => isWindow && window && utils.property(name, w
|
|
|
7
7
|
const config = () => {
|
|
8
8
|
const defaultConfig = {
|
|
9
9
|
canValidateWcagOnRender: false,
|
|
10
|
-
iconsPath: '
|
|
10
|
+
iconsPath: '/assets/icons',
|
|
11
11
|
iconsLazyLoad: true,
|
|
12
12
|
documentNode: document ? document : null,
|
|
13
13
|
};
|
|
@@ -27,4 +27,4 @@ exports.documentNode = documentNode;
|
|
|
27
27
|
exports.iconsLazyLoad = iconsLazyLoad;
|
|
28
28
|
exports.iconsPath = iconsPath;
|
|
29
29
|
|
|
30
|
-
//# sourceMappingURL=win-
|
|
30
|
+
//# sourceMappingURL=win-9d1a8a53.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"win-9d1a8a53.js","mappings":";;;;AASO,MAAM,QAAQ,GAAG,OAAO,MAAM,KAAK,WAAW,CAAA;AAErD,MAAM,iBAAiB,GAAG,CAAI,IAAY,KAA6B,QAAQ,IAAI,MAAM,IAAIA,cAAQ,CAAC,IAA2B,EAAE,MAAM,CAAC,CAAA;AAE1I,MAAM,MAAM,GAAG;EACd,MAAM,aAAa,GAAY;IAC9B,uBAAuB,EAAE,KAAK;IAC9B,SAAS,EAAE,eAAe;IAC1B,aAAa,EAAE,IAAI;IACnB,YAAY,EAAE,QAAQ,GAAG,QAAQ,GAAG,IAAI;GACxC,CAAA;EAED,MAAM,cAAc,GAAG,iBAAiB,CAAU,eAAe,CAAC,CAAA;EAClE,IAAI,cAAc,EAAE;IACnB,uCAAY,aAAa,GAAK,cAAc,EAAE;GAC9C;EAED,OAAO,aAAa,CAAA;AACrB,CAAC,CAAA;MAEY,uBAAuB,GAAG,MAA0C,MAAM,EAAE,CAAC,wBAAuB;MACpG,SAAS,GAAG,MAA4B,MAAM,EAAE,CAAC,UAAS;MAC1D,aAAa,GAAG,MAAgC,MAAM,EAAE,CAAC,cAAa;MACtE,YAAY,GAAG,MAA+B,MAAM,EAAE,CAAC;;;;;;;","names":["property"],"sources":["../../../packages/core/src/helpers/Dom/win.ts"],"sourcesContent":["import { property } from '../../utils/utils'\n\ninterface IConfig {\n\tcanValidateWcagOnRender: boolean\n\ticonsPath: string\n\ticonsLazyLoad: boolean\n\tdocumentNode: Document\n}\n\nexport const isWindow = typeof window !== \"undefined\"\n\nconst getWindowProperty = <T>(name: string): Partial<T> | undefined => isWindow && window && property(name as keyof typeof window, window)\n\nconst config = (): IConfig => {\n\tconst defaultConfig: IConfig = {\n\t\tcanValidateWcagOnRender: false,\n\t\ticonsPath: '/assets/icons',\n\t\ticonsLazyLoad: true,\n\t\tdocumentNode: document ? document : null,\n\t}\n\n\tconst windowProperty = getWindowProperty<IConfig>('GOV_DS_CONFIG')\n\tif (windowProperty) {\n\t\treturn { ...defaultConfig, ...windowProperty }\n\t}\n\n\treturn defaultConfig\n}\n\nexport const canValidateWcagOnRender = (): IConfig['canValidateWcagOnRender'] => config().canValidateWcagOnRender\nexport const iconsPath = (): IConfig['iconsPath'] => config().iconsPath\nexport const iconsLazyLoad = (): IConfig['iconsLazyLoad'] => config().iconsLazyLoad\nexport const documentNode = (): IConfig['documentNode'] => config().documentNode\n"],"version":3}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { h, Host } from "@stencil/core";
|
|
2
2
|
import { validateProp } from "../../../helpers/Validate/props";
|
|
3
|
-
import { ButtonVariants,
|
|
4
|
-
import { govHost, toBoolAttr, toBoolAttrIfDefined
|
|
3
|
+
import { ButtonClass, ButtonVariants, NativeType, Type, } from "./constants";
|
|
4
|
+
import { govHost, prepareClasses, toBoolAttr, toBoolAttrIfDefined } from "../../../helpers/Dom/template";
|
|
5
5
|
import { toBool } from "../../../utils/bool.utils";
|
|
6
6
|
import { Sizes } from "../../../core/constants/sizes";
|
|
7
7
|
import { validateWcagLabel, validateWcagRef } from "../../../helpers/Validate/wcag";
|
|
8
8
|
import { canValidateWcagOnRender } from "../../../helpers/Dom/win";
|
|
9
9
|
import { delay } from "../../../utils/utils";
|
|
10
|
+
import { prepareIconFormat } from "../../gov-icon/helpers";
|
|
10
11
|
var Tags;
|
|
11
12
|
(function (Tags) {
|
|
12
13
|
Tags["A"] = "a";
|
|
@@ -20,6 +21,8 @@ export class GovButton {
|
|
|
20
21
|
this.expanded = false;
|
|
21
22
|
this.inverse = false;
|
|
22
23
|
this.name = undefined;
|
|
24
|
+
this.iconLeft = undefined;
|
|
25
|
+
this.iconRight = undefined;
|
|
23
26
|
this.disabled = false;
|
|
24
27
|
this.nativeType = "button";
|
|
25
28
|
this.href = undefined;
|
|
@@ -77,8 +80,10 @@ export class GovButton {
|
|
|
77
80
|
render() {
|
|
78
81
|
const Tag = this.href ? Tags.A : Tags.BUTTON;
|
|
79
82
|
const nativeType = Tag === Tags.A ? undefined : this.nativeType;
|
|
83
|
+
const iconLeft = prepareIconFormat(this.iconLeft);
|
|
84
|
+
const iconRight = prepareIconFormat(this.iconRight);
|
|
80
85
|
return (h(Host, { hoverable: true, size: this.size, variant: this.variant, class: this.h.classes(this.classNames), type: this.type, inverse: this.inverse }, h(Tag, { class: "element", ref: el => (this.triggerRef = el), onClick: this.onClickHandler.bind(this), onFocus: this.onFocusHandler.bind(this), onBlur: this.onBlurHandler.bind(this), onMouseDown: () => (this.isPressed = true), onMouseUp: () => (this.isPressed = false), disabled: this.disabled, id: this.identifier, href: this.href, target: this.target, download: this.download, hreflang: this.hreflang, rel: this.rel, name: this.name, type: nativeType, tabindex: this.focusable ? "0" : "-1", "aria-activedescendant": this.wcagActiveDescendant, "aria-describedby": this.wcagActiveDescendant, "aria-description": this.wcagDescription, "aria-controls": this.wcagControls, "aria-details": this.wcagDetails, "aria-expanded": toBoolAttrIfDefined(this.wcagExpanded), "aria-label": this.wcagLabel, "aria-labelledby": this.wcagLabelledBy, "aria-owns": this.wcagOwns, "aria-haspopup": toBoolAttrIfDefined(this.wcagHasPopup), "aria-pressed": toBoolAttr(this.isPressed), "aria-disabled": toBoolAttrIfDefined(this.disabled), "aria-current": this.wcagCurrent }, toBool(this.loading) && !this.h.hasSlot("right-icon") &&
|
|
81
|
-
h("gov-icon", { name: "loader", class: "gov-spin-animation" }), this.h.hasSlot("left-icon") && h("slot", { name: "left-icon" }), h("slot", null), this.h.hasSlot("right-icon") && h("slot", { name: "right-icon" }), toBool(this.loading) && this.h.hasSlot("right-icon") &&
|
|
86
|
+
h("gov-icon", { name: "loader", class: "gov-spin-animation" }), this.h.hasSlot("left-icon") && h("slot", { name: "left-icon" }), iconLeft && h("gov-icon", { type: iconLeft.type, name: iconLeft.name }), h("slot", null), this.h.hasSlot("right-icon") && h("slot", { name: "right-icon" }), iconRight && h("gov-icon", { type: iconRight.type, name: iconRight.name }), toBool(this.loading) && this.h.hasSlot("right-icon") &&
|
|
82
87
|
h("gov-icon", { name: "loader", class: "gov-spin-animation" }))));
|
|
83
88
|
}
|
|
84
89
|
onClickHandler(e) {
|
|
@@ -231,7 +236,7 @@ export class GovButton {
|
|
|
231
236
|
"text": "Expands the button to fill 100% of the container width"
|
|
232
237
|
},
|
|
233
238
|
"attribute": "expanded",
|
|
234
|
-
"reflect":
|
|
239
|
+
"reflect": true,
|
|
235
240
|
"defaultValue": "false"
|
|
236
241
|
},
|
|
237
242
|
"inverse": {
|
|
@@ -249,7 +254,7 @@ export class GovButton {
|
|
|
249
254
|
"text": "Determine if component should have inversed colors to be used on dark background"
|
|
250
255
|
},
|
|
251
256
|
"attribute": "inverse",
|
|
252
|
-
"reflect":
|
|
257
|
+
"reflect": true,
|
|
253
258
|
"defaultValue": "false"
|
|
254
259
|
},
|
|
255
260
|
"name": {
|
|
@@ -269,6 +274,40 @@ export class GovButton {
|
|
|
269
274
|
"attribute": "name",
|
|
270
275
|
"reflect": false
|
|
271
276
|
},
|
|
277
|
+
"iconLeft": {
|
|
278
|
+
"type": "string",
|
|
279
|
+
"mutable": false,
|
|
280
|
+
"complexType": {
|
|
281
|
+
"original": "string",
|
|
282
|
+
"resolved": "string",
|
|
283
|
+
"references": {}
|
|
284
|
+
},
|
|
285
|
+
"required": false,
|
|
286
|
+
"optional": true,
|
|
287
|
+
"docs": {
|
|
288
|
+
"tags": [],
|
|
289
|
+
"text": "Definition of the button icon on the left. The icon must be defined in the form \"type/name\"."
|
|
290
|
+
},
|
|
291
|
+
"attribute": "icon-left",
|
|
292
|
+
"reflect": false
|
|
293
|
+
},
|
|
294
|
+
"iconRight": {
|
|
295
|
+
"type": "string",
|
|
296
|
+
"mutable": false,
|
|
297
|
+
"complexType": {
|
|
298
|
+
"original": "string",
|
|
299
|
+
"resolved": "string",
|
|
300
|
+
"references": {}
|
|
301
|
+
},
|
|
302
|
+
"required": false,
|
|
303
|
+
"optional": true,
|
|
304
|
+
"docs": {
|
|
305
|
+
"tags": [],
|
|
306
|
+
"text": "Definition of the button icon on the left. The icon must be defined in the form \"type/name\"."
|
|
307
|
+
},
|
|
308
|
+
"attribute": "icon-right",
|
|
309
|
+
"reflect": false
|
|
310
|
+
},
|
|
272
311
|
"disabled": {
|
|
273
312
|
"type": "boolean",
|
|
274
313
|
"mutable": false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gov-button.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-button/button/gov-button.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\tButtonSizesType,\n\tNativeTypesType,\n\tTypesType,\n\tButtonVariants,\n\tButtonVariantType,\n\tButtonClass,\n\tType,\n\tNativeType,\n\tButtonTargetType,\n} from \"./constants\"\nimport { govHost, toBoolAttr, toBoolAttrIfDefined, prepareClasses } from \"../../../helpers/Dom/template\"\nimport { GovHost } from \"../../../helpers/Dom/template.types\"\nimport { toBool } from \"../../../utils/bool.utils\"\nimport { Sizes } from \"../../../core/constants/sizes\"\nimport { validateWcagLabel, validateWcagRef } from \"../../../helpers/Validate/wcag\"\nimport { canValidateWcagOnRender } from \"../../../helpers/Dom/win\"\nimport { delay } from \"../../../utils/utils\"\nimport { ButtonEvent } from \"./gov-button.types\"\n\nenum Tags {\n\tA = \"a\",\n\tBUTTON = \"button\",\n}\n\n@Component({\n\ttag: \"gov-button\",\n\tstyleUrl: \"gov-button.scss\",\n})\nexport class GovButton {\n\tprivate h: GovHost\n\tprivate triggerRef?: HTMLButtonElement | HTMLLinkElement\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovButtonElement\n\n\t/**\n\t * Style variation of the button\n\t */\n\t@Prop({ reflect: true }) readonly variant?: ButtonVariantType\n\t/**\n\t * Button’s size\n\t */\n\t@Prop({ reflect: true }) readonly size?: ButtonSizesType = \"m\"\n\t/**\n\t * Button's type\n\t */\n\t@Prop({ reflect: true }) readonly type?: TypesType = \"solid\"\n\t/**\n\t * Expands the button to fill 100% of the container width\n\t */\n\t@Prop() readonly expanded: boolean = false\n\t/**\n\t * Determine if component should have inversed colors to be used on dark background\n\t */\n\t@Prop() readonly inverse: boolean = false\n\t/**\n\t * The name of the button, which gets paired with the button's value when submitted as part of a form. Corresponds with the native HTML name attribute\n\t */\n\t@Prop() readonly name: string\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({ reflect: true }) readonly disabled: boolean = false\n\t/**\n\t * Same as original parameter\n\t * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-type\n\t */\n\t@Prop() readonly nativeType?: NativeTypesType = \"button\"\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href\n\t */\n\t@Prop() readonly href: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-target\n\t */\n\t@Prop() readonly target?: ButtonTargetType\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-download\n\t */\n\t@Prop() readonly download: boolean\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-hreflang\n\t */\n\t@Prop() readonly hreflang: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-referrerpolicy\n\t */\n\t@Prop() readonly referrerpolicy: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-rel\n\t */\n\t@Prop() readonly rel: string\n\t/**\n\t * Indicates whether an asynchronous process is running\n\t */\n\t@Prop() readonly loading: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/focusable\n\t */\n\t@Prop() readonly focusable: boolean = true\n\t/**\n\t * Custom button identifier\n\t */\n\t@Prop({ attribute: \"identifier\" }) readonly identifier: string\n\t/**\n\t * Indicates the id of a related component’s visually focused element\n\t */\n\t@Prop({ attribute: \"wcag-active-descendant\" }) readonly wcagActiveDescendant: string\n\t/**\n\t * Use this property to add an aria-controls attribute to the button. Use the attribute to point to the unique id of the content that the button manages\n\t */\n\t@Prop({ attribute: \"wcag-controls\" }) readonly wcagControls: string\n\t/**\n\t * Indicates the id of a component that describes the button\n\t */\n\t@Prop({ attribute: \"wcag-described-by\" }) readonly wcagDescribedBy: string\n\t/**\n\t * Aria description the button\n\t */\n\t@Prop({ attribute: \"wcag-description\" }) readonly wcagDescription: string\n\t/**\n\t * Details of the component\n\t */\n\t@Prop({ attribute: \"wcag-details\" }) readonly wcagDetails: string\n\t/**\n\t * If a button expands or collapses adjacent content, then use the ariaExpanded prop to add the aria-expanded attribute to the button\n\t * Set the value to convey the current expanded (true) or collapsed (false) state of the content\n\t */\n\t@Prop({ attribute: \"wcag-expanded\" }) readonly wcagExpanded: boolean\n\t/**\n\t * Adds accessible label for the button that is only shown for screen readers\n\t * Typically, this label text replaces the visible text on the button for users who use assistive technology\n\t */\n\t@Prop({ attribute: \"wcag-label\" }) readonly wcagLabel: string\n\t/**\n\t * String of id's that indicate alternative labels elements\n\t */\n\t@Prop({ attribute: \"wcag-labelled-by\" }) readonly wcagLabelledBy: string\n\t/**\n\t * Indicates the id of a component owned by the button\n\t */\n\t@Prop({ attribute: \"wcag-owns\" }) readonly wcagOwns: string\n\t/**\n\t * \tUse this property to add an aria-haspopup attribute to a button, if you are using it as a menu button\n\t */\n\t@Prop({ attribute: \"wcag-has-popup\" }) readonly wcagHasPopup: string\n\t/**\n\t * Tells screen reader the element is pressed\n\t */\n\t@Prop({ attribute: \"wcag-pressed\" }) readonly wcagPressed: string\n\t/**\n\t * Indicates the current item within a container or set of related elements\n\t */\n\t@Prop({ attribute: \"wcag-current\" }) readonly wcagCurrent: string\n\t/**\n\t * Emitted when the button click\n\t */\n\t@Event({ eventName: \"gov-click\" }) govClick: EventEmitter<ButtonEvent>\n\t/**\n\t * Emitted when the button has focus\n\t */\n\t@Event({ eventName: \"gov-focus\" }) govFocus: EventEmitter<ButtonEvent>\n\t/**\n\t * Emitted when the button loses focus\n\t */\n\t@Event({ eventName: \"gov-blur\" }) govBlur: EventEmitter<ButtonEvent>\n\n\t@Watch(\"variant\")\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(ButtonVariants, newValue, ButtonClass.root)\n\t}\n\n\t@Watch(\"type\")\n\tvalidateType(newValue: string): void {\n\t\tvalidateProp(Type, newValue, ButtonClass.root)\n\t}\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(Sizes, newValue, ButtonClass.root)\n\t}\n\n\t@Watch(\"nativeType\")\n\tvalidateNativeType(newValue: string): void {\n\t\tvalidateProp(NativeType, newValue, ButtonClass.root)\n\t}\n\n\t@State() isPressed = false\n\n\tcomponentWillLoad(): void {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.validateType(this.type)\n\t\tthis.validateSize(this.size)\n\t\tthis.validateNativeType(this.nativeType)\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\t}\n\n\tget classNames(): string {\n\t\tconst { h } = this\n\n\t\treturn prepareClasses([ButtonClass.root, h.hasSlot(\"left-icon\") && ButtonClass.rootWithIcon, h.hasSlot(\"right-icon\") && ButtonClass.rootWithIcon])\n\t}\n\n\trender() {\n\t\tconst Tag = this.href ? Tags.A : Tags.BUTTON\n\t\tconst nativeType = Tag === Tags.A ? undefined : this.nativeType\n\n\t\treturn (\n\t\t\t<Host hoverable={true} size={this.size} variant={this.variant} class={this.h.classes(this.classNames)} type={this.type} inverse={this.inverse}>\n\t\t\t\t<Tag\n\t\t\t\t\tclass=\"element\"\n\t\t\t\t\tref={el => (this.triggerRef = el as HTMLButtonElement | HTMLLinkElement)}\n\t\t\t\t\tonClick={this.onClickHandler.bind(this)}\n\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\tonMouseDown={() => (this.isPressed = true)}\n\t\t\t\t\tonMouseUp={() => (this.isPressed = false)}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\tid={this.identifier}\n\t\t\t\t\thref={this.href}\n\t\t\t\t\ttarget={this.target}\n\t\t\t\t\tdownload={this.download}\n\t\t\t\t\threflang={this.hreflang}\n\t\t\t\t\trel={this.rel}\n\t\t\t\t\tname={this.name}\n\t\t\t\t\ttype={nativeType}\n\t\t\t\t\ttabindex={this.focusable ? \"0\" : \"-1\"}\n\t\t\t\t\taria-activedescendant={this.wcagActiveDescendant}\n\t\t\t\t\taria-describedby={this.wcagActiveDescendant}\n\t\t\t\t\taria-description={this.wcagDescription}\n\t\t\t\t\taria-controls={this.wcagControls}\n\t\t\t\t\taria-details={this.wcagDetails}\n\t\t\t\t\taria-expanded={toBoolAttrIfDefined(this.wcagExpanded)}\n\t\t\t\t\taria-label={this.wcagLabel}\n\t\t\t\t\taria-labelledby={this.wcagLabelledBy}\n\t\t\t\t\taria-owns={this.wcagOwns}\n\t\t\t\t\taria-haspopup={toBoolAttrIfDefined(this.wcagHasPopup)}\n\t\t\t\t\taria-pressed={toBoolAttr(this.isPressed)}\n\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\taria-current={this.wcagCurrent}\n\t\t\t\t>\n\t\t\t\t\t{toBool(this.loading) && !this.h.hasSlot(\"right-icon\") &&\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon name=\"loader\" class=\"gov-spin-animation\"></gov-icon>}\n\t\t\t\t\t{this.h.hasSlot(\"left-icon\") && <slot name=\"left-icon\"></slot>}\n\t\t\t\t\t<slot />\n\t\t\t\t\t{this.h.hasSlot(\"right-icon\") && <slot name=\"right-icon\"></slot>}\n\t\t\t\t\t{toBool(this.loading) && this.h.hasSlot(\"right-icon\") &&\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon name=\"loader\" class=\"gov-spin-animation\"></gov-icon>}\n\t\t\t\t</Tag>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onClickHandler(e: PointerEvent): void {\n\t\te.stopPropagation()\n\t\tif (this.disabled === false) {\n\t\t\tthis.govClick.emit({\n\t\t\t\tcomponent: ButtonClass.root,\n\t\t\t\toriginalEvent: e,\n\t\t\t\tref: this.host,\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: ButtonClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tref: this.host,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: ButtonClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tref: this.host,\n\t\t})\n\t}\n\n\t/**\n\t * Focus button element\n\t */\n\t@Method()\n\tasync setFocus(): Promise<void> {\n\t\tthis.triggerRef.focus()\n\t}\n\n\t/**\n\t * Returns a clickable element instance\n\t */\n\t@Method()\n\tasync getTriggerRef() {\n\t\treturn this.triggerRef\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\tif (this.focusable) {\n\t\t\tvalidateWcagRef(this.wcagActiveDescendant, \"aria-activedescendant\", ButtonClass.root)\n\t\t\tvalidateWcagRef(this.wcagControls, \"aria-controls\", ButtonClass.root)\n\t\t\tvalidateWcagRef(this.wcagDetails, \"aria-details\", ButtonClass.root)\n\t\t\tvalidateWcagRef(this.wcagOwns, \"aria-owns\", ButtonClass.root)\n\t\t\tvalidateWcagRef(this.wcagHasPopup, \"aria-haspopup\", ButtonClass.root)\n\t\t\tvalidateWcagLabel(this.wcagLabel, this.wcagLabelledBy, ButtonClass.root)\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"gov-button.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-button/button/gov-button.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\tButtonClass,\n\tButtonSizesType,\n\tButtonTargetType,\n\tButtonVariants,\n\tButtonVariantType,\n\tNativeType,\n\tNativeTypesType,\n\tType,\n\tTypesType,\n} from \"./constants\"\nimport {govHost, prepareClasses, toBoolAttr, toBoolAttrIfDefined} from \"../../../helpers/Dom/template\"\nimport {GovHost} from \"../../../helpers/Dom/template.types\"\nimport {toBool} from \"../../../utils/bool.utils\"\nimport {Sizes} from \"../../../core/constants/sizes\"\nimport {validateWcagLabel, validateWcagRef} from \"../../../helpers/Validate/wcag\"\nimport {canValidateWcagOnRender} from \"../../../helpers/Dom/win\"\nimport {delay} from \"../../../utils/utils\"\nimport {ButtonEvent} from \"./gov-button.types\"\nimport {prepareIconFormat} from \"../../gov-icon/helpers\";\n\nenum Tags {\n\tA = \"a\",\n\tBUTTON = \"button\",\n}\n\n@Component({\n\ttag: \"gov-button\",\n\tstyleUrl: \"gov-button.scss\",\n})\nexport class GovButton {\n\tprivate h: GovHost\n\tprivate triggerRef?: HTMLButtonElement | HTMLLinkElement\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovButtonElement\n\n\t/**\n\t * Style variation of the button\n\t */\n\t@Prop({reflect: true}) readonly variant?: ButtonVariantType\n\t/**\n\t * Button’s size\n\t */\n\t@Prop({reflect: true}) readonly size?: ButtonSizesType = \"m\"\n\t/**\n\t * Button's type\n\t */\n\t@Prop({reflect: true}) readonly type?: TypesType = \"solid\"\n\t/**\n\t * Expands the button to fill 100% of the container width\n\t */\n\t@Prop({reflect: true}) readonly expanded: boolean = false\n\t/**\n\t * Determine if component should have inversed colors to be used on dark background\n\t */\n\t@Prop({reflect: true}) readonly inverse: boolean = false\n\t/**\n\t * The name of the button, which gets paired with the button's value when submitted as part of a form. Corresponds with the native HTML name attribute\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Definition of the button icon on the left. The icon must be defined in the form \"type/name\".\n\t */\n\t@Prop({attribute: \"icon-left\"}) readonly iconLeft?: string\n\t/**\n\t * Definition of the button icon on the left. The icon must be defined in the form \"type/name\".\n\t */\n\t@Prop({attribute: \"icon-right\"}) readonly iconRight?: string\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({reflect: true}) readonly disabled: boolean = false\n\t/**\n\t * Same as original parameter\n\t * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-type\n\t */\n\t@Prop() readonly nativeType?: NativeTypesType = \"button\"\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href\n\t */\n\t@Prop() readonly href: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-target\n\t */\n\t@Prop() readonly target?: ButtonTargetType\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-download\n\t */\n\t@Prop() readonly download: boolean\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-hreflang\n\t */\n\t@Prop() readonly hreflang: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-referrerpolicy\n\t */\n\t@Prop() readonly referrerpolicy: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-rel\n\t */\n\t@Prop() readonly rel: string\n\t/**\n\t * Indicates whether an asynchronous process is running\n\t */\n\t@Prop() readonly loading: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/focusable\n\t */\n\t@Prop() readonly focusable: boolean = true\n\t/**\n\t * Custom button identifier\n\t */\n\t@Prop({attribute: \"identifier\"}) readonly identifier: string\n\t/**\n\t * Indicates the id of a related component’s visually focused element\n\t */\n\t@Prop({attribute: \"wcag-active-descendant\"}) readonly wcagActiveDescendant: string\n\t/**\n\t * Use this property to add an aria-controls attribute to the button. Use the attribute to point to the unique id of the content that the button manages\n\t */\n\t@Prop({attribute: \"wcag-controls\"}) readonly wcagControls: string\n\t/**\n\t * Indicates the id of a component that describes the button\n\t */\n\t@Prop({attribute: \"wcag-described-by\"}) readonly wcagDescribedBy: string\n\t/**\n\t * Aria description the button\n\t */\n\t@Prop({attribute: \"wcag-description\"}) readonly wcagDescription: string\n\t/**\n\t * Details of the component\n\t */\n\t@Prop({attribute: \"wcag-details\"}) readonly wcagDetails: string\n\t/**\n\t * If a button expands or collapses adjacent content, then use the ariaExpanded prop to add the aria-expanded attribute to the button\n\t * Set the value to convey the current expanded (true) or collapsed (false) state of the content\n\t */\n\t@Prop({attribute: \"wcag-expanded\"}) readonly wcagExpanded: boolean\n\t/**\n\t * Adds accessible label for the button that is only shown for screen readers\n\t * Typically, this label text replaces the visible text on the button for users who use assistive technology\n\t */\n\t@Prop({attribute: \"wcag-label\"}) readonly wcagLabel: string\n\t/**\n\t * String of id's that indicate alternative labels elements\n\t */\n\t@Prop({attribute: \"wcag-labelled-by\"}) readonly wcagLabelledBy: string\n\t/**\n\t * Indicates the id of a component owned by the button\n\t */\n\t@Prop({attribute: \"wcag-owns\"}) readonly wcagOwns: string\n\t/**\n\t * \tUse this property to add an aria-haspopup attribute to a button, if you are using it as a menu button\n\t */\n\t@Prop({attribute: \"wcag-has-popup\"}) readonly wcagHasPopup: string\n\t/**\n\t * Tells screen reader the element is pressed\n\t */\n\t@Prop({attribute: \"wcag-pressed\"}) readonly wcagPressed: string\n\t/**\n\t * Indicates the current item within a container or set of related elements\n\t */\n\t@Prop({attribute: \"wcag-current\"}) readonly wcagCurrent: string\n\t/**\n\t * Emitted when the button click\n\t */\n\t@Event({eventName: \"gov-click\"}) govClick: EventEmitter<ButtonEvent>\n\t/**\n\t * Emitted when the button has focus\n\t */\n\t@Event({eventName: \"gov-focus\"}) govFocus: EventEmitter<ButtonEvent>\n\t/**\n\t * Emitted when the button loses focus\n\t */\n\t@Event({eventName: \"gov-blur\"}) govBlur: EventEmitter<ButtonEvent>\n\n\t@Watch(\"variant\")\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(ButtonVariants, newValue, ButtonClass.root)\n\t}\n\n\t@Watch(\"type\")\n\tvalidateType(newValue: string): void {\n\t\tvalidateProp(Type, newValue, ButtonClass.root)\n\t}\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(Sizes, newValue, ButtonClass.root)\n\t}\n\n\t@Watch(\"nativeType\")\n\tvalidateNativeType(newValue: string): void {\n\t\tvalidateProp(NativeType, newValue, ButtonClass.root)\n\t}\n\n\t@State() isPressed = false\n\n\tcomponentWillLoad(): void {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.validateType(this.type)\n\t\tthis.validateSize(this.size)\n\t\tthis.validateNativeType(this.nativeType)\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\t}\n\n\tget classNames(): string {\n\t\tconst {h} = this\n\n\t\treturn prepareClasses([ButtonClass.root, h.hasSlot(\"left-icon\") && ButtonClass.rootWithIcon, h.hasSlot(\"right-icon\") && ButtonClass.rootWithIcon])\n\t}\n\n\trender() {\n\t\tconst Tag = this.href ? Tags.A : Tags.BUTTON\n\t\tconst nativeType = Tag === Tags.A ? undefined : this.nativeType\n\n\t\tconst iconLeft = prepareIconFormat(this.iconLeft)\n\t\tconst iconRight = prepareIconFormat(this.iconRight)\n\n\t\treturn (\n\t\t\t<Host hoverable={true}\n\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\tvariant={this.variant}\n\t\t\t\t\t\tclass={this.h.classes(this.classNames)}\n\t\t\t\t\t\ttype={this.type} inverse={this.inverse}>\n\t\t\t\t<Tag\n\t\t\t\t\tclass=\"element\"\n\t\t\t\t\tref={el => (this.triggerRef = el as HTMLButtonElement | HTMLLinkElement)}\n\t\t\t\t\tonClick={this.onClickHandler.bind(this)}\n\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\tonMouseDown={() => (this.isPressed = true)}\n\t\t\t\t\tonMouseUp={() => (this.isPressed = false)}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\tid={this.identifier}\n\t\t\t\t\thref={this.href}\n\t\t\t\t\ttarget={this.target}\n\t\t\t\t\tdownload={this.download}\n\t\t\t\t\threflang={this.hreflang}\n\t\t\t\t\trel={this.rel}\n\t\t\t\t\tname={this.name}\n\t\t\t\t\ttype={nativeType}\n\t\t\t\t\ttabindex={this.focusable ? \"0\" : \"-1\"}\n\t\t\t\t\taria-activedescendant={this.wcagActiveDescendant}\n\t\t\t\t\taria-describedby={this.wcagActiveDescendant}\n\t\t\t\t\taria-description={this.wcagDescription}\n\t\t\t\t\taria-controls={this.wcagControls}\n\t\t\t\t\taria-details={this.wcagDetails}\n\t\t\t\t\taria-expanded={toBoolAttrIfDefined(this.wcagExpanded)}\n\t\t\t\t\taria-label={this.wcagLabel}\n\t\t\t\t\taria-labelledby={this.wcagLabelledBy}\n\t\t\t\t\taria-owns={this.wcagOwns}\n\t\t\t\t\taria-haspopup={toBoolAttrIfDefined(this.wcagHasPopup)}\n\t\t\t\t\taria-pressed={toBoolAttr(this.isPressed)}\n\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\taria-current={this.wcagCurrent}\n\t\t\t\t>\n\t\t\t\t\t{toBool(this.loading) && !this.h.hasSlot(\"right-icon\") &&\n\t\t\t\t\t\t<gov-icon name=\"loader\" class=\"gov-spin-animation\"></gov-icon>}\n\t\t\t\t\t{this.h.hasSlot(\"left-icon\") && <slot name=\"left-icon\"></slot>}\n\t\t\t\t\t{iconLeft && \t<gov-icon type={iconLeft.type} name={iconLeft.name}></gov-icon>}\n\t\t\t\t\t<slot/>\n\t\t\t\t\t{this.h.hasSlot(\"right-icon\") && <slot name=\"right-icon\"></slot>}\n\t\t\t\t\t{iconRight && \t<gov-icon type={iconRight.type} name={iconRight.name}></gov-icon>}\n\t\t\t\t\t{toBool(this.loading) && this.h.hasSlot(\"right-icon\") &&\n\t\t\t\t\t\t<gov-icon name=\"loader\" class=\"gov-spin-animation\"></gov-icon>}\n\t\t\t\t</Tag>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onClickHandler(e: PointerEvent): void {\n\t\te.stopPropagation()\n\t\tif (this.disabled === false) {\n\t\t\tthis.govClick.emit({\n\t\t\t\tcomponent: ButtonClass.root,\n\t\t\t\toriginalEvent: e,\n\t\t\t\tref: this.host,\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: ButtonClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tref: this.host,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: ButtonClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tref: this.host,\n\t\t})\n\t}\n\n\t/**\n\t * Focus button element\n\t */\n\t@Method()\n\tasync setFocus(): Promise<void> {\n\t\tthis.triggerRef.focus()\n\t}\n\n\t/**\n\t * Returns a clickable element instance\n\t */\n\t@Method()\n\tasync getTriggerRef() {\n\t\treturn this.triggerRef\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\tif (this.focusable) {\n\t\t\tvalidateWcagRef(this.wcagActiveDescendant, \"aria-activedescendant\", ButtonClass.root)\n\t\t\tvalidateWcagRef(this.wcagControls, \"aria-controls\", ButtonClass.root)\n\t\t\tvalidateWcagRef(this.wcagDetails, \"aria-details\", ButtonClass.root)\n\t\t\tvalidateWcagRef(this.wcagOwns, \"aria-owns\", ButtonClass.root)\n\t\t\tvalidateWcagRef(this.wcagHasPopup, \"aria-haspopup\", ButtonClass.root)\n\t\t\tvalidateWcagLabel(this.wcagLabel, this.wcagLabelledBy, ButtonClass.root)\n\t\t}\n\t}\n}\n"]}
|
|
@@ -4,12 +4,15 @@ import { govHost, toBoolAttr } from "../../helpers/Dom/template";
|
|
|
4
4
|
import { ChipClass, NativeType } from "./constants";
|
|
5
5
|
import { ButtonSizes, ButtonVariants } from "../gov-button/button/constants";
|
|
6
6
|
import { createID } from "../../utils/string.utils";
|
|
7
|
+
import { prepareIconFormat } from "../gov-icon/helpers";
|
|
7
8
|
export class GovChip {
|
|
8
9
|
constructor() {
|
|
9
10
|
this.inverse = false;
|
|
10
11
|
this.disabled = false;
|
|
11
12
|
this.href = undefined;
|
|
12
13
|
this.target = undefined;
|
|
14
|
+
this.iconLeft = undefined;
|
|
15
|
+
this.iconRight = undefined;
|
|
13
16
|
this.size = ButtonSizes._M;
|
|
14
17
|
this.tag = "span";
|
|
15
18
|
this.variant = ButtonVariants.PRIMARY;
|
|
@@ -34,11 +37,13 @@ export class GovChip {
|
|
|
34
37
|
render() {
|
|
35
38
|
const Tag = this.href ? NativeType.A : this.tag;
|
|
36
39
|
const nativeType = Tag == NativeType.BUTTON ? NativeType.BUTTON : undefined;
|
|
40
|
+
const iconLeft = prepareIconFormat(this.iconLeft);
|
|
41
|
+
const iconRight = prepareIconFormat(this.iconRight);
|
|
37
42
|
return (h(Host, { class: this.h.classes([
|
|
38
43
|
ChipClass.root,
|
|
39
44
|
this.h.hasSlot("right") ? ChipClass.hasRight : undefined,
|
|
40
45
|
this.h.hasSlot("left") ? ChipClass.hasLeft : undefined,
|
|
41
|
-
]), disabled: this.disabled, href: this.href, variant: this.variant, type: this.inverse ? undefined : "solid", size: this.size, inverse: this.inverse, hoverable: Tag == NativeType.A || Tag == NativeType.BUTTON }, h(Tag, { class: "element", href: this.href, target: this.target, "aria-label": this.wcagLabel, ref: el => (this.triggerRef = el), onClick: this.onClickHandler.bind(this), "aria-controls": this.wcagControls, "aria-selected": toBoolAttr(this.wcagSelected), tabindex: this.focusable ? "0" : "-1", id: this.identifier || this.chipId, type: nativeType }, this.h.hasSlot("left") && h("slot", { name: "left" }), this.h.hasSlot("left-icon") && h("slot", { name: "left-icon" }), h("slot", null), this.h.hasSlot("right-icon") && h("slot", { name: "right-icon" }), this.h.hasSlot("right") && h("slot", { name: "right" }))));
|
|
46
|
+
]), disabled: this.disabled, href: this.href, variant: this.variant, type: this.inverse ? undefined : "solid", size: this.size, inverse: this.inverse, hoverable: Tag == NativeType.A || Tag == NativeType.BUTTON }, h(Tag, { class: "element", href: this.href, target: this.target, "aria-label": this.wcagLabel, ref: el => (this.triggerRef = el), onClick: this.onClickHandler.bind(this), "aria-controls": this.wcagControls, "aria-selected": toBoolAttr(this.wcagSelected), tabindex: this.focusable ? "0" : "-1", id: this.identifier || this.chipId, type: nativeType }, this.h.hasSlot("left") && h("slot", { name: "left" }), this.h.hasSlot("left-icon") && h("slot", { name: "left-icon" }), iconLeft && h("gov-icon", { type: iconLeft.type, name: iconLeft.name }), h("slot", null), this.h.hasSlot("right-icon") && h("slot", { name: "right-icon" }), this.h.hasSlot("right") && h("slot", { name: "right" }), iconRight && h("gov-icon", { type: iconRight.type, name: iconRight.name }))));
|
|
42
47
|
}
|
|
43
48
|
onClickHandler(e) {
|
|
44
49
|
e.stopPropagation();
|
|
@@ -153,6 +158,40 @@ export class GovChip {
|
|
|
153
158
|
"attribute": "target",
|
|
154
159
|
"reflect": false
|
|
155
160
|
},
|
|
161
|
+
"iconLeft": {
|
|
162
|
+
"type": "string",
|
|
163
|
+
"mutable": false,
|
|
164
|
+
"complexType": {
|
|
165
|
+
"original": "string",
|
|
166
|
+
"resolved": "string",
|
|
167
|
+
"references": {}
|
|
168
|
+
},
|
|
169
|
+
"required": false,
|
|
170
|
+
"optional": true,
|
|
171
|
+
"docs": {
|
|
172
|
+
"tags": [],
|
|
173
|
+
"text": "Definition of the button icon on the left. The icon must be defined in the form \"type/name\"."
|
|
174
|
+
},
|
|
175
|
+
"attribute": "icon-left",
|
|
176
|
+
"reflect": false
|
|
177
|
+
},
|
|
178
|
+
"iconRight": {
|
|
179
|
+
"type": "string",
|
|
180
|
+
"mutable": false,
|
|
181
|
+
"complexType": {
|
|
182
|
+
"original": "string",
|
|
183
|
+
"resolved": "string",
|
|
184
|
+
"references": {}
|
|
185
|
+
},
|
|
186
|
+
"required": false,
|
|
187
|
+
"optional": true,
|
|
188
|
+
"docs": {
|
|
189
|
+
"tags": [],
|
|
190
|
+
"text": "Definition of the button icon on the left. The icon must be defined in the form \"type/name\"."
|
|
191
|
+
},
|
|
192
|
+
"attribute": "icon-right",
|
|
193
|
+
"reflect": false
|
|
194
|
+
},
|
|
156
195
|
"size": {
|
|
157
196
|
"type": "string",
|
|
158
197
|
"mutable": false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gov-chip.js","sourceRoot":"","sources":["../../../../../../src/components/gov-chip/gov-chip.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, Watch } from \"@stencil/core\"\nimport { GovHost } from \"../../helpers/Dom/template.types\"\nimport { validateProp } from \"../../helpers/Validate/props\"\nimport { govHost, toBoolAttr } from \"../../helpers/Dom/template\"\nimport { ChipClass, NativeType, NativeTypesType } from \"./constants\"\nimport { ButtonSizes, ButtonSizesType, ButtonVariants, ButtonVariantType } from \"../gov-button/button/constants\"\nimport { createID } from \"../../utils/string.utils\"\n\n@Component({\n\ttag: \"gov-chip\",\n\tstyleUrl: \"gov-chip.scss\",\n})\nexport class GovChip {\n\tprivate triggerRef?: HTMLButtonElement | HTMLLinkElement | HTMLSpanElement\n\tprivate h: GovHost\n\tprivate readonly chipId: string\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.chipId = createID('GovChip')\n\t}\n\n\t@Element() host: HTMLGovChipElement\n\n\t/**\n\t * Determine if component should have inverse colors to be used on dark background\n\t */\n\t@Prop() readonly inverse: boolean = false\n\t/**\n\t * Makes the chip 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 * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href\n\t */\n\t@Prop() readonly href: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-target\n\t */\n\t@Prop() readonly target: string\n\t/**\n\t * Chip’s size.\n\t */\n\t@Prop() readonly size: ButtonSizesType = ButtonSizes._M\n\t/**\n\t * Used to change the HTML tag in the chip\n\t */\n\t@Prop() readonly tag: NativeTypesType = \"span\"\n\t/**\n\t * Style variation of the chip.\n\t */\n\t@Prop() readonly variant: ButtonVariantType = ButtonVariants.PRIMARY\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/focusable\n\t */\n\t@Prop() readonly focusable: boolean = true\n\t/**\n\t * Custom chip identifier. Otherwise, it will be generated\n\t */\n\t@Prop() readonly identifier: string\n\t/**\n\t * Adds accessible label for the button that is only shown for screen readers.\n\t * Typically, this label text replaces the visible text on the button for users who use assistive technology.\n\t */\n\t@Prop({ attribute: \"wcag-label\" }) readonly wcagLabel: string\n\t/**\n\t * Use this property to add an aria-controls attribute to the button. Use the attribute to point to the unique id of the content that the button manages\n\t */\n\t@Prop({ attribute: \"wcag-controls\" }) readonly wcagControls: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected\n\t */\n\t@Prop({ attribute: \"wcag-selected\" }) readonly wcagSelected: boolean\n\t/**\n\t * Emitted when the button click.\n\t */\n\t@Event({ eventName: \"gov-click\" }) govClick: EventEmitter<PointerEvent>\n\n\t@Watch(\"variant\")\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(ButtonVariants, newValue, ChipClass.root)\n\t}\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(ButtonSizes, newValue, ChipClass.root)\n\t}\n\n\tcomponentWillLoad(): void {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.validateSize(this.size)\n\t}\n\n\trender() {\n\t\tconst Tag = this.href ? NativeType.A : this.tag\n\t\tconst nativeType = Tag == NativeType.BUTTON ? NativeType.BUTTON : undefined\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={this.h.classes([\n\t\t\t\t\tChipClass.root,\n\t\t\t\t\tthis.h.hasSlot(\"right\") ? ChipClass.hasRight : undefined,\n\t\t\t\t\tthis.h.hasSlot(\"left\") ? ChipClass.hasLeft : undefined,\n\t\t\t\t])}\n\t\t\t\tdisabled={this.disabled}\n\t\t\t\thref={this.href}\n\t\t\t\tvariant={this.variant}\n\t\t\t\ttype={this.inverse ? undefined : \"solid\"}\n\t\t\t\tsize={this.size}\n\t\t\t\tinverse={this.inverse}\n\t\t\t\thoverable={Tag == NativeType.A || Tag == NativeType.BUTTON}\n\t\t\t>\n\t\t\t\t<Tag\n\t\t\t\t\tclass=\"element\"\n\t\t\t\t\thref={this.href}\n\t\t\t\t\ttarget={this.target}\n\t\t\t\t\taria-label={this.wcagLabel}\n\t\t\t\t\tref={el => (this.triggerRef = el as HTMLLinkElement | HTMLButtonElement | HTMLSpanElement)}\n\t\t\t\t\tonClick={this.onClickHandler.bind(this)}\n\t\t\t\t\taria-controls={this.wcagControls}\n\t\t\t\t\taria-selected={toBoolAttr(this.wcagSelected)}\n\t\t\t\t\ttabindex={this.focusable ? \"0\" : \"-1\"}\n\t\t\t\t\tid={this.identifier || this.chipId}\n\t\t\t\t\ttype={nativeType}>\n\t\t\t\t\t{this.h.hasSlot(\"left\") && <slot name=\"left\"></slot>}\n\t\t\t\t\t{this.h.hasSlot(\"left-icon\") && <slot name=\"left-icon\"></slot>}\n\t\t\t\t\t<slot />\n\t\t\t\t\t{this.h.hasSlot(\"right-icon\") && <slot name=\"right-icon\"></slot>}\n\t\t\t\t\t{this.h.hasSlot(\"right\") && <slot name=\"right\"></slot>}\n\t\t\t\t</Tag>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onClickHandler(e: PointerEvent): void {\n\t\te.stopPropagation()\n\t\tif (this.disabled === false && this.tag === NativeType.BUTTON) {\n\t\t\tthis.govClick.emit(e)\n\t\t}\n\t}\n\n\t/**\n\t * Returns a clickable element instance\n\t */\n\t@Method()\n\tasync getTriggerRef() {\n\t\treturn this.triggerRef\n\t}\n\n\t/**\n\t * Returns a unique tab trigger identifier\n\t */\n\t@Method()\n\tasync getTriggerIdentifier(): Promise<string> {\n\t\treturn this.identifier || this.chipId\n\t}\n\n\t/**\n\t * Focus button element\n\t */\n\t@Method()\n\tasync setFocus(): Promise<void> {\n\t\tthis.triggerRef.focus()\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"gov-chip.js","sourceRoot":"","sources":["../../../../../../src/components/gov-chip/gov-chip.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, Watch } from \"@stencil/core\"\nimport { GovHost } from \"../../helpers/Dom/template.types\"\nimport { validateProp } from \"../../helpers/Validate/props\"\nimport { govHost, toBoolAttr } from \"../../helpers/Dom/template\"\nimport { ChipClass, NativeType, NativeTypesType } from \"./constants\"\nimport { ButtonSizes, ButtonSizesType, ButtonVariants, ButtonVariantType } from \"../gov-button/button/constants\"\nimport { createID } from \"../../utils/string.utils\"\nimport {prepareIconFormat} from \"../gov-icon/helpers\";\n\n@Component({\n\ttag: \"gov-chip\",\n\tstyleUrl: \"gov-chip.scss\",\n})\nexport class GovChip {\n\tprivate triggerRef?: HTMLButtonElement | HTMLLinkElement | HTMLSpanElement\n\tprivate h: GovHost\n\tprivate readonly chipId: string\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.chipId = createID('GovChip')\n\t}\n\n\t@Element() host: HTMLGovChipElement\n\n\t/**\n\t * Determine if component should have inverse colors to be used on dark background\n\t */\n\t@Prop() readonly inverse: boolean = false\n\t/**\n\t * Makes the chip 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 * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href\n\t */\n\t@Prop() readonly href: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-target\n\t */\n\t@Prop() readonly target: string\n\t/**\n\t * Definition of the button icon on the left. The icon must be defined in the form \"type/name\".\n\t */\n\t@Prop({attribute: \"icon-left\"}) readonly iconLeft?: string\n\t/**\n\t * Definition of the button icon on the left. The icon must be defined in the form \"type/name\".\n\t */\n\t@Prop({attribute: \"icon-right\"}) readonly iconRight?: string\n\t/**\n\t * Chip’s size.\n\t */\n\t@Prop() readonly size: ButtonSizesType = ButtonSizes._M\n\t/**\n\t * Used to change the HTML tag in the chip\n\t */\n\t@Prop() readonly tag: NativeTypesType = \"span\"\n\t/**\n\t * Style variation of the chip.\n\t */\n\t@Prop() readonly variant: ButtonVariantType = ButtonVariants.PRIMARY\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/focusable\n\t */\n\t@Prop() readonly focusable: boolean = true\n\t/**\n\t * Custom chip identifier. Otherwise, it will be generated\n\t */\n\t@Prop() readonly identifier: string\n\t/**\n\t * Adds accessible label for the button that is only shown for screen readers.\n\t * Typically, this label text replaces the visible text on the button for users who use assistive technology.\n\t */\n\t@Prop({ attribute: \"wcag-label\" }) readonly wcagLabel: string\n\t/**\n\t * Use this property to add an aria-controls attribute to the button. Use the attribute to point to the unique id of the content that the button manages\n\t */\n\t@Prop({ attribute: \"wcag-controls\" }) readonly wcagControls: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected\n\t */\n\t@Prop({ attribute: \"wcag-selected\" }) readonly wcagSelected: boolean\n\t/**\n\t * Emitted when the button click.\n\t */\n\t@Event({ eventName: \"gov-click\" }) govClick: EventEmitter<PointerEvent>\n\n\t@Watch(\"variant\")\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(ButtonVariants, newValue, ChipClass.root)\n\t}\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(ButtonSizes, newValue, ChipClass.root)\n\t}\n\n\tcomponentWillLoad(): void {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.validateSize(this.size)\n\t}\n\n\trender() {\n\t\tconst Tag = this.href ? NativeType.A : this.tag\n\t\tconst nativeType = Tag == NativeType.BUTTON ? NativeType.BUTTON : undefined\n\n\t\tconst iconLeft = prepareIconFormat(this.iconLeft)\n\t\tconst iconRight = prepareIconFormat(this.iconRight)\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={this.h.classes([\n\t\t\t\t\tChipClass.root,\n\t\t\t\t\tthis.h.hasSlot(\"right\") ? ChipClass.hasRight : undefined,\n\t\t\t\t\tthis.h.hasSlot(\"left\") ? ChipClass.hasLeft : undefined,\n\t\t\t\t])}\n\t\t\t\tdisabled={this.disabled}\n\t\t\t\thref={this.href}\n\t\t\t\tvariant={this.variant}\n\t\t\t\ttype={this.inverse ? undefined : \"solid\"}\n\t\t\t\tsize={this.size}\n\t\t\t\tinverse={this.inverse}\n\t\t\t\thoverable={Tag == NativeType.A || Tag == NativeType.BUTTON}\n\t\t\t>\n\t\t\t\t<Tag\n\t\t\t\t\tclass=\"element\"\n\t\t\t\t\thref={this.href}\n\t\t\t\t\ttarget={this.target}\n\t\t\t\t\taria-label={this.wcagLabel}\n\t\t\t\t\tref={el => (this.triggerRef = el as HTMLLinkElement | HTMLButtonElement | HTMLSpanElement)}\n\t\t\t\t\tonClick={this.onClickHandler.bind(this)}\n\t\t\t\t\taria-controls={this.wcagControls}\n\t\t\t\t\taria-selected={toBoolAttr(this.wcagSelected)}\n\t\t\t\t\ttabindex={this.focusable ? \"0\" : \"-1\"}\n\t\t\t\t\tid={this.identifier || this.chipId}\n\t\t\t\t\ttype={nativeType}>\n\t\t\t\t\t{this.h.hasSlot(\"left\") && <slot name=\"left\"></slot>}\n\t\t\t\t\t{this.h.hasSlot(\"left-icon\") && <slot name=\"left-icon\"></slot>}\n\t\t\t\t\t{iconLeft && \t<gov-icon type={iconLeft.type} name={iconLeft.name}></gov-icon>}\n\t\t\t\t\t<slot />\n\t\t\t\t\t{this.h.hasSlot(\"right-icon\") && <slot name=\"right-icon\"></slot>}\n\t\t\t\t\t{this.h.hasSlot(\"right\") && <slot name=\"right\"></slot>}\n\t\t\t\t\t{iconRight && \t<gov-icon type={iconRight.type} name={iconRight.name}></gov-icon>}\n\t\t\t\t</Tag>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onClickHandler(e: PointerEvent): void {\n\t\te.stopPropagation()\n\t\tif (this.disabled === false && this.tag === NativeType.BUTTON) {\n\t\t\tthis.govClick.emit(e)\n\t\t}\n\t}\n\n\t/**\n\t * Returns a clickable element instance\n\t */\n\t@Method()\n\tasync getTriggerRef() {\n\t\treturn this.triggerRef\n\t}\n\n\t/**\n\t * Returns a unique tab trigger identifier\n\t */\n\t@Method()\n\tasync getTriggerIdentifier(): Promise<string> {\n\t\treturn this.identifier || this.chipId\n\t}\n\n\t/**\n\t * Focus button element\n\t */\n\t@Method()\n\tasync setFocus(): Promise<void> {\n\t\tthis.triggerRef.focus()\n\t}\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Variants } from "../../core/constants/variants";
|
|
2
2
|
import { pick } from "../../utils/utils";
|
|
3
|
-
export const ControlGroupVariants = pick(Variants, ['PRIMARY', 'SECONDARY']);
|
|
3
|
+
export const ControlGroupVariants = pick(Variants, ['PRIMARY', 'SECONDARY', 'SUCCESS', 'ERROR', 'WARNING']);
|
|
4
4
|
export const ControlGroupClass = {
|
|
5
5
|
root: 'gov-control-group',
|
|
6
6
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../src/components/gov-control-group/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAExD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AAExC,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../src/components/gov-control-group/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAExD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AAExC,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAA;AAG3G,MAAM,CAAC,MAAM,iBAAiB,GAAG;EAChC,IAAI,EAAE,mBAAmB;CACzB,CAAA","sourcesContent":["import { Variants } from '../../core/constants/variants'\nimport { ValueOf } from '../../types/interfaces'\nimport { pick } from '../../utils/utils'\n\nexport const ControlGroupVariants = pick(Variants, ['PRIMARY', 'SECONDARY', 'SUCCESS', 'ERROR', 'WARNING'])\nexport type ControlGroupVariantType = `${ValueOf<typeof ControlGroupVariants>}`\n\nexport const ControlGroupClass = {\n\troot: 'gov-control-group',\n}\n"]}
|
|
@@ -254,6 +254,24 @@
|
|
|
254
254
|
.gov-control-group[variant=secondary] > * {
|
|
255
255
|
border-right: var(--gov-control-group-border-secondary, 0.0625rem solid var(--gov-color-secondary-700));
|
|
256
256
|
}
|
|
257
|
+
.gov-control-group[variant=success] {
|
|
258
|
+
border: var(--gov-control-group-border-success, 0.0625rem solid var(--gov-color-success-500));
|
|
259
|
+
}
|
|
260
|
+
.gov-control-group[variant=success] > * {
|
|
261
|
+
border-right: var(--gov-control-group-border-success, 0.0625rem solid var(--gov-color-success-500));
|
|
262
|
+
}
|
|
263
|
+
.gov-control-group[variant=warning] {
|
|
264
|
+
border: var(--gov-control-group-border-warning, 0.0625rem solid var(--gov-color-warning-500));
|
|
265
|
+
}
|
|
266
|
+
.gov-control-group[variant=warning] > * {
|
|
267
|
+
border-right: var(--gov-control-group-border-warning, 0.0625rem solid var(--gov-color-warning-500));
|
|
268
|
+
}
|
|
269
|
+
.gov-control-group[variant=error] {
|
|
270
|
+
border: var(--gov-control-group-border-error, 0.0625rem solid var(--gov-color-error-400));
|
|
271
|
+
}
|
|
272
|
+
.gov-control-group[variant=error] > * {
|
|
273
|
+
border-right: var(--gov-control-group-border-error, 0.0625rem solid var(--gov-color-error-400));
|
|
274
|
+
}
|
|
257
275
|
.gov-control-group > *:last-child {
|
|
258
276
|
border-right: none;
|
|
259
277
|
}
|
|
@@ -34,7 +34,7 @@ export class GovControlGroup {
|
|
|
34
34
|
"mutable": false,
|
|
35
35
|
"complexType": {
|
|
36
36
|
"original": "ControlGroupVariantType",
|
|
37
|
-
"resolved": "\"primary\" | \"secondary\"",
|
|
37
|
+
"resolved": "\"error\" | \"primary\" | \"secondary\" | \"success\" | \"warning\"",
|
|
38
38
|
"references": {
|
|
39
39
|
"ControlGroupVariantType": {
|
|
40
40
|
"location": "import",
|
|
@@ -254,8 +254,8 @@
|
|
|
254
254
|
color: var(--gov-error-icon-color, var(--gov-color-primary));
|
|
255
255
|
}
|
|
256
256
|
.gov-error-code__icon > * {
|
|
257
|
-
width:
|
|
258
|
-
height:
|
|
257
|
+
width: 6.5625rem;
|
|
258
|
+
height: 6.5625rem;
|
|
259
259
|
}
|
|
260
260
|
@media (min-width: 48em) {
|
|
261
261
|
.gov-error-code__icon {
|
|
@@ -264,7 +264,7 @@
|
|
|
264
264
|
margin: 0 auto 2rem;
|
|
265
265
|
}
|
|
266
266
|
.gov-error-code__icon > * {
|
|
267
|
-
width:
|
|
268
|
-
height:
|
|
267
|
+
width: 8.75rem;
|
|
268
|
+
height: 8.75rem;
|
|
269
269
|
}
|
|
270
270
|
}
|
|
@@ -239,47 +239,47 @@
|
|
|
239
239
|
.gov-form-control__bottom > *:last-child {
|
|
240
240
|
margin-bottom: 0;
|
|
241
241
|
}
|
|
242
|
+
.gov-form-control__bottom > :first-child {
|
|
243
|
+
margin-top: 0.25rem;
|
|
244
|
+
}
|
|
242
245
|
.gov-form-control .gov-form-label .gov-form-label__label {
|
|
243
246
|
margin: 0rem 0rem 0.25rem;
|
|
244
247
|
}
|
|
245
|
-
.gov-form-control .gov-form-control__bottom {
|
|
246
|
-
margin: 0.25rem 0rem 0rem;
|
|
247
|
-
}
|
|
248
248
|
.gov-form-control[type=file] .gov-form-label[slot=top] .gov-form-label__label {
|
|
249
249
|
margin: 0rem 0rem 0.5rem;
|
|
250
250
|
}
|
|
251
|
-
.gov-form-control[type=file] .gov-form-control__bottom {
|
|
252
|
-
margin: 0.5rem
|
|
251
|
+
.gov-form-control[type=file] .gov-form-control__bottom > :first-child {
|
|
252
|
+
margin-top: 0.5rem;
|
|
253
253
|
}
|
|
254
|
-
.gov-form-control[size=xs][type=checkbox] .gov-form-control__holder > .gov-form-control__bottom, .gov-form-control[size=xs][type=radio] .gov-form-control__holder > .gov-form-control__bottom {
|
|
254
|
+
.gov-form-control[size=xs][type=checkbox] .gov-form-control__holder > .gov-form-control__bottom > :first-child, .gov-form-control[size=xs][type=radio] .gov-form-control__holder > .gov-form-control__bottom > :first-child {
|
|
255
255
|
margin-top: var(--gov-form-checkbox-core-xs-message-gap, 0.5rem);
|
|
256
256
|
margin-left: calc(var(--gov-form-checkbox-core-xs-indicator-size, 1.25rem) + var(--gov-form-checkbox-core-xs-gap, 0.75rem));
|
|
257
257
|
}
|
|
258
|
-
.gov-form-control[size=s][type=checkbox] .gov-form-control__holder > .gov-form-control__bottom, .gov-form-control[size=s][type=radio] .gov-form-control__holder > .gov-form-control__bottom {
|
|
258
|
+
.gov-form-control[size=s][type=checkbox] .gov-form-control__holder > .gov-form-control__bottom > :first-child, .gov-form-control[size=s][type=radio] .gov-form-control__holder > .gov-form-control__bottom > :first-child {
|
|
259
259
|
margin-top: var(--gov-form-checkbox-core-s-message-gap, 0.5rem);
|
|
260
260
|
margin-left: calc(var(--gov-form-checkbox-core-s-indicator-size, 1.375rem) + var(--gov-form-checkbox-core-s-gap, 0.75rem));
|
|
261
261
|
}
|
|
262
|
-
.gov-form-control[size=m][type=checkbox] .gov-form-control__holder > .gov-form-control__bottom, .gov-form-control[size=m][type=radio] .gov-form-control__holder > .gov-form-control__bottom {
|
|
262
|
+
.gov-form-control[size=m][type=checkbox] .gov-form-control__holder > .gov-form-control__bottom > :first-child, .gov-form-control[size=m][type=radio] .gov-form-control__holder > .gov-form-control__bottom > :first-child {
|
|
263
263
|
margin-top: var(--gov-form-checkbox-core-m-message-gap, 0.75rem);
|
|
264
264
|
margin-left: calc(var(--gov-form-checkbox-core-m-indicator-size, 1.5rem) + var(--gov-form-checkbox-core-m-gap, 1rem));
|
|
265
265
|
}
|
|
266
|
-
.gov-form-control[size=l][type=checkbox] .gov-form-control__holder > .gov-form-control__bottom, .gov-form-control[size=l][type=radio] .gov-form-control__holder > .gov-form-control__bottom {
|
|
266
|
+
.gov-form-control[size=l][type=checkbox] .gov-form-control__holder > .gov-form-control__bottom > :first-child, .gov-form-control[size=l][type=radio] .gov-form-control__holder > .gov-form-control__bottom > :first-child {
|
|
267
267
|
margin-top: var(--gov-form-checkbox-core-l-message-gap, 0.75rem);
|
|
268
268
|
margin-left: calc(var(--gov-form-checkbox-core-l-indicator-size, 2rem) + var(--gov-form-checkbox-core-l-gap, 1rem));
|
|
269
269
|
}
|
|
270
|
-
.gov-form-control[size=xs][type=switch] .gov-form-control__bottom {
|
|
270
|
+
.gov-form-control[size=xs][type=switch] .gov-form-control__bottom > :first-child {
|
|
271
271
|
margin-top: var(--gov-form-switch-xs-message-gap, 0.5rem);
|
|
272
272
|
margin-left: calc(var(--gov-form-switch-xs-indicator-height, 1.25rem) * 1.6666666667 + var(--gov-form-switch-xs-gap, 0.75rem));
|
|
273
273
|
}
|
|
274
|
-
.gov-form-control[size=s][type=switch] .gov-form-control__bottom {
|
|
274
|
+
.gov-form-control[size=s][type=switch] .gov-form-control__bottom > :first-child {
|
|
275
275
|
margin-top: var(--gov-form-switch-s-message-gap, 0.5rem);
|
|
276
276
|
margin-left: calc(var(--gov-form-switch-s-indicator-height, 1.375rem) * 1.6666666667 + var(--gov-form-switch-s-gap, 0.75rem));
|
|
277
277
|
}
|
|
278
|
-
.gov-form-control[size=m][type=switch] .gov-form-control__bottom {
|
|
278
|
+
.gov-form-control[size=m][type=switch] .gov-form-control__bottom > :first-child {
|
|
279
279
|
margin-top: var(--gov-form-switch-m-message-gap, 0.75rem);
|
|
280
280
|
margin-left: calc(var(--gov-form-switch-m-indicator-height, 1.5rem) * 1.6666666667 + var(--gov-form-switch-m-gap, 1rem));
|
|
281
281
|
}
|
|
282
|
-
.gov-form-control[size=l][type=switch] .gov-form-control__bottom {
|
|
282
|
+
.gov-form-control[size=l][type=switch] .gov-form-control__bottom > :first-child {
|
|
283
283
|
margin-top: var(--gov-form-switch-l-message-gap, 0.75rem);
|
|
284
284
|
margin-left: calc(var(--gov-form-switch-l-indicator-height, 2rem) * 1.6666666667 + var(--gov-form-switch-l-gap, 1rem));
|
|
285
285
|
}
|
|
@@ -242,6 +242,11 @@
|
|
|
242
242
|
box-sizing: border-box;
|
|
243
243
|
}
|
|
244
244
|
.gov-form-label[legend=""] .gov-form-label__label, .gov-form-label[legend=true i] .gov-form-label__label, .gov-form-label[legend="1"] .gov-form-label__label {
|
|
245
|
+
font-weight: var(--gov-text-l-font-weight);
|
|
246
|
+
font-size: var(--gov-text-l-font-size);
|
|
247
|
+
line-height: var(--gov-text-l-line-height);
|
|
248
|
+
letter-spacing: var(--gov-text-l-letter-spacing);
|
|
245
249
|
margin-bottom: 1rem;
|
|
250
|
+
padding: 0;
|
|
246
251
|
color: var(--gov-form-legend-color, #3b3b3b);
|
|
247
252
|
}
|