@design-factory/design-factory 15.2.2 → 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 (198) 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/stepper/stepper.component.mjs +65 -0
  34. package/esm2022/lib/angular/stepper/stepper.directive.mjs +174 -0
  35. package/esm2022/lib/angular/stepper/stepper.module.mjs +17 -0
  36. package/esm2022/lib/angular/stepper/stepper.service.mjs +213 -0
  37. package/esm2022/lib/index.mjs +9 -94
  38. package/fesm2022/design-factory.mjs +1854 -1394
  39. package/fesm2022/design-factory.mjs.map +1 -1
  40. package/lib/angular/df.module.d.ts +26 -0
  41. package/lib/angular/stepper/stepper.component.d.ts +31 -0
  42. package/lib/angular/stepper/stepper.directive.d.ts +37 -0
  43. package/lib/angular/stepper/stepper.module.d.ts +8 -0
  44. package/lib/angular/stepper/stepper.service.d.ts +126 -0
  45. package/lib/index.d.ts +7 -22
  46. package/package.json +23 -4
  47. package/schematics/migrations/15_0_0/remove-ngx-slider/index.js +0 -1
  48. package/schematics/migrations/16_0_0/navbar-logo-dark/index.d.ts +9 -0
  49. package/schematics/migrations/16_0_0/navbar-logo-dark/index.js +43 -0
  50. package/schematics/migrations/16_0_0/revert-to-old-brand/index.d.ts +7 -0
  51. package/schematics/migrations/16_0_0/revert-to-old-brand/index.js +115 -0
  52. package/schematics/migrations/16_0_0/scss-var/files/removed.json +55 -0
  53. package/schematics/migrations/16_0_0/scss-var/files/renames.json +76 -0
  54. package/schematics/migrations/16_0_0/scss-var/index.d.ts +7 -0
  55. package/schematics/migrations/16_0_0/scss-var/index.js +57 -0
  56. package/schematics/migrations/16_0_0/stepper-classes/index.d.ts +13 -0
  57. package/schematics/migrations/16_0_0/stepper-classes/index.js +63 -0
  58. package/schematics/migrations/helpers.js +0 -1
  59. package/schematics/migrations/migration.json +23 -1
  60. package/schematics/migrations/utils/component-resource-collector.d.ts +44 -0
  61. package/schematics/migrations/utils/component-resource-collector.js +166 -0
  62. package/schematics/migrations/utils/project_tsconfig_paths.js +0 -1
  63. package/schematics/migrations/utils/style-updater.d.ts +9 -0
  64. package/schematics/migrations/utils/style-updater.js +38 -0
  65. package/schematics/migrations/utils/template-updater.d.ts +9 -0
  66. package/schematics/migrations/utils/template-updater.js +38 -0
  67. package/schematics/migrations/utils/typescript/compiler_host.js +0 -1
  68. package/schematics/migrations/utils/typescript/decorators.d.ts +22 -0
  69. package/schematics/migrations/utils/typescript/decorators.js +41 -0
  70. package/schematics/migrations/utils/typescript/functions.d.ts +14 -0
  71. package/schematics/migrations/utils/typescript/functions.js +20 -0
  72. package/schematics/migrations/utils/typescript/imports.d.ts +17 -0
  73. package/schematics/migrations/utils/typescript/imports.js +110 -0
  74. package/schematics/migrations/utils/typescript/line-mappings.d.ts +21 -0
  75. package/schematics/migrations/utils/typescript/line-mappings.js +75 -0
  76. package/schematics/migrations/utils/typescript/parse_tsconfig.js +0 -1
  77. package/schematics/migrations/utils/typescript/property-name.d.ts +18 -0
  78. package/schematics/migrations/utils/typescript/property-name.js +27 -0
  79. package/schematics/ng-add/index.js +0 -1
  80. package/schematics/ng-add/schema.js +0 -1
  81. package/styles/scss/_common.root.scss +37 -0
  82. package/styles/scss/_common.scss +3 -9
  83. package/styles/scss/_common.variables.scss +16 -6
  84. package/styles/scss/_variables.scss +0 -1
  85. package/styles/scss/bootstrap/_maps.scss +10 -9
  86. package/styles/scss/bootstrap/_mixins-override.scss +26 -0
  87. package/styles/scss/bootstrap/_variables.scss +927 -267
  88. package/styles/scss/components/accordion/_accordion.scss +31 -14
  89. package/styles/scss/components/accordion/_accordion.variables.scss +5 -5
  90. package/styles/scss/components/alert/_alert.scss +130 -228
  91. package/styles/scss/components/alert/_alert.variables.scss +22 -33
  92. package/styles/scss/components/badge/_badge.scss +130 -118
  93. package/styles/scss/components/badge/_badge.variables.scss +14 -8
  94. package/styles/scss/components/brand-color/_brand-color.mixins.scss +19 -4
  95. package/styles/scss/components/brand-color/_brand-color.scss +4 -6
  96. package/styles/scss/components/brand-color/_brand-color.variables.scss +1 -7
  97. package/styles/scss/components/brand-color/_brand-color_container.scss +28 -0
  98. package/styles/scss/components/breadcrumbs/_breadcrumbs.scss +77 -65
  99. package/styles/scss/components/breadcrumbs/_breadcrumbs.variables.scss +6 -4
  100. package/styles/scss/components/button/_button.scss +120 -55
  101. package/styles/scss/components/button/_button.variables.scss +18 -4
  102. package/styles/scss/components/button/_button_container.scss +9 -45
  103. package/styles/scss/components/card/_card.scss +90 -58
  104. package/styles/scss/components/card/_card.variables.scss +13 -13
  105. package/styles/scss/components/carousel/_carousel.scss +22 -23
  106. package/styles/scss/components/carousel/_carousel.variables.scss +2 -1
  107. package/styles/scss/components/checkbox/_checkbox.scss +14 -8
  108. package/styles/scss/components/checkbox/_checkbox.variables.scss +2 -2
  109. package/styles/scss/components/collapse/_collapse.scss +15 -7
  110. package/styles/scss/components/collapse/_collapse.variables.scss +3 -3
  111. package/styles/scss/components/datepicker/_datepicker.scss +178 -122
  112. package/styles/scss/components/datepicker/_datepicker.variables.scss +22 -15
  113. package/styles/scss/components/dropdown/_dropdown.mixins.scss +4 -4
  114. package/styles/scss/components/dropdown/_dropdown.scss +39 -19
  115. package/styles/scss/components/dropdown/_dropdown.variables.scss +4 -4
  116. package/styles/scss/components/fieldset/_fieldset.scss +4 -2
  117. package/styles/scss/components/fonts/_fonts-family.scss +112 -29
  118. package/styles/scss/components/fonts/_fonts.root.scss +27 -0
  119. package/styles/scss/components/fonts/_fonts.scss +25 -26
  120. package/styles/scss/components/fonts/_fonts.variables.scss +2 -2
  121. package/styles/scss/components/footer/_footer.scss +48 -18
  122. package/styles/scss/components/footer/_footer.variables.scss +4 -2
  123. package/styles/scss/components/form/_form.scss +69 -16
  124. package/styles/scss/components/form/_form.variables.scss +23 -3
  125. package/styles/scss/components/icon/_amadeus-icon.scss +2 -2
  126. package/styles/scss/components/icon/_amadeus-icon.variables.scss +1 -0
  127. package/styles/scss/components/inputs/_inputs.mixin.scss +8 -4
  128. package/styles/scss/components/inputs/_inputs.root.scss +8 -0
  129. package/styles/scss/components/inputs/_inputs.scss +159 -118
  130. package/styles/scss/components/inputs/_inputs.variables.scss +2 -1
  131. package/styles/scss/components/link/_link.mixins.scss +49 -49
  132. package/styles/scss/components/link/_link.scss +84 -22
  133. package/styles/scss/components/link/_link.variables.scss +6 -6
  134. package/styles/scss/components/list/_list.scss +10 -5
  135. package/styles/scss/components/list-group/_list-group.scss +54 -48
  136. package/styles/scss/components/list-group/_list-group.variables.scss +6 -14
  137. package/styles/scss/components/media/_media.scss +17 -9
  138. package/styles/scss/components/media/_media.variables.scss +2 -1
  139. package/styles/scss/components/modal/_modal.scss +88 -39
  140. package/styles/scss/components/modal/_modal.variables.scss +4 -5
  141. package/styles/scss/components/navbar/_navbar.scss +298 -115
  142. package/styles/scss/components/navbar/_navbar.variables.scss +29 -18
  143. package/styles/scss/components/pagination/_pagination.scss +68 -82
  144. package/styles/scss/components/pagination/_pagination.variables.scss +5 -8
  145. package/styles/scss/components/pagination/_pagination_container.scss +3 -0
  146. package/styles/scss/components/popover/_popover.mixin.scss +20 -33
  147. package/styles/scss/components/popover/_popover.scss +25 -7
  148. package/styles/scss/components/popover/_popover_container.scss +123 -74
  149. package/styles/scss/components/progressbar/_progressbar.scss +15 -7
  150. package/styles/scss/components/progressbar/_progressbar.variables.scss +3 -2
  151. package/styles/scss/components/radio/_radio.scss +19 -14
  152. package/styles/scss/components/rating/_rating.scss +41 -22
  153. package/styles/scss/components/rating/_rating.variables.scss +5 -5
  154. package/styles/scss/components/scrollspy/_scrollspy.scss +30 -13
  155. package/styles/scss/components/scrollspy/_scrollspy.variables.scss +2 -1
  156. package/styles/scss/components/select/_select.scss +232 -166
  157. package/styles/scss/components/select/_select.variables.scss +15 -15
  158. package/styles/scss/components/separator/_separator.scss +2 -1
  159. package/styles/scss/components/sidenav/_sidenav.scss +208 -135
  160. package/styles/scss/components/sidenav/_sidenav.variables.scss +19 -20
  161. package/styles/scss/components/skip-links/_skip-links.scss +31 -16
  162. package/styles/scss/components/skip-links/_skip-links.variables.scss +6 -6
  163. package/styles/scss/components/slider/_slider.scss +11 -10
  164. package/styles/scss/components/slider/_slider.variables.scss +8 -8
  165. package/styles/scss/components/speechbubble/_speechbubble.scss +50 -30
  166. package/styles/scss/components/speechbubble/_speechbubble.variables.scss +4 -2
  167. package/styles/scss/components/spinner/_spinner.scss +34 -29
  168. package/styles/scss/components/stepper/_stepper.mixins.scss +111 -151
  169. package/styles/scss/components/stepper/_stepper.scss +163 -69
  170. package/styles/scss/components/stepper/_stepper.variables.scss +23 -17
  171. package/styles/scss/components/table/_advancedtables.scss +50 -31
  172. package/styles/scss/components/table/_table.variables.scss +3 -2
  173. package/styles/scss/components/tabs/_tabs.scss +98 -49
  174. package/styles/scss/components/tabs/_tabs.variables.scss +11 -10
  175. package/styles/scss/components/toast/_toast.scss +136 -68
  176. package/styles/scss/components/toast/_toast.variables.scss +4 -4
  177. package/styles/scss/components/toggle/_toggle.scss +90 -44
  178. package/styles/scss/components/toggle/_toggle.variables.scss +7 -5
  179. package/styles/scss/components/typeahead/_typeahead.scss +18 -8
  180. package/styles/scss/components/typeahead/_typeahead.variables.scss +1 -1
  181. package/styles/scss/df-styles-namespace.scss +8 -11
  182. package/styles/scss/df-styles.scss +6 -3
  183. package/styles/scss/themes/brand2023/_variables.scss +585 -0
  184. package/styles/scss/utilities/_common.utilities.scss +112 -32
  185. package/assets/fonts/amadeus-light/amadeus-light.svg +0 -8658
  186. package/assets/fonts/amadeus-light/amadeus-light.ttf +0 -0
  187. package/assets/fonts/amadeus-light/amadeus-light.woff +0 -0
  188. package/assets/fonts/amadeus-light/amadeus-light.woff2 +0 -0
  189. package/assets/icon-amadeus.svg +0 -1
  190. package/schematics/migrations/15_0_0/remove-ngx-slider/index.js.map +0 -1
  191. package/schematics/migrations/helpers.js.map +0 -1
  192. package/schematics/migrations/utils/project_tsconfig_paths.js.map +0 -1
  193. package/schematics/migrations/utils/typescript/compiler_host.js.map +0 -1
  194. package/schematics/migrations/utils/typescript/parse_tsconfig.js.map +0 -1
  195. package/schematics/ng-add/index.js.map +0 -1
  196. package/schematics/ng-add/schema.js.map +0 -1
  197. package/styles/scss/components/tooltip/_tooltip.scss +0 -3
  198. package/styles/scss/components/tooltip/_tooltip.variables.scss +0 -5
@@ -0,0 +1,213 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class DfStepperService {
5
+ constructor() {
6
+ this.setFocus = false;
7
+ this._stepperState$ = new BehaviorSubject({
8
+ steps: [],
9
+ active: 0,
10
+ isLinear: false,
11
+ isInline: false,
12
+ isVertical: false
13
+ });
14
+ this._state = {
15
+ steps: [],
16
+ active: 0,
17
+ isLinear: false,
18
+ isInline: false,
19
+ isVertical: false
20
+ };
21
+ this._completedLabel = 'Completed';
22
+ this._warningLabel = 'Warning';
23
+ this._stepperAriaLabel = 'Stepper';
24
+ }
25
+ get stepperState$() {
26
+ return this._stepperState$.asObservable();
27
+ }
28
+ // initState must be used to push new Steps to the service
29
+ get state() {
30
+ return this._state;
31
+ }
32
+ dispatchStepperState() {
33
+ this._stepperState$.next(this._state);
34
+ }
35
+ updateStepperState() {
36
+ this._state = this.normalizeState(this._state);
37
+ this.dispatchStepperState();
38
+ }
39
+ // API
40
+ /**
41
+ * Use this to init the list of Elements from your stepper
42
+ *
43
+ * Here we are not deep copying the array --> the function will change it
44
+ */
45
+ initStepperState(state) {
46
+ // normalize the steps here
47
+ this._state = this.normalizeState(state);
48
+ this.dispatchStepperState();
49
+ }
50
+ /**
51
+ * Use this to normalize the state of the stepper (completed, warning, current, future)
52
+ * @param state
53
+ * @returns
54
+ */
55
+ normalizeState(state) {
56
+ const stepsList = [];
57
+ for (let i = 0; i < state.steps.length; i++) {
58
+ if (state.steps[i].warning) {
59
+ stepsList.push({ ...state.steps[i], type: 'warning' });
60
+ }
61
+ else if (i === state.active) {
62
+ stepsList.push({ ...state.steps[i], type: 'current' });
63
+ }
64
+ else if (state.steps[i].completed) {
65
+ stepsList.push({ ...state.steps[i], type: 'completed' });
66
+ }
67
+ else {
68
+ stepsList.push({ ...state.steps[i], type: 'future' });
69
+ }
70
+ }
71
+ return { ...state, steps: stepsList };
72
+ }
73
+ /**
74
+ * Internal to get the stepper aria label in the template
75
+ */
76
+ get stepperAriaLabel() {
77
+ return this._stepperAriaLabel;
78
+ }
79
+ /**
80
+ * Use this to set the stepper aria label (i18n)
81
+ */
82
+ set stepperAriaLabel(label) {
83
+ this._stepperAriaLabel = label;
84
+ }
85
+ /**
86
+ * Internal to get the completed label in the template
87
+ */
88
+ get completedLabel() {
89
+ return this._completedLabel;
90
+ }
91
+ /**
92
+ * Internal to get the waring label in the template
93
+ */
94
+ get warningLabel() {
95
+ return this._warningLabel;
96
+ }
97
+ /**
98
+ * Use this to set the completed label (i18n)
99
+ */
100
+ set completedLabel(label) {
101
+ this._completedLabel = label;
102
+ }
103
+ /**
104
+ * Use this to set the warning label (i18n)
105
+ */
106
+ set warningLabel(label) {
107
+ this._warningLabel = label;
108
+ }
109
+ /**
110
+ * TODO make it customizable
111
+ * @param index - index of the step
112
+ * @returns - string of the step number to display
113
+ */
114
+ getStepNumberLabel(index) {
115
+ return `${index + 1}`;
116
+ }
117
+ resetFocus() {
118
+ this.setFocus = false;
119
+ }
120
+ /**
121
+ *
122
+ * @param isLinear - true if the stepper is linear
123
+ */
124
+ setLinear(isLinear) {
125
+ this._state.isLinear = isLinear;
126
+ this.dispatchStepperState();
127
+ }
128
+ /**
129
+ *
130
+ * @param isInline - true if the stepper is inline
131
+ */
132
+ setInline(isInline) {
133
+ this._state.isInline = isInline;
134
+ this.dispatchStepperState();
135
+ }
136
+ /**
137
+ *
138
+ * @param index - index of the step to select start at 0
139
+ */
140
+ selectStep(index) {
141
+ if (index < 0 || index >= this._state.steps.length) {
142
+ return;
143
+ }
144
+ this._state.active = index;
145
+ this.updateStepperState();
146
+ }
147
+ /**
148
+ * Same as selectStep but with focus on the step selected
149
+ * @param index - index of the step to select start at 0
150
+ */
151
+ selectWithFocus(index) {
152
+ if (index < 0 || index >= this._state.steps.length) {
153
+ return;
154
+ }
155
+ this.setFocus = true;
156
+ this.selectStep(index);
157
+ }
158
+ /**
159
+ *
160
+ * @param index - index of the step to complete start at 0
161
+ */
162
+ completeStep(index) {
163
+ if (index < 0 || index >= this._state.steps.length) {
164
+ return;
165
+ }
166
+ this._state.steps[index].completed = true;
167
+ this._state.steps[index].warning = false;
168
+ this.updateStepperState();
169
+ }
170
+ /**
171
+ *
172
+ * @param index - index of the step to complete start at 0
173
+ */
174
+ completeStepAndGoNext(index) {
175
+ this.completeStep(index);
176
+ this.selectStep(index + 1);
177
+ }
178
+ /**
179
+ * Attention if the step was completed it will be uncompleted after.
180
+ * @param index - index of the step to make Warning start at 0
181
+ * @param warningLabel - label to display in the warning by default it will take the warningLabel if it exists or the label
182
+ */
183
+ makeWarning(index, warningLabel) {
184
+ if (index < 0 || index >= this._state.steps.length) {
185
+ return;
186
+ }
187
+ this._state.steps[index].warning = true;
188
+ this._state.steps[index].completed = false;
189
+ this._state.steps[index].warningLabel = warningLabel
190
+ ? warningLabel
191
+ : this._state.steps[index].warningLabel
192
+ ? this._state.steps[index].warningLabel
193
+ : this._state.steps[index].label;
194
+ this.updateStepperState();
195
+ }
196
+ /**
197
+ *
198
+ * @param index - index of the step to remove Warning start at 0
199
+ */
200
+ removeWarning(index) {
201
+ if (index < 0 || index >= this._state.steps.length) {
202
+ return;
203
+ }
204
+ this._state.steps[index].warning = false;
205
+ this.updateStepperState();
206
+ }
207
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfStepperService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
208
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfStepperService }); }
209
+ }
210
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfStepperService, decorators: [{
211
+ type: Injectable
212
+ }] });
213
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL3N0ZXBwZXIvc3RlcHBlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQzs7QUFnQ25ELE1BQU0sT0FBTyxnQkFBZ0I7SUFEN0I7UUFFRSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ0EsbUJBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBMkI7WUFDOUUsS0FBSyxFQUFFLEVBQUU7WUFDVCxNQUFNLEVBQUUsQ0FBQztZQUNULFFBQVEsRUFBRSxLQUFLO1lBQ2YsUUFBUSxFQUFFLEtBQUs7WUFDZixVQUFVLEVBQUUsS0FBSztTQUNsQixDQUFDLENBQUM7UUFDSyxXQUFNLEdBQTZCO1lBQ3pDLEtBQUssRUFBRSxFQUFFO1lBQ1QsTUFBTSxFQUFFLENBQUM7WUFDVCxRQUFRLEVBQUUsS0FBSztZQUNmLFFBQVEsRUFBRSxLQUFLO1lBQ2YsVUFBVSxFQUFFLEtBQUs7U0FDbEIsQ0FBQztRQUNNLG9CQUFlLEdBQUcsV0FBVyxDQUFDO1FBQzlCLGtCQUFhLEdBQUcsU0FBUyxDQUFDO1FBQzFCLHNCQUFpQixHQUFHLFNBQVMsQ0FBQztLQXlNdkM7SUF2TUMsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFDRCwwREFBMEQ7SUFDMUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3hD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LElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDekMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQzs4R0ExTlUsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBEZlN0ZXBwZXJTdGVwIHtcbiAgd2FybmluZzogYm9vbGVhbjtcbiAgY29tcGxldGVkOiBib29sZWFuO1xuICBsYWJlbDogc3RyaW5nO1xuICBhcmlhQ29udHJvbDogc3RyaW5nO1xuICB3YXJuaW5nTGFiZWw/OiBzdHJpbmc7XG4gIG9wdGlvbmFsTGFiZWw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIERmU3RlcFR5cGUgPSAnd2FybmluZycgfCAnY3VycmVudCcgfCAnY29tcGxldGVkJyB8ICdmdXR1cmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERmU3RlcHBlck5vcm1hbGl6ZWRTdGVwIGV4dGVuZHMgRGZTdGVwcGVyU3RlcCB7XG4gIHR5cGU6IERmU3RlcFR5cGU7XG59XG5leHBvcnQgaW50ZXJmYWNlIERmU3RlcHBlclN0YXRlIHtcbiAgc3RlcHM6IERmU3RlcHBlclN0ZXBbXTtcbiAgYWN0aXZlOiBudW1iZXI7XG4gIGlzTGluZWFyOiBib29sZWFuO1xuICBpc0lubGluZTogYm9vbGVhbjtcbiAgaXNWZXJ0aWNhbDogYm9vbGVhbjtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgRGZTdGVwcGVyTm9ybWFsaXplZFN0YXRlIHtcbiAgc3RlcHM6IERmU3RlcHBlck5vcm1hbGl6ZWRTdGVwW107XG4gIGFjdGl2ZTogbnVtYmVyO1xuICBpc0xpbmVhcjogYm9vbGVhbjtcbiAgaXNJbmxpbmU6IGJvb2xlYW47XG4gIGlzVmVydGljYWw6IGJvb2xlYW47XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEZlN0ZXBwZXJTZXJ2aWNlIHtcbiAgc2V0Rm9jdXMgPSBmYWxzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RlcHBlclN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGZTdGVwcGVyTm9ybWFsaXplZFN0YXRlPih7XG4gICAgc3RlcHM6IFtdLFxuICAgIGFjdGl2ZTogMCxcbiAgICBpc0xpbmVhcjogZmFsc2UsXG4gICAgaXNJbmxpbmU6IGZhbHNlLFxuICAgIGlzVmVydGljYWw6IGZhbHNlXG4gIH0pO1xuICBwcml2YXRlIF9zdGF0ZTogRGZTdGVwcGVyTm9ybWFsaXplZFN0YXRlID0ge1xuICAgIHN0ZXBzOiBbXSxcbiAgICBhY3RpdmU6IDAsXG4gICAgaXNMaW5lYXI6IGZhbHNlLFxuICAgIGlzSW5saW5lOiBmYWxzZSxcbiAgICBpc1ZlcnRpY2FsOiBmYWxzZVxuICB9O1xuICBwcml2YXRlIF9jb21wbGV0ZWRMYWJlbCA9ICdDb21wbGV0ZWQnO1xuICBwcml2YXRlIF93YXJuaW5nTGFiZWwgPSAnV2FybmluZyc7XG4gIHByaXZhdGUgX3N0ZXBwZXJBcmlhTGFiZWwgPSAnU3RlcHBlcic7XG5cbiAgZ2V0IHN0ZXBwZXJTdGF0ZSQoKTogT2JzZXJ2YWJsZTxEZlN0ZXBwZXJOb3JtYWxpemVkU3RhdGU+IHtcbiAgICByZXR1cm4gdGhpcy5fc3RlcHBlclN0YXRlJC5hc09ic2VydmFibGUoKTtcbiAgfVxuICAvLyBpbml0U3RhdGUgbXVzdCBiZSB1c2VkIHRvIHB1c2ggbmV3IFN0ZXBzIHRvIHRoZSBzZXJ2aWNlXG4gIGdldCBzdGF0ZSgpOiBEZlN0ZXBwZXJOb3JtYWxpemVkU3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgZGlzcGF0Y2hTdGVwcGVyU3RhdGUoKSB7XG4gICAgdGhpcy5fc3RlcHBlclN0YXRlJC5uZXh0KHRoaXMuX3N0YXRlKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlU3RlcHBlclN0YXRlKCkge1xuICAgIHRoaXMuX3N0YXRlID0gdGhpcy5ub3JtYWxpemVTdGF0ZSh0aGlzLl9zdGF0ZSBhcyBEZlN0ZXBwZXJTdGF0ZSk7XG4gICAgdGhpcy5kaXNwYXRjaFN0ZXBwZXJTdGF0ZSgpO1xuICB9XG5cbiAgLy8gQVBJXG4gIC8qKlxuICAgKiBVc2UgdGhpcyB0byBpbml0IHRoZSBsaXN0IG9mIEVsZW1lbnRzIGZyb20geW91ciBzdGVwcGVyXG4gICAqXG4gICAqIEhlcmUgd2UgYXJlIG5vdCBkZWVwIGNvcHlpbmcgdGhlIGFycmF5IC0tPiB0aGUgZnVuY3Rpb24gd2lsbCBjaGFuZ2UgaXRcbiAgICovXG4gIGluaXRTdGVwcGVyU3RhdGUoc3RhdGU6IERmU3RlcHBlclN0YXRlKSB7XG4gICAgLy8gbm9ybWFsaXplIHRoZSBzdGVwcyBoZXJlXG4gICAgdGhpcy5fc3RhdGUgPSB0aGlzLm5vcm1hbGl6ZVN0YXRlKHN0YXRlKTtcbiAgICB0aGlzLmRpc3BhdGNoU3RlcHBlclN0YXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogVXNlIHRoaXMgdG8gbm9ybWFsaXplIHRoZSBzdGF0ZSBvZiB0aGUgc3RlcHBlciAoY29tcGxldGVkLCB3YXJuaW5nLCBjdXJyZW50LCBmdXR1cmUpXG4gICAqIEBwYXJhbSBzdGF0ZVxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgbm9ybWFsaXplU3RhdGUoc3RhdGU6IERmU3RlcHBlclN0YXRlKTogRGZTdGVwcGVyTm9ybWFsaXplZFN0YXRlIHtcbiAgICBjb25zdCBzdGVwc0xpc3Q6IERmU3RlcHBlck5vcm1hbGl6ZWRTdGVwW10gPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHN0YXRlLnN0ZXBzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAoc3RhdGUuc3RlcHNbaV0ud2FybmluZykge1xuICAgICAgICBzdGVwc0xpc3QucHVzaCh7IC4uLnN0YXRlLnN0ZXBzW2ldLCB0eXBlOiAnd2FybmluZycgfSk7XG4gICAgICB9IGVsc2UgaWYgKGkgPT09IHN0YXRlLmFjdGl2ZSkge1xuICAgICAgICBzdGVwc0xpc3QucHVzaCh7IC4uLnN0YXRlLnN0ZXBzW2ldLCB0eXBlOiAnY3VycmVudCcgfSk7XG4gICAgICB9IGVsc2UgaWYgKHN0YXRlLnN0ZXBzW2ldLmNvbXBsZXRlZCkge1xuICAgICAgICBzdGVwc0xpc3QucHVzaCh7IC4uLnN0YXRlLnN0ZXBzW2ldLCB0eXBlOiAnY29tcGxldGVkJyB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHN0ZXBzTGlzdC5wdXNoKHsgLi4uc3RhdGUuc3RlcHNbaV0sIHR5cGU6ICdmdXR1cmUnIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4geyAuLi5zdGF0ZSwgc3RlcHM6IHN0ZXBzTGlzdCB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEludGVybmFsIHRvIGdldCB0aGUgc3RlcHBlciBhcmlhIGxhYmVsIGluIHRoZSB0ZW1wbGF0ZVxuICAgKi9cbiAgZ2V0IHN0ZXBwZXJBcmlhTGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fc3RlcHBlckFyaWFMYWJlbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2UgdGhpcyB0byBzZXQgdGhlIHN0ZXBwZXIgYXJpYSBsYWJlbCAoaTE4bilcbiAgICovXG4gIHNldCBzdGVwcGVyQXJpYUxhYmVsKGxhYmVsOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9zdGVwcGVyQXJpYUxhYmVsID0gbGFiZWw7XG4gIH1cblxuICAvKipcbiAgICogSW50ZXJuYWwgdG8gZ2V0IHRoZSBjb21wbGV0ZWQgbGFiZWwgaW4gdGhlIHRlbXBsYXRlXG4gICAqL1xuICBnZXQgY29tcGxldGVkTGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29tcGxldGVkTGFiZWw7XG4gIH1cblxuICAvKipcbiAgICogSW50ZXJuYWwgdG8gZ2V0IHRoZSB3YXJpbmcgbGFiZWwgaW4gdGhlIHRlbXBsYXRlXG4gICAqL1xuICBnZXQgd2FybmluZ0xhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3dhcm5pbmdMYWJlbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2UgdGhpcyB0byBzZXQgdGhlIGNvbXBsZXRlZCBsYWJlbCAoaTE4bilcbiAgICovXG4gIHNldCBjb21wbGV0ZWRMYWJlbChsYWJlbDogc3RyaW5nKSB7XG4gICAgdGhpcy5fY29tcGxldGVkTGFiZWwgPSBsYWJlbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2UgdGhpcyB0byBzZXQgdGhlIHdhcm5pbmcgbGFiZWwgKGkxOG4pXG4gICAqL1xuICBzZXQgd2FybmluZ0xhYmVsKGxhYmVsOiBzdHJpbmcpIHtcbiAgICB0aGlzLl93YXJuaW5nTGFiZWwgPSBsYWJlbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUT0RPIG1ha2UgaXQgY3VzdG9taXphYmxlXG4gICAqIEBwYXJhbSBpbmRleCAtIGluZGV4IG9mIHRoZSBzdGVwXG4gICAqIEByZXR1cm5zIC0gc3RyaW5nIG9mIHRoZSBzdGVwIG51bWJlciB0byBkaXNwbGF5XG4gICAqL1xuICBnZXRTdGVwTnVtYmVyTGFiZWwoaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke2luZGV4ICsgMX1gO1xuICB9XG5cbiAgcmVzZXRGb2N1cygpIHtcbiAgICB0aGlzLnNldEZvY3VzID0gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIGlzTGluZWFyIC0gdHJ1ZSBpZiB0aGUgc3RlcHBlciBpcyBsaW5lYXJcbiAgICovXG4gIHNldExpbmVhcihpc0xpbmVhcjogYm9vbGVhbikge1xuICAgIHRoaXMuX3N0YXRlLmlzTGluZWFyID0gaXNMaW5lYXI7XG4gICAgdGhpcy5kaXNwYXRjaFN0ZXBwZXJTdGF0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBpc0lubGluZSAtIHRydWUgaWYgdGhlIHN0ZXBwZXIgaXMgaW5saW5lXG4gICAqL1xuICBzZXRJbmxpbmUoaXNJbmxpbmU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zdGF0ZS5pc0lubGluZSA9IGlzSW5saW5lO1xuICAgIHRoaXMuZGlzcGF0Y2hTdGVwcGVyU3RhdGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gaW5kZXggLSBpbmRleCBvZiB0aGUgc3RlcCB0byBzZWxlY3Qgc3RhcnQgYXQgMFxuICAgKi9cbiAgc2VsZWN0U3RlcChpbmRleDogbnVtYmVyKSB7XG4gICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+PSB0aGlzLl9zdGF0ZS5zdGVwcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fc3RhdGUuYWN0aXZlID0gaW5kZXg7XG4gICAgdGhpcy51cGRhdGVTdGVwcGVyU3RhdGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTYW1lIGFzIHNlbGVjdFN0ZXAgYnV0IHdpdGggZm9jdXMgb24gdGhlIHN0ZXAgc2VsZWN0ZWRcbiAgICogQHBhcmFtIGluZGV4IC0gaW5kZXggb2YgdGhlIHN0ZXAgdG8gc2VsZWN0IHN0YXJ0IGF0IDBcbiAgICovXG4gIHNlbGVjdFdpdGhGb2N1cyhpbmRleDogbnVtYmVyKSB7XG4gICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+PSB0aGlzLl9zdGF0ZS5zdGVwcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zZXRGb2N1cyA9IHRydWU7XG4gICAgdGhpcy5zZWxlY3RTdGVwKGluZGV4KTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gaW5kZXggLSBpbmRleCBvZiB0aGUgc3RlcCB0byBjb21wbGV0ZSBzdGFydCBhdCAwXG4gICAqL1xuICBjb21wbGV0ZVN0ZXAoaW5kZXg6IG51bWJlcikge1xuICAgIGlmIChpbmRleCA8IDAgfHwgaW5kZXggPj0gdGhpcy5fc3RhdGUuc3RlcHMubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3N0YXRlLnN0ZXBzW2luZGV4XS5jb21wbGV0ZWQgPSB0cnVlO1xuICAgIHRoaXMuX3N0YXRlLnN0ZXBzW2luZGV4XS53YXJuaW5nID0gZmFsc2U7XG4gICAgdGhpcy51cGRhdGVTdGVwcGVyU3RhdGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gaW5kZXggLSBpbmRleCBvZiB0aGUgc3RlcCB0byBjb21wbGV0ZSBzdGFydCBhdCAwXG4gICAqL1xuICBjb21wbGV0ZVN0ZXBBbmRHb05leHQoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuY29tcGxldGVTdGVwKGluZGV4KTtcbiAgICB0aGlzLnNlbGVjdFN0ZXAoaW5kZXggKyAxKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRlbnRpb24gaWYgdGhlIHN0ZXAgd2FzIGNvbXBsZXRlZCBpdCB3aWxsIGJlIHVuY29tcGxldGVkIGFmdGVyLlxuICAgKiBAcGFyYW0gaW5kZXggLSBpbmRleCBvZiB0aGUgc3RlcCB0byBtYWtlIFdhcm5pbmcgc3RhcnQgYXQgMFxuICAgKiBAcGFyYW0gd2FybmluZ0xhYmVsIC0gbGFiZWwgdG8gZGlzcGxheSBpbiB0aGUgd2FybmluZyBieSBkZWZhdWx0IGl0IHdpbGwgdGFrZSB0aGUgd2FybmluZ0xhYmVsIGlmIGl0IGV4aXN0cyBvciB0aGUgbGFiZWxcbiAgICovXG4gIG1ha2VXYXJuaW5nKGluZGV4OiBudW1iZXIsIHdhcm5pbmdMYWJlbD86IHN0cmluZykge1xuICAgIGlmIChpbmRleCA8IDAgfHwgaW5kZXggPj0gdGhpcy5fc3RhdGUuc3RlcHMubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3N0YXRlLnN0ZXBzW2luZGV4XS53YXJuaW5nID0gdHJ1ZTtcbiAgICB0aGlzLl9zdGF0ZS5zdGVwc1tpbmRleF0uY29tcGxldGVkID0gZmFsc2U7XG4gICAgdGhpcy5fc3RhdGUuc3RlcHNbaW5kZXhdLndhcm5pbmdMYWJlbCA9IHdhcm5pbmdMYWJlbFxuICAgICAgPyB3YXJuaW5nTGFiZWxcbiAgICAgIDogdGhpcy5fc3RhdGUuc3RlcHNbaW5kZXhdLndhcm5pbmdMYWJlbFxuICAgICAgPyB0aGlzLl9zdGF0ZS5zdGVwc1tpbmRleF0ud2FybmluZ0xhYmVsXG4gICAgICA6IHRoaXMuX3N0YXRlLnN0ZXBzW2luZGV4XS5sYWJlbDtcbiAgICB0aGlzLnVwZGF0ZVN0ZXBwZXJTdGF0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBpbmRleCAtIGluZGV4IG9mIHRoZSBzdGVwIHRvIHJlbW92ZSBXYXJuaW5nIHN0YXJ0IGF0IDBcbiAgICovXG4gIHJlbW92ZVdhcm5pbmcoaW5kZXg6IG51bWJlcikge1xuICAgIGlmIChpbmRleCA8IDAgfHwgaW5kZXggPj0gdGhpcy5fc3RhdGUuc3RlcHMubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3N0YXRlLnN0ZXBzW2luZGV4XS53YXJuaW5nID0gZmFsc2U7XG4gICAgdGhpcy51cGRhdGVTdGVwcGVyU3RhdGUoKTtcbiAgfVxufVxuIl19
@@ -1,21 +1,3 @@
1
- import { NgModule } from '@angular/core';
2
- import { DfAlertModule } from './angular/alert/alert.module';
3
- import { DfDatePickerModule } from './angular/datepicker/datepicker.module';
4
- import { DfSelectModule } from './angular/selects/select.module';
5
- import { DfPopoverModule } from './angular/popover/popover.module';
6
- import { DfProgressbarModule } from './angular/progressbar/progressbar.module';
7
- import { DfAdvancedInputModule } from './angular/inputs/input-advanced.module';
8
- import { DfAccessibilityModule } from './angular/accessibility/accessibility.module';
9
- import { DfIconModule } from './angular/icon/icon.module';
10
- import { DfSliderModule } from './angular/slider/slider.module';
11
- import { DfTooltipModule } from './angular/tooltip/tooltip.module';
12
- import { DfSideNavModule } from './angular/sidenav/sidenav.module';
13
- import { DfSideNavCollapseModule } from './angular/sidenav/dfSideNavCollapse.module';
14
- import { DfAdvancedCardModule } from './angular/card/card-advanced.module';
15
- import { DfProgressIndicatorModule } from './angular/progressindicator/progressindicator.module';
16
- import { DfFooterModule } from './angular/footer/footer.module';
17
- import { DfToastModule } from './angular/toast/toast.module';
18
- import * as i0 from "@angular/core";
19
1
  // Accessibility
20
2
  export { DfAccessibilityModule } from './angular/accessibility/accessibility.module';
21
3
  export { SkipLinkDirective } from './angular/accessibility/directives/skip-link.directive';
@@ -74,6 +56,12 @@ export { DfManageNavSelectDirective } from './angular/selects/nav/manage-nav-sel
74
56
  export { DfOptionHighlightDirective } from './angular/selects/option-highlight.directive';
75
57
  export { DfManageBadgeEventsDirective } from './angular/selects/events/manage-badge-events.directive';
76
58
  export { DfSelectModule } from './angular/selects/select.module';
59
+ // Stepper
60
+ export { DfStepperDirective } from './angular/stepper/stepper.directive';
61
+ export { DfStepperStepContentDirective, DfStepperComponent } from './angular/stepper/stepper.component';
62
+ export { DfStepperStepDirective } from './angular/stepper/stepper.directive';
63
+ export { DfStepperModule } from './angular/stepper/stepper.module';
64
+ export { DfStepperService } from './angular/stepper/stepper.service';
77
65
  // Tooltip
78
66
  export { DfTooltipTruncateDirective } from './angular/tooltip/truncate/tooltipTruncate.directive';
79
67
  export { DfTooltipModule } from './angular/tooltip/tooltip.module';
@@ -94,79 +82,6 @@ export { DfMediaModule } from './angular/mediaqueries/media.module';
94
82
  // Card
95
83
  export { DfManageCardSelectionDirective } from './angular/card/manage-card-selection.directive';
96
84
  export { DfAdvancedCardModule } from './angular/card/card-advanced.module';
97
- const DF_MODULES = [
98
- DfAlertModule,
99
- DfDatePickerModule,
100
- DfSelectModule,
101
- DfProgressbarModule,
102
- DfProgressIndicatorModule,
103
- DfAdvancedInputModule,
104
- DfAccessibilityModule,
105
- DfSliderModule,
106
- DfPopoverModule,
107
- DfIconModule,
108
- DfTooltipModule,
109
- DfSideNavModule,
110
- DfSideNavCollapseModule,
111
- DfAdvancedCardModule,
112
- DfFooterModule,
113
- DfToastModule
114
- ];
115
- export class DfModule {
116
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
117
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.4", ngImport: i0, type: DfModule, imports: [DfAlertModule,
118
- DfDatePickerModule,
119
- DfSelectModule,
120
- DfProgressbarModule,
121
- DfProgressIndicatorModule,
122
- DfAdvancedInputModule,
123
- DfAccessibilityModule,
124
- DfSliderModule,
125
- DfPopoverModule,
126
- DfIconModule,
127
- DfTooltipModule,
128
- DfSideNavModule,
129
- DfSideNavCollapseModule,
130
- DfAdvancedCardModule,
131
- DfFooterModule,
132
- DfToastModule], exports: [DfAlertModule,
133
- DfDatePickerModule,
134
- DfSelectModule,
135
- DfProgressbarModule,
136
- DfProgressIndicatorModule,
137
- DfAdvancedInputModule,
138
- DfAccessibilityModule,
139
- DfSliderModule,
140
- DfPopoverModule,
141
- DfIconModule,
142
- DfTooltipModule,
143
- DfSideNavModule,
144
- DfSideNavCollapseModule,
145
- DfAdvancedCardModule,
146
- DfFooterModule,
147
- DfToastModule] }); }
148
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfModule, imports: [DF_MODULES, DfAlertModule,
149
- DfDatePickerModule,
150
- DfSelectModule,
151
- DfProgressbarModule,
152
- DfProgressIndicatorModule,
153
- DfAdvancedInputModule,
154
- DfAccessibilityModule,
155
- DfSliderModule,
156
- DfPopoverModule,
157
- DfIconModule,
158
- DfTooltipModule,
159
- DfSideNavModule,
160
- DfSideNavCollapseModule,
161
- DfAdvancedCardModule,
162
- DfFooterModule,
163
- DfToastModule] }); }
164
- }
165
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfModule, decorators: [{
166
- type: NgModule,
167
- args: [{
168
- imports: DF_MODULES,
169
- exports: DF_MODULES
170
- }]
171
- }] });
172
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBRTdELGdCQUFnQjtBQUNoQixP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QUF5QjtZQUN6QixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLGNBQWM7WUFDZCxlQUFlO1lBQ2YsWUFBWTtZQUNaLGVBQWU7WUFDZixlQUFlO1lBQ2YsdUJBQXVCO1lBQ3ZCLG9CQUFvQjtZQUNwQixjQUFjO1lBQ2QsYUFBYTs7MkZBT0YsUUFBUTtrQkFKcEIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsVUFBVTtvQkFDbkIsT0FBTyxFQUFFLFVBQVU7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERmQWxlcnRNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvYWxlcnQvYWxlcnQubW9kdWxlJztcbmltcG9ydCB7IERmRGF0ZVBpY2tlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9kYXRlcGlja2VyL2RhdGVwaWNrZXIubW9kdWxlJztcbmltcG9ydCB7IERmU2VsZWN0TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3NlbGVjdHMvc2VsZWN0Lm1vZHVsZSc7XG5pbXBvcnQgeyBEZlBvcG92ZXJNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvcG9wb3Zlci9wb3BvdmVyLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlByb2dyZXNzYmFyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzYmFyL3Byb2dyZXNzYmFyLm1vZHVsZSc7XG5pbXBvcnQgeyBEZkFkdmFuY2VkSW5wdXRNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvaW5wdXRzL2lucHV0LWFkdmFuY2VkLm1vZHVsZSc7XG5pbXBvcnQgeyBEZkFjY2Vzc2liaWxpdHlNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvYWNjZXNzaWJpbGl0eS9hY2Nlc3NpYmlsaXR5Lm1vZHVsZSc7XG5pbXBvcnQgeyBEZkljb25Nb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvaWNvbi9pY29uLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlNsaWRlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zbGlkZXIvc2xpZGVyLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlRvb2x0aXBNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvdG9vbHRpcC90b29sdGlwLm1vZHVsZSc7XG5pbXBvcnQgeyBEZlNpZGVOYXZNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2Lm1vZHVsZSc7XG5pbXBvcnQgeyBEZlNpZGVOYXZDb2xsYXBzZU1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2RmU2lkZU5hdkNvbGxhcHNlLm1vZHVsZSc7XG5pbXBvcnQgeyBEZkFkdmFuY2VkQ2FyZE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9jYXJkL2NhcmQtYWR2YW5jZWQubW9kdWxlJztcbmltcG9ydCB7IERmUHJvZ3Jlc3NJbmRpY2F0b3JNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3IubW9kdWxlJztcbmltcG9ydCB7IERmRm9vdGVyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2Zvb3Rlci9mb290ZXIubW9kdWxlJztcbmltcG9ydCB7IERmVG9hc3RNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvdG9hc3QvdG9hc3QubW9kdWxlJztcblxuLy8gQWNjZXNzaWJpbGl0eVxuZXhwb3J0IHsgRGZBY2Nlc3NpYmlsaXR5TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2FjY2Vzc2liaWxpdHkvYWNjZXNzaWJpbGl0eS5tb2R1bGUnO1xuZXhwb3J0IHsgU2tpcExpbmtEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvYWNjZXNzaWJpbGl0eS9kaXJlY3RpdmVzL3NraXAtbGluay5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgU2tpcExpbmtzQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyL2FjY2Vzc2liaWxpdHkvY29tcG9uZW50cy9za2lwLWxpbmtzLWNvbnRhaW5lci9za2lwLWxpbmtzLWNvbnRhaW5lci5jb21wb25lbnQnO1xuXG4vLyBUb2FzdFxuZXhwb3J0IHsgRGZUb2FzdE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci90b2FzdC90b2FzdC5tb2R1bGUnO1xuXG4vLyBBbGVydFxuZXhwb3J0IHsgRGZBbGVydE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9hbGVydC9hbGVydC5tb2R1bGUnO1xuXG4vLyBEYXRlcGlja2VyXG5leHBvcnQgeyBDbG9zZUlucHV0RGF0ZVBpY2tlckRpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9kYXRlcGlja2VyL2Nsb3NlZGF0ZXBpY2tlci5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZEYXRlUGlja2VyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5tb2R1bGUnO1xuZXhwb3J0IHsgRGZEYXRlcGlja2VyUmFuZ2VEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvZGF0ZXBpY2tlci9kYXRlcGlja2VyLXJhbmdlLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZkRhdGVwaWNrZXJSYW5nZVNlcnZpY2UgfSBmcm9tICcuL2FuZ3VsYXIvZGF0ZXBpY2tlci9kYXRlcGlja2VyLXJhbmdlLnNlcnZpY2UnO1xuXG4vLyBGb290ZXJcbmV4cG9ydCB7IERmRm9vdGVyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2Zvb3Rlci9mb290ZXIubW9kdWxlJztcblxuLy8gSWNvblxuZXhwb3J0IHsgRGZJY29uTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2ljb24vaWNvbi5tb2R1bGUnO1xuZXhwb3J0IHsgRGZJbnNlcnRJY29uTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2ljb24vaW5zZXJ0L2luc2VydC1pY29uLm1vZHVsZSc7XG5leHBvcnQgeyBEZkFtYWRldXNJY29uQ29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyL2ljb24vYW1hZGV1cy1pY29uJztcbmV4cG9ydCB7IERmSW5zZXJ0SWNvbkRpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9pY29uL2luc2VydC9pbnNlcnQtaWNvbi5kaXJlY3RpdmUnO1xuXG4vLyBJbnB1dHNcbmV4cG9ydCB7IERmVHJpZ2dlckNsaWNrRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL2lucHV0cy9jbGljay90cmlnZ2VyLWNsaWNrLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZklucHV0SWNvbkRpcmVjdGl2ZSwgRGZEaXJlY3Rpb24gfSBmcm9tICcuL2FuZ3VsYXIvaW5wdXRzL2ljb24vaW5wdXRpY29uLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZkFkdmFuY2VkSW5wdXRNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvaW5wdXRzL2lucHV0LWFkdmFuY2VkLm1vZHVsZSc7XG5cbi8vIE1vZGFsXG5leHBvcnQgeyBEZk1vZGFsU2VydmljZSB9IGZyb20gJy4vYW5ndWxhci9tb2RhbC9tb2RhbC5zZXJ2aWNlJztcblxuLy8gUG9wb3ZlclxuZXhwb3J0IHsgRGZQb3BvdmVyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3BvcG92ZXIvcG9wb3Zlci5tb2R1bGUnO1xuZXhwb3J0IHsgRGZQb3BvdmVyQ29uZmlnIH0gZnJvbSAnLi9hbmd1bGFyL3BvcG92ZXIvY29uZmlnL3BvcG92ZXIuY29uZmlnJztcblxuLy8gUHJvZ3Jlc3NiYXJcbmV4cG9ydCB7IERmUHJvZ3Jlc3NiYXJNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NiYXIvcHJvZ3Jlc3NiYXIubW9kdWxlJztcbmV4cG9ydCB7IERmUHJvZ3Jlc3NiYXJDb21wb25lbnQgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NiYXIvcHJvZ3Jlc3NiYXIuY29tcG9uZW50JztcblxuLy8gUHJvZ3Jlc3MgaW5kaWNhdG9yXG5leHBvcnQgeyBEZlByb2dyZXNzSW5kaWNhdG9yTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzaW5kaWNhdG9yL3Byb2dyZXNzaW5kaWNhdG9yLm1vZHVsZSc7XG5leHBvcnQge1xuICBEZlByb2dyZXNzSW5kaWNhdG9yU2VydmljZSxcbiAgRGZQcm9ncmVzc0luZGljYXRvckNvbnRlbnRcbn0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzaW5kaWNhdG9yL3Byb2dyZXNzaW5kaWNhdG9yLnNlcnZpY2UnO1xuZXhwb3J0IHsgRGZQcm9ncmVzc0luZGljYXRvckRpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9wcm9ncmVzc2luZGljYXRvci5kaXJlY3RpdmUnO1xuZXhwb3J0IHtcbiAgRGZQcm9ncmVzc0luZGljYXRvck9wdGlvbnMsXG4gIERmUHJvZ3Jlc3NJbmRpY2F0b3JDb250ZW50VHlwZSxcbiAgRGZQcm9ncmVzc0luZGljYXRvckNvbnRlbnRTcGlubmVyLFxuICBEZlByb2dyZXNzSW5kaWNhdG9yQ29udGVudFByb2dyZXNzQmFyLFxuICBEZlByb2dyZXNzSW5kaWNhdG9yQ29udGVudFBvc2l0aW9uXG59IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9wcm9ncmVzc2luZGljYXRvci1jb25maWcnO1xuZXhwb3J0IHsgRGZQcm9ncmVzc0luZGljYXRvclJlZiB9IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9wcm9ncmVzc2luZGljYXRvci1yZWYnO1xuZXhwb3J0IHsgRGZQcm9ncmVzc0luZGljYXRvckNvbnRhaW5lckNvbXBvbmVudCB9ICBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3ItY29udGFpbmVyLmNvbXBvbmVudCc7XG5leHBvcnQgeyBEZlByb2dyZXNzSW5kaWNhdG9yQmFja2Ryb3BDb21wb25lbnQgfSAgZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzaW5kaWNhdG9yL3Byb2dyZXNzaW5kaWNhdG9yLWJhY2tkcm9wLmNvbXBvbmVudCc7XG5leHBvcnQgeyBEZkRlZmF1bHRTcGlubmVyQ29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzaW5kaWNhdG9yL2RlZmF1bHQvZGVmYXVsdC1zcGlubmVyLmNvbXBvbmVudCc7XG5cbi8vIFJUTFxuZXhwb3J0IHtcbiAgRGZEaXJlY3Rpb25EZXRlY3Rpb25TZXJ2aWNlLFxuICBSaWdodFRvTGVmdERpcmVjdGlvbkVudW1cbn0gZnJvbSAnLi9hbmd1bGFyL3JpZ2h0LXRvLWxlZnQvZGlyZWN0aW9uRGV0ZWN0aW9uLnNlcnZpY2UnO1xuXG4vLyBTbGlkZXJcbmV4cG9ydCB7IERmU2xpZGVyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9zbGlkZXIubW9kdWxlJztcbmV4cG9ydCB7IERmU2xpZGVyRGlyZWN0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9kaXJlY3Rpb24vc2xpZGVyZGlyZWN0aW9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZIZWFkZXJEaXJlY3RpdmUsIERmU2lkZU5hdkl0ZW1EaXJlY3RpdmUsIERmU2lkZU5hdkljb25EaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2LmNvbXBvbmVudCc7XG5leHBvcnQgeyBEZk1hbmFnZVNpZGVOYXZEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9tYW5hZ2Utc2lkZW5hdi5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZFeGNsdWRlVHJhcERpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2V4Y2x1ZGVUcmFwLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBDaGFuZ2VDb250ZXh0IH0gZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9saWIvY2hhbmdlLWNvbnRleHQnO1xuZXhwb3J0IHsgUG9pbnRlclR5cGUgfSBmcm9tICcuL2FuZ3VsYXIvc2xpZGVyL2xpYi9wb2ludGVyLXR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9saWIvb3B0aW9ucyc7XG5leHBvcnQgeyBTbGlkZXJDb21wb25lbnQgfSBmcm9tICcuL2FuZ3VsYXIvc2xpZGVyL2xpYi9zbGlkZXIuY29tcG9uZW50JztcblxuLy8gU2VsZWN0c1xuZXhwb3J0IHsgRGZNYW5hZ2VOYXZTZWxlY3REaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2VsZWN0cy9uYXYvbWFuYWdlLW5hdi1zZWxlY3QuZGlyZWN0aXZlJztcbmV4cG9ydCB7IERmT3B0aW9uSGlnaGxpZ2h0RGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL3NlbGVjdHMvb3B0aW9uLWhpZ2hsaWdodC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZNYW5hZ2VCYWRnZUV2ZW50c0RpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zZWxlY3RzL2V2ZW50cy9tYW5hZ2UtYmFkZ2UtZXZlbnRzLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZlNlbGVjdE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zZWxlY3RzL3NlbGVjdC5tb2R1bGUnO1xuXG4vLyBUb29sdGlwXG5leHBvcnQgeyBEZlRvb2x0aXBUcnVuY2F0ZURpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci90b29sdGlwL3RydW5jYXRlL3Rvb2x0aXBUcnVuY2F0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZUb29sdGlwTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUnO1xuXG4vLyBTaWRlbmF2XG5leHBvcnQgeyBEZlNpZGVOYXZJdGVtIH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdi5zZXJ2aWNlJztcbmV4cG9ydCB7IERmU2lkZU5hdlNlcnZpY2UgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2LnNlcnZpY2UnO1xuZXhwb3J0IHsgRGZJZk1lZGlhRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL21lZGlhcXVlcmllcy9pZk1lZGlhLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2Lm1vZHVsZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZDb21wb25lbnQgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2LmNvbXBvbmVudCc7XG5leHBvcnQgeyBEZk5hdkl0ZW1UeXBlIH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdi5zZXJ2aWNlJztcblxuLy8gU2lkZU5hdkNvbGxhcHNlXG5leHBvcnQgeyBEZlNpZGVOYXZDb2xsYXBzZU1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2RmU2lkZU5hdkNvbGxhcHNlLm1vZHVsZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZDb2xsYXBzZURpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2RmU2lkZU5hdkNvbGxhcHNlJztcbmV4cG9ydCB7IERmU2lkZU5hdkNvbGxhcHNlU2VydmljZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2RmU2lkZU5hdkNvbGxhcHNlLnNlcnZpY2UnO1xuXG4vLyBNZWRpYSBVdGlsc1xuZXhwb3J0IHtcbiAgQlJFQUtQT0lOVFNfVkFSUyxcbiAgREZfQlJFQUtQT0lOVFNfVkFSX0RFRkFVTFQsXG4gIERmQnJlYWtwb2ludHMsXG4gIERmTWVkaWFRdWVyeSxcbiAgRGZNZWRpYU9ic2VydmVyXG59IGZyb20gJy4vYW5ndWxhci9tZWRpYXF1ZXJpZXMvbWVkaWFVdGlscy5zZXJ2aWNlJztcblxuLy8gTWVkaWEgc2VydmljZVxuZXhwb3J0IHsgRGZNZWRpYSB9IGZyb20gJy4vYW5ndWxhci9tZWRpYXF1ZXJpZXMvbWVkaWEuc2VydmljZSc7XG5leHBvcnQgeyBEZk1lZGlhTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL21lZGlhcXVlcmllcy9tZWRpYS5tb2R1bGUnO1xuXG4vLyBDYXJkXG5leHBvcnQgeyBEZk1hbmFnZUNhcmRTZWxlY3Rpb25EaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvY2FyZC9tYW5hZ2UtY2FyZC1zZWxlY3Rpb24uZGlyZWN0aXZlJztcbmV4cG9ydCB7IERmQWR2YW5jZWRDYXJkTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2NhcmQvY2FyZC1hZHZhbmNlZC5tb2R1bGUnO1xuXG5jb25zdCBERl9NT0RVTEVTID0gW1xuICBEZkFsZXJ0TW9kdWxlLFxuICBEZkRhdGVQaWNrZXJNb2R1bGUsXG4gIERmU2VsZWN0TW9kdWxlLFxuICBEZlByb2dyZXNzYmFyTW9kdWxlLFxuICBEZlByb2dyZXNzSW5kaWNhdG9yTW9kdWxlLFxuICBEZkFkdmFuY2VkSW5wdXRNb2R1bGUsXG4gIERmQWNjZXNzaWJpbGl0eU1vZHVsZSxcbiAgRGZTbGlkZXJNb2R1bGUsXG4gIERmUG9wb3Zlck1vZHVsZSxcbiAgRGZJY29uTW9kdWxlLFxuICBEZlRvb2x0aXBNb2R1bGUsXG4gIERmU2lkZU5hdk1vZHVsZSxcbiAgRGZTaWRlTmF2Q29sbGFwc2VNb2R1bGUsXG4gIERmQWR2YW5jZWRDYXJkTW9kdWxlLFxuICBEZkZvb3Rlck1vZHVsZSxcbiAgRGZUb2FzdE1vZHVsZVxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogREZfTU9EVUxFUyxcbiAgZXhwb3J0czogREZfTU9EVUxFU1xufSlcbmV4cG9ydCBjbGFzcyBEZk1vZHVsZSB7fVxuIl19
85
+ // Global
86
+ export { DfModule } from './angular/df.module';
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQUNoQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNyRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3RkFBd0YsQ0FBQztBQUVySSxRQUFRO0FBQ1IsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTdELFFBQVE7QUFDUixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFN0QsYUFBYTtBQUNiLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRXpGLFNBQVM7QUFDVCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFaEUsT0FBTztBQUNQLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUVwRixTQUFTO0FBQ1QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDekYsT0FBTyxFQUFFLG9CQUFvQixFQUFlLE1BQU0sMkNBQTJDLENBQUM7QUFDOUYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFL0UsUUFBUTtBQUNSLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUvRCxVQUFVO0FBQ1YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUUxRSxjQUFjO0FBQ2QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFFckYscUJBQXFCO0FBQ3JCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2pHLE9BQU8sRUFDTCwwQkFBMEIsRUFFM0IsTUFBTSx1REFBdUQsQ0FBQztBQUMvRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN2RyxPQUFPLEVBRUwsOEJBQThCLEVBQzlCLGlDQUFpQyxFQUNqQyxxQ0FBcUMsRUFDckMsa0NBQWtDLEVBQ25DLE1BQU0sc0RBQXNELENBQUM7QUFDOUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDM0YsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0sbUVBQW1FLENBQUM7QUFDMUgsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDeEgsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFFMUcsTUFBTTtBQUNOLE9BQU8sRUFDTCwyQkFBMkIsRUFDM0Isd0JBQXdCLEVBQ3pCLE1BQU0sb0RBQW9ELENBQUM7QUFFNUQsU0FBUztBQUNULE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNsRyxPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0QixzQkFBc0IsRUFDdkIsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUN0RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2hFLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRXhFLFVBQVU7QUFDVixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUMvRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMxRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUN0RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFakUsVUFBVTtBQUNWLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBTzdFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQWMsTUFBTSxtQ0FBbUMsQ0FBQztBQUVqRixVQUFVO0FBQ1YsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDbEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBSW5FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFbEUsa0JBQWtCO0FBQ2xCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBRXZGLGNBQWM7QUFDZCxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLDBCQUEwQixFQUMxQixhQUFhLEVBQ2IsWUFBWSxFQUNaLGVBQWUsRUFDaEIsTUFBTSwyQ0FBMkMsQ0FBQztBQUVuRCxnQkFBZ0I7QUFDaEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUVwRSxPQUFPO0FBQ1AsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDaEcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFM0UsU0FBUztBQUNULE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFjY2Vzc2liaWxpdHlcbmV4cG9ydCB7IERmQWNjZXNzaWJpbGl0eU1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9hY2Nlc3NpYmlsaXR5L2FjY2Vzc2liaWxpdHkubW9kdWxlJztcbmV4cG9ydCB7IFNraXBMaW5rRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL2FjY2Vzc2liaWxpdHkvZGlyZWN0aXZlcy9za2lwLWxpbmsuZGlyZWN0aXZlJztcbmV4cG9ydCB7IFNraXBMaW5rc0NvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vYW5ndWxhci9hY2Nlc3NpYmlsaXR5L2NvbXBvbmVudHMvc2tpcC1saW5rcy1jb250YWluZXIvc2tpcC1saW5rcy1jb250YWluZXIuY29tcG9uZW50JztcblxuLy8gVG9hc3RcbmV4cG9ydCB7IERmVG9hc3RNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvdG9hc3QvdG9hc3QubW9kdWxlJztcblxuLy8gQWxlcnRcbmV4cG9ydCB7IERmQWxlcnRNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvYWxlcnQvYWxlcnQubW9kdWxlJztcblxuLy8gRGF0ZXBpY2tlclxuZXhwb3J0IHsgQ2xvc2VJbnB1dERhdGVQaWNrZXJEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvZGF0ZXBpY2tlci9jbG9zZWRhdGVwaWNrZXIuZGlyZWN0aXZlJztcbmV4cG9ydCB7IERmRGF0ZVBpY2tlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9kYXRlcGlja2VyL2RhdGVwaWNrZXIubW9kdWxlJztcbmV4cG9ydCB7IERmRGF0ZXBpY2tlclJhbmdlRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1yYW5nZS5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZEYXRlcGlja2VyUmFuZ2VTZXJ2aWNlIH0gZnJvbSAnLi9hbmd1bGFyL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1yYW5nZS5zZXJ2aWNlJztcblxuLy8gRm9vdGVyXG5leHBvcnQgeyBEZkZvb3Rlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9mb290ZXIvZm9vdGVyLm1vZHVsZSc7XG5cbi8vIEljb25cbmV4cG9ydCB7IERmSWNvbk1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9pY29uL2ljb24ubW9kdWxlJztcbmV4cG9ydCB7IERmSW5zZXJ0SWNvbk1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9pY29uL2luc2VydC9pbnNlcnQtaWNvbi5tb2R1bGUnO1xuZXhwb3J0IHsgRGZBbWFkZXVzSWNvbkNvbXBvbmVudCB9IGZyb20gJy4vYW5ndWxhci9pY29uL2FtYWRldXMtaWNvbic7XG5leHBvcnQgeyBEZkluc2VydEljb25EaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvaWNvbi9pbnNlcnQvaW5zZXJ0LWljb24uZGlyZWN0aXZlJztcblxuLy8gSW5wdXRzXG5leHBvcnQgeyBEZlRyaWdnZXJDbGlja0RpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9pbnB1dHMvY2xpY2svdHJpZ2dlci1jbGljay5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZJbnB1dEljb25EaXJlY3RpdmUsIERmRGlyZWN0aW9uIH0gZnJvbSAnLi9hbmd1bGFyL2lucHV0cy9pY29uL2lucHV0aWNvbi5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZBZHZhbmNlZElucHV0TW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2lucHV0cy9pbnB1dC1hZHZhbmNlZC5tb2R1bGUnO1xuXG4vLyBNb2RhbFxuZXhwb3J0IHsgRGZNb2RhbFNlcnZpY2UgfSBmcm9tICcuL2FuZ3VsYXIvbW9kYWwvbW9kYWwuc2VydmljZSc7XG5cbi8vIFBvcG92ZXJcbmV4cG9ydCB7IERmUG9wb3Zlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9wb3BvdmVyL3BvcG92ZXIubW9kdWxlJztcbmV4cG9ydCB7IERmUG9wb3ZlckNvbmZpZyB9IGZyb20gJy4vYW5ndWxhci9wb3BvdmVyL2NvbmZpZy9wb3BvdmVyLmNvbmZpZyc7XG5cbi8vIFByb2dyZXNzYmFyXG5leHBvcnQgeyBEZlByb2dyZXNzYmFyTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzYmFyL3Byb2dyZXNzYmFyLm1vZHVsZSc7XG5leHBvcnQgeyBEZlByb2dyZXNzYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyL3Byb2dyZXNzYmFyL3Byb2dyZXNzYmFyLmNvbXBvbmVudCc7XG5cbi8vIFByb2dyZXNzIGluZGljYXRvclxuZXhwb3J0IHsgRGZQcm9ncmVzc0luZGljYXRvck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9wcm9ncmVzc2luZGljYXRvci5tb2R1bGUnO1xuZXhwb3J0IHtcbiAgRGZQcm9ncmVzc0luZGljYXRvclNlcnZpY2UsXG4gIERmUHJvZ3Jlc3NJbmRpY2F0b3JDb250ZW50XG59IGZyb20gJy4vYW5ndWxhci9wcm9ncmVzc2luZGljYXRvci9wcm9ncmVzc2luZGljYXRvci5zZXJ2aWNlJztcbmV4cG9ydCB7IERmUHJvZ3Jlc3NJbmRpY2F0b3JEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3IuZGlyZWN0aXZlJztcbmV4cG9ydCB7XG4gIERmUHJvZ3Jlc3NJbmRpY2F0b3JPcHRpb25zLFxuICBEZlByb2dyZXNzSW5kaWNhdG9yQ29udGVudFR5cGUsXG4gIERmUHJvZ3Jlc3NJbmRpY2F0b3JDb250ZW50U3Bpbm5lcixcbiAgRGZQcm9ncmVzc0luZGljYXRvckNvbnRlbnRQcm9ncmVzc0JhcixcbiAgRGZQcm9ncmVzc0luZGljYXRvckNvbnRlbnRQb3NpdGlvblxufSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3ItY29uZmlnJztcbmV4cG9ydCB7IERmUHJvZ3Jlc3NJbmRpY2F0b3JSZWYgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3ItcmVmJztcbmV4cG9ydCB7IERmUHJvZ3Jlc3NJbmRpY2F0b3JDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3ItY29udGFpbmVyLmNvbXBvbmVudCc7XG5leHBvcnQgeyBEZlByb2dyZXNzSW5kaWNhdG9yQmFja2Ryb3BDb21wb25lbnQgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvcHJvZ3Jlc3NpbmRpY2F0b3ItYmFja2Ryb3AuY29tcG9uZW50JztcbmV4cG9ydCB7IERmRGVmYXVsdFNwaW5uZXJDb21wb25lbnQgfSBmcm9tICcuL2FuZ3VsYXIvcHJvZ3Jlc3NpbmRpY2F0b3IvZGVmYXVsdC9kZWZhdWx0LXNwaW5uZXIuY29tcG9uZW50JztcblxuLy8gUlRMXG5leHBvcnQge1xuICBEZkRpcmVjdGlvbkRldGVjdGlvblNlcnZpY2UsXG4gIFJpZ2h0VG9MZWZ0RGlyZWN0aW9uRW51bVxufSBmcm9tICcuL2FuZ3VsYXIvcmlnaHQtdG8tbGVmdC9kaXJlY3Rpb25EZXRlY3Rpb24uc2VydmljZSc7XG5cbi8vIFNsaWRlclxuZXhwb3J0IHsgRGZTbGlkZXJNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvc2xpZGVyL3NsaWRlci5tb2R1bGUnO1xuZXhwb3J0IHsgRGZTbGlkZXJEaXJlY3Rpb25EaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2xpZGVyL2RpcmVjdGlvbi9zbGlkZXJkaXJlY3Rpb24uZGlyZWN0aXZlJztcbmV4cG9ydCB7XG4gIERmU2lkZU5hdkhlYWRlckRpcmVjdGl2ZSxcbiAgRGZTaWRlTmF2SXRlbURpcmVjdGl2ZSxcbiAgRGZTaWRlTmF2SWNvbkRpcmVjdGl2ZVxufSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2LmNvbXBvbmVudCc7XG5leHBvcnQgeyBEZk1hbmFnZVNpZGVOYXZEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9tYW5hZ2Utc2lkZW5hdi5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZFeGNsdWRlVHJhcERpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2V4Y2x1ZGVUcmFwLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBDaGFuZ2VDb250ZXh0IH0gZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9saWIvY2hhbmdlLWNvbnRleHQnO1xuZXhwb3J0IHsgUG9pbnRlclR5cGUgfSBmcm9tICcuL2FuZ3VsYXIvc2xpZGVyL2xpYi9wb2ludGVyLXR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hbmd1bGFyL3NsaWRlci9saWIvb3B0aW9ucyc7XG5leHBvcnQgeyBTbGlkZXJDb21wb25lbnQgfSBmcm9tICcuL2FuZ3VsYXIvc2xpZGVyL2xpYi9zbGlkZXIuY29tcG9uZW50JztcblxuLy8gU2VsZWN0c1xuZXhwb3J0IHsgRGZNYW5hZ2VOYXZTZWxlY3REaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc2VsZWN0cy9uYXYvbWFuYWdlLW5hdi1zZWxlY3QuZGlyZWN0aXZlJztcbmV4cG9ydCB7IERmT3B0aW9uSGlnaGxpZ2h0RGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL3NlbGVjdHMvb3B0aW9uLWhpZ2hsaWdodC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZNYW5hZ2VCYWRnZUV2ZW50c0RpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zZWxlY3RzL2V2ZW50cy9tYW5hZ2UtYmFkZ2UtZXZlbnRzLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZlNlbGVjdE1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zZWxlY3RzL3NlbGVjdC5tb2R1bGUnO1xuXG4vLyBTdGVwcGVyXG5leHBvcnQgeyBEZlN0ZXBwZXJEaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvc3RlcHBlci9zdGVwcGVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZlN0ZXBwZXJTdGVwQ29udGVudERpcmVjdGl2ZSwgRGZTdGVwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnQnO1xuZXhwb3J0IHsgRGZTdGVwcGVyU3RlcERpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zdGVwcGVyL3N0ZXBwZXIuZGlyZWN0aXZlJztcbmV4cG9ydCB0eXBlIHtcbiAgRGZTdGVwcGVyU3RlcCxcbiAgRGZTdGVwcGVyU3RhdGUsXG4gIERmU3RlcHBlck5vcm1hbGl6ZWRTdGF0ZSxcbiAgRGZTdGVwcGVyTm9ybWFsaXplZFN0ZXBcbn0gZnJvbSAnLi9hbmd1bGFyL3N0ZXBwZXIvc3RlcHBlci5zZXJ2aWNlJztcbmV4cG9ydCB7IERmU3RlcHBlck1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zdGVwcGVyL3N0ZXBwZXIubW9kdWxlJztcbmV4cG9ydCB7IERmU3RlcHBlclNlcnZpY2UsIERmU3RlcFR5cGUgfSBmcm9tICcuL2FuZ3VsYXIvc3RlcHBlci9zdGVwcGVyLnNlcnZpY2UnO1xuXG4vLyBUb29sdGlwXG5leHBvcnQgeyBEZlRvb2x0aXBUcnVuY2F0ZURpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci90b29sdGlwL3RydW5jYXRlL3Rvb2x0aXBUcnVuY2F0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRGZUb29sdGlwTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUnO1xuXG4vLyBTaWRlbmF2XG5leHBvcnQgeyBEZlNpZGVOYXZJdGVtIH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdi5zZXJ2aWNlJztcbmV4cG9ydCB7IERmU2lkZU5hdlNlcnZpY2UgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2LnNlcnZpY2UnO1xuZXhwb3J0IHsgRGZJZk1lZGlhRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmd1bGFyL21lZGlhcXVlcmllcy9pZk1lZGlhLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZNb2R1bGUgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2Lm1vZHVsZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZDb21wb25lbnQgfSBmcm9tICcuL2FuZ3VsYXIvc2lkZW5hdi9zaWRlbmF2LmNvbXBvbmVudCc7XG5leHBvcnQgeyBEZk5hdkl0ZW1UeXBlIH0gZnJvbSAnLi9hbmd1bGFyL3NpZGVuYXYvc2lkZW5hdi5zZXJ2aWNlJztcblxuLy8gU2lkZU5hdkNvbGxhcHNlXG5leHBvcnQgeyBEZlNpZGVOYXZDb2xsYXBzZU1vZHVsZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2RmU2lkZU5hdkNvbGxhcHNlLm1vZHVsZSc7XG5leHBvcnQgeyBEZlNpZGVOYXZDb2xsYXBzZURpcmVjdGl2ZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2RmU2lkZU5hdkNvbGxhcHNlJztcbmV4cG9ydCB7IERmU2lkZU5hdkNvbGxhcHNlU2VydmljZSB9IGZyb20gJy4vYW5ndWxhci9zaWRlbmF2L2RmU2lkZU5hdkNvbGxhcHNlLnNlcnZpY2UnO1xuXG4vLyBNZWRpYSBVdGlsc1xuZXhwb3J0IHtcbiAgQlJFQUtQT0lOVFNfVkFSUyxcbiAgREZfQlJFQUtQT0lOVFNfVkFSX0RFRkFVTFQsXG4gIERmQnJlYWtwb2ludHMsXG4gIERmTWVkaWFRdWVyeSxcbiAgRGZNZWRpYU9ic2VydmVyXG59IGZyb20gJy4vYW5ndWxhci9tZWRpYXF1ZXJpZXMvbWVkaWFVdGlscy5zZXJ2aWNlJztcblxuLy8gTWVkaWEgc2VydmljZVxuZXhwb3J0IHsgRGZNZWRpYSB9IGZyb20gJy4vYW5ndWxhci9tZWRpYXF1ZXJpZXMvbWVkaWEuc2VydmljZSc7XG5leHBvcnQgeyBEZk1lZGlhTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL21lZGlhcXVlcmllcy9tZWRpYS5tb2R1bGUnO1xuXG4vLyBDYXJkXG5leHBvcnQgeyBEZk1hbmFnZUNhcmRTZWxlY3Rpb25EaXJlY3RpdmUgfSBmcm9tICcuL2FuZ3VsYXIvY2FyZC9tYW5hZ2UtY2FyZC1zZWxlY3Rpb24uZGlyZWN0aXZlJztcbmV4cG9ydCB7IERmQWR2YW5jZWRDYXJkTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2NhcmQvY2FyZC1hZHZhbmNlZC5tb2R1bGUnO1xuXG4vLyBHbG9iYWxcbmV4cG9ydCB7IERmTW9kdWxlIH0gZnJvbSAnLi9hbmd1bGFyL2RmLm1vZHVsZSc7XG4iXX0=