@norwegian/core-components 6.60.0 → 7.0.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/assets/fonts/NorwegianDisplay-Bold.ttf +0 -0
- package/assets/fonts/NorwegianDisplay-Regular.ttf +0 -0
- package/assets/fonts/NorwegianDisplayPro-Bold.otf +0 -0
- package/assets/fonts/NorwegianDisplayPro-Bold.woff +0 -0
- package/assets/fonts/NorwegianDisplayPro-Bold.woff2 +0 -0
- package/assets/fonts/NorwegianDisplayPro-Regular.otf +0 -0
- package/assets/fonts/NorwegianDisplayPro-Regular.woff +0 -0
- package/assets/fonts/NorwegianDisplayPro-Regular.woff2 +0 -0
- package/assets/fonts/NorwegianText-Bold.ttf +0 -0
- package/assets/fonts/NorwegianText-BoldItalic.ttf +0 -0
- package/assets/fonts/NorwegianText-Regular.ttf +0 -0
- package/assets/fonts/NorwegianText-RegularItalic.ttf +0 -0
- package/assets/fonts/NorwegianTextPro-Bold.otf +0 -0
- package/assets/fonts/NorwegianTextPro-Bold.woff +0 -0
- package/assets/fonts/NorwegianTextPro-Bold.woff2 +0 -0
- package/assets/fonts/NorwegianTextPro-BoldItalic.otf +0 -0
- package/assets/fonts/NorwegianTextPro-BoldItalic.woff +0 -0
- package/assets/fonts/NorwegianTextPro-BoldItalic.woff2 +0 -0
- package/assets/fonts/NorwegianTextPro-Regular.otf +0 -0
- package/assets/fonts/NorwegianTextPro-Regular.woff +0 -0
- package/assets/fonts/NorwegianTextPro-Regular.woff2 +0 -0
- package/assets/fonts/NorwegianTextPro-RegularItalic.otf +0 -0
- package/assets/fonts/NorwegianTextPro-RegularItalic.woff +0 -0
- package/assets/fonts/NorwegianTextPro-RegularItalic.woff2 +0 -0
- package/esm2022/lib/components/accordion/accordion.component.mjs +3 -3
- package/esm2022/lib/components/airport-select/airport-select-dropdown/airport-select-dropdown.component.mjs +10 -7
- package/esm2022/lib/components/airport-select/airport-select.component.mjs +43 -12
- package/esm2022/lib/components/airport-select/airport-select.module.mjs +4 -4
- package/esm2022/lib/components/airport-select/index.mjs +1 -2
- package/esm2022/lib/components/airport-select/models/results-labels.model.mjs +1 -1
- package/esm2022/lib/components/airport-select/services/airport-select-dropdown.service.mjs +2 -2
- package/esm2022/lib/components/airport-select/services/airport-select.service.mjs +3 -3
- package/esm2022/lib/components/alert/alert.component.mjs +5 -5
- package/esm2022/lib/components/alert/alert.module.mjs +4 -4
- package/esm2022/lib/components/autocomplete/autocomplete.component.mjs +25 -5
- package/esm2022/lib/components/autocomplete/autocomplete.module.mjs +4 -4
- package/esm2022/lib/components/autocomplete/index.mjs +1 -2
- package/esm2022/lib/components/box/box.component.mjs +2 -2
- package/esm2022/lib/components/button/button.component.mjs +16 -11
- package/esm2022/lib/components/button/button.module.mjs +1 -1
- package/esm2022/lib/components/campaign-header/campaign-header.component.mjs +2 -2
- package/esm2022/lib/components/checkbox/checkbox.component.mjs +4 -4
- package/esm2022/lib/components/checkbox/checkbox.module.mjs +1 -1
- package/esm2022/lib/components/continue/continue.component.mjs +2 -2
- package/esm2022/lib/components/continue/continue.module.mjs +1 -1
- package/esm2022/lib/components/cover/cover.component.mjs +2 -2
- package/esm2022/lib/components/cover/cover.module.mjs +1 -1
- package/esm2022/lib/components/datepicker/calendar/calendar.component.mjs +29 -5
- package/esm2022/lib/components/datepicker/calendar/models/day.model.mjs +1 -1
- package/esm2022/lib/components/datepicker/calendar/models/select-option.model.mjs +1 -1
- package/esm2022/lib/components/datepicker/calendar/models/week.model.mjs +1 -1
- package/esm2022/lib/components/datepicker/datepicker.component.mjs +25 -11
- package/esm2022/lib/components/datepicker/datepicker.module.mjs +4 -4
- package/esm2022/lib/components/datepicker/index.mjs +2 -1
- package/esm2022/lib/components/datepicker/services/calendar.service.mjs +7 -5
- package/esm2022/lib/components/datepicker-combo/datepicker-combo.component.mjs +38 -11
- package/esm2022/lib/components/datepicker-combo/datepicker-combo.module.mjs +14 -6
- package/esm2022/lib/components/divider/divider.component.mjs +4 -4
- package/esm2022/lib/components/divider/divider.module.mjs +6 -6
- package/esm2022/lib/components/dropdown/dropdown.component.mjs +2 -2
- package/esm2022/lib/components/filter/filter.component.mjs +139 -72
- package/esm2022/lib/components/filter/filter.module.mjs +23 -11
- package/esm2022/lib/components/filter/index.mjs +2 -1
- package/esm2022/lib/components/icon-list/icon-list.component.mjs +2 -2
- package/esm2022/lib/components/index.mjs +13 -15
- package/esm2022/lib/components/info/info.component.mjs +2 -2
- package/esm2022/lib/components/input/input.component.mjs +61 -14
- package/esm2022/lib/components/input/input.module.mjs +2 -2
- package/esm2022/lib/components/journey/journey.component.mjs +2 -2
- package/esm2022/lib/components/journey-availability/journey-availability.component.mjs +2 -2
- package/esm2022/lib/components/journey-availability-list/journey-availability-list.component.mjs +2 -2
- package/esm2022/lib/components/journey-selection/journey-selection.component.mjs +2 -2
- package/esm2022/lib/components/journey-stopover/journey-stopover.component.mjs +2 -2
- package/esm2022/lib/components/list/list.component.mjs +3 -3
- package/esm2022/lib/components/micro-button/micro-button.component.mjs +2 -2
- package/esm2022/lib/components/modal/modal.component.mjs +2 -2
- package/esm2022/lib/components/number-field/number-field.component.mjs +11 -4
- package/esm2022/lib/components/number-field/number-field.module.mjs +1 -1
- package/esm2022/lib/components/page-footer/page-footer.component.mjs +2 -2
- package/esm2022/lib/components/page-header/page-header.component.mjs +2 -2
- package/esm2022/lib/components/page-header/page-header.module.mjs +2 -6
- package/esm2022/lib/components/page-header/search/search.component.mjs +2 -2
- package/esm2022/lib/components/page-header/wallet/wallet.component.mjs +9 -6
- package/esm2022/lib/components/passenger-select/index.mjs +3 -1
- package/esm2022/lib/components/passenger-select/models/passengers.model.mjs +1 -1
- package/esm2022/lib/components/passenger-select/passenger-select.component.mjs +5 -5
- package/esm2022/lib/components/passenger-select/passenger-select.module.mjs +14 -6
- package/esm2022/lib/components/phone-number/phone-number.component.mjs +2 -2
- package/esm2022/lib/components/radio/radio.component.mjs +4 -4
- package/esm2022/lib/components/ribbon-banner/ribbon-banner.component.mjs +2 -2
- package/esm2022/lib/components/select/select.component.mjs +2 -2
- package/esm2022/lib/components/simple-list/simple-list.component.mjs +2 -2
- package/esm2022/lib/components/slide-toggle/slide-toggle.component.mjs +14 -14
- package/esm2022/lib/components/slide-toggle/slide-toggle.module.mjs +1 -1
- package/esm2022/lib/components/slider/slider.component.mjs +4 -4
- package/esm2022/lib/components/sort/sort.component.mjs +2 -2
- package/esm2022/lib/components/sort/sort.module.mjs +1 -1
- package/esm2022/lib/components/spinner/spinner.component.mjs +2 -2
- package/esm2022/lib/components/status-box/status-box.component.mjs +5 -6
- package/esm2022/lib/components/status-box/status-box.module.mjs +5 -5
- package/esm2022/lib/components/subsidy-discount/subsidy-discount.component.mjs +2 -2
- package/esm2022/lib/components/suggestions/suggestions.component.mjs +3 -3
- package/esm2022/lib/components/tab-group/tab/tab.component.mjs +2 -2
- package/esm2022/lib/components/table/table.component.mjs +2 -2
- package/esm2022/lib/components/tag/tag.component.mjs +2 -2
- package/esm2022/lib/components/textarea/textarea.component.mjs +2 -2
- package/esm2022/lib/components/toggle/toggle.component.mjs +2 -2
- package/esm2022/lib/components/trip-summary/trip-summary.component.mjs +2 -2
- package/esm2022/lib/core/directives/nas-class/nas-class.module.mjs +1 -1
- package/fesm2022/norwegian-core-components.mjs +4603 -10823
- package/fesm2022/norwegian-core-components.mjs.map +1 -1
- package/lib/components/airport-select/airport-select-dropdown/airport-select-dropdown.component.d.ts +3 -2
- package/lib/components/airport-select/airport-select.component.d.ts +21 -6
- package/lib/components/airport-select/index.d.ts +0 -1
- package/lib/components/alert/alert.module.d.ts +4 -4
- package/lib/components/autocomplete/autocomplete.component.d.ts +8 -4
- package/lib/components/autocomplete/index.d.ts +0 -1
- package/lib/components/button/button.component.d.ts +35 -26
- package/lib/components/checkbox/checkbox.component.d.ts +1 -1
- package/lib/components/datepicker/calendar/calendar.component.d.ts +11 -1
- package/lib/components/datepicker/calendar/models/day.model.d.ts +1 -0
- package/lib/components/datepicker/datepicker.component.d.ts +20 -2
- package/lib/components/datepicker/index.d.ts +1 -0
- package/lib/components/datepicker-combo/datepicker-combo.component.d.ts +26 -3
- package/lib/components/divider/divider.module.d.ts +3 -3
- package/lib/components/filter/filter.component.d.ts +80 -24
- package/lib/components/filter/filter.module.d.ts +10 -7
- package/lib/components/filter/index.d.ts +1 -0
- package/lib/components/index.d.ts +12 -14
- package/lib/components/input/input.component.d.ts +21 -17
- package/lib/components/list/list.component.d.ts +1 -1
- package/lib/components/number-field/number-field.component.d.ts +10 -2
- package/lib/components/page-header/page-header.module.d.ts +2 -3
- package/lib/components/page-header/wallet/wallet.component.d.ts +1 -0
- package/lib/components/passenger-select/index.d.ts +2 -0
- package/lib/components/passenger-select/models/passengers.model.d.ts +1 -0
- package/lib/components/passenger-select/passenger-select.component.d.ts +2 -2
- package/lib/components/radio/radio.component.d.ts +1 -1
- package/lib/components/slide-toggle/slide-toggle.component.d.ts +9 -9
- package/lib/components/slider/slider.component.d.ts +3 -3
- package/lib/components/status-box/status-box.component.d.ts +3 -3
- package/lib/components/status-box/status-box.module.d.ts +2 -2
- package/package.json +1 -1
- package/styles/1__settings/_colors.scss +107 -53
- package/styles/1__settings/_mixins.scss +78 -30
- package/styles/1__settings/_type.scss +17 -43
- package/styles/2__generic/_fonts.scss +16 -28
- package/styles/3__base/_body.scss +3 -3
- package/styles/3__base/_heading.scss +28 -20
- package/styles/3__base/_hr.scss +4 -4
- package/styles/3__base/_input.scss +3 -3
- package/styles/3__base/_link.scss +17 -17
- package/styles/3__base/_table.scss +9 -5
- package/styles/3__base/_type.scss +4 -4
- package/assets/documentation/autocomplete-new/autocomplete-new.md +0 -1
- package/assets/documentation/datepicker/calendar/calendar.md +0 -3
- package/assets/documentation/filter-new/filter-new.md +0 -0
- package/assets/documentation/number-field-new/number-field-new.md +0 -1
- package/assets/documentation/page-header-old/page-header-old.md +0 -1
- package/assets/documentation/weather-icon/weather-icon.md +0 -1
- package/assets/fonts/apercu_bold_italic_pro-web.eot +0 -0
- package/assets/fonts/apercu_bold_italic_pro-web.svg +0 -12420
- package/assets/fonts/apercu_bold_italic_pro-web.ttf +0 -0
- package/assets/fonts/apercu_bold_italic_pro-web.woff +0 -0
- package/assets/fonts/apercu_bold_italic_pro-web.woff2 +0 -0
- package/assets/fonts/apercu_bold_italic_pro.otf +0 -0
- package/assets/fonts/apercu_bold_pro-web.eot +0 -0
- package/assets/fonts/apercu_bold_pro-web.svg +0 -10193
- package/assets/fonts/apercu_bold_pro-web.ttf +0 -0
- package/assets/fonts/apercu_bold_pro-web.woff +0 -0
- package/assets/fonts/apercu_bold_pro-web.woff2 +0 -0
- package/assets/fonts/apercu_bold_pro.otf +0 -0
- package/assets/fonts/apercu_light_italic_pro-web.eot +0 -0
- package/assets/fonts/apercu_light_italic_pro-web.svg +0 -12831
- package/assets/fonts/apercu_light_italic_pro-web.ttf +0 -0
- package/assets/fonts/apercu_light_italic_pro-web.woff +0 -0
- package/assets/fonts/apercu_light_italic_pro-web.woff2 +0 -0
- package/assets/fonts/apercu_light_pro-web.eot +0 -0
- package/assets/fonts/apercu_light_pro-web.svg +0 -9704
- package/assets/fonts/apercu_light_pro-web.ttf +0 -0
- package/assets/fonts/apercu_light_pro-web.woff +0 -0
- package/assets/fonts/apercu_light_pro-web.woff2 +0 -0
- package/assets/fonts/apercu_medium_italic_pro-web.eot +0 -0
- package/assets/fonts/apercu_medium_italic_pro-web.svg +0 -12354
- package/assets/fonts/apercu_medium_italic_pro-web.ttf +0 -0
- package/assets/fonts/apercu_medium_italic_pro-web.woff +0 -0
- package/assets/fonts/apercu_medium_italic_pro-web.woff2 +0 -0
- package/assets/fonts/apercu_medium_italic_pro.otf +0 -0
- package/assets/fonts/apercu_medium_pro-web.eot +0 -0
- package/assets/fonts/apercu_medium_pro-web.svg +0 -12254
- package/assets/fonts/apercu_medium_pro-web.ttf +0 -0
- package/assets/fonts/apercu_medium_pro-web.woff +0 -0
- package/assets/fonts/apercu_medium_pro-web.woff2 +0 -0
- package/assets/fonts/apercu_medium_pro.otf +0 -0
- package/assets/fonts/apercu_mono_pro-web.eot +0 -0
- package/assets/fonts/apercu_mono_pro-web.svg +0 -538
- package/assets/fonts/apercu_mono_pro-web.ttf +0 -0
- package/assets/fonts/apercu_mono_pro-web.woff +0 -0
- package/assets/fonts/apercu_mono_pro-web.woff2 +0 -0
- package/assets/fonts/apercu_regular_italic_pro-web.eot +0 -0
- package/assets/fonts/apercu_regular_italic_pro-web.svg +0 -13059
- package/assets/fonts/apercu_regular_italic_pro-web.ttf +0 -0
- package/assets/fonts/apercu_regular_italic_pro-web.woff +0 -0
- package/assets/fonts/apercu_regular_italic_pro-web.woff2 +0 -0
- package/assets/fonts/apercu_regular_italic_pro.otf +0 -0
- package/assets/fonts/apercu_regular_pro-web.eot +0 -0
- package/assets/fonts/apercu_regular_pro-web.svg +0 -11356
- package/assets/fonts/apercu_regular_pro-web.ttf +0 -0
- package/assets/fonts/apercu_regular_pro-web.woff +0 -0
- package/assets/fonts/apercu_regular_pro-web.woff2 +0 -0
- package/assets/fonts/apercu_regular_pro.otf +0 -0
- package/esm2022/lib/components/airport-select-new/airport-select-dropdown/airport-select-dropdown.component.mjs +0 -611
- package/esm2022/lib/components/airport-select-new/airport-select-new.component.mjs +0 -477
- package/esm2022/lib/components/airport-select-new/airport-select-new.module.mjs +0 -42
- package/esm2022/lib/components/airport-select-new/index.mjs +0 -4
- package/esm2022/lib/components/airport-select-new/models/airport.model.mjs +0 -2
- package/esm2022/lib/components/airport-select-new/models/results-labels.model.mjs +0 -3
- package/esm2022/lib/components/airport-select-new/services/airport-select-dropdown.service.mjs +0 -35
- package/esm2022/lib/components/airport-select-new/services/airport-select.service.mjs +0 -38
- package/esm2022/lib/components/autocomplete-new/autocomplete-new.component.mjs +0 -309
- package/esm2022/lib/components/autocomplete-new/autocomplete-new.module.mjs +0 -43
- package/esm2022/lib/components/autocomplete-new/index.mjs +0 -3
- package/esm2022/lib/components/autocomplete-new/models/autocomplete-new.model.mjs +0 -2
- package/esm2022/lib/components/button-new/button-new.component.mjs +0 -176
- package/esm2022/lib/components/button-new/button-new.module.mjs +0 -21
- package/esm2022/lib/components/button-new/index.mjs +0 -3
- package/esm2022/lib/components/checkbox-new/checkbox-new.component.mjs +0 -150
- package/esm2022/lib/components/checkbox-new/checkbox-new.module.mjs +0 -20
- package/esm2022/lib/components/checkbox-new/index.mjs +0 -3
- package/esm2022/lib/components/datepicker-combo-new/datepicker-combo-new.component.mjs +0 -397
- package/esm2022/lib/components/datepicker-combo-new/datepicker-combo-new.module.mjs +0 -31
- package/esm2022/lib/components/datepicker-combo-new/index.mjs +0 -3
- package/esm2022/lib/components/datepicker-new/calendar-new/calendar-date.model.mjs +0 -2
- package/esm2022/lib/components/datepicker-new/calendar-new/calendar-new.component.mjs +0 -594
- package/esm2022/lib/components/datepicker-new/calendar-new/enums/week-start.enum.mjs +0 -6
- package/esm2022/lib/components/datepicker-new/calendar-new/models/day.model.mjs +0 -2
- package/esm2022/lib/components/datepicker-new/calendar-new/models/select-option.model.mjs +0 -2
- package/esm2022/lib/components/datepicker-new/calendar-new/models/week.model.mjs +0 -2
- package/esm2022/lib/components/datepicker-new/datepicker-new.component.mjs +0 -572
- package/esm2022/lib/components/datepicker-new/datepicker-new.module.mjs +0 -55
- package/esm2022/lib/components/datepicker-new/index.mjs +0 -5
- package/esm2022/lib/components/datepicker-new/services/calendar.service.mjs +0 -215
- package/esm2022/lib/components/filter-new/enums/trip-type.enum.mjs +0 -8
- package/esm2022/lib/components/filter-new/filter-new.component.mjs +0 -1349
- package/esm2022/lib/components/filter-new/filter-new.module.mjs +0 -105
- package/esm2022/lib/components/filter-new/index.mjs +0 -4
- package/esm2022/lib/components/input-text/index.mjs +0 -3
- package/esm2022/lib/components/input-text/input-text.component.mjs +0 -231
- package/esm2022/lib/components/input-text/input-text.module.mjs +0 -35
- package/esm2022/lib/components/number-field-new/index.mjs +0 -3
- package/esm2022/lib/components/number-field-new/models/number-field-new.model.mjs +0 -2
- package/esm2022/lib/components/number-field-new/number-field-new.component.mjs +0 -155
- package/esm2022/lib/components/number-field-new/number-field-new.module.mjs +0 -39
- package/esm2022/lib/components/page-header-old/index.mjs +0 -5
- package/esm2022/lib/components/page-header-old/old-hamburger/old-hamburger.component.mjs +0 -22
- package/esm2022/lib/components/page-header-old/old-search/old-search.component.mjs +0 -49
- package/esm2022/lib/components/page-header-old/page-header-old.component.mjs +0 -160
- package/esm2022/lib/components/page-header-old/page-header-old.module.mjs +0 -44
- package/esm2022/lib/components/passenger-select-new/enums/passenger-type.enum.mjs +0 -9
- package/esm2022/lib/components/passenger-select-new/index.mjs +0 -5
- package/esm2022/lib/components/passenger-select-new/models/passengers.model.mjs +0 -2
- package/esm2022/lib/components/passenger-select-new/passenger-select-new.component.mjs +0 -423
- package/esm2022/lib/components/passenger-select-new/passenger-select-new.module.mjs +0 -28
- package/esm2022/lib/components/radio-new/index.mjs +0 -3
- package/esm2022/lib/components/radio-new/radio-new.component.mjs +0 -100
- package/esm2022/lib/components/radio-new/radio-new.module.mjs +0 -20
- package/esm2022/lib/components/slide-toggle-new/index.mjs +0 -3
- package/esm2022/lib/components/slide-toggle-new/slide-toggle-new.component.mjs +0 -115
- package/esm2022/lib/components/slide-toggle-new/slide-toggle-new.module.mjs +0 -20
- package/esm2022/lib/components/weather-icon/index.mjs +0 -3
- package/esm2022/lib/components/weather-icon/weather-icon.component.mjs +0 -61
- package/esm2022/lib/components/weather-icon/weather-icon.module.mjs +0 -19
- package/lib/components/airport-select-new/airport-select-dropdown/airport-select-dropdown.component.d.ts +0 -97
- package/lib/components/airport-select-new/airport-select-new.component.d.ts +0 -302
- package/lib/components/airport-select-new/airport-select-new.module.d.ts +0 -13
- package/lib/components/airport-select-new/index.d.ts +0 -2
- package/lib/components/airport-select-new/models/airport.model.d.ts +0 -11
- package/lib/components/airport-select-new/models/results-labels.model.d.ts +0 -7
- package/lib/components/airport-select-new/services/airport-select-dropdown.service.d.ts +0 -10
- package/lib/components/airport-select-new/services/airport-select.service.d.ts +0 -8
- package/lib/components/autocomplete-new/autocomplete-new.component.d.ts +0 -135
- package/lib/components/autocomplete-new/autocomplete-new.module.d.ts +0 -13
- package/lib/components/autocomplete-new/index.d.ts +0 -2
- package/lib/components/autocomplete-new/models/autocomplete-new.model.d.ts +0 -5
- package/lib/components/button-new/button-new.component.d.ts +0 -276
- package/lib/components/button-new/button-new.module.d.ts +0 -11
- package/lib/components/button-new/index.d.ts +0 -2
- package/lib/components/checkbox-new/checkbox-new.component.d.ts +0 -138
- package/lib/components/checkbox-new/checkbox-new.module.d.ts +0 -10
- package/lib/components/checkbox-new/index.d.ts +0 -2
- package/lib/components/datepicker-combo-new/datepicker-combo-new.component.d.ts +0 -309
- package/lib/components/datepicker-combo-new/datepicker-combo-new.module.d.ts +0 -10
- package/lib/components/datepicker-combo-new/index.d.ts +0 -2
- package/lib/components/datepicker-new/calendar-new/calendar-date.model.d.ts +0 -5
- package/lib/components/datepicker-new/calendar-new/calendar-new.component.d.ts +0 -159
- package/lib/components/datepicker-new/calendar-new/enums/week-start.enum.d.ts +0 -4
- package/lib/components/datepicker-new/calendar-new/models/day.model.d.ts +0 -10
- package/lib/components/datepicker-new/calendar-new/models/select-option.model.d.ts +0 -4
- package/lib/components/datepicker-new/calendar-new/models/week.model.d.ts +0 -5
- package/lib/components/datepicker-new/datepicker-new.component.d.ts +0 -278
- package/lib/components/datepicker-new/datepicker-new.module.d.ts +0 -16
- package/lib/components/datepicker-new/index.d.ts +0 -4
- package/lib/components/datepicker-new/services/calendar.service.d.ts +0 -27
- package/lib/components/filter-new/enums/trip-type.enum.d.ts +0 -6
- package/lib/components/filter-new/filter-new.component.d.ts +0 -838
- package/lib/components/filter-new/filter-new.module.d.ts +0 -28
- package/lib/components/filter-new/index.d.ts +0 -3
- package/lib/components/input-text/index.d.ts +0 -2
- package/lib/components/input-text/input-text.component.d.ts +0 -203
- package/lib/components/input-text/input-text.module.d.ts +0 -11
- package/lib/components/number-field-new/index.d.ts +0 -2
- package/lib/components/number-field-new/models/number-field-new.model.d.ts +0 -5
- package/lib/components/number-field-new/number-field-new.component.d.ts +0 -116
- package/lib/components/number-field-new/number-field-new.module.d.ts +0 -12
- package/lib/components/page-header-old/index.d.ts +0 -4
- package/lib/components/page-header-old/old-hamburger/old-hamburger.component.d.ts +0 -12
- package/lib/components/page-header-old/old-search/old-search.component.d.ts +0 -26
- package/lib/components/page-header-old/page-header-old.component.d.ts +0 -112
- package/lib/components/page-header-old/page-header-old.module.d.ts +0 -14
- package/lib/components/passenger-select-new/enums/passenger-type.enum.d.ts +0 -7
- package/lib/components/passenger-select-new/index.d.ts +0 -4
- package/lib/components/passenger-select-new/models/passengers.model.d.ts +0 -10
- package/lib/components/passenger-select-new/passenger-select-new.component.d.ts +0 -141
- package/lib/components/passenger-select-new/passenger-select-new.module.d.ts +0 -10
- package/lib/components/radio-new/index.d.ts +0 -2
- package/lib/components/radio-new/radio-new.component.d.ts +0 -135
- package/lib/components/radio-new/radio-new.module.d.ts +0 -10
- package/lib/components/slide-toggle-new/index.d.ts +0 -2
- package/lib/components/slide-toggle-new/slide-toggle-new.component.d.ts +0 -70
- package/lib/components/slide-toggle-new/slide-toggle-new.module.d.ts +0 -10
- package/lib/components/weather-icon/index.d.ts +0 -2
- package/lib/components/weather-icon/weather-icon.component.d.ts +0 -60
- package/lib/components/weather-icon/weather-icon.module.d.ts +0 -9
|
@@ -1,423 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Norwegian Air Shuttle. All Rights Reserved.
|
|
4
|
-
*/
|
|
5
|
-
import { Component, EventEmitter, Input, Output, ViewChildren } from '@angular/core';
|
|
6
|
-
import { PassengerType } from './enums/passenger-type.enum';
|
|
7
|
-
import { NasComponentBase } from '../../core/base/nas-component.base';
|
|
8
|
-
import { NumberFieldNewComponent } from '../number-field-new';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/common";
|
|
11
|
-
import * as i2 from "../number-field-new/number-field-new.component";
|
|
12
|
-
import * as i3 from "../../core/directives/nas-class/nas-class.directive";
|
|
13
|
-
/**
|
|
14
|
-
* @description
|
|
15
|
-
* Norwegian Passenger Select Component | New design | Beta
|
|
16
|
-
*/
|
|
17
|
-
export class PassengerSelectNewComponent extends NasComponentBase {
|
|
18
|
-
constructor() {
|
|
19
|
-
super('nas-passenger-select-new');
|
|
20
|
-
/**
|
|
21
|
-
* @property Input
|
|
22
|
-
* @description
|
|
23
|
-
* An array of different passenger types that will be displayed.
|
|
24
|
-
*/
|
|
25
|
-
this.passengers = new Array();
|
|
26
|
-
/**
|
|
27
|
-
* @property Input
|
|
28
|
-
* @description
|
|
29
|
-
* The total maximum amount of passengers.
|
|
30
|
-
*/
|
|
31
|
-
this.maxPaxCount = 10;
|
|
32
|
-
/**
|
|
33
|
-
* @property Output
|
|
34
|
-
* @description
|
|
35
|
-
* An event that is fired every time a passenger selection change is performed.
|
|
36
|
-
*/
|
|
37
|
-
this.passengersChange = new EventEmitter();
|
|
38
|
-
/**
|
|
39
|
-
* @property Output
|
|
40
|
-
* @description
|
|
41
|
-
* An event that is fired every time a passenger selection change is performed.
|
|
42
|
-
*/
|
|
43
|
-
this.focusOnNext = new EventEmitter();
|
|
44
|
-
/**
|
|
45
|
-
* @property Output
|
|
46
|
-
* @description
|
|
47
|
-
* An event that is fired every time a passenger selection change is performed.
|
|
48
|
-
*/
|
|
49
|
-
this.focusOnPrevious = new EventEmitter();
|
|
50
|
-
}
|
|
51
|
-
ngOnInit() {
|
|
52
|
-
this.setTotalCount();
|
|
53
|
-
}
|
|
54
|
-
getLabel(type) {
|
|
55
|
-
switch (type) {
|
|
56
|
-
case PassengerType.Adult:
|
|
57
|
-
return this.adultsLabel;
|
|
58
|
-
case PassengerType.Child:
|
|
59
|
-
return this.childrenLabel;
|
|
60
|
-
case PassengerType.Infant:
|
|
61
|
-
return this.infantsLabel;
|
|
62
|
-
case PassengerType.Youth:
|
|
63
|
-
return this.youthsLabel;
|
|
64
|
-
case PassengerType.YoungAdult:
|
|
65
|
-
return this.youngAdultsLabel;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
keyDown(event, index) {
|
|
69
|
-
event.preventDefault();
|
|
70
|
-
switch (event.key) {
|
|
71
|
-
case 'ArrowDown':
|
|
72
|
-
if (index === this.passengers.length - 1) {
|
|
73
|
-
this.numberFields.first.input.nativeElement.focus();
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
this.numberFields.toArray()[index + 1].input.nativeElement.focus();
|
|
77
|
-
}
|
|
78
|
-
break;
|
|
79
|
-
case 'ArrowUp':
|
|
80
|
-
if (index === 0) {
|
|
81
|
-
this.numberFields.toArray()[this.passengers.length - 1].input.nativeElement.focus();
|
|
82
|
-
}
|
|
83
|
-
else {
|
|
84
|
-
this.numberFields.toArray()[index - 1].input.nativeElement.focus();
|
|
85
|
-
}
|
|
86
|
-
break;
|
|
87
|
-
case 'Tab':
|
|
88
|
-
if (!event.shiftKey) {
|
|
89
|
-
this.focusOnNext.emit();
|
|
90
|
-
}
|
|
91
|
-
else if (event.shiftKey) {
|
|
92
|
-
this.focusOnPrevious.emit();
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
setPassengersCount(passengers, count) {
|
|
97
|
-
passengers.count = count;
|
|
98
|
-
if (passengers.type === PassengerType.Adult) {
|
|
99
|
-
if (this.passengers.find(x => x.type === PassengerType.Infant)) {
|
|
100
|
-
const infantsCount = this.passengers.find(x => x.type === PassengerType.Infant).count;
|
|
101
|
-
if (infantsCount > passengers.count && this.passengers.find(x => x.type === PassengerType.Infant)) {
|
|
102
|
-
const infant = this.passengers.find(x => x.type === PassengerType.Infant);
|
|
103
|
-
if (infant) {
|
|
104
|
-
infant.count = passengers.count;
|
|
105
|
-
if (infant.formGroup && infant.formControlName) {
|
|
106
|
-
infant.formGroup.get(infant.formControlName).patchValue(infant.count);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
const youngAdult = this.passengers.find(x => x.type === PassengerType.YoungAdult);
|
|
112
|
-
const child = this.passengers.find(x => x.type === PassengerType.Child);
|
|
113
|
-
if (youngAdult && child) {
|
|
114
|
-
if (passengers.count === 0 && child) {
|
|
115
|
-
if (child) {
|
|
116
|
-
child.count = 0;
|
|
117
|
-
if (child.formGroup && child.formControlName) {
|
|
118
|
-
child.formGroup.get(child.formControlName).patchValue(0);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
if (passengers.type === PassengerType.Youth) {
|
|
125
|
-
if (this.passengers.find(x => x.type === PassengerType.Infant)) {
|
|
126
|
-
const infantsCount = this.passengers.find(x => x.type === PassengerType.Infant).count;
|
|
127
|
-
if (infantsCount > passengers.count && this.passengers.find(x => x.type === PassengerType.Infant)) {
|
|
128
|
-
const infant = this.passengers.find(x => x.type === PassengerType.Infant);
|
|
129
|
-
if (infant) {
|
|
130
|
-
infant.count = passengers.count;
|
|
131
|
-
if (infant.formGroup && infant.formControlName) {
|
|
132
|
-
infant.formGroup.get(infant.formControlName).patchValue(infant.count);
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
if (passengers.type === PassengerType.Adult || passengers.type === PassengerType.Youth) {
|
|
139
|
-
const adult = this.passengers.find(x => x.type === PassengerType.Adult);
|
|
140
|
-
const youth = this.passengers.find(x => x.type === PassengerType.Youth);
|
|
141
|
-
if (adult && youth) {
|
|
142
|
-
if (passengers.type === PassengerType.Adult && adult.count > 0) {
|
|
143
|
-
if (youth.formGroup && youth.formControlName && youth.count !== 0) {
|
|
144
|
-
youth.formGroup.get(youth.formControlName).patchValue(0);
|
|
145
|
-
}
|
|
146
|
-
youth.count = 0;
|
|
147
|
-
}
|
|
148
|
-
if (passengers.type === PassengerType.Youth) {
|
|
149
|
-
adult.count = youth.count > 0 ? 0 : adult.count;
|
|
150
|
-
if (adult.formGroup && adult.formControlName && youth.formGroup && youth.formControlName) {
|
|
151
|
-
if (this.minAdultCount && youth.count === 0) {
|
|
152
|
-
adult.formGroup.get(adult.formControlName).patchValue(this.minAdultCount);
|
|
153
|
-
}
|
|
154
|
-
else if (youth.count > 0) {
|
|
155
|
-
adult.formGroup.get(adult.formControlName).patchValue(0);
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
if (passengers.type === PassengerType.YoungAdult || passengers.type === PassengerType.Youth) {
|
|
162
|
-
const youngAdult = this.passengers.find(x => x.type === PassengerType.YoungAdult);
|
|
163
|
-
const youth = this.passengers.find(x => x.type === PassengerType.Youth);
|
|
164
|
-
if (youngAdult && youth) {
|
|
165
|
-
if (passengers.type === PassengerType.Youth && youth.count > 0) {
|
|
166
|
-
if (youngAdult.formGroup && youth.formControlName && youngAdult.count !== 0) {
|
|
167
|
-
youngAdult.formGroup.get(youth.formControlName).patchValue(0);
|
|
168
|
-
}
|
|
169
|
-
youngAdult.count = 0;
|
|
170
|
-
}
|
|
171
|
-
if (passengers.type === PassengerType.YoungAdult) {
|
|
172
|
-
youth.count = youngAdult.count > 0 ? 0 : youth.count;
|
|
173
|
-
if (youth.formGroup && youth.formControlName && youngAdult.formGroup && youngAdult.formControlName) {
|
|
174
|
-
if (this.minAdultCount && youngAdult.count === 0) {
|
|
175
|
-
youth.formGroup.get(youth.formControlName).patchValue(this.minAdultCount);
|
|
176
|
-
}
|
|
177
|
-
else if (youth.count > 0) {
|
|
178
|
-
youth.formGroup.get(youth.formControlName).patchValue(0);
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
this.setTotalCount();
|
|
185
|
-
this.passengersChange.emit(this.passengers);
|
|
186
|
-
}
|
|
187
|
-
getMax(passengers) {
|
|
188
|
-
if (passengers?.disabled) {
|
|
189
|
-
return passengers?.count;
|
|
190
|
-
}
|
|
191
|
-
const adults = this.passengers.find(x => x.type === PassengerType.Adult);
|
|
192
|
-
const youths = this.passengers.find(x => x.type === PassengerType.Youth);
|
|
193
|
-
const youngAdult = this.passengers.find(x => x.type === PassengerType.YoungAdult);
|
|
194
|
-
if (passengers.type === PassengerType.Infant) {
|
|
195
|
-
if (adults && adults.count > 0) {
|
|
196
|
-
if (!adults.formGroup || !adults.formControlName) {
|
|
197
|
-
return adults.count;
|
|
198
|
-
}
|
|
199
|
-
const adultsFormControl = adults.formGroup.get(adults.formControlName);
|
|
200
|
-
if (!adultsFormControl) {
|
|
201
|
-
return adults.count;
|
|
202
|
-
}
|
|
203
|
-
return adultsFormControl.value;
|
|
204
|
-
}
|
|
205
|
-
if (youths && youths.count > 0) {
|
|
206
|
-
if (!youths.formGroup || !youths.formControlName) {
|
|
207
|
-
return youths.count;
|
|
208
|
-
}
|
|
209
|
-
const youthsFormControl = youths.formGroup.get(youths.formControlName);
|
|
210
|
-
if (!youthsFormControl) {
|
|
211
|
-
return youths.count;
|
|
212
|
-
}
|
|
213
|
-
return youthsFormControl.value;
|
|
214
|
-
}
|
|
215
|
-
if (youngAdult && (adults && adults.count <= 0)) {
|
|
216
|
-
return 0;
|
|
217
|
-
}
|
|
218
|
-
if (youngAdult && (youths && youths.count <= 0)) {
|
|
219
|
-
return 0;
|
|
220
|
-
}
|
|
221
|
-
return 0;
|
|
222
|
-
}
|
|
223
|
-
else if (passengers.type === PassengerType.Child && this.totalCount < this.maxPaxCount) {
|
|
224
|
-
if (adults && youngAdult) {
|
|
225
|
-
if (adults.count <= 0) {
|
|
226
|
-
return 0;
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
if (youths && youngAdult) {
|
|
230
|
-
if (youths.count <= 0) {
|
|
231
|
-
return 0;
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
else if (this.totalCount >= this.maxPaxCount) {
|
|
236
|
-
if (!passengers.formGroup || !passengers.formControlName) {
|
|
237
|
-
return passengers.count;
|
|
238
|
-
}
|
|
239
|
-
const passengersFormControl = passengers.formGroup.get(passengers.formControlName);
|
|
240
|
-
if (!passengersFormControl) {
|
|
241
|
-
return passengers.count;
|
|
242
|
-
}
|
|
243
|
-
return passengersFormControl.value;
|
|
244
|
-
}
|
|
245
|
-
else {
|
|
246
|
-
return this.maxPaxCount;
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
getMin(passengers) {
|
|
250
|
-
if (passengers?.disabled) {
|
|
251
|
-
return passengers?.count;
|
|
252
|
-
}
|
|
253
|
-
const adult = this.passengers.find(x => x.type === PassengerType.Adult);
|
|
254
|
-
const youth = this.passengers.find(x => x.type === PassengerType.Youth);
|
|
255
|
-
const youngAdult = this.passengers.find(x => x.type === PassengerType.YoungAdult);
|
|
256
|
-
if (passengers.type === PassengerType.Adult && youth) {
|
|
257
|
-
const min = !this.minAdultCount ? 0 : this.minAdultCount;
|
|
258
|
-
if (passengers.type === PassengerType.Adult && adult.count < min && youth.count === 0) {
|
|
259
|
-
passengers.count = min;
|
|
260
|
-
return min;
|
|
261
|
-
}
|
|
262
|
-
if (passengers.type === PassengerType.Adult && adult.formGroup && adult.formControlName) {
|
|
263
|
-
return min;
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
else if (passengers.type === PassengerType.Youth && youngAdult) {
|
|
267
|
-
const min = !this.minAdultCount ? 0 : this.minAdultCount;
|
|
268
|
-
if (passengers.type === PassengerType.Youth && youth.count < min && youngAdult.count === 0) {
|
|
269
|
-
passengers.count = min;
|
|
270
|
-
return min;
|
|
271
|
-
}
|
|
272
|
-
if (passengers.type === PassengerType.Youth && youth.formGroup && youth.formControlName) {
|
|
273
|
-
return min;
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
else if (!adult && passengers.type === PassengerType.Youth) {
|
|
277
|
-
const min = !this.minAdultCount ? 0 : this.minAdultCount;
|
|
278
|
-
return min;
|
|
279
|
-
}
|
|
280
|
-
else if (passengers.type === PassengerType.Adult && youngAdult) {
|
|
281
|
-
if (youngAdult.count > 0) {
|
|
282
|
-
return 0;
|
|
283
|
-
}
|
|
284
|
-
return this.minAdultCount;
|
|
285
|
-
}
|
|
286
|
-
else if (passengers.type === PassengerType.YoungAdult && adult) {
|
|
287
|
-
if (adult.count > 0) {
|
|
288
|
-
return 0;
|
|
289
|
-
}
|
|
290
|
-
return this.minAdultCount;
|
|
291
|
-
}
|
|
292
|
-
else if (passengers.type === PassengerType.Adult) {
|
|
293
|
-
return this.minAdultCount;
|
|
294
|
-
}
|
|
295
|
-
return 0;
|
|
296
|
-
}
|
|
297
|
-
setTotalCount() {
|
|
298
|
-
const adult = this.passengers.find(x => x.type === PassengerType.Adult);
|
|
299
|
-
const youth = this.passengers.find(x => x.type === PassengerType.Youth);
|
|
300
|
-
const youngAdult = this.passengers.find(x => x.type === PassengerType.YoungAdult);
|
|
301
|
-
const child = this.passengers.find(x => x.type === PassengerType.Child);
|
|
302
|
-
let adultCount = 0;
|
|
303
|
-
let youthCount = 0;
|
|
304
|
-
let youngAdultCount = 0;
|
|
305
|
-
let childCount = 0;
|
|
306
|
-
if (adult) {
|
|
307
|
-
if (!adult.formGroup || !adult.formControlName) {
|
|
308
|
-
adultCount = adult.count;
|
|
309
|
-
}
|
|
310
|
-
else {
|
|
311
|
-
const adultsControl = adult.formGroup.get(adult.formControlName);
|
|
312
|
-
if (!adultsControl) {
|
|
313
|
-
adultCount = adult.count;
|
|
314
|
-
}
|
|
315
|
-
else {
|
|
316
|
-
adultCount = adultsControl.value;
|
|
317
|
-
}
|
|
318
|
-
}
|
|
319
|
-
}
|
|
320
|
-
if (youth) {
|
|
321
|
-
if (!youth.formGroup || !youth.formControlName) {
|
|
322
|
-
youthCount = youth.count;
|
|
323
|
-
}
|
|
324
|
-
else {
|
|
325
|
-
const youthsControl = youth.formGroup.get(youth.formControlName);
|
|
326
|
-
if (!youthsControl) {
|
|
327
|
-
youthCount = youth.count;
|
|
328
|
-
}
|
|
329
|
-
else {
|
|
330
|
-
youthCount = youthsControl.value;
|
|
331
|
-
}
|
|
332
|
-
}
|
|
333
|
-
}
|
|
334
|
-
if (youngAdult) {
|
|
335
|
-
if (!youngAdult.formGroup || !youngAdult.formControlName) {
|
|
336
|
-
youngAdultCount = youngAdult.count;
|
|
337
|
-
}
|
|
338
|
-
else {
|
|
339
|
-
const youngAdultsControl = youngAdult.formGroup.get(youngAdult.formControlName);
|
|
340
|
-
if (!youngAdultsControl) {
|
|
341
|
-
youngAdultCount = youngAdult.count;
|
|
342
|
-
}
|
|
343
|
-
else {
|
|
344
|
-
youngAdultCount = youngAdultsControl.value;
|
|
345
|
-
}
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
if (child) {
|
|
349
|
-
if (!child.formGroup || !child.formControlName) {
|
|
350
|
-
childCount = child.count;
|
|
351
|
-
}
|
|
352
|
-
else {
|
|
353
|
-
const childsControl = child.formGroup.get(child.formControlName);
|
|
354
|
-
if (!childsControl) {
|
|
355
|
-
childCount = child.count;
|
|
356
|
-
}
|
|
357
|
-
else {
|
|
358
|
-
childCount = childsControl.value;
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
}
|
|
362
|
-
this.totalCount = adultCount + childCount + youthCount + youngAdultCount;
|
|
363
|
-
if (this.nasFormGroup && this.nasFormControlGroupBooking) {
|
|
364
|
-
const groupBookingControl = this.nasFormGroup.get(this.nasFormControlGroupBooking);
|
|
365
|
-
this.isGroupBooking = this.totalCount >= this.groupBookingLimit;
|
|
366
|
-
if (this.groupBookingLimit < 1) {
|
|
367
|
-
this.isGroupBooking = false;
|
|
368
|
-
}
|
|
369
|
-
if (groupBookingControl.value !== this.isGroupBooking) {
|
|
370
|
-
groupBookingControl.patchValue(this.isGroupBooking);
|
|
371
|
-
}
|
|
372
|
-
}
|
|
373
|
-
else if (this.groupBookingLimit) {
|
|
374
|
-
this.isGroupBooking = this.totalCount >= this.groupBookingLimit;
|
|
375
|
-
}
|
|
376
|
-
}
|
|
377
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: PassengerSelectNewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
378
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.5", type: PassengerSelectNewComponent, selector: "nas-passenger-select-new", inputs: { passengers: "passengers", maxPaxCount: "maxPaxCount", minAdultCount: "minAdultCount", groupBookingLimit: "groupBookingLimit", title: "title", adultsLabel: "adultsLabel", childrenLabel: "childrenLabel", infantsLabel: "infantsLabel", youthsLabel: "youthsLabel", youngAdultsLabel: "youngAdultsLabel", groupBookingLabel: "groupBookingLabel", nasFormGroup: "nasFormGroup", nasFormControlGroupBooking: "nasFormControlGroupBooking", ariaLabelSubtract: "ariaLabelSubtract", ariaLabelAdd: "ariaLabelAdd" }, outputs: { passengersChange: "passengersChange", focusOnNext: "focusOnNext", focusOnPrevious: "focusOnPrevious" }, viewQueries: [{ propertyName: "numberFields", predicate: NumberFieldNewComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<h2 *ngIf=\"title || isGroupBooking\" [nasClass]=\"getClass('title')\">\n <span *ngIf=\"title\">{{title}}</span>\n <span *ngIf=\"isGroupBooking\" [nasClass]=\"getClass('title--group-booking')\">{{groupBookingLabel}}</span>\n</h2>\n<ul [nasClass]=\"getClass('list')\">\n <li *ngFor=\"let item of passengers; index as count\"\n [nasClass]=\"getClass('list-item')\">\n <label [nasClass]=\"getClass('label')\"\n [attr.aria-label]=\"getLabel(item.type)\">{{getLabel(item.type)}}</label>\n <ng-container *ngIf=\"!item.formGroup || !item.formControlName; else reactiveForm\">\n <nas-number-field-new compact\n spaceless\n simple\n [ariaLabel]=\"getLabel(item.type)\"\n [ariaLabelSubtract]=\"ariaLabelSubtract\"\n [ariaLabelAdd]=\"ariaLabelAdd\"\n [number]=\"item.count\"\n [max]=\"getMax(item)\"\n [min]=\"getMin(item)\"\n (numberChange)=\"setPassengersCount(item, $event)\"\n (keydown)=\"keyDown($event, count)\"></nas-number-field-new>\n </ng-container>\n <ng-template #reactiveForm>\n <nas-number-field-new compact\n spaceless\n simple\n [ariaLabel]=\"getLabel(item.type)\"\n [ariaLabelSubtract]=\"ariaLabelSubtract\"\n [ariaLabelAdd]=\"ariaLabelAdd\"\n [nasFormGroup]=\"item.formGroup\"\n [nasFormControlName]=\"item.formControlName\"\n [number]=\"item.formGroup?.get(item.formControlName)?.value\"\n [max]=\"getMax(item)\"\n [min]=\"getMin(item)\"\n (keydown)=\"keyDown($event, count)\"\n (numberChange)=\"setPassengersCount(item, $event)\"></nas-number-field-new>\n </ng-template>\n </li>\n</ul>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-passenger-select-new{position:relative;display:flex;flex-wrap:wrap;margin:16px 0 24px}.nas-passenger-select-new__list{position:relative;background-color:#fff;border-left:2px solid #15273f;border-bottom:2px solid #15273f;border-right:2px solid #15273f}.nas-passenger-select-new__list-item{display:flex;align-items:center;justify-content:space-between;padding:6px 0 0}.nas-passenger-select-new__list-item:not(:last-child){padding:6px 0 9px}.nas-passenger-select-new__list-item:first-child{padding-top:16px!important}.nas-passenger-select-new__list-item:last-child{padding-bottom:16px!important}.nas-passenger-select-new__label{flex-grow:2;margin:0 6px 0 0}.nas-passenger-select-new__title{font-size:18px;line-height:26px;position:relative;background-color:#fff;display:block;min-width:124px;margin-bottom:0;border-left:2px solid #15273f;border-right:2px solid #15273f}.nas-passenger-select-new__title--small{font-size:16px;line-height:26px;margin:0}.nas-passenger-select-new__title--group-booking{animation:pop-in-from-top .5s linear both;display:block}.nas-passenger-select-new__actions{display:flex}.nas-passenger-select-new__action{padding:12px;width:100%;background-color:#fff}.nas-passenger-select-new__action:hover,.nas-passenger-select-new__action:focus{background-color:#e3e3e3}.nas-passenger-select-new__action--active,.nas-passenger-select-new__action--active:hover,.nas-passenger-select-new__action--active:focus{color:#fff;background-color:#15273f}.nas-passenger-select-new__icon{margin-bottom:9px}.nas-passenger-select-new__dropdown{margin-right:9px;margin-bottom:6px}@media (min-width: 640px){.nas-passenger-select-new__dropdown{margin-right:9px;margin-bottom:0}.nas-passenger-select-new__dropdown:not(:first-child){margin-left:9px}}.nas-passenger-select-new__transit-icon{position:relative;display:flex;justify-content:center;width:calc(100% - 48px);margin:12px auto;height:24px;background-color:inherit}.nas-passenger-select-new__transit-icon:before{content:\"\";position:absolute;height:2px;left:0;width:100%;top:calc(50% - 1px);background-color:currentColor}.nas-passenger-select-new__transit-icon:after{content:\"\";position:absolute;width:10px;height:10px;right:0;top:calc(50% - 5px);border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg)}.nas-passenger-select-new__transit-icon-stop{position:relative;top:calc(50% - 5px);width:10px;height:10px;border:2px solid currentColor;border-radius:50%;background-color:inherit}@media (min-width: 1000px){.nas-passenger-select-new--combined{margin:0}.nas-passenger-select-new--combined:after{content:\"\";position:absolute;bottom:-3px;left:-3px;width:calc(100% + 3px);border-bottom:3px solid #c3c3c3}.nas-passenger-select-new--combined .nas-passenger-select-new__dropdown{margin:0 3px 0 0}.nas-passenger-select-new--combined .nas-passenger-select-new__dropdown:last-child{margin:0}.nas-passenger-select-new--combined .dropdown__toggle{height:calc(100% - 3px);margin:0;padding-left:16px;padding-right:16px;background-color:#fff}}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.NumberFieldNewComponent, selector: "nas-number-field-new", inputs: ["number", "max", "min", "label", "compact", "spaceless", "simple", "nasFormControlName", "nasFormGroup", "hideInput", "ariaLabelSubtract", "ariaLabelAdd", "ariaLabel"], outputs: ["numberChange"] }, { kind: "directive", type: i3.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }] }); }
|
|
379
|
-
}
|
|
380
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: PassengerSelectNewComponent, decorators: [{
|
|
381
|
-
type: Component,
|
|
382
|
-
args: [{ selector: 'nas-passenger-select-new', template: "<h2 *ngIf=\"title || isGroupBooking\" [nasClass]=\"getClass('title')\">\n <span *ngIf=\"title\">{{title}}</span>\n <span *ngIf=\"isGroupBooking\" [nasClass]=\"getClass('title--group-booking')\">{{groupBookingLabel}}</span>\n</h2>\n<ul [nasClass]=\"getClass('list')\">\n <li *ngFor=\"let item of passengers; index as count\"\n [nasClass]=\"getClass('list-item')\">\n <label [nasClass]=\"getClass('label')\"\n [attr.aria-label]=\"getLabel(item.type)\">{{getLabel(item.type)}}</label>\n <ng-container *ngIf=\"!item.formGroup || !item.formControlName; else reactiveForm\">\n <nas-number-field-new compact\n spaceless\n simple\n [ariaLabel]=\"getLabel(item.type)\"\n [ariaLabelSubtract]=\"ariaLabelSubtract\"\n [ariaLabelAdd]=\"ariaLabelAdd\"\n [number]=\"item.count\"\n [max]=\"getMax(item)\"\n [min]=\"getMin(item)\"\n (numberChange)=\"setPassengersCount(item, $event)\"\n (keydown)=\"keyDown($event, count)\"></nas-number-field-new>\n </ng-container>\n <ng-template #reactiveForm>\n <nas-number-field-new compact\n spaceless\n simple\n [ariaLabel]=\"getLabel(item.type)\"\n [ariaLabelSubtract]=\"ariaLabelSubtract\"\n [ariaLabelAdd]=\"ariaLabelAdd\"\n [nasFormGroup]=\"item.formGroup\"\n [nasFormControlName]=\"item.formControlName\"\n [number]=\"item.formGroup?.get(item.formControlName)?.value\"\n [max]=\"getMax(item)\"\n [min]=\"getMin(item)\"\n (keydown)=\"keyDown($event, count)\"\n (numberChange)=\"setPassengersCount(item, $event)\"></nas-number-field-new>\n </ng-template>\n </li>\n</ul>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-passenger-select-new{position:relative;display:flex;flex-wrap:wrap;margin:16px 0 24px}.nas-passenger-select-new__list{position:relative;background-color:#fff;border-left:2px solid #15273f;border-bottom:2px solid #15273f;border-right:2px solid #15273f}.nas-passenger-select-new__list-item{display:flex;align-items:center;justify-content:space-between;padding:6px 0 0}.nas-passenger-select-new__list-item:not(:last-child){padding:6px 0 9px}.nas-passenger-select-new__list-item:first-child{padding-top:16px!important}.nas-passenger-select-new__list-item:last-child{padding-bottom:16px!important}.nas-passenger-select-new__label{flex-grow:2;margin:0 6px 0 0}.nas-passenger-select-new__title{font-size:18px;line-height:26px;position:relative;background-color:#fff;display:block;min-width:124px;margin-bottom:0;border-left:2px solid #15273f;border-right:2px solid #15273f}.nas-passenger-select-new__title--small{font-size:16px;line-height:26px;margin:0}.nas-passenger-select-new__title--group-booking{animation:pop-in-from-top .5s linear both;display:block}.nas-passenger-select-new__actions{display:flex}.nas-passenger-select-new__action{padding:12px;width:100%;background-color:#fff}.nas-passenger-select-new__action:hover,.nas-passenger-select-new__action:focus{background-color:#e3e3e3}.nas-passenger-select-new__action--active,.nas-passenger-select-new__action--active:hover,.nas-passenger-select-new__action--active:focus{color:#fff;background-color:#15273f}.nas-passenger-select-new__icon{margin-bottom:9px}.nas-passenger-select-new__dropdown{margin-right:9px;margin-bottom:6px}@media (min-width: 640px){.nas-passenger-select-new__dropdown{margin-right:9px;margin-bottom:0}.nas-passenger-select-new__dropdown:not(:first-child){margin-left:9px}}.nas-passenger-select-new__transit-icon{position:relative;display:flex;justify-content:center;width:calc(100% - 48px);margin:12px auto;height:24px;background-color:inherit}.nas-passenger-select-new__transit-icon:before{content:\"\";position:absolute;height:2px;left:0;width:100%;top:calc(50% - 1px);background-color:currentColor}.nas-passenger-select-new__transit-icon:after{content:\"\";position:absolute;width:10px;height:10px;right:0;top:calc(50% - 5px);border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg)}.nas-passenger-select-new__transit-icon-stop{position:relative;top:calc(50% - 5px);width:10px;height:10px;border:2px solid currentColor;border-radius:50%;background-color:inherit}@media (min-width: 1000px){.nas-passenger-select-new--combined{margin:0}.nas-passenger-select-new--combined:after{content:\"\";position:absolute;bottom:-3px;left:-3px;width:calc(100% + 3px);border-bottom:3px solid #c3c3c3}.nas-passenger-select-new--combined .nas-passenger-select-new__dropdown{margin:0 3px 0 0}.nas-passenger-select-new--combined .nas-passenger-select-new__dropdown:last-child{margin:0}.nas-passenger-select-new--combined .dropdown__toggle{height:calc(100% - 3px);margin:0;padding-left:16px;padding-right:16px;background-color:#fff}}\n"] }]
|
|
383
|
-
}], ctorParameters: function () { return []; }, propDecorators: { numberFields: [{
|
|
384
|
-
type: ViewChildren,
|
|
385
|
-
args: [NumberFieldNewComponent]
|
|
386
|
-
}], passengers: [{
|
|
387
|
-
type: Input
|
|
388
|
-
}], maxPaxCount: [{
|
|
389
|
-
type: Input
|
|
390
|
-
}], minAdultCount: [{
|
|
391
|
-
type: Input
|
|
392
|
-
}], groupBookingLimit: [{
|
|
393
|
-
type: Input
|
|
394
|
-
}], title: [{
|
|
395
|
-
type: Input
|
|
396
|
-
}], adultsLabel: [{
|
|
397
|
-
type: Input
|
|
398
|
-
}], childrenLabel: [{
|
|
399
|
-
type: Input
|
|
400
|
-
}], infantsLabel: [{
|
|
401
|
-
type: Input
|
|
402
|
-
}], youthsLabel: [{
|
|
403
|
-
type: Input
|
|
404
|
-
}], youngAdultsLabel: [{
|
|
405
|
-
type: Input
|
|
406
|
-
}], groupBookingLabel: [{
|
|
407
|
-
type: Input
|
|
408
|
-
}], nasFormGroup: [{
|
|
409
|
-
type: Input
|
|
410
|
-
}], nasFormControlGroupBooking: [{
|
|
411
|
-
type: Input
|
|
412
|
-
}], ariaLabelSubtract: [{
|
|
413
|
-
type: Input
|
|
414
|
-
}], ariaLabelAdd: [{
|
|
415
|
-
type: Input
|
|
416
|
-
}], passengersChange: [{
|
|
417
|
-
type: Output
|
|
418
|
-
}], focusOnNext: [{
|
|
419
|
-
type: Output
|
|
420
|
-
}], focusOnPrevious: [{
|
|
421
|
-
type: Output
|
|
422
|
-
}] } });
|
|
423
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc2VuZ2VyLXNlbGVjdC1uZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9wYXNzZW5nZXItc2VsZWN0LW5ldy9wYXNzZW5nZXItc2VsZWN0LW5ldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Bhc3Nlbmdlci1zZWxlY3QtbmV3L3Bhc3Nlbmdlci1zZWxlY3QtbmV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sWUFBWSxFQUViLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFFOUQ7OztFQUdFO0FBTUYsTUFBTSxPQUFPLDJCQUE0QixTQUFRLGdCQUFnQjtJQXVJL0Q7UUFDRSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQWxJcEM7Ozs7VUFJRTtRQUNPLGVBQVUsR0FBRyxJQUFJLEtBQUssRUFBbUIsQ0FBQztRQUVuRDs7OztVQUlFO1FBQ08sZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFnR2xDOzs7O1VBSUU7UUFDUSxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBMEIsQ0FBQztRQUV4RTs7OztVQUlFO1FBQ1EsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRWhEOzs7O1VBSUU7UUFDUSxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFP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R0FBM0IsMkJBQTJCLGd0QkFDeEIsdUJBQXVCLHVFQzdCdkMsMnBEQXNDSzs7MkZEVlEsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLDBCQUEwQjswRUFLRyxZQUFZO3NCQUFsRCxZQUFZO3VCQUFDLHVCQUF1QjtnQkFVNUIsVUFBVTtzQkFBbEIsS0FBSztnQkFPRyxXQUFXO3NCQUFuQixLQUFLO2dCQU9HLGFBQWE7c0JBQXJCLEtBQUs7Z0JBT0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQU9HLEtBQUs7c0JBQWIsS0FBSztnQkFPRyxXQUFXO3NCQUFuQixLQUFLO2dCQU9HLGFBQWE7c0JBQXJCLEtBQUs7Z0JBTUcsWUFBWTtzQkFBcEIsS0FBSztnQkFPRyxXQUFXO3NCQUFuQixLQUFLO2dCQU9HLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFPRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBU0csWUFBWTtzQkFBcEIsS0FBSztnQkFTRywwQkFBMEI7c0JBQWxDLEtBQUs7Z0JBT0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQU9HLFlBQVk7c0JBQXBCLEtBQUs7Z0JBT0ksZ0JBQWdCO3NCQUF6QixNQUFNO2dCQU9HLFdBQVc7c0JBQXBCLE1BQU07Z0JBT0csZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBOb3J3ZWdpYW4gQWlyIFNodXR0bGUuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKi9cbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZHJlbixcbiAgUXVlcnlMaXN0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUGFzc2VuZ2VyVHlwZSB9IGZyb20gJy4vZW51bXMvcGFzc2VuZ2VyLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBQYXNzZW5nZXJzTW9kZWwgfSBmcm9tICcuL21vZGVscy9wYXNzZW5nZXJzLm1vZGVsJztcbmltcG9ydCB7IE5hc0NvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UvbmFzLWNvbXBvbmVudC5iYXNlJztcbmltcG9ydCB7IE51bWJlckZpZWxkTmV3Q29tcG9uZW50IH0gZnJvbSAnLi4vbnVtYmVyLWZpZWxkLW5ldyc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKiBOb3J3ZWdpYW4gUGFzc2VuZ2VyIFNlbGVjdCBDb21wb25lbnQgfCBOZXcgZGVzaWduIHwgQmV0YVxuKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25hcy1wYXNzZW5nZXItc2VsZWN0LW5ldycsXG4gIHRlbXBsYXRlVXJsOiAnLi9wYXNzZW5nZXItc2VsZWN0LW5ldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Bhc3Nlbmdlci1zZWxlY3QtbmV3LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUGFzc2VuZ2VyU2VsZWN0TmV3Q29tcG9uZW50IGV4dGVuZHMgTmFzQ29tcG9uZW50QmFzZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBWaWV3Q2hpbGRyZW4oTnVtYmVyRmllbGROZXdDb21wb25lbnQpIG51bWJlckZpZWxkcyE6IFF1ZXJ5TGlzdDxOdW1iZXJGaWVsZE5ld0NvbXBvbmVudD47XG5cbiAgdG90YWxDb3VudDogbnVtYmVyO1xuICBpc0dyb3VwQm9va2luZzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBbiBhcnJheSBvZiBkaWZmZXJlbnQgcGFzc2VuZ2VyIHR5cGVzIHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQuXG4gICovXG4gIEBJbnB1dCgpIHBhc3NlbmdlcnMgPSBuZXcgQXJyYXk8UGFzc2VuZ2Vyc01vZGVsPigpO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFRoZSB0b3RhbCBtYXhpbXVtIGFtb3VudCBvZiBwYXNzZW5nZXJzLlxuICAqL1xuICBASW5wdXQoKSBtYXhQYXhDb3VudDogbnVtYmVyID0gMTA7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogVGhlIG1pbmltdW0gYW1vdW50IG9mIGFkdWx0cyB0aGF0IGNhbiBiZSBzZWxlY3RlZC5cbiAgKi9cbiAgQElucHV0KCkgbWluQWR1bHRDb3VudDogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFRoZSBsaW1pdCBmb3Igd2hlbiB0aGUgdG90YWwgYW1vdW50IG9mIHBhc3NlbmdlcnMgZXhjZWVkcyB0byBiZSBhIGdyb3VwIGJvb2tpbmcuXG4gICovXG4gIEBJbnB1dCgpIGdyb3VwQm9va2luZ0xpbWl0OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSB0aXRsZSB0aGF0IHdpbGwgYmUgYWRkZWQgdG8gdGhlIGRyb3Bkb3duLlxuICAqL1xuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgbGFiZWwgZm9yIHRoZSBhZHVsdHMgcGFzc2VuZ2VyIHR5cGUuXG4gICovXG4gIEBJbnB1dCgpIGFkdWx0c0xhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBsYWJlbCBmb3IgdGhlIGNoaWxkcmVuIHBhc3NlbmdlciB0eXBlLlxuICAqL1xuICBASW5wdXQoKSBjaGlsZHJlbkxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIGxhYmVsIGZvciB0aGUgaW5mYW50cyBwYXNzZW5nZXIgdHlwZS5cbiAgICovXG4gIEBJbnB1dCgpIGluZmFudHNMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICogQHByb3BlcnR5IElucHV0XG4gKiBAZGVzY3JpcHRpb25cbiAqIEEgbGFiZWwgZm9yIHRoZSBhZHVsdHMgcGFzc2VuZ2VyIHR5cGUuXG4qL1xuICBASW5wdXQoKSB5b3V0aHNMYWJlbDogc3RyaW5nO1xuXG4vKipcbiAqIEBwcm9wZXJ0eSBJbnB1dFxuICogQGRlc2NyaXB0aW9uXG4gKiBBIGxhYmVsIGZvciB0aGUgYWR1bHRzIHBhc3NlbmdlciB0eXBlLlxuKi9cbiAgQElucHV0KCkgeW91bmdBZHVsdHNMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgbGFiZWwgdGhhdCB3aWxsIGFwcGVhciB3aGVuIHRvdGFsIG51bWJlciBvZiBzZWxlY3RlZCBwYXNzZW5nZXJzIGV4Y2VlZHMgdGhlIGdyb3VwIGJvb2tpbmcgbGltaXRcbiAgKi9cbiAgQElucHV0KCkgZ3JvdXBCb29raW5nTGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBZGRzIHRoZSBwYXJlbnQncyBmb3JtIGdyb3VwLlxuICAgKiBJdCByZXF1aXJlcyB0aGF0IHRoZSBjb25zdW1lciBpbmNsdWRlZCBSZWFjdGl2ZUZvcm1zTW9kdWxlIGluIGl0J3MgbW9kdWxlLlxuICAgKiBJdCBpcyByZXF1aWVyZWQgdG8gYmUgZmlsbGVkIGlmIG5hc0Zvcm1Db250cm9sTmFtZSBhZGRlZC5cbiAgKi9cbiAgQElucHV0KCkgbmFzRm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogU2V0cyBhIGZvcm1Db250cm9sTmFtZSBkaXJlY3RpdmUgdG8gdGhlIGlucHV0LlxuICAgKiBJdCByZXF1aXJlcyB0aGF0IHRoZSBjb25zdW1lciBpbmNsdWRlZCBSZWFjdGl2ZUZvcm1zTW9kdWxlIGluIGl0J3MgbW9kdWxlLlxuICAgKiBJdCByZXF1aWVycyB0aGF0IHRoZSBuYXNGb3JtR3JvdXAgaW5wdXQgaXMgZmlsbGVkLlxuICAqL1xuICBASW5wdXQoKSBuYXNGb3JtQ29udHJvbEdyb3VwQm9va2luZzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEFSSUEgbGFiZWwgZm9yIHRoZSBzdWJ0cmFjdCBidXR0b25zLlxuICAqL1xuICBASW5wdXQoKSBhcmlhTGFiZWxTdWJ0cmFjdDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEFSSUEgbGFiZWwgZm9yIHRoZSBhZGQgYnV0dG9ucy5cbiAgICovXG4gIEBJbnB1dCgpIGFyaWFMYWJlbEFkZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgT3V0cHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBbiBldmVudCB0aGF0IGlzIGZpcmVkIGV2ZXJ5IHRpbWUgYSBwYXNzZW5nZXIgc2VsZWN0aW9uIGNoYW5nZSBpcyBwZXJmb3JtZWQuXG4gICovXG4gIEBPdXRwdXQoKSBwYXNzZW5nZXJzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxBcnJheTxQYXNzZW5nZXJzTW9kZWw+PigpO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgT3V0cHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBbiBldmVudCB0aGF0IGlzIGZpcmVkIGV2ZXJ5IHRpbWUgYSBwYXNzZW5nZXIgc2VsZWN0aW9uIGNoYW5nZSBpcyBwZXJmb3JtZWQuXG4gICovXG4gIEBPdXRwdXQoKSBmb2N1c09uTmV4dCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgT3V0cHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBbiBldmVudCB0aGF0IGlzIGZpcmVkIGV2ZXJ5IHRpbWUgYSBwYXNzZW5nZXIgc2VsZWN0aW9uIGNoYW5nZSBpcyBwZXJmb3JtZWQuXG4gICovXG4gIEBPdXRwdXQoKSBmb2N1c09uUHJldmlvdXMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcignbmFzLXBhc3Nlbmdlci1zZWxlY3QtbmV3Jyk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldFRvdGFsQ291bnQoKTtcbiAgfVxuXG4gIGdldExhYmVsKHR5cGU6IFBhc3NlbmdlclR5cGUpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSBQYXNzZW5nZXJUeXBlLkFkdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5hZHVsdHNMYWJlbDtcbiAgICAgIGNhc2UgUGFzc2VuZ2VyVHlwZS5DaGlsZDpcbiAgICAgICAgcmV0dXJuIHRoaXMuY2hpbGRyZW5MYWJlbDtcbiAgICAgIGNhc2UgUGFzc2VuZ2VyVHlwZS5JbmZhbnQ6XG4gICAgICAgIHJldHVybiB0aGlzLmluZmFudHNMYWJlbDtcbiAgICAgIGNhc2UgUGFzc2VuZ2VyVHlwZS5Zb3V0aDpcbiAgICAgICAgcmV0dXJuIHRoaXMueW91dGhzTGFiZWw7XG4gICAgICBjYXNlIFBhc3NlbmdlclR5cGUuWW91bmdBZHVsdDpcbiAgICAgICAgcmV0dXJuIHRoaXMueW91bmdBZHVsdHNMYWJlbDtcbiAgICB9XG4gIH1cblxuICBrZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50LCBpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICBpZiAoaW5kZXggPT09IHRoaXMucGFzc2VuZ2Vycy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgdGhpcy5udW1iZXJGaWVsZHMuZmlyc3QuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMubnVtYmVyRmllbGRzLnRvQXJyYXkoKVtpbmRleCArIDFdLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0Fycm93VXAnOlxuICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgICAgICB0aGlzLm51bWJlckZpZWxkcy50b0FycmF5KClbdGhpcy5wYXNzZW5nZXJzLmxlbmd0aCAtIDFdLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLm51bWJlckZpZWxkcy50b0FycmF5KClbaW5kZXggLSAxXS5pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdUYWInOlxuICAgICAgICBpZiAoIWV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgICAgdGhpcy5mb2N1c09uTmV4dC5lbWl0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAoZXZlbnQuc2hpZnRLZXkpIHtcbiAgICAgICAgICB0aGlzLmZvY3VzT25QcmV2aW91cy5lbWl0KCk7XG4gICAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzZXRQYXNzZW5nZXJzQ291bnQocGFzc2VuZ2VyczogUGFzc2VuZ2Vyc01vZGVsLCBjb3VudDogbnVtYmVyKTogdm9pZCB7XG4gICAgcGFzc2VuZ2Vycy5jb3VudCA9IGNvdW50O1xuXG4gICAgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5BZHVsdCkge1xuICAgICAgaWYgKHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLkluZmFudCkpIHtcbiAgICAgICAgY29uc3QgaW5mYW50c0NvdW50ID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuSW5mYW50KS5jb3VudDtcbiAgICAgICAgaWYgKGluZmFudHNDb3VudCA+IHBhc3NlbmdlcnMuY291bnQgJiYgdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuSW5mYW50KSkge1xuICAgICAgICAgIGNvbnN0IGluZmFudCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLkluZmFudCk7XG5cbiAgICAgICAgICBpZiAoaW5mYW50KSB7XG4gICAgICAgICAgICBpbmZhbnQuY291bnQgPSBwYXNzZW5nZXJzLmNvdW50O1xuXG4gICAgICAgICAgICBpZiAoaW5mYW50LmZvcm1Hcm91cCAmJiBpbmZhbnQuZm9ybUNvbnRyb2xOYW1lKSB7XG4gICAgICAgICAgICAgIGluZmFudC5mb3JtR3JvdXAuZ2V0KGluZmFudC5mb3JtQ29udHJvbE5hbWUpLnBhdGNoVmFsdWUoaW5mYW50LmNvdW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgeW91bmdBZHVsdCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdW5nQWR1bHQpO1xuICAgICAgY29uc3QgY2hpbGQgPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5DaGlsZCk7XG4gICAgICBpZiAoeW91bmdBZHVsdCAmJiBjaGlsZCkge1xuICAgICAgICBpZiAoIHBhc3NlbmdlcnMuY291bnQgPT09IDAgJiYgY2hpbGQpIHtcblxuICAgICAgICAgIGlmIChjaGlsZCkge1xuICAgICAgICAgICAgY2hpbGQuY291bnQgPSAwO1xuXG4gICAgICAgICAgICBpZiAoY2hpbGQuZm9ybUdyb3VwICYmIGNoaWxkLmZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICAgICAgICBjaGlsZC5mb3JtR3JvdXAuZ2V0KGNoaWxkLmZvcm1Db250cm9sTmFtZSkucGF0Y2hWYWx1ZSgwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdXRoKSB7XG4gICAgICBpZiAodGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuSW5mYW50KSkge1xuICAgICAgICBjb25zdCBpbmZhbnRzQ291bnQgPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5JbmZhbnQpLmNvdW50O1xuICAgICAgICBpZiAoaW5mYW50c0NvdW50ID4gcGFzc2VuZ2Vycy5jb3VudCAmJiB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5JbmZhbnQpKSB7XG4gICAgICAgICAgY29uc3QgaW5mYW50ID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuSW5mYW50KTtcblxuICAgICAgICAgIGlmIChpbmZhbnQpIHtcbiAgICAgICAgICAgIGluZmFudC5jb3VudCA9IHBhc3NlbmdlcnMuY291bnQ7XG5cbiAgICAgICAgICAgIGlmIChpbmZhbnQuZm9ybUdyb3VwICYmIGluZmFudC5mb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgICAgICAgICAgaW5mYW50LmZvcm1Hcm91cC5nZXQoaW5mYW50LmZvcm1Db250cm9sTmFtZSkucGF0Y2hWYWx1ZShpbmZhbnQuY291bnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuQWR1bHQgfHwgcGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdXRoKSB7XG4gICAgICBjb25zdCBhZHVsdCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLkFkdWx0KTtcbiAgICAgIGNvbnN0IHlvdXRoID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91dGgpO1xuXG4gICAgICBpZiAoYWR1bHQgJiYgeW91dGgpIHtcbiAgICAgICAgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5BZHVsdCAmJiBhZHVsdC5jb3VudCA+IDApIHtcbiAgICAgICAgICBpZiAoeW91dGguZm9ybUdyb3VwICYmIHlvdXRoLmZvcm1Db250cm9sTmFtZSAmJiB5b3V0aC5jb3VudCAhPT0gMCkge1xuICAgICAgICAgICAgeW91dGguZm9ybUdyb3VwLmdldCh5b3V0aC5mb3JtQ29udHJvbE5hbWUpLnBhdGNoVmFsdWUoMCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHlvdXRoLmNvdW50ID0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91dGgpIHtcbiAgICAgICAgICBhZHVsdC5jb3VudCA9IHlvdXRoLmNvdW50ID4gMCA/IDAgOiBhZHVsdC5jb3VudDtcblxuICAgICAgICAgIGlmIChhZHVsdC5mb3JtR3JvdXAgJiYgYWR1bHQuZm9ybUNvbnRyb2xOYW1lICYmIHlvdXRoLmZvcm1Hcm91cCAmJiB5b3V0aC5mb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLm1pbkFkdWx0Q291bnQgJiYgeW91dGguY291bnQgPT09IDApIHtcbiAgICAgICAgICAgICAgYWR1bHQuZm9ybUdyb3VwLmdldChhZHVsdC5mb3JtQ29udHJvbE5hbWUpLnBhdGNoVmFsdWUodGhpcy5taW5BZHVsdENvdW50KTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoeW91dGguY291bnQgPiAwKSB7XG4gICAgICAgICAgICAgIGFkdWx0LmZvcm1Hcm91cC5nZXQoYWR1bHQuZm9ybUNvbnRyb2xOYW1lKS5wYXRjaFZhbHVlKDApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91bmdBZHVsdCB8fCBwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91dGgpIHtcbiAgICAgIGNvbnN0IHlvdW5nQWR1bHQgPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3VuZ0FkdWx0KTtcbiAgICAgIGNvbnN0IHlvdXRoID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91dGgpO1xuXG4gICAgICBpZiAoeW91bmdBZHVsdCAmJiB5b3V0aCkge1xuICAgICAgICBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdXRoICYmIHlvdXRoLmNvdW50ID4gMCkge1xuICAgICAgICAgIGlmICh5b3VuZ0FkdWx0LmZvcm1Hcm91cCAmJiB5b3V0aC5mb3JtQ29udHJvbE5hbWUgJiYgeW91bmdBZHVsdC5jb3VudCAhPT0gMCkge1xuICAgICAgICAgICAgeW91bmdBZHVsdC5mb3JtR3JvdXAuZ2V0KHlvdXRoLmZvcm1Db250cm9sTmFtZSkucGF0Y2hWYWx1ZSgwKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgeW91bmdBZHVsdC5jb3VudCA9IDA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdW5nQWR1bHQpIHtcbiAgICAgICAgICB5b3V0aC5jb3VudCA9IHlvdW5nQWR1bHQuY291bnQgPiAwID8gMCA6IHlvdXRoLmNvdW50O1xuXG4gICAgICAgICAgaWYgKHlvdXRoLmZvcm1Hcm91cCAmJiB5b3V0aC5mb3JtQ29udHJvbE5hbWUgJiYgeW91bmdBZHVsdC5mb3JtR3JvdXAgJiYgeW91bmdBZHVsdC5mb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLm1pbkFkdWx0Q291bnQgJiYgeW91bmdBZHVsdC5jb3VudCA9PT0gMCkge1xuICAgICAgICAgICAgICB5b3V0aC5mb3JtR3JvdXAuZ2V0KHlvdXRoLmZvcm1Db250cm9sTmFtZSkucGF0Y2hWYWx1ZSh0aGlzLm1pbkFkdWx0Q291bnQpO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh5b3V0aC5jb3VudCA+IDApIHtcbiAgICAgICAgICAgICAgeW91dGguZm9ybUdyb3VwLmdldCh5b3V0aC5mb3JtQ29udHJvbE5hbWUpLnBhdGNoVmFsdWUoMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5zZXRUb3RhbENvdW50KCk7XG4gICAgdGhpcy5wYXNzZW5nZXJzQ2hhbmdlLmVtaXQodGhpcy5wYXNzZW5nZXJzKTtcbiAgfVxuXG4gIGdldE1heChwYXNzZW5nZXJzOiBQYXNzZW5nZXJzTW9kZWwpOiBudW1iZXIge1xuICAgIGlmKHBhc3NlbmdlcnM/LmRpc2FibGVkKSB7XG4gICAgICByZXR1cm4gcGFzc2VuZ2Vycz8uY291bnQ7XG4gICAgfVxuXG4gICAgY29uc3QgYWR1bHRzID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuQWR1bHQpO1xuICAgIGNvbnN0IHlvdXRocyA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdXRoKTtcbiAgICBjb25zdCB5b3VuZ0FkdWx0ID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91bmdBZHVsdCk7XG5cbiAgICBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLkluZmFudCkge1xuICAgICAgaWYgKGFkdWx0cyAmJiBhZHVsdHMuY291bnQgPiAwKSB7XG4gICAgICAgIGlmICghYWR1bHRzLmZvcm1Hcm91cCB8fCAhYWR1bHRzLmZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICAgIHJldHVybiBhZHVsdHMuY291bnQ7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBhZHVsdHNGb3JtQ29udHJvbCA9IGFkdWx0cy5mb3JtR3JvdXAuZ2V0KGFkdWx0cy5mb3JtQ29udHJvbE5hbWUpO1xuXG4gICAgICAgIGlmICghYWR1bHRzRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgICByZXR1cm4gYWR1bHRzLmNvdW50O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGFkdWx0c0Zvcm1Db250cm9sLnZhbHVlIGFzIG51bWJlcjtcbiAgICAgIH1cblxuICAgICAgaWYgKHlvdXRocyAmJiB5b3V0aHMuY291bnQgPiAwKSB7XG4gICAgICAgIGlmICgheW91dGhzLmZvcm1Hcm91cCB8fCAheW91dGhzLmZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICAgIHJldHVybiB5b3V0aHMuY291bnQ7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB5b3V0aHNGb3JtQ29udHJvbCA9IHlvdXRocy5mb3JtR3JvdXAuZ2V0KHlvdXRocy5mb3JtQ29udHJvbE5hbWUpO1xuXG4gICAgICAgIGlmICgheW91dGhzRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgICByZXR1cm4geW91dGhzLmNvdW50O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHlvdXRoc0Zvcm1Db250cm9sLnZhbHVlIGFzIG51bWJlcjtcbiAgICAgIH1cblxuICAgICAgaWYgKHlvdW5nQWR1bHQgJiYgKGFkdWx0cyAmJiBhZHVsdHMuY291bnQgPD0gMCkpIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICB9XG5cbiAgICAgIGlmICh5b3VuZ0FkdWx0ICYmICh5b3V0aHMgJiYgeW91dGhzLmNvdW50IDw9IDApKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gMDtcblxuICAgIH0gZWxzZSBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLkNoaWxkICYmIHRoaXMudG90YWxDb3VudCA8IHRoaXMubWF4UGF4Q291bnQpIHsgXG4gICAgICBpZiAoYWR1bHRzICYmIHlvdW5nQWR1bHQpIHtcbiAgICAgICAgaWYgKGFkdWx0cy5jb3VudCA8PSAwKSB7XG4gICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmICh5b3V0aHMgJiYgeW91bmdBZHVsdCkge1xuICAgICAgICBpZiAoeW91dGhzLmNvdW50IDw9IDApIHtcbiAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGhpcy50b3RhbENvdW50ID49IHRoaXMubWF4UGF4Q291bnQpIHtcblxuICAgICAgaWYgKCFwYXNzZW5nZXJzLmZvcm1Hcm91cCB8fCAhcGFzc2VuZ2Vycy5mb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgICAgcmV0dXJuIHBhc3NlbmdlcnMuY291bnQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHBhc3NlbmdlcnNGb3JtQ29udHJvbCA9IHBhc3NlbmdlcnMuZm9ybUdyb3VwLmdldChwYXNzZW5nZXJzLmZvcm1Db250cm9sTmFtZSk7XG5cbiAgICAgIGlmICghcGFzc2VuZ2Vyc0Zvcm1Db250cm9sKSB7XG4gICAgICAgIHJldHVybiBwYXNzZW5nZXJzLmNvdW50O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFzc2VuZ2Vyc0Zvcm1Db250cm9sLnZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5tYXhQYXhDb3VudDtcbiAgICB9XG4gIH1cblxuICBnZXRNaW4ocGFzc2VuZ2VyczogUGFzc2VuZ2Vyc01vZGVsKTogbnVtYmVyIHtcbiAgICBpZiAocGFzc2VuZ2Vycz8uZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybiBwYXNzZW5nZXJzPy5jb3VudDtcbiAgICB9XG4gICAgY29uc3QgYWR1bHQgPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5BZHVsdCk7XG4gICAgY29uc3QgeW91dGggPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3V0aCk7XG4gICAgY29uc3QgeW91bmdBZHVsdCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdW5nQWR1bHQpO1xuXG4gICAgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5BZHVsdCAmJiB5b3V0aCkge1xuICAgICAgY29uc3QgbWluID0gIXRoaXMubWluQWR1bHRDb3VudCA/IDAgOiB0aGlzLm1pbkFkdWx0Q291bnQ7XG4gICAgICBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLkFkdWx0ICYmIGFkdWx0LmNvdW50IDwgbWluICYmIHlvdXRoLmNvdW50ID09PSAwKSB7XG4gICAgICAgIHBhc3NlbmdlcnMuY291bnQgPSBtaW47XG4gICAgICAgIHJldHVybiBtaW47XG4gICAgICB9XG4gICAgICBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLkFkdWx0ICYmIGFkdWx0LmZvcm1Hcm91cCAmJiBhZHVsdC5mb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgICAgcmV0dXJuIG1pbjtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3V0aCAmJiB5b3VuZ0FkdWx0KSB7XG4gICAgICBjb25zdCBtaW4gPSAhdGhpcy5taW5BZHVsdENvdW50ID8gMCA6IHRoaXMubWluQWR1bHRDb3VudDtcbiAgICAgIGlmIChwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91dGggJiYgeW91dGguY291bnQgPCBtaW4gJiYgeW91bmdBZHVsdC5jb3VudCA9PT0gMCkge1xuICAgICAgICBwYXNzZW5nZXJzLmNvdW50ID0gbWluO1xuICAgICAgICByZXR1cm4gbWluO1xuICAgICAgfVxuICAgICAgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3V0aCAmJiB5b3V0aC5mb3JtR3JvdXAgJiYgeW91dGguZm9ybUNvbnRyb2xOYW1lKSB7XG4gICAgICAgIHJldHVybiBtaW47XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICghYWR1bHQgJiYgcGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdXRoKSB7XG4gICAgICBjb25zdCBtaW4gPSAhdGhpcy5taW5BZHVsdENvdW50ID8gMCA6IHRoaXMubWluQWR1bHRDb3VudDtcbiAgICAgIHJldHVybiBtaW47XG4gICAgfSBlbHNlIGlmIChwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuQWR1bHQgJiYgeW91bmdBZHVsdCkge1xuICAgICAgaWYgKHlvdW5nQWR1bHQuY291bnQgPiAwKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMubWluQWR1bHRDb3VudDtcbiAgICB9IGVsc2UgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3VuZ0FkdWx0ICYmIGFkdWx0KSB7XG4gICAgICBpZiAoYWR1bHQuY291bnQgPiAwKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMubWluQWR1bHRDb3VudDtcbiAgICB9ICBlbHNlIGlmIChwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuQWR1bHQpIHtcbiAgICAgIHJldHVybiB0aGlzLm1pbkFkdWx0Q291bnQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICBwcml2YXRlIHNldFRvdGFsQ291bnQoKSB7XG4gICAgY29uc3QgYWR1bHQgPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5BZHVsdCk7XG4gICAgY29uc3QgeW91dGggPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3V0aCk7XG4gICAgY29uc3QgeW91bmdBZHVsdCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdW5nQWR1bHQpO1xuICAgIGNvbnN0IGNoaWxkID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuQ2hpbGQpO1xuXG4gICAgbGV0IGFkdWx0Q291bnQgPSAwO1xuICAgIGxldCB5b3V0aENvdW50ID0gMDtcbiAgICBsZXQgeW91bmdBZHVsdENvdW50ID0gMDtcbiAgICBsZXQgY2hpbGRDb3VudCA9IDA7XG5cbiAgICBpZiAoYWR1bHQpIHtcblxuICAgICAgaWYgKCFhZHVsdC5mb3JtR3JvdXAgfHwgIWFkdWx0LmZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICBhZHVsdENvdW50ID0gYWR1bHQuY291bnQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBhZHVsdHNDb250cm9sID0gYWR1bHQuZm9ybUdyb3VwLmdldChhZHVsdC5mb3JtQ29udHJvbE5hbWUpO1xuXG4gICAgICAgIGlmICghYWR1bHRzQ29udHJvbCkge1xuICAgICAgICAgIGFkdWx0Q291bnQgPSBhZHVsdC5jb3VudDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBhZHVsdENvdW50ID0gYWR1bHRzQ29udHJvbC52YWx1ZSBhcyBudW1iZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoeW91dGgpIHtcbiAgICAgIGlmICgheW91dGguZm9ybUdyb3VwIHx8ICF5b3V0aC5mb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgICAgeW91dGhDb3VudCA9IHlvdXRoLmNvdW50O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgeW91dGhzQ29udHJvbCA9IHlvdXRoLmZvcm1Hcm91cC5nZXQoeW91dGguZm9ybUNvbnRyb2xOYW1lKTtcblxuICAgICAgICBpZiAoIXlvdXRoc0NvbnRyb2wpIHtcbiAgICAgICAgICB5b3V0aENvdW50ID0geW91dGguY291bnQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgeW91dGhDb3VudCA9IHlvdXRoc0NvbnRyb2wudmFsdWUgYXMgbnVtYmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHlvdW5nQWR1bHQpIHtcbiAgICAgIGlmICgheW91bmdBZHVsdC5mb3JtR3JvdXAgfHwgIXlvdW5nQWR1bHQuZm9ybUNvbnRyb2xOYW1lKSB7XG4gICAgICAgIHlvdW5nQWR1bHRDb3VudCA9IHlvdW5nQWR1bHQuY291bnQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB5b3VuZ0FkdWx0c0NvbnRyb2wgPSB5b3VuZ0FkdWx0LmZvcm1Hcm91cC5nZXQoeW91bmdBZHVsdC5mb3JtQ29udHJvbE5hbWUpO1xuXG4gICAgICAgIGlmICgheW91bmdBZHVsdHNDb250cm9sKSB7XG4gICAgICAgICAgeW91bmdBZHVsdENvdW50ID0geW91bmdBZHVsdC5jb3VudDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB5b3VuZ0FkdWx0Q291bnQgPSB5b3VuZ0FkdWx0c0NvbnRyb2wudmFsdWUgYXMgbnVtYmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGNoaWxkKSB7XG4gICAgICBpZiAoIWNoaWxkLmZvcm1Hcm91cCB8fCAhY2hpbGQuZm9ybUNvbnRyb2xOYW1lKSB7XG4gICAgICAgIGNoaWxkQ291bnQgPSBjaGlsZC5jb3VudDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGNoaWxkc0NvbnRyb2wgPSBjaGlsZC5mb3JtR3JvdXAuZ2V0KGNoaWxkLmZvcm1Db250cm9sTmFtZSk7XG5cbiAgICAgICAgaWYgKCFjaGlsZHNDb250cm9sKSB7XG4gICAgICAgICAgY2hpbGRDb3VudCA9IGNoaWxkLmNvdW50O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNoaWxkQ291bnQgPSBjaGlsZHNDb250cm9sLnZhbHVlIGFzIG51bWJlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMudG90YWxDb3VudCA9IGFkdWx0Q291bnQgKyBjaGlsZENvdW50ICsgeW91dGhDb3VudCArIHlvdW5nQWR1bHRDb3VudDtcblxuICAgIGlmICh0aGlzLm5hc0Zvcm1Hcm91cCAmJiB0aGlzLm5hc0Zvcm1Db250cm9sR3JvdXBCb29raW5nKSB7XG4gICAgICBjb25zdCBncm91cEJvb2tpbmdDb250cm9sID0gdGhpcy5uYXNGb3JtR3JvdXAuZ2V0KHRoaXMubmFzRm9ybUNvbnRyb2xHcm91cEJvb2tpbmcpO1xuXG4gICAgICB0aGlzLmlzR3JvdXBCb29raW5nID0gdGhpcy50b3RhbENvdW50ID49IHRoaXMuZ3JvdXBCb29raW5nTGltaXQ7XG5cbiAgICAgIGlmICh0aGlzLmdyb3VwQm9va2luZ0xpbWl0IDwgMSkge1xuICAgICAgICB0aGlzLmlzR3JvdXBCb29raW5nID0gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIGlmIChncm91cEJvb2tpbmdDb250cm9sLnZhbHVlICE9PSB0aGlzLmlzR3JvdXBCb29raW5nKSB7XG4gICAgICAgIGdyb3VwQm9va2luZ0NvbnRyb2wucGF0Y2hWYWx1ZSh0aGlzLmlzR3JvdXBCb29raW5nKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMuZ3JvdXBCb29raW5nTGltaXQpIHtcbiAgICAgIHRoaXMuaXNHcm91cEJvb2tpbmcgPSB0aGlzLnRvdGFsQ291bnQgPj0gdGhpcy5ncm91cEJvb2tpbmdMaW1pdDtcbiAgICB9XG5cbiAgfVxuXG59XG4iLCI8aDIgKm5nSWY9XCJ0aXRsZSB8fCBpc0dyb3VwQm9va2luZ1wiIFtuYXNDbGFzc109XCJnZXRDbGFzcygndGl0bGUnKVwiPlxuICAgIDxzcGFuICpuZ0lmPVwidGl0bGVcIj57e3RpdGxlfX08L3NwYW4+XG4gICAgPHNwYW4gKm5nSWY9XCJpc0dyb3VwQm9va2luZ1wiIFtuYXNDbGFzc109XCJnZXRDbGFzcygndGl0bGUtLWdyb3VwLWJvb2tpbmcnKVwiPnt7Z3JvdXBCb29raW5nTGFiZWx9fTwvc3Bhbj5cbjwvaDI+XG48dWwgW25hc0NsYXNzXT1cImdldENsYXNzKCdsaXN0JylcIj5cbiAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIHBhc3NlbmdlcnM7IGluZGV4IGFzIGNvdW50XCJcbiAgICBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ2xpc3QtaXRlbScpXCI+XG4gICAgPGxhYmVsIFtuYXNDbGFzc109XCJnZXRDbGFzcygnbGFiZWwnKVwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImdldExhYmVsKGl0ZW0udHlwZSlcIj57e2dldExhYmVsKGl0ZW0udHlwZSl9fTwvbGFiZWw+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmZvcm1Hcm91cCB8fCAhaXRlbS5mb3JtQ29udHJvbE5hbWU7IGVsc2UgcmVhY3RpdmVGb3JtXCI+XG4gICAgICA8bmFzLW51bWJlci1maWVsZC1uZXcgY29tcGFjdFxuICAgICAgICBzcGFjZWxlc3NcbiAgICAgICAgc2ltcGxlXG4gICAgICAgIFthcmlhTGFiZWxdPVwiZ2V0TGFiZWwoaXRlbS50eXBlKVwiXG4gICAgICAgIFthcmlhTGFiZWxTdWJ0cmFjdF09XCJhcmlhTGFiZWxTdWJ0cmFjdFwiXG4gICAgICAgIFthcmlhTGFiZWxBZGRdPVwiYXJpYUxhYmVsQWRkXCJcbiAgICAgICAgW251bWJlcl09XCJpdGVtLmNvdW50XCJcbiAgICAgICAgW21heF09XCJnZXRNYXgoaXRlbSlcIlxuICAgICAgICBbbWluXT1cImdldE1pbihpdGVtKVwiXG4gICAgICAgIChudW1iZXJDaGFuZ2UpPVwic2V0UGFzc2VuZ2Vyc0NvdW50KGl0ZW0sICRldmVudClcIlxuICAgICAgICAoa2V5ZG93bik9XCJrZXlEb3duKCRldmVudCwgY291bnQpXCI+PC9uYXMtbnVtYmVyLWZpZWxkLW5ldz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI3JlYWN0aXZlRm9ybT5cbiAgICAgIDxuYXMtbnVtYmVyLWZpZWxkLW5ldyBjb21wYWN0XG4gICAgICAgIHNwYWNlbGVzc1xuICAgICAgICBzaW1wbGVcbiAgICAgICAgW2FyaWFMYWJlbF09XCJnZXRMYWJlbChpdGVtLnR5cGUpXCJcbiAgICAgICAgW2FyaWFMYWJlbFN1YnRyYWN0XT1cImFyaWFMYWJlbFN1YnRyYWN0XCJcbiAgICAgICAgW2FyaWFMYWJlbEFkZF09XCJhcmlhTGFiZWxBZGRcIlxuICAgICAgICBbbmFzRm9ybUdyb3VwXT1cIml0ZW0uZm9ybUdyb3VwXCJcbiAgICAgICAgW25hc0Zvcm1Db250cm9sTmFtZV09XCJpdGVtLmZvcm1Db250cm9sTmFtZVwiXG4gICAgICAgIFtudW1iZXJdPVwiaXRlbS5mb3JtR3JvdXA/LmdldChpdGVtLmZvcm1Db250cm9sTmFtZSk/LnZhbHVlXCJcbiAgICAgICAgW21heF09XCJnZXRNYXgoaXRlbSlcIlxuICAgICAgICBbbWluXT1cImdldE1pbihpdGVtKVwiXG4gICAgICAgIChrZXlkb3duKT1cImtleURvd24oJGV2ZW50LCBjb3VudClcIlxuICAgICAgICAobnVtYmVyQ2hhbmdlKT1cInNldFBhc3NlbmdlcnNDb3VudChpdGVtLCAkZXZlbnQpXCI+PC9uYXMtbnVtYmVyLWZpZWxkLW5ldz5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2xpPlxuPC91bD4iXX0=
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { NasClassModule } from '../../core/directives/nas-class/nas-class.module';
|
|
4
|
-
import { PassengerSelectNewComponent } from './passenger-select-new.component';
|
|
5
|
-
import { NumberFieldNewModule } from '../number-field-new/number-field-new.module';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class PassengerSelectNewModule {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: PassengerSelectNewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.5", ngImport: i0, type: PassengerSelectNewModule, declarations: [PassengerSelectNewComponent], imports: [CommonModule,
|
|
10
|
-
NumberFieldNewModule,
|
|
11
|
-
NasClassModule], exports: [PassengerSelectNewComponent] }); }
|
|
12
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: PassengerSelectNewModule, imports: [CommonModule,
|
|
13
|
-
NumberFieldNewModule,
|
|
14
|
-
NasClassModule] }); }
|
|
15
|
-
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: PassengerSelectNewModule, decorators: [{
|
|
17
|
-
type: NgModule,
|
|
18
|
-
args: [{
|
|
19
|
-
imports: [
|
|
20
|
-
CommonModule,
|
|
21
|
-
NumberFieldNewModule,
|
|
22
|
-
NasClassModule
|
|
23
|
-
],
|
|
24
|
-
declarations: [PassengerSelectNewComponent],
|
|
25
|
-
exports: [PassengerSelectNewComponent]
|
|
26
|
-
}]
|
|
27
|
-
}] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc2VuZ2VyLXNlbGVjdC1uZXcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9wYXNzZW5nZXItc2VsZWN0LW5ldy9wYXNzZW5nZXItc2VsZWN0LW5ldy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2xGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOztBQVduRixNQUFNLE9BQU8sd0JBQXdCOzhHQUF4Qix3QkFBd0I7K0dBQXhCLHdCQUF3QixpQkFIcEIsMkJBQTJCLGFBSnhDLFlBQVk7WUFDWixvQkFBb0I7WUFDcEIsY0FBYyxhQUdOLDJCQUEyQjsrR0FFMUIsd0JBQXdCLFlBUGpDLFlBQVk7WUFDWixvQkFBb0I7WUFDcEIsY0FBYzs7MkZBS0wsd0JBQXdCO2tCQVRwQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG9CQUFvQjt3QkFDcEIsY0FBYztxQkFDZjtvQkFDRCxZQUFZLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztvQkFDM0MsT0FBTyxFQUFFLENBQUMsMkJBQTJCLENBQUM7aUJBQ3ZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOYXNDbGFzc01vZHVsZSB9IGZyb20gJy4uLy4uL2NvcmUvZGlyZWN0aXZlcy9uYXMtY2xhc3MvbmFzLWNsYXNzLm1vZHVsZSc7XG5pbXBvcnQgeyBQYXNzZW5nZXJTZWxlY3ROZXdDb21wb25lbnQgfSBmcm9tICcuL3Bhc3Nlbmdlci1zZWxlY3QtbmV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOdW1iZXJGaWVsZE5ld01vZHVsZSB9IGZyb20gJy4uL251bWJlci1maWVsZC1uZXcvbnVtYmVyLWZpZWxkLW5ldy5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE51bWJlckZpZWxkTmV3TW9kdWxlLFxuICAgIE5hc0NsYXNzTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1Bhc3NlbmdlclNlbGVjdE5ld0NvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtQYXNzZW5nZXJTZWxlY3ROZXdDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIFBhc3NlbmdlclNlbGVjdE5ld01vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './radio-new.component';
|
|
2
|
-
export * from './radio-new.module';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3JhZGlvLW5ldy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3JhZGlvLW5ldy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9yYWRpby1uZXcubW9kdWxlJztcbiJdfQ==
|