@design-factory/design-factory 15.2.3 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/README.md +17 -1
  2. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-Bold.ttf +0 -0
  3. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-Bold.woff +0 -0
  4. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-Bold.woff2 +0 -0
  5. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-BoldItalic.ttf +0 -0
  6. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-BoldItalic.woff +0 -0
  7. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-BoldItalic.woff2 +0 -0
  8. package/assets/fonts/amadeus-neue/light/AmadeusNeue-Light.ttf +0 -0
  9. package/assets/fonts/amadeus-neue/light/AmadeusNeue-Light.woff +0 -0
  10. package/assets/fonts/amadeus-neue/light/AmadeusNeue-Light.woff2 +0 -0
  11. package/assets/fonts/amadeus-neue/light/AmadeusNeue-LightItalic.ttf +0 -0
  12. package/assets/fonts/amadeus-neue/light/AmadeusNeue-LightItalic.woff +0 -0
  13. package/assets/fonts/amadeus-neue/light/AmadeusNeue-LightItalic.woff2 +0 -0
  14. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-Medium.ttf +0 -0
  15. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-Medium.woff +0 -0
  16. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-Medium.woff2 +0 -0
  17. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-MediumItalic.ttf +0 -0
  18. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-MediumItalic.woff +0 -0
  19. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-MediumItalic.woff2 +0 -0
  20. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-Regular.ttf +0 -0
  21. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-Regular.woff +0 -0
  22. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-Regular.woff2 +0 -0
  23. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-RegularItalic.ttf +0 -0
  24. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-RegularItalic.woff +0 -0
  25. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-RegularItalic.woff2 +0 -0
  26. package/design-factory-initial-branding.css +1 -0
  27. package/design-factory-initial-branding.scss +1 -0
  28. package/design-factory.css +1 -3
  29. package/design-factory.scss +1 -0
  30. package/esm2022/lib/angular/accessibility/components/skip-links-container/skip-links-container.component.mjs +3 -3
  31. package/esm2022/lib/angular/df.module.mjs +102 -0
  32. package/esm2022/lib/angular/icon/amadeus-icon.mjs +2 -2
  33. package/esm2022/lib/angular/sidenav/sidenavlist.component.mjs +3 -12
  34. package/esm2022/lib/angular/stepper/stepper.component.mjs +65 -0
  35. package/esm2022/lib/angular/stepper/stepper.directive.mjs +174 -0
  36. package/esm2022/lib/angular/stepper/stepper.module.mjs +17 -0
  37. package/esm2022/lib/angular/stepper/stepper.service.mjs +213 -0
  38. package/esm2022/lib/angular/tooltip/truncate/tooltipTruncate.directive.mjs +5 -3
  39. package/esm2022/lib/index.mjs +9 -96
  40. package/fesm2022/design-factory.mjs +1838 -1427
  41. package/fesm2022/design-factory.mjs.map +1 -1
  42. package/lib/angular/df.module.d.ts +26 -0
  43. package/lib/angular/stepper/stepper.component.d.ts +31 -0
  44. package/lib/angular/stepper/stepper.directive.d.ts +37 -0
  45. package/lib/angular/stepper/stepper.module.d.ts +8 -0
  46. package/lib/angular/stepper/stepper.service.d.ts +126 -0
  47. package/lib/angular/tooltip/truncate/tooltipTruncate.directive.d.ts +1 -0
  48. package/lib/index.d.ts +7 -23
  49. package/package.json +23 -4
  50. package/schematics/migrations/15_0_0/remove-ngx-slider/index.js +0 -1
  51. package/schematics/migrations/16_0_0/navbar-logo-dark/index.d.ts +9 -0
  52. package/schematics/migrations/16_0_0/navbar-logo-dark/index.js +43 -0
  53. package/schematics/migrations/16_0_0/revert-to-old-brand/index.d.ts +7 -0
  54. package/schematics/migrations/16_0_0/revert-to-old-brand/index.js +115 -0
  55. package/schematics/migrations/16_0_0/scss-var/files/removed.json +55 -0
  56. package/schematics/migrations/16_0_0/scss-var/files/renames.json +76 -0
  57. package/schematics/migrations/16_0_0/scss-var/index.d.ts +7 -0
  58. package/schematics/migrations/16_0_0/scss-var/index.js +57 -0
  59. package/schematics/migrations/16_0_0/stepper-classes/index.d.ts +13 -0
  60. package/schematics/migrations/16_0_0/stepper-classes/index.js +63 -0
  61. package/schematics/migrations/helpers.js +0 -1
  62. package/schematics/migrations/migration.json +23 -1
  63. package/schematics/migrations/utils/component-resource-collector.d.ts +44 -0
  64. package/schematics/migrations/utils/component-resource-collector.js +166 -0
  65. package/schematics/migrations/utils/project_tsconfig_paths.js +0 -1
  66. package/schematics/migrations/utils/style-updater.d.ts +9 -0
  67. package/schematics/migrations/utils/style-updater.js +38 -0
  68. package/schematics/migrations/utils/template-updater.d.ts +9 -0
  69. package/schematics/migrations/utils/template-updater.js +38 -0
  70. package/schematics/migrations/utils/typescript/compiler_host.js +0 -1
  71. package/schematics/migrations/utils/typescript/decorators.d.ts +22 -0
  72. package/schematics/migrations/utils/typescript/decorators.js +41 -0
  73. package/schematics/migrations/utils/typescript/functions.d.ts +14 -0
  74. package/schematics/migrations/utils/typescript/functions.js +20 -0
  75. package/schematics/migrations/utils/typescript/imports.d.ts +17 -0
  76. package/schematics/migrations/utils/typescript/imports.js +110 -0
  77. package/schematics/migrations/utils/typescript/line-mappings.d.ts +21 -0
  78. package/schematics/migrations/utils/typescript/line-mappings.js +75 -0
  79. package/schematics/migrations/utils/typescript/parse_tsconfig.js +0 -1
  80. package/schematics/migrations/utils/typescript/property-name.d.ts +18 -0
  81. package/schematics/migrations/utils/typescript/property-name.js +27 -0
  82. package/schematics/ng-add/index.js +0 -1
  83. package/schematics/ng-add/schema.js +0 -1
  84. package/styles/scss/_common.root.scss +37 -0
  85. package/styles/scss/_common.scss +3 -9
  86. package/styles/scss/_common.variables.scss +16 -6
  87. package/styles/scss/_variables.scss +0 -1
  88. package/styles/scss/bootstrap/_maps.scss +10 -9
  89. package/styles/scss/bootstrap/_mixins-override.scss +26 -0
  90. package/styles/scss/bootstrap/_variables.scss +927 -267
  91. package/styles/scss/components/accordion/_accordion.scss +31 -14
  92. package/styles/scss/components/accordion/_accordion.variables.scss +5 -5
  93. package/styles/scss/components/alert/_alert.scss +130 -228
  94. package/styles/scss/components/alert/_alert.variables.scss +22 -33
  95. package/styles/scss/components/badge/_badge.scss +130 -118
  96. package/styles/scss/components/badge/_badge.variables.scss +14 -8
  97. package/styles/scss/components/brand-color/_brand-color.mixins.scss +19 -4
  98. package/styles/scss/components/brand-color/_brand-color.scss +4 -6
  99. package/styles/scss/components/brand-color/_brand-color.variables.scss +1 -7
  100. package/styles/scss/components/brand-color/_brand-color_container.scss +28 -0
  101. package/styles/scss/components/breadcrumbs/_breadcrumbs.scss +77 -65
  102. package/styles/scss/components/breadcrumbs/_breadcrumbs.variables.scss +6 -4
  103. package/styles/scss/components/button/_button.scss +120 -55
  104. package/styles/scss/components/button/_button.variables.scss +18 -4
  105. package/styles/scss/components/button/_button_container.scss +9 -45
  106. package/styles/scss/components/card/_card.scss +90 -58
  107. package/styles/scss/components/card/_card.variables.scss +13 -13
  108. package/styles/scss/components/carousel/_carousel.scss +22 -23
  109. package/styles/scss/components/carousel/_carousel.variables.scss +2 -1
  110. package/styles/scss/components/checkbox/_checkbox.scss +14 -8
  111. package/styles/scss/components/checkbox/_checkbox.variables.scss +2 -2
  112. package/styles/scss/components/collapse/_collapse.scss +15 -7
  113. package/styles/scss/components/collapse/_collapse.variables.scss +3 -3
  114. package/styles/scss/components/datepicker/_datepicker.scss +178 -122
  115. package/styles/scss/components/datepicker/_datepicker.variables.scss +22 -15
  116. package/styles/scss/components/dropdown/_dropdown.mixins.scss +4 -4
  117. package/styles/scss/components/dropdown/_dropdown.scss +39 -19
  118. package/styles/scss/components/dropdown/_dropdown.variables.scss +4 -4
  119. package/styles/scss/components/fieldset/_fieldset.scss +4 -2
  120. package/styles/scss/components/fonts/_fonts-family.scss +112 -29
  121. package/styles/scss/components/fonts/_fonts.root.scss +27 -0
  122. package/styles/scss/components/fonts/_fonts.scss +25 -26
  123. package/styles/scss/components/fonts/_fonts.variables.scss +2 -2
  124. package/styles/scss/components/footer/_footer.scss +48 -18
  125. package/styles/scss/components/footer/_footer.variables.scss +4 -2
  126. package/styles/scss/components/form/_form.scss +69 -16
  127. package/styles/scss/components/form/_form.variables.scss +23 -3
  128. package/styles/scss/components/icon/_amadeus-icon.scss +2 -2
  129. package/styles/scss/components/icon/_amadeus-icon.variables.scss +1 -0
  130. package/styles/scss/components/inputs/_inputs.mixin.scss +8 -4
  131. package/styles/scss/components/inputs/_inputs.root.scss +8 -0
  132. package/styles/scss/components/inputs/_inputs.scss +159 -118
  133. package/styles/scss/components/inputs/_inputs.variables.scss +2 -1
  134. package/styles/scss/components/link/_link.mixins.scss +49 -49
  135. package/styles/scss/components/link/_link.scss +84 -22
  136. package/styles/scss/components/link/_link.variables.scss +6 -6
  137. package/styles/scss/components/list/_list.scss +10 -5
  138. package/styles/scss/components/list-group/_list-group.scss +54 -48
  139. package/styles/scss/components/list-group/_list-group.variables.scss +6 -14
  140. package/styles/scss/components/media/_media.scss +17 -9
  141. package/styles/scss/components/media/_media.variables.scss +2 -1
  142. package/styles/scss/components/modal/_modal.scss +88 -39
  143. package/styles/scss/components/modal/_modal.variables.scss +4 -5
  144. package/styles/scss/components/navbar/_navbar.scss +298 -115
  145. package/styles/scss/components/navbar/_navbar.variables.scss +29 -18
  146. package/styles/scss/components/pagination/_pagination.scss +68 -82
  147. package/styles/scss/components/pagination/_pagination.variables.scss +5 -8
  148. package/styles/scss/components/pagination/_pagination_container.scss +3 -0
  149. package/styles/scss/components/popover/_popover.mixin.scss +20 -33
  150. package/styles/scss/components/popover/_popover.scss +25 -7
  151. package/styles/scss/components/popover/_popover_container.scss +123 -74
  152. package/styles/scss/components/progressbar/_progressbar.scss +15 -7
  153. package/styles/scss/components/progressbar/_progressbar.variables.scss +3 -2
  154. package/styles/scss/components/radio/_radio.scss +19 -14
  155. package/styles/scss/components/rating/_rating.scss +41 -22
  156. package/styles/scss/components/rating/_rating.variables.scss +5 -5
  157. package/styles/scss/components/scrollspy/_scrollspy.scss +30 -13
  158. package/styles/scss/components/scrollspy/_scrollspy.variables.scss +2 -1
  159. package/styles/scss/components/select/_select.scss +232 -166
  160. package/styles/scss/components/select/_select.variables.scss +15 -15
  161. package/styles/scss/components/separator/_separator.scss +2 -1
  162. package/styles/scss/components/sidenav/_sidenav.scss +208 -135
  163. package/styles/scss/components/sidenav/_sidenav.variables.scss +19 -20
  164. package/styles/scss/components/skip-links/_skip-links.scss +31 -16
  165. package/styles/scss/components/skip-links/_skip-links.variables.scss +6 -6
  166. package/styles/scss/components/slider/_slider.scss +11 -10
  167. package/styles/scss/components/slider/_slider.variables.scss +8 -8
  168. package/styles/scss/components/speechbubble/_speechbubble.scss +50 -30
  169. package/styles/scss/components/speechbubble/_speechbubble.variables.scss +4 -2
  170. package/styles/scss/components/spinner/_spinner.scss +34 -29
  171. package/styles/scss/components/stepper/_stepper.mixins.scss +111 -151
  172. package/styles/scss/components/stepper/_stepper.scss +163 -69
  173. package/styles/scss/components/stepper/_stepper.variables.scss +23 -17
  174. package/styles/scss/components/table/_advancedtables.scss +50 -31
  175. package/styles/scss/components/table/_table.variables.scss +3 -2
  176. package/styles/scss/components/tabs/_tabs.scss +98 -49
  177. package/styles/scss/components/tabs/_tabs.variables.scss +11 -10
  178. package/styles/scss/components/toast/_toast.scss +136 -68
  179. package/styles/scss/components/toast/_toast.variables.scss +4 -4
  180. package/styles/scss/components/toggle/_toggle.scss +90 -44
  181. package/styles/scss/components/toggle/_toggle.variables.scss +7 -5
  182. package/styles/scss/components/typeahead/_typeahead.scss +18 -8
  183. package/styles/scss/components/typeahead/_typeahead.variables.scss +1 -1
  184. package/styles/scss/df-styles-namespace.scss +8 -11
  185. package/styles/scss/df-styles.scss +6 -3
  186. package/styles/scss/themes/brand2023/_variables.scss +585 -0
  187. package/styles/scss/utilities/_common.utilities.scss +112 -32
  188. package/assets/fonts/amadeus-light/amadeus-light.svg +0 -8658
  189. package/assets/fonts/amadeus-light/amadeus-light.ttf +0 -0
  190. package/assets/fonts/amadeus-light/amadeus-light.woff +0 -0
  191. package/assets/fonts/amadeus-light/amadeus-light.woff2 +0 -0
  192. package/assets/icon-amadeus.svg +0 -1
  193. package/esm2022/lib/angular/utils/html-element-helper.mjs +0 -8
  194. package/esm2022/lib/angular/utils/titleTruncate.directive.mjs +0 -39
  195. package/lib/angular/utils/html-element-helper.d.ts +0 -5
  196. package/lib/angular/utils/titleTruncate.directive.d.ts +0 -16
  197. package/schematics/migrations/15_0_0/remove-ngx-slider/index.js.map +0 -1
  198. package/schematics/migrations/helpers.js.map +0 -1
  199. package/schematics/migrations/utils/project_tsconfig_paths.js.map +0 -1
  200. package/schematics/migrations/utils/typescript/compiler_host.js.map +0 -1
  201. package/schematics/migrations/utils/typescript/parse_tsconfig.js.map +0 -1
  202. package/schematics/ng-add/index.js.map +0 -1
  203. package/schematics/ng-add/schema.js.map +0 -1
  204. package/styles/scss/components/tooltip/_tooltip.scss +0 -3
  205. package/styles/scss/components/tooltip/_tooltip.variables.scss +0 -5
@@ -1 +1,2 @@
1
+ @import './styles/scss/themes/brand2023/variables';
1
2
  @import './styles/scss/df-styles';
@@ -20,13 +20,13 @@ export class SkipLinksContainerComponent {
20
20
  this.focusSubscription.unsubscribe();
21
21
  }
22
22
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: SkipLinksContainerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
23
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: SkipLinksContainerComponent, isStandalone: true, selector: "df-skip-links-container", queries: [{ propertyName: "links", predicate: SkipLinkDirective }], ngImport: i0, template: "<section class=\"df-skip-links__section\">\n <div class=\"df-skip-links\">\n <div\n class=\"df-skip-links__wrap list-group\"\n [class.focus]=\"inFocus\"\n (blur)=\"inFocus=false\"\n >\n <ng-content></ng-content>\n </div>\n </div>\n</section>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
23
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: SkipLinksContainerComponent, isStandalone: true, selector: "df-skip-links-container", queries: [{ propertyName: "links", predicate: SkipLinkDirective }], ngImport: i0, template: "<section class=\"df-skip-links__section\">\n <div class=\"df-skip-links\">\n <div\n class=\"df-skip-links-wrap list-group\"\n [class.focus]=\"inFocus\"\n (blur)=\"inFocus=false\"\n >\n <ng-content></ng-content>\n </div>\n </div>\n</section>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
24
24
  }
25
25
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: SkipLinksContainerComponent, decorators: [{
26
26
  type: Component,
27
- args: [{ selector: 'df-skip-links-container', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<section class=\"df-skip-links__section\">\n <div class=\"df-skip-links\">\n <div\n class=\"df-skip-links__wrap list-group\"\n [class.focus]=\"inFocus\"\n (blur)=\"inFocus=false\"\n >\n <ng-content></ng-content>\n </div>\n </div>\n</section>\n" }]
27
+ args: [{ selector: 'df-skip-links-container', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<section class=\"df-skip-links__section\">\n <div class=\"df-skip-links\">\n <div\n class=\"df-skip-links-wrap list-group\"\n [class.focus]=\"inFocus\"\n (blur)=\"inFocus=false\"\n >\n <ng-content></ng-content>\n </div>\n </div>\n</section>\n" }]
28
28
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { links: [{
29
29
  type: ContentChildren,
30
30
  args: [SkipLinkDirective]
31
31
  }] } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpcC1saW5rcy1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL2FjY2Vzc2liaWxpdHkvY29tcG9uZW50cy9za2lwLWxpbmtzLWNvbnRhaW5lci9za2lwLWxpbmtzLWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2FuZ3VsYXIvYWNjZXNzaWJpbGl0eS9jb21wb25lbnRzL3NraXAtbGlua3MtY29udGFpbmVyL3NraXAtbGlua3MtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFDTCxTQUFTLEVBQ1QsZUFBZSxFQUlmLHVCQUF1QixFQUV4QixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFnQixNQUFNLE1BQU0sQ0FBQzs7QUFRM0MsTUFBTSxPQUFPLDJCQUEyQjtJQUt0QyxZQUFvQixjQUFpQztRQUFqQyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFKckQsWUFBTyxHQUFHLEtBQUssQ0FBQztJQUl3QyxDQUFDO0lBRXpELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDdEIsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFjLEVBQUUsRUFBRTtZQUNyRyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkMsQ0FBQzs4R0FuQlUsMkJBQTJCO2tHQUEzQiwyQkFBMkIseUdBRXJCLGlCQUFpQiw2QkNwQnBDLG9SQVdBOzsyRkRPYSwyQkFBMkI7a0JBTnZDLFNBQVM7K0JBQ0UseUJBQXlCLG1CQUVsQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUk7d0dBSTRCLEtBQUs7c0JBQWhELGVBQWU7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2tpcExpbmtEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3NraXAtbGluay5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIFF1ZXJ5TGlzdCxcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgT25EZXN0cm95LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtZXJnZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RmLXNraXAtbGlua3MtY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NraXAtbGlua3MtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgU2tpcExpbmtzQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95IHtcbiAgaW5Gb2N1cyA9IGZhbHNlO1xuICBAQ29udGVudENoaWxkcmVuKFNraXBMaW5rRGlyZWN0aXZlKSBwcml2YXRlIGxpbmtzITogUXVlcnlMaXN0PFNraXBMaW5rRGlyZWN0aXZlPjtcbiAgcHJpdmF0ZSBmb2N1c1N1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgaWYgKCF0aGlzLmxpbmtzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZvY3VzU3Vic2NyaXB0aW9uID0gbWVyZ2UoLi4udGhpcy5saW5rcy5tYXAoKGxpbmspID0+IGxpbmsuaW5Gb2N1cykpLnN1YnNjcmliZSgoZm9jdXM6IGJvb2xlYW4pID0+IHtcbiAgICAgIHRoaXMuaW5Gb2N1cyA9IGZvY3VzO1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmZvY3VzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiIsIjxzZWN0aW9uIGNsYXNzPVwiZGYtc2tpcC1saW5rc19fc2VjdGlvblwiPlxuICA8ZGl2IGNsYXNzPVwiZGYtc2tpcC1saW5rc1wiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiZGYtc2tpcC1saW5rc19fd3JhcCBsaXN0LWdyb3VwXCJcbiAgICAgIFtjbGFzcy5mb2N1c109XCJpbkZvY3VzXCJcbiAgICAgIChibHVyKT1cImluRm9jdXM9ZmFsc2VcIlxuICAgID5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L3NlY3Rpb24+XG4iXX0=
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpcC1saW5rcy1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL2FjY2Vzc2liaWxpdHkvY29tcG9uZW50cy9za2lwLWxpbmtzLWNvbnRhaW5lci9za2lwLWxpbmtzLWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2FuZ3VsYXIvYWNjZXNzaWJpbGl0eS9jb21wb25lbnRzL3NraXAtbGlua3MtY29udGFpbmVyL3NraXAtbGlua3MtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFDTCxTQUFTLEVBQ1QsZUFBZSxFQUlmLHVCQUF1QixFQUV4QixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFnQixNQUFNLE1BQU0sQ0FBQzs7QUFRM0MsTUFBTSxPQUFPLDJCQUEyQjtJQUt0QyxZQUFvQixjQUFpQztRQUFqQyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFKckQsWUFBTyxHQUFHLEtBQUssQ0FBQztJQUl3QyxDQUFDO0lBRXpELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDdEIsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFjLEVBQUUsRUFBRTtZQUNyRyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkMsQ0FBQzs4R0FuQlUsMkJBQTJCO2tHQUEzQiwyQkFBMkIseUdBRXJCLGlCQUFpQiw2QkNwQnBDLG1SQVdBOzsyRkRPYSwyQkFBMkI7a0JBTnZDLFNBQVM7K0JBQ0UseUJBQXlCLG1CQUVsQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUk7d0dBSTRCLEtBQUs7c0JBQWhELGVBQWU7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2tpcExpbmtEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3NraXAtbGluay5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIFF1ZXJ5TGlzdCxcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgT25EZXN0cm95LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtZXJnZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RmLXNraXAtbGlua3MtY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NraXAtbGlua3MtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgU2tpcExpbmtzQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95IHtcbiAgaW5Gb2N1cyA9IGZhbHNlO1xuICBAQ29udGVudENoaWxkcmVuKFNraXBMaW5rRGlyZWN0aXZlKSBwcml2YXRlIGxpbmtzITogUXVlcnlMaXN0PFNraXBMaW5rRGlyZWN0aXZlPjtcbiAgcHJpdmF0ZSBmb2N1c1N1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgaWYgKCF0aGlzLmxpbmtzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZvY3VzU3Vic2NyaXB0aW9uID0gbWVyZ2UoLi4udGhpcy5saW5rcy5tYXAoKGxpbmspID0+IGxpbmsuaW5Gb2N1cykpLnN1YnNjcmliZSgoZm9jdXM6IGJvb2xlYW4pID0+IHtcbiAgICAgIHRoaXMuaW5Gb2N1cyA9IGZvY3VzO1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmZvY3VzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiIsIjxzZWN0aW9uIGNsYXNzPVwiZGYtc2tpcC1saW5rc19fc2VjdGlvblwiPlxuICA8ZGl2IGNsYXNzPVwiZGYtc2tpcC1saW5rc1wiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiZGYtc2tpcC1saW5rcy13cmFwIGxpc3QtZ3JvdXBcIlxuICAgICAgW2NsYXNzLmZvY3VzXT1cImluRm9jdXNcIlxuICAgICAgKGJsdXIpPVwiaW5Gb2N1cz1mYWxzZVwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvc2VjdGlvbj5cbiJdfQ==
@@ -0,0 +1,102 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { DfAlertModule } from './alert/alert.module';
3
+ import { DfDatePickerModule } from './datepicker/datepicker.module';
4
+ import { DfSelectModule } from './selects/select.module';
5
+ import { DfPopoverModule } from './popover/popover.module';
6
+ import { DfProgressbarModule } from './progressbar/progressbar.module';
7
+ import { DfAdvancedInputModule } from './inputs/input-advanced.module';
8
+ import { DfAccessibilityModule } from './accessibility/accessibility.module';
9
+ import { DfIconModule } from './icon/icon.module';
10
+ import { DfSliderModule } from './slider/slider.module';
11
+ import { DfTooltipModule } from './tooltip/tooltip.module';
12
+ import { DfSideNavModule } from './sidenav/sidenav.module';
13
+ import { DfSideNavCollapseModule } from './sidenav/dfSideNavCollapse.module';
14
+ import { DfAdvancedCardModule } from './card/card-advanced.module';
15
+ import { DfProgressIndicatorModule } from './progressindicator/progressindicator.module';
16
+ import { DfFooterModule } from './footer/footer.module';
17
+ import { DfToastModule } from './toast/toast.module';
18
+ import { DfStepperModule } from './stepper/stepper.module';
19
+ import * as i0 from "@angular/core";
20
+ const DF_MODULES = [
21
+ DfAlertModule,
22
+ DfDatePickerModule,
23
+ DfSelectModule,
24
+ DfProgressbarModule,
25
+ DfProgressIndicatorModule,
26
+ DfAdvancedInputModule,
27
+ DfAccessibilityModule,
28
+ DfSliderModule,
29
+ DfPopoverModule,
30
+ DfIconModule,
31
+ DfTooltipModule,
32
+ DfSideNavModule,
33
+ DfSideNavCollapseModule,
34
+ DfAdvancedCardModule,
35
+ DfFooterModule,
36
+ DfToastModule,
37
+ DfStepperModule
38
+ ];
39
+ /**
40
+ * @deprecated Import only the needed modules or use standalone components instead of DfModule
41
+ */
42
+ export class DfModule {
43
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
44
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.4", ngImport: i0, type: DfModule, imports: [DfAlertModule,
45
+ DfDatePickerModule,
46
+ DfSelectModule,
47
+ DfProgressbarModule,
48
+ DfProgressIndicatorModule,
49
+ DfAdvancedInputModule,
50
+ DfAccessibilityModule,
51
+ DfSliderModule,
52
+ DfPopoverModule,
53
+ DfIconModule,
54
+ DfTooltipModule,
55
+ DfSideNavModule,
56
+ DfSideNavCollapseModule,
57
+ DfAdvancedCardModule,
58
+ DfFooterModule,
59
+ DfToastModule,
60
+ DfStepperModule], exports: [DfAlertModule,
61
+ DfDatePickerModule,
62
+ DfSelectModule,
63
+ DfProgressbarModule,
64
+ DfProgressIndicatorModule,
65
+ DfAdvancedInputModule,
66
+ DfAccessibilityModule,
67
+ DfSliderModule,
68
+ DfPopoverModule,
69
+ DfIconModule,
70
+ DfTooltipModule,
71
+ DfSideNavModule,
72
+ DfSideNavCollapseModule,
73
+ DfAdvancedCardModule,
74
+ DfFooterModule,
75
+ DfToastModule,
76
+ DfStepperModule] }); }
77
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfModule, imports: [DF_MODULES, DfAlertModule,
78
+ DfDatePickerModule,
79
+ DfSelectModule,
80
+ DfProgressbarModule,
81
+ DfProgressIndicatorModule,
82
+ DfAdvancedInputModule,
83
+ DfAccessibilityModule,
84
+ DfSliderModule,
85
+ DfPopoverModule,
86
+ DfIconModule,
87
+ DfTooltipModule,
88
+ DfSideNavModule,
89
+ DfSideNavCollapseModule,
90
+ DfAdvancedCardModule,
91
+ DfFooterModule,
92
+ DfToastModule,
93
+ DfStepperModule] }); }
94
+ }
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfModule, decorators: [{
96
+ type: NgModule,
97
+ args: [{
98
+ imports: DF_MODULES,
99
+ exports: DF_MODULES
100
+ }]
101
+ }] });
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGYubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL2RmLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUN6RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFFM0QsTUFBTSxVQUFVLEdBQUc7SUFDakIsYUFBYTtJQUNiLGtCQUFrQjtJQUNsQixjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLHlCQUF5QjtJQUN6QixxQkFBcUI7SUFDckIscUJBQXFCO0lBQ3JCLGNBQWM7SUFDZCxlQUFlO0lBQ2YsWUFBWTtJQUNaLGVBQWU7SUFDZixlQUFlO0lBQ2YsdUJBQXVCO0lBQ3ZCLG9CQUFvQjtJQUNwQixjQUFjO0lBQ2QsYUFBYTtJQUNiLGVBQWU7Q0FDaEIsQ0FBQztBQUVGOztHQUVHO0FBS0gsTUFBTSxPQUFPLFFBQVE7OEdBQVIsUUFBUTsrR0FBUixRQUFRLFlBMUJuQixhQUFhO1lBQ2Isa0JBQWtCO1lBQ2xCLGNBQWM7WUFDZCxtQkFBbUI7WUFDbkIseUJBQXlCO1lBQ3pCLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsY0FBYztZQUNkLGVBQWU7WUFDZixZQUFZO1lBQ1osZUFBZTtZQUNmLGVBQWU7WUFDZix1QkFBdUI7WUFDdkIsb0JBQW9CO1lBQ3BCLGNBQWM7WUFDZCxhQUFhO1lBQ2IsZUFBZSxhQWhCZixhQUFhO1lBQ2Isa0JBQWtCO1lBQ2xCLGNBQWM7WUFDZCxtQkFBbUI7WUFDbkIseUJBQXlCO1lBQ3pCLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsY0FBYztZQUNkLGVBQWU7WUFDZixZQUFZO1lBQ1osZUFBZTtZQUNmLGVBQWU7WUFDZix1QkFBdUI7WUFDdkIsb0JBQW9CO1lBQ3BCLGNBQWM7WUFDZCxhQUFhO1lBQ2IsZUFBZTsrR0FVSixRQUFRLFlBSFYsVUFBVSxFQXZCbkIsYUFBYTtZQUNiLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsbUJBQW1CO1lBQ25CLHlCQUF5QjtZQUN6QixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLGNBQWM7WUFDZCxlQUFlO1lBQ2YsWUFBWTtZQUNaLGVBQWU7WUFDZixlQUFlO1lBQ2YsdUJBQXVCO1lBQ3ZCLG9CQUFvQjtZQUNwQixjQUFjO1lBQ2QsYUFBYTtZQUNiLGVBQWU7OzJGQVVKLFFBQVE7a0JBSnBCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLFVBQVU7b0JBQ25CLE9BQU8sRUFBRSxVQUFVO2lCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZkFsZXJ0TW9kdWxlIH0gZnJvbSAnLi9hbGVydC9hbGVydC5tb2R1bGUnO1xuaW1wb3J0IHsgRGZEYXRlUGlja2VyTW9kdWxlIH0gZnJvbSAnLi9kYXRlcGlja2VyL2RhdGVwaWNrZXIubW9kdWxlJztcbmltcG9ydCB7IERmU2VsZWN0TW9kdWxlIH0gZnJvbSAnLi9zZWxlY3RzL3NlbGVjdC5tb2R1bGUnO1xuaW1wb3J0IHsgRGZQb3BvdmVyTW9kdWxlIH0gZnJvbSAnLi9wb3BvdmVyL3BvcG92ZXIubW9kdWxlJztcbmltcG9ydCB7IERmUHJvZ3Jlc3NiYXJNb2R1bGUgfSBmcm9tICcuL3Byb2dyZXNzYmFyL3Byb2dyZXNzYmFyLm1vZHVsZSc7XG5pbXBvcnQgeyBEZkFkdmFuY2VkSW5wdXRNb2R1bGUgfSBmcm9tICcuL2lucHV0cy9pbnB1dC1hZHZhbmNlZC5tb2R1bGUnO1xuaW1wb3J0IHsgRGZBY2Nlc3NpYmlsaXR5TW9kdWxlIH0gZnJvbSAnLi9hY2Nlc3NpYmlsaXR5L2FjY2Vzc2liaWxpdHkubW9kdWxlJztcbmltcG9ydCB7IERmSWNvbk1vZHVsZSB9IGZyb20gJy4vaWNvbi9pY29uLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlNsaWRlck1vZHVsZSB9IGZyb20gJy4vc2xpZGVyL3NsaWRlci5tb2R1bGUnO1xuaW1wb3J0IHsgRGZUb29sdGlwTW9kdWxlIH0gZnJvbSAnLi90b29sdGlwL3Rvb2x0aXAubW9kdWxlJztcbmltcG9ydCB7IERmU2lkZU5hdk1vZHVsZSB9IGZyb20gJy4vc2lkZW5hdi9zaWRlbmF2Lm1vZHVsZSc7XG5pbXBvcnQgeyBEZlNpZGVOYXZDb2xsYXBzZU1vZHVsZSB9IGZyb20gJy4vc2lkZW5hdi9kZlNpZGVOYXZDb2xsYXBzZS5tb2R1bGUnO1xuaW1wb3J0IHsgRGZBZHZhbmNlZENhcmRNb2R1bGUgfSBmcm9tICcuL2NhcmQvY2FyZC1hZHZhbmNlZC5tb2R1bGUnO1xuaW1wb3J0IHsgRGZQcm9ncmVzc0luZGljYXRvck1vZHVsZSB9IGZyb20gJy4vcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3IubW9kdWxlJztcbmltcG9ydCB7IERmRm9vdGVyTW9kdWxlIH0gZnJvbSAnLi9mb290ZXIvZm9vdGVyLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlRvYXN0TW9kdWxlIH0gZnJvbSAnLi90b2FzdC90b2FzdC5tb2R1bGUnO1xuaW1wb3J0IHsgRGZTdGVwcGVyTW9kdWxlIH0gZnJvbSAnLi9zdGVwcGVyL3N0ZXBwZXIubW9kdWxlJztcblxuY29uc3QgREZfTU9EVUxFUyA9IFtcbiAgRGZBbGVydE1vZHVsZSxcbiAgRGZEYXRlUGlja2VyTW9kdWxlLFxuICBEZlNlbGVjdE1vZHVsZSxcbiAgRGZQcm9ncmVzc2Jhck1vZHVsZSxcbiAgRGZQcm9ncmVzc0luZGljYXRvck1vZHVsZSxcbiAgRGZBZHZhbmNlZElucHV0TW9kdWxlLFxuICBEZkFjY2Vzc2liaWxpdHlNb2R1bGUsXG4gIERmU2xpZGVyTW9kdWxlLFxuICBEZlBvcG92ZXJNb2R1bGUsXG4gIERmSWNvbk1vZHVsZSxcbiAgRGZUb29sdGlwTW9kdWxlLFxuICBEZlNpZGVOYXZNb2R1bGUsXG4gIERmU2lkZU5hdkNvbGxhcHNlTW9kdWxlLFxuICBEZkFkdmFuY2VkQ2FyZE1vZHVsZSxcbiAgRGZGb290ZXJNb2R1bGUsXG4gIERmVG9hc3RNb2R1bGUsXG4gIERmU3RlcHBlck1vZHVsZVxuXTtcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBJbXBvcnQgb25seSB0aGUgbmVlZGVkIG1vZHVsZXMgb3IgdXNlIHN0YW5kYWxvbmUgY29tcG9uZW50cyBpbnN0ZWFkIG9mIERmTW9kdWxlXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IERGX01PRFVMRVMsXG4gIGV4cG9ydHM6IERGX01PRFVMRVNcbn0pXG5leHBvcnQgY2xhc3MgRGZNb2R1bGUge30iXX0=
@@ -36,7 +36,7 @@ export class DfAmadeusIconComponent {
36
36
  />
37
37
  </g>
38
38
  </svg>
39
- `, isInline: true, styles: [":host{min-width:60px}:host svg{margin:10%}:host.icon-primary{fill:#005eb8}:host.icon-white{fill:#fff}\n"] }); }
39
+ `, isInline: true, styles: [":root{--df-navbar-height: 3.5rem}:host{min-width:60px}:host svg{margin:10%}:host.icon-primary{fill:var(--df-primary-500)}:host.icon-white{fill:#fff}\n"] }); }
40
40
  }
41
41
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfAmadeusIconComponent, decorators: [{
42
42
  type: Component,
@@ -74,6 +74,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
74
74
  />
75
75
  </g>
76
76
  </svg>
77
- `, standalone: true, styles: [":host{min-width:60px}:host svg{margin:10%}:host.icon-primary{fill:#005eb8}:host.icon-white{fill:#fff}\n"] }]
77
+ `, standalone: true, styles: [":root{--df-navbar-height: 3.5rem}:host{min-width:60px}:host svg{margin:10%}:host.icon-primary{fill:var(--df-primary-500)}:host.icon-white{fill:#fff}\n"] }]
78
78
  }] });
79
79
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1hZGV1cy1pY29uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL2ljb24vYW1hZGV1cy1pY29uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsTUFBTSxlQUFlLENBQUM7O0FBMEN0RCxNQUFNLE9BQU8sc0JBQXNCOzhHQUF0QixzQkFBc0I7a0dBQXRCLHNCQUFzQiwyRUFyQ3ZCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0NUOzsyRkFHVSxzQkFBc0I7a0JBeENsQyxTQUFTOytCQUNFLGlCQUFpQixZQUVqQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtDVCxjQUNXLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGYtYW1hZGV1cy1pY29uJyxcbiAgc3R5bGVVcmxzOiBbJy4vYW1hZGV1cy1pY29uLnNjc3MnXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8c3ZnXG4gICAgICB2ZXJzaW9uPVwiMS4xXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCJcbiAgICAgIHg9XCIwcHhcIlxuICAgICAgeT1cIjBweFwiXG4gICAgICB2aWV3Qm94PVwiMCAwIDUxMC4yIDY3LjlcIlxuICAgICAgc3R5bGU9XCJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDUxMC4yIDY3Ljk7XCJcbiAgICAgIHhtbDpzcGFjZT1cInByZXNlcnZlXCJcbiAgICA+XG4gICAgICA8ZyBpZD1cIkxheWVyXzJcIj48L2c+XG4gICAgICA8ZyBpZD1cIkxheWVyXzFcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTI2OS43LDBjLTguMywwLTE5LjgsMS40LTI2LjksNHY2MS45YzUuOCwxLjIsMTYuOCwyLDI0LjQsMmMyNiwwLDM2LjEtMTAuMiwzNi4xLTM0LjRDMzAzLjQsMTIuNSwyOTAuNSwwLDI2OS43LDBcbiAgICAgICAgTTI1Ny41LDEyLjZjMi40LTAuNSw3LTEuMSwxMS42LTEuMWMxMC42LDAsMTguOCw1LjksMTguOCwyMmMwLDE1LjUtNC4xLDIyLjktMjAuMiwyMi45Yy01LjIsMC0xMC4zLTAuOC0xMC4zLTAuOFYxMi42elxuICAgICAgICBNNDYxLjUsNjUuNWMwLDAsOSwyLjQsMjEuNywyLjRjMTIsMCwyNy00LjEsMjctMjAuM2MwLTEwLjYtNy44LTE1LjEtMjAuNS0xOS43Yy02LjktMi41LTEyLjctNC44LTEyLjctOS41XG4gICAgICBjMC0yLjMsMS43LTYuNywxMC41LTYuN2M4LjIsMCwxNi42LDMuOCwxNi42LDMuOGwzLjctMTAuOEM1MDUuMiwzLjQsNDk3LjIsMCw0ODYuMSwwYy0xMi4xLDAtMjMuOCw2LjQtMjMuOCwxOS4zXG4gICAgICBjMCwxMy4zLDEyLjEsMTcuMywyMS41LDIwLjVjNi40LDIuMiwxMS44LDQuNCwxMS44LDguN2MwLDQuMS0yLjMsNy43LTEzLjEsNy43Yy04LjksMC0xOC4zLTItMTguMy0yTDQ2MS41LDY1LjV6IE00MjkuNiw1MC4zXG4gICAgICBjLTMuNSwxLjctMTEsNC41LTE3LjksNC41Yy0xMCwwLTExLjctNC41LTExLjctMTQuOVYwLjZoLTIuMmMtMy4zLDAtMTAuNiwwLjYtMTIuNCwwLjl2NDAuM2MwLDE3LjYsNC4zLDI2LDIyLjIsMjZcbiAgICAgIGMxMy43LDAsMjEuNy01LjMsMjIuMi01LjNjMC4yLDAsNC45LDIuOSwxNC4zLDIuOXYtNjRjLTEtMC4yLTguMS0wLjktMTEuNy0wLjloLTIuOVY1MC4zeiBNMTk4LjUsMGMtMTMsMC0yMy4yLDMuMi0yNy4xLDUuMlxuICAgICAgbDMuMSwxMC45YzAsMCwxMC0zLjYsMTkuOC0zLjZjOC40LDAsMTIuNywyLjQsMTIuNywxMC42djQuN2gtMTIuN2MtMjEuNiwwLTI4LDkuOS0yOCwyMC44YzAsMTQuNSwxMS4zLDE5LjEsMjEuNiwxOS4xXG4gICAgICBjMTIsMCwxOC45LTUsMTkuOC01YzAuNywwLDMuMSwyLjYsMTQsMi42VjE5LjNDMjIxLjcsNS41LDIxMy4xLDAsMTk4LjUsMCBNMjA3LjEsNTIuN2MtMy4xLDEuMi0xMC43LDMuNy0xNi4yLDMuN1xuICAgICAgYy02LDAtMTAuNi0yLjEtMTAuNi04LjdjMC01LjcsMy4xLTksMTEuNC05LjNsMTUuNC0wLjZWNTIuN3ogTTMyLjIsMEMxOS4yLDAsOSwzLjIsNS4xLDUuMmwzLjEsMTAuOWMwLDAsMTAtMy42LDE5LjgtMy42XG4gICAgICBjOC40LDAsMTIuNywyLjQsMTIuNywxMC42djQuN0gyOGMtMjEuNiwwLTI4LDkuOS0yOCwyMC44YzAsMTQuNSwxMS4zLDE5LjEsMjEuNiwxOS4xYzEyLDAsMTguOS01LDE5LjgtNWMwLjcsMCwzLjEsMi42LDE0LDIuNlxuICAgICAgVjE5LjNDNTUuNCw1LjUsNDYuOCwwLDMyLjIsMCBNNDAuOSw1Mi43Yy0zLjEsMS4yLTEwLjcsMy43LTE2LjIsMy43Yy02LDAtMTAuNi0yLjEtMTAuNi04LjdjMC01LjcsMy4xLTksMTEuNC05LjNsMTUuNC0wLjZWNTIuN3pcbiAgICAgICAgTTExNCwzOWMtMC40LDAuOS0wLjgsMi43LTEuMSwzLjhjLTAuMy0xLTAuOC0yLjgtMS4xLTMuOEw5OSw2LjFDOTYuOCwwLjcsOTMuNCwwLDg3LjIsMGMtMi4yLDAtNi42LDAuMy02LjYsMC4zTDc0LDY2LjloMTQuNlxuICAgICAgbDMuMi00NC43bDEzLjksMzMuOGMxLDIuNiwzLjEsMy43LDcuMywzLjdjNC4xLDAsNi4yLTEsNy4zLTMuN0wxMzQsMjIuMmwzLjIsNDQuN2gxNC42bC02LjYtNjYuNmMwLDAtNC40LTAuMy02LjYtMC4zXG4gICAgICBjLTYuMiwwLTkuNiwwLjctMTEuOCw2LjFMMTE0LDM5eiBNMzIwLjgsNjQuN2MwLDAsMTEuMiwzLjEsMjUuNSwzLjFjMTUuMywwLDIyLjMtMS43LDIyLjMtMS43VjU0LjhjMCwwLTcuNiwxLjUtMTguMywxLjVcbiAgICAgIGMtOS4zLDAtMTUuMS0xLjItMTUuMS0xLjJ2LTE2aDI4LjlWMjcuOGgtMjguOVYxMi41YzAsMCw1LjctMSwxNC4xLTFjOS41LDAsMTguMSwxLjUsMTguMSwxLjVWMS42YzAsMC03LjUtMS42LTE5LjgtMS42XG4gICAgICBjLTE2LjMsMC0yNywyLjktMjcsMi45VjY0Ljd6XCJcbiAgICAgICAgLz5cbiAgICAgIDwvZz5cbiAgICA8L3N2Zz5cbiAgYCxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEZkFtYWRldXNJY29uQ29tcG9uZW50IHt9XG4iXX0=
@@ -6,7 +6,6 @@ import { RouterModule } from '@angular/router';
6
6
  import { DfMediaModule } from '../mediaqueries/media.module';
7
7
  import { DfSideNavCollapseModule } from './dfSideNavCollapse.module';
8
8
  import { DfManageSideNavDirective } from './manage-sidenav.directive';
9
- import { DfTitleTruncateDirective } from '../utils/titleTruncate.directive';
10
9
  import * as i0 from "@angular/core";
11
10
  import * as i1 from "@angular/common";
12
11
  import * as i2 from "@ng-bootstrap/ng-bootstrap";
@@ -32,19 +31,11 @@ export class DfSideNavListComponent {
32
31
  return `df-sidenav-id-${uniqueId};`;
33
32
  }
34
33
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfSideNavListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: DfSideNavListComponent, isStandalone: true, selector: "df-sidenavlist", inputs: { items: "items", tplIcon: "tplIcon", tplItem: "tplItem", currentItem: "currentItem", id: "id" }, ngImport: i0, template: "<ul class=\"df-sidenav-list\" [ngbCollapse]=\"currentItem?.isCollapsed ?? false\" [attr.id]=\"id\">\n <li *ngFor=\"let item of items; let i = index\" [ngSwitch]=\"item.type\" dfManageSideNav>\n <ng-container *ngSwitchCase=\"sideNavService.type.subMenus\">\n <ng-template #subMenus>\n <button\n class=\"df-sidenav-item d-flex align-items-center\"\n (click)=\"sideNavService.toggle(item)\"\n type=\"button\"\n [attr.aria-expanded]=\"!item.isCollapsed\"\n [attr.aria-controls]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n [class.df-sidenav-item-withicon]=\"item.icon\"\n >\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n <span\n class=\"ms-3\"\n [class.icon-chevron-down]=\"item.isCollapsed\"\n [class.icon-chevron-up]=\"!item.isCollapsed\"\n ></span>\n <!-- put the chevron as icon directly in the menu -->\n <!-- todo the icon and the minimized -->\n </button>\n <!-- we don't pass the icons as they are not suppose to have ones ??-->\n <df-sidenavlist\n [items]=\"item.subMenus ?? []\"\n [tplItem]=\"tplItem\"\n [currentItem]=\"item\"\n [id]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n ></df-sidenavlist>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSubMenus\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n <ng-template #elseSubMenus>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfSideNavItemContent>\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon me-5\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.actionButton\">\n <ng-template #dfSideNavItemButton>\n <button\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n (click)=\"sideNavService.activeItem(item)\"\n [class.active]=\"item.isActive\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </button>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseAction\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n <ng-template #elseAction>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfRouterTemplate>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n routerLinkActive=\"active\"\n routerLink=\"{{ item.value }}\"\n ariaCurrentWhenActive=\"page\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.routerLink\">\n <ng-container *ngIf=\"!item.breakpoints; else elseRouterLink\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n <ng-template #elseRouterLink>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.separator\">\n <ng-template #dfSeparatorTmp>\n <hr class=\"spacing-01\" />\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSeparator\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n <ng-template #elseSeparator>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.template\">\n <ng-template\n *ngIf=\"tplItem\"\n [ngTemplateOutlet]=\"tplItem.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.title\">\n <ng-template #dfTitleTmp>\n <div class=\"df-sidenav-item df-sidenav-title d-flex align-items-center flex-grow-1\">\n <span class=\"text-nowrap text-uppercase text-muted\" dfTitleTruncate>{{ item.title }}</span>\n </div>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseTitle\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n <ng-template #elseTitle>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <ng-template #dfLinkDefaultTmp>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n href=\"{{ item.value }}\"\n [class.active]=\"item.isActive && item.type === sideNavService.type.link\"\n [attr.target]=\"item.type === sideNavService.type.externalLink ? '_blank' : ''\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseDefault\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n <ng-template #elseDefault>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n </li>\n</ul>\n", dependencies: [{ kind: "component", type: DfSideNavListComponent, selector: "df-sidenavlist", inputs: ["items", "tplIcon", "tplItem", "currentItem", "id"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: NgbCollapseModule }, { kind: "directive", type: i2.NgbCollapse, selector: "[ngbCollapse]", inputs: ["animation", "ngbCollapse", "horizontal"], outputs: ["ngbCollapseChange", "shown", "hidden"], exportAs: ["ngbCollapse"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "ngmodule", type: DfMediaModule }, { kind: "directive", type: i4.DfIfMediaDirective, selector: "[dfIfMedia]", inputs: ["dfIfMedia"] }, { kind: "ngmodule", type: DfSideNavCollapseModule }, { kind: "directive", type: DfManageSideNavDirective, selector: "[dfManageSideNav]" }, { kind: "directive", type: DfTitleTruncateDirective, selector: "[dfTitleTruncate]", exportAs: ["dfTitleTruncate"] }] }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: DfSideNavListComponent, isStandalone: true, selector: "df-sidenavlist", inputs: { items: "items", tplIcon: "tplIcon", tplItem: "tplItem", currentItem: "currentItem", id: "id" }, ngImport: i0, template: "<ul class=\"df-sidenav-list\" [ngbCollapse]=\"currentItem?.isCollapsed ?? false\" [attr.id]=\"id\">\n <li *ngFor=\"let item of items; let i = index\" [ngSwitch]=\"item.type\" dfManageSideNav>\n <ng-container *ngSwitchCase=\"sideNavService.type.subMenus\">\n <ng-template #subMenus>\n <button\n class=\"df-sidenav-item d-flex align-items-center\"\n (click)=\"sideNavService.toggle(item)\"\n type=\"button\"\n [attr.aria-expanded]=\"!item.isCollapsed\"\n [attr.aria-controls]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n [class.df-sidenav-item-withicon]=\"item.icon\"\n >\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap text-truncate\">{{ item.title }}</span>\n <span\n class=\"ms-3\"\n [class.icon-chevron-down]=\"item.isCollapsed\"\n [class.icon-chevron-up]=\"!item.isCollapsed\"\n ></span>\n <!-- put the chevron as icon directly in the menu -->\n <!-- todo the icon and the minimized -->\n </button>\n <!-- we don't pass the icons as they are not suppose to have ones ??-->\n <df-sidenavlist\n [items]=\"item.subMenus ?? []\"\n [tplItem]=\"tplItem\"\n [currentItem]=\"item\"\n [id]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n ></df-sidenavlist>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSubMenus\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n <ng-template #elseSubMenus>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfSideNavItemContent>\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon me-5\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap text-truncate\">{{ item.title }}</span>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.actionButton\">\n <ng-template #dfSideNavItemButton>\n <button\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n (click)=\"sideNavService.activeItem(item)\"\n [class.active]=\"item.isActive\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </button>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseAction\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n <ng-template #elseAction>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfRouterTemplate>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n routerLinkActive=\"active\"\n routerLink=\"{{ item.value }}\"\n ariaCurrentWhenActive=\"page\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.routerLink\">\n <ng-container *ngIf=\"!item.breakpoints; else elseRouterLink\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n <ng-template #elseRouterLink>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.separator\">\n <ng-template #dfSeparatorTmp>\n <hr class=\"spacing-01\" />\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSeparator\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n <ng-template #elseSeparator>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.template\">\n <ng-template\n *ngIf=\"tplItem\"\n [ngTemplateOutlet]=\"tplItem.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.title\">\n <ng-template #dfTitleTmp>\n <div class=\"df-sidenav-item df-sidenav-title d-flex align-items-center flex-grow-1\">\n <span class=\"text-nowrap text-truncate text-uppercase text-muted\">{{ item.title }}</span>\n </div>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseTitle\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n <ng-template #elseTitle>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <ng-template #dfLinkDefaultTmp>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n href=\"{{ item.value }}\"\n [class.active]=\"item.isActive && item.type === sideNavService.type.link\"\n [attr.target]=\"item.type === sideNavService.type.externalLink ? '_blank' : ''\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseDefault\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n <ng-template #elseDefault>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n </li>\n</ul>\n", dependencies: [{ kind: "component", type: DfSideNavListComponent, selector: "df-sidenavlist", inputs: ["items", "tplIcon", "tplItem", "currentItem", "id"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: NgbCollapseModule }, { kind: "directive", type: i2.NgbCollapse, selector: "[ngbCollapse]", inputs: ["animation", "ngbCollapse", "horizontal"], outputs: ["ngbCollapseChange", "shown", "hidden"], exportAs: ["ngbCollapse"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "ngmodule", type: DfMediaModule }, { kind: "directive", type: i4.DfIfMediaDirective, selector: "[dfIfMedia]", inputs: ["dfIfMedia"] }, { kind: "ngmodule", type: DfSideNavCollapseModule }, { kind: "directive", type: DfManageSideNavDirective, selector: "[dfManageSideNav]" }] }); }
36
35
  }
37
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfSideNavListComponent, decorators: [{
38
37
  type: Component,
39
- args: [{ selector: 'df-sidenavlist', standalone: true, imports: [
40
- CommonModule,
41
- NgbCollapseModule,
42
- RouterModule,
43
- DfMediaModule,
44
- DfSideNavCollapseModule,
45
- DfManageSideNavDirective,
46
- DfTitleTruncateDirective
47
- ], template: "<ul class=\"df-sidenav-list\" [ngbCollapse]=\"currentItem?.isCollapsed ?? false\" [attr.id]=\"id\">\n <li *ngFor=\"let item of items; let i = index\" [ngSwitch]=\"item.type\" dfManageSideNav>\n <ng-container *ngSwitchCase=\"sideNavService.type.subMenus\">\n <ng-template #subMenus>\n <button\n class=\"df-sidenav-item d-flex align-items-center\"\n (click)=\"sideNavService.toggle(item)\"\n type=\"button\"\n [attr.aria-expanded]=\"!item.isCollapsed\"\n [attr.aria-controls]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n [class.df-sidenav-item-withicon]=\"item.icon\"\n >\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n <span\n class=\"ms-3\"\n [class.icon-chevron-down]=\"item.isCollapsed\"\n [class.icon-chevron-up]=\"!item.isCollapsed\"\n ></span>\n <!-- put the chevron as icon directly in the menu -->\n <!-- todo the icon and the minimized -->\n </button>\n <!-- we don't pass the icons as they are not suppose to have ones ??-->\n <df-sidenavlist\n [items]=\"item.subMenus ?? []\"\n [tplItem]=\"tplItem\"\n [currentItem]=\"item\"\n [id]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n ></df-sidenavlist>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSubMenus\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n <ng-template #elseSubMenus>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfSideNavItemContent>\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon me-5\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap\" dfTitleTruncate>{{ item.title }}</span>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.actionButton\">\n <ng-template #dfSideNavItemButton>\n <button\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n (click)=\"sideNavService.activeItem(item)\"\n [class.active]=\"item.isActive\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </button>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseAction\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n <ng-template #elseAction>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfRouterTemplate>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n routerLinkActive=\"active\"\n routerLink=\"{{ item.value }}\"\n ariaCurrentWhenActive=\"page\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.routerLink\">\n <ng-container *ngIf=\"!item.breakpoints; else elseRouterLink\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n <ng-template #elseRouterLink>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.separator\">\n <ng-template #dfSeparatorTmp>\n <hr class=\"spacing-01\" />\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSeparator\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n <ng-template #elseSeparator>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.template\">\n <ng-template\n *ngIf=\"tplItem\"\n [ngTemplateOutlet]=\"tplItem.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.title\">\n <ng-template #dfTitleTmp>\n <div class=\"df-sidenav-item df-sidenav-title d-flex align-items-center flex-grow-1\">\n <span class=\"text-nowrap text-uppercase text-muted\" dfTitleTruncate>{{ item.title }}</span>\n </div>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseTitle\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n <ng-template #elseTitle>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <ng-template #dfLinkDefaultTmp>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n href=\"{{ item.value }}\"\n [class.active]=\"item.isActive && item.type === sideNavService.type.link\"\n [attr.target]=\"item.type === sideNavService.type.externalLink ? '_blank' : ''\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseDefault\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n <ng-template #elseDefault>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n </li>\n</ul>\n" }]
38
+ args: [{ selector: 'df-sidenavlist', standalone: true, imports: [CommonModule, NgbCollapseModule, RouterModule, DfMediaModule, DfSideNavCollapseModule, DfManageSideNavDirective], template: "<ul class=\"df-sidenav-list\" [ngbCollapse]=\"currentItem?.isCollapsed ?? false\" [attr.id]=\"id\">\n <li *ngFor=\"let item of items; let i = index\" [ngSwitch]=\"item.type\" dfManageSideNav>\n <ng-container *ngSwitchCase=\"sideNavService.type.subMenus\">\n <ng-template #subMenus>\n <button\n class=\"df-sidenav-item d-flex align-items-center\"\n (click)=\"sideNavService.toggle(item)\"\n type=\"button\"\n [attr.aria-expanded]=\"!item.isCollapsed\"\n [attr.aria-controls]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n [class.df-sidenav-item-withicon]=\"item.icon\"\n >\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap text-truncate\">{{ item.title }}</span>\n <span\n class=\"ms-3\"\n [class.icon-chevron-down]=\"item.isCollapsed\"\n [class.icon-chevron-up]=\"!item.isCollapsed\"\n ></span>\n <!-- put the chevron as icon directly in the menu -->\n <!-- todo the icon and the minimized -->\n </button>\n <!-- we don't pass the icons as they are not suppose to have ones ??-->\n <df-sidenavlist\n [items]=\"item.subMenus ?? []\"\n [tplItem]=\"tplItem\"\n [currentItem]=\"item\"\n [id]=\"'sidenavControl' + controlledUniqueId.toString() + '-' + i\"\n ></df-sidenavlist>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSubMenus\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n <ng-template #elseSubMenus>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"subMenus\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfSideNavItemContent>\n <ng-template\n *ngIf=\"tplIcon && item.icon; else elseIcon\"\n [ngTemplateOutlet]=\"tplIcon.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n <ng-template #elseIcon>\n <span *ngIf=\"item.icon\" aria-hidden=\"true\" class=\"{{ item.icon }} df-sidenav-icon me-5\"></span>\n </ng-template>\n <span class=\"flex-grow-1 text-nowrap text-truncate\">{{ item.title }}</span>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.actionButton\">\n <ng-template #dfSideNavItemButton>\n <button\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n (click)=\"sideNavService.activeItem(item)\"\n [class.active]=\"item.isActive\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </button>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseAction\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n <ng-template #elseAction>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSideNavItemButton\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-template #dfRouterTemplate>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n routerLinkActive=\"active\"\n routerLink=\"{{ item.value }}\"\n ariaCurrentWhenActive=\"page\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngSwitchCase=\"sideNavService.type.routerLink\">\n <ng-container *ngIf=\"!item.breakpoints; else elseRouterLink\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n <ng-template #elseRouterLink>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfRouterTemplate\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.separator\">\n <ng-template #dfSeparatorTmp>\n <hr class=\"spacing-01\" />\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseSeparator\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n <ng-template #elseSeparator>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfSeparatorTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.template\">\n <ng-template\n *ngIf=\"tplItem\"\n [ngTemplateOutlet]=\"tplItem.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"sideNavService.type.title\">\n <ng-template #dfTitleTmp>\n <div class=\"df-sidenav-item df-sidenav-title d-flex align-items-center flex-grow-1\">\n <span class=\"text-nowrap text-truncate text-uppercase text-muted\">{{ item.title }}</span>\n </div>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseTitle\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n <ng-template #elseTitle>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfTitleTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <ng-template #dfLinkDefaultTmp>\n <a\n class=\"df-sidenav-item d-flex align-items-center flex-nowrap\"\n href=\"{{ item.value }}\"\n [class.active]=\"item.isActive && item.type === sideNavService.type.link\"\n [attr.target]=\"item.type === sideNavService.type.externalLink ? '_blank' : ''\"\n >\n <ng-container *ngTemplateOutlet=\"dfSideNavItemContent\"></ng-container>\n </a>\n </ng-template>\n <ng-container *ngIf=\"!item.breakpoints; else elseDefault\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n <ng-template #elseDefault>\n <ng-container *dfIfMedia=\"item.breakpoints!\">\n <ng-container *ngTemplateOutlet=\"dfLinkDefaultTmp\"></ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n </li>\n</ul>\n" }]
48
39
  }], propDecorators: { items: [{
49
40
  type: Input
50
41
  }], tplIcon: [{
@@ -56,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImpor
56
47
  }], id: [{
57
48
  type: Input
58
49
  }] } });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdmxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdmxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdmxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBR3JFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7QUFFNUUsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBRWpCOzs7Ozs7OztHQVFHO0FBZUgsTUFBTSxPQUFPLHNCQUFzQjtJQWRuQztRQW9CRSx1QkFBa0IsR0FBRyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNsRCxtQkFBYyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0tBTTNDO0lBSkMscUJBQXFCO1FBQ25CLFFBQVEsRUFBRSxDQUFDO1FBQ1gsT0FBTyxpQkFBaUIsUUFBUSxHQUFHLENBQUM7SUFDdEMsQ0FBQzs4R0FaVSxzQkFBc0I7a0dBQXRCLHNCQUFzQixvTENyQ25DLDJ4TkF5SkEsNENEcEhhLHNCQUFzQix3SEFUL0IsWUFBWSxrckJBQ1osaUJBQWlCLHdPQUNqQixZQUFZLHdlQUNaLGFBQWEsa0lBQ2IsdUJBQXVCLCtCQUN2Qix3QkFBd0IsOERBQ3hCLHdCQUF3Qjs7MkZBR2Ysc0JBQXNCO2tCQWRsQyxTQUFTOytCQUNFLGdCQUFnQixjQUVkLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixhQUFhO3dCQUNiLHVCQUF1Qjt3QkFDdkIsd0JBQXdCO3dCQUN4Qix3QkFBd0I7cUJBQ3pCOzhCQUdRLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csRUFBRTtzQkFBVixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZlNpZGVOYXZTZXJ2aWNlIH0gZnJvbSAnLi9zaWRlbmF2LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nYkNvbGxhcHNlTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IERmTWVkaWFNb2R1bGUgfSBmcm9tICcuLi9tZWRpYXF1ZXJpZXMvbWVkaWEubW9kdWxlJztcbmltcG9ydCB7IERmU2lkZU5hdkNvbGxhcHNlTW9kdWxlIH0gZnJvbSAnLi9kZlNpZGVOYXZDb2xsYXBzZS5tb2R1bGUnO1xuaW1wb3J0IHR5cGUgeyBEZlNpZGVOYXZJdGVtIH0gZnJvbSAnLi9zaWRlbmF2LnNlcnZpY2UnO1xuaW1wb3J0IHsgRGZTaWRlTmF2SWNvbkRpcmVjdGl2ZSwgRGZTaWRlTmF2SXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vc2lkZW5hdi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGZNYW5hZ2VTaWRlTmF2RGlyZWN0aXZlIH0gZnJvbSAnLi9tYW5hZ2Utc2lkZW5hdi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGZUaXRsZVRydW5jYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi4vdXRpbHMvdGl0bGVUcnVuY2F0ZS5kaXJlY3RpdmUnO1xuXG5sZXQgdW5pcXVlSWQgPSAwO1xuXG4vKipcbiAqIFNpZGVOYXYgaXMgYSBjb21wb25lbnQgdG8gcHJvdmlkZSBuYXZpZ2F0aW9uIGZlYXR1cmUgd2l0aCBhIHBhbmVsIG9uIHRoZSBzaWRlIG9mIHlvdXIgcGFnZVxuICpcbiAqIEl0IHN1cHBvcnRzIHNldmVyYWwgb3B0aW9ucyBhczpcbiAqICAtIEJlaW5nIGluIGFuIG92ZXJsYXkgbWVudSBvciBub3RcbiAqICAtIEJlaW5nIGNvbGxhcHNlZCBvciBub3RcbiAqICAtIENhbiBiZSB1c2VkIHdpdGggb3Igd2l0aG91dCBBbmd1bGFyIFJvdXRlclxuICogIC0gQ2FuIGJlIHVzZWQgd2l0aCBtZWRpYSBxdWVyaWVzIHRvIGFkanVzdCBiZWhhdmlvciB0byBkaWZmZXJlbnQgYnJlYWtwb2ludHMgKHNlZSBtZWRpYSBzZWN0aW9uKVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkZi1zaWRlbmF2bGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWRlbmF2bGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTmdiQ29sbGFwc2VNb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICAgIERmTWVkaWFNb2R1bGUsXG4gICAgRGZTaWRlTmF2Q29sbGFwc2VNb2R1bGUsXG4gICAgRGZNYW5hZ2VTaWRlTmF2RGlyZWN0aXZlLFxuICAgIERmVGl0bGVUcnVuY2F0ZURpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIERmU2lkZU5hdkxpc3RDb21wb25lbnQge1xuICBASW5wdXQoKSBpdGVtcyE6IERmU2lkZU5hdkl0ZW1bXTtcbiAgQElucHV0KCkgdHBsSWNvbiE6IERmU2lkZU5hdkljb25EaXJlY3RpdmU7XG4gIEBJbnB1dCgpIHRwbEl0ZW0hOiBEZlNpZGVOYXZJdGVtRGlyZWN0aXZlO1xuICBASW5wdXQoKSBjdXJyZW50SXRlbTogRGZTaWRlTmF2SXRlbSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY29udHJvbGxlZFVuaXF1ZUlkID0gdGhpcy5nZXRDb250cm9sbGVkVW5pcXVlSWQoKTtcbiAgc2lkZU5hdlNlcnZpY2UgPSBpbmplY3QoRGZTaWRlTmF2U2VydmljZSk7XG5cbiAgZ2V0Q29udHJvbGxlZFVuaXF1ZUlkKCk6IHN0cmluZyB7XG4gICAgdW5pcXVlSWQrKztcbiAgICByZXR1cm4gYGRmLXNpZGVuYXYtaWQtJHt1bmlxdWVJZH07YDtcbiAgfVxufVxuIiwiPHVsIGNsYXNzPVwiZGYtc2lkZW5hdi1saXN0XCIgW25nYkNvbGxhcHNlXT1cImN1cnJlbnRJdGVtPy5pc0NvbGxhcHNlZCA/PyBmYWxzZVwiIFthdHRyLmlkXT1cImlkXCI+XG4gIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtczsgbGV0IGkgPSBpbmRleFwiIFtuZ1N3aXRjaF09XCJpdGVtLnR5cGVcIiBkZk1hbmFnZVNpZGVOYXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwic2lkZU5hdlNlcnZpY2UudHlwZS5zdWJNZW51c1wiPlxuICAgICAgPG5nLXRlbXBsYXRlICNzdWJNZW51cz5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIlxuICAgICAgICAgIChjbGljayk9XCJzaWRlTmF2U2VydmljZS50b2dnbGUoaXRlbSlcIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiIWl0ZW0uaXNDb2xsYXBzZWRcIlxuICAgICAgICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiJ3NpZGVuYXZDb250cm9sJyArIGNvbnRyb2xsZWRVbmlxdWVJZC50b1N0cmluZygpICsgJy0nICsgaVwiXG4gICAgICAgICAgW2NsYXNzLmRmLXNpZGVuYXYtaXRlbS13aXRoaWNvbl09XCJpdGVtLmljb25cIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAqbmdJZj1cInRwbEljb24gJiYgaXRlbS5pY29uOyBlbHNlIGVsc2VJY29uXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRwbEljb24udGVtcGxhdGVSZWZcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZUljb24+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW0uaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGNsYXNzPVwie3sgaXRlbS5pY29uIH19IGRmLXNpZGVuYXYtaWNvblwiPjwvc3Bhbj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleC1ncm93LTEgdGV4dC1ub3dyYXBcIiBkZlRpdGxlVHJ1bmNhdGU+e3sgaXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJtcy0zXCJcbiAgICAgICAgICAgIFtjbGFzcy5pY29uLWNoZXZyb24tZG93bl09XCJpdGVtLmlzQ29sbGFwc2VkXCJcbiAgICAgICAgICAgIFtjbGFzcy5pY29uLWNoZXZyb24tdXBdPVwiIWl0ZW0uaXNDb2xsYXBzZWRcIlxuICAgICAgICAgID48L3NwYW4+XG4gICAgICAgICAgPCEtLSBwdXQgdGhlIGNoZXZyb24gYXMgaWNvbiBkaXJlY3RseSBpbiB0aGUgbWVudSAtLT5cbiAgICAgICAgICA8IS0tIHRvZG8gdGhlIGljb24gYW5kIHRoZSBtaW5pbWl6ZWQgLS0+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8IS0tIHdlIGRvbid0IHBhc3MgdGhlIGljb25zIGFzIHRoZXkgYXJlIG5vdCBzdXBwb3NlIHRvIGhhdmUgb25lcyA/Py0tPlxuICAgICAgICA8ZGYtc2lkZW5hdmxpc3RcbiAgICAgICAgICBbaXRlbXNdPVwiaXRlbS5zdWJNZW51cyA/PyBbXVwiXG4gICAgICAgICAgW3RwbEl0ZW1dPVwidHBsSXRlbVwiXG4gICAgICAgICAgW2N1cnJlbnRJdGVtXT1cIml0ZW1cIlxuICAgICAgICAgIFtpZF09XCInc2lkZW5hdkNvbnRyb2wnICsgY29udHJvbGxlZFVuaXF1ZUlkLnRvU3RyaW5nKCkgKyAnLScgKyBpXCJcbiAgICAgICAgPjwvZGYtc2lkZW5hdmxpc3Q+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmJyZWFrcG9pbnRzOyBlbHNlIGVsc2VTdWJNZW51c1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic3ViTWVudXNcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNlbHNlU3ViTWVudXM+XG4gICAgICAgIDxuZy1jb250YWluZXIgKmRmSWZNZWRpYT1cIml0ZW0uYnJlYWtwb2ludHMhXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInN1Yk1lbnVzXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2RmU2lkZU5hdkl0ZW1Db250ZW50PlxuICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICpuZ0lmPVwidHBsSWNvbiAmJiBpdGVtLmljb247IGVsc2UgZWxzZUljb25cIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0cGxJY29uLnRlbXBsYXRlUmVmXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VJY29uPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW0uaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGNsYXNzPVwie3sgaXRlbS5pY29uIH19IGRmLXNpZGVuYXYtaWNvbiBtZS01XCI+PC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxzcGFuIGNsYXNzPVwiZmxleC1ncm93LTEgdGV4dC1ub3dyYXBcIiBkZlRpdGxlVHJ1bmNhdGU+e3sgaXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cInNpZGVOYXZTZXJ2aWNlLnR5cGUuYWN0aW9uQnV0dG9uXCI+XG4gICAgICA8bmctdGVtcGxhdGUgI2RmU2lkZU5hdkl0ZW1CdXR0b24+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cImRmLXNpZGVuYXYtaXRlbSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtbm93cmFwXCJcbiAgICAgICAgICAoY2xpY2spPVwic2lkZU5hdlNlcnZpY2UuYWN0aXZlSXRlbShpdGVtKVwiXG4gICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpdGVtLmlzQWN0aXZlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlNpZGVOYXZJdGVtQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uYnJlYWtwb2ludHM7IGVsc2UgZWxzZUFjdGlvblwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZTaWRlTmF2SXRlbUJ1dHRvblwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VBY3Rpb24+XG4gICAgICAgIDxuZy1jb250YWluZXIgKmRmSWZNZWRpYT1cIml0ZW0uYnJlYWtwb2ludHMhXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2lkZU5hdkl0ZW1CdXR0b25cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjZGZSb3V0ZXJUZW1wbGF0ZT5cbiAgICAgIDxhXG4gICAgICAgIGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1ub3dyYXBcIlxuICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCJcbiAgICAgICAgcm91dGVyTGluaz1cInt7IGl0ZW0udmFsdWUgfX1cIlxuICAgICAgICBhcmlhQ3VycmVudFdoZW5BY3RpdmU9XCJwYWdlXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2lkZU5hdkl0ZW1Db250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2E+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJzaWRlTmF2U2VydmljZS50eXBlLnJvdXRlckxpbmtcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5icmVha3BvaW50czsgZWxzZSBlbHNlUm91dGVyTGlua1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZSb3V0ZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VSb3V0ZXJMaW5rPlxuICAgICAgICA8bmctY29udGFpbmVyICpkZklmTWVkaWE9XCJpdGVtLmJyZWFrcG9pbnRzIVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlJvdXRlclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJzaWRlTmF2U2VydmljZS50eXBlLnNlcGFyYXRvclwiPlxuICAgICAgPG5nLXRlbXBsYXRlICNkZlNlcGFyYXRvclRtcD5cbiAgICAgICAgPGhyIGNsYXNzPVwic3BhY2luZy0wMVwiIC8+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmJyZWFrcG9pbnRzOyBlbHNlIGVsc2VTZXBhcmF0b3JcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2VwYXJhdG9yVG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZVNlcGFyYXRvcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqZGZJZk1lZGlhPVwiaXRlbS5icmVha3BvaW50cyFcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZTZXBhcmF0b3JUbXBcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cInNpZGVOYXZTZXJ2aWNlLnR5cGUudGVtcGxhdGVcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAqbmdJZj1cInRwbEl0ZW1cIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0cGxJdGVtLnRlbXBsYXRlUmVmXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwic2lkZU5hdlNlcnZpY2UudHlwZS50aXRsZVwiPlxuICAgICAgPG5nLXRlbXBsYXRlICNkZlRpdGxlVG1wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGRmLXNpZGVuYXYtdGl0bGUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWdyb3ctMVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1ub3dyYXAgdGV4dC11cHBlcmNhc2UgdGV4dC1tdXRlZFwiIGRmVGl0bGVUcnVuY2F0ZT57eyBpdGVtLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uYnJlYWtwb2ludHM7IGVsc2UgZWxzZVRpdGxlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlRpdGxlVG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZVRpdGxlPlxuICAgICAgICA8bmctY29udGFpbmVyICpkZklmTWVkaWE9XCJpdGVtLmJyZWFrcG9pbnRzIVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlRpdGxlVG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XG4gICAgICA8bmctdGVtcGxhdGUgI2RmTGlua0RlZmF1bHRUbXA+XG4gICAgICAgIDxhXG4gICAgICAgICAgY2xhc3M9XCJkZi1zaWRlbmF2LWl0ZW0gZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LW5vd3JhcFwiXG4gICAgICAgICAgaHJlZj1cInt7IGl0ZW0udmFsdWUgfX1cIlxuICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiaXRlbS5pc0FjdGl2ZSAmJiBpdGVtLnR5cGUgPT09IHNpZGVOYXZTZXJ2aWNlLnR5cGUubGlua1wiXG4gICAgICAgICAgW2F0dHIudGFyZ2V0XT1cIml0ZW0udHlwZSA9PT0gc2lkZU5hdlNlcnZpY2UudHlwZS5leHRlcm5hbExpbmsgPyAnX2JsYW5rJyA6ICcnXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlNpZGVOYXZJdGVtQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2E+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmJyZWFrcG9pbnRzOyBlbHNlIGVsc2VEZWZhdWx0XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZkxpbmtEZWZhdWx0VG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZURlZmF1bHQ+XG4gICAgICAgIDxuZy1jb250YWluZXIgKmRmSWZNZWRpYT1cIml0ZW0uYnJlYWtwb2ludHMhXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmTGlua0RlZmF1bHRUbXBcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2xpPlxuPC91bD5cbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdmxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdmxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdmxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBR3JFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7QUFFdEUsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBRWpCOzs7Ozs7OztHQVFHO0FBT0gsTUFBTSxPQUFPLHNCQUFzQjtJQU5uQztRQVlFLHVCQUFrQixHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ2xELG1CQUFjLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7S0FNM0M7SUFKQyxxQkFBcUI7UUFDbkIsUUFBUSxFQUFFLENBQUE7UUFDVixPQUFPLGlCQUFpQixRQUFRLEdBQUcsQ0FBQTtJQUNyQyxDQUFDOzhHQVpVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLG9MQzVCbkMscXhOQXlKQSw0Q0Q3SGEsc0JBQXNCLHdIQUZ2QixZQUFZLGtyQkFBRSxpQkFBaUIsd09BQUUsWUFBWSx3ZUFBRSxhQUFhLGtJQUFFLHVCQUF1QiwrQkFBRSx3QkFBd0I7OzJGQUU5RyxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBRWQsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsdUJBQXVCLEVBQUUsd0JBQXdCLENBQUM7OEJBR2pILEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csRUFBRTtzQkFBVixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgaW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERmU2lkZU5hdlNlcnZpY2UgfSBmcm9tICcuL3NpZGVuYXYuc2VydmljZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdiQ29sbGFwc2VNb2R1bGUgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRGZNZWRpYU1vZHVsZSB9IGZyb20gJy4uL21lZGlhcXVlcmllcy9tZWRpYS5tb2R1bGUnO1xuaW1wb3J0IHsgRGZTaWRlTmF2Q29sbGFwc2VNb2R1bGUgfSBmcm9tICcuL2RmU2lkZU5hdkNvbGxhcHNlLm1vZHVsZSc7XG5pbXBvcnQgdHlwZSB7IERmU2lkZU5hdkl0ZW0gfSBmcm9tICcuL3NpZGVuYXYuc2VydmljZSc7XG5pbXBvcnQgeyBEZlNpZGVOYXZJY29uRGlyZWN0aXZlLCBEZlNpZGVOYXZJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi9zaWRlbmF2LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZk1hbmFnZVNpZGVOYXZEaXJlY3RpdmUgfSBmcm9tICcuL21hbmFnZS1zaWRlbmF2LmRpcmVjdGl2ZSc7XG5cbmxldCB1bmlxdWVJZCA9IDA7XG5cbi8qKlxuICogU2lkZU5hdiBpcyBhIGNvbXBvbmVudCB0byBwcm92aWRlIG5hdmlnYXRpb24gZmVhdHVyZSB3aXRoIGEgcGFuZWwgb24gdGhlIHNpZGUgb2YgeW91ciBwYWdlXG4gKlxuICogSXQgc3VwcG9ydHMgc2V2ZXJhbCBvcHRpb25zIGFzOlxuICogIC0gQmVpbmcgaW4gYW4gb3ZlcmxheSBtZW51IG9yIG5vdFxuICogIC0gQmVpbmcgY29sbGFwc2VkIG9yIG5vdFxuICogIC0gQ2FuIGJlIHVzZWQgd2l0aCBvciB3aXRob3V0IEFuZ3VsYXIgUm91dGVyXG4gKiAgLSBDYW4gYmUgdXNlZCB3aXRoIG1lZGlhIHF1ZXJpZXMgdG8gYWRqdXN0IGJlaGF2aW9yIHRvIGRpZmZlcmVudCBicmVha3BvaW50cyAoc2VlIG1lZGlhIHNlY3Rpb24pXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RmLXNpZGVuYXZsaXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZGVuYXZsaXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTmdiQ29sbGFwc2VNb2R1bGUsIFJvdXRlck1vZHVsZSwgRGZNZWRpYU1vZHVsZSwgRGZTaWRlTmF2Q29sbGFwc2VNb2R1bGUsIERmTWFuYWdlU2lkZU5hdkRpcmVjdGl2ZV1cbn0pXG5leHBvcnQgY2xhc3MgRGZTaWRlTmF2TGlzdENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGl0ZW1zICE6IERmU2lkZU5hdkl0ZW1bXTtcbiAgQElucHV0KCkgdHBsSWNvbiAhOiBEZlNpZGVOYXZJY29uRGlyZWN0aXZlO1xuICBASW5wdXQoKSB0cGxJdGVtICE6IERmU2lkZU5hdkl0ZW1EaXJlY3RpdmU7XG4gIEBJbnB1dCgpIGN1cnJlbnRJdGVtIDogRGZTaWRlTmF2SXRlbSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgaWQgOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGNvbnRyb2xsZWRVbmlxdWVJZCA9IHRoaXMuZ2V0Q29udHJvbGxlZFVuaXF1ZUlkKCk7XG4gIHNpZGVOYXZTZXJ2aWNlID0gaW5qZWN0KERmU2lkZU5hdlNlcnZpY2UpO1xuXG4gIGdldENvbnRyb2xsZWRVbmlxdWVJZCgpIDogc3RyaW5nIHsgXG4gICAgdW5pcXVlSWQrK1xuICAgIHJldHVybiBgZGYtc2lkZW5hdi1pZC0ke3VuaXF1ZUlkfTtgXG4gIH1cbn1cbiIsIjx1bCBjbGFzcz1cImRmLXNpZGVuYXYtbGlzdFwiIFtuZ2JDb2xsYXBzZV09XCJjdXJyZW50SXRlbT8uaXNDb2xsYXBzZWQgPz8gZmFsc2VcIiBbYXR0ci5pZF09XCJpZFwiPlxuICA8bGkgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGxldCBpID0gaW5kZXhcIiBbbmdTd2l0Y2hdPVwiaXRlbS50eXBlXCIgZGZNYW5hZ2VTaWRlTmF2PlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cInNpZGVOYXZTZXJ2aWNlLnR5cGUuc3ViTWVudXNcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjc3ViTWVudXM+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cImRmLXNpZGVuYXYtaXRlbSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAoY2xpY2spPVwic2lkZU5hdlNlcnZpY2UudG9nZ2xlKGl0ZW0pXCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIiFpdGVtLmlzQ29sbGFwc2VkXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cIidzaWRlbmF2Q29udHJvbCcgKyBjb250cm9sbGVkVW5pcXVlSWQudG9TdHJpbmcoKSArICctJyArIGlcIlxuICAgICAgICAgIFtjbGFzcy5kZi1zaWRlbmF2LWl0ZW0td2l0aGljb25dPVwiaXRlbS5pY29uXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgKm5nSWY9XCJ0cGxJY29uICYmIGl0ZW0uaWNvbjsgZWxzZSBlbHNlSWNvblwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0cGxJY29uLnRlbXBsYXRlUmVmXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogaXRlbSB9XCJcbiAgICAgICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2Vsc2VJY29uPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpdGVtLmljb25cIiBhcmlhLWhpZGRlbj1cInRydWVcIiBjbGFzcz1cInt7IGl0ZW0uaWNvbiB9fSBkZi1zaWRlbmF2LWljb25cIj48L3NwYW4+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImZsZXgtZ3Jvdy0xIHRleHQtbm93cmFwIHRleHQtdHJ1bmNhdGVcIj57eyBpdGVtLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICBjbGFzcz1cIm1zLTNcIlxuICAgICAgICAgICAgW2NsYXNzLmljb24tY2hldnJvbi1kb3duXT1cIml0ZW0uaXNDb2xsYXBzZWRcIlxuICAgICAgICAgICAgW2NsYXNzLmljb24tY2hldnJvbi11cF09XCIhaXRlbS5pc0NvbGxhcHNlZFwiXG4gICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICA8IS0tIHB1dCB0aGUgY2hldnJvbiBhcyBpY29uIGRpcmVjdGx5IGluIHRoZSBtZW51IC0tPlxuICAgICAgICAgIDwhLS0gdG9kbyB0aGUgaWNvbiBhbmQgdGhlIG1pbmltaXplZCAtLT5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwhLS0gd2UgZG9uJ3QgcGFzcyB0aGUgaWNvbnMgYXMgdGhleSBhcmUgbm90IHN1cHBvc2UgdG8gaGF2ZSBvbmVzID8/LS0+XG4gICAgICAgIDxkZi1zaWRlbmF2bGlzdFxuICAgICAgICAgIFtpdGVtc109XCJpdGVtLnN1Yk1lbnVzID8/IFtdXCJcbiAgICAgICAgICBbdHBsSXRlbV09XCJ0cGxJdGVtXCJcbiAgICAgICAgICBbY3VycmVudEl0ZW1dPVwiaXRlbVwiXG4gICAgICAgICAgW2lkXT1cIidzaWRlbmF2Q29udHJvbCcgKyBjb250cm9sbGVkVW5pcXVlSWQudG9TdHJpbmcoKSArICctJyArIGlcIlxuICAgICAgICA+PC9kZi1zaWRlbmF2bGlzdD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uYnJlYWtwb2ludHM7IGVsc2UgZWxzZVN1Yk1lbnVzXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzdWJNZW51c1wiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VTdWJNZW51cz5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqZGZJZk1lZGlhPVwiaXRlbS5icmVha3BvaW50cyFcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic3ViTWVudXNcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjZGZTaWRlTmF2SXRlbUNvbnRlbnQ+XG4gICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgKm5nSWY9XCJ0cGxJY29uICYmIGl0ZW0uaWNvbjsgZWxzZSBlbHNlSWNvblwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRwbEljb24udGVtcGxhdGVSZWZcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGl0ZW0gfVwiXG4gICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZUljb24+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiaXRlbS5pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgY2xhc3M9XCJ7eyBpdGVtLmljb24gfX0gZGYtc2lkZW5hdi1pY29uIG1lLTVcIj48L3NwYW4+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPHNwYW4gY2xhc3M9XCJmbGV4LWdyb3ctMSB0ZXh0LW5vd3JhcCB0ZXh0LXRydW5jYXRlXCI+e3sgaXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cInNpZGVOYXZTZXJ2aWNlLnR5cGUuYWN0aW9uQnV0dG9uXCI+XG4gICAgICA8bmctdGVtcGxhdGUgI2RmU2lkZU5hdkl0ZW1CdXR0b24+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cImRmLXNpZGVuYXYtaXRlbSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtbm93cmFwXCJcbiAgICAgICAgICAoY2xpY2spPVwic2lkZU5hdlNlcnZpY2UuYWN0aXZlSXRlbShpdGVtKVwiXG4gICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpdGVtLmlzQWN0aXZlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlNpZGVOYXZJdGVtQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uYnJlYWtwb2ludHM7IGVsc2UgZWxzZUFjdGlvblwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZTaWRlTmF2SXRlbUJ1dHRvblwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VBY3Rpb24+XG4gICAgICAgIDxuZy1jb250YWluZXIgKmRmSWZNZWRpYT1cIml0ZW0uYnJlYWtwb2ludHMhXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2lkZU5hdkl0ZW1CdXR0b25cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjZGZSb3V0ZXJUZW1wbGF0ZT5cbiAgICAgIDxhXG4gICAgICAgIGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1ub3dyYXBcIlxuICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCJcbiAgICAgICAgcm91dGVyTGluaz1cInt7IGl0ZW0udmFsdWUgfX1cIlxuICAgICAgICBhcmlhQ3VycmVudFdoZW5BY3RpdmU9XCJwYWdlXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2lkZU5hdkl0ZW1Db250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2E+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJzaWRlTmF2U2VydmljZS50eXBlLnJvdXRlckxpbmtcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5icmVha3BvaW50czsgZWxzZSBlbHNlUm91dGVyTGlua1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZSb3V0ZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VSb3V0ZXJMaW5rPlxuICAgICAgICA8bmctY29udGFpbmVyICpkZklmTWVkaWE9XCJpdGVtLmJyZWFrcG9pbnRzIVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZlJvdXRlclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJzaWRlTmF2U2VydmljZS50eXBlLnNlcGFyYXRvclwiPlxuICAgICAgPG5nLXRlbXBsYXRlICNkZlNlcGFyYXRvclRtcD5cbiAgICAgICAgPGhyIGNsYXNzPVwic3BhY2luZy0wMVwiIC8+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmJyZWFrcG9pbnRzOyBlbHNlIGVsc2VTZXBhcmF0b3JcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRmU2VwYXJhdG9yVG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZVNlcGFyYXRvcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqZGZJZk1lZGlhPVwiaXRlbS5icmVha3BvaW50cyFcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZTZXBhcmF0b3JUbXBcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cInNpZGVOYXZTZXJ2aWNlLnR5cGUudGVtcGxhdGVcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAqbmdJZj1cInRwbEl0ZW1cIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0cGxJdGVtLnRlbXBsYXRlUmVmXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwic2lkZU5hdlNlcnZpY2UudHlwZS50aXRsZVwiPlxuICAgICAgPG5nLXRlbXBsYXRlICNkZlRpdGxlVG1wPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGRmLXNpZGVuYXYtdGl0bGUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWdyb3ctMVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1ub3dyYXAgdGV4dC10cnVuY2F0ZSB0ZXh0LXVwcGVyY2FzZSB0ZXh0LW11dGVkXCI+e3sgaXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmJyZWFrcG9pbnRzOyBlbHNlIGVsc2VUaXRsZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZUaXRsZVRtcFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VUaXRsZT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqZGZJZk1lZGlhPVwiaXRlbS5icmVha3BvaW50cyFcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZUaXRsZVRtcFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hEZWZhdWx0PlxuICAgICAgPG5nLXRlbXBsYXRlICNkZkxpbmtEZWZhdWx0VG1wPlxuICAgICAgICA8YVxuICAgICAgICAgIGNsYXNzPVwiZGYtc2lkZW5hdi1pdGVtIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1ub3dyYXBcIlxuICAgICAgICAgIGhyZWY9XCJ7eyBpdGVtLnZhbHVlIH19XCJcbiAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cIml0ZW0uaXNBY3RpdmUgJiYgaXRlbS50eXBlID09PSBzaWRlTmF2U2VydmljZS50eXBlLmxpbmtcIlxuICAgICAgICAgIFthdHRyLnRhcmdldF09XCJpdGVtLnR5cGUgPT09IHNpZGVOYXZTZXJ2aWNlLnR5cGUuZXh0ZXJuYWxMaW5rID8gJ19ibGFuaycgOiAnJ1wiXG4gICAgICAgID5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZTaWRlTmF2SXRlbUNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9hPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5icmVha3BvaW50czsgZWxzZSBlbHNlRGVmYXVsdFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGZMaW5rRGVmYXVsdFRtcFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VEZWZhdWx0PlxuICAgICAgICA8bmctY29udGFpbmVyICpkZklmTWVkaWE9XCJpdGVtLmJyZWFrcG9pbnRzIVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZkxpbmtEZWZhdWx0VG1wXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9saT5cbjwvdWw+XG4iXX0=
@@ -0,0 +1,65 @@
1
+ import { Component, ContentChildren, Directive, TemplateRef, inject, ChangeDetectionStrategy, Input, numberAttribute } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { DfStepperDirective, DfStepperStepDirective } from './stepper.directive';
4
+ import { DfStepperService } from './stepper.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./stepper.directive";
7
+ import * as i2 from "@angular/common";
8
+ export class DfStepperStepContentDirective {
9
+ constructor() {
10
+ this.templateRef = inject(TemplateRef);
11
+ /**
12
+ * The step index
13
+ * -1 means that the input index is not set
14
+ */
15
+ // eslint-disable-next-line @angular-eslint/no-input-rename
16
+ this.dfStepperStepContent = -1;
17
+ }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfStepperStepContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
19
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.4", type: DfStepperStepContentDirective, isStandalone: true, selector: "ng-template[dfStepperStepContent]", inputs: { dfStepperStepContent: ["dfStepperStepContent", "dfStepperStepContent", (value) => numberAttribute(value, -1)] }, ngImport: i0 }); }
20
+ }
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfStepperStepContentDirective, decorators: [{
22
+ type: Directive,
23
+ args: [{ selector: 'ng-template[dfStepperStepContent]', standalone: true }]
24
+ }], propDecorators: { dfStepperStepContent: [{
25
+ type: Input,
26
+ args: [{ transform: (value) => numberAttribute(value, -1) }]
27
+ }] } });
28
+ /**
29
+ * Stepper component is a component to provide a step by step navigation
30
+ * You have two ways to navigate through the steps:
31
+ * - Using the linear navigation, where you can only go to the next step
32
+ * - Using the non-linear navigation, where you can go to any step
33
+ */
34
+ export class DfStepperComponent {
35
+ constructor() {
36
+ this.stepperService = inject(DfStepperService);
37
+ this.mapStepToContent = new Map();
38
+ this.stepperService.stepperState$.subscribe((state) => {
39
+ this.state = state;
40
+ });
41
+ }
42
+ ngAfterContentInit() {
43
+ this.tplStepsContent.forEach((tplStepContent) => {
44
+ if (tplStepContent.dfStepperStepContent !== -1) {
45
+ this.mapStepToContent.set(tplStepContent.dfStepperStepContent, tplStepContent.templateRef);
46
+ }
47
+ });
48
+ }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfStepperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: DfStepperComponent, isStandalone: true, selector: "[dfStepper]", host: { attributes: { "role": "tablist" }, properties: { "class.df-vertical-stepper": "state?.isVertical", "attr.aria-label": "stepperService.stepperAriaLabel", "attr.aria-orientation": "state?.isVertical ? \"vertical\": null" }, classAttribute: "df-stepper mb-2" }, queries: [{ propertyName: "tplStepsContent", predicate: DfStepperStepContentDirective }], hostDirectives: [{ directive: i1.DfStepperDirective }], ngImport: i0, template: "<ng-template #myStepperLine>\n <div class=\"df-stepper-line-wrapper\">\n <div class=\"df-stepper-line\">\n <div class=\"df-stepper-horizontal-line\"></div>\n </div>\n <div class=\"df-stepper-line d-none d-sm-flex\">\n <div class=\"flex-grow-1\"></div>\n </div>\n </div>\n</ng-template>\n<ng-container *ngIf=\"state\">\n <ng-template ngFor let-step [ngForOf]=\"state.steps\" let-i=\"index\">\n <button #stepbasic class=\"btn btn-link df-stepper-step\"\n dfStepperStep\n [class.active]=\"i === state.active\"\n [class.flex-row]=\"state.isInline\"\n [attr.tabIndex]=\"i === state.active ? 0 : -1\"\n [class.df-stepper-step-warning]=\"step.type === 'warning'\"\n [class.df-stepper-step-completed]=\"step.type === 'completed'\"\n [class.df-stepper-step-current]=\"step.type === 'current'\"\n [class.df-stepper-step-future]=\"step.type === 'future'\"\n [disabled]=\"state.isLinear && (step.type === 'future' || step.type === 'completed')\"\n role=\"tab\"\n [attr.aria-selected]=\"i === state.active ? 'true': 'false'\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-setsize]=\"state.steps.length\" [attr.aria-controls]=\"step.ariaControl\" (click)=\"stepperService.selectWithFocus(i)\">\n <div\n [class.df-stepper-number-current]=\"step.type === 'current'\"\n [class.df-stepper-outline-icon]=\"step.type === 'warning'\"\n [class.icon-exclamation-triangle]=\"step.type === 'warning'\"\n [class.df-stepper-icon]=\"step.type === 'completed'\"\n [class.icon-check]=\"step.type === 'completed'\"\n [class.df-stepper-outline-number-future]=\"step.type === 'future'\"\n >\n <span aria-hidden=\"true\">{{stepperService.getStepNumberLabel(i)}}</span>\n </div>\n <div [class.align-items-center]=\"!state.isInline\"\n [class.flex-column]=\"state.isInline\"\n [class.mt-1]=\"!state.isInline\"\n [class.d-none]=\"!state.isVertical\"\n [class.d-sm-flex]=\"!state.isVertical\"\n [class.d-flex]=\"state.isVertical\">\n <span *ngIf=\"step.type === 'warning'\" class=\"visually-hidden\">{{stepperService.warningLabel}}</span>\n <span class=\"df-stepper-label\">{{step.label}}</span>\n <span *ngIf=\"state.isInline && step.optionalLabel\" class=\"df-stepper-optional-label\">{{step.optionalLabel}}</span>\n <span *ngIf=\"step.completed\" class=\"visually-hidden\">{{stepperService.completedLabel}}</span>\n </div>\n </button>\n <ng-container *ngIf=\"!state.isVertical && i < state.steps.length - 1 \" [ngTemplateOutlet]=\"myStepperLine\"></ng-container>\n <div *ngIf=\"state.isVertical && i < state.steps.length\" [class.d-none]=\"state.steps.length - 1 === i\" role=\"tabpanel\" [id]=\"step.ariaControl\" class=\"df-vertical-stepper-panel df-vertical-stepper-line\">\n <ng-template *ngIf=\"mapStepToContent.has(i) && state.active === i\" [ngTemplateOutlet]=\"mapStepToContent.get(i) || null\" [ngTemplateOutletContext]=\"{state, index: i, service: stepperService}\"></ng-template>\n </div>\n </ng-template>\n</ng-container>\n<div class=\"text-primary mb-2\"\n [class.d-block]=\"!state.isVertical\"\n [class.d-sm-none]=\"!state.isVertical\"\n [class.d-none]=\"state.isVertical\"\n *ngIf=\"stepperService.stepperState$ | async as state\">\n <span class=\"df-stepper-label\">{{state.steps[state.active].label}}</span>\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "directive", type: DfStepperStepDirective, selector: "[dfStepperStep]", exportAs: ["dfStepperStep"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
51
+ }
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfStepperComponent, decorators: [{
53
+ type: Component,
54
+ args: [{ selector: '[dfStepper]', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, DfStepperDirective, DfStepperStepDirective], hostDirectives: [DfStepperDirective], host: {
55
+ role: 'tablist',
56
+ class: 'df-stepper mb-2',
57
+ '[class.df-vertical-stepper]': 'state?.isVertical',
58
+ '[attr.aria-label]': 'stepperService.stepperAriaLabel',
59
+ '[attr.aria-orientation]': 'state?.isVertical ? "vertical": null'
60
+ }, template: "<ng-template #myStepperLine>\n <div class=\"df-stepper-line-wrapper\">\n <div class=\"df-stepper-line\">\n <div class=\"df-stepper-horizontal-line\"></div>\n </div>\n <div class=\"df-stepper-line d-none d-sm-flex\">\n <div class=\"flex-grow-1\"></div>\n </div>\n </div>\n</ng-template>\n<ng-container *ngIf=\"state\">\n <ng-template ngFor let-step [ngForOf]=\"state.steps\" let-i=\"index\">\n <button #stepbasic class=\"btn btn-link df-stepper-step\"\n dfStepperStep\n [class.active]=\"i === state.active\"\n [class.flex-row]=\"state.isInline\"\n [attr.tabIndex]=\"i === state.active ? 0 : -1\"\n [class.df-stepper-step-warning]=\"step.type === 'warning'\"\n [class.df-stepper-step-completed]=\"step.type === 'completed'\"\n [class.df-stepper-step-current]=\"step.type === 'current'\"\n [class.df-stepper-step-future]=\"step.type === 'future'\"\n [disabled]=\"state.isLinear && (step.type === 'future' || step.type === 'completed')\"\n role=\"tab\"\n [attr.aria-selected]=\"i === state.active ? 'true': 'false'\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-setsize]=\"state.steps.length\" [attr.aria-controls]=\"step.ariaControl\" (click)=\"stepperService.selectWithFocus(i)\">\n <div\n [class.df-stepper-number-current]=\"step.type === 'current'\"\n [class.df-stepper-outline-icon]=\"step.type === 'warning'\"\n [class.icon-exclamation-triangle]=\"step.type === 'warning'\"\n [class.df-stepper-icon]=\"step.type === 'completed'\"\n [class.icon-check]=\"step.type === 'completed'\"\n [class.df-stepper-outline-number-future]=\"step.type === 'future'\"\n >\n <span aria-hidden=\"true\">{{stepperService.getStepNumberLabel(i)}}</span>\n </div>\n <div [class.align-items-center]=\"!state.isInline\"\n [class.flex-column]=\"state.isInline\"\n [class.mt-1]=\"!state.isInline\"\n [class.d-none]=\"!state.isVertical\"\n [class.d-sm-flex]=\"!state.isVertical\"\n [class.d-flex]=\"state.isVertical\">\n <span *ngIf=\"step.type === 'warning'\" class=\"visually-hidden\">{{stepperService.warningLabel}}</span>\n <span class=\"df-stepper-label\">{{step.label}}</span>\n <span *ngIf=\"state.isInline && step.optionalLabel\" class=\"df-stepper-optional-label\">{{step.optionalLabel}}</span>\n <span *ngIf=\"step.completed\" class=\"visually-hidden\">{{stepperService.completedLabel}}</span>\n </div>\n </button>\n <ng-container *ngIf=\"!state.isVertical && i < state.steps.length - 1 \" [ngTemplateOutlet]=\"myStepperLine\"></ng-container>\n <div *ngIf=\"state.isVertical && i < state.steps.length\" [class.d-none]=\"state.steps.length - 1 === i\" role=\"tabpanel\" [id]=\"step.ariaControl\" class=\"df-vertical-stepper-panel df-vertical-stepper-line\">\n <ng-template *ngIf=\"mapStepToContent.has(i) && state.active === i\" [ngTemplateOutlet]=\"mapStepToContent.get(i) || null\" [ngTemplateOutletContext]=\"{state, index: i, service: stepperService}\"></ng-template>\n </div>\n </ng-template>\n</ng-container>\n<div class=\"text-primary mb-2\"\n [class.d-block]=\"!state.isVertical\"\n [class.d-sm-none]=\"!state.isVertical\"\n [class.d-none]=\"state.isVertical\"\n *ngIf=\"stepperService.stepperState$ | async as state\">\n <span class=\"df-stepper-label\">{{state.steps[state.active].label}}</span>\n</div>" }]
61
+ }], ctorParameters: function () { return []; }, propDecorators: { tplStepsContent: [{
62
+ type: ContentChildren,
63
+ args: [DfStepperStepContentDirective]
64
+ }] } });
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2FuZ3VsYXIvc3RlcHBlci9zdGVwcGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxlQUFlLEVBQ2YsU0FBUyxFQUNULFdBQVcsRUFDWCxNQUFNLEVBRU4sdUJBQXVCLEVBQ3ZCLEtBQUssRUFDTCxlQUFlLEVBRWhCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQTRCLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUFHL0UsTUFBTSxPQUFPLDZCQUE2QjtJQUQxQztRQUVFLGdCQUFXLEdBQXFCLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNwRDs7O1dBR0c7UUFDSCwyREFBMkQ7UUFDVyx5QkFBb0IsR0FBRyxDQUFDLENBQUMsQ0FBQztLQUNqRzs4R0FSWSw2QkFBNkI7a0dBQTdCLDZCQUE2QixzSkFPcEIsQ0FBQyxLQUFjLEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7OzJGQVB2RCw2QkFBNkI7a0JBRHpDLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsbUNBQW1DLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRTs4QkFRTixvQkFBb0I7c0JBQXpGLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxLQUFjLEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTs7QUFHdEU7Ozs7O0dBS0c7QUFrQkgsTUFBTSxPQUFPLGtCQUFrQjtJQU83QjtRQU5BLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDMUMscUJBQWdCLEdBQWtDLElBQUksR0FBRyxFQUE0QixDQUFDO1FBTXBGLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3BELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFO1lBQzlDLElBQUksY0FBYyxDQUFDLG9CQUFvQixLQUFLLENBQUMsQ0FBQyxFQUFFO2dCQUM5QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsRUFBRSxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDNUY7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBbkJVLGtCQUFrQjtrR0FBbEIsa0JBQWtCLGtYQUlaLDZCQUE2QixxRkN0RGhELDQzR0E0RE0sMkNEckJNLFlBQVksNGRBQXNCLHNCQUFzQjs7MkZBV3ZELGtCQUFrQjtrQkFqQjlCLFNBQVM7K0JBRUUsYUFBYSxjQUVYLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxzQkFBc0IsQ0FBQyxrQkFDbkQsQ0FBQyxrQkFBa0IsQ0FBQyxRQUU5Qjt3QkFDSixJQUFJLEVBQUUsU0FBUzt3QkFDZixLQUFLLEVBQUUsaUJBQWlCO3dCQUN4Qiw2QkFBNkIsRUFBRSxtQkFBbUI7d0JBQ2xELG1CQUFtQixFQUFFLGlDQUFpQzt3QkFDdEQseUJBQXlCLEVBQUUsc0NBQXNDO3FCQUNsRTswRUFNK0MsZUFBZTtzQkFBOUQsZUFBZTt1QkFBQyw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRGlyZWN0aXZlLFxuICBUZW1wbGF0ZVJlZixcbiAgaW5qZWN0LFxuICBRdWVyeUxpc3QsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBJbnB1dCxcbiAgbnVtYmVyQXR0cmlidXRlLFxuICBBZnRlckNvbnRlbnRJbml0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERmU3RlcHBlckRpcmVjdGl2ZSwgRGZTdGVwcGVyU3RlcERpcmVjdGl2ZSB9IGZyb20gJy4vc3RlcHBlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGZTdGVwcGVyTm9ybWFsaXplZFN0YXRlLCBEZlN0ZXBwZXJTZXJ2aWNlIH0gZnJvbSAnLi9zdGVwcGVyLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICduZy10ZW1wbGF0ZVtkZlN0ZXBwZXJTdGVwQ29udGVudF0nLCBzdGFuZGFsb25lOiB0cnVlIH0pXG5leHBvcnQgY2xhc3MgRGZTdGVwcGVyU3RlcENvbnRlbnREaXJlY3RpdmUge1xuICB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PiA9IGluamVjdChUZW1wbGF0ZVJlZik7XG4gIC8qKlxuICAgKiBUaGUgc3RlcCBpbmRleFxuICAgKiAtMSBtZWFucyB0aGF0IHRoZSBpbnB1dCBpbmRleCBpcyBub3Qgc2V0XG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoeyB0cmFuc2Zvcm06ICh2YWx1ZTogdW5rbm93bikgPT4gbnVtYmVyQXR0cmlidXRlKHZhbHVlLCAtMSkgfSkgZGZTdGVwcGVyU3RlcENvbnRlbnQgPSAtMTtcbn1cblxuLyoqXG4gKiBTdGVwcGVyIGNvbXBvbmVudCBpcyBhIGNvbXBvbmVudCB0byBwcm92aWRlIGEgc3RlcCBieSBzdGVwIG5hdmlnYXRpb25cbiAqIFlvdSBoYXZlIHR3byB3YXlzIHRvIG5hdmlnYXRlIHRocm91Z2ggdGhlIHN0ZXBzOlxuICogLSBVc2luZyB0aGUgbGluZWFyIG5hdmlnYXRpb24sIHdoZXJlIHlvdSBjYW4gb25seSBnbyB0byB0aGUgbmV4dCBzdGVwXG4gKiAtIFVzaW5nIHRoZSBub24tbGluZWFyIG5hdmlnYXRpb24sIHdoZXJlIHlvdSBjYW4gZ28gdG8gYW55IHN0ZXBcbiAqL1xuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnW2RmU3RlcHBlcl0nLFxuICB0ZW1wbGF0ZVVybDogJy4vc3RlcHBlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBEZlN0ZXBwZXJEaXJlY3RpdmUsIERmU3RlcHBlclN0ZXBEaXJlY3RpdmVdLFxuICBob3N0RGlyZWN0aXZlczogW0RmU3RlcHBlckRpcmVjdGl2ZV0sXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taG9zdC1tZXRhZGF0YS1wcm9wZXJ0eVxuICBob3N0OiB7XG4gICAgcm9sZTogJ3RhYmxpc3QnLFxuICAgIGNsYXNzOiAnZGYtc3RlcHBlciBtYi0yJyxcbiAgICAnW2NsYXNzLmRmLXZlcnRpY2FsLXN0ZXBwZXJdJzogJ3N0YXRlPy5pc1ZlcnRpY2FsJyxcbiAgICAnW2F0dHIuYXJpYS1sYWJlbF0nOiAnc3RlcHBlclNlcnZpY2Uuc3RlcHBlckFyaWFMYWJlbCcsXG4gICAgJ1thdHRyLmFyaWEtb3JpZW50YXRpb25dJzogJ3N0YXRlPy5pc1ZlcnRpY2FsID8gXCJ2ZXJ0aWNhbFwiOiBudWxsJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIERmU3RlcHBlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICBzdGVwcGVyU2VydmljZSA9IGluamVjdChEZlN0ZXBwZXJTZXJ2aWNlKTtcbiAgbWFwU3RlcFRvQ29udGVudDogTWFwPG51bWJlciwgVGVtcGxhdGVSZWY8YW55Pj4gPSBuZXcgTWFwPG51bWJlciwgVGVtcGxhdGVSZWY8YW55Pj4oKTtcblxuICBAQ29udGVudENoaWxkcmVuKERmU3RlcHBlclN0ZXBDb250ZW50RGlyZWN0aXZlKSB0cGxTdGVwc0NvbnRlbnQhOiBRdWVyeUxpc3Q8RGZTdGVwcGVyU3RlcENvbnRlbnREaXJlY3RpdmU+O1xuICBzdGF0ZTogRGZTdGVwcGVyTm9ybWFsaXplZFN0YXRlIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuc3RlcHBlclNlcnZpY2Uuc3RlcHBlclN0YXRlJC5zdWJzY3JpYmUoKHN0YXRlKSA9PiB7XG4gICAgICB0aGlzLnN0YXRlID0gc3RhdGU7XG4gICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgdGhpcy50cGxTdGVwc0NvbnRlbnQuZm9yRWFjaCgodHBsU3RlcENvbnRlbnQpID0+IHtcbiAgICAgIGlmICh0cGxTdGVwQ29udGVudC5kZlN0ZXBwZXJTdGVwQ29udGVudCAhPT0gLTEpIHtcbiAgICAgICAgdGhpcy5tYXBTdGVwVG9Db250ZW50LnNldCh0cGxTdGVwQ29udGVudC5kZlN0ZXBwZXJTdGVwQ29udGVudCwgdHBsU3RlcENvbnRlbnQudGVtcGxhdGVSZWYpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI215U3RlcHBlckxpbmU+XG4gIDxkaXYgY2xhc3M9XCJkZi1zdGVwcGVyLWxpbmUtd3JhcHBlclwiPlxuICAgIDxkaXYgY2xhc3M9XCJkZi1zdGVwcGVyLWxpbmVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJkZi1zdGVwcGVyLWhvcml6b250YWwtbGluZVwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJkZi1zdGVwcGVyLWxpbmUgZC1ub25lIGQtc20tZmxleFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXgtZ3Jvdy0xXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJzdGF0ZVwiPlxuICA8bmctdGVtcGxhdGUgbmdGb3IgbGV0LXN0ZXAgW25nRm9yT2ZdPVwic3RhdGUuc3RlcHNcIiBsZXQtaT1cImluZGV4XCI+XG4gICAgPGJ1dHRvbiAjc3RlcGJhc2ljIGNsYXNzPVwiYnRuIGJ0bi1saW5rIGRmLXN0ZXBwZXItc3RlcFwiXG4gICAgICBkZlN0ZXBwZXJTdGVwXG4gICAgICBbY2xhc3MuYWN0aXZlXT1cImkgPT09IHN0YXRlLmFjdGl2ZVwiXG4gICAgICBbY2xhc3MuZmxleC1yb3ddPVwic3RhdGUuaXNJbmxpbmVcIlxuICAgICAgW2F0dHIudGFiSW5kZXhdPVwiaSA9PT0gc3RhdGUuYWN0aXZlID8gMCA6IC0xXCJcbiAgICAgIFtjbGFzcy5kZi1zdGVwcGVyLXN0ZXAtd2FybmluZ109XCJzdGVwLnR5cGUgPT09ICd3YXJuaW5nJ1wiXG4gICAgICBbY2xhc3MuZGYtc3RlcHBlci1zdGVwLWNvbXBsZXRlZF09XCJzdGVwLnR5cGUgPT09ICdjb21wbGV0ZWQnXCJcbiAgICAgIFtjbGFzcy5kZi1zdGVwcGVyLXN0ZXAtY3VycmVudF09XCJzdGVwLnR5cGUgPT09ICdjdXJyZW50J1wiXG4gICAgICBbY2xhc3MuZGYtc3RlcHBlci1zdGVwLWZ1dHVyZV09XCJzdGVwLnR5cGUgPT09ICdmdXR1cmUnXCJcbiAgICAgIFtkaXNhYmxlZF09XCJzdGF0ZS5pc0xpbmVhciAmJiAoc3RlcC50eXBlID09PSAnZnV0dXJlJyB8fCBzdGVwLnR5cGUgPT09ICdjb21wbGV0ZWQnKVwiXG4gICAgICByb2xlPVwidGFiXCJcbiAgICAgIFthdHRyLmFyaWEtc2VsZWN0ZWRdPVwiaSA9PT0gc3RhdGUuYWN0aXZlID8gJ3RydWUnOiAnZmFsc2UnXCJcbiAgICAgIFthdHRyLmFyaWEtcG9zaW5zZXRdPVwiaSArIDFcIlxuICAgICAgW2F0dHIuYXJpYS1zZXRzaXplXT1cInN0YXRlLnN0ZXBzLmxlbmd0aFwiIFthdHRyLmFyaWEtY29udHJvbHNdPVwic3RlcC5hcmlhQ29udHJvbFwiIChjbGljayk9XCJzdGVwcGVyU2VydmljZS5zZWxlY3RXaXRoRm9jdXMoaSlcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgW2NsYXNzLmRmLXN0ZXBwZXItbnVtYmVyLWN1cnJlbnRdPVwic3RlcC50eXBlID09PSAnY3VycmVudCdcIlxuICAgICAgICBbY2xhc3MuZGYtc3RlcHBlci1vdXRsaW5lLWljb25dPVwic3RlcC50eXBlID09PSAnd2FybmluZydcIlxuICAgICAgICBbY2xhc3MuaWNvbi1leGNsYW1hdGlvbi10cmlhbmdsZV09XCJzdGVwLnR5cGUgPT09ICd3YXJuaW5nJ1wiXG4gICAgICAgIFtjbGFzcy5kZi1zdGVwcGVyLWljb25dPVwic3RlcC50eXBlID09PSAnY29tcGxldGVkJ1wiXG4gICAgICAgIFtjbGFzcy5pY29uLWNoZWNrXT1cInN0ZXAudHlwZSA9PT0gJ2NvbXBsZXRlZCdcIlxuICAgICAgICBbY2xhc3MuZGYtc3RlcHBlci1vdXRsaW5lLW51bWJlci1mdXR1cmVdPVwic3RlcC50eXBlID09PSAnZnV0dXJlJ1wiXG4gICAgICAgID5cbiAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+e3tzdGVwcGVyU2VydmljZS5nZXRTdGVwTnVtYmVyTGFiZWwoaSl9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBbY2xhc3MuYWxpZ24taXRlbXMtY2VudGVyXT1cIiFzdGF0ZS5pc0lubGluZVwiXG4gICAgICBbY2xhc3MuZmxleC1jb2x1bW5dPVwic3RhdGUuaXNJbmxpbmVcIlxuICAgICAgICBbY2xhc3MubXQtMV09XCIhc3RhdGUuaXNJbmxpbmVcIlxuICAgICAgICBbY2xhc3MuZC1ub25lXT1cIiFzdGF0ZS5pc1ZlcnRpY2FsXCJcbiAgICAgICAgW2NsYXNzLmQtc20tZmxleF09XCIhc3RhdGUuaXNWZXJ0aWNhbFwiXG4gICAgICAgIFtjbGFzcy5kLWZsZXhdPVwic3RhdGUuaXNWZXJ0aWNhbFwiPlxuICAgICAgICA8c3BhbiAqbmdJZj1cInN0ZXAudHlwZSA9PT0gJ3dhcm5pbmcnXCIgY2xhc3M9XCJ2aXN1YWxseS1oaWRkZW5cIj57e3N0ZXBwZXJTZXJ2aWNlLndhcm5pbmdMYWJlbH19PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImRmLXN0ZXBwZXItbGFiZWxcIj57e3N0ZXAubGFiZWx9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJzdGF0ZS5pc0lubGluZSAmJiBzdGVwLm9wdGlvbmFsTGFiZWxcIiBjbGFzcz1cImRmLXN0ZXBwZXItb3B0aW9uYWwtbGFiZWxcIj57e3N0ZXAub3B0aW9uYWxMYWJlbH19PC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cInN0ZXAuY29tcGxldGVkXCIgY2xhc3M9XCJ2aXN1YWxseS1oaWRkZW5cIj57e3N0ZXBwZXJTZXJ2aWNlLmNvbXBsZXRlZExhYmVsfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2J1dHRvbj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXN0YXRlLmlzVmVydGljYWwgJiYgaSA8IHN0YXRlLnN0ZXBzLmxlbmd0aCAtIDEgXCIgW25nVGVtcGxhdGVPdXRsZXRdPVwibXlTdGVwcGVyTGluZVwiPjwvbmctY29udGFpbmVyPlxuICAgIDxkaXYgKm5nSWY9XCJzdGF0ZS5pc1ZlcnRpY2FsICYmIGkgPCBzdGF0ZS5zdGVwcy5sZW5ndGhcIiBbY2xhc3MuZC1ub25lXT1cInN0YXRlLnN0ZXBzLmxlbmd0aCAtIDEgPT09IGlcIiByb2xlPVwidGFicGFuZWxcIiBbaWRdPVwic3RlcC5hcmlhQ29udHJvbFwiIGNsYXNzPVwiZGYtdmVydGljYWwtc3RlcHBlci1wYW5lbCBkZi12ZXJ0aWNhbC1zdGVwcGVyLWxpbmVcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAqbmdJZj1cIm1hcFN0ZXBUb0NvbnRlbnQuaGFzKGkpICYmIHN0YXRlLmFjdGl2ZSA9PT0gaVwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm1hcFN0ZXBUb0NvbnRlbnQuZ2V0KGkpIHx8IG51bGxcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie3N0YXRlLCBpbmRleDogaSwgc2VydmljZTogc3RlcHBlclNlcnZpY2V9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctY29udGFpbmVyPlxuPGRpdiBjbGFzcz1cInRleHQtcHJpbWFyeSBtYi0yXCJcbiAgW2NsYXNzLmQtYmxvY2tdPVwiIXN0YXRlLmlzVmVydGljYWxcIlxuICBbY2xhc3MuZC1zbS1ub25lXT1cIiFzdGF0ZS5pc1ZlcnRpY2FsXCJcbiAgW2NsYXNzLmQtbm9uZV09XCJzdGF0ZS5pc1ZlcnRpY2FsXCJcbiAgKm5nSWY9XCJzdGVwcGVyU2VydmljZS5zdGVwcGVyU3RhdGUkIHwgYXN5bmMgYXMgc3RhdGVcIj5cbiAgPHNwYW4gY2xhc3M9XCJkZi1zdGVwcGVyLWxhYmVsXCI+e3tzdGF0ZS5zdGVwc1tzdGF0ZS5hY3RpdmVdLmxhYmVsfX08L3NwYW4+XG48L2Rpdj4iXX0=