@norwegian/core-components 7.17.2 → 8.0.1

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.
Files changed (622) hide show
  1. package/README.md +3 -3
  2. package/assets/documentation/accordion/accordion.md +1 -1
  3. package/assets/documentation/airport-select/airport-select.md +1 -0
  4. package/assets/documentation/alert/alert.md +1 -0
  5. package/assets/documentation/autocomplete/autocomplete.md +1 -1
  6. package/assets/documentation/backdrop/backdrop.md +1 -0
  7. package/assets/documentation/box/box.md +1 -1
  8. package/assets/documentation/button/button.md +1 -10
  9. package/assets/documentation/checkbox/checkbox.md +1 -7
  10. package/assets/documentation/container/container.md +1 -1
  11. package/assets/documentation/continue/continue.md +2 -1
  12. package/assets/documentation/cover/cover.md +1 -1
  13. package/assets/documentation/datepicker/datepicker.md +1 -3
  14. package/assets/documentation/datepicker-combo/datepicker-combo.md +2 -1
  15. package/assets/documentation/divider/divider.md +1 -1
  16. package/assets/documentation/dropdown/dropdown.md +1 -3
  17. package/assets/documentation/filter/filter.md +1 -0
  18. package/assets/documentation/grid/grid.md +1 -1
  19. package/assets/documentation/icon/icon.md +1 -1
  20. package/assets/documentation/icon-list/icon-list.md +1 -1
  21. package/assets/documentation/input/input.md +1 -1
  22. package/assets/documentation/journey/journey.md +2 -1
  23. package/assets/documentation/journey-availability/journey-availability.md +1 -3
  24. package/assets/documentation/journey-availability-list/journey-availability-list.md +1 -9
  25. package/assets/documentation/journey-selection/journey-selection.md +1 -1
  26. package/assets/documentation/journey-stopover/journey-stopover.md +2 -1
  27. package/assets/documentation/list/list.md +1 -1
  28. package/assets/documentation/micro-button/micro-button.md +2 -0
  29. package/assets/documentation/modal/modal.md +1 -0
  30. package/assets/documentation/number-field/number-field.md +1 -1
  31. package/assets/documentation/page-footer/page-footer.md +1 -1
  32. package/assets/documentation/page-header/page-header.md +1 -1
  33. package/assets/documentation/passenger-select/passenger-select.md +1 -1
  34. package/assets/documentation/phone-number/phone-number.md +1 -2
  35. package/assets/documentation/premium-toggle/premium-toggle.md +1 -9
  36. package/assets/documentation/radio/radio.md +1 -7
  37. package/assets/documentation/ribbon-banner/ribbon-banner.md +2 -1
  38. package/assets/documentation/select/select.md +1 -1
  39. package/assets/documentation/simple-list/simple-list.md +1 -1
  40. package/assets/documentation/slide-toggle/slide-toggle.md +1 -1
  41. package/assets/documentation/slider/slider.md +1 -1
  42. package/assets/documentation/sort/sort.md +1 -1
  43. package/assets/documentation/spinner/spinner.md +1 -1
  44. package/assets/documentation/status-box/status-box.md +2 -1
  45. package/assets/documentation/suggestions/suggestions.md +2 -1
  46. package/assets/documentation/tab-group/tab-group.md +1 -1
  47. package/assets/documentation/table/table.md +1 -8
  48. package/assets/documentation/tag/tag.md +1 -0
  49. package/assets/documentation/textarea/textarea.md +1 -1
  50. package/assets/documentation/toggle/toggle.md +1 -5
  51. package/assets/documentation/tooltip/tooltip.md +1 -0
  52. package/assets/documentation/trip-summary/trip-summary.md +1 -2
  53. package/fesm2022/norwegian-core-components.mjs +13636 -13565
  54. package/fesm2022/norwegian-core-components.mjs.map +1 -1
  55. package/index.d.ts +9449 -5
  56. package/package.json +14 -8
  57. package/styles/1__settings/_colors.scss +9 -9
  58. package/styles/1__settings/_mixins.scss +67 -40
  59. package/styles/1__settings/_type.scss +18 -6
  60. package/styles/1__settings/_vars.scss +7 -4
  61. package/styles/2__generic/_fonts.scss +7 -5
  62. package/styles/3__base/_animations.scss +84 -84
  63. package/styles/3__base/_body.scss +10 -8
  64. package/styles/3__base/_fixes.scss +1 -1
  65. package/styles/3__base/_form.scss +5 -3
  66. package/styles/3__base/_heading.scss +21 -12
  67. package/styles/3__base/_hr.scss +4 -0
  68. package/styles/3__base/_input.scss +5 -1
  69. package/styles/3__base/_link.scss +3 -0
  70. package/styles/3__base/_table.scss +8 -4
  71. package/styles/3__base/_type.scss +17 -13
  72. package/styles/_helpers.scss +4 -4
  73. package/styles/_index.scss +13 -13
  74. package/assets/documentation/campaign-header/campaign-header.md +0 -0
  75. package/assets/documentation/chip/chip.md +0 -1
  76. package/assets/documentation/info/info.md +0 -1
  77. package/assets/icons/small/info--light--light.svg +0 -4
  78. package/assets/images/logo--mobile.svg +0 -50
  79. package/assets/images/logo-reward.svg +0 -140
  80. package/assets/images/logo.svg +0 -135
  81. package/esm2022/lib/components/accordion/accordion.component.mjs +0 -163
  82. package/esm2022/lib/components/accordion/accordion.module.mjs +0 -20
  83. package/esm2022/lib/components/accordion/index.mjs +0 -3
  84. package/esm2022/lib/components/airport-select/airport-select-dropdown/airport-select-dropdown.component.mjs +0 -622
  85. package/esm2022/lib/components/airport-select/airport-select.component.mjs +0 -498
  86. package/esm2022/lib/components/airport-select/airport-select.module.mjs +0 -42
  87. package/esm2022/lib/components/airport-select/index.mjs +0 -7
  88. package/esm2022/lib/components/airport-select/models/airport-select-event.model.mjs +0 -2
  89. package/esm2022/lib/components/airport-select/models/airport-select-state.model.mjs +0 -2
  90. package/esm2022/lib/components/airport-select/models/airport.model.mjs +0 -2
  91. package/esm2022/lib/components/airport-select/models/results-labels.model.mjs +0 -3
  92. package/esm2022/lib/components/airport-select/services/airport-select-dropdown.service.mjs +0 -35
  93. package/esm2022/lib/components/airport-select/services/airport-select.service.mjs +0 -38
  94. package/esm2022/lib/components/alert/alert.component.mjs +0 -169
  95. package/esm2022/lib/components/alert/alert.module.mjs +0 -22
  96. package/esm2022/lib/components/alert/index.mjs +0 -4
  97. package/esm2022/lib/components/alert/models/alert.model.mjs +0 -2
  98. package/esm2022/lib/components/autocomplete/autocomplete.component.mjs +0 -318
  99. package/esm2022/lib/components/autocomplete/autocomplete.module.mjs +0 -43
  100. package/esm2022/lib/components/autocomplete/index.mjs +0 -4
  101. package/esm2022/lib/components/autocomplete/models/autocomplete.model.mjs +0 -2
  102. package/esm2022/lib/components/backdrop/backdrop.component.mjs +0 -58
  103. package/esm2022/lib/components/backdrop/backdrop.module.mjs +0 -19
  104. package/esm2022/lib/components/backdrop/index.mjs +0 -3
  105. package/esm2022/lib/components/box/box.component.mjs +0 -66
  106. package/esm2022/lib/components/box/box.module.mjs +0 -19
  107. package/esm2022/lib/components/box/index.mjs +0 -3
  108. package/esm2022/lib/components/button/button.component.mjs +0 -192
  109. package/esm2022/lib/components/button/button.module.mjs +0 -21
  110. package/esm2022/lib/components/button/index.mjs +0 -3
  111. package/esm2022/lib/components/campaign-header/campaign-header.component.mjs +0 -51
  112. package/esm2022/lib/components/campaign-header/campaign-header.module.mjs +0 -20
  113. package/esm2022/lib/components/campaign-header/index.mjs +0 -3
  114. package/esm2022/lib/components/checkbox/checkbox.component.mjs +0 -163
  115. package/esm2022/lib/components/checkbox/checkbox.module.mjs +0 -20
  116. package/esm2022/lib/components/checkbox/index.mjs +0 -3
  117. package/esm2022/lib/components/chip/chip.component.mjs +0 -48
  118. package/esm2022/lib/components/chip/chip.module.mjs +0 -19
  119. package/esm2022/lib/components/chip/index.mjs +0 -3
  120. package/esm2022/lib/components/container/container.component.mjs +0 -50
  121. package/esm2022/lib/components/container/container.module.mjs +0 -19
  122. package/esm2022/lib/components/container/index.mjs +0 -3
  123. package/esm2022/lib/components/continue/continue.component.mjs +0 -199
  124. package/esm2022/lib/components/continue/continue.module.mjs +0 -23
  125. package/esm2022/lib/components/continue/index.mjs +0 -3
  126. package/esm2022/lib/components/cover/cover.component.mjs +0 -75
  127. package/esm2022/lib/components/cover/cover.module.mjs +0 -21
  128. package/esm2022/lib/components/cover/index.mjs +0 -3
  129. package/esm2022/lib/components/datepicker/calendar/calendar.component.mjs +0 -606
  130. package/esm2022/lib/components/datepicker/calendar/enums/week-start.enum.mjs +0 -6
  131. package/esm2022/lib/components/datepicker/calendar/models/calendar-date.model.mjs +0 -2
  132. package/esm2022/lib/components/datepicker/calendar/models/calendar.model.mjs +0 -2
  133. package/esm2022/lib/components/datepicker/calendar/models/day.model.mjs +0 -2
  134. package/esm2022/lib/components/datepicker/calendar/models/select-option.model.mjs +0 -2
  135. package/esm2022/lib/components/datepicker/calendar/models/week.model.mjs +0 -2
  136. package/esm2022/lib/components/datepicker/datepicker.component.mjs +0 -613
  137. package/esm2022/lib/components/datepicker/datepicker.module.mjs +0 -55
  138. package/esm2022/lib/components/datepicker/index.mjs +0 -9
  139. package/esm2022/lib/components/datepicker/services/calendar.service.mjs +0 -215
  140. package/esm2022/lib/components/datepicker-combo/datepicker-combo.component.mjs +0 -417
  141. package/esm2022/lib/components/datepicker-combo/datepicker-combo.module.mjs +0 -31
  142. package/esm2022/lib/components/datepicker-combo/index.mjs +0 -3
  143. package/esm2022/lib/components/divider/divider.component.mjs +0 -59
  144. package/esm2022/lib/components/divider/divider.module.mjs +0 -28
  145. package/esm2022/lib/components/divider/index.mjs +0 -3
  146. package/esm2022/lib/components/dropdown/dropdown.component.mjs +0 -170
  147. package/esm2022/lib/components/dropdown/dropdown.module.mjs +0 -21
  148. package/esm2022/lib/components/dropdown/index.mjs +0 -3
  149. package/esm2022/lib/components/filter/enums/trip-type.enum.mjs +0 -8
  150. package/esm2022/lib/components/filter/filter.component.mjs +0 -1445
  151. package/esm2022/lib/components/filter/filter.module.mjs +0 -81
  152. package/esm2022/lib/components/filter/index.mjs +0 -4
  153. package/esm2022/lib/components/grid/col/col.component.mjs +0 -49
  154. package/esm2022/lib/components/grid/grid.component.mjs +0 -72
  155. package/esm2022/lib/components/grid/grid.module.mjs +0 -20
  156. package/esm2022/lib/components/grid/index.mjs +0 -4
  157. package/esm2022/lib/components/icon/icon.component.mjs +0 -44
  158. package/esm2022/lib/components/icon/icon.module.mjs +0 -19
  159. package/esm2022/lib/components/icon/index.mjs +0 -3
  160. package/esm2022/lib/components/icon-list/icon-list.component.mjs +0 -50
  161. package/esm2022/lib/components/icon-list/icon-list.module.mjs +0 -20
  162. package/esm2022/lib/components/icon-list/index.mjs +0 -4
  163. package/esm2022/lib/components/icon-list/models/icon-list.model.mjs +0 -2
  164. package/esm2022/lib/components/index.mjs +0 -68
  165. package/esm2022/lib/components/info/index.mjs +0 -4
  166. package/esm2022/lib/components/info/info.component.mjs +0 -116
  167. package/esm2022/lib/components/info/info.module.mjs +0 -36
  168. package/esm2022/lib/components/info/models/info.model.mjs +0 -2
  169. package/esm2022/lib/components/input/index.mjs +0 -3
  170. package/esm2022/lib/components/input/input.component.mjs +0 -228
  171. package/esm2022/lib/components/input/input.module.mjs +0 -35
  172. package/esm2022/lib/components/journey/index.mjs +0 -6
  173. package/esm2022/lib/components/journey/journey.component.mjs +0 -137
  174. package/esm2022/lib/components/journey/journey.module.mjs +0 -21
  175. package/esm2022/lib/components/journey/models/journey-flight.model.mjs +0 -2
  176. package/esm2022/lib/components/journey/models/journey.model.mjs +0 -2
  177. package/esm2022/lib/components/journey/models/marketing-carrier.enum.mjs +0 -8
  178. package/esm2022/lib/components/journey-availability/index.mjs +0 -3
  179. package/esm2022/lib/components/journey-availability/journey-availability.component.mjs +0 -128
  180. package/esm2022/lib/components/journey-availability/journey-availability.module.mjs +0 -39
  181. package/esm2022/lib/components/journey-availability-list/enums/availability-sort-option.enum.mjs +0 -7
  182. package/esm2022/lib/components/journey-availability-list/index.mjs +0 -4
  183. package/esm2022/lib/components/journey-availability-list/journey-availability-list.component.mjs +0 -182
  184. package/esm2022/lib/components/journey-availability-list/journey-availability-list.module.mjs +0 -36
  185. package/esm2022/lib/components/journey-selection/index.mjs +0 -7
  186. package/esm2022/lib/components/journey-selection/journey-selection.component.mjs +0 -120
  187. package/esm2022/lib/components/journey-selection/journey-selection.module.mjs +0 -24
  188. package/esm2022/lib/components/journey-selection/models/journey-selection-collapsed.model.mjs +0 -2
  189. package/esm2022/lib/components/journey-selection/models/journey-selection-common.model.mjs +0 -2
  190. package/esm2022/lib/components/journey-selection/models/journey-selection-expanded.model.mjs +0 -2
  191. package/esm2022/lib/components/journey-selection/models/journey-selection.model.mjs +0 -2
  192. package/esm2022/lib/components/journey-stopover/index.mjs +0 -4
  193. package/esm2022/lib/components/journey-stopover/journey-stopover.component.mjs +0 -150
  194. package/esm2022/lib/components/journey-stopover/journey-stopover.module.mjs +0 -21
  195. package/esm2022/lib/components/journey-stopover/models/stopover-time.model.mjs +0 -2
  196. package/esm2022/lib/components/list/index.mjs +0 -4
  197. package/esm2022/lib/components/list/list-item/list-item.component.mjs +0 -52
  198. package/esm2022/lib/components/list/list.component.mjs +0 -78
  199. package/esm2022/lib/components/list/list.module.mjs +0 -20
  200. package/esm2022/lib/components/micro-button/index.mjs +0 -3
  201. package/esm2022/lib/components/micro-button/micro-button.component.mjs +0 -101
  202. package/esm2022/lib/components/micro-button/micro-button.module.mjs +0 -20
  203. package/esm2022/lib/components/modal/index.mjs +0 -3
  204. package/esm2022/lib/components/modal/modal.component.mjs +0 -156
  205. package/esm2022/lib/components/modal/modal.module.mjs +0 -38
  206. package/esm2022/lib/components/number-field/index.mjs +0 -4
  207. package/esm2022/lib/components/number-field/models/number-field.model.mjs +0 -2
  208. package/esm2022/lib/components/number-field/number-field.component.mjs +0 -162
  209. package/esm2022/lib/components/number-field/number-field.module.mjs +0 -39
  210. package/esm2022/lib/components/page-footer/index.mjs +0 -3
  211. package/esm2022/lib/components/page-footer/page-footer.component.mjs +0 -52
  212. package/esm2022/lib/components/page-footer/page-footer.module.mjs +0 -21
  213. package/esm2022/lib/components/page-header/hamburger/hamburger.component.mjs +0 -22
  214. package/esm2022/lib/components/page-header/index.mjs +0 -6
  215. package/esm2022/lib/components/page-header/models/wallet.model.mjs +0 -2
  216. package/esm2022/lib/components/page-header/page-header.component.mjs +0 -171
  217. package/esm2022/lib/components/page-header/page-header.module.mjs +0 -55
  218. package/esm2022/lib/components/page-header/search/search.component.mjs +0 -49
  219. package/esm2022/lib/components/page-header/wallet/wallet.component.mjs +0 -57
  220. package/esm2022/lib/components/passenger-select/enums/passenger-type.enum.mjs +0 -9
  221. package/esm2022/lib/components/passenger-select/index.mjs +0 -5
  222. package/esm2022/lib/components/passenger-select/models/passengers.model.mjs +0 -2
  223. package/esm2022/lib/components/passenger-select/passenger-select.component.mjs +0 -423
  224. package/esm2022/lib/components/passenger-select/passenger-select.module.mjs +0 -28
  225. package/esm2022/lib/components/phone-number/index.mjs +0 -3
  226. package/esm2022/lib/components/phone-number/phone-number.component.mjs +0 -182
  227. package/esm2022/lib/components/phone-number/phone-number.module.mjs +0 -44
  228. package/esm2022/lib/components/premium-toggle/index.mjs +0 -3
  229. package/esm2022/lib/components/premium-toggle/premium-toggle.component.mjs +0 -68
  230. package/esm2022/lib/components/premium-toggle/premium-toggle.module.mjs +0 -20
  231. package/esm2022/lib/components/radio/index.mjs +0 -3
  232. package/esm2022/lib/components/radio/radio.component.mjs +0 -109
  233. package/esm2022/lib/components/radio/radio.module.mjs +0 -20
  234. package/esm2022/lib/components/ribbon-banner/index.mjs +0 -3
  235. package/esm2022/lib/components/ribbon-banner/ribbon-banner.component.mjs +0 -89
  236. package/esm2022/lib/components/ribbon-banner/ribbon-banner.module.mjs +0 -40
  237. package/esm2022/lib/components/select/index.mjs +0 -6
  238. package/esm2022/lib/components/select/models/select-option.model.mjs +0 -2
  239. package/esm2022/lib/components/select/optgroup/optgroup.component.mjs +0 -29
  240. package/esm2022/lib/components/select/option/option.component.mjs +0 -26
  241. package/esm2022/lib/components/select/select.component.mjs +0 -407
  242. package/esm2022/lib/components/select/select.module.mjs +0 -23
  243. package/esm2022/lib/components/select-new/index.mjs +0 -5
  244. package/esm2022/lib/components/select-new/models/select-option.model.mjs +0 -2
  245. package/esm2022/lib/components/select-new/optgroup/optgroup-new.component.mjs +0 -23
  246. package/esm2022/lib/components/select-new/option/option-new.component.mjs +0 -41
  247. package/esm2022/lib/components/select-new/select-new.component.mjs +0 -271
  248. package/esm2022/lib/components/select-new/select-new.module.mjs +0 -26
  249. package/esm2022/lib/components/select-new/services/select-new.service.mjs +0 -40
  250. package/esm2022/lib/components/simple-list/index.mjs +0 -3
  251. package/esm2022/lib/components/simple-list/simple-list.component.mjs +0 -48
  252. package/esm2022/lib/components/simple-list/simple-list.module.mjs +0 -19
  253. package/esm2022/lib/components/slide-toggle/index.mjs +0 -3
  254. package/esm2022/lib/components/slide-toggle/slide-toggle.component.mjs +0 -121
  255. package/esm2022/lib/components/slide-toggle/slide-toggle.module.mjs +0 -20
  256. package/esm2022/lib/components/slider/index.mjs +0 -3
  257. package/esm2022/lib/components/slider/slider.component.mjs +0 -515
  258. package/esm2022/lib/components/slider/slider.module.mjs +0 -20
  259. package/esm2022/lib/components/sort/index.mjs +0 -3
  260. package/esm2022/lib/components/sort/sort.component.mjs +0 -98
  261. package/esm2022/lib/components/sort/sort.module.mjs +0 -36
  262. package/esm2022/lib/components/spinner/index.mjs +0 -3
  263. package/esm2022/lib/components/spinner/spinner.component.mjs +0 -127
  264. package/esm2022/lib/components/spinner/spinner.module.mjs +0 -19
  265. package/esm2022/lib/components/status-box/index.mjs +0 -4
  266. package/esm2022/lib/components/status-box/models/status-box.model.mjs +0 -2
  267. package/esm2022/lib/components/status-box/status-box.component.mjs +0 -109
  268. package/esm2022/lib/components/status-box/status-box.module.mjs +0 -21
  269. package/esm2022/lib/components/suggestions/index.mjs +0 -3
  270. package/esm2022/lib/components/suggestions/suggestions.component.mjs +0 -44
  271. package/esm2022/lib/components/suggestions/suggestions.module.mjs +0 -20
  272. package/esm2022/lib/components/tab-group/index.mjs +0 -4
  273. package/esm2022/lib/components/tab-group/tab/tab.component.mjs +0 -140
  274. package/esm2022/lib/components/tab-group/tab-group.component.mjs +0 -91
  275. package/esm2022/lib/components/tab-group/tab-group.module.mjs +0 -21
  276. package/esm2022/lib/components/table/column/column.component.mjs +0 -16
  277. package/esm2022/lib/components/table/column-group/column-group.component.mjs +0 -30
  278. package/esm2022/lib/components/table/index.mjs +0 -11
  279. package/esm2022/lib/components/table/services/table.service.mjs +0 -24
  280. package/esm2022/lib/components/table/table-body/table-body.component.mjs +0 -23
  281. package/esm2022/lib/components/table/table-foot/table-foot.component.mjs +0 -23
  282. package/esm2022/lib/components/table/table-head/table-head.component.mjs +0 -23
  283. package/esm2022/lib/components/table/table-row/table-data/table-data.component.mjs +0 -15
  284. package/esm2022/lib/components/table/table-row/table-header/table-header.component.mjs +0 -15
  285. package/esm2022/lib/components/table/table-row/table-row.component.mjs +0 -23
  286. package/esm2022/lib/components/table/table.component.mjs +0 -27
  287. package/esm2022/lib/components/table/table.module.mjs +0 -63
  288. package/esm2022/lib/components/tag/index.mjs +0 -3
  289. package/esm2022/lib/components/tag/tag.component.mjs +0 -71
  290. package/esm2022/lib/components/tag/tag.module.mjs +0 -28
  291. package/esm2022/lib/components/textarea/index.mjs +0 -3
  292. package/esm2022/lib/components/textarea/textarea.component.mjs +0 -139
  293. package/esm2022/lib/components/textarea/textarea.module.mjs +0 -21
  294. package/esm2022/lib/components/toggle/index.mjs +0 -3
  295. package/esm2022/lib/components/toggle/models/options.model.mjs +0 -3
  296. package/esm2022/lib/components/toggle/toggle.component.mjs +0 -102
  297. package/esm2022/lib/components/toggle/toggle.module.mjs +0 -35
  298. package/esm2022/lib/components/tooltip/index.mjs +0 -3
  299. package/esm2022/lib/components/tooltip/tooltip.component.mjs +0 -170
  300. package/esm2022/lib/components/tooltip/tooltip.module.mjs +0 -30
  301. package/esm2022/lib/components/trip-summary/index.mjs +0 -3
  302. package/esm2022/lib/components/trip-summary/trip-summary.component.mjs +0 -167
  303. package/esm2022/lib/components/trip-summary/trip-summary.module.mjs +0 -36
  304. package/esm2022/lib/core/base/nas-component.base.mjs +0 -48
  305. package/esm2022/lib/core/decorators/debounce.decorator.mjs +0 -12
  306. package/esm2022/lib/core/directives/index.mjs +0 -3
  307. package/esm2022/lib/core/directives/nas-class/nas-class.directive.mjs +0 -80
  308. package/esm2022/lib/core/directives/nas-class/nas-class.module.mjs +0 -20
  309. package/esm2022/lib/core/extensions/html-element.extension.mjs +0 -31
  310. package/esm2022/lib/core/index.mjs +0 -5
  311. package/esm2022/lib/core/models/abandoned-basket-item.model.mjs +0 -2
  312. package/esm2022/lib/core/models/animate.model.mjs +0 -2
  313. package/esm2022/lib/core/models/class.model.mjs +0 -2
  314. package/esm2022/lib/core/models/index.mjs +0 -7
  315. package/esm2022/lib/core/models/link.model.mjs +0 -2
  316. package/esm2022/lib/core/models/position.model.mjs +0 -2
  317. package/esm2022/lib/core/models/utc-date.model.mjs +0 -40
  318. package/esm2022/lib/core/services/abandoned-basket/abandoned-basket.service.mjs +0 -61
  319. package/esm2022/lib/core/services/animate-helper/animate-helper.service.mjs +0 -49
  320. package/esm2022/lib/core/services/bem-helper/bem-helper.service.mjs +0 -44
  321. package/esm2022/lib/core/services/date/date-compare.enum.mjs +0 -7
  322. package/esm2022/lib/core/services/date/date-helper.service.mjs +0 -199
  323. package/esm2022/lib/core/services/device/device-helper.service.mjs +0 -46
  324. package/esm2022/lib/core/services/geolocation/geolocation-state.enum.mjs +0 -8
  325. package/esm2022/lib/core/services/geolocation/geolocation.service.mjs +0 -66
  326. package/esm2022/lib/core/services/index.mjs +0 -10
  327. package/esm2022/lib/core/services/language/language-helper.service.mjs +0 -114
  328. package/esm2022/lib/core/services/sort/sort.service.mjs +0 -25
  329. package/esm2022/lib/core/services/viewport/viewport.service.mjs +0 -36
  330. package/esm2022/lib/index.mjs +0 -5
  331. package/esm2022/lib/services/get-position.service.mjs +0 -23
  332. package/esm2022/lib/services/index.mjs +0 -2
  333. package/esm2022/lib/shared/index.mjs +0 -2
  334. package/esm2022/lib/shared/models/flight-details.mjs +0 -3
  335. package/esm2022/lib/shared/models/index.mjs +0 -6
  336. package/esm2022/lib/shared/models/journey-availability-sort.model.mjs +0 -2
  337. package/esm2022/lib/shared/models/journey-availability.model.mjs +0 -2
  338. package/esm2022/lib/shared/models/journey-details.model.mjs +0 -2
  339. package/esm2022/lib/shared/models/journey-duration.model.mjs +0 -2
  340. package/esm2022/lib/shared/models/journey-stopover.model.mjs +0 -2
  341. package/esm2022/lib/shared/models/journey-transit-info.model.mjs +0 -2
  342. package/esm2022/lib/shared/models/operating-carrier.model.mjs +0 -2
  343. package/esm2022/lib/shared/models/sort-option.model.mjs +0 -2
  344. package/esm2022/lib/shared/models/sort.model.mjs +0 -2
  345. package/esm2022/lib/shared/models/trip-item-details.model.mjs +0 -2
  346. package/esm2022/lib/shared/models/trip-summary-details.model.mjs +0 -2
  347. package/esm2022/lib/shared/models/trip-summary.model.mjs +0 -2
  348. package/esm2022/norwegian-core-components.mjs +0 -5
  349. package/esm2022/public_api.mjs +0 -2
  350. package/lib/components/accordion/accordion.component.d.ts +0 -241
  351. package/lib/components/accordion/accordion.module.d.ts +0 -10
  352. package/lib/components/accordion/index.d.ts +0 -2
  353. package/lib/components/airport-select/airport-select-dropdown/airport-select-dropdown.component.d.ts +0 -100
  354. package/lib/components/airport-select/airport-select.component.d.ts +0 -330
  355. package/lib/components/airport-select/airport-select.module.d.ts +0 -13
  356. package/lib/components/airport-select/index.d.ts +0 -6
  357. package/lib/components/airport-select/models/airport-select-event.model.d.ts +0 -4
  358. package/lib/components/airport-select/models/airport-select-state.model.d.ts +0 -5
  359. package/lib/components/airport-select/models/airport.model.d.ts +0 -11
  360. package/lib/components/airport-select/models/results-labels.model.d.ts +0 -8
  361. package/lib/components/airport-select/services/airport-select-dropdown.service.d.ts +0 -10
  362. package/lib/components/airport-select/services/airport-select.service.d.ts +0 -8
  363. package/lib/components/alert/alert.component.d.ts +0 -129
  364. package/lib/components/alert/alert.module.d.ts +0 -12
  365. package/lib/components/alert/index.d.ts +0 -3
  366. package/lib/components/alert/models/alert.model.d.ts +0 -10
  367. package/lib/components/autocomplete/autocomplete.component.d.ts +0 -135
  368. package/lib/components/autocomplete/autocomplete.module.d.ts +0 -13
  369. package/lib/components/autocomplete/index.d.ts +0 -3
  370. package/lib/components/autocomplete/models/autocomplete.model.d.ts +0 -5
  371. package/lib/components/backdrop/backdrop.component.d.ts +0 -38
  372. package/lib/components/backdrop/backdrop.module.d.ts +0 -9
  373. package/lib/components/backdrop/index.d.ts +0 -2
  374. package/lib/components/box/box.component.d.ts +0 -78
  375. package/lib/components/box/box.module.d.ts +0 -9
  376. package/lib/components/box/index.d.ts +0 -2
  377. package/lib/components/button/button.component.d.ts +0 -294
  378. package/lib/components/button/button.module.d.ts +0 -11
  379. package/lib/components/button/index.d.ts +0 -2
  380. package/lib/components/campaign-header/campaign-header.component.d.ts +0 -58
  381. package/lib/components/campaign-header/campaign-header.module.d.ts +0 -10
  382. package/lib/components/campaign-header/index.d.ts +0 -2
  383. package/lib/components/checkbox/checkbox.component.d.ts +0 -151
  384. package/lib/components/checkbox/checkbox.module.d.ts +0 -10
  385. package/lib/components/checkbox/index.d.ts +0 -2
  386. package/lib/components/chip/chip.component.d.ts +0 -48
  387. package/lib/components/chip/chip.module.d.ts +0 -9
  388. package/lib/components/chip/index.d.ts +0 -2
  389. package/lib/components/container/container.component.d.ts +0 -52
  390. package/lib/components/container/container.module.d.ts +0 -9
  391. package/lib/components/container/index.d.ts +0 -2
  392. package/lib/components/continue/continue.component.d.ts +0 -171
  393. package/lib/components/continue/continue.module.d.ts +0 -11
  394. package/lib/components/continue/index.d.ts +0 -2
  395. package/lib/components/cover/cover.component.d.ts +0 -125
  396. package/lib/components/cover/cover.module.d.ts +0 -11
  397. package/lib/components/cover/index.d.ts +0 -2
  398. package/lib/components/datepicker/calendar/calendar.component.d.ts +0 -169
  399. package/lib/components/datepicker/calendar/enums/week-start.enum.d.ts +0 -4
  400. package/lib/components/datepicker/calendar/models/calendar-date.model.d.ts +0 -5
  401. package/lib/components/datepicker/calendar/models/calendar.model.d.ts +0 -4
  402. package/lib/components/datepicker/calendar/models/day.model.d.ts +0 -10
  403. package/lib/components/datepicker/calendar/models/select-option.model.d.ts +0 -4
  404. package/lib/components/datepicker/calendar/models/week.model.d.ts +0 -5
  405. package/lib/components/datepicker/datepicker.component.d.ts +0 -289
  406. package/lib/components/datepicker/datepicker.module.d.ts +0 -16
  407. package/lib/components/datepicker/index.d.ts +0 -8
  408. package/lib/components/datepicker/services/calendar.service.d.ts +0 -27
  409. package/lib/components/datepicker-combo/datepicker-combo.component.d.ts +0 -329
  410. package/lib/components/datepicker-combo/datepicker-combo.module.d.ts +0 -10
  411. package/lib/components/datepicker-combo/index.d.ts +0 -2
  412. package/lib/components/divider/divider.component.d.ts +0 -68
  413. package/lib/components/divider/divider.module.d.ts +0 -10
  414. package/lib/components/divider/index.d.ts +0 -2
  415. package/lib/components/dropdown/dropdown.component.d.ts +0 -80
  416. package/lib/components/dropdown/dropdown.module.d.ts +0 -11
  417. package/lib/components/dropdown/index.d.ts +0 -2
  418. package/lib/components/filter/enums/trip-type.enum.d.ts +0 -6
  419. package/lib/components/filter/filter.component.d.ts +0 -942
  420. package/lib/components/filter/filter.module.d.ts +0 -22
  421. package/lib/components/filter/index.d.ts +0 -3
  422. package/lib/components/grid/col/col.component.d.ts +0 -45
  423. package/lib/components/grid/grid.component.d.ts +0 -92
  424. package/lib/components/grid/grid.module.d.ts +0 -10
  425. package/lib/components/grid/index.d.ts +0 -3
  426. package/lib/components/icon/icon.component.d.ts +0 -53
  427. package/lib/components/icon/icon.module.d.ts +0 -9
  428. package/lib/components/icon/index.d.ts +0 -2
  429. package/lib/components/icon-list/icon-list.component.d.ts +0 -49
  430. package/lib/components/icon-list/icon-list.module.d.ts +0 -10
  431. package/lib/components/icon-list/index.d.ts +0 -3
  432. package/lib/components/icon-list/models/icon-list.model.d.ts +0 -8
  433. package/lib/components/index.d.ts +0 -67
  434. package/lib/components/info/index.d.ts +0 -3
  435. package/lib/components/info/info.component.d.ts +0 -108
  436. package/lib/components/info/info.module.d.ts +0 -12
  437. package/lib/components/info/models/info.model.d.ts +0 -9
  438. package/lib/components/input/index.d.ts +0 -2
  439. package/lib/components/input/input.component.d.ts +0 -214
  440. package/lib/components/input/input.module.d.ts +0 -11
  441. package/lib/components/journey/index.d.ts +0 -5
  442. package/lib/components/journey/journey.component.d.ts +0 -102
  443. package/lib/components/journey/journey.module.d.ts +0 -11
  444. package/lib/components/journey/models/journey-flight.model.d.ts +0 -13
  445. package/lib/components/journey/models/journey.model.d.ts +0 -5
  446. package/lib/components/journey/models/marketing-carrier.enum.d.ts +0 -6
  447. package/lib/components/journey-availability/index.d.ts +0 -2
  448. package/lib/components/journey-availability/journey-availability.component.d.ts +0 -93
  449. package/lib/components/journey-availability/journey-availability.module.d.ts +0 -12
  450. package/lib/components/journey-availability-list/enums/availability-sort-option.enum.d.ts +0 -5
  451. package/lib/components/journey-availability-list/index.d.ts +0 -3
  452. package/lib/components/journey-availability-list/journey-availability-list.component.d.ts +0 -114
  453. package/lib/components/journey-availability-list/journey-availability-list.module.d.ts +0 -12
  454. package/lib/components/journey-selection/index.d.ts +0 -6
  455. package/lib/components/journey-selection/journey-selection.component.d.ts +0 -84
  456. package/lib/components/journey-selection/journey-selection.module.d.ts +0 -11
  457. package/lib/components/journey-selection/models/journey-selection-collapsed.model.d.ts +0 -11
  458. package/lib/components/journey-selection/models/journey-selection-common.model.d.ts +0 -7
  459. package/lib/components/journey-selection/models/journey-selection-expanded.model.d.ts +0 -5
  460. package/lib/components/journey-selection/models/journey-selection.model.d.ts +0 -14
  461. package/lib/components/journey-stopover/index.d.ts +0 -3
  462. package/lib/components/journey-stopover/journey-stopover.component.d.ts +0 -131
  463. package/lib/components/journey-stopover/journey-stopover.module.d.ts +0 -11
  464. package/lib/components/journey-stopover/models/stopover-time.model.d.ts +0 -4
  465. package/lib/components/list/index.d.ts +0 -3
  466. package/lib/components/list/list-item/list-item.component.d.ts +0 -35
  467. package/lib/components/list/list.component.d.ts +0 -76
  468. package/lib/components/list/list.module.d.ts +0 -10
  469. package/lib/components/micro-button/index.d.ts +0 -2
  470. package/lib/components/micro-button/micro-button.component.d.ts +0 -139
  471. package/lib/components/micro-button/micro-button.module.d.ts +0 -10
  472. package/lib/components/modal/index.d.ts +0 -2
  473. package/lib/components/modal/modal.component.d.ts +0 -119
  474. package/lib/components/modal/modal.module.d.ts +0 -12
  475. package/lib/components/number-field/index.d.ts +0 -3
  476. package/lib/components/number-field/models/number-field.model.d.ts +0 -5
  477. package/lib/components/number-field/number-field.component.d.ts +0 -124
  478. package/lib/components/number-field/number-field.module.d.ts +0 -12
  479. package/lib/components/page-footer/index.d.ts +0 -2
  480. package/lib/components/page-footer/page-footer.component.d.ts +0 -53
  481. package/lib/components/page-footer/page-footer.module.d.ts +0 -11
  482. package/lib/components/page-header/hamburger/hamburger.component.d.ts +0 -12
  483. package/lib/components/page-header/index.d.ts +0 -5
  484. package/lib/components/page-header/models/wallet.model.d.ts +0 -21
  485. package/lib/components/page-header/page-header.component.d.ts +0 -127
  486. package/lib/components/page-header/page-header.module.d.ts +0 -17
  487. package/lib/components/page-header/search/search.component.d.ts +0 -26
  488. package/lib/components/page-header/wallet/wallet.component.d.ts +0 -23
  489. package/lib/components/passenger-select/enums/passenger-type.enum.d.ts +0 -7
  490. package/lib/components/passenger-select/index.d.ts +0 -4
  491. package/lib/components/passenger-select/models/passengers.model.d.ts +0 -11
  492. package/lib/components/passenger-select/passenger-select.component.d.ts +0 -141
  493. package/lib/components/passenger-select/passenger-select.module.d.ts +0 -10
  494. package/lib/components/phone-number/index.d.ts +0 -2
  495. package/lib/components/phone-number/phone-number.component.d.ts +0 -263
  496. package/lib/components/phone-number/phone-number.module.d.ts +0 -13
  497. package/lib/components/premium-toggle/index.d.ts +0 -2
  498. package/lib/components/premium-toggle/premium-toggle.component.d.ts +0 -50
  499. package/lib/components/premium-toggle/premium-toggle.module.d.ts +0 -10
  500. package/lib/components/radio/index.d.ts +0 -2
  501. package/lib/components/radio/radio.component.d.ts +0 -137
  502. package/lib/components/radio/radio.module.d.ts +0 -10
  503. package/lib/components/ribbon-banner/index.d.ts +0 -2
  504. package/lib/components/ribbon-banner/ribbon-banner.component.d.ts +0 -66
  505. package/lib/components/ribbon-banner/ribbon-banner.module.d.ts +0 -13
  506. package/lib/components/select/index.d.ts +0 -5
  507. package/lib/components/select/models/select-option.model.d.ts +0 -4
  508. package/lib/components/select/optgroup/optgroup.component.d.ts +0 -25
  509. package/lib/components/select/option/option.component.d.ts +0 -24
  510. package/lib/components/select/select.component.d.ts +0 -204
  511. package/lib/components/select/select.module.d.ts +0 -13
  512. package/lib/components/select-new/index.d.ts +0 -4
  513. package/lib/components/select-new/models/select-option.model.d.ts +0 -6
  514. package/lib/components/select-new/optgroup/optgroup-new.component.d.ts +0 -8
  515. package/lib/components/select-new/option/option-new.component.d.ts +0 -16
  516. package/lib/components/select-new/select-new.component.d.ts +0 -173
  517. package/lib/components/select-new/select-new.module.d.ts +0 -14
  518. package/lib/components/select-new/services/select-new.service.d.ts +0 -10
  519. package/lib/components/simple-list/index.d.ts +0 -2
  520. package/lib/components/simple-list/simple-list.component.d.ts +0 -60
  521. package/lib/components/simple-list/simple-list.module.d.ts +0 -9
  522. package/lib/components/slide-toggle/index.d.ts +0 -2
  523. package/lib/components/slide-toggle/slide-toggle.component.d.ts +0 -70
  524. package/lib/components/slide-toggle/slide-toggle.module.d.ts +0 -10
  525. package/lib/components/slider/index.d.ts +0 -2
  526. package/lib/components/slider/slider.component.d.ts +0 -216
  527. package/lib/components/slider/slider.module.d.ts +0 -10
  528. package/lib/components/sort/index.d.ts +0 -2
  529. package/lib/components/sort/sort.component.d.ts +0 -55
  530. package/lib/components/sort/sort.module.d.ts +0 -12
  531. package/lib/components/spinner/index.d.ts +0 -2
  532. package/lib/components/spinner/spinner.component.d.ts +0 -104
  533. package/lib/components/spinner/spinner.module.d.ts +0 -9
  534. package/lib/components/status-box/index.d.ts +0 -3
  535. package/lib/components/status-box/models/status-box.model.d.ts +0 -5
  536. package/lib/components/status-box/status-box.component.d.ts +0 -92
  537. package/lib/components/status-box/status-box.module.d.ts +0 -11
  538. package/lib/components/suggestions/index.d.ts +0 -2
  539. package/lib/components/suggestions/suggestions.component.d.ts +0 -36
  540. package/lib/components/suggestions/suggestions.module.d.ts +0 -10
  541. package/lib/components/tab-group/index.d.ts +0 -3
  542. package/lib/components/tab-group/tab/tab.component.d.ts +0 -97
  543. package/lib/components/tab-group/tab-group.component.d.ts +0 -42
  544. package/lib/components/tab-group/tab-group.module.d.ts +0 -11
  545. package/lib/components/table/column/column.component.d.ts +0 -6
  546. package/lib/components/table/column-group/column-group.component.d.ts +0 -15
  547. package/lib/components/table/index.d.ts +0 -10
  548. package/lib/components/table/services/table.service.d.ts +0 -8
  549. package/lib/components/table/table-body/table-body.component.d.ts +0 -15
  550. package/lib/components/table/table-foot/table-foot.component.d.ts +0 -15
  551. package/lib/components/table/table-head/table-head.component.d.ts +0 -15
  552. package/lib/components/table/table-row/table-data/table-data.component.d.ts +0 -5
  553. package/lib/components/table/table-row/table-header/table-header.component.d.ts +0 -5
  554. package/lib/components/table/table-row/table-row.component.d.ts +0 -15
  555. package/lib/components/table/table.component.d.ts +0 -19
  556. package/lib/components/table/table.module.d.ts +0 -17
  557. package/lib/components/tag/index.d.ts +0 -2
  558. package/lib/components/tag/tag.component.d.ts +0 -71
  559. package/lib/components/tag/tag.module.d.ts +0 -10
  560. package/lib/components/textarea/index.d.ts +0 -2
  561. package/lib/components/textarea/textarea.component.d.ts +0 -156
  562. package/lib/components/textarea/textarea.module.d.ts +0 -11
  563. package/lib/components/toggle/index.d.ts +0 -2
  564. package/lib/components/toggle/models/options.model.d.ts +0 -7
  565. package/lib/components/toggle/toggle.component.d.ts +0 -159
  566. package/lib/components/toggle/toggle.module.d.ts +0 -11
  567. package/lib/components/tooltip/index.d.ts +0 -2
  568. package/lib/components/tooltip/tooltip.component.d.ts +0 -63
  569. package/lib/components/tooltip/tooltip.module.d.ts +0 -10
  570. package/lib/components/trip-summary/index.d.ts +0 -2
  571. package/lib/components/trip-summary/trip-summary.component.d.ts +0 -162
  572. package/lib/components/trip-summary/trip-summary.module.d.ts +0 -12
  573. package/lib/core/base/nas-component.base.d.ts +0 -11
  574. package/lib/core/decorators/debounce.decorator.d.ts +0 -1
  575. package/lib/core/directives/index.d.ts +0 -2
  576. package/lib/core/directives/nas-class/nas-class.directive.d.ts +0 -14
  577. package/lib/core/directives/nas-class/nas-class.module.d.ts +0 -8
  578. package/lib/core/extensions/html-element.extension.d.ts +0 -6
  579. package/lib/core/index.d.ts +0 -4
  580. package/lib/core/models/abandoned-basket-item.model.d.ts +0 -14
  581. package/lib/core/models/animate.model.d.ts +0 -6
  582. package/lib/core/models/class.model.d.ts +0 -7
  583. package/lib/core/models/index.d.ts +0 -6
  584. package/lib/core/models/link.model.d.ts +0 -5
  585. package/lib/core/models/position.model.d.ts +0 -4
  586. package/lib/core/models/utc-date.model.d.ts +0 -13
  587. package/lib/core/services/abandoned-basket/abandoned-basket.service.d.ts +0 -10
  588. package/lib/core/services/animate-helper/animate-helper.service.d.ts +0 -9
  589. package/lib/core/services/bem-helper/bem-helper.service.d.ts +0 -7
  590. package/lib/core/services/date/date-compare.enum.d.ts +0 -5
  591. package/lib/core/services/date/date-helper.service.d.ts +0 -22
  592. package/lib/core/services/device/device-helper.service.d.ts +0 -16
  593. package/lib/core/services/geolocation/geolocation-state.enum.d.ts +0 -6
  594. package/lib/core/services/geolocation/geolocation.service.d.ts +0 -9
  595. package/lib/core/services/index.d.ts +0 -9
  596. package/lib/core/services/language/language-helper.service.d.ts +0 -12
  597. package/lib/core/services/sort/sort.service.d.ts +0 -6
  598. package/lib/core/services/viewport/viewport.service.d.ts +0 -11
  599. package/lib/index.d.ts +0 -4
  600. package/lib/services/get-position.service.d.ts +0 -9
  601. package/lib/services/index.d.ts +0 -1
  602. package/lib/shared/index.d.ts +0 -1
  603. package/lib/shared/models/flight-details.d.ts +0 -22
  604. package/lib/shared/models/index.d.ts +0 -5
  605. package/lib/shared/models/journey-availability-sort.model.d.ts +0 -8
  606. package/lib/shared/models/journey-availability.model.d.ts +0 -25
  607. package/lib/shared/models/journey-details.model.d.ts +0 -8
  608. package/lib/shared/models/journey-duration.model.d.ts +0 -7
  609. package/lib/shared/models/journey-stopover.model.d.ts +0 -15
  610. package/lib/shared/models/journey-transit-info.model.d.ts +0 -5
  611. package/lib/shared/models/operating-carrier.model.d.ts +0 -4
  612. package/lib/shared/models/sort-option.model.d.ts +0 -11
  613. package/lib/shared/models/sort.model.d.ts +0 -10
  614. package/lib/shared/models/trip-item-details.model.d.ts +0 -12
  615. package/lib/shared/models/trip-summary-details.model.d.ts +0 -5
  616. package/lib/shared/models/trip-summary.model.d.ts +0 -4
  617. package/public_api.d.ts +0 -1
  618. /package/assets/icons/{icon-chevron-left--light.svg → medium/chevron-left--light.svg} +0 -0
  619. /package/assets/icons/{icon-chevron-left.svg → medium/chevron-left.svg} +0 -0
  620. /package/assets/icons/{icon-chevron-right--light.svg → medium/chevron-right--light.svg} +0 -0
  621. /package/assets/icons/{icon-chevron-right.svg → medium/chevron-right.svg} +0 -0
  622. /package/assets/images/{cloud-1.svg → cloud.svg} +0 -0
@@ -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 { NumberFieldComponent } from '../number-field';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "@angular/common";
11
- import * as i2 from "../number-field/number-field.component";
12
- import * as i3 from "../../core/directives/nas-class/nas-class.directive";
13
- /**
14
- * @description
15
- * Norwegian Passenger Select Component | Functional | New design
16
- */
17
- export class PassengerSelectComponent extends NasComponentBase {
18
- constructor() {
19
- super('nas-passenger-select');
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.2.12", ngImport: i0, type: PassengerSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
378
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PassengerSelectComponent, selector: "nas-passenger-select", 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: NumberFieldComponent, 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\" [nasClass]=\"getClass('list-item')\">\n <label [nasClass]=\"getClass('label')\" [attr.aria-label]=\"getLabel(item.type)\">{{getLabel(item.type)}}</label>\n <ng-container *ngIf=\"!item.formGroup || !item.formControlName; else reactiveForm\">\n <nas-number-field compact spaceless simple [id]=\"item?.id\" [ariaLabel]=\"getLabel(item.type)\"\n [ariaLabelSubtract]=\"ariaLabelSubtract\" [ariaLabelAdd]=\"ariaLabelAdd\" [number]=\"item.count\" [max]=\"getMax(item)\"\n [min]=\"getMin(item)\" (numberChange)=\"setPassengersCount(item, $event)\"\n (keydown)=\"keyDown($event, count)\"></nas-number-field>\n </ng-container>\n <ng-template #reactiveForm>\n <nas-number-field compact spaceless simple [id]=\"item?.id\" [ariaLabel]=\"getLabel(item.type)\"\n [ariaLabelSubtract]=\"ariaLabelSubtract\" [ariaLabelAdd]=\"ariaLabelAdd\" [nasFormGroup]=\"item.formGroup\"\n [nasFormControlName]=\"item.formControlName\" [number]=\"item.formGroup?.get(item.formControlName)?.value\"\n [max]=\"getMax(item)\" [min]=\"getMin(item)\" (keydown)=\"keyDown($event, count)\"\n (numberChange)=\"setPassengersCount(item, $event)\"></nas-number-field>\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{position:relative;display:flex;flex-wrap:wrap;margin:16px 0 24px}.nas-passenger-select__list{position:relative;background-color:#fff;border-left:2px solid #15273F;border-bottom:2px solid #15273F;border-right:2px solid #15273F}.nas-passenger-select__list-item{display:flex;align-items:center;justify-content:space-between;padding:6px 0 0}.nas-passenger-select__list-item:not(:last-child){padding:6px 0 9px}.nas-passenger-select__list-item:first-child{padding-top:16px!important}.nas-passenger-select__list-item:last-child{padding-bottom:16px!important}.nas-passenger-select__label{flex-grow:2;margin:0 6px 0 0}.nas-passenger-select__title{font-size:18px;line-height:24px;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__title--small{font-size:16px;line-height:24px;margin:0}.nas-passenger-select__title--group-booking{animation:pop-in-from-top .5s linear both;display:block}.nas-passenger-select__actions{display:flex}.nas-passenger-select__action{padding:12px;width:100%;background-color:#fff}.nas-passenger-select__action:hover,.nas-passenger-select__action:focus{background-color:#e9e7e4}.nas-passenger-select__action--active,.nas-passenger-select__action--active:hover,.nas-passenger-select__action--active:focus{color:#fff;background-color:#15273f}.nas-passenger-select__icon{margin-bottom:9px}.nas-passenger-select__dropdown{margin-right:9px;margin-bottom:6px}@media (min-width: 640px){.nas-passenger-select__dropdown{margin-right:9px;margin-bottom:0}.nas-passenger-select__dropdown:not(:first-child){margin-left:9px}}.nas-passenger-select__transit-icon{position:relative;display:flex;justify-content:center;width:calc(100% - 48px);margin:12px auto;height:24px;background-color:inherit}.nas-passenger-select__transit-icon:before{content:\"\";position:absolute;height:2px;left:0;width:100%;top:calc(50% - 1px);background-color:currentColor}.nas-passenger-select__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__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--combined{margin:0}.nas-passenger-select--combined:after{content:\"\";position:absolute;bottom:-3px;left:-3px;width:calc(100% + 3px);border-bottom:3px solid #E9E7E4}.nas-passenger-select--combined .nas-passenger-select__dropdown{margin:0 3px 0 0}.nas-passenger-select--combined .nas-passenger-select__dropdown:last-child{margin:0}.nas-passenger-select--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.NumberFieldComponent, selector: "nas-number-field", inputs: ["id", "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.2.12", ngImport: i0, type: PassengerSelectComponent, decorators: [{
381
- type: Component,
382
- args: [{ selector: 'nas-passenger-select', 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\" [nasClass]=\"getClass('list-item')\">\n <label [nasClass]=\"getClass('label')\" [attr.aria-label]=\"getLabel(item.type)\">{{getLabel(item.type)}}</label>\n <ng-container *ngIf=\"!item.formGroup || !item.formControlName; else reactiveForm\">\n <nas-number-field compact spaceless simple [id]=\"item?.id\" [ariaLabel]=\"getLabel(item.type)\"\n [ariaLabelSubtract]=\"ariaLabelSubtract\" [ariaLabelAdd]=\"ariaLabelAdd\" [number]=\"item.count\" [max]=\"getMax(item)\"\n [min]=\"getMin(item)\" (numberChange)=\"setPassengersCount(item, $event)\"\n (keydown)=\"keyDown($event, count)\"></nas-number-field>\n </ng-container>\n <ng-template #reactiveForm>\n <nas-number-field compact spaceless simple [id]=\"item?.id\" [ariaLabel]=\"getLabel(item.type)\"\n [ariaLabelSubtract]=\"ariaLabelSubtract\" [ariaLabelAdd]=\"ariaLabelAdd\" [nasFormGroup]=\"item.formGroup\"\n [nasFormControlName]=\"item.formControlName\" [number]=\"item.formGroup?.get(item.formControlName)?.value\"\n [max]=\"getMax(item)\" [min]=\"getMin(item)\" (keydown)=\"keyDown($event, count)\"\n (numberChange)=\"setPassengersCount(item, $event)\"></nas-number-field>\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{position:relative;display:flex;flex-wrap:wrap;margin:16px 0 24px}.nas-passenger-select__list{position:relative;background-color:#fff;border-left:2px solid #15273F;border-bottom:2px solid #15273F;border-right:2px solid #15273F}.nas-passenger-select__list-item{display:flex;align-items:center;justify-content:space-between;padding:6px 0 0}.nas-passenger-select__list-item:not(:last-child){padding:6px 0 9px}.nas-passenger-select__list-item:first-child{padding-top:16px!important}.nas-passenger-select__list-item:last-child{padding-bottom:16px!important}.nas-passenger-select__label{flex-grow:2;margin:0 6px 0 0}.nas-passenger-select__title{font-size:18px;line-height:24px;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__title--small{font-size:16px;line-height:24px;margin:0}.nas-passenger-select__title--group-booking{animation:pop-in-from-top .5s linear both;display:block}.nas-passenger-select__actions{display:flex}.nas-passenger-select__action{padding:12px;width:100%;background-color:#fff}.nas-passenger-select__action:hover,.nas-passenger-select__action:focus{background-color:#e9e7e4}.nas-passenger-select__action--active,.nas-passenger-select__action--active:hover,.nas-passenger-select__action--active:focus{color:#fff;background-color:#15273f}.nas-passenger-select__icon{margin-bottom:9px}.nas-passenger-select__dropdown{margin-right:9px;margin-bottom:6px}@media (min-width: 640px){.nas-passenger-select__dropdown{margin-right:9px;margin-bottom:0}.nas-passenger-select__dropdown:not(:first-child){margin-left:9px}}.nas-passenger-select__transit-icon{position:relative;display:flex;justify-content:center;width:calc(100% - 48px);margin:12px auto;height:24px;background-color:inherit}.nas-passenger-select__transit-icon:before{content:\"\";position:absolute;height:2px;left:0;width:100%;top:calc(50% - 1px);background-color:currentColor}.nas-passenger-select__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__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--combined{margin:0}.nas-passenger-select--combined:after{content:\"\";position:absolute;bottom:-3px;left:-3px;width:calc(100% + 3px);border-bottom:3px solid #E9E7E4}.nas-passenger-select--combined .nas-passenger-select__dropdown{margin:0 3px 0 0}.nas-passenger-select--combined .nas-passenger-select__dropdown:last-child{margin:0}.nas-passenger-select--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: [NumberFieldComponent]
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc2VuZ2VyLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Bhc3Nlbmdlci1zZWxlY3QvcGFzc2VuZ2VyLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Bhc3Nlbmdlci1zZWxlY3QvcGFzc2VuZ2VyLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFlBQVksRUFFYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7O0FBRXZEOzs7RUFHRTtBQU1GLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxnQkFBZ0I7SUF1STVEO1FBQ0UsS0FBSyxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFsSWhDOzs7O1VBSUU7UUFDTyxlQUFVLEdBQUcsSUFBSSxLQUFLLEVBQW1CLENBQUM7UUFFbkQ7Ozs7VUFJRTtRQUNPLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBZ0dsQzs7OztVQUlFO1FBQ1EscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQTBCLENBQUM7UUFFeEU7Ozs7VUFJRTtRQUNRLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVoRDs7OztVQUlFO1FBQ1Esb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBSXBELENBQUM7SUFF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LG9CQUFvQix1RUM3QnBDLHdoREFxQks7OzRGRE9RLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSxzQkFBc0I7MEVBS0ksWUFBWTtzQkFBL0MsWUFBWTt1QkFBQyxvQkFBb0I7Z0JBVXpCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBT0csV0FBVztzQkFBbkIsS0FBSztnQkFPRyxhQUFhO3NCQUFyQixLQUFLO2dCQU9HLGlCQUFpQjtzQkFBekIsS0FBSztnQkFPRyxLQUFLO3NCQUFiLEtBQUs7Z0JBT0csV0FBVztzQkFBbkIsS0FBSztnQkFPRyxhQUFhO3NCQUFyQixLQUFLO2dCQU1HLFlBQVk7c0JBQXBCLEtBQUs7Z0JBT0csV0FBVztzQkFBbkIsS0FBSztnQkFPRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBT0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQVNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBU0csMEJBQTBCO3NCQUFsQyxLQUFLO2dCQU9HLGlCQUFpQjtzQkFBekIsS0FBSztnQkFPRyxZQUFZO3NCQUFwQixLQUFLO2dCQU9JLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFPRyxXQUFXO3NCQUFwQixNQUFNO2dCQU9HLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgTm9yd2VnaWFuIEFpciBTaHV0dGxlLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICovXG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRyZW4sXG4gIFF1ZXJ5TGlzdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFBhc3NlbmdlclR5cGUgfSBmcm9tICcuL2VudW1zL3Bhc3Nlbmdlci10eXBlLmVudW0nO1xuaW1wb3J0IHsgUGFzc2VuZ2Vyc01vZGVsIH0gZnJvbSAnLi9tb2RlbHMvcGFzc2VuZ2Vycy5tb2RlbCc7XG5pbXBvcnQgeyBOYXNDb21wb25lbnRCYXNlIH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlL25hcy1jb21wb25lbnQuYmFzZSc7XG5pbXBvcnQgeyBOdW1iZXJGaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL251bWJlci1maWVsZCc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKiBOb3J3ZWdpYW4gUGFzc2VuZ2VyIFNlbGVjdCBDb21wb25lbnQgfCBGdW5jdGlvbmFsIHwgTmV3IGRlc2lnblxuKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25hcy1wYXNzZW5nZXItc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Bhc3Nlbmdlci1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wYXNzZW5nZXItc2VsZWN0LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUGFzc2VuZ2VyU2VsZWN0Q29tcG9uZW50IGV4dGVuZHMgTmFzQ29tcG9uZW50QmFzZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBWaWV3Q2hpbGRyZW4oTnVtYmVyRmllbGRDb21wb25lbnQpIG51bWJlckZpZWxkcyE6IFF1ZXJ5TGlzdDxOdW1iZXJGaWVsZENvbXBvbmVudD47XG5cbiAgdG90YWxDb3VudDogbnVtYmVyO1xuICBpc0dyb3VwQm9va2luZzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBbiBhcnJheSBvZiBkaWZmZXJlbnQgcGFzc2VuZ2VyIHR5cGVzIHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQuXG4gICovXG4gIEBJbnB1dCgpIHBhc3NlbmdlcnMgPSBuZXcgQXJyYXk8UGFzc2VuZ2Vyc01vZGVsPigpO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFRoZSB0b3RhbCBtYXhpbXVtIGFtb3VudCBvZiBwYXNzZW5nZXJzLlxuICAqL1xuICBASW5wdXQoKSBtYXhQYXhDb3VudDogbnVtYmVyID0gMTA7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogVGhlIG1pbmltdW0gYW1vdW50IG9mIGFkdWx0cyB0aGF0IGNhbiBiZSBzZWxlY3RlZC5cbiAgKi9cbiAgQElucHV0KCkgbWluQWR1bHRDb3VudDogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFRoZSBsaW1pdCBmb3Igd2hlbiB0aGUgdG90YWwgYW1vdW50IG9mIHBhc3NlbmdlcnMgZXhjZWVkcyB0byBiZSBhIGdyb3VwIGJvb2tpbmcuXG4gICovXG4gIEBJbnB1dCgpIGdyb3VwQm9va2luZ0xpbWl0OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSB0aXRsZSB0aGF0IHdpbGwgYmUgYWRkZWQgdG8gdGhlIGRyb3Bkb3duLlxuICAqL1xuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgbGFiZWwgZm9yIHRoZSBhZHVsdHMgcGFzc2VuZ2VyIHR5cGUuXG4gICovXG4gIEBJbnB1dCgpIGFkdWx0c0xhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBsYWJlbCBmb3IgdGhlIGNoaWxkcmVuIHBhc3NlbmdlciB0eXBlLlxuICAqL1xuICBASW5wdXQoKSBjaGlsZHJlbkxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIGxhYmVsIGZvciB0aGUgaW5mYW50cyBwYXNzZW5nZXIgdHlwZS5cbiAgICovXG4gIEBJbnB1dCgpIGluZmFudHNMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICogQHByb3BlcnR5IElucHV0XG4gKiBAZGVzY3JpcHRpb25cbiAqIEEgbGFiZWwgZm9yIHRoZSBhZHVsdHMgcGFzc2VuZ2VyIHR5cGUuXG4qL1xuICBASW5wdXQoKSB5b3V0aHNMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgbGFiZWwgZm9yIHRoZSBhZHVsdHMgcGFzc2VuZ2VyIHR5cGUuXG4gICovXG4gIEBJbnB1dCgpIHlvdW5nQWR1bHRzTGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIGxhYmVsIHRoYXQgd2lsbCBhcHBlYXIgd2hlbiB0b3RhbCBudW1iZXIgb2Ygc2VsZWN0ZWQgcGFzc2VuZ2VycyBleGNlZWRzIHRoZSBncm91cCBib29raW5nIGxpbWl0XG4gICovXG4gIEBJbnB1dCgpIGdyb3VwQm9va2luZ0xhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQWRkcyB0aGUgcGFyZW50J3MgZm9ybSBncm91cC5cbiAgICogSXQgcmVxdWlyZXMgdGhhdCB0aGUgY29uc3VtZXIgaW5jbHVkZWQgUmVhY3RpdmVGb3Jtc01vZHVsZSBpbiBpdCdzIG1vZHVsZS5cbiAgICogSXQgaXMgcmVxdWllcmVkIHRvIGJlIGZpbGxlZCBpZiBuYXNGb3JtQ29udHJvbE5hbWUgYWRkZWQuXG4gICovXG4gIEBJbnB1dCgpIG5hc0Zvcm1Hcm91cDogRm9ybUdyb3VwO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFNldHMgYSBmb3JtQ29udHJvbE5hbWUgZGlyZWN0aXZlIHRvIHRoZSBpbnB1dC5cbiAgICogSXQgcmVxdWlyZXMgdGhhdCB0aGUgY29uc3VtZXIgaW5jbHVkZWQgUmVhY3RpdmVGb3Jtc01vZHVsZSBpbiBpdCdzIG1vZHVsZS5cbiAgICogSXQgcmVxdWllcnMgdGhhdCB0aGUgbmFzRm9ybUdyb3VwIGlucHV0IGlzIGZpbGxlZC5cbiAgKi9cbiAgQElucHV0KCkgbmFzRm9ybUNvbnRyb2xHcm91cEJvb2tpbmc6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBUklBIGxhYmVsIGZvciB0aGUgc3VidHJhY3QgYnV0dG9ucy5cbiAgKi9cbiAgQElucHV0KCkgYXJpYUxhYmVsU3VidHJhY3Q6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBUklBIGxhYmVsIGZvciB0aGUgYWRkIGJ1dHRvbnMuXG4gICAqL1xuICBASW5wdXQoKSBhcmlhTGFiZWxBZGQ6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IE91dHB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQW4gZXZlbnQgdGhhdCBpcyBmaXJlZCBldmVyeSB0aW1lIGEgcGFzc2VuZ2VyIHNlbGVjdGlvbiBjaGFuZ2UgaXMgcGVyZm9ybWVkLlxuICAqL1xuICBAT3V0cHV0KCkgcGFzc2VuZ2Vyc0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8QXJyYXk8UGFzc2VuZ2Vyc01vZGVsPj4oKTtcblxuICAvKipcbiAgICogQHByb3BlcnR5IE91dHB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQW4gZXZlbnQgdGhhdCBpcyBmaXJlZCBldmVyeSB0aW1lIGEgcGFzc2VuZ2VyIHNlbGVjdGlvbiBjaGFuZ2UgaXMgcGVyZm9ybWVkLlxuICAqL1xuICBAT3V0cHV0KCkgZm9jdXNPbk5leHQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAvKipcbiAgICogQHByb3BlcnR5IE91dHB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQW4gZXZlbnQgdGhhdCBpcyBmaXJlZCBldmVyeSB0aW1lIGEgcGFzc2VuZ2VyIHNlbGVjdGlvbiBjaGFuZ2UgaXMgcGVyZm9ybWVkLlxuICAqL1xuICBAT3V0cHV0KCkgZm9jdXNPblByZXZpb3VzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoJ25hcy1wYXNzZW5nZXItc2VsZWN0Jyk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldFRvdGFsQ291bnQoKTtcbiAgfVxuXG4gIGdldExhYmVsKHR5cGU6IFBhc3NlbmdlclR5cGUpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSBQYXNzZW5nZXJUeXBlLkFkdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5hZHVsdHNMYWJlbDtcbiAgICAgIGNhc2UgUGFzc2VuZ2VyVHlwZS5DaGlsZDpcbiAgICAgICAgcmV0dXJuIHRoaXMuY2hpbGRyZW5MYWJlbDtcbiAgICAgIGNhc2UgUGFzc2VuZ2VyVHlwZS5JbmZhbnQ6XG4gICAgICAgIHJldHVybiB0aGlzLmluZmFudHNMYWJlbDtcbiAgICAgIGNhc2UgUGFzc2VuZ2VyVHlwZS5Zb3V0aDpcbiAgICAgICAgcmV0dXJuIHRoaXMueW91dGhzTGFiZWw7XG4gICAgICBjYXNlIFBhc3NlbmdlclR5cGUuWW91bmdBZHVsdDpcbiAgICAgICAgcmV0dXJuIHRoaXMueW91bmdBZHVsdHNMYWJlbDtcbiAgICB9XG4gIH1cblxuICBrZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50LCBpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICBpZiAoaW5kZXggPT09IHRoaXMucGFzc2VuZ2Vycy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgdGhpcy5udW1iZXJGaWVsZHMuZmlyc3QuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMubnVtYmVyRmllbGRzLnRvQXJyYXkoKVtpbmRleCArIDFdLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0Fycm93VXAnOlxuICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgICAgICB0aGlzLm51bWJlckZpZWxkcy50b0FycmF5KClbdGhpcy5wYXNzZW5nZXJzLmxlbmd0aCAtIDFdLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLm51bWJlckZpZWxkcy50b0FycmF5KClbaW5kZXggLSAxXS5pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdUYWInOlxuICAgICAgICBpZiAoIWV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgICAgdGhpcy5mb2N1c09uTmV4dC5lbWl0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAoZXZlbnQuc2hpZnRLZXkpIHtcbiAgICAgICAgICB0aGlzLmZvY3VzT25QcmV2aW91cy5lbWl0KCk7XG4gICAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzZXRQYXNzZW5nZXJzQ291bnQocGFzc2VuZ2VyczogUGFzc2VuZ2Vyc01vZGVsLCBjb3VudDogbnVtYmVyKTogdm9pZCB7XG4gICAgcGFzc2VuZ2Vycy5jb3VudCA9IGNvdW50O1xuXG4gICAgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5BZHVsdCkge1xuICAgICAgaWYgKHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLkluZmFudCkpIHtcbiAgICAgICAgY29uc3QgaW5mYW50c0NvdW50ID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuSW5mYW50KS5jb3VudDtcbiAgICAgICAgaWYgKGluZmFudHNDb3VudCA+IHBhc3NlbmdlcnMuY291bnQgJiYgdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuSW5mYW50KSkge1xuICAgICAgICAgIGNvbnN0IGluZmFudCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLkluZmFudCk7XG5cbiAgICAgICAgICBpZiAoaW5mYW50KSB7XG4gICAgICAgICAgICBpbmZhbnQuY291bnQgPSBwYXNzZW5nZXJzLmNvdW50O1xuXG4gICAgICAgICAgICBpZiAoaW5mYW50LmZvcm1Hcm91cCAmJiBpbmZhbnQuZm9ybUNvbnRyb2xOYW1lKSB7XG4gICAgICAgICAgICAgIGluZmFudC5mb3JtR3JvdXAuZ2V0KGluZmFudC5mb3JtQ29udHJvbE5hbWUpLnBhdGNoVmFsdWUoaW5mYW50LmNvdW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgeW91bmdBZHVsdCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdW5nQWR1bHQpO1xuICAgICAgY29uc3QgY2hpbGQgPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5DaGlsZCk7XG4gICAgICBpZiAoeW91bmdBZHVsdCAmJiBjaGlsZCkge1xuICAgICAgICBpZiAocGFzc2VuZ2Vycy5jb3VudCA9PT0gMCAmJiBjaGlsZCkge1xuXG4gICAgICAgICAgaWYgKGNoaWxkKSB7XG4gICAgICAgICAgICBjaGlsZC5jb3VudCA9IDA7XG5cbiAgICAgICAgICAgIGlmIChjaGlsZC5mb3JtR3JvdXAgJiYgY2hpbGQuZm9ybUNvbnRyb2xOYW1lKSB7XG4gICAgICAgICAgICAgIGNoaWxkLmZvcm1Hcm91cC5nZXQoY2hpbGQuZm9ybUNvbnRyb2xOYW1lKS5wYXRjaFZhbHVlKDApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91dGgpIHtcbiAgICAgIGlmICh0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5JbmZhbnQpKSB7XG4gICAgICAgIGNvbnN0IGluZmFudHNDb3VudCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLkluZmFudCkuY291bnQ7XG4gICAgICAgIGlmIChpbmZhbnRzQ291bnQgPiBwYXNzZW5nZXJzLmNvdW50ICYmIHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLkluZmFudCkpIHtcbiAgICAgICAgICBjb25zdCBpbmZhbnQgPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5JbmZhbnQpO1xuXG4gICAgICAgICAgaWYgKGluZmFudCkge1xuICAgICAgICAgICAgaW5mYW50LmNvdW50ID0gcGFzc2VuZ2Vycy5jb3VudDtcblxuICAgICAgICAgICAgaWYgKGluZmFudC5mb3JtR3JvdXAgJiYgaW5mYW50LmZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICAgICAgICBpbmZhbnQuZm9ybUdyb3VwLmdldChpbmZhbnQuZm9ybUNvbnRyb2xOYW1lKS5wYXRjaFZhbHVlKGluZmFudC5jb3VudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5BZHVsdCB8fCBwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91dGgpIHtcbiAgICAgIGNvbnN0IGFkdWx0ID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuQWR1bHQpO1xuICAgICAgY29uc3QgeW91dGggPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3V0aCk7XG5cbiAgICAgIGlmIChhZHVsdCAmJiB5b3V0aCkge1xuICAgICAgICBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLkFkdWx0ICYmIGFkdWx0LmNvdW50ID4gMCkge1xuICAgICAgICAgIGlmICh5b3V0aC5mb3JtR3JvdXAgJiYgeW91dGguZm9ybUNvbnRyb2xOYW1lICYmIHlvdXRoLmNvdW50ICE9PSAwKSB7XG4gICAgICAgICAgICB5b3V0aC5mb3JtR3JvdXAuZ2V0KHlvdXRoLmZvcm1Db250cm9sTmFtZSkucGF0Y2hWYWx1ZSgwKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgeW91dGguY291bnQgPSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3V0aCkge1xuICAgICAgICAgIGFkdWx0LmNvdW50ID0geW91dGguY291bnQgPiAwID8gMCA6IGFkdWx0LmNvdW50O1xuXG4gICAgICAgICAgaWYgKGFkdWx0LmZvcm1Hcm91cCAmJiBhZHVsdC5mb3JtQ29udHJvbE5hbWUgJiYgeW91dGguZm9ybUdyb3VwICYmIHlvdXRoLmZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICAgICAgaWYgKHRoaXMubWluQWR1bHRDb3VudCAmJiB5b3V0aC5jb3VudCA9PT0gMCkge1xuICAgICAgICAgICAgICBhZHVsdC5mb3JtR3JvdXAuZ2V0KGFkdWx0LmZvcm1Db250cm9sTmFtZSkucGF0Y2hWYWx1ZSh0aGlzLm1pbkFkdWx0Q291bnQpO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh5b3V0aC5jb3VudCA+IDApIHtcbiAgICAgICAgICAgICAgYWR1bHQuZm9ybUdyb3VwLmdldChhZHVsdC5mb3JtQ29udHJvbE5hbWUpLnBhdGNoVmFsdWUoMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3VuZ0FkdWx0IHx8IHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3V0aCkge1xuICAgICAgY29uc3QgeW91bmdBZHVsdCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdW5nQWR1bHQpO1xuICAgICAgY29uc3QgeW91dGggPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3V0aCk7XG5cbiAgICAgIGlmICh5b3VuZ0FkdWx0ICYmIHlvdXRoKSB7XG4gICAgICAgIGlmIChwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91dGggJiYgeW91dGguY291bnQgPiAwKSB7XG4gICAgICAgICAgaWYgKHlvdW5nQWR1bHQuZm9ybUdyb3VwICYmIHlvdXRoLmZvcm1Db250cm9sTmFtZSAmJiB5b3VuZ0FkdWx0LmNvdW50ICE9PSAwKSB7XG4gICAgICAgICAgICB5b3VuZ0FkdWx0LmZvcm1Hcm91cC5nZXQoeW91dGguZm9ybUNvbnRyb2xOYW1lKS5wYXRjaFZhbHVlKDApO1xuICAgICAgICAgIH1cbiAgICAgICAgICB5b3VuZ0FkdWx0LmNvdW50ID0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91bmdBZHVsdCkge1xuICAgICAgICAgIHlvdXRoLmNvdW50ID0geW91bmdBZHVsdC5jb3VudCA+IDAgPyAwIDogeW91dGguY291bnQ7XG5cbiAgICAgICAgICBpZiAoeW91dGguZm9ybUdyb3VwICYmIHlvdXRoLmZvcm1Db250cm9sTmFtZSAmJiB5b3VuZ0FkdWx0LmZvcm1Hcm91cCAmJiB5b3VuZ0FkdWx0LmZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICAgICAgaWYgKHRoaXMubWluQWR1bHRDb3VudCAmJiB5b3VuZ0FkdWx0LmNvdW50ID09PSAwKSB7XG4gICAgICAgICAgICAgIHlvdXRoLmZvcm1Hcm91cC5nZXQoeW91dGguZm9ybUNvbnRyb2xOYW1lKS5wYXRjaFZhbHVlKHRoaXMubWluQWR1bHRDb3VudCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHlvdXRoLmNvdW50ID4gMCkge1xuICAgICAgICAgICAgICB5b3V0aC5mb3JtR3JvdXAuZ2V0KHlvdXRoLmZvcm1Db250cm9sTmFtZSkucGF0Y2hWYWx1ZSgwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnNldFRvdGFsQ291bnQoKTtcbiAgICB0aGlzLnBhc3NlbmdlcnNDaGFuZ2UuZW1pdCh0aGlzLnBhc3NlbmdlcnMpO1xuICB9XG5cbiAgZ2V0TWF4KHBhc3NlbmdlcnM6IFBhc3NlbmdlcnNNb2RlbCk6IG51bWJlciB7XG4gICAgaWYgKHBhc3NlbmdlcnM/LmRpc2FibGVkKSB7XG4gICAgICByZXR1cm4gcGFzc2VuZ2Vycz8uY291bnQ7XG4gICAgfVxuXG4gICAgY29uc3QgYWR1bHRzID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuQWR1bHQpO1xuICAgIGNvbnN0IHlvdXRocyA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdXRoKTtcbiAgICBjb25zdCB5b3VuZ0FkdWx0ID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91bmdBZHVsdCk7XG5cbiAgICBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLkluZmFudCkge1xuICAgICAgaWYgKGFkdWx0cyAmJiBhZHVsdHMuY291bnQgPiAwKSB7XG4gICAgICAgIGlmICghYWR1bHRzLmZvcm1Hcm91cCB8fCAhYWR1bHRzLmZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICAgIHJldHVybiBhZHVsdHMuY291bnQ7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBhZHVsdHNGb3JtQ29udHJvbCA9IGFkdWx0cy5mb3JtR3JvdXAuZ2V0KGFkdWx0cy5mb3JtQ29udHJvbE5hbWUpO1xuXG4gICAgICAgIGlmICghYWR1bHRzRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgICByZXR1cm4gYWR1bHRzLmNvdW50O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGFkdWx0c0Zvcm1Db250cm9sLnZhbHVlIGFzIG51bWJlcjtcbiAgICAgIH1cblxuICAgICAgaWYgKHlvdXRocyAmJiB5b3V0aHMuY291bnQgPiAwKSB7XG4gICAgICAgIGlmICgheW91dGhzLmZvcm1Hcm91cCB8fCAheW91dGhzLmZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICAgIHJldHVybiB5b3V0aHMuY291bnQ7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB5b3V0aHNGb3JtQ29udHJvbCA9IHlvdXRocy5mb3JtR3JvdXAuZ2V0KHlvdXRocy5mb3JtQ29udHJvbE5hbWUpO1xuXG4gICAgICAgIGlmICgheW91dGhzRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgICByZXR1cm4geW91dGhzLmNvdW50O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHlvdXRoc0Zvcm1Db250cm9sLnZhbHVlIGFzIG51bWJlcjtcbiAgICAgIH1cblxuICAgICAgaWYgKHlvdW5nQWR1bHQgJiYgKGFkdWx0cyAmJiBhZHVsdHMuY291bnQgPD0gMCkpIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICB9XG5cbiAgICAgIGlmICh5b3VuZ0FkdWx0ICYmICh5b3V0aHMgJiYgeW91dGhzLmNvdW50IDw9IDApKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gMDtcblxuICAgIH0gZWxzZSBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLkNoaWxkICYmIHRoaXMudG90YWxDb3VudCA8IHRoaXMubWF4UGF4Q291bnQpIHtcbiAgICAgIGlmIChhZHVsdHMgJiYgeW91bmdBZHVsdCkge1xuICAgICAgICBpZiAoYWR1bHRzLmNvdW50IDw9IDApIHtcbiAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHlvdXRocyAmJiB5b3VuZ0FkdWx0KSB7XG4gICAgICAgIGlmICh5b3V0aHMuY291bnQgPD0gMCkge1xuICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0aGlzLnRvdGFsQ291bnQgPj0gdGhpcy5tYXhQYXhDb3VudCkge1xuICAgICAgaWYgKCFwYXNzZW5nZXJzLmZvcm1Hcm91cCB8fCAhcGFzc2VuZ2Vycy5mb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgICAgcmV0dXJuIHBhc3NlbmdlcnMuY291bnQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHBhc3NlbmdlcnNGb3JtQ29udHJvbCA9IHBhc3NlbmdlcnMuZm9ybUdyb3VwLmdldChwYXNzZW5nZXJzLmZvcm1Db250cm9sTmFtZSk7XG5cbiAgICAgIGlmICghcGFzc2VuZ2Vyc0Zvcm1Db250cm9sKSB7XG4gICAgICAgIHJldHVybiBwYXNzZW5nZXJzLmNvdW50O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFzc2VuZ2Vyc0Zvcm1Db250cm9sLnZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5tYXhQYXhDb3VudDtcbiAgICB9XG4gIH1cblxuICBnZXRNaW4ocGFzc2VuZ2VyczogUGFzc2VuZ2Vyc01vZGVsKTogbnVtYmVyIHtcbiAgICBpZiAocGFzc2VuZ2Vycz8uZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybiBwYXNzZW5nZXJzPy5jb3VudDtcbiAgICB9XG4gICAgY29uc3QgYWR1bHQgPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5BZHVsdCk7XG4gICAgY29uc3QgeW91dGggPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3V0aCk7XG4gICAgY29uc3QgeW91bmdBZHVsdCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdW5nQWR1bHQpO1xuXG4gICAgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5BZHVsdCAmJiB5b3V0aCkge1xuICAgICAgY29uc3QgbWluID0gIXRoaXMubWluQWR1bHRDb3VudCA/IDAgOiB0aGlzLm1pbkFkdWx0Q291bnQ7XG4gICAgICBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLkFkdWx0ICYmIGFkdWx0LmNvdW50IDwgbWluICYmIHlvdXRoLmNvdW50ID09PSAwKSB7XG4gICAgICAgIHBhc3NlbmdlcnMuY291bnQgPSBtaW47XG4gICAgICAgIHJldHVybiBtaW47XG4gICAgICB9XG4gICAgICBpZiAocGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLkFkdWx0ICYmIGFkdWx0LmZvcm1Hcm91cCAmJiBhZHVsdC5mb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgICAgcmV0dXJuIG1pbjtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3V0aCAmJiB5b3VuZ0FkdWx0KSB7XG4gICAgICBjb25zdCBtaW4gPSAhdGhpcy5taW5BZHVsdENvdW50ID8gMCA6IHRoaXMubWluQWR1bHRDb3VudDtcbiAgICAgIGlmIChwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91dGggJiYgeW91dGguY291bnQgPCBtaW4gJiYgeW91bmdBZHVsdC5jb3VudCA9PT0gMCkge1xuICAgICAgICBwYXNzZW5nZXJzLmNvdW50ID0gbWluO1xuICAgICAgICByZXR1cm4gbWluO1xuICAgICAgfVxuICAgICAgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3V0aCAmJiB5b3V0aC5mb3JtR3JvdXAgJiYgeW91dGguZm9ybUNvbnRyb2xOYW1lKSB7XG4gICAgICAgIHJldHVybiBtaW47XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICghYWR1bHQgJiYgcGFzc2VuZ2Vycy50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdXRoKSB7XG4gICAgICBjb25zdCBtaW4gPSAhdGhpcy5taW5BZHVsdENvdW50ID8gMCA6IHRoaXMubWluQWR1bHRDb3VudDtcbiAgICAgIHJldHVybiBtaW47XG4gICAgfSBlbHNlIGlmIChwYXNzZW5nZXJzLnR5cGUgPT09IFBhc3NlbmdlclR5cGUuQWR1bHQgJiYgeW91bmdBZHVsdCkge1xuICAgICAgaWYgKHlvdW5nQWR1bHQuY291bnQgPiAwKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMubWluQWR1bHRDb3VudDtcbiAgICB9IGVsc2UgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5Zb3VuZ0FkdWx0ICYmIGFkdWx0KSB7XG4gICAgICBpZiAoYWR1bHQuY291bnQgPiAwKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMubWluQWR1bHRDb3VudDtcbiAgICB9IGVsc2UgaWYgKHBhc3NlbmdlcnMudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5BZHVsdCkge1xuICAgICAgcmV0dXJuIHRoaXMubWluQWR1bHRDb3VudDtcbiAgICB9XG5cbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0VG90YWxDb3VudCgpIHtcbiAgICBjb25zdCBhZHVsdCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLkFkdWx0KTtcbiAgICBjb25zdCB5b3V0aCA9IHRoaXMucGFzc2VuZ2Vycy5maW5kKHggPT4geC50eXBlID09PSBQYXNzZW5nZXJUeXBlLllvdXRoKTtcbiAgICBjb25zdCB5b3VuZ0FkdWx0ID0gdGhpcy5wYXNzZW5nZXJzLmZpbmQoeCA9PiB4LnR5cGUgPT09IFBhc3NlbmdlclR5cGUuWW91bmdBZHVsdCk7XG4gICAgY29uc3QgY2hpbGQgPSB0aGlzLnBhc3NlbmdlcnMuZmluZCh4ID0+IHgudHlwZSA9PT0gUGFzc2VuZ2VyVHlwZS5DaGlsZCk7XG5cbiAgICBsZXQgYWR1bHRDb3VudCA9IDA7XG4gICAgbGV0IHlvdXRoQ291bnQgPSAwO1xuICAgIGxldCB5b3VuZ0FkdWx0Q291bnQgPSAwO1xuICAgIGxldCBjaGlsZENvdW50ID0gMDtcblxuICAgIGlmIChhZHVsdCkge1xuXG4gICAgICBpZiAoIWFkdWx0LmZvcm1Hcm91cCB8fCAhYWR1bHQuZm9ybUNvbnRyb2xOYW1lKSB7XG4gICAgICAgIGFkdWx0Q291bnQgPSBhZHVsdC5jb3VudDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGFkdWx0c0NvbnRyb2wgPSBhZHVsdC5mb3JtR3JvdXAuZ2V0KGFkdWx0LmZvcm1Db250cm9sTmFtZSk7XG5cbiAgICAgICAgaWYgKCFhZHVsdHNDb250cm9sKSB7XG4gICAgICAgICAgYWR1bHRDb3VudCA9IGFkdWx0LmNvdW50O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGFkdWx0Q291bnQgPSBhZHVsdHNDb250cm9sLnZhbHVlIGFzIG51bWJlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh5b3V0aCkge1xuICAgICAgaWYgKCF5b3V0aC5mb3JtR3JvdXAgfHwgIXlvdXRoLmZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICB5b3V0aENvdW50ID0geW91dGguY291bnQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB5b3V0aHNDb250cm9sID0geW91dGguZm9ybUdyb3VwLmdldCh5b3V0aC5mb3JtQ29udHJvbE5hbWUpO1xuXG4gICAgICAgIGlmICgheW91dGhzQ29udHJvbCkge1xuICAgICAgICAgIHlvdXRoQ291bnQgPSB5b3V0aC5jb3VudDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB5b3V0aENvdW50ID0geW91dGhzQ29udHJvbC52YWx1ZSBhcyBudW1iZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoeW91bmdBZHVsdCkge1xuICAgICAgaWYgKCF5b3VuZ0FkdWx0LmZvcm1Hcm91cCB8fCAheW91bmdBZHVsdC5mb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgICAgeW91bmdBZHVsdENvdW50ID0geW91bmdBZHVsdC5jb3VudDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHlvdW5nQWR1bHRzQ29udHJvbCA9IHlvdW5nQWR1bHQuZm9ybUdyb3VwLmdldCh5b3VuZ0FkdWx0LmZvcm1Db250cm9sTmFtZSk7XG5cbiAgICAgICAgaWYgKCF5b3VuZ0FkdWx0c0NvbnRyb2wpIHtcbiAgICAgICAgICB5b3VuZ0FkdWx0Q291bnQgPSB5b3VuZ0FkdWx0LmNvdW50O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHlvdW5nQWR1bHRDb3VudCA9IHlvdW5nQWR1bHRzQ29udHJvbC52YWx1ZSBhcyBudW1iZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoY2hpbGQpIHtcbiAgICAgIGlmICghY2hpbGQuZm9ybUdyb3VwIHx8ICFjaGlsZC5mb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgICAgY2hpbGRDb3VudCA9IGNoaWxkLmNvdW50O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgY2hpbGRzQ29udHJvbCA9IGNoaWxkLmZvcm1Hcm91cC5nZXQoY2hpbGQuZm9ybUNvbnRyb2xOYW1lKTtcblxuICAgICAgICBpZiAoIWNoaWxkc0NvbnRyb2wpIHtcbiAgICAgICAgICBjaGlsZENvdW50ID0gY2hpbGQuY291bnQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY2hpbGRDb3VudCA9IGNoaWxkc0NvbnRyb2wudmFsdWUgYXMgbnVtYmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy50b3RhbENvdW50ID0gYWR1bHRDb3VudCArIGNoaWxkQ291bnQgKyB5b3V0aENvdW50ICsgeW91bmdBZHVsdENvdW50O1xuXG4gICAgaWYgKHRoaXMubmFzRm9ybUdyb3VwICYmIHRoaXMubmFzRm9ybUNvbnRyb2xHcm91cEJvb2tpbmcpIHtcbiAgICAgIGNvbnN0IGdyb3VwQm9va2luZ0NvbnRyb2wgPSB0aGlzLm5hc0Zvcm1Hcm91cC5nZXQodGhpcy5uYXNGb3JtQ29udHJvbEdyb3VwQm9va2luZyk7XG5cbiAgICAgIHRoaXMuaXNHcm91cEJvb2tpbmcgPSB0aGlzLnRvdGFsQ291bnQgPj0gdGhpcy5ncm91cEJvb2tpbmdMaW1pdDtcblxuICAgICAgaWYgKHRoaXMuZ3JvdXBCb29raW5nTGltaXQgPCAxKSB7XG4gICAgICAgIHRoaXMuaXNHcm91cEJvb2tpbmcgPSBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgaWYgKGdyb3VwQm9va2luZ0NvbnRyb2wudmFsdWUgIT09IHRoaXMuaXNHcm91cEJvb2tpbmcpIHtcbiAgICAgICAgZ3JvdXBCb29raW5nQ29udHJvbC5wYXRjaFZhbHVlKHRoaXMuaXNHcm91cEJvb2tpbmcpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGhpcy5ncm91cEJvb2tpbmdMaW1pdCkge1xuICAgICAgdGhpcy5pc0dyb3VwQm9va2luZyA9IHRoaXMudG90YWxDb3VudCA+PSB0aGlzLmdyb3VwQm9va2luZ0xpbWl0O1xuICAgIH1cblxuICB9XG5cbn1cbiIsIjxoMiAqbmdJZj1cInRpdGxlIHx8IGlzR3JvdXBCb29raW5nXCIgW25hc0NsYXNzXT1cImdldENsYXNzKCd0aXRsZScpXCI+XG4gIDxzcGFuICpuZ0lmPVwidGl0bGVcIj57e3RpdGxlfX08L3NwYW4+XG4gIDxzcGFuICpuZ0lmPVwiaXNHcm91cEJvb2tpbmdcIiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ3RpdGxlLS1ncm91cC1ib29raW5nJylcIj57e2dyb3VwQm9va2luZ0xhYmVsfX08L3NwYW4+XG48L2gyPlxuPHVsIFtuYXNDbGFzc109XCJnZXRDbGFzcygnbGlzdCcpXCI+XG4gIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBwYXNzZW5nZXJzOyBpbmRleCBhcyBjb3VudFwiIFtuYXNDbGFzc109XCJnZXRDbGFzcygnbGlzdC1pdGVtJylcIj5cbiAgICA8bGFiZWwgW25hc0NsYXNzXT1cImdldENsYXNzKCdsYWJlbCcpXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJnZXRMYWJlbChpdGVtLnR5cGUpXCI+e3tnZXRMYWJlbChpdGVtLnR5cGUpfX08L2xhYmVsPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5mb3JtR3JvdXAgfHwgIWl0ZW0uZm9ybUNvbnRyb2xOYW1lOyBlbHNlIHJlYWN0aXZlRm9ybVwiPlxuICAgICAgPG5hcy1udW1iZXItZmllbGQgY29tcGFjdCBzcGFjZWxlc3Mgc2ltcGxlIFtpZF09XCJpdGVtPy5pZFwiIFthcmlhTGFiZWxdPVwiZ2V0TGFiZWwoaXRlbS50eXBlKVwiXG4gICAgICAgIFthcmlhTGFiZWxTdWJ0cmFjdF09XCJhcmlhTGFiZWxTdWJ0cmFjdFwiIFthcmlhTGFiZWxBZGRdPVwiYXJpYUxhYmVsQWRkXCIgW251bWJlcl09XCJpdGVtLmNvdW50XCIgW21heF09XCJnZXRNYXgoaXRlbSlcIlxuICAgICAgICBbbWluXT1cImdldE1pbihpdGVtKVwiIChudW1iZXJDaGFuZ2UpPVwic2V0UGFzc2VuZ2Vyc0NvdW50KGl0ZW0sICRldmVudClcIlxuICAgICAgICAoa2V5ZG93bik9XCJrZXlEb3duKCRldmVudCwgY291bnQpXCI+PC9uYXMtbnVtYmVyLWZpZWxkPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjcmVhY3RpdmVGb3JtPlxuICAgICAgPG5hcy1udW1iZXItZmllbGQgY29tcGFjdCBzcGFjZWxlc3Mgc2ltcGxlIFtpZF09XCJpdGVtPy5pZFwiIFthcmlhTGFiZWxdPVwiZ2V0TGFiZWwoaXRlbS50eXBlKVwiXG4gICAgICAgIFthcmlhTGFiZWxTdWJ0cmFjdF09XCJhcmlhTGFiZWxTdWJ0cmFjdFwiIFthcmlhTGFiZWxBZGRdPVwiYXJpYUxhYmVsQWRkXCIgW25hc0Zvcm1Hcm91cF09XCJpdGVtLmZvcm1Hcm91cFwiXG4gICAgICAgIFtuYXNGb3JtQ29udHJvbE5hbWVdPVwiaXRlbS5mb3JtQ29udHJvbE5hbWVcIiBbbnVtYmVyXT1cIml0ZW0uZm9ybUdyb3VwPy5nZXQoaXRlbS5mb3JtQ29udHJvbE5hbWUpPy52YWx1ZVwiXG4gICAgICAgIFttYXhdPVwiZ2V0TWF4KGl0ZW0pXCIgW21pbl09XCJnZXRNaW4oaXRlbSlcIiAoa2V5ZG93bik9XCJrZXlEb3duKCRldmVudCwgY291bnQpXCJcbiAgICAgICAgKG51bWJlckNoYW5nZSk9XCJzZXRQYXNzZW5nZXJzQ291bnQoaXRlbSwgJGV2ZW50KVwiPjwvbmFzLW51bWJlci1maWVsZD5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2xpPlxuPC91bD4iXX0=
@@ -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 { PassengerSelectComponent } from './passenger-select.component';
5
- import { NumberFieldModule } from '../number-field/number-field.module';
6
- import * as i0 from "@angular/core";
7
- export class PassengerSelectModule {
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PassengerSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: PassengerSelectModule, declarations: [PassengerSelectComponent], imports: [CommonModule,
10
- NumberFieldModule,
11
- NasClassModule], exports: [PassengerSelectComponent] }); }
12
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PassengerSelectModule, imports: [CommonModule,
13
- NumberFieldModule,
14
- NasClassModule] }); }
15
- }
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PassengerSelectModule, decorators: [{
17
- type: NgModule,
18
- args: [{
19
- imports: [
20
- CommonModule,
21
- NumberFieldModule,
22
- NasClassModule
23
- ],
24
- declarations: [PassengerSelectComponent],
25
- exports: [PassengerSelectComponent]
26
- }]
27
- }] });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc2VuZ2VyLXNlbGVjdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Bhc3Nlbmdlci1zZWxlY3QvcGFzc2VuZ2VyLXNlbGVjdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2xGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOztBQVd4RSxNQUFNLE9BQU8scUJBQXFCOytHQUFyQixxQkFBcUI7Z0hBQXJCLHFCQUFxQixpQkFIakIsd0JBQXdCLGFBSnJDLFlBQVk7WUFDWixpQkFBaUI7WUFDakIsY0FBYyxhQUdOLHdCQUF3QjtnSEFFdkIscUJBQXFCLFlBUDlCLFlBQVk7WUFDWixpQkFBaUI7WUFDakIsY0FBYzs7NEZBS0wscUJBQXFCO2tCQVRqQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGlCQUFpQjt3QkFDakIsY0FBYztxQkFDZjtvQkFDRCxZQUFZLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztvQkFDeEMsT0FBTyxFQUFFLENBQUMsd0JBQXdCLENBQUM7aUJBQ3BDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOYXNDbGFzc01vZHVsZSB9IGZyb20gJy4uLy4uL2NvcmUvZGlyZWN0aXZlcy9uYXMtY2xhc3MvbmFzLWNsYXNzLm1vZHVsZSc7XG5pbXBvcnQgeyBQYXNzZW5nZXJTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL3Bhc3Nlbmdlci1zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7IE51bWJlckZpZWxkTW9kdWxlIH0gZnJvbSAnLi4vbnVtYmVyLWZpZWxkL251bWJlci1maWVsZC5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE51bWJlckZpZWxkTW9kdWxlLFxuICAgIE5hc0NsYXNzTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1Bhc3NlbmdlclNlbGVjdENvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtQYXNzZW5nZXJTZWxlY3RDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIFBhc3NlbmdlclNlbGVjdE1vZHVsZSB7IH1cbiJdfQ==
@@ -1,3 +0,0 @@
1
- export * from './phone-number.component';
2
- export * from './phone-number.module';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Bob25lLW51bWJlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3Bob25lLW51bWJlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9waG9uZS1udW1iZXIubW9kdWxlJztcbiJdfQ==