@sbb-esta/lyne-elements 4.8.1 → 4.10.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/accordion/accordion.component.js +1 -1
- package/{accordion.component-DmaGQH3Q.js → accordion.component-Bos7Gwof.js} +17 -17
- package/accordion.js +1 -1
- package/accordion.pure.js +1 -1
- package/action-group/action-group.component.js +1 -1
- package/action-group.component-BYif_gBd.js +158 -0
- package/action-group.js +1 -1
- package/action-group.pure.js +1 -1
- package/alert/alert/alert.component.js +1 -1
- package/alert/alert-group/alert-group.component.js +1 -1
- package/alert/alert-group.js +1 -1
- package/alert/alert.js +1 -1
- package/{alert-group.component-RV1M1OKy.js → alert-group.component-Es6bBiff.js} +18 -18
- package/alert.component-BiAbeeYd.js +169 -0
- package/alert.js +2 -2
- package/alert.pure.js +2 -2
- package/autocomplete/autocomplete-base-element.js +1 -1
- package/autocomplete/autocomplete.component.js +1 -1
- package/{autocomplete-base-element-DVFCZ4lt.js → autocomplete-base-element-DarHnnYC.js} +35 -35
- package/autocomplete.js +1 -1
- package/autocomplete.pure.js +1 -1
- package/block-link-common-DzGY49Xc.js +57 -0
- package/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
- package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +1 -1
- package/breadcrumb/breadcrumb-group.js +1 -1
- package/breadcrumb/breadcrumb.js +1 -1
- package/{breadcrumb-group.component-CfUyO1sI.js → breadcrumb-group.component-Cc6CHbVy.js} +14 -14
- package/breadcrumb.component-C1xO7cgt.js +24 -0
- package/breadcrumb.js +2 -2
- package/breadcrumb.pure.js +2 -2
- package/button/accent-button/accent-button.component.js +1 -1
- package/button/accent-button-link/accent-button-link.component.js +1 -1
- package/button/accent-button-link.js +1 -2
- package/button/accent-button-static/accent-button-static.component.js +1 -1
- package/button/accent-button-static.js +1 -2
- package/button/accent-button.js +1 -2
- package/button/button/button.component.js +1 -1
- package/button/button-link/button-link.component.js +1 -1
- package/button/button-link.js +1 -2
- package/button/button-static/button-static.component.js +1 -1
- package/button/button-static.js +1 -2
- package/button/button.js +1 -2
- package/button/common/button-common.js +2 -87
- package/button/common.js +5 -3
- package/button/mini-button/mini-button.component.js +1 -1
- package/button/mini-button-group/mini-button-group.component.js +1 -1
- package/button/mini-button-group.js +2 -3
- package/button/mini-button-link/mini-button-link.component.js +1 -1
- package/button/mini-button-link.js +2 -3
- package/button/mini-button.js +1 -2
- package/button/secondary-button/secondary-button.component.js +1 -1
- package/button/secondary-button-link/secondary-button-link.component.js +1 -1
- package/button/secondary-button-link.js +1 -2
- package/button/secondary-button-static/secondary-button-static.component.js +1 -1
- package/button/secondary-button-static.js +1 -2
- package/button/secondary-button.js +1 -2
- package/button/transparent-button/transparent-button.component.js +1 -1
- package/button/transparent-button-link/transparent-button-link.component.js +1 -1
- package/button/transparent-button-link.js +1 -2
- package/button/transparent-button-static/transparent-button-static.component.js +1 -1
- package/button/transparent-button-static.js +1 -2
- package/button/transparent-button.js +1 -2
- package/button-common-yFVzAoGy.js +87 -0
- package/button.js +4 -5
- package/button.pure.js +4 -5
- package/calendar/calendar/calendar.component.js +1 -1
- package/calendar/calendar-day/calendar-day.component.js +1 -1
- package/calendar/calendar-day.js +1 -1
- package/calendar/calendar.js +1 -1
- package/calendar/common/calendar-cell-base-element.js +2 -23
- package/calendar/common.js +2 -6
- package/calendar-cell-base-element-CBaanSU3.js +25 -0
- package/{calendar-day.component-Iewo-vBR.js → calendar-day.component-BBszRsGw.js} +12 -12
- package/{calendar.component-Cz-OGQu6.js → calendar.component-DhmaJt2k.js} +138 -236
- package/calendar.js +2 -2
- package/calendar.pure.js +2 -2
- package/card/card/card.component.js +1 -1
- package/card/card-badge/card-badge.component.js +1 -1
- package/card/card-badge.js +1 -1
- package/card/card.js +1 -1
- package/card/common/card-action-common.js +1 -1
- package/card/common.js +1 -1
- package/{card-action-common-GpkaNYtV.js → card-action-common-Ct0e9dtO.js} +11 -11
- package/card-badge.component-BSOEYrN4.js +65 -0
- package/card.component-D14GBu6y.js +62 -0
- package/card.js +3 -3
- package/card.pure.js +3 -3
- package/carousel/carousel/carousel.component.js +1 -1
- package/carousel/carousel-item/carousel-item.component.js +1 -1
- package/carousel/carousel-item.js +1 -1
- package/carousel/carousel-list/carousel-list.component.js +1 -1
- package/carousel/carousel-list.js +1 -1
- package/carousel/carousel.js +1 -1
- package/{carousel-item.component-kv3rY8B-.js → carousel-item.component-DUII_cjr.js} +5 -5
- package/{carousel-list.component-DMMk66SP.js → carousel-list.component-C0i7aHTM.js} +5 -5
- package/{carousel.component-BA0V2JHI.js → carousel.component-BxKrGk84.js} +12 -12
- package/carousel.js +3 -3
- package/carousel.pure.js +3 -3
- package/checkbox/checkbox.component.js +1 -2
- package/checkbox/checkbox.js +1 -2
- package/checkbox/common/checkbox-common.js +1 -1
- package/checkbox/common.js +1 -1
- package/{checkbox-common-J-7Y966k.js → checkbox-common-DdieysTG.js} +4 -3
- package/{checkbox.component-Bazdxs9R.js → checkbox.component-ROzxEnPh.js} +18 -18
- package/checkbox.js +2 -2
- package/checkbox.pure.js +2 -2
- package/chip/chip/chip.component.js +1 -1
- package/chip/chip-group/chip-group.component.js +1 -1
- package/chip/chip-group.js +1 -1
- package/chip/chip.js +1 -1
- package/{chip-group.component-CbruCoHR.js → chip-group.component-DJzUToem.js} +17 -17
- package/chip-label/chip-label.component.js +1 -1
- package/chip-label.component-B76PdOCg.js +80 -0
- package/chip-label.js +1 -1
- package/chip-label.pure.js +1 -1
- package/chip.component-Cu5guQs8.js +98 -0
- package/chip.js +2 -2
- package/chip.pure.js +2 -2
- package/clock/clock.component.js +1 -1
- package/{clock.component-gZJy4AU4.js → clock.component-DHFuoi2A.js} +12 -12
- package/clock.js +1 -1
- package/clock.pure.js +1 -1
- package/compact-paginator.component-Cyi-t_YD.js +43 -0
- package/container/container/container.component.js +1 -1
- package/container/container.js +1 -1
- package/container/sticky-bar/sticky-bar.component.js +1 -1
- package/container/sticky-bar.js +1 -1
- package/container.component-CkYADvvc.js +117 -0
- package/container.js +2 -2
- package/container.pure.js +2 -2
- package/core/a11y/focus-trap-controller.js +2 -2
- package/core/base-elements/element.js +2 -1
- package/core/base-elements/selection-group-base-element.js +1 -1
- package/core/base-elements.js +1 -1
- package/core/controllers/media-matchers-controller.js +1 -1
- package/core/datetime/date-adapter.js +13 -13
- package/core/datetime.js +4 -4
- package/core/i18n/i18n.js +6 -1
- package/core/i18n.js +2 -2
- package/core/mixins/panel-mixin.js +2 -110
- package/core/mixins.js +4 -9
- package/core/styles/core.scss +65 -82
- package/core/styles/layout.private.scss +36 -0
- package/core/styles/mixins/table.scss +40 -29
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +371 -0
- package/core/styles/scrollbar.private.scss +15 -0
- package/core/styles/styles.js +2 -0
- package/core/styles/table.scss +34 -0
- package/core/styles/typography.private.scss +9 -0
- package/core/styles.js +2 -5
- package/core.css +203 -43
- package/core.js +82 -0
- package/custom-elements.json +2451 -1455
- package/date-input/date-input.component.js +1 -1
- package/{date-input.component-Da-aS3jt.js → date-input.component-B3f_GThS.js} +17 -17
- package/date-input.js +1 -1
- package/date-input.pure.js +1 -1
- package/datepicker/common/datepicker-button.js +1 -1
- package/datepicker/common.js +1 -1
- package/datepicker/datepicker/datepicker.component.js +1 -1
- package/datepicker/datepicker-next-day/datepicker-next-day.component.js +4 -4
- package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +4 -4
- package/datepicker/datepicker-toggle/datepicker-toggle.component.js +5 -5
- package/datepicker/datepicker.js +1 -1
- package/{datepicker-button-Dk2UQkPN.js → datepicker-button-B91ISxhE.js} +8 -7
- package/{datepicker.component-DUVgoAGU.js → datepicker.component-DJ_9VBnC.js} +15 -15
- package/datepicker.js +2 -2
- package/datepicker.pure.js +2 -2
- package/development/accordion/accordion.component.d.ts.map +1 -1
- package/development/accordion/accordion.component.js +1 -1
- package/development/accordion.component-CGTwcntz.js +170 -0
- package/development/accordion.js +1 -1
- package/development/accordion.pure.js +1 -1
- package/development/action-group/action-group.component.d.ts.map +1 -1
- package/development/action-group/action-group.component.js +1 -1
- package/development/action-group.component-DQ7_kjB9.js +215 -0
- package/development/action-group.js +1 -1
- package/development/action-group.pure.js +1 -1
- package/development/alert/alert/alert.component.d.ts.map +1 -1
- package/development/alert/alert/alert.component.js +1 -1
- package/development/alert/alert-group/alert-group.component.d.ts.map +1 -1
- package/development/alert/alert-group/alert-group.component.js +1 -1
- package/development/alert/alert-group.js +1 -1
- package/development/alert/alert.js +1 -1
- package/development/alert-group.component-DnnPrv5I.js +191 -0
- package/development/alert.component-CYb1vnDZ.js +217 -0
- package/development/alert.js +2 -2
- package/development/alert.pure.js +2 -2
- package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
- package/development/autocomplete/autocomplete-base-element.js +1 -1
- package/development/autocomplete/autocomplete.component.js +1 -1
- package/development/autocomplete-base-element-YwfObJzm.js +678 -0
- package/development/autocomplete.js +1 -1
- package/development/autocomplete.pure.js +1 -1
- package/development/block-link-common-GckvjULA.js +71 -0
- package/development/breadcrumb/breadcrumb/breadcrumb.component.d.ts +1 -1
- package/development/breadcrumb/breadcrumb/breadcrumb.component.d.ts.map +1 -1
- package/development/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts.map +1 -1
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +1 -1
- package/development/breadcrumb/breadcrumb-group.js +1 -1
- package/development/breadcrumb/breadcrumb.js +1 -1
- package/development/breadcrumb-group.component-B3Shlng3.js +195 -0
- package/development/breadcrumb.component-DxSUxLZO.js +35 -0
- package/development/breadcrumb.js +2 -2
- package/development/breadcrumb.pure.js +2 -2
- package/development/button/accent-button/accent-button.component.d.ts +1 -1
- package/development/button/accent-button/accent-button.component.d.ts.map +1 -1
- package/development/button/accent-button/accent-button.component.js +2 -2
- package/development/button/accent-button-link/accent-button-link.component.d.ts +1 -1
- package/development/button/accent-button-link/accent-button-link.component.d.ts.map +1 -1
- package/development/button/accent-button-link/accent-button-link.component.js +2 -2
- package/development/button/accent-button-link.js +3 -1
- package/development/button/accent-button-static/accent-button-static.component.d.ts +1 -1
- package/development/button/accent-button-static/accent-button-static.component.d.ts.map +1 -1
- package/development/button/accent-button-static/accent-button-static.component.js +2 -2
- package/development/button/accent-button-static.js +3 -1
- package/development/button/accent-button.js +3 -1
- package/development/button/button/button.component.d.ts +1 -1
- package/development/button/button/button.component.d.ts.map +1 -1
- package/development/button/button/button.component.js +2 -2
- package/development/button/button-link/button-link.component.d.ts +1 -1
- package/development/button/button-link/button-link.component.d.ts.map +1 -1
- package/development/button/button-link/button-link.component.js +2 -2
- package/development/button/button-link.js +3 -1
- package/development/button/button-static/button-static.component.d.ts +1 -1
- package/development/button/button-static/button-static.component.d.ts.map +1 -1
- package/development/button/button-static/button-static.component.js +2 -2
- package/development/button/button-static.js +3 -1
- package/development/button/button.js +3 -1
- package/development/button/common/button-common.d.ts +7 -0
- package/development/button/common/button-common.d.ts.map +1 -1
- package/development/button/common/button-common.js +2 -117
- package/development/button/common.d.ts.map +1 -1
- package/development/button/common.js +8 -3
- package/development/button/mini-button/mini-button.component.js +2 -2
- package/development/button/mini-button-group/mini-button-group.component.d.ts.map +1 -1
- package/development/button/mini-button-group/mini-button-group.component.js +1 -1
- package/development/button/mini-button-group.js +4 -2
- package/development/button/mini-button-link/mini-button-link.component.d.ts.map +1 -1
- package/development/button/mini-button-link/mini-button-link.component.js +1 -1
- package/development/button/mini-button-link.js +4 -2
- package/development/button/mini-button.js +3 -1
- package/development/button/secondary-button/secondary-button.component.d.ts +1 -1
- package/development/button/secondary-button/secondary-button.component.d.ts.map +1 -1
- package/development/button/secondary-button/secondary-button.component.js +2 -2
- package/development/button/secondary-button-link/secondary-button-link.component.d.ts +1 -1
- package/development/button/secondary-button-link/secondary-button-link.component.d.ts.map +1 -1
- package/development/button/secondary-button-link/secondary-button-link.component.js +2 -2
- package/development/button/secondary-button-link.js +3 -1
- package/development/button/secondary-button-static/secondary-button-static.component.d.ts +1 -1
- package/development/button/secondary-button-static/secondary-button-static.component.d.ts.map +1 -1
- package/development/button/secondary-button-static/secondary-button-static.component.js +2 -2
- package/development/button/secondary-button-static.js +3 -1
- package/development/button/secondary-button.js +3 -1
- package/development/button/transparent-button/transparent-button.component.d.ts +1 -1
- package/development/button/transparent-button/transparent-button.component.js +2 -2
- package/development/button/transparent-button-link/transparent-button-link.component.d.ts +1 -1
- package/development/button/transparent-button-link/transparent-button-link.component.js +2 -2
- package/development/button/transparent-button-link.js +3 -1
- package/development/button/transparent-button-static/transparent-button-static.component.d.ts +1 -1
- package/development/button/transparent-button-static/transparent-button-static.component.js +2 -2
- package/development/button/transparent-button-static.js +3 -1
- package/development/button/transparent-button.js +3 -1
- package/development/button-common-CAu09Yim.js +145 -0
- package/development/button.js +5 -6
- package/development/button.pure.d.ts +1 -1
- package/development/button.pure.d.ts.map +1 -1
- package/development/button.pure.js +4 -5
- package/development/calendar/calendar/calendar.component.d.ts +1 -12
- package/development/calendar/calendar/calendar.component.d.ts.map +1 -1
- package/development/calendar/calendar/calendar.component.js +1 -1
- package/development/calendar/calendar-day/calendar-day.component.d.ts.map +1 -1
- package/development/calendar/calendar-day/calendar-day.component.js +1 -1
- package/development/calendar/calendar-day.js +1 -1
- package/development/calendar/calendar-month/calendar-month.component.d.ts.map +1 -1
- package/development/calendar/calendar-month/calendar-month.component.js +1 -1
- package/development/calendar/calendar-weekday/calendar-weekday.component.d.ts.map +1 -1
- package/development/calendar/calendar-weekday/calendar-weekday.component.js +1 -1
- package/development/calendar/calendar-weeknumber/calendar-weeknumber.component.d.ts.map +1 -1
- package/development/calendar/calendar-weeknumber/calendar-weeknumber.component.js +1 -1
- package/development/calendar/calendar.js +1 -1
- package/development/calendar/common/calendar-cell-base-element.d.ts +2 -1
- package/development/calendar/common/calendar-cell-base-element.d.ts.map +1 -1
- package/development/calendar/common/calendar-cell-base-element.js +2 -35
- package/development/calendar/common.d.ts.map +1 -1
- package/development/calendar/common.js +2 -120
- package/development/calendar-cell-base-element-BXohfDSl.js +38 -0
- package/development/calendar-day.component-DFvRrp2O.js +144 -0
- package/development/calendar.component-6p9vsp-V.js +1452 -0
- package/development/calendar.js +2 -2
- package/development/calendar.pure.js +2 -2
- package/development/card/card/card.component.d.ts.map +1 -1
- package/development/card/card/card.component.js +1 -1
- package/development/card/card-badge/card-badge.component.d.ts.map +1 -1
- package/development/card/card-badge/card-badge.component.js +1 -1
- package/development/card/card-badge.js +1 -1
- package/development/card/card-button/card-button.component.d.ts +1 -1
- package/development/card/card-link/card-link.component.d.ts +1 -1
- package/development/card/card.js +1 -1
- package/development/card/common/card-action-common.js +1 -1
- package/development/card/common.js +1 -1
- package/development/card-action-common-1FDHbfeR.js +117 -0
- package/development/card-badge.component-D4Mes-Gw.js +84 -0
- package/development/card.component-DsqIZC_u.js +81 -0
- package/development/card.js +3 -3
- package/development/card.pure.js +3 -3
- package/development/carousel/carousel/carousel.component.d.ts.map +1 -1
- package/development/carousel/carousel/carousel.component.js +1 -1
- package/development/carousel/carousel-item/carousel-item.component.d.ts.map +1 -1
- package/development/carousel/carousel-item/carousel-item.component.js +1 -1
- package/development/carousel/carousel-item.js +1 -1
- package/development/carousel/carousel-list/carousel-list.component.d.ts.map +1 -1
- package/development/carousel/carousel-list/carousel-list.component.js +1 -1
- package/development/carousel/carousel-list.js +1 -1
- package/development/carousel/carousel.js +1 -1
- package/development/carousel-item.component-CIgUJtDJ.js +39 -0
- package/development/carousel-list.component-L-nYpHcN.js +136 -0
- package/development/carousel.component-Dl48ROSf.js +144 -0
- package/development/carousel.js +3 -3
- package/development/carousel.pure.js +3 -3
- package/development/checkbox/checkbox.component.d.ts +1 -1
- package/development/checkbox/checkbox.component.d.ts.map +1 -1
- package/development/checkbox/checkbox.component.js +1 -2
- package/development/checkbox/checkbox.js +2 -3
- package/development/checkbox/common/checkbox-common.d.ts +2 -0
- package/development/checkbox/common/checkbox-common.d.ts.map +1 -1
- package/development/checkbox/common/checkbox-common.js +2 -2
- package/development/checkbox/common.js +2 -2
- package/development/checkbox-common-DiTlHvFJ.js +86 -0
- package/development/checkbox.component-D3_FFSys.js +161 -0
- package/development/checkbox.js +3 -3
- package/development/checkbox.pure.js +3 -3
- package/development/chip/chip/chip.component.d.ts.map +1 -1
- package/development/chip/chip/chip.component.js +1 -1
- package/development/chip/chip-group/chip-group.component.d.ts.map +1 -1
- package/development/chip/chip-group/chip-group.component.js +1 -1
- package/development/chip/chip-group.js +1 -1
- package/development/chip/chip.js +1 -1
- package/development/chip-group.component-CvpUdzu1.js +409 -0
- package/development/chip-label/chip-label.component.d.ts.map +1 -1
- package/development/chip-label/chip-label.component.js +1 -1
- package/development/chip-label.component-DU8s-hfA.js +103 -0
- package/development/chip-label.js +1 -1
- package/development/chip-label.pure.js +1 -1
- package/development/chip.component-C6v1-PLX.js +118 -0
- package/development/chip.js +2 -2
- package/development/chip.pure.js +2 -2
- package/development/clock/clock.component.d.ts.map +1 -1
- package/development/clock/clock.component.js +1 -1
- package/development/clock.component-CVPv4mCp.js +290 -0
- package/development/clock.js +1 -1
- package/development/clock.pure.js +1 -1
- package/development/compact-paginator.component-TfDVt_ST.js +51 -0
- package/development/container/container/container.component.d.ts.map +1 -1
- package/development/container/container/container.component.js +1 -1
- package/development/container/container.js +1 -1
- package/development/container/sticky-bar/sticky-bar.component.d.ts.map +1 -1
- package/development/container/sticky-bar/sticky-bar.component.js +1 -1
- package/development/container/sticky-bar.js +1 -1
- package/development/container.component-CG_i65Op.js +151 -0
- package/development/container.js +2 -2
- package/development/container.pure.js +2 -2
- package/development/core/a11y/focus-trap-controller.js +3 -3
- package/development/core/base-elements/element.d.ts.map +1 -1
- package/development/core/base-elements/element.js +6 -2
- package/development/core/base-elements/selection-group-base-element.d.ts.map +1 -1
- package/development/core/base-elements/selection-group-base-element.js +1 -1
- package/development/core/base-elements.js +1 -1
- package/development/core/controllers/media-matchers-controller.js +1 -1
- package/development/core/datetime/date-adapter.d.ts +9 -2
- package/development/core/datetime/date-adapter.d.ts.map +1 -1
- package/development/core/datetime/date-adapter.js +11 -4
- package/development/core/datetime.js +2 -2
- package/development/core/i18n/i18n.d.ts +1 -0
- package/development/core/i18n/i18n.d.ts.map +1 -1
- package/development/core/i18n/i18n.js +8 -2
- package/development/core/i18n.js +2 -2
- package/development/core/mixins/panel-mixin.d.ts +1 -0
- package/development/core/mixins/panel-mixin.d.ts.map +1 -1
- package/development/core/mixins/panel-mixin.js +2 -147
- package/development/core/mixins.d.ts.map +1 -1
- package/development/core/mixins.js +2 -115
- package/development/core/styles/styles.d.ts +2 -0
- package/development/core/styles/styles.d.ts.map +1 -0
- package/development/core/styles/styles.js +2 -0
- package/development/core/styles.d.ts +1 -0
- package/development/core/styles.d.ts.map +1 -1
- package/development/core/styles.js +2 -11
- package/development/core.d.ts +15 -0
- package/development/core.d.ts.map +1 -0
- package/development/core.js +82 -0
- package/development/date-input/date-input.component.d.ts.map +1 -1
- package/development/date-input/date-input.component.js +1 -1
- package/development/date-input.component-UP1afzgy.js +307 -0
- package/development/date-input.js +1 -1
- package/development/date-input.pure.js +1 -1
- package/development/datepicker/common/datepicker-button.d.ts +2 -0
- package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
- package/development/datepicker/common/datepicker-button.js +2 -2
- package/development/datepicker/common.js +2 -2
- package/development/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
- package/development/datepicker/datepicker/datepicker.component.js +1 -1
- package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +2 -2
- package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +2 -2
- package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +2 -2
- package/development/datepicker/datepicker.js +1 -1
- package/development/datepicker-button-CANzGO5m.js +163 -0
- package/development/datepicker.component-C8XQVo45.js +213 -0
- package/development/datepicker.js +3 -3
- package/development/datepicker.pure.js +3 -3
- package/development/dialog/dialog/dialog.component.d.ts.map +1 -1
- package/development/dialog/dialog/dialog.component.js +1 -1
- package/development/dialog/dialog-actions/dialog-actions.component.d.ts.map +1 -1
- package/development/dialog/dialog-actions/dialog-actions.component.js +1 -1
- package/development/dialog/dialog-actions.js +1 -1
- package/development/dialog/dialog-close-button/dialog-close-button.component.d.ts +1 -1
- package/development/dialog/dialog-close-button/dialog-close-button.component.d.ts.map +1 -1
- package/development/dialog/dialog-close-button/dialog-close-button.component.js +1 -1
- package/development/dialog/dialog-close-button.js +1 -1
- package/development/dialog/dialog-content/dialog-content.component.d.ts.map +1 -1
- package/development/dialog/dialog-content/dialog-content.component.js +1 -1
- package/development/dialog/dialog-content.js +1 -1
- package/development/dialog/dialog-title/dialog-title.component.d.ts.map +1 -1
- package/development/dialog/dialog-title/dialog-title.component.js +1 -1
- package/development/dialog/dialog-title.js +1 -1
- package/development/dialog/dialog.js +1 -1
- package/development/dialog-actions.component-CegGvLGp.js +31 -0
- package/development/dialog-close-button.component-C4P-8J8j.js +42 -0
- package/development/dialog-content.component-bm8piC0O.js +30 -0
- package/development/dialog-title.component-CUAbFzCr.js +29 -0
- package/development/dialog.component-TBiL0Sdq.js +237 -0
- package/development/dialog.js +5 -5
- package/development/dialog.pure.js +5 -5
- package/development/divider/divider.component.d.ts.map +1 -1
- package/development/divider/divider.component.js +1 -1
- package/development/divider.component-Bisnf286.js +77 -0
- package/development/divider.js +1 -1
- package/development/divider.pure.js +1 -1
- package/development/error.component-xD_c9IBA.js +55 -0
- package/development/expansion-panel/expansion-panel/expansion-panel.component.d.ts.map +1 -1
- package/development/expansion-panel/expansion-panel/expansion-panel.component.js +1 -1
- package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts.map +1 -1
- package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
- package/development/expansion-panel/expansion-panel-content.js +1 -1
- package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts.map +1 -1
- package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +1 -1
- package/development/expansion-panel/expansion-panel-header.js +1 -1
- package/development/expansion-panel/expansion-panel.js +1 -1
- package/development/expansion-panel-content.component-XIsKm8JD.js +43 -0
- package/development/expansion-panel-header.component-Bw4uROTe.js +85 -0
- package/development/expansion-panel.component-PDUmZe7w.js +322 -0
- package/development/expansion-panel.js +3 -3
- package/development/expansion-panel.pure.js +3 -3
- package/development/file-selector/common/file-selector-common.d.ts +3 -1
- package/development/file-selector/common/file-selector-common.d.ts.map +1 -1
- package/development/file-selector/common/file-selector-common.js +2 -2
- package/development/file-selector/common.js +2 -2
- package/development/file-selector/file-selector/file-selector.component.d.ts +1 -1
- package/development/file-selector/file-selector/file-selector.component.d.ts.map +1 -1
- package/development/file-selector/file-selector/file-selector.component.js +5 -5
- package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts +1 -1
- package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +1 -1
- package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
- package/development/file-selector/file-selector-dropzone.js +1 -1
- package/development/file-selector-common-C82QR3zb.js +418 -0
- package/development/file-selector-dropzone.component-B-cBO4bf.js +112 -0
- package/development/file-selector.js +3 -3
- package/development/file-selector.pure.js +3 -3
- package/development/flip-card/flip-card/flip-card.component.d.ts.map +1 -1
- package/development/flip-card/flip-card/flip-card.component.js +1 -1
- package/development/flip-card/flip-card-details/flip-card-details.component.d.ts.map +1 -1
- package/development/flip-card/flip-card-details/flip-card-details.component.js +1 -1
- package/development/flip-card/flip-card-details.js +1 -1
- package/development/flip-card/flip-card-summary/flip-card-summary.component.d.ts.map +1 -1
- package/development/flip-card/flip-card-summary/flip-card-summary.component.js +1 -1
- package/development/flip-card/flip-card-summary.js +1 -1
- package/development/flip-card/flip-card.js +1 -1
- package/development/flip-card-details.component-iMm7NrgQ.js +57 -0
- package/development/flip-card-summary.component-HQ_VAn2j.js +84 -0
- package/development/flip-card.component-CJanLtkJ.js +190 -0
- package/development/flip-card.js +3 -3
- package/development/flip-card.pure.js +3 -3
- package/development/footer/footer.component.d.ts.map +1 -1
- package/development/footer/footer.component.js +1 -1
- package/development/footer.component-BblB5218.js +172 -0
- package/development/footer.js +1 -1
- package/development/footer.pure.js +1 -1
- package/development/form-field/error/error.component.d.ts.map +1 -1
- package/development/form-field/error/error.component.js +1 -1
- package/development/form-field/error.js +1 -1
- package/development/form-field/form-field/form-field.component.d.ts +13 -3
- package/development/form-field/form-field/form-field.component.d.ts.map +1 -1
- package/development/form-field/form-field/form-field.component.js +1 -1
- package/development/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
- package/development/form-field/form-field-clear/form-field-clear.component.js +2 -2
- package/development/form-field/form-field-text-counter/form-field-text-counter.component.d.ts +27 -0
- package/development/form-field/form-field-text-counter/form-field-text-counter.component.d.ts.map +1 -0
- package/development/form-field/form-field-text-counter/form-field-text-counter.component.js +113 -0
- package/development/form-field/form-field.js +1 -1
- package/development/form-field/hint/hint.component.d.ts +23 -0
- package/development/form-field/hint/hint.component.d.ts.map +1 -0
- package/development/form-field/hint/hint.component.js +2 -0
- package/development/form-field.component-BEXX0OcL.js +702 -0
- package/development/form-field.d.ts.map +1 -1
- package/development/form-field.js +9 -5
- package/development/form-field.pure.d.ts +3 -1
- package/development/form-field.pure.d.ts.map +1 -1
- package/development/form-field.pure.js +5 -3
- package/development/header/common/header-action-common.js +1 -1
- package/development/header/common.js +1 -1
- package/development/header/header/header.component.d.ts +7 -0
- package/development/header/header/header.component.d.ts.map +1 -1
- package/development/header/header/header.component.js +1 -1
- package/development/header/header-button/header-button.component.d.ts +1 -1
- package/development/header/header-environment/header-environment.component.d.ts.map +1 -1
- package/development/header/header-environment/header-environment.component.js +1 -1
- package/development/header/header-environment.js +1 -1
- package/development/header/header-link/header-link.component.d.ts +1 -1
- package/development/header/header.js +1 -1
- package/development/header-action-common-MTYV0dqA.js +80 -0
- package/development/header-environment.component-DHqoX_lg.js +53 -0
- package/development/header.component-Cg0ZcA1s.js +340 -0
- package/development/header.js +3 -3
- package/development/header.pure.js +3 -3
- package/development/hint.component-BsIzdUOV.js +38 -0
- package/development/icon/icon-base.d.ts.map +1 -1
- package/development/icon/icon-base.js +1 -1
- package/development/icon/icon-name-mixin.js +1 -2
- package/development/icon/icon-request.d.ts.map +1 -1
- package/development/icon/icon-request.js +3 -2
- package/development/icon/icon.component.js +1 -1
- package/development/icon-base-DHN9pz2I.js +165 -0
- package/development/icon-sidebar/icon-sidebar/icon-sidebar.component.d.ts.map +1 -1
- package/development/icon-sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
- package/development/icon-sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +1 -1
- package/development/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.d.ts.map +1 -1
- package/development/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.js +1 -1
- package/development/icon-sidebar/icon-sidebar-container.js +1 -1
- package/development/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.d.ts.map +1 -1
- package/development/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
- package/development/icon-sidebar/icon-sidebar-content.js +1 -1
- package/development/icon-sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts +1 -1
- package/development/icon-sidebar/icon-sidebar.js +1 -1
- package/development/icon-sidebar-container.component-BH_R88Rf.js +39 -0
- package/development/icon-sidebar-content.component-yoF6FjkW.js +31 -0
- package/development/icon-sidebar.component-BGEkfXVs.js +81 -0
- package/development/icon-sidebar.js +3 -3
- package/development/icon-sidebar.pure.js +3 -3
- package/development/icon.js +1 -1
- package/development/icon.pure.js +1 -1
- package/development/image/image.component.d.ts.map +1 -1
- package/development/image/image.component.js +1 -1
- package/development/image.component-BD0jc-u-.js +774 -0
- package/development/image.js +1 -1
- package/development/image.pure.js +1 -1
- package/development/inline-link-common-CgTIwFAI.js +18 -0
- package/development/journey-header/journey-header.component.d.ts +1 -0
- package/development/journey-header/journey-header.component.d.ts.map +1 -1
- package/development/journey-header/journey-header.component.js +1 -1
- package/development/journey-header.component-BwVODlXk.js +189 -0
- package/development/journey-header.js +1 -1
- package/development/journey-header.pure.js +1 -1
- package/development/lead-container/lead-container.component.d.ts.map +1 -1
- package/development/lead-container/lead-container.component.js +1 -1
- package/development/lead-container.component-CGVdBWJr.js +40 -0
- package/development/lead-container.js +1 -1
- package/development/lead-container.pure.js +1 -1
- package/development/link/block-link/block-link.component.d.ts +1 -1
- package/development/link/block-link/block-link.component.js +2 -2
- package/development/link/block-link-button/block-link-button.component.d.ts +1 -1
- package/development/link/block-link-button/block-link-button.component.js +2 -2
- package/development/link/block-link-button.js +3 -1
- package/development/link/block-link-static/block-link-static.component.d.ts +1 -1
- package/development/link/block-link-static/block-link-static.component.js +2 -2
- package/development/link/block-link-static.js +3 -1
- package/development/link/block-link.js +3 -1
- package/development/link/common/block-link-common.d.ts +1 -1
- package/development/link/common/block-link-common.d.ts.map +1 -1
- package/development/link/common/block-link-common.js +1 -2
- package/development/link/common/inline-link-common.d.ts +1 -1
- package/development/link/common/inline-link-common.d.ts.map +1 -1
- package/development/link/common/inline-link-common.js +1 -2
- package/development/link/common/link-common.d.ts +5 -1
- package/development/link/common/link-common.d.ts.map +1 -1
- package/development/link/common/link-common.js +1 -1
- package/development/link/common.js +9 -3
- package/development/link/link/link.component.d.ts +1 -1
- package/development/link/link/link.component.js +2 -2
- package/development/link/link-button/link-button.component.d.ts +1 -1
- package/development/link/link-button/link-button.component.js +2 -2
- package/development/link/link-button.js +3 -1
- package/development/link/link-static/link-static.component.d.ts +1 -1
- package/development/link/link-static/link-static.component.js +2 -2
- package/development/link/link-static.js +3 -1
- package/development/link/link.js +3 -1
- package/development/link-common-DJ2FfG_Q.js +72 -0
- package/development/link-list/common/link-list-base.d.ts +2 -0
- package/development/link-list/common/link-list-base.d.ts.map +1 -1
- package/development/link-list/common/link-list-base.js +2 -2
- package/development/link-list/common.js +2 -2
- package/development/link-list/link-list-anchor.js +2 -3
- package/development/link-list/link-list.component.d.ts.map +1 -1
- package/development/link-list/link-list.component.js +1 -2
- package/development/link-list/link-list.js +2 -3
- package/development/link-list-anchor/link-list-anchor.component.d.ts.map +1 -1
- package/development/link-list-anchor/link-list-anchor.component.js +1 -1
- package/development/link-list-anchor.component-Du7kfDZ-.js +29 -0
- package/development/link-list-anchor.js +1 -1
- package/development/link-list-anchor.pure.js +1 -1
- package/development/{link-list-base-BchLGP8G.js → link-list-base-CKMNz30d.js} +4 -20
- package/development/link-list.component-DQMg8MdQ.js +102 -0
- package/development/link-list.js +4 -4
- package/development/link-list.pure.js +3 -3
- package/development/link.js +3 -3
- package/development/link.pure.d.ts +3 -1
- package/development/link.pure.d.ts.map +1 -1
- package/development/link.pure.js +3 -4
- package/development/loading-indicator/loading-indicator.component.d.ts.map +1 -1
- package/development/loading-indicator/loading-indicator.component.js +1 -1
- package/development/loading-indicator-circle/loading-indicator-circle.component.d.ts.map +1 -1
- package/development/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
- package/development/loading-indicator-circle.component-np96Tu5S.js +78 -0
- package/development/loading-indicator-circle.js +1 -1
- package/development/loading-indicator-circle.pure.js +1 -1
- package/development/loading-indicator.component-CgHYNMxB.js +114 -0
- package/development/loading-indicator.js +1 -1
- package/development/loading-indicator.pure.js +1 -1
- package/development/logo/logo.component.d.ts.map +1 -1
- package/development/logo/logo.component.js +1 -1
- package/development/logo.component-I0yP2SKr.js +117 -0
- package/development/logo.js +1 -1
- package/development/logo.pure.js +1 -1
- package/development/map-container/map-container.component.d.ts.map +1 -1
- package/development/map-container/map-container.component.js +1 -1
- package/development/map-container.component-D9NWw-wA.js +177 -0
- package/development/map-container.js +1 -1
- package/development/map-container.pure.js +1 -1
- package/development/menu/common/menu-action-common.d.ts.map +1 -1
- package/development/menu/common/menu-action-common.js +1 -1
- package/development/menu/common.js +1 -1
- package/development/menu/menu/menu.component.d.ts.map +1 -1
- package/development/menu/menu/menu.component.js +1 -1
- package/development/menu/menu.js +1 -1
- package/development/menu-action-common-CBZCra6n.js +33 -0
- package/development/menu.component-Lh3JbVow.js +374 -0
- package/development/menu.js +2 -2
- package/development/menu.pure.js +2 -2
- package/development/message/message.component.d.ts.map +1 -1
- package/development/message/message.component.js +1 -1
- package/development/message.component-CeJhYXSC.js +44 -0
- package/development/message.js +1 -1
- package/development/message.pure.js +1 -1
- package/development/mini-button-group.component-B3CA9KG0.js +120 -0
- package/development/mini-button-link.component-I3VpWeNU.js +42 -0
- package/development/mini-calendar/mini-calendar/mini-calendar.component.d.ts.map +1 -1
- package/development/mini-calendar/mini-calendar/mini-calendar.component.js +1 -1
- package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts.map +1 -1
- package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +1 -1
- package/development/mini-calendar/mini-calendar-day.js +1 -1
- package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts.map +1 -1
- package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +1 -1
- package/development/mini-calendar/mini-calendar-month.js +1 -1
- package/development/mini-calendar/mini-calendar.js +1 -1
- package/development/mini-calendar-day.component-BUNVO4ZU.js +138 -0
- package/development/mini-calendar-month.component-DZXvAhc3.js +104 -0
- package/development/mini-calendar.component-BufzKw74.js +188 -0
- package/development/mini-calendar.js +3 -3
- package/development/mini-calendar.pure.js +3 -3
- package/development/navigation/common/navigation-action-common.js +1 -1
- package/development/navigation/common.js +1 -1
- package/development/navigation/navigation/navigation.component.d.ts.map +1 -1
- package/development/navigation/navigation/navigation.component.js +1 -1
- package/development/navigation/navigation-button/navigation-button.component.d.ts +1 -1
- package/development/navigation/navigation-link/navigation-link.component.d.ts +1 -1
- package/development/navigation/navigation-list/navigation-list.component.d.ts.map +1 -1
- package/development/navigation/navigation-list/navigation-list.component.js +1 -1
- package/development/navigation/navigation-list.js +1 -1
- package/development/navigation/navigation-marker/navigation-marker.component.d.ts.map +1 -1
- package/development/navigation/navigation-marker/navigation-marker.component.js +1 -1
- package/development/navigation/navigation-marker.js +1 -1
- package/development/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
- package/development/navigation/navigation-section/navigation-section.component.js +1 -1
- package/development/navigation/navigation-section.js +1 -1
- package/development/navigation/navigation.js +1 -1
- package/development/navigation-action-common-DpBp7-eZ.js +91 -0
- package/development/navigation-list.component-DqITJqFx.js +94 -0
- package/development/navigation-marker.component-BpZdT4xz.js +125 -0
- package/development/navigation-section.component-CtZtuacK.js +356 -0
- package/development/navigation.component-CTNQ1dix.js +324 -0
- package/development/navigation.js +5 -5
- package/development/navigation.pure.js +5 -5
- package/development/notification/notification.component.d.ts.map +1 -1
- package/development/notification/notification.component.js +1 -1
- package/development/notification.component-Co9QChXc.js +274 -0
- package/development/notification.js +1 -1
- package/development/notification.pure.js +1 -1
- package/development/optgroup-base-element-BaG2W_AP.js +141 -0
- package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/development/option/optgroup/optgroup-base-element.js +1 -1
- package/development/option/optgroup/optgroup.component.js +1 -1
- package/development/option/optgroup.js +1 -1
- package/development/option/option/option.component.d.ts +1 -1
- package/development/option/option/option.component.d.ts.map +1 -1
- package/development/option/option/option.component.js +1 -1
- package/development/option/option-hint/option-hint.component.d.ts.map +1 -1
- package/development/option/option-hint/option-hint.component.js +1 -1
- package/development/option/option-hint.js +1 -1
- package/development/option/option.js +1 -1
- package/development/option-hint.component-BH8dP1fM.js +33 -0
- package/development/option.component-CdL7fdzZ.js +130 -0
- package/development/option.js +3 -3
- package/development/option.pure.js +3 -3
- package/development/overlay/overlay-base-element.js +2 -2
- package/development/overlay/overlay.component.d.ts.map +1 -1
- package/development/overlay/overlay.component.js +1 -1
- package/development/overlay.component-M0JuSq4C.js +216 -0
- package/development/overlay.js +1 -1
- package/development/overlay.pure.js +1 -1
- package/development/paginator/common/paginator-common.d.ts.map +1 -1
- package/development/paginator/common/paginator-common.js +4 -3
- package/development/paginator/compact-paginator/compact-paginator.component.d.ts +1 -1
- package/development/paginator/compact-paginator/compact-paginator.component.d.ts.map +1 -1
- package/development/paginator/compact-paginator/compact-paginator.component.js +1 -1
- package/development/paginator/compact-paginator.js +1 -1
- package/development/paginator/paginator/paginator.component.d.ts +1 -1
- package/development/paginator/paginator/paginator.component.d.ts.map +1 -1
- package/development/paginator/paginator/paginator.component.js +1 -1
- package/development/paginator/paginator.js +1 -1
- package/development/paginator.component-DAdS2mMm.js +259 -0
- package/development/paginator.js +2 -2
- package/development/paginator.pure.js +2 -2
- package/development/panel-mixin-Dj_rsgL9.js +150 -0
- package/development/popover/popover.component.d.ts.map +1 -1
- package/development/popover/popover.component.js +1 -1
- package/development/popover.component-BCMdJBUR.js +537 -0
- package/development/popover.js +1 -1
- package/development/popover.pure.js +1 -1
- package/development/radio-button/common/radio-button-common.d.ts +2 -0
- package/development/radio-button/common/radio-button-common.d.ts.map +1 -1
- package/development/radio-button/common/radio-button-common.js +2 -2
- package/development/radio-button/common.js +2 -2
- package/development/radio-button/radio-button.component.d.ts +1 -1
- package/development/radio-button/radio-button.component.d.ts.map +1 -1
- package/development/radio-button/radio-button.component.js +1 -2
- package/development/radio-button/radio-button.js +2 -3
- package/development/radio-button-common-C3-xuY78.js +126 -0
- package/development/radio-button-group/radio-button-group.component.d.ts.map +1 -1
- package/development/radio-button-group/radio-button-group.component.js +2 -1
- package/development/radio-button.component-BrQF2FfA.js +124 -0
- package/development/radio-button.js +3 -3
- package/development/radio-button.pure.js +3 -3
- package/development/{sbb-tokens-Lrm4nvNH.js → sbb-tokens-Cr3wVegh.js} +1 -1
- package/development/screen-reader-only/screen-reader-only.component.d.ts.map +1 -1
- package/development/screen-reader-only/screen-reader-only.component.js +1 -1
- package/development/screen-reader-only.component-B77UuVCI.js +26 -0
- package/development/screen-reader-only.js +1 -1
- package/development/screen-reader-only.pure.js +1 -1
- package/development/select/select.component.d.ts +2 -0
- package/development/select/select.component.d.ts.map +1 -1
- package/development/select/select.component.js +1 -1
- package/development/select.component-CGNEhqzl.js +812 -0
- package/development/select.js +1 -1
- package/development/select.pure.js +1 -1
- package/development/selection-action-panel/selection-action-panel.component.d.ts.map +1 -1
- package/development/selection-action-panel/selection-action-panel.component.js +1 -1
- package/development/selection-action-panel.component-D6I5wdEL.js +49 -0
- package/development/selection-action-panel.js +1 -1
- package/development/selection-action-panel.pure.js +1 -1
- package/development/selection-expansion-panel/selection-expansion-panel.component.d.ts.map +1 -1
- package/development/selection-expansion-panel/selection-expansion-panel.component.js +1 -1
- package/development/selection-expansion-panel.component-eO7b_EQF.js +189 -0
- package/development/selection-expansion-panel.js +1 -1
- package/development/selection-expansion-panel.pure.js +1 -1
- package/development/selection-group-base-element-DvDpwhPl.js +154 -0
- package/development/sidebar/common/styles.d.ts +3 -0
- package/development/sidebar/common/styles.d.ts.map +1 -1
- package/development/sidebar/common/styles.js +2 -2
- package/development/sidebar/common.js +2 -2
- package/development/sidebar/sidebar/sidebar.component.d.ts.map +1 -1
- package/development/sidebar/sidebar/sidebar.component.js +1 -1
- package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +1 -1
- package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
- package/development/sidebar/sidebar-close-button/sidebar-close-button.component.js +1 -1
- package/development/sidebar/sidebar-close-button.js +1 -1
- package/development/sidebar/sidebar-container/sidebar-container.component.d.ts.map +1 -1
- package/development/sidebar/sidebar-container/sidebar-container.component.js +1 -1
- package/development/sidebar/sidebar-container.js +1 -1
- package/development/sidebar/sidebar-content/sidebar-content.component.d.ts.map +1 -1
- package/development/sidebar/sidebar-content/sidebar-content.component.js +1 -1
- package/development/sidebar/sidebar-content.js +1 -1
- package/development/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
- package/development/sidebar/sidebar-title/sidebar-title.component.js +1 -1
- package/development/sidebar/sidebar-title.js +1 -1
- package/development/sidebar/sidebar.js +1 -1
- package/development/sidebar-close-button.component-CYWv39Mu.js +46 -0
- package/development/sidebar-container.component-BDSoDAym.js +106 -0
- package/development/sidebar-content.component-JcVKpKbK.js +32 -0
- package/development/sidebar-title.component-BA_j-Igh.js +72 -0
- package/development/sidebar.component-DvRTyNry.js +348 -0
- package/development/sidebar.js +5 -5
- package/development/sidebar.pure.js +5 -5
- package/development/signet/signet.component.d.ts.map +1 -1
- package/development/signet/signet.component.js +1 -1
- package/development/signet.component-3D2ZsajP.js +122 -0
- package/development/signet.js +1 -1
- package/development/signet.pure.js +1 -1
- package/development/skiplink-list/skiplink-list.component.d.ts.map +1 -1
- package/development/skiplink-list/skiplink-list.component.js +1 -1
- package/development/skiplink-list.component-EDPOitEB.js +134 -0
- package/development/skiplink-list.js +1 -1
- package/development/skiplink-list.pure.js +1 -1
- package/development/slider/slider.component.d.ts.map +1 -1
- package/development/slider/slider.component.js +1 -1
- package/development/slider.component-BjfLnUvP.js +346 -0
- package/development/slider.js +1 -1
- package/development/slider.pure.js +1 -1
- package/development/status/status.component.d.ts +1 -1
- package/development/status/status.component.d.ts.map +1 -1
- package/development/status/status.component.js +1 -1
- package/development/status.component-CHC2pBa-.js +111 -0
- package/development/status.js +1 -1
- package/development/status.pure.js +1 -1
- package/development/step-label.component-CJFPHIZa.js +131 -0
- package/development/step.component-B-n26urC.js +153 -0
- package/development/stepper/step/step.component.d.ts.map +1 -1
- package/development/stepper/step/step.component.js +1 -1
- package/development/stepper/step-label/step-label.component.d.ts.map +1 -1
- package/development/stepper/step-label/step-label.component.js +1 -1
- package/development/stepper/step-label.js +1 -1
- package/development/stepper/step.js +1 -1
- package/development/stepper/stepper/stepper.component.d.ts.map +1 -1
- package/development/stepper/stepper/stepper.component.js +1 -1
- package/development/stepper/stepper.js +1 -1
- package/development/stepper.component-CxOBayI1.js +428 -0
- package/development/stepper.js +3 -3
- package/development/stepper.pure.js +3 -3
- package/development/sticky-bar.component-Dzrdsnxu.js +206 -0
- package/development/styles-D2RLaAYK.js +18 -0
- package/development/styles-D8-q-irv.js +9 -0
- package/development/styles-DCQBzC2C.js +14 -0
- package/development/tab-group.component-DRipdAyc.js +272 -0
- package/development/tab-label.component-14j2eh4Z.js +243 -0
- package/development/tab-nav-bar.component-CgYwCSVY.js +114 -0
- package/development/tab.component-DThKG7-a.js +70 -0
- package/development/table/table-wrapper/table-wrapper.component.d.ts.map +1 -1
- package/development/table/table-wrapper/table-wrapper.component.js +1 -1
- package/development/table/table-wrapper.js +1 -1
- package/development/table-wrapper.component-D1p7kqCB.js +121 -0
- package/development/table.js +1 -1
- package/development/table.pure.js +1 -1
- package/development/tabs/common/styles.d.ts +2 -0
- package/development/tabs/common/styles.d.ts.map +1 -1
- package/development/tabs/common/styles.js +2 -2
- package/development/tabs/common.js +2 -2
- package/development/tabs/tab/tab.component.d.ts.map +1 -1
- package/development/tabs/tab/tab.component.js +1 -1
- package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
- package/development/tabs/tab-group/tab-group.component.js +1 -1
- package/development/tabs/tab-group.js +1 -1
- package/development/tabs/tab-label/tab-label.component.d.ts.map +1 -1
- package/development/tabs/tab-label/tab-label.component.js +1 -1
- package/development/tabs/tab-label.js +1 -1
- package/development/tabs/tab-nav-bar/tab-nav-bar.component.d.ts.map +1 -1
- package/development/tabs/tab-nav-bar/tab-nav-bar.component.js +1 -1
- package/development/tabs/tab-nav-bar.js +1 -1
- package/development/tabs/tab.js +1 -1
- package/development/tabs.js +6 -6
- package/development/tabs.pure.js +6 -6
- package/development/tag/tag/tag.component.d.ts.map +1 -1
- package/development/tag/tag/tag.component.js +1 -1
- package/development/tag/tag-group/tag-group.component.d.ts.map +1 -1
- package/development/tag/tag-group/tag-group.component.js +1 -1
- package/development/tag/tag-group.js +1 -1
- package/development/tag/tag.js +1 -1
- package/development/tag-group.component-Cw46bt0E.js +200 -0
- package/development/tag.component-CnNPL6aI.js +245 -0
- package/development/tag.js +2 -2
- package/development/tag.pure.js +2 -2
- package/development/teaser/teaser.component.d.ts.map +1 -1
- package/development/teaser/teaser.component.js +1 -1
- package/development/teaser-hero/teaser-hero.component.d.ts.map +1 -1
- package/development/teaser-hero/teaser-hero.component.js +1 -1
- package/development/teaser-hero.component-DNlc8Tbl.js +101 -0
- package/development/teaser-hero.js +1 -1
- package/development/teaser-hero.pure.js +1 -1
- package/development/teaser-product/common/teaser-product-common.d.ts +2 -0
- package/development/teaser-product/common/teaser-product-common.d.ts.map +1 -1
- package/development/teaser-product/common/teaser-product-common.js +2 -2
- package/development/teaser-product/common.js +2 -2
- package/development/teaser-product/teaser-product/teaser-product.component.d.ts +1 -1
- package/development/teaser-product/teaser-product/teaser-product.component.d.ts.map +1 -1
- package/development/teaser-product/teaser-product/teaser-product.component.js +1 -1
- package/development/teaser-product/teaser-product-static/teaser-product-static.component.d.ts +1 -1
- package/development/teaser-product/teaser-product.js +1 -1
- package/development/teaser-product-common-DYX370pm.js +78 -0
- package/development/teaser-product.component-CSArA8bH.js +43 -0
- package/development/teaser-product.js +3 -3
- package/development/teaser-product.pure.js +3 -3
- package/development/teaser.component-Cky6kKU0.js +118 -0
- package/development/teaser.js +1 -1
- package/development/teaser.pure.js +1 -1
- package/development/time-input/time-input.component.d.ts.map +1 -1
- package/development/time-input/time-input.component.js +1 -1
- package/development/time-input.component-BtdSR8kB.js +191 -0
- package/development/time-input.js +1 -1
- package/development/time-input.pure.js +1 -1
- package/development/timetable-form/timetable-form/timetable-form.component.d.ts.map +1 -1
- package/development/timetable-form/timetable-form/timetable-form.component.js +1 -1
- package/development/timetable-form/timetable-form-details/timetable-form-details.component.d.ts.map +1 -1
- package/development/timetable-form/timetable-form-details/timetable-form-details.component.js +1 -1
- package/development/timetable-form/timetable-form-details.js +1 -1
- package/development/timetable-form/timetable-form-field/timetable-form-field.component.d.ts.map +1 -1
- package/development/timetable-form/timetable-form-field/timetable-form-field.component.js +1 -1
- package/development/timetable-form/timetable-form-field.js +1 -1
- package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.d.ts +1 -1
- package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.d.ts.map +1 -1
- package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.js +1 -1
- package/development/timetable-form/timetable-form-swap-button.js +1 -1
- package/development/timetable-form/timetable-form.js +1 -1
- package/development/timetable-form-details.component-C8awcdP5.js +26 -0
- package/development/timetable-form-field.component-BI24VjkC.js +44 -0
- package/development/timetable-form-swap-button.component-BUKUjrpl.js +61 -0
- package/development/timetable-form.component-CUG86CSN.js +27 -0
- package/development/timetable-form.js +4 -4
- package/development/timetable-form.pure.js +4 -4
- package/development/timetable-occupancy/timetable-occupancy.component.d.ts.map +1 -1
- package/development/timetable-occupancy/timetable-occupancy.component.js +1 -1
- package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.d.ts.map +1 -1
- package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.js +1 -1
- package/development/timetable-occupancy-icon.component-lI7__-G5.js +97 -0
- package/development/timetable-occupancy-icon.js +1 -1
- package/development/timetable-occupancy-icon.pure.js +1 -1
- package/development/timetable-occupancy.component-D_PXXvI9.js +124 -0
- package/development/timetable-occupancy.js +1 -1
- package/development/timetable-occupancy.pure.js +1 -1
- package/development/title/title-base.d.ts.map +1 -1
- package/development/title/title-base.js +1 -1
- package/development/title/title.component.d.ts.map +1 -1
- package/development/title/title.component.js +1 -2
- package/development/title-base-CBE_2Hkb.js +102 -0
- package/development/title.component-Dk23JVct.js +71 -0
- package/development/title.js +2 -2
- package/development/title.pure.js +2 -2
- package/development/toast/toast.component.d.ts.map +1 -1
- package/development/toast/toast.component.js +1 -1
- package/development/toast.component-BnbpuU9L.js +274 -0
- package/development/toast.js +1 -1
- package/development/toast.pure.js +1 -1
- package/development/toggle/toggle/toggle.component.d.ts.map +1 -1
- package/development/toggle/toggle/toggle.component.js +1 -1
- package/development/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
- package/development/toggle/toggle-option/toggle-option.component.js +1 -1
- package/development/toggle/toggle-option.js +1 -1
- package/development/toggle/toggle.js +1 -1
- package/development/toggle-check/toggle-check.component.d.ts.map +1 -1
- package/development/toggle-check/toggle-check.component.js +1 -1
- package/development/toggle-check.component-BG4w_sE8.js +159 -0
- package/development/toggle-check.js +1 -1
- package/development/toggle-check.pure.js +1 -1
- package/development/toggle-option.component-D-F7Fh7i.js +168 -0
- package/development/toggle.component-BFYLRN8o.js +254 -0
- package/development/toggle.js +2 -2
- package/development/toggle.pure.js +2 -2
- package/development/tooltip/tooltip.component.d.ts.map +1 -1
- package/development/tooltip/tooltip.component.js +1 -1
- package/development/tooltip.component-DzSd9VjW.js +378 -0
- package/development/tooltip.js +1 -1
- package/development/tooltip.pure.js +1 -1
- package/development/train/train/train.component.d.ts.map +1 -1
- package/development/train/train/train.component.js +1 -1
- package/development/train/train-blocked-passage/train-blocked-passage.component.d.ts.map +1 -1
- package/development/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
- package/development/train/train-blocked-passage.js +1 -1
- package/development/train/train-formation/train-formation.component.d.ts.map +1 -1
- package/development/train/train-formation/train-formation.component.js +1 -1
- package/development/train/train-formation.js +1 -1
- package/development/train/train-wagon/train-wagon.component.d.ts.map +1 -1
- package/development/train/train-wagon/train-wagon.component.js +1 -1
- package/development/train/train-wagon.js +1 -1
- package/development/train/train.js +1 -1
- package/development/train-blocked-passage.component-BrUJK0gf.js +31 -0
- package/development/train-formation.component-vt-nYQXA.js +153 -0
- package/development/train-wagon.component-BzA8-S_6.js +336 -0
- package/development/train.component-BgpmEDx-.js +231 -0
- package/development/train.js +4 -4
- package/development/train.pure.js +4 -4
- package/development/visual-checkbox/visual-checkbox.component.d.ts.map +1 -1
- package/development/visual-checkbox/visual-checkbox.component.js +1 -1
- package/development/visual-checkbox.component-rdeoQN40.js +148 -0
- package/development/visual-checkbox.js +1 -1
- package/development/visual-checkbox.pure.js +1 -1
- package/dialog/dialog/dialog.component.js +1 -1
- package/dialog/dialog-actions/dialog-actions.component.js +1 -1
- package/dialog/dialog-actions.js +1 -1
- package/dialog/dialog-close-button/dialog-close-button.component.js +1 -1
- package/dialog/dialog-close-button.js +1 -1
- package/dialog/dialog-content/dialog-content.component.js +1 -1
- package/dialog/dialog-content.js +1 -1
- package/dialog/dialog-title/dialog-title.component.js +1 -1
- package/dialog/dialog-title.js +1 -1
- package/dialog/dialog.js +1 -1
- package/dialog-actions.component-Cp2cISc5.js +17 -0
- package/dialog-close-button.component-CQfIeflt.js +31 -0
- package/dialog-content.component-BTAZtlGb.js +19 -0
- package/dialog-title.component-PVHbhrCM.js +17 -0
- package/{dialog.component-CIPresmM.js → dialog.component-B3oQbMki.js} +12 -12
- package/dialog.js +5 -5
- package/dialog.pure.js +5 -5
- package/divider/divider.component.js +1 -1
- package/{divider.component-B99DkxCv.js → divider.component-D4C31FWl.js} +12 -12
- package/divider.js +1 -1
- package/divider.pure.js +1 -1
- package/error.component-B_D8WUP5.js +44 -0
- package/expansion-panel/expansion-panel/expansion-panel.component.js +1 -1
- package/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
- package/expansion-panel/expansion-panel-content.js +1 -1
- package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +1 -1
- package/expansion-panel/expansion-panel-header.js +1 -1
- package/expansion-panel/expansion-panel.js +1 -1
- package/expansion-panel-content.component--OJYAiBh.js +29 -0
- package/expansion-panel-header.component-B_dQ3ZWT.js +56 -0
- package/expansion-panel.component-BJCjwcoj.js +226 -0
- package/expansion-panel.js +3 -3
- package/expansion-panel.pure.js +3 -3
- package/file-selector/common/file-selector-common.js +1 -1
- package/file-selector/common.js +1 -1
- package/file-selector/file-selector/file-selector.component.js +8 -8
- package/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
- package/file-selector/file-selector-dropzone.js +1 -1
- package/{file-selector-common-C--h0Yj2.js → file-selector-common-DN4vHMpP.js} +26 -22
- package/file-selector-dropzone.component-CBKsZsC2.js +98 -0
- package/file-selector.js +2 -2
- package/file-selector.pure.js +2 -2
- package/flip-card/flip-card/flip-card.component.js +1 -1
- package/flip-card/flip-card-details/flip-card-details.component.js +1 -1
- package/flip-card/flip-card-details.js +1 -1
- package/flip-card/flip-card-summary/flip-card-summary.component.js +1 -1
- package/flip-card/flip-card-summary.js +1 -1
- package/flip-card/flip-card.js +1 -1
- package/flip-card-details.component-CUaLeEKc.js +45 -0
- package/flip-card-summary.component-T2UMG_YI.js +65 -0
- package/flip-card.component-D7HNqWXz.js +142 -0
- package/flip-card.js +3 -3
- package/flip-card.pure.js +3 -3
- package/footer/footer.component.js +1 -1
- package/footer.component-BM91Utiz.js +129 -0
- package/footer.js +1 -1
- package/footer.pure.js +1 -1
- package/form-field/error/error.component.js +1 -1
- package/form-field/error.js +1 -1
- package/form-field/form-field/form-field.component.js +1 -1
- package/form-field/form-field-clear/form-field-clear.component.js +6 -6
- package/form-field/form-field-text-counter/form-field-text-counter.component.js +82 -0
- package/form-field/form-field.js +1 -1
- package/form-field/hint/hint.component.js +2 -0
- package/form-field.component-D50q1wC0.js +478 -0
- package/form-field.js +7 -5
- package/form-field.pure.js +6 -4
- package/header/common/header-action-common.js +1 -1
- package/header/common.js +1 -1
- package/header/header/header.component.js +1 -1
- package/header/header-environment/header-environment.component.js +1 -1
- package/header/header-environment.js +1 -1
- package/header/header.js +1 -1
- package/header-action-common-DSx5QDWI.js +62 -0
- package/header-environment.component-rUR1XhR5.js +36 -0
- package/header.component-hZqs06Yh.js +232 -0
- package/header.js +3 -3
- package/header.pure.js +3 -3
- package/hint.component-BVUUrSSu.js +24 -0
- package/icon/icon-base.js +1 -1
- package/icon/icon-name-mixin.js +0 -1
- package/icon/icon-request.js +1 -3
- package/icon/icon.component.js +1 -1
- package/{icon-base-C2VxpriZ.js → icon-base-ChhGqAkg.js} +18 -18
- package/icon-sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
- package/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.js +1 -1
- package/icon-sidebar/icon-sidebar-container.js +1 -1
- package/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
- package/icon-sidebar/icon-sidebar-content.js +1 -1
- package/icon-sidebar/icon-sidebar.js +1 -1
- package/{icon-sidebar-container.component-BGhKzy4e.js → icon-sidebar-container.component-BrBnPZP_.js} +5 -5
- package/{icon-sidebar-content.component-Ck5kHeMx.js → icon-sidebar-content.component-DXoyBsGO.js} +5 -5
- package/{icon-sidebar.component-D3vOnYrs.js → icon-sidebar.component-CSUM1GjR.js} +12 -12
- package/icon-sidebar.js +3 -3
- package/icon-sidebar.pure.js +3 -3
- package/icon.js +1 -1
- package/icon.pure.js +1 -1
- package/image/image.component.js +1 -1
- package/{image.component-BcOwT7-U.js → image.component-9ttsTuRh.js} +31 -31
- package/image.js +1 -1
- package/image.pure.js +1 -1
- package/index.d.ts +3 -1
- package/index.js +3 -1
- package/inline-link-common-B5AHg8oa.js +13 -0
- package/journey-header/journey-header.component.js +1 -1
- package/{journey-header.component-CjXBxEor.js → journey-header.component-BBRryMN8.js} +15 -15
- package/journey-header.js +1 -1
- package/journey-header.pure.js +1 -1
- package/lead-container/lead-container.component.js +1 -1
- package/lead-container.component-D9Wotyyl.js +27 -0
- package/lead-container.js +1 -1
- package/lead-container.pure.js +1 -1
- package/link/block-link/block-link.component.js +1 -1
- package/link/block-link-button/block-link-button.component.js +1 -1
- package/link/block-link-button.js +1 -2
- package/link/block-link-static/block-link-static.component.js +1 -1
- package/link/block-link-static.js +1 -2
- package/link/block-link.js +1 -2
- package/link/common/block-link-common.js +1 -2
- package/link/common/inline-link-common.js +1 -2
- package/link/common/link-common.js +1 -1
- package/link/common.js +6 -3
- package/link/link/link.component.js +1 -1
- package/link/link-button/link-button.component.js +1 -1
- package/link/link-button.js +1 -2
- package/link/link-static/link-static.component.js +1 -1
- package/link/link-static.js +1 -2
- package/link/link.js +1 -2
- package/link-common-C-LzCFHg.js +53 -0
- package/link-list/common/link-list-base.js +1 -1
- package/link-list/common.js +1 -1
- package/link-list/link-list-anchor.js +1 -2
- package/link-list/link-list.component.js +1 -2
- package/link-list/link-list.js +1 -2
- package/link-list-anchor/link-list-anchor.component.js +1 -1
- package/link-list-anchor.component-B1hvFA17.js +18 -0
- package/link-list-anchor.js +1 -1
- package/link-list-anchor.pure.js +1 -1
- package/{link-list-base-CrpC5D4u.js → link-list-base-COzF-Lbi.js} +9 -8
- package/link-list.component-AiEJJGPT.js +78 -0
- package/link-list.js +3 -3
- package/link-list.pure.js +2 -2
- package/link.js +3 -3
- package/link.pure.js +3 -4
- package/loading-indicator/loading-indicator.component.js +1 -1
- package/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
- package/loading-indicator-circle.component-BSVoTtX4.js +62 -0
- package/loading-indicator-circle.js +1 -1
- package/loading-indicator-circle.pure.js +1 -1
- package/loading-indicator.component-B85wTVDM.js +92 -0
- package/loading-indicator.js +1 -1
- package/loading-indicator.pure.js +1 -1
- package/logo/logo.component.js +1 -1
- package/{logo.component-CdZe8lrB.js → logo.component-COL1QTWW.js} +15 -15
- package/logo.js +1 -1
- package/logo.pure.js +1 -1
- package/map-container/map-container.component.js +1 -1
- package/map-container.component-CEyz8sfi.js +132 -0
- package/map-container.js +1 -1
- package/map-container.pure.js +1 -1
- package/menu/common/menu-action-common.js +1 -1
- package/menu/common.js +1 -1
- package/menu/menu/menu.component.js +1 -1
- package/menu/menu.js +1 -1
- package/menu-action-common-p5YGaq2r.js +28 -0
- package/{menu.component-elxRPsQz.js → menu.component-DohFZw2N.js} +12 -12
- package/menu.js +2 -2
- package/menu.pure.js +2 -2
- package/message/message.component.js +1 -1
- package/{message.component-DDMr1IXM.js → message.component-BQjnZ5Z3.js} +5 -5
- package/message.js +1 -1
- package/message.pure.js +1 -1
- package/mini-button-group.component-DmxOnls1.js +89 -0
- package/mini-button-link.component-l5MIlgEB.js +30 -0
- package/mini-calendar/mini-calendar/mini-calendar.component.js +1 -1
- package/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +1 -1
- package/mini-calendar/mini-calendar-day.js +1 -1
- package/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +1 -1
- package/mini-calendar/mini-calendar-month.js +1 -1
- package/mini-calendar/mini-calendar.js +1 -1
- package/mini-calendar-day.component-DOMxLDsW.js +106 -0
- package/{mini-calendar-month.component-DTod_RRs.js → mini-calendar-month.component-BAN0k3N6.js} +11 -11
- package/{mini-calendar.component-BCDHUUZG.js → mini-calendar.component-DJfOT7ir.js} +11 -11
- package/mini-calendar.js +3 -3
- package/mini-calendar.pure.js +3 -3
- package/navigation/common/navigation-action-common.js +1 -1
- package/navigation/common.js +1 -1
- package/navigation/navigation/navigation.component.js +1 -1
- package/navigation/navigation-list/navigation-list.component.js +1 -1
- package/navigation/navigation-list.js +1 -1
- package/navigation/navigation-marker/navigation-marker.component.js +1 -1
- package/navigation/navigation-marker.js +1 -1
- package/navigation/navigation-section/navigation-section.component.js +1 -1
- package/navigation/navigation-section.js +1 -1
- package/navigation/navigation.js +1 -1
- package/navigation-action-common-2ix0xrBs.js +64 -0
- package/{navigation-list.component-DnB7FrKG.js → navigation-list.component-BIl68kYy.js} +12 -12
- package/navigation-marker.component-DKxK16IU.js +88 -0
- package/navigation-section.component-CvjXVn5r.js +241 -0
- package/navigation.component-D3xUqPZB.js +212 -0
- package/navigation.js +5 -5
- package/navigation.pure.js +5 -5
- package/notification/notification.component.js +1 -1
- package/notification.component-DjXJFh1G.js +201 -0
- package/notification.js +1 -1
- package/notification.pure.js +1 -1
- package/off-brand-theme.css +267 -81
- package/{optgroup-base-element-C8LeifgF.js → optgroup-base-element-B2WJv9gb.js} +16 -16
- package/option/optgroup/optgroup-base-element.js +1 -1
- package/option/optgroup/optgroup.component.js +1 -1
- package/option/optgroup.js +1 -1
- package/option/option/option.component.js +1 -1
- package/option/option-hint/option-hint.component.js +1 -1
- package/option/option-hint.js +1 -1
- package/option/option.js +1 -1
- package/option-hint.component-CZH1i3mN.js +23 -0
- package/option.component-M-V_tdSC.js +98 -0
- package/option.js +3 -3
- package/option.pure.js +3 -3
- package/overlay/overlay-base-element.js +1 -1
- package/overlay/overlay.component.js +1 -1
- package/overlay.component-CbvHE6Lw.js +164 -0
- package/overlay.js +1 -1
- package/overlay.pure.js +1 -1
- package/package.json +11 -1
- package/paginator/common/paginator-common.js +16 -17
- package/paginator/compact-paginator/compact-paginator.component.js +1 -1
- package/paginator/compact-paginator.js +1 -1
- package/paginator/paginator/paginator.component.js +1 -1
- package/paginator/paginator.js +1 -1
- package/paginator.component-CZt7Epaf.js +206 -0
- package/paginator.js +2 -2
- package/paginator.pure.js +2 -2
- package/panel-mixin-B6dEo538.js +112 -0
- package/popover/popover.component.js +1 -1
- package/{popover.component-CiOGSWOz.js → popover.component-DWNuW4wM.js} +55 -51
- package/popover.js +1 -1
- package/popover.pure.js +1 -1
- package/radio-button/common/radio-button-common.js +1 -1
- package/radio-button/common.js +1 -1
- package/radio-button/radio-button.component.js +1 -2
- package/radio-button/radio-button.js +1 -2
- package/radio-button-common-DP4Izwwf.js +81 -0
- package/radio-button-group/radio-button-group.component.js +1 -1
- package/{radio-button.component-CVPy3eQi.js → radio-button.component-BiGeOI5L.js} +15 -15
- package/radio-button.js +2 -2
- package/radio-button.pure.js +2 -2
- package/safety-theme.css +267 -81
- package/screen-reader-only/screen-reader-only.component.js +1 -1
- package/screen-reader-only.component-Dxj7rAnR.js +16 -0
- package/screen-reader-only.js +1 -1
- package/screen-reader-only.pure.js +1 -1
- package/select/select.component.js +1 -1
- package/{select.component-CsIiislt.js → select.component-DWLdApt_.js} +97 -76
- package/select.js +1 -1
- package/select.pure.js +1 -1
- package/selection-action-panel/selection-action-panel.component.js +1 -1
- package/selection-action-panel.component-C3g4OJY9.js +35 -0
- package/selection-action-panel.js +1 -1
- package/selection-action-panel.pure.js +1 -1
- package/selection-expansion-panel/selection-expansion-panel.component.js +1 -1
- package/selection-expansion-panel.component-CGSkSA6y.js +144 -0
- package/selection-expansion-panel.js +1 -1
- package/selection-expansion-panel.pure.js +1 -1
- package/selection-group-base-element-B2VHp5_l.js +113 -0
- package/sidebar/common/styles.js +2 -2
- package/sidebar/common.js +2 -2
- package/sidebar/sidebar/sidebar.component.js +1 -1
- package/sidebar/sidebar-close-button/sidebar-close-button.component.js +1 -1
- package/sidebar/sidebar-close-button.js +1 -1
- package/sidebar/sidebar-container/sidebar-container.component.js +1 -1
- package/sidebar/sidebar-container.js +1 -1
- package/sidebar/sidebar-content/sidebar-content.component.js +1 -1
- package/sidebar/sidebar-content.js +1 -1
- package/sidebar/sidebar-title/sidebar-title.component.js +1 -1
- package/sidebar/sidebar-title.js +1 -1
- package/sidebar/sidebar.js +1 -1
- package/sidebar-close-button.component-BEYnX3Hk.js +34 -0
- package/{sidebar-container.component-BFxFShTF.js → sidebar-container.component-BGh7mxq4.js} +10 -10
- package/sidebar-content.component-BEI3kpFh.js +20 -0
- package/{sidebar-title.component-BfjxBPpH.js → sidebar-title.component-CvKixoOS.js} +11 -11
- package/{sidebar.component-zRpWDGKR.js → sidebar.component-DxOx02l6.js} +22 -22
- package/sidebar.js +5 -5
- package/sidebar.pure.js +5 -5
- package/signet/signet.component.js +1 -1
- package/signet.component-ImdnCMXV.js +99 -0
- package/signet.js +1 -1
- package/signet.pure.js +1 -1
- package/skiplink-list/skiplink-list.component.js +1 -1
- package/skiplink-list.component-hqQIOxQD.js +100 -0
- package/skiplink-list.js +1 -1
- package/skiplink-list.pure.js +1 -1
- package/slider/slider.component.js +1 -1
- package/{slider.component-CLNsu212.js → slider.component-CoqCppCq.js} +26 -26
- package/slider.js +1 -1
- package/slider.pure.js +1 -1
- package/standard-theme.css +267 -81
- package/status/status.component.js +1 -1
- package/{status.component-CmLdUn37.js → status.component-BFyXTFXH.js} +11 -11
- package/status.js +1 -1
- package/status.pure.js +1 -1
- package/step-label.component-DnQBwnL8.js +80 -0
- package/{step.component-eKVtXlT4.js → step.component-uBZl9yiJ.js} +5 -5
- package/stepper/step/step.component.js +1 -1
- package/stepper/step-label/step-label.component.js +1 -1
- package/stepper/step-label.js +1 -1
- package/stepper/step.js +1 -1
- package/stepper/stepper/stepper.component.js +1 -1
- package/stepper/stepper.js +1 -1
- package/{stepper.component-yWCQtYWc.js → stepper.component-CYLW1eRI.js} +24 -26
- package/stepper.js +3 -3
- package/stepper.pure.js +3 -3
- package/sticky-bar.component-DDBq8uXU.js +141 -0
- package/styles-BUpK1iP2.js +5 -0
- package/styles-CMI5maF5.js +6 -0
- package/styles-Dqjgvm-Y.js +5 -0
- package/{tab-group.component-DE4H3_H4.js → tab-group.component-Doy39cEh.js} +16 -16
- package/tab-label.component-CD56RH1Z.js +165 -0
- package/{tab-nav-bar.component-n5TiTWxE.js → tab-nav-bar.component-7mG-Dk6g.js} +10 -10
- package/{tab.component-BrIEFDxk.js → tab.component-rEJAbgtn.js} +5 -5
- package/table/table-wrapper/table-wrapper.component.js +1 -1
- package/table/table-wrapper.js +1 -1
- package/{table-wrapper.component-CoqozurQ.js → table-wrapper.component-BpMpU8um.js} +14 -14
- package/table.css +64 -38
- package/table.js +1 -1
- package/table.pure.js +1 -1
- package/tabs/common/styles.js +2 -2
- package/tabs/common.js +2 -2
- package/tabs/tab/tab.component.js +1 -1
- package/tabs/tab-group/tab-group.component.js +1 -1
- package/tabs/tab-group.js +1 -1
- package/tabs/tab-label/tab-label.component.js +1 -1
- package/tabs/tab-label.js +1 -1
- package/tabs/tab-nav-bar/tab-nav-bar.component.js +1 -1
- package/tabs/tab-nav-bar.js +1 -1
- package/tabs/tab.js +1 -1
- package/tabs.js +6 -6
- package/tabs.pure.js +6 -6
- package/tag/tag/tag.component.js +1 -1
- package/tag/tag-group/tag-group.component.js +1 -1
- package/tag/tag-group.js +1 -1
- package/tag/tag.js +1 -1
- package/{tag-group.component-DiIp6zS1.js → tag-group.component-DkQVBbQY.js} +17 -19
- package/tag.component-CzYJZuFT.js +170 -0
- package/tag.js +2 -2
- package/tag.pure.js +2 -2
- package/teaser/teaser.component.js +1 -1
- package/teaser-hero/teaser-hero.component.js +1 -1
- package/teaser-hero.component-CHy82SKQ.js +84 -0
- package/teaser-hero.js +1 -1
- package/teaser-hero.pure.js +1 -1
- package/teaser-product/common/teaser-product-common.js +1 -1
- package/teaser-product/common.js +1 -1
- package/teaser-product/teaser-product/teaser-product.component.js +1 -1
- package/teaser-product/teaser-product.js +1 -1
- package/teaser-product-common-Ct19HzVX.js +63 -0
- package/teaser-product.component-Csj9pAne.js +29 -0
- package/teaser-product.js +2 -2
- package/teaser-product.pure.js +2 -2
- package/teaser.component-WZL0vAo9.js +91 -0
- package/teaser.js +1 -1
- package/teaser.pure.js +1 -1
- package/time-input/time-input.component.js +1 -1
- package/{time-input.component-DT1BOC8m.js → time-input.component-CuQ-3YEM.js} +11 -11
- package/time-input.js +1 -1
- package/time-input.pure.js +1 -1
- package/timetable-form/timetable-form/timetable-form.component.js +1 -1
- package/timetable-form/timetable-form-details/timetable-form-details.component.js +1 -1
- package/timetable-form/timetable-form-details.js +1 -1
- package/timetable-form/timetable-form-field/timetable-form-field.component.js +1 -1
- package/timetable-form/timetable-form-field.js +1 -1
- package/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.js +1 -1
- package/timetable-form/timetable-form-swap-button.js +1 -1
- package/timetable-form/timetable-form.js +1 -1
- package/timetable-form-details.component-CBZ7QSAx.js +16 -0
- package/timetable-form-field.component-BKxQQqt7.js +32 -0
- package/timetable-form-swap-button.component-C71eoTQH.js +41 -0
- package/timetable-form.component-CU1FXAZH.js +16 -0
- package/timetable-form.js +4 -4
- package/timetable-form.pure.js +4 -4
- package/timetable-occupancy/timetable-occupancy.component.js +1 -1
- package/timetable-occupancy-icon/timetable-occupancy-icon.component.js +1 -1
- package/{timetable-occupancy-icon.component-ZrzpXaeV.js → timetable-occupancy-icon.component-Ck0VCzxz.js} +10 -10
- package/timetable-occupancy-icon.js +1 -1
- package/timetable-occupancy-icon.pure.js +1 -1
- package/{timetable-occupancy.component-DMztYVmj.js → timetable-occupancy.component-Db9SfiyD.js} +14 -14
- package/timetable-occupancy.js +1 -1
- package/timetable-occupancy.pure.js +1 -1
- package/title/title-base.js +1 -1
- package/title/title.component.js +1 -2
- package/title-base-D72Xo2SW.js +80 -0
- package/title.component-CoMa84Sz.js +54 -0
- package/title.js +2 -2
- package/title.pure.js +2 -2
- package/toast/toast.component.js +1 -1
- package/toast.component-BDE1vYLS.js +193 -0
- package/toast.js +1 -1
- package/toast.pure.js +1 -1
- package/toggle/toggle/toggle.component.js +1 -1
- package/toggle/toggle-option/toggle-option.component.js +1 -1
- package/toggle/toggle-option.js +1 -1
- package/toggle/toggle.js +1 -1
- package/toggle-check/toggle-check.component.js +1 -1
- package/toggle-check.component-B6Ww5pLD.js +119 -0
- package/toggle-check.js +1 -1
- package/toggle-check.pure.js +1 -1
- package/{toggle-option.component-NMfqwd12.js → toggle-option.component-Bw-GXUQK.js} +13 -13
- package/{toggle.component-D1n5S5ev.js → toggle.component-BPpsMMPG.js} +16 -16
- package/toggle.js +2 -2
- package/toggle.pure.js +2 -2
- package/tooltip/tooltip.component.js +1 -1
- package/{tooltip.component-X45T6iQH.js → tooltip.component-BY9mV5Sw.js} +19 -19
- package/tooltip.js +1 -1
- package/tooltip.pure.js +1 -1
- package/train/train/train.component.js +1 -1
- package/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
- package/train/train-blocked-passage.js +1 -1
- package/train/train-formation/train-formation.component.js +1 -1
- package/train/train-formation.js +1 -1
- package/train/train-wagon/train-wagon.component.js +1 -1
- package/train/train-wagon.js +1 -1
- package/train/train.js +1 -1
- package/train-blocked-passage.component-C-ltrsRr.js +23 -0
- package/train-formation.component-y0TGSIGR.js +121 -0
- package/{train-wagon.component-bGA2a-0M.js → train-wagon.component-BwCcF4GD.js} +30 -30
- package/{train.component-V6FLqC82.js → train.component-NTimqCpY.js} +18 -18
- package/train.js +4 -4
- package/train.pure.js +4 -4
- package/visual-checkbox/visual-checkbox.component.js +1 -1
- package/visual-checkbox.component-CJWm74Zi.js +118 -0
- package/visual-checkbox.js +1 -1
- package/visual-checkbox.pure.js +1 -1
- package/action-group.component-KWugkMGf.js +0 -158
- package/alert.component-PPR7hfTi.js +0 -165
- package/block-link-common-BMTrbSfi.js +0 -63
- package/breadcrumb.component-DjkZzGJD.js +0 -24
- package/card-badge.component-D_PI9Ega.js +0 -65
- package/card.component-Dt2YFmd3.js +0 -62
- package/chip-label.component-D9AZdMSJ.js +0 -80
- package/chip.component-DMB36gvC.js +0 -94
- package/common-CI_BB6sF.js +0 -5
- package/compact-paginator.component-BK7xj9tc.js +0 -45
- package/container.component-C-jpJN2k.js +0 -117
- package/development/accordion.component-BIFcgIa0.js +0 -172
- package/development/action-group.component-CuhO6yb9.js +0 -379
- package/development/alert-group.component-BlrlsRB8.js +0 -219
- package/development/alert.component-CJ2yLyOY.js +0 -411
- package/development/autocomplete-base-element-DCfmuVY6.js +0 -960
- package/development/block-link-common-CjBLu4BU.js +0 -145
- package/development/breadcrumb-group.component-zU06d9ni.js +0 -279
- package/development/breadcrumb.component-DvOf-PiO.js +0 -89
- package/development/calendar-day.component-Brz0Wyai.js +0 -178
- package/development/calendar.component-0Pl7qEXL.js +0 -2222
- package/development/card-action-common-DqBn3bPy.js +0 -147
- package/development/card-badge.component-Cs4dow18.js +0 -146
- package/development/card.component-CeOZXXWU.js +0 -258
- package/development/carousel-item.component-DOIXA2QK.js +0 -47
- package/development/carousel-list.component-7Z3dYtAF.js +0 -160
- package/development/carousel.component-Cs0gWroH.js +0 -169
- package/development/checkbox-common-DOS4FkuG.js +0 -147
- package/development/checkbox.component-DBtj7z07.js +0 -193
- package/development/chip-group.component-BIJlU5Dp.js +0 -506
- package/development/chip-label.component-DOCHCxBi.js +0 -165
- package/development/chip.component-D6OL8r_Q.js +0 -191
- package/development/clock.component-DPIVt4d3.js +0 -392
- package/development/common-Da_cep8M.js +0 -565
- package/development/compact-paginator.component-BSTPWGJx.js +0 -96
- package/development/container.component-Co2L3KBb.js +0 -238
- package/development/date-input.component-D6__znuy.js +0 -338
- package/development/datepicker-button-vHP0D4yV.js +0 -167
- package/development/datepicker.component-DW6eq3pC.js +0 -223
- package/development/dialog-actions.component-TcOhbHSS.js +0 -55
- package/development/dialog-close-button.component-Yi7NNtQe.js +0 -48
- package/development/dialog-content.component-CzwHSsCD.js +0 -42
- package/development/dialog-title.component-BjJxddme.js +0 -50
- package/development/dialog.component-CjR644v5.js +0 -403
- package/development/divider.component-D04zdHFf.js +0 -95
- package/development/error.component-DCeTb_sQ.js +0 -93
- package/development/expansion-panel-content.component-P1BVKaUQ.js +0 -77
- package/development/expansion-panel-header.component-BQaFPmqq.js +0 -175
- package/development/expansion-panel.component-sNQCAll-.js +0 -489
- package/development/file-selector-common-4VE7Af0W.js +0 -512
- package/development/file-selector-dropzone.component-COoDZxcq.js +0 -154
- package/development/flip-card-details.component-DZqd1icn.js +0 -85
- package/development/flip-card-summary.component-CTvT-hNh.js +0 -151
- package/development/flip-card.component-CUQYeHRg.js +0 -334
- package/development/footer.component-CLU7iVUY.js +0 -310
- package/development/form-field.component-DoPHu1Yf.js +0 -1009
- package/development/header-action-common-BPwn9nFN.js +0 -346
- package/development/header-environment.component-JltjpGKu.js +0 -101
- package/development/header.component-DEw_zC-n.js +0 -446
- package/development/icon-base-DaK86P0U.js +0 -206
- package/development/icon-sidebar-container.component-6k5VwVGK.js +0 -41
- package/development/icon-sidebar-content.component-ISXOClFX.js +0 -33
- package/development/icon-sidebar.component-DFDKX2cD.js +0 -100
- package/development/image.component-BSJf5qRL.js +0 -820
- package/development/inline-link-common-FwpAjkCL.js +0 -52
- package/development/journey-header.component-D1iaZBcw.js +0 -217
- package/development/lead-container.component-BPGSdIND.js +0 -122
- package/development/link-common-CrLiKO3x.js +0 -124
- package/development/link-list-anchor.component-CMwxD7at.js +0 -77
- package/development/link-list.component-B3l5PRJl.js +0 -194
- package/development/loading-indicator-circle.component-BJRSfYOI.js +0 -144
- package/development/loading-indicator.component-DolzcY0K.js +0 -278
- package/development/logo.component-iu5iL8wQ.js +0 -166
- package/development/map-container.component-DMF2oulu.js +0 -307
- package/development/menu-action-common-CE1gySL_.js +0 -140
- package/development/menu.component-D4nt6M9b.js +0 -620
- package/development/message.component-cyOtXMuM.js +0 -82
- package/development/mini-button-group.component-ytJZBjmr.js +0 -174
- package/development/mini-button-link.component-DZOOdeZt.js +0 -47
- package/development/mini-calendar-day.component-B5SWuVZl.js +0 -213
- package/development/mini-calendar-month.component-Diq4my2u.js +0 -150
- package/development/mini-calendar.component-O44l8sfI.js +0 -192
- package/development/navigation-action-common-CA2aDyJ4.js +0 -178
- package/development/navigation-list.component-Dz0JLuKb.js +0 -124
- package/development/navigation-marker.component-DzRg3INl.js +0 -207
- package/development/navigation-section.component-DnSkQA4r.js +0 -600
- package/development/navigation.component-DZ3EQfeI.js +0 -585
- package/development/notification.component-D1xrOQdE.js +0 -525
- package/development/optgroup-base-element-DVLTejtg.js +0 -181
- package/development/option-hint.component-w-UQdEdu.js +0 -55
- package/development/option.component-BPN2WTiI.js +0 -248
- package/development/overlay.component-Btd42clm.js +0 -411
- package/development/paginator.component-DT-sZuFS.js +0 -492
- package/development/popover.component-DCJdrVsB.js +0 -746
- package/development/radio-button-common-CsjMvmAn.js +0 -231
- package/development/radio-button.component-BTnHGixs.js +0 -137
- package/development/screen-reader-only.component-Btj8mc2x.js +0 -36
- package/development/select.component-DJV8Tjcw.js +0 -1084
- package/development/selection-action-panel.component-B3pNvpeD.js +0 -134
- package/development/selection-expansion-panel.component-B9v1yqif.js +0 -326
- package/development/selection-group-base-element-DrTO_80I.js +0 -220
- package/development/sidebar-close-button.component-DYl0czc_.js +0 -48
- package/development/sidebar-container.component-f4gR6uPU.js +0 -136
- package/development/sidebar-content.component-B70pf9tH.js +0 -37
- package/development/sidebar-title.component-RStE_x3R.js +0 -76
- package/development/sidebar.component-BDUew-xS.js +0 -506
- package/development/signet.component-B9nY5tTL.js +0 -188
- package/development/skiplink-list.component-BvbnZ24-.js +0 -198
- package/development/slider.component-w_WtVNx-.js +0 -479
- package/development/status.component-CD4RXPEj.js +0 -171
- package/development/step-label.component-DbdXrY05.js +0 -298
- package/development/step.component-BZ8GnSvF.js +0 -220
- package/development/stepper.component-C20566P1.js +0 -508
- package/development/sticky-bar.component-DxDHpEgX.js +0 -382
- package/development/styles-BlQUk9lF.js +0 -96
- package/development/styles-TKvcDQkA.js +0 -173
- package/development/tab-group.component-C6jlhxvZ.js +0 -292
- package/development/tab-label.component-C0qpk3p_.js +0 -420
- package/development/tab-nav-bar.component-CbZKhBxs.js +0 -123
- package/development/tab.component-DvEZBqQ6.js +0 -101
- package/development/table-wrapper.component-lmWguT_t.js +0 -133
- package/development/tag-group.component-BW1vj2rN.js +0 -219
- package/development/tag.component-Cfx7YNV5.js +0 -419
- package/development/teaser-hero.component-sUhYQXkN.js +0 -202
- package/development/teaser-product-common-zgX2CF41.js +0 -223
- package/development/teaser-product.component-w8Vjh-RN.js +0 -75
- package/development/teaser.component-BI1diIhL.js +0 -246
- package/development/time-input.component-B15eaxBr.js +0 -222
- package/development/timetable-form-details.component-Bz6nsJEp.js +0 -50
- package/development/timetable-form-field.component-BQHwNBP_.js +0 -119
- package/development/timetable-form-swap-button.component-C111nH5V.js +0 -74
- package/development/timetable-form.component-BwcJd7mP.js +0 -34
- package/development/timetable-occupancy-icon.component-BbPiOTqO.js +0 -101
- package/development/timetable-occupancy.component-COJQPJ-O.js +0 -172
- package/development/title-base-DNSaV9Ar.js +0 -142
- package/development/title.component-BY1lm4Z7.js +0 -115
- package/development/toast.component-TMMY3vo-.js +0 -430
- package/development/toggle-check.component-eyni_u24.js +0 -326
- package/development/toggle-option.component-Cerp56FA.js +0 -216
- package/development/toggle.component-9bozw9C0.js +0 -367
- package/development/tooltip.component-DpeuOb4p.js +0 -480
- package/development/train-blocked-passage.component-YA9rV23T.js +0 -79
- package/development/train-formation.component-Bh2Cx4if.js +0 -303
- package/development/train-wagon.component-DQ12gCZf.js +0 -485
- package/development/train.component-DW4vZtEt.js +0 -294
- package/development/visual-checkbox.component-CA6AKLbO.js +0 -213
- package/dialog-actions.component-QvbasYxg.js +0 -17
- package/dialog-close-button.component-CeZrvBtz.js +0 -27
- package/dialog-content.component-bHJNAgKn.js +0 -19
- package/dialog-title.component-BDHYjDn0.js +0 -17
- package/error.component-DTYppqRY.js +0 -44
- package/expansion-panel-content.component-DCl4nQ8V.js +0 -29
- package/expansion-panel-header.component-jc1Ty5jz.js +0 -56
- package/expansion-panel.component-CGss5cPS.js +0 -226
- package/file-selector-dropzone.component-BFlkqlsq.js +0 -94
- package/flip-card-details.component-BOVK7F1U.js +0 -45
- package/flip-card-summary.component-DVa7wF7x.js +0 -65
- package/flip-card.component-5pxuwGAv.js +0 -138
- package/footer.component-C-mSrCud.js +0 -129
- package/form-field.component-CWj6jfYZ.js +0 -447
- package/header-action-common-W_j0KPr-.js +0 -62
- package/header-environment.component-DduyZo6W.js +0 -36
- package/header.component-DW23EnaO.js +0 -203
- package/inline-link-common-DANB-hT-.js +0 -18
- package/lead-container.component-D9VzZCQa.js +0 -27
- package/link-common-akQv_-UR.js +0 -52
- package/link-list-anchor.component-Qm7h2mHK.js +0 -18
- package/link-list.component-C8zrqHYc.js +0 -78
- package/loading-indicator-circle.component-DfjVqe7n.js +0 -62
- package/loading-indicator.component-DkYs30Nf.js +0 -92
- package/map-container.component-C_wbi6WL.js +0 -128
- package/menu-action-common-vt9j6nkG.js +0 -29
- package/mini-button-group.component-D5Dph1Z7.js +0 -89
- package/mini-button-link.component-BYK_EUud.js +0 -31
- package/mini-calendar-day.component-Tj7wlWj7.js +0 -106
- package/navigation-action-common-D_-gGOYm.js +0 -64
- package/navigation-marker.component-B7hmb9iS.js +0 -88
- package/navigation-section.component-C86pkDLG.js +0 -237
- package/navigation.component-BzgTWUiD.js +0 -208
- package/notification.component-Cor1vQGU.js +0 -197
- package/option-hint.component-kPdwK61Z.js +0 -23
- package/option.component-DF9ZTj12.js +0 -98
- package/overlay.component-CAN3BK7B.js +0 -163
- package/paginator.component-CsSs5q4D.js +0 -206
- package/radio-button-common-QHPueQrm.js +0 -77
- package/screen-reader-only.component-DEOirlKo.js +0 -16
- package/selection-action-panel.component-QfR2kPeM.js +0 -35
- package/selection-expansion-panel.component-BQw9icBM.js +0 -144
- package/selection-group-base-element-Bd6na8dT.js +0 -113
- package/sidebar-close-button.component-D0JS2p5L.js +0 -30
- package/sidebar-content.component-M7FGd8SF.js +0 -20
- package/signet.component-Kwdy4Uor.js +0 -101
- package/skiplink-list.component-BRJk6HvC.js +0 -102
- package/step-label.component-DTkviH8Q.js +0 -82
- package/sticky-bar.component-BqZVKHc7.js +0 -141
- package/styles-CsBiCI23.js +0 -5
- package/styles-DYZWSKeo.js +0 -5
- package/tab-label.component-BnxPGws1.js +0 -165
- package/tag.component-CfK6JwsO.js +0 -170
- package/teaser-hero.component-DjodzcX_.js +0 -80
- package/teaser-product-common-DkumwiRA.js +0 -62
- package/teaser-product.component-DiOhM_rU.js +0 -29
- package/teaser.component-C7sJLVMk.js +0 -91
- package/timetable-form-details.component-DI5Mr8-O.js +0 -16
- package/timetable-form-field.component-2kEWygEC.js +0 -32
- package/timetable-form-swap-button.component-BGP-OsHD.js +0 -37
- package/timetable-form.component-BqdKekNM.js +0 -16
- package/title-base-BDYkc8fG.js +0 -80
- package/title.component-DafVwymI.js +0 -54
- package/toast.component-DbILctK5.js +0 -189
- package/toggle-check.component-CPewUjOg.js +0 -119
- package/train-blocked-passage.component-RIMoX91U.js +0 -23
- package/train-formation.component-B17tc6cx.js +0 -121
- package/visual-checkbox.component-eajUDpKu.js +0 -118
- /package/{sbb-tokens-BtASsKhQ.js → sbb-tokens-CWYlBuxJ.js} +0 -0
|
@@ -0,0 +1,774 @@
|
|
|
1
|
+
import { a as SbbBreakpointUltraMax, c as SbbBreakpointZeroMin, i as SbbBreakpointSmallMin, n as SbbBreakpointLargeMin, o as SbbBreakpointUltraMin, r as SbbBreakpointSmallMax, s as SbbBreakpointZeroMax, t as SbbBreakpointLargeMax } from "./sbb-tokens-Cr3wVegh.js";
|
|
2
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
3
|
+
import { html, nothing, unsafeCSS } from "lit";
|
|
4
|
+
import { eventOptions, property } from "lit/decorators.js";
|
|
5
|
+
import { SbbElement } from "./core/base-elements.js";
|
|
6
|
+
import { forceType } from "./core/decorators.js";
|
|
7
|
+
import { boxSizingStyles } from "./core/styles.js";
|
|
8
|
+
//#region src/elements/image/image.scss?inline
|
|
9
|
+
var image_default = ":host {\n --sbb-image-aspect-ratio: 16 / 9;\n --sbb-image-animation-duration: var(\n --sbb-disable-animation-duration,\n var(--sbb-animation-duration-4x)\n );\n --sbb-image-object-fit: cover;\n display: block;\n border-radius: var(--sbb-border-radius-4x);\n}\n\n.sbb-image__img {\n opacity: 0.000001;\n}\n:host(:is(:state(loaded),[state--loaded])) .sbb-image__img {\n opacity: 0.999999;\n}\n:host(:not([skip-lqip])) .sbb-image__img {\n position: absolute;\n inset: 0;\n}\n\n:host(:is(:state(loaded),[state--loaded])) .sbb-image__blurred {\n opacity: 0;\n}\n\npicture {\n display: contents;\n}\n\n:is(.sbb-image__img, .sbb-image__blurred) {\n width: 100%;\n height: 100%;\n object-fit: var(--sbb-image-object-fit);\n object-position: var(--sbb-image-object-position);\n transition: opacity var(--sbb-image-animation-duration) var(--sbb-animation-easing);\n}\n\n.sbb-image__wrapper {\n display: flex;\n position: relative;\n width: 100%;\n height: 100%;\n aspect-ratio: var(--sbb-image-aspect-ratio);\n border-radius: inherit;\n overflow: hidden;\n}";
|
|
10
|
+
//#endregion
|
|
11
|
+
//#region src/elements/image/image.component.ts
|
|
12
|
+
/**
|
|
13
|
+
* we check the structure of the data manually, so it's safe to use `any` as return type
|
|
14
|
+
*/
|
|
15
|
+
var imageHelperGetBreakpoints = (jsonString) => {
|
|
16
|
+
if (!jsonString || jsonString.length === 0) return [];
|
|
17
|
+
const logWarning = null;
|
|
18
|
+
let jsonObject;
|
|
19
|
+
try {
|
|
20
|
+
jsonObject = JSON.parse(jsonString);
|
|
21
|
+
} catch {
|
|
22
|
+
logWarning?.();
|
|
23
|
+
return [];
|
|
24
|
+
}
|
|
25
|
+
if (!jsonObject.breakpoints || jsonObject.breakpoints.length === 0) {
|
|
26
|
+
logWarning?.();
|
|
27
|
+
return [];
|
|
28
|
+
}
|
|
29
|
+
if (!Array.isArray(jsonObject.breakpoints)) {
|
|
30
|
+
logWarning?.();
|
|
31
|
+
return [];
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* 1. make sure that each entry within the breakpoints object contains only allowed keys
|
|
35
|
+
* 2. make sure that all necessary keys are present
|
|
36
|
+
*/
|
|
37
|
+
let wrongKeyDetected = false;
|
|
38
|
+
let missingKeyDetected = false;
|
|
39
|
+
const allowedKeys = ["image", "mediaQueries"];
|
|
40
|
+
jsonObject.breakpoints.forEach((breakpoint) => {
|
|
41
|
+
const breakpointKeys = Object.keys(breakpoint);
|
|
42
|
+
breakpointKeys.forEach((breakpointKey) => {
|
|
43
|
+
if (!allowedKeys.includes(breakpointKey)) wrongKeyDetected = true;
|
|
44
|
+
});
|
|
45
|
+
allowedKeys.forEach((allowedKey) => {
|
|
46
|
+
if (!breakpointKeys.includes(allowedKey)) missingKeyDetected = true;
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
if (wrongKeyDetected || missingKeyDetected) {
|
|
50
|
+
logWarning?.();
|
|
51
|
+
return [];
|
|
52
|
+
}
|
|
53
|
+
return jsonObject.breakpoints;
|
|
54
|
+
};
|
|
55
|
+
var eventListenerOptions = { passive: true };
|
|
56
|
+
var breakpointMap = {
|
|
57
|
+
"sbb-breakpoint-zero-min": SbbBreakpointZeroMin,
|
|
58
|
+
"sbb-breakpoint-zero-max": SbbBreakpointZeroMax,
|
|
59
|
+
"sbb-breakpoint-small-min": SbbBreakpointSmallMin,
|
|
60
|
+
"sbb-breakpoint-small-max": SbbBreakpointSmallMax,
|
|
61
|
+
"sbb-breakpoint-large-min": SbbBreakpointLargeMin,
|
|
62
|
+
"sbb-breakpoint-large-max": SbbBreakpointLargeMax,
|
|
63
|
+
"sbb-breakpoint-ultra-min": SbbBreakpointUltraMin,
|
|
64
|
+
"sbb-breakpoint-ultra-max": SbbBreakpointUltraMax
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* It displays an image.
|
|
68
|
+
*
|
|
69
|
+
* @cssprop [--sbb-image-aspect-ratio=auto] - Can be used to override `aspectRatio` property.
|
|
70
|
+
* This way we can have, for example, an image component with an aspect
|
|
71
|
+
* ratio of 4/3 in smaller viewports and 16/9 in larger viewports.
|
|
72
|
+
* @cssprop [--sbb-image-object-position] - Can be used to set the object-position CSS property of the image itself if the image itself is cropped.
|
|
73
|
+
* @cssprop [--sbb-image-object-fit=cover] - Can be used to set the object-fit CSS property of the image itself if the image itself is cropped.
|
|
74
|
+
*/
|
|
75
|
+
var SbbImageElement = (() => {
|
|
76
|
+
let _classSuper = SbbElement;
|
|
77
|
+
let _instanceExtraInitializers = [];
|
|
78
|
+
let _alt_decorators;
|
|
79
|
+
let _alt_initializers = [];
|
|
80
|
+
let _alt_extraInitializers = [];
|
|
81
|
+
let _skipLqip_decorators;
|
|
82
|
+
let _skipLqip_initializers = [];
|
|
83
|
+
let _skipLqip_extraInitializers = [];
|
|
84
|
+
let _customFocalPoint_decorators;
|
|
85
|
+
let _customFocalPoint_initializers = [];
|
|
86
|
+
let _customFocalPoint_extraInitializers = [];
|
|
87
|
+
let _decoding_decorators;
|
|
88
|
+
let _decoding_initializers = [];
|
|
89
|
+
let _decoding_extraInitializers = [];
|
|
90
|
+
let _focalPointDebug_decorators;
|
|
91
|
+
let _focalPointDebug_initializers = [];
|
|
92
|
+
let _focalPointDebug_extraInitializers = [];
|
|
93
|
+
let _focalPointX_decorators;
|
|
94
|
+
let _focalPointX_initializers = [];
|
|
95
|
+
let _focalPointX_extraInitializers = [];
|
|
96
|
+
let _focalPointY_decorators;
|
|
97
|
+
let _focalPointY_initializers = [];
|
|
98
|
+
let _focalPointY_extraInitializers = [];
|
|
99
|
+
let _imageSrc_decorators;
|
|
100
|
+
let _imageSrc_initializers = [];
|
|
101
|
+
let _imageSrc_extraInitializers = [];
|
|
102
|
+
let _importance_decorators;
|
|
103
|
+
let _importance_initializers = [];
|
|
104
|
+
let _importance_extraInitializers = [];
|
|
105
|
+
let _loading_decorators;
|
|
106
|
+
let _loading_initializers = [];
|
|
107
|
+
let _loading_extraInitializers = [];
|
|
108
|
+
let _performanceMark_decorators;
|
|
109
|
+
let _performanceMark_initializers = [];
|
|
110
|
+
let _performanceMark_extraInitializers = [];
|
|
111
|
+
let _pictureSizesConfig_decorators;
|
|
112
|
+
let _pictureSizesConfig_initializers = [];
|
|
113
|
+
let _pictureSizesConfig_extraInitializers = [];
|
|
114
|
+
let __imageLoaded_decorators;
|
|
115
|
+
return class SbbImageElement extends _classSuper {
|
|
116
|
+
static {
|
|
117
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
118
|
+
_alt_decorators = [forceType(), property()];
|
|
119
|
+
_skipLqip_decorators = [forceType(), property({
|
|
120
|
+
attribute: "skip-lqip",
|
|
121
|
+
type: Boolean,
|
|
122
|
+
reflect: true
|
|
123
|
+
})];
|
|
124
|
+
_customFocalPoint_decorators = [forceType(), property({
|
|
125
|
+
attribute: "custom-focal-point",
|
|
126
|
+
type: Boolean
|
|
127
|
+
})];
|
|
128
|
+
_decoding_decorators = [property()];
|
|
129
|
+
_focalPointDebug_decorators = [forceType(), property({
|
|
130
|
+
attribute: "focal-point-debug",
|
|
131
|
+
type: Boolean
|
|
132
|
+
})];
|
|
133
|
+
_focalPointX_decorators = [forceType(), property({
|
|
134
|
+
attribute: "focal-point-x",
|
|
135
|
+
type: Number
|
|
136
|
+
})];
|
|
137
|
+
_focalPointY_decorators = [forceType(), property({
|
|
138
|
+
attribute: "focal-point-y",
|
|
139
|
+
type: Number
|
|
140
|
+
})];
|
|
141
|
+
_imageSrc_decorators = [forceType(), property({ attribute: "image-src" })];
|
|
142
|
+
_importance_decorators = [property()];
|
|
143
|
+
_loading_decorators = [property()];
|
|
144
|
+
_performanceMark_decorators = [forceType(), property({ attribute: "performance-mark" })];
|
|
145
|
+
_pictureSizesConfig_decorators = [forceType(), property({ attribute: "picture-sizes-config" })];
|
|
146
|
+
__imageLoaded_decorators = [eventOptions(eventListenerOptions)];
|
|
147
|
+
__esDecorate(this, null, _alt_decorators, {
|
|
148
|
+
kind: "accessor",
|
|
149
|
+
name: "alt",
|
|
150
|
+
static: false,
|
|
151
|
+
private: false,
|
|
152
|
+
access: {
|
|
153
|
+
has: (obj) => "alt" in obj,
|
|
154
|
+
get: (obj) => obj.alt,
|
|
155
|
+
set: (obj, value) => {
|
|
156
|
+
obj.alt = value;
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
metadata: _metadata
|
|
160
|
+
}, _alt_initializers, _alt_extraInitializers);
|
|
161
|
+
__esDecorate(this, null, _skipLqip_decorators, {
|
|
162
|
+
kind: "accessor",
|
|
163
|
+
name: "skipLqip",
|
|
164
|
+
static: false,
|
|
165
|
+
private: false,
|
|
166
|
+
access: {
|
|
167
|
+
has: (obj) => "skipLqip" in obj,
|
|
168
|
+
get: (obj) => obj.skipLqip,
|
|
169
|
+
set: (obj, value) => {
|
|
170
|
+
obj.skipLqip = value;
|
|
171
|
+
}
|
|
172
|
+
},
|
|
173
|
+
metadata: _metadata
|
|
174
|
+
}, _skipLqip_initializers, _skipLqip_extraInitializers);
|
|
175
|
+
__esDecorate(this, null, _customFocalPoint_decorators, {
|
|
176
|
+
kind: "accessor",
|
|
177
|
+
name: "customFocalPoint",
|
|
178
|
+
static: false,
|
|
179
|
+
private: false,
|
|
180
|
+
access: {
|
|
181
|
+
has: (obj) => "customFocalPoint" in obj,
|
|
182
|
+
get: (obj) => obj.customFocalPoint,
|
|
183
|
+
set: (obj, value) => {
|
|
184
|
+
obj.customFocalPoint = value;
|
|
185
|
+
}
|
|
186
|
+
},
|
|
187
|
+
metadata: _metadata
|
|
188
|
+
}, _customFocalPoint_initializers, _customFocalPoint_extraInitializers);
|
|
189
|
+
__esDecorate(this, null, _decoding_decorators, {
|
|
190
|
+
kind: "accessor",
|
|
191
|
+
name: "decoding",
|
|
192
|
+
static: false,
|
|
193
|
+
private: false,
|
|
194
|
+
access: {
|
|
195
|
+
has: (obj) => "decoding" in obj,
|
|
196
|
+
get: (obj) => obj.decoding,
|
|
197
|
+
set: (obj, value) => {
|
|
198
|
+
obj.decoding = value;
|
|
199
|
+
}
|
|
200
|
+
},
|
|
201
|
+
metadata: _metadata
|
|
202
|
+
}, _decoding_initializers, _decoding_extraInitializers);
|
|
203
|
+
__esDecorate(this, null, _focalPointDebug_decorators, {
|
|
204
|
+
kind: "accessor",
|
|
205
|
+
name: "focalPointDebug",
|
|
206
|
+
static: false,
|
|
207
|
+
private: false,
|
|
208
|
+
access: {
|
|
209
|
+
has: (obj) => "focalPointDebug" in obj,
|
|
210
|
+
get: (obj) => obj.focalPointDebug,
|
|
211
|
+
set: (obj, value) => {
|
|
212
|
+
obj.focalPointDebug = value;
|
|
213
|
+
}
|
|
214
|
+
},
|
|
215
|
+
metadata: _metadata
|
|
216
|
+
}, _focalPointDebug_initializers, _focalPointDebug_extraInitializers);
|
|
217
|
+
__esDecorate(this, null, _focalPointX_decorators, {
|
|
218
|
+
kind: "accessor",
|
|
219
|
+
name: "focalPointX",
|
|
220
|
+
static: false,
|
|
221
|
+
private: false,
|
|
222
|
+
access: {
|
|
223
|
+
has: (obj) => "focalPointX" in obj,
|
|
224
|
+
get: (obj) => obj.focalPointX,
|
|
225
|
+
set: (obj, value) => {
|
|
226
|
+
obj.focalPointX = value;
|
|
227
|
+
}
|
|
228
|
+
},
|
|
229
|
+
metadata: _metadata
|
|
230
|
+
}, _focalPointX_initializers, _focalPointX_extraInitializers);
|
|
231
|
+
__esDecorate(this, null, _focalPointY_decorators, {
|
|
232
|
+
kind: "accessor",
|
|
233
|
+
name: "focalPointY",
|
|
234
|
+
static: false,
|
|
235
|
+
private: false,
|
|
236
|
+
access: {
|
|
237
|
+
has: (obj) => "focalPointY" in obj,
|
|
238
|
+
get: (obj) => obj.focalPointY,
|
|
239
|
+
set: (obj, value) => {
|
|
240
|
+
obj.focalPointY = value;
|
|
241
|
+
}
|
|
242
|
+
},
|
|
243
|
+
metadata: _metadata
|
|
244
|
+
}, _focalPointY_initializers, _focalPointY_extraInitializers);
|
|
245
|
+
__esDecorate(this, null, _imageSrc_decorators, {
|
|
246
|
+
kind: "accessor",
|
|
247
|
+
name: "imageSrc",
|
|
248
|
+
static: false,
|
|
249
|
+
private: false,
|
|
250
|
+
access: {
|
|
251
|
+
has: (obj) => "imageSrc" in obj,
|
|
252
|
+
get: (obj) => obj.imageSrc,
|
|
253
|
+
set: (obj, value) => {
|
|
254
|
+
obj.imageSrc = value;
|
|
255
|
+
}
|
|
256
|
+
},
|
|
257
|
+
metadata: _metadata
|
|
258
|
+
}, _imageSrc_initializers, _imageSrc_extraInitializers);
|
|
259
|
+
__esDecorate(this, null, _importance_decorators, {
|
|
260
|
+
kind: "accessor",
|
|
261
|
+
name: "importance",
|
|
262
|
+
static: false,
|
|
263
|
+
private: false,
|
|
264
|
+
access: {
|
|
265
|
+
has: (obj) => "importance" in obj,
|
|
266
|
+
get: (obj) => obj.importance,
|
|
267
|
+
set: (obj, value) => {
|
|
268
|
+
obj.importance = value;
|
|
269
|
+
}
|
|
270
|
+
},
|
|
271
|
+
metadata: _metadata
|
|
272
|
+
}, _importance_initializers, _importance_extraInitializers);
|
|
273
|
+
__esDecorate(this, null, _loading_decorators, {
|
|
274
|
+
kind: "accessor",
|
|
275
|
+
name: "loading",
|
|
276
|
+
static: false,
|
|
277
|
+
private: false,
|
|
278
|
+
access: {
|
|
279
|
+
has: (obj) => "loading" in obj,
|
|
280
|
+
get: (obj) => obj.loading,
|
|
281
|
+
set: (obj, value) => {
|
|
282
|
+
obj.loading = value;
|
|
283
|
+
}
|
|
284
|
+
},
|
|
285
|
+
metadata: _metadata
|
|
286
|
+
}, _loading_initializers, _loading_extraInitializers);
|
|
287
|
+
__esDecorate(this, null, _performanceMark_decorators, {
|
|
288
|
+
kind: "accessor",
|
|
289
|
+
name: "performanceMark",
|
|
290
|
+
static: false,
|
|
291
|
+
private: false,
|
|
292
|
+
access: {
|
|
293
|
+
has: (obj) => "performanceMark" in obj,
|
|
294
|
+
get: (obj) => obj.performanceMark,
|
|
295
|
+
set: (obj, value) => {
|
|
296
|
+
obj.performanceMark = value;
|
|
297
|
+
}
|
|
298
|
+
},
|
|
299
|
+
metadata: _metadata
|
|
300
|
+
}, _performanceMark_initializers, _performanceMark_extraInitializers);
|
|
301
|
+
__esDecorate(this, null, _pictureSizesConfig_decorators, {
|
|
302
|
+
kind: "accessor",
|
|
303
|
+
name: "pictureSizesConfig",
|
|
304
|
+
static: false,
|
|
305
|
+
private: false,
|
|
306
|
+
access: {
|
|
307
|
+
has: (obj) => "pictureSizesConfig" in obj,
|
|
308
|
+
get: (obj) => obj.pictureSizesConfig,
|
|
309
|
+
set: (obj, value) => {
|
|
310
|
+
obj.pictureSizesConfig = value;
|
|
311
|
+
}
|
|
312
|
+
},
|
|
313
|
+
metadata: _metadata
|
|
314
|
+
}, _pictureSizesConfig_initializers, _pictureSizesConfig_extraInitializers);
|
|
315
|
+
__esDecorate(this, null, __imageLoaded_decorators, {
|
|
316
|
+
kind: "method",
|
|
317
|
+
name: "_imageLoaded",
|
|
318
|
+
static: false,
|
|
319
|
+
private: false,
|
|
320
|
+
access: {
|
|
321
|
+
has: (obj) => "_imageLoaded" in obj,
|
|
322
|
+
get: (obj) => obj._imageLoaded
|
|
323
|
+
},
|
|
324
|
+
metadata: _metadata
|
|
325
|
+
}, null, _instanceExtraInitializers);
|
|
326
|
+
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
327
|
+
enumerable: true,
|
|
328
|
+
configurable: true,
|
|
329
|
+
writable: true,
|
|
330
|
+
value: _metadata
|
|
331
|
+
});
|
|
332
|
+
}
|
|
333
|
+
static {
|
|
334
|
+
this.elementName = "sbb-image";
|
|
335
|
+
}
|
|
336
|
+
static {
|
|
337
|
+
this.styles = [boxSizingStyles, unsafeCSS(image_default)];
|
|
338
|
+
}
|
|
339
|
+
static {
|
|
340
|
+
this.events = {
|
|
341
|
+
error: "error",
|
|
342
|
+
load: "load"
|
|
343
|
+
};
|
|
344
|
+
}
|
|
345
|
+
#alt_accessor_storage;
|
|
346
|
+
/**
|
|
347
|
+
* An alt text is not always necessary (e.g. in teaser cards when
|
|
348
|
+
* additional link text is provided). In this case we can leave
|
|
349
|
+
* the value of the alt attribute blank, but the attribute itself
|
|
350
|
+
* still needs to be present. That way we can signal assistive
|
|
351
|
+
* technology, that they can skip the image.
|
|
352
|
+
*/
|
|
353
|
+
get alt() {
|
|
354
|
+
return this.#alt_accessor_storage;
|
|
355
|
+
}
|
|
356
|
+
set alt(value) {
|
|
357
|
+
this.#alt_accessor_storage = value;
|
|
358
|
+
}
|
|
359
|
+
#skipLqip_accessor_storage;
|
|
360
|
+
/**
|
|
361
|
+
* If set to false, we show a blurred version of the image as
|
|
362
|
+
* placeholder before the actual image shows up. This will help
|
|
363
|
+
* to improve the perceived loading performance. Read more about
|
|
364
|
+
* the idea of lqip here:
|
|
365
|
+
* https://medium.com/@imgix/lqip-your-images-for-fast-loading-2523d9ee4a62
|
|
366
|
+
*/
|
|
367
|
+
get skipLqip() {
|
|
368
|
+
return this.#skipLqip_accessor_storage;
|
|
369
|
+
}
|
|
370
|
+
set skipLqip(value) {
|
|
371
|
+
this.#skipLqip_accessor_storage = value;
|
|
372
|
+
}
|
|
373
|
+
#customFocalPoint_accessor_storage;
|
|
374
|
+
/**
|
|
375
|
+
* Set this to true, if you want to pass a custom focal point
|
|
376
|
+
* for the image. See full documentation here:
|
|
377
|
+
* https://docs.imgix.com/apis/rendering/focalpoint-crop
|
|
378
|
+
*/
|
|
379
|
+
get customFocalPoint() {
|
|
380
|
+
return this.#customFocalPoint_accessor_storage;
|
|
381
|
+
}
|
|
382
|
+
set customFocalPoint(value) {
|
|
383
|
+
this.#customFocalPoint_accessor_storage = value;
|
|
384
|
+
}
|
|
385
|
+
#decoding_accessor_storage;
|
|
386
|
+
/**
|
|
387
|
+
* If the lazy property is set to true, the module will automatically
|
|
388
|
+
* change the decoding to async, otherwise the decoding is set to auto
|
|
389
|
+
* which leaves the handling up to the browser. Read more about the
|
|
390
|
+
* decoding attribute here:
|
|
391
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/decoding
|
|
392
|
+
*/
|
|
393
|
+
get decoding() {
|
|
394
|
+
return this.#decoding_accessor_storage;
|
|
395
|
+
}
|
|
396
|
+
set decoding(value) {
|
|
397
|
+
this.#decoding_accessor_storage = value;
|
|
398
|
+
}
|
|
399
|
+
#focalPointDebug_accessor_storage;
|
|
400
|
+
/**
|
|
401
|
+
* Set this to true, to receive visual guidance where the custom focal
|
|
402
|
+
* point is currently set.
|
|
403
|
+
*/
|
|
404
|
+
get focalPointDebug() {
|
|
405
|
+
return this.#focalPointDebug_accessor_storage;
|
|
406
|
+
}
|
|
407
|
+
set focalPointDebug(value) {
|
|
408
|
+
this.#focalPointDebug_accessor_storage = value;
|
|
409
|
+
}
|
|
410
|
+
#focalPointX_accessor_storage;
|
|
411
|
+
/**
|
|
412
|
+
* Pass in a floating number between 0 (left) and 1 (right).
|
|
413
|
+
*/
|
|
414
|
+
get focalPointX() {
|
|
415
|
+
return this.#focalPointX_accessor_storage;
|
|
416
|
+
}
|
|
417
|
+
set focalPointX(value) {
|
|
418
|
+
this.#focalPointX_accessor_storage = value;
|
|
419
|
+
}
|
|
420
|
+
#focalPointY_accessor_storage;
|
|
421
|
+
/**
|
|
422
|
+
* Pass in a floating number between 0 (top) and 1 (bottom).
|
|
423
|
+
*/
|
|
424
|
+
get focalPointY() {
|
|
425
|
+
return this.#focalPointY_accessor_storage;
|
|
426
|
+
}
|
|
427
|
+
set focalPointY(value) {
|
|
428
|
+
this.#focalPointY_accessor_storage = value;
|
|
429
|
+
}
|
|
430
|
+
#imageSrc_accessor_storage;
|
|
431
|
+
/**
|
|
432
|
+
* Right now the module is heavily coupled with the image delivery
|
|
433
|
+
* service imgix and depends on the original files being stored
|
|
434
|
+
* inside AEM. You can pass in any https://cdn.img.sbb.ch img
|
|
435
|
+
* src address you find on sbb.ch to play around with it. Just
|
|
436
|
+
* strip the url parameters and paste in the plain file address.
|
|
437
|
+
* If you want to know how to best work with this module with
|
|
438
|
+
* images coming from a different source, please contact the
|
|
439
|
+
* LYNE Core Team.
|
|
440
|
+
*/
|
|
441
|
+
get imageSrc() {
|
|
442
|
+
return this.#imageSrc_accessor_storage;
|
|
443
|
+
}
|
|
444
|
+
set imageSrc(value) {
|
|
445
|
+
this.#imageSrc_accessor_storage = value;
|
|
446
|
+
}
|
|
447
|
+
#importance_accessor_storage;
|
|
448
|
+
/**
|
|
449
|
+
* The importance attribute is fairly new attribute which should
|
|
450
|
+
* help the browser decide which resources it should prioritise
|
|
451
|
+
* during page load. We will set the attribute value based on the
|
|
452
|
+
* value, we receive in the loading attribute. 'eager', which we use
|
|
453
|
+
* for the largest image within the initial viewport, will set the
|
|
454
|
+
* attribute value to 'high'. 'lazy', which we use for images below
|
|
455
|
+
* the fold, will set the attribute value to 'low'.
|
|
456
|
+
*/
|
|
457
|
+
get importance() {
|
|
458
|
+
return this.#importance_accessor_storage;
|
|
459
|
+
}
|
|
460
|
+
set importance(value) {
|
|
461
|
+
this.#importance_accessor_storage = value;
|
|
462
|
+
}
|
|
463
|
+
#loading_accessor_storage;
|
|
464
|
+
/**
|
|
465
|
+
* With the support of native image lazy loading, we can now
|
|
466
|
+
* decide whether we want to load the image immediately or only
|
|
467
|
+
* once it is close to the visible viewport. The value eager is
|
|
468
|
+
* best used for images within the initial viewport. We want to
|
|
469
|
+
* load these images as fast as possible to improve the Core Web
|
|
470
|
+
* Vitals values. lazy on the other hand works best for images
|
|
471
|
+
* which are further down the page or invisible during the loading
|
|
472
|
+
* of the initial viewport.
|
|
473
|
+
*/
|
|
474
|
+
get loading() {
|
|
475
|
+
return this.#loading_accessor_storage;
|
|
476
|
+
}
|
|
477
|
+
set loading(value) {
|
|
478
|
+
this.#loading_accessor_storage = value;
|
|
479
|
+
}
|
|
480
|
+
#performanceMark_accessor_storage;
|
|
481
|
+
/**
|
|
482
|
+
* With `performance.mark` you can log a timestamp associated with
|
|
483
|
+
* the name you define in performanceMark when a certain event is
|
|
484
|
+
* happening. In our case we will log the `performance.mark` into
|
|
485
|
+
* the PerformanceEntry API once the image is fully loaded.
|
|
486
|
+
* Performance monitoring tools like SpeedCurve or Lighthouse are
|
|
487
|
+
* then able to grab these entries from the PerformanceEntry API
|
|
488
|
+
* and give us additional information and insights about our page
|
|
489
|
+
* loading behavior. We are then also able to monitor these
|
|
490
|
+
* values over a long period to see if our performance
|
|
491
|
+
* increases or decreases over time. Best to use lowercase strings
|
|
492
|
+
* here, separate words with underscores or dashes.
|
|
493
|
+
*/
|
|
494
|
+
get performanceMark() {
|
|
495
|
+
return this.#performanceMark_accessor_storage;
|
|
496
|
+
}
|
|
497
|
+
set performanceMark(value) {
|
|
498
|
+
this.#performanceMark_accessor_storage = value;
|
|
499
|
+
}
|
|
500
|
+
#pictureSizesConfig_accessor_storage;
|
|
501
|
+
/**
|
|
502
|
+
* With the pictureSizesConfig object, you can pass in information
|
|
503
|
+
* into image about what kind of source elements should get
|
|
504
|
+
* rendered. mediaQueries accepts multiple Media Query entries
|
|
505
|
+
* which can get combined by defining a conditionOperator.
|
|
506
|
+
* Type is: stringified InterfaceImageAttributesSizesConfig-Object
|
|
507
|
+
* An example could look like this:
|
|
508
|
+
* {
|
|
509
|
+
* "breakpoints": [
|
|
510
|
+
* {
|
|
511
|
+
* "image": {
|
|
512
|
+
* "height": "675",
|
|
513
|
+
* "width": "1200"
|
|
514
|
+
* },
|
|
515
|
+
* "mediaQueries": [
|
|
516
|
+
* {
|
|
517
|
+
* "conditionFeature": "min-width",
|
|
518
|
+
* "conditionFeatureValue": {
|
|
519
|
+
* "lyneDesignToken": true,
|
|
520
|
+
* "value": "sbb-breakpoint-large-min"
|
|
521
|
+
* },
|
|
522
|
+
* "conditionOperator": false
|
|
523
|
+
* }
|
|
524
|
+
* ]
|
|
525
|
+
* },
|
|
526
|
+
* {
|
|
527
|
+
* "image": {
|
|
528
|
+
* "height": "549",
|
|
529
|
+
* "width": "976"
|
|
530
|
+
* },
|
|
531
|
+
* "mediaQueries": [
|
|
532
|
+
* {
|
|
533
|
+
* "conditionFeature": "min-width",
|
|
534
|
+
* "conditionFeatureValue": {
|
|
535
|
+
* "lyneDesignToken": true,
|
|
536
|
+
* "value": "sbb-breakpoint-small-min"
|
|
537
|
+
* },
|
|
538
|
+
* "conditionOperator": false
|
|
539
|
+
* }
|
|
540
|
+
* ]
|
|
541
|
+
* },
|
|
542
|
+
* {
|
|
543
|
+
* "image": {
|
|
544
|
+
* "height": "180",
|
|
545
|
+
* "width": "320"
|
|
546
|
+
* },
|
|
547
|
+
* "mediaQueries": [
|
|
548
|
+
* {
|
|
549
|
+
* "conditionFeature": "max-width",
|
|
550
|
+
* "conditionFeatureValue": {
|
|
551
|
+
* "lyneDesignToken": true,
|
|
552
|
+
* "value": "sbb-breakpoint-small-max"
|
|
553
|
+
* },
|
|
554
|
+
* "conditionOperator": "and"
|
|
555
|
+
* },
|
|
556
|
+
* {
|
|
557
|
+
* "conditionFeature": "orientation",
|
|
558
|
+
* "conditionFeatureValue": {
|
|
559
|
+
* "lyneDesignToken": false,
|
|
560
|
+
* "value": "landscape"
|
|
561
|
+
* },
|
|
562
|
+
* "conditionOperator": false
|
|
563
|
+
* }
|
|
564
|
+
* ]
|
|
565
|
+
* }
|
|
566
|
+
* ]
|
|
567
|
+
* }
|
|
568
|
+
*/
|
|
569
|
+
get pictureSizesConfig() {
|
|
570
|
+
return this.#pictureSizesConfig_accessor_storage;
|
|
571
|
+
}
|
|
572
|
+
set pictureSizesConfig(value) {
|
|
573
|
+
this.#pictureSizesConfig_accessor_storage = value;
|
|
574
|
+
}
|
|
575
|
+
/** Whether the image is finished loading or failed to load. */
|
|
576
|
+
get complete() {
|
|
577
|
+
return this.shadowRoot?.querySelector?.(".sbb-image__img")?.complete ?? false;
|
|
578
|
+
}
|
|
579
|
+
updated(changedProperties) {
|
|
580
|
+
super.updated(changedProperties);
|
|
581
|
+
if (!this._captionElement) return;
|
|
582
|
+
this._linksInCaption = this._captionElement.querySelectorAll("a");
|
|
583
|
+
if (!this._linksInCaption) return;
|
|
584
|
+
this._addFocusAbilityToLinksInCaption();
|
|
585
|
+
}
|
|
586
|
+
_logPerformanceMarks() {
|
|
587
|
+
if (this.performanceMark) {
|
|
588
|
+
performance.clearMarks(this.performanceMark);
|
|
589
|
+
performance.mark(this.performanceMark);
|
|
590
|
+
}
|
|
591
|
+
}
|
|
592
|
+
_addFocusAbilityToLinksInCaption() {
|
|
593
|
+
this._linksInCaption?.forEach((link) => {
|
|
594
|
+
link.removeAttribute("tabindex");
|
|
595
|
+
});
|
|
596
|
+
}
|
|
597
|
+
_prepareImageUrl(baseUrl, lquip = false) {
|
|
598
|
+
if (!baseUrl || baseUrl === "") return "";
|
|
599
|
+
const isFullyQualifiedUrl = !!baseUrl.match(/^\w+:\/\//);
|
|
600
|
+
const imageUrlObj = isFullyQualifiedUrl ? new URL(baseUrl) : new URL(`http://noop/${baseUrl}`);
|
|
601
|
+
if (lquip) {
|
|
602
|
+
imageUrlObj.searchParams.append("blur", "100");
|
|
603
|
+
imageUrlObj.searchParams.append("w", "100");
|
|
604
|
+
imageUrlObj.searchParams.append("h", "56");
|
|
605
|
+
} else imageUrlObj.searchParams.append("auto", "format,compress,cs=tinysrgb");
|
|
606
|
+
if (this.customFocalPoint) {
|
|
607
|
+
imageUrlObj.searchParams.append("fit", "crop");
|
|
608
|
+
imageUrlObj.searchParams.append("crop", "focalpoint");
|
|
609
|
+
imageUrlObj.searchParams.append("fp-x", this.focalPointX.toString(10));
|
|
610
|
+
imageUrlObj.searchParams.append("fp-y", this.focalPointY.toString(10));
|
|
611
|
+
imageUrlObj.searchParams.append("fp-z", "1");
|
|
612
|
+
}
|
|
613
|
+
if (this.focalPointDebug) imageUrlObj.searchParams.append("fp-debug", "true");
|
|
614
|
+
return isFullyQualifiedUrl ? imageUrlObj.href : imageUrlObj.pathname.substring(1) + imageUrlObj.search;
|
|
615
|
+
}
|
|
616
|
+
_preparePictureSizeConfigs() {
|
|
617
|
+
let pictureSizesConfig;
|
|
618
|
+
if (this.pictureSizesConfig) pictureSizesConfig = this.pictureSizesConfig;
|
|
619
|
+
else pictureSizesConfig = `{
|
|
620
|
+
"breakpoints": [
|
|
621
|
+
{
|
|
622
|
+
"image": {
|
|
623
|
+
"height": 675,
|
|
624
|
+
"width": 1200
|
|
625
|
+
},
|
|
626
|
+
"mediaQueries": [
|
|
627
|
+
{
|
|
628
|
+
"conditionFeature": "min-width",
|
|
629
|
+
"conditionFeatureValue": {
|
|
630
|
+
"lyneDesignToken": true,
|
|
631
|
+
"value": "sbb-breakpoint-large-min"
|
|
632
|
+
},
|
|
633
|
+
"conditionOperator": false
|
|
634
|
+
}
|
|
635
|
+
]
|
|
636
|
+
},
|
|
637
|
+
{
|
|
638
|
+
"image": {
|
|
639
|
+
"height": 549,
|
|
640
|
+
"width": 976
|
|
641
|
+
},
|
|
642
|
+
"mediaQueries": [
|
|
643
|
+
{
|
|
644
|
+
"conditionFeature": "min-width",
|
|
645
|
+
"conditionFeatureValue": {
|
|
646
|
+
"lyneDesignToken": true,
|
|
647
|
+
"value": "sbb-breakpoint-small-min"
|
|
648
|
+
},
|
|
649
|
+
"conditionOperator": false
|
|
650
|
+
}
|
|
651
|
+
]
|
|
652
|
+
},
|
|
653
|
+
{
|
|
654
|
+
"image": {
|
|
655
|
+
"height": 180,
|
|
656
|
+
"width": 320
|
|
657
|
+
},
|
|
658
|
+
"mediaQueries": [
|
|
659
|
+
{
|
|
660
|
+
"conditionFeature": "max-width",
|
|
661
|
+
"conditionFeatureValue": {
|
|
662
|
+
"lyneDesignToken": true,
|
|
663
|
+
"value": "sbb-breakpoint-zero-max"
|
|
664
|
+
},
|
|
665
|
+
"conditionOperator": false
|
|
666
|
+
}
|
|
667
|
+
]
|
|
668
|
+
}
|
|
669
|
+
]
|
|
670
|
+
}`;
|
|
671
|
+
return imageHelperGetBreakpoints(pictureSizesConfig);
|
|
672
|
+
}
|
|
673
|
+
_createMediaQueryString(mediaQueries) {
|
|
674
|
+
let mediaQuery = "";
|
|
675
|
+
mediaQueries.forEach((mq) => {
|
|
676
|
+
const mqCondition = mq.conditionFeature;
|
|
677
|
+
let mqValue;
|
|
678
|
+
if (mq.conditionFeatureValue.lyneDesignToken) mqValue = breakpointMap[mq.conditionFeatureValue.value] ?? "";
|
|
679
|
+
else mqValue = mq.conditionFeatureValue.value;
|
|
680
|
+
const mqCombiner = mq.conditionOperator ? ` ${mq.conditionOperator} ` : "";
|
|
681
|
+
mediaQuery += `(${mqCondition}: ${mqValue})${mqCombiner}`;
|
|
682
|
+
});
|
|
683
|
+
return mediaQuery;
|
|
684
|
+
}
|
|
685
|
+
_imageLoaded() {
|
|
686
|
+
this._logPerformanceMarks();
|
|
687
|
+
this.internals.states.add("loaded");
|
|
688
|
+
/** Emits each time an image loads. E.g. loading image for a different viewport, triggers the load event again. */
|
|
689
|
+
this.dispatchEvent(new Event("load"));
|
|
690
|
+
}
|
|
691
|
+
render() {
|
|
692
|
+
const imageUrlLQIP = this._prepareImageUrl(this.imageSrc, true);
|
|
693
|
+
const imageUrlWithParams = this._prepareImageUrl(this.imageSrc, false);
|
|
694
|
+
if (this.loading === "lazy") {
|
|
695
|
+
this.decoding = "async";
|
|
696
|
+
this.importance = "low";
|
|
697
|
+
}
|
|
698
|
+
const pictureSizeConfigs = this._preparePictureSizeConfigs();
|
|
699
|
+
/**
|
|
700
|
+
* The alt attribute should always be present for the img element.
|
|
701
|
+
* If it has an empty string as its value, it is simply ignored
|
|
702
|
+
* by assistive technologies. If we leave it out completely,
|
|
703
|
+
* they might try to interpret the img element.
|
|
704
|
+
*/
|
|
705
|
+
return html`
|
|
706
|
+
<div class="sbb-image__wrapper">
|
|
707
|
+
${!this.skipLqip ? html`<img
|
|
708
|
+
alt=""
|
|
709
|
+
class="sbb-image__blurred"
|
|
710
|
+
src=${imageUrlLQIP}
|
|
711
|
+
width="1000"
|
|
712
|
+
height="562"
|
|
713
|
+
loading=${this.loading ?? nothing}
|
|
714
|
+
decoding=${this.decoding ?? nothing}
|
|
715
|
+
/>` : nothing}
|
|
716
|
+
|
|
717
|
+
<picture>
|
|
718
|
+
<!-- render picture element sources -->
|
|
719
|
+
${pictureSizeConfigs.map((config) => {
|
|
720
|
+
const imageHeight = config.image.height;
|
|
721
|
+
const imageWidth = config.image.width;
|
|
722
|
+
return html`
|
|
723
|
+
<source
|
|
724
|
+
media=${`${this._createMediaQueryString(config.mediaQueries)}`}
|
|
725
|
+
sizes=${`${imageWidth}px`}
|
|
726
|
+
srcset=${`${imageUrlWithParams}&w=${imageWidth}&h=${imageHeight}&q=${this._config.nonRetinaQuality} ${imageWidth}w, ${imageUrlWithParams}&w=${imageWidth * 2}&h=${imageHeight * 2}&q=${this._config.retinaQuality} ${imageWidth * 2}w`}
|
|
727
|
+
></source>`;
|
|
728
|
+
})}
|
|
729
|
+
<img
|
|
730
|
+
alt=${this.alt || ""}
|
|
731
|
+
@load=${this._imageLoaded}
|
|
732
|
+
@error=${() => {
|
|
733
|
+
/** Emits when the image loading ended in an error. */
|
|
734
|
+
return this.dispatchEvent(new Event("error"));
|
|
735
|
+
}}
|
|
736
|
+
class="sbb-image__img"
|
|
737
|
+
src=${this.imageSrc}
|
|
738
|
+
width="1000"
|
|
739
|
+
height="562"
|
|
740
|
+
loading=${this.loading ?? nothing}
|
|
741
|
+
decoding=${this.decoding ?? nothing}
|
|
742
|
+
.fetchPriority=${this.importance ?? nothing}
|
|
743
|
+
/>
|
|
744
|
+
</picture>
|
|
745
|
+
</div>
|
|
746
|
+
`;
|
|
747
|
+
}
|
|
748
|
+
constructor() {
|
|
749
|
+
super(...arguments);
|
|
750
|
+
this._captionElement = __runInitializers(this, _instanceExtraInitializers);
|
|
751
|
+
this._config = {
|
|
752
|
+
nonRetinaQuality: "45",
|
|
753
|
+
retinaQuality: "20"
|
|
754
|
+
};
|
|
755
|
+
this.#alt_accessor_storage = __runInitializers(this, _alt_initializers, "");
|
|
756
|
+
this.#skipLqip_accessor_storage = (__runInitializers(this, _alt_extraInitializers), __runInitializers(this, _skipLqip_initializers, false));
|
|
757
|
+
this.#customFocalPoint_accessor_storage = (__runInitializers(this, _skipLqip_extraInitializers), __runInitializers(this, _customFocalPoint_initializers, false));
|
|
758
|
+
this.#decoding_accessor_storage = (__runInitializers(this, _customFocalPoint_extraInitializers), __runInitializers(this, _decoding_initializers, "auto"));
|
|
759
|
+
this.#focalPointDebug_accessor_storage = (__runInitializers(this, _decoding_extraInitializers), __runInitializers(this, _focalPointDebug_initializers, false));
|
|
760
|
+
this.#focalPointX_accessor_storage = (__runInitializers(this, _focalPointDebug_extraInitializers), __runInitializers(this, _focalPointX_initializers, 1));
|
|
761
|
+
this.#focalPointY_accessor_storage = (__runInitializers(this, _focalPointX_extraInitializers), __runInitializers(this, _focalPointY_initializers, 1));
|
|
762
|
+
this.#imageSrc_accessor_storage = (__runInitializers(this, _focalPointY_extraInitializers), __runInitializers(this, _imageSrc_initializers, ""));
|
|
763
|
+
this.#importance_accessor_storage = (__runInitializers(this, _imageSrc_extraInitializers), __runInitializers(this, _importance_initializers, "high"));
|
|
764
|
+
this.#loading_accessor_storage = (__runInitializers(this, _importance_extraInitializers), __runInitializers(this, _loading_initializers, "eager"));
|
|
765
|
+
this.#performanceMark_accessor_storage = (__runInitializers(this, _loading_extraInitializers), __runInitializers(this, _performanceMark_initializers, ""));
|
|
766
|
+
this.#pictureSizesConfig_accessor_storage = (__runInitializers(this, _performanceMark_extraInitializers), __runInitializers(this, _pictureSizesConfig_initializers, ""));
|
|
767
|
+
__runInitializers(this, _pictureSizesConfig_extraInitializers);
|
|
768
|
+
}
|
|
769
|
+
};
|
|
770
|
+
})();
|
|
771
|
+
//#endregion
|
|
772
|
+
export { SbbImageElement as t };
|
|
773
|
+
|
|
774
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuY29tcG9uZW50LUJEMGpjLXUtLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9pbWFnZS9pbWFnZS5zY3NzP2lubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9pbWFnZS9pbWFnZS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAtLXNiYi1pbWFnZS1hc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgLS1zYmItaW1hZ2UtYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoXG4gICAgLS1zYmItZGlzYWJsZS1hbmltYXRpb24tZHVyYXRpb24sXG4gICAgdmFyKC0tc2JiLWFuaW1hdGlvbi1kdXJhdGlvbi00eClcbiAgKTtcbiAgLS1zYmItaW1hZ2Utb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi1ib3JkZXItcmFkaXVzLTR4KTtcbn1cblxuLnNiYi1pbWFnZV9faW1nIHtcbiAgb3BhY2l0eTogMC4wMDAwMDE7XG5cbiAgOmhvc3QoOnN0YXRlKGxvYWRlZCkpICYge1xuICAgIG9wYWNpdHk6IDAuOTk5OTk5O1xuICB9XG5cbiAgOmhvc3QoOm5vdChbc2tpcC1scWlwXSkpICYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgfVxufVxuXG4uc2JiLWltYWdlX19ibHVycmVkIHtcbiAgOmhvc3QoOnN0YXRlKGxvYWRlZCkpICYge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLy8gQXZvaWRzIHVud2FudGVkIHNwYWNlIG9yIHNtYWxsIGNyb3BwaW5nXG5waWN0dXJlIHtcbiAgZGlzcGxheTogY29udGVudHM7XG59XG5cbi8vIEFmdGVyIHN1Y2Nlc3NmdWwgbG9hZGluZyBhbiBpbWFnZSwgdGhlIGxvYWRlZCBpbWFnZSBpcyBmYWRlZCBpbiBvdmVyIHRoZSBibHVycmVkIGxxaXAgaW1hZ2Ugd2l0aCBhIHNob3J0IHRyYW5zaXRpb24uXG4vLyBUbyBzdXBwb3J0IHRyYW5zcGFyZW50IGltYWdlcywgd2UgbmVlZCBhbHNvIHRvIGZhZGUgb3V0IHRoZSBibHVycmVkIGxxaXAgaW1hZ2UuXG4vLyBUaGlzIGlzIG5vdCBwZXJmZWN0IGluIHRoZSBjYXNlIG9mIGEgbm9uIHRyYW5zcGFyZW50IGltYWdlLCBidXQgZG9lcyBub3QgbG9vayB0aGF0IGJhZC5cbjppcyguc2JiLWltYWdlX19pbWcsIC5zYmItaW1hZ2VfX2JsdXJyZWQpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogdmFyKC0tc2JiLWltYWdlLW9iamVjdC1maXQpO1xuICBvYmplY3QtcG9zaXRpb246IHZhcigtLXNiYi1pbWFnZS1vYmplY3QtcG9zaXRpb24pO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXNiYi1pbWFnZS1hbmltYXRpb24tZHVyYXRpb24pIHZhcigtLXNiYi1hbmltYXRpb24tZWFzaW5nKTtcbn1cblxuLnNiYi1pbWFnZV9fd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYXNwZWN0LXJhdGlvOiB2YXIoLS1zYmItaW1hZ2UtYXNwZWN0LXJhdGlvKTtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiIsImltcG9ydCB7XG4gIFNiYkJyZWFrcG9pbnRMYXJnZU1heCxcbiAgU2JiQnJlYWtwb2ludExhcmdlTWluLFxuICBTYmJCcmVha3BvaW50U21hbGxNYXgsXG4gIFNiYkJyZWFrcG9pbnRTbWFsbE1pbixcbiAgU2JiQnJlYWtwb2ludFVsdHJhTWF4LFxuICBTYmJCcmVha3BvaW50VWx0cmFNaW4sXG4gIFNiYkJyZWFrcG9pbnRaZXJvTWF4LFxuICBTYmJCcmVha3BvaW50WmVyb01pbixcbn0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZGVzaWduLXRva2Vucyc7XG5pbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBldmVudE9wdGlvbnMsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJFbGVtZW50IH0gZnJvbSAnLi4vY29yZS9iYXNlLWVsZW1lbnRzLnRzJztcbmltcG9ydCB7IGZvcmNlVHlwZSB9IGZyb20gJy4uL2NvcmUvZGVjb3JhdG9ycy50cyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICcuLi9jb3JlL3N0eWxlcy50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2ltYWdlLnNjc3M/aW5saW5lJztcblxuZXhwb3J0IGludGVyZmFjZSBJbnRlcmZhY2VJbWFnZUF0dHJpYnV0ZXNTaXplc0NvbmZpZyB7XG4gIGJyZWFrcG9pbnRzOiBJbnRlcmZhY2VJbWFnZUF0dHJpYnV0ZXNTaXplc0NvbmZpZ0JyZWFrcG9pbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbnRlcmZhY2VJbWFnZUF0dHJpYnV0ZXNTaXplc0NvbmZpZ0JyZWFrcG9pbnQge1xuICBpbWFnZToge1xuICAgIGhlaWdodDogbnVtYmVyO1xuICAgIHdpZHRoOiBudW1iZXI7XG4gIH07XG4gIG1lZGlhUXVlcmllczogSW50ZXJmYWNlSW1hZ2VBdHRyaWJ1dGVzU2l6ZXNDb25maWdNZWRpYVF1ZXJ5W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZXJmYWNlSW1hZ2VBdHRyaWJ1dGVzU2l6ZXNDb25maWdNZWRpYVF1ZXJ5IHtcbiAgY29uZGl0aW9uRmVhdHVyZTogc3RyaW5nO1xuICBjb25kaXRpb25GZWF0dXJlVmFsdWU6IHtcbiAgICBseW5lRGVzaWduVG9rZW46IGJvb2xlYW47XG4gICAgdmFsdWU6IHN0cmluZztcbiAgfTtcbiAgY29uZGl0aW9uT3BlcmF0b3I6IGZhbHNlO1xufVxuXG4vKipcbiAqIHdlIGNoZWNrIHRoZSBzdHJ1Y3R1cmUgb2YgdGhlIGRhdGEgbWFudWFsbHksIHNvIGl0J3Mgc2FmZSB0byB1c2UgYGFueWAgYXMgcmV0dXJuIHR5cGVcbiAqL1xuY29uc3QgaW1hZ2VIZWxwZXJHZXRCcmVha3BvaW50cyA9IChcbiAganNvblN0cmluZzogc3RyaW5nLFxuKTogSW50ZXJmYWNlSW1hZ2VBdHRyaWJ1dGVzU2l6ZXNDb25maWdCcmVha3BvaW50W10gPT4ge1xuICBpZiAoIWpzb25TdHJpbmcgfHwganNvblN0cmluZy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICAvLyBtYWtlIHN1cmUgdGhhdCB3ZSBoYXZlIGBicmVha3BvaW50c2Aga2V5IGluIG9iamVjdFxuICBjb25zdCBsb2dXYXJuaW5nID0gaW1wb3J0Lm1ldGEuZW52LkRFVlxuICAgID8gKCkgPT5cbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICdzYmItaW1hZ2UgZXJyb3I6IGF0dHJpYnV0ZSBicmVha3BvaW50cyBoYXMgd3JvbmcgZGF0YSBmb3JtYXQuIFJlZmVyZW5jZSB0aGUgZG9jdW1lbnRhdGlvbiB0byBzZWUgaG93IHlvdSBzaG91bGQgZm9ybWF0IHRoZSBkYXRhIGZvciB0aGlzIGF0dHJpYnV0ZS4nLFxuICAgICAgICApXG4gICAgOiBudWxsO1xuICBsZXQganNvbk9iamVjdDogSW50ZXJmYWNlSW1hZ2VBdHRyaWJ1dGVzU2l6ZXNDb25maWc7XG5cbiAgdHJ5IHtcbiAgICBqc29uT2JqZWN0ID0gSlNPTi5wYXJzZShqc29uU3RyaW5nKTtcbiAgfSBjYXRjaCB7XG4gICAgbG9nV2FybmluZz8uKCk7XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgaWYgKCFqc29uT2JqZWN0LmJyZWFrcG9pbnRzIHx8IGpzb25PYmplY3QuYnJlYWtwb2ludHMubGVuZ3RoID09PSAwKSB7XG4gICAgbG9nV2FybmluZz8uKCk7XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgLy8gbWFrZSBzdXJlIHdlIGdldCBhbiBhcnJheSBvZiBicmVha3BvaW50c1xuICBpZiAoIUFycmF5LmlzQXJyYXkoanNvbk9iamVjdC5icmVha3BvaW50cykpIHtcbiAgICBsb2dXYXJuaW5nPy4oKTtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICAvKipcbiAgICogMS4gbWFrZSBzdXJlIHRoYXQgZWFjaCBlbnRyeSB3aXRoaW4gdGhlIGJyZWFrcG9pbnRzIG9iamVjdCBjb250YWlucyBvbmx5IGFsbG93ZWQga2V5c1xuICAgKiAyLiBtYWtlIHN1cmUgdGhhdCBhbGwgbmVjZXNzYXJ5IGtleXMgYXJlIHByZXNlbnRcbiAgICovXG4gIGxldCB3cm9uZ0tleURldGVjdGVkID0gZmFsc2U7XG4gIGxldCBtaXNzaW5nS2V5RGV0ZWN0ZWQgPSBmYWxzZTtcblxuICBjb25zdCBhbGxvd2VkS2V5cyA9IFsnaW1hZ2UnLCAnbWVkaWFRdWVyaWVzJ107XG5cbiAganNvbk9iamVjdC5icmVha3BvaW50cy5mb3JFYWNoKChicmVha3BvaW50KSA9PiB7XG4gICAgY29uc3QgYnJlYWtwb2ludEtleXMgPSBPYmplY3Qua2V5cyhicmVha3BvaW50KTtcblxuICAgIGJyZWFrcG9pbnRLZXlzLmZvckVhY2goKGJyZWFrcG9pbnRLZXkpID0+IHtcbiAgICAgIGlmICghYWxsb3dlZEtleXMuaW5jbHVkZXMoYnJlYWtwb2ludEtleSkpIHtcbiAgICAgICAgd3JvbmdLZXlEZXRlY3RlZCA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBhbGxvd2VkS2V5cy5mb3JFYWNoKChhbGxvd2VkS2V5KSA9PiB7XG4gICAgICBpZiAoIWJyZWFrcG9pbnRLZXlzLmluY2x1ZGVzKGFsbG93ZWRLZXkpKSB7XG4gICAgICAgIG1pc3NpbmdLZXlEZXRlY3RlZCA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xuXG4gIGlmICh3cm9uZ0tleURldGVjdGVkIHx8IG1pc3NpbmdLZXlEZXRlY3RlZCkge1xuICAgIGxvZ1dhcm5pbmc/LigpO1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIHJldHVybiBqc29uT2JqZWN0LmJyZWFrcG9pbnRzO1xufTtcblxuY29uc3QgZXZlbnRMaXN0ZW5lck9wdGlvbnMgPSB7XG4gIHBhc3NpdmU6IHRydWUsXG59O1xuXG5jb25zdCBicmVha3BvaW50TWFwOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAnc2JiLWJyZWFrcG9pbnQtemVyby1taW4nOiBTYmJCcmVha3BvaW50WmVyb01pbixcbiAgJ3NiYi1icmVha3BvaW50LXplcm8tbWF4JzogU2JiQnJlYWtwb2ludFplcm9NYXgsXG4gICdzYmItYnJlYWtwb2ludC1zbWFsbC1taW4nOiBTYmJCcmVha3BvaW50U21hbGxNaW4sXG4gICdzYmItYnJlYWtwb2ludC1zbWFsbC1tYXgnOiBTYmJCcmVha3BvaW50U21hbGxNYXgsXG4gICdzYmItYnJlYWtwb2ludC1sYXJnZS1taW4nOiBTYmJCcmVha3BvaW50TGFyZ2VNaW4sXG4gICdzYmItYnJlYWtwb2ludC1sYXJnZS1tYXgnOiBTYmJCcmVha3BvaW50TGFyZ2VNYXgsXG4gICdzYmItYnJlYWtwb2ludC11bHRyYS1taW4nOiBTYmJCcmVha3BvaW50VWx0cmFNaW4sXG4gICdzYmItYnJlYWtwb2ludC11bHRyYS1tYXgnOiBTYmJCcmVha3BvaW50VWx0cmFNYXgsXG59O1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGFuIGltYWdlLlxuICpcbiAqIEBjc3Nwcm9wIFstLXNiYi1pbWFnZS1hc3BlY3QtcmF0aW89YXV0b10gLSBDYW4gYmUgdXNlZCB0byBvdmVycmlkZSBgYXNwZWN0UmF0aW9gIHByb3BlcnR5LlxuICogVGhpcyB3YXkgd2UgY2FuIGhhdmUsIGZvciBleGFtcGxlLCBhbiBpbWFnZSBjb21wb25lbnQgd2l0aCBhbiBhc3BlY3RcbiAqIHJhdGlvIG9mIDQvMyBpbiBzbWFsbGVyIHZpZXdwb3J0cyBhbmQgMTYvOSBpbiBsYXJnZXIgdmlld3BvcnRzLlxuICogQGNzc3Byb3AgWy0tc2JiLWltYWdlLW9iamVjdC1wb3NpdGlvbl0gLSBDYW4gYmUgdXNlZCB0byBzZXQgdGhlIG9iamVjdC1wb3NpdGlvbiBDU1MgcHJvcGVydHkgb2YgdGhlIGltYWdlIGl0c2VsZiBpZiB0aGUgaW1hZ2UgaXRzZWxmIGlzIGNyb3BwZWQuXG4gKiBAY3NzcHJvcCBbLS1zYmItaW1hZ2Utb2JqZWN0LWZpdD1jb3Zlcl0gLSBDYW4gYmUgdXNlZCB0byBzZXQgdGhlIG9iamVjdC1maXQgQ1NTIHByb3BlcnR5IG9mIHRoZSBpbWFnZSBpdHNlbGYgaWYgdGhlIGltYWdlIGl0c2VsZiBpcyBjcm9wcGVkLlxuICovXG5leHBvcnQgY2xhc3MgU2JiSW1hZ2VFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItaW1hZ2UnO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCB1bnNhZmVDU1Moc3R5bGUpXTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgZXJyb3I6ICdlcnJvcicsXG4gICAgbG9hZDogJ2xvYWQnLFxuICB9IGFzIGNvbnN0O1xuXG4gIHByaXZhdGUgX2NhcHRpb25FbGVtZW50PzogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX2xpbmtzSW5DYXB0aW9uPzogTm9kZUxpc3RPZjxIVE1MTGlua0VsZW1lbnQ+O1xuICBwcml2YXRlIF9jb25maWcgPSB7XG4gICAgbm9uUmV0aW5hUXVhbGl0eTogJzQ1JyxcbiAgICByZXRpbmFRdWFsaXR5OiAnMjAnLFxuICB9O1xuXG4gIC8qKlxuICAgKiBBbiBhbHQgdGV4dCBpcyBub3QgYWx3YXlzIG5lY2Vzc2FyeSAoZS5nLiBpbiB0ZWFzZXIgY2FyZHMgd2hlblxuICAgKiBhZGRpdGlvbmFsIGxpbmsgdGV4dCBpcyBwcm92aWRlZCkuIEluIHRoaXMgY2FzZSB3ZSBjYW4gbGVhdmVcbiAgICogdGhlIHZhbHVlIG9mIHRoZSBhbHQgYXR0cmlidXRlIGJsYW5rLCBidXQgdGhlIGF0dHJpYnV0ZSBpdHNlbGZcbiAgICogc3RpbGwgbmVlZHMgdG8gYmUgcHJlc2VudC4gVGhhdCB3YXkgd2UgY2FuIHNpZ25hbCBhc3Npc3RpdmVcbiAgICogdGVjaG5vbG9neSwgdGhhdCB0aGV5IGNhbiBza2lwIHRoZSBpbWFnZS5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgYWx0OiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogSWYgc2V0IHRvIGZhbHNlLCB3ZSBzaG93IGEgYmx1cnJlZCB2ZXJzaW9uIG9mIHRoZSBpbWFnZSBhc1xuICAgKiBwbGFjZWhvbGRlciBiZWZvcmUgdGhlIGFjdHVhbCBpbWFnZSBzaG93cyB1cC4gVGhpcyB3aWxsIGhlbHBcbiAgICogdG8gaW1wcm92ZSB0aGUgcGVyY2VpdmVkIGxvYWRpbmcgcGVyZm9ybWFuY2UuIFJlYWQgbW9yZSBhYm91dFxuICAgKiB0aGUgaWRlYSBvZiBscWlwIGhlcmU6XG4gICAqIGh0dHBzOi8vbWVkaXVtLmNvbS9AaW1naXgvbHFpcC15b3VyLWltYWdlcy1mb3ItZmFzdC1sb2FkaW5nLTI1MjNkOWVlNGE2MlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3NraXAtbHFpcCcsIHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIGFjY2Vzc29yIHNraXBMcWlwOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNldCB0aGlzIHRvIHRydWUsIGlmIHlvdSB3YW50IHRvIHBhc3MgYSBjdXN0b20gZm9jYWwgcG9pbnRcbiAgICogZm9yIHRoZSBpbWFnZS4gU2VlIGZ1bGwgZG9jdW1lbnRhdGlvbiBoZXJlOlxuICAgKiBodHRwczovL2RvY3MuaW1naXguY29tL2FwaXMvcmVuZGVyaW5nL2ZvY2FscG9pbnQtY3JvcFxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2N1c3RvbS1mb2NhbC1wb2ludCcsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGN1c3RvbUZvY2FsUG9pbnQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSWYgdGhlIGxhenkgcHJvcGVydHkgaXMgc2V0IHRvIHRydWUsIHRoZSBtb2R1bGUgd2lsbCBhdXRvbWF0aWNhbGx5XG4gICAqIGNoYW5nZSB0aGUgZGVjb2RpbmcgdG8gYXN5bmMsIG90aGVyd2lzZSB0aGUgZGVjb2RpbmcgaXMgc2V0IHRvIGF1dG9cbiAgICogd2hpY2ggbGVhdmVzIHRoZSBoYW5kbGluZyB1cCB0byB0aGUgYnJvd3Nlci4gUmVhZCBtb3JlIGFib3V0IHRoZVxuICAgKiBkZWNvZGluZyBhdHRyaWJ1dGUgaGVyZTpcbiAgICogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0hUTUxJbWFnZUVsZW1lbnQvZGVjb2RpbmdcbiAgICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyBhY2Nlc3NvciBkZWNvZGluZzogJ3N5bmMnIHwgJ2FzeW5jJyB8ICdhdXRvJyA9ICdhdXRvJztcblxuICAvKipcbiAgICogU2V0IHRoaXMgdG8gdHJ1ZSwgdG8gcmVjZWl2ZSB2aXN1YWwgZ3VpZGFuY2Ugd2hlcmUgdGhlIGN1c3RvbSBmb2NhbFxuICAgKiBwb2ludCBpcyBjdXJyZW50bHkgc2V0LlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ZvY2FsLXBvaW50LWRlYnVnJywgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3IgZm9jYWxQb2ludERlYnVnOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFBhc3MgaW4gYSBmbG9hdGluZyBudW1iZXIgYmV0d2VlbiAwIChsZWZ0KSBhbmQgMSAocmlnaHQpLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ZvY2FsLXBvaW50LXgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGZvY2FsUG9pbnRYOiBudW1iZXIgPSAxO1xuXG4gIC8qKlxuICAgKiBQYXNzIGluIGEgZmxvYXRpbmcgbnVtYmVyIGJldHdlZW4gMCAodG9wKSBhbmQgMSAoYm90dG9tKS5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdmb2NhbC1wb2ludC15JywgdHlwZTogTnVtYmVyIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBmb2NhbFBvaW50WTogbnVtYmVyID0gMTtcblxuICAvKipcbiAgICogUmlnaHQgbm93IHRoZSBtb2R1bGUgaXMgaGVhdmlseSBjb3VwbGVkIHdpdGggdGhlIGltYWdlIGRlbGl2ZXJ5XG4gICAqIHNlcnZpY2UgaW1naXggYW5kIGRlcGVuZHMgb24gdGhlIG9yaWdpbmFsIGZpbGVzIGJlaW5nIHN0b3JlZFxuICAgKiBpbnNpZGUgQUVNLiBZb3UgY2FuIHBhc3MgaW4gYW55IGh0dHBzOi8vY2RuLmltZy5zYmIuY2ggaW1nXG4gICAqIHNyYyBhZGRyZXNzIHlvdSBmaW5kIG9uIHNiYi5jaCB0byBwbGF5IGFyb3VuZCB3aXRoIGl0LiBKdXN0XG4gICAqIHN0cmlwIHRoZSB1cmwgcGFyYW1ldGVycyBhbmQgcGFzdGUgaW4gdGhlIHBsYWluIGZpbGUgYWRkcmVzcy5cbiAgICogSWYgeW91IHdhbnQgdG8ga25vdyBob3cgdG8gYmVzdCB3b3JrIHdpdGggdGhpcyBtb2R1bGUgd2l0aFxuICAgKiBpbWFnZXMgY29taW5nIGZyb20gYSBkaWZmZXJlbnQgc291cmNlLCBwbGVhc2UgY29udGFjdCB0aGVcbiAgICogTFlORSBDb3JlIFRlYW0uXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnaW1hZ2Utc3JjJyB9KVxuICBwdWJsaWMgYWNjZXNzb3IgaW1hZ2VTcmM6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgaW1wb3J0YW5jZSBhdHRyaWJ1dGUgaXMgZmFpcmx5IG5ldyBhdHRyaWJ1dGUgd2hpY2ggc2hvdWxkXG4gICAqIGhlbHAgdGhlIGJyb3dzZXIgZGVjaWRlIHdoaWNoIHJlc291cmNlcyBpdCBzaG91bGQgcHJpb3JpdGlzZVxuICAgKiBkdXJpbmcgcGFnZSBsb2FkLiBXZSB3aWxsIHNldCB0aGUgYXR0cmlidXRlIHZhbHVlIGJhc2VkIG9uIHRoZVxuICAgKiB2YWx1ZSwgd2UgcmVjZWl2ZSBpbiB0aGUgbG9hZGluZyBhdHRyaWJ1dGUuICdlYWdlcicsIHdoaWNoIHdlIHVzZVxuICAgKiBmb3IgdGhlIGxhcmdlc3QgaW1hZ2Ugd2l0aGluIHRoZSBpbml0aWFsIHZpZXdwb3J0LCB3aWxsIHNldCB0aGVcbiAgICogYXR0cmlidXRlIHZhbHVlIHRvICdoaWdoJy4gJ2xhenknLCB3aGljaCB3ZSB1c2UgZm9yIGltYWdlcyBiZWxvd1xuICAgKiB0aGUgZm9sZCwgd2lsbCBzZXQgdGhlIGF0dHJpYnV0ZSB2YWx1ZSB0byAnbG93Jy5cbiAgICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyBhY2Nlc3NvciBpbXBvcnRhbmNlOiAnYXV0bycgfCAnaGlnaCcgfCAnbG93JyA9ICdoaWdoJztcblxuICAvKipcbiAgICogV2l0aCB0aGUgc3VwcG9ydCBvZiBuYXRpdmUgaW1hZ2UgbGF6eSBsb2FkaW5nLCB3ZSBjYW4gbm93XG4gICAqIGRlY2lkZSB3aGV0aGVyIHdlIHdhbnQgdG8gbG9hZCB0aGUgaW1hZ2UgaW1tZWRpYXRlbHkgb3Igb25seVxuICAgKiBvbmNlIGl0IGlzIGNsb3NlIHRvIHRoZSB2aXNpYmxlIHZpZXdwb3J0LiBUaGUgdmFsdWUgZWFnZXIgaXNcbiAgICogYmVzdCB1c2VkIGZvciBpbWFnZXMgd2l0aGluIHRoZSBpbml0aWFsIHZpZXdwb3J0LiBXZSB3YW50IHRvXG4gICAqIGxvYWQgdGhlc2UgaW1hZ2VzIGFzIGZhc3QgYXMgcG9zc2libGUgdG8gaW1wcm92ZSB0aGUgQ29yZSBXZWJcbiAgICogVml0YWxzIHZhbHVlcy4gbGF6eSBvbiB0aGUgb3RoZXIgaGFuZCB3b3JrcyBiZXN0IGZvciBpbWFnZXNcbiAgICogd2hpY2ggYXJlIGZ1cnRoZXIgZG93biB0aGUgcGFnZSBvciBpbnZpc2libGUgZHVyaW5nIHRoZSBsb2FkaW5nXG4gICAqIG9mIHRoZSBpbml0aWFsIHZpZXdwb3J0LlxuICAgKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIGFjY2Vzc29yIGxvYWRpbmc6ICdlYWdlcicgfCAnbGF6eScgPSAnZWFnZXInO1xuXG4gIC8qKlxuICAgKiBXaXRoIGBwZXJmb3JtYW5jZS5tYXJrYCB5b3UgY2FuIGxvZyBhIHRpbWVzdGFtcCBhc3NvY2lhdGVkIHdpdGhcbiAgICogdGhlIG5hbWUgeW91IGRlZmluZSBpbiBwZXJmb3JtYW5jZU1hcmsgd2hlbiBhIGNlcnRhaW4gZXZlbnQgaXNcbiAgICogaGFwcGVuaW5nLiBJbiBvdXIgY2FzZSB3ZSB3aWxsIGxvZyB0aGUgYHBlcmZvcm1hbmNlLm1hcmtgIGludG9cbiAgICogdGhlIFBlcmZvcm1hbmNlRW50cnkgQVBJIG9uY2UgdGhlIGltYWdlIGlzIGZ1bGx5IGxvYWRlZC5cbiAgICogUGVyZm9ybWFuY2UgbW9uaXRvcmluZyB0b29scyBsaWtlIFNwZWVkQ3VydmUgb3IgTGlnaHRob3VzZSBhcmVcbiAgICogdGhlbiBhYmxlIHRvIGdyYWIgdGhlc2UgZW50cmllcyBmcm9tIHRoZSBQZXJmb3JtYW5jZUVudHJ5IEFQSVxuICAgKiBhbmQgZ2l2ZSB1cyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGFuZCBpbnNpZ2h0cyBhYm91dCBvdXIgcGFnZVxuICAgKiBsb2FkaW5nIGJlaGF2aW9yLiBXZSBhcmUgdGhlbiBhbHNvIGFibGUgdG8gbW9uaXRvciB0aGVzZVxuICAgKiB2YWx1ZXMgb3ZlciBhIGxvbmcgcGVyaW9kIHRvIHNlZSBpZiBvdXIgcGVyZm9ybWFuY2VcbiAgICogaW5jcmVhc2VzIG9yIGRlY3JlYXNlcyBvdmVyIHRpbWUuIEJlc3QgdG8gdXNlIGxvd2VyY2FzZSBzdHJpbmdzXG4gICAqIGhlcmUsIHNlcGFyYXRlIHdvcmRzIHdpdGggdW5kZXJzY29yZXMgb3IgZGFzaGVzLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3BlcmZvcm1hbmNlLW1hcmsnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBwZXJmb3JtYW5jZU1hcms6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBXaXRoIHRoZSBwaWN0dXJlU2l6ZXNDb25maWcgb2JqZWN0LCB5b3UgY2FuIHBhc3MgaW4gaW5mb3JtYXRpb25cbiAgICogaW50byBpbWFnZSBhYm91dCB3aGF0IGtpbmQgb2Ygc291cmNlIGVsZW1lbnRzIHNob3VsZCBnZXRcbiAgICogcmVuZGVyZWQuIG1lZGlhUXVlcmllcyBhY2NlcHRzIG11bHRpcGxlIE1lZGlhIFF1ZXJ5IGVudHJpZXNcbiAgICogd2hpY2ggY2FuIGdldCBjb21iaW5lZCBieSBkZWZpbmluZyBhIGNvbmRpdGlvbk9wZXJhdG9yLlxuICAgKiBUeXBlIGlzOiBzdHJpbmdpZmllZCBJbnRlcmZhY2VJbWFnZUF0dHJpYnV0ZXNTaXplc0NvbmZpZy1PYmplY3RcbiAgICogQW4gZXhhbXBsZSBjb3VsZCBsb29rIGxpa2UgdGhpczpcbiAgICoge1xuICAgKiAgICBcImJyZWFrcG9pbnRzXCI6IFtcbiAgICogICAgICB7XG4gICAqICAgICAgICBcImltYWdlXCI6IHtcbiAgICogICAgICAgICAgXCJoZWlnaHRcIjogXCI2NzVcIixcbiAgICogICAgICAgICAgXCJ3aWR0aFwiOiBcIjEyMDBcIlxuICAgKiAgICAgICAgfSxcbiAgICogICAgICAgIFwibWVkaWFRdWVyaWVzXCI6IFtcbiAgICogICAgICAgICAge1xuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVwiOiBcIm1pbi13aWR0aFwiLFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVZhbHVlXCI6IHtcbiAgICogICAgICAgICAgICAgIFwibHluZURlc2lnblRva2VuXCI6IHRydWUsXG4gICAqICAgICAgICAgICAgICBcInZhbHVlXCI6IFwic2JiLWJyZWFrcG9pbnQtbGFyZ2UtbWluXCJcbiAgICogICAgICAgICAgICB9LFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uT3BlcmF0b3JcIjogZmFsc2VcbiAgICogICAgICAgICAgfVxuICAgKiAgICAgICAgXVxuICAgKiAgICAgIH0sXG4gICAqICAgICAge1xuICAgKiAgICAgICAgXCJpbWFnZVwiOiB7XG4gICAqICAgICAgICAgIFwiaGVpZ2h0XCI6IFwiNTQ5XCIsXG4gICAqICAgICAgICAgIFwid2lkdGhcIjogXCI5NzZcIlxuICAgKiAgICAgICAgfSxcbiAgICogICAgICAgIFwibWVkaWFRdWVyaWVzXCI6IFtcbiAgICogICAgICAgICAge1xuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVwiOiBcIm1pbi13aWR0aFwiLFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVZhbHVlXCI6IHtcbiAgICogICAgICAgICAgICAgIFwibHluZURlc2lnblRva2VuXCI6IHRydWUsXG4gICAqICAgICAgICAgICAgICBcInZhbHVlXCI6IFwic2JiLWJyZWFrcG9pbnQtc21hbGwtbWluXCJcbiAgICogICAgICAgICAgICB9LFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uT3BlcmF0b3JcIjogZmFsc2VcbiAgICogICAgICAgICAgfVxuICAgKiAgICAgICAgXVxuICAgKiAgICAgIH0sXG4gICAqICAgICAge1xuICAgKiAgICAgICAgXCJpbWFnZVwiOiB7XG4gICAqICAgICAgICAgIFwiaGVpZ2h0XCI6IFwiMTgwXCIsXG4gICAqICAgICAgICAgIFwid2lkdGhcIjogXCIzMjBcIlxuICAgKiAgICAgICAgfSxcbiAgICogICAgICAgIFwibWVkaWFRdWVyaWVzXCI6IFtcbiAgICogICAgICAgICAge1xuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVwiOiBcIm1heC13aWR0aFwiLFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVZhbHVlXCI6IHtcbiAgICogICAgICAgICAgICAgIFwibHluZURlc2lnblRva2VuXCI6IHRydWUsXG4gICAqICAgICAgICAgICAgICBcInZhbHVlXCI6IFwic2JiLWJyZWFrcG9pbnQtc21hbGwtbWF4XCJcbiAgICogICAgICAgICAgICB9LFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uT3BlcmF0b3JcIjogXCJhbmRcIlxuICAgKiAgICAgICAgICB9LFxuICAgKiAgICAgICAgICB7XG4gICAqICAgICAgICAgICAgXCJjb25kaXRpb25GZWF0dXJlXCI6IFwib3JpZW50YXRpb25cIixcbiAgICogICAgICAgICAgICBcImNvbmRpdGlvbkZlYXR1cmVWYWx1ZVwiOiB7XG4gICAqICAgICAgICAgICAgICBcImx5bmVEZXNpZ25Ub2tlblwiOiBmYWxzZSxcbiAgICogICAgICAgICAgICAgIFwidmFsdWVcIjogXCJsYW5kc2NhcGVcIlxuICAgKiAgICAgICAgICAgIH0sXG4gICAqICAgICAgICAgICAgXCJjb25kaXRpb25PcGVyYXRvclwiOiBmYWxzZVxuICAgKiAgICAgICAgICB9XG4gICAqICAgICAgICBdXG4gICAqICAgICAgfVxuICAgKiAgICBdXG4gICAqICB9XG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAncGljdHVyZS1zaXplcy1jb25maWcnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBwaWN0dXJlU2l6ZXNDb25maWc6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBpbWFnZSBpcyBmaW5pc2hlZCBsb2FkaW5nIG9yIGZhaWxlZCB0byBsb2FkLiAqL1xuICBwdWJsaWMgZ2V0IGNvbXBsZXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3I/LjxIVE1MSW1hZ2VFbGVtZW50PignLnNiYi1pbWFnZV9faW1nJyk/LmNvbXBsZXRlID8/IGZhbHNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIudXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoIXRoaXMuX2NhcHRpb25FbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fbGlua3NJbkNhcHRpb24gPSB0aGlzLl9jYXB0aW9uRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsPEhUTUxMaW5rRWxlbWVudD4oJ2EnKTtcblxuICAgIGlmICghdGhpcy5fbGlua3NJbkNhcHRpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9hZGRGb2N1c0FiaWxpdHlUb0xpbmtzSW5DYXB0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIF9sb2dQZXJmb3JtYW5jZU1hcmtzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnBlcmZvcm1hbmNlTWFyaykge1xuICAgICAgcGVyZm9ybWFuY2UuY2xlYXJNYXJrcyh0aGlzLnBlcmZvcm1hbmNlTWFyayk7XG4gICAgICBwZXJmb3JtYW5jZS5tYXJrKHRoaXMucGVyZm9ybWFuY2VNYXJrKTtcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBfYWRkRm9jdXNBYmlsaXR5VG9MaW5rc0luQ2FwdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9saW5rc0luQ2FwdGlvbj8uZm9yRWFjaCgobGluaykgPT4ge1xuICAgICAgbGluay5yZW1vdmVBdHRyaWJ1dGUoJ3RhYmluZGV4Jyk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9wcmVwYXJlSW1hZ2VVcmwoYmFzZVVybDogc3RyaW5nIHwgdW5kZWZpbmVkLCBscXVpcCA9IGZhbHNlKTogc3RyaW5nIHtcbiAgICBpZiAoIWJhc2VVcmwgfHwgYmFzZVVybCA9PT0gJycpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICAvLyBDcmVhdGluZyBhIFVSTCB3aXRob3V0IGEgc2NoZW1hIHdpbGwgZmFpbCwgYnV0IGlzIGEgdmFsaWQgaW5wdXQgZm9yIGJhc2VVcmwuXG4gICAgLy8gZS5nLiBpbWFnZS1zcmMgY2FuIGJlIGh0dHBzOi8vZXhhbXBsZS5jb20vbXktaW1hZ2UucG5nIG9yIC9teS1pbWFnZS5wbmdcbiAgICBjb25zdCBpc0Z1bGx5UXVhbGlmaWVkVXJsID0gISFiYXNlVXJsLm1hdGNoKC9eXFx3KzpcXC9cXC8vKTtcbiAgICBjb25zdCBpbWFnZVVybE9iaiA9IGlzRnVsbHlRdWFsaWZpZWRVcmwgPyBuZXcgVVJMKGJhc2VVcmwpIDogbmV3IFVSTChgaHR0cDovL25vb3AvJHtiYXNlVXJsfWApO1xuXG4gICAgaWYgKGxxdWlwKSB7XG4gICAgICAvLyBibHVyIGFuZCBzaXplOiA/Ymx1cj0xMDAmdz0xMDAmaD01NlxuICAgICAgaW1hZ2VVcmxPYmouc2VhcmNoUGFyYW1zLmFwcGVuZCgnYmx1cicsICcxMDAnKTtcbiAgICAgIGltYWdlVXJsT2JqLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ3cnLCAnMTAwJyk7XG4gICAgICBpbWFnZVVybE9iai5zZWFyY2hQYXJhbXMuYXBwZW5kKCdoJywgJzU2Jyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIENETiBJbmZvcm1hdGlvbjogaHR0cHM6Ly9kb2NzLmltZ2l4LmNvbS9hcGlzL3JlbmRlcmluZ1xuICAgICAgLy8gcGFyYW0uYXV0bzogP2F1dG89Zm9ybWF0LGNvbXByZXNzLGNzPXRpbnlzcmdiXG4gICAgICBpbWFnZVVybE9iai5zZWFyY2hQYXJhbXMuYXBwZW5kKCdhdXRvJywgJ2Zvcm1hdCxjb21wcmVzcyxjcz10aW55c3JnYicpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmN1c3RvbUZvY2FsUG9pbnQpIHtcbiAgICAgIC8vIGNyb3A6IGAmZml0PWNyb3AmY3JvcD1mb2NhbHBvaW50JmZwLXg9JHt0aGlzLmZvY2FsUG9pbnRYfSZmcC15PSR7dGhpcy5mb2NhbFBvaW50WX0mZnAtej0xYCxcbiAgICAgIGltYWdlVXJsT2JqLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2ZpdCcsICdjcm9wJyk7XG4gICAgICBpbWFnZVVybE9iai5zZWFyY2hQYXJhbXMuYXBwZW5kKCdjcm9wJywgJ2ZvY2FscG9pbnQnKTtcbiAgICAgIGltYWdlVXJsT2JqLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2ZwLXgnLCB0aGlzLmZvY2FsUG9pbnRYLnRvU3RyaW5nKDEwKSk7XG4gICAgICBpbWFnZVVybE9iai5zZWFyY2hQYXJhbXMuYXBwZW5kKCdmcC15JywgdGhpcy5mb2NhbFBvaW50WS50b1N0cmluZygxMCkpO1xuICAgICAgaW1hZ2VVcmxPYmouc2VhcmNoUGFyYW1zLmFwcGVuZCgnZnAteicsICcxJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZm9jYWxQb2ludERlYnVnKSB7XG4gICAgICAvLyBmb2NhbFBvaW50RGVidWc6ICcmZnAtZGVidWc9dHJ1ZSdcbiAgICAgIGltYWdlVXJsT2JqLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2ZwLWRlYnVnJywgJ3RydWUnKTtcbiAgICB9XG5cbiAgICAvLyBJbiBjYXNlIG9mIFwibm9vcFwiIGhvc3QsIHdlIGRvbid0IHJldHVybiB0aGUgaG9zdCBhbmQgbXVzdCByZW1vdmUgdGhlXG4gICAgLy8gc3RhcnRpbmcgYC9gIG9mIHRoZSBwYXRobmFtZS5cbiAgICByZXR1cm4gaXNGdWxseVF1YWxpZmllZFVybFxuICAgICAgPyBpbWFnZVVybE9iai5ocmVmXG4gICAgICA6IGltYWdlVXJsT2JqLnBhdGhuYW1lLnN1YnN0cmluZygxKSArIGltYWdlVXJsT2JqLnNlYXJjaDtcbiAgfVxuXG4gIHByaXZhdGUgX3ByZXBhcmVQaWN0dXJlU2l6ZUNvbmZpZ3MoKTogSW50ZXJmYWNlSW1hZ2VBdHRyaWJ1dGVzU2l6ZXNDb25maWdCcmVha3BvaW50W10ge1xuICAgIGxldCBwaWN0dXJlU2l6ZXNDb25maWc7XG5cbiAgICBpZiAodGhpcy5waWN0dXJlU2l6ZXNDb25maWcpIHtcbiAgICAgIHBpY3R1cmVTaXplc0NvbmZpZyA9IHRoaXMucGljdHVyZVNpemVzQ29uZmlnO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBkZWZhdWx0IGNvbmZpZ1xuICAgICAgcGljdHVyZVNpemVzQ29uZmlnID0gYHtcbiAgICAgICAgXCJicmVha3BvaW50c1wiOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgXCJpbWFnZVwiOiB7XG4gICAgICAgICAgICAgIFwiaGVpZ2h0XCI6IDY3NSxcbiAgICAgICAgICAgICAgXCJ3aWR0aFwiOiAxMjAwXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgXCJtZWRpYVF1ZXJpZXNcIjogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgXCJjb25kaXRpb25GZWF0dXJlXCI6IFwibWluLXdpZHRoXCIsXG4gICAgICAgICAgICAgICAgXCJjb25kaXRpb25GZWF0dXJlVmFsdWVcIjoge1xuICAgICAgICAgICAgICAgICAgXCJseW5lRGVzaWduVG9rZW5cIjogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIFwidmFsdWVcIjogXCJzYmItYnJlYWtwb2ludC1sYXJnZS1taW5cIlxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXCJjb25kaXRpb25PcGVyYXRvclwiOiBmYWxzZVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBcImltYWdlXCI6IHtcbiAgICAgICAgICAgICAgXCJoZWlnaHRcIjogNTQ5LFxuICAgICAgICAgICAgICBcIndpZHRoXCI6IDk3NlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFwibWVkaWFRdWVyaWVzXCI6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVwiOiBcIm1pbi13aWR0aFwiLFxuICAgICAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVZhbHVlXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwibHluZURlc2lnblRva2VuXCI6IHRydWUsXG4gICAgICAgICAgICAgICAgICBcInZhbHVlXCI6IFwic2JiLWJyZWFrcG9pbnQtc21hbGwtbWluXCJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFwiY29uZGl0aW9uT3BlcmF0b3JcIjogZmFsc2VcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgXCJpbWFnZVwiOiB7XG4gICAgICAgICAgICAgIFwiaGVpZ2h0XCI6IDE4MCxcbiAgICAgICAgICAgICAgXCJ3aWR0aFwiOiAzMjBcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBcIm1lZGlhUXVlcmllc1wiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcImNvbmRpdGlvbkZlYXR1cmVcIjogXCJtYXgtd2lkdGhcIixcbiAgICAgICAgICAgICAgICBcImNvbmRpdGlvbkZlYXR1cmVWYWx1ZVwiOiB7XG4gICAgICAgICAgICAgICAgICBcImx5bmVEZXNpZ25Ub2tlblwiOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgXCJ2YWx1ZVwiOiBcInNiYi1icmVha3BvaW50LXplcm8tbWF4XCJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFwiY29uZGl0aW9uT3BlcmF0b3JcIjogZmFsc2VcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgICAgfWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGltYWdlSGVscGVyR2V0QnJlYWtwb2ludHMocGljdHVyZVNpemVzQ29uZmlnKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZU1lZGlhUXVlcnlTdHJpbmcoXG4gICAgbWVkaWFRdWVyaWVzOiBJbnRlcmZhY2VJbWFnZUF0dHJpYnV0ZXNTaXplc0NvbmZpZ01lZGlhUXVlcnlbXSxcbiAgKTogc3RyaW5nIHtcbiAgICBsZXQgbWVkaWFRdWVyeSA9ICcnO1xuXG4gICAgbWVkaWFRdWVyaWVzLmZvckVhY2goKG1xKSA9PiB7XG4gICAgICBjb25zdCBtcUNvbmRpdGlvbiA9IG1xLmNvbmRpdGlvbkZlYXR1cmU7XG4gICAgICBsZXQgbXFWYWx1ZTtcblxuICAgICAgaWYgKG1xLmNvbmRpdGlvbkZlYXR1cmVWYWx1ZS5seW5lRGVzaWduVG9rZW4pIHtcbiAgICAgICAgbXFWYWx1ZSA9IGJyZWFrcG9pbnRNYXBbbXEuY29uZGl0aW9uRmVhdHVyZVZhbHVlLnZhbHVlXSA/PyAnJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG1xVmFsdWUgPSBtcS5jb25kaXRpb25GZWF0dXJlVmFsdWUudmFsdWU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1xQ29tYmluZXIgPSBtcS5jb25kaXRpb25PcGVyYXRvciA/IGAgJHttcS5jb25kaXRpb25PcGVyYXRvcn0gYCA6ICcnO1xuXG4gICAgICBtZWRpYVF1ZXJ5ICs9IGAoJHttcUNvbmRpdGlvbn06ICR7bXFWYWx1ZX0pJHttcUNvbWJpbmVyfWA7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbWVkaWFRdWVyeTtcbiAgfVxuXG4gIEBldmVudE9wdGlvbnMoZXZlbnRMaXN0ZW5lck9wdGlvbnMpXG4gIHByaXZhdGUgX2ltYWdlTG9hZGVkKCk6IHZvaWQge1xuICAgIHRoaXMuX2xvZ1BlcmZvcm1hbmNlTWFya3MoKTtcbiAgICB0aGlzLmludGVybmFscy5zdGF0ZXMuYWRkKCdsb2FkZWQnKTtcblxuICAgIC8qKiBFbWl0cyBlYWNoIHRpbWUgYW4gaW1hZ2UgbG9hZHMuIEUuZy4gbG9hZGluZyBpbWFnZSBmb3IgYSBkaWZmZXJlbnQgdmlld3BvcnQsIHRyaWdnZXJzIHRoZSBsb2FkIGV2ZW50IGFnYWluLiAqL1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2xvYWQnKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBjb25zdCBpbWFnZVVybExRSVAgPSB0aGlzLl9wcmVwYXJlSW1hZ2VVcmwodGhpcy5pbWFnZVNyYywgdHJ1ZSk7XG4gICAgY29uc3QgaW1hZ2VVcmxXaXRoUGFyYW1zID0gdGhpcy5fcHJlcGFyZUltYWdlVXJsKHRoaXMuaW1hZ2VTcmMsIGZhbHNlKTtcblxuICAgIGlmICh0aGlzLmxvYWRpbmcgPT09ICdsYXp5Jykge1xuICAgICAgdGhpcy5kZWNvZGluZyA9ICdhc3luYyc7XG4gICAgICB0aGlzLmltcG9ydGFuY2UgPSAnbG93JztcbiAgICB9XG5cbiAgICBjb25zdCBwaWN0dXJlU2l6ZUNvbmZpZ3MgPSB0aGlzLl9wcmVwYXJlUGljdHVyZVNpemVDb25maWdzKCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgYWx0IGF0dHJpYnV0ZSBzaG91bGQgYWx3YXlzIGJlIHByZXNlbnQgZm9yIHRoZSBpbWcgZWxlbWVudC5cbiAgICAgKiBJZiBpdCBoYXMgYW4gZW1wdHkgc3RyaW5nIGFzIGl0cyB2YWx1ZSwgaXQgaXMgc2ltcGx5IGlnbm9yZWRcbiAgICAgKiBieSBhc3Npc3RpdmUgdGVjaG5vbG9naWVzLiBJZiB3ZSBsZWF2ZSBpdCBvdXQgY29tcGxldGVseSxcbiAgICAgKiB0aGV5IG1pZ2h0IHRyeSB0byBpbnRlcnByZXQgdGhlIGltZyBlbGVtZW50LlxuICAgICAqL1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1pbWFnZV9fd3JhcHBlclwiPlxuICAgICAgICAkeyF0aGlzLnNraXBMcWlwXG4gICAgICAgICAgPyBodG1sYDxpbWdcbiAgICAgICAgICAgICAgYWx0PVwiXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItaW1hZ2VfX2JsdXJyZWRcIlxuICAgICAgICAgICAgICBzcmM9JHtpbWFnZVVybExRSVB9XG4gICAgICAgICAgICAgIHdpZHRoPVwiMTAwMFwiXG4gICAgICAgICAgICAgIGhlaWdodD1cIjU2MlwiXG4gICAgICAgICAgICAgIGxvYWRpbmc9JHt0aGlzLmxvYWRpbmcgPz8gbm90aGluZ31cbiAgICAgICAgICAgICAgZGVjb2Rpbmc9JHt0aGlzLmRlY29kaW5nID8/IG5vdGhpbmd9XG4gICAgICAgICAgICAvPmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG5cbiAgICAgICAgPHBpY3R1cmU+XG4gICAgICAgICAgPCEtLSByZW5kZXIgcGljdHVyZSBlbGVtZW50IHNvdXJjZXMgLS0+XG4gICAgICAgICAgJHtwaWN0dXJlU2l6ZUNvbmZpZ3MubWFwKChjb25maWcpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGltYWdlSGVpZ2h0ID0gY29uZmlnLmltYWdlLmhlaWdodDtcbiAgICAgICAgICAgIGNvbnN0IGltYWdlV2lkdGggPSBjb25maWcuaW1hZ2Uud2lkdGg7XG4gICAgICAgICAgICBjb25zdCBtZWRpYVF1ZXJ5ID0gdGhpcy5fY3JlYXRlTWVkaWFRdWVyeVN0cmluZyhjb25maWcubWVkaWFRdWVyaWVzKTtcbiAgICAgICAgICAgIHJldHVybiBodG1sYFxuICAgICAgICAgICAgICA8c291cmNlXG4gICAgICAgICAgICAgICAgbWVkaWE9JHtgJHttZWRpYVF1ZXJ5fWB9XG4gICAgICAgICAgICAgICAgc2l6ZXM9JHtgJHtpbWFnZVdpZHRofXB4YH1cbiAgICAgICAgICAgICAgICBzcmNzZXQ9JHtcbiAgICAgICAgICAgICAgICAgIGAke2ltYWdlVXJsV2l0aFBhcmFtc30mdz0ke2ltYWdlV2lkdGh9Jmg9JHtpbWFnZUhlaWdodH0mcT0ke3RoaXMuX2NvbmZpZy5ub25SZXRpbmFRdWFsaXR5fSAke2ltYWdlV2lkdGh9dywgYCArXG4gICAgICAgICAgICAgICAgICBgJHtpbWFnZVVybFdpdGhQYXJhbXN9Jnc9JHtpbWFnZVdpZHRoICogMn0maD0ke2ltYWdlSGVpZ2h0ICogMn0mcT0ke1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb25maWcucmV0aW5hUXVhbGl0eVxuICAgICAgICAgICAgICAgICAgfSAke2ltYWdlV2lkdGggKiAyfXdgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA+PC9zb3VyY2U+YDtcbiAgICAgICAgICB9KX1cbiAgICAgICAgICA8aW1nXG4gICAgICAgICAgICBhbHQ9JHt0aGlzLmFsdCB8fCAnJ31cbiAgICAgICAgICAgIEBsb2FkPSR7dGhpcy5faW1hZ2VMb2FkZWR9XG4gICAgICAgICAgICBAZXJyb3I9JHsoKSA9PiB7XG4gICAgICAgICAgICAgIC8qKiBFbWl0cyB3aGVuIHRoZSBpbWFnZSBsb2FkaW5nIGVuZGVkIGluIGFuIGVycm9yLiAqL1xuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnZXJyb3InKSk7XG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgY2xhc3M9XCJzYmItaW1hZ2VfX2ltZ1wiXG4gICAgICAgICAgICBzcmM9JHt0aGlzLmltYWdlU3JjIX1cbiAgICAgICAgICAgIHdpZHRoPVwiMTAwMFwiXG4gICAgICAgICAgICBoZWlnaHQ9XCI1NjJcIlxuICAgICAgICAgICAgbG9hZGluZz0ke3RoaXMubG9hZGluZyA/PyBub3RoaW5nfVxuICAgICAgICAgICAgZGVjb2Rpbmc9JHt0aGlzLmRlY29kaW5nID8/IG5vdGhpbmd9XG4gICAgICAgICAgICAuZmV0Y2hQcmlvcml0eT0ke3RoaXMuaW1wb3J0YW5jZSA/PyBub3RoaW5nfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvcGljdHVyZT5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1pbWFnZSc6IFNiYkltYWdlRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQ2tEQSxJQUFNLDZCQUNKLGVBQ21EO0FBQ25ELEtBQUksQ0FBQyxjQUFjLFdBQVcsV0FBVyxFQUN2QyxRQUFPLEVBQUU7Q0FJWCxNQUFNLGFBS0Y7Q0FDSixJQUFJO0FBRUosS0FBSTtBQUNGLGVBQWEsS0FBSyxNQUFNLFdBQVc7U0FDN0I7QUFDTixnQkFBYztBQUNkLFNBQU8sRUFBRTs7QUFHWCxLQUFJLENBQUMsV0FBVyxlQUFlLFdBQVcsWUFBWSxXQUFXLEdBQUc7QUFDbEUsZ0JBQWM7QUFDZCxTQUFPLEVBQUU7O0FBSVgsS0FBSSxDQUFDLE1BQU0sUUFBUSxXQUFXLFlBQVksRUFBRTtBQUMxQyxnQkFBYztBQUNkLFNBQU8sRUFBRTs7Ozs7O0NBT1gsSUFBSSxtQkFBbUI7Q0FDdkIsSUFBSSxxQkFBcUI7Q0FFekIsTUFBTSxjQUFjLENBQUMsU0FBUyxlQUFlO0FBRTdDLFlBQVcsWUFBWSxTQUFTLGVBQWM7RUFDNUMsTUFBTSxpQkFBaUIsT0FBTyxLQUFLLFdBQVc7QUFFOUMsaUJBQWUsU0FBUyxrQkFBaUI7QUFDdkMsT0FBSSxDQUFDLFlBQVksU0FBUyxjQUFjLENBQ3RDLG9CQUFtQjtJQUVyQjtBQUVGLGNBQVksU0FBUyxlQUFjO0FBQ2pDLE9BQUksQ0FBQyxlQUFlLFNBQVMsV0FBVyxDQUN0QyxzQkFBcUI7SUFFdkI7R0FDRjtBQUVGLEtBQUksb0JBQW9CLG9CQUFvQjtBQUMxQyxnQkFBYztBQUNkLFNBQU8sRUFBRTs7QUFHWCxRQUFPLFdBQVc7O0FBR3BCLElBQU0sdUJBQXVCLEVBQzNCLFNBQVMsTUFDVjtBQUVELElBQU0sZ0JBQXdDO0NBQzVDLDJCQUEyQjtDQUMzQiwyQkFBMkI7Q0FDM0IsNEJBQTRCO0NBQzVCLDRC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
|