@norwegian/core-components 5.18.0 → 5.18.2

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 (515) hide show
  1. package/esm2020/lib/components/accordion/accordion.component.mjs +148 -0
  2. package/esm2020/lib/components/accordion/accordion.module.mjs +20 -0
  3. package/esm2020/lib/components/airport-select/airport-select-dropdown/airport-select-dropdown.component.mjs +610 -0
  4. package/esm2020/lib/components/airport-select/airport-select.component.mjs +438 -0
  5. package/esm2020/lib/components/airport-select/airport-select.module.mjs +42 -0
  6. package/esm2020/lib/components/airport-select/services/airport-select-dropdown.service.mjs +35 -0
  7. package/esm2020/lib/components/airport-select/services/airport-select.service.mjs +38 -0
  8. package/esm2020/lib/components/autocomplete/autocomplete.component.mjs +287 -0
  9. package/esm2020/lib/components/autocomplete/autocomplete.module.mjs +43 -0
  10. package/esm2020/lib/components/backdrop/backdrop.component.mjs +56 -0
  11. package/esm2020/lib/components/backdrop/backdrop.module.mjs +24 -0
  12. package/esm2020/lib/components/box/box.component.mjs +68 -0
  13. package/esm2020/lib/components/box/box.module.mjs +19 -0
  14. package/esm2020/lib/components/button/button.component.mjs +167 -0
  15. package/esm2020/lib/components/button/button.module.mjs +20 -0
  16. package/esm2020/lib/components/checkbox/checkbox.component.mjs +148 -0
  17. package/esm2020/lib/components/checkbox/checkbox.module.mjs +20 -0
  18. package/esm2020/lib/components/chip/chip.component.mjs +53 -0
  19. package/esm2020/lib/components/chip/chip.module.mjs +24 -0
  20. package/esm2020/lib/components/container/container.component.mjs +50 -0
  21. package/esm2020/lib/components/container/container.module.mjs +19 -0
  22. package/esm2020/lib/components/continue/continue.component.mjs +194 -0
  23. package/esm2020/lib/components/continue/continue.module.mjs +34 -0
  24. package/esm2020/lib/components/cover/cover.component.mjs +75 -0
  25. package/esm2020/lib/components/cover/cover.module.mjs +21 -0
  26. package/esm2020/lib/components/datepicker/calendar/calendar.component.mjs +583 -0
  27. package/esm2020/lib/components/datepicker/datepicker.component.mjs +550 -0
  28. package/esm2020/lib/components/datepicker/datepicker.module.mjs +55 -0
  29. package/esm2020/lib/components/datepicker/services/calendar.service.mjs +213 -0
  30. package/esm2020/lib/components/datepicker-combo/datepicker-combo.component.mjs +355 -0
  31. package/esm2020/lib/components/datepicker-combo/datepicker-combo.module.mjs +31 -0
  32. package/esm2020/lib/components/divider/divider.component.mjs +61 -0
  33. package/esm2020/lib/components/divider/divider.module.mjs +20 -0
  34. package/esm2020/lib/components/dropdown/dropdown.component.mjs +169 -0
  35. package/esm2020/lib/components/dropdown/dropdown.module.mjs +32 -0
  36. package/esm2020/lib/components/filter/filter.component.mjs +1253 -0
  37. package/esm2020/lib/components/filter/filter.module.mjs +73 -0
  38. package/esm2020/lib/components/grid/col/col.component.mjs +49 -0
  39. package/esm2020/lib/components/grid/grid.component.mjs +72 -0
  40. package/esm2020/lib/components/grid/grid.module.mjs +20 -0
  41. package/esm2020/lib/components/icon/icon.component.mjs +44 -0
  42. package/esm2020/lib/components/icon/icon.module.mjs +24 -0
  43. package/esm2020/lib/components/icon-list/icon-list.component.mjs +50 -0
  44. package/esm2020/lib/components/icon-list/icon-list.module.mjs +20 -0
  45. package/esm2020/lib/components/info/info.component.mjs +106 -0
  46. package/esm2020/lib/components/info/info.module.mjs +36 -0
  47. package/esm2020/lib/components/input/input.component.mjs +179 -0
  48. package/esm2020/lib/components/input/input.module.mjs +21 -0
  49. package/esm2020/lib/components/journey/journey.component.mjs +126 -0
  50. package/esm2020/lib/components/journey/journey.module.mjs +28 -0
  51. package/esm2020/lib/components/journey-availability/journey-availability.component.mjs +126 -0
  52. package/esm2020/lib/components/journey-availability/journey-availability.module.mjs +39 -0
  53. package/esm2020/lib/components/journey-availability-list/journey-availability-list.component.mjs +185 -0
  54. package/{esm2015/lib/components/journey-availability-list/journey-availability-list.module.js → esm2020/lib/components/journey-availability-list/journey-availability-list.module.mjs} +27 -14
  55. package/esm2020/lib/components/journey-selection/journey-selection.component.mjs +112 -0
  56. package/esm2020/lib/components/journey-selection/journey-selection.module.mjs +35 -0
  57. package/esm2020/lib/components/journey-stopover/journey-stopover.component.mjs +125 -0
  58. package/esm2020/lib/components/journey-stopover/journey-stopover.module.mjs +28 -0
  59. package/esm2020/lib/components/list/list-item/list-item.component.mjs +52 -0
  60. package/esm2020/lib/components/list/list.component.mjs +78 -0
  61. package/esm2020/lib/components/list/list.module.mjs +20 -0
  62. package/esm2020/lib/components/modal/modal.component.mjs +141 -0
  63. package/esm2020/lib/components/modal/modal.module.mjs +38 -0
  64. package/esm2020/lib/components/number-field/number-field.component.mjs +135 -0
  65. package/esm2020/lib/components/number-field/number-field.module.mjs +39 -0
  66. package/esm2020/lib/components/page-footer/page-footer.component.mjs +54 -0
  67. package/esm2020/lib/components/page-footer/page-footer.module.mjs +21 -0
  68. package/esm2020/lib/components/page-header/hamburger/hamburger.component.mjs +22 -0
  69. package/esm2020/lib/components/page-header/page-header.component.mjs +142 -0
  70. package/esm2020/lib/components/page-header/page-header.module.mjs +23 -0
  71. package/esm2020/lib/components/page-header/search/search.component.mjs +49 -0
  72. package/{esm2015/lib/components/passenger-select/models/passengers.model.js → esm2020/lib/components/passenger-select/models/passengers.model.mjs} +1 -1
  73. package/esm2020/lib/components/passenger-select/passenger-select.component.mjs +225 -0
  74. package/esm2020/lib/components/passenger-select/passenger-select.module.mjs +28 -0
  75. package/esm2020/lib/components/phone-number/phone-number.component.mjs +148 -0
  76. package/esm2020/lib/components/phone-number/phone-number.module.mjs +44 -0
  77. package/esm2020/lib/components/premium-toggle/premium-toggle.component.mjs +69 -0
  78. package/esm2020/lib/components/premium-toggle/premium-toggle.module.mjs +28 -0
  79. package/esm2020/lib/components/radio/radio.component.mjs +98 -0
  80. package/esm2020/lib/components/radio/radio.module.mjs +20 -0
  81. package/esm2020/lib/components/select/optgroup/optgroup.component.mjs +29 -0
  82. package/esm2020/lib/components/select/option/option.component.mjs +26 -0
  83. package/esm2020/lib/components/select/select.component.mjs +354 -0
  84. package/esm2020/lib/components/select/select.module.mjs +30 -0
  85. package/esm2020/lib/components/simple-list/simple-list.component.mjs +48 -0
  86. package/esm2020/lib/components/simple-list/simple-list.module.mjs +19 -0
  87. package/esm2020/lib/components/slide-toggle/slide-toggle.component.mjs +111 -0
  88. package/esm2020/lib/components/slide-toggle/slide-toggle.module.mjs +31 -0
  89. package/esm2020/lib/components/slider/slider.component.mjs +501 -0
  90. package/esm2020/lib/components/slider/slider.module.mjs +28 -0
  91. package/esm2020/lib/components/sort/sort.component.mjs +93 -0
  92. package/esm2020/lib/components/sort/sort.module.mjs +36 -0
  93. package/esm2020/lib/components/spinner/spinner.component.mjs +112 -0
  94. package/esm2020/lib/components/spinner/spinner.module.mjs +19 -0
  95. package/esm2020/lib/components/subsidy-discount/subsidy-discount.component.mjs +110 -0
  96. package/esm2020/lib/components/subsidy-discount/subsidy-discount.module.mjs +36 -0
  97. package/esm2020/lib/components/suggestions/suggestions.component.mjs +43 -0
  98. package/esm2020/lib/components/suggestions/suggestions.module.mjs +28 -0
  99. package/esm2020/lib/components/tab-group/tab/tab.component.mjs +131 -0
  100. package/esm2020/lib/components/tab-group/tab-group.component.mjs +87 -0
  101. package/esm2020/lib/components/tab-group/tab-group.module.mjs +29 -0
  102. package/esm2020/lib/components/table/column/column.component.mjs +16 -0
  103. package/esm2020/lib/components/table/column-group/column-group.component.mjs +30 -0
  104. package/esm2020/lib/components/table/services/table.service.mjs +21 -0
  105. package/esm2020/lib/components/table/table-body/table-body.component.mjs +23 -0
  106. package/esm2020/lib/components/table/table-foot/table-foot.component.mjs +23 -0
  107. package/esm2020/lib/components/table/table-head/table-head.component.mjs +23 -0
  108. package/esm2020/lib/components/table/table-row/table-data/table-data.component.mjs +15 -0
  109. package/esm2020/lib/components/table/table-row/table-header/table-header.component.mjs +15 -0
  110. package/esm2020/lib/components/table/table-row/table-row.component.mjs +23 -0
  111. package/esm2020/lib/components/table/table.component.mjs +29 -0
  112. package/esm2020/lib/components/table/table.module.mjs +68 -0
  113. package/esm2020/lib/components/textarea/textarea.component.mjs +93 -0
  114. package/esm2020/lib/components/textarea/textarea.module.mjs +31 -0
  115. package/esm2020/lib/components/toggle/toggle.component.mjs +103 -0
  116. package/esm2020/lib/components/toggle/toggle.module.mjs +35 -0
  117. package/esm2020/lib/components/trip-summary/trip-summary.component.mjs +170 -0
  118. package/esm2020/lib/components/trip-summary/trip-summary.module.mjs +36 -0
  119. package/esm2020/lib/components/weather-icon/weather-icon.component.mjs +60 -0
  120. package/esm2020/lib/components/weather-icon/weather-icon.module.mjs +19 -0
  121. package/esm2020/lib/core/base/nas-component.base.mjs +47 -0
  122. package/esm2020/lib/core/directives/nas-class/nas-class.directive.mjs +80 -0
  123. package/esm2020/lib/core/directives/nas-class/nas-class.module.mjs +22 -0
  124. package/{esm2015/lib/core/extensions/html-element.extension.js → esm2020/lib/core/extensions/html-element.extension.mjs} +1 -1
  125. package/esm2020/lib/core/services/abandoned-basket/abandoned-basket.service.mjs +58 -0
  126. package/esm2020/lib/core/services/animate-helper/animate-helper.service.mjs +49 -0
  127. package/esm2020/lib/core/services/bem-helper/bem-helper.service.mjs +44 -0
  128. package/esm2020/lib/core/services/date/date-helper.service.mjs +199 -0
  129. package/esm2020/lib/core/services/device/device-helper.service.mjs +46 -0
  130. package/esm2020/lib/core/services/geolocation/geolocation.service.mjs +63 -0
  131. package/esm2020/lib/core/services/language/language-helper.service.mjs +129 -0
  132. package/esm2020/lib/core/services/sort/sort.service.mjs +22 -0
  133. package/esm2020/lib/core/services/viewport/viewport.service.mjs +32 -0
  134. package/esm2020/lib/services/get-position.service.mjs +23 -0
  135. package/esm2020/norwegian-core-components.mjs +5 -0
  136. package/fesm2015/norwegian-core-components.mjs +11843 -0
  137. package/fesm2015/norwegian-core-components.mjs.map +1 -0
  138. package/fesm2020/norwegian-core-components.mjs +11829 -0
  139. package/fesm2020/norwegian-core-components.mjs.map +1 -0
  140. package/index.d.ts +5 -0
  141. package/lib/components/accordion/accordion.component.d.ts +3 -0
  142. package/lib/components/accordion/accordion.module.d.ts +8 -0
  143. package/lib/components/airport-select/airport-select-dropdown/airport-select-dropdown.component.d.ts +5 -2
  144. package/lib/components/airport-select/airport-select.component.d.ts +5 -2
  145. package/lib/components/airport-select/airport-select.module.d.ts +11 -0
  146. package/lib/components/airport-select/services/airport-select-dropdown.service.d.ts +3 -0
  147. package/lib/components/airport-select/services/airport-select.service.d.ts +3 -0
  148. package/lib/components/autocomplete/autocomplete.component.d.ts +5 -2
  149. package/lib/components/autocomplete/autocomplete.module.d.ts +11 -0
  150. package/lib/components/backdrop/backdrop.component.d.ts +3 -0
  151. package/lib/components/backdrop/backdrop.module.d.ts +7 -0
  152. package/lib/components/box/box.component.d.ts +3 -4
  153. package/lib/components/box/box.module.d.ts +7 -0
  154. package/lib/components/button/button.component.d.ts +3 -0
  155. package/lib/components/button/button.module.d.ts +8 -0
  156. package/lib/components/checkbox/checkbox.component.d.ts +5 -2
  157. package/lib/components/checkbox/checkbox.module.d.ts +8 -0
  158. package/lib/components/chip/chip.component.d.ts +3 -0
  159. package/lib/components/chip/chip.module.d.ts +7 -0
  160. package/lib/components/container/container.component.d.ts +3 -4
  161. package/lib/components/container/container.module.d.ts +7 -0
  162. package/lib/components/continue/continue.component.d.ts +3 -0
  163. package/lib/components/continue/continue.module.d.ts +9 -0
  164. package/lib/components/cover/cover.component.d.ts +3 -0
  165. package/lib/components/cover/cover.module.d.ts +9 -0
  166. package/lib/components/datepicker/calendar/calendar.component.d.ts +5 -2
  167. package/lib/components/datepicker/datepicker.component.d.ts +5 -2
  168. package/lib/components/datepicker/datepicker.module.d.ts +14 -0
  169. package/lib/components/datepicker/services/calendar.service.d.ts +3 -0
  170. package/lib/components/datepicker-combo/datepicker-combo.component.d.ts +3 -0
  171. package/lib/components/datepicker-combo/datepicker-combo.module.d.ts +8 -0
  172. package/lib/components/divider/divider.component.d.ts +3 -4
  173. package/lib/components/divider/divider.module.d.ts +8 -0
  174. package/lib/components/dropdown/dropdown.component.d.ts +3 -0
  175. package/lib/components/dropdown/dropdown.module.d.ts +9 -0
  176. package/lib/components/filter/filter.component.d.ts +5 -2
  177. package/lib/components/filter/filter.module.d.ts +18 -0
  178. package/lib/components/grid/col/col.component.d.ts +4 -1
  179. package/lib/components/grid/grid.component.d.ts +3 -4
  180. package/lib/components/grid/grid.module.d.ts +8 -0
  181. package/lib/components/icon/icon.component.d.ts +3 -4
  182. package/lib/components/icon/icon.module.d.ts +7 -0
  183. package/lib/components/icon-list/icon-list.component.d.ts +3 -0
  184. package/lib/components/icon-list/icon-list.module.d.ts +8 -0
  185. package/lib/components/info/info.component.d.ts +3 -0
  186. package/lib/components/info/info.module.d.ts +10 -0
  187. package/lib/components/input/input.component.d.ts +5 -2
  188. package/lib/components/input/input.module.d.ts +9 -0
  189. package/lib/components/journey/journey.component.d.ts +3 -0
  190. package/lib/components/journey/journey.module.d.ts +8 -0
  191. package/lib/components/journey-availability/journey-availability.component.d.ts +3 -0
  192. package/lib/components/journey-availability/journey-availability.module.d.ts +10 -0
  193. package/lib/components/journey-availability-list/journey-availability-list.component.d.ts +3 -0
  194. package/lib/components/journey-availability-list/journey-availability-list.module.d.ts +10 -0
  195. package/lib/components/journey-selection/journey-selection.component.d.ts +3 -0
  196. package/lib/components/journey-selection/journey-selection.module.d.ts +9 -0
  197. package/lib/components/journey-stopover/journey-stopover.component.d.ts +3 -0
  198. package/lib/components/journey-stopover/journey-stopover.module.d.ts +8 -0
  199. package/lib/components/list/list-item/list-item.component.d.ts +3 -0
  200. package/lib/components/list/list.component.d.ts +4 -1
  201. package/lib/components/list/list.module.d.ts +8 -0
  202. package/lib/components/modal/modal.component.d.ts +3 -0
  203. package/lib/components/modal/modal.module.d.ts +10 -0
  204. package/lib/components/number-field/number-field.component.d.ts +5 -2
  205. package/lib/components/number-field/number-field.module.d.ts +10 -0
  206. package/lib/components/page-footer/page-footer.component.d.ts +3 -0
  207. package/lib/components/page-footer/page-footer.module.d.ts +9 -0
  208. package/lib/components/page-header/hamburger/hamburger.component.d.ts +3 -0
  209. package/lib/components/page-header/page-header.component.d.ts +3 -0
  210. package/lib/components/page-header/page-header.module.d.ts +11 -0
  211. package/lib/components/page-header/search/search.component.d.ts +3 -0
  212. package/lib/components/passenger-select/models/passengers.model.d.ts +2 -2
  213. package/lib/components/passenger-select/passenger-select.component.d.ts +5 -2
  214. package/lib/components/passenger-select/passenger-select.module.d.ts +8 -0
  215. package/lib/components/phone-number/phone-number.component.d.ts +5 -2
  216. package/lib/components/phone-number/phone-number.module.d.ts +11 -0
  217. package/lib/components/premium-toggle/premium-toggle.component.d.ts +3 -0
  218. package/lib/components/premium-toggle/premium-toggle.module.d.ts +8 -0
  219. package/lib/components/radio/radio.component.d.ts +5 -2
  220. package/lib/components/radio/radio.module.d.ts +8 -0
  221. package/lib/components/select/optgroup/optgroup.component.d.ts +3 -0
  222. package/lib/components/select/option/option.component.d.ts +3 -0
  223. package/lib/components/select/select.component.d.ts +6 -3
  224. package/lib/components/select/select.module.d.ts +10 -0
  225. package/lib/components/simple-list/simple-list.component.d.ts +4 -1
  226. package/lib/components/simple-list/simple-list.module.d.ts +7 -0
  227. package/lib/components/slide-toggle/slide-toggle.component.d.ts +5 -2
  228. package/lib/components/slide-toggle/slide-toggle.module.d.ts +8 -0
  229. package/lib/components/slider/slider.component.d.ts +5 -2
  230. package/lib/components/slider/slider.module.d.ts +8 -0
  231. package/lib/components/sort/sort.component.d.ts +3 -0
  232. package/lib/components/sort/sort.module.d.ts +10 -0
  233. package/lib/components/spinner/spinner.component.d.ts +11 -4
  234. package/lib/components/spinner/spinner.module.d.ts +7 -0
  235. package/lib/components/subsidy-discount/subsidy-discount.component.d.ts +3 -0
  236. package/lib/components/subsidy-discount/subsidy-discount.module.d.ts +10 -0
  237. package/lib/components/suggestions/suggestions.component.d.ts +3 -0
  238. package/lib/components/suggestions/suggestions.module.d.ts +8 -0
  239. package/lib/components/tab-group/tab/tab.component.d.ts +3 -0
  240. package/lib/components/tab-group/tab-group.component.d.ts +3 -0
  241. package/lib/components/tab-group/tab-group.module.d.ts +9 -0
  242. package/lib/components/table/column/column.component.d.ts +3 -0
  243. package/lib/components/table/column-group/column-group.component.d.ts +3 -0
  244. package/lib/components/table/services/table.service.d.ts +3 -0
  245. package/lib/components/table/table-body/table-body.component.d.ts +3 -0
  246. package/lib/components/table/table-foot/table-foot.component.d.ts +3 -0
  247. package/lib/components/table/table-head/table-head.component.d.ts +3 -0
  248. package/lib/components/table/table-row/table-data/table-data.component.d.ts +3 -0
  249. package/lib/components/table/table-row/table-header/table-header.component.d.ts +3 -0
  250. package/lib/components/table/table-row/table-row.component.d.ts +3 -0
  251. package/lib/components/table/table.component.d.ts +3 -0
  252. package/lib/components/table/table.module.d.ts +15 -0
  253. package/lib/components/textarea/textarea.component.d.ts +5 -2
  254. package/lib/components/textarea/textarea.module.d.ts +8 -0
  255. package/lib/components/toggle/toggle.component.d.ts +6 -3
  256. package/lib/components/toggle/toggle.module.d.ts +9 -0
  257. package/lib/components/trip-summary/trip-summary.component.d.ts +3 -0
  258. package/lib/components/trip-summary/trip-summary.module.d.ts +10 -0
  259. package/lib/components/weather-icon/weather-icon.component.d.ts +3 -0
  260. package/lib/components/weather-icon/weather-icon.module.d.ts +7 -0
  261. package/lib/core/directives/nas-class/nas-class.directive.d.ts +3 -0
  262. package/lib/core/directives/nas-class/nas-class.module.d.ts +6 -0
  263. package/lib/core/services/abandoned-basket/abandoned-basket.service.d.ts +3 -0
  264. package/lib/core/services/animate-helper/animate-helper.service.d.ts +3 -0
  265. package/lib/core/services/bem-helper/bem-helper.service.d.ts +3 -0
  266. package/lib/core/services/date/date-helper.service.d.ts +3 -0
  267. package/lib/core/services/device/device-helper.service.d.ts +3 -0
  268. package/lib/core/services/geolocation/geolocation.service.d.ts +3 -0
  269. package/lib/core/services/language/language-helper.service.d.ts +3 -0
  270. package/lib/core/services/sort/sort.service.d.ts +3 -0
  271. package/lib/core/services/viewport/viewport.service.d.ts +3 -0
  272. package/lib/services/get-position.service.d.ts +3 -0
  273. package/package.json +21 -9
  274. package/bundles/norwegian-core-components.umd.js +0 -12174
  275. package/bundles/norwegian-core-components.umd.js.map +0 -1
  276. package/esm2015/lib/components/accordion/accordion.component.js +0 -130
  277. package/esm2015/lib/components/accordion/accordion.module.js +0 -15
  278. package/esm2015/lib/components/airport-select/airport-select-dropdown/airport-select-dropdown.component.js +0 -583
  279. package/esm2015/lib/components/airport-select/airport-select.component.js +0 -400
  280. package/esm2015/lib/components/airport-select/airport-select.module.js +0 -27
  281. package/esm2015/lib/components/airport-select/services/airport-select-dropdown.service.js +0 -34
  282. package/esm2015/lib/components/airport-select/services/airport-select.service.js +0 -37
  283. package/esm2015/lib/components/autocomplete/autocomplete.component.js +0 -265
  284. package/esm2015/lib/components/autocomplete/autocomplete.module.js +0 -26
  285. package/esm2015/lib/components/backdrop/backdrop.component.js +0 -54
  286. package/esm2015/lib/components/backdrop/backdrop.module.js +0 -17
  287. package/esm2015/lib/components/box/box.component.js +0 -61
  288. package/esm2015/lib/components/box/box.module.js +0 -14
  289. package/esm2015/lib/components/button/button.component.js +0 -140
  290. package/esm2015/lib/components/button/button.module.js +0 -15
  291. package/esm2015/lib/components/checkbox/checkbox.component.js +0 -127
  292. package/esm2015/lib/components/checkbox/checkbox.module.js +0 -15
  293. package/esm2015/lib/components/chip/chip.component.js +0 -50
  294. package/esm2015/lib/components/chip/chip.module.js +0 -17
  295. package/esm2015/lib/components/container/container.component.js +0 -47
  296. package/esm2015/lib/components/container/container.module.js +0 -14
  297. package/esm2015/lib/components/continue/continue.component.js +0 -173
  298. package/esm2015/lib/components/continue/continue.module.js +0 -23
  299. package/esm2015/lib/components/cover/cover.component.js +0 -61
  300. package/esm2015/lib/components/cover/cover.module.js +0 -16
  301. package/esm2015/lib/components/datepicker/calendar/calendar.component.js +0 -560
  302. package/esm2015/lib/components/datepicker/datepicker.component.js +0 -515
  303. package/esm2015/lib/components/datepicker/datepicker.module.js +0 -34
  304. package/esm2015/lib/components/datepicker/services/calendar.service.js +0 -217
  305. package/esm2015/lib/components/datepicker-combo/datepicker-combo.component.js +0 -317
  306. package/esm2015/lib/components/datepicker-combo/datepicker-combo.module.js +0 -22
  307. package/esm2015/lib/components/divider/divider.component.js +0 -53
  308. package/esm2015/lib/components/divider/divider.module.js +0 -15
  309. package/esm2015/lib/components/dropdown/dropdown.component.js +0 -150
  310. package/esm2015/lib/components/dropdown/dropdown.module.js +0 -21
  311. package/esm2015/lib/components/filter/filter.component.js +0 -1122
  312. package/esm2015/lib/components/filter/filter.module.js +0 -44
  313. package/esm2015/lib/components/grid/col/col.component.js +0 -49
  314. package/esm2015/lib/components/grid/grid.component.js +0 -63
  315. package/esm2015/lib/components/grid/grid.module.js +0 -15
  316. package/esm2015/lib/components/icon/icon.component.js +0 -42
  317. package/esm2015/lib/components/icon/icon.module.js +0 -17
  318. package/esm2015/lib/components/icon-list/icon-list.component.js +0 -46
  319. package/esm2015/lib/components/icon-list/icon-list.module.js +0 -15
  320. package/esm2015/lib/components/info/info.component.js +0 -94
  321. package/esm2015/lib/components/info/info.module.js +0 -23
  322. package/esm2015/lib/components/input/input.component.js +0 -148
  323. package/esm2015/lib/components/input/input.module.js +0 -16
  324. package/esm2015/lib/components/journey/journey.component.js +0 -122
  325. package/esm2015/lib/components/journey/journey.module.js +0 -19
  326. package/esm2015/lib/components/journey-availability/journey-availability.component.js +0 -125
  327. package/esm2015/lib/components/journey-availability/journey-availability.module.js +0 -26
  328. package/esm2015/lib/components/journey-availability-list/journey-availability-list.component.js +0 -175
  329. package/esm2015/lib/components/journey-selection/journey-selection.component.js +0 -110
  330. package/esm2015/lib/components/journey-selection/journey-selection.module.js +0 -24
  331. package/esm2015/lib/components/journey-stopover/journey-stopover.component.js +0 -121
  332. package/esm2015/lib/components/journey-stopover/journey-stopover.module.js +0 -19
  333. package/esm2015/lib/components/list/list-item/list-item.component.js +0 -56
  334. package/esm2015/lib/components/list/list.component.js +0 -75
  335. package/esm2015/lib/components/list/list.module.js +0 -15
  336. package/esm2015/lib/components/modal/modal.component.js +0 -131
  337. package/esm2015/lib/components/modal/modal.module.js +0 -25
  338. package/esm2015/lib/components/number-field/number-field.component.js +0 -118
  339. package/esm2015/lib/components/number-field/number-field.module.js +0 -24
  340. package/esm2015/lib/components/page-footer/page-footer.component.js +0 -49
  341. package/esm2015/lib/components/page-footer/page-footer.module.js +0 -16
  342. package/esm2015/lib/components/page-header/hamburger/hamburger.component.js +0 -24
  343. package/esm2015/lib/components/page-header/page-header.component.js +0 -126
  344. package/esm2015/lib/components/page-header/page-header.module.js +0 -18
  345. package/esm2015/lib/components/page-header/search/search.component.js +0 -47
  346. package/esm2015/lib/components/passenger-select/passenger-select.component.js +0 -207
  347. package/esm2015/lib/components/passenger-select/passenger-select.module.js +0 -19
  348. package/esm2015/lib/components/phone-number/phone-number.component.js +0 -115
  349. package/esm2015/lib/components/phone-number/phone-number.module.js +0 -27
  350. package/esm2015/lib/components/premium-toggle/premium-toggle.component.js +0 -66
  351. package/esm2015/lib/components/premium-toggle/premium-toggle.module.js +0 -19
  352. package/esm2015/lib/components/radio/radio.component.js +0 -79
  353. package/esm2015/lib/components/radio/radio.module.js +0 -15
  354. package/esm2015/lib/components/select/optgroup/optgroup.component.js +0 -31
  355. package/esm2015/lib/components/select/option/option.component.js +0 -29
  356. package/esm2015/lib/components/select/select.component.js +0 -325
  357. package/esm2015/lib/components/select/select.module.js +0 -21
  358. package/esm2015/lib/components/simple-list/simple-list.component.js +0 -42
  359. package/esm2015/lib/components/simple-list/simple-list.module.js +0 -14
  360. package/esm2015/lib/components/slide-toggle/slide-toggle.component.js +0 -105
  361. package/esm2015/lib/components/slide-toggle/slide-toggle.module.js +0 -20
  362. package/esm2015/lib/components/slider/slider.component.js +0 -475
  363. package/esm2015/lib/components/slider/slider.module.js +0 -19
  364. package/esm2015/lib/components/sort/sort.component.js +0 -87
  365. package/esm2015/lib/components/sort/sort.module.js +0 -23
  366. package/esm2015/lib/components/spinner/spinner.component.js +0 -84
  367. package/esm2015/lib/components/spinner/spinner.module.js +0 -14
  368. package/esm2015/lib/components/subsidy-discount/subsidy-discount.component.js +0 -101
  369. package/esm2015/lib/components/subsidy-discount/subsidy-discount.module.js +0 -23
  370. package/esm2015/lib/components/suggestions/suggestions.component.js +0 -40
  371. package/esm2015/lib/components/suggestions/suggestions.module.js +0 -19
  372. package/esm2015/lib/components/tab-group/tab/tab.component.js +0 -123
  373. package/esm2015/lib/components/tab-group/tab-group.component.js +0 -85
  374. package/esm2015/lib/components/tab-group/tab-group.module.js +0 -20
  375. package/esm2015/lib/components/table/column/column.component.js +0 -17
  376. package/esm2015/lib/components/table/column-group/column-group.component.js +0 -34
  377. package/esm2015/lib/components/table/services/table.service.js +0 -20
  378. package/esm2015/lib/components/table/table-body/table-body.component.js +0 -27
  379. package/esm2015/lib/components/table/table-foot/table-foot.component.js +0 -27
  380. package/esm2015/lib/components/table/table-head/table-head.component.js +0 -27
  381. package/esm2015/lib/components/table/table-row/table-data/table-data.component.js +0 -15
  382. package/esm2015/lib/components/table/table-row/table-header/table-header.component.js +0 -15
  383. package/esm2015/lib/components/table/table-row/table-row.component.js +0 -27
  384. package/esm2015/lib/components/table/table.component.js +0 -29
  385. package/esm2015/lib/components/table/table.module.js +0 -45
  386. package/esm2015/lib/components/textarea/textarea.component.js +0 -73
  387. package/esm2015/lib/components/textarea/textarea.module.js +0 -20
  388. package/esm2015/lib/components/toggle/toggle.component.js +0 -86
  389. package/esm2015/lib/components/toggle/toggle.module.js +0 -22
  390. package/esm2015/lib/components/trip-summary/trip-summary.component.js +0 -152
  391. package/esm2015/lib/components/trip-summary/trip-summary.module.js +0 -23
  392. package/esm2015/lib/components/weather-icon/weather-icon.component.js +0 -56
  393. package/esm2015/lib/components/weather-icon/weather-icon.module.js +0 -14
  394. package/esm2015/lib/core/base/nas-component.base.js +0 -48
  395. package/esm2015/lib/core/directives/nas-class/nas-class.directive.js +0 -75
  396. package/esm2015/lib/core/directives/nas-class/nas-class.module.js +0 -17
  397. package/esm2015/lib/core/services/abandoned-basket/abandoned-basket.service.js +0 -55
  398. package/esm2015/lib/core/services/animate-helper/animate-helper.service.js +0 -47
  399. package/esm2015/lib/core/services/bem-helper/bem-helper.service.js +0 -41
  400. package/esm2015/lib/core/services/date/date-helper.service.js +0 -196
  401. package/esm2015/lib/core/services/device/device-helper.service.js +0 -43
  402. package/esm2015/lib/core/services/geolocation/geolocation.service.js +0 -60
  403. package/esm2015/lib/core/services/language/language-helper.service.js +0 -162
  404. package/esm2015/lib/core/services/sort/sort.service.js +0 -19
  405. package/esm2015/lib/core/services/viewport/viewport.service.js +0 -29
  406. package/esm2015/lib/services/get-position.service.js +0 -21
  407. package/esm2015/norwegian-core-components.js +0 -12
  408. package/fesm2015/norwegian-core-components.js +0 -10835
  409. package/fesm2015/norwegian-core-components.js.map +0 -1
  410. package/norwegian-core-components.d.ts +0 -11
  411. package/norwegian-core-components.metadata.json +0 -1
  412. /package/{esm2015/lib/components/accordion/index.js → esm2020/lib/components/accordion/index.mjs} +0 -0
  413. /package/{esm2015/lib/components/airport-select/index.js → esm2020/lib/components/airport-select/index.mjs} +0 -0
  414. /package/{esm2015/lib/components/airport-select/models/airport.model.js → esm2020/lib/components/airport-select/models/airport.model.mjs} +0 -0
  415. /package/{esm2015/lib/components/airport-select/models/results-labels.model.js → esm2020/lib/components/airport-select/models/results-labels.model.mjs} +0 -0
  416. /package/{esm2015/lib/components/autocomplete/index.js → esm2020/lib/components/autocomplete/index.mjs} +0 -0
  417. /package/{esm2015/lib/components/autocomplete/models/autocomplete.model.js → esm2020/lib/components/autocomplete/models/autocomplete.model.mjs} +0 -0
  418. /package/{esm2015/lib/components/backdrop/index.js → esm2020/lib/components/backdrop/index.mjs} +0 -0
  419. /package/{esm2015/lib/components/box/index.js → esm2020/lib/components/box/index.mjs} +0 -0
  420. /package/{esm2015/lib/components/button/index.js → esm2020/lib/components/button/index.mjs} +0 -0
  421. /package/{esm2015/lib/components/checkbox/index.js → esm2020/lib/components/checkbox/index.mjs} +0 -0
  422. /package/{esm2015/lib/components/chip/index.js → esm2020/lib/components/chip/index.mjs} +0 -0
  423. /package/{esm2015/lib/components/container/index.js → esm2020/lib/components/container/index.mjs} +0 -0
  424. /package/{esm2015/lib/components/continue/index.js → esm2020/lib/components/continue/index.mjs} +0 -0
  425. /package/{esm2015/lib/components/cover/index.js → esm2020/lib/components/cover/index.mjs} +0 -0
  426. /package/{esm2015/lib/components/datepicker/calendar/calendar-date.model.js → esm2020/lib/components/datepicker/calendar/calendar-date.model.mjs} +0 -0
  427. /package/{esm2015/lib/components/datepicker/calendar/enums/week-start.enum.js → esm2020/lib/components/datepicker/calendar/enums/week-start.enum.mjs} +0 -0
  428. /package/{esm2015/lib/components/datepicker/calendar/models/day.model.js → esm2020/lib/components/datepicker/calendar/models/day.model.mjs} +0 -0
  429. /package/{esm2015/lib/components/datepicker/calendar/models/select-option.model.js → esm2020/lib/components/datepicker/calendar/models/select-option.model.mjs} +0 -0
  430. /package/{esm2015/lib/components/datepicker/calendar/models/week.model.js → esm2020/lib/components/datepicker/calendar/models/week.model.mjs} +0 -0
  431. /package/{esm2015/lib/components/datepicker/index.js → esm2020/lib/components/datepicker/index.mjs} +0 -0
  432. /package/{esm2015/lib/components/datepicker-combo/index.js → esm2020/lib/components/datepicker-combo/index.mjs} +0 -0
  433. /package/{esm2015/lib/components/divider/index.js → esm2020/lib/components/divider/index.mjs} +0 -0
  434. /package/{esm2015/lib/components/dropdown/index.js → esm2020/lib/components/dropdown/index.mjs} +0 -0
  435. /package/{esm2015/lib/components/filter/enums/trip-type.enum.js → esm2020/lib/components/filter/enums/trip-type.enum.mjs} +0 -0
  436. /package/{esm2015/lib/components/filter/index.js → esm2020/lib/components/filter/index.mjs} +0 -0
  437. /package/{esm2015/lib/components/grid/index.js → esm2020/lib/components/grid/index.mjs} +0 -0
  438. /package/{esm2015/lib/components/icon/index.js → esm2020/lib/components/icon/index.mjs} +0 -0
  439. /package/{esm2015/lib/components/icon-list/icon-list.model.js → esm2020/lib/components/icon-list/icon-list.model.mjs} +0 -0
  440. /package/{esm2015/lib/components/icon-list/index.js → esm2020/lib/components/icon-list/index.mjs} +0 -0
  441. /package/{esm2015/lib/components/index.js → esm2020/lib/components/index.mjs} +0 -0
  442. /package/{esm2015/lib/components/info/index.js → esm2020/lib/components/info/index.mjs} +0 -0
  443. /package/{esm2015/lib/components/info/models/info.model.js → esm2020/lib/components/info/models/info.model.mjs} +0 -0
  444. /package/{esm2015/lib/components/input/index.js → esm2020/lib/components/input/index.mjs} +0 -0
  445. /package/{esm2015/lib/components/journey/index.js → esm2020/lib/components/journey/index.mjs} +0 -0
  446. /package/{esm2015/lib/components/journey/models/journey-flight.model.js → esm2020/lib/components/journey/models/journey-flight.model.mjs} +0 -0
  447. /package/{esm2015/lib/components/journey/models/journey.model.js → esm2020/lib/components/journey/models/journey.model.mjs} +0 -0
  448. /package/{esm2015/lib/components/journey-availability/index.js → esm2020/lib/components/journey-availability/index.mjs} +0 -0
  449. /package/{esm2015/lib/components/journey-availability-list/enums/availability-sort-option.enum.js → esm2020/lib/components/journey-availability-list/enums/availability-sort-option.enum.mjs} +0 -0
  450. /package/{esm2015/lib/components/journey-availability-list/index.js → esm2020/lib/components/journey-availability-list/index.mjs} +0 -0
  451. /package/{esm2015/lib/components/journey-selection/index.js → esm2020/lib/components/journey-selection/index.mjs} +0 -0
  452. /package/{esm2015/lib/components/journey-selection/models/journey-selection-collapsed.model.js → esm2020/lib/components/journey-selection/models/journey-selection-collapsed.model.mjs} +0 -0
  453. /package/{esm2015/lib/components/journey-selection/models/journey-selection-common.model.js → esm2020/lib/components/journey-selection/models/journey-selection-common.model.mjs} +0 -0
  454. /package/{esm2015/lib/components/journey-selection/models/journey-selection-expanded.model.js → esm2020/lib/components/journey-selection/models/journey-selection-expanded.model.mjs} +0 -0
  455. /package/{esm2015/lib/components/journey-selection/models/journey-selection.model.js → esm2020/lib/components/journey-selection/models/journey-selection.model.mjs} +0 -0
  456. /package/{esm2015/lib/components/journey-stopover/index.js → esm2020/lib/components/journey-stopover/index.mjs} +0 -0
  457. /package/{esm2015/lib/components/journey-stopover/models/stopover-time.model.js → esm2020/lib/components/journey-stopover/models/stopover-time.model.mjs} +0 -0
  458. /package/{esm2015/lib/components/list/index.js → esm2020/lib/components/list/index.mjs} +0 -0
  459. /package/{esm2015/lib/components/modal/index.js → esm2020/lib/components/modal/index.mjs} +0 -0
  460. /package/{esm2015/lib/components/number-field/index.js → esm2020/lib/components/number-field/index.mjs} +0 -0
  461. /package/{esm2015/lib/components/page-footer/index.js → esm2020/lib/components/page-footer/index.mjs} +0 -0
  462. /package/{esm2015/lib/components/page-header/index.js → esm2020/lib/components/page-header/index.mjs} +0 -0
  463. /package/{esm2015/lib/components/passenger-select/enums/passenger-type.enum.js → esm2020/lib/components/passenger-select/enums/passenger-type.enum.mjs} +0 -0
  464. /package/{esm2015/lib/components/passenger-select/index.js → esm2020/lib/components/passenger-select/index.mjs} +0 -0
  465. /package/{esm2015/lib/components/phone-number/index.js → esm2020/lib/components/phone-number/index.mjs} +0 -0
  466. /package/{esm2015/lib/components/premium-toggle/index.js → esm2020/lib/components/premium-toggle/index.mjs} +0 -0
  467. /package/{esm2015/lib/components/radio/index.js → esm2020/lib/components/radio/index.mjs} +0 -0
  468. /package/{esm2015/lib/components/select/index.js → esm2020/lib/components/select/index.mjs} +0 -0
  469. /package/{esm2015/lib/components/select/models/select-option.model.js → esm2020/lib/components/select/models/select-option.model.mjs} +0 -0
  470. /package/{esm2015/lib/components/simple-list/index.js → esm2020/lib/components/simple-list/index.mjs} +0 -0
  471. /package/{esm2015/lib/components/slide-toggle/index.js → esm2020/lib/components/slide-toggle/index.mjs} +0 -0
  472. /package/{esm2015/lib/components/slider/index.js → esm2020/lib/components/slider/index.mjs} +0 -0
  473. /package/{esm2015/lib/components/sort/index.js → esm2020/lib/components/sort/index.mjs} +0 -0
  474. /package/{esm2015/lib/components/spinner/index.js → esm2020/lib/components/spinner/index.mjs} +0 -0
  475. /package/{esm2015/lib/components/subsidy-discount/index.js → esm2020/lib/components/subsidy-discount/index.mjs} +0 -0
  476. /package/{esm2015/lib/components/subsidy-discount/models/subsidy-discount.model.js → esm2020/lib/components/subsidy-discount/models/subsidy-discount.model.mjs} +0 -0
  477. /package/{esm2015/lib/components/suggestions/index.js → esm2020/lib/components/suggestions/index.mjs} +0 -0
  478. /package/{esm2015/lib/components/tab-group/index.js → esm2020/lib/components/tab-group/index.mjs} +0 -0
  479. /package/{esm2015/lib/components/table/index.js → esm2020/lib/components/table/index.mjs} +0 -0
  480. /package/{esm2015/lib/components/textarea/index.js → esm2020/lib/components/textarea/index.mjs} +0 -0
  481. /package/{esm2015/lib/components/toggle/index.js → esm2020/lib/components/toggle/index.mjs} +0 -0
  482. /package/{esm2015/lib/components/toggle/models/options.model.js → esm2020/lib/components/toggle/models/options.model.mjs} +0 -0
  483. /package/{esm2015/lib/components/trip-summary/index.js → esm2020/lib/components/trip-summary/index.mjs} +0 -0
  484. /package/{esm2015/lib/components/weather-icon/index.js → esm2020/lib/components/weather-icon/index.mjs} +0 -0
  485. /package/{esm2015/lib/core/decorators/debounce.decorator.js → esm2020/lib/core/decorators/debounce.decorator.mjs} +0 -0
  486. /package/{esm2015/lib/core/directives/index.js → esm2020/lib/core/directives/index.mjs} +0 -0
  487. /package/{esm2015/lib/core/index.js → esm2020/lib/core/index.mjs} +0 -0
  488. /package/{esm2015/lib/core/models/abandoned-basket-item.model.js → esm2020/lib/core/models/abandoned-basket-item.model.mjs} +0 -0
  489. /package/{esm2015/lib/core/models/animate.model.js → esm2020/lib/core/models/animate.model.mjs} +0 -0
  490. /package/{esm2015/lib/core/models/class.model.js → esm2020/lib/core/models/class.model.mjs} +0 -0
  491. /package/{esm2015/lib/core/models/index.js → esm2020/lib/core/models/index.mjs} +0 -0
  492. /package/{esm2015/lib/core/models/link.model.js → esm2020/lib/core/models/link.model.mjs} +0 -0
  493. /package/{esm2015/lib/core/models/position.model.js → esm2020/lib/core/models/position.model.mjs} +0 -0
  494. /package/{esm2015/lib/core/models/utc-date.model.js → esm2020/lib/core/models/utc-date.model.mjs} +0 -0
  495. /package/{esm2015/lib/core/services/date/date-compare.enum.js → esm2020/lib/core/services/date/date-compare.enum.mjs} +0 -0
  496. /package/{esm2015/lib/core/services/geolocation/geolocation-state.enum.js → esm2020/lib/core/services/geolocation/geolocation-state.enum.mjs} +0 -0
  497. /package/{esm2015/lib/core/services/index.js → esm2020/lib/core/services/index.mjs} +0 -0
  498. /package/{esm2015/lib/index.js → esm2020/lib/index.mjs} +0 -0
  499. /package/{esm2015/lib/services/index.js → esm2020/lib/services/index.mjs} +0 -0
  500. /package/{esm2015/lib/shared/index.js → esm2020/lib/shared/index.mjs} +0 -0
  501. /package/{esm2015/lib/shared/models/flight-details.js → esm2020/lib/shared/models/flight-details.mjs} +0 -0
  502. /package/{esm2015/lib/shared/models/index.js → esm2020/lib/shared/models/index.mjs} +0 -0
  503. /package/{esm2015/lib/shared/models/journey-availability-sort.model.js → esm2020/lib/shared/models/journey-availability-sort.model.mjs} +0 -0
  504. /package/{esm2015/lib/shared/models/journey-availability.model.js → esm2020/lib/shared/models/journey-availability.model.mjs} +0 -0
  505. /package/{esm2015/lib/shared/models/journey-details.model.js → esm2020/lib/shared/models/journey-details.model.mjs} +0 -0
  506. /package/{esm2015/lib/shared/models/journey-duration.model.js → esm2020/lib/shared/models/journey-duration.model.mjs} +0 -0
  507. /package/{esm2015/lib/shared/models/journey-stopover.model.js → esm2020/lib/shared/models/journey-stopover.model.mjs} +0 -0
  508. /package/{esm2015/lib/shared/models/journey-transit-info.model.js → esm2020/lib/shared/models/journey-transit-info.model.mjs} +0 -0
  509. /package/{esm2015/lib/shared/models/operating-carrier.model.js → esm2020/lib/shared/models/operating-carrier.model.mjs} +0 -0
  510. /package/{esm2015/lib/shared/models/sort-option.model.js → esm2020/lib/shared/models/sort-option.model.mjs} +0 -0
  511. /package/{esm2015/lib/shared/models/sort.model.js → esm2020/lib/shared/models/sort.model.mjs} +0 -0
  512. /package/{esm2015/lib/shared/models/trip-item-details.model.js → esm2020/lib/shared/models/trip-item-details.model.mjs} +0 -0
  513. /package/{esm2015/lib/shared/models/trip-summary-details.model.js → esm2020/lib/shared/models/trip-summary-details.model.mjs} +0 -0
  514. /package/{esm2015/lib/shared/models/trip-summary.model.js → esm2020/lib/shared/models/trip-summary.model.mjs} +0 -0
  515. /package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
@@ -1,19 +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 { AccordionModule } from '../accordion/accordion.module';
5
- import { JourneyComponent } from './journey.component';
6
- export class JourneyModule {
7
- }
8
- JourneyModule.decorators = [
9
- { type: NgModule, args: [{
10
- declarations: [JourneyComponent],
11
- imports: [
12
- CommonModule,
13
- NasClassModule,
14
- AccordionModule
15
- ],
16
- exports: [JourneyComponent]
17
- },] }
18
- ];
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXkvam91cm5leS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQVd2RCxNQUFNLE9BQU8sYUFBYTs7O1lBVHpCLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDaEMsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osY0FBYztvQkFDZCxlQUFlO2lCQUNoQjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzthQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmFzQ2xhc3NNb2R1bGUgfSBmcm9tICcuLi8uLi9jb3JlL2RpcmVjdGl2ZXMvbmFzLWNsYXNzL25hcy1jbGFzcy5tb2R1bGUnO1xuaW1wb3J0IHsgQWNjb3JkaW9uTW9kdWxlIH0gZnJvbSAnLi4vYWNjb3JkaW9uL2FjY29yZGlvbi5tb2R1bGUnO1xuaW1wb3J0IHsgSm91cm5leUNvbXBvbmVudCB9IGZyb20gJy4vam91cm5leS5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtKb3VybmV5Q29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBOYXNDbGFzc01vZHVsZSxcbiAgICBBY2NvcmRpb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW0pvdXJuZXlDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIEpvdXJuZXlNb2R1bGUgeyB9XG4iXX0=
@@ -1,125 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Norwegian Air Shuttle. All Rights Reserved.
4
- */
5
- import { DatePipe } from '@angular/common';
6
- import { Component, Input, Output, EventEmitter } from '@angular/core';
7
- import { NasComponentBase } from '../../core/base/nas-component.base';
8
- import { DeviceHelper } from '../../core/services/device/device-helper.service';
9
- import { DateHelper } from '../../core/services/date/date-helper.service';
10
- /**
11
- * @description
12
- * Norwegian Journey Availability Component | Functional
13
- */
14
- export class JourneyAvailabilityComponent extends NasComponentBase {
15
- constructor(datePipe, deviceService, dateService) {
16
- super('nas-journey-availability');
17
- this.datePipe = datePipe;
18
- this.deviceService = deviceService;
19
- this.dateService = dateService;
20
- /**
21
- * @description
22
- * A locale code for the locale format rules to use. When not supplied, uses the value of LOCALE_ID, which is en-US by default.
23
- * This requires that registerLocaleData is called with the respective locale.
24
- * @example
25
- * ```html
26
- * <nas-journey-availability [locale]="'es'"></nas-journey-availability>
27
- */
28
- this.locale = 'en-US';
29
- /**
30
- * @description
31
- * Time display format, Default is HH:mm
32
- * @example
33
- * ```html
34
- * <nas-journey-availability [timeDisplayFormat]="'HH:mm'"></nas-journey-availability>
35
- */
36
- this.timeDisplayFormat = 'HH:mm';
37
- /**
38
- * @description
39
- * User can input the timezone to localize the date.
40
- * Default is set to UTC and it will by default show the date exactly what is passed to it.
41
- * @example
42
- * ```html
43
- * <nas-journey-availability [timeZone]="'UTC'"></nas-journey-availability>
44
- */
45
- this.timeZone = 'UTC';
46
- /**
47
- *
48
- * @description
49
- * An Event which Emitts boolean when Flight info popup is toggled.
50
- */
51
- this.displayJourneyDetailsChange = new EventEmitter();
52
- /**
53
- * @description
54
- * Event emits when user click on journey availability for selection.
55
- */
56
- this.journeyAvailabilityClick = new EventEmitter();
57
- }
58
- /**
59
- * @description
60
- * Setter and getter when the flight info popup shows/hidden.
61
- */
62
- get displayJourneyDetails() {
63
- return this.displayJourneyDetailsValue;
64
- }
65
- set displayJourneyDetails(value) {
66
- if (this.displayJourneyDetailsValue !== value) {
67
- this.displayJourneyDetailsValue = value;
68
- this.displayJourneyDetailsChange.emit(value);
69
- }
70
- }
71
- ngOnInit() {
72
- this.isSmallScreen = this.deviceService.isTabletWindow();
73
- }
74
- ngOnChanges(changes) {
75
- if (this.model) {
76
- this.currentJourney = {
77
- departureTime: this.datePipe.transform(this.dateService.date(this.model.departureTime), this.timeDisplayFormat, this.timeZone, this.locale),
78
- arrivalTime: this.datePipe.transform(this.dateService.date(this.model.arrivalTime), this.timeDisplayFormat, this.timeZone, this.locale)
79
- };
80
- }
81
- }
82
- emitClick(event) {
83
- this.journeyAvailabilityClick.emit(event);
84
- }
85
- toggleJourneyInfoDetails(event) {
86
- this.displayJourneyDetails = !this.displayJourneyDetails;
87
- this.displayJourneyDetailsChange.emit(this.displayJourneyDetails);
88
- event.stopPropagation();
89
- }
90
- getIconType() {
91
- if (!this.model.journeyTransitInfo ||
92
- !this.model.journeyTransitInfo.transitCount) {
93
- return '';
94
- }
95
- else if (this.model.journeyTransitInfo.transitCount === 1) {
96
- return 'one-stop-arrow';
97
- }
98
- else {
99
- return 'two-stops-arrow';
100
- }
101
- }
102
- }
103
- JourneyAvailabilityComponent.decorators = [
104
- { type: Component, args: [{
105
- selector: 'nas-journey-availability',
106
- template: "<div *ngIf=\"model\" [nasClass]=\"getClass()\">\n <div [nasClass]=\"getClass('journey-details')\">\n <nas-modal [(show)]=\"displayJourneyDetails\" animated center>\n <nas-trip-summary [tripSummaryModel]=\"model?.tripSummary\" [expandTitle]=\"model?.journeyDetails?.expandTitle\"\n [transitLabel]=\"model?.journeyDetails?.transitLabel\" [arrivalLabel]=\"model?.journeyDetails?.arrivalLabel\"\n [departureLabel]=\"model?.journeyDetails?.departureLabel\"\n [transitHoursIndicator]=\"model?.journeyDetails?.hoursIndicator\"\n [transitMinutesIndicator]=\"model?.journeyDetails?.minutesIndicator\">\n </nas-trip-summary>\n </nas-modal>\n </div>\n\n <div [nasClass]=\"getClass('item', selected && 'selected')\" (click)=\"emitClick($event)\" role=\"button\"\n aria-pressed=\"false\" tabindex=\"0\">\n <article [nasClass]=\"getClass('trigger', model?.badge && 'badge-padding')\">\n <div [nasClass]=\"getClass('badge')\" *ngIf=\"model?.badge\">\n <span [nasClass]=\"getClass('badge-label')\">\n {{ model?.badgeLabel }}\n </span>\n </div>\n\n <div [nasClass]=\"getClass('overview')\">\n <div [nasClass]=\"getClass('overview-details')\">\n <section [nasClass]=\"getClass('flight-time')\" #journeyDetails>\n <div [nasClass]=\"getClass('flight-time-from-to')\">\n <div [nasClass]=\"getClass('flight-time-when')\">\n <div [nasClass]=\"getClass('flight-time-when-departure')\">\n <time #departureTimeText>\n {{ currentJourney?.departureTime }}\n </time>\n </div>\n\n <span>&nbsp;-&nbsp;</span>\n <div [nasClass]=\"getClass('flight-time-when-arrival')\">\n <time>{{ currentJourney?.arrivalTime }}</time>\n </div>\n </div>\n <div *ngIf=\"!isSmallScreen\">\n <ng-container *ngTemplateOutlet=\"TotalFlightTime\"></ng-container>\n </div>\n <ng-container *ngIf=\"isSmallScreen\">\n <ng-container *ngTemplateOutlet=\"airportCodes\"></ng-container>\n </ng-container>\n </div>\n <div [nasClass]=\"getClass('flight-time-info')\" *ngIf=\"model?.journeyInfoLabel\">\n <span [nasClass]=\"getClass('flight-time-info-link-wrapper')\" (click)=\"toggleJourneyInfoDetails($event)\">\n <a [nasClass]=\"getClass('flight-time-info-link')\">\n {{ model?.journeyInfoLabel }}\n </a>\n </span>\n </div>\n </section>\n\n <div [nasClass]=\"getClass('selected-info')\">\n <div [nasClass]=\"getClass('selected-info', 'time-duration')\">\n <section *ngIf=\"!isSmallScreen\" [nasClass]=\"getClass('selected-info-graph')\"></section>\n <section [nasClass]=\"getClass('journey')\">\n <ng-container *ngIf=\"!isSmallScreen\">\n <div [nasClass]=\"getClass('journey-info')\" *ngIf=\"\n model?.journeyTransitInfo?.transitCount;\n else directFlightLabel\n \">\n <mark [nasClass]=\"getClass('journey-info-stops')\">\n {{ model?.journeyTransitInfo?.transitCount }}\n {{ model?.journeyTransitInfo?.transitLabel }}\n </mark>\n\n <span *ngIf=\"isSmallScreen\">,&nbsp;</span>\n\n <mark [nasClass]=\"getClass('journey-info-stops-details')\">\n {{ model?.journeyTransitInfo?.transitDetails }}\n </mark>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"isSmallScreen\">\n <ng-container *ngTemplateOutlet=\"TotalFlightTime\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"!isSmallScreen\">\n <ng-container *ngTemplateOutlet=\"airportCodes\"></ng-container>\n </ng-container>\n\n <ng-template #airportCodes>\n <summary [nasClass]=\"getClass('flight-time-when-airports')\">\n {{ model?.origin }}-\n\n <span [nasClass]=\"\n getClass('flight-time-when-airports-stopovers')\n \" *ngIf=\"model?.stopovers\">\n <ng-container *ngFor=\"let stop of model?.stopovers\">\n {{ stop }} -\n </ng-container>\n </span>\n {{ model?.destination }}\n </summary>\n </ng-template>\n\n <ng-template #directFlightLabel>\n <div [nasClass]=\"getClass('journey-info')\">\n <mark [nasClass]=\"getClass('journey-info-stops')\">\n {{ model?.directLabel\n }}<span [nasClass]=\"getClass('journey-info-stops-format')\">,&nbsp;</span>\n </mark>\n </div>\n </ng-template>\n\n <figure *ngIf=\"!isSmallScreen; else journeyIcon\" [nasClass]=\"getClass('md-icon')\">\n <nas-icon *ngIf=\"model?.journeyTransitInfo?.transitCount\" [type]=\"getIconType()\"></nas-icon>\n </figure>\n </section>\n </div>\n <div [nasClass]=\"getClass('operated-by')\" *ngIf=\"model?.operatingCarriers\">\n <label>{{ model?.operatingCarriers?.label }}\n <mark *ngFor=\"\n let operator of model?.operatingCarriers.operators;\n index as operatorIndex\n \">\n {{ operator\n }}<span *ngIf=\"\n model?.operatingCarriers?.operators?.length >\n operatorIndex + 1\n \">,</span>\n </mark>\n </label>\n </div>\n </div>\n\n <ng-template #TotalFlightTime>\n <section [nasClass]=\"getClass('flight-time-details')\">\n <label [nasClass]=\"getClass('flight-time-details-label')\">\n {{ model?.duration?.durationLabel }}\n </label>\n <time [nasClass]=\"getClass('flight-time-details-text')\">\n {{ model?.duration?.durationText }}\n </time>\n <time [nasClass]=\"getClass('flight-time-details-count')\" *ngIf=\"model?.duration?.dayCount\">\n +{{ model.duration.dayCount }} {{ model.duration.dayLabel }}\n </time>\n </section>\n </ng-template>\n\n <ng-template #journeyIcon>\n <figure [nasClass]=\"getClass('mobile-icon')\">\n <nas-icon *ngIf=\"model?.journeyTransitInfo?.transitCount\" [type]=\"getIconType()\"></nas-icon>\n </figure>\n </ng-template>\n </div>\n </div>\n </article>\n </div>\n</div>",
107
- styles: ["@-webkit-keyframes fade-in{0%{opacity:0}}@keyframes fade-in{0%{opacity:0}}@-webkit-keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@-webkit-keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@-webkit-keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@-webkit-keyframes fade-out{to{opacity:0}}@keyframes fade-out{to{opacity:0}}@-webkit-keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@-webkit-keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@-webkit-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)}}@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-journey-availability{width:100%;background:#f1f1f1;position:relative;transform:all 3s;transition-duration:.3s}.nas-journey-availability--detailed-info{margin:auto 12px;width:auto}.nas-journey-availability__item{max-width:100%;perspective:1000px;background-color:#fff;outline:none;margin-bottom:2px;transform:all 3s;transition-duration:.3s}.nas-journey-availability__item:focus{transform:all 3s;transition-duration:.3s;box-shadow:0 0 0 3px #003251}.nas-journey-availability__item--selected{margin-top:12px;margin-bottom:12px}.nas-journey-availability__trigger{display:flex;align-items:stretch;justify-content:space-between;text-align:left;width:100%;flex:1;outline:0;padding:12px}@media (min-width: 1000px){.nas-journey-availability__trigger{padding:12px 12px 12px 36px}}.nas-journey-availability__trigger--badge-padding{padding:36px 12px 12px}@media (min-width: 1000px){.nas-journey-availability__trigger--badge-padding{padding:12px 12px 12px 36px}}.nas-journey-availability__badge{background-color:#e0ebff;margin:0;position:relative;position:absolute;left:0px;right:0px;top:0px;padding:3px;text-align:center}.nas-journey-availability__badge-label{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold;font-size:14px;line-height:20px;color:#003251;text-transform:uppercase}@media (min-width: 1000px){.nas-journey-availability__badge-label{transform:rotate(270deg);transform-origin:0 0;float:left;position:absolute;left:3px;bottom:5px}}@media (min-width: 1000px){.nas-journey-availability__badge{position:relative;width:24px;min-width:24px;margin:-12px 12px -12px -36px}}.nas-journey-availability__overview{display:flex;width:100%;padding-right:9px;flex:2 1 auto}@media (min-width: 1000px){.nas-journey-availability__overview{flex-wrap:wrap}}.nas-journey-availability__overview-details{display:flex;flex-wrap:wrap;justify-content:space-between;flex:1}@media (min-width: 1000px){.nas-journey-availability__overview-details{width:100%;max-width:100%;flex:auto}}.nas-journey-availability__overview-details .nas-journey-availability__mobile-icon{position:absolute;right:20px;bottom:16px}.nas-journey-availability__overview-details .nas-journey-availability__info-details{cursor:pointer}.nas-journey-availability__overview-details .nas-journey-availability__info-details nas-icon{cursor:pointer;padding:6px}.nas-journey-availability__overview-details .nas-journey-availability__info-details nas-icon span{cursor:pointer}.nas-journey-availability__flight-time{display:flex;flex:1;justify-content:space-between}@media (min-width: 1000px){.nas-journey-availability__flight-time{display:block;flex:1 1 60%}}.nas-journey-availability__flight-time-when{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold;font-size:24px;line-height:30px;margin-top:-2px;color:#003251;display:flex;justify-content:space-between}@media (min-width: 1000px){.nas-journey-availability__flight-time-when{display:inline-block;justify-content:initial}}.nas-journey-availability__flight-time-when-arrival{display:inline}.nas-journey-availability__flight-time-when-departure{display:inline}.nas-journey-availability__flight-time-when-airports{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold;font-size:18px;line-height:26px;flex:0 0 100%;color:#003251}@media (min-width: 1000px){.nas-journey-availability__flight-time-when-airports{flex:initial}}.nas-journey-availability__flight-time-when-airports-stopovers{color:#626363}.nas-journey-availability__flight-time-details{font-size:18px;line-height:26px;display:inline-block}.nas-journey-availability__flight-time-details-label{color:#003251;display:none}@media (min-width: 1000px){.nas-journey-availability__flight-time-details-label{display:inline}}.nas-journey-availability__flight-time-details-text{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold}.nas-journey-availability__flight-time-details-count{display:none}@media (min-width: 1000px){.nas-journey-availability__flight-time-details-count{display:inline-block}}@media (min-width: 1000px){.nas-journey-availability__flight-time-details{padding-top:1px;padding-bottom:3px;display:inline;display:initial}}.nas-journey-availability__flight-time-from-to{padding-right:24px}.nas-journey-availability__flight-time-info{margin-left:auto;justify-self:flex-end;text-align:end;font-size:14px;line-height:20px;padding-top:6px}.nas-journey-availability__flight-time-info-link-wrapper{cursor:pointer;padding:6px 0 12px 12px}@media (min-width: 1000px){.nas-journey-availability__flight-time-info-link-wrapper{padding:6px 0 0}}.nas-journey-availability__flight-time-info-link{color:#c41734;border-bottom-color:#d8d8d8}.nas-journey-availability__flight-time-info-link:hover{border-bottom-color:#003251}@media (min-width: 1000px){.nas-journey-availability__flight-time-info{position:absolute;bottom:12px}}.nas-journey-availability__journey-figure{margin-top:12px;max-height:12px}@media (min-width: 1000px){.nas-journey-availability__journey-figure{margin-top:0;max-height:none;max-height:initial}}.nas-journey-availability__selected-info{display:flex;flex:0 0 100%;flex-wrap:wrap}@media (min-width: 1000px){.nas-journey-availability__selected-info{flex:1 1 40%}}@media (min-width: 1000px){.nas-journey-availability__selected-info-graph{align-self:center}}.nas-journey-availability__journey mark{background-color:transparent}.nas-journey-availability__journey-label{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:normal;font-size:14px;line-height:20px;color:#003251;white-space:nowrap;display:inline}.nas-journey-availability__journey-airport{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold;font-size:14px;line-height:20px;display:inline-block;margin-bottom:0}.nas-journey-availability__journey-info{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:normal;font-size:18px;line-height:26px;display:inline-block;vertical-align:top}@media (min-width: 1000px){.nas-journey-availability__journey-info{display:block}}.nas-journey-availability__journey-info-stops{display:inline-block;margin-bottom:0;font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:normal;color:#003251}@media (min-width: 1000px){.nas-journey-availability__journey-info-stops{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold;color:#626363}}.nas-journey-availability__journey-info-stops-format{display:inline;color:#626363}@media (min-width: 1000px){.nas-journey-availability__journey-info-stops-format{display:none}}.nas-journey-availability__journey-info-stops-details{display:none}@media (min-width: 1000px){.nas-journey-availability__journey-info-stops-details{display:inline}}@media (min-width: 1000px){.nas-journey-availability__journey .nas-journey-availability__md-icon{min-height:22px}}.nas-journey-availability__operated-by{font-size:14px;line-height:20px;display:none}@media (min-width: 1000px){.nas-journey-availability__operated-by{display:block;flex:0 0 100%;display:inline-block;margin-top:6px}}.nas-journey-availability__operated-by label,.nas-journey-availability__operated-by caption{display:inline}.nas-journey-availability__operated-by mark{background-color:transparent}.nas-journey-availability__stopover{transform:rotate(90deg)}@media (min-width: 1000px){.nas-journey-availability__stopover{transform:rotate(0);align-self:center;margin-right:12px}}.nas-journey-availability__animate{display:block}.nas-journey-availability__animate--animate{transform-origin:center top;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-animation:flip-in .55s ease both;animation:flip-in .55s ease both;-webkit-animation-delay:.48s;animation-delay:.48s}.nas-journey-availability__animate--animate:nth-child(1){-webkit-animation-delay:.18s;animation-delay:.18s}.nas-journey-availability__animate--animate:nth-child(2){-webkit-animation-delay:.21s;animation-delay:.21s}.nas-journey-availability__animate--animate:nth-child(3){-webkit-animation-delay:.24s;animation-delay:.24s}.nas-journey-availability__animate--animate:nth-child(4){-webkit-animation-delay:.27s;animation-delay:.27s}.nas-journey-availability__animate--animate:nth-child(5){-webkit-animation-delay:.3s;animation-delay:.3s}.nas-journey-availability__animate--animate:nth-child(6){-webkit-animation-delay:.33s;animation-delay:.33s}.nas-journey-availability__animate--animate:nth-child(7){-webkit-animation-delay:.36s;animation-delay:.36s}.nas-journey-availability__animate--animate:nth-child(8){-webkit-animation-delay:.39s;animation-delay:.39s}.nas-journey-availability__animate--animate:nth-child(9){-webkit-animation-delay:.42s;animation-delay:.42s}.nas-journey-availability__animate--animate:nth-child(10){-webkit-animation-delay:.45s;animation-delay:.45s}@-webkit-keyframes arrival-fly-in{0%{opacity:0;transform:translate(-260px,-100px) rotate(10deg)}25%{opacity:1}}@keyframes arrival-fly-in{0%{opacity:0;transform:translate(-260px,-100px) rotate(10deg)}25%{opacity:1}}@-webkit-keyframes departure-fly-off{75%{opacity:1}to{opacity:0;transform:translate(260px,-100px) rotate(-20deg)}}@keyframes departure-fly-off{75%{opacity:1}to{opacity:0;transform:translate(260px,-100px) rotate(-20deg)}}\n"]
108
- },] }
109
- ];
110
- JourneyAvailabilityComponent.ctorParameters = () => [
111
- { type: DatePipe },
112
- { type: DeviceHelper },
113
- { type: DateHelper }
114
- ];
115
- JourneyAvailabilityComponent.propDecorators = {
116
- model: [{ type: Input }],
117
- selected: [{ type: Input }],
118
- locale: [{ type: Input }],
119
- timeDisplayFormat: [{ type: Input }],
120
- timeZone: [{ type: Input }],
121
- displayJourneyDetails: [{ type: Input }],
122
- displayJourneyDetailsChange: [{ type: Output }],
123
- journeyAvailabilityClick: [{ type: Output }]
124
- };
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1hdmFpbGFiaWxpdHkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9qb3VybmV5LWF2YWlsYWJpbGl0eS9qb3VybmV5LWF2YWlsYWJpbGl0eS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBQ0gsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUdMLE1BQU0sRUFDTixZQUFZLEVBRWIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRWhGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUUxRTs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsZ0JBQWdCO0lBb0ZoRSxZQUNVLFFBQWtCLEVBQ2xCLGFBQTJCLEVBQzNCLFdBQXVCO1FBRS9CLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBSjFCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsa0JBQWEsR0FBYixhQUFhLENBQWM7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUE1RGpDOzs7Ozs7O1dBT0c7UUFDTSxXQUFNLEdBQUcsT0FBTyxDQUFDO1FBRTFCOzs7Ozs7V0FNRztRQUNNLHNCQUFpQixHQUFHLE9BQU8sQ0FBQztRQUVyQzs7Ozs7OztXQU9HO1FBQ00sYUFBUSxHQUFHLEtBQUssQ0FBQztRQWlCMUI7Ozs7V0FJRztRQUNPLGdDQUEyQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFcEU7OztXQUdHO1FBQ08sNkJBQXdCLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7SUFRdkUsQ0FBQztJQWxDRDs7O09BR0c7SUFDSCxJQUNJLHFCQUFxQjtRQUN2QixPQUFPLElBQUksQ0FBQywwQkFBMEIsQ0FBQztJQUN6QyxDQUFDO0lBQ0QsSUFBSSxxQkFBcUIsQ0FBQyxLQUFjO1FBQ3RDLElBQUksSUFBSSxDQUFDLDBCQUEwQixLQUFLLEtBQUssRUFBRTtZQUM3QyxJQUFJLENBQUMsMEJBQTBCLEdBQUcsS0FBSyxDQUFDO1lBQ3hDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDOUM7SUFDSCxDQUFDO0lBdUJELFFBQVE7UUFDTixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDM0QsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsY0FBYyxHQUFHO2dCQUNwQixhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQ3BDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQy9DLElBQUksQ0FBQyxpQkFBaUIsRUFDdEIsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsTUFBTSxDQUNaO2dCQUNELFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FDbEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFDN0MsSUFBSSxDQUFDLGlCQUFpQixFQUN0QixJQUFJLENBQUMsUUFBUSxFQUNiLElBQUksQ0FBQyxNQUFNLENBQ1o7YUFDRixDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQW9CO1FBQzVCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELHdCQUF3QixDQUFDLEtBQW9CO1FBQzNDLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztRQUN6RCxJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ2xFLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsV0FBVztRQUNULElBQ0UsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQjtZQUM5QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUMzQztZQUNBLE9BQU8sRUFBRSxDQUFDO1NBQ1g7YUFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsWUFBWSxLQUFLLENBQUMsRUFBRTtZQUMzRCxPQUFPLGdCQUFnQixDQUFDO1NBQ3pCO2FBQU07WUFDTCxPQUFPLGlCQUFpQixDQUFDO1NBQzFCO0lBQ0gsQ0FBQzs7O1lBN0lGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsMEJBQTBCO2dCQUNwQyxzOU5BQW9EOzthQUVyRDs7O1lBdkJRLFFBQVE7WUFXUixZQUFZO1lBRVosVUFBVTs7O29CQTBCaEIsS0FBSzt1QkFVTCxLQUFLO3FCQVVMLEtBQUs7Z0NBU0wsS0FBSzt1QkFVTCxLQUFLO29DQU1MLEtBQUs7MENBZ0JMLE1BQU07dUNBTU4sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBOb3J3ZWdpYW4gQWlyIFNodXR0bGUuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKi9cbmltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hc0NvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UvbmFzLWNvbXBvbmVudC5iYXNlJztcbmltcG9ydCB7IERldmljZUhlbHBlciB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvZGV2aWNlL2RldmljZS1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBKb3VybmV5QXZhaWxhYmlsaXR5TW9kZWwgfSBmcm9tICcuLi8uLi9zaGFyZWQvbW9kZWxzL2pvdXJuZXktYXZhaWxhYmlsaXR5Lm1vZGVsJztcbmltcG9ydCB7IERhdGVIZWxwZXIgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL2RhdGUvZGF0ZS1oZWxwZXIuc2VydmljZSc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKiBOb3J3ZWdpYW4gSm91cm5leSBBdmFpbGFiaWxpdHkgQ29tcG9uZW50IHwgRnVuY3Rpb25hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduYXMtam91cm5leS1hdmFpbGFiaWxpdHknLFxuICB0ZW1wbGF0ZVVybDogJy4vam91cm5leS1hdmFpbGFiaWxpdHkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9qb3VybmV5LWF2YWlsYWJpbGl0eS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEpvdXJuZXlBdmFpbGFiaWxpdHlDb21wb25lbnQgZXh0ZW5kcyBOYXNDb21wb25lbnRCYXNlXG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBjdXJyZW50Sm91cm5leTogYW55O1xuICBwcml2YXRlIGRpc3BsYXlKb3VybmV5RGV0YWlsc1ZhbHVlOiBib29sZWFuO1xuICBpc1NtYWxsU2NyZWVuOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBAcmVxdWlyZWRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgcmVjb3JkIGNvbnRhaW5pbmcgYWxsIHRoZSBkYXRhIHJlcXVpcmVkIHRvIHNob3cgam91cm5leSBhdmFpbGFiaWxpdHkgVUksIGxvb2sgYXQgJ1JvdXRlTW9kZWwnIGZvciBkZXRhaWxzLlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGBodG1sXG4gICAqIDxuYXMtam91cm5leS1hdmFpbGFiaWxpdHkgW2pvdXJuZXlBdmFpbGFiaWxpdHlNb2RlbF09XCJqb3VybmV5QXZhaWxhYmlsaXR5TW9kZWxcIj48L25hcy1qb3VybmV5LWF2YWlsYWJpbGl0eT5cbiAgICogYGBgXG4gICAqL1xuICBASW5wdXQoKSBtb2RlbDogSm91cm5leUF2YWlsYWJpbGl0eU1vZGVsO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBib29sZWFuIHZhbHVlLCB3aGVuIHNldCB0byB0cnVlIHdpbGwgc2hvdyBqb3VybmV5IGF2YWlsYWJpbGl0eSBVSSBpbiBzZWxlY3RlZCBmb3JtYXQuXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYGh0bWxcbiAgICogPG5hcy1qb3VybmV5LWF2YWlsYWJpbGl0eSBbc2VsZWN0ZWRdPVwidHJ1ZVwiPjwvbmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5PlxuICAgKiBgYGBcbiAgICovXG4gIEBJbnB1dCgpIHNlbGVjdGVkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBsb2NhbGUgY29kZSBmb3IgdGhlIGxvY2FsZSBmb3JtYXQgcnVsZXMgdG8gdXNlLiBXaGVuIG5vdCBzdXBwbGllZCwgdXNlcyB0aGUgdmFsdWUgb2YgTE9DQUxFX0lELCB3aGljaCBpcyBlbi1VUyBieSBkZWZhdWx0LlxuICAgKiBUaGlzIHJlcXVpcmVzIHRoYXQgcmVnaXN0ZXJMb2NhbGVEYXRhIGlzIGNhbGxlZCB3aXRoIHRoZSByZXNwZWN0aXZlIGxvY2FsZS5cbiAgICogQGV4YW1wbGVcbiAgICogYGBgaHRtbFxuICAgKiA8bmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5IFtsb2NhbGVdPVwiJ2VzJ1wiPjwvbmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5PlxuICAgKi9cbiAgQElucHV0KCkgbG9jYWxlID0gJ2VuLVVTJztcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFRpbWUgZGlzcGxheSBmb3JtYXQsIERlZmF1bHQgaXMgSEg6bW1cbiAgICogQGV4YW1wbGVcbiAgICogYGBgaHRtbFxuICAgKiA8bmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5IFt0aW1lRGlzcGxheUZvcm1hdF09XCInSEg6bW0nXCI+PC9uYXMtam91cm5leS1hdmFpbGFiaWxpdHk+XG4gICAqL1xuICBASW5wdXQoKSB0aW1lRGlzcGxheUZvcm1hdCA9ICdISDptbSc7XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBVc2VyIGNhbiBpbnB1dCB0aGUgdGltZXpvbmUgdG8gbG9jYWxpemUgdGhlIGRhdGUuXG4gICAqIERlZmF1bHQgaXMgc2V0IHRvIFVUQyBhbmQgaXQgd2lsbCBieSBkZWZhdWx0IHNob3cgdGhlIGRhdGUgZXhhY3RseSB3aGF0IGlzIHBhc3NlZCB0byBpdC5cbiAgICogQGV4YW1wbGVcbiAgICogYGBgaHRtbFxuICAgKiA8bmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5IFt0aW1lWm9uZV09XCInVVRDJ1wiPjwvbmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5PlxuICAgKi9cbiAgQElucHV0KCkgdGltZVpvbmUgPSAnVVRDJztcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFNldHRlciBhbmQgZ2V0dGVyIHdoZW4gdGhlIGZsaWdodCBpbmZvIHBvcHVwIHNob3dzL2hpZGRlbi5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNwbGF5Sm91cm5leURldGFpbHMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZGlzcGxheUpvdXJuZXlEZXRhaWxzVmFsdWU7XG4gIH1cbiAgc2V0IGRpc3BsYXlKb3VybmV5RGV0YWlscyh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLmRpc3BsYXlKb3VybmV5RGV0YWlsc1ZhbHVlICE9PSB2YWx1ZSkge1xuICAgICAgdGhpcy5kaXNwbGF5Sm91cm5leURldGFpbHNWYWx1ZSA9IHZhbHVlO1xuICAgICAgdGhpcy5kaXNwbGF5Sm91cm5leURldGFpbHNDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBbiBFdmVudCB3aGljaCBFbWl0dHMgYm9vbGVhbiB3aGVuIEZsaWdodCBpbmZvIHBvcHVwIGlzIHRvZ2dsZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgZGlzcGxheUpvdXJuZXlEZXRhaWxzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogRXZlbnQgZW1pdHMgd2hlbiB1c2VyIGNsaWNrIG9uIGpvdXJuZXkgYXZhaWxhYmlsaXR5IGZvciBzZWxlY3Rpb24uXG4gICAqL1xuICBAT3V0cHV0KCkgam91cm5leUF2YWlsYWJpbGl0eUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZGF0ZVBpcGU6IERhdGVQaXBlLFxuICAgIHByaXZhdGUgZGV2aWNlU2VydmljZTogRGV2aWNlSGVscGVyLFxuICAgIHByaXZhdGUgZGF0ZVNlcnZpY2U6IERhdGVIZWxwZXJcbiAgKSB7XG4gICAgc3VwZXIoJ25hcy1qb3VybmV5LWF2YWlsYWJpbGl0eScpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc1NtYWxsU2NyZWVuID0gdGhpcy5kZXZpY2VTZXJ2aWNlLmlzVGFibGV0V2luZG93KCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubW9kZWwpIHtcbiAgICAgIHRoaXMuY3VycmVudEpvdXJuZXkgPSB7XG4gICAgICAgIGRlcGFydHVyZVRpbWU6IHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKFxuICAgICAgICAgIHRoaXMuZGF0ZVNlcnZpY2UuZGF0ZSh0aGlzLm1vZGVsLmRlcGFydHVyZVRpbWUpLFxuICAgICAgICAgIHRoaXMudGltZURpc3BsYXlGb3JtYXQsXG4gICAgICAgICAgdGhpcy50aW1lWm9uZSxcbiAgICAgICAgICB0aGlzLmxvY2FsZVxuICAgICAgICApLFxuICAgICAgICBhcnJpdmFsVGltZTogdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oXG4gICAgICAgICAgdGhpcy5kYXRlU2VydmljZS5kYXRlKHRoaXMubW9kZWwuYXJyaXZhbFRpbWUpLFxuICAgICAgICAgIHRoaXMudGltZURpc3BsYXlGb3JtYXQsXG4gICAgICAgICAgdGhpcy50aW1lWm9uZSxcbiAgICAgICAgICB0aGlzLmxvY2FsZVxuICAgICAgICApXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIGVtaXRDbGljayhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuam91cm5leUF2YWlsYWJpbGl0eUNsaWNrLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgdG9nZ2xlSm91cm5leUluZm9EZXRhaWxzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5kaXNwbGF5Sm91cm5leURldGFpbHMgPSAhdGhpcy5kaXNwbGF5Sm91cm5leURldGFpbHM7XG4gICAgdGhpcy5kaXNwbGF5Sm91cm5leURldGFpbHNDaGFuZ2UuZW1pdCh0aGlzLmRpc3BsYXlKb3VybmV5RGV0YWlscyk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBnZXRJY29uVHlwZSgpOiBzdHJpbmcge1xuICAgIGlmIChcbiAgICAgICF0aGlzLm1vZGVsLmpvdXJuZXlUcmFuc2l0SW5mbyB8fFxuICAgICAgIXRoaXMubW9kZWwuam91cm5leVRyYW5zaXRJbmZvLnRyYW5zaXRDb3VudFxuICAgICkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH0gZWxzZSBpZiAodGhpcy5tb2RlbC5qb3VybmV5VHJhbnNpdEluZm8udHJhbnNpdENvdW50ID09PSAxKSB7XG4gICAgICByZXR1cm4gJ29uZS1zdG9wLWFycm93JztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICd0d28tc3RvcHMtYXJyb3cnO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,26 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { NgModule } from '@angular/core';
3
- import { JourneyAvailabilityComponent } from './journey-availability.component';
4
- import { NasClassModule } from '../../core/directives/nas-class/nas-class.module';
5
- import { DateHelper } from '../../core/services/date/date-helper.service';
6
- import { IconModule } from '../icon/icon.module';
7
- import { DeviceHelper } from '../../core/services/device/device-helper.service';
8
- import { ModalModule } from '../modal/modal.module';
9
- import { TripSummaryModule } from '../trip-summary/trip-summary.module';
10
- export class JourneyAvailabilityModule {
11
- }
12
- JourneyAvailabilityModule.decorators = [
13
- { type: NgModule, args: [{
14
- declarations: [JourneyAvailabilityComponent],
15
- imports: [
16
- CommonModule,
17
- NasClassModule,
18
- IconModule,
19
- ModalModule,
20
- TripSummaryModule
21
- ],
22
- exports: [JourneyAvailabilityComponent],
23
- providers: [DateHelper, DeviceHelper]
24
- },] }
25
- ];
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1hdmFpbGFiaWxpdHkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9qb3VybmV5LWF2YWlsYWJpbGl0eS9qb3VybmV5LWF2YWlsYWJpbGl0eS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQWN4RSxNQUFNLE9BQU8seUJBQXlCOzs7WUFackMsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRSxDQUFDLDRCQUE0QixDQUFDO2dCQUM1QyxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixjQUFjO29CQUNkLFVBQVU7b0JBQ1YsV0FBVztvQkFDWCxpQkFBaUI7aUJBQ2xCO2dCQUNELE9BQU8sRUFBRSxDQUFDLDRCQUE0QixDQUFDO2dCQUN2QyxTQUFTLEVBQUUsQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDO2FBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBKb3VybmV5QXZhaWxhYmlsaXR5Q29tcG9uZW50IH0gZnJvbSAnLi9qb3VybmV5LWF2YWlsYWJpbGl0eS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmFzQ2xhc3NNb2R1bGUgfSBmcm9tICcuLi8uLi9jb3JlL2RpcmVjdGl2ZXMvbmFzLWNsYXNzL25hcy1jbGFzcy5tb2R1bGUnO1xuaW1wb3J0IHsgRGF0ZUhlbHBlciB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvZGF0ZS9kYXRlLWhlbHBlci5zZXJ2aWNlJztcbmltcG9ydCB7IEljb25Nb2R1bGUgfSBmcm9tICcuLi9pY29uL2ljb24ubW9kdWxlJztcbmltcG9ydCB7IERldmljZUhlbHBlciB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvZGV2aWNlL2RldmljZS1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBNb2RhbE1vZHVsZSB9IGZyb20gJy4uL21vZGFsL21vZGFsLm1vZHVsZSc7XG5pbXBvcnQgeyBUcmlwU3VtbWFyeU1vZHVsZSB9IGZyb20gJy4uL3RyaXAtc3VtbWFyeS90cmlwLXN1bW1hcnkubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbSm91cm5leUF2YWlsYWJpbGl0eUNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTmFzQ2xhc3NNb2R1bGUsXG4gICAgSWNvbk1vZHVsZSxcbiAgICBNb2RhbE1vZHVsZSxcbiAgICBUcmlwU3VtbWFyeU1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbSm91cm5leUF2YWlsYWJpbGl0eUNvbXBvbmVudF0sXG4gIHByb3ZpZGVyczogW0RhdGVIZWxwZXIsIERldmljZUhlbHBlcl1cbn0pXG5leHBvcnQgY2xhc3MgSm91cm5leUF2YWlsYWJpbGl0eU1vZHVsZSB7IH1cbiJdfQ==
@@ -1,175 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Norwegian Air Shuttle. All Rights Reserved.
4
- */
5
- import { Component, Input, Output, EventEmitter } from '@angular/core';
6
- import { NasComponentBase } from '../../core/base/nas-component.base';
7
- import { DateHelper } from '../../core/services/date/date-helper.service';
8
- import { AvailabilitySortOption } from './enums/availability-sort-option.enum';
9
- /**
10
- * @description
11
- * Norwegian Journey availability list Component | Functional
12
- */
13
- export class JourneyAvailabilityListComponent extends NasComponentBase {
14
- constructor(dateService) {
15
- super('nas-journey-availability-list');
16
- this.dateService = dateService;
17
- /**
18
- * @description
19
- * Event that fires when the sort option changes.
20
- */
21
- this.sortSelectedOptionChange = new EventEmitter();
22
- /**
23
- * @description
24
- * A locale code for the locale format rules to use. When not supplied, uses the value of LOCALE_ID, which is en-US by default.
25
- * This requires that registerLocaleData is called with the respective locale.
26
- * @example
27
- * ```html
28
- * <nas-journey-availability-list [locale]="'es'"></nas-journey-availability-list>
29
- */
30
- this.locale = 'en-US';
31
- /**
32
- * @description
33
- * Time display format.
34
- * @example
35
- * ```html
36
- * <nas-journey-availability-list [timeDisplayFormat]="'HH:mm'"></nas-journey-availability-list>
37
- */
38
- this.timeDisplayFormat = 'HH:mm';
39
- /**
40
- *
41
- * @description
42
- * A JourneyModel type record the represents selected journey data;
43
- * @example
44
- * ```html
45
- * <nas-journey-availability-list (selectedJourney)="onselectedJourney($event)"></nas-journey-availability-list>
46
- * ```
47
- */
48
- this.selectedJourney = new EventEmitter();
49
- /**
50
- *
51
- * @description
52
- * A selected index of selected journey data;
53
- * @example
54
- * ```html
55
- * <nas-journey-availability-list (selectedIndexChange)="onSelectedIndexChange($event)"></nas-journey-availability-list>
56
- * ```
57
- */
58
- this.selectedIndexChange = new EventEmitter();
59
- /**
60
- *
61
- * @description
62
- * An Event which Emitts boolean when Flight info popup is toggled.
63
- */
64
- this.displayJourneyDetailsChange = new EventEmitter();
65
- }
66
- /**
67
- * @description
68
- * An optional model for sort popup options.
69
- */
70
- set sortModel(model) {
71
- if (!model) {
72
- return;
73
- }
74
- this.sortMetaData = {
75
- sortOptions: [
76
- { title: model.fastestLabel, value: '1' },
77
- { title: model.directOnlyLabel, value: '2' },
78
- { title: model.departureTimeLabel, value: '3' }
79
- ],
80
- label: model.sortLabel,
81
- right: true,
82
- closeDropdownOnOptionChange: true,
83
- name: model.name
84
- };
85
- }
86
- /**
87
- * @description
88
- * set or get selected sort option.
89
- */
90
- get sortSelectedOption() {
91
- return this.sortSelectedOptionObject;
92
- }
93
- set sortSelectedOption(option) {
94
- if (!option) {
95
- return;
96
- }
97
- this.sortChange(option);
98
- this.sortSelectedOptionObject = option;
99
- this.sortSelectedOptionChange.emit(option);
100
- }
101
- /**
102
- *
103
- * @description
104
- * A number that sets the SelectedIndex from the JourneyList array in journeyAvailabilityListModel
105
- * @example
106
- * ```html
107
- * <nas-journey-availability-list [(selectIndex)]="selectIndex"></nas-journey-availability-list>
108
- * ```
109
- */
110
- get selectedIndex() {
111
- return this.activeIndex;
112
- }
113
- set selectedIndex(index) {
114
- this.activeIndex = index;
115
- this.selectedIndexChange.emit(index);
116
- }
117
- displayJourneyDetailsChanged(value) {
118
- this.displayJourneyDetailsChange.emit(value);
119
- }
120
- isAvailabilityJourneySelected(journeyAvailabilityIndex) {
121
- return this.activeIndex === journeyAvailabilityIndex;
122
- }
123
- emitSelected(flightIndex) {
124
- this.selectedIndex = flightIndex;
125
- if (!this.model || !this.model.length) {
126
- return;
127
- }
128
- const selectedFlight = this.model[flightIndex];
129
- if (selectedFlight) {
130
- this.selectedJourney.emit(selectedFlight);
131
- }
132
- }
133
- sortChange(option) {
134
- if (!option) {
135
- return;
136
- }
137
- switch (parseInt(option.value, 10)) {
138
- case AvailabilitySortOption.fastest:
139
- this.model = this.model.sort((a, b) => a.duration.durationInMinutes - b.duration.durationInMinutes);
140
- break;
141
- case AvailabilitySortOption.directOnly:
142
- this.model = this.model.sort((a, b) => a.journeyTransitInfo.transitCount - b.journeyTransitInfo.transitCount);
143
- break;
144
- case AvailabilitySortOption.departureTime:
145
- this.model = this.model.sort((a, b) => this.dateService.date(a.departureTime).getTime() - this.dateService.date(b.departureTime).getTime());
146
- break;
147
- default:
148
- break;
149
- }
150
- }
151
- }
152
- JourneyAvailabilityListComponent.decorators = [
153
- { type: Component, args: [{
154
- selector: 'nas-journey-availability-list',
155
- template: "<div [nasClass]=\"getContainerClass()\" *ngIf=\"model && model?.length\" role=\"list\">\n <div *ngIf=\"sortMetaData\" [nasClass]=\"getClass('sort-popup')\">\n <nas-sort [model]=\"sortMetaData\" (selectedOptionChange)=\"sortChange($event)\"\n [(selectedOption)]=\"sortSelectedOption\">\n </nas-sort>\n </div>\n\n <div [nasClass]=\"getClass('single-result')\"\n *ngFor=\"let journeyAvailabilityModel of model; index as journeyAvailabilityIndex\" role=\"listitem\">\n <nas-journey-availability (displayJourneyDetailsChange)=\"displayJourneyDetailsChanged($event)\"\n (journeyAvailabilityClick)=\"emitSelected(journeyAvailabilityIndex)\"\n [selected]=\"isAvailabilityJourneySelected(journeyAvailabilityIndex)\" [model]=\"journeyAvailabilityModel\"\n [timeDisplayFormat]=\"timeDisplayFormat\" [locale]=\"locale\">\n </nas-journey-availability>\n </div>\n\n <label [nasClass]=\"getClass('no-results')\" *ngIf=\"!model?.length\">\n <p>{{ noDataCaption }}</p>\n </label>\n</div>",
156
- styles: ["@-webkit-keyframes fade-in{0%{opacity:0}}@keyframes fade-in{0%{opacity:0}}@-webkit-keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@-webkit-keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@-webkit-keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@-webkit-keyframes fade-out{to{opacity:0}}@keyframes fade-out{to{opacity:0}}@-webkit-keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@-webkit-keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@-webkit-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)}}@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-journey-availability-list__journey-list-label{margin-bottom:9px}.nas-journey-availability-list__journey-info{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:normal;font-size:16px;line-height:26px;margin-bottom:9px}.nas-journey-availability-list__journey-info-date{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold;margin-right:6px}.nas-journey-availability-list__journey-info-origin{margin-right:6px}.nas-journey-availability-list__journey-tabs{margin-top:12px;margin-bottom:9px;display:flex}.nas-journey-availability-list__journey-tabs-button{margin-right:6px;flex:1;background-color:#e3e3e3;padding:24px 0}.nas-journey-availability-list__journey-tabs-button:last-child{margin-right:0}.nas-journey-availability-list__journey-tabs-button--active{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold;background-color:#fff}.nas-journey-availability-list__journey-tabs-button:focus{outline:none;box-shadow:none}.nas-journey-availability-list__no-results{text-align:center;font-size:17px;color:#626363;padding-top:10px}.nas-journey-availability-list__single-result{margin-bottom:9px;clear:both}.nas-journey-availability-list__single-result:last-child{margin-bottom:0}.nas-journey-availability-list__sort-popup{position:relative}::ng-deep .nas-journey-availability-list__journey-list-label .nas-cover__header{border-bottom-color:#626363!important}\n"]
157
- },] }
158
- ];
159
- JourneyAvailabilityListComponent.ctorParameters = () => [
160
- { type: DateHelper }
161
- ];
162
- JourneyAvailabilityListComponent.propDecorators = {
163
- model: [{ type: Input }],
164
- sortModel: [{ type: Input }],
165
- sortSelectedOption: [{ type: Input }],
166
- sortSelectedOptionChange: [{ type: Output }],
167
- locale: [{ type: Input }],
168
- noDataCaption: [{ type: Input }],
169
- timeDisplayFormat: [{ type: Input }],
170
- selectedJourney: [{ type: Output }],
171
- selectedIndexChange: [{ type: Output }],
172
- selectedIndex: [{ type: Input }],
173
- displayJourneyDetailsChange: [{ type: Output }]
174
- };
175
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1hdmFpbGFiaWxpdHktbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXktYXZhaWxhYmlsaXR5LWxpc3Qvam91cm5leS1hdmFpbGFiaWxpdHktbGlzdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBQ0gsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUt0RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFL0U7OztHQUdHO0FBTUgsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLGdCQUFnQjtJQXlJcEUsWUFBb0IsV0FBdUI7UUFDekMsS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUM7UUFEckIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFuRjNDOzs7VUFHRTtRQUNRLDZCQUF3QixHQUFHLElBQUksWUFBWSxFQUFtQixDQUFDO1FBRXpFOzs7Ozs7O1VBT0U7UUFDTyxXQUFNLEdBQUcsT0FBTyxDQUFDO1FBYTFCOzs7Ozs7U0FNQztRQUNRLHNCQUFpQixHQUFHLE9BQU8sQ0FBQztRQUVyQzs7Ozs7Ozs7V0FRRztRQUNPLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQTRCLENBQUM7UUFFekU7Ozs7Ozs7O1VBUUU7UUFDUSx3QkFBbUIsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBb0IzRDs7OztXQUlHO1FBQ08sZ0NBQTJCLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUlwRSxDQUFDO0lBM0hEOzs7T0FHRztJQUNILElBQ0ksU0FBUyxDQUFDLEtBQW1DO1FBQy9DLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsWUFBWSxHQUFHO1lBQ2xCLFdBQVcsRUFBRTtnQkFDWCxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUU7Z0JBQ3pDLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxlQUFlLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRTtnQkFDNUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUU7YUFBQztZQUNsRCxLQUFLLEVBQUUsS0FBSyxDQUFDLFNBQVM7WUFDdEIsS0FBSyxFQUFFLElBQUk7WUFDWCwyQkFBMkIsRUFBRSxJQUFJO1lBQ2pDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtTQUNqQixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQ0ksa0JBQWtCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDO0lBQ3ZDLENBQUM7SUFDRCxJQUFJLGtCQUFrQixDQUFDLE1BQXVCO1FBQzVDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxNQUFNLENBQUM7UUFDdkMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBNEREOzs7Ozs7OztPQVFHO0lBQ0gsSUFDSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFDRCxJQUFJLGFBQWEsQ0FBQyxLQUFhO1FBQzdCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQWFELDRCQUE0QixDQUFDLEtBQWM7UUFDekMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsNkJBQTZCLENBQUMsd0JBQWdDO1FBQzVELE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyx3QkFBd0IsQ0FBQztJQUN2RCxDQUFDO0lBRUQsWUFBWSxDQUFDLFdBQW1CO1FBQzlCLElBQUksQ0FBQyxhQUFhLEdBQUcsV0FBVyxDQUFDO1FBRWpDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDckMsT0FBTztTQUNSO1FBRUQsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUUvQyxJQUFJLGNBQWMsRUFBRTtZQUNsQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUMzQztJQUVILENBQUM7SUFFRCxVQUFVLENBQUMsTUFBdUI7UUFDaEMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLE9BQU87U0FDUjtRQUNELFFBQVEsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUU7WUFDbEMsS0FBSyxzQkFBc0IsQ0FBQyxPQUFPO2dCQUNqQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUM7Z0JBQ3BHLE1BQU07WUFFUixLQUFLLHNCQUFzQixDQUFDLFVBQVU7Z0JBQ3BDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDOUcsTUFBTTtZQUVSLEtBQUssc0JBQXNCLENBQUMsYUFBYTtnQkFDdkMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUNwQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7Z0JBQ3ZHLE1BQU07WUFFUjtnQkFDRSxNQUFNO1NBQ1Q7SUFDSCxDQUFDOzs7WUE5TEYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSwrQkFBK0I7Z0JBQ3pDLGtnQ0FBeUQ7O2FBRTFEOzs7WUFYUSxVQUFVOzs7b0JBMEJoQixLQUFLO3dCQU1MLEtBQUs7aUNBcUJMLEtBQUs7dUNBaUJMLE1BQU07cUJBVU4sS0FBSzs0QkFXTCxLQUFLO2dDQVNMLEtBQUs7OEJBV0wsTUFBTTtrQ0FXTixNQUFNOzRCQVdOLEtBQUs7MENBY0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBOb3J3ZWdpYW4gQWlyIFNodXR0bGUuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKi9cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXNDb21wb25lbnRCYXNlIH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlL25hcy1jb21wb25lbnQuYmFzZSc7XG5pbXBvcnQgeyBKb3VybmV5QXZhaWxhYmlsaXR5TW9kZWwgfSBmcm9tICcuLi8uLi9zaGFyZWQvbW9kZWxzL2pvdXJuZXktYXZhaWxhYmlsaXR5Lm1vZGVsJztcbmltcG9ydCB7IFNvcnRNb2RlbCB9IGZyb20gJy4uLy4uL3NoYXJlZC9tb2RlbHMvc29ydC5tb2RlbCc7XG5pbXBvcnQgeyBKb3VybmV5QXZhaWxhYmlsaXR5U29ydE1vZGVsIH0gZnJvbSAnLi4vLi4vc2hhcmVkL21vZGVscy9qb3VybmV5LWF2YWlsYWJpbGl0eS1zb3J0Lm1vZGVsJztcbmltcG9ydCB7IFNvcnRPcHRpb25Nb2RlbCB9IGZyb20gJy4uLy4uL3NoYXJlZC9tb2RlbHMvc29ydC1vcHRpb24ubW9kZWwnO1xuaW1wb3J0IHsgRGF0ZUhlbHBlciB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvZGF0ZS9kYXRlLWhlbHBlci5zZXJ2aWNlJztcbmltcG9ydCB7IEF2YWlsYWJpbGl0eVNvcnRPcHRpb24gfSBmcm9tICcuL2VudW1zL2F2YWlsYWJpbGl0eS1zb3J0LW9wdGlvbi5lbnVtJztcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIE5vcndlZ2lhbiBKb3VybmV5IGF2YWlsYWJpbGl0eSBsaXN0IENvbXBvbmVudCB8IEZ1bmN0aW9uYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5LWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vam91cm5leS1hdmFpbGFiaWxpdHktbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2pvdXJuZXktYXZhaWxhYmlsaXR5LWxpc3QuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBKb3VybmV5QXZhaWxhYmlsaXR5TGlzdENvbXBvbmVudCBleHRlbmRzIE5hc0NvbXBvbmVudEJhc2Uge1xuXG4gIGFjdGl2ZUluZGV4OiBudW1iZXI7XG4gIHNvcnRNZXRhRGF0YTogU29ydE1vZGVsO1xuICBzb3J0U2VsZWN0ZWRPcHRpb25PYmplY3Q6IFNvcnRPcHRpb25Nb2RlbDtcbiAgLyoqXG4gICAqIEByZXF1aXJlZFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSByZWNvcmQgY29udGFpbmluZyBhbGwgdGhlIGRhdGEgcmVxdWlyZWQgdG8gc2hvdyBhdmFpbGFiaWxpdHkgcmVzdWx0cywgbG9vayBhdCAnam91cm5leUF2YWlsYWJpbGl0eU1vZGVsJyBmb3IgZGV0YWlscy5cbiAgICogQGV4YW1wbGVcbiAgICogYGBgaHRtbFxuICAgKiA8bmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5LWxpc3QgW21vZGVsXT1cImpvdXJuZXlBdmFpbGFiaWxpdHlEYXRhXCI+PC9uYXMtam91cm5leS1hdmFpbGFiaWxpdHktbGlzdD5cbiAgICogYGBgXG4gICAqL1xuICBASW5wdXQoKSBtb2RlbDogQXJyYXk8Sm91cm5leUF2YWlsYWJpbGl0eU1vZGVsPjtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEFuIG9wdGlvbmFsIG1vZGVsIGZvciBzb3J0IHBvcHVwIG9wdGlvbnMuXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgc29ydE1vZGVsKG1vZGVsOiBKb3VybmV5QXZhaWxhYmlsaXR5U29ydE1vZGVsKSB7XG4gICAgaWYgKCFtb2RlbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnNvcnRNZXRhRGF0YSA9IHtcbiAgICAgIHNvcnRPcHRpb25zOiBbXG4gICAgICAgIHsgdGl0bGU6IG1vZGVsLmZhc3Rlc3RMYWJlbCwgdmFsdWU6ICcxJyB9LFxuICAgICAgICB7IHRpdGxlOiBtb2RlbC5kaXJlY3RPbmx5TGFiZWwsIHZhbHVlOiAnMicgfSxcbiAgICAgICAgeyB0aXRsZTogbW9kZWwuZGVwYXJ0dXJlVGltZUxhYmVsLCB2YWx1ZTogJzMnIH1dLFxuICAgICAgbGFiZWw6IG1vZGVsLnNvcnRMYWJlbCxcbiAgICAgIHJpZ2h0OiB0cnVlLFxuICAgICAgY2xvc2VEcm9wZG93bk9uT3B0aW9uQ2hhbmdlOiB0cnVlLFxuICAgICAgbmFtZTogbW9kZWwubmFtZVxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIHNldCBvciBnZXQgc2VsZWN0ZWQgc29ydCBvcHRpb24uXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgc29ydFNlbGVjdGVkT3B0aW9uKCk6IFNvcnRPcHRpb25Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuc29ydFNlbGVjdGVkT3B0aW9uT2JqZWN0O1xuICB9XG4gIHNldCBzb3J0U2VsZWN0ZWRPcHRpb24ob3B0aW9uOiBTb3J0T3B0aW9uTW9kZWwpIHtcbiAgICBpZiAoIW9wdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnNvcnRDaGFuZ2Uob3B0aW9uKTtcbiAgICB0aGlzLnNvcnRTZWxlY3RlZE9wdGlvbk9iamVjdCA9IG9wdGlvbjtcbiAgICB0aGlzLnNvcnRTZWxlY3RlZE9wdGlvbkNoYW5nZS5lbWl0KG9wdGlvbik7XG4gIH1cblxuICAvKipcbiAgKiBAZGVzY3JpcHRpb25cbiAgKiBFdmVudCB0aGF0IGZpcmVzIHdoZW4gdGhlIHNvcnQgb3B0aW9uIGNoYW5nZXMuXG4gICovXG4gIEBPdXRwdXQoKSBzb3J0U2VsZWN0ZWRPcHRpb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNvcnRPcHRpb25Nb2RlbD4oKTtcblxuICAvKipcbiAgKiBAZGVzY3JpcHRpb25cbiAgKiBBIGxvY2FsZSBjb2RlIGZvciB0aGUgbG9jYWxlIGZvcm1hdCBydWxlcyB0byB1c2UuIFdoZW4gbm90IHN1cHBsaWVkLCB1c2VzIHRoZSB2YWx1ZSBvZiBMT0NBTEVfSUQsIHdoaWNoIGlzIGVuLVVTIGJ5IGRlZmF1bHQuXG4gICogVGhpcyByZXF1aXJlcyB0aGF0IHJlZ2lzdGVyTG9jYWxlRGF0YSBpcyBjYWxsZWQgd2l0aCB0aGUgcmVzcGVjdGl2ZSBsb2NhbGUuXG4gICogQGV4YW1wbGVcbiAgKiBgYGBodG1sXG4gICogPG5hcy1qb3VybmV5LWF2YWlsYWJpbGl0eS1saXN0IFtsb2NhbGVdPVwiJ2VzJ1wiPjwvbmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5LWxpc3Q+XG4gICovXG4gIEBJbnB1dCgpIGxvY2FsZSA9ICdlbi1VUyc7XG5cbiAgLyoqXG4gKiBAcmVxdWlyZWRcbiAqIEBkZXNjcmlwdGlvblxuICogQSBzdHJpbmcgdG8gZ2l2ZSB0aGUgdXNlciBmZWVkYmFjayB3aGVuIHRoZXJlIG5vIGRhdGEgYXZhaWxhYmxlIGZvciB0aGUgYXZhaWxhYmlsaXR5IHJlc3VsdCBmb3Igc3BlY2lmaWVkIHBhcmFtZXRlcnNcbiAqIEBleGFtcGxlXG4gKiBgYGBodG1sXG4gKiA8bmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5LWxpc3QgW25vRGF0YUNhcHRpb25dPVwibm9EYXRhQ2FwdGlvblwiPjwvbmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5LWxpc3Q+XG4gKiBgYGBcbiAqL1xuICBASW5wdXQoKSBub0RhdGFDYXB0aW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIFRpbWUgZGlzcGxheSBmb3JtYXQuXG4gKiBAZXhhbXBsZVxuICogYGBgaHRtbFxuICogPG5hcy1qb3VybmV5LWF2YWlsYWJpbGl0eS1saXN0IFt0aW1lRGlzcGxheUZvcm1hdF09XCInSEg6bW0nXCI+PC9uYXMtam91cm5leS1hdmFpbGFiaWxpdHktbGlzdD5cbiAqL1xuICBASW5wdXQoKSB0aW1lRGlzcGxheUZvcm1hdCA9ICdISDptbSc7XG5cbiAgLyoqXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIEpvdXJuZXlNb2RlbCB0eXBlIHJlY29yZCB0aGUgcmVwcmVzZW50cyBzZWxlY3RlZCBqb3VybmV5IGRhdGE7XG4gICAqIEBleGFtcGxlXG4gICAqIGBgYGh0bWxcbiAgICogPG5hcy1qb3VybmV5LWF2YWlsYWJpbGl0eS1saXN0IChzZWxlY3RlZEpvdXJuZXkpPVwib25zZWxlY3RlZEpvdXJuZXkoJGV2ZW50KVwiPjwvbmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5LWxpc3Q+XG4gICAqIGBgYFxuICAgKi9cbiAgQE91dHB1dCgpIHNlbGVjdGVkSm91cm5leSA9IG5ldyBFdmVudEVtaXR0ZXI8Sm91cm5leUF2YWlsYWJpbGl0eU1vZGVsPigpO1xuXG4gIC8qKlxuICAqXG4gICogQGRlc2NyaXB0aW9uXG4gICogQSBzZWxlY3RlZCBpbmRleCBvZiBzZWxlY3RlZCBqb3VybmV5IGRhdGE7XG4gICogQGV4YW1wbGVcbiAgKiBgYGBodG1sXG4gICogPG5hcy1qb3VybmV5LWF2YWlsYWJpbGl0eS1saXN0IChzZWxlY3RlZEluZGV4Q2hhbmdlKT1cIm9uU2VsZWN0ZWRJbmRleENoYW5nZSgkZXZlbnQpXCI+PC9uYXMtam91cm5leS1hdmFpbGFiaWxpdHktbGlzdD5cbiAgKiBgYGBcbiAgKi9cbiAgQE91dHB1dCgpIHNlbGVjdGVkSW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICAvKipcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgbnVtYmVyIHRoYXQgc2V0cyB0aGUgU2VsZWN0ZWRJbmRleCBmcm9tIHRoZSBKb3VybmV5TGlzdCBhcnJheSBpbiBqb3VybmV5QXZhaWxhYmlsaXR5TGlzdE1vZGVsXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYGh0bWxcbiAgICogPG5hcy1qb3VybmV5LWF2YWlsYWJpbGl0eS1saXN0IFsoc2VsZWN0SW5kZXgpXT1cInNlbGVjdEluZGV4XCI+PC9uYXMtam91cm5leS1hdmFpbGFiaWxpdHktbGlzdD5cbiAgICogYGBgXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgc2VsZWN0ZWRJbmRleCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZUluZGV4O1xuICB9XG4gIHNldCBzZWxlY3RlZEluZGV4KGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmFjdGl2ZUluZGV4ID0gaW5kZXg7XG4gICAgdGhpcy5zZWxlY3RlZEluZGV4Q2hhbmdlLmVtaXQoaW5kZXgpO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBbiBFdmVudCB3aGljaCBFbWl0dHMgYm9vbGVhbiB3aGVuIEZsaWdodCBpbmZvIHBvcHVwIGlzIHRvZ2dsZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgZGlzcGxheUpvdXJuZXlEZXRhaWxzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGF0ZVNlcnZpY2U6IERhdGVIZWxwZXIpIHtcbiAgICBzdXBlcignbmFzLWpvdXJuZXktYXZhaWxhYmlsaXR5LWxpc3QnKTtcbiAgfVxuXG4gIGRpc3BsYXlKb3VybmV5RGV0YWlsc0NoYW5nZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc3BsYXlKb3VybmV5RGV0YWlsc0NoYW5nZS5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIGlzQXZhaWxhYmlsaXR5Sm91cm5leVNlbGVjdGVkKGpvdXJuZXlBdmFpbGFiaWxpdHlJbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlSW5kZXggPT09IGpvdXJuZXlBdmFpbGFiaWxpdHlJbmRleDtcbiAgfVxuXG4gIGVtaXRTZWxlY3RlZChmbGlnaHRJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gZmxpZ2h0SW5kZXg7XG5cbiAgICBpZiAoIXRoaXMubW9kZWwgfHwgIXRoaXMubW9kZWwubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZWN0ZWRGbGlnaHQgPSB0aGlzLm1vZGVsW2ZsaWdodEluZGV4XTtcblxuICAgIGlmIChzZWxlY3RlZEZsaWdodCkge1xuICAgICAgdGhpcy5zZWxlY3RlZEpvdXJuZXkuZW1pdChzZWxlY3RlZEZsaWdodCk7XG4gICAgfVxuXG4gIH1cblxuICBzb3J0Q2hhbmdlKG9wdGlvbjogU29ydE9wdGlvbk1vZGVsKTogdm9pZCB7XG4gICAgaWYgKCFvcHRpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgc3dpdGNoIChwYXJzZUludChvcHRpb24udmFsdWUsIDEwKSkge1xuICAgICAgY2FzZSBBdmFpbGFiaWxpdHlTb3J0T3B0aW9uLmZhc3Rlc3Q6XG4gICAgICAgIHRoaXMubW9kZWwgPSB0aGlzLm1vZGVsLnNvcnQoKGEsIGIpID0+IGEuZHVyYXRpb24uZHVyYXRpb25Jbk1pbnV0ZXMgLSBiLmR1cmF0aW9uLmR1cmF0aW9uSW5NaW51dGVzKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgQXZhaWxhYmlsaXR5U29ydE9wdGlvbi5kaXJlY3RPbmx5OlxuICAgICAgICB0aGlzLm1vZGVsID0gdGhpcy5tb2RlbC5zb3J0KChhLCBiKSA9PiBhLmpvdXJuZXlUcmFuc2l0SW5mby50cmFuc2l0Q291bnQgLSBiLmpvdXJuZXlUcmFuc2l0SW5mby50cmFuc2l0Q291bnQpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBBdmFpbGFiaWxpdHlTb3J0T3B0aW9uLmRlcGFydHVyZVRpbWU6XG4gICAgICAgIHRoaXMubW9kZWwgPSB0aGlzLm1vZGVsLnNvcnQoKGEsIGIpID0+XG4gICAgICAgICAgdGhpcy5kYXRlU2VydmljZS5kYXRlKGEuZGVwYXJ0dXJlVGltZSkuZ2V0VGltZSgpIC0gdGhpcy5kYXRlU2VydmljZS5kYXRlKGIuZGVwYXJ0dXJlVGltZSkuZ2V0VGltZSgpKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuXG5cblxuIl19
@@ -1,110 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Norwegian Air Shuttle. All Rights Reserved.
4
- */
5
- import { DatePipe } from '@angular/common';
6
- import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
7
- import { NasComponentBase } from '../../core/base/nas-component.base';
8
- import { DateHelper } from '../../core/services/date/date-helper.service';
9
- import { DeviceHelper } from '../../core/services/device/device-helper.service';
10
- import { DomSanitizer } from '@angular/platform-browser';
11
- /**
12
- * @description
13
- * Norwegian Journey Selection Component | Functional
14
- */
15
- export class JourneySelectionComponent extends NasComponentBase {
16
- constructor(dateService, datePipe, deviceService, sanitizer) {
17
- super('nas-journey-selection');
18
- this.dateService = dateService;
19
- this.datePipe = datePipe;
20
- this.deviceService = deviceService;
21
- this.sanitizer = sanitizer;
22
- this.collapseChange = new EventEmitter();
23
- /**
24
- * @description
25
- * User can input the timezone to localize the date.
26
- * Default is set to UTC and it will by default show the date exactly what is passed to it.
27
- * @example
28
- * ```html
29
- * <nas-journey-availability [timeZone]="'UTC'"></nas-journey-availability>
30
- */
31
- this.timeZone = 'UTC';
32
- /**
33
- * @description
34
- * this event emits when button is clicked or date changes by nevigation icons.
35
- */
36
- this.selectedDateChanged = new EventEmitter();
37
- }
38
- /**
39
- * @description
40
- * A boolean that changes how journey selection component looks/behaves based on journey selected/not-selected.
41
- */
42
- get collapse() {
43
- return this.isCollapsed;
44
- }
45
- set collapse(value) {
46
- if (value || typeof (this.animateDown) !== 'undefined') {
47
- this.animateDown = !value;
48
- }
49
- this.isCollapsed = value;
50
- this.collapseChange.emit(value);
51
- }
52
- ngOnChanges(changes) {
53
- if (this.model) {
54
- setTimeout(() => {
55
- this.setupBackground(this.imageMain, this.model.backgroundImageUrl);
56
- this.setupBackground(this.destinationCode, this.model.thumbnailUrl);
57
- });
58
- }
59
- }
60
- changeFlightDate() {
61
- this.collapse = false;
62
- }
63
- setupBackground(element, url) {
64
- if (!element) {
65
- return;
66
- }
67
- if (url) {
68
- element.nativeElement.style.backgroundImage = `url(${url})`;
69
- }
70
- }
71
- transformDisplayDate(format) {
72
- if (this.model) {
73
- return this.datePipe.transform(this.dateService.date(this.model.date), format, this.timeZone, this.model.locale);
74
- }
75
- }
76
- getDestinationCode() {
77
- if (this.model && this.model.expanded) {
78
- if (this.model.expanded.destination && this.model.expanded.destination.length > 3) {
79
- return this.sanitizer.bypassSecurityTrustHtml(this.model.expanded.destination.substr(0, 3)
80
- + '<br />' + this.model.expanded.destination.substr(3));
81
- }
82
- return this.sanitizer.bypassSecurityTrustHtml(this.model.expanded.destination);
83
- }
84
- }
85
- }
86
- JourneySelectionComponent.decorators = [
87
- { type: Component, args: [{
88
- selector: 'nas-journey-selection',
89
- template: "<div [nasClass]=\"getClass()\">\n <div *ngIf=\"collapse; else expandedSelection\"\n [nasClass]=\"getClass('collapsed', [animateDown === false && 'animate-up', exists(compact) && 'compact'])\" role=\"region\" [attr.aria-label]=\"ariaLabel\">\n\n <div [nasClass]=\"getClass('destination')\">\n <div [nasClass]=\"getClass('destination-image')\" #imageMain>\n <label [nasClass]=\"getClass('destination-image-content')\">\n <ng-container *ngIf=\"!deviceService?.isMobileWidth();\">\n <ng-container *ngTemplateOutlet=\"flightInfo\"></ng-container>\n </ng-container>\n\n <div [nasClass]=\"getClass('destination-image-sm')\" *ngIf=\"deviceService?.isMobileWidth()\">\n <span [nasClass]=\"getClass('mobile-icon')\">\n <nas-icon [icon]=\"model?.icon\" [type]=\"'small'\" [lightCircularBackground]=\"true\"></nas-icon>\n </span>\n <div [nasClass]=\"getClass('airport')\">\n <span>{{model?.collapsed?.origin}}&nbsp; - &nbsp;</span>\n <span [nasClass]=\"getClass('stopover')\" *ngIf=\"model?.collapsed?.stopverAirportCodes\">\n <ng-container *ngFor=\"let stop of model?.collapsed?.stopverAirportCodes\">\n {{stop}}&nbsp;-&nbsp;\n </ng-container>\n </span>\n <span>{{model?.collapsed?.destination}}</span>\n </div>\n </div>\n </label>\n </div>\n </div>\n\n <section [nasClass]=\"getClass('flights')\">\n <div [nasClass]=\"getClass('flights-information')\">\n <div [nasClass]=\"getClass('airport')\">\n <span>{{model?.collapsed?.origin}}&nbsp; - &nbsp;</span>\n\n <span [nasClass]=\"getClass('stopover')\" *ngIf=\"model?.collapsed?.stopverAirportCodes\">\n <ng-container *ngFor=\"let stop of model?.collapsed?.stopverAirportCodes\">\n {{stop}}&nbsp;-&nbsp;\n </ng-container>\n </span>\n\n\n <span>{{model?.collapsed?.destination}}</span>\n </div>\n <div *ngIf=\"model?.collapsed?.operatingCarriers\" [nasClass]=\"getClass('operators')\">\n <label [nasClass]=\"getClass('operators', 'label')\">\n {{model?.collapsed?.operatingCarriers?.label}}&nbsp;\n </label>\n <span [nasClass]=\"getClass('operators', 'text')\">\n {{model?.collapsed?.operatingCarriers?.operators[0]}}\n </span>\n <output *ngIf=\"model?.collapsed?.operatingCarriers?.operators?.length > 1\"\n [nasClass]=\"getClass('operators', 'count')\">\n &nbsp; +{{model?.collapsed?.operatingCarriers?.operators?.length - 1}}\n </output>\n </div>\n </div>\n\n <div [nasClass]=\"getClass('change-flight')\">\n\n <label [nasClass]=\"getClass('change-flight-content')\" *ngIf=\"deviceService?.isMobileWidth()\">\n <ng-container *ngTemplateOutlet=\"flightInfo\"></ng-container>\n </label>\n\n <ng-template #flightInfo>\n <summary [nasClass]=\"getClass('destination-image-caption')\">\n <header [nasClass]=\"getClass('sub-title')\">\n {{model?.collapsed?.title}}\n </header>\n </summary>\n\n <section [nasClass]=\"getClass('journey')\">\n <legend [nasClass]=\"getClass('journey-information')\">\n\n <label>\n {{model?.collapsed?.departureLabel}}:&nbsp;\n </label>\n <time>{{transformDisplayDate(model?.dateFormat)}}</time>\n </legend>\n <div>\n <legend [nasClass]=\"getClass('journey-information')\">\n <label>{{model?.fromLabel}}:&nbsp;</label>\n <span>{{model?.collapsed?.originDisplayName}}&nbsp;({{model?.collapsed?.origin}})</span>\n </legend>\n <legend [nasClass]=\"getClass('journey-information')\">\n <label>{{model?.collapsed?.durationLabel}}:&nbsp;</label>\n <time>{{model?.collapsed?.durationTimeInfo}},&nbsp;{{model?.collapsed?.transitionInfo}} </time>\n </legend>\n </div>\n </section>\n </ng-template>\n <nas-button compact secondary (click)=\"changeFlightDate()\">{{model?.collapsed?.changeFlightLabel}}</nas-button>\n </div>\n </section>\n </div>\n\n <ng-template #expandedSelection>\n <div [nasClass]=\"getClass('expanded', [animateDown && 'animate-down', exists(compact) && 'compact'])\" role=\"region\" [attr.aria-label]=\"ariaLabel\">\n <figure [nasClass]=\"getClass('destination-code')\" #destinationCode>\n <figcaption [nasClass]=\"getClass('destination-code-value', model?.expanded?.destination?.length > 3 && 'wrap-text')\" [innerHTML]=\"getDestinationCode()\">\n </figcaption>\n </figure>\n <div [nasClass]=\"getClass('selection')\">\n <label [nasClass]=\"getClass('heading')\">\n\n <ng-container *ngIf=\"deviceService.isMobileWidth(); else desktopIcon\">\n <ng-container *ngTemplateOutlet=\"desktopIcon\"></ng-container>\n </ng-container>\n\n <header [nasClass]=\"getClass('heading-text')\">\n {{model?.expanded?.title}}\n </header>\n <span [nasClass]=\"getClass('heading-join')\">&nbsp;-&nbsp;</span>\n <time [nasClass]=\"getClass('heading-time')\">\n {{transformDisplayDate(model?.expanded?.dateFormat)}}\n </time>\n\n <ng-template #desktopIcon>\n <span [nasClass]=\"getClass('heading-icon')\">\n <nas-icon [icon]=\"model?.icon\" [type]=\"'small'\"></nas-icon>\n </span>\n </ng-template>\n\n </label>\n <summary [nasClass]=\"getClass('details')\">\n <div>\n <label [nasClass]=\"getClass('details-label')\">{{model?.fromLabel}}:</label>\n <span [nasClass]=\"getClass('details-value')\">{{model?.expanded?.originDisplayName}} ({{model?.expanded?.origin}})</span>\n <span> | </span>\n <label [nasClass]=\"getClass('details-label')\">{{model?.expanded?.toLabel}}:</label>\n <span [nasClass]=\"getClass('details-value')\">{{model?.expanded?.destinationDisplayName}} ({{model?.expanded?.destination}})</span>\n </div>\n </summary>\n </div>\n </div>\n </ng-template>\n</div>\n",
90
- styles: ["@-webkit-keyframes fade-in{0%{opacity:0}}@keyframes fade-in{0%{opacity:0}}@-webkit-keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@-webkit-keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@-webkit-keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@-webkit-keyframes fade-out{to{opacity:0}}@keyframes fade-out{to{opacity:0}}@-webkit-keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@-webkit-keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@-webkit-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)}}@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-journey-selection__collapsed{display:flex;flex-direction:column;max-width:820px;margin:16px auto;background-color:#fff;perspective:1000px;box-shadow:0 5px 20px #0000001a}.nas-journey-selection__collapsed--animate-up{-webkit-animation:collapse-animation .4s ease-out both;animation:collapse-animation .4s ease-out both}@media (min-width: 640px){.nas-journey-selection__collapsed{flex-direction:row}}.nas-journey-selection__collapsed--compact{margin:0 auto}.nas-journey-selection__destination{flex:1 1 50%;display:flex}.nas-journey-selection__destination-enter,.nas-journey-selection__destination-leave-active{transform-origin:center top;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden}.nas-journey-selection__destination-enter{-webkit-animation:flip-in .55s ease both;animation:flip-in .55s ease both}.nas-journey-selection__destination-leave-active{-webkit-animation:flip-out .2s ease-out both;animation:flip-out .2s ease-out both}.nas-journey-selection__destination--imagesize{height:100%;display:block}@media (min-width: 640px){.nas-journey-selection__destination--imagesize{height:300px;margin-bottom:0}}.nas-journey-selection__destination-image{position:relative;flex-shrink:0;width:100%;background-size:cover;background-position:center;background-color:#003251}.nas-journey-selection__destination-image-content{padding:24px;margin-bottom:0;display:flex;flex-direction:column;justify-content:center;height:100%}.nas-journey-selection__destination-image-content:after{content:\"\";position:absolute;bottom:0;left:0;right:0;height:100%;max-height:100%;background:linear-gradient(180deg,rgba(0,50,81,0) -12.4%,#003251 95.51%)}.nas-journey-selection__destination-image-caption{display:flex;margin-bottom:6px}@media (min-width: 640px){.nas-journey-selection__destination-image-caption{margin-bottom:0}}.nas-journey-selection__destination-image-sm{display:flex;z-index:1;flex-direction:column;width:100%;align-items:center;justify-content:center}.nas-journey-selection__destination-image-sm .nas-journey-selection__mobile-icon{height:40px;margin-top:15px}.nas-journey-selection__destination-image-sm .nas-journey-selection__airport{margin-top:12px;font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold;font-size:24px;line-height:30px;color:#fff}.nas-journey-selection .nas-journey-selection__sub-title{z-index:1;text-align:left;font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:600;font-size:24px;line-height:30px;align-self:center;margin-bottom:6px;width:100%}@media (min-width: 640px){.nas-journey-selection .nas-journey-selection__sub-title{color:#fff}}.nas-journey-selection__journey{z-index:1}.nas-journey-selection__journey-information{margin:0;display:flex}.nas-journey-selection__journey-information time,.nas-journey-selection__journey-information span{z-index:1;font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:600;font-size:14px;line-height:20px}@media (min-width: 640px){.nas-journey-selection__journey-information time,.nas-journey-selection__journey-information span{color:#fff}}.nas-journey-selection__journey-information label{z-index:1;font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:300;font-size:14px;line-height:20px;color:#fff;display:inline-block;margin-bottom:0}.nas-journey-selection__flights{padding:6px;flex:1 1 50%;display:flex;flex-direction:column;justify-content:space-between;overflow-x:auto;background-color:#fff}.nas-journey-selection__flights-enter,.nas-journey-selection__flights-leave-active{transform-origin:center top;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden}.nas-journey-selection__flights-enter{-webkit-animation:flip-in .55s ease both;animation:flip-in .55s ease both}.nas-journey-selection__flights-leave-active{-webkit-animation:flip-out .2s ease-out both;animation:flip-out .2s ease-out both}.nas-journey-selection__flights .nas-journey-selection__airport{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold;font-size:24px;line-height:30px;line-height:24px;margin-bottom:0}.nas-journey-selection__flights .nas-journey-selection__airport .nas-journey-selection__stopover{position:relative;display:inline-block;color:#626363}.nas-journey-selection__flights-information{justify-content:space-between;padding-bottom:12px;border-bottom:2px solid #c3c3c3;display:flex;flex-direction:column;align-items:flex-start;display:none}.nas-journey-selection__flights-information .nas-journey-selection__operators--label,.nas-journey-selection__flights-information .nas-journey-selection__operators--text,.nas-journey-selection__flights-information .nas-journey-selection__operators--count{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:600;font-size:14px;line-height:20px;color:#003251;display:inline}@media (min-width: 640px){.nas-journey-selection__flights-information{display:flex}}@media (min-width: 640px){.nas-journey-selection__flights{padding:24px}}.nas-journey-selection__change-flight{padding:12px}@media (min-width: 640px){.nas-journey-selection__change-flight{padding:0;margin-top:12px}}.nas-journey-selection__change-flight-content{margin-bottom:16px}@media (min-width: 640px){.nas-journey-selection__change-flight-content{margin-bottom:0}}.nas-journey-selection__change-flight-content label{color:#003251;font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:normal;font-size:14px;line-height:20px;display:inline-block;margin-bottom:0}.nas-journey-selection__expanded{max-width:820px;perspective:1000px;background-color:transparent;margin:16px auto;display:flex;align-items:center}.nas-journey-selection__expanded--animate-down{-webkit-animation:expand-animation .4s ease-out both;animation:expand-animation .4s ease-out both}.nas-journey-selection__expanded .nas-journey-selection__destination-code{width:60px;height:60px;border-radius:50%;position:relative;margin-right:24px;background-size:cover;vertical-align:top;display:flex;align-items:center;justify-content:center;background-color:#003251}@media (min-width: 640px){.nas-journey-selection__expanded .nas-journey-selection__destination-code{vertical-align:baseline;vertical-align:initial}}.nas-journey-selection__expanded .nas-journey-selection__destination-code-value{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:600;font-size:22px;line-height:28px;color:#fff;z-index:1}.nas-journey-selection__expanded .nas-journey-selection__destination-code-value--wrap-text{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:600;font-size:16px;line-height:26px;line-height:16px}.nas-journey-selection__expanded .nas-journey-selection__destination-code:after{content:\"\";position:absolute;bottom:0;left:0;right:0;border-radius:50%;height:100%;max-height:100%;background:linear-gradient(180deg,rgba(0,50,81,0) 50%,#003251 99%)}.nas-journey-selection__expanded .nas-journey-selection__selection{width:calc(100% - 85px);display:inline-block}.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__heading{display:inline-block;font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold;font-size:22px;line-height:28px;vertical-align:center;padding-bottom:6px;margin-bottom:0;width:100%}.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__heading-text{display:inline}.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__heading-join{display:none}@media (min-width: 640px){.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__heading-join{display:inline-block}}.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__heading-time{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:normal;font-size:22px;line-height:28px;display:block;color:#626363}@media (min-width: 640px){.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__heading-time{display:inline-block;color:#003251}}.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__heading-icon{float:none;float:initial;margin-right:11px;vertical-align:middle;position:relative}@media (min-width: 640px){.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__heading-icon{margin-right:initial;float:right}}.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__details{padding-top:6px;border-top:2px solid #e3e3e3;display:none}.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__details-label{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:bold;font-size:14px;line-height:20px;display:inline-block;margin-right:6px;color:#626363}.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__details-value{font-family:\"Apercu\",\"Helvetica Neue\",Helvetica,Arial,sans-serif;font-weight:normal;font-size:14px;line-height:20px;display:inline-block;color:#626363}@media (min-width: 640px){.nas-journey-selection__expanded .nas-journey-selection__selection .nas-journey-selection__details{display:block}}.nas-journey-selection__expanded--compact{margin:0 auto}::ng-deep .nas-journey-selection__destination-image-caption nas-icon{z-index:10;align-self:center;margin-right:20px;display:none}@media (min-width: 640px){::ng-deep .nas-journey-selection__destination-image-caption nas-icon{display:block}}::ng-deep .nas-journey-selection .nas-icon-small--light-background:after{top:-14.5px;left:-15px;width:55px;height:55px}::ng-deep .nas-journey-selection button.nas-button--compact{margin-bottom:0}@-webkit-keyframes journey-selection-animation{0%{opacity:0}}@keyframes journey-selection-animation{0%{opacity:0}}@-webkit-keyframes expand-animation{0%{transform:translateY(-20px)}to{transform:translate(0)}}@keyframes expand-animation{0%{transform:translateY(-20px)}to{transform:translate(0)}}@-webkit-keyframes collapse-animation{0%{transform:translateY(20px)}to{transform:translate(0)}}@keyframes collapse-animation{0%{transform:translateY(20px)}to{transform:translate(0)}}\n"]
91
- },] }
92
- ];
93
- JourneySelectionComponent.ctorParameters = () => [
94
- { type: DateHelper },
95
- { type: DatePipe },
96
- { type: DeviceHelper },
97
- { type: DomSanitizer }
98
- ];
99
- JourneySelectionComponent.propDecorators = {
100
- imageMain: [{ type: ViewChild, args: ['imageMain',] }],
101
- destinationCode: [{ type: ViewChild, args: ['destinationCode',] }],
102
- model: [{ type: Input }],
103
- collapseChange: [{ type: Output }],
104
- collapse: [{ type: Input }],
105
- compact: [{ type: Input }],
106
- ariaLabel: [{ type: Input }],
107
- timeZone: [{ type: Input }],
108
- selectedDateChanged: [{ type: Output }]
109
- };
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1zZWxlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9qb3VybmV5LXNlbGVjdGlvbi9qb3VybmV5LXNlbGVjdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBRU4sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXRFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDaEYsT0FBTyxFQUFFLFlBQVksRUFBWSxNQUFNLDJCQUEyQixDQUFDO0FBRW5FOzs7R0FHRztBQU1ILE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxnQkFBZ0I7SUErRDdELFlBQ1UsV0FBdUIsRUFDdkIsUUFBa0IsRUFDbkIsYUFBMkIsRUFDMUIsU0FBdUI7UUFDL0IsS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFKdkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNuQixrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUMxQixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBdER2QixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFpQ3ZEOzs7Ozs7O1dBT0c7UUFDTSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRTFCOzs7U0FHQztRQUNTLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7SUFTNUQsQ0FBQztJQXJERDs7O09BR0c7SUFDSCxJQUNJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLEtBQWM7UUFDekIsSUFBSSxLQUFLLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxXQUFXLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLEtBQUssQ0FBQztTQUMzQjtRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUF5Q0QsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNkLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztnQkFDcEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDdEUsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDO0lBRUQsZUFBZSxDQUFDLE9BQW1CLEVBQUUsR0FBVztRQUM5QyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osT0FBTztTQUNSO1FBQ0QsSUFBSSxHQUFHLEVBQUU7WUFDUCxPQUFPLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsT0FBTyxHQUFHLEdBQUcsQ0FBQztTQUM3RDtJQUNILENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxNQUFjO1FBQ2pDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNkLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFDbkUsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUM3QztJQUNILENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ3JDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNqRixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO3NCQUN0RixRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzNEO1lBQ0QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ2hGO0lBQ0gsQ0FBQzs7O1lBakhGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2dCQUNqQyxzeE1BQWlEOzthQUVsRDs7O1lBWlEsVUFBVTtZQWRWLFFBQVE7WUFlUixZQUFZO1lBQ1osWUFBWTs7O3dCQWVsQixTQUFTLFNBQUMsV0FBVzs4QkFDckIsU0FBUyxTQUFDLGlCQUFpQjtvQkFNM0IsS0FBSzs2QkFFTCxNQUFNO3VCQU9OLEtBQUs7c0JBZ0JMLEtBQUs7d0JBUUwsS0FBSzt1QkFVTCxLQUFLO2tDQU1MLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgTm9yd2VnaWFuIEFpciBTaHV0dGxlLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICovXG5cbmltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEpvdXJuZXlTZWxlY3Rpb25Nb2RlbCB9IGZyb20gJy4vbW9kZWxzL2pvdXJuZXktc2VsZWN0aW9uLm1vZGVsJztcbmltcG9ydCB7IE5hc0NvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UvbmFzLWNvbXBvbmVudC5iYXNlJztcbmltcG9ydCB7IFV0Y0RhdGUgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscy91dGMtZGF0ZS5tb2RlbCc7XG5pbXBvcnQgeyBEYXRlSGVscGVyIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9kYXRlL2RhdGUtaGVscGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGV2aWNlSGVscGVyIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9kZXZpY2UvZGV2aWNlLWhlbHBlci5zZXJ2aWNlJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIE5vcndlZ2lhbiBKb3VybmV5IFNlbGVjdGlvbiBDb21wb25lbnQgfCBGdW5jdGlvbmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25hcy1qb3VybmV5LXNlbGVjdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9qb3VybmV5LXNlbGVjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2pvdXJuZXktc2VsZWN0aW9uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSm91cm5leVNlbGVjdGlvbkNvbXBvbmVudCBleHRlbmRzIE5hc0NvbXBvbmVudEJhc2UgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuXG4gIGFuaW1hdGVEb3duOiBib29sZWFuO1xuICBpc0NvbGxhcHNlZDogYm9vbGVhbjtcbiAgQFZpZXdDaGlsZCgnaW1hZ2VNYWluJykgaW1hZ2VNYWluOiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKCdkZXN0aW5hdGlvbkNvZGUnKSBkZXN0aW5hdGlvbkNvZGU6IEVsZW1lbnRSZWY7XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBJbnB1dCBkYXRhIHJlcXVpcmVkIHRvIGJ1aWxkIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBASW5wdXQoKSBtb2RlbDogSm91cm5leVNlbGVjdGlvbk1vZGVsO1xuXG4gIEBPdXRwdXQoKSBjb2xsYXBzZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBib29sZWFuIHRoYXQgY2hhbmdlcyBob3cgam91cm5leSBzZWxlY3Rpb24gY29tcG9uZW50IGxvb2tzL2JlaGF2ZXMgYmFzZWQgb24gam91cm5leSBzZWxlY3RlZC9ub3Qtc2VsZWN0ZWQuXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgY29sbGFwc2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNDb2xsYXBzZWQ7XG4gIH1cbiAgc2V0IGNvbGxhcHNlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKHZhbHVlIHx8IHR5cGVvZiAodGhpcy5hbmltYXRlRG93bikgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aGlzLmFuaW1hdGVEb3duID0gIXZhbHVlO1xuICAgIH1cbiAgICB0aGlzLmlzQ29sbGFwc2VkID0gdmFsdWU7XG4gICAgdGhpcy5jb2xsYXBzZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogSWYgZXhpc3RzLCBpdCByZW1vdmVzIHRoZSBtYXJpbiBhY2Nyb3NzLlxuICAgKi9cbiAgQElucHV0KCkgY29tcGFjdDogYm9vbGVhbjtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEFyaWEgbGFiZWwgZm9yIHRoZSBjb21wb25lbnQuXG4gICAqIEZvciBleGFtcGxlLCBpdCBpcyBuZWVkZWQgdG8gZGlzdGluZ3Vpc2ggT3V0Ym91bmQgam91cm5leSBzZWxlY3Rpb24gZnJvbSBpbmJvdW5kIGpvdXJuZXkgc2VsZWN0aW9uXG4gICAqIHdoZW4gdGhpcyBjb21wb25lbnQgaXMgdXNlZCB0d2ljZSBpbiB0aGUgcGFnZS5cbiAgICovXG4gIEBJbnB1dCgpIGFyaWFMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogVXNlciBjYW4gaW5wdXQgdGhlIHRpbWV6b25lIHRvIGxvY2FsaXplIHRoZSBkYXRlLlxuICAgKiBEZWZhdWx0IGlzIHNldCB0byBVVEMgYW5kIGl0IHdpbGwgYnkgZGVmYXVsdCBzaG93IHRoZSBkYXRlIGV4YWN0bHkgd2hhdCBpcyBwYXNzZWQgdG8gaXQuXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYGh0bWxcbiAgICogPG5hcy1qb3VybmV5LWF2YWlsYWJpbGl0eSBbdGltZVpvbmVdPVwiJ1VUQydcIj48L25hcy1qb3VybmV5LWF2YWlsYWJpbGl0eT5cbiAgICovXG4gIEBJbnB1dCgpIHRpbWVab25lID0gJ1VUQyc7XG5cbiAgLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIHRoaXMgZXZlbnQgZW1pdHMgd2hlbiBidXR0b24gaXMgY2xpY2tlZCBvciBkYXRlIGNoYW5nZXMgYnkgbmV2aWdhdGlvbiBpY29ucy5cbiAqL1xuICBAT3V0cHV0KCkgc2VsZWN0ZWREYXRlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8VXRjRGF0ZT4oKTtcblxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZGF0ZVNlcnZpY2U6IERhdGVIZWxwZXIsXG4gICAgcHJpdmF0ZSBkYXRlUGlwZTogRGF0ZVBpcGUsXG4gICAgcHVibGljIGRldmljZVNlcnZpY2U6IERldmljZUhlbHBlcixcbiAgICBwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7XG4gICAgc3VwZXIoJ25hcy1qb3VybmV5LXNlbGVjdGlvbicpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmICh0aGlzLm1vZGVsKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5zZXR1cEJhY2tncm91bmQodGhpcy5pbWFnZU1haW4sIHRoaXMubW9kZWwuYmFja2dyb3VuZEltYWdlVXJsKTtcbiAgICAgICAgdGhpcy5zZXR1cEJhY2tncm91bmQodGhpcy5kZXN0aW5hdGlvbkNvZGUsIHRoaXMubW9kZWwudGh1bWJuYWlsVXJsKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGNoYW5nZUZsaWdodERhdGUoKTogdm9pZCB7XG4gICAgdGhpcy5jb2xsYXBzZSA9IGZhbHNlO1xuICB9XG5cbiAgc2V0dXBCYWNrZ3JvdW5kKGVsZW1lbnQ6IEVsZW1lbnRSZWYsIHVybDogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCFlbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh1cmwpIHtcbiAgICAgIGVsZW1lbnQubmF0aXZlRWxlbWVudC5zdHlsZS5iYWNrZ3JvdW5kSW1hZ2UgPSBgdXJsKCR7dXJsfSlgO1xuICAgIH1cbiAgfVxuXG4gIHRyYW5zZm9ybURpc3BsYXlEYXRlKGZvcm1hdDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5tb2RlbCkge1xuICAgICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHRoaXMuZGF0ZVNlcnZpY2UuZGF0ZSh0aGlzLm1vZGVsLmRhdGUpLFxuICAgICAgICBmb3JtYXQsIHRoaXMudGltZVpvbmUsIHRoaXMubW9kZWwubG9jYWxlKTtcbiAgICB9XG4gIH1cblxuICBnZXREZXN0aW5hdGlvbkNvZGUoKTogU2FmZUh0bWwge1xuICAgIGlmICh0aGlzLm1vZGVsICYmIHRoaXMubW9kZWwuZXhwYW5kZWQpIHtcbiAgICAgIGlmICh0aGlzLm1vZGVsLmV4cGFuZGVkLmRlc3RpbmF0aW9uICYmIHRoaXMubW9kZWwuZXhwYW5kZWQuZGVzdGluYXRpb24ubGVuZ3RoID4gMykge1xuICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwodGhpcy5tb2RlbC5leHBhbmRlZC5kZXN0aW5hdGlvbi5zdWJzdHIoMCwgMylcbiAgICAgICAgICArICc8YnIgLz4nICsgdGhpcy5tb2RlbC5leHBhbmRlZC5kZXN0aW5hdGlvbi5zdWJzdHIoMykpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKHRoaXMubW9kZWwuZXhwYW5kZWQuZGVzdGluYXRpb24pO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=