1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64593],{23827:(t,e,a)=>{a.d(e,{a:()=>u});var o=a(41088),i=a(98314),n=a(24291),r=a(85065),s=a(40629),c=a(11598),l=t=>(0,s.b)` 2 width: ${t}; 3 height: ${t}; 4 font-size: ${t}; 5 line-height: ${t}; 6 `,d=(0,s.b)` 7 :host { 8 --icon-size-value-xxsmall: var(--icon-xxsmall-dimensions); 9 --icon-size-value-xsmall: var(--icon-xsmall-dimensions); 10 --icon-size-value-small: var(--icon-small-dimensions); 11 --icon-size-value-medium: var(--icon-medium-dimensions); 12 --icon-size-value-large: var(--icon-large-dimensions); 13 --icon-size-value-xlarge: var(--icon-xlarge-dimensions); 14 display: inline-block; 15 line-height: 0; 16 } 17 18 :host span.geico-icon:before { 19 display: inline-block; 20 margin: 0 auto; 21 } 22 23 :host([size="xxsmall"]) span { 24 ${l((0,s.b)`var(--icon-size-value-xxsmall)`)} 25 } 26 27 :host([size="xsmall"]) span { 28 ${l((0,s.b)`var(--icon-size-value-xsmall)`)} 29 } 30 31 :host([size="small"]) span { 32 ${l((0,s.b)`var(--icon-size-value-small)`)} 33 } 34 35 :host([size="medium"]) span { 36 ${l((0,s.b)`var(--icon-size-value-medium)`)} 37 } 38 39 :host([size="large"]) span { 40 ${l((0,s.b)`var(--icon-size-value-large)`)} 41 } 42 43 :host([size="xlarge"]) span { 44 ${l((0,s.b)`var(--icon-size-value-xlarge)`)} 45 } 46 47 span[color="default"] { 48 color: var(--icon-default-color, var(--text-color)); 49 } 50 51 span[color="brand"] { 52 color: var(--color-brand-standalone-icon); 53 } 54 55 span[color="brand-alt"] { 56 color: var(--color-brand-secondary-accent); 57 } 58 59 span[color="action"] { 60 color: var(--color-action-standalone-icon); 61 } 62 63 span[color="warning"] { 64 color: var(--color-warning-standalone-icon); 65 } 66 67 span[color="success"] { 68 color: var(--color-success-standalone-icon); 69 } 70 71 span[color="danger"] { 72 color: var(--color-danger-standalone-icon); 73 } 74 75 span[color="purple"] { 76 color: var(--color-accent-purple); 77 } 78 79 span[color="teal"] { 80 color: var(--color-accent-teal); 81 } 82 83 span[color="magenta"] { 84 color: var(--color-accent-magenta); 85 } 86 87 span[color="neutral"] { 88 color: var(--color-neutral-standalone-icon); 89 } 90 91 span[color="reverse"] { 92 color: var(--text-color-reverse); 93 } 94 95 span[color="always-white"] { 96 color: var(--icon-color-reverse); 97 } 98 99 span[color="always-black"] { 100 color: var(--icon-color-black); 101 } 102 103 a { 104 text-decoration: none; 105 } 106 107 :host([type="link"]) a { 108 cursor: pointer; 109 } 110 111 :host button { 112 background: transparent; 113 border: none; 114 cursor: pointer; 115 116 &:focus:not(:focus-visible) { 117 outline: none; 118 } 119 120 &:focus-visible { 121 outline: var(--focus-outline); 122 outline-offset: var(--focus-outline-offset); 123 } 124 } 125 126 :host(.reset-padding) { 127 button { 128 padding: 0; 129 } 130 } 131 132 :host([type="button"]) button { 133 color: var(--color-action); 134 &:active { 135 color: var(--color-action-active); 136 } 137 &:hover { 138 color: var(--color-action-hover); 139 } 140 } 141 142 :host([type="destructive"]) button { 143 color: var(--color-neutral-standalone-text); 144 &:active { 145 color: var(--icon-destructive-active-color); 146 } 147 &:hover { 148 color: var(--icon-destructive-hover-color); 149 } 150 } 151`,h=(0,s.b)` 152 :host-context([data-gdstheme*="dark"]):host([type="button"]) button:active { 153 color: var(--color-action); 154 } 155 156 :host-context([data-gdstheme*="dark"]):host([type="button"]) button:hover { 157 color: var(--color-action); 158 } 159`,u=class extends s.g{constructor(){super(...arguments),this.iconType="vehicle",this.color="default",this.size="medium"}render(){let t=(0,s.c)`
160 <span 161 class="geico-icon icon-${this.iconType||"vehicle"}" 162 color="${this.type?s.e:this.color||"default"}" 163 ></span> 164 `;return this.type?"link"===this.type?(0,s.c)` 165 <a href="${this.href}" target="${this.target||s.e}"> 166 ${t} 167 </a> 168 `:"button"===this.type||"destructive"===this.type?(0,s.c)` 169 <button 170 type="button" 171 @click="${this.iconButtonClick}" 172 aria-label="${this.buttonAriaLabel||s.e}" 173 > 174 ${t} 175 </button> 176 `:void 0:(0,s.c)` ${t} `}connectedCallback(){super.connectedCallback();let t=new CSSStyleSheet;t.replaceSync(d.cssText);let e=new CSSStyleSheet;e.replaceSync(h.cssText),this.shadowRoot.adoptedStyleSheets=[i.d,i.b,t,e,i.c]}updated(t){(t.has("size")||t.has("type"))&&this.type&&"medium"!==this.size&&"small"!==this.size&&(this.size="medium")}iconButtonClick(){this.dispatchEvent(new CustomEvent("icon-button-click",o.a))}};(0,c.c)([(0,n.b)({reflect:!0})],u.prototype,"type",2),(0,c.c)([(0,n.b)({type:String,attribute:"icon-type"})],u.prototype,"iconType",2),(0,c.c)([(0,n.b)({type:String,reflect:!0})],u.prototype,"color",2),(0,c.c)([(0,n.b)({type:String,reflect:!0})],u.prototype,"size",2),(0,c.c)([(0,n.b)()],u.prototype,"href",2),(0,c.c)([(0,n.b)()],u.prototype,"target",2),(0,c.c)([(0,n.b)({type:String,attribute:"button-aria-label"})],u.prototype,"buttonAriaLabel",2),u=(0,c.c)([(0,r.a)("gds-icon")],u)},41088:(t,e,a)=>{a.d(e,{a:()=>o});var o={bubbles:!0,cancelable:!1,composed:!0}},51112:(t,e,a)=>{a.r(e),a.d(e,{GdsPagination:()=>d});var o=a(41088),i=a(98314),n=a(24291),r=a(85065),s=a(40629),c=a(11598),l=(0,s.b)` 177 :host { 178 align-content: center; 179 margin: var(--pagination-margin); 180 width: var(--pagination-width); 181 } 182 183 p { 184 margin: 0; 185 padding: 0; 186 } 187 188 .pages { 189 display: flex; 190 list-style-type: none; 191 justify-content: center; 192 } 193 194 .pages button { 195 font-family: var(--font-family); 196 display: flex; 197 align-items: center; 198 justify-content: center; 199 border: var(--pagination-button-border-style); 200 border-radius: var(--pagination-button-border-radius); 201 width: var(--pagination-button-width); 202 height: var(--pagination-button-height); 203 line-height: var(--pagination-button-line-height); 204 font-size: var(--pagination-button-font-size); 205 background-color: var(--color-pagination-surface); 206 text-align: center; 207 color: var(--text-color-pagination); 208 text-decoration: none; 209 font-weight: var(--font-weight-bold); 210 --color-brand-standalone-icon: var(--text-color-pagination); 211 --icon-xsmall-dimensions: var(--pagination-icon-button-font-size); 212 } 213 214 .pages button:hover { 215 cursor: pointer; 216 background-color: var(--color-pagination-surface-hover); 217 --color-brand-standalone-icon: var(--text-color-pagination-hover); 218 color: var(--text-color-pagination-hover); 219 } 220 221 .pages button:focus-visible { 222 outline: var(--focus-outline); 223 outline-offset: var(--focus-outline-offset); 224 } 225 226 #currentPage { 227 background-color: var(--color-pagination-surface-hover); 228 border: var(--pagination-current-page-border-style); 229 cursor: default; 230 color: var(--text-color-pagination-hover); 231 pointer-events: none; 232 } 233 234 .button-wrapper { 235 border-radius: var(--pagination-button-border-radius); 236 width: var(--pagination-button-width); 237 height: var(--pagination-button-height); 238 line-height: var(--pagination-button-line-height); 239 margin-left: var(--pagination-button-wrapper-margin-left); 240 margin-right: var(--pagination-button-wrapper-margin-right); 241 } 242 243 .disabled { 244 cursor: not-allowed; 245 button:disabled { 246 border: var(--pagination-disabled-button-border-style); 247 background-color: var(--color-pagination-surface-disabled); 248 --color-brand-standalone-icon: var(--text-color-pagination-disabled); 249 pointer-events: none; 250 } 251 } 252 253 .total-pages { 254 padding-top: var(--pagination-total-pages-padding-top); 255 text-align: center; 256 color: var(--text-color-pagination-secondary); 257 } 258 259 .view-all-wrapper { 260 text-align: center; 261 } 262 263 .view-all { 264 font-weight: var(--font-weight-bold); 265 text-decoration: var(--text-decoration-underline); 266 } 267 268 .view-all:hover { 269 cursor: pointer; 270 text-decoration: var(--text-decoration-none); 271 } 272 273 .view-all:active { 274 text-decoration: var(--text-decoration-none); 275 } 276`,d=class extends s.g{constructor(){super(),this.currentPage=1,this.viewAll=!1,this.isMobile=!1,this.handleResize=this.handleResize.bind(this)}viewAllEvent(){this.dispatchEvent(new CustomEvent("view-all-click",{...o.a}))}pageClickEvent(){this.dispatchEvent(new CustomEvent("page-click",{detail:{value:this.currentPage},...o.a}))}
276populateList(){let t,e;return this.currentPage>this.totalPages?this.currentPage=this.totalPages:this.currentPage<1&&(this.currentPage=1),1===this.totalPages?(t=[this.currentPage],e=0):2===this.totalPages?(t=1===this.currentPage?[this.currentPage,this.currentPage+1]:[this.currentPage-1,this.currentPage],e=this.currentPage-1):1===this.currentPage?(t=[this.currentPage,this.currentPage+1,this.currentPage+2],e=0):this.currentPage===this.totalPages?(t=[this.currentPage-2,this.currentPage-1,this.currentPage],e=2):(t=[this.currentPage-1,this.currentPage,this.currentPage+1],e=1),t.map((t,a)=>(0,s.c)` 277 <div class="button-wrapper"> 278 <button 279 id="${a===e?"currentPage":void 0}" 280 @click="${this.changePageHandler(t)}" 281 > 282 ${t} 283 </button> 284 </div> 285 `)}populateMobile(){if(this.currentPage>this.totalPages?this.currentPage=this.totalPages:this.currentPage<1&&(this.currentPage=1),window.matchMedia("(max-width: 480px)").matches&&this.totalPages>3)return(0,s.c)` 286 <div class="button-wrapper"> 287 <button 288 id="currentPage" 289 @click="${this.changePageHandler(this.currentPage)}" 290 > 291 ${this.currentPage} 292 </button> 293 </div> 294 `}firstPage(){this.currentPage=1,this.pageClickEvent()}lastPage(){this.currentPage=this.totalPages,this.pageClickEvent()}prevPage(){this.currentPage--,this.currentPage=Math.max(this.currentPage,1),this.pageClickEvent()}nextPage(){this.currentPage++,this.currentPage=Math.min(this.currentPage,this.totalPages),this.pageClickEvent()}changePage(t){this.currentPage=t,this.pageClickEvent()}changePageHandler(t){return()=>this.changePage(t)}render(){let t=this.currentPage<=2,e=1===this.currentPage,a=this.currentPage===this.totalPages,o=this.currentPage>=this.totalPages-1;return(0,s.c)` 295 <div class="pagination-container"> 296 ${this.totalPages>3?(0,s.c)` <div class="pages"> 297 <div class="button-wrapper ${t?"disabled":void 0}"> 298 <button 299 ?disabled="${t}" 300 @click="${this.firstPage}" 301 > 302 <gds-icon 303 icon-type="chevron-double-left" 304 size="xsmall" 305 color="brand" 306 ></gds-icon> 307 </button> 308 </div> 309 <div class="button-wrapper ${e?"disabled":void 0}"> 310 <button 311 ?disabled="${e}" 312 @click="${this.prevPage}" 313 > 314 <gds-icon 315 icon-type="chevron-left" 316 size="xsmall" 317 color="brand" 318 ></gds-icon> 319 </button> 320 </div> 321 ${this.isMobile?this.populateMobile():this.populateList()} 322 <div class="button-wrapper ${a?"disabled":void 0}"> 323 <button 324 ?disabled="${a}" 325 @click="${this.nextPage}" 326 > 327 <gds-icon 328 icon-type="chevron-right" 329 size="xsmall" 330 color="brand" 331 ></gds-icon> 332 </button> 333 </div> 334 <div class="button-wrapper ${o?"disabled":void 0}"> 335 <button 336 ?disabled="${o}" 337 @click="${this.lastPage}" 338 > 339 <gds-icon 340 icon-type="chevron-double-right" 341 size="xsmall" 342 color="brand" 343 ></gds-icon> 344 </button> 345 </div> 346 </div>`:(0,s.c)` <div class="pages">${this.populateList()}</div>`} 347 <div class="total-pages"> 348 <p>${this.totalPages} Pages</p> 349 </div> 350 ${this.viewAll?(0,s.c)` <div class="view-all-wrapper"> 351 <a class="view-all" @click="${this.viewAllEvent}"> View All </a> 352 </div>`:s.e} 353 </div> 354 `}handleResize(){this.isMobile=window.matchMedia("(max-width: 480px)").matches}connectedCallback(){super.connectedCallback();let t=new CSSStyleSheet;t.replaceSync(l.cssText),this.shadowRoot.adoptedStyleSheets=[t,i.d],window.addEventListener("resize",this.handleResize),this.handleResize()}disconnectedCallback(){window.removeEventListener("resize",this.handleResize),super.disconnectedCallback()}};(0,c.c)([(0,n.b)({type:Number,reflect:!0,attribute:"total-pages"})],d.prototype,"totalPages",2),(0,c.c)([(0,n.b)({type:Number,reflect:!0,attribute:"current-page"})],d.prototype,"currentPage",2),(0,c.c)([(0,n.b)({type:Boolean,reflect:!0,attribute:"view-all"})],d.prototype,"viewAll",2),(0,c.c)([(0,n.c)()],d.prototype,"isMobile",2),d=(0,c.c)([(0,r.a)("gds-pagination")],d),a(23827),a(8802)}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.