@department-of-veterans-affairs/component-library 54.0.0 → 54.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/12.app.bundle.js +1 -1
- package/dist/2205.app.bundle.js +1 -1
- package/dist/2236.app.bundle.js +1 -1
- package/dist/2923.app.bundle.js +1 -1
- package/dist/3589.app.bundle.js +1 -1
- package/dist/4475.app.bundle.js +1 -1
- package/dist/4780.app.bundle.js +1 -1
- package/dist/5341.app.bundle.js +1 -1
- package/dist/5663.app.bundle.js +1 -1
- package/dist/6555.app.bundle.js +1 -1
- package/dist/6650.app.bundle.js +1 -1
- package/dist/6696.app.bundle.js +1 -1
- package/dist/6849.app.bundle.js +1 -1
- package/dist/7166.app.bundle.js +1 -1
- package/dist/7372.app.bundle.js +1 -1
- package/dist/7734.app.bundle.js +1 -1
- package/dist/8255.app.bundle.js +1 -1
- package/dist/8913.app.bundle.js +1 -1
- package/dist/9186.app.bundle.js +1 -1
- package/dist/9496.app.bundle.js +1 -1
- package/dist/app.bundle.js +1 -1
- package/dist/components/contacts.js +1 -1
- package/dist/components/types/components.d.ts +64 -0
- package/dist/components/types/contacts.d.ts +16 -0
- package/dist/components/va-alert-expandable.js +1 -1
- package/dist/components/va-combo-box2.js +2 -2
- package/dist/components/va-crisis-line-modal2.js +1 -1
- package/dist/components/va-file-input-multiple.js +1 -1
- package/dist/components/va-file-input2.js +1 -1
- package/dist/components/va-modal2.js +1 -1
- package/dist/components/va-table.js +1 -1
- package/dist/components/va-text-input2.js +1 -1
- package/dist/components/va-textarea.js +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{C as CONTACTS}from"./contacts.js";import{d as defineCustomElement$4}from"./va-button2.js";import{d as defineCustomElement$3}from"./va-icon2.js";import{d as defineCustomElement$2}from"./va-modal2.js";import{d as defineCustomElement$1}from"./va-telephone2.js";const vaCrisisLineModalCss='button:not([disabled]):focus,select:not([disabled]):focus,a:not([disabled]):focus,h1:focus,input:not([disabled]):focus,textarea:not([disabled]):focus,#form-question [role=\'option\']:focus,*[tabindex]:focus,a.va-sidenav-submenu__link:focus{outline:2px solid var(--vads-color-action-focus-on-light);outline-offset:2px;z-index:2}.va-crisis-line-container{position:relative;margin:auto;background-color:var(--vads-color-secondary-dark)}@media (min-width: 1024px){.va-crisis-line-container{max-width:60.938rem;background-color:transparent}}a{color:var(--vads-color-link)}button.va-crisis-line{cursor:pointer;background-color:var(--vads-color-secondary-darkest);display:block;border-radius:0;color:var(--vads-button-color-text-primary-alt-on-light);font-family:var(--font-source-sans);font-size:16px;font-weight:normal;text-decoration:none;padding:0;margin:0;width:100%;border:0;-webkit-transition-duration:0.3s;transition-duration:0.3s;-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-property:background-color;transition-property:background-color}button.va-crisis-line:focus{outline-offset:-2px}button.va-crisis-line:hover,button.va-crisis-line:active{background-color:#8b0a03}@media (min-width: 1024px){button.va-crisis-line:hover .va-crisis-line-icon,button.va-crisis-line:active .va-crisis-line-icon{background-color:#b51d09}}@media (min-width: 1024px){button.va-crisis-line{width:auto;border-radius:0 0 2.3px 2.3px;-webkit-box-shadow:0 2px 5px var(--vads-color-base);box-shadow:0 2px 5px var(--vads-color-base)}}.va-crisis-line-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin:auto}@media (min-width: 1024px){.va-crisis-line-inner{text-align:left;-ms-flex-pack:justify;justify-content:space-between}}.va-crisis-line-icon{content:"";background:url("data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 96 60%22 width%3D%2296px%22 height%3D%2260px%22%3E%3Cpath d%3D%22M58 14c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zM58 30c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zM58 46c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm-48 2L32 60h-2V48H4c-2.20914 0-4-1.79086-4-4V4c0-2.20914 1.79086-4 4-4h40c2.20914 0 4 1.79086 4 4v40c0 2.20914-1.79086 4-4 4h-2zM24 31.72174L33.86667 39l-3.73334-11.86087L40 20.13043H28L24 8l-4 12.13043H8l9.86667 7.0087L14.13333 39 24 31.72174z%22 fill%3D%22%23FFF%22 fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E") no-repeat right 29%;background-size:30px auto;background-position:8px 8px;width:40px;height:36px;padding-right:3px;-webkit-transition-duration:0.3s;transition-duration:0.3s;-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-property:background-color;transition-property:background-color}@media (max-width: 480px){.va-crisis-line-icon{display:none}}@media (min-width: 1024px){.va-crisis-line-icon{border-bottom-left-radius:3.2px}}.va-crisis-line-text{padding:8px}.va-icon__right-arrow{position:relative;top:2px}.va-clm__icon{position:relative;top:15px;margin-right:23px}.va-crisis-panel{color:var(--vads-color-base)}.va-crisis-panel-body{max-height:100%}.va-crisis-panel-title{color:var(--vads-color-base);padding-left:41px;background-image:url("data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 96 60%22 width%3D%2296px%22 height%3D%2260px%22%3E%3Cpath d%3D%22M58 14c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zM58 30c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zM58 46c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm-48 2L32 60h-2V48H4c-2.20914 0-4-1.79086-4-4V4c0-2.20914 1.79086-4 4-4h40c2.20914 0 4 1.79086 4 4v40c0 2.20914-1.79086 4-4 4h-2zM24 31.72174L33.86667 39l-3.73334-11.86087L40 20.13043H28L24 8l-4 12.13043H8l9.86667 7.0087L14.13333 39 24 31.72174z%22 fill%3D%22%23FFF%22 fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E") no-repeat left;background-position:left 5px;background-size:32px auto}.va-crisis-panel-list{list-style:none;padding:0}.va-crisis-panel-list>li{display:-ms-flexbox;display:flex;min-height:56px;margin-bottom:0;border-top:1px solid var(--vads-color-base-light)}.va-crisis-panel-list>li:last-child{border-bottom:1px solid var(--vads-color-base-light)}.va-crisis-panel-list>li>a,.va-crisis-panel-list>li>span{padding:8px 0;-ms-flex-item-align:center;align-self:center}',VaCrisisLineModalStyle0=vaCrisisLineModalCss,VACrisisLineModal=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.isOpen=!1,this.shifted=!1}setVisible(){this.isOpen=!0}setNotVisible(){this.isOpen=!1}trackShiftKey(e){this.shifted=e.shiftKey}trapFocus(){var e;const i=null===(e=this.el)||void 0===e?void 0:e.shadowRoot.querySelector("va-modal"),a=null==i?void 0:i.getAttribute("visible");if(null!==a&&"false"!==a){let e;const a=this.shifted?".last-focusable-child":'[role="document"]';e=this.shifted?null==i?void 0:i.querySelector(a):null==i?void 0:i.shadowRoot.querySelector(a),null==e||e.focus()}}render(){return h(Host,{key:"9abdb650f83b1ebaf8d6c47897caa5d20fd13e06"},h("div",{key:"96618055c7c7a11d1180c5870eae1298d7c67867",class:"va-crisis-line-container"},h("button",{key:"ca66ad606aa88a5837686eafbdbdaa74d3b5f4a1",onClick:()=>this.setVisible(),onFocusin:()=>this.trapFocus(),"data-show":"#modal-crisisline",class:"va-crisis-line va-overlay-trigger",part:"button"},h("div",{key:"8f07f3ff5edd14ec01a216c8cf1849e21642bbef",class:"va-crisis-line-inner"},h("span",{key:"ff2cf54c5ff807679e0820b4607a810f77fab3cd",class:"va-crisis-line-icon","aria-hidden":"true"}),h("span",{key:"01ccfb67535e3fe4fd0873d3d86f7b1b9340ba4b",class:"va-crisis-line-text"},"Talk to the ",h("strong",{key:"240691554fa7b48ba9510382dc3f1214cc633469"},"Veterans Crisis Line")," now"),h("va-icon",{key:"657c49341568c2c6cecfa0c57bce6d216fc3b3a4",class:"va-icon__right-arrow",icon:"navigate_next",size:3})))),h("va-modal",{key:"8a8646b05be73d32edb10a951606ed377bb6f3df",modalTitle:"We’re here anytime, day or night – 24/7",onPrimaryButtonClick:()=>this.setNotVisible(),onCloseEvent:()=>this.setNotVisible(),visible:this.isOpen,large:!0},h("p",{key:"0aa6c308c9e92d3221b8776e47a20854936caac6"},"If you are a Veteran in crisis or concerned about one, connect with our caring, qualified responders for confidential help. Many of them are Veterans themselves."),h("ul",{key:"895c26d0e826ae7953704c7eefbae3ad6bc329e8",class:"va-crisis-panel-list"},h("li",{key:"8cf6852edb3a84e5c0fba7c49e2f550971c28b9d"},h("va-icon",{key:"50ae8afa383e9140bd8cd195e518725c01eb1bb0",class:"va-clm__icon",icon:"phone",size:3}),h("span",{key:"183f56dca2957a3bf8a40a7618839fd2b314b776"},"Call"," ",h("strong",{key:"a36c35b6920e48ae4ce464362651a8a3a07a28c4"},h("va-telephone",{key:"d262dab146969d6e01966f539875dec8e28ef3b7",contact:"988"})," and select 1"))),h("li",{key:"fb001af22341fbdda8827fba41fe024f264a52f6"},h("va-icon",{key:"4d922bac42139ac20f1fc1417ed62064d20e719a",icon:"phone_iphone",class:"va-clm__icon",size:3}),h("span",{key:"486842b866cee9715eeeafcb19a16919fb71e83f"},"Text ",h("strong",{key:"6a2016562c1279c05606ddd748ba78166720a567"},h("va-telephone",{key:"e6bd065e2d3381254020f612fc3680366e13a6c3",sms:!0,contact:"838255"})))),h("li",{key:"969edac9d2ba76ba55662ad6351845e07864b851"},h("va-icon",{key:"3a5e4a39e56e235913317259ee48c4eea4788b32",icon:"chat",class:"va-clm__icon",size:3}),h("a",{key:"d4722da3256da6da43cd8bd51460491dead644c0",class:"no-external-icon",href:"https://www.veteranscrisisline.net/get-help-now/chat/"},"Start a confidential chat")),h("li",{key:"73f16a72346b8b889b0de617d207875ca022a3c8"},h("va-icon",{key:"6b85e8d63cad91435de0764c2e2e6560152d7a09",icon:"tty",class:"va-clm__icon",size:3}),h("p",{key:"aee5ec33cce7164ce0227c443b2325651d9a48dd"},"Call TTY if you have hearing loss"," ",h("strong",{key:"c901785e83e3ebe67908ebfc7cd205b95b751db9"},h("va-telephone",{key:"2d6a7c2cd00fc660514a1cba9b6014261ff3e10d",tty:!0,contact:CONTACTS.CRISIS_TTY}))))),h("p",{key:"4ba3381cb65d93ee35edbf205fd3e0f86ed31066"},"Get more resources at"," ",h("a",{key:"be70893a771ebdead2aff28b6889257d05668945",class:"no-external-icon",href:"https://www.veteranscrisisline.net/"},"VeteransCrisisLine.net"))))}get el(){return this}static get style(){return VaCrisisLineModalStyle0}},[1,"va-crisis-line-modal",{isOpen:[32],shifted:[32]},[[8,"keydown","trackShiftKey"]]]);function defineCustomElement(){"undefined"!=typeof customElements&&["va-crisis-line-modal","va-button","va-icon","va-modal","va-telephone"].forEach((e=>{switch(e){case"va-crisis-line-modal":customElements.get(e)||customElements.define(e,VACrisisLineModal);break;case"va-button":customElements.get(e)||defineCustomElement$4();break;case"va-icon":customElements.get(e)||defineCustomElement$3();break;case"va-modal":customElements.get(e)||defineCustomElement$2();break;case"va-telephone":customElements.get(e)||defineCustomElement$1()}}))}export{VACrisisLineModal as V,defineCustomElement as d};
|
|
1
|
+
import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{a as CONTACTS_WITH_EXTENSION}from"./contacts.js";import{d as defineCustomElement$4}from"./va-button2.js";import{d as defineCustomElement$3}from"./va-icon2.js";import{d as defineCustomElement$2}from"./va-modal2.js";import{d as defineCustomElement$1}from"./va-telephone2.js";const vaCrisisLineModalCss='button:not([disabled]):focus,select:not([disabled]):focus,a:not([disabled]):focus,h1:focus,input:not([disabled]):focus,textarea:not([disabled]):focus,#form-question [role=\'option\']:focus,*[tabindex]:focus,a.va-sidenav-submenu__link:focus{outline:2px solid var(--vads-color-action-focus-on-light);outline-offset:2px;z-index:2}.va-crisis-line-container{position:relative;margin:auto;background-color:var(--vads-color-secondary-dark)}@media (min-width: 1024px){.va-crisis-line-container{max-width:60.938rem;background-color:transparent}}a{color:var(--vads-color-link)}button.va-crisis-line{cursor:pointer;background-color:var(--vads-color-secondary-darkest);display:block;border-radius:0;color:var(--vads-button-color-text-primary-alt-on-light);font-family:var(--font-source-sans);font-size:16px;font-weight:normal;text-decoration:none;padding:0;margin:0;width:100%;border:0;-webkit-transition-duration:0.3s;transition-duration:0.3s;-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-property:background-color;transition-property:background-color}button.va-crisis-line:focus{outline-offset:-2px}button.va-crisis-line:hover,button.va-crisis-line:active{background-color:#8b0a03}@media (min-width: 1024px){button.va-crisis-line:hover .va-crisis-line-icon,button.va-crisis-line:active .va-crisis-line-icon{background-color:#b51d09}}@media (min-width: 1024px){button.va-crisis-line{width:auto;border-radius:0 0 2.3px 2.3px;-webkit-box-shadow:0 2px 5px var(--vads-color-base);box-shadow:0 2px 5px var(--vads-color-base)}}.va-crisis-line-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin:auto}@media (min-width: 1024px){.va-crisis-line-inner{text-align:left;-ms-flex-pack:justify;justify-content:space-between}}.va-crisis-line-icon{content:"";background:url("data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 96 60%22 width%3D%2296px%22 height%3D%2260px%22%3E%3Cpath d%3D%22M58 14c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zM58 30c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zM58 46c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm-48 2L32 60h-2V48H4c-2.20914 0-4-1.79086-4-4V4c0-2.20914 1.79086-4 4-4h40c2.20914 0 4 1.79086 4 4v40c0 2.20914-1.79086 4-4 4h-2zM24 31.72174L33.86667 39l-3.73334-11.86087L40 20.13043H28L24 8l-4 12.13043H8l9.86667 7.0087L14.13333 39 24 31.72174z%22 fill%3D%22%23FFF%22 fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E") no-repeat right 29%;background-size:30px auto;background-position:8px 8px;width:40px;height:36px;padding-right:3px;-webkit-transition-duration:0.3s;transition-duration:0.3s;-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-property:background-color;transition-property:background-color}@media (max-width: 480px){.va-crisis-line-icon{display:none}}@media (min-width: 1024px){.va-crisis-line-icon{border-bottom-left-radius:3.2px}}.va-crisis-line-text{padding:8px}.va-icon__right-arrow{position:relative;top:2px}.va-clm__icon{position:relative;top:15px;margin-right:23px}.va-crisis-panel{color:var(--vads-color-base)}.va-crisis-panel-body{max-height:100%}.va-crisis-panel-title{color:var(--vads-color-base);padding-left:41px;background-image:url("data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 96 60%22 width%3D%2296px%22 height%3D%2260px%22%3E%3Cpath d%3D%22M58 14c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zM58 30c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zM58 46c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm16 0c-3.3137 0-6-2.6863-6-6s2.6863-6 6-6 6 2.6863 6 6-2.6863 6-6 6zm-48 2L32 60h-2V48H4c-2.20914 0-4-1.79086-4-4V4c0-2.20914 1.79086-4 4-4h40c2.20914 0 4 1.79086 4 4v40c0 2.20914-1.79086 4-4 4h-2zM24 31.72174L33.86667 39l-3.73334-11.86087L40 20.13043H28L24 8l-4 12.13043H8l9.86667 7.0087L14.13333 39 24 31.72174z%22 fill%3D%22%23FFF%22 fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E") no-repeat left;background-position:left 5px;background-size:32px auto}.va-crisis-panel-list{list-style:none;padding:0}.va-crisis-panel-list>li{display:-ms-flexbox;display:flex;min-height:56px;margin-bottom:0;border-top:1px solid var(--vads-color-base-light)}.va-crisis-panel-list>li:last-child{border-bottom:1px solid var(--vads-color-base-light)}.va-crisis-panel-list>li>a,.va-crisis-panel-list>li>span{padding:8px 0;-ms-flex-item-align:center;align-self:center}',VaCrisisLineModalStyle0=vaCrisisLineModalCss,VACrisisLineModal=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.triggerElement=null,this.onExternalTriggerClick=()=>{this.open()},this.onExternalTriggerFocus=()=>{this.trapFocus()},this.phoneNumber="988",this.phoneExtension="1",this.textNumber="838255",this.chatUrl="https://www.veteranscrisisline.net/get-help-now/chat/",this.ttyNumber=CONTACTS_WITH_EXTENSION.CRISIS_MODAL_TTY.phoneNumber||"711",this.ttyCrisisExtension=CONTACTS_WITH_EXTENSION.CRISIS_MODAL_TTY.extension||"988",this.triggerRef=void 0,this.isOpen=!1,this.shifted=!1}onTriggerRefChange(e){this.attachTriggerListeners(e)}componentDidLoad(){this.triggerRef&&this.attachTriggerListeners(this.triggerRef)}disconnectedCallback(){this.detachTriggerListeners()}attachTriggerListeners(e){if(this.detachTriggerListeners(),!e)return;const i=e.startsWith("#")?document.getElementById(e.slice(1)):document.querySelector(e);i instanceof HTMLElement&&(this.triggerElement=i,this.triggerElement.addEventListener("click",this.onExternalTriggerClick),this.triggerElement.addEventListener("focusin",this.onExternalTriggerFocus))}detachTriggerListeners(){this.triggerElement&&(this.triggerElement.removeEventListener("click",this.onExternalTriggerClick),this.triggerElement.removeEventListener("focusin",this.onExternalTriggerFocus),this.triggerElement=null)}open(){this.setVisible()}setVisible(){this.isOpen=!0}setNotVisible(){this.isOpen=!1}trackShiftKey(e){this.shifted=e.shiftKey}trapFocus(){var e;const i=null===(e=this.el)||void 0===e?void 0:e.shadowRoot.querySelector("va-modal"),t=null==i?void 0:i.getAttribute("visible");if(null!==t&&"false"!==t){let e;const t=this.shifted?".last-focusable-child":'[role="document"]';e=this.shifted?null==i?void 0:i.querySelector(t):null==i?void 0:i.shadowRoot.querySelector(t),null==e||e.focus()}}render(){const{phoneNumber:e,phoneExtension:i,textNumber:t,chatUrl:s,ttyNumber:n,ttyCrisisExtension:a,triggerRef:o}=this;return h(Host,{key:"a8bbb4b36a22f999395557ba076cc26210556e63"},!o&&h("div",{key:"8f34619819ed7bd806fd79391ebe8842b2dc2be5",class:"va-crisis-line-container"},h("button",{key:"1e13f218e313aeac1b9f0c16db9887173f33f5a7",onClick:()=>this.setVisible(),onFocusin:()=>this.trapFocus(),"data-show":"#modal-crisisline",class:"va-crisis-line va-overlay-trigger",part:"button"},h("div",{key:"c8961ed6c2575f200ae46b4ca5026e9a6c4644c5",class:"va-crisis-line-inner"},h("span",{key:"c5719c7da8048a04fb127a7a3c9bd94b48c80bfd",class:"va-crisis-line-icon","aria-hidden":"true"}),h("span",{key:"0198af4707b2d0aca6df218ea6fba09972b34894",class:"va-crisis-line-text"},"Talk to the ",h("strong",{key:"1ce662b7ab9674b39b7763e4d1e1e0f2b3bbabe7"},"Veterans Crisis Line")," now"),h("va-icon",{key:"b8be59ffb9a747b23b4c2abffc45183d50f97dcf",class:"va-icon__right-arrow",icon:"navigate_next",size:3})))),h("va-modal",{key:"4961efb191517408b655976e6557b00f1d43aba6",modalTitle:"We’re here anytime, day or night – 24/7",onPrimaryButtonClick:()=>this.setNotVisible(),onCloseEvent:()=>this.setNotVisible(),visible:this.isOpen,large:!0},h("p",{key:"1a4d64246b72e38d12edf8fc9256876f0897b788"},"If you are a Veteran in crisis or concerned about one, connect with our caring, qualified responders for confidential help. Many of them are Veterans themselves."),h("ul",{key:"638e82f978b565ab3eefe6b2750e3105ca9c1880",class:"va-crisis-panel-list"},h("li",{key:"8e1ad7a3b394179ac62b499b41498176d71dba1b"},h("va-icon",{key:"d2627e50a01da10a292e756a4d5eb0cf0582c035",class:"va-clm__icon",icon:"phone",size:3}),h("span",{key:"2b073c04bdcda810f9ee7a184a2c30c194480300"},"Call"," ",h("strong",{key:"1a432545369f12141e94a61354f366b7caff7382"},h("va-telephone",{key:"7643fa3778a98ea973f0e3946ac974ab5c9c4b41",contact:e}),i?` and select ${i}`:null))),h("li",{key:"e7a890f1a35a16d33f40245a87f570578fb9f606"},h("va-icon",{key:"6f924bc25c7172f50059e5e940a2429dec981e06",icon:"phone_iphone",class:"va-clm__icon",size:3}),h("span",{key:"03322523bc9a8af2477ed68e6fa5e2c095013b4b"},"Text ",h("strong",{key:"bf0f0da43f952a983703f76768e15bbce6cfa04f"},h("va-telephone",{key:"15287086544d6fdfb9eb8850faaed79e0ed0cd60",sms:!0,contact:t})))),h("li",{key:"b818d18e2fd7022aa7c23ef465b7db3609e0ee43"},h("va-icon",{key:"d80250d17a6aca0d5e0a5d70c7ec5e28d46a2986",icon:"chat",class:"va-clm__icon",size:3}),h("a",{key:"a75710edbe45c04978ea6e3cdd5dce32d3d76ee5",class:"no-external-icon",href:s},"Start a confidential chat")),h("li",{key:"1deb65fe872cc2d6d9d8eecb9f4b1fdf42c2b283"},h("va-icon",{key:"8b0108466960733e70af1ccc051803cc2f5c48f0",icon:"tty",class:"va-clm__icon",size:3}),h("p",{key:"9c5213c63dd7c65c478c9db90f8de06c677a7340"},"For TTY, call"," ",h("strong",{key:"127e966b36dab2de16615678294aac14fc07a0dc"},h("va-telephone",{key:"fb97f16e873901f94d214054109a502d4ed14eaa",contact:n}),a?` then ${a}`:null)))),h("p",{key:"7713d84bc83e67b6d21ef066f3d692a273d7c1cf"},"Get more resources at"," ",h("a",{key:"59bd65f53d9dc1c05a425d9630ed0b2d16fdcd84",class:"no-external-icon",href:"https://www.veteranscrisisline.net/"},"VeteransCrisisLine.net"))))}get el(){return this}static get watchers(){return{triggerRef:["onTriggerRefChange"]}}static get style(){return VaCrisisLineModalStyle0}},[1,"va-crisis-line-modal",{phoneNumber:[1,"phone-number"],phoneExtension:[1,"phone-extension"],textNumber:[1,"text-number"],chatUrl:[1,"chat-url"],ttyNumber:[1,"tty-number"],ttyCrisisExtension:[1,"tty-crisis-extension"],triggerRef:[1,"trigger-ref"],isOpen:[32],shifted:[32]},[[8,"keydown","trackShiftKey"]],{triggerRef:["onTriggerRefChange"]}]);function defineCustomElement(){"undefined"!=typeof customElements&&["va-crisis-line-modal","va-button","va-icon","va-modal","va-telephone"].forEach((e=>{switch(e){case"va-crisis-line-modal":customElements.get(e)||customElements.define(e,VACrisisLineModal);break;case"va-button":customElements.get(e)||defineCustomElement$4();break;case"va-icon":customElements.get(e)||defineCustomElement$3();break;case"va-modal":customElements.get(e)||defineCustomElement$2();break;case"va-telephone":customElements.get(e)||defineCustomElement$1()}}))}export{VACrisisLineModal as V,defineCustomElement as d};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{proxyCustomElement,HTMLElement,createEvent,h,Host}from"@stencil/core/internal/client";import"./i18n-setup.js";import"./contacts.js";import{d as defineCustomElement$9}from"./va-button2.js";import{d as defineCustomElement$8}from"./va-button-icon2.js";import{d as defineCustomElement$7}from"./va-card2.js";import{d as defineCustomElement$6}from"./va-file-input2.js";import{d as defineCustomElement$5}from"./va-icon2.js";import{d as defineCustomElement$4}from"./va-modal2.js";import{d as defineCustomElement$3}from"./va-progress-bar2.js";import{d as defineCustomElement$2}from"./va-text-input2.js";import{i as instance}from"./i18next.js";const vaFileInputMultipleCss='button:not([disabled]):focus,select:not([disabled]):focus,a:not([disabled]):focus,h1:focus,input:not([disabled]):focus,textarea:not([disabled]):focus,#form-question [role=\'option\']:focus,*[tabindex]:focus,a.va-sidenav-submenu__link:focus{outline:2px solid var(--vads-color-action-focus-on-light);outline-offset:2px;z-index:2}h1{margin-top:0}h1,h2,h3,h4,h5,h6{margin-bottom:0;margin-top:0;clear:both}*+h1,*+h2,*+h3,*+h4,*+h5,*+h6{margin-top:1.5em}h1+*,h2+*,h3+*,h4+*,h5+*,h6+*{margin-top:1em}h1{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:2.44rem;line-height:1.2;font-weight:700}h2{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.95rem;line-height:1.2;font-weight:700}h3{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.34rem;line-height:1.2;font-weight:700}h4{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:0.98rem;line-height:1.2;font-weight:700}h5{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:0.91rem;line-height:1.2;font-weight:700}h6{font-family:Source Sans Pro Web, Helvetica Neue, Helvetica, Roboto, Arial, sans-serif;font-size:0.87rem;line-height:1.1;font-weight:normal;letter-spacing:0.025em;text-transform:uppercase}h1,h2,h3,h4,h5{font-family:Bitter, Georgia, Cambria, "Times New Roman", Times, serif;font-weight:700}h6{font-family:"Source Sans Pro Web", "Source Sans Pro", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;font-weight:700}h1{margin-top:0;font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.25rem}h4{font-size:1.0625rem}h5{font-size:0.9375rem}h6{font-size:0.9375rem}@media (max-width: 481px){h1{font-size:1.875rem}h2{font-size:1.5rem}}h6{margin:0.5em 0 0;text-transform:none;font-weight:700}@media (max-width: 481px){h1{font-size:1.875rem}h2{font-size:1.5rem}}h6{margin:0.5em 0 0;text-transform:none;font-weight:700}:host legend :is(h1,h2,h3,h4,h5,h6),:host label :is(h1,h2,h3,h4,h5,h6){display:inline;margin:0px}:host legend :is(h1,h2,h3,h4,h5),:host label :is(h1,h2,h3,h4,h5){font-family:var(--font-serif)}:host h1+*,:host h2+*,:host h3+*,:host h4+*,:host h5+*,:host h6+*{margin-top:unset}:host #form-question{margin-bottom:1rem}@import \'~@department-of-veterans-affairs/css-library/dist/stylesheets/base/headings.css\';:host legend :is(h1,h2,h3,h4,h5,h6),:host label :is(h1,h2,h3,h4,h5,h6){display:inline;margin:0px}:host legend :is(h1,h2,h3,h4,h5),:host label :is(h1,h2,h3,h4,h5){font-family:var(--font-serif)}:host h1+*,:host h2+*,:host h3+*,:host h4+*,:host h5+*,:host h6+*{margin-top:unset}:host #form-question{margin-bottom:1rem}.usa-hint{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3}.usa-label{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3;display:block;font-weight:normal;margin-top:1.5rem;max-width:30rem}.usa-label--error{font-weight:700;margin-top:0}.usa-label--required{color:#b50909}.usa-hint{color:#71767a}.usa-hint--required{color:#b50909}.usa-sr-only{position:absolute;left:-999em;right:auto}.usa-error-message{padding-bottom:0.25rem;padding-top:0.25rem;color:#b50909;display:block;font-weight:700}.usa-error-message{font-size:1.06rem}:host([error]:not([error=""])),:host(.va-form-group--error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){border-left:none}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host([error]:not([error=""])),:host(.va-form-group--error){margin-left:-0.9rem}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{margin-left:-0.9rem}}@media screen and (max-width: 1023px){:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){padding-left:0}}[hidden]{display:none}:host{display:block;font-family:var(--font-source-sans);font-size:16.96px;}:host .label-header{color:var(--vads-color-base);font-weight:var(--font-weight-normal)}:host .label-header-tag{margin:0;display:inline-block}:host .file-input-wrapper{display:block;max-width:30rem;width:100%;position:relative;margin:8px 0}:host .file-input{cursor:pointer;height:100%;width:100%;max-width:none;top:0;left:0;z-index:1;margin:0;position:absolute;text-indent:-999em;-webkit-box-sizing:border-box;box-sizing:border-box}:host .file-input-target{border:1px dashed var(--vads-color-action-border-base-active-on-dark);display:block;margin-top:0.3125rem;position:relative;text-align:center;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}:host .file-input-target.file-input-target-error{border:2px dashed var(--vads-color-secondary-dark)}:host .file-input-box{background:var(--vads-color-white);height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:2}:host .file-input-instructions{font-size:1.06rem;padding:1.25rem 0.625rem;pointer-events:none;position:relative;z-index:3}:host .file-input-choose-text{color:var(--vads-color-link);text-decoration:underline;font-weight:var(--font-weight-normal)}:host .file-icon{color:var(--vads-color-primary-alt-darkest)}:host .selected-files-wrapper{background-color:var(--vads-color-primary-lighter);border:1px solid var(--vads-color-base-light)}:host .selected-files-label{color:var(--vads-color-base);font-weight:var(--font-weight-bold);font-size:1.06rem;border-bottom:1px solid var(--vads-color-white);margin-bottom:8px;padding:8px}:host .va-card{margin:8px}:host .file-label{color:var(--vads-color-base);font-weight:var(--font-weight-bold);font-size:1.06rem;padding:0 8px;display:block;width:100%;word-wrap:break-word;word-break:break-word;overflow:hidden}:host #input-error-message{padding:0 8px;width:100%}:host .file-size-label,:host .file-status-label{color:var(--vads-color-base-dark);font-weight:var(--font-weight-normal);font-size:1.06rem;padding:0 8px;display:block}:host .file-status-label{font-style:italic}:host .file-info-section{padding:0 8px 8px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .file-button-section{margin-top:8px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-direction:row;flex-direction:row}:host .file-button-section>va-button-icon{font-size:1.06rem}@media screen and (max-width: 320px){:host .file-button-section{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}}:host .with-separator{border-top:1px solid var(--vads-color-base-lighter)}:host .vads-u-line-height--2{line-height:1.15}:host .thumbnail-container{height:40px;width:40px;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}:host .thumbnail-preview{max-width:40px;width:auto;max-height:40px;height:auto}:host .thumbnail-error{color:#b21d38}:host va-progress-bar{font-size:var(--vads-font-size-root);display:block;margin-left:16px}:host .uploading-status{font-style:var(--font-style-italic)}:host(.has-error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host(.has-error){margin-left:-0.9rem}}.required{color:var(--vads-color-secondary-dark);margin-left:0.25rem}h1 .required,h2 .required,h3 .required,h4 .required,h5 .required,h6 .required{font-family:var(--font-source-sans);font-size:initial;font-weight:initial}.usa-error-message{font-size:1.06rem}:host([error]:not([error=""])),:host(.va-form-group--error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){border-left:none}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host([error]:not([error=""])),:host(.va-form-group--error){margin-left:-0.9rem}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{margin-left:-0.9rem}}@media screen and (max-width: 1023px){:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){padding-left:0}}:host.has-error{border-left:0.25rem solid #b50909;padding-left:1rem}:host .outer-wrap{background-color:var(--vads-color-primary-lighter);border:1px solid var(--vads-color-base-light);display:block;max-width:30rem;width:100%;position:relative;margin:8px 0}:host va-file-input.no-file{margin:0 8px}:host va-file-input:not(:last-child){border-bottom:1px solid var(--vads-color-white)}:host va-file-input.has-error{border-left:none;padding-left:0}@media screen and (min-width: 1024px){:host va-file-input.has-error{margin-left:0}}',VaFileInputMultipleStyle0=vaFileInputMultipleCss,VaFileInputMultiple$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.vaMultipleChange=createEvent(this,"vaMultipleChange",7),this.fileKeyCounter=0,this.additionalSlot=null,this.getAdditionalFileUploadMessage=()=>h("span",null,"Drag an additional file here or"," ",h("span",{class:"file-input-choose-text"},"choose from folder")),this.renderLabelOrHeader=(e,t,i)=>{const o=t?h("span",{class:"required"}," ",instance.t("required")):null;return i&&i>=1&&i<=6?h("div",{class:"label-header"},h(`h${i}`,{htmlFor:"fileInputField",part:"label",class:"label-header-tag"},e,o)):h("div",{class:"label-header"},h("span",{part:"label",class:"usa-label"},e),o)},this.addValueFiles=async()=>(this.files.shift(),this.value.forEach((e=>{this.files.push({file:e,key:this.fileKeyCounter,content:this.getAdditionalContent()||null}),this.fileKeyCounter++})),this.readOnly||this.files.push({file:null,key:this.fileKeyCounter,content:null}),this.valueAdded=!0,Promise.resolve()),this.hasErrors=()=>this.errors.some((e=>!!e)),this.label=void 0,this.name=void 0,this.required=!1,this.accept=void 0,this.errors=[],this.passwordErrors=[],this.encrypted=[],this.hint=void 0,this.enableAnalytics=!1,this.headerSize=void 0,this.value=void 0,this.readOnly=!1,this.slotFieldIndexes=null,this.percentUploaded=[],this.maxFileSize=1/0,this.minFileSize=0,this.statusText=void 0,this.uploadedFiles=void 0,this.files=[{key:0,file:null,content:null}],this.valueAdded=!1}findFileByKey(e){return this.files.find((t=>t.key===e))}findIndexByKey(e){return this.files.indexOf(this.files.find((t=>t.key===e)))}isEmpty(){return null===this.files[0].file}setSlotContent(){const e=this.el.shadowRoot.querySelector("slot");this.additionalSlot||(this.additionalSlot=e?e.assignedElements({flatten:!0}):[]),null==e||e.remove()}getAdditionalContent(){return this.additionalSlot&&this.additionalSlot.map((e=>e.cloneNode(!0)))}handleChange(e,t,i){const o=e.detail.files[0];let r,s,a;if(o){const e=this.findFileByKey(t);e.file?(s="FILE_UPDATED",a=o,e.file=o):(s="FILE_ADDED",a=o,e.file=o,e.content=this.getAdditionalContent(),this.fileKeyCounter++,this.files.push({file:null,key:this.fileKeyCounter,content:null})),r=this.buildFilesArray(this.files,!1,this.findIndexByKey(t))}else{s="FILE_REMOVED",a=this.files[i].file,this.files.splice(i,1);const e=this.el.shadowRoot.querySelector("#statusMessage");e.textContent="",setTimeout((()=>{e.textContent="File deleted."}),1e3),r=this.buildFilesArray(this.files,!0)}const n={action:s,file:a,state:r};this.vaMultipleChange.emit(n),this.files=Array.of(...this.files)}handlePasswordChange(e,t){const i=this.findFileByKey(t);i.password=e.detail.password;const o=this.buildFilesArray(this.files,!1,this.findIndexByKey(t)),r={action:"PASSWORD_UPDATE",file:i.file,state:o};this.vaMultipleChange.emit(r)}buildFilesArray(e,t,i){let o=e.filter((e=>!!e.file)).map((e=>({file:e.file,changed:!1,password:e.password})));return!t&&o[i]&&(o[i].changed=!0),o}componentDidRender(){const e=this.el.shadowRoot.querySelectorAll("va-file-input");return this.setSlotContent(),e.forEach(((e,t)=>{!this.files[t].content||this.slotFieldIndexes&&!this.slotFieldIndexes.includes(t)||this.files[t].content.forEach((t=>e.append(t)))})),this.value&&this.value.length&&!this.valueAdded?this.addValueFiles():Promise.resolve()}render(){const{label:e,required:t,headerSize:i,hint:o,files:r,name:s,accept:a,errors:n,encrypted:l,percentUploaded:d,passwordErrors:m,enableAnalytics:f,readOnly:p,maxFileSize:u,minFileSize:c,statusText:g,uploadedFiles:b}=this,v=this.isEmpty()?"":"outer-wrap",x=this.hasErrors()?"has-error":"";return h(Host,{key:"0ce2511e04efd90032b600a680595a07deb32f89",class:x,error:x?"error":""},e&&!p&&this.renderLabelOrHeader(e,t,i),o&&!p&&h("div",{key:"87ecce2f2b5d9c96e6ca84a0e89b75cd3a18d499",class:"usa-hint",id:"input-hint-message"},o),h("div",{key:"79cbf65f559912f0ca33a728bc2910438f3ab286",class:v},h("div",{key:"29081f9cb95dda9f74e71173282321c0baa60792",class:"usa-sr-only","aria-live":"polite",id:"statusMessage"}),!this.isEmpty()&&h("div",{key:"c971ed1d8b80a34fbf31378ad1667e82f1091ad5",class:"selected-files-label"},p?"Files you uploaded":"Selected files"),r.map(((i,r)=>{const v=d&&d.length>=r?d[r]:null,x=m&&m.length>=r?m[r]:null,y=b&&b.length>=r?b[r]:null;return h("va-file-input",Object.assign({key:i.key,id:`instance-${r}`,headless:!0,label:e,hint:o,name:`${s}-${i.key}`,accept:a,required:t},r>0?{uploadMessage:this.getAdditionalFileUploadMessage()}:{},{error:n[r],encrypted:l[r],percentUploaded:v,passwordError:x,onVaChange:e=>this.handleChange(e,i.key,r),onVaPasswordChange:e=>this.handlePasswordChange(e,i.key),"enable-analytics":f,value:i.file,readOnly:p,maxFileSize:u,minFileSize:c,statusText:g,uploadedFile:y,class:i.file?"has-file":"no-file","max-file-size":u,"min-file-size":c}))}))),h("slot",{key:"577c1fe2c354063b2b8381edd4a6fafc1c3c2a3b"}))}get el(){return this}static get style(){return VaFileInputMultipleStyle0}},[1,"va-file-input-multiple",{label:[1],name:[1],required:[4],accept:[1],errors:[16],passwordErrors:[16],encrypted:[16],hint:[1],enableAnalytics:[4,"enable-analytics"],headerSize:[2,"header-size"],value:[16],readOnly:[4,"read-only"],slotFieldIndexes:[16],percentUploaded:[16],maxFileSize:[2,"max-file-size"],minFileSize:[2,"min-file-size"],statusText:[1,"status-text"],uploadedFiles:[16],files:[32],valueAdded:[32]}]);function defineCustomElement$1(){"undefined"!=typeof customElements&&["va-file-input-multiple","va-button","va-button-icon","va-card","va-file-input","va-icon","va-modal","va-progress-bar","va-text-input"].forEach((e=>{switch(e){case"va-file-input-multiple":customElements.get(e)||customElements.define(e,VaFileInputMultiple$1);break;case"va-button":customElements.get(e)||defineCustomElement$9();break;case"va-button-icon":customElements.get(e)||defineCustomElement$8();break;case"va-card":customElements.get(e)||defineCustomElement$7();break;case"va-file-input":customElements.get(e)||defineCustomElement$6();break;case"va-icon":customElements.get(e)||defineCustomElement$5();break;case"va-modal":customElements.get(e)||defineCustomElement$4();break;case"va-progress-bar":customElements.get(e)||defineCustomElement$3();break;case"va-text-input":customElements.get(e)||defineCustomElement$2()}}))}const VaFileInputMultiple=VaFileInputMultiple$1,defineCustomElement=defineCustomElement$1;export{VaFileInputMultiple,defineCustomElement};
|
|
1
|
+
import{proxyCustomElement,HTMLElement,createEvent,h,Host}from"@stencil/core/internal/client";import"./i18n-setup.js";import"./contacts.js";import{d as defineCustomElement$9}from"./va-button2.js";import{d as defineCustomElement$8}from"./va-button-icon2.js";import{d as defineCustomElement$7}from"./va-card2.js";import{d as defineCustomElement$6}from"./va-file-input2.js";import{d as defineCustomElement$5}from"./va-icon2.js";import{d as defineCustomElement$4}from"./va-modal2.js";import{d as defineCustomElement$3}from"./va-progress-bar2.js";import{d as defineCustomElement$2}from"./va-text-input2.js";import{i as instance}from"./i18next.js";const vaFileInputMultipleCss='button:not([disabled]):focus,select:not([disabled]):focus,a:not([disabled]):focus,h1:focus,input:not([disabled]):focus,textarea:not([disabled]):focus,#form-question [role=\'option\']:focus,*[tabindex]:focus,a.va-sidenav-submenu__link:focus{outline:2px solid var(--vads-color-action-focus-on-light);outline-offset:2px;z-index:2}h1{margin-top:0}h1,h2,h3,h4,h5,h6{margin-bottom:0;margin-top:0;clear:both}*+h1,*+h2,*+h3,*+h4,*+h5,*+h6{margin-top:1.5em}h1+*,h2+*,h3+*,h4+*,h5+*,h6+*{margin-top:1em}h1{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:2.44rem;line-height:1.2;font-weight:700}h2{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.95rem;line-height:1.2;font-weight:700}h3{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.34rem;line-height:1.2;font-weight:700}h4{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:0.98rem;line-height:1.2;font-weight:700}h5{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:0.91rem;line-height:1.2;font-weight:700}h6{font-family:Source Sans Pro Web, Helvetica Neue, Helvetica, Roboto, Arial, sans-serif;font-size:0.87rem;line-height:1.1;font-weight:normal;letter-spacing:0.025em;text-transform:uppercase}h1,h2,h3,h4,h5{font-family:Bitter, Georgia, Cambria, "Times New Roman", Times, serif;font-weight:700}h6{font-family:"Source Sans Pro Web", "Source Sans Pro", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;font-weight:700}h1{margin-top:0;font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.25rem}h4{font-size:1.0625rem}h5{font-size:0.9375rem}h6{font-size:0.9375rem}@media (max-width: 481px){h1{font-size:1.875rem}h2{font-size:1.5rem}}h6{margin:0.5em 0 0;text-transform:none;font-weight:700}@media (max-width: 481px){h1{font-size:1.875rem}h2{font-size:1.5rem}}h6{margin:0.5em 0 0;text-transform:none;font-weight:700}:host legend :is(h1,h2,h3,h4,h5,h6),:host label :is(h1,h2,h3,h4,h5,h6){display:inline;margin:0px}:host legend :is(h1,h2,h3,h4,h5),:host label :is(h1,h2,h3,h4,h5){font-family:var(--font-serif)}:host h1+*,:host h2+*,:host h3+*,:host h4+*,:host h5+*,:host h6+*{margin-top:unset}:host #form-question{margin-bottom:1rem}@import \'~@department-of-veterans-affairs/css-library/dist/stylesheets/base/headings.css\';:host legend :is(h1,h2,h3,h4,h5,h6),:host label :is(h1,h2,h3,h4,h5,h6){display:inline;margin:0px}:host legend :is(h1,h2,h3,h4,h5),:host label :is(h1,h2,h3,h4,h5){font-family:var(--font-serif)}:host h1+*,:host h2+*,:host h3+*,:host h4+*,:host h5+*,:host h6+*{margin-top:unset}:host #form-question{margin-bottom:1rem}.usa-hint{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3}.usa-label{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3;display:block;font-weight:normal;margin-top:1.5rem;max-width:30rem}.usa-label--error{font-weight:700;margin-top:0}.usa-label--required{color:#b50909}.usa-hint{color:#71767a}.usa-hint--required{color:#b50909}.usa-sr-only{position:absolute;left:-999em;right:auto}.usa-error-message{padding-bottom:0.25rem;padding-top:0.25rem;color:#b50909;display:block;font-weight:700}.usa-error-message{font-size:1.06rem}:host([error]:not([error=""])),:host(.va-form-group--error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){border-left:none}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host([error]:not([error=""])),:host(.va-form-group--error){margin-left:-0.9rem}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{margin-left:-0.9rem}}@media screen and (max-width: 1023px){:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){padding-left:0}}[hidden]{display:none}:host{display:block;font-family:var(--font-source-sans);font-size:16.96px;}:host .label-header{color:var(--vads-color-base);font-weight:var(--font-weight-normal)}:host .label-header-tag{margin:0;display:inline-block}:host .file-input-wrapper{display:block;max-width:30rem;width:100%;position:relative;margin:8px 0}:host .file-input{cursor:pointer;height:100%;width:100%;max-width:none;top:0;left:0;z-index:1;margin:0;position:absolute;text-indent:-999em;-webkit-box-sizing:border-box;box-sizing:border-box}:host .file-input-target{border:1px dashed var(--vads-color-action-border-base-active-on-dark);display:block;margin-top:0.3125rem;position:relative;text-align:center;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}:host .file-input-target.file-input-target-error{border:2px dashed var(--vads-color-secondary-dark)}:host .file-input-box{background:var(--vads-color-white);height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:2}:host .file-input-instructions{font-size:1.06rem;padding:1.25rem 0.625rem;pointer-events:none;position:relative;z-index:3}:host .file-input-choose-text{color:var(--vads-color-link);text-decoration:underline;font-weight:var(--font-weight-normal)}:host .file-icon{color:var(--vads-color-primary-alt-darkest)}:host .selected-files-wrapper{background-color:var(--vads-color-primary-lighter);border:1px solid var(--vads-color-base-light)}:host .selected-files-label{color:var(--vads-color-base);font-weight:var(--font-weight-bold);font-size:1.06rem;border-bottom:1px solid var(--vads-color-white);margin-bottom:8px;padding:8px}:host .va-card{margin:8px}:host .file-label{color:var(--vads-color-base);font-weight:var(--font-weight-bold);font-size:1.06rem;padding:0 8px;display:block;width:100%;word-wrap:break-word;word-break:break-word;overflow:hidden}:host #input-error-message{padding:0 8px;width:100%}:host .file-size-label,:host .file-status-label{color:var(--vads-color-base-dark);font-weight:var(--font-weight-normal);font-size:1.06rem;padding:0 8px;display:block}:host .file-status-label{font-style:italic}:host .file-info-section{padding:0 8px 8px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .file-button-section{margin-top:8px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-direction:row;flex-direction:row}:host .file-button-section>va-button-icon{font-size:1.06rem}@media screen and (max-width: 320px){:host .file-button-section{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}}:host .with-separator{border-top:1px solid var(--vads-color-base-lighter)}:host .vads-u-line-height--2{line-height:1.15}:host .thumbnail-container{height:40px;width:40px;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}:host .thumbnail-preview{max-width:40px;width:auto;max-height:40px;height:auto}:host .thumbnail-error{color:#b21d38}:host va-progress-bar{font-size:var(--vads-font-size-root);display:block;margin-left:16px}:host .uploading-status{font-style:var(--font-style-italic)}:host(.has-error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host(.has-error){margin-left:-0.9rem}}.required{color:var(--vads-color-secondary-dark);margin-left:0.25rem}h1 .required,h2 .required,h3 .required,h4 .required,h5 .required,h6 .required{font-family:var(--font-source-sans);font-size:initial;font-weight:initial}.usa-error-message{font-size:1.06rem}:host([error]:not([error=""])),:host(.va-form-group--error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){border-left:none}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host([error]:not([error=""])),:host(.va-form-group--error){margin-left:-0.9rem}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{margin-left:-0.9rem}}@media screen and (max-width: 1023px){:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){padding-left:0}}:host.has-error{border-left:0.25rem solid #b50909;padding-left:1rem}:host .outer-wrap{background-color:var(--vads-color-primary-lighter);border:1px solid var(--vads-color-base-light);display:block;max-width:30rem;width:100%;position:relative;margin:8px 0}:host va-file-input.no-file{margin:0 8px}:host va-file-input:not(:last-child){border-bottom:1px solid var(--vads-color-white)}:host va-file-input.has-error{border-left:none;padding-left:0}@media screen and (min-width: 1024px){:host va-file-input.has-error{margin-left:0}}',VaFileInputMultipleStyle0=vaFileInputMultipleCss,VaFileInputMultiple$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.vaMultipleChange=createEvent(this,"vaMultipleChange",7),this.fileKeyCounter=0,this.additionalSlot=null,this.getAdditionalFileUploadMessage=()=>h("span",null,"Drag an additional file here or"," ",h("span",{class:"file-input-choose-text"},"choose from folder")),this.renderLabelOrHeader=(e,t,i)=>{const r=t?h("span",{class:"required"}," ",instance.t("required")):null;return i&&i>=1&&i<=6?h("div",{class:"label-header"},h(`h${i}`,{htmlFor:"fileInputField",part:"label",class:"label-header-tag"},e,r)):h("div",{class:"label-header"},h("span",{part:"label",class:"usa-label"},e),r)},this.addValueFiles=async()=>(this.files.shift(),this.value.forEach((e=>{this.files.push({file:e,key:this.fileKeyCounter,content:this.getAdditionalContent()||null}),this.fileKeyCounter++})),this.readOnly||this.files.push({file:null,key:this.fileKeyCounter,content:null}),this.valueAdded=!0,Promise.resolve()),this.hasErrors=()=>this.errors.some((e=>!!e)),this.label=void 0,this.name=void 0,this.required=!1,this.accept=void 0,this.errors=[],this.passwordErrors=[],this.encrypted=[],this.hint=void 0,this.enableAnalytics=!1,this.headerSize=void 0,this.value=void 0,this.readOnly=!1,this.slotFieldIndexes=null,this.percentUploaded=[],this.maxFileSize=1/0,this.minFileSize=0,this.statusText=void 0,this.uploadedFiles=void 0,this.files=[{key:0,file:null,content:null,hasError:!1}],this.valueAdded=!1}findFileByKey(e){return this.files.find((t=>t.key===e))}findIndexByKey(e){return this.files.indexOf(this.files.find((t=>t.key===e)))}isEmpty(){return null===this.files[0].file&&!0!==this.files[0].hasError}setSlotContent(){const e=this.el.shadowRoot.querySelector("slot");this.additionalSlot||(this.additionalSlot=e?e.assignedElements({flatten:!0}):[]),null==e||e.remove()}getAdditionalContent(){return this.additionalSlot&&this.additionalSlot.map((e=>e.cloneNode(!0)))}ensurePlaceholder(){if(!this.readOnly&&!this.files.some((e=>null===e.file&&!0!==e.hasError))){this.fileKeyCounter++;const e={file:null,key:this.fileKeyCounter,content:null,error:!1};this.files=[...this.files,e]}}handleChange(e,t,i){const r=e.detail.files[0];let o,s,a;if(r){const e=this.findFileByKey(t);e.hasError&&(e.hasError=!1),e.file?(s="FILE_UPDATED",a=r,e.file=r):(s="FILE_ADDED",a=r,e.file=r,e.content=this.getAdditionalContent(),this.fileKeyCounter++,this.files=[...this.files],this.ensurePlaceholder()),o=this.buildFilesArray(this.files,!1,this.findIndexByKey(t))}else{s="FILE_REMOVED",a=this.files[i].file;const e=[...this.files];e.splice(i,1),this.files=e;const t=this.el.shadowRoot.querySelector("#statusMessage");t.textContent="",setTimeout((()=>{t.textContent="File deleted."}),1e3),o=this.buildFilesArray(this.files,!0)}this.ensurePlaceholder(),this.updateFilesState(),this.vaMultipleChange.emit({action:s,file:a,state:o,index:i})}handlePasswordChange(e,t,i){const r=this.findFileByKey(t);r.password=e.detail.password;const o=this.buildFilesArray(this.files,!1,this.findIndexByKey(t)),s={action:"PASSWORD_UPDATE",file:r.file,state:o,index:i};this.vaMultipleChange.emit(s)}updateFilesState(){this.files=[...this.files]}buildFilesArray(e,t,i){let r=e.filter((e=>!!e.file)).map((e=>({file:e.file,changed:!1,password:e.password})));return!t&&r[i]&&(r[i].changed=!0),r}componentDidRender(){const e=this.el.shadowRoot.querySelectorAll("va-file-input");return this.setSlotContent(),e.forEach(((e,t)=>{!this.files[t].content||this.slotFieldIndexes&&!this.slotFieldIndexes.includes(t)||this.files[t].content.forEach((t=>e.append(t)))})),this.value&&this.value.length&&!this.valueAdded?this.addValueFiles():Promise.resolve()}render(){const{label:e,required:t,headerSize:i,hint:r,files:o,name:s,accept:a,errors:l,encrypted:n,percentUploaded:d,passwordErrors:m,enableAnalytics:f,readOnly:u,maxFileSize:p,minFileSize:c,statusText:b,uploadedFiles:g}=this,v=this.isEmpty()?"":"outer-wrap",x=this.hasErrors()?"has-error":"";return h(Host,{key:"1cea4936f2754b3811b1d520d88401f135b68b3f",class:x,error:x?"error":""},e&&!u&&this.renderLabelOrHeader(e,t,i),r&&!u&&h("div",{key:"ec877d1cbcc085bca25cdb0a6d7853a74ca0a815",class:"usa-hint",id:"input-hint-message"},r),h("div",{key:"97b16ab50f6a15ca7badf9b54162e2623997738e",class:v},h("div",{key:"2f4274f55ddc4bdfbd0705dda70e5d57540fcbab",class:"usa-sr-only","aria-live":"polite",id:"statusMessage"}),!this.isEmpty()&&h("div",{key:"4560c6d810c0e2bb15f8044df0d3f040abf9e725",class:"selected-files-label"},u?"Files you uploaded":"Selected files"),o.map(((i,o)=>{const v=d&&d.length>=o?d[o]:null,x=m&&m.length>=o?m[o]:null,y=g&&g.length>=o?g[o]:null;return h("va-file-input",Object.assign({key:i.key,id:`instance-${o}`,headless:!0,label:e,hint:r,name:`${s}-${i.key}`,accept:a,required:t},o>0?{uploadMessage:this.getAdditionalFileUploadMessage()}:{},{error:l[o],encrypted:n[o],percentUploaded:v,passwordError:x,onVaChange:e=>this.handleChange(e,i.key,o),onVaFileInputError:()=>{const e=this.findIndexByKey(i.key);e>-1&&(this.files[e]=Object.assign(Object.assign({},this.files[e]),{hasError:!0}),this.updateFilesState(),this.ensurePlaceholder())},onVaPasswordChange:e=>this.handlePasswordChange(e,i.key,o),"enable-analytics":f,value:i.file,readOnly:u,maxFileSize:p,minFileSize:c,statusText:b,uploadedFile:y,class:i.file||i.hasError?"has-file":"no-file","max-file-size":p,"min-file-size":c}))}))),h("slot",{key:"06fa0cc4eb80926ec0721cc73408c6cada35cbbb"}))}get el(){return this}static get style(){return VaFileInputMultipleStyle0}},[1,"va-file-input-multiple",{label:[1],name:[1],required:[4],accept:[1],errors:[16],passwordErrors:[16],encrypted:[16],hint:[1],enableAnalytics:[4,"enable-analytics"],headerSize:[2,"header-size"],value:[16],readOnly:[4,"read-only"],slotFieldIndexes:[16],percentUploaded:[16],maxFileSize:[2,"max-file-size"],minFileSize:[2,"min-file-size"],statusText:[1,"status-text"],uploadedFiles:[16],files:[32],valueAdded:[32]}]);function defineCustomElement$1(){"undefined"!=typeof customElements&&["va-file-input-multiple","va-button","va-button-icon","va-card","va-file-input","va-icon","va-modal","va-progress-bar","va-text-input"].forEach((e=>{switch(e){case"va-file-input-multiple":customElements.get(e)||customElements.define(e,VaFileInputMultiple$1);break;case"va-button":customElements.get(e)||defineCustomElement$9();break;case"va-button-icon":customElements.get(e)||defineCustomElement$8();break;case"va-card":customElements.get(e)||defineCustomElement$7();break;case"va-file-input":customElements.get(e)||defineCustomElement$6();break;case"va-icon":customElements.get(e)||defineCustomElement$5();break;case"va-modal":customElements.get(e)||defineCustomElement$4();break;case"va-progress-bar":customElements.get(e)||defineCustomElement$3();break;case"va-text-input":customElements.get(e)||defineCustomElement$2()}}))}const VaFileInputMultiple=VaFileInputMultiple$1,defineCustomElement=defineCustomElement$1;export{VaFileInputMultiple,defineCustomElement};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{proxyCustomElement,HTMLElement,createEvent,h,forceUpdate,Host,Fragment}from"@stencil/core/internal/client";import"./i18n-setup.js";import"./contacts.js";import{s as selectOrMatches,S as Sanitizer}from"./utils.js";import{d as defineCustomElement$7}from"./va-button2.js";import{d as defineCustomElement$6}from"./va-button-icon2.js";import{d as defineCustomElement$5}from"./va-card2.js";import{d as defineCustomElement$4}from"./va-icon2.js";import{d as defineCustomElement$3}from"./va-modal2.js";import{d as defineCustomElement$2}from"./va-progress-bar2.js";import{d as defineCustomElement$1}from"./va-text-input2.js";import{i as instance}from"./i18next.js";const PREFIX="usa",DROPZONE_CLASS="usa-file-input",DROPZONE=`.${DROPZONE_CLASS}`,INPUT_CLASS="usa-file-input__input",TARGET_CLASS="usa-file-input__target",INPUT=`.${INPUT_CLASS}`,BOX_CLASS="usa-file-input__box",INSTRUCTIONS_CLASS="usa-file-input__instructions",PREVIEW_CLASS="usa-file-input__preview",PREVIEW_HEADING_CLASS="usa-file-input__preview-heading",DISABLED_CLASS="usa-file-input--disabled",CHOOSE_CLASS="usa-file-input__choose",ACCEPTED_FILE_MESSAGE_CLASS="usa-file-input__accepted-files-message",DRAG_TEXT_CLASS="usa-file-input__drag-text",DRAG_CLASS="usa-file-input--drag",LOADING_CLASS="is-loading",INVALID_FILE_CLASS="has-invalid-file",GENERIC_PREVIEW_CLASS_NAME="usa-file-input__preview-image",GENERIC_PREVIEW_CLASS=`${GENERIC_PREVIEW_CLASS_NAME}--generic`,PDF_PREVIEW_CLASS=`${GENERIC_PREVIEW_CLASS_NAME}--pdf`,WORD_PREVIEW_CLASS=`${GENERIC_PREVIEW_CLASS_NAME}--word`,VIDEO_PREVIEW_CLASS=`${GENERIC_PREVIEW_CLASS_NAME}--video`,EXCEL_PREVIEW_CLASS=`${GENERIC_PREVIEW_CLASS_NAME}--excel`,SR_ONLY_CLASS="usa-sr-only",SPACER_GIF="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";let TYPE_IS_VALID=Boolean(!0),DEFAULT_ARIA_LABEL_TEXT="",DEFAULT_FILE_STATUS_TEXT="";const getFileInputContext=e=>{const t=e.closest(DROPZONE);if(!t)throw new Error(`Element is missing outer ${DROPZONE}`);const i=t.querySelector(INPUT);return{dropZoneEl:t,inputEl:i}},disable=e=>{const{dropZoneEl:t,inputEl:i}=getFileInputContext(e);i.disabled=!0,t.classList.add(DISABLED_CLASS)},ariaDisable=e=>{const{dropZoneEl:t}=getFileInputContext(e);t.classList.add(DISABLED_CLASS)},enable=e=>{const{dropZoneEl:t,inputEl:i}=getFileInputContext(e);i.disabled=!1,t.classList.remove(DISABLED_CLASS),t.removeAttribute("aria-disabled")},replaceName=e=>{const t=e.charCodeAt(0);return 32===t?"-":t>=65&&t<=90?`img_${e.toLowerCase()}`:`__000${t.toString(16).slice(-4)}`},makeSafeForID=e=>e.replace(/[^a-z0-9]/g,replaceName),createUniqueID=e=>`${e}-${Math.floor(Date.now()/1e3)}`,getItemsLabel=e=>e.hasAttribute("multiple")?"files":"file",createTargetArea=e=>{const t=document.createElement("div"),i=document.createElement("div"),s=document.createElement("div");return e.classList.remove(DROPZONE_CLASS),e.classList.add(INPUT_CLASS),t.classList.add(DROPZONE_CLASS),s.classList.add(BOX_CLASS),i.classList.add(TARGET_CLASS),i.prepend(s),e.parentNode.insertBefore(i,e),e.parentNode.insertBefore(t,i),i.appendChild(e),t.appendChild(i),i},createVisibleInstructions=e=>{const t=e.closest(DROPZONE),i=getItemsLabel(e),s=document.createElement("div"),a=`Drag ${i} here or`,r="choose from folder";return DEFAULT_ARIA_LABEL_TEXT=`${a} ${r}`,s.classList.add(INSTRUCTIONS_CLASS),s.setAttribute("aria-hidden","true"),e.setAttribute("aria-label",DEFAULT_ARIA_LABEL_TEXT),s.innerHTML=Sanitizer.escapeHTML(`<span class="${DRAG_TEXT_CLASS}">${a}</span> <span class="${CHOOSE_CLASS}">${r}</span>`),e.parentNode.insertBefore(s,e),(/rv:11.0/i.test(navigator.userAgent)||/Edge\/\d./i.test(navigator.userAgent))&&(t.querySelector(`.${DRAG_TEXT_CLASS}`).outerHTML=""),s},createSROnlyStatus=e=>{const t=document.createElement("div"),i=getItemsLabel(e),s=e.closest(DROPZONE),a=e.closest(`.${TARGET_CLASS}`);DEFAULT_FILE_STATUS_TEXT=`No ${i} selected.`,t.classList.add("usa-sr-only"),t.setAttribute("aria-live","polite"),t.textContent=DEFAULT_FILE_STATUS_TEXT,s.insertBefore(t,a)},enhanceFileInput=e=>{const t=e.hasAttribute("aria-disabled")||e.hasAttribute("disabled"),i=createTargetArea(e),s=createVisibleInstructions(e),{dropZoneEl:a}=getFileInputContext(e);return t?a.classList.add(DISABLED_CLASS):createSROnlyStatus(e),{instructions:s,dropTarget:i}},removeOldPreviews=(e,t)=>{const i=e.querySelectorAll(`.${PREVIEW_CLASS}`),s=e.querySelector(`.${PREVIEW_HEADING_CLASS}`),a=e.querySelector(`.${ACCEPTED_FILE_MESSAGE_CLASS}`);s&&(s.outerHTML=""),a&&(a.outerHTML="",e.classList.remove("has-invalid-file")),null!==i&&(t&&t.removeAttribute("hidden"),Array.prototype.forEach.call(i,(e=>{e.parentNode.removeChild(e)})))},updateStatusMessage=(e,t,i)=>{const s=e;let a=DEFAULT_FILE_STATUS_TEXT;1===t.length?a=`You have selected the file: ${i}`:t.length>1&&(a=`You have selected ${t.length} files: ${i.join(", ")}`),setTimeout((()=>{s.textContent=a}),1e3)},addPreviewHeading=(e,t)=>{const i=document.createElement("div"),s=e.closest(`.${TARGET_CLASS}`),a=s.querySelector(`.${INSTRUCTIONS_CLASS}`);let r="Change file",o="";1===t.length?o=Sanitizer.escapeHTML(`Selected file <span class="usa-file-input__choose">${r}</span>`):t.length>1&&(r="Change files",o=Sanitizer.escapeHTML(`${t.length} files selected <span class="usa-file-input__choose">${r}</span>`)),a.setAttribute("hidden","true"),i.classList.add(PREVIEW_HEADING_CLASS),i.innerHTML=o,s.insertBefore(i,a),e.setAttribute("aria-label",r)},handleChange=(e,t,i,s)=>{const a=t.getAttribute("multiple")?e.target.files:[e.target.files[0]],r=s.closest(`.${DROPZONE_CLASS}`).querySelector(".usa-sr-only"),o=[];removeOldPreviews(s,i);for(let e=0;e<a.length;e+=1){const t=new FileReader,r=a[e].name;let n;o.push(r),t.onloadstart=function(){n=createUniqueID(makeSafeForID(r)),i.insertAdjacentHTML("afterend",Sanitizer.escapeHTML(`<div class="${PREVIEW_CLASS}" aria-hidden="true">\n <img id="${n}" src="${SPACER_GIF}" alt="" class="${GENERIC_PREVIEW_CLASS_NAME} is-loading"/>${r}\n <div>`))},t.onloadend=function(){const e=s.querySelector(`#${n}`);r.indexOf(".pdf")>0?e.setAttribute("onerror",`this.onerror=null;this.src="${SPACER_GIF}"; this.classList.add("${PDF_PREVIEW_CLASS}")`):r.indexOf(".doc")>0||r.indexOf(".pages")>0?e.setAttribute("onerror",`this.onerror=null;this.src="${SPACER_GIF}"; this.classList.add("${WORD_PREVIEW_CLASS}")`):r.indexOf(".xls")>0||r.indexOf(".numbers")>0?e.setAttribute("onerror",`this.onerror=null;this.src="${SPACER_GIF}"; this.classList.add("${EXCEL_PREVIEW_CLASS}")`):r.indexOf(".mov")>0||r.indexOf(".mp4")>0?e.setAttribute("onerror",`this.onerror=null;this.src="${SPACER_GIF}"; this.classList.add("${VIDEO_PREVIEW_CLASS}")`):e.setAttribute("onerror",`this.onerror=null;this.src="${SPACER_GIF}"; this.classList.add("${GENERIC_PREVIEW_CLASS}")`),e.classList.remove("is-loading"),e.src=t.result},a[e]&&t.readAsDataURL(a[e])}0===a.length?t.setAttribute("aria-label",DEFAULT_ARIA_LABEL_TEXT):addPreviewHeading(t,a),updateStatusMessage(r,a,o)},preventInvalidFiles=(e,t,i,s)=>{const a=t.getAttribute("accept");s.classList.remove("has-invalid-file");const r=(e,t)=>{let i=!1;return e.indexOf(t)>=0&&(i=!0),i};if(a){const o=a.split(","),n=document.createElement("div");let l=!0;const d=e.target.files||e.dataTransfer.files;for(let e=0;e<d.length;e+=1){const t=d[e];if(!l)break;for(let e=0;e<o.length;e+=1){const i=o[e];if(l=t.name.indexOf(i)>0||r(t.type,i.replace(/\*/g,"")),l){TYPE_IS_VALID=!0;break}}}l||(removeOldPreviews(s,i),t.value="",s.insertBefore(n,t),n.textContent=t.dataset.errormessage||"This is not a valid file type.",n.classList.add(ACCEPTED_FILE_MESSAGE_CLASS),s.classList.add("has-invalid-file"),TYPE_IS_VALID=!1,e.preventDefault(),e.stopPropagation())}},handleUpload=(e,t,i,s)=>{preventInvalidFiles(e,t,i,s),!0===TYPE_IS_VALID&&handleChange(e,t,i,s)},fileInput={init(e){selectOrMatches(DROPZONE,e).forEach((e=>{const{instructions:t,dropTarget:i}=enhanceFileInput(e);i.addEventListener("dragover",(function(){this.classList.add(DRAG_CLASS)}),!1),i.addEventListener("dragleave",(function(){this.classList.remove(DRAG_CLASS)}),!1),i.addEventListener("drop",(function(s){s.preventDefault(),this.classList.remove(DRAG_CLASS);const a=s.dataTransfer;if(s.target.files=a.files,a.files.length>1)return;handleUpload(s,e,t,i);const r=new CustomEvent("change",{detail:{files:a.files}});e.dispatchEvent(r)}),!1),e.addEventListener("input",(s=>handleUpload(s,e,t,i)),!1)}))},teardown(e){selectOrMatches(INPUT,e).forEach((e=>{const t=e.parentElement.parentElement;t.parentElement.replaceChild(e,t),e.className=DROPZONE_CLASS}))},getFileInputContext:getFileInputContext,disable:disable,ariaDisable:ariaDisable,enable:enable},extensionToMimeType={".txt":"text/plain",".pdf":"application/pdf",".doc":"application/msword",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".odt":"application/vnd.oasis.opendocument.text",".rtf":"application/rtf",".csv":"text/csv",".xls":"application/vnd.ms-excel",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".ppt":"application/vnd.ms-powerpoint",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".jpg":"image/jpeg",".jpeg":"image/jpeg",".png":"image/png",".gif":"image/gif",".bmp":"image/bmp",".webp":"image/webp",".tif":"image/tiff",".tiff":"image/tiff",".svg":"image/svg+xml",".mp3":"audio/mpeg",".wav":"audio/wav",".ogg":"audio/ogg",".m4a":"audio/mp4",".aac":"audio/aac",".mp4":"video/mp4",".avi":"video/x-msvideo",".mov":"video/quicktime",".wmv":"video/x-ms-wmv",".flv":"video/x-flv",".mkv":"video/x-matroska",".webm":"video/webm",".zip":"application/zip",".rar":"application/x-rar-compressed",".7z":"application/x-7z-compressed",".tar":"application/x-tar",".gz":"application/gzip",".json":"application/json",".xml":"application/xml",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript"},vaFileInputCss='button:not([disabled]):focus,select:not([disabled]):focus,a:not([disabled]):focus,h1:focus,input:not([disabled]):focus,textarea:not([disabled]):focus,#form-question [role=\'option\']:focus,*[tabindex]:focus,a.va-sidenav-submenu__link:focus{outline:2px solid var(--vads-color-action-focus-on-light);outline-offset:2px;z-index:2}h1{margin-top:0}h1,h2,h3,h4,h5,h6{margin-bottom:0;margin-top:0;clear:both}*+h1,*+h2,*+h3,*+h4,*+h5,*+h6{margin-top:1.5em}h1+*,h2+*,h3+*,h4+*,h5+*,h6+*{margin-top:1em}h1{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:2.44rem;line-height:1.2;font-weight:700}h2{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.95rem;line-height:1.2;font-weight:700}h3{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.34rem;line-height:1.2;font-weight:700}h4{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:0.98rem;line-height:1.2;font-weight:700}h5{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:0.91rem;line-height:1.2;font-weight:700}h6{font-family:Source Sans Pro Web, Helvetica Neue, Helvetica, Roboto, Arial, sans-serif;font-size:0.87rem;line-height:1.1;font-weight:normal;letter-spacing:0.025em;text-transform:uppercase}h1,h2,h3,h4,h5{font-family:Bitter, Georgia, Cambria, "Times New Roman", Times, serif;font-weight:700}h6{font-family:"Source Sans Pro Web", "Source Sans Pro", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;font-weight:700}h1{margin-top:0;font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.25rem}h4{font-size:1.0625rem}h5{font-size:0.9375rem}h6{font-size:0.9375rem}@media (max-width: 481px){h1{font-size:1.875rem}h2{font-size:1.5rem}}h6{margin:0.5em 0 0;text-transform:none;font-weight:700}@media (max-width: 481px){h1{font-size:1.875rem}h2{font-size:1.5rem}}h6{margin:0.5em 0 0;text-transform:none;font-weight:700}:host legend :is(h1,h2,h3,h4,h5,h6),:host label :is(h1,h2,h3,h4,h5,h6){display:inline;margin:0px}:host legend :is(h1,h2,h3,h4,h5),:host label :is(h1,h2,h3,h4,h5){font-family:var(--font-serif)}:host h1+*,:host h2+*,:host h3+*,:host h4+*,:host h5+*,:host h6+*{margin-top:unset}:host #form-question{margin-bottom:1rem}.usa-hint{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3}.usa-label{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3;display:block;font-weight:normal;margin-top:1.5rem;max-width:30rem}.usa-label--error{font-weight:700;margin-top:0}.usa-label--required{color:#b50909}.usa-hint{color:#71767a}.usa-hint--required{color:#b50909}.usa-sr-only{position:absolute;left:-999em;right:auto}.usa-error-message{padding-bottom:0.25rem;padding-top:0.25rem;color:#b50909;display:block;font-weight:700}.usa-error-message{font-size:1.06rem}:host([error]:not([error=""])),:host(.va-form-group--error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){border-left:none}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host([error]:not([error=""])),:host(.va-form-group--error){margin-left:-0.9rem}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{margin-left:-0.9rem}}@media screen and (max-width: 1023px){:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){padding-left:0}}[hidden]{display:none}:host{display:block;font-family:var(--font-source-sans);font-size:16.96px;}:host .label-header{color:var(--vads-color-base);font-weight:var(--font-weight-normal)}:host .label-header-tag{margin:0;display:inline-block}:host .file-input-wrapper{display:block;max-width:30rem;width:100%;position:relative;margin:8px 0}:host .file-input{cursor:pointer;height:100%;width:100%;max-width:none;top:0;left:0;z-index:1;margin:0;position:absolute;text-indent:-999em;-webkit-box-sizing:border-box;box-sizing:border-box}:host .file-input-target{border:1px dashed var(--vads-color-action-border-base-active-on-dark);display:block;margin-top:0.3125rem;position:relative;text-align:center;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}:host .file-input-target.file-input-target-error{border:2px dashed var(--vads-color-secondary-dark)}:host .file-input-box{background:var(--vads-color-white);height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:2}:host .file-input-instructions{font-size:1.06rem;padding:1.25rem 0.625rem;pointer-events:none;position:relative;z-index:3}:host .file-input-choose-text{color:var(--vads-color-link);text-decoration:underline;font-weight:var(--font-weight-normal)}:host .file-icon{color:var(--vads-color-primary-alt-darkest)}:host .selected-files-wrapper{background-color:var(--vads-color-primary-lighter);border:1px solid var(--vads-color-base-light)}:host .selected-files-label{color:var(--vads-color-base);font-weight:var(--font-weight-bold);font-size:1.06rem;border-bottom:1px solid var(--vads-color-white);margin-bottom:8px;padding:8px}:host .va-card{margin:8px}:host .file-label{color:var(--vads-color-base);font-weight:var(--font-weight-bold);font-size:1.06rem;padding:0 8px;display:block;width:100%;word-wrap:break-word;word-break:break-word;overflow:hidden}:host #input-error-message{padding:0 8px;width:100%}:host .file-size-label,:host .file-status-label{color:var(--vads-color-base-dark);font-weight:var(--font-weight-normal);font-size:1.06rem;padding:0 8px;display:block}:host .file-status-label{font-style:italic}:host .file-info-section{padding:0 8px 8px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .file-button-section{margin-top:8px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-direction:row;flex-direction:row}:host .file-button-section>va-button-icon{font-size:1.06rem}@media screen and (max-width: 320px){:host .file-button-section{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}}:host .with-separator{border-top:1px solid var(--vads-color-base-lighter)}:host .vads-u-line-height--2{line-height:1.15}:host .thumbnail-container{height:40px;width:40px;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}:host .thumbnail-preview{max-width:40px;width:auto;max-height:40px;height:auto}:host .thumbnail-error{color:#b21d38}:host va-progress-bar{font-size:var(--vads-font-size-root);display:block;margin-left:16px}:host .uploading-status{font-style:var(--font-style-italic)}:host(.has-error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host(.has-error){margin-left:-0.9rem}}.required{color:var(--vads-color-secondary-dark);margin-left:0.25rem}h1 .required,h2 .required,h3 .required,h4 .required,h5 .required,h6 .required{font-family:var(--font-source-sans);font-size:initial;font-weight:initial}',VaFileInputStyle0=vaFileInputCss,VaFileInput=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.vaChange=createEvent(this,"vaChange",7),this.vaPasswordChange=createEvent(this,"vaPasswordChange",7),this.vaFileInputError=createEvent(this,"vaFileInputError",7),this.componentLibraryAnalytics=createEvent(this,"component-library-analytics",7),this.uploadStatus="idle",this.chooseFileString="choose from folder",this.dragFileString="Drag a file here or ",this.FILE_PREVIEW_SIZE_LIMIT=5242880,this.handleChange=e=>{const t=e.target;t.files&&t.files.length>0&&this.handleFile(t.files[0]),t.value=""},this.handleDrop=e=>{e.preventDefault(),e.stopPropagation();const t=e.dataTransfer.files;t.length>0&&this.handleFile(t[0])},this.getExtension=e=>{const t=e.name.replace(/^\./,"");return(t.includes(".")?`.${t.split(".").pop()}`:null)||e.type},this.getFileTypeErrorMessage=e=>{const t=this.getExtension(e);return`We do not accept ${t?`${t} files`:"this file type"}. Choose a new file.`},this.handleFile=(e,t=!0)=>{let i=null;if(this.accept){const t=this.normalizeAcceptProp(this.accept);this.isAcceptedFileType(e.type,t)||(this.removeFile(!1),i=this.getFileTypeErrorMessage(e))}if(0===e.size&&(i="The file you selected is empty. Files must be larger than 0B."),e.size>this.maxFileSize&&(i=`\n We can't upload your file because it's too big. Files must be less than ${this.formatFileSize(this.maxFileSize)}.`),e.size<this.minFileSize&&(i=`We can't upload your file because it's too small. Files must be at least ${this.formatFileSize(this.minFileSize)}.`),this.uploadedFile=null,this.file=e,i)return this.internalError=i,this.vaFileInputError.emit({error:i}),void this.resetState();t&&this.vaChange.emit({files:[this.file]}),this.uploadStatus="success",this.internalError=null,e.size<this.FILE_PREVIEW_SIZE_LIMIT&&this.generateFileContents(this.file),this.updateStatusMessage(`You have selected the file: ${this.file.name}`),this.el.focus(),this.enableAnalytics&&this.componentLibraryAnalytics.emit({componentName:"va-file-input",action:"change",details:{label:this.label}})},this.removeFile=(e=!0)=>{this.closeModal(),this.uploadStatus="idle",this.internalError=null,e&&this.vaChange.emit({files:[]}),this.file=null,this.uploadedFile=null,this.updateStatusMessage("File deleted. No file selected."),this.el.focus()},this.openModal=()=>{this.el.shadowRoot.querySelector("va-modal").setAttribute("status","warning"),this.showModal=!0},this.closeModal=()=>{this.showModal=!1,setTimeout((()=>{this.fileInputRef.focus()}),0)},this.changeFile=()=>{this.fileInputRef&&this.fileInputRef.click()},this.formatFileSize=e=>{const t=["B","KB","MB","GB","TB"];if(0===e)return"0 B";const i=Math.floor(Math.log(e)/Math.log(1024));return 0===i?`${e} ${t[i]}`:`${(e/Math.pow(1024,i)).toFixed(i<2?0:1)} ${t[i]}`},this.normalizeAcceptProp=e=>e.split(",").map((e=>(e=e.trim()).startsWith(".")?extensionToMimeType[e]:e)),this.isAcceptedFileType=(e,t)=>{for(const i of t){if(i===e)return!0;if(i.endsWith("/*")&&e.startsWith(i.slice(0,-1)))return!0}return!1},this.renderLabelOrHeader=(e,t,i)=>{const s=t?h("span",{class:"required"}," ",instance.t("required")):null;return h("div",{class:"label-header"},i&&i>=1&&i<=6?h(`h${i}`,{htmlFor:"fileInputField",part:"label",class:"label-header-tag"},e,s):h("label",{htmlFor:"fileInputField",part:"label",class:"usa-label"},e,s))},this.file=void 0,this.fileContents=void 0,this.internalError=void 0,this.showModal=!1,this.showSeparator=!0,this.label=void 0,this.name=void 0,this.value=void 0,this.required=!1,this.accept=void 0,this.error=void 0,this.hint=void 0,this.statusText=void 0,this.uploadMessage=null,this.enableAnalytics=!1,this.headerSize=void 0,this.headless=!1,this.readOnly=!1,this.encrypted=!1,this.uploadedFile=void 0,this.maxFileSize=1/0,this.minFileSize=0,this.percentUploaded=null,this.passwordError=void 0}handleValueChange(e){setTimeout((()=>{this.updateStatusMessage(e)}))}percentHandler(e){e>=100&&this.resetState()}handleError(e,t){t&&e&&this.resetState()}resetState(){this.fileContents=null,this.uploadStatus="idle",this.percentUploaded=null,forceUpdate(this.el)}updateStatusMessage(e){setTimeout((()=>{const t=this.el.shadowRoot.querySelector("#statusMessage");t&&(t.textContent=e)}),1e3)}async generateFileContents(e){if(!e)return;const t=e.slice(0,20),i=await t.arrayBuffer();if(new Uint8Array(i).every((e=>0===e)))return;const s=new FileReader;this.fileType=e.type,s.onloadend=()=>{this.fileContents=s.result},this.fileType&&("application/pdf"===this.fileType||this.fileType.startsWith("image/"))&&s.readAsDataURL(e)}componentWillRender(){const e=!!this.el.querySelector(":scope > *"),t=!(!this.value&&!this.file||this.readOnly);this.showSeparator=e||t}componentDidLoad(){fileInput.init(this.el)}connectedCallback(){this.el.addEventListener("change",this.handleChange)}disconnectedCallback(){this.el.removeEventListener("change",this.handleChange)}getDefaultUploadMessage(){return h("span",null,this.dragFileString,h("span",{class:"file-input-choose-text"},this.chooseFileString))}handlePasswordChange(e){this.vaPasswordChange.emit({password:e.target.value})}render(){const{label:e,name:t,required:i,accept:s,error:a,hint:r,dragFileString:o,chooseFileString:n,uploadMessage:l,headerSize:d,fileContents:c,fileType:p,headless:u,value:m,readOnly:f,encrypted:g,statusText:v,uploadedFile:b,percentUploaded:E,passwordError:S}=this;m&&!this.file&&this.handleFile(m,!1);const{uploadStatus:A,file:_}=this,C=a||this.internalError,x=`${r?"input-hint-message":""} ${C?"input-error-message":""}`.trim()||null,L=("file-input-target "+(C?"file-input-target-error":"")).trim();let w=h("div",{key:"127a104800f7ef1f8e7200728f13d7136e661ebc",class:"thumbnail-container"},h("svg",{key:"4104282602ee5f6fed49bb2661664d3b88965958",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512",fill:"#07648d",width:"40px",height:"40px"},h("path",{key:"52486121ff470e98ea62977d9a47fe9c5221a60f",d:"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm160-14.1v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z"})));C?w=h("div",{key:"5ec5a8b91f016f73dd2c54d187289b1e038e9724",class:"thumbnail-container"},h("va-icon",{key:"515ad83da7abd9e78c2e58b9124889d5c168f22a",icon:"error",size:3,class:"thumbnail-preview thumbnail-error"})):c&&(p.startsWith("image/")?w=h("div",{key:"357017d01150bff7baae23f81f927b147a0cc578",class:"thumbnail-container","aria-hidden":"true"},h("img",{key:"0491347dc314952df837ed87f6b72dec909e27dc",class:"thumbnail-preview",src:c,alt:"image"})):"application/pdf"===p&&(w=h("div",{key:"38f3b35401d49d8eb1d571155c15f412fc38dd99",class:"thumbnail-container","aria-hidden":"true"},h("object",{key:"d5d89acd923f3364eb882cdaea2a93347eb2448e",class:"thumbnail-preview",data:c,type:"application/pdf",tabIndex:-1}))));let y=u?"headless-selected-files-wrapper":"selected-files-wrapper";const I="usa-hint"+(u?" usa-sr-only":""),T=null!==E&&E<100;let F="file-status-label";return T&&(F=`${F} uploading-status`),h(Host,{key:"bff5e87618329c9a8244c7d1e9f9b82dd07d797f",class:{"has-error":!!C}},!f&&h("span",{key:"42b76f94434c471da1ac06bc11c55b993da59fb1",class:{"usa-sr-only":!!u}},e&&this.renderLabelOrHeader(e,i,d)),r&&!f&&h("div",{key:"463a758d16bf26217e7a1d29a50956fcefcdea22",class:I,id:"input-hint-message"},r),h("div",{key:"d460773b145b534a829a8f5335a76d4204b041e7",class:"file-input-wrapper",onDrop:this.handleDrop},h("input",{key:"8cd614a4e706ce493f73b6cca298d75c0e989d35",id:"fileInputField",class:"file-input","aria-label":`${e}${i?" "+instance.t("required"):""}. ${o}${n}`,style:{visibility:"success"===A||b||C?"hidden":"unset"},type:"file",ref:e=>this.fileInputRef=e,name:t,accept:s,"aria-describedby":x,onChange:this.handleChange}),b||_?h("div",{class:y},!u&&h("div",{class:"selected-files-label"},f?"Files you uploaded":"Selected files"),h("div",{class:"usa-sr-only","aria-live":"polite",id:"statusMessage"}),h("va-card",{class:"va-card"},h("div",{class:"file-info-section"},w,h("div",{class:"file-info-group vads-u-line-height--2"},h("span",{class:"file-label"},_?_.name:b.name),C&&h("span",{id:"input-error-message",role:"alert"},h("span",{class:"usa-sr-only"},instance.t("error")),h("span",{"aria-live":"polite",class:"usa-error-message"},C)),!T&&h("span",{class:"file-size-label"},this.formatFileSize(_?_.size:b.size)),h("span",{class:F,"aria-live":"polite"},T?"Uploading...":v))),h("div",{class:this.showSeparator?"with-separator":void 0},!f&&T&&h(Fragment,null,h("va-progress-bar",{percent:E}),h("va-button-icon",{buttonType:"cancel",onClick:this.resetState.bind(this)})),!T&&h(Fragment,null,g&&h("va-text-input",{type:"password",onInput:e=>{this.handlePasswordChange(e)},label:"File password",required:!0,error:S}),h("div",{class:"additional-info-slot"},h("slot",null))),!f&&!T&&h(Fragment,null,h("div",{class:"file-button-section"},h("va-button-icon",{buttonType:"change-file",onClick:this.changeFile,label:`change file ${_?_.name:b.name}`}),h("va-button-icon",{buttonType:"delete",onClick:this.openModal,label:`delete file ${_?_.name:b.name}`})),h("va-modal",{modalTitle:"Delete this file?",visible:this.showModal,primaryButtonText:"Yes, delete this",secondaryButtonText:"No, keep this",onCloseEvent:this.closeModal,onPrimaryButtonClick:()=>this.removeFile(!0),onSecondaryButtonClick:this.closeModal},"We'll delete the uploaded file"," ",h("span",{class:"file-label"},_?_.name:b.name)))))):h("div",null,h("span",{id:"file-input-error-alert",role:"alert"},C&&h(Fragment,null,h("span",{class:"usa-sr-only"},instance.t("error")),h("span",{class:"usa-error-message"},C))),h("div",{class:"usa-sr-only","aria-live":"polite",id:"statusMessage"}),h("div",{class:L},h("div",{class:"file-input-box"}),h("div",{class:"file-input-instructions"},l||this.getDefaultUploadMessage())))))}get el(){return this}static get watchers(){return{statusText:["handleValueChange"],percentUploaded:["percentHandler"],error:["handleError"]}}static get style(){return VaFileInputStyle0}},[1,"va-file-input",{label:[1],name:[1],value:[16],required:[4],accept:[1],error:[1],hint:[1],statusText:[1,"status-text"],uploadMessage:[16],enableAnalytics:[4,"enable-analytics"],headerSize:[2,"header-size"],headless:[4],readOnly:[4,"read-only"],encrypted:[4],uploadedFile:[1040],maxFileSize:[2,"max-file-size"],minFileSize:[2,"min-file-size"],percentUploaded:[1538,"percent-uploaded"],passwordError:[1,"password-error"],file:[32],fileContents:[32],internalError:[32],showModal:[32],showSeparator:[32]},void 0,{statusText:["handleValueChange"],percentUploaded:["percentHandler"],error:["handleError"]}]);function defineCustomElement(){"undefined"!=typeof customElements&&["va-file-input","va-button","va-button-icon","va-card","va-icon","va-modal","va-progress-bar","va-text-input"].forEach((e=>{switch(e){case"va-file-input":customElements.get(e)||customElements.define(e,VaFileInput);break;case"va-button":customElements.get(e)||defineCustomElement$7();break;case"va-button-icon":customElements.get(e)||defineCustomElement$6();break;case"va-card":customElements.get(e)||defineCustomElement$5();break;case"va-icon":customElements.get(e)||defineCustomElement$4();break;case"va-modal":customElements.get(e)||defineCustomElement$3();break;case"va-progress-bar":customElements.get(e)||defineCustomElement$2();break;case"va-text-input":customElements.get(e)||defineCustomElement$1()}}))}export{VaFileInput as V,defineCustomElement as d};
|
|
1
|
+
import{proxyCustomElement,HTMLElement,createEvent,h,forceUpdate,Host,Fragment}from"@stencil/core/internal/client";import"./i18n-setup.js";import"./contacts.js";import{s as selectOrMatches,S as Sanitizer}from"./utils.js";import{d as defineCustomElement$7}from"./va-button2.js";import{d as defineCustomElement$6}from"./va-button-icon2.js";import{d as defineCustomElement$5}from"./va-card2.js";import{d as defineCustomElement$4}from"./va-icon2.js";import{d as defineCustomElement$3}from"./va-modal2.js";import{d as defineCustomElement$2}from"./va-progress-bar2.js";import{d as defineCustomElement$1}from"./va-text-input2.js";import{i as instance}from"./i18next.js";const PREFIX="usa",DROPZONE_CLASS="usa-file-input",DROPZONE=`.${DROPZONE_CLASS}`,INPUT_CLASS="usa-file-input__input",TARGET_CLASS="usa-file-input__target",INPUT=`.${INPUT_CLASS}`,BOX_CLASS="usa-file-input__box",INSTRUCTIONS_CLASS="usa-file-input__instructions",PREVIEW_CLASS="usa-file-input__preview",PREVIEW_HEADING_CLASS="usa-file-input__preview-heading",DISABLED_CLASS="usa-file-input--disabled",CHOOSE_CLASS="usa-file-input__choose",ACCEPTED_FILE_MESSAGE_CLASS="usa-file-input__accepted-files-message",DRAG_TEXT_CLASS="usa-file-input__drag-text",DRAG_CLASS="usa-file-input--drag",LOADING_CLASS="is-loading",INVALID_FILE_CLASS="has-invalid-file",GENERIC_PREVIEW_CLASS_NAME="usa-file-input__preview-image",GENERIC_PREVIEW_CLASS=`${GENERIC_PREVIEW_CLASS_NAME}--generic`,PDF_PREVIEW_CLASS=`${GENERIC_PREVIEW_CLASS_NAME}--pdf`,WORD_PREVIEW_CLASS=`${GENERIC_PREVIEW_CLASS_NAME}--word`,VIDEO_PREVIEW_CLASS=`${GENERIC_PREVIEW_CLASS_NAME}--video`,EXCEL_PREVIEW_CLASS=`${GENERIC_PREVIEW_CLASS_NAME}--excel`,SR_ONLY_CLASS="usa-sr-only",SPACER_GIF="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";let TYPE_IS_VALID=Boolean(!0),DEFAULT_ARIA_LABEL_TEXT="",DEFAULT_FILE_STATUS_TEXT="";const getFileInputContext=e=>{const t=e.closest(DROPZONE);if(!t)throw new Error(`Element is missing outer ${DROPZONE}`);const i=t.querySelector(INPUT);return{dropZoneEl:t,inputEl:i}},disable=e=>{const{dropZoneEl:t,inputEl:i}=getFileInputContext(e);i.disabled=!0,t.classList.add(DISABLED_CLASS)},ariaDisable=e=>{const{dropZoneEl:t}=getFileInputContext(e);t.classList.add(DISABLED_CLASS)},enable=e=>{const{dropZoneEl:t,inputEl:i}=getFileInputContext(e);i.disabled=!1,t.classList.remove(DISABLED_CLASS),t.removeAttribute("aria-disabled")},replaceName=e=>{const t=e.charCodeAt(0);return 32===t?"-":t>=65&&t<=90?`img_${e.toLowerCase()}`:`__000${t.toString(16).slice(-4)}`},makeSafeForID=e=>e.replace(/[^a-z0-9]/g,replaceName),createUniqueID=e=>`${e}-${Math.floor(Date.now()/1e3)}`,getItemsLabel=e=>e.hasAttribute("multiple")?"files":"file",createTargetArea=e=>{const t=document.createElement("div"),i=document.createElement("div"),s=document.createElement("div");return e.classList.remove(DROPZONE_CLASS),e.classList.add(INPUT_CLASS),t.classList.add(DROPZONE_CLASS),s.classList.add(BOX_CLASS),i.classList.add(TARGET_CLASS),i.prepend(s),e.parentNode.insertBefore(i,e),e.parentNode.insertBefore(t,i),i.appendChild(e),t.appendChild(i),i},createVisibleInstructions=e=>{const t=e.closest(DROPZONE),i=getItemsLabel(e),s=document.createElement("div"),a=`Drag ${i} here or`,r="choose from folder";return DEFAULT_ARIA_LABEL_TEXT=`${a} ${r}`,s.classList.add(INSTRUCTIONS_CLASS),s.setAttribute("aria-hidden","true"),e.setAttribute("aria-label",DEFAULT_ARIA_LABEL_TEXT),s.innerHTML=Sanitizer.escapeHTML(`<span class="${DRAG_TEXT_CLASS}">${a}</span> <span class="${CHOOSE_CLASS}">${r}</span>`),e.parentNode.insertBefore(s,e),(/rv:11.0/i.test(navigator.userAgent)||/Edge\/\d./i.test(navigator.userAgent))&&(t.querySelector(`.${DRAG_TEXT_CLASS}`).outerHTML=""),s},createSROnlyStatus=e=>{const t=document.createElement("div"),i=getItemsLabel(e),s=e.closest(DROPZONE),a=e.closest(`.${TARGET_CLASS}`);DEFAULT_FILE_STATUS_TEXT=`No ${i} selected.`,t.classList.add("usa-sr-only"),t.setAttribute("aria-live","polite"),t.textContent=DEFAULT_FILE_STATUS_TEXT,s.insertBefore(t,a)},enhanceFileInput=e=>{const t=e.hasAttribute("aria-disabled")||e.hasAttribute("disabled"),i=createTargetArea(e),s=createVisibleInstructions(e),{dropZoneEl:a}=getFileInputContext(e);return t?a.classList.add(DISABLED_CLASS):createSROnlyStatus(e),{instructions:s,dropTarget:i}},removeOldPreviews=(e,t)=>{const i=e.querySelectorAll(`.${PREVIEW_CLASS}`),s=e.querySelector(`.${PREVIEW_HEADING_CLASS}`),a=e.querySelector(`.${ACCEPTED_FILE_MESSAGE_CLASS}`);s&&(s.outerHTML=""),a&&(a.outerHTML="",e.classList.remove("has-invalid-file")),null!==i&&(t&&t.removeAttribute("hidden"),Array.prototype.forEach.call(i,(e=>{e.parentNode.removeChild(e)})))},updateStatusMessage=(e,t,i)=>{const s=e;let a=DEFAULT_FILE_STATUS_TEXT;1===t.length?a=`You have selected the file: ${i}`:t.length>1&&(a=`You have selected ${t.length} files: ${i.join(", ")}`),setTimeout((()=>{s.textContent=a}),1e3)},addPreviewHeading=(e,t)=>{const i=document.createElement("div"),s=e.closest(`.${TARGET_CLASS}`),a=s.querySelector(`.${INSTRUCTIONS_CLASS}`);let r="Change file",o="";1===t.length?o=Sanitizer.escapeHTML(`Selected file <span class="usa-file-input__choose">${r}</span>`):t.length>1&&(r="Change files",o=Sanitizer.escapeHTML(`${t.length} files selected <span class="usa-file-input__choose">${r}</span>`)),a.setAttribute("hidden","true"),i.classList.add(PREVIEW_HEADING_CLASS),i.innerHTML=o,s.insertBefore(i,a),e.setAttribute("aria-label",r)},handleChange=(e,t,i,s)=>{const a=t.getAttribute("multiple")?e.target.files:[e.target.files[0]],r=s.closest(`.${DROPZONE_CLASS}`).querySelector(".usa-sr-only"),o=[];removeOldPreviews(s,i);for(let e=0;e<a.length;e+=1){const t=new FileReader,r=a[e].name;let n;o.push(r),t.onloadstart=function(){n=createUniqueID(makeSafeForID(r)),i.insertAdjacentHTML("afterend",Sanitizer.escapeHTML(`<div class="${PREVIEW_CLASS}" aria-hidden="true">\n <img id="${n}" src="${SPACER_GIF}" alt="" class="${GENERIC_PREVIEW_CLASS_NAME} is-loading"/>${r}\n <div>`))},t.onloadend=function(){const e=s.querySelector(`#${n}`);r.indexOf(".pdf")>0?e.setAttribute("onerror",`this.onerror=null;this.src="${SPACER_GIF}"; this.classList.add("${PDF_PREVIEW_CLASS}")`):r.indexOf(".doc")>0||r.indexOf(".pages")>0?e.setAttribute("onerror",`this.onerror=null;this.src="${SPACER_GIF}"; this.classList.add("${WORD_PREVIEW_CLASS}")`):r.indexOf(".xls")>0||r.indexOf(".numbers")>0?e.setAttribute("onerror",`this.onerror=null;this.src="${SPACER_GIF}"; this.classList.add("${EXCEL_PREVIEW_CLASS}")`):r.indexOf(".mov")>0||r.indexOf(".mp4")>0?e.setAttribute("onerror",`this.onerror=null;this.src="${SPACER_GIF}"; this.classList.add("${VIDEO_PREVIEW_CLASS}")`):e.setAttribute("onerror",`this.onerror=null;this.src="${SPACER_GIF}"; this.classList.add("${GENERIC_PREVIEW_CLASS}")`),e.classList.remove("is-loading"),e.src=t.result},a[e]&&t.readAsDataURL(a[e])}0===a.length?t.setAttribute("aria-label",DEFAULT_ARIA_LABEL_TEXT):addPreviewHeading(t,a),updateStatusMessage(r,a,o)},preventInvalidFiles=(e,t,i,s)=>{const a=t.getAttribute("accept");s.classList.remove("has-invalid-file");const r=(e,t)=>{let i=!1;return e.indexOf(t)>=0&&(i=!0),i};if(a){const o=a.split(","),n=document.createElement("div");let l=!0;const d=e.target.files||e.dataTransfer.files;for(let e=0;e<d.length;e+=1){const t=d[e];if(!l)break;for(let e=0;e<o.length;e+=1){const i=o[e];if(l=t.name.indexOf(i)>0||r(t.type,i.replace(/\*/g,"")),l){TYPE_IS_VALID=!0;break}}}l||(removeOldPreviews(s,i),t.value="",s.insertBefore(n,t),n.textContent=t.dataset.errormessage||"This is not a valid file type.",n.classList.add(ACCEPTED_FILE_MESSAGE_CLASS),s.classList.add("has-invalid-file"),TYPE_IS_VALID=!1,e.preventDefault(),e.stopPropagation())}},handleUpload=(e,t,i,s)=>{preventInvalidFiles(e,t,i,s),!0===TYPE_IS_VALID&&handleChange(e,t,i,s)},fileInput={init(e){selectOrMatches(DROPZONE,e).forEach((e=>{const{instructions:t,dropTarget:i}=enhanceFileInput(e);i.addEventListener("dragover",(function(){this.classList.add(DRAG_CLASS)}),!1),i.addEventListener("dragleave",(function(){this.classList.remove(DRAG_CLASS)}),!1),i.addEventListener("drop",(function(s){s.preventDefault(),this.classList.remove(DRAG_CLASS);const a=s.dataTransfer;if(s.target.files=a.files,a.files.length>1)return;handleUpload(s,e,t,i);const r=new CustomEvent("change",{detail:{files:a.files}});e.dispatchEvent(r)}),!1),e.addEventListener("input",(s=>handleUpload(s,e,t,i)),!1)}))},teardown(e){selectOrMatches(INPUT,e).forEach((e=>{const t=e.parentElement.parentElement;t.parentElement.replaceChild(e,t),e.className=DROPZONE_CLASS}))},getFileInputContext:getFileInputContext,disable:disable,ariaDisable:ariaDisable,enable:enable},extensionToMimeType={".txt":"text/plain",".pdf":"application/pdf",".doc":"application/msword",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".odt":"application/vnd.oasis.opendocument.text",".rtf":"application/rtf",".csv":"text/csv",".xls":"application/vnd.ms-excel",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".ppt":"application/vnd.ms-powerpoint",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".jpg":"image/jpeg",".jpeg":"image/jpeg",".png":"image/png",".gif":"image/gif",".bmp":"image/bmp",".webp":"image/webp",".tif":"image/tiff",".tiff":"image/tiff",".svg":"image/svg+xml",".mp3":"audio/mpeg",".wav":"audio/wav",".ogg":"audio/ogg",".m4a":"audio/mp4",".aac":"audio/aac",".mp4":"video/mp4",".avi":"video/x-msvideo",".mov":"video/quicktime",".wmv":"video/x-ms-wmv",".flv":"video/x-flv",".mkv":"video/x-matroska",".webm":"video/webm",".zip":"application/zip",".rar":"application/x-rar-compressed",".7z":"application/x-7z-compressed",".tar":"application/x-tar",".gz":"application/gzip",".json":"application/json",".xml":"application/xml",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".heic":"image/heic"},vaFileInputCss='button:not([disabled]):focus,select:not([disabled]):focus,a:not([disabled]):focus,h1:focus,input:not([disabled]):focus,textarea:not([disabled]):focus,#form-question [role=\'option\']:focus,*[tabindex]:focus,a.va-sidenav-submenu__link:focus{outline:2px solid var(--vads-color-action-focus-on-light);outline-offset:2px;z-index:2}h1{margin-top:0}h1,h2,h3,h4,h5,h6{margin-bottom:0;margin-top:0;clear:both}*+h1,*+h2,*+h3,*+h4,*+h5,*+h6{margin-top:1.5em}h1+*,h2+*,h3+*,h4+*,h5+*,h6+*{margin-top:1em}h1{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:2.44rem;line-height:1.2;font-weight:700}h2{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.95rem;line-height:1.2;font-weight:700}h3{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.34rem;line-height:1.2;font-weight:700}h4{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:0.98rem;line-height:1.2;font-weight:700}h5{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:0.91rem;line-height:1.2;font-weight:700}h6{font-family:Source Sans Pro Web, Helvetica Neue, Helvetica, Roboto, Arial, sans-serif;font-size:0.87rem;line-height:1.1;font-weight:normal;letter-spacing:0.025em;text-transform:uppercase}h1,h2,h3,h4,h5{font-family:Bitter, Georgia, Cambria, "Times New Roman", Times, serif;font-weight:700}h6{font-family:"Source Sans Pro Web", "Source Sans Pro", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;font-weight:700}h1{margin-top:0;font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.25rem}h4{font-size:1.0625rem}h5{font-size:0.9375rem}h6{font-size:0.9375rem}@media (max-width: 481px){h1{font-size:1.875rem}h2{font-size:1.5rem}}h6{margin:0.5em 0 0;text-transform:none;font-weight:700}@media (max-width: 481px){h1{font-size:1.875rem}h2{font-size:1.5rem}}h6{margin:0.5em 0 0;text-transform:none;font-weight:700}:host legend :is(h1,h2,h3,h4,h5,h6),:host label :is(h1,h2,h3,h4,h5,h6){display:inline;margin:0px}:host legend :is(h1,h2,h3,h4,h5),:host label :is(h1,h2,h3,h4,h5){font-family:var(--font-serif)}:host h1+*,:host h2+*,:host h3+*,:host h4+*,:host h5+*,:host h6+*{margin-top:unset}:host #form-question{margin-bottom:1rem}.usa-hint{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3}.usa-label{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3;display:block;font-weight:normal;margin-top:1.5rem;max-width:30rem}.usa-label--error{font-weight:700;margin-top:0}.usa-label--required{color:#b50909}.usa-hint{color:#71767a}.usa-hint--required{color:#b50909}.usa-sr-only{position:absolute;left:-999em;right:auto}.usa-error-message{padding-bottom:0.25rem;padding-top:0.25rem;color:#b50909;display:block;font-weight:700}.usa-error-message{font-size:1.06rem}:host([error]:not([error=""])),:host(.va-form-group--error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){border-left:none}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host([error]:not([error=""])),:host(.va-form-group--error){margin-left:-0.9rem}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{margin-left:-0.9rem}}@media screen and (max-width: 1023px){:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){padding-left:0}}[hidden]{display:none}:host{display:block;font-family:var(--font-source-sans);font-size:16.96px;}:host .label-header{color:var(--vads-color-base);font-weight:var(--font-weight-normal)}:host .label-header-tag{margin:0;display:inline-block}:host .file-input-wrapper{display:block;max-width:30rem;width:100%;position:relative;margin:8px 0}:host .file-input{cursor:pointer;height:100%;width:100%;max-width:none;top:0;left:0;z-index:1;margin:0;position:absolute;text-indent:-999em;-webkit-box-sizing:border-box;box-sizing:border-box}:host .file-input-target{border:1px dashed var(--vads-color-action-border-base-active-on-dark);display:block;margin-top:0.3125rem;position:relative;text-align:center;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}:host .file-input-target.file-input-target-error{border:2px dashed var(--vads-color-secondary-dark)}:host .file-input-box{background:var(--vads-color-white);height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:2}:host .file-input-instructions{font-size:1.06rem;padding:1.25rem 0.625rem;pointer-events:none;position:relative;z-index:3}:host .file-input-choose-text{color:var(--vads-color-link);text-decoration:underline;font-weight:var(--font-weight-normal)}:host .file-icon{color:var(--vads-color-primary-alt-darkest)}:host .selected-files-wrapper{background-color:var(--vads-color-primary-lighter);border:1px solid var(--vads-color-base-light)}:host .selected-files-label{color:var(--vads-color-base);font-weight:var(--font-weight-bold);font-size:1.06rem;border-bottom:1px solid var(--vads-color-white);margin-bottom:8px;padding:8px}:host .va-card{margin:8px}:host .file-label{color:var(--vads-color-base);font-weight:var(--font-weight-bold);font-size:1.06rem;padding:0 8px;display:block;width:100%;word-wrap:break-word;word-break:break-word;overflow:hidden}:host #input-error-message{padding:0 8px;width:100%}:host .file-size-label,:host .file-status-label{color:var(--vads-color-base-dark);font-weight:var(--font-weight-normal);font-size:1.06rem;padding:0 8px;display:block}:host .file-status-label{font-style:italic}:host .file-info-section{padding:0 8px 8px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .file-button-section{margin-top:8px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-direction:row;flex-direction:row}:host .file-button-section>va-button-icon{font-size:1.06rem}@media screen and (max-width: 320px){:host .file-button-section{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}}:host .with-separator{border-top:1px solid var(--vads-color-base-lighter)}:host .vads-u-line-height--2{line-height:1.15}:host .thumbnail-container{height:40px;width:40px;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}:host .thumbnail-preview{max-width:40px;width:auto;max-height:40px;height:auto}:host .thumbnail-error{color:#b21d38}:host va-progress-bar{font-size:var(--vads-font-size-root);display:block;margin-left:16px}:host .uploading-status{font-style:var(--font-style-italic)}:host(.has-error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host(.has-error){margin-left:-0.9rem}}.required{color:var(--vads-color-secondary-dark);margin-left:0.25rem}h1 .required,h2 .required,h3 .required,h4 .required,h5 .required,h6 .required{font-family:var(--font-source-sans);font-size:initial;font-weight:initial}',VaFileInputStyle0=vaFileInputCss,VaFileInput=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.vaChange=createEvent(this,"vaChange",7),this.vaPasswordChange=createEvent(this,"vaPasswordChange",7),this.vaFileInputError=createEvent(this,"vaFileInputError",7),this.componentLibraryAnalytics=createEvent(this,"component-library-analytics",7),this.uploadStatus="idle",this.chooseFileString="choose from folder",this.dragFileString="Drag a file here or ",this.FILE_PREVIEW_SIZE_LIMIT=5242880,this.handleChange=e=>{const t=e.target;this.fileContents=null,t.files&&t.files.length>0&&this.handleFile(t.files[0]),t.value=""},this.handleDrop=e=>{e.preventDefault(),e.stopPropagation();const t=e.dataTransfer.files;t.length>0&&this.handleFile(t[0])},this.getExtension=e=>{const t=e.name.replace(/^\./,"");return(t.includes(".")?`.${t.split(".").pop()}`:null)||e.type},this.getFileTypeErrorMessage=e=>{const t=this.getExtension(e);return`We do not accept ${t?`${t} files`:"this file type"}. Choose a new file.`},this.handleFile=(e,t=!0)=>{let i=null;if(this.accept){const t=this.normalizeAcceptProp(this.accept);this.isAcceptedFileType(e.type,t)||(this.removeFile(!1),i=this.getFileTypeErrorMessage(e))}if(0===e.size&&(i="The file you selected is empty. Files must be larger than 0B."),e.size>this.maxFileSize&&(i=`\n We can't upload your file because it's too big. Files must be less than ${this.formatFileSize(this.maxFileSize)}.`),e.size<this.minFileSize&&(i=`We can't upload your file because it's too small. Files must be at least ${this.formatFileSize(this.minFileSize)}.`),this.uploadedFile=null,this.file=e,i)return this.internalError=i,this.vaFileInputError.emit({error:i}),void this.resetState();t&&this.vaChange.emit({files:[this.file]}),this.uploadStatus="success",this.internalError=null,e.size<this.FILE_PREVIEW_SIZE_LIMIT&&this.generateFileContents(this.file),this.updateStatusMessage(`You have selected the file: ${this.file.name}`),this.el.focus(),this.enableAnalytics&&this.componentLibraryAnalytics.emit({componentName:"va-file-input",action:"change",details:{label:this.label}})},this.removeFile=(e=!0)=>{this.closeModal(),this.uploadStatus="idle",this.internalError=null,e&&this.vaChange.emit({files:[]}),this.file=null,this.uploadedFile=null,this.updateStatusMessage("File deleted. No file selected."),this.el.focus()},this.openModal=()=>{this.el.shadowRoot.querySelector("va-modal").setAttribute("status","warning"),this.showModal=!0},this.closeModal=()=>{this.showModal=!1,setTimeout((()=>{this.fileInputRef.focus()}),0)},this.changeFile=()=>{this.fileInputRef&&this.fileInputRef.click()},this.formatFileSize=e=>{const t=["B","KB","MB","GB","TB"];if(0===e)return"0 B";const i=Math.floor(Math.log(e)/Math.log(1024));return 0===i?`${e} ${t[i]}`:`${(e/Math.pow(1024,i)).toFixed(i<2?0:1)} ${t[i]}`},this.normalizeAcceptProp=e=>e.split(",").map((e=>(e=e.trim()).startsWith(".")?extensionToMimeType[e]:e)),this.isAcceptedFileType=(e,t)=>{for(const i of t){if(i===e)return!0;if(i.endsWith("/*")&&e.startsWith(i.slice(0,-1)))return!0}return!1},this.renderLabelOrHeader=(e,t,i)=>{const s=t?h("span",{class:"required"}," ",instance.t("required")):null;return h("div",{class:"label-header"},i&&i>=1&&i<=6?h(`h${i}`,{htmlFor:"fileInputField",part:"label",class:"label-header-tag"},e,s):h("label",{htmlFor:"fileInputField",part:"label",class:"usa-label"},e,s))},this.file=void 0,this.fileContents=void 0,this.internalError=void 0,this.showModal=!1,this.showSeparator=!0,this.label=void 0,this.name=void 0,this.value=void 0,this.required=!1,this.accept=void 0,this.error=void 0,this.hint=void 0,this.statusText=void 0,this.uploadMessage=null,this.enableAnalytics=!1,this.headerSize=void 0,this.headless=!1,this.readOnly=!1,this.encrypted=!1,this.uploadedFile=void 0,this.maxFileSize=1/0,this.minFileSize=0,this.percentUploaded=null,this.passwordError=void 0}handleValueChange(e){setTimeout((()=>{this.updateStatusMessage(e)}))}percentHandler(e){e>=100&&this.resetState()}handleError(e,t){t&&e&&this.resetState()}resetState(){this.fileContents=null,this.uploadStatus="idle",this.percentUploaded=null,forceUpdate(this.el)}updateStatusMessage(e){setTimeout((()=>{const t=this.el.shadowRoot.querySelector("#statusMessage");t&&(t.textContent=e)}),1e3)}async generateFileContents(e){if(!e)return;const t=e.slice(0,20),i=await t.arrayBuffer();if(new Uint8Array(i).every((e=>0===e)))return;const s=new FileReader;this.fileType=e.type,s.onloadend=()=>{this.fileContents=s.result},!this.fileType||"application/pdf"!==this.fileType&&!this.fileType.startsWith("image/")||this.fileType.includes("heic")||s.readAsDataURL(e)}componentWillRender(){const e=!!this.el.querySelector(":scope > *"),t=!(!this.value&&!this.file||this.readOnly);this.showSeparator=e||t}componentDidLoad(){fileInput.init(this.el)}connectedCallback(){this.el.addEventListener("change",this.handleChange)}disconnectedCallback(){this.el.removeEventListener("change",this.handleChange)}getDefaultUploadMessage(){return h("span",null,this.dragFileString,h("span",{class:"file-input-choose-text"},this.chooseFileString))}handlePasswordChange(e){this.vaPasswordChange.emit({password:e.target.value})}render(){const{label:e,name:t,required:i,accept:s,error:a,hint:r,dragFileString:o,chooseFileString:n,uploadMessage:l,headerSize:d,fileContents:c,fileType:p,headless:u,value:m,readOnly:f,encrypted:g,statusText:b,uploadedFile:v,percentUploaded:E,passwordError:S,internalError:A}=this;m&&!this.file&&this.handleFile(m,!1);const{uploadStatus:_,file:C}=this,x=a||A,L=`${r?"input-hint-message":""} ${x?"input-error-message":""}`.trim()||null,w=("file-input-target "+(x?"file-input-target-error":"")).trim();let y=h("div",{key:"1be2173ac82c62d752bcd6cb2df252d49ad8e82f",class:"thumbnail-container"},h("svg",{key:"c58ec29d3a3a66bed6a1dfc21c08afdd40f61853",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512",fill:"#07648d",width:"40px",height:"40px"},h("path",{key:"2c52d9de3f4036fdad9cdf1583c4eb400d2f0878",d:"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm160-14.1v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z"})));x?y=h("div",{key:"ed76a5e6b2d6f03db7bf4d5e8bd2e1c1bd9ca339",class:"thumbnail-container"},h("va-icon",{key:"4f000236785434d191c72b852db5d26b6039c9fb",icon:"error",size:3,class:"thumbnail-preview thumbnail-error"})):c&&(p.startsWith("image/")?y=h("div",{key:"063672591b3ce4295609ee1408588205cc594347",class:"thumbnail-container","aria-hidden":"true"},h("img",{key:"10c3e58c18b797b651b3ca153668ece409710357",class:"thumbnail-preview",src:c,alt:"image"})):"application/pdf"===p&&(y=h("div",{key:"82b9f4f8384d68770262d3f24467bcbbd792fb2e",class:"thumbnail-container","aria-hidden":"true"},h("object",{key:"cec3668d7d579439a656e36f7f6af4d71493af78",class:"thumbnail-preview",data:c,type:"application/pdf",tabIndex:-1}))));let I=u?"headless-selected-files-wrapper":"selected-files-wrapper";const T="usa-hint"+(u?" usa-sr-only":""),F=null!==E&&E<100;let R="file-status-label";return F&&(R=`${R} uploading-status`),h(Host,{key:"defb19a05b1c19ddb6ae3b74b2a83367f46a9acd",class:{"has-error":!!x}},!f&&h("span",{key:"9262a4982379c1c029913c256310a5964a5dee00",class:{"usa-sr-only":!!u}},e&&this.renderLabelOrHeader(e,i,d)),r&&!f&&h("div",{key:"ba691a847704d4732c3828ec6fb2c142b576e0b4",class:T,id:"input-hint-message"},r),h("div",{key:"171535846a71cc09377269c5e9666863d00dc1df",class:"file-input-wrapper",onDrop:this.handleDrop},h("input",{key:"b704c188faaaea962372f5e2bbb08be982cf6df1",id:"fileInputField",class:"file-input","aria-label":`${e}${i?" "+instance.t("required"):""}. ${o}${n}`,style:{visibility:"success"===_||v||A?"hidden":"unset"},type:"file",ref:e=>this.fileInputRef=e,name:t,accept:s,"aria-describedby":L,onChange:this.handleChange}),v||C?h("div",{class:I},!u&&h("div",{class:"selected-files-label"},f?"Files you uploaded":"Selected files"),h("div",{class:"usa-sr-only","aria-live":"polite",id:"statusMessage"}),h("va-card",{class:"va-card"},h("div",{class:"file-info-section"},y,h("div",{class:"file-info-group vads-u-line-height--2"},h("span",{class:"file-label"},C?C.name:v.name),x&&h("span",{id:"input-error-message",role:"alert"},h("span",{class:"usa-sr-only"},instance.t("error")),h("span",{"aria-live":"polite",class:"usa-error-message"},x)),!F&&h("span",{class:"file-size-label"},this.formatFileSize(C?C.size:v.size)),h("span",{class:R,"aria-live":"polite"},F?"Uploading...":b))),h("div",{class:this.showSeparator?"with-separator":void 0},!f&&F&&h(Fragment,null,h("va-progress-bar",{percent:E}),h("va-button-icon",{buttonType:"cancel",onClick:this.resetState.bind(this)})),!F&&h(Fragment,null,g&&h("va-text-input",{type:"password",onInput:e=>{this.handlePasswordChange(e)},label:"File password",required:!0,error:S}),h("div",{class:"additional-info-slot"},h("slot",null))),!f&&!F&&h(Fragment,null,h("div",{class:"file-button-section"},h("va-button-icon",{buttonType:"change-file",onClick:this.changeFile,label:`change file ${C?C.name:v.name}`}),h("va-button-icon",{buttonType:"delete",onClick:this.openModal,label:`delete file ${C?C.name:v.name}`})),h("va-modal",{modalTitle:"Delete this file?",visible:this.showModal,primaryButtonText:"Yes, delete this",secondaryButtonText:"No, keep this",onCloseEvent:this.closeModal,onPrimaryButtonClick:()=>this.removeFile(!0),onSecondaryButtonClick:this.closeModal},"We'll delete the uploaded file"," ",h("span",{class:"file-label"},C?C.name:v.name)))))):h("div",null,h("span",{id:"file-input-error-alert",role:"alert"},x&&h(Fragment,null,h("span",{class:"usa-sr-only"},instance.t("error")),h("span",{class:"usa-error-message"},x))),h("div",{class:"usa-sr-only","aria-live":"polite",id:"statusMessage"}),h("div",{class:w},h("div",{class:"file-input-box"}),h("div",{class:"file-input-instructions"},l||this.getDefaultUploadMessage())))))}get el(){return this}static get watchers(){return{statusText:["handleValueChange"],percentUploaded:["percentHandler"],error:["handleError"]}}static get style(){return VaFileInputStyle0}},[1,"va-file-input",{label:[1],name:[1],value:[16],required:[4],accept:[1],error:[1],hint:[1],statusText:[1,"status-text"],uploadMessage:[16],enableAnalytics:[4,"enable-analytics"],headerSize:[2,"header-size"],headless:[4],readOnly:[4,"read-only"],encrypted:[4],uploadedFile:[1040],maxFileSize:[2,"max-file-size"],minFileSize:[2,"min-file-size"],percentUploaded:[1538,"percent-uploaded"],passwordError:[1,"password-error"],file:[32],fileContents:[32],internalError:[32],showModal:[32],showSeparator:[32]},void 0,{statusText:["handleValueChange"],percentUploaded:["percentHandler"],error:["handleError"]}]);function defineCustomElement(){"undefined"!=typeof customElements&&["va-file-input","va-button","va-button-icon","va-card","va-icon","va-modal","va-progress-bar","va-text-input"].forEach((e=>{switch(e){case"va-file-input":customElements.get(e)||customElements.define(e,VaFileInput);break;case"va-button":customElements.get(e)||defineCustomElement$7();break;case"va-button-icon":customElements.get(e)||defineCustomElement$6();break;case"va-card":customElements.get(e)||defineCustomElement$5();break;case"va-icon":customElements.get(e)||defineCustomElement$4();break;case"va-modal":customElements.get(e)||defineCustomElement$3();break;case"va-progress-bar":customElements.get(e)||defineCustomElement$2();break;case"va-text-input":customElements.get(e)||defineCustomElement$1()}}))}export{VaFileInput as V,defineCustomElement as d};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{proxyCustomElement,HTMLElement,createEvent,h,Host}from"@stencil/core/internal/client";import{c as classnames}from"./index2.js";import{d as defineCustomElement$2}from"./va-button2.js";import{d as defineCustomElement$1}from"./va-icon2.js";function _toConsumableArray(t){if(Array.isArray(t)){for(var e=0,o=Array(t.length);e<t.length;e++)o[e]=t[e];return o}return Array.from(t)}var hasPassiveEvents=!1;if("undefined"!=typeof window){var passiveTestOptions={get passive(){hasPassiveEvents=!0}};window.addEventListener("testPassive",null,passiveTestOptions),window.removeEventListener("testPassive",null,passiveTestOptions)}var isIosDevice="undefined"!=typeof window&&window.navigator&&window.navigator.platform&&(/iP(ad|hone|od)/.test(window.navigator.platform)||"MacIntel"===window.navigator.platform&&window.navigator.maxTouchPoints>1),locks=[],documentListenerAdded=!1,initialClientY=-1,previousBodyOverflowSetting=void 0,previousBodyPosition=void 0,previousBodyPaddingRight=void 0,allowTouchMove=function(t){return locks.some((function(e){return!(!e.options.allowTouchMove||!e.options.allowTouchMove(t))}))},preventDefault=function(t){var e=t||window.event;return!!allowTouchMove(e.target)||e.touches.length>1||(e.preventDefault&&e.preventDefault(),!1)},setOverflowHidden=function(t){if(void 0===previousBodyPaddingRight){var e=!!t&&!0===t.reserveScrollBarGap,o=window.innerWidth-document.documentElement.clientWidth;if(e&&o>0){var a=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right"),10);previousBodyPaddingRight=document.body.style.paddingRight,document.body.style.paddingRight=a+o+"px"}}void 0===previousBodyOverflowSetting&&(previousBodyOverflowSetting=document.body.style.overflow,document.body.style.overflow="hidden")},restoreOverflowSetting=function(){void 0!==previousBodyPaddingRight&&(document.body.style.paddingRight=previousBodyPaddingRight,previousBodyPaddingRight=void 0),void 0!==previousBodyOverflowSetting&&(document.body.style.overflow=previousBodyOverflowSetting,previousBodyOverflowSetting=void 0)},setPositionFixed=function(){return window.requestAnimationFrame((function(){if(void 0===previousBodyPosition){previousBodyPosition={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left};var t=window,e=t.scrollY,o=t.scrollX,a=t.innerHeight;document.body.style.position="fixed",document.body.style.top=-e,document.body.style.left=-o,setTimeout((function(){return window.requestAnimationFrame((function(){var t=a-window.innerHeight;t&&e>=a&&(document.body.style.top=-(e+t))}))}),300)}}))},restorePositionSetting=function(){if(void 0!==previousBodyPosition){var t=-parseInt(document.body.style.top,10),e=-parseInt(document.body.style.left,10);document.body.style.position=previousBodyPosition.position,document.body.style.top=previousBodyPosition.top,document.body.style.left=previousBodyPosition.left,window.scrollTo(e,t),previousBodyPosition=void 0}},isTargetElementTotallyScrolled=function(t){return!!t&&t.scrollHeight-t.scrollTop<=t.clientHeight},handleScroll=function(t,e){var o=t.targetTouches[0].clientY-initialClientY;return!allowTouchMove(t.target)&&(e&&0===e.scrollTop&&o>0||isTargetElementTotallyScrolled(e)&&o<0?preventDefault(t):(t.stopPropagation(),!0))},disableBodyScroll=function(t,e){if(t){if(!locks.some((function(e){return e.targetElement===t}))){var o={targetElement:t,options:e||{}};locks=[].concat(_toConsumableArray(locks),[o]),isIosDevice?setPositionFixed():setOverflowHidden(e),isIosDevice&&(t.ontouchstart=function(t){1===t.targetTouches.length&&(initialClientY=t.targetTouches[0].clientY)},t.ontouchmove=function(e){1===e.targetTouches.length&&handleScroll(e,t)},documentListenerAdded||(document.addEventListener("touchmove",preventDefault,hasPassiveEvents?{passive:!1}:void 0),documentListenerAdded=!0))}}else console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.")},clearAllBodyScrollLocks=function(){isIosDevice&&(locks.forEach((function(t){t.targetElement.ontouchstart=null,t.targetElement.ontouchmove=null})),documentListenerAdded&&(document.removeEventListener("touchmove",preventDefault,hasPassiveEvents?{passive:!1}:void 0),documentListenerAdded=!1),initialClientY=-1),isIosDevice?restorePositionSetting():restoreOverflowSetting(),locks=[]},getDefaultParent=function(t){return"undefined"==typeof document?null:(Array.isArray(t)?t[0]:t).ownerDocument.body},counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={},lockCount=0,hideOthers=function(t,e,o){void 0===e&&(e=getDefaultParent(t)),void 0===o&&(o="data-aria-hidden");var a=Array.isArray(t)?t:[t];markerMap[o]||(markerMap[o]=new WeakMap);var n=markerMap[o],s=[],i=new Set,u=function(t){t&&!i.has(t)&&(i.add(t),u(t.parentNode))};a.forEach(u);var r=function(t){!t||a.indexOf(t)>=0||Array.prototype.forEach.call(t.children,(function(t){if(i.has(t))r(t);else{var e=t.getAttribute("aria-hidden"),a=null!==e&&"false"!==e,u=(counterMap.get(t)||0)+1,l=(n.get(t)||0)+1;counterMap.set(t,u),n.set(t,l),s.push(t),1===u&&a&&uncontrolledNodes.set(t,!0),1===l&&t.setAttribute(o,"true"),a||t.setAttribute("aria-hidden","true")}}))};return r(e),i.clear(),lockCount++,function(){s.forEach((function(t){var e=counterMap.get(t)-1,a=n.get(t)-1;counterMap.set(t,e),n.set(t,a),e||(uncontrolledNodes.has(t)||t.removeAttribute("aria-hidden"),uncontrolledNodes.delete(t)),a||t.removeAttribute(o)})),--lockCount||(counterMap=new WeakMap,counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={})}};const focusableQueryString=['a[href]:not([tabindex^="-"])','.hydrated:not([tabindex^="-"]):not(va-radio-option)','[tabindex]:not([tabindex^="-"])','input:not([type=hidden]):not([tabindex^="-"])','textarea:not([tabindex^="-"])','button:not([tabindex^="-"])','select:not([tabindex^="-"])'].join(","),vaModalCss='button:not([disabled]):focus,select:not([disabled]):focus,a:not([disabled]):focus,h1:focus,input:not([disabled]):focus,textarea:not([disabled]):focus,#form-question [role=\'option\']:focus,*[tabindex]:focus,a.va-sidenav-submenu__link:focus{outline:2px solid var(--vads-color-action-focus-on-light);outline-offset:2px;z-index:2}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:5px;color:var(--vads-button-color-text-primary-alt-on-light);cursor:pointer;display:inline-block;font-family:var(--font-source-sans);font-size:1rem;font-weight:700;line-height:1;padding:0.625rem 1.25rem;text-align:center;text-decoration:none}.usa-hint{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3}.usa-sr-only{position:absolute;left:-999em;right:auto}.usa-label{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3;display:block;font-weight:normal;margin-top:1.5rem;max-width:30rem}.usa-label--error{font-weight:700;margin-top:0}.usa-label--required{color:#b50909}.usa-error-message{padding-bottom:0.25rem;padding-top:0.25rem;color:#b50909;display:block;font-weight:700}.usa-hint{color:#71767a}.usa-hint--required{color:#b50909}.usa-button{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:0.9;color:white;background-color:#005ea2;-webkit-appearance:none;-moz-appearance:none;appearance:none;-ms-flex-align:center;align-items:center;border:0;border-radius:0.25rem;cursor:pointer;-webkit-column-gap:0.5rem;-moz-column-gap:0.5rem;column-gap:0.5rem;display:-ms-inline-flexbox;display:inline-flex;font-weight:700;-ms-flex-pack:center;justify-content:center;margin-right:0.5rem;padding:0.75rem 1.25rem;text-align:center;text-decoration:none;width:100%}@media all and (min-width: 30em){.usa-button{width:auto}}.usa-button:visited{color:white}.usa-button:hover,.usa-button.usa-button--hover{color:white;background-color:#1a4480;border-bottom:0;text-decoration:none}.usa-button:active,.usa-button.usa-button--active{color:white;background-color:#162e51}.usa-button:not([disabled]):focus,.usa-button:not([disabled]).usa-focus{outline-offset:0.25rem}.usa-button:disabled,.usa-button[aria-disabled=true]{color:#454545;background-color:#c9c9c9;cursor:not-allowed;opacity:1}.usa-button:disabled:hover,.usa-button:disabled:active,.usa-button:disabled:focus,.usa-button:disabled.usa-focus,.usa-button[aria-disabled=true]:hover,.usa-button[aria-disabled=true]:active,.usa-button[aria-disabled=true]:focus,.usa-button[aria-disabled=true].usa-focus{color:#454545;background-color:#c9c9c9}@media (forced-colors: active){.usa-button:disabled,.usa-button[aria-disabled=true]{border:0;color:GrayText}.usa-button:disabled:hover,.usa-button:disabled:active,.usa-button:disabled:focus,.usa-button:disabled.usa-focus,.usa-button[aria-disabled=true]:hover,.usa-button[aria-disabled=true]:active,.usa-button[aria-disabled=true]:focus,.usa-button[aria-disabled=true].usa-focus{color:GrayText}}.usa-button:disabled.usa-button--hover,.usa-button:disabled.usa-button--active,.usa-button[aria-disabled=true].usa-button--hover,.usa-button[aria-disabled=true].usa-button--active{color:#454545;background-color:#c9c9c9;cursor:not-allowed;opacity:1}.usa-button:disabled.usa-button--hover:hover,.usa-button:disabled.usa-button--hover:active,.usa-button:disabled.usa-button--hover:focus,.usa-button:disabled.usa-button--hover.usa-focus,.usa-button:disabled.usa-button--active:hover,.usa-button:disabled.usa-button--active:active,.usa-button:disabled.usa-button--active:focus,.usa-button:disabled.usa-button--active.usa-focus,.usa-button[aria-disabled=true].usa-button--hover:hover,.usa-button[aria-disabled=true].usa-button--hover:active,.usa-button[aria-disabled=true].usa-button--hover:focus,.usa-button[aria-disabled=true].usa-button--hover.usa-focus,.usa-button[aria-disabled=true].usa-button--active:hover,.usa-button[aria-disabled=true].usa-button--active:active,.usa-button[aria-disabled=true].usa-button--active:focus,.usa-button[aria-disabled=true].usa-button--active.usa-focus{color:#454545;background-color:#c9c9c9}@media (forced-colors: active){.usa-button:disabled.usa-button--hover,.usa-button:disabled.usa-button--active,.usa-button[aria-disabled=true].usa-button--hover,.usa-button[aria-disabled=true].usa-button--active{border:0;color:GrayText}.usa-button:disabled.usa-button--hover:hover,.usa-button:disabled.usa-button--hover:active,.usa-button:disabled.usa-button--hover:focus,.usa-button:disabled.usa-button--hover.usa-focus,.usa-button:disabled.usa-button--active:hover,.usa-button:disabled.usa-button--active:active,.usa-button:disabled.usa-button--active:focus,.usa-button:disabled.usa-button--active.usa-focus,.usa-button[aria-disabled=true].usa-button--hover:hover,.usa-button[aria-disabled=true].usa-button--hover:active,.usa-button[aria-disabled=true].usa-button--hover:focus,.usa-button[aria-disabled=true].usa-button--hover.usa-focus,.usa-button[aria-disabled=true].usa-button--active:hover,.usa-button[aria-disabled=true].usa-button--active:active,.usa-button[aria-disabled=true].usa-button--active:focus,.usa-button[aria-disabled=true].usa-button--active.usa-focus{color:GrayText}}@media (forced-colors: active){.usa-button:disabled:not(.usa-button--unstyled),.usa-button[aria-disabled=true]:not(.usa-button--unstyled){border:2px solid GrayText}}.usa-button .usa-icon{-ms-flex-negative:0;flex-shrink:0}@media (forced-colors: active){.usa-button:not(.usa-button--unstyled){border:2px solid transparent}}.usa-button--accent-cool{color:#1b1b1b;background-color:#00bde3}.usa-button--accent-cool:visited{color:#1b1b1b;background-color:#00bde3}.usa-button--accent-cool:hover,.usa-button--accent-cool.usa-button--hover{color:#1b1b1b;background-color:#28a0cb}.usa-button--accent-cool:active,.usa-button--accent-cool.usa-button--active{color:white;background-color:#07648d}.usa-button--accent-warm{color:#1b1b1b;background-color:#fa9441}.usa-button--accent-warm:visited{color:#1b1b1b;background-color:#fa9441}.usa-button--accent-warm:hover,.usa-button--accent-warm.usa-button--hover{color:white;background-color:#c05600}.usa-button--accent-warm:active,.usa-button--accent-warm.usa-button--active{color:white;background-color:#775540}.usa-button--outline{background-color:transparent;-webkit-box-shadow:inset 0 0 0 2px #005ea2;box-shadow:inset 0 0 0 2px #005ea2;color:#005ea2}.usa-button--outline:visited{color:#005ea2}.usa-button--outline:hover,.usa-button--outline.usa-button--hover{background-color:transparent;-webkit-box-shadow:inset 0 0 0 2px #1a4480;box-shadow:inset 0 0 0 2px #1a4480;color:#1a4480}.usa-button--outline:active,.usa-button--outline.usa-button--active{background-color:transparent;-webkit-box-shadow:inset 0 0 0 2px #162e51;box-shadow:inset 0 0 0 2px #162e51;color:#162e51}.usa-button--outline.usa-button--inverse{-webkit-box-shadow:inset 0 0 0 2px #dfe1e2;box-shadow:inset 0 0 0 2px #dfe1e2;color:#dfe1e2}.usa-button--outline.usa-button--inverse:visited{color:#dfe1e2}.usa-button--outline.usa-button--inverse:hover,.usa-button--outline.usa-button--inverse.usa-button--hover{-webkit-box-shadow:inset 0 0 0 2px #f0f0f0;box-shadow:inset 0 0 0 2px #f0f0f0;color:#f0f0f0}.usa-button--outline.usa-button--inverse:active,.usa-button--outline.usa-button--inverse.usa-button--active{background-color:transparent;-webkit-box-shadow:inset 0 0 0 2px white;box-shadow:inset 0 0 0 2px white;color:white}.usa-button--outline.usa-button--inverse.usa-button--unstyled{color:#005ea2;text-decoration:underline;background-color:transparent;border:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none;font-weight:normal;-ms-flex-pack:normal;justify-content:normal;text-align:left;margin:0;padding:0;width:auto;color:#dfe1e2}.usa-button--outline.usa-button--inverse.usa-button--unstyled:visited{color:#54278f}.usa-button--outline.usa-button--inverse.usa-button--unstyled:hover{color:#1a4480}.usa-button--outline.usa-button--inverse.usa-button--unstyled:active{color:#162e51}.usa-button--outline.usa-button--inverse.usa-button--unstyled:focus{outline:0.25rem solid #2491ff;outline-offset:0rem}.usa-button--outline.usa-button--inverse.usa-button--unstyled:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled.usa-button--hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true].usa-button--hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled:active,.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--active,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled:active,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:active,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled.usa-button--active,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true].usa-button--active,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled:focus,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:focus,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled.usa-focus,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true].usa-focus,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true],.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--disabled{background-color:transparent;-webkit-box-shadow:none;box-shadow:none;text-decoration:underline}.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--hover{color:#1a4480}.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--active{color:#162e51}.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true],.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:focus{color:#757575}@media (forced-colors: active){.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true],.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:focus{color:GrayText}}.usa-button--outline.usa-button--inverse.usa-button--unstyled:visited{color:#dfe1e2}.usa-button--outline.usa-button--inverse.usa-button--unstyled:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--hover{color:#f0f0f0}.usa-button--outline.usa-button--inverse.usa-button--unstyled:active,.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--active{color:white}.usa-button--base{color:white;background-color:#71767a}.usa-button--base:hover,.usa-button--base.usa-button--hover{color:white;background-color:#565c65}.usa-button--base:active,.usa-button--base.usa-button--active{color:white;background-color:#3d4551}.usa-button--secondary{color:white;background-color:#d83933}.usa-button--secondary:hover,.usa-button--secondary.usa-button--hover{color:white;background-color:#b50909}.usa-button--secondary:active,.usa-button--secondary.usa-button--active{color:white;background-color:#8b0a03}.usa-button--big{border-radius:0.25rem;font-size:1.46rem;padding:1rem 1.5rem}.usa-button--outline:disabled,.usa-button--outline:disabled:hover,.usa-button--outline:disabled:active,.usa-button--outline:disabled:focus,.usa-button--outline[aria-disabled=true],.usa-button--outline[aria-disabled=true]:hover,.usa-button--outline[aria-disabled=true]:active,.usa-button--outline[aria-disabled=true]:focus,.usa-button--outline-inverse:disabled,.usa-button--outline-inverse:disabled:hover,.usa-button--outline-inverse:disabled:active,.usa-button--outline-inverse:disabled:focus,.usa-button--outline-inverse[aria-disabled=true],.usa-button--outline-inverse[aria-disabled=true]:hover,.usa-button--outline-inverse[aria-disabled=true]:active,.usa-button--outline-inverse[aria-disabled=true]:focus{background-color:transparent;color:#757575}.usa-button--outline:disabled,.usa-button--outline[aria-disabled=true]{-webkit-box-shadow:inset 0 0 0 2px #c9c9c9;box-shadow:inset 0 0 0 2px #c9c9c9}.usa-button--outline:disabled.usa-button--inverse,.usa-button--outline[aria-disabled=true].usa-button--inverse{-webkit-box-shadow:inset 0 0 0 2px #919191;box-shadow:inset 0 0 0 2px #919191;color:#919191}@media (forced-colors: active){.usa-button--outline:disabled.usa-button--inverse,.usa-button--outline[aria-disabled=true].usa-button--inverse{color:GrayText}}.usa-button--unstyled{color:#005ea2;text-decoration:underline;background-color:transparent;border:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none;font-weight:normal;-ms-flex-pack:normal;justify-content:normal;text-align:left;margin:0;padding:0;width:auto}.usa-button--unstyled:visited{color:#54278f}.usa-button--unstyled:hover{color:#1a4480}.usa-button--unstyled:active{color:#162e51}.usa-button--unstyled:focus{outline:0.25rem solid #2491ff;outline-offset:0rem}.usa-button--unstyled:hover,.usa-button--unstyled.usa-button--hover,.usa-button--unstyled:disabled:hover,.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--unstyled:disabled.usa-button--hover,.usa-button--unstyled[aria-disabled=true].usa-button--hover,.usa-button--unstyled:active,.usa-button--unstyled.usa-button--active,.usa-button--unstyled:disabled:active,.usa-button--unstyled[aria-disabled=true]:active,.usa-button--unstyled:disabled.usa-button--active,.usa-button--unstyled[aria-disabled=true].usa-button--active,.usa-button--unstyled:disabled:focus,.usa-button--unstyled[aria-disabled=true]:focus,.usa-button--unstyled:disabled.usa-focus,.usa-button--unstyled[aria-disabled=true].usa-focus,.usa-button--unstyled:disabled,.usa-button--unstyled[aria-disabled=true],.usa-button--unstyled.usa-button--disabled{background-color:transparent;-webkit-box-shadow:none;box-shadow:none;text-decoration:underline}.usa-button--unstyled.usa-button--hover{color:#1a4480}.usa-button--unstyled.usa-button--active{color:#162e51}.usa-button--unstyled:disabled,.usa-button--unstyled[aria-disabled=true],.usa-button--unstyled:disabled:hover,.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--unstyled[aria-disabled=true]:focus{color:#757575}@media (forced-colors: active){.usa-button--unstyled:disabled,.usa-button--unstyled[aria-disabled=true],.usa-button--unstyled:disabled:hover,.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--unstyled[aria-disabled=true]:focus{color:GrayText}}.usa-button-group{margin-bottom:0;margin-top:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-wrap:wrap;flex-wrap:wrap;list-style-type:none;margin-left:-0.25rem;margin-right:-0.25rem;padding-left:0}@media all and (min-width: 30em){.usa-button-group{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-align:stretch;align-items:stretch;-ms-flex-direction:row;flex-direction:row}}.usa-button-group .usa-button-group{height:100%}@media all and (min-width: 30em){.usa-button-group .usa-button-group .usa-button-group__item{margin-top:0;margin-bottom:0}}.usa-button-group .usa-button-group--segmented .usa-button-group__item{margin-top:0;margin-bottom:0}.usa-button-group__item{margin:0.25rem}@media all and (min-width: 30em){.usa-button-group__item:last-child{margin-right:0}}.usa-button-group__item .usa-button{height:100%;margin-left:0;margin-right:0}.usa-button-group--segmented{-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-pack:justify;justify-content:space-between;margin-left:0;margin-right:0}@media all and (min-width: 30em){.usa-button-group--segmented{-ms-flex-pack:start;justify-content:flex-start}}.usa-button-group--segmented .usa-button{position:relative;width:calc(100% + 2px)}@media all and (min-width: 30em){.usa-button-group--segmented .usa-button{width:auto}}.usa-button-group--segmented .usa-button:hover,.usa-button-group--segmented .usa-button:active{z-index:2}.usa-button-group--segmented .usa-button:focus{z-index:3}.usa-button-group--segmented .usa-button-group__item{margin-left:0;margin-right:0;width:100%}@media all and (min-width: 30em){.usa-button-group--segmented .usa-button-group__item{width:auto}}.usa-button-group--segmented .usa-button-group__item:first-child>.usa-button{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-1px}.usa-button-group--segmented .usa-button-group__item:last-child>.usa-button{border-top-left-radius:0;border-bottom-left-radius:0;margin-right:0;margin-left:-2px;width:calc(100% + 2px)}@media all and (min-width: 30em){.usa-button-group--segmented .usa-button-group__item:last-child>.usa-button{margin-left:-1px;width:auto}}.usa-button-group--segmented .usa-button-group__item:where(:not(:first-child):not(:last-child))>.usa-button{border-radius:0;margin-right:-1px;margin-left:-1px}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button::before{border-right:1px solid #1a4480;bottom:0;content:"";display:block;height:100%;position:absolute;right:1px;top:0;width:1px;z-index:3}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button--secondary::before{border-right-color:#b50909}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button--accent-cool::before{border-right-color:#28a0cb}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button--base::before{border-right-color:#565c65}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) [class*=usa-button]:disabled::before,.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) [class*=usa-button][aria-disabled=true]::before{border-right-color:white}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button:active::before,.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button--outline::before{display:none}.usa-icon{display:inline-block;fill:currentColor;height:1em;position:relative;width:1em}.usa-icon--size-3{height:1.5rem;width:1.5rem}.usa-icon--size-4{height:2rem;width:2rem}.usa-icon--size-5{height:2.5rem;width:2.5rem}.usa-icon--size-6{height:3rem;width:3rem}.usa-icon--size-7{height:3.5rem;width:3.5rem}.usa-icon--size-8{height:4rem;width:4rem}.usa-icon--size-9{height:4.5rem;width:4.5rem}.usa-js-no-click{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.usa-js-no-click .usa-modal,.usa-js-no-click .usa-modal *{pointer-events:auto;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}[data-open-modal] *{pointer-events:none}.usa-modal-wrapper{text-align:center;-webkit-transition:opacity 0.15s ease-in-out;transition:opacity 0.15s ease-in-out}.usa-modal-wrapper.is-hidden{visibility:hidden;opacity:0;position:fixed}.usa-modal-wrapper.is-visible{visibility:visible;opacity:1;position:fixed;z-index:99999}.usa-modal-overlay{background:rgba(0, 0, 0, 0.7);bottom:0;height:100%;left:0;overflow:scroll;overflow-x:hidden;padding:1.5rem;position:fixed;scroll-behavior:smooth;top:0;width:100%}.usa-modal-overlay:before{content:"";display:inline-block;height:100%;vertical-align:middle}.usa-modal-overlay[data-force-action=true]{pointer-events:none}.usa-modal-overlay[data-force-action=true] *{pointer-events:auto}.usa-js-loading .usa-modal-wrapper{position:absolute;left:-999em;right:auto}.usa-js-loading .usa-modal-wrapper:target{position:static}.usa-modal{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.5;border-radius:0.5rem;background:white;color:#1b1b1b;display:inline-block;margin:1.25rem auto;max-width:30rem;position:relative;text-align:left;vertical-align:middle;width:100%}.usa-modal:focus{outline:none}.usa-modal__content{display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse;padding-top:2rem;width:100%}.usa-modal__main{margin:0 auto;padding:0.5rem 2rem 2rem}.usa-modal-wrapper [data-close-modal]>.usa-icon,.usa-modal-wrapper [data-close-modal]>.usa-icon use{pointer-events:none !important}.usa-modal__close{-ms-flex-align:center;align-items:center;-ms-flex-item-align:end;align-self:flex-end;background-color:transparent;color:#71767a;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;font-size:0.93rem;margin:-2rem 0 0 auto;padding:0.25rem 0.25rem;width:auto}.usa-modal__close:hover,.usa-modal__close:active{background-color:transparent;color:#1b1b1b}.usa-modal__close:focus{outline-offset:0}.usa-modal__close .usa-icon{height:2rem;margin:2px 2px 0 0;width:2rem}.usa-modal__heading{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.34rem;line-height:1.4;margin-top:0}.usa-modal__footer{margin-top:1.5rem}.usa-modal--lg{max-width:55rem;width:100%}.usa-modal--lg .usa-modal__main{padding-bottom:4rem;padding-top:1.25rem;width:100%;max-width:40rem}@media all and (min-width: 40em){.usa-modal--lg .usa-modal__heading{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.95rem}}.usa-js-modal--active{overflow:hidden}.usa-error-message{font-size:1.06rem}:host([error]:not([error=""])),:host(.va-form-group--error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){border-left:none}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host([error]:not([error=""])),:host(.va-form-group--error){margin-left:-0.9rem}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{margin-left:-0.9rem}}@media screen and (max-width: 1023px){:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){padding-left:0}}.usa-modal-alert{padding:0px;margin-left:1rem}.usa-modal__heading,.usa-modal--lg .usa-modal__heading{font-family:var(--font-serif)}.usa-modal:not(.usa-modal--lg){width:auto}.usa-modal va-button{width:100%}.usa-modal__main div[role=document]{overflow-wrap:anywhere}@media screen and (max-width: 481px){.usa-modal__content{width:85%}}:host([status=info]) .usa-modal{border-left-color:var(--vads-color-primary-alt-dark);background-color:var(--vads-color-primary-alt-lightest)}:host .usa-modal__main{position:relative;margin:0px auto;-webkit-box-sizing:border-box;box-sizing:border-box}.va-modal__content{-ms-flex-direction:row;flex-direction:row;-ms-flex-align:baseline;align-items:baseline}.va-modal-alert__icon{color:var(--vads-color-base-darker);padding-top:1.25rem;position:relative;top:0.25rem}:host([status=continue]) .usa-modal{border-left-color:var(--vads-color-success-dark);background-color:var(--vads-color-success-lighter)}:host([status=success]) .usa-modal{border-left-color:var(--vads-color-success-dark);background-color:var(--vads-color-success-lighter)}:host([status=warning]) .usa-modal{border-left-color:var(--vads-color-warning);background-color:var(--vads-color-gold-lightest)}:host([status=error]) .usa-modal{border-left-color:var(--vads-color-secondary-dark);background-color:var(--vads-color-secondary-lightest)}.va-modal-alert{-webkit-box-sizing:border-box;box-sizing:border-box;border-left-style:solid;border-left-width:10px;display:-ms-inline-flexbox;display:inline-flex;padding:2rem 4rem 2rem 1.5rem}:host{display:block}:host([visible]:not([visible=false])){background:rgba(50, 58, 69, 0.8);bottom:0;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;left:0;overflow-y:auto;padding:0.938rem;position:fixed;scroll-behavior:smooth;text-align:center;top:0;width:100%;z-index:9001}:host([visible]:not([visible=false]))::before{content:"";display:inline-block;height:100%;vertical-align:middle}.va-modal-inner{background:var(--vads-color-white);bottom:0;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:auto;display:inline-block;margin:0.781rem auto;max-width:25rem;position:relative;text-align:left;vertical-align:middle;width:100%}.va-modal-close{background-color:transparent;color:var(--vads-color-base-darker);font-size:1.4rem;padding:6px;position:absolute;margin:0 0 0 auto;right:0;top:0;width:auto;z-index:9;white-space:nowrap}.va-modal-close:hover{color:var(--vads-color-base)}.va-modal-body{margin-right:1.25rem;overflow-wrap:break-word;padding:1.25rem;word-break:break-word;word-wrap:break-word}h1{font-family:var(--font-serif);font-size:1.25rem;line-height:1.3;margin-bottom:0.3125rem;margin-top:0.9375rem}.va-modal-title{margin:0 0 1rem 0}.alert-actions button{background-color:var(--vads-color-primary);margin-top:0.5rem;margin-right:0.5rem;margin-bottom:0.5rem;white-space:nowrap}.alert-actions .button-secondary{background-color:transparent;-webkit-box-shadow:inset 0 0 0 2px var(--vads-color-primary);box-shadow:inset 0 0 0 2px var(--vads-color-primary);color:var(--vads-color-primary)}.alert-actions button:hover,.alert-actions button:focus{background-color:var(--vads-color-primary-dark)}.alert-actions .button-secondary:hover,.alert-actions .button-secondary:focus{background-color:var(--vads-color-gray-cool-light)}.va-modal-alert::before{display:block;width:auto;background:none;font-family:"Font Awesome 5 Free";font-size:1.25rem;margin-right:1rem;position:static;font-weight:900;height:100%;left:0;top:0}.va-modal-alert .va-modal-alert-body{display:table-cell;padding-left:1rem;padding-right:0;width:100%;vertical-align:middle;margin:inherit}.va-modal-alert-title{margin:0 0 1.25rem 0}:host([status=continue]) .va-modal-inner{border-left-color:var(--vads-color-success-dark)}:host([status=error]) .va-modal-inner{border-left-color:var(--vads-color-secondary-dark)}:host([status=info]) .va-modal-inner{border-left-color:var(--vads-color-primary-alt-dark)}:host([status=success]) .va-modal-inner{border-left-color:var(--vads-color-success-dark)}:host([status=warning]) .va-modal-inner{border-left-color:var(--vads-color-warning)}.va-modal-alert .alert-actions{margin-top:1.5rem}.va-modal-alert .alert-actions button{margin:0}.va-modal-alert .alert-actions button+button{margin-left:1.25rem}@media (max-width: 320px){.alert-actions button{width:100%}.va-modal-alert .alert-actions{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.va-modal-alert .alert-actions button+button{margin:1rem 0 0 0}}@media screen and (max-width: 481px){:host([visible]:not([visible=false])){overflow-y:scroll}.va-modal-inner{top:0}.va-modal-alert .alert-actions{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.va-modal-alert .alert-actions button+button{margin:1rem 0 0 0}.usa-modal--lg .usa-modal__main{max-width:-webkit-fill-available;max-width:-moz-fit-content}}:host([large]:not([large=false])) .va-modal-inner{max-width:46.875rem;width:75vw}',VaModalStyle0=vaModalCss,VaModal=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.closeEvent=createEvent(this,"closeEvent",7),this.primaryButtonClick=createEvent(this,"primaryButtonClick",7),this.secondaryButtonClick=createEvent(this,"secondaryButtonClick",7),this.componentLibraryAnalytics=createEvent(this,"component-library-analytics",7),this.focusableChildren=null,this.clickToClose=!1,this.disableAnalytics=!1,this.large=!1,this.modalTitle=void 0,this.forcedModal=!1,this.unstyled=!1,this.initialFocusSelector=void 0,this.primaryButtonText=void 0,this.secondaryButtonText=void 0,this.status=void 0,this.visible=!1,this.ariaHiddenNodeExceptions=[],this.label=""}watchVisibleHandler(){this.isVisibleDirty=!0}componentDidLoad(){this.visible&&requestAnimationFrame((()=>this.setupModal()))}componentDidUpdate(){this.isVisibleDirty&&(this.isVisibleDirty=!1,this.visible?requestAnimationFrame((()=>this.setupModal())):this.teardownModal())}disconnectedCallback(){this.teardownModal()}handleButtonClickAnalytics(t){"va-modal"!==t.detail.componentName&&t.stopPropagation()}handleClick(t){this.clickToClose&&this.visible&&t.composedPath()[0]===this.el&&this.handleClose(t)}handleKeyDown(t){if(!this.visible)return;const e=t.key;if("Escape"===e&&this.handleClose(t),"Tab"!==e)return;const o=this.getRealActiveElement(),a=this.focusableChildren[0],n=this.focusableChildren[this.focusableChildren.length-1];t.shiftKey||o!==n?t.shiftKey&&o===a&&(t.preventDefault(),n.focus()):(t.preventDefault(),a.focus())}handleClose(t){this.closeEvent.emit(t)}handlePrimaryButtonClick(t){if(this.primaryButtonClick.emit(t),!this.disableAnalytics){const t={componentName:"va-modal",action:"click",details:{clickLabel:this.primaryButtonText,status:this.status,title:this.modalTitle}};this.componentLibraryAnalytics.emit(t)}}handleSecondaryButtonClick(t){if(this.secondaryButtonClick.emit(t),!this.disableAnalytics){const t={componentName:"va-modal",action:"click",details:{clickLabel:this.secondaryButtonText,status:this.status,title:this.modalTitle}};this.componentLibraryAnalytics.emit(t)}}getFocusableChildren(){var t,e;const o=Array.from((null===(t=this.el)||void 0===t?void 0:t.querySelectorAll(focusableQueryString))||[]),a=Array.from((null===(e=this.alertActions)||void 0===e?void 0:e.querySelectorAll(focusableQueryString))||[]),n=[];return[this.closeButton,...o,...a].reduce(((t,e)=>{if(e&&(e.offsetWidth||e.offsetHeight))if(e.classList.contains("hydrated")){let o=[];if(e.shadowRoot?(n.push(e.tagName),o=Array.from(e.shadowRoot.querySelectorAll(focusableQueryString)||[])):o=Array.from(e.querySelectorAll(focusableQueryString)||[]),o.length)return t.push(e),t.concat(o)}else t.push(e);return t}),[]).filter((t=>!n.includes(t.tagName)))}getRealActiveElement(){let t=document.activeElement;for(;t&&t.shadowRoot&&t.shadowRoot.activeElement;)t=t.shadowRoot.activeElement;return t}setupModal(){var t;this.savedFocus=this.getRealActiveElement(),this.focusableChildren=this.getFocusableChildren();const e=this.el.querySelector(this.initialFocusSelector)||(null===(t=this.el.shadowRoot)||void 0===t?void 0:t.querySelector(this.initialFocusSelector))||this.closeButton;null==e||e.focus(),disableBodyScroll(this.el);const o=[...this.ariaHiddenNodeExceptions,this.el];if(this.undoAriaHidden=hideOthers(o),!this.disableAnalytics){const t={componentName:"va-modal",action:"show",details:{status:this.status,title:this.modalTitle,primaryButtonText:this.primaryButtonText,secondaryButtonText:this.secondaryButtonText}};this.componentLibraryAnalytics.emit(t)}}teardownModal(){var t,e;clearAllBodyScrollLocks(),null===(t=this.undoAriaHidden)||void 0===t||t.call(this),null===(e=this.savedFocus)||void 0===e||e.focus()}render(){const{label:t,modalTitle:e,primaryButtonClick:o,primaryButtonText:a,secondaryButtonClick:n,secondaryButtonText:s,status:i,visible:u,forcedModal:r,unstyled:l}=this;if(!u)return null;let d=null,c="Close modal";t?(d=t,c=`Close ${t} modal`):e&&""!==e?(d=`${e} modal`,c=`Close ${e} modal`):console.warn("<va-modal>: An accessible name for the modal is required. Please provide either a label or modalTitle prop value.");const b=classnames({"usa-modal":!0,"va-modal-alert":i,"usa-modal--lg":this.large}),m=classnames({"usa-modal__content":!0,"usa-modal-alert":i,"va-modal__content":!0}),v=classnames({"usa-modal__main":!0,"usa-modal-alert":i,"va-modal-alert-body":i}),p=classnames({"usa-modal__heading":!0,"va-modal-alert-title":i}),f=r?"":h("button",{"aria-label":c,class:"va-modal-close",onClick:t=>this.handleClose(t),ref:t=>this.closeButton=t,type:"button"},h("va-icon",{icon:"close",size:4}));return h(Host,null,h("div",{class:b,role:"warning"===i||"error"===i?"alertdialog":"dialog","aria-modal":"true","aria-label":d},h("div",{class:m},f,i&&h("va-icon",{class:"va-modal-alert__icon",icon:{continue:"lock",error:"error",info:"info",success:"check",warning:"warning"}[i],size:4}),h("div",{class:v},h("div",{role:"document"},e&&h("h2",{class:p,tabindex:-1,id:"heading"},e),h("div",{class:"usa-prose",id:"description"},h("slot",null))),(o&&a||n&&s)&&h("div",{class:"usa-modal__footer",ref:t=>this.alertActions=t},h("ul",{class:"usa-button-group"},o&&a&&h("li",{class:"usa-button-group__item"},h("va-button",{onClick:t=>this.handlePrimaryButtonClick(t),text:a})),n&&s&&h("li",{class:"usa-button-group__item"},!l&&h("va-button",{onClick:t=>this.handleSecondaryButtonClick(t),secondary:!0,text:s}),l&&h("button",{onClick:t=>this.handlePrimaryButtonClick(t),type:"button",class:"usa-button usa-button--unstyled"},s))))))))}get el(){return this}static get watchers(){return{visible:["watchVisibleHandler"]}}static get style(){return VaModalStyle0}},[1,"va-modal",{clickToClose:[4,"click-to-close"],disableAnalytics:[4,"disable-analytics"],large:[516],modalTitle:[1,"modal-title"],forcedModal:[4,"forced-modal"],unstyled:[4],initialFocusSelector:[1,"initial-focus-selector"],primaryButtonText:[1,"primary-button-text"],secondaryButtonText:[1,"secondary-button-text"],status:[1],visible:[516],ariaHiddenNodeExceptions:[16],label:[1]},[[0,"component-library-analytics","handleButtonClickAnalytics"],[0,"click","handleClick"],[8,"keydown","handleKeyDown"]],{visible:["watchVisibleHandler"]}]);function defineCustomElement(){"undefined"!=typeof customElements&&["va-modal","va-button","va-icon"].forEach((t=>{switch(t){case"va-modal":customElements.get(t)||customElements.define(t,VaModal);break;case"va-button":customElements.get(t)||defineCustomElement$2();break;case"va-icon":customElements.get(t)||defineCustomElement$1()}}))}export{VaModal as V,defineCustomElement as d};
|
|
1
|
+
import{proxyCustomElement,HTMLElement,createEvent,h,Host}from"@stencil/core/internal/client";import{c as classnames}from"./index2.js";import{d as defineCustomElement$2}from"./va-button2.js";import{d as defineCustomElement$1}from"./va-icon2.js";function _toConsumableArray(t){if(Array.isArray(t)){for(var e=0,o=Array(t.length);e<t.length;e++)o[e]=t[e];return o}return Array.from(t)}var hasPassiveEvents=!1;if("undefined"!=typeof window){var passiveTestOptions={get passive(){hasPassiveEvents=!0}};window.addEventListener("testPassive",null,passiveTestOptions),window.removeEventListener("testPassive",null,passiveTestOptions)}var isIosDevice="undefined"!=typeof window&&window.navigator&&window.navigator.platform&&(/iP(ad|hone|od)/.test(window.navigator.platform)||"MacIntel"===window.navigator.platform&&window.navigator.maxTouchPoints>1),locks=[],documentListenerAdded=!1,initialClientY=-1,previousBodyOverflowSetting=void 0,previousBodyPosition=void 0,previousBodyPaddingRight=void 0,allowTouchMove=function(t){return locks.some((function(e){return!(!e.options.allowTouchMove||!e.options.allowTouchMove(t))}))},preventDefault=function(t){var e=t||window.event;return!!allowTouchMove(e.target)||e.touches.length>1||(e.preventDefault&&e.preventDefault(),!1)},setOverflowHidden=function(t){if(void 0===previousBodyPaddingRight){var e=!!t&&!0===t.reserveScrollBarGap,o=window.innerWidth-document.documentElement.clientWidth;if(e&&o>0){var a=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right"),10);previousBodyPaddingRight=document.body.style.paddingRight,document.body.style.paddingRight=a+o+"px"}}void 0===previousBodyOverflowSetting&&(previousBodyOverflowSetting=document.body.style.overflow,document.body.style.overflow="hidden")},restoreOverflowSetting=function(){void 0!==previousBodyPaddingRight&&(document.body.style.paddingRight=previousBodyPaddingRight,previousBodyPaddingRight=void 0),void 0!==previousBodyOverflowSetting&&(document.body.style.overflow=previousBodyOverflowSetting,previousBodyOverflowSetting=void 0)},setPositionFixed=function(){return window.requestAnimationFrame((function(){if(void 0===previousBodyPosition){previousBodyPosition={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left};var t=window,e=t.scrollY,o=t.scrollX,a=t.innerHeight;document.body.style.position="fixed",document.body.style.top=-e,document.body.style.left=-o,setTimeout((function(){return window.requestAnimationFrame((function(){var t=a-window.innerHeight;t&&e>=a&&(document.body.style.top=-(e+t))}))}),300)}}))},restorePositionSetting=function(){if(void 0!==previousBodyPosition){var t=-parseInt(document.body.style.top,10),e=-parseInt(document.body.style.left,10);document.body.style.position=previousBodyPosition.position,document.body.style.top=previousBodyPosition.top,document.body.style.left=previousBodyPosition.left,window.scrollTo(e,t),previousBodyPosition=void 0}},isTargetElementTotallyScrolled=function(t){return!!t&&t.scrollHeight-t.scrollTop<=t.clientHeight},handleScroll=function(t,e){var o=t.targetTouches[0].clientY-initialClientY;return!allowTouchMove(t.target)&&(e&&0===e.scrollTop&&o>0||isTargetElementTotallyScrolled(e)&&o<0?preventDefault(t):(t.stopPropagation(),!0))},disableBodyScroll=function(t,e){if(t){if(!locks.some((function(e){return e.targetElement===t}))){var o={targetElement:t,options:e||{}};locks=[].concat(_toConsumableArray(locks),[o]),isIosDevice?setPositionFixed():setOverflowHidden(e),isIosDevice&&(t.ontouchstart=function(t){1===t.targetTouches.length&&(initialClientY=t.targetTouches[0].clientY)},t.ontouchmove=function(e){1===e.targetTouches.length&&handleScroll(e,t)},documentListenerAdded||(document.addEventListener("touchmove",preventDefault,hasPassiveEvents?{passive:!1}:void 0),documentListenerAdded=!0))}}else console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.")},clearAllBodyScrollLocks=function(){isIosDevice&&(locks.forEach((function(t){t.targetElement.ontouchstart=null,t.targetElement.ontouchmove=null})),documentListenerAdded&&(document.removeEventListener("touchmove",preventDefault,hasPassiveEvents?{passive:!1}:void 0),documentListenerAdded=!1),initialClientY=-1),isIosDevice?restorePositionSetting():restoreOverflowSetting(),locks=[]},getDefaultParent=function(t){return"undefined"==typeof document?null:(Array.isArray(t)?t[0]:t).ownerDocument.body},counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={},lockCount=0,hideOthers=function(t,e,o){void 0===e&&(e=getDefaultParent(t)),void 0===o&&(o="data-aria-hidden");var a=Array.isArray(t)?t:[t];markerMap[o]||(markerMap[o]=new WeakMap);var n=markerMap[o],s=[],i=new Set,u=function(t){t&&!i.has(t)&&(i.add(t),u(t.parentNode))};a.forEach(u);var r=function(t){!t||a.indexOf(t)>=0||Array.prototype.forEach.call(t.children,(function(t){if(i.has(t))r(t);else{var e=t.getAttribute("aria-hidden"),a=null!==e&&"false"!==e,u=(counterMap.get(t)||0)+1,l=(n.get(t)||0)+1;counterMap.set(t,u),n.set(t,l),s.push(t),1===u&&a&&uncontrolledNodes.set(t,!0),1===l&&t.setAttribute(o,"true"),a||t.setAttribute("aria-hidden","true")}}))};return r(e),i.clear(),lockCount++,function(){s.forEach((function(t){var e=counterMap.get(t)-1,a=n.get(t)-1;counterMap.set(t,e),n.set(t,a),e||(uncontrolledNodes.has(t)||t.removeAttribute("aria-hidden"),uncontrolledNodes.delete(t)),a||t.removeAttribute(o)})),--lockCount||(counterMap=new WeakMap,counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={})}};const focusableQueryString=['a[href]:not([tabindex^="-"])','.hydrated:not([tabindex^="-"]):not(va-radio-option)','[tabindex]:not([tabindex^="-"])','input:not([type=hidden]):not([tabindex^="-"])','textarea:not([tabindex^="-"])','button:not([tabindex^="-"])','select:not([tabindex^="-"])'].join(","),vaModalCss='button:not([disabled]):focus,select:not([disabled]):focus,a:not([disabled]):focus,h1:focus,input:not([disabled]):focus,textarea:not([disabled]):focus,#form-question [role=\'option\']:focus,*[tabindex]:focus,a.va-sidenav-submenu__link:focus{outline:2px solid var(--vads-color-action-focus-on-light);outline-offset:2px;z-index:2}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:5px;color:var(--vads-button-color-text-primary-alt-on-light);cursor:pointer;display:inline-block;font-family:var(--font-source-sans);font-size:1rem;font-weight:700;line-height:1;padding:0.625rem 1.25rem;text-align:center;text-decoration:none}.usa-hint{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3}.usa-sr-only{position:absolute;left:-999em;right:auto}.usa-label{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.3;display:block;font-weight:normal;margin-top:1.5rem;max-width:30rem}.usa-label--error{font-weight:700;margin-top:0}.usa-label--required{color:#b50909}.usa-error-message{padding-bottom:0.25rem;padding-top:0.25rem;color:#b50909;display:block;font-weight:700}.usa-hint{color:#71767a}.usa-hint--required{color:#b50909}.usa-button{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:0.9;color:white;background-color:#005ea2;-webkit-appearance:none;-moz-appearance:none;appearance:none;-ms-flex-align:center;align-items:center;border:0;border-radius:0.25rem;cursor:pointer;-webkit-column-gap:0.5rem;-moz-column-gap:0.5rem;column-gap:0.5rem;display:-ms-inline-flexbox;display:inline-flex;font-weight:700;-ms-flex-pack:center;justify-content:center;margin-right:0.5rem;padding:0.75rem 1.25rem;text-align:center;text-decoration:none;width:100%}@media all and (min-width: 30em){.usa-button{width:auto}}.usa-button:visited{color:white}.usa-button:hover,.usa-button.usa-button--hover{color:white;background-color:#1a4480;border-bottom:0;text-decoration:none}.usa-button:active,.usa-button.usa-button--active{color:white;background-color:#162e51}.usa-button:not([disabled]):focus,.usa-button:not([disabled]).usa-focus{outline-offset:0.25rem}.usa-button:disabled,.usa-button[aria-disabled=true]{color:#454545;background-color:#c9c9c9;cursor:not-allowed;opacity:1}.usa-button:disabled:hover,.usa-button:disabled:active,.usa-button:disabled:focus,.usa-button:disabled.usa-focus,.usa-button[aria-disabled=true]:hover,.usa-button[aria-disabled=true]:active,.usa-button[aria-disabled=true]:focus,.usa-button[aria-disabled=true].usa-focus{color:#454545;background-color:#c9c9c9}@media (forced-colors: active){.usa-button:disabled,.usa-button[aria-disabled=true]{border:0;color:GrayText}.usa-button:disabled:hover,.usa-button:disabled:active,.usa-button:disabled:focus,.usa-button:disabled.usa-focus,.usa-button[aria-disabled=true]:hover,.usa-button[aria-disabled=true]:active,.usa-button[aria-disabled=true]:focus,.usa-button[aria-disabled=true].usa-focus{color:GrayText}}.usa-button:disabled.usa-button--hover,.usa-button:disabled.usa-button--active,.usa-button[aria-disabled=true].usa-button--hover,.usa-button[aria-disabled=true].usa-button--active{color:#454545;background-color:#c9c9c9;cursor:not-allowed;opacity:1}.usa-button:disabled.usa-button--hover:hover,.usa-button:disabled.usa-button--hover:active,.usa-button:disabled.usa-button--hover:focus,.usa-button:disabled.usa-button--hover.usa-focus,.usa-button:disabled.usa-button--active:hover,.usa-button:disabled.usa-button--active:active,.usa-button:disabled.usa-button--active:focus,.usa-button:disabled.usa-button--active.usa-focus,.usa-button[aria-disabled=true].usa-button--hover:hover,.usa-button[aria-disabled=true].usa-button--hover:active,.usa-button[aria-disabled=true].usa-button--hover:focus,.usa-button[aria-disabled=true].usa-button--hover.usa-focus,.usa-button[aria-disabled=true].usa-button--active:hover,.usa-button[aria-disabled=true].usa-button--active:active,.usa-button[aria-disabled=true].usa-button--active:focus,.usa-button[aria-disabled=true].usa-button--active.usa-focus{color:#454545;background-color:#c9c9c9}@media (forced-colors: active){.usa-button:disabled.usa-button--hover,.usa-button:disabled.usa-button--active,.usa-button[aria-disabled=true].usa-button--hover,.usa-button[aria-disabled=true].usa-button--active{border:0;color:GrayText}.usa-button:disabled.usa-button--hover:hover,.usa-button:disabled.usa-button--hover:active,.usa-button:disabled.usa-button--hover:focus,.usa-button:disabled.usa-button--hover.usa-focus,.usa-button:disabled.usa-button--active:hover,.usa-button:disabled.usa-button--active:active,.usa-button:disabled.usa-button--active:focus,.usa-button:disabled.usa-button--active.usa-focus,.usa-button[aria-disabled=true].usa-button--hover:hover,.usa-button[aria-disabled=true].usa-button--hover:active,.usa-button[aria-disabled=true].usa-button--hover:focus,.usa-button[aria-disabled=true].usa-button--hover.usa-focus,.usa-button[aria-disabled=true].usa-button--active:hover,.usa-button[aria-disabled=true].usa-button--active:active,.usa-button[aria-disabled=true].usa-button--active:focus,.usa-button[aria-disabled=true].usa-button--active.usa-focus{color:GrayText}}@media (forced-colors: active){.usa-button:disabled:not(.usa-button--unstyled),.usa-button[aria-disabled=true]:not(.usa-button--unstyled){border:2px solid GrayText}}.usa-button .usa-icon{-ms-flex-negative:0;flex-shrink:0}@media (forced-colors: active){.usa-button:not(.usa-button--unstyled){border:2px solid transparent}}.usa-button--accent-cool{color:#1b1b1b;background-color:#00bde3}.usa-button--accent-cool:visited{color:#1b1b1b;background-color:#00bde3}.usa-button--accent-cool:hover,.usa-button--accent-cool.usa-button--hover{color:#1b1b1b;background-color:#28a0cb}.usa-button--accent-cool:active,.usa-button--accent-cool.usa-button--active{color:white;background-color:#07648d}.usa-button--accent-warm{color:#1b1b1b;background-color:#fa9441}.usa-button--accent-warm:visited{color:#1b1b1b;background-color:#fa9441}.usa-button--accent-warm:hover,.usa-button--accent-warm.usa-button--hover{color:white;background-color:#c05600}.usa-button--accent-warm:active,.usa-button--accent-warm.usa-button--active{color:white;background-color:#775540}.usa-button--outline{background-color:transparent;-webkit-box-shadow:inset 0 0 0 2px #005ea2;box-shadow:inset 0 0 0 2px #005ea2;color:#005ea2}.usa-button--outline:visited{color:#005ea2}.usa-button--outline:hover,.usa-button--outline.usa-button--hover{background-color:transparent;-webkit-box-shadow:inset 0 0 0 2px #1a4480;box-shadow:inset 0 0 0 2px #1a4480;color:#1a4480}.usa-button--outline:active,.usa-button--outline.usa-button--active{background-color:transparent;-webkit-box-shadow:inset 0 0 0 2px #162e51;box-shadow:inset 0 0 0 2px #162e51;color:#162e51}.usa-button--outline.usa-button--inverse{-webkit-box-shadow:inset 0 0 0 2px #dfe1e2;box-shadow:inset 0 0 0 2px #dfe1e2;color:#dfe1e2}.usa-button--outline.usa-button--inverse:visited{color:#dfe1e2}.usa-button--outline.usa-button--inverse:hover,.usa-button--outline.usa-button--inverse.usa-button--hover{-webkit-box-shadow:inset 0 0 0 2px #f0f0f0;box-shadow:inset 0 0 0 2px #f0f0f0;color:#f0f0f0}.usa-button--outline.usa-button--inverse:active,.usa-button--outline.usa-button--inverse.usa-button--active{background-color:transparent;-webkit-box-shadow:inset 0 0 0 2px white;box-shadow:inset 0 0 0 2px white;color:white}.usa-button--outline.usa-button--inverse.usa-button--unstyled{color:#005ea2;text-decoration:underline;background-color:transparent;border:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none;font-weight:normal;-ms-flex-pack:normal;justify-content:normal;text-align:left;margin:0;padding:0;width:auto;color:#dfe1e2}.usa-button--outline.usa-button--inverse.usa-button--unstyled:visited{color:#54278f}.usa-button--outline.usa-button--inverse.usa-button--unstyled:hover{color:#1a4480}.usa-button--outline.usa-button--inverse.usa-button--unstyled:active{color:#162e51}.usa-button--outline.usa-button--inverse.usa-button--unstyled:focus{outline:0.25rem solid #2491ff;outline-offset:0rem}.usa-button--outline.usa-button--inverse.usa-button--unstyled:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled.usa-button--hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true].usa-button--hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled:active,.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--active,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled:active,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:active,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled.usa-button--active,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true].usa-button--active,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled:focus,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:focus,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled.usa-focus,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true].usa-focus,.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true],.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--disabled{background-color:transparent;-webkit-box-shadow:none;box-shadow:none;text-decoration:underline}.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--hover{color:#1a4480}.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--active{color:#162e51}.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true],.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:focus{color:#757575}@media (forced-colors: active){.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true],.usa-button--outline.usa-button--inverse.usa-button--unstyled:disabled:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled[aria-disabled=true]:focus{color:GrayText}}.usa-button--outline.usa-button--inverse.usa-button--unstyled:visited{color:#dfe1e2}.usa-button--outline.usa-button--inverse.usa-button--unstyled:hover,.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--hover{color:#f0f0f0}.usa-button--outline.usa-button--inverse.usa-button--unstyled:active,.usa-button--outline.usa-button--inverse.usa-button--unstyled.usa-button--active{color:white}.usa-button--base{color:white;background-color:#71767a}.usa-button--base:hover,.usa-button--base.usa-button--hover{color:white;background-color:#565c65}.usa-button--base:active,.usa-button--base.usa-button--active{color:white;background-color:#3d4551}.usa-button--secondary{color:white;background-color:#d83933}.usa-button--secondary:hover,.usa-button--secondary.usa-button--hover{color:white;background-color:#b50909}.usa-button--secondary:active,.usa-button--secondary.usa-button--active{color:white;background-color:#8b0a03}.usa-button--big{border-radius:0.25rem;font-size:1.46rem;padding:1rem 1.5rem}.usa-button--outline:disabled,.usa-button--outline:disabled:hover,.usa-button--outline:disabled:active,.usa-button--outline:disabled:focus,.usa-button--outline[aria-disabled=true],.usa-button--outline[aria-disabled=true]:hover,.usa-button--outline[aria-disabled=true]:active,.usa-button--outline[aria-disabled=true]:focus,.usa-button--outline-inverse:disabled,.usa-button--outline-inverse:disabled:hover,.usa-button--outline-inverse:disabled:active,.usa-button--outline-inverse:disabled:focus,.usa-button--outline-inverse[aria-disabled=true],.usa-button--outline-inverse[aria-disabled=true]:hover,.usa-button--outline-inverse[aria-disabled=true]:active,.usa-button--outline-inverse[aria-disabled=true]:focus{background-color:transparent;color:#757575}.usa-button--outline:disabled,.usa-button--outline[aria-disabled=true]{-webkit-box-shadow:inset 0 0 0 2px #c9c9c9;box-shadow:inset 0 0 0 2px #c9c9c9}.usa-button--outline:disabled.usa-button--inverse,.usa-button--outline[aria-disabled=true].usa-button--inverse{-webkit-box-shadow:inset 0 0 0 2px #919191;box-shadow:inset 0 0 0 2px #919191;color:#919191}@media (forced-colors: active){.usa-button--outline:disabled.usa-button--inverse,.usa-button--outline[aria-disabled=true].usa-button--inverse{color:GrayText}}.usa-button--unstyled{color:#005ea2;text-decoration:underline;background-color:transparent;border:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none;font-weight:normal;-ms-flex-pack:normal;justify-content:normal;text-align:left;margin:0;padding:0;width:auto}.usa-button--unstyled:visited{color:#54278f}.usa-button--unstyled:hover{color:#1a4480}.usa-button--unstyled:active{color:#162e51}.usa-button--unstyled:focus{outline:0.25rem solid #2491ff;outline-offset:0rem}.usa-button--unstyled:hover,.usa-button--unstyled.usa-button--hover,.usa-button--unstyled:disabled:hover,.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--unstyled:disabled.usa-button--hover,.usa-button--unstyled[aria-disabled=true].usa-button--hover,.usa-button--unstyled:active,.usa-button--unstyled.usa-button--active,.usa-button--unstyled:disabled:active,.usa-button--unstyled[aria-disabled=true]:active,.usa-button--unstyled:disabled.usa-button--active,.usa-button--unstyled[aria-disabled=true].usa-button--active,.usa-button--unstyled:disabled:focus,.usa-button--unstyled[aria-disabled=true]:focus,.usa-button--unstyled:disabled.usa-focus,.usa-button--unstyled[aria-disabled=true].usa-focus,.usa-button--unstyled:disabled,.usa-button--unstyled[aria-disabled=true],.usa-button--unstyled.usa-button--disabled{background-color:transparent;-webkit-box-shadow:none;box-shadow:none;text-decoration:underline}.usa-button--unstyled.usa-button--hover{color:#1a4480}.usa-button--unstyled.usa-button--active{color:#162e51}.usa-button--unstyled:disabled,.usa-button--unstyled[aria-disabled=true],.usa-button--unstyled:disabled:hover,.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--unstyled[aria-disabled=true]:focus{color:#757575}@media (forced-colors: active){.usa-button--unstyled:disabled,.usa-button--unstyled[aria-disabled=true],.usa-button--unstyled:disabled:hover,.usa-button--unstyled[aria-disabled=true]:hover,.usa-button--unstyled[aria-disabled=true]:focus{color:GrayText}}.usa-button-group{margin-bottom:0;margin-top:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-wrap:wrap;flex-wrap:wrap;list-style-type:none;margin-left:-0.25rem;margin-right:-0.25rem;padding-left:0}@media all and (min-width: 30em){.usa-button-group{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-align:stretch;align-items:stretch;-ms-flex-direction:row;flex-direction:row}}.usa-button-group .usa-button-group{height:100%}@media all and (min-width: 30em){.usa-button-group .usa-button-group .usa-button-group__item{margin-top:0;margin-bottom:0}}.usa-button-group .usa-button-group--segmented .usa-button-group__item{margin-top:0;margin-bottom:0}.usa-button-group__item{margin:0.25rem}@media all and (min-width: 30em){.usa-button-group__item:last-child{margin-right:0}}.usa-button-group__item .usa-button{height:100%;margin-left:0;margin-right:0}.usa-button-group--segmented{-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-pack:justify;justify-content:space-between;margin-left:0;margin-right:0}@media all and (min-width: 30em){.usa-button-group--segmented{-ms-flex-pack:start;justify-content:flex-start}}.usa-button-group--segmented .usa-button{position:relative;width:calc(100% + 2px)}@media all and (min-width: 30em){.usa-button-group--segmented .usa-button{width:auto}}.usa-button-group--segmented .usa-button:hover,.usa-button-group--segmented .usa-button:active{z-index:2}.usa-button-group--segmented .usa-button:focus{z-index:3}.usa-button-group--segmented .usa-button-group__item{margin-left:0;margin-right:0;width:100%}@media all and (min-width: 30em){.usa-button-group--segmented .usa-button-group__item{width:auto}}.usa-button-group--segmented .usa-button-group__item:first-child>.usa-button{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-1px}.usa-button-group--segmented .usa-button-group__item:last-child>.usa-button{border-top-left-radius:0;border-bottom-left-radius:0;margin-right:0;margin-left:-2px;width:calc(100% + 2px)}@media all and (min-width: 30em){.usa-button-group--segmented .usa-button-group__item:last-child>.usa-button{margin-left:-1px;width:auto}}.usa-button-group--segmented .usa-button-group__item:where(:not(:first-child):not(:last-child))>.usa-button{border-radius:0;margin-right:-1px;margin-left:-1px}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button::before{border-right:1px solid #1a4480;bottom:0;content:"";display:block;height:100%;position:absolute;right:1px;top:0;width:1px;z-index:3}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button--secondary::before{border-right-color:#b50909}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button--accent-cool::before{border-right-color:#28a0cb}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button--base::before{border-right-color:#565c65}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) [class*=usa-button]:disabled::before,.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) [class*=usa-button][aria-disabled=true]::before{border-right-color:white}.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button:active::before,.usa-button-group--segmented .usa-button-group__item:where(:not(:last-child)) .usa-button--outline::before{display:none}.usa-icon{display:inline-block;fill:currentColor;height:1em;position:relative;width:1em}.usa-icon--size-3{height:1.5rem;width:1.5rem}.usa-icon--size-4{height:2rem;width:2rem}.usa-icon--size-5{height:2.5rem;width:2.5rem}.usa-icon--size-6{height:3rem;width:3rem}.usa-icon--size-7{height:3.5rem;width:3.5rem}.usa-icon--size-8{height:4rem;width:4rem}.usa-icon--size-9{height:4.5rem;width:4.5rem}.usa-js-no-click{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.usa-js-no-click .usa-modal,.usa-js-no-click .usa-modal *{pointer-events:auto;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}[data-open-modal] *{pointer-events:none}.usa-modal-wrapper{text-align:center;-webkit-transition:opacity 0.15s ease-in-out;transition:opacity 0.15s ease-in-out}.usa-modal-wrapper.is-hidden{visibility:hidden;opacity:0;position:fixed}.usa-modal-wrapper.is-visible{visibility:visible;opacity:1;position:fixed;z-index:99999}.usa-modal-overlay{background:rgba(0, 0, 0, 0.7);bottom:0;height:100%;left:0;overflow:scroll;overflow-x:hidden;padding:1.5rem;position:fixed;scroll-behavior:smooth;top:0;width:100%}.usa-modal-overlay:before{content:"";display:inline-block;height:100%;vertical-align:middle}.usa-modal-overlay[data-force-action=true]{pointer-events:none}.usa-modal-overlay[data-force-action=true] *{pointer-events:auto}.usa-js-loading .usa-modal-wrapper{position:absolute;left:-999em;right:auto}.usa-js-loading .usa-modal-wrapper:target{position:static}.usa-modal{font-family:Source Sans Pro Web, "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;font-size:1.06rem;line-height:1.5;border-radius:0.5rem;background:white;color:#1b1b1b;display:inline-block;margin:1.25rem auto;max-width:30rem;position:relative;text-align:left;vertical-align:middle;width:100%}.usa-modal:focus{outline:none}.usa-modal__content{display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse;padding-top:2rem;width:100%}.usa-modal__main{margin:0 auto;padding:0.5rem 2rem 2rem}.usa-modal-wrapper [data-close-modal]>.usa-icon,.usa-modal-wrapper [data-close-modal]>.usa-icon use{pointer-events:none !important}.usa-modal__close{-ms-flex-align:center;align-items:center;-ms-flex-item-align:end;align-self:flex-end;background-color:transparent;color:#71767a;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;font-size:0.93rem;margin:-2rem 0 0 auto;padding:0.25rem 0.25rem;width:auto}.usa-modal__close:hover,.usa-modal__close:active{background-color:transparent;color:#1b1b1b}.usa-modal__close:focus{outline-offset:0}.usa-modal__close .usa-icon{height:2rem;margin:2px 2px 0 0;width:2rem}.usa-modal__heading{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.34rem;line-height:1.4;margin-top:0}.usa-modal__footer{margin-top:1.5rem}.usa-modal--lg{max-width:55rem;width:100%}.usa-modal--lg .usa-modal__main{padding-bottom:4rem;padding-top:1.25rem;width:100%;max-width:40rem}@media all and (min-width: 40em){.usa-modal--lg .usa-modal__heading{font-family:Merriweather Web, Georgia, Cambria, Times New Roman, Times, serif;font-size:1.95rem}}.usa-js-modal--active{overflow:hidden}.usa-error-message{font-size:1.06rem}:host([error]:not([error=""])),:host(.va-form-group--error){border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){border-left:none}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{border-left:0.25rem solid #b50909;padding-left:1rem;position:relative}@media screen and (min-width: 1024px){:host([error]:not([error=""])),:host(.va-form-group--error){margin-left:-0.9rem}:host([error]:not([error=""])[use-forms-pattern=multiple]) .input-wrap,:host(.va-form-group--error[use-forms-pattern=multiple]) .input-wrap{margin-left:-0.9rem}}@media screen and (max-width: 1023px){:host([error]:not([error=""])[use-forms-pattern=multiple]),:host(.va-form-group--error[use-forms-pattern=multiple]){padding-left:0}}.usa-modal-alert{padding:0px;margin-left:1rem}.usa-modal__heading,.usa-modal--lg .usa-modal__heading{font-family:var(--font-serif)}.usa-modal:not(.usa-modal--lg){width:auto}.usa-modal va-button{width:100%}.usa-modal__main div[role=document]{overflow-wrap:anywhere}@media screen and (max-width: 481px){.usa-modal__content{width:85%}}:host([status=info]) .usa-modal{border-left-color:var(--vads-color-primary-alt-dark);background-color:var(--vads-color-primary-alt-lightest)}:host .usa-modal__main{position:relative;margin:0px auto;-webkit-box-sizing:border-box;box-sizing:border-box}.va-modal__content{-ms-flex-direction:row;flex-direction:row;-ms-flex-align:baseline;align-items:baseline}.va-modal-alert__icon{color:var(--vads-color-base-darker);padding-top:1.25rem;position:relative;top:0.25rem}:host([status=continue]) .usa-modal{border-left-color:var(--vads-color-success-dark);background-color:var(--vads-color-success-lighter)}:host([status=success]) .usa-modal{border-left-color:var(--vads-color-success-dark);background-color:var(--vads-color-success-lighter)}:host([status=warning]) .usa-modal{border-left-color:var(--vads-color-warning);background-color:var(--vads-color-gold-lightest)}:host([status=error]) .usa-modal{border-left-color:var(--vads-color-secondary-dark);background-color:var(--vads-color-secondary-lightest)}.va-modal-alert{-webkit-box-sizing:border-box;box-sizing:border-box;border-left-style:solid;border-left-width:10px;display:-ms-inline-flexbox;display:inline-flex;padding:2rem 4rem 2rem 1.5rem}:host{display:block}:host([visible]:not([visible=false])){background:rgba(50, 58, 69, 0.8);bottom:0;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;left:0;overflow-y:auto;padding:0.938rem;position:fixed;scroll-behavior:smooth;text-align:center;top:0;width:100%;z-index:9001}:host([visible]:not([visible=false]))::before{content:"";display:inline-block;height:100%;vertical-align:middle}.va-modal-inner{background:var(--vads-color-white);bottom:0;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:auto;display:inline-block;margin:0.781rem auto;max-width:25rem;position:relative;text-align:left;vertical-align:middle;width:100%}.va-modal-close{background-color:transparent;color:var(--vads-color-base-darker);font-size:1.4rem;padding:6px;position:absolute;margin:0 0 0 auto;right:0;top:0;width:auto;z-index:9;white-space:nowrap}.va-modal-close:hover{color:var(--vads-color-base)}.va-modal-body{margin-right:1.25rem;overflow-wrap:break-word;padding:1.25rem;word-break:break-word;word-wrap:break-word}h1{font-family:var(--font-serif);font-size:1.25rem;line-height:1.3;margin-bottom:0.3125rem;margin-top:0.9375rem}.va-modal-title{margin:0 0 1rem 0}.alert-actions button{background-color:var(--vads-color-primary);margin-top:0.5rem;margin-right:0.5rem;margin-bottom:0.5rem;white-space:nowrap}.alert-actions .button-secondary{background-color:transparent;-webkit-box-shadow:inset 0 0 0 2px var(--vads-color-primary);box-shadow:inset 0 0 0 2px var(--vads-color-primary);color:var(--vads-color-primary)}.alert-actions button:hover,.alert-actions button:focus{background-color:var(--vads-color-primary-dark)}.alert-actions .button-secondary:hover,.alert-actions .button-secondary:focus{background-color:var(--vads-color-gray-cool-light)}.va-modal-alert::before{display:block;width:auto;background:none;font-family:"Font Awesome 5 Free";font-size:1.25rem;margin-right:1rem;position:static;font-weight:900;height:100%;left:0;top:0}.va-modal-alert .va-modal-alert-body{display:table-cell;padding-left:1rem;padding-right:0;width:100%;vertical-align:middle;margin:inherit}.va-modal-alert-title{margin:0 0 1.25rem 0}:host([status=continue]) .va-modal-inner{border-left-color:var(--vads-color-success-dark)}:host([status=error]) .va-modal-inner{border-left-color:var(--vads-color-secondary-dark)}:host([status=info]) .va-modal-inner{border-left-color:var(--vads-color-primary-alt-dark)}:host([status=success]) .va-modal-inner{border-left-color:var(--vads-color-success-dark)}:host([status=warning]) .va-modal-inner{border-left-color:var(--vads-color-warning)}.va-modal-alert .alert-actions{margin-top:1.5rem}.va-modal-alert .alert-actions button{margin:0}.va-modal-alert .alert-actions button+button{margin-left:1.25rem}@media (max-width: 320px){.alert-actions button{width:100%}.va-modal-alert .alert-actions{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.va-modal-alert .alert-actions button+button{margin:1rem 0 0 0}}@media screen and (max-width: 481px){:host([visible]:not([visible=false])){overflow-y:scroll}.va-modal-inner{top:0}.va-modal-alert .alert-actions{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.va-modal-alert .alert-actions button+button{margin:1rem 0 0 0}.usa-modal--lg .usa-modal__main{max-width:-webkit-fill-available;max-width:-moz-fit-content}}:host([large]:not([large=false])) .va-modal-inner{max-width:46.875rem;width:75vw}',VaModalStyle0=vaModalCss,VaModal=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.closeEvent=createEvent(this,"closeEvent",7),this.primaryButtonClick=createEvent(this,"primaryButtonClick",7),this.secondaryButtonClick=createEvent(this,"secondaryButtonClick",7),this.componentLibraryAnalytics=createEvent(this,"component-library-analytics",7),this.focusableChildren=null,this.clickToClose=!1,this.disableAnalytics=!1,this.large=!1,this.modalTitle=void 0,this.forcedModal=!1,this.unstyled=!1,this.initialFocusSelector=void 0,this.primaryButtonText=void 0,this.secondaryButtonText=void 0,this.status=void 0,this.visible=!1,this.ariaHiddenNodeExceptions=[],this.label=""}watchVisibleHandler(){this.isVisibleDirty=!0}componentDidLoad(){this.visible&&requestAnimationFrame((()=>this.setupModal()))}componentDidUpdate(){this.isVisibleDirty&&(this.isVisibleDirty=!1,this.visible?requestAnimationFrame((()=>this.setupModal())):this.teardownModal())}disconnectedCallback(){this.teardownModal()}handleButtonClickAnalytics(t){"va-modal"!==t.detail.componentName&&t.stopPropagation()}handleClick(t){this.clickToClose&&this.visible&&t.composedPath()[0]===this.el&&this.handleClose(t)}handleKeyDown(t){if(!this.visible)return;const e=t.key;if("Escape"===e&&this.handleClose(t),"Tab"!==e)return;const{ariaHiddenNodeExceptions:o}=this,a=this.getRealActiveElement(),n=this.focusableChildren[0],s=this.focusableChildren[this.focusableChildren.length-1];if(o.includes(a)){const e=a===o[0],i=a===o[o.length-1],u=o.indexOf(a);t.shiftKey?t.shiftKey&&(t.preventDefault(),e?s.focus():o[u-1].focus()):(t.preventDefault(),i?n.focus():o[u+1].focus())}else t.shiftKey||a!==s?t.shiftKey&&a===n&&(t.preventDefault(),(null==o?void 0:o.length)?o[o.length-1].focus():s.focus()):(t.preventDefault(),(null==o?void 0:o.length)?o[0].focus():n.focus())}handleClose(t){this.closeEvent.emit(t)}handlePrimaryButtonClick(t){if(this.primaryButtonClick.emit(t),!this.disableAnalytics){const t={componentName:"va-modal",action:"click",details:{clickLabel:this.primaryButtonText,status:this.status,title:this.modalTitle}};this.componentLibraryAnalytics.emit(t)}}handleSecondaryButtonClick(t){if(this.secondaryButtonClick.emit(t),!this.disableAnalytics){const t={componentName:"va-modal",action:"click",details:{clickLabel:this.secondaryButtonText,status:this.status,title:this.modalTitle}};this.componentLibraryAnalytics.emit(t)}}getFocusableChildren(){var t,e;const o=Array.from((null===(t=this.el)||void 0===t?void 0:t.querySelectorAll(focusableQueryString))||[]),a=Array.from((null===(e=this.alertActions)||void 0===e?void 0:e.querySelectorAll(focusableQueryString))||[]),n=[];return[this.closeButton,...o,...a].reduce(((t,e)=>{if(e&&(e.offsetWidth||e.offsetHeight))if(e.classList.contains("hydrated")){let o=[];if(e.shadowRoot?(n.push(e.tagName),o=Array.from(e.shadowRoot.querySelectorAll(focusableQueryString)||[])):o=Array.from(e.querySelectorAll(focusableQueryString)||[]),o.length)return t.push(e),t.concat(o)}else t.push(e);return t}),[]).filter((t=>!n.includes(t.tagName)))}getRealActiveElement(){let t=document.activeElement;for(;t&&t.shadowRoot&&t.shadowRoot.activeElement;)t=t.shadowRoot.activeElement;return t}hideOrShowAriaHiddenExceptionsSiblings(t=!1){for(const e of this.ariaHiddenNodeExceptions){const o=e.parentElement;o&&Array.from(o.children).forEach((o=>{o!==e&&o!==this.el&&(t?o.removeAttribute("aria-hidden"):o.setAttribute("aria-hidden","true"))}))}}setupModal(){var t;this.savedFocus=this.getRealActiveElement(),this.focusableChildren=this.getFocusableChildren();const e=this.el.querySelector(this.initialFocusSelector)||(null===(t=this.el.shadowRoot)||void 0===t?void 0:t.querySelector(this.initialFocusSelector))||this.closeButton;null==e||e.focus(),disableBodyScroll(this.el);const o=[];let a=this.el.parentElement||this.el.parentNode.host;for(;a&&a!==document.body;)if(o.push(a),a.parentElement)a=a.parentElement;else{if(!a.parentNode||!a.parentNode.host)break;a=a.parentNode.host}this.hideOrShowAriaHiddenExceptionsSiblings(!1);const n=[...this.ariaHiddenNodeExceptions,...o,this.el];if(this.undoAriaHidden=hideOthers(n),!this.disableAnalytics){const t={componentName:"va-modal",action:"show",details:{status:this.status,title:this.modalTitle,primaryButtonText:this.primaryButtonText,secondaryButtonText:this.secondaryButtonText}};this.componentLibraryAnalytics.emit(t)}}teardownModal(){var t,e;clearAllBodyScrollLocks(),null===(t=this.undoAriaHidden)||void 0===t||t.call(this),this.hideOrShowAriaHiddenExceptionsSiblings(!0),null===(e=this.savedFocus)||void 0===e||e.focus()}render(){const{label:t,modalTitle:e,primaryButtonClick:o,primaryButtonText:a,secondaryButtonClick:n,secondaryButtonText:s,status:i,visible:u,forcedModal:r,unstyled:l}=this;if(!u)return null;let d=null,c="Close modal";t?(d=t,c=`Close ${t} modal`):e&&""!==e?(d=`${e} modal`,c=`Close ${e} modal`):console.warn("<va-modal>: An accessible name for the modal is required. Please provide either a label or modalTitle prop value.");const b=classnames({"usa-modal":!0,"va-modal-alert":i,"usa-modal--lg":this.large}),m=classnames({"usa-modal__content":!0,"usa-modal-alert":i,"va-modal__content":!0}),v=classnames({"usa-modal__main":!0,"usa-modal-alert":i,"va-modal-alert-body":i}),p=classnames({"usa-modal__heading":!0,"va-modal-alert-title":i}),f=r?"":h("button",{"aria-label":c,class:"va-modal-close",onClick:t=>this.handleClose(t),ref:t=>this.closeButton=t,type:"button"},h("va-icon",{icon:"close",size:4}));return h(Host,null,h("div",{class:b,role:"warning"===i||"error"===i?"alertdialog":"dialog","aria-modal":"true","aria-label":d},h("div",{class:m},f,i&&h("va-icon",{class:"va-modal-alert__icon",icon:{continue:"lock",error:"error",info:"info",success:"check",warning:"warning"}[i],size:4}),h("div",{class:v},h("div",{role:"document"},e&&h("h2",{class:p,tabindex:-1,id:"heading"},e),h("div",{class:"usa-prose",id:"description"},h("slot",null))),(o&&a||n&&s)&&h("div",{class:"usa-modal__footer",ref:t=>this.alertActions=t},h("ul",{class:"usa-button-group"},o&&a&&h("li",{class:"usa-button-group__item"},h("va-button",{onClick:t=>this.handlePrimaryButtonClick(t),text:a})),n&&s&&h("li",{class:"usa-button-group__item"},!l&&h("va-button",{onClick:t=>this.handleSecondaryButtonClick(t),secondary:!0,text:s}),l&&h("button",{onClick:t=>this.handlePrimaryButtonClick(t),type:"button",class:"usa-button usa-button--unstyled"},s))))))))}get el(){return this}static get watchers(){return{visible:["watchVisibleHandler"]}}static get style(){return VaModalStyle0}},[1,"va-modal",{clickToClose:[4,"click-to-close"],disableAnalytics:[4,"disable-analytics"],large:[516],modalTitle:[1,"modal-title"],forcedModal:[4,"forced-modal"],unstyled:[4],initialFocusSelector:[1,"initial-focus-selector"],primaryButtonText:[1,"primary-button-text"],secondaryButtonText:[1,"secondary-button-text"],status:[1],visible:[516],ariaHiddenNodeExceptions:[16],label:[1]},[[0,"component-library-analytics","handleButtonClickAnalytics"],[0,"click","handleClick"],[8,"keydown","handleKeyDown"]],{visible:["watchVisibleHandler"]}]);function defineCustomElement(){"undefined"!=typeof customElements&&["va-modal","va-button","va-icon"].forEach((t=>{switch(t){case"va-modal":customElements.get(t)||customElements.define(t,VaModal);break;case"va-button":customElements.get(t)||defineCustomElement$2();break;case"va-icon":customElements.get(t)||defineCustomElement$1()}}))}export{VaModal as V,defineCustomElement as d};
|