@indice/ng-components 0.2.166 → 0.2.167

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 (183) hide show
  1. package/README.md +4 -4
  2. package/_styles.css +4270 -4270
  3. package/{esm2015/indice-ng-components.js → esm2020/indice-ng-components.mjs} +0 -0
  4. package/esm2020/lib/controls/advanced-search/advanced-search.component.mjs +112 -0
  5. package/esm2020/lib/controls/advanced-search/models.mjs +90 -0
  6. package/{esm2015/lib/controls/avatar-initials/avatar-initials.component.js → esm2020/lib/controls/avatar-initials/avatar-initials.component.mjs} +5 -8
  7. package/esm2020/lib/controls/collapsible-panel/collapsible-panel.component.mjs +20 -0
  8. package/esm2020/lib/controls/combobox/combobox.component.mjs +97 -0
  9. package/esm2020/lib/controls/date-picker/date-picker.component.mjs +292 -0
  10. package/esm2020/lib/controls/drop-down-menu/drop-down-menu.component.mjs +68 -0
  11. package/esm2020/lib/controls/kpi-tile/kpi-tile.component.mjs +39 -0
  12. package/esm2020/lib/controls/language-selection/language-selection.component.mjs +31 -0
  13. package/{esm2015/lib/controls/list-view/list-column.component.js → esm2020/lib/controls/list-view/list-column.component.mjs} +4 -4
  14. package/{esm2015/lib/controls/list-view/list-details-section.component.js → esm2020/lib/controls/list-view/list-details-section.component.mjs} +4 -4
  15. package/{esm2015/lib/controls/list-view/list-tile.component.js → esm2020/lib/controls/list-view/list-tile.component.mjs} +4 -4
  16. package/esm2020/lib/controls/list-view/list-view-empty-state.component.mjs +29 -0
  17. package/esm2020/lib/controls/list-view/list-view.component.mjs +206 -0
  18. package/esm2020/lib/controls/nav-links-list/nav-links-list.component.mjs +46 -0
  19. package/esm2020/lib/controls/notifications-indicator/notifications-indicator.component.mjs +79 -0
  20. package/esm2020/lib/controls/pager/pager.component.mjs +130 -0
  21. package/esm2020/lib/controls/side-pane/side-pane.component.mjs +72 -0
  22. package/esm2020/lib/controls/skeleton-loader/skeleton-loader.component.mjs +25 -0
  23. package/{esm2015/lib/controls/stepper/lib-step-info.directive.js → esm2020/lib/controls/stepper/lib-step-info.directive.mjs} +4 -4
  24. package/{esm2015/lib/controls/stepper/lib-step-label.directive.js → esm2020/lib/controls/stepper/lib-step-label.directive.mjs} +4 -4
  25. package/esm2020/lib/controls/stepper/lib-step.component.mjs +81 -0
  26. package/esm2020/lib/controls/stepper/lib-stepper.component.mjs +108 -0
  27. package/esm2020/lib/controls/stepper/types/step-selected-event.mjs +4 -0
  28. package/{esm2015/lib/controls/stepper/types/stepper-type.js → esm2020/lib/controls/stepper/types/stepper-type.mjs} +1 -1
  29. package/esm2020/lib/controls/tabs/lib-tab-group.component.mjs +60 -0
  30. package/esm2020/lib/controls/tabs/lib-tab.component.mjs +57 -0
  31. package/esm2020/lib/controls/toaster/toaster-container.component.mjs +28 -0
  32. package/esm2020/lib/controls/toaster/toaster.component.mjs +31 -0
  33. package/esm2020/lib/controls/toggle/toggle.component.mjs +64 -0
  34. package/esm2020/lib/controls/user-profile-menu/user-profile-menu.component.mjs +71 -0
  35. package/{esm2015/lib/directives/click-outside.directive.js → esm2020/lib/directives/click-outside.directive.mjs} +4 -4
  36. package/{esm2015/lib/directives/dynamic-component-host.directive.js → esm2020/lib/directives/dynamic-component-host.directive.mjs} +4 -4
  37. package/esm2020/lib/helpers/base-list.component.mjs +226 -0
  38. package/{esm2015/lib/icons.js → esm2020/lib/icons.mjs} +1 -1
  39. package/esm2020/lib/layouts/shell/shell-footer/shell-footer.component.mjs +19 -0
  40. package/esm2020/lib/layouts/shell/shell-header/shell-header.component.mjs +130 -0
  41. package/esm2020/lib/layouts/shell/shell-layout/shell-layout.component.mjs +101 -0
  42. package/esm2020/lib/layouts/shell/shell-sidebar/shell-sidebar.component.mjs +47 -0
  43. package/esm2020/lib/layouts/shell/shell-sidebar-header/shell-sidebar-header.component.mjs +45 -0
  44. package/esm2020/lib/layouts/shell/shell-sidebar-layout/shell-sidebar-layout.component.mjs +25 -0
  45. package/esm2020/lib/layouts/shell/shell-stacked-layout/shell-stacked-layout.component.mjs +21 -0
  46. package/esm2020/lib/layouts/views/form-layout/form-layout.component.mjs +80 -0
  47. package/esm2020/lib/layouts/views/model-view-layout/model-view-layout.component.mjs +49 -0
  48. package/esm2020/lib/layouts/views/side-view-layout/side-view-layout.component.mjs +98 -0
  49. package/esm2020/lib/layouts/views/view-layout/view-layout.component.mjs +104 -0
  50. package/{esm2015/lib/ng-components.module.js → esm2020/lib/ng-components.module.mjs} +8 -10
  51. package/esm2020/lib/pages/auth/auth-callback/auth-callback.component.mjs +30 -0
  52. package/{esm2015/lib/pages/auth/auth-renew/auth-renew.component.js → esm2020/lib/pages/auth/auth-renew/auth-renew.component.mjs} +4 -4
  53. package/esm2020/lib/pages/auth/logged-out/logged-out.component.mjs +28 -0
  54. package/esm2020/lib/pages/http-status/error/error.component.mjs +17 -0
  55. package/esm2020/lib/pages/http-status/page-not-found/page-not-found.component.mjs +15 -0
  56. package/esm2020/lib/pages/http-status/unauthorized/unauthorized.component.mjs +14 -0
  57. package/{esm2015/lib/pipes/address.pipe.js → esm2020/lib/pipes/address.pipe.mjs} +4 -4
  58. package/{esm2015/lib/pipes/duration-format.pipe.js → esm2020/lib/pipes/duration-format.pipe.mjs} +4 -4
  59. package/esm2020/lib/services/component-loader/component-loader-options.class.mjs +8 -0
  60. package/esm2020/lib/services/component-loader/component-loader.class.mjs +188 -0
  61. package/{esm2015/lib/services/component-loader/component-loader.factory.js → esm2020/lib/services/component-loader/component-loader.factory.mjs} +4 -4
  62. package/{esm2015/lib/services/component-loader/content-ref.class.js → esm2020/lib/services/component-loader/content-ref.class.mjs} +1 -1
  63. package/esm2020/lib/services/modal-service/modal-backdrop-component.mjs +44 -0
  64. package/esm2020/lib/services/modal-service/modal-container-component.mjs +126 -0
  65. package/esm2020/lib/services/modal-service/modal-options.class.mjs +35 -0
  66. package/esm2020/lib/services/modal-service/modal-service.mjs +219 -0
  67. package/{esm2015/lib/services/modal-service/modal-styles.class.js → esm2020/lib/services/modal-service/modal-styles.class.mjs} +1 -1
  68. package/esm2020/lib/services/modal-service/modal.class.mjs +27 -0
  69. package/{esm2015/lib/services/toaster.service.js → esm2020/lib/services/toaster.service.mjs} +4 -4
  70. package/{esm2015/lib/tokens.js → esm2020/lib/tokens.mjs} +1 -1
  71. package/{esm2015/lib/types.js → esm2020/lib/types.mjs} +1 -1
  72. package/{esm2015/public-api.js → esm2020/public-api.mjs} +1 -1
  73. package/fesm2015/indice-ng-components.mjs +4269 -0
  74. package/fesm2015/indice-ng-components.mjs.map +1 -0
  75. package/fesm2020/indice-ng-components.mjs +4196 -0
  76. package/fesm2020/indice-ng-components.mjs.map +1 -0
  77. package/{indice-ng-components.d.ts → index.d.ts} +0 -0
  78. package/lib/controls/advanced-search/advanced-search.component.d.ts +1 -1
  79. package/lib/controls/avatar-initials/avatar-initials.component.d.ts +1 -1
  80. package/lib/controls/collapsible-panel/collapsible-panel.component.d.ts +1 -1
  81. package/lib/controls/combobox/combobox.component.d.ts +1 -1
  82. package/lib/controls/date-picker/date-picker.component.d.ts +1 -1
  83. package/lib/controls/drop-down-menu/drop-down-menu.component.d.ts +1 -1
  84. package/lib/controls/kpi-tile/kpi-tile.component.d.ts +1 -1
  85. package/lib/controls/language-selection/language-selection.component.d.ts +1 -1
  86. package/lib/controls/list-view/list-column.component.d.ts +1 -1
  87. package/lib/controls/list-view/list-details-section.component.d.ts +1 -1
  88. package/lib/controls/list-view/list-tile.component.d.ts +1 -1
  89. package/lib/controls/list-view/list-view-empty-state.component.d.ts +1 -1
  90. package/lib/controls/list-view/list-view.component.d.ts +1 -1
  91. package/lib/controls/nav-links-list/nav-links-list.component.d.ts +1 -1
  92. package/lib/controls/notifications-indicator/notifications-indicator.component.d.ts +1 -1
  93. package/lib/controls/pager/pager.component.d.ts +1 -1
  94. package/lib/controls/side-pane/side-pane.component.d.ts +1 -1
  95. package/lib/controls/skeleton-loader/skeleton-loader.component.d.ts +1 -1
  96. package/lib/controls/stepper/lib-step-info.directive.d.ts +1 -1
  97. package/lib/controls/stepper/lib-step-label.directive.d.ts +1 -1
  98. package/lib/controls/stepper/lib-step.component.d.ts +1 -1
  99. package/lib/controls/stepper/lib-stepper.component.d.ts +1 -1
  100. package/lib/controls/tabs/lib-tab-group.component.d.ts +1 -1
  101. package/lib/controls/tabs/lib-tab.component.d.ts +1 -1
  102. package/lib/controls/toaster/toaster-container.component.d.ts +1 -1
  103. package/lib/controls/toaster/toaster.component.d.ts +1 -1
  104. package/lib/controls/toggle/toggle.component.d.ts +1 -1
  105. package/lib/controls/user-profile-menu/user-profile-menu.component.d.ts +1 -1
  106. package/lib/directives/click-outside.directive.d.ts +1 -1
  107. package/lib/directives/dynamic-component-host.directive.d.ts +1 -1
  108. package/lib/helpers/base-list.component.d.ts +1 -1
  109. package/lib/layouts/shell/shell-footer/shell-footer.component.d.ts +1 -1
  110. package/lib/layouts/shell/shell-header/shell-header.component.d.ts +1 -1
  111. package/lib/layouts/shell/shell-layout/shell-layout.component.d.ts +1 -1
  112. package/lib/layouts/shell/shell-sidebar/shell-sidebar.component.d.ts +1 -1
  113. package/lib/layouts/shell/shell-sidebar-header/shell-sidebar-header.component.d.ts +1 -1
  114. package/lib/layouts/shell/shell-sidebar-layout/shell-sidebar-layout.component.d.ts +1 -1
  115. package/lib/layouts/shell/shell-stacked-layout/shell-stacked-layout.component.d.ts +1 -1
  116. package/lib/layouts/views/form-layout/form-layout.component.d.ts +1 -1
  117. package/lib/layouts/views/model-view-layout/model-view-layout.component.d.ts +1 -1
  118. package/lib/layouts/views/side-view-layout/side-view-layout.component.d.ts +1 -1
  119. package/lib/layouts/views/view-layout/view-layout.component.d.ts +1 -1
  120. package/lib/pages/auth/auth-callback/auth-callback.component.d.ts +1 -1
  121. package/lib/pages/auth/auth-renew/auth-renew.component.d.ts +1 -1
  122. package/lib/pages/auth/logged-out/logged-out.component.d.ts +1 -1
  123. package/lib/pages/http-status/error/error.component.d.ts +1 -1
  124. package/lib/pages/http-status/page-not-found/page-not-found.component.d.ts +1 -1
  125. package/lib/pages/http-status/unauthorized/unauthorized.component.d.ts +1 -1
  126. package/lib/pipes/address.pipe.d.ts +1 -1
  127. package/lib/pipes/duration-format.pipe.d.ts +1 -1
  128. package/lib/services/modal-service/modal-backdrop-component.d.ts +1 -1
  129. package/lib/services/modal-service/modal-container-component.d.ts +1 -1
  130. package/modal.css +157 -157
  131. package/package.json +21 -8
  132. package/bundles/indice-ng-components.umd.js +0 -5003
  133. package/bundles/indice-ng-components.umd.js.map +0 -1
  134. package/esm2015/lib/controls/advanced-search/advanced-search.component.js +0 -116
  135. package/esm2015/lib/controls/advanced-search/models.js +0 -91
  136. package/esm2015/lib/controls/collapsible-panel/collapsible-panel.component.js +0 -23
  137. package/esm2015/lib/controls/combobox/combobox.component.js +0 -100
  138. package/esm2015/lib/controls/date-picker/date-picker.component.js +0 -301
  139. package/esm2015/lib/controls/drop-down-menu/drop-down-menu.component.js +0 -72
  140. package/esm2015/lib/controls/kpi-tile/kpi-tile.component.js +0 -42
  141. package/esm2015/lib/controls/language-selection/language-selection.component.js +0 -35
  142. package/esm2015/lib/controls/list-view/list-view-empty-state.component.js +0 -32
  143. package/esm2015/lib/controls/list-view/list-view.component.js +0 -209
  144. package/esm2015/lib/controls/nav-links-list/nav-links-list.component.js +0 -51
  145. package/esm2015/lib/controls/notifications-indicator/notifications-indicator.component.js +0 -82
  146. package/esm2015/lib/controls/pager/pager.component.js +0 -133
  147. package/esm2015/lib/controls/side-pane/side-pane.component.js +0 -76
  148. package/esm2015/lib/controls/skeleton-loader/skeleton-loader.component.js +0 -29
  149. package/esm2015/lib/controls/stepper/lib-step.component.js +0 -82
  150. package/esm2015/lib/controls/stepper/lib-stepper.component.js +0 -115
  151. package/esm2015/lib/controls/stepper/types/step-selected-event.js +0 -4
  152. package/esm2015/lib/controls/tabs/lib-tab-group.component.js +0 -67
  153. package/esm2015/lib/controls/tabs/lib-tab.component.js +0 -58
  154. package/esm2015/lib/controls/toaster/toaster-container.component.js +0 -31
  155. package/esm2015/lib/controls/toaster/toaster.component.js +0 -34
  156. package/esm2015/lib/controls/toggle/toggle.component.js +0 -68
  157. package/esm2015/lib/controls/user-profile-menu/user-profile-menu.component.js +0 -75
  158. package/esm2015/lib/helpers/base-list.component.js +0 -227
  159. package/esm2015/lib/layouts/shell/shell-footer/shell-footer.component.js +0 -22
  160. package/esm2015/lib/layouts/shell/shell-header/shell-header.component.js +0 -135
  161. package/esm2015/lib/layouts/shell/shell-layout/shell-layout.component.js +0 -106
  162. package/esm2015/lib/layouts/shell/shell-sidebar/shell-sidebar.component.js +0 -50
  163. package/esm2015/lib/layouts/shell/shell-sidebar-header/shell-sidebar-header.component.js +0 -48
  164. package/esm2015/lib/layouts/shell/shell-sidebar-layout/shell-sidebar-layout.component.js +0 -28
  165. package/esm2015/lib/layouts/shell/shell-stacked-layout/shell-stacked-layout.component.js +0 -24
  166. package/esm2015/lib/layouts/views/form-layout/form-layout.component.js +0 -85
  167. package/esm2015/lib/layouts/views/model-view-layout/model-view-layout.component.js +0 -53
  168. package/esm2015/lib/layouts/views/side-view-layout/side-view-layout.component.js +0 -101
  169. package/esm2015/lib/layouts/views/view-layout/view-layout.component.js +0 -110
  170. package/esm2015/lib/pages/auth/auth-callback/auth-callback.component.js +0 -34
  171. package/esm2015/lib/pages/auth/logged-out/logged-out.component.js +0 -32
  172. package/esm2015/lib/pages/http-status/error/error.component.js +0 -20
  173. package/esm2015/lib/pages/http-status/page-not-found/page-not-found.component.js +0 -18
  174. package/esm2015/lib/pages/http-status/unauthorized/unauthorized.component.js +0 -17
  175. package/esm2015/lib/services/component-loader/component-loader-options.class.js +0 -8
  176. package/esm2015/lib/services/component-loader/component-loader.class.js +0 -192
  177. package/esm2015/lib/services/modal-service/modal-backdrop-component.js +0 -44
  178. package/esm2015/lib/services/modal-service/modal-container-component.js +0 -128
  179. package/esm2015/lib/services/modal-service/modal-options.class.js +0 -35
  180. package/esm2015/lib/services/modal-service/modal-service.js +0 -220
  181. package/esm2015/lib/services/modal-service/modal.class.js +0 -27
  182. package/fesm2015/indice-ng-components.js +0 -4355
  183. package/fesm2015/indice-ng-components.js.map +0 -1
@@ -31,4 +31,4 @@ Icons.SortDesc = 'ms-Icon ms-Icon--Descending';
31
31
  Icons.Details = ' ms-Icon ms-Icon--AccountActivity';
32
32
  Icons.Messages = ' ms-Icon ms-Icon--Message';
33
33
  Icons.MessagesUnread = ' ms-Icon ms-Icon--MessageFill';
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvaWNvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLEtBQUs7O0FBQ2hCLDJDQUEyQztBQUM3QixlQUFTLEdBQUcsNkJBQTZCLENBQUM7QUFDMUMsZUFBUyxHQUFHLDBCQUEwQixDQUFDO0FBQ3ZDLGtCQUFZLEdBQUcsMkJBQTJCLENBQUM7QUFDM0MsaUJBQVcsR0FBRywrQkFBK0IsQ0FBQztBQUM5QyxZQUFNLEdBQUcsMkJBQTJCLENBQUM7QUFFckMsaUJBQVcsR0FBRyx1QkFBdUIsQ0FBQztBQUN0QyxhQUFPLEdBQUcsMEJBQTBCLENBQUM7QUFDckMsWUFBTSxHQUFHLHlCQUF5QixDQUFDO0FBQ25DLFNBQUcsR0FBRyxzQkFBc0IsQ0FBQztBQUM3QixZQUFNLEdBQUcseUJBQXlCLENBQUM7QUFDbkMsZUFBUyxHQUFHLDBCQUEwQixDQUFDO0FBQ3ZDLFlBQU0sR0FBRyx5QkFBeUIsQ0FBQztBQUNuQyxZQUFNLEdBQUcsZ0NBQWdDLENBQUM7QUFDMUMsWUFBTSxHQUFHLDRCQUE0QixDQUFDO0FBRXRDLGVBQVMsR0FBRyxpQ0FBaUMsQ0FBQztBQUM5QyxlQUFTLEdBQUcsd0JBQXdCLENBQUM7QUFDckMsYUFBTyxHQUFHLHlCQUF5QixDQUFDO0FBQ3BDLGVBQVMsR0FBRyw0QkFBNEIsQ0FBQztBQUV6QyxlQUFTLEdBQUcsdUNBQXVDLENBQUM7QUFFcEQsZ0JBQVUsR0FBRyx5QkFBeUIsQ0FBQztBQUV2QyxXQUFLLEdBQUcsd0JBQXdCLENBQUM7QUFDakMsaUJBQVcsR0FBRyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFRLEdBQUcsK0JBQStCLENBQUM7QUFFM0MsWUFBTSxHQUFHLDhCQUE4QixDQUFDO0FBQ3hDLGNBQVEsR0FBRyw0QkFBNEIsQ0FBQztBQUV4QyxhQUFPLEdBQUcsNEJBQTRCLENBQUM7QUFDdkMsY0FBUSxHQUFHLDZCQUE2QixDQUFDO0FBRXpDLGFBQU8sR0FBRyxtQ0FBbUMsQ0FBQztBQUU5QyxjQUFRLEdBQUcsMkJBQTJCLENBQUM7QUFDdkMsb0JBQWMsR0FBRywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBJY29ucyB7XHJcbiAgLy8gaHR0cHM6Ly91aWZhYnJpY2ljb25zLmF6dXJld2Vic2l0ZXMubmV0L1xyXG4gIHB1YmxpYyBzdGF0aWMgRGFzaGJvYXJkID0gYG1zLUljb24gbXMtSWNvbi0tSG9tZUdyb3VwIGA7XHJcbiAgcHVibGljIHN0YXRpYyBMb2NhdGlvbnMgPSBgbXMtSWNvbiBtcy1JY29uLS1NYXBQaW4gYDtcclxuICBwdWJsaWMgc3RhdGljIENoYXJnZVBvaW50cyA9IGBtcy1JY29uIG1zLUljb24tLUNoYXRCb3QgYDtcclxuICBwdWJsaWMgc3RhdGljIFRyYW5zYXRpb25zID0gYG1zLUljb24gbXMtSWNvbi0tUGF5bWVudENhcmQgYDtcclxuICBwdWJsaWMgc3RhdGljIEJhZGdlcyA9IGBtcy1JY29uIG1zLUljb24tLUlEQmFkZ2UgYDtcclxuXHJcbiAgcHVibGljIHN0YXRpYyBJbmZvcm1hdGlvbiA9IGBtcy1JY29uIG1zLUljb24tLUluZm9gO1xyXG4gIHB1YmxpYyBzdGF0aWMgUmVmcmVzaCA9IGBtcy1JY29uIG1zLUljb24tLVJlZnJlc2hgO1xyXG4gIHB1YmxpYyBzdGF0aWMgU2VhcmNoID0gYG1zLUljb24gbXMtSWNvbi0tU2VhcmNoYDtcclxuICBwdWJsaWMgc3RhdGljIEFkZCA9IGBtcy1JY29uIG1zLUljb24tLUFkZGA7XHJcbiAgcHVibGljIHN0YXRpYyBEZWxldGUgPSBgbXMtSWNvbiBtcy1JY29uLS1EZWxldGVgO1xyXG4gIHB1YmxpYyBzdGF0aWMgU2VuZEVtYWlsID0gYG1zLUljb24gbXMtSWNvbi0tTmV3TWFpbGA7XHJcbiAgcHVibGljIHN0YXRpYyBGaWx0ZXIgPSBgbXMtSWNvbiBtcy1JY29uLS1GaWx0ZXJgO1xyXG4gIHB1YmxpYyBzdGF0aWMgRXhwb3J0ID0gYG1zLUljb24gbXMtSWNvbi0tRXhjZWxEb2N1bWVudGA7XHJcbiAgcHVibGljIHN0YXRpYyBJbXBvcnQgPSBgbXMtSWNvbiBtcy1JY29uLS1QZW9wbGVBZGRgO1xyXG5cclxuICBwdWJsaWMgc3RhdGljIFRpbGVzVmlldyA9IGBtcy1JY29uIG1zLUljb24tLUFwcEljb25EZWZhdWx0YDtcclxuICBwdWJsaWMgc3RhdGljIFRhYmxlVmlldyA9IGBtcy1JY29uIG1zLUljb24tLVRhYmxlYDtcclxuICBwdWJsaWMgc3RhdGljIE1hcFZpZXcgPSBgbXMtSWNvbiBtcy1JY29uLS1NYXBQaW5gO1xyXG4gIHB1YmxpYyBzdGF0aWMgRW50cnlWaWV3ID0gYG1zLUljb24gbXMtSWNvbi0tRW50cnlWaWV3YDtcclxuXHJcbiAgcHVibGljIHN0YXRpYyBTZXBhcmF0b3IgPSBgbXMtSWNvbiBtcy1JY29uLS1TZXBhcmF0b3IgdGV4dC13aGl0ZWA7XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgSXRlbXNDb3VudCA9ICdtcy1JY29uIG1zLUljb24tLUJvYXJkcyc7XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgSGVhcnQgPSAnbXMtSWNvbiBtcy1JY29uLS1IZWFydCc7XHJcbiAgcHVibGljIHN0YXRpYyBIZWFydEJyb2tlbiA9ICdtcy1JY29uIG1zLUljb24tLUhlYXJ0QnJva2VuJztcclxuICBwdWJsaWMgc3RhdGljIERhdGVUaW1lID0gJ21zLUljb24gbXMtSWNvbi0tUmVtaW5kZXJUaW1lJztcclxuXHJcbiAgcHVibGljIHN0YXRpYyBFeHBhbmQgPSAnbXMtSWNvbiBtcy1JY29uLS1DaGV2cm9uRG93bic7XHJcbiAgcHVibGljIHN0YXRpYyBDb2xsYXBzZSA9ICdtcy1JY29uIG1zLUljb24tLUNoZXZyb25VcCc7XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgU29ydEFzYyA9ICdtcy1JY29uIG1zLUljb24tLUFzY2VuZGluZyc7XHJcbiAgcHVibGljIHN0YXRpYyBTb3J0RGVzYyA9ICdtcy1JY29uIG1zLUljb24tLURlc2NlbmRpbmcnO1xyXG5cclxuICBwdWJsaWMgc3RhdGljIERldGFpbHMgPSAnIG1zLUljb24gbXMtSWNvbi0tQWNjb3VudEFjdGl2aXR5JztcclxuXHJcbiAgcHVibGljIHN0YXRpYyBNZXNzYWdlcyA9ICcgbXMtSWNvbiBtcy1JY29uLS1NZXNzYWdlJztcclxuICBwdWJsaWMgc3RhdGljIE1lc3NhZ2VzVW5yZWFkID0gJyBtcy1JY29uIG1zLUljb24tLU1lc3NhZ2VGaWxsJztcclxufVxyXG4iXX0=
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvaWNvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLEtBQUs7O0FBQ2hCLDJDQUEyQztBQUM3QixlQUFTLEdBQUcsNkJBQTZCLENBQUM7QUFDMUMsZUFBUyxHQUFHLDBCQUEwQixDQUFDO0FBQ3ZDLGtCQUFZLEdBQUcsMkJBQTJCLENBQUM7QUFDM0MsaUJBQVcsR0FBRywrQkFBK0IsQ0FBQztBQUM5QyxZQUFNLEdBQUcsMkJBQTJCLENBQUM7QUFFckMsaUJBQVcsR0FBRyx1QkFBdUIsQ0FBQztBQUN0QyxhQUFPLEdBQUcsMEJBQTBCLENBQUM7QUFDckMsWUFBTSxHQUFHLHlCQUF5QixDQUFDO0FBQ25DLFNBQUcsR0FBRyxzQkFBc0IsQ0FBQztBQUM3QixZQUFNLEdBQUcseUJBQXlCLENBQUM7QUFDbkMsZUFBUyxHQUFHLDBCQUEwQixDQUFDO0FBQ3ZDLFlBQU0sR0FBRyx5QkFBeUIsQ0FBQztBQUNuQyxZQUFNLEdBQUcsZ0NBQWdDLENBQUM7QUFDMUMsWUFBTSxHQUFHLDRCQUE0QixDQUFDO0FBRXRDLGVBQVMsR0FBRyxpQ0FBaUMsQ0FBQztBQUM5QyxlQUFTLEdBQUcsd0JBQXdCLENBQUM7QUFDckMsYUFBTyxHQUFHLHlCQUF5QixDQUFDO0FBQ3BDLGVBQVMsR0FBRyw0QkFBNEIsQ0FBQztBQUV6QyxlQUFTLEdBQUcsdUNBQXVDLENBQUM7QUFFcEQsZ0JBQVUsR0FBRyx5QkFBeUIsQ0FBQztBQUV2QyxXQUFLLEdBQUcsd0JBQXdCLENBQUM7QUFDakMsaUJBQVcsR0FBRyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFRLEdBQUcsK0JBQStCLENBQUM7QUFFM0MsWUFBTSxHQUFHLDhCQUE4QixDQUFDO0FBQ3hDLGNBQVEsR0FBRyw0QkFBNEIsQ0FBQztBQUV4QyxhQUFPLEdBQUcsNEJBQTRCLENBQUM7QUFDdkMsY0FBUSxHQUFHLDZCQUE2QixDQUFDO0FBRXpDLGFBQU8sR0FBRyxtQ0FBbUMsQ0FBQztBQUU5QyxjQUFRLEdBQUcsMkJBQTJCLENBQUM7QUFDdkMsb0JBQWMsR0FBRywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBJY29ucyB7XG4gIC8vIGh0dHBzOi8vdWlmYWJyaWNpY29ucy5henVyZXdlYnNpdGVzLm5ldC9cbiAgcHVibGljIHN0YXRpYyBEYXNoYm9hcmQgPSBgbXMtSWNvbiBtcy1JY29uLS1Ib21lR3JvdXAgYDtcbiAgcHVibGljIHN0YXRpYyBMb2NhdGlvbnMgPSBgbXMtSWNvbiBtcy1JY29uLS1NYXBQaW4gYDtcbiAgcHVibGljIHN0YXRpYyBDaGFyZ2VQb2ludHMgPSBgbXMtSWNvbiBtcy1JY29uLS1DaGF0Qm90IGA7XG4gIHB1YmxpYyBzdGF0aWMgVHJhbnNhdGlvbnMgPSBgbXMtSWNvbiBtcy1JY29uLS1QYXltZW50Q2FyZCBgO1xuICBwdWJsaWMgc3RhdGljIEJhZGdlcyA9IGBtcy1JY29uIG1zLUljb24tLUlEQmFkZ2UgYDtcblxuICBwdWJsaWMgc3RhdGljIEluZm9ybWF0aW9uID0gYG1zLUljb24gbXMtSWNvbi0tSW5mb2A7XG4gIHB1YmxpYyBzdGF0aWMgUmVmcmVzaCA9IGBtcy1JY29uIG1zLUljb24tLVJlZnJlc2hgO1xuICBwdWJsaWMgc3RhdGljIFNlYXJjaCA9IGBtcy1JY29uIG1zLUljb24tLVNlYXJjaGA7XG4gIHB1YmxpYyBzdGF0aWMgQWRkID0gYG1zLUljb24gbXMtSWNvbi0tQWRkYDtcbiAgcHVibGljIHN0YXRpYyBEZWxldGUgPSBgbXMtSWNvbiBtcy1JY29uLS1EZWxldGVgO1xuICBwdWJsaWMgc3RhdGljIFNlbmRFbWFpbCA9IGBtcy1JY29uIG1zLUljb24tLU5ld01haWxgO1xuICBwdWJsaWMgc3RhdGljIEZpbHRlciA9IGBtcy1JY29uIG1zLUljb24tLUZpbHRlcmA7XG4gIHB1YmxpYyBzdGF0aWMgRXhwb3J0ID0gYG1zLUljb24gbXMtSWNvbi0tRXhjZWxEb2N1bWVudGA7XG4gIHB1YmxpYyBzdGF0aWMgSW1wb3J0ID0gYG1zLUljb24gbXMtSWNvbi0tUGVvcGxlQWRkYDtcblxuICBwdWJsaWMgc3RhdGljIFRpbGVzVmlldyA9IGBtcy1JY29uIG1zLUljb24tLUFwcEljb25EZWZhdWx0YDtcbiAgcHVibGljIHN0YXRpYyBUYWJsZVZpZXcgPSBgbXMtSWNvbiBtcy1JY29uLS1UYWJsZWA7XG4gIHB1YmxpYyBzdGF0aWMgTWFwVmlldyA9IGBtcy1JY29uIG1zLUljb24tLU1hcFBpbmA7XG4gIHB1YmxpYyBzdGF0aWMgRW50cnlWaWV3ID0gYG1zLUljb24gbXMtSWNvbi0tRW50cnlWaWV3YDtcblxuICBwdWJsaWMgc3RhdGljIFNlcGFyYXRvciA9IGBtcy1JY29uIG1zLUljb24tLVNlcGFyYXRvciB0ZXh0LXdoaXRlYDtcblxuICBwdWJsaWMgc3RhdGljIEl0ZW1zQ291bnQgPSAnbXMtSWNvbiBtcy1JY29uLS1Cb2FyZHMnO1xuXG4gIHB1YmxpYyBzdGF0aWMgSGVhcnQgPSAnbXMtSWNvbiBtcy1JY29uLS1IZWFydCc7XG4gIHB1YmxpYyBzdGF0aWMgSGVhcnRCcm9rZW4gPSAnbXMtSWNvbiBtcy1JY29uLS1IZWFydEJyb2tlbic7XG4gIHB1YmxpYyBzdGF0aWMgRGF0ZVRpbWUgPSAnbXMtSWNvbiBtcy1JY29uLS1SZW1pbmRlclRpbWUnO1xuXG4gIHB1YmxpYyBzdGF0aWMgRXhwYW5kID0gJ21zLUljb24gbXMtSWNvbi0tQ2hldnJvbkRvd24nO1xuICBwdWJsaWMgc3RhdGljIENvbGxhcHNlID0gJ21zLUljb24gbXMtSWNvbi0tQ2hldnJvblVwJztcblxuICBwdWJsaWMgc3RhdGljIFNvcnRBc2MgPSAnbXMtSWNvbiBtcy1JY29uLS1Bc2NlbmRpbmcnO1xuICBwdWJsaWMgc3RhdGljIFNvcnREZXNjID0gJ21zLUljb24gbXMtSWNvbi0tRGVzY2VuZGluZyc7XG5cbiAgcHVibGljIHN0YXRpYyBEZXRhaWxzID0gJyBtcy1JY29uIG1zLUljb24tLUFjY291bnRBY3Rpdml0eSc7XG5cbiAgcHVibGljIHN0YXRpYyBNZXNzYWdlcyA9ICcgbXMtSWNvbiBtcy1JY29uLS1NZXNzYWdlJztcbiAgcHVibGljIHN0YXRpYyBNZXNzYWdlc1VucmVhZCA9ICcgbXMtSWNvbiBtcy1JY29uLS1NZXNzYWdlRmlsbCc7XG59XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { Component, Inject } from '@angular/core';
2
+ import { APP_LINKS } from '../../../tokens';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class ShellFooterComponent {
6
+ constructor(links) {
7
+ this.links = links;
8
+ }
9
+ }
10
+ ShellFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ShellFooterComponent, deps: [{ token: APP_LINKS }], target: i0.ɵɵFactoryTarget.Component });
11
+ ShellFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: ShellFooterComponent, selector: "lib-shell-footer", ngImport: i0, template: "<footer class=\"shell-footer-component-container\">\n <div class=\"shell-footer-paddings\">\n <div class=\"shell-footer-component-container-inner\">\n <div class=\"shell-footer-sections-container\">\n <div class=\"shell-footer-section\">\n <img class=\"shell-footer-logo-h\" src=\"assets/images/branding/indice.png\" alt=\"INDICE logo\" />\n <nav class=\"mt-4\">\n <ul class=\"space-y-2\">\n <ng-container *ngFor=\"let link of links.brand | async\">\n <li>\n <a [href]=\"link.path\" class=\"shell-footer-link\">{{ link.text }}</a>\n </li>\n </ng-container>\n </ul>\n </nav>\n </div>\n <div class=\"shell-footer-section-links\">\n <h5 class=\"shell-footer-section-title\">Legal</h5>\n <nav class=\"mt-4\">\n <ul class=\"grid lg:grid-cols-2\">\n <ng-container *ngFor=\"let link of links.legal | async\">\n <li class=\"mb-2\">\n <a [href]=\"link.path\" class=\"shell-footer-link\">{{ link.text }}</a>\n </li>\n </ng-container>\n </ul>\n </nav>\n </div>\n <div class=\"shell-footer-section-links\">\n <h5 class=\"shell-footer-section-title\">Follow us</h5>\n <nav class=\"mt-4\">\n <ul class=\"grid lg:grid-cols-2\">\n <li class=\"mb-2\">\n <a href=\"#\" class=\"shell-footer-social\">\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path d=\"M8.29 20.251c7.547 0 11.675-6.253 11.675-11.675 0-.178 0-.355-.012-.53A8.348 8.348 0 0022 5.92a8.19 8.19 0 01-2.357.646 4.118 4.118 0 001.804-2.27 8.224 8.224 0 01-2.605.996 4.107 4.107 0 00-6.993 3.743 11.65 11.65 0 01-8.457-4.287 4.106 4.106 0 001.27 5.477A4.072 4.072 0 012.8 9.713v.052a4.105 4.105 0 003.292 4.022 4.095 4.095 0 01-1.853.07 4.108 4.108 0 003.834 2.85A8.233 8.233 0 012 18.407a11.616 11.616 0 006.29 1.84\"/>\n </svg>\n <span> Twitter </span>\n </a>\n </li>\n <li class=\"mb-2\">\n <a href=\"#\" class=\"shell-footer-social\">\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path fill-rule=\"evenodd\" d=\"M12.315 2c2.43 0 2.784.013 3.808.06 1.064.049 1.791.218 2.427.465a4.902 4.902 0 011.772 1.153 4.902 4.902 0 011.153 1.772c.247.636.416 1.363.465 2.427.048 1.067.06 1.407.06 4.123v.08c0 2.643-.012 2.987-.06 4.043-.049 1.064-.218 1.791-.465 2.427a4.902 4.902 0 01-1.153 1.772 4.902 4.902 0 01-1.772 1.153c-.636.247-1.363.416-2.427.465-1.067.048-1.407.06-4.123.06h-.08c-2.643 0-2.987-.012-4.043-.06-1.064-.049-1.791-.218-2.427-.465a4.902 4.902 0 01-1.772-1.153 4.902 4.902 0 01-1.153-1.772c-.247-.636-.416-1.363-.465-2.427-.047-1.024-.06-1.379-.06-3.808v-.63c0-2.43.013-2.784.06-3.808.049-1.064.218-1.791.465-2.427a4.902 4.902 0 011.153-1.772A4.902 4.902 0 015.45 2.525c.636-.247 1.363-.416 2.427-.465C8.901 2.013 9.256 2 11.685 2h.63zm-.081 1.802h-.468c-2.456 0-2.784.011-3.807.058-.975.045-1.504.207-1.857.344-.467.182-.8.398-1.15.748-.35.35-.566.683-.748 1.15-.137.353-.3.882-.344 1.857-.047 1.023-.058 1.351-.058 3.807v.468c0 2.456.011 2.784.058 3.807.045.975.207 1.504.344 1.857.182.466.399.8.748 1.15.35.35.683.566 1.15.748.353.137.882.3 1.857.344 1.054.048 1.37.058 4.041.058h.08c2.597 0 2.917-.01 3.96-.058.976-.045 1.505-.207 1.858-.344.466-.182.8-.398 1.15-.748.35-.35.566-.683.748-1.15.137-.353.3-.882.344-1.857.048-1.055.058-1.37.058-4.041v-.08c0-2.597-.01-2.917-.058-3.96-.045-.976-.207-1.505-.344-1.858a3.097 3.097 0 00-.748-1.15 3.098 3.098 0 00-1.15-.748c-.353-.137-.882-.3-1.857-.344-1.023-.047-1.351-.058-3.807-.058zM12 6.865a5.135 5.135 0 110 10.27 5.135 5.135 0 010-10.27zm0 1.802a3.333 3.333 0 100 6.666 3.333 3.333 0 000-6.666zm5.338-3.205a1.2 1.2 0 110 2.4 1.2 1.2 0 010-2.4z\" clip-rule=\"evenodd\"/>\n </svg>\n <span> Instagram </span>\n </a>\n </li>\n <li class=\"mb-2\">\n <a href=\"#\" class=\"shell-footer-social\">\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\" >\n <path fill-rule=\"evenodd\" d=\"M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12c0 4.991 3.657 9.128 8.438 9.878v-6.987h-2.54V12h2.54V9.797c0-2.506 1.492-3.89 3.777-3.89 1.094 0 2.238.195 2.238.195v2.46h-1.26c-1.243 0-1.63.771-1.63 1.562V12h2.773l-.443 2.89h-2.33v6.988C18.343 21.128 22 16.991 22 12z\" clip-rule=\"evenodd\"/>\n </svg>\n <span> Facebook </span>\n </a>\n </li>\n </ul>\n </nav>\n </div>\n </div>\n </div>\n <div class=\"shell-footer-copyright\">\n <!--<nav class=\"flex flex-wrap justify-center space-x-6\">\n <a href=\"#\" class=\"font-normal text-sm hover:text-gray-100 mb-2\">Cookie settings</a>\n </nav>-->\n <p class=\"text-sm text-center sm:text-right\">\n \u00A9 2021 INDICE. All rights reserved.\n </p>\n </div>\n </div>\n</footer>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ShellFooterComponent, decorators: [{
13
+ type: Component,
14
+ args: [{ selector: 'lib-shell-footer', template: "<footer class=\"shell-footer-component-container\">\n <div class=\"shell-footer-paddings\">\n <div class=\"shell-footer-component-container-inner\">\n <div class=\"shell-footer-sections-container\">\n <div class=\"shell-footer-section\">\n <img class=\"shell-footer-logo-h\" src=\"assets/images/branding/indice.png\" alt=\"INDICE logo\" />\n <nav class=\"mt-4\">\n <ul class=\"space-y-2\">\n <ng-container *ngFor=\"let link of links.brand | async\">\n <li>\n <a [href]=\"link.path\" class=\"shell-footer-link\">{{ link.text }}</a>\n </li>\n </ng-container>\n </ul>\n </nav>\n </div>\n <div class=\"shell-footer-section-links\">\n <h5 class=\"shell-footer-section-title\">Legal</h5>\n <nav class=\"mt-4\">\n <ul class=\"grid lg:grid-cols-2\">\n <ng-container *ngFor=\"let link of links.legal | async\">\n <li class=\"mb-2\">\n <a [href]=\"link.path\" class=\"shell-footer-link\">{{ link.text }}</a>\n </li>\n </ng-container>\n </ul>\n </nav>\n </div>\n <div class=\"shell-footer-section-links\">\n <h5 class=\"shell-footer-section-title\">Follow us</h5>\n <nav class=\"mt-4\">\n <ul class=\"grid lg:grid-cols-2\">\n <li class=\"mb-2\">\n <a href=\"#\" class=\"shell-footer-social\">\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path d=\"M8.29 20.251c7.547 0 11.675-6.253 11.675-11.675 0-.178 0-.355-.012-.53A8.348 8.348 0 0022 5.92a8.19 8.19 0 01-2.357.646 4.118 4.118 0 001.804-2.27 8.224 8.224 0 01-2.605.996 4.107 4.107 0 00-6.993 3.743 11.65 11.65 0 01-8.457-4.287 4.106 4.106 0 001.27 5.477A4.072 4.072 0 012.8 9.713v.052a4.105 4.105 0 003.292 4.022 4.095 4.095 0 01-1.853.07 4.108 4.108 0 003.834 2.85A8.233 8.233 0 012 18.407a11.616 11.616 0 006.29 1.84\"/>\n </svg>\n <span> Twitter </span>\n </a>\n </li>\n <li class=\"mb-2\">\n <a href=\"#\" class=\"shell-footer-social\">\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path fill-rule=\"evenodd\" d=\"M12.315 2c2.43 0 2.784.013 3.808.06 1.064.049 1.791.218 2.427.465a4.902 4.902 0 011.772 1.153 4.902 4.902 0 011.153 1.772c.247.636.416 1.363.465 2.427.048 1.067.06 1.407.06 4.123v.08c0 2.643-.012 2.987-.06 4.043-.049 1.064-.218 1.791-.465 2.427a4.902 4.902 0 01-1.153 1.772 4.902 4.902 0 01-1.772 1.153c-.636.247-1.363.416-2.427.465-1.067.048-1.407.06-4.123.06h-.08c-2.643 0-2.987-.012-4.043-.06-1.064-.049-1.791-.218-2.427-.465a4.902 4.902 0 01-1.772-1.153 4.902 4.902 0 01-1.153-1.772c-.247-.636-.416-1.363-.465-2.427-.047-1.024-.06-1.379-.06-3.808v-.63c0-2.43.013-2.784.06-3.808.049-1.064.218-1.791.465-2.427a4.902 4.902 0 011.153-1.772A4.902 4.902 0 015.45 2.525c.636-.247 1.363-.416 2.427-.465C8.901 2.013 9.256 2 11.685 2h.63zm-.081 1.802h-.468c-2.456 0-2.784.011-3.807.058-.975.045-1.504.207-1.857.344-.467.182-.8.398-1.15.748-.35.35-.566.683-.748 1.15-.137.353-.3.882-.344 1.857-.047 1.023-.058 1.351-.058 3.807v.468c0 2.456.011 2.784.058 3.807.045.975.207 1.504.344 1.857.182.466.399.8.748 1.15.35.35.683.566 1.15.748.353.137.882.3 1.857.344 1.054.048 1.37.058 4.041.058h.08c2.597 0 2.917-.01 3.96-.058.976-.045 1.505-.207 1.858-.344.466-.182.8-.398 1.15-.748.35-.35.566-.683.748-1.15.137-.353.3-.882.344-1.857.048-1.055.058-1.37.058-4.041v-.08c0-2.597-.01-2.917-.058-3.96-.045-.976-.207-1.505-.344-1.858a3.097 3.097 0 00-.748-1.15 3.098 3.098 0 00-1.15-.748c-.353-.137-.882-.3-1.857-.344-1.023-.047-1.351-.058-3.807-.058zM12 6.865a5.135 5.135 0 110 10.27 5.135 5.135 0 010-10.27zm0 1.802a3.333 3.333 0 100 6.666 3.333 3.333 0 000-6.666zm5.338-3.205a1.2 1.2 0 110 2.4 1.2 1.2 0 010-2.4z\" clip-rule=\"evenodd\"/>\n </svg>\n <span> Instagram </span>\n </a>\n </li>\n <li class=\"mb-2\">\n <a href=\"#\" class=\"shell-footer-social\">\n <svg class=\"shell-footer-social-icon\" aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\" >\n <path fill-rule=\"evenodd\" d=\"M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12c0 4.991 3.657 9.128 8.438 9.878v-6.987h-2.54V12h2.54V9.797c0-2.506 1.492-3.89 3.777-3.89 1.094 0 2.238.195 2.238.195v2.46h-1.26c-1.243 0-1.63.771-1.63 1.562V12h2.773l-.443 2.89h-2.33v6.988C18.343 21.128 22 16.991 22 12z\" clip-rule=\"evenodd\"/>\n </svg>\n <span> Facebook </span>\n </a>\n </li>\n </ul>\n </nav>\n </div>\n </div>\n </div>\n <div class=\"shell-footer-copyright\">\n <!--<nav class=\"flex flex-wrap justify-center space-x-6\">\n <a href=\"#\" class=\"font-normal text-sm hover:text-gray-100 mb-2\">Cookie settings</a>\n </nav>-->\n <p class=\"text-sm text-center sm:text-right\">\n \u00A9 2021 INDICE. All rights reserved.\n </p>\n </div>\n </div>\n</footer>\n" }]
15
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
16
+ type: Inject,
17
+ args: [APP_LINKS]
18
+ }] }]; } });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9sYXlvdXRzL3NoZWxsL3NoZWxsLWZvb3Rlci9zaGVsbC1mb290ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtZm9vdGVyL3NoZWxsLWZvb3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQVM1QyxNQUFNLE9BQU8sb0JBQW9CO0lBQzdCLFlBQXNDLEtBQWdCO1FBQWhCLFVBQUssR0FBTCxLQUFLLENBQVc7SUFDdEQsQ0FBQzs7aUhBRlEsb0JBQW9CLGtCQUNULFNBQVM7cUdBRHBCLG9CQUFvQix3RENWakMsb3ZLQXVFQTsyRkQ3RGEsb0JBQW9CO2tCQU5oQyxTQUFTOytCQUNFLGtCQUFrQjs7MEJBTWIsTUFBTTsyQkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFQUF9MSU5LUyB9IGZyb20gJy4uLy4uLy4uL3Rva2Vucyc7XG5pbXBvcnQgeyBJQXBwTGlua3MgfSBmcm9tICcuLi8uLi8uLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1zaGVsbC1mb290ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2hlbGwtZm9vdGVyLmNvbXBvbmVudC5odG1sJ1xuXG59KVxuXG5leHBvcnQgY2xhc3MgU2hlbGxGb290ZXJDb21wb25lbnQge1xuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoQVBQX0xJTktTKSBwdWJsaWMgbGlua3M6IElBcHBMaW5rcykge1xuICAgIH1cbn1cbiIsIjxmb290ZXIgY2xhc3M9XCJzaGVsbC1mb290ZXItY29tcG9uZW50LWNvbnRhaW5lclwiPlxuICA8ZGl2IGNsYXNzPVwic2hlbGwtZm9vdGVyLXBhZGRpbmdzXCI+XG4gICAgPGRpdiBjbGFzcz1cInNoZWxsLWZvb3Rlci1jb21wb25lbnQtY29udGFpbmVyLWlubmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwic2hlbGwtZm9vdGVyLXNlY3Rpb25zLWNvbnRhaW5lclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2hlbGwtZm9vdGVyLXNlY3Rpb25cIj5cbiAgICAgICAgICA8aW1nIGNsYXNzPVwic2hlbGwtZm9vdGVyLWxvZ28taFwiIHNyYz1cImFzc2V0cy9pbWFnZXMvYnJhbmRpbmcvaW5kaWNlLnBuZ1wiIGFsdD1cIklORElDRSBsb2dvXCIgLz5cbiAgICAgICAgICA8bmF2IGNsYXNzPVwibXQtNFwiPlxuICAgICAgICAgICAgPHVsIGNsYXNzPVwic3BhY2UteS0yXCI+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGxpbmsgb2YgbGlua3MuYnJhbmQgfCBhc3luY1wiPlxuICAgICAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgICAgIDxhIFtocmVmXT1cImxpbmsucGF0aFwiIGNsYXNzPVwic2hlbGwtZm9vdGVyLWxpbmtcIj57eyBsaW5rLnRleHQgfX08L2E+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICAgIDwvbmF2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWZvb3Rlci1zZWN0aW9uLWxpbmtzXCI+XG4gICAgICAgICAgPGg1IGNsYXNzPVwic2hlbGwtZm9vdGVyLXNlY3Rpb24tdGl0bGVcIj5MZWdhbDwvaDU+XG4gICAgICAgICAgPG5hdiBjbGFzcz1cIm10LTRcIj5cbiAgICAgICAgICAgIDx1bCBjbGFzcz1cImdyaWQgbGc6Z3JpZC1jb2xzLTJcIj5cbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbGluayBvZiBsaW5rcy5sZWdhbCB8IGFzeW5jXCI+XG4gICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibWItMlwiPlxuICAgICAgICAgICAgICAgICAgPGEgW2hyZWZdPVwibGluay5wYXRoXCIgY2xhc3M9XCJzaGVsbC1mb290ZXItbGlua1wiPnt7IGxpbmsudGV4dCB9fTwvYT5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgPC9uYXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2hlbGwtZm9vdGVyLXNlY3Rpb24tbGlua3NcIj5cbiAgICAgICAgICA8aDUgY2xhc3M9XCJzaGVsbC1mb290ZXItc2VjdGlvbi10aXRsZVwiPkZvbGxvdyB1czwvaDU+XG4gICAgICAgICAgPG5hdiBjbGFzcz1cIm10LTRcIj5cbiAgICAgICAgICAgIDx1bCBjbGFzcz1cImdyaWQgbGc6Z3JpZC1jb2xzLTJcIj5cbiAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibWItMlwiPlxuICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIjXCIgY2xhc3M9XCJzaGVsbC1mb290ZXItc29jaWFsXCI+XG4gICAgICAgICAgICAgICAgICA8c3ZnICBjbGFzcz1cInNoZWxsLWZvb3Rlci1zb2NpYWwtaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNOC4yOSAyMC4yNTFjNy41NDcgMCAxMS42NzUtNi4yNTMgMTEuNjc1LTExLjY3NSAwLS4xNzggMC0uMzU1LS4wMTItLjUzQTguMzQ4IDguMzQ4IDAgMDAyMiA1LjkyYTguMTkgOC4xOSAwIDAxLTIuMzU3LjY0NiA0LjExOCA0LjExOCAwIDAwMS44MDQtMi4yNyA4LjIyNCA4LjIyNCAwIDAxLTIuNjA1Ljk5NiA0LjEwNyA0LjEwNyAwIDAwLTYuOTkzIDMuNzQzIDExLjY1IDExLjY1IDAgMDEtOC40NTctNC4yODcgNC4xMDYgNC4xMDYgMCAwMDEuMjcgNS40NzdBNC4wNzIgNC4wNzIgMCAwMTIuOCA5LjcxM3YuMDUyYTQuMTA1IDQuMTA1IDAgMDAzLjI5MiA0LjAyMiA0LjA5NSA0LjA5NSAwIDAxLTEuODUzLjA3IDQuMTA4IDQuMTA4IDAgMDAzLjgzNCAyLjg1QTguMjMzIDguMjMzIDAgMDEyIDE4LjQwN2ExMS42MTYgMTEuNjE2IDAgMDA2LjI5IDEuODRcIi8+XG4gICAgICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgICAgICAgIDxzcGFuPiBUd2l0dGVyIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm1iLTJcIj5cbiAgICAgICAgICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwic2hlbGwtZm9vdGVyLXNvY2lhbFwiPlxuICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cInNoZWxsLWZvb3Rlci1zb2NpYWwtaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEyLjMxNSAyYzIuNDMgMCAyLjc4NC4wMTMgMy44MDguMDYgMS4wNjQuMDQ5IDEuNzkxLjIxOCAyLjQyNy40NjVhNC45MDIgNC45MDIgMCAwMTEuNzcyIDEuMTUzIDQuOTAyIDQuOTAyIDAgMDExLjE1MyAxLjc3MmMuMjQ3LjYzNi40MTYgMS4zNjMuNDY1IDIuNDI3LjA0OCAxLjA2Ny4wNiAxLjQwNy4wNiA0LjEyM3YuMDhjMCAyLjY0My0uMDEyIDIuOTg3LS4wNiA0LjA0My0uMDQ5IDEuMDY0LS4yMTggMS43OTEtLjQ2NSAyLjQyN2E0LjkwMiA0LjkwMiAwIDAxLTEuMTUzIDEuNzcyIDQuOTAyIDQuOTAyIDAgMDEtMS43NzIgMS4xNTNjLS42MzYuMjQ3LTEuMzYzLjQxNi0yLjQyNy40NjUtMS4wNjcuMDQ4LTEuNDA3LjA2LTQuMTIzLjA2aC0uMDhjLTIuNjQzIDAtMi45ODctLjAxMi00LjA0My0uMDYtMS4wNjQtLjA0OS0xLjc5MS0uMjE4LTIuNDI3LS40NjVhNC45MDIgNC45MDIgMCAwMS0xLjc3Mi0xLjE1MyA0LjkwMiA0LjkwMiAwIDAxLTEuMTUzLTEuNzcyYy0uMjQ3LS42MzYtLjQxNi0xLjM2My0uNDY1LTIuNDI3LS4wNDctMS4wMjQtLjA2LTEuMzc5LS4wNi0zLjgwOHYtLjYzYzAtMi40My4wMTMtMi43ODQuMDYtMy44MDguMDQ5LTEuMDY0LjIxOC0xLjc5MS40NjUtMi40MjdhNC45MDIgNC45MDIgMCAwMTEuMTUzLTEuNzcyQTQuOTAyIDQuOTAyIDAgMDE1LjQ1IDIuNTI1Yy42MzYtLjI0NyAxLjM2My0uNDE2IDIuNDI3LS40NjVDOC45MDEgMi4wMTMgOS4yNTYgMiAxMS42ODUgMmguNjN6bS0uMDgxIDEuODAyaC0uNDY4Yy0yLjQ1NiAwLTIuNzg0LjAxMS0zLjgwNy4wNTgtLjk3NS4wNDUtMS41MDQuMjA3LTEuODU3LjM0NC0uNDY3LjE4Mi0uOC4zOTgtMS4xNS43NDgtLjM1LjM1LS41NjYuNjgzLS43NDggMS4xNS0uMTM3LjM1My0uMy44ODItLjM0NCAxLjg1Ny0uMDQ3IDEuMDIzLS4wNTggMS4zNTEtLjA1OCAzLjgwN3YuNDY4YzAgMi40NTYuMDExIDIuNzg0LjA1OCAzLjgwNy4wNDUuOTc1LjIwNyAxLjUwNC4zNDQgMS44NTcuMTgyLjQ2Ni4zOTkuOC43NDggMS4xNS4zNS4zNS42ODMuNTY2IDEuMTUuNzQ4LjM1My4xMzcuODgyLjMgMS44NTcuMzQ0IDEuMDU0LjA0OCAxLjM3LjA1OCA0LjA0MS4wNThoLjA4YzIuNTk3IDAgMi45MTctLjAxIDMuOTYtLjA1OC45NzYtLjA0NSAxLjUwNS0uMjA3IDEuODU4LS4zNDQuNDY2LS4xODIuOC0uMzk4IDEuMTUtLjc0OC4zNS0uMzUuNTY2LS42ODMuNzQ4LTEuMTUuMTM3LS4zNTMuMy0uODgyLjM0NC0xLjg1Ny4wNDgtMS4wNTUuMDU4LTEuMzcuMDU4LTQuMDQxdi0uMDhjMC0yLjU5Ny0uMDEtMi45MTctLjA1OC0zLjk2LS4wNDUtLjk3Ni0uMjA3LTEuNTA1LS4zNDQtMS44NThhMy4wOTcgMy4wOTcgMCAwMC0uNzQ4LTEuMTUgMy4wOTggMy4wOTggMCAwMC0xLjE1LS43NDhjLS4zNTMtLjEzNy0uODgyLS4zLTEuODU3LS4zNDQtMS4wMjMtLjA0Ny0xLjM1MS0uMDU4LTMuODA3LS4wNTh6TTEyIDYuODY1YTUuMTM1IDUuMTM1IDAgMTEwIDEwLjI3IDUuMTM1IDUuMTM1IDAgMDEwLTEwLjI3em0wIDEuODAyYTMuMzMzIDMuMzMzIDAgMTAwIDYuNjY2IDMuMzMzIDMuMzMzIDAgMDAwLTYuNjY2em01LjMzOC0zLjIwNWExLjIgMS4yIDAgMTEwIDIuNCAxLjIgMS4yIDAgMDEwLTIuNHpcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIvPlxuICAgICAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj4gSW5zdGFncmFtIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm1iLTJcIj5cbiAgICAgICAgICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwic2hlbGwtZm9vdGVyLXNvY2lhbFwiPlxuICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cInNoZWxsLWZvb3Rlci1zb2NpYWwtaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgPlxuICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yMiAxMmMwLTUuNTIzLTQuNDc3LTEwLTEwLTEwUzIgNi40NzcgMiAxMmMwIDQuOTkxIDMuNjU3IDkuMTI4IDguNDM4IDkuODc4di02Ljk4N2gtMi41NFYxMmgyLjU0VjkuNzk3YzAtMi41MDYgMS40OTItMy44OSAzLjc3Ny0zLjg5IDEuMDk0IDAgMi4yMzguMTk1IDIuMjM4LjE5NXYyLjQ2aC0xLjI2Yy0xLjI0MyAwLTEuNjMuNzcxLTEuNjMgMS41NjJWMTJoMi43NzNsLS40NDMgMi44OWgtMi4zM3Y2Ljk4OEMxOC4zNDMgMjEuMTI4IDIyIDE2Ljk5MSAyMiAxMnpcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIvPlxuICAgICAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj4gRmFjZWJvb2sgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgPC9uYXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInNoZWxsLWZvb3Rlci1jb3B5cmlnaHRcIj5cbiAgICAgIDwhLS08bmF2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAganVzdGlmeS1jZW50ZXIgc3BhY2UteC02XCI+XG4gICAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwiZm9udC1ub3JtYWwgdGV4dC1zbSBob3Zlcjp0ZXh0LWdyYXktMTAwIG1iLTJcIj5Db29raWUgc2V0dGluZ3M8L2E+XG4gICAgPC9uYXY+LS0+XG4gICAgICA8cCBjbGFzcz1cInRleHQtc20gdGV4dC1jZW50ZXIgc206dGV4dC1yaWdodFwiPlxuICAgICAgICDCqSAyMDIxIElORElDRS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAgICAgIDwvcD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Zvb3Rlcj5cbiJdfQ==
@@ -0,0 +1,130 @@
1
+ import { AuthService } from '@indice/ng-auth';
2
+ import { Component, Inject, Input } from '@angular/core';
3
+ import { ActivatedRoute, NavigationStart, Router } from '@angular/router';
4
+ import { filter, share } from 'rxjs/operators';
5
+ import { APP_LINKS, SHELL_CONFIG } from '../../../tokens';
6
+ import { of } from 'rxjs';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/common";
9
+ import * as i2 from "@angular/router";
10
+ import * as i3 from "../../../directives/click-outside.directive";
11
+ import * as i4 from "../../../controls/nav-links-list/nav-links-list.component";
12
+ import * as i5 from "../../../controls/notifications-indicator/notifications-indicator.component";
13
+ import * as i6 from "../../../controls/language-selection/language-selection.component";
14
+ import * as i7 from "../../../controls/user-profile-menu/user-profile-menu.component";
15
+ import * as i8 from "@indice/ng-auth";
16
+ export class ShellHeaderComponent {
17
+ constructor(authService, router, route, config, links) {
18
+ this.authService = authService;
19
+ this.router = router;
20
+ this.route = route;
21
+ this.config = config;
22
+ this.links = links;
23
+ // tslint:disable-next-line:no-input-rename
24
+ this.sectionLinksPath = 'main';
25
+ // tslint:disable-next-line:no-input-rename
26
+ this.profileMenuVisible = true;
27
+ // tslint:disable-next-line:no-input-rename
28
+ this.showUserNameOnHeader = false;
29
+ // tslint:disable-next-line:no-input-rename
30
+ this.showAlerts = false;
31
+ // tslint:disable-next-line:no-input-rename
32
+ this.showLangs = false;
33
+ this.border = true;
34
+ this.sectionLinks = of([]);
35
+ this.mobileMenuExpanded = false;
36
+ this.userMenuExpanded = false;
37
+ this.routerSub$ = null;
38
+ this.userSub$ = null;
39
+ this.statusSub$ = null;
40
+ this.user = null;
41
+ this.avatarName = null;
42
+ this.activeFragment = null;
43
+ this.routeSubject = this.router.events.pipe(filter((event) => event instanceof NavigationStart));
44
+ }
45
+ ngOnInit() {
46
+ this.activeFragment = this.route.fragment.pipe(share());
47
+ this.sectionLinks = this.links[this.sectionLinksPath];
48
+ this.routerSub$ = this.routeSubject.subscribe((event) => {
49
+ this.mobileMenuExpanded = false;
50
+ this.userMenuExpanded = false;
51
+ });
52
+ this.authService.loadUser().subscribe((user) => {
53
+ this.setCurrentUser(user);
54
+ }, error => {
55
+ console.error(error);
56
+ });
57
+ // Detect user changes and display / or not user info accordingly...
58
+ this.userSub$ = this.authService.user$.subscribe((user) => {
59
+ // console.log('ShellHeaderComponent user subscription');
60
+ this.setCurrentUser(user);
61
+ });
62
+ }
63
+ ngOnDestroy() {
64
+ if (this.routerSub$) {
65
+ this.routerSub$.unsubscribe();
66
+ }
67
+ // TODO: check authenticated user here before we start polling server status
68
+ if (this.statusSub$) {
69
+ this.statusSub$.unsubscribe();
70
+ }
71
+ if (this.userSub$) {
72
+ this.userSub$.unsubscribe();
73
+ }
74
+ }
75
+ // tslint:disable-next-line:typedef
76
+ onClickOutside($event) {
77
+ this.userMenuExpanded = false;
78
+ }
79
+ signin(event) {
80
+ if (event) {
81
+ event.preventDefault();
82
+ }
83
+ this.authService.signinRedirect();
84
+ }
85
+ setCurrentUser(user) {
86
+ this.user = user;
87
+ if (this.user && this.user.profile) {
88
+ this.avatarName = `${this.user.profile.given_name?.charAt(0)}${this.user.profile.family_name?.charAt(0)}`.toUpperCase();
89
+ }
90
+ }
91
+ }
92
+ ShellHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ShellHeaderComponent, deps: [{ token: AuthService }, { token: Router }, { token: ActivatedRoute }, { token: SHELL_CONFIG }, { token: APP_LINKS }], target: i0.ɵɵFactoryTarget.Component });
93
+ ShellHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: ShellHeaderComponent, selector: "lib-shell-header", inputs: { sectionLinksPath: ["section-links", "sectionLinksPath"], profileMenuVisible: ["profile-menu", "profileMenuVisible"], showUserNameOnHeader: ["show-userName", "showUserNameOnHeader"], showAlerts: ["show-alerts", "showAlerts"], showLangs: ["show-langs", "showLangs"], border: "border" }, ngImport: i0, template: "<nav>\n <div class=\"shell-header-paddings\">\n <div class=\"shell-header-border\">\n <div class=\"shell-header-menu-container\">\n <div class=\"shell-header-logo-container\">\n <div>\n <a href=\"#\" [routerLink]=\"['/']\"><img class=\"app-logo\" [src]=\"config.appLogo\" [alt]=\"config.appLogoAlt\" /></a>\n </div>\n </div>\n\n <div class=\"shell-header-link-container\">\n <div class=\"shell-header-link-container-inner\">\n <lib-nav-links-list\n [links]=\"sectionLinks\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'nav-link'\"\n [link-active-class]=\"'nav-link-active'\">\n </lib-nav-links-list>\n </div>\n </div>\n\n <div class=\"shell-header-md-visible\">\n\n <div class=\"shell-header-links-far-container\" (clickOutside)=\"onClickOutside($event)\">\n\n <lib-nav-links-list\n [links]=\"links.profileActions\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'shell-header-menu-rounded-button'\"\n [link-active-class]=\"'shell-header-menu-rounded-button-active'\">\n </lib-nav-links-list>\n\n\n <!-- Profile dropdown -->\n <div *ngIf=\"profileMenuVisible\" class=\"ml-4\">\n <lib-user-profile-menu [show-user-name]=\"showUserNameOnHeader\"></lib-user-profile-menu>\n </div>\n\n <!-- Notifications dropdown -->\n <div *ngIf=\"showAlerts && user\" class=\"ml-4\">\n <lib-notifications-indicator></lib-notifications-indicator>\n </div>\n\n <!-- languages dropdown -->\n <div *ngIf=\"showLangs\" class=\"ml-4\">\n <lib-language-selection></lib-language-selection>\n </div>\n </div>\n </div>\n\n <div class=\"mobile-menu-button-container\">\n <!-- Mobile menu button -->\n <button type=\"button\"\n (click)=\"mobileMenuExpanded = !mobileMenuExpanded\"\n class=\"mobile-menu-button\"\n aria-controls=\"mobile-menu\"\n [attr.aria-expanded]=\"mobileMenuExpanded\">\n <span class=\"sr-only\">Open main menu</span>\n <!--Heroicon name: outline/menu Menu open: \"hidden\", Menu closed: \"block\"-->\n <svg xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n aria-hidden=\"true\"\n [class]=\"mobileMenuExpanded ? 'hidden':'block h-6 w-6'\">\n <path stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M4 6h16M4 12h16M4 18h16\" />\n </svg>\n <!--Heroicon name: outline/x Menu open: \"block\", Menu closed: \"hidden\"-->\n <svg xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n aria-hidden=\"true\"\n [class]=\"mobileMenuExpanded ? 'block h-6 w-6':'hidden'\">\n <path stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M6 18L18 6M6 6l12 12\" />\n </svg>\n </button>\n </div>\n </div>\n </div>\n </div>\n <!-- Mobile menu, show/hide based on menu state. -->\n <div class=\"mobile-menu-container\" *ngIf=\"mobileMenuExpanded\" id=\"mobile-menu\">\n <lib-nav-links-list\n [links]=\"sectionLinks\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'nav-link-mobile'\"\n [link-active-class]=\"'nav-link-mobile-active'\"\n [container-class]=\"'mobile-menu-link-container'\">\n </lib-nav-links-list>\n\n <div *ngIf=\"!user\">\n <a href=\"#\" (click)=\"signin($event)\" class=\"nav-link-mobile\">\n <i class=\"ms-Icon ms-Icon--Signin mr-2\"></i>\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7\n </a>\n </div>\n\n <div class=\"mobile-menu-user-info-container\" *ngIf=\"user\">\n <div class=\"mobile-menu-user-info-container-inner\">\n <div class=\"flex-shrink-0\">\n <span class=\"mobile-menu-avatar-container\">\n <span class=\"mobile-menu-avatar-name\">{{ this.avatarName }}</span>\n </span>\n </div>\n <div class=\"ml-3\">\n <div class=\"mobile-menu-user-name\">{{ user.profile.name }}</div>\n <div class=\"mobile-menu-user-email\">{{ user.profile.email }}</div>\n </div>\n <!--\n <button class=\"mobile-menu-rounded-button\">\n <span class=\"sr-only\">View notifications</span>\n <svg class=\"mobile-menu-rounded-button-icon-style\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n aria-hidden=\"true\">\n <path stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9\" />\n </svg>\n </button>\n -->\n </div>\n </div>\n\n <lib-nav-links-list\n [links]=\"links.profile\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'nav-link-mobile'\"\n [link-active-class]=\"'nav-link-mobile-active'\"\n [container-class]=\"'mobile-menu-link-container'\">\n </lib-nav-links-list>\n </div>\n</nav>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { kind: "directive", type: i3.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideEnabled", "attachOutsideOnClick", "delayClickOutsideInit", "emitOnBlur", "exclude", "excludeBeforeClick", "clickOutsideEvents"], outputs: ["clickOutside"] }, { kind: "component", type: i4.NavLinksListComponent, selector: "lib-nav-links-list", inputs: ["links", "active-fragment", "link-class", "link-active-class", "container-class", "show-icons"] }, { kind: "component", type: i5.NotificationsIndicatorComponent, selector: "lib-notifications-indicator" }, { kind: "component", type: i6.LanguageSelectionComponent, selector: "lib-language-selection" }, { kind: "component", type: i7.UserProfileMenuComponent, selector: "lib-user-profile-menu", inputs: ["show-user-name"] }] });
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ShellHeaderComponent, decorators: [{
95
+ type: Component,
96
+ args: [{ selector: 'lib-shell-header', template: "<nav>\n <div class=\"shell-header-paddings\">\n <div class=\"shell-header-border\">\n <div class=\"shell-header-menu-container\">\n <div class=\"shell-header-logo-container\">\n <div>\n <a href=\"#\" [routerLink]=\"['/']\"><img class=\"app-logo\" [src]=\"config.appLogo\" [alt]=\"config.appLogoAlt\" /></a>\n </div>\n </div>\n\n <div class=\"shell-header-link-container\">\n <div class=\"shell-header-link-container-inner\">\n <lib-nav-links-list\n [links]=\"sectionLinks\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'nav-link'\"\n [link-active-class]=\"'nav-link-active'\">\n </lib-nav-links-list>\n </div>\n </div>\n\n <div class=\"shell-header-md-visible\">\n\n <div class=\"shell-header-links-far-container\" (clickOutside)=\"onClickOutside($event)\">\n\n <lib-nav-links-list\n [links]=\"links.profileActions\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'shell-header-menu-rounded-button'\"\n [link-active-class]=\"'shell-header-menu-rounded-button-active'\">\n </lib-nav-links-list>\n\n\n <!-- Profile dropdown -->\n <div *ngIf=\"profileMenuVisible\" class=\"ml-4\">\n <lib-user-profile-menu [show-user-name]=\"showUserNameOnHeader\"></lib-user-profile-menu>\n </div>\n\n <!-- Notifications dropdown -->\n <div *ngIf=\"showAlerts && user\" class=\"ml-4\">\n <lib-notifications-indicator></lib-notifications-indicator>\n </div>\n\n <!-- languages dropdown -->\n <div *ngIf=\"showLangs\" class=\"ml-4\">\n <lib-language-selection></lib-language-selection>\n </div>\n </div>\n </div>\n\n <div class=\"mobile-menu-button-container\">\n <!-- Mobile menu button -->\n <button type=\"button\"\n (click)=\"mobileMenuExpanded = !mobileMenuExpanded\"\n class=\"mobile-menu-button\"\n aria-controls=\"mobile-menu\"\n [attr.aria-expanded]=\"mobileMenuExpanded\">\n <span class=\"sr-only\">Open main menu</span>\n <!--Heroicon name: outline/menu Menu open: \"hidden\", Menu closed: \"block\"-->\n <svg xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n aria-hidden=\"true\"\n [class]=\"mobileMenuExpanded ? 'hidden':'block h-6 w-6'\">\n <path stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M4 6h16M4 12h16M4 18h16\" />\n </svg>\n <!--Heroicon name: outline/x Menu open: \"block\", Menu closed: \"hidden\"-->\n <svg xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n aria-hidden=\"true\"\n [class]=\"mobileMenuExpanded ? 'block h-6 w-6':'hidden'\">\n <path stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M6 18L18 6M6 6l12 12\" />\n </svg>\n </button>\n </div>\n </div>\n </div>\n </div>\n <!-- Mobile menu, show/hide based on menu state. -->\n <div class=\"mobile-menu-container\" *ngIf=\"mobileMenuExpanded\" id=\"mobile-menu\">\n <lib-nav-links-list\n [links]=\"sectionLinks\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'nav-link-mobile'\"\n [link-active-class]=\"'nav-link-mobile-active'\"\n [container-class]=\"'mobile-menu-link-container'\">\n </lib-nav-links-list>\n\n <div *ngIf=\"!user\">\n <a href=\"#\" (click)=\"signin($event)\" class=\"nav-link-mobile\">\n <i class=\"ms-Icon ms-Icon--Signin mr-2\"></i>\u03A3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7\n </a>\n </div>\n\n <div class=\"mobile-menu-user-info-container\" *ngIf=\"user\">\n <div class=\"mobile-menu-user-info-container-inner\">\n <div class=\"flex-shrink-0\">\n <span class=\"mobile-menu-avatar-container\">\n <span class=\"mobile-menu-avatar-name\">{{ this.avatarName }}</span>\n </span>\n </div>\n <div class=\"ml-3\">\n <div class=\"mobile-menu-user-name\">{{ user.profile.name }}</div>\n <div class=\"mobile-menu-user-email\">{{ user.profile.email }}</div>\n </div>\n <!--\n <button class=\"mobile-menu-rounded-button\">\n <span class=\"sr-only\">View notifications</span>\n <svg class=\"mobile-menu-rounded-button-icon-style\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n aria-hidden=\"true\">\n <path stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9\" />\n </svg>\n </button>\n -->\n </div>\n </div>\n\n <lib-nav-links-list\n [links]=\"links.profile\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'nav-link-mobile'\"\n [link-active-class]=\"'nav-link-mobile-active'\"\n [container-class]=\"'mobile-menu-link-container'\">\n </lib-nav-links-list>\n </div>\n</nav>\n" }]
97
+ }], ctorParameters: function () { return [{ type: i8.AuthService, decorators: [{
98
+ type: Inject,
99
+ args: [AuthService]
100
+ }] }, { type: i2.Router, decorators: [{
101
+ type: Inject,
102
+ args: [Router]
103
+ }] }, { type: i2.ActivatedRoute, decorators: [{
104
+ type: Inject,
105
+ args: [ActivatedRoute]
106
+ }] }, { type: undefined, decorators: [{
107
+ type: Inject,
108
+ args: [SHELL_CONFIG]
109
+ }] }, { type: undefined, decorators: [{
110
+ type: Inject,
111
+ args: [APP_LINKS]
112
+ }] }]; }, propDecorators: { sectionLinksPath: [{
113
+ type: Input,
114
+ args: ['section-links']
115
+ }], profileMenuVisible: [{
116
+ type: Input,
117
+ args: ['profile-menu']
118
+ }], showUserNameOnHeader: [{
119
+ type: Input,
120
+ args: ['show-userName']
121
+ }], showAlerts: [{
122
+ type: Input,
123
+ args: ['show-alerts']
124
+ }], showLangs: [{
125
+ type: Input,
126
+ args: ['show-langs']
127
+ }], border: [{
128
+ type: Input
129
+ }] } });
130
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9sYXlvdXRzL3NoZWxsL3NoZWxsLWhlYWRlci9zaGVsbC1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtaGVhZGVyL3NoZWxsLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RSxPQUFPLEVBQUUsY0FBYyxFQUFTLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUF5RCxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUFRakYsTUFBTSxPQUFPLG9CQUFvQjtJQXVCL0IsWUFDaUMsV0FBd0IsRUFDN0IsTUFBYyxFQUNOLEtBQXFCLEVBQzFCLE1BQVcsRUFDZCxLQUFVO1FBSkwsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDN0IsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNOLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQzFCLFdBQU0sR0FBTixNQUFNLENBQUs7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFLO1FBM0J0QywyQ0FBMkM7UUFDbkIscUJBQWdCLEdBQUcsTUFBTSxDQUFDO1FBQ2xE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Q0FBQyxJQUFTO1FBQzlCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNsQyxJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDekg7SUFDSCxDQUFDOztpSEFsRlUsb0JBQW9CLGtCQXdCckIsV0FBVyxhQUNYLE1BQU0sYUFDTixjQUFjLGFBQ2QsWUFBWSxhQUNaLFNBQVM7cUdBNUJSLG9CQUFvQiwrVkNoQmpDLHF5TEE4SUE7MkZEOUhhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFFRSxrQkFBa0I7OzBCQTJCekIsTUFBTTsyQkFBQyxXQUFXOzswQkFDbEIsTUFBTTsyQkFBQyxNQUFNOzswQkFDYixNQUFNOzJCQUFDLGNBQWM7OzBCQUNyQixNQUFNOzJCQUFDLFlBQVk7OzBCQUNuQixNQUFNOzJCQUFDLFNBQVM7NENBMUJLLGdCQUFnQjtzQkFBdkMsS0FBSzt1QkFBQyxlQUFlO2dCQUVDLGtCQUFrQjtzQkFBeEMsS0FBSzt1QkFBQyxjQUFjO2dCQUVHLG9CQUFvQjtzQkFBM0MsS0FBSzt1QkFBQyxlQUFlO2dCQUVBLFVBQVU7c0JBQS9CLEtBQUs7dUJBQUMsYUFBYTtnQkFFQyxTQUFTO3NCQUE3QixLQUFLO3VCQUFDLFlBQVk7Z0JBQ1YsTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2hlbGxMYXlvdXRUeXBlIH0gZnJvbSAnLi8uLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJ0BpbmRpY2UvbmctYXV0aCc7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgT25EZXN0cm95LCBJbmplY3QsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnb2lkYy1jbGllbnQnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIEV2ZW50LCBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmaWx0ZXIsIHNoYXJlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTmF2TGluayB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEFQUF9MSU5LUywgU0hFTExfQ09ORklHIH0gZnJvbSAnLi4vLi4vLi4vdG9rZW5zJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgaXNPYnNlcnZhYmxlLCBvYnNlcnZhYmxlLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnbGliLXNoZWxsLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaGVsbC1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBTaGVsbEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3NlY3Rpb24tbGlua3MnKSBzZWN0aW9uTGlua3NQYXRoID0gJ21haW4nO1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXG4gIEBJbnB1dCgncHJvZmlsZS1tZW51JykgcHJvZmlsZU1lbnVWaXNpYmxlID0gdHJ1ZTtcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3Nob3ctdXNlck5hbWUnKSBzaG93VXNlck5hbWVPbkhlYWRlcjogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IGZhbHNlO1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXG4gIEBJbnB1dCgnc2hvdy1hbGVydHMnKSBzaG93QWxlcnRzOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdzaG93LWxhbmdzJykgc2hvd0xhbmdzOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIGJvcmRlciA9IHRydWU7XG4gIHB1YmxpYyBzZWN0aW9uTGlua3M6IE9ic2VydmFibGU8TmF2TGlua1tdPiA9IG9mKFtdKTtcbiAgcHVibGljIG1vYmlsZU1lbnVFeHBhbmRlZCA9IGZhbHNlO1xuICBwdWJsaWMgdXNlck1lbnVFeHBhbmRlZCA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgcm91dGVTdWJqZWN0OiBPYnNlcnZhYmxlPEV2ZW50PjtcbiAgcHJvdGVjdGVkIHJvdXRlclN1YiQ6IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuICBwcm90ZWN0ZWQgdXNlclN1YiQ6IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuICBwcm90ZWN0ZWQgc3RhdHVzU3ViJDogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XG4gIHB1YmxpYyB1c2VyOiBVc2VyIHwgbnVsbCA9IG51bGw7XG4gIHB1YmxpYyBhdmF0YXJOYW1lOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgcHVibGljIGFjdGl2ZUZyYWdtZW50OiBhbnkgfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KEF1dGhTZXJ2aWNlKSBwcm90ZWN0ZWQgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxuICAgIEBJbmplY3QoUm91dGVyKSBwcm90ZWN0ZWQgcm91dGVyOiBSb3V0ZXIsXG4gICAgQEluamVjdChBY3RpdmF0ZWRSb3V0ZSkgcHJvdGVjdGVkIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBASW5qZWN0KFNIRUxMX0NPTkZJRykgcHVibGljIGNvbmZpZzogYW55LFxuICAgIEBJbmplY3QoQVBQX0xJTktTKSBwdWJsaWMgbGlua3M6IGFueSkge1xuICAgIHRoaXMucm91dGVTdWJqZWN0ID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZlRnJhZ21lbnQgPSB0aGlzLnJvdXRlLmZyYWdtZW50LnBpcGUoc2hhcmUoKSk7XG4gICAgdGhpcy5zZWN0aW9uTGlua3MgPSB0aGlzLmxpbmtzW3RoaXMuc2VjdGlvbkxpbmtzUGF0aF0gYXMgT2JzZXJ2YWJsZTxOYXZMaW5rW10+O1xuICAgIHRoaXMucm91dGVyU3ViJCA9IHRoaXMucm91dGVTdWJqZWN0LnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgIHRoaXMubW9iaWxlTWVudUV4cGFuZGVkID0gZmFsc2U7XG4gICAgICB0aGlzLnVzZXJNZW51RXhwYW5kZWQgPSBmYWxzZTtcbiAgICB9KTtcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvYWRVc2VyKCkuc3Vic2NyaWJlKCh1c2VyKSA9PiB7XG4gICAgICB0aGlzLnNldEN1cnJlbnRVc2VyKHVzZXIpO1xuICAgIH0sIGVycm9yID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgIH0pO1xuICAgIC8vIERldGVjdCB1c2VyIGNoYW5nZXMgYW5kIGRpc3BsYXkgLyBvciBub3QgdXNlciBpbmZvIGFjY29yZGluZ2x5Li4uXG4gICAgdGhpcy51c2VyU3ViJCA9IHRoaXMuYXV0aFNlcnZpY2UudXNlciQuc3Vic2NyaWJlKCh1c2VyOiBhbnkpID0+IHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdTaGVsbEhlYWRlckNvbXBvbmVudCB1c2VyIHN1YnNjcmlwdGlvbicpO1xuICAgICAgdGhpcy5zZXRDdXJyZW50VXNlcih1c2VyKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuXG4gICAgaWYgKHRoaXMucm91dGVyU3ViJCkge1xuICAgICAgdGhpcy5yb3V0ZXJTdWIkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIC8vIFRPRE86IGNoZWNrIGF1dGhlbnRpY2F0ZWQgdXNlciBoZXJlIGJlZm9yZSB3ZSBzdGFydCBwb2xsaW5nIHNlcnZlciBzdGF0dXNcbiAgICBpZiAodGhpcy5zdGF0dXNTdWIkKSB7XG4gICAgICB0aGlzLnN0YXR1c1N1YiQudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudXNlclN1YiQpIHtcbiAgICAgIHRoaXMudXNlclN1YiQudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6dHlwZWRlZlxuICBwdWJsaWMgb25DbGlja091dHNpZGUoJGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnVzZXJNZW51RXhwYW5kZWQgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBzaWduaW4oZXZlbnQ6IGFueSB8IG51bGwgfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICAgIHRoaXMuYXV0aFNlcnZpY2Uuc2lnbmluUmVkaXJlY3QoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Q3VycmVudFVzZXIodXNlcjogYW55KTogdm9pZCB7XG4gICAgdGhpcy51c2VyID0gdXNlcjtcbiAgICBpZiAodGhpcy51c2VyICYmIHRoaXMudXNlci5wcm9maWxlKSB7XG4gICAgICB0aGlzLmF2YXRhck5hbWUgPSBgJHt0aGlzLnVzZXIucHJvZmlsZS5naXZlbl9uYW1lPy5jaGFyQXQoMCl9JHt0aGlzLnVzZXIucHJvZmlsZS5mYW1pbHlfbmFtZT8uY2hhckF0KDApfWAudG9VcHBlckNhc2UoKTtcbiAgICB9XG4gIH1cblxufVxuXG4iLCI8bmF2PlxuICA8ZGl2IGNsYXNzPVwic2hlbGwtaGVhZGVyLXBhZGRpbmdzXCI+XG4gICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1ib3JkZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzaGVsbC1oZWFkZXItbWVudS1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1sb2dvLWNvbnRhaW5lclwiPlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8YSBocmVmPVwiI1wiIFtyb3V0ZXJMaW5rXT1cIlsnLyddXCI+PGltZyBjbGFzcz1cImFwcC1sb2dvXCIgW3NyY109XCJjb25maWcuYXBwTG9nb1wiIFthbHRdPVwiY29uZmlnLmFwcExvZ29BbHRcIiAvPjwvYT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1saW5rLWNvbnRhaW5lclwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGVsbC1oZWFkZXItbGluay1jb250YWluZXItaW5uZXJcIj5cbiAgICAgICAgICAgIDxsaWItbmF2LWxpbmtzLWxpc3RcbiAgICAgICAgICAgICAgW2xpbmtzXT1cInNlY3Rpb25MaW5rc1wiXG4gICAgICAgICAgICAgIFthY3RpdmUtZnJhZ21lbnRdPVwiYWN0aXZlRnJhZ21lbnRcIlxuICAgICAgICAgICAgICBbbGluay1jbGFzc109XCInbmF2LWxpbmsnXCJcbiAgICAgICAgICAgICAgW2xpbmstYWN0aXZlLWNsYXNzXT1cIiduYXYtbGluay1hY3RpdmUnXCI+XG4gICAgICAgICAgICA8L2xpYi1uYXYtbGlua3MtbGlzdD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1tZC12aXNpYmxlXCI+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hlbGwtaGVhZGVyLWxpbmtzLWZhci1jb250YWluZXJcIiAoY2xpY2tPdXRzaWRlKT1cIm9uQ2xpY2tPdXRzaWRlKCRldmVudClcIj5cblxuICAgICAgICAgICAgPGxpYi1uYXYtbGlua3MtbGlzdFxuICAgICAgICAgICAgICBbbGlua3NdPVwibGlua3MucHJvZmlsZUFjdGlvbnNcIlxuICAgICAgICAgICAgICBbYWN0aXZlLWZyYWdtZW50XT1cImFjdGl2ZUZyYWdtZW50XCJcbiAgICAgICAgICAgICAgW2xpbmstY2xhc3NdPVwiJ3NoZWxsLWhlYWRlci1tZW51LXJvdW5kZWQtYnV0dG9uJ1wiXG4gICAgICAgICAgICAgIFtsaW5rLWFjdGl2ZS1jbGFzc109XCInc2hlbGwtaGVhZGVyLW1lbnUtcm91bmRlZC1idXR0b24tYWN0aXZlJ1wiPlxuICAgICAgICAgICAgPC9saWItbmF2LWxpbmtzLWxpc3Q+XG5cblxuICAgICAgICAgICAgPCEtLSBQcm9maWxlIGRyb3Bkb3duIC0tPlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInByb2ZpbGVNZW51VmlzaWJsZVwiIGNsYXNzPVwibWwtNFwiPlxuICAgICAgICAgICAgICA8bGliLXVzZXItcHJvZmlsZS1tZW51IFtzaG93LXVzZXItbmFtZV09XCJzaG93VXNlck5hbWVPbkhlYWRlclwiPjwvbGliLXVzZXItcHJvZmlsZS1tZW51PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDwhLS0gTm90aWZpY2F0aW9ucyBkcm9wZG93biAtLT5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93QWxlcnRzICYmIHVzZXJcIiBjbGFzcz1cIm1sLTRcIj5cbiAgICAgICAgICAgICAgPGxpYi1ub3RpZmljYXRpb25zLWluZGljYXRvcj48L2xpYi1ub3RpZmljYXRpb25zLWluZGljYXRvcj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8IS0tIGxhbmd1YWdlcyBkcm9wZG93biAtLT5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93TGFuZ3NcIiBjbGFzcz1cIm1sLTRcIj5cbiAgICAgICAgICAgICAgPGxpYi1sYW5ndWFnZS1zZWxlY3Rpb24+PC9saWItbGFuZ3VhZ2Utc2VsZWN0aW9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2JpbGUtbWVudS1idXR0b24tY29udGFpbmVyXCI+XG4gICAgICAgICAgPCEtLSBNb2JpbGUgbWVudSBidXR0b24gLS0+XG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJtb2JpbGVNZW51RXhwYW5kZWQgPSAhbW9iaWxlTWVudUV4cGFuZGVkXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibW9iaWxlLW1lbnUtYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIGFyaWEtY29udHJvbHM9XCJtb2JpbGUtbWVudVwiXG4gICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIm1vYmlsZU1lbnVFeHBhbmRlZFwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+T3BlbiBtYWluIG1lbnU8L3NwYW4+XG4gICAgICAgICAgICA8IS0tSGVyb2ljb24gbmFtZTogb3V0bGluZS9tZW51ICBNZW51IG9wZW46IFwiaGlkZGVuXCIsIE1lbnUgY2xvc2VkOiBcImJsb2NrXCItLT5cbiAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiXG4gICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgIFtjbGFzc109XCJtb2JpbGVNZW51RXhwYW5kZWQgPyAnaGlkZGVuJzonYmxvY2sgaC02IHctNidcIj5cbiAgICAgICAgICAgICAgPHBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiXG4gICAgICAgICAgICAgICAgICAgIGQ9XCJNNCA2aDE2TTQgMTJoMTZNNCAxOGgxNlwiIC8+XG4gICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgIDwhLS1IZXJvaWNvbiBuYW1lOiBvdXRsaW5lL3ggTWVudSBvcGVuOiBcImJsb2NrXCIsIE1lbnUgY2xvc2VkOiBcImhpZGRlblwiLS0+XG4gICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICAgICBbY2xhc3NdPVwibW9iaWxlTWVudUV4cGFuZGVkID8gJ2Jsb2NrIGgtNiB3LTYnOidoaWRkZW4nXCI+XG4gICAgICAgICAgICAgIDxwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIlxuICAgICAgICAgICAgICAgICAgICBkPVwiTTYgMThMMTggNk02IDZsMTIgMTJcIiAvPlxuICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8IS0tIE1vYmlsZSBtZW51LCBzaG93L2hpZGUgYmFzZWQgb24gbWVudSBzdGF0ZS4gLS0+XG4gIDxkaXYgY2xhc3M9XCJtb2JpbGUtbWVudS1jb250YWluZXJcIiAqbmdJZj1cIm1vYmlsZU1lbnVFeHBhbmRlZFwiIGlkPVwibW9iaWxlLW1lbnVcIj5cbiAgICA8bGliLW5hdi1saW5rcy1saXN0XG4gICAgICBbbGlua3NdPVwic2VjdGlvbkxpbmtzXCJcbiAgICAgIFthY3RpdmUtZnJhZ21lbnRdPVwiYWN0aXZlRnJhZ21lbnRcIlxuICAgICAgW2xpbmstY2xhc3NdPVwiJ25hdi1saW5rLW1vYmlsZSdcIlxuICAgICAgW2xpbmstYWN0aXZlLWNsYXNzXT1cIiduYXYtbGluay1tb2JpbGUtYWN0aXZlJ1wiXG4gICAgICBbY29udGFpbmVyLWNsYXNzXT1cIidtb2JpbGUtbWVudS1saW5rLWNvbnRhaW5lcidcIj5cbiAgICA8L2xpYi1uYXYtbGlua3MtbGlzdD5cblxuICAgIDxkaXYgKm5nSWY9XCIhdXNlclwiPlxuICAgICAgPGEgaHJlZj1cIiNcIiAoY2xpY2spPVwic2lnbmluKCRldmVudClcIiBjbGFzcz1cIm5hdi1saW5rLW1vYmlsZVwiPlxuICAgICAgICA8aSBjbGFzcz1cIm1zLUljb24gbXMtSWNvbi0tU2lnbmluIG1yLTJcIj48L2k+zqPPjc69zrTOtc+DzrdcbiAgICAgIDwvYT5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJtb2JpbGUtbWVudS11c2VyLWluZm8tY29udGFpbmVyXCIgKm5nSWY9XCJ1c2VyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibW9iaWxlLW1lbnUtdXNlci1pbmZvLWNvbnRhaW5lci1pbm5lclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1zaHJpbmstMFwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibW9iaWxlLW1lbnUtYXZhdGFyLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtb2JpbGUtbWVudS1hdmF0YXItbmFtZVwiPnt7IHRoaXMuYXZhdGFyTmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWwtM1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2JpbGUtbWVudS11c2VyLW5hbWVcIj57eyB1c2VyLnByb2ZpbGUubmFtZSB9fTwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2JpbGUtbWVudS11c2VyLWVtYWlsXCI+e3sgdXNlci5wcm9maWxlLmVtYWlsIH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJtb2JpbGUtbWVudS1yb3VuZGVkLWJ1dHRvblwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3Itb25seVwiPlZpZXcgbm90aWZpY2F0aW9uczwvc3Bhbj5cbiAgICAgICAgICA8c3ZnIGNsYXNzPVwibW9iaWxlLW1lbnUtcm91bmRlZC1idXR0b24taWNvbi1zdHlsZVwiXG4gICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAgICAgPHBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCJcbiAgICAgICAgICAgICAgICAgIGQ9XCJNMTUgMTdoNWwtMS40MDUtMS40MDVBMi4wMzIgMi4wMzIgMCAwMTE4IDE0LjE1OFYxMWE2LjAwMiA2LjAwMiAwIDAwLTQtNS42NTlWNWEyIDIgMCAxMC00IDB2LjM0MUM3LjY3IDYuMTY1IDYgOC4zODggNiAxMXYzLjE1OWMwIC41MzgtLjIxNCAxLjA1NS0uNTk1IDEuNDM2TDQgMTdoNW02IDB2MWEzIDMgMCAxMS02IDB2LTFtNiAwSDlcIiAvPlxuICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgLS0+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxsaWItbmF2LWxpbmtzLWxpc3RcbiAgICAgICAgICBbbGlua3NdPVwibGlua3MucHJvZmlsZVwiXG4gICAgICAgICAgW2FjdGl2ZS1mcmFnbWVudF09XCJhY3RpdmVGcmFnbWVudFwiXG4gICAgICAgICAgW2xpbmstY2xhc3NdPVwiJ25hdi1saW5rLW1vYmlsZSdcIlxuICAgICAgICAgIFtsaW5rLWFjdGl2ZS1jbGFzc109XCInbmF2LWxpbmstbW9iaWxlLWFjdGl2ZSdcIlxuICAgICAgICAgIFtjb250YWluZXItY2xhc3NdPVwiJ21vYmlsZS1tZW51LWxpbmstY29udGFpbmVyJ1wiPlxuICAgICAgPC9saWItbmF2LWxpbmtzLWxpc3Q+XG4gIDwvZGl2PlxuPC9uYXY+XG4iXX0=
@@ -0,0 +1,101 @@
1
+ import { SHELL_CONFIG } from './../../../tokens';
2
+ import { DefaultShellConfig } from './../../../types';
3
+ import { Component, Inject, ViewChildren } from '@angular/core';
4
+ import { DOCUMENT } from '@angular/common';
5
+ import { ActivationStart } from '@angular/router';
6
+ import { filter } from 'rxjs/operators';
7
+ import { DynamicComponentHostDirective } from '../../../directives/dynamic-component-host.directive';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/router";
10
+ import * as i2 from "@angular/common";
11
+ import * as i3 from "../../../services/component-loader/component-loader.factory";
12
+ import * as i4 from "../../../controls/side-pane/side-pane.component";
13
+ import * as i5 from "../../../controls/toaster/toaster-container.component";
14
+ import * as i6 from "../shell-sidebar-layout/shell-sidebar-layout.component";
15
+ import * as i7 from "../shell-stacked-layout/shell-stacked-layout.component";
16
+ export class ShellLayoutComponent {
17
+ constructor(document, router, location, config, componentLoaderFactory) {
18
+ this.document = document;
19
+ this.router = router;
20
+ this.location = location;
21
+ this.config = config;
22
+ this.componentLoaderFactory = componentLoaderFactory;
23
+ this.dynamicComponentHosts = null;
24
+ this.showRightPaneSM = false;
25
+ this.routerSub$ = null;
26
+ this.activeConfig = new DefaultShellConfig();
27
+ this.loaded = false;
28
+ this.hideSidebar = false;
29
+ if (!config) {
30
+ config = new DefaultShellConfig();
31
+ }
32
+ this.activeConfig = config;
33
+ }
34
+ ngAfterViewChecked() {
35
+ setTimeout(() => { this.loaded = true; }, 200);
36
+ }
37
+ ngOnInit() {
38
+ this.routerSub$ = this.router.events.pipe(filter((event) => event instanceof ActivationStart)).subscribe((e) => {
39
+ // console.log('ShellLayoutComponent ActivationStart', e);
40
+ if (e?.snapshot) {
41
+ // console.log('ShellLayoutComponent ActivationStart snapshot', (e as ActivationStart)?.snapshot);
42
+ if (e?.snapshot?.data) {
43
+ // console.log('ShellLayoutComponent ActivationStart snapshot data', (e as ActivationStart)?.snapshot.data);
44
+ if (e?.snapshot?.data.shell) {
45
+ // console.log('ShellLayoutComponent ActivationStart snapshot data shell params',
46
+ // (e as ActivationStart)?.snapshot.data.shell);
47
+ this.activeConfig = e?.snapshot.data.shell;
48
+ // console.log('ShellLayoutComponent activeConfig from route: ', this.activeConfig);
49
+ if (this.activeConfig.customHeaderComponent) {
50
+ this.initCustomComponents();
51
+ }
52
+ }
53
+ else {
54
+ this.activeConfig = this.config ? this.config : new DefaultShellConfig();
55
+ // console.log('ShellLayoutComponent default activeConfig: ', this.activeConfig);
56
+ }
57
+ }
58
+ }
59
+ });
60
+ }
61
+ ngAfterViewInit() {
62
+ this.initCustomComponents();
63
+ }
64
+ initCustomComponents() {
65
+ if (this.dynamicComponentHosts && this.dynamicComponentHosts.length > 0) {
66
+ this.loadCustomComponent(this.dynamicComponentHosts.find((_) => _.hostName === 'Header'));
67
+ // since you're not using it...
68
+ // this.loadCustomComponent(this.dynamicComponentHosts.find(_ => _.hostName === 'Footer'));
69
+ }
70
+ }
71
+ ngOnDestroy() {
72
+ if (this.routerSub$) {
73
+ this.routerSub$.unsubscribe();
74
+ }
75
+ }
76
+ loadCustomComponent(host) {
77
+ if (host) {
78
+ const viewContainerRef = host.viewContainerRef;
79
+ if (viewContainerRef && this.activeConfig.customHeaderComponent) {
80
+ const clf = this.componentLoaderFactory.createLoader(viewContainerRef);
81
+ const headerCompRef = clf.attach(this.activeConfig.customHeaderComponent).to(viewContainerRef.element).show();
82
+ }
83
+ }
84
+ }
85
+ }
86
+ ShellLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ShellLayoutComponent, deps: [{ token: DOCUMENT }, { token: i1.Router }, { token: i2.Location }, { token: SHELL_CONFIG }, { token: i3.ComponentLoaderFactory }], target: i0.ɵɵFactoryTarget.Component });
87
+ ShellLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: ShellLayoutComponent, selector: "lib-shell-layout", viewQueries: [{ propertyName: "dynamicComponentHosts", predicate: DynamicComponentHostDirective, descendants: true }], ngImport: i0, template: "<div [class.none]=\"!loaded\" [class.block]=\"loaded\">\n\n <!-- STACKED LAYOUT -->\n <div *ngIf=\"(activeConfig.layout === 'Stacked' || !activeConfig.layout)\" class=\"shell-container active-side-pane\">\n <lib-shell-stacked-layout [config]=\"activeConfig\"></lib-shell-stacked-layout>\n </div>\n\n <!-- SIDEBAR LAYOUT -->\n <div *ngIf=\"activeConfig.layout === 'Sidebar'\" class=\"sidebar shell-container active-side-pane\">\n <lib-shell-sidebar-layout [config]=\"activeConfig\"></lib-shell-sidebar-layout>\n </div>\n\n <lib-side-pane #rightPane>\n <router-outlet name=\"rightpane\" (activate)=\"rightPane.onSidePaneActivated($event)\" (deactivate)=\"rightPane.onSidePaneDeactivated($event)\"></router-outlet>\n </lib-side-pane>\n\n <lib-toaster-container></lib-toaster-container>\n\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i4.SidePaneComponent, selector: "lib-side-pane", inputs: ["visible"], outputs: ["onComplete"] }, { kind: "component", type: i5.ToasterContainerComponent, selector: "lib-toaster-container" }, { kind: "component", type: i6.ShellSidebarLayoutComponent, selector: "lib-shell-sidebar-layout", inputs: ["config"] }, { kind: "component", type: i7.ShellStackedLayoutComponent, selector: "lib-shell-stacked-layout", inputs: ["config"] }] });
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ShellLayoutComponent, decorators: [{
89
+ type: Component,
90
+ args: [{ selector: 'lib-shell-layout', template: "<div [class.none]=\"!loaded\" [class.block]=\"loaded\">\n\n <!-- STACKED LAYOUT -->\n <div *ngIf=\"(activeConfig.layout === 'Stacked' || !activeConfig.layout)\" class=\"shell-container active-side-pane\">\n <lib-shell-stacked-layout [config]=\"activeConfig\"></lib-shell-stacked-layout>\n </div>\n\n <!-- SIDEBAR LAYOUT -->\n <div *ngIf=\"activeConfig.layout === 'Sidebar'\" class=\"sidebar shell-container active-side-pane\">\n <lib-shell-sidebar-layout [config]=\"activeConfig\"></lib-shell-sidebar-layout>\n </div>\n\n <lib-side-pane #rightPane>\n <router-outlet name=\"rightpane\" (activate)=\"rightPane.onSidePaneActivated($event)\" (deactivate)=\"rightPane.onSidePaneDeactivated($event)\"></router-outlet>\n </lib-side-pane>\n\n <lib-toaster-container></lib-toaster-container>\n\n</div>" }]
91
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
92
+ type: Inject,
93
+ args: [DOCUMENT]
94
+ }] }, { type: i1.Router }, { type: i2.Location }, { type: undefined, decorators: [{
95
+ type: Inject,
96
+ args: [SHELL_CONFIG]
97
+ }] }, { type: i3.ComponentLoaderFactory }]; }, propDecorators: { dynamicComponentHosts: [{
98
+ type: ViewChildren,
99
+ args: [DynamicComponentHostDirective]
100
+ }] } });
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtbGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9sYXlvdXRzL3NoZWxsL3NoZWxsLWxheW91dC9zaGVsbC1sYXlvdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtbGF5b3V0L3NoZWxsLWxheW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFnQixrQkFBa0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3BFLE9BQU8sRUFBaUIsU0FBUyxFQUFxQixNQUFNLEVBQUUsWUFBWSxFQUErQixNQUFNLGVBQWUsQ0FBQztBQUMvSCxPQUFPLEVBQUUsUUFBUSxFQUFZLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQzs7Ozs7Ozs7O0FBU3JHLE1BQU0sT0FBTyxvQkFBb0I7SUFRL0IsWUFDNEIsUUFBYSxFQUMvQixNQUFjLEVBQ2QsUUFBa0IsRUFDSSxNQUFnQyxFQUN0RCxzQkFBOEM7UUFKNUIsYUFBUSxHQUFSLFFBQVEsQ0FBSztRQUMvQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNJLFdBQU0sR0FBTixNQUFNLENBQTBCO1FBQ3RELDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFYeEQsMEJBQXFCLEdBQW9ELElBQUksQ0FBQztR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QUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO2FBQy9HO1NBQ0Y7SUFDSCxDQUFDOztpSEEzRVUsb0JBQW9CLGtCQVNyQixRQUFRLDJEQUdSLFlBQVk7cUdBWlgsb0JBQW9CLGtHQUNqQiw2QkFBNkIsZ0RDakI3Qyw0eUJBa0JNOzJGREZPLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFFRSxrQkFBa0I7OzBCQVl6QixNQUFNOzJCQUFDLFFBQVE7OzBCQUdmLE1BQU07MkJBQUMsWUFBWTtpRkFWdEIscUJBQXFCO3NCQURwQixZQUFZO3VCQUFDLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNIRUxMX0NPTkZJRyB9IGZyb20gJy4vLi4vLi4vLi4vdG9rZW5zJztcbmltcG9ydCB7IElTaGVsbENvbmZpZywgRGVmYXVsdFNoZWxsQ29uZmlnIH0gZnJvbSAnLi8uLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIE9uSW5pdCwgT25EZXN0cm95LCBJbmplY3QsIFZpZXdDaGlsZHJlbiwgUXVlcnlMaXN0LCBBZnRlclZpZXdDaGVja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBET0NVTUVOVCwgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWN0aXZhdGlvblN0YXJ0LCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudEhvc3REaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL2R5bmFtaWMtY29tcG9uZW50LWhvc3QuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbXBvbmVudExvYWRlckZhY3RvcnkgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9jb21wb25lbnQtbG9hZGVyL2NvbXBvbmVudC1sb2FkZXIuZmFjdG9yeSc7XG5cblxuQENvbXBvbmVudCh7XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdsaWItc2hlbGwtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NoZWxsLWxheW91dC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFNoZWxsTGF5b3V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIEFmdGVyVmlld0NoZWNrZWQge1xuICBAVmlld0NoaWxkcmVuKER5bmFtaWNDb21wb25lbnRIb3N0RGlyZWN0aXZlKVxuICBkeW5hbWljQ29tcG9uZW50SG9zdHM6IFF1ZXJ5TGlzdDxEeW5hbWljQ29tcG9uZW50SG9zdERpcmVjdGl2ZT4gfCBudWxsID0gbnVsbDtcbiAgcHVibGljIHNob3dSaWdodFBhbmVTTSA9IGZhbHNlO1xuICBwcml2YXRlIHJvdXRlclN1YiQ6IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuICBwdWJsaWMgYWN0aXZlQ29uZmlnOiBJU2hlbGxDb25maWcgPSBuZXcgRGVmYXVsdFNoZWxsQ29uZmlnKCk7XG4gIHB1YmxpYyBsb2FkZWQgPSBmYWxzZTtcbiAgcHVibGljIGhpZGVTaWRlYmFyID0gZmFsc2U7XG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IGFueSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgbG9jYXRpb246IExvY2F0aW9uLFxuICAgIEBJbmplY3QoU0hFTExfQ09ORklHKSBwcml2YXRlIGNvbmZpZzogSVNoZWxsQ29uZmlnIHwgdW5kZWZpbmVkLFxuICAgIHByaXZhdGUgY29tcG9uZW50TG9hZGVyRmFjdG9yeTogQ29tcG9uZW50TG9hZGVyRmFjdG9yeVxuICApIHtcbiAgICBpZiAoIWNvbmZpZykge1xuICAgICAgY29uZmlnID0gbmV3IERlZmF1bHRTaGVsbENvbmZpZygpO1xuICAgIH1cbiAgICB0aGlzLmFjdGl2ZUNvbmZpZyA9IGNvbmZpZztcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHsgdGhpcy5sb2FkZWQgPSB0cnVlOyB9LCAyMDApO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yb3V0ZXJTdWIkID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBBY3RpdmF0aW9uU3RhcnQpKS5zdWJzY3JpYmUoKGUpID0+IHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdTaGVsbExheW91dENvbXBvbmVudCBBY3RpdmF0aW9uU3RhcnQnLCBlKTtcbiAgICAgIGlmICgoZSBhcyBBY3RpdmF0aW9uU3RhcnQpPy5zbmFwc2hvdCkge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnU2hlbGxMYXlvdXRDb21wb25lbnQgQWN0aXZhdGlvblN0YXJ0IHNuYXBzaG90JywgKGUgYXMgQWN0aXZhdGlvblN0YXJ0KT8uc25hcHNob3QpO1xuICAgICAgICBpZiAoKGUgYXMgQWN0aXZhdGlvblN0YXJ0KT8uc25hcHNob3Q/LmRhdGEpIHtcbiAgICAgICAgICAvLyBjb25zb2xlLmxvZygnU2hlbGxMYXlvdXRDb21wb25lbnQgQWN0aXZhdGlvblN0YXJ0IHNuYXBzaG90IGRhdGEnLCAoZSBhcyBBY3RpdmF0aW9uU3RhcnQpPy5zbmFwc2hvdC5kYXRhKTtcbiAgICAgICAgICBpZiAoKGUgYXMgQWN0aXZhdGlvblN0YXJ0KT8uc25hcHNob3Q/LmRhdGEuc2hlbGwpIHtcbiAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdTaGVsbExheW91dENvbXBvbmVudCBBY3RpdmF0aW9uU3RhcnQgc25hcHNob3QgZGF0YSBzaGVsbCBwYXJhbXMnLFxuICAgICAgICAgICAgLy8gKGUgYXMgQWN0aXZhdGlvblN0YXJ0KT8uc25hcHNob3QuZGF0YS5zaGVsbCk7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZUNvbmZpZyA9IChlIGFzIEFjdGl2YXRpb25TdGFydCk/LnNuYXBzaG90LmRhdGEuc2hlbGwgYXMgSVNoZWxsQ29uZmlnO1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coJ1NoZWxsTGF5b3V0Q29tcG9uZW50IGFjdGl2ZUNvbmZpZyBmcm9tIHJvdXRlOiAnLCB0aGlzLmFjdGl2ZUNvbmZpZyk7XG4gICAgICAgICAgICBpZiAodGhpcy5hY3RpdmVDb25maWcuY3VzdG9tSGVhZGVyQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAgIHRoaXMuaW5pdEN1c3RvbUNvbXBvbmVudHMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hY3RpdmVDb25maWcgPSB0aGlzLmNvbmZpZyA/IHRoaXMuY29uZmlnIDogbmV3IERlZmF1bHRTaGVsbENvbmZpZygpO1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coJ1NoZWxsTGF5b3V0Q29tcG9uZW50IGRlZmF1bHQgYWN0aXZlQ29uZmlnOiAnLCB0aGlzLmFjdGl2ZUNvbmZpZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0Q3VzdG9tQ29tcG9uZW50cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0Q3VzdG9tQ29tcG9uZW50cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5keW5hbWljQ29tcG9uZW50SG9zdHMgJiYgdGhpcy5keW5hbWljQ29tcG9uZW50SG9zdHMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5sb2FkQ3VzdG9tQ29tcG9uZW50KHRoaXMuZHluYW1pY0NvbXBvbmVudEhvc3RzLmZpbmQoKF8pID0+IF8uaG9zdE5hbWUgPT09ICdIZWFkZXInKSk7XG4gICAgICAvLyBzaW5jZSB5b3UncmUgbm90IHVzaW5nIGl0Li4uXG4gICAgICAvLyB0aGlzLmxvYWRDdXN0b21Db21wb25lbnQodGhpcy5keW5hbWljQ29tcG9uZW50SG9zdHMuZmluZChfID0+IF8uaG9zdE5hbWUgPT09ICdGb290ZXInKSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucm91dGVyU3ViJCkge1xuICAgICAgdGhpcy5yb3V0ZXJTdWIkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBsb2FkQ3VzdG9tQ29tcG9uZW50KGhvc3Q6IER5bmFtaWNDb21wb25lbnRIb3N0RGlyZWN0aXZlIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgaWYgKGhvc3QpIHtcbiAgICAgIGNvbnN0IHZpZXdDb250YWluZXJSZWYgPSBob3N0LnZpZXdDb250YWluZXJSZWY7XG4gICAgICBpZiAodmlld0NvbnRhaW5lclJlZiAmJiB0aGlzLmFjdGl2ZUNvbmZpZy5jdXN0b21IZWFkZXJDb21wb25lbnQpIHtcbiAgICAgICAgY29uc3QgY2xmID0gdGhpcy5jb21wb25lbnRMb2FkZXJGYWN0b3J5LmNyZWF0ZUxvYWRlcih2aWV3Q29udGFpbmVyUmVmKTtcbiAgICAgICAgY29uc3QgaGVhZGVyQ29tcFJlZiA9IGNsZi5hdHRhY2godGhpcy5hY3RpdmVDb25maWcuY3VzdG9tSGVhZGVyQ29tcG9uZW50KS50byh2aWV3Q29udGFpbmVyUmVmLmVsZW1lbnQpLnNob3coKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgW2NsYXNzLm5vbmVdPVwiIWxvYWRlZFwiIFtjbGFzcy5ibG9ja109XCJsb2FkZWRcIj5cblxuICA8IS0tIFNUQUNLRUQgTEFZT1VUIC0tPlxuICA8ZGl2ICpuZ0lmPVwiKGFjdGl2ZUNvbmZpZy5sYXlvdXQgPT09ICdTdGFja2VkJyB8fCAhYWN0aXZlQ29uZmlnLmxheW91dClcIiBjbGFzcz1cInNoZWxsLWNvbnRhaW5lciBhY3RpdmUtc2lkZS1wYW5lXCI+XG4gICAgPGxpYi1zaGVsbC1zdGFja2VkLWxheW91dCBbY29uZmlnXT1cImFjdGl2ZUNvbmZpZ1wiPjwvbGliLXNoZWxsLXN0YWNrZWQtbGF5b3V0PlxuICA8L2Rpdj5cblxuICA8IS0tIFNJREVCQVIgTEFZT1VUIC0tPlxuICA8ZGl2ICpuZ0lmPVwiYWN0aXZlQ29uZmlnLmxheW91dCA9PT0gJ1NpZGViYXInXCIgY2xhc3M9XCJzaWRlYmFyIHNoZWxsLWNvbnRhaW5lciBhY3RpdmUtc2lkZS1wYW5lXCI+XG4gICAgPGxpYi1zaGVsbC1zaWRlYmFyLWxheW91dCBbY29uZmlnXT1cImFjdGl2ZUNvbmZpZ1wiPjwvbGliLXNoZWxsLXNpZGViYXItbGF5b3V0PlxuICA8L2Rpdj5cblxuICA8bGliLXNpZGUtcGFuZSAjcmlnaHRQYW5lPlxuICAgIDxyb3V0ZXItb3V0bGV0IG5hbWU9XCJyaWdodHBhbmVcIiAoYWN0aXZhdGUpPVwicmlnaHRQYW5lLm9uU2lkZVBhbmVBY3RpdmF0ZWQoJGV2ZW50KVwiIChkZWFjdGl2YXRlKT1cInJpZ2h0UGFuZS5vblNpZGVQYW5lRGVhY3RpdmF0ZWQoJGV2ZW50KVwiPjwvcm91dGVyLW91dGxldD5cbiAgPC9saWItc2lkZS1wYW5lPlxuXG4gIDxsaWItdG9hc3Rlci1jb250YWluZXI+PC9saWItdG9hc3Rlci1jb250YWluZXI+XG5cbjwvZGl2PiJdfQ==
@@ -0,0 +1,47 @@
1
+ import { Component, Inject, Input } from '@angular/core';
2
+ import { of } from 'rxjs';
3
+ import { APP_LINKS } from '../../../tokens';
4
+ import { ActivatedRoute, Router } from '@angular/router';
5
+ import { share } from 'rxjs/operators';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../../controls/nav-links-list/nav-links-list.component";
8
+ import * as i2 from "@angular/router";
9
+ export class ShellSidebarComponent {
10
+ constructor(router, route, links) {
11
+ this.router = router;
12
+ this.route = route;
13
+ this.links = links;
14
+ // tslint:disable-next-line:no-input-rename
15
+ this.sectionLinksPath = 'main';
16
+ this.sectionLinks = of([]);
17
+ // tslint:disable-next-line:no-input-rename
18
+ this.shellConfig = undefined;
19
+ this.activeFragment = null;
20
+ }
21
+ ngOnInit() {
22
+ this.activeFragment = this.route.fragment.pipe(share());
23
+ this.sectionLinks = this.links[this.sectionLinksPath];
24
+ }
25
+ }
26
+ ShellSidebarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ShellSidebarComponent, deps: [{ token: Router }, { token: ActivatedRoute }, { token: APP_LINKS }], target: i0.ɵɵFactoryTarget.Component });
27
+ ShellSidebarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: ShellSidebarComponent, selector: "lib-shell-sidebar", inputs: { sectionLinksPath: ["section-links", "sectionLinksPath"], shellConfig: ["config", "shellConfig"] }, ngImport: i0, template: "<!-- Sidebar component, swap this element with another sidebar if you like -->\n<div class=\"shell-sidebar-component-container\">\n <div class=\"shell-sidebar-component-links-container sidebar\">\n <lib-nav-links-list\n [show-icons]=\"true\"\n [links]=\"sectionLinks\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'sidebar nav-link group'\"\n [link-active-class]=\"'sidebar nav-link-active group'\">\n </lib-nav-links-list>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: i1.NavLinksListComponent, selector: "lib-nav-links-list", inputs: ["links", "active-fragment", "link-class", "link-active-class", "container-class", "show-icons"] }] });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ShellSidebarComponent, decorators: [{
29
+ type: Component,
30
+ args: [{ selector: 'lib-shell-sidebar', template: "<!-- Sidebar component, swap this element with another sidebar if you like -->\n<div class=\"shell-sidebar-component-container\">\n <div class=\"shell-sidebar-component-links-container sidebar\">\n <lib-nav-links-list\n [show-icons]=\"true\"\n [links]=\"sectionLinks\"\n [active-fragment]=\"activeFragment\"\n [link-class]=\"'sidebar nav-link group'\"\n [link-active-class]=\"'sidebar nav-link-active group'\">\n </lib-nav-links-list>\n </div>\n</div>\n" }]
31
+ }], ctorParameters: function () { return [{ type: i2.Router, decorators: [{
32
+ type: Inject,
33
+ args: [Router]
34
+ }] }, { type: i2.ActivatedRoute, decorators: [{
35
+ type: Inject,
36
+ args: [ActivatedRoute]
37
+ }] }, { type: undefined, decorators: [{
38
+ type: Inject,
39
+ args: [APP_LINKS]
40
+ }] }]; }, propDecorators: { sectionLinksPath: [{
41
+ type: Input,
42
+ args: ['section-links']
43
+ }], shellConfig: [{
44
+ type: Input,
45
+ args: ['config']
46
+ }] } });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtc2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvbGF5b3V0cy9zaGVsbC9zaGVsbC1zaWRlYmFyL3NoZWxsLXNpZGViYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtc2lkZWJhci9zaGVsbC1zaWRlYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUVqRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQU12QyxNQUFNLE9BQU8scUJBQXFCO0lBT2hDLFlBQXNDLE1BQWMsRUFDTixLQUFxQixFQUM3QixLQUFVO1FBRlYsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNOLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQzdCLFVBQUssR0FBTCxLQUFLLENBQUs7UUFSaEQsMkNBQTJDO1FBQ25CLHFCQUFnQixHQUFHLE1BQU0sQ0FBQztRQUMzQyxpQkFBWSxHQUEwQixFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEQsMkNBQTJDO1FBQzFCLGdCQUFXLEdBQTZCLFNBQVMsQ0FBQztRQUM1RCxtQkFBYyxHQUFlLElBQUksQ0FBQztJQUdXLENBQUM7SUFFckQsUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBMEIsQ0FBQztJQUNqRixDQUFDOztrSEFkVSxxQkFBcUIsa0JBT1osTUFBTSxhQUNOLGNBQWMsYUFDZCxTQUFTO3NHQVRsQixxQkFBcUIsc0tDWmxDLHVlQVlBOzJGREFhLHFCQUFxQjtrQkFKakMsU0FBUzsrQkFDRSxtQkFBbUI7OzBCQVVoQixNQUFNOzJCQUFDLE1BQU07OzBCQUNiLE1BQU07MkJBQUMsY0FBYzs7MEJBQ3JCLE1BQU07MkJBQUMsU0FBUzs0Q0FQTCxnQkFBZ0I7c0JBQXZDLEtBQUs7dUJBQUMsZUFBZTtnQkFHTCxXQUFXO3NCQUEzQixLQUFLO3VCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJU2hlbGxDb25maWcsIE5hdkxpbmsgfSBmcm9tICcuLy4uLy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcy9pbnRlcm5hbC9PYnNlcnZhYmxlJztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBUFBfTElOS1MgfSBmcm9tICcuLi8uLi8uLi90b2tlbnMnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBzaGFyZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXNoZWxsLXNpZGViYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2hlbGwtc2lkZWJhci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgU2hlbGxTaWRlYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3NlY3Rpb24tbGlua3MnKSBzZWN0aW9uTGlua3NQYXRoID0gJ21haW4nO1xuICBwdWJsaWMgc2VjdGlvbkxpbmtzOiBPYnNlcnZhYmxlPE5hdkxpbmtbXT4gPSBvZihbXSk7XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdjb25maWcnKSBzaGVsbENvbmZpZzogSVNoZWxsQ29uZmlnIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICBwdWJsaWMgYWN0aXZlRnJhZ21lbnQ6IGFueSB8IG51bGwgPSBudWxsO1xuICBjb25zdHJ1Y3RvcihASW5qZWN0KFJvdXRlcikgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyLFxuICAgICAgICAgICAgICBASW5qZWN0KEFjdGl2YXRlZFJvdXRlKSBwcm90ZWN0ZWQgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICAgICAgICBASW5qZWN0KEFQUF9MSU5LUykgcHVibGljIGxpbmtzOiBhbnkpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZlRnJhZ21lbnQgPSB0aGlzLnJvdXRlLmZyYWdtZW50LnBpcGUoc2hhcmUoKSk7XG4gICAgdGhpcy5zZWN0aW9uTGlua3MgPSB0aGlzLmxpbmtzW3RoaXMuc2VjdGlvbkxpbmtzUGF0aF0gYXMgT2JzZXJ2YWJsZTxOYXZMaW5rW10+O1xuICB9XG5cbn1cbiIsIjwhLS0gU2lkZWJhciBjb21wb25lbnQsIHN3YXAgdGhpcyBlbGVtZW50IHdpdGggYW5vdGhlciBzaWRlYmFyIGlmIHlvdSBsaWtlIC0tPlxuPGRpdiBjbGFzcz1cInNoZWxsLXNpZGViYXItY29tcG9uZW50LWNvbnRhaW5lclwiPlxuIDxkaXYgY2xhc3M9XCJzaGVsbC1zaWRlYmFyLWNvbXBvbmVudC1saW5rcy1jb250YWluZXIgc2lkZWJhclwiPlxuICAgIDxsaWItbmF2LWxpbmtzLWxpc3RcbiAgICAgIFtzaG93LWljb25zXT1cInRydWVcIlxuICAgICAgW2xpbmtzXT1cInNlY3Rpb25MaW5rc1wiXG4gICAgICBbYWN0aXZlLWZyYWdtZW50XT1cImFjdGl2ZUZyYWdtZW50XCJcbiAgICAgIFtsaW5rLWNsYXNzXT1cIidzaWRlYmFyIG5hdi1saW5rIGdyb3VwJ1wiXG4gICAgICBbbGluay1hY3RpdmUtY2xhc3NdPVwiJ3NpZGViYXIgbmF2LWxpbmstYWN0aXZlIGdyb3VwJ1wiPlxuICAgIDwvbGliLW5hdi1saW5rcy1saXN0PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,45 @@
1
+ import { AuthService } from '@indice/ng-auth';
2
+ import { Component, Inject } from '@angular/core';
3
+ import { ActivatedRoute, Router } from '@angular/router';
4
+ import { APP_LINKS, SHELL_CONFIG } from '../../../tokens';
5
+ import { ShellHeaderComponent } from '../shell-header/shell-header.component';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common";
8
+ import * as i2 from "../../../directives/click-outside.directive";
9
+ import * as i3 from "../../../controls/notifications-indicator/notifications-indicator.component";
10
+ import * as i4 from "../../../controls/language-selection/language-selection.component";
11
+ import * as i5 from "../../../controls/user-profile-menu/user-profile-menu.component";
12
+ import * as i6 from "@indice/ng-auth";
13
+ import * as i7 from "@angular/router";
14
+ export class ShellSidebarHeaderComponent extends ShellHeaderComponent {
15
+ constructor(authService, router, route, config, links) {
16
+ super(authService, router, route, config, links);
17
+ this.authService = authService;
18
+ this.router = router;
19
+ this.route = route;
20
+ this.config = config;
21
+ this.links = links;
22
+ }
23
+ }
24
+ ShellSidebarHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ShellSidebarHeaderComponent, deps: [{ token: AuthService }, { token: Router }, { token: ActivatedRoute }, { token: SHELL_CONFIG }, { token: APP_LINKS }], target: i0.ɵɵFactoryTarget.Component });
25
+ ShellSidebarHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: ShellSidebarHeaderComponent, selector: "lib-shell-sidebar-header", usesInheritance: true, ngImport: i0, template: "<div class=\"shell-header-paddings\">\n <div class=\"shell-header-border\">\n <div class=\"shell-header-menu-container\">\n <div class=\"shell-header-md-visible\">\n <div class=\"shell-header-links-far-container\" (clickOutside)=\"onClickOutside($event)\">\n <!-- Profile dropdown -->\n <div *ngIf=\"profileMenuVisible\" class=\"ml-4\">\n <lib-user-profile-menu [show-user-name]=\"showUserNameOnHeader\"></lib-user-profile-menu>\n </div>\n <!-- Notifications dropdown -->\n <div *ngIf=\"showAlerts && user\" class=\"ml-4\">\n <lib-notifications-indicator></lib-notifications-indicator>\n </div>\n <!-- languages dropdown -->\n <div *ngIf=\"showLangs\" class=\"ml-4\">\n <lib-language-selection></lib-language-selection>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n \n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideEnabled", "attachOutsideOnClick", "delayClickOutsideInit", "emitOnBlur", "exclude", "excludeBeforeClick", "clickOutsideEvents"], outputs: ["clickOutside"] }, { kind: "component", type: i3.NotificationsIndicatorComponent, selector: "lib-notifications-indicator" }, { kind: "component", type: i4.LanguageSelectionComponent, selector: "lib-language-selection" }, { kind: "component", type: i5.UserProfileMenuComponent, selector: "lib-user-profile-menu", inputs: ["show-user-name"] }] });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ShellSidebarHeaderComponent, decorators: [{
27
+ type: Component,
28
+ args: [{ selector: 'lib-shell-sidebar-header', template: "<div class=\"shell-header-paddings\">\n <div class=\"shell-header-border\">\n <div class=\"shell-header-menu-container\">\n <div class=\"shell-header-md-visible\">\n <div class=\"shell-header-links-far-container\" (clickOutside)=\"onClickOutside($event)\">\n <!-- Profile dropdown -->\n <div *ngIf=\"profileMenuVisible\" class=\"ml-4\">\n <lib-user-profile-menu [show-user-name]=\"showUserNameOnHeader\"></lib-user-profile-menu>\n </div>\n <!-- Notifications dropdown -->\n <div *ngIf=\"showAlerts && user\" class=\"ml-4\">\n <lib-notifications-indicator></lib-notifications-indicator>\n </div>\n <!-- languages dropdown -->\n <div *ngIf=\"showLangs\" class=\"ml-4\">\n <lib-language-selection></lib-language-selection>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n \n" }]
29
+ }], ctorParameters: function () { return [{ type: i6.AuthService, decorators: [{
30
+ type: Inject,
31
+ args: [AuthService]
32
+ }] }, { type: i7.Router, decorators: [{
33
+ type: Inject,
34
+ args: [Router]
35
+ }] }, { type: i7.ActivatedRoute, decorators: [{
36
+ type: Inject,
37
+ args: [ActivatedRoute]
38
+ }] }, { type: undefined, decorators: [{
39
+ type: Inject,
40
+ args: [SHELL_CONFIG]
41
+ }] }, { type: undefined, decorators: [{
42
+ type: Inject,
43
+ args: [APP_LINKS]
44
+ }] }]; } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtc2lkZWJhci1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtc2lkZWJhci1oZWFkZXIvc2hlbGwtc2lkZWJhci1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2xheW91dHMvc2hlbGwvc2hlbGwtc2lkZWJhci1oZWFkZXIvc2hlbGwtc2lkZWJhci1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQTBCLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7Ozs7OztBQU85RSxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsb0JBQW9CO0lBQ25FLFlBQTJDLFdBQXdCLEVBQ3pDLE1BQWMsRUFDTixLQUFxQixFQUMxQixNQUFXLEVBQ2QsS0FBVTtRQUNsQyxLQUFLLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBTFIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDekMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNOLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQzFCLFdBQU0sR0FBTixNQUFNLENBQUs7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFLO0lBRXBDLENBQUM7O3dIQVBVLDJCQUEyQixrQkFDbEIsV0FBVyxhQUN2QixNQUFNLGFBQ04sY0FBYyxhQUNkLFlBQVksYUFDWixTQUFTOzRHQUxOLDJCQUEyQix1RkNaeEMsbWhDQXVCQTsyRkRYYSwyQkFBMkI7a0JBSnZDLFNBQVM7K0JBQ0UsMEJBQTBCOzswQkFJdkIsTUFBTTsyQkFBQyxXQUFXOzswQkFDOUIsTUFBTTsyQkFBQyxNQUFNOzswQkFDYixNQUFNOzJCQUFDLGNBQWM7OzBCQUNyQixNQUFNOzJCQUFDLFlBQVk7OzBCQUNuQixNQUFNOzJCQUFDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnQGluZGljZS9uZy1hdXRoJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIEV2ZW50LCBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBUFBfTElOS1MsIFNIRUxMX0NPTkZJRyB9IGZyb20gJy4uLy4uLy4uL3Rva2Vucyc7XG5pbXBvcnQgeyBTaGVsbEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4uL3NoZWxsLWhlYWRlci9zaGVsbC1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNoZWxsTGF5b3V0VHlwZSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXNoZWxsLXNpZGViYXItaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NoZWxsLXNpZGViYXItaGVhZGVyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTaGVsbFNpZGViYXJIZWFkZXJDb21wb25lbnQgZXh0ZW5kcyBTaGVsbEhlYWRlckNvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoQXV0aFNlcnZpY2UpIHByb3RlY3RlZCBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXG4gIEBJbmplY3QoUm91dGVyKSBwcm90ZWN0ZWQgcm91dGVyOiBSb3V0ZXIsXG4gIEBJbmplY3QoQWN0aXZhdGVkUm91dGUpIHByb3RlY3RlZCByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gIEBJbmplY3QoU0hFTExfQ09ORklHKSBwdWJsaWMgY29uZmlnOiBhbnksXG4gIEBJbmplY3QoQVBQX0xJTktTKSBwdWJsaWMgbGlua3M6IGFueSkge1xuICAgIHN1cGVyKGF1dGhTZXJ2aWNlLCByb3V0ZXIsIHJvdXRlLCBjb25maWcsIGxpbmtzKTtcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwic2hlbGwtaGVhZGVyLXBhZGRpbmdzXCI+XG4gICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1ib3JkZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1tZW51LWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1tZC12aXNpYmxlXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoZWxsLWhlYWRlci1saW5rcy1mYXItY29udGFpbmVyXCIgKGNsaWNrT3V0c2lkZSk9XCJvbkNsaWNrT3V0c2lkZSgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPCEtLSBQcm9maWxlIGRyb3Bkb3duIC0tPlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJwcm9maWxlTWVudVZpc2libGVcIiBjbGFzcz1cIm1sLTRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGxpYi11c2VyLXByb2ZpbGUtbWVudSBbc2hvdy11c2VyLW5hbWVdPVwic2hvd1VzZXJOYW1lT25IZWFkZXJcIj48L2xpYi11c2VyLXByb2ZpbGUtbWVudT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8IS0tIE5vdGlmaWNhdGlvbnMgZHJvcGRvd24gLS0+XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNob3dBbGVydHMgJiYgdXNlclwiIGNsYXNzPVwibWwtNFwiPlxuICAgICAgICAgICAgICAgICAgICA8bGliLW5vdGlmaWNhdGlvbnMtaW5kaWNhdG9yPjwvbGliLW5vdGlmaWNhdGlvbnMtaW5kaWNhdG9yPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwhLS0gbGFuZ3VhZ2VzIGRyb3Bkb3duIC0tPlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93TGFuZ3NcIiBjbGFzcz1cIm1sLTRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGxpYi1sYW5ndWFnZS1zZWxlY3Rpb24+PC9saWItbGFuZ3VhZ2Utc2VsZWN0aW9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4gXG4iXX0=