@ethlete/cdk 3.9.1 → 3.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/esm2022/lib/components/accordion/components/accordion/accordion.component.mjs +3 -3
  3. package/esm2022/lib/components/accordion/components/accordion-group/accordion-group.component.mjs +3 -3
  4. package/esm2022/lib/components/accordion/partials/accordion-hint/accordion-hint.directive.mjs +3 -3
  5. package/esm2022/lib/components/accordion/partials/accordion-hint-wrapper/accordion-hint-wrapper.directive.mjs +3 -3
  6. package/esm2022/lib/components/accordion/partials/accordion-label/accordion-label.directive.mjs +3 -3
  7. package/esm2022/lib/components/accordion/partials/accordion-label-wrapper/accordion-label-wrapper.directive.mjs +3 -3
  8. package/esm2022/lib/components/bracket/components/bracket/bracket.component.mjs +3 -3
  9. package/esm2022/lib/components/bracket/directives/bracket-match/bracket-match.directive.mjs +3 -3
  10. package/esm2022/lib/components/bracket/directives/bracket-round/bracket-round.directive.mjs +3 -3
  11. package/esm2022/lib/components/bracket/partials/bracket-match/bracket-match.component.mjs +3 -3
  12. package/esm2022/lib/components/bracket/partials/bracket-round-header/bracket-round-header.component.mjs +3 -3
  13. package/esm2022/lib/components/button/components/button/button.component.mjs +3 -3
  14. package/esm2022/lib/components/button/components/query-button/query-button.component.mjs +3 -3
  15. package/esm2022/lib/components/button/directives/button/button.directive.mjs +3 -3
  16. package/esm2022/lib/components/button/directives/query-button/query-button.directive.mjs +3 -3
  17. package/esm2022/lib/components/filter-overlay/components/filter-overlay-page-outlet/filter-overlay-page-outlet.component.mjs +22 -0
  18. package/esm2022/lib/components/filter-overlay/components/filter-overlay-page-outlet/public-api.mjs +2 -0
  19. package/esm2022/lib/components/filter-overlay/components/index.mjs +2 -0
  20. package/esm2022/lib/components/filter-overlay/components/public-api.mjs +2 -0
  21. package/esm2022/lib/components/filter-overlay/directives/filter-overlay-link/filter-overlay-link.directive.mjs +26 -0
  22. package/esm2022/lib/components/filter-overlay/directives/filter-overlay-link/public-api.mjs +2 -0
  23. package/esm2022/lib/components/filter-overlay/directives/filter-overlay-reset/filter-overlay-reset.directive.mjs +26 -0
  24. package/esm2022/lib/components/filter-overlay/directives/filter-overlay-reset/public-api.mjs +2 -0
  25. package/esm2022/lib/components/filter-overlay/directives/filter-overlay-submit/filter-overlay-submit.directive.mjs +26 -0
  26. package/esm2022/lib/components/filter-overlay/directives/filter-overlay-submit/public-api.mjs +2 -0
  27. package/esm2022/lib/components/filter-overlay/directives/index.mjs +2 -0
  28. package/esm2022/lib/components/filter-overlay/directives/public-api.mjs +4 -0
  29. package/esm2022/lib/components/filter-overlay/filter-overlay.imports.mjs +9 -0
  30. package/esm2022/lib/components/filter-overlay/public-api.mjs +4 -0
  31. package/esm2022/lib/components/forms/components/checkbox/components/checkbox/checkbox.component.mjs +3 -3
  32. package/esm2022/lib/components/forms/components/checkbox/components/checkbox-field/checkbox-field.component.mjs +3 -3
  33. package/esm2022/lib/components/forms/components/checkbox/components/checkbox-group/checkbox-group.component.mjs +3 -3
  34. package/esm2022/lib/components/forms/components/checkbox/directives/checkbox/checkbox.directive.mjs +3 -3
  35. package/esm2022/lib/components/forms/components/checkbox/directives/checkbox-field/checkbox-field.directive.mjs +3 -3
  36. package/esm2022/lib/components/forms/components/checkbox/directives/checkbox-group/checkbox-group.directive.mjs +3 -3
  37. package/esm2022/lib/components/forms/components/checkbox/directives/checkbox-group-control/checkbox-group-control.directive.mjs +3 -3
  38. package/esm2022/lib/components/forms/components/error/components/error/error.component.mjs +3 -3
  39. package/esm2022/lib/components/forms/components/input/components/date-input/date-input.component.mjs +3 -3
  40. package/esm2022/lib/components/forms/components/input/components/email-input/email-input.component.mjs +3 -3
  41. package/esm2022/lib/components/forms/components/input/components/input-field/input-field.component.mjs +3 -3
  42. package/esm2022/lib/components/forms/components/input/components/number-input/number-input.component.mjs +3 -3
  43. package/esm2022/lib/components/forms/components/input/components/password-input/password-input.component.mjs +3 -3
  44. package/esm2022/lib/components/forms/components/input/components/search-input/search-input.component.mjs +3 -3
  45. package/esm2022/lib/components/forms/components/input/components/text-input/text-input.component.mjs +3 -3
  46. package/esm2022/lib/components/forms/components/input/components/textarea-input/textarea-input.component.mjs +3 -3
  47. package/esm2022/lib/components/forms/components/input/directives/autosize-textarea/autosize-textarea.directive.mjs +3 -3
  48. package/esm2022/lib/components/forms/components/input/directives/date-input/date-input.directive.mjs +3 -3
  49. package/esm2022/lib/components/forms/components/input/directives/email-input/email-input.directive.mjs +3 -3
  50. package/esm2022/lib/components/forms/components/input/directives/number-input/number-input.directive.mjs +3 -3
  51. package/esm2022/lib/components/forms/components/input/directives/password-input/password-input.directive.mjs +3 -3
  52. package/esm2022/lib/components/forms/components/input/directives/search-input/search-input.directive.mjs +3 -3
  53. package/esm2022/lib/components/forms/components/input/directives/text-input/text-input.directive.mjs +3 -3
  54. package/esm2022/lib/components/forms/components/input/directives/textarea-input/textarea-input.directive.mjs +3 -3
  55. package/esm2022/lib/components/forms/components/input/partials/password-input-toggle/password-input-toggle.component.mjs +3 -3
  56. package/esm2022/lib/components/forms/components/input/partials/search-input-clear/search-input-clear.component.mjs +3 -3
  57. package/esm2022/lib/components/forms/components/label/components/label/label.component.mjs +3 -3
  58. package/esm2022/lib/components/forms/components/label/directives/label-suffix/label-suffix.directive.mjs +3 -3
  59. package/esm2022/lib/components/forms/components/radio/components/radio/radio.component.mjs +3 -3
  60. package/esm2022/lib/components/forms/components/radio/components/radio-field/radio-field.component.mjs +3 -3
  61. package/esm2022/lib/components/forms/components/radio/components/radio-group/radio-group.component.mjs +3 -3
  62. package/esm2022/lib/components/forms/components/radio/directives/radio/radio.directive.mjs +3 -3
  63. package/esm2022/lib/components/forms/components/radio/directives/radio-field/radio-field.directive.mjs +3 -3
  64. package/esm2022/lib/components/forms/components/radio/directives/radio-group/radio-group.directive.mjs +3 -3
  65. package/esm2022/lib/components/forms/components/segmented-button/components/segmented-button/segmented-button.component.mjs +3 -3
  66. package/esm2022/lib/components/forms/components/segmented-button/components/segmented-button-field/segmented-button-field.component.mjs +3 -3
  67. package/esm2022/lib/components/forms/components/segmented-button/components/segmented-button-group/segmented-button-group.component.mjs +3 -3
  68. package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button/segmented-button.directive.mjs +3 -3
  69. package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button-field/segmented-button-field.directive.mjs +3 -3
  70. package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button-group/segmented-button-group.directive.mjs +3 -3
  71. package/esm2022/lib/components/forms/components/select/components/combobox/components/combobox/combobox.component.mjs +6 -4
  72. package/esm2022/lib/components/forms/components/select/components/combobox/constants/combobox.constants.mjs +2 -2
  73. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox/combobox.directive.mjs +48 -6
  74. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-empty-template/combobox-body-empty-template.directive.mjs +3 -3
  75. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-error-template/combobox-body-error-template.directive.mjs +3 -3
  76. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-loading-template/combobox-body-loading-template.directive.mjs +3 -3
  77. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-more-items-hint-template/combobox-body-more-items-hint-template.directive.mjs +30 -0
  78. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-more-items-hint-template/index.mjs +2 -0
  79. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-more-items-hint-template/public-api.mjs +2 -0
  80. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-option-template/combobox-option-template.directive.mjs +3 -3
  81. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-selected-option-template/combobox-selected-option-template.directive.mjs +3 -3
  82. package/esm2022/lib/components/forms/components/select/components/combobox/directives/public-api.mjs +2 -1
  83. package/esm2022/lib/components/forms/components/select/components/combobox/partials/combobox-body/combobox-body.component.mjs +6 -6
  84. package/esm2022/lib/components/forms/components/select/components/combobox/partials/combobox-option/combobox-option.component.mjs +3 -3
  85. package/esm2022/lib/components/forms/components/select/components/combobox/types/combobox.types.mjs +1 -1
  86. package/esm2022/lib/components/forms/components/select/components/native-select/components/native-select/native-select.component.mjs +3 -3
  87. package/esm2022/lib/components/forms/components/select/components/native-select/directives/native-select-input/native-select-input.directive.mjs +3 -3
  88. package/esm2022/lib/components/forms/components/select/components/native-select/directives/native-select-option/native-select-option.directive.mjs +3 -3
  89. package/esm2022/lib/components/forms/components/select/components/native-select/partials/native-select-option/native-select-option.component.mjs +3 -3
  90. package/esm2022/lib/components/forms/components/select/components/select/components/select/select.component.mjs +3 -3
  91. package/esm2022/lib/components/forms/components/select/components/select/directives/select/select.directive.mjs +3 -3
  92. package/esm2022/lib/components/forms/components/select/components/select/directives/select-body/select-body.directive.mjs +3 -3
  93. package/esm2022/lib/components/forms/components/select/components/select/directives/select-option/select-option.directive.mjs +3 -3
  94. package/esm2022/lib/components/forms/components/select/components/select/partials/select-body/select-body.component.mjs +3 -3
  95. package/esm2022/lib/components/forms/components/select/components/select/partials/select-option/select-option.component.mjs +3 -3
  96. package/esm2022/lib/components/forms/components/select/components/select-field/select-field.component.mjs +3 -3
  97. package/esm2022/lib/components/forms/components/select/directives/select-field/select-field.directive.mjs +3 -3
  98. package/esm2022/lib/components/forms/components/selection-list/components/selection-list-field/selection-list-field.component.mjs +3 -3
  99. package/esm2022/lib/components/forms/components/selection-list/components/selection-list-option/selection-list-option.component.mjs +3 -3
  100. package/esm2022/lib/components/forms/components/selection-list/directives/selection-list-field/selection-list-field.directive.mjs +3 -3
  101. package/esm2022/lib/components/forms/components/selection-list/directives/selection-list-option/selection-list-option.directive.mjs +3 -3
  102. package/esm2022/lib/components/forms/components/slide-toggle/components/slide-toggle/slide-toggle.component.mjs +3 -3
  103. package/esm2022/lib/components/forms/components/slide-toggle/components/slide-toggle-field/slide-toggle-field.component.mjs +3 -3
  104. package/esm2022/lib/components/forms/components/slide-toggle/directives/slide-toggle/slide-toggle.directive.mjs +3 -3
  105. package/esm2022/lib/components/forms/components/slider/components/slider/slider.component.mjs +3 -3
  106. package/esm2022/lib/components/forms/components/slider/components/slider-field/slider-field.component.mjs +3 -3
  107. package/esm2022/lib/components/forms/directives/dynamic-form-field/dynamic-form-field.directive.mjs +3 -3
  108. package/esm2022/lib/components/forms/directives/dynamic-form-group/dynamic-form-group.directive.mjs +3 -3
  109. package/esm2022/lib/components/forms/directives/expose-input-vars/expose-input-vars.directive.mjs +3 -3
  110. package/esm2022/lib/components/forms/directives/if-input-empty/if-input-empty.directive.mjs +3 -3
  111. package/esm2022/lib/components/forms/directives/if-input-filled/if-input-filled.directive.mjs +3 -3
  112. package/esm2022/lib/components/forms/directives/input/input.directive.mjs +3 -3
  113. package/esm2022/lib/components/forms/directives/input-prefix/input-prefix.directive.mjs +3 -3
  114. package/esm2022/lib/components/forms/directives/input-suffix/input-suffix.directive.mjs +3 -3
  115. package/esm2022/lib/components/forms/directives/native-input-ref/native-input-ref.directive.mjs +3 -3
  116. package/esm2022/lib/components/forms/directives/static-form-field/static-form-field.directive.mjs +3 -3
  117. package/esm2022/lib/components/forms/directives/static-form-group/static-form-group.directive.mjs +3 -3
  118. package/esm2022/lib/components/forms/directives/writeable-input/writeable-input.directive.mjs +3 -3
  119. package/esm2022/lib/components/forms/services/default-validator-errors.service.mjs +3 -3
  120. package/esm2022/lib/components/forms/services/form-field-state.service.mjs +3 -3
  121. package/esm2022/lib/components/forms/services/form-group-state.service.mjs +3 -3
  122. package/esm2022/lib/components/forms/services/input-state.service.mjs +3 -3
  123. package/esm2022/lib/components/forms/utils/decorated-form-field.base.mjs +3 -3
  124. package/esm2022/lib/components/forms/utils/decorated-input.base.mjs +3 -3
  125. package/esm2022/lib/components/forms/utils/input.base.mjs +3 -3
  126. package/esm2022/lib/components/icons/chevron-icon/chevron-icon.component.mjs +3 -3
  127. package/esm2022/lib/components/masonry/components/masonry/masonry.component.mjs +3 -3
  128. package/esm2022/lib/components/masonry/partials/masonry-item/masonry-item.component.mjs +3 -3
  129. package/esm2022/lib/components/overlay/components/bottom-sheet/components/bottom-sheet-container/bottom-sheet-container.component.mjs +3 -3
  130. package/esm2022/lib/components/overlay/components/bottom-sheet/partials/bottom-sheet-container-base/bottom-sheet-container-base.component.mjs +3 -3
  131. package/esm2022/lib/components/overlay/components/bottom-sheet/partials/bottom-sheet-drag-handle/bottom-sheet-drag-handle.component.mjs +3 -3
  132. package/esm2022/lib/components/overlay/components/bottom-sheet/partials/bottom-sheet-title/bottom-sheet-title.directive.mjs +3 -3
  133. package/esm2022/lib/components/overlay/components/bottom-sheet/services/bottom-sheet-base.service.mjs +3 -3
  134. package/esm2022/lib/components/overlay/components/bottom-sheet/services/bottom-sheet-swipe-handler.service.mjs +12 -6
  135. package/esm2022/lib/components/overlay/components/bottom-sheet/services/bottom-sheet.service.mjs +7 -4
  136. package/esm2022/lib/components/overlay/components/dialog/components/dialog-container/dialog-container.component.mjs +3 -3
  137. package/esm2022/lib/components/overlay/components/dialog/partials/dialog-close/dialog-close.directive.mjs +3 -3
  138. package/esm2022/lib/components/overlay/components/dialog/partials/dialog-container-base/dialog-container-base.component.mjs +3 -3
  139. package/esm2022/lib/components/overlay/components/dialog/partials/dialog-title/dialog-title.directive.mjs +3 -3
  140. package/esm2022/lib/components/overlay/components/dialog/services/dialog-base.service.mjs +3 -3
  141. package/esm2022/lib/components/overlay/components/dialog/services/dialog.service.mjs +7 -4
  142. package/esm2022/lib/components/overlay/components/menu/context-menu-trigger.mjs +6 -6
  143. package/esm2022/lib/components/overlay/components/menu/menu-aim.mjs +6 -6
  144. package/esm2022/lib/components/overlay/components/menu/menu-bar.mjs +3 -3
  145. package/esm2022/lib/components/overlay/components/menu/menu-base.mjs +3 -3
  146. package/esm2022/lib/components/overlay/components/menu/menu-group.mjs +3 -3
  147. package/esm2022/lib/components/overlay/components/menu/menu-item-checkbox.mjs +3 -3
  148. package/esm2022/lib/components/overlay/components/menu/menu-item-radio.mjs +3 -3
  149. package/esm2022/lib/components/overlay/components/menu/menu-item-selectable.mjs +3 -3
  150. package/esm2022/lib/components/overlay/components/menu/menu-item.mjs +3 -3
  151. package/esm2022/lib/components/overlay/components/menu/menu-module.mjs +4 -4
  152. package/esm2022/lib/components/overlay/components/menu/menu-stack.mjs +3 -3
  153. package/esm2022/lib/components/overlay/components/menu/menu-trigger-base.mjs +3 -3
  154. package/esm2022/lib/components/overlay/components/menu/menu-trigger.mjs +3 -3
  155. package/esm2022/lib/components/overlay/components/menu/menu.mjs +3 -3
  156. package/esm2022/lib/components/overlay/components/overlay/components/index.mjs +2 -0
  157. package/esm2022/lib/components/overlay/components/overlay/components/overlay-container/overlay-container.component.mjs +268 -0
  158. package/esm2022/lib/components/overlay/components/overlay/components/overlay-container/public-api.mjs +2 -0
  159. package/esm2022/lib/components/overlay/components/overlay/components/public-api.mjs +2 -0
  160. package/esm2022/lib/components/overlay/components/overlay/constants/index.mjs +2 -0
  161. package/esm2022/lib/components/overlay/components/overlay/constants/overlay.constants.mjs +36 -0
  162. package/esm2022/lib/components/overlay/components/overlay/constants/public-api.mjs +2 -0
  163. package/esm2022/lib/components/overlay/components/overlay/overlay.imports.mjs +10 -0
  164. package/esm2022/lib/components/overlay/components/overlay/partials/index.mjs +2 -0
  165. package/esm2022/lib/components/overlay/components/overlay/partials/overlay-close/overlay-close.directive.mjs +61 -0
  166. package/esm2022/lib/components/overlay/components/overlay/partials/overlay-close/public-api.mjs +2 -0
  167. package/esm2022/lib/components/overlay/components/overlay/partials/overlay-title/overlay-title.directive.mjs +39 -0
  168. package/esm2022/lib/components/overlay/components/overlay/partials/overlay-title/public-api.mjs +2 -0
  169. package/esm2022/lib/components/overlay/components/overlay/partials/public-api.mjs +3 -0
  170. package/esm2022/lib/components/overlay/components/overlay/public-api.mjs +8 -0
  171. package/esm2022/lib/components/overlay/components/overlay/services/index.mjs +2 -0
  172. package/esm2022/lib/components/overlay/components/overlay/services/overlay.service.mjs +182 -0
  173. package/esm2022/lib/components/overlay/components/overlay/services/public-api.mjs +2 -0
  174. package/esm2022/lib/components/overlay/components/overlay/types/index.mjs +2 -0
  175. package/esm2022/lib/components/overlay/components/overlay/types/overlay.types.mjs +6 -0
  176. package/esm2022/lib/components/overlay/components/overlay/types/public-api.mjs +2 -0
  177. package/esm2022/lib/components/overlay/components/overlay/utils/index.mjs +2 -0
  178. package/esm2022/lib/components/overlay/components/overlay/utils/overlay-config.mjs +7 -0
  179. package/esm2022/lib/components/overlay/components/overlay/utils/overlay-position-builder.mjs +151 -0
  180. package/esm2022/lib/components/overlay/components/overlay/utils/overlay-ref.mjs +119 -0
  181. package/esm2022/lib/components/overlay/components/overlay/utils/overlay.utils.mjs +13 -0
  182. package/esm2022/lib/components/overlay/components/overlay/utils/public-api.mjs +5 -0
  183. package/esm2022/lib/components/overlay/components/public-api.mjs +2 -1
  184. package/esm2022/lib/components/overlay/components/toggletip/components/toggletip/toggletip.component.mjs +3 -3
  185. package/esm2022/lib/components/overlay/components/toggletip/directives/toggletip/toggletip.directive.mjs +3 -3
  186. package/esm2022/lib/components/overlay/components/tooltip/components/tooltip/tooltip.component.mjs +3 -3
  187. package/esm2022/lib/components/overlay/components/tooltip/directives/tooltip/tooltip.directive.mjs +3 -3
  188. package/esm2022/lib/components/overlay/directives/dynamic-overlay-title/dynamic-overlay-title.directive.mjs +3 -3
  189. package/esm2022/lib/components/overlay/services/dynamic-overlay.service.mjs +3 -3
  190. package/esm2022/lib/components/pagination/components/pagination/pagination.component.mjs +5 -5
  191. package/esm2022/lib/components/pagination/partials/pagination-link/pagination-link.directive.mjs +3 -3
  192. package/esm2022/lib/components/pagination/services/pagination-head.service.mjs +3 -3
  193. package/esm2022/lib/components/picture/picture-data.directive.mjs +3 -3
  194. package/esm2022/lib/components/picture/picture.component.mjs +3 -3
  195. package/esm2022/lib/components/progress-spinner/progress-spinner.component.mjs +3 -3
  196. package/esm2022/lib/components/public-api.mjs +2 -1
  197. package/esm2022/lib/components/query-error/components/query-error/query-error.component.mjs +3 -3
  198. package/esm2022/lib/components/query-error/directives/query-error/query-error.directive.mjs +3 -3
  199. package/esm2022/lib/components/scrollable/components/scrollable/scrollable.component.mjs +3 -3
  200. package/esm2022/lib/components/skeleton/components/skeleton/skeleton.component.mjs +3 -3
  201. package/esm2022/lib/components/skeleton/partials/skeleton-item/skeleton-item.component.mjs +3 -3
  202. package/esm2022/lib/components/sort/components/sort-header/sort-header.component.mjs +3 -3
  203. package/esm2022/lib/components/sort/partials/sort/sort.directive.mjs +3 -3
  204. package/esm2022/lib/components/sort/services/sort-header-intl.mjs +3 -3
  205. package/esm2022/lib/components/table/components/table/table.component.mjs +3 -3
  206. package/esm2022/lib/components/table/partials/cells/cell/cell.directive.mjs +3 -3
  207. package/esm2022/lib/components/table/partials/cells/cell-def/cell-def.directive.mjs +3 -3
  208. package/esm2022/lib/components/table/partials/cells/column-def/column-def.directive.mjs +3 -3
  209. package/esm2022/lib/components/table/partials/cells/footer-cell/footer-cell.directive.mjs +3 -3
  210. package/esm2022/lib/components/table/partials/cells/footer-cell-def/footer-cell-def.directive.mjs +3 -3
  211. package/esm2022/lib/components/table/partials/cells/header-cell/header-cell.directive.mjs +3 -3
  212. package/esm2022/lib/components/table/partials/cells/header-cell-def/header-cell-def.directive.mjs +3 -3
  213. package/esm2022/lib/components/table/partials/cells/text-column/text-column.component.mjs +3 -3
  214. package/esm2022/lib/components/table/partials/rows/footer-row/footer-row.component.mjs +3 -3
  215. package/esm2022/lib/components/table/partials/rows/footer-row-def/footer-row-def.directive.mjs +3 -3
  216. package/esm2022/lib/components/table/partials/rows/header-row/header-row.component.mjs +3 -3
  217. package/esm2022/lib/components/table/partials/rows/header-row-def/header-row-def.directive.mjs +3 -3
  218. package/esm2022/lib/components/table/partials/rows/no-data-row/no-data-row.directive.mjs +3 -3
  219. package/esm2022/lib/components/table/partials/rows/recycle-rows/recycle-rows.directive.mjs +3 -3
  220. package/esm2022/lib/components/table/partials/rows/row/row.component.mjs +3 -3
  221. package/esm2022/lib/components/table/partials/rows/row-def/row-def.directive.mjs +3 -3
  222. package/esm2022/lib/components/table/partials/table-busy/table-busy.directive.mjs +3 -3
  223. package/esm2022/lib/components/table/partials/table-busy-outlet/table-busy-outlet.directive.mjs +3 -3
  224. package/esm2022/lib/components/tabs/components/inline-tabs/inline-tabs.component.mjs +3 -3
  225. package/esm2022/lib/components/tabs/components/nav-tabs/nav-tabs.component.mjs +3 -3
  226. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab/inline-tab.component.mjs +3 -3
  227. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-body/inline-tab-body.component.mjs +3 -3
  228. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-body-host/inline-tab-body-host.directive.mjs +3 -3
  229. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-content/inline-tab-content.directive.mjs +3 -3
  230. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-header/inline-tab-header.component.mjs +3 -3
  231. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-label/inline-tab-label.directive.mjs +3 -3
  232. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-label-wrapper/inline-tab-label-wrapper.directive.mjs +3 -3
  233. package/esm2022/lib/components/tabs/partials/nav-tabs/nav-tab-link/nav-tab-link.directive.mjs +3 -3
  234. package/esm2022/lib/components/tabs/partials/nav-tabs/nav-tabs-outlet/nav-tabs-outlet.component.mjs +3 -3
  235. package/esm2022/lib/components/tabs/utils/active-tab-underline.util.mjs +3 -3
  236. package/esm2022/lib/components/tabs/utils/paginated-tab-header.directive.mjs +3 -3
  237. package/esm2022/lib/services/swipe-handler.service.mjs +28 -14
  238. package/esm2022/lib/types/swipe.types.mjs +1 -1
  239. package/fesm2022/ethlete-cdk.mjs +1648 -606
  240. package/fesm2022/ethlete-cdk.mjs.map +1 -1
  241. package/lib/components/filter-overlay/components/filter-overlay-page-outlet/filter-overlay-page-outlet.component.d.ts +5 -0
  242. package/lib/components/filter-overlay/components/filter-overlay-page-outlet/public-api.d.ts +1 -0
  243. package/lib/components/filter-overlay/components/index.d.ts +1 -0
  244. package/lib/components/filter-overlay/components/public-api.d.ts +1 -0
  245. package/lib/components/filter-overlay/directives/filter-overlay-link/filter-overlay-link.directive.d.ts +7 -0
  246. package/lib/components/filter-overlay/directives/filter-overlay-link/public-api.d.ts +1 -0
  247. package/lib/components/filter-overlay/directives/filter-overlay-reset/filter-overlay-reset.directive.d.ts +7 -0
  248. package/lib/components/filter-overlay/directives/filter-overlay-reset/public-api.d.ts +1 -0
  249. package/lib/components/filter-overlay/directives/filter-overlay-submit/filter-overlay-submit.directive.d.ts +7 -0
  250. package/lib/components/filter-overlay/directives/filter-overlay-submit/public-api.d.ts +1 -0
  251. package/lib/components/filter-overlay/directives/index.d.ts +1 -0
  252. package/lib/components/filter-overlay/directives/public-api.d.ts +3 -0
  253. package/lib/components/filter-overlay/filter-overlay.imports.d.ts +3 -0
  254. package/lib/components/filter-overlay/public-api.d.ts +3 -0
  255. package/lib/components/forms/components/select/components/combobox/components/combobox/combobox.component.d.ts +1 -1
  256. package/lib/components/forms/components/select/components/combobox/constants/combobox.constants.d.ts +1 -1
  257. package/lib/components/forms/components/select/components/combobox/directives/combobox/combobox.directive.d.ts +22 -2
  258. package/lib/components/forms/components/select/components/combobox/directives/combobox-body-more-items-hint-template/combobox-body-more-items-hint-template.directive.d.ts +8 -0
  259. package/lib/components/forms/components/select/components/combobox/directives/combobox-body-more-items-hint-template/index.d.ts +1 -0
  260. package/lib/components/forms/components/select/components/combobox/directives/combobox-body-more-items-hint-template/public-api.d.ts +1 -0
  261. package/lib/components/forms/components/select/components/combobox/directives/public-api.d.ts +1 -0
  262. package/lib/components/forms/components/select/components/combobox/types/combobox.types.d.ts +9 -1
  263. package/lib/components/overlay/components/bottom-sheet/services/bottom-sheet.service.d.ts +3 -0
  264. package/lib/components/overlay/components/dialog/services/dialog.service.d.ts +3 -0
  265. package/lib/components/overlay/components/overlay/components/index.d.ts +1 -0
  266. package/lib/components/overlay/components/overlay/components/overlay-container/overlay-container.component.d.ts +26 -0
  267. package/lib/components/overlay/components/overlay/components/overlay-container/public-api.d.ts +1 -0
  268. package/lib/components/overlay/components/overlay/components/public-api.d.ts +1 -0
  269. package/lib/components/overlay/components/overlay/constants/index.d.ts +1 -0
  270. package/lib/components/overlay/components/overlay/constants/overlay.constants.d.ts +15 -0
  271. package/lib/components/overlay/components/overlay/constants/public-api.d.ts +1 -0
  272. package/lib/components/overlay/components/overlay/overlay.imports.d.ts +14 -0
  273. package/lib/components/overlay/components/overlay/partials/index.d.ts +1 -0
  274. package/lib/components/overlay/components/overlay/partials/overlay-close/overlay-close.directive.d.ts +15 -0
  275. package/lib/components/overlay/components/overlay/partials/overlay-close/public-api.d.ts +1 -0
  276. package/lib/components/overlay/components/overlay/partials/overlay-title/overlay-title.directive.d.ts +11 -0
  277. package/lib/components/overlay/components/overlay/partials/overlay-title/public-api.d.ts +1 -0
  278. package/lib/components/overlay/components/overlay/partials/public-api.d.ts +2 -0
  279. package/lib/components/overlay/components/overlay/public-api.d.ts +7 -0
  280. package/lib/components/overlay/components/overlay/services/index.d.ts +1 -0
  281. package/lib/components/overlay/components/overlay/services/overlay.service.d.ts +31 -0
  282. package/lib/components/overlay/components/overlay/services/public-api.d.ts +1 -0
  283. package/lib/components/overlay/components/overlay/types/index.d.ts +1 -0
  284. package/lib/components/overlay/components/overlay/types/overlay.types.d.ts +175 -0
  285. package/lib/components/overlay/components/overlay/types/public-api.d.ts +1 -0
  286. package/lib/components/overlay/components/overlay/utils/index.d.ts +1 -0
  287. package/lib/components/overlay/components/overlay/utils/overlay-config.d.ts +2 -0
  288. package/lib/components/overlay/components/overlay/utils/overlay-position-builder.d.ts +89 -0
  289. package/lib/components/overlay/components/overlay/utils/overlay-ref.d.ts +34 -0
  290. package/lib/components/overlay/components/overlay/utils/overlay.utils.d.ts +8 -0
  291. package/lib/components/overlay/components/overlay/utils/public-api.d.ts +4 -0
  292. package/lib/components/overlay/components/public-api.d.ts +1 -0
  293. package/lib/components/public-api.d.ts +1 -0
  294. package/lib/services/swipe-handler.service.d.ts +4 -4
  295. package/lib/types/swipe.types.d.ts +6 -2
  296. package/package.json +3 -3
  297. package/src/lib/styles/cdk.css +5 -0
@@ -0,0 +1,39 @@
1
+ import { Directive, ElementRef, HostBinding, inject, Input } from '@angular/core';
2
+ import { OverlayService } from '../../services';
3
+ import { getClosestOverlay, OverlayRef } from '../../utils';
4
+ import * as i0 from "@angular/core";
5
+ let uniqueId = 0;
6
+ export class OverlayTitleDirective {
7
+ constructor() {
8
+ this._overlayRef = inject(OverlayRef, { optional: true });
9
+ this._elementRef = inject(ElementRef);
10
+ this._overlayService = inject(OverlayService);
11
+ this.id = `et-overlay-title-${uniqueId++}`;
12
+ }
13
+ ngOnInit() {
14
+ if (!this._overlayRef) {
15
+ const closestRef = getClosestOverlay(this._elementRef, this._overlayService.openOverlays);
16
+ if (!closestRef) {
17
+ throw Error('No closest ref found');
18
+ }
19
+ this._overlayRef = closestRef;
20
+ }
21
+ Promise.resolve().then(() => this._overlayRef?._containerInstance?._ariaLabelledByQueue?.push(this.id));
22
+ }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.4", ngImport: i0, type: OverlayTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
24
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.4", type: OverlayTitleDirective, isStandalone: true, selector: "[et-overlay-title], [etOverlayTitle]", inputs: { id: "id" }, host: { properties: { "attr.id": "this.id" } }, exportAs: ["etOverlayTitle"], ngImport: i0 }); }
25
+ }
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.4", ngImport: i0, type: OverlayTitleDirective, decorators: [{
27
+ type: Directive,
28
+ args: [{
29
+ selector: '[et-overlay-title], [etOverlayTitle]',
30
+ exportAs: 'etOverlayTitle',
31
+ standalone: true,
32
+ }]
33
+ }], propDecorators: { id: [{
34
+ type: Input
35
+ }, {
36
+ type: HostBinding,
37
+ args: ['attr.id']
38
+ }] } });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS10aXRsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL292ZXJsYXkvcGFydGlhbHMvb3ZlcmxheS10aXRsZS9vdmVybGF5LXRpdGxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFFNUQsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBT2pCLE1BQU0sT0FBTyxxQkFBcUI7SUFMbEM7UUFNVSxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM1QyxnQkFBVyxHQUFHLE1BQU0sQ0FBMEIsVUFBVSxDQUFDLENBQUM7UUFDMUQsb0JBQWUsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFJMUQsT0FBRSxHQUFHLG9CQUFvQixRQUFRLEVBQUUsRUFBRSxDQUFDO0tBZXZDO0lBYkMsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3JCLE1BQU0sVUFBVSxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUUxRixJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUNmLE1BQU0sS0FBSyxDQUFDLHNCQUFzQixDQUFDLENBQUM7YUFDckM7WUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztTQUMvQjtRQUVELE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxvQkFBb0IsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDMUcsQ0FBQzs4R0FyQlUscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNDQUFzQztvQkFDaEQsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzhCQVFDLEVBQUU7c0JBRkQsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgaW5qZWN0LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPdmVybGF5U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IGdldENsb3Nlc3RPdmVybGF5LCBPdmVybGF5UmVmIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5sZXQgdW5pcXVlSWQgPSAwO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZXQtb3ZlcmxheS10aXRsZV0sIFtldE92ZXJsYXlUaXRsZV0nLFxuICBleHBvcnRBczogJ2V0T3ZlcmxheVRpdGxlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgT3ZlcmxheVRpdGxlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSBfb3ZlcmxheVJlZiA9IGluamVjdChPdmVybGF5UmVmLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfb3ZlcmxheVNlcnZpY2UgPSBpbmplY3QoT3ZlcmxheVNlcnZpY2UpO1xuXG4gIEBJbnB1dCgpXG4gIEBIb3N0QmluZGluZygnYXR0ci5pZCcpXG4gIGlkID0gYGV0LW92ZXJsYXktdGl0bGUtJHt1bmlxdWVJZCsrfWA7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKCF0aGlzLl9vdmVybGF5UmVmKSB7XG4gICAgICBjb25zdCBjbG9zZXN0UmVmID0gZ2V0Q2xvc2VzdE92ZXJsYXkodGhpcy5fZWxlbWVudFJlZiwgdGhpcy5fb3ZlcmxheVNlcnZpY2Uub3Blbk92ZXJsYXlzKTtcblxuICAgICAgaWYgKCFjbG9zZXN0UmVmKSB7XG4gICAgICAgIHRocm93IEVycm9yKCdObyBjbG9zZXN0IHJlZiBmb3VuZCcpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9vdmVybGF5UmVmID0gY2xvc2VzdFJlZjtcbiAgICB9XG5cbiAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHRoaXMuX292ZXJsYXlSZWY/Ll9jb250YWluZXJJbnN0YW5jZT8uX2FyaWFMYWJlbGxlZEJ5UXVldWU/LnB1c2godGhpcy5pZCkpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './overlay-title.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvb3ZlcmxheS9wYXJ0aWFscy9vdmVybGF5LXRpdGxlL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vb3ZlcmxheS10aXRsZS5kaXJlY3RpdmUnO1xuIl19
@@ -0,0 +1,3 @@
1
+ export * from './overlay-close/public-api';
2
+ export * from './overlay-title/public-api';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvb3ZlcmxheS9wYXJ0aWFscy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyw0QkFBNEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vb3ZlcmxheS1jbG9zZS9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vb3ZlcmxheS10aXRsZS9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,8 @@
1
+ export * from './components/public-api';
2
+ export * from './constants/public-api';
3
+ export * from './overlay.imports';
4
+ export * from './partials/public-api';
5
+ export * from './services/public-api';
6
+ export * from './types/public-api';
7
+ export * from './utils/public-api';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvb3ZlcmxheS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cy9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vb3ZlcmxheS5pbXBvcnRzJztcbmV4cG9ydCAqIGZyb20gJy4vcGFydGlhbHMvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './public-api';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL292ZXJsYXkvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,182 @@
1
+ import { coerceCssPixelValue } from '@angular/cdk/coercion';
2
+ import { Dialog as CdkDialog, DialogConfig as CdkDialogConfig } from '@angular/cdk/dialog';
3
+ import { Injectable, inject } from '@angular/core';
4
+ import { ViewportService, createDestroy, equal } from '@ethlete/core';
5
+ import { Subject, combineLatest, defer, map, of, pairwise, startWith, takeUntil, tap } from 'rxjs';
6
+ import { OverlayContainerComponent } from '../components';
7
+ import { OVERLAY_CONFIG, OVERLAY_DATA, OVERLAY_DEFAULT_OPTIONS, OVERLAY_SCROLL_STRATEGY } from '../constants';
8
+ import { OverlayPositionBuilder, OverlayRef, createOverlayConfig } from '../utils';
9
+ import * as i0 from "@angular/core";
10
+ let uniqueId = 0;
11
+ const ID_PREFIX = 'et-overlay-';
12
+ const setStyle = (el, style, value) => {
13
+ if (value === null || value === undefined) {
14
+ el.style.removeProperty(style);
15
+ }
16
+ else {
17
+ el.style.setProperty(style, coerceCssPixelValue(value));
18
+ }
19
+ };
20
+ const setClass = (el, prevClass, currClass) => {
21
+ if (!equal(prevClass, currClass)) {
22
+ if (prevClass) {
23
+ if (Array.isArray(prevClass)) {
24
+ el.classList.remove(...prevClass);
25
+ }
26
+ else {
27
+ el.classList.remove(prevClass);
28
+ }
29
+ }
30
+ if (currClass) {
31
+ if (Array.isArray(currClass)) {
32
+ el.classList.add(...currClass);
33
+ }
34
+ else {
35
+ el.classList.add(currClass);
36
+ }
37
+ }
38
+ }
39
+ };
40
+ export class OverlayService {
41
+ constructor() {
42
+ this._destroy$ = createDestroy();
43
+ this._defaultOptions = inject(OVERLAY_DEFAULT_OPTIONS, { optional: true });
44
+ this._scrollStrategy = inject(OVERLAY_SCROLL_STRATEGY);
45
+ this._parentOverlayService = inject(OverlayService, { optional: true, skipSelf: true });
46
+ this._dialog = inject(CdkDialog);
47
+ this._viewportService = inject(ViewportService);
48
+ this._openOverlaysAtThisLevel = [];
49
+ this._afterAllClosedAtThisLevel = new Subject();
50
+ this._afterOpenedAtThisLevel = new Subject();
51
+ this.positions = new OverlayPositionBuilder();
52
+ this.afterAllClosed = defer(() => this.openOverlays.length ? this._getAfterAllClosed() : this._getAfterAllClosed().pipe(startWith(undefined)));
53
+ }
54
+ get openOverlays() {
55
+ return this._parentOverlayService ? this._parentOverlayService.openOverlays : this._openOverlaysAtThisLevel;
56
+ }
57
+ get afterOpened() {
58
+ return this._parentOverlayService ? this._parentOverlayService.afterOpened : this._afterOpenedAtThisLevel;
59
+ }
60
+ ngOnDestroy() {
61
+ this._closeOverlays(this._openOverlaysAtThisLevel);
62
+ this._afterAllClosedAtThisLevel.complete();
63
+ this._afterOpenedAtThisLevel.complete();
64
+ }
65
+ open(componentOrTemplateRef, config) {
66
+ let overlayRef;
67
+ const composedConfig = createOverlayConfig(this._defaultOptions, config);
68
+ composedConfig.id = composedConfig.id || `${ID_PREFIX}${uniqueId++}`;
69
+ composedConfig.scrollStrategy = composedConfig.scrollStrategy || this._scrollStrategy();
70
+ const cdkRef = this._dialog.open(componentOrTemplateRef, {
71
+ ...composedConfig,
72
+ disableClose: true,
73
+ closeOnDestroy: false,
74
+ container: {
75
+ type: OverlayContainerComponent,
76
+ providers: () => [
77
+ { provide: OVERLAY_CONFIG, useValue: composedConfig },
78
+ { provide: CdkDialogConfig, useValue: composedConfig },
79
+ ],
80
+ },
81
+ templateContext: () => ({ dialogRef: overlayRef }),
82
+ providers: (ref, cdkConfig, overlayContainer) => {
83
+ overlayRef = new OverlayRef(ref, composedConfig, overlayContainer);
84
+ return [
85
+ { provide: OverlayContainerComponent, useValue: overlayContainer },
86
+ { provide: OVERLAY_DATA, useValue: cdkConfig.data },
87
+ { provide: OverlayRef, useValue: overlayRef },
88
+ ];
89
+ },
90
+ });
91
+ /* eslint-disable @typescript-eslint/no-non-null-assertion*/
92
+ overlayRef.componentRef = cdkRef.componentRef;
93
+ overlayRef.componentInstance = cdkRef.componentInstance;
94
+ cdkRef.containerInstance.overlayRef = overlayRef;
95
+ if (composedConfig.positions?.length) {
96
+ combineLatest(composedConfig.positions.map((breakpoint) => (breakpoint.breakpoint ? this._viewportService.observe({ min: breakpoint.breakpoint }) : of(true)).pipe(map((isActive) => ({
97
+ isActive,
98
+ config: breakpoint.config,
99
+ size: typeof breakpoint.breakpoint === 'number'
100
+ ? breakpoint.breakpoint
101
+ : breakpoint.breakpoint === undefined
102
+ ? 0
103
+ : this._viewportService.getBreakpointSize(breakpoint.breakpoint, 'min'),
104
+ })))))
105
+ .pipe(takeUntil(overlayRef.afterClosed()), takeUntil(this._destroy$), map((entries) => {
106
+ const activeBreakpoints = entries.filter((entry) => entry.isActive);
107
+ const highestBreakpoint = activeBreakpoints.reduce((prev, curr) => (prev.size > curr.size ? prev : curr));
108
+ return highestBreakpoint.config;
109
+ }), startWith(null), pairwise(), tap(([prevConfig, currConfig]) => {
110
+ if (!currConfig)
111
+ return;
112
+ const overlayPaneEl = cdkRef.overlayRef.overlayElement;
113
+ const containerEl = overlayRef._containerInstance.elementRef.nativeElement;
114
+ const backdropEl = cdkRef.overlayRef.backdropElement;
115
+ const overlayWrapper = cdkRef.overlayRef.hostElement;
116
+ setStyle(overlayPaneEl, 'min-width', currConfig.minWidth);
117
+ setStyle(overlayPaneEl, 'min-height', currConfig.minHeight);
118
+ setStyle(overlayPaneEl, 'max-width', currConfig.maxWidth);
119
+ setStyle(overlayPaneEl, 'max-height', currConfig.maxHeight);
120
+ setStyle(overlayPaneEl, 'width', currConfig.width);
121
+ setStyle(overlayPaneEl, 'height', currConfig.height);
122
+ setClass(containerEl, prevConfig?.containerClass, currConfig?.containerClass);
123
+ setClass(overlayPaneEl, prevConfig?.paneClass, currConfig?.paneClass);
124
+ setClass(overlayWrapper, prevConfig?.overlayClass, currConfig?.overlayClass);
125
+ if (backdropEl) {
126
+ setClass(backdropEl, prevConfig?.backdropClass, currConfig?.backdropClass);
127
+ }
128
+ if (!equal(prevConfig?.position, currConfig?.position)) {
129
+ overlayRef.updatePosition(currConfig.position);
130
+ }
131
+ if (currConfig.positionStrategy) {
132
+ cdkRef.overlayRef.updatePositionStrategy(currConfig.positionStrategy);
133
+ }
134
+ else {
135
+ cdkRef.overlayRef.updatePosition();
136
+ }
137
+ if (currConfig.dragToDismiss) {
138
+ overlayRef._containerInstance._enableDragToDismiss(currConfig.dragToDismiss);
139
+ }
140
+ else {
141
+ overlayRef._containerInstance._disableDragToDismiss();
142
+ }
143
+ }))
144
+ .subscribe();
145
+ }
146
+ this.openOverlays.push(overlayRef);
147
+ this.afterOpened.next(overlayRef);
148
+ overlayRef.afterClosed().subscribe(() => {
149
+ const index = this.openOverlays.indexOf(overlayRef);
150
+ if (index === -1)
151
+ return;
152
+ this.openOverlays.splice(index, 1);
153
+ if (!this.openOverlays.length) {
154
+ this._getAfterAllClosed().next();
155
+ }
156
+ });
157
+ return overlayRef;
158
+ /* eslint-enable @typescript-eslint/no-non-null-assertion*/
159
+ }
160
+ closeAll() {
161
+ this._closeOverlays(this.openOverlays);
162
+ }
163
+ getOverlayById(id) {
164
+ return this.openOverlays.find((overlay) => overlay.id === id);
165
+ }
166
+ _closeOverlays(overlays) {
167
+ let i = overlays.length;
168
+ while (i--) {
169
+ overlays[i].close();
170
+ }
171
+ }
172
+ _getAfterAllClosed() {
173
+ const parent = this._parentOverlayService;
174
+ return parent ? parent._getAfterAllClosed() : this._afterAllClosedAtThisLevel;
175
+ }
176
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.4", ngImport: i0, type: OverlayService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
177
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.4", ngImport: i0, type: OverlayService }); }
178
+ }
179
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.4", ngImport: i0, type: OverlayService, decorators: [{
180
+ type: Injectable
181
+ }] });
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL292ZXJsYXkvY29tcG9uZW50cy9vdmVybGF5L3NlcnZpY2VzL292ZXJsYXkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsTUFBTSxJQUFJLFNBQVMsRUFBRSxZQUFZLElBQUksZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFM0YsT0FBTyxFQUFnQixVQUFVLEVBQTBCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFjLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9HLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSx1QkFBdUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU5RyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsVUFBVSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sVUFBVSxDQUFDOztBQUVuRixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7QUFDakIsTUFBTSxTQUFTLEdBQUcsYUFBYSxDQUFDO0FBRWhDLE1BQU0sUUFBUSxHQUFHLENBQUMsRUFBZSxFQUFFLEtBQWEsRUFBRSxLQUF5QyxFQUFFLEVBQUU7SUFDN0YsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtB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Q0FBQyxNQUFNLENBQUM7UUFFeEIsT0FBTyxDQUFDLEVBQUUsRUFBRTtZQUNWLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNyQjtJQUNILENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1FBQzFDLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDO0lBQ2hGLENBQUM7OEdBM0xVLGNBQWM7a0hBQWQsY0FBYzs7MkZBQWQsY0FBYztrQkFEMUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvZXJjZUNzc1BpeGVsVmFsdWUgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgRGlhbG9nIGFzIENka0RpYWxvZywgRGlhbG9nQ29uZmlnIGFzIENka0RpYWxvZ0NvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kaWFsb2cnO1xuaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENvbXBvbmVudFJlZiwgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBUZW1wbGF0ZVJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWaWV3cG9ydFNlcnZpY2UsIGNyZWF0ZURlc3Ryb3ksIGVxdWFsIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBkZWZlciwgbWFwLCBvZiwgcGFpcndpc2UsIHN0YXJ0V2l0aCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE92ZXJsYXlDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzJztcbmltcG9ydCB7IE9WRVJMQVlfQ09ORklHLCBPVkVSTEFZX0RBVEEsIE9WRVJMQVlfREVGQVVMVF9PUFRJT05TLCBPVkVSTEFZX1NDUk9MTF9TVFJBVEVHWSB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBPdmVybGF5Q29uZmlnIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgT3ZlcmxheVBvc2l0aW9uQnVpbGRlciwgT3ZlcmxheVJlZiwgY3JlYXRlT3ZlcmxheUNvbmZpZyB9IGZyb20gJy4uL3V0aWxzJztcblxubGV0IHVuaXF1ZUlkID0gMDtcbmNvbnN0IElEX1BSRUZJWCA9ICdldC1vdmVybGF5LSc7XG5cbmNvbnN0IHNldFN0eWxlID0gKGVsOiBIVE1MRWxlbWVudCwgc3R5bGU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB8IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQpID0+IHtcbiAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICBlbC5zdHlsZS5yZW1vdmVQcm9wZXJ0eShzdHlsZSk7XG4gIH0gZWxzZSB7XG4gICAgZWwuc3R5bGUuc2V0UHJvcGVydHkoc3R5bGUsIGNvZXJjZUNzc1BpeGVsVmFsdWUodmFsdWUpKTtcbiAgfVxufTtcblxuY29uc3Qgc2V0Q2xhc3MgPSAoZWw6IEhUTUxFbGVtZW50LCBwcmV2Q2xhc3M/OiBzdHJpbmcgfCBzdHJpbmdbXSwgY3VyckNsYXNzPzogc3RyaW5nIHwgc3RyaW5nW10pID0+IHtcbiAgaWYgKCFlcXVhbChwcmV2Q2xhc3MsIGN1cnJDbGFzcykpIHtcbiAgICBpZiAocHJldkNsYXNzKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShwcmV2Q2xhc3MpKSB7XG4gICAgICAgIGVsLmNsYXNzTGlzdC5yZW1vdmUoLi4ucHJldkNsYXNzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsLmNsYXNzTGlzdC5yZW1vdmUocHJldkNsYXNzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoY3VyckNsYXNzKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShjdXJyQ2xhc3MpKSB7XG4gICAgICAgIGVsLmNsYXNzTGlzdC5hZGQoLi4uY3VyckNsYXNzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsLmNsYXNzTGlzdC5hZGQoY3VyckNsYXNzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn07XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPdmVybGF5U2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kkID0gY3JlYXRlRGVzdHJveSgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZWZhdWx0T3B0aW9ucyA9IGluamVjdChPVkVSTEFZX0RFRkFVTFRfT1BUSU9OUywgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc2Nyb2xsU3RyYXRlZ3kgPSBpbmplY3QoT1ZFUkxBWV9TQ1JPTExfU1RSQVRFR1kpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnRPdmVybGF5U2VydmljZSA9IGluamVjdChPdmVybGF5U2VydmljZSwgeyBvcHRpb25hbDogdHJ1ZSwgc2tpcFNlbGY6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RpYWxvZyA9IGluamVjdChDZGtEaWFsb2cpO1xuICBwcml2YXRlIHJlYWRvbmx5IF92aWV3cG9ydFNlcnZpY2UgPSBpbmplY3QoVmlld3BvcnRTZXJ2aWNlKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9vcGVuT3ZlcmxheXNBdFRoaXNMZXZlbDogT3ZlcmxheVJlZltdID0gW107XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FmdGVyQWxsQ2xvc2VkQXRUaGlzTGV2ZWwgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9hZnRlck9wZW5lZEF0VGhpc0xldmVsID0gbmV3IFN1YmplY3Q8T3ZlcmxheVJlZj4oKTtcblxuICByZWFkb25seSBwb3NpdGlvbnMgPSBuZXcgT3ZlcmxheVBvc2l0aW9uQnVpbGRlcigpO1xuXG4gIHJlYWRvbmx5IGFmdGVyQWxsQ2xvc2VkID0gZGVmZXIoKCkgPT5cbiAgICB0aGlzLm9wZW5PdmVybGF5cy5sZW5ndGggPyB0aGlzLl9nZXRBZnRlckFsbENsb3NlZCgpIDogdGhpcy5fZ2V0QWZ0ZXJBbGxDbG9zZWQoKS5waXBlKHN0YXJ0V2l0aCh1bmRlZmluZWQpKSxcbiAgKSBhcyBPYnNlcnZhYmxlPHZvaWQ+O1xuXG4gIGdldCBvcGVuT3ZlcmxheXMoKTogT3ZlcmxheVJlZltdIHtcbiAgICByZXR1cm4gdGhpcy5fcGFyZW50T3ZlcmxheVNlcnZpY2UgPyB0aGlzLl9wYXJlbnRPdmVybGF5U2VydmljZS5vcGVuT3ZlcmxheXMgOiB0aGlzLl9vcGVuT3ZlcmxheXNBdFRoaXNMZXZlbDtcbiAgfVxuXG4gIGdldCBhZnRlck9wZW5lZCgpOiBTdWJqZWN0PE92ZXJsYXlSZWY+IHtcbiAgICByZXR1cm4gdGhpcy5fcGFyZW50T3ZlcmxheVNlcnZpY2UgPyB0aGlzLl9wYXJlbnRPdmVybGF5U2VydmljZS5hZnRlck9wZW5lZCA6IHRoaXMuX2FmdGVyT3BlbmVkQXRUaGlzTGV2ZWw7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9jbG9zZU92ZXJsYXlzKHRoaXMuX29wZW5PdmVybGF5c0F0VGhpc0xldmVsKTtcbiAgICB0aGlzLl9hZnRlckFsbENsb3NlZEF0VGhpc0xldmVsLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fYWZ0ZXJPcGVuZWRBdFRoaXNMZXZlbC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgb3BlbjxULCBEID0gdW5rbm93biwgUiA9IHVua25vd24+KGNvbXBvbmVudDogQ29tcG9uZW50VHlwZTxUPiwgY29uZmlnOiBPdmVybGF5Q29uZmlnPEQ+KTogT3ZlcmxheVJlZjxULCBSPjtcbiAgb3BlbjxULCBEID0gdW5rbm93biwgUiA9IHVua25vd24+KHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxUPiwgY29uZmlnOiBPdmVybGF5Q29uZmlnPEQ+KTogT3ZlcmxheVJlZjxULCBSPjtcbiAgb3BlbjxULCBEID0gdW5rbm93biwgUiA9IHVua25vd24+KFxuICAgIHRlbXBsYXRlOiBDb21wb25lbnRUeXBlPFQ+IHwgVGVtcGxhdGVSZWY8VD4sXG4gICAgY29uZmlnOiBPdmVybGF5Q29uZmlnPEQ+LFxuICApOiBPdmVybGF5UmVmPFQsIFI+O1xuICBvcGVuPFQsIEQgPSB1bmtub3duLCBSID0gdW5rbm93bj4oXG4gICAgY29tcG9uZW50T3JUZW1wbGF0ZVJlZjogQ29tcG9uZW50VHlwZTxUPiB8IFRlbXBsYXRlUmVmPFQ+LFxuICAgIGNvbmZpZzogT3ZlcmxheUNvbmZpZzxEPixcbiAgKTogT3ZlcmxheVJlZjxULCBSPiB7XG4gICAgbGV0IG92ZXJsYXlSZWY6IE92ZXJsYXlSZWY8VCwgUj47XG5cbiAgICBjb25zdCBjb21wb3NlZENvbmZpZyA9IGNyZWF0ZU92ZXJsYXlDb25maWc8RD4odGhpcy5fZGVmYXVsdE9wdGlvbnMgYXMgT3ZlcmxheUNvbmZpZzxEPiwgY29uZmlnKTtcbiAgICBjb21wb3NlZENvbmZpZy5pZCA9IGNvbXBvc2VkQ29uZmlnLmlkIHx8IGAke0lEX1BSRUZJWH0ke3VuaXF1ZUlkKyt9YDtcbiAgICBjb21wb3NlZENvbmZpZy5zY3JvbGxTdHJhdGVneSA9IGNvbXBvc2VkQ29uZmlnLnNjcm9sbFN0cmF0ZWd5IHx8IHRoaXMuX3Njcm9sbFN0cmF0ZWd5KCk7XG5cbiAgICBjb25zdCBjZGtSZWYgPSB0aGlzLl9kaWFsb2cub3BlbjxSLCBELCBUPihjb21wb25lbnRPclRlbXBsYXRlUmVmLCB7XG4gICAgICAuLi5jb21wb3NlZENvbmZpZyxcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcbiAgICAgIGNsb3NlT25EZXN0cm95OiBmYWxzZSxcbiAgICAgIGNvbnRhaW5lcjoge1xuICAgICAgICB0eXBlOiBPdmVybGF5Q29udGFpbmVyQ29tcG9uZW50LFxuICAgICAgICBwcm92aWRlcnM6ICgpID0+IFtcbiAgICAgICAgICB7IHByb3ZpZGU6IE9WRVJMQVlfQ09ORklHLCB1c2VWYWx1ZTogY29tcG9zZWRDb25maWcgfSxcbiAgICAgICAgICB7IHByb3ZpZGU6IENka0RpYWxvZ0NvbmZpZywgdXNlVmFsdWU6IGNvbXBvc2VkQ29uZmlnIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAgdGVtcGxhdGVDb250ZXh0OiAoKSA9PiAoeyBkaWFsb2dSZWY6IG92ZXJsYXlSZWYgfSksXG4gICAgICBwcm92aWRlcnM6IChyZWYsIGNka0NvbmZpZywgb3ZlcmxheUNvbnRhaW5lcikgPT4ge1xuICAgICAgICBvdmVybGF5UmVmID0gbmV3IE92ZXJsYXlSZWYocmVmLCBjb21wb3NlZENvbmZpZywgb3ZlcmxheUNvbnRhaW5lciBhcyBPdmVybGF5Q29udGFpbmVyQ29tcG9uZW50KTtcblxuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgIHsgcHJvdmlkZTogT3ZlcmxheUNvbnRhaW5lckNvbXBvbmVudCwgdXNlVmFsdWU6IG92ZXJsYXlDb250YWluZXIgfSxcbiAgICAgICAgICB7IHByb3ZpZGU6IE9WRVJMQVlfREFUQSwgdXNlVmFsdWU6IGNka0NvbmZpZy5kYXRhIH0sXG4gICAgICAgICAgeyBwcm92aWRlOiBPdmVybGF5UmVmLCB1c2VWYWx1ZTogb3ZlcmxheVJlZiB9LFxuICAgICAgICBdO1xuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb24qL1xuICAgIChvdmVybGF5UmVmISBhcyB7IGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFQ+IH0pLmNvbXBvbmVudFJlZiA9IGNka1JlZi5jb21wb25lbnRSZWYhO1xuICAgIG92ZXJsYXlSZWYhLmNvbXBvbmVudEluc3RhbmNlID0gY2RrUmVmLmNvbXBvbmVudEluc3RhbmNlITtcblxuICAgIChjZGtSZWYuY29udGFpbmVySW5zdGFuY2UgYXMgT3ZlcmxheUNvbnRhaW5lckNvbXBvbmVudCkub3ZlcmxheVJlZiA9IG92ZXJsYXlSZWYhO1xuXG4gICAgaWYgKGNvbXBvc2VkQ29uZmlnLnBvc2l0aW9ucz8ubGVuZ3RoKSB7XG4gICAgICBjb21iaW5lTGF0ZXN0KFxuICAgICAgICBjb21wb3NlZENvbmZpZy5wb3NpdGlvbnMubWFwKChicmVha3BvaW50KSA9PlxuICAgICAgICAgIChicmVha3BvaW50LmJyZWFrcG9pbnQgPyB0aGlzLl92aWV3cG9ydFNlcnZpY2Uub2JzZXJ2ZSh7IG1pbjogYnJlYWtwb2ludC5icmVha3BvaW50IH0pIDogb2YodHJ1ZSkpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGlzQWN0aXZlKSA9PiAoe1xuICAgICAgICAgICAgICBpc0FjdGl2ZSxcbiAgICAgICAgICAgICAgY29uZmlnOiBicmVha3BvaW50LmNvbmZpZyxcbiAgICAgICAgICAgICAgc2l6ZTpcbiAgICAgICAgICAgICAgICB0eXBlb2YgYnJlYWtwb2ludC5icmVha3BvaW50ID09PSAnbnVtYmVyJ1xuICAgICAgICAgICAgICAgICAgPyBicmVha3BvaW50LmJyZWFrcG9pbnRcbiAgICAgICAgICAgICAgICAgIDogYnJlYWtwb2ludC5icmVha3BvaW50ID09PSB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgICAgOiB0aGlzLl92aWV3cG9ydFNlcnZpY2UuZ2V0QnJlYWtwb2ludFNpemUoYnJlYWtwb2ludC5icmVha3BvaW50LCAnbWluJyksXG4gICAgICAgICAgICB9KSksXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgIClcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKG92ZXJsYXlSZWYhLmFmdGVyQ2xvc2VkKCkpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICAgICAgbWFwKChlbnRyaWVzKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBhY3RpdmVCcmVha3BvaW50cyA9IGVudHJpZXMuZmlsdGVyKChlbnRyeSkgPT4gZW50cnkuaXNBY3RpdmUpO1xuICAgICAgICAgICAgY29uc3QgaGlnaGVzdEJyZWFrcG9pbnQgPSBhY3RpdmVCcmVha3BvaW50cy5yZWR1Y2UoKHByZXYsIGN1cnIpID0+IChwcmV2LnNpemUgPiBjdXJyLnNpemUgPyBwcmV2IDogY3VycikpO1xuXG4gICAgICAgICAgICByZXR1cm4gaGlnaGVzdEJyZWFrcG9pbnQuY29uZmlnO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgICAgICBwYWlyd2lzZSgpLFxuICAgICAgICAgIHRhcCgoW3ByZXZDb25maWcsIGN1cnJDb25maWddKSA9PiB7XG4gICAgICAgICAgICBpZiAoIWN1cnJDb25maWcpIHJldHVybjtcblxuICAgICAgICAgICAgY29uc3Qgb3ZlcmxheVBhbmVFbCA9IGNka1JlZi5vdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50O1xuICAgICAgICAgICAgY29uc3QgY29udGFpbmVyRWwgPSBvdmVybGF5UmVmLl9jb250YWluZXJJbnN0YW5jZS5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICBjb25zdCBiYWNrZHJvcEVsID0gY2RrUmVmLm92ZXJsYXlSZWYuYmFja2Ryb3BFbGVtZW50O1xuICAgICAgICAgICAgY29uc3Qgb3ZlcmxheVdyYXBwZXIgPSBjZGtSZWYub3ZlcmxheVJlZi5ob3N0RWxlbWVudDtcblxuICAgICAgICAgICAgc2V0U3R5bGUob3ZlcmxheVBhbmVFbCwgJ21pbi13aWR0aCcsIGN1cnJDb25maWcubWluV2lkdGgpO1xuICAgICAgICAgICAgc2V0U3R5bGUob3ZlcmxheVBhbmVFbCwgJ21pbi1oZWlnaHQnLCBjdXJyQ29uZmlnLm1pbkhlaWdodCk7XG4gICAgICAgICAgICBzZXRTdHlsZShvdmVybGF5UGFuZUVsLCAnbWF4LXdpZHRoJywgY3VyckNvbmZpZy5tYXhXaWR0aCk7XG4gICAgICAgICAgICBzZXRTdHlsZShvdmVybGF5UGFuZUVsLCAnbWF4LWhlaWdodCcsIGN1cnJDb25maWcubWF4SGVpZ2h0KTtcbiAgICAgICAgICAgIHNldFN0eWxlKG92ZXJsYXlQYW5lRWwsICd3aWR0aCcsIGN1cnJDb25maWcud2lkdGgpO1xuICAgICAgICAgICAgc2V0U3R5bGUob3ZlcmxheVBhbmVFbCwgJ2hlaWdodCcsIGN1cnJDb25maWcuaGVpZ2h0KTtcblxuICAgICAgICAgICAgc2V0Q2xhc3MoY29udGFpbmVyRWwsIHByZXZDb25maWc/LmNvbnRhaW5lckNsYXNzLCBjdXJyQ29uZmlnPy5jb250YWluZXJDbGFzcyk7XG4gICAgICAgICAgICBzZXRDbGFzcyhvdmVybGF5UGFuZUVsLCBwcmV2Q29uZmlnPy5wYW5lQ2xhc3MsIGN1cnJDb25maWc/LnBhbmVDbGFzcyk7XG4gICAgICAgICAgICBzZXRDbGFzcyhvdmVybGF5V3JhcHBlciwgcHJldkNvbmZpZz8ub3ZlcmxheUNsYXNzLCBjdXJyQ29uZmlnPy5vdmVybGF5Q2xhc3MpO1xuXG4gICAgICAgICAgICBpZiAoYmFja2Ryb3BFbCkge1xuICAgICAgICAgICAgICBzZXRDbGFzcyhiYWNrZHJvcEVsLCBwcmV2Q29uZmlnPy5iYWNrZHJvcENsYXNzLCBjdXJyQ29uZmlnPy5iYWNrZHJvcENsYXNzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFlcXVhbChwcmV2Q29uZmlnPy5wb3NpdGlvbiwgY3VyckNvbmZpZz8ucG9zaXRpb24pKSB7XG4gICAgICAgICAgICAgIG92ZXJsYXlSZWYudXBkYXRlUG9zaXRpb24oY3VyckNvbmZpZy5wb3NpdGlvbik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChjdXJyQ29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kpIHtcbiAgICAgICAgICAgICAgY2RrUmVmLm92ZXJsYXlSZWYudXBkYXRlUG9zaXRpb25TdHJhdGVneShjdXJyQ29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgY2RrUmVmLm92ZXJsYXlSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGN1cnJDb25maWcuZHJhZ1RvRGlzbWlzcykge1xuICAgICAgICAgICAgICBvdmVybGF5UmVmLl9jb250YWluZXJJbnN0YW5jZS5fZW5hYmxlRHJhZ1RvRGlzbWlzcyhjdXJyQ29uZmlnLmRyYWdUb0Rpc21pc3MpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgb3ZlcmxheVJlZi5fY29udGFpbmVySW5zdGFuY2UuX2Rpc2FibGVEcmFnVG9EaXNtaXNzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHRoaXMub3Blbk92ZXJsYXlzLnB1c2gob3ZlcmxheVJlZiEpO1xuICAgIHRoaXMuYWZ0ZXJPcGVuZWQubmV4dChvdmVybGF5UmVmISk7XG5cbiAgICBvdmVybGF5UmVmIS5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBjb25zdCBpbmRleCA9IHRoaXMub3Blbk92ZXJsYXlzLmluZGV4T2Yob3ZlcmxheVJlZik7XG5cbiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHJldHVybjtcblxuICAgICAgdGhpcy5vcGVuT3ZlcmxheXMuc3BsaWNlKGluZGV4LCAxKTtcblxuICAgICAgaWYgKCF0aGlzLm9wZW5PdmVybGF5cy5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy5fZ2V0QWZ0ZXJBbGxDbG9zZWQoKS5uZXh0KCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gb3ZlcmxheVJlZiE7XG5cbiAgICAvKiBlc2xpbnQtZW5hYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb24qL1xuICB9XG5cbiAgY2xvc2VBbGwoKTogdm9pZCB7XG4gICAgdGhpcy5fY2xvc2VPdmVybGF5cyh0aGlzLm9wZW5PdmVybGF5cyk7XG4gIH1cblxuICBnZXRPdmVybGF5QnlJZChpZDogc3RyaW5nKTogT3ZlcmxheVJlZiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMub3Blbk92ZXJsYXlzLmZpbmQoKG92ZXJsYXkpID0+IG92ZXJsYXkuaWQgPT09IGlkKTtcbiAgfVxuXG4gIHByaXZhdGUgX2Nsb3NlT3ZlcmxheXMob3ZlcmxheXM6IE92ZXJsYXlSZWZbXSkge1xuICAgIGxldCBpID0gb3ZlcmxheXMubGVuZ3RoO1xuXG4gICAgd2hpbGUgKGktLSkge1xuICAgICAgb3ZlcmxheXNbaV0uY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9nZXRBZnRlckFsbENsb3NlZCgpOiBTdWJqZWN0PHZvaWQ+IHtcbiAgICBjb25zdCBwYXJlbnQgPSB0aGlzLl9wYXJlbnRPdmVybGF5U2VydmljZTtcbiAgICByZXR1cm4gcGFyZW50ID8gcGFyZW50Ll9nZXRBZnRlckFsbENsb3NlZCgpIDogdGhpcy5fYWZ0ZXJBbGxDbG9zZWRBdFRoaXNMZXZlbDtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './overlay.service';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvb3ZlcmxheS9zZXJ2aWNlcy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL292ZXJsYXkuc2VydmljZSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './public-api';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL292ZXJsYXkvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,6 @@
1
+ export const OVERLAY_STATE = {
2
+ OPEN: 'open',
3
+ CLOSING: 'closing',
4
+ CLOSED: 'closed',
5
+ };
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvb3ZlcmxheS90eXBlcy9vdmVybGF5LnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBCQSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7SUFDM0IsSUFBSSxFQUFFLE1BQU07SUFDWixPQUFPLEVBQUUsU0FBUztJQUNsQixNQUFNLEVBQUUsUUFBUTtDQUNSLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3Rpb24gfSBmcm9tICdAYW5ndWxhci9jZGsvYmlkaSc7XG5pbXBvcnQgeyBQb3NpdGlvblN0cmF0ZWd5LCBTY3JvbGxTdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IEluamVjdG9yLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCcmVha3BvaW50IH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5cbi8qKiBPcHRpb25zIGZvciB3aGVyZSB0byBzZXQgZm9jdXMgdG8gYXV0b21hdGljYWxseSBvbiBvdmVybGF5IG9wZW4gKi9cbmV4cG9ydCB0eXBlIE92ZXJsYXlBdXRvRm9jdXNUYXJnZXQgPSAnZGlhbG9nJyB8ICdmaXJzdC10YWJiYWJsZScgfCAnZmlyc3QtaGVhZGluZyc7XG5cbi8qKiBWYWxpZCBBUklBIHJvbGVzIGZvciBhIG92ZXJsYXkgZWxlbWVudC4gKi9cbmV4cG9ydCB0eXBlIE92ZXJsYXlSb2xlID0gJ2RpYWxvZycgfCAnYWxlcnRkaWFsb2cnO1xuXG4vKiogUG9zc2libGUgb3ZlcnJpZGVzIGZvciBhIG92ZXJsYXkncyBwb3NpdGlvbi4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT3ZlcmxheVBvc2l0aW9uIHtcbiAgLyoqIE92ZXJyaWRlIGZvciB0aGUgb3ZlcmxheSdzIHRvcCBwb3NpdGlvbi4gKi9cbiAgdG9wPzogc3RyaW5nO1xuXG4gIC8qKiBPdmVycmlkZSBmb3IgdGhlIG92ZXJsYXkncyBib3R0b20gcG9zaXRpb24uICovXG4gIGJvdHRvbT86IHN0cmluZztcblxuICAvKiogT3ZlcnJpZGUgZm9yIHRoZSBvdmVybGF5J3MgbGVmdCBwb3NpdGlvbi4gKi9cbiAgbGVmdD86IHN0cmluZztcblxuICAvKiogT3ZlcnJpZGUgZm9yIHRoZSBvdmVybGF5J3MgcmlnaHQgcG9zaXRpb24uICovXG4gIHJpZ2h0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgT1ZFUkxBWV9TVEFURSA9IHtcbiAgT1BFTjogJ29wZW4nLFxuICBDTE9TSU5HOiAnY2xvc2luZycsXG4gIENMT1NFRDogJ2Nsb3NlZCcsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBPdmVybGF5U3RhdGUgPSAodHlwZW9mIE9WRVJMQVlfU1RBVEUpW2tleW9mIHR5cGVvZiBPVkVSTEFZX1NUQVRFXTtcblxuZXhwb3J0IGludGVyZmFjZSBPdmVybGF5RHJhZ1RvRGlzbWlzc0NvbmZpZyB7XG4gIC8qKiBEaXJlY3Rpb24gaW4gd2hpY2ggdGhlIG92ZXJsYXkgY2FuIGJlIGRyYWdnZWQuICovXG4gIGRpcmVjdGlvbjogJ3RvLXRvcCcgfCAndG8tYm90dG9tJyB8ICd0by1sZWZ0JyB8ICd0by1yaWdodCc7XG5cbiAgLyoqXG4gICAqIFRoZSBtaW5pbXVtIGRpc3RhbmNlIGluIHBpeGVscyB0aGF0IHRoZSB1c2VyIG11c3Qgc3dpcGUgdG8gZGlzbWlzcyB0aGUgb3ZlcmxheS5cbiAgICpcbiAgICogQGRlZmF1bHQgMTUwIC8vIDE1MHB4XG4gICAqL1xuICBtaW5EaXN0YW5jZVRvRGlzbWlzcz86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG1pbmltdW0gdmVsb2NpdHkgaW4gcGl4ZWxzIHBlciBzZWNvbmQgdGhhdCB0aGUgdXNlciBtdXN0IHN3aXBlIHRvIGRpc21pc3MgdGhlIG92ZXJsYXkuXG4gICAqXG4gICAqIEBkZWZhdWx0IDE1MCAvLyAxNTBweC9zXG4gICAqL1xuICBtaW5WZWxvY2l0eVRvRGlzbWlzcz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdmVybGF5QnJlYWtwb2ludENvbmZpZyB7XG4gIC8qKiBNaW4td2lkdGggb2YgdGhlIG92ZXJsYXkuIElmIGEgbnVtYmVyIGlzIHByb3ZpZGVkLCBhc3N1bWVzIHBpeGVsIHVuaXRzLiAqL1xuICBtaW5XaWR0aD86IG51bWJlciB8IHN0cmluZztcblxuICAvKiogTWF4LXdpZHRoIG9mIHRoZSBvdmVybGF5LiBJZiBhIG51bWJlciBpcyBwcm92aWRlZCwgYXNzdW1lcyBwaXhlbCB1bml0cy4gKi9cbiAgbWF4V2lkdGg/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgLyoqIE1pbi1oZWlnaHQgb2YgdGhlIG92ZXJsYXkuIElmIGEgbnVtYmVyIGlzIHByb3ZpZGVkLCBhc3N1bWVzIHBpeGVsIHVuaXRzLiAqL1xuICBtaW5IZWlnaHQ/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgLyoqIE1heC1oZWlnaHQgb2YgdGhlIG92ZXJsYXkuIElmIGEgbnVtYmVyIGlzIHByb3ZpZGVkLCBhc3N1bWVzIHBpeGVsIHVuaXRzLiAqL1xuICBtYXhIZWlnaHQ/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgLyoqIFdpZHRoIG9mIHRoZSBvdmVybGF5LiAqL1xuICB3aWR0aD86IG51bWJlciB8IHN0cmluZztcblxuICAvKiogSGVpZ2h0IG9mIHRoZSBvdmVybGF5LiAqL1xuICBoZWlnaHQ/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgLyoqIFBvc2l0aW9uIHN0cmF0ZWd5IHRvIGJlIHVzZWQgZm9yIHRoZSBvdmVybGF5LiAqL1xuICBwb3NpdGlvblN0cmF0ZWd5PzogUG9zaXRpb25TdHJhdGVneTtcblxuICAvKiogQ3VzdG9tIGNsYXNzIGZvciB0aGUgb3ZlcmxheSBjb250YWluZXIuICovXG4gIGNvbnRhaW5lckNsYXNzPzogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgLyoqIEN1c3RvbSBjbGFzcyBmb3IgdGhlIG92ZXJsYXkgcGFuZS4gKi9cbiAgcGFuZUNsYXNzPzogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgLyoqIEV4dHJhIENTUyBjbGFzc2VzIHRvIGJlIGFkZGVkIHRvIHRoZSBvdmVybGF5IG92ZXJsYXkgY29udGFpbmVyLiAqL1xuICBvdmVybGF5Q2xhc3M/OiBzdHJpbmcgfCBzdHJpbmdbXTtcblxuICAvKiogQ3VzdG9tIGNsYXNzIGZvciB0aGUgYmFja2Ryb3AuICovXG4gIGJhY2tkcm9wQ2xhc3M/OiBzdHJpbmcgfCBzdHJpbmdbXTtcblxuICAvKiogUG9zaXRpb24gb3ZlcnJpZGVzLiAqL1xuICBwb3NpdGlvbj86IE92ZXJsYXlQb3NpdGlvbjtcblxuICAvKiogRGV0ZXJtaW5lIGlmIGFuZCBpbiB3aGF0IGRpcmVjdGlvbiB0aGUgb3ZlcmxheSBzaG91bGQgYmUgYWJsZSB0byBiZSBkcmFnZ2VkIHRvIGRpc21pc3MgaXQuICovXG4gIGRyYWdUb0Rpc21pc3M/OiBPdmVybGF5RHJhZ1RvRGlzbWlzc0NvbmZpZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdmVybGF5QnJlYWtwb2ludENvbmZpZ0VudHJ5IHtcbiAgLyoqXG4gICAqIEJyZWFrcG9pbnQgdG8gYXBwbHkgdGhlIGNvbmZpZyBmb3IuIElmIGEgbnVtYmVyIGlzIHByb3ZpZGVkLCBpdCB3aWxsIGJlIHVzZWQgYXMgYSBwaXhlbCB2YWx1ZS5cbiAgICogQWx3YXlzIHVzZXMgdGhlIG1pbi13aWR0aCBtZWRpYSBxdWVyeS5cbiAgICpcbiAgICogQGRlZmF1bHQgJ3hzJyAvLyAwcHhcbiAgICovXG4gIGJyZWFrcG9pbnQ/OiBCcmVha3BvaW50IHwgbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBPdmVybGF5IGNvbmZpZ3VyYXRpb24gdG8gYmUgYXBwbGllZCB3aGVuIHRoZSBicmVha3BvaW50IGlzIGFjdGl2ZS5cbiAgICovXG4gIGNvbmZpZzogT3ZlcmxheUJyZWFrcG9pbnRDb25maWc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3ZlcmxheUNvbmZpZzxEID0gdW5rbm93bj4ge1xuICAvKipcbiAgICogQ29uZGl0aW9uYWxseSBhcHBsaWVkIG92ZXJsYXkgY29uZmlndXJhdGlvbnMgYmFzZWQgb24gYnJlYWtwb2ludHMuXG4gICAqL1xuICBwb3NpdGlvbnM6IE92ZXJsYXlCcmVha3BvaW50Q29uZmlnRW50cnlbXTtcblxuICAvKipcbiAgICogV2hlcmUgdGhlIGF0dGFjaGVkIGNvbXBvbmVudCBzaG91bGQgbGl2ZSBpbiBBbmd1bGFyJ3MgKmxvZ2ljYWwqIGNvbXBvbmVudCB0cmVlLlxuICAgKiBUaGlzIGFmZmVjdHMgd2hhdCBpcyBhdmFpbGFibGUgZm9yIGluamVjdGlvbiBhbmQgdGhlIGNoYW5nZSBkZXRlY3Rpb24gb3JkZXIgZm9yIHRoZVxuICAgKiBjb21wb25lbnQgaW5zdGFudGlhdGVkIGluc2lkZSBvZiB0aGUgb3ZlcmxheS4gVGhpcyBkb2VzIG5vdCBhZmZlY3Qgd2hlcmUgdGhlIG92ZXJsYXlcbiAgICogY29udGVudCB3aWxsIGJlIHJlbmRlcmVkLlxuICAgKi9cbiAgdmlld0NvbnRhaW5lclJlZj86IFZpZXdDb250YWluZXJSZWY7XG5cbiAgLyoqXG4gICAqIEluamVjdG9yIHVzZWQgZm9yIHRoZSBpbnN0YW50aWF0aW9uIG9mIHRoZSBjb21wb25lbnQgdG8gYmUgYXR0YWNoZWQuIElmIHByb3ZpZGVkLFxuICAgKiB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgdGhlIGluamVjdG9yIGluZGlyZWN0bHkgcHJvdmlkZWQgYnkgYFZpZXdDb250YWluZXJSZWZgLlxuICAgKi9cbiAgaW5qZWN0b3I/OiBJbmplY3RvcjtcblxuICAvKiogSUQgZm9yIHRoZSBvdmVybGF5LiBJZiBvbWl0dGVkLCBhIHVuaXF1ZSBvbmUgd2lsbCBiZSBnZW5lcmF0ZWQuICovXG4gIGlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJJQSByb2xlIG9mIHRoZSBvdmVybGF5IGVsZW1lbnQuXG4gICAqIEBkZWZhdWx0ICdkaWFsb2cnXG4gICAqL1xuICByb2xlPzogT3ZlcmxheVJvbGU7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIG92ZXJsYXkgaGFzIGEgYmFja2Ryb3AuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIGhhc0JhY2tkcm9wPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgdXNlciBjYW4gdXNlIGVzY2FwZSBvciBjbGlja2luZyBvbiB0aGUgYmFja2Ryb3AgdG8gY2xvc2UgdGhlIG1vZGFsLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgZGlzYWJsZUNsb3NlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGF0YSBiZWluZyBpbmplY3RlZCBpbnRvIHRoZSBjaGlsZCBjb21wb25lbnQuXG4gICAqIEBkZWZhdWx0IG51bGxcbiAgICovXG4gIGRhdGE/OiBEIHwgbnVsbDtcblxuICAvKiogTGF5b3V0IGRpcmVjdGlvbiBmb3IgdGhlIG92ZXJsYXkncyBjb250ZW50LiAqL1xuICBkaXJlY3Rpb24/OiBEaXJlY3Rpb247XG5cbiAgLyoqXG4gICAqIElEIG9mIHRoZSBlbGVtZW50IHRoYXQgZGVzY3JpYmVzIHRoZSBvdmVybGF5LlxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqL1xuICBhcmlhRGVzY3JpYmVkQnk/OiBzdHJpbmcgfCBudWxsO1xuXG4gIC8qKlxuICAgKiBJRCBvZiB0aGUgZWxlbWVudCB0aGF0IGxhYmVscyB0aGUgb3ZlcmxheS5cbiAgICogQGRlZmF1bHQgbnVsbFxuICAgKi9cbiAgYXJpYUxhYmVsbGVkQnk/OiBzdHJpbmcgfCBudWxsO1xuXG4gIC8qKlxuICAgKiBBcmlhIGxhYmVsIHRvIGFzc2lnbiB0byB0aGUgb3ZlcmxheSBlbGVtZW50LlxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqL1xuICBhcmlhTGFiZWw/OiBzdHJpbmcgfCBudWxsO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoaXMgaXMgYSBtb2RhbCBvdmVybGF5LiBVc2VkIHRvIHNldCB0aGUgYGFyaWEtbW9kYWxgIGF0dHJpYnV0ZS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgYXJpYU1vZGFsPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgb3ZlcmxheSB1c2VzIGEgY3VzdG9tIGFuaW1hdGlvbi5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIGN1c3RvbUFuaW1hdGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hlcmUgdGhlIG92ZXJsYXkgc2hvdWxkIGZvY3VzIG9uIG9wZW4uXG4gICAqIENhbiBiZSBvbmUgb2YgQXV0b0ZvY3VzVGFyZ2V0LCBvciBhIGNzcyBzZWxlY3RvciBzdHJpbmcuXG4gICAqIEBkZWZhdWx0ICdmaXJzdC10YWJiYWJsZSdcbiAgICovXG4gIGF1dG9Gb2N1cz86IE92ZXJsYXlBdXRvRm9jdXNUYXJnZXQgfCBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIG92ZXJsYXkgc2hvdWxkIHJlc3RvcmUgZm9jdXMgdG8gdGhlXG4gICAqIHByZXZpb3VzbHktZm9jdXNlZCBlbGVtZW50LCBhZnRlciBpdCdzIGNsb3NlZC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVzdG9yZUZvY3VzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byB3YWl0IGZvciB0aGUgb3BlbmluZyBhbmltYXRpb24gdG8gZmluaXNoIGJlZm9yZSB0cmFwcGluZyBmb2N1cy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgZGVsYXlGb2N1c1RyYXA/OiBib29sZWFuO1xuXG4gIC8qKiBTY3JvbGwgc3RyYXRlZ3kgdG8gYmUgdXNlZCBmb3IgdGhlIG92ZXJsYXkuICovXG4gIHNjcm9sbFN0cmF0ZWd5PzogU2Nyb2xsU3RyYXRlZ3k7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIG92ZXJsYXkgc2hvdWxkIGNsb3NlIHdoZW4gdGhlIHVzZXIgZ29lcyBiYWNrd2FyZHMvZm9yd2FyZHMgaW4gaGlzdG9yeS5cbiAgICogTm90ZSB0aGF0IHRoaXMgdXN1YWxseSBkb2Vzbid0IGluY2x1ZGUgY2xpY2tpbmcgb24gbGlua3MgKHVubGVzcyB0aGUgdXNlciBpcyB1c2luZ1xuICAgKiB0aGUgYEhhc2hMb2NhdGlvblN0cmF0ZWd5YCkuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIGNsb3NlT25OYXZpZ2F0aW9uPzogYm9vbGVhbjtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './overlay.types';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvb3ZlcmxheS90eXBlcy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL292ZXJsYXkudHlwZXMnO1xuIl19
@@ -0,0 +1,2 @@
1
+ export * from './public-api';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL292ZXJsYXkvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,7 @@
1
+ import { OVERLAY_DEFAULT_CONFIG } from '../constants';
2
+ export const createOverlayConfig = (globalConfig, localConfig) => ({
3
+ ...OVERLAY_DEFAULT_CONFIG,
4
+ ...(globalConfig || {}),
5
+ ...(localConfig || {}),
6
+ });
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL292ZXJsYXkvdXRpbHMvb3ZlcmxheS1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBR3RELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQ2pDLFlBQTJELEVBQzNELFdBQTBELEVBQ3hDLEVBQUUsQ0FBQyxDQUFDO0lBQ3RCLEdBQUksc0JBQTJDO0lBQy9DLEdBQUcsQ0FBQyxZQUFZLElBQUksRUFBRSxDQUFDO0lBQ3ZCLEdBQUcsQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDO0NBQ3ZCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9WRVJMQVlfREVGQVVMVF9DT05GSUcgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgT3ZlcmxheUNvbmZpZyB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZU92ZXJsYXlDb25maWcgPSA8RCA9IHVua25vd24+KFxuICBnbG9iYWxDb25maWc/OiBQYXJ0aWFsPE92ZXJsYXlDb25maWc8RD4+IHwgbnVsbCB8IHVuZGVmaW5lZCxcbiAgbG9jYWxDb25maWc/OiBQYXJ0aWFsPE92ZXJsYXlDb25maWc8RD4+IHwgbnVsbCB8IHVuZGVmaW5lZCxcbik6IE92ZXJsYXlDb25maWc8RD4gPT4gKHtcbiAgLi4uKE9WRVJMQVlfREVGQVVMVF9DT05GSUcgYXMgT3ZlcmxheUNvbmZpZzxEPiksXG4gIC4uLihnbG9iYWxDb25maWcgfHwge30pLFxuICAuLi4obG9jYWxDb25maWcgfHwge30pLFxufSk7XG4iXX0=
@@ -0,0 +1,151 @@
1
+ import { Overlay } from '@angular/cdk/overlay';
2
+ import { inject } from '@angular/core';
3
+ export class OverlayPositionBuilder {
4
+ constructor() {
5
+ this._overlay = inject(Overlay);
6
+ this.DEFAULTS = {
7
+ dialog: {
8
+ width: undefined,
9
+ height: undefined,
10
+ maxHeight: '80vh',
11
+ maxWidth: '80vw',
12
+ minHeight: undefined,
13
+ minWidth: undefined,
14
+ containerClass: 'et-overlay--dialog',
15
+ positionStrategy: this._overlay.position().global().centerHorizontally().centerVertically(),
16
+ },
17
+ fullScreenDialog: {
18
+ width: '100%',
19
+ height: '100%',
20
+ maxHeight: undefined,
21
+ maxWidth: undefined,
22
+ minHeight: undefined,
23
+ minWidth: undefined,
24
+ containerClass: 'et-overlay--full-screen-dialog',
25
+ positionStrategy: this._overlay.position().global().left('0').top('0').bottom('0').right('0'),
26
+ },
27
+ bottomSheet: {
28
+ width: '100%',
29
+ height: undefined,
30
+ maxHeight: 'calc(100% - 72px)',
31
+ maxWidth: '640px',
32
+ minHeight: undefined,
33
+ minWidth: undefined,
34
+ containerClass: 'et-overlay--bottom-sheet',
35
+ positionStrategy: this._overlay.position().global().centerHorizontally().bottom('0'),
36
+ dragToDismiss: {
37
+ direction: 'to-bottom',
38
+ },
39
+ },
40
+ topSheet: {
41
+ width: '100%',
42
+ height: undefined,
43
+ maxHeight: 'calc(100% - 72px)',
44
+ maxWidth: '640px',
45
+ minHeight: undefined,
46
+ minWidth: undefined,
47
+ containerClass: 'et-overlay--top-sheet',
48
+ positionStrategy: this._overlay.position().global().centerHorizontally().top('0'),
49
+ dragToDismiss: {
50
+ direction: 'to-top',
51
+ },
52
+ },
53
+ leftSheet: {
54
+ width: '100%',
55
+ height: '100%',
56
+ maxHeight: undefined,
57
+ maxWidth: '640px',
58
+ minHeight: undefined,
59
+ minWidth: undefined,
60
+ containerClass: 'et-overlay--left-sheet',
61
+ positionStrategy: this._overlay.position().global().left('0').centerVertically(),
62
+ dragToDismiss: {
63
+ direction: 'to-left',
64
+ },
65
+ },
66
+ rightSheet: {
67
+ width: '100%',
68
+ height: '100%',
69
+ maxHeight: undefined,
70
+ maxWidth: '640px',
71
+ minHeight: undefined,
72
+ minWidth: undefined,
73
+ containerClass: 'et-overlay--right-sheet',
74
+ positionStrategy: this._overlay.position().global().right('0').centerVertically(),
75
+ dragToDismiss: {
76
+ direction: 'to-right',
77
+ },
78
+ },
79
+ };
80
+ }
81
+ transformingBottomSheetToDialog(customConfig) {
82
+ const data = [
83
+ {
84
+ config: this.mergeConfigs(this.DEFAULTS.bottomSheet, customConfig?.bottomSheet ?? {}),
85
+ },
86
+ {
87
+ breakpoint: 'md',
88
+ config: this.mergeConfigs(this.DEFAULTS.dialog, customConfig?.dialog ?? {}),
89
+ },
90
+ ];
91
+ return data;
92
+ }
93
+ dialog(customConfig) {
94
+ const data = [
95
+ {
96
+ config: this.mergeConfigs(this.DEFAULTS.dialog, customConfig ?? {}),
97
+ },
98
+ ];
99
+ return data;
100
+ }
101
+ fullScreenDialog(customConfig) {
102
+ const data = [
103
+ {
104
+ config: this.mergeConfigs(this.DEFAULTS.fullScreenDialog, customConfig ?? {}),
105
+ },
106
+ ];
107
+ return data;
108
+ }
109
+ bottomSheet(customConfig) {
110
+ const data = [
111
+ {
112
+ config: this.mergeConfigs(this.DEFAULTS.bottomSheet, customConfig ?? {}),
113
+ },
114
+ ];
115
+ return data;
116
+ }
117
+ topSheet(customConfig) {
118
+ const data = [
119
+ {
120
+ config: this.mergeConfigs(this.DEFAULTS.topSheet, customConfig ?? {}),
121
+ },
122
+ ];
123
+ return data;
124
+ }
125
+ leftSheet(customConfig) {
126
+ const data = [
127
+ {
128
+ config: this.mergeConfigs(this.DEFAULTS.leftSheet, customConfig ?? {}),
129
+ },
130
+ ];
131
+ return data;
132
+ }
133
+ rightSheet(customConfig) {
134
+ const data = [
135
+ {
136
+ config: this.mergeConfigs(this.DEFAULTS.rightSheet, customConfig ?? {}),
137
+ },
138
+ ];
139
+ return data;
140
+ }
141
+ mergeConfigs(...configs) {
142
+ const config = configs.reduce((acc, curr) => {
143
+ return {
144
+ ...acc,
145
+ ...curr,
146
+ };
147
+ }, {});
148
+ return config;
149
+ }
150
+ }
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1wb3NpdGlvbi1idWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL292ZXJsYXkvY29tcG9uZW50cy9vdmVybGF5L3V0aWxzL292ZXJsYXktcG9zaXRpb24tYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd2QyxNQUFNLE9BQU8sc0JBQXNCO0lBQW5DO1FBQ21CLGFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFbkMsYUFBUSxHQUFHO1lBQ2xCLE1BQU0sRUFBRTtnQkFDTixLQUFLLEVBQUUsU0FBUztnQkFDaEIsTUFBTSxFQUFFLFNBQVM7Z0JBQ2pCLFNBQVMsRUFBRSxNQUFNO2dCQUNqQixRQUFRLEVBQUUsTUFBTTtnQkFDaEIsU0FBUyxFQUFFLFNBQVM7Z0JBQ3BCLFFBQVEsRUFBRSxTQUFTO2dCQUNuQixjQUFjLEVBQUUsb0JBQW9CO2dCQUNwQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLGtCQUFrQixFQUFFLENBQUMsZ0JBQWdCLEVBQUU7YUFDNUY7WUFDRCxnQkFBZ0IsRUFBRTtnQkFDaEIsS0FBSyxFQUFFLE1BQU07Z0JBQ2IsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsU0FBUyxFQUFFLFNBQVM7Z0JBQ3BCLFFBQVEsRUFBRSxTQUFTO2dCQUNuQixTQUFTLEVBQUUsU0FBUztnQkFDcEIsUUFBUSxFQUFFLFNBQVM7Z0JBQ25CLGNBQWMsRUFBRSxnQ0FBZ0M7Z0JBQ2hELGdCQUFnQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxFQUFF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R0FBbUM7WUFDM0M7Z0JBQ0UsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsWUFBWSxJQUFJLEVBQUUsQ0FBQzthQUN4RTtTQUNGLENBQUM7UUFFRixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxZQUFZLENBQUMsR0FBRyxPQUFrQztRQUNoRCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFO1lBQzFDLE9BQU87Z0JBQ0wsR0FBRyxHQUFHO2dCQUNOLEdBQUcsSUFBSTthQUNSLENBQUM7UUFDSixDQUFDLEVBQUUsRUFBNkIsQ0FBQyxDQUFDO1FBRWxDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE92ZXJsYXlCcmVha3BvaW50Q29uZmlnLCBPdmVybGF5QnJlYWtwb2ludENvbmZpZ0VudHJ5IH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgT3ZlcmxheVBvc2l0aW9uQnVpbGRlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX292ZXJsYXkgPSBpbmplY3QoT3ZlcmxheSk7XG5cbiAgcmVhZG9ubHkgREVGQVVMVFMgPSB7XG4gICAgZGlhbG9nOiB7XG4gICAgICB3aWR0aDogdW5kZWZpbmVkLFxuICAgICAgaGVpZ2h0OiB1bmRlZmluZWQsXG4gICAgICBtYXhIZWlnaHQ6ICc4MHZoJyxcbiAgICAgIG1heFdpZHRoOiAnODB2dycsXG4gICAgICBtaW5IZWlnaHQ6IHVuZGVmaW5lZCxcbiAgICAgIG1pbldpZHRoOiB1bmRlZmluZWQsXG4gICAgICBjb250YWluZXJDbGFzczogJ2V0LW92ZXJsYXktLWRpYWxvZycsXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLl9vdmVybGF5LnBvc2l0aW9uKCkuZ2xvYmFsKCkuY2VudGVySG9yaXpvbnRhbGx5KCkuY2VudGVyVmVydGljYWxseSgpLFxuICAgIH0sXG4gICAgZnVsbFNjcmVlbkRpYWxvZzoge1xuICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgIGhlaWdodDogJzEwMCUnLFxuICAgICAgbWF4SGVpZ2h0OiB1bmRlZmluZWQsXG4gICAgICBtYXhXaWR0aDogdW5kZWZpbmVkLFxuICAgICAgbWluSGVpZ2h0OiB1bmRlZmluZWQsXG4gICAgICBtaW5XaWR0aDogdW5kZWZpbmVkLFxuICAgICAgY29udGFpbmVyQ2xhc3M6ICdldC1vdmVybGF5LS1mdWxsLXNjcmVlbi1kaWFsb2cnLFxuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5fb3ZlcmxheS5wb3NpdGlvbigpLmdsb2JhbCgpLmxlZnQoJzAnKS50b3AoJzAnKS5ib3R0b20oJzAnKS5yaWdodCgnMCcpLFxuICAgIH0sXG4gICAgYm90dG9tU2hlZXQ6IHtcbiAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICBoZWlnaHQ6IHVuZGVmaW5lZCxcbiAgICAgIG1heEhlaWdodDogJ2NhbGMoMTAwJSAtIDcycHgpJyxcbiAgICAgIG1heFdpZHRoOiAnNjQwcHgnLFxuICAgICAgbWluSGVpZ2h0OiB1bmRlZmluZWQsXG4gICAgICBtaW5XaWR0aDogdW5kZWZpbmVkLFxuICAgICAgY29udGFpbmVyQ2xhc3M6ICdldC1vdmVybGF5LS1ib3R0b20tc2hlZXQnLFxuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5fb3ZlcmxheS5wb3NpdGlvbigpLmdsb2JhbCgpLmNlbnRlckhvcml6b250YWxseSgpLmJvdHRvbSgnMCcpLFxuICAgICAgZHJhZ1RvRGlzbWlzczoge1xuICAgICAgICBkaXJlY3Rpb246ICd0by1ib3R0b20nLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHRvcFNoZWV0OiB7XG4gICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgaGVpZ2h0OiB1bmRlZmluZWQsXG4gICAgICBtYXhIZWlnaHQ6ICdjYWxjKDEwMCUgLSA3MnB4KScsXG4gICAgICBtYXhXaWR0aDogJzY0MHB4JyxcbiAgICAgIG1pbkhlaWdodDogdW5kZWZpbmVkLFxuICAgICAgbWluV2lkdGg6IHVuZGVmaW5lZCxcbiAgICAgIGNvbnRhaW5lckNsYXNzOiAnZXQtb3ZlcmxheS0tdG9wLXNoZWV0JyxcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkucG9zaXRpb24oKS5nbG9iYWwoKS5jZW50ZXJIb3Jpem9udGFsbHkoKS50b3AoJzAnKSxcbiAgICAgIGRyYWdUb0Rpc21pc3M6IHtcbiAgICAgICAgZGlyZWN0aW9uOiAndG8tdG9wJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBsZWZ0U2hlZXQ6IHtcbiAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICAgIG1heEhlaWdodDogdW5kZWZpbmVkLFxuICAgICAgbWF4V2lkdGg6ICc2NDBweCcsXG4gICAgICBtaW5IZWlnaHQ6IHVuZGVmaW5lZCxcbiAgICAgIG1pbldpZHRoOiB1bmRlZmluZWQsXG4gICAgICBjb250YWluZXJDbGFzczogJ2V0LW92ZXJsYXktLWxlZnQtc2hlZXQnLFxuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5fb3ZlcmxheS5wb3NpdGlvbigpLmdsb2JhbCgpLmxlZnQoJzAnKS5jZW50ZXJWZXJ0aWNhbGx5KCksXG4gICAgICBkcmFnVG9EaXNtaXNzOiB7XG4gICAgICAgIGRpcmVjdGlvbjogJ3RvLWxlZnQnLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHJpZ2h0U2hlZXQ6IHtcbiAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICAgIG1heEhlaWdodDogdW5kZWZpbmVkLFxuICAgICAgbWF4V2lkdGg6ICc2NDBweCcsXG4gICAgICBtaW5IZWlnaHQ6IHVuZGVmaW5lZCxcbiAgICAgIG1pbldpZHRoOiB1bmRlZmluZWQsXG4gICAgICBjb250YWluZXJDbGFzczogJ2V0LW92ZXJsYXktLXJpZ2h0LXNoZWV0JyxcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkucG9zaXRpb24oKS5nbG9iYWwoKS5yaWdodCgnMCcpLmNlbnRlclZlcnRpY2FsbHkoKSxcbiAgICAgIGRyYWdUb0Rpc21pc3M6IHtcbiAgICAgICAgZGlyZWN0aW9uOiAndG8tcmlnaHQnLFxuICAgICAgfSxcbiAgICB9LFxuICB9IHNhdGlzZmllcyBSZWNvcmQ8c3RyaW5nLCBPdmVybGF5QnJlYWtwb2ludENvbmZpZz47XG5cbiAgdHJhbnNmb3JtaW5nQm90dG9tU2hlZXRUb0RpYWxvZyhjdXN0b21Db25maWc/OiB7XG4gICAgYm90dG9tU2hlZXQ/OiBPdmVybGF5QnJlYWtwb2ludENvbmZpZztcbiAgICBkaWFsb2c/OiBPdmVybGF5QnJlYWtwb2ludENvbmZpZztcbiAgfSkge1xuICAgIGNvbnN0IGRhdGE6IE92ZXJsYXlCcmVha3BvaW50Q29uZmlnRW50cnlbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgY29uZmlnOiB0aGlzLm1lcmdlQ29uZmlncyh0aGlzLkRFRkFVTFRTLmJvdHRvbVNoZWV0LCBjdXN0b21Db25maWc/LmJvdHRvbVNoZWV0ID8/IHt9KSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGJyZWFrcG9pbnQ6ICdtZCcsXG4gICAgICAgIGNvbmZpZzogdGhpcy5tZXJnZUNvbmZpZ3ModGhpcy5ERUZBVUxUUy5kaWFsb2csIGN1c3RvbUNvbmZpZz8uZGlhbG9nID8/IHt9KSxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgZGlhbG9nKGN1c3RvbUNvbmZpZz86IE92ZXJsYXlCcmVha3BvaW50Q29uZmlnKSB7XG4gICAgY29uc3QgZGF0YTogT3ZlcmxheUJyZWFrcG9pbnRDb25maWdFbnRyeVtdID0gW1xuICAgICAge1xuICAgICAgICBjb25maWc6IHRoaXMubWVyZ2VDb25maWdzKHRoaXMuREVGQVVMVFMuZGlhbG9nLCBjdXN0b21Db25maWcgPz8ge30pLFxuICAgICAgfSxcbiAgICBdO1xuXG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICBmdWxsU2NyZWVuRGlhbG9nKGN1c3RvbUNvbmZpZz86IE92ZXJsYXlCcmVha3BvaW50Q29uZmlnKSB7XG4gICAgY29uc3QgZGF0YTogT3ZlcmxheUJyZWFrcG9pbnRDb25maWdFbnRyeVtdID0gW1xuICAgICAge1xuICAgICAgICBjb25maWc6IHRoaXMubWVyZ2VDb25maWdzKHRoaXMuREVGQVVMVFMuZnVsbFNjcmVlbkRpYWxvZywgY3VzdG9tQ29uZmlnID8/IHt9KSxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgYm90dG9tU2hlZXQoY3VzdG9tQ29uZmlnPzogT3ZlcmxheUJyZWFrcG9pbnRDb25maWcpIHtcbiAgICBjb25zdCBkYXRhOiBPdmVybGF5QnJlYWtwb2ludENvbmZpZ0VudHJ5W10gPSBbXG4gICAgICB7XG4gICAgICAgIGNvbmZpZzogdGhpcy5tZXJnZUNvbmZpZ3ModGhpcy5ERUZBVUxUUy5ib3R0b21TaGVldCwgY3VzdG9tQ29uZmlnID8/IHt9KSxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgdG9wU2hlZXQoY3VzdG9tQ29uZmlnPzogT3ZlcmxheUJyZWFrcG9pbnRDb25maWcpIHtcbiAgICBjb25zdCBkYXRhOiBPdmVybGF5QnJlYWtwb2ludENvbmZpZ0VudHJ5W10gPSBbXG4gICAgICB7XG4gICAgICAgIGNvbmZpZzogdGhpcy5tZXJnZUNvbmZpZ3ModGhpcy5ERUZBVUxUUy50b3BTaGVldCwgY3VzdG9tQ29uZmlnID8/IHt9KSxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgbGVmdFNoZWV0KGN1c3RvbUNvbmZpZz86IE92ZXJsYXlCcmVha3BvaW50Q29uZmlnKSB7XG4gICAgY29uc3QgZGF0YTogT3ZlcmxheUJyZWFrcG9pbnRDb25maWdFbnRyeVtdID0gW1xuICAgICAge1xuICAgICAgICBjb25maWc6IHRoaXMubWVyZ2VDb25maWdzKHRoaXMuREVGQVVMVFMubGVmdFNoZWV0LCBjdXN0b21Db25maWcgPz8ge30pLFxuICAgICAgfSxcbiAgICBdO1xuXG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICByaWdodFNoZWV0KGN1c3RvbUNvbmZpZz86IE92ZXJsYXlCcmVha3BvaW50Q29uZmlnKSB7XG4gICAgY29uc3QgZGF0YTogT3ZlcmxheUJyZWFrcG9pbnRDb25maWdFbnRyeVtdID0gW1xuICAgICAge1xuICAgICAgICBjb25maWc6IHRoaXMubWVyZ2VDb25maWdzKHRoaXMuREVGQVVMVFMucmlnaHRTaGVldCwgY3VzdG9tQ29uZmlnID8/IHt9KSxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgbWVyZ2VDb25maWdzKC4uLmNvbmZpZ3M6IE92ZXJsYXlCcmVha3BvaW50Q29uZmlnW10pIHtcbiAgICBjb25zdCBjb25maWcgPSBjb25maWdzLnJlZHVjZSgoYWNjLCBjdXJyKSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5hY2MsXG4gICAgICAgIC4uLmN1cnIsXG4gICAgICB9O1xuICAgIH0sIHt9IGFzIE92ZXJsYXlCcmVha3BvaW50Q29uZmlnKTtcblxuICAgIHJldHVybiBjb25maWc7XG4gIH1cbn1cbiJdfQ==