@skyux/core 5.0.0-beta.8 → 5.1.1

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 (235) hide show
  1. package/LICENSE +21 -0
  2. package/bundles/skyux-core-testing.umd.js +363 -234
  3. package/bundles/skyux-core-testing.umd.js.map +1 -1
  4. package/bundles/skyux-core.umd.js +3303 -2916
  5. package/bundles/skyux-core.umd.js.map +1 -1
  6. package/documentation.json +8863 -0
  7. package/esm2015/modules/adapter-service/adapter.module.js +11 -8
  8. package/esm2015/modules/adapter-service/adapter.service.js +14 -15
  9. package/esm2015/modules/adapter-service/focusable-children-options.js +2 -1
  10. package/esm2015/modules/affix/affix-auto-fit-context.js +1 -1
  11. package/esm2015/modules/affix/affix-config.js +2 -1
  12. package/esm2015/modules/affix/affix-horizontal-alignment.js +2 -1
  13. package/esm2015/modules/affix/affix-offset-change.js +2 -1
  14. package/esm2015/modules/affix/affix-offset.js +2 -1
  15. package/esm2015/modules/affix/affix-placement-change.js +2 -1
  16. package/esm2015/modules/affix/affix-placement.js +2 -1
  17. package/esm2015/modules/affix/affix-utils.js +1 -1
  18. package/esm2015/modules/affix/affix-vertical-alignment.js +2 -1
  19. package/esm2015/modules/affix/affix.directive.js +36 -49
  20. package/esm2015/modules/affix/affix.module.js +22 -17
  21. package/esm2015/modules/affix/affix.service.js +12 -15
  22. package/esm2015/modules/affix/affixer.js +1 -1
  23. package/esm2015/modules/affix/dom-utils.js +1 -1
  24. package/esm2015/modules/dock/dock-dom-adapter.service.js +23 -15
  25. package/esm2015/modules/dock/dock-insert-component-config.js +2 -1
  26. package/esm2015/modules/dock/dock-item-config.js +2 -1
  27. package/esm2015/modules/dock/dock-item-reference.js +2 -1
  28. package/esm2015/modules/dock/dock-item.js +1 -1
  29. package/esm2015/modules/dock/dock-location.js +19 -0
  30. package/esm2015/modules/dock/dock-options.js +2 -0
  31. package/esm2015/modules/dock/dock.component.js +48 -33
  32. package/esm2015/modules/dock/dock.module.js +28 -17
  33. package/esm2015/modules/dock/dock.service.js +44 -16
  34. package/esm2015/modules/dock/sort-by-stack-order.js +1 -1
  35. package/esm2015/modules/dynamic-component/dynamic-component-location.js +15 -3
  36. package/esm2015/modules/dynamic-component/dynamic-component-options.js +2 -1
  37. package/esm2015/modules/dynamic-component/dynamic-component.module.js +11 -8
  38. package/esm2015/modules/dynamic-component/dynamic-component.service.js +24 -23
  39. package/esm2015/modules/format/app-format.js +11 -11
  40. package/esm2015/modules/id/id.directive.js +14 -16
  41. package/esm2015/modules/id/id.module.js +18 -15
  42. package/esm2015/modules/log/log.module.js +11 -8
  43. package/esm2015/modules/log/log.service.js +11 -11
  44. package/esm2015/modules/media-query/media-breakpoints.js +1 -1
  45. package/esm2015/modules/media-query/media-query-listener.js +2 -1
  46. package/esm2015/modules/media-query/media-query.module.js +11 -8
  47. package/esm2015/modules/media-query/media-query.service.js +16 -20
  48. package/esm2015/modules/mutation/mutation-observer-service.js +11 -11
  49. package/esm2015/modules/numeric/numeric-symbol.js +2 -1
  50. package/esm2015/modules/numeric/numeric.module.js +30 -21
  51. package/esm2015/modules/numeric/numeric.options.js +6 -1
  52. package/esm2015/modules/numeric/numeric.pipe.js +14 -16
  53. package/esm2015/modules/numeric/numeric.service.js +15 -17
  54. package/esm2015/modules/overlay/overlay-adapter.service.js +13 -15
  55. package/esm2015/modules/overlay/overlay-config.js +2 -1
  56. package/esm2015/modules/overlay/overlay-context.js +1 -1
  57. package/esm2015/modules/overlay/overlay-instance.js +1 -1
  58. package/esm2015/modules/overlay/overlay.component.js +41 -44
  59. package/esm2015/modules/overlay/overlay.module.js +22 -17
  60. package/esm2015/modules/overlay/overlay.service.js +18 -26
  61. package/esm2015/modules/percent-pipe/percent-pipe.module.js +30 -21
  62. package/esm2015/modules/percent-pipe/percent.pipe.js +15 -15
  63. package/esm2015/modules/scrollable-host/scrollable-host.service.js +83 -0
  64. package/esm2015/modules/shared/number-format/number-format-utility.js +4 -3
  65. package/esm2015/modules/shared/sky-core-resources.module.js +41 -0
  66. package/esm2015/modules/title/set-title-args.js +2 -1
  67. package/esm2015/modules/title/title.service.js +11 -15
  68. package/esm2015/modules/ui-config/ui-config.service.js +11 -11
  69. package/esm2015/modules/viewkeeper/viewkeeper-boundary-info.js +2 -1
  70. package/esm2015/modules/viewkeeper/viewkeeper-fixed-styles.js +2 -1
  71. package/esm2015/modules/viewkeeper/viewkeeper-host-options.js +9 -8
  72. package/esm2015/modules/viewkeeper/viewkeeper-offset.js +2 -1
  73. package/esm2015/modules/viewkeeper/viewkeeper-options.js +2 -1
  74. package/esm2015/modules/viewkeeper/viewkeeper.directive.js +47 -32
  75. package/esm2015/modules/viewkeeper/viewkeeper.js +16 -11
  76. package/esm2015/modules/viewkeeper/viewkeeper.module.js +18 -15
  77. package/esm2015/modules/viewkeeper/viewkeeper.service.js +13 -16
  78. package/esm2015/modules/window/window-ref.js +11 -11
  79. package/esm2015/public-api.js +60 -0
  80. package/esm2015/skyux-core.js +2 -12
  81. package/esm2015/testing/mock-media-query.service.js +9 -8
  82. package/esm2015/testing/mock-ui-config.service.js +9 -8
  83. package/esm2015/testing/public-api.js +3 -0
  84. package/esm2015/testing/skyux-core-testing.js +2 -2
  85. package/fesm2015/skyux-core-testing.js +15 -11
  86. package/fesm2015/skyux-core-testing.js.map +1 -1
  87. package/fesm2015/skyux-core.js +828 -570
  88. package/fesm2015/skyux-core.js.map +1 -1
  89. package/modules/adapter-service/adapter.module.d.ts +4 -0
  90. package/modules/adapter-service/adapter.service.d.ts +3 -0
  91. package/modules/affix/affix.directive.d.ts +3 -0
  92. package/modules/affix/affix.module.d.ts +6 -0
  93. package/modules/affix/affix.service.d.ts +3 -0
  94. package/modules/dock/dock-dom-adapter.service.d.ts +6 -0
  95. package/modules/dock/dock-location.d.ts +17 -0
  96. package/modules/dock/dock-options.d.ts +18 -0
  97. package/modules/dock/dock.component.d.ts +8 -3
  98. package/modules/dock/dock.module.d.ts +6 -0
  99. package/modules/dock/dock.service.d.ts +14 -1
  100. package/modules/dynamic-component/dynamic-component-location.d.ts +14 -2
  101. package/modules/dynamic-component/dynamic-component-options.d.ts +4 -0
  102. package/modules/dynamic-component/dynamic-component.module.d.ts +4 -0
  103. package/modules/dynamic-component/dynamic-component.service.d.ts +3 -0
  104. package/modules/format/app-format.d.ts +3 -0
  105. package/modules/id/id.directive.d.ts +3 -0
  106. package/modules/id/id.module.d.ts +5 -0
  107. package/modules/log/log.module.d.ts +4 -0
  108. package/modules/log/log.service.d.ts +3 -0
  109. package/modules/media-query/media-query.module.d.ts +4 -0
  110. package/modules/media-query/media-query.service.d.ts +3 -0
  111. package/modules/mutation/mutation-observer-service.d.ts +3 -0
  112. package/modules/numeric/numeric.module.d.ts +7 -0
  113. package/modules/numeric/numeric.options.d.ts +5 -0
  114. package/modules/numeric/numeric.pipe.d.ts +3 -0
  115. package/modules/numeric/numeric.service.d.ts +3 -0
  116. package/modules/overlay/overlay-adapter.service.d.ts +3 -0
  117. package/modules/overlay/overlay.component.d.ts +3 -0
  118. package/modules/overlay/overlay.module.d.ts +6 -0
  119. package/modules/overlay/overlay.service.d.ts +3 -0
  120. package/modules/percent-pipe/percent-pipe.module.d.ts +7 -0
  121. package/modules/percent-pipe/percent.pipe.d.ts +3 -0
  122. package/modules/scrollable-host/scrollable-host.service.d.ts +16 -0
  123. package/modules/shared/number-format/number-format-utility.d.ts +1 -1
  124. package/modules/shared/sky-core-resources.module.d.ts +14 -0
  125. package/modules/title/title.service.d.ts +3 -0
  126. package/modules/ui-config/ui-config.service.d.ts +3 -0
  127. package/modules/viewkeeper/viewkeeper-host-options.d.ts +4 -0
  128. package/modules/viewkeeper/viewkeeper-options.d.ts +5 -0
  129. package/modules/viewkeeper/viewkeeper.d.ts +1 -0
  130. package/modules/viewkeeper/viewkeeper.directive.d.ts +7 -1
  131. package/modules/viewkeeper/viewkeeper.module.d.ts +5 -0
  132. package/modules/viewkeeper/viewkeeper.service.d.ts +3 -0
  133. package/modules/window/window-ref.d.ts +3 -0
  134. package/package.json +8 -23
  135. package/{public_api.d.ts → public-api.d.ts} +6 -0
  136. package/skyux-core.d.ts +2 -11
  137. package/testing/mock-media-query.service.d.ts +3 -0
  138. package/testing/mock-ui-config.service.d.ts +3 -0
  139. package/testing/package.json +2 -5
  140. package/testing/{public_api.d.ts → public-api.d.ts} +0 -0
  141. package/testing/skyux-core-testing.d.ts +2 -1
  142. package/CHANGELOG.md +0 -320
  143. package/bundles/skyux-core-testing.umd.min.js +0 -16
  144. package/bundles/skyux-core-testing.umd.min.js.map +0 -1
  145. package/bundles/skyux-core.umd.min.js +0 -16
  146. package/bundles/skyux-core.umd.min.js.map +0 -1
  147. package/esm2015/modules/shared/core-resources.module.js +0 -17
  148. package/esm2015/plugin-resources/core-resources-provider.js +0 -16
  149. package/esm2015/public_api.js +0 -36
  150. package/esm2015/testing/public_api.js +0 -3
  151. package/esm5/modules/adapter-service/adapter.module.js +0 -16
  152. package/esm5/modules/adapter-service/adapter.service.js +0 -221
  153. package/esm5/modules/adapter-service/focusable-children-options.js +0 -1
  154. package/esm5/modules/affix/affix-auto-fit-context.js +0 -12
  155. package/esm5/modules/affix/affix-config.js +0 -1
  156. package/esm5/modules/affix/affix-horizontal-alignment.js +0 -1
  157. package/esm5/modules/affix/affix-offset-change.js +0 -1
  158. package/esm5/modules/affix/affix-offset.js +0 -1
  159. package/esm5/modules/affix/affix-placement-change.js +0 -1
  160. package/esm5/modules/affix/affix-placement.js +0 -1
  161. package/esm5/modules/affix/affix-utils.js +0 -23
  162. package/esm5/modules/affix/affix-vertical-alignment.js +0 -1
  163. package/esm5/modules/affix/affix.directive.js +0 -113
  164. package/esm5/modules/affix/affix.module.js +0 -24
  165. package/esm5/modules/affix/affix.service.js +0 -28
  166. package/esm5/modules/affix/affixer.js +0 -368
  167. package/esm5/modules/affix/dom-utils.js +0 -79
  168. package/esm5/modules/dock/dock-dom-adapter.service.js +0 -72
  169. package/esm5/modules/dock/dock-insert-component-config.js +0 -1
  170. package/esm5/modules/dock/dock-item-config.js +0 -1
  171. package/esm5/modules/dock/dock-item-reference.js +0 -1
  172. package/esm5/modules/dock/dock-item.js +0 -35
  173. package/esm5/modules/dock/dock.component.js +0 -87
  174. package/esm5/modules/dock/dock.module.js +0 -24
  175. package/esm5/modules/dock/dock.service.js +0 -69
  176. package/esm5/modules/dock/sort-by-stack-order.js +0 -13
  177. package/esm5/modules/dynamic-component/dynamic-component-location.js +0 -15
  178. package/esm5/modules/dynamic-component/dynamic-component-options.js +0 -1
  179. package/esm5/modules/dynamic-component/dynamic-component.module.js +0 -17
  180. package/esm5/modules/dynamic-component/dynamic-component.service.js +0 -82
  181. package/esm5/modules/format/app-format.js +0 -25
  182. package/esm5/modules/id/id.directive.js +0 -41
  183. package/esm5/modules/id/id.module.js +0 -20
  184. package/esm5/modules/log/log.module.js +0 -16
  185. package/esm5/modules/log/log.service.js +0 -29
  186. package/esm5/modules/media-query/media-breakpoints.js +0 -20
  187. package/esm5/modules/media-query/media-query-listener.js +0 -1
  188. package/esm5/modules/media-query/media-query.module.js +0 -16
  189. package/esm5/modules/media-query/media-query.service.js +0 -128
  190. package/esm5/modules/mutation/mutation-observer-service.js +0 -19
  191. package/esm5/modules/numeric/numeric-symbol.js +0 -1
  192. package/esm5/modules/numeric/numeric.module.js +0 -29
  193. package/esm5/modules/numeric/numeric.options.js +0 -38
  194. package/esm5/modules/numeric/numeric.pipe.js +0 -70
  195. package/esm5/modules/numeric/numeric.service.js +0 -195
  196. package/esm5/modules/overlay/overlay-adapter.service.js +0 -44
  197. package/esm5/modules/overlay/overlay-config.js +0 -1
  198. package/esm5/modules/overlay/overlay-context.js +0 -12
  199. package/esm5/modules/overlay/overlay-instance.js +0 -66
  200. package/esm5/modules/overlay/overlay.component.js +0 -168
  201. package/esm5/modules/overlay/overlay.module.js +0 -24
  202. package/esm5/modules/overlay/overlay.service.js +0 -128
  203. package/esm5/modules/percent-pipe/percent-pipe.module.js +0 -29
  204. package/esm5/modules/percent-pipe/percent.pipe.js +0 -49
  205. package/esm5/modules/shared/core-resources.module.js +0 -20
  206. package/esm5/modules/shared/number-format/number-format-utility.js +0 -75
  207. package/esm5/modules/title/set-title-args.js +0 -1
  208. package/esm5/modules/title/title.service.js +0 -35
  209. package/esm5/modules/ui-config/ui-config.service.js +0 -24
  210. package/esm5/modules/viewkeeper/viewkeeper-boundary-info.js +0 -1
  211. package/esm5/modules/viewkeeper/viewkeeper-fixed-styles.js +0 -1
  212. package/esm5/modules/viewkeeper/viewkeeper-host-options.js +0 -12
  213. package/esm5/modules/viewkeeper/viewkeeper-offset.js +0 -1
  214. package/esm5/modules/viewkeeper/viewkeeper-options.js +0 -1
  215. package/esm5/modules/viewkeeper/viewkeeper.directive.js +0 -134
  216. package/esm5/modules/viewkeeper/viewkeeper.js +0 -219
  217. package/esm5/modules/viewkeeper/viewkeeper.module.js +0 -20
  218. package/esm5/modules/viewkeeper/viewkeeper.service.js +0 -42
  219. package/esm5/modules/window/window-ref.js +0 -37
  220. package/esm5/plugin-resources/core-resources-provider.js +0 -17
  221. package/esm5/public_api.js +0 -36
  222. package/esm5/skyux-core.js +0 -15
  223. package/esm5/testing/mock-media-query.service.js +0 -47
  224. package/esm5/testing/mock-ui-config.service.js +0 -66
  225. package/esm5/testing/public_api.js +0 -3
  226. package/esm5/testing/skyux-core-testing.js +0 -5
  227. package/fesm5/skyux-core-testing.js +0 -114
  228. package/fesm5/skyux-core-testing.js.map +0 -1
  229. package/fesm5/skyux-core.js +0 -2902
  230. package/fesm5/skyux-core.js.map +0 -1
  231. package/modules/shared/core-resources.module.d.ts +0 -2
  232. package/plugin-resources/core-resources-provider.d.ts +0 -5
  233. package/skyux-core.metadata.json +0 -1
  234. package/src/assets/locales/resources_en_US.json +0 -18
  235. package/testing/skyux-core-testing.metadata.json +0 -1
@@ -1,128 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Injectable, NgZone, OnDestroy } from '@angular/core';
3
- import { BehaviorSubject } from 'rxjs';
4
- import { SkyMediaBreakpoints } from './media-breakpoints';
5
- import * as i0 from "@angular/core";
6
- var SkyMediaQueryService = /** @class */ (function () {
7
- function SkyMediaQueryService(zone) {
8
- this.zone = zone;
9
- this.currentSubject = new BehaviorSubject(this.current);
10
- this._current = SkyMediaBreakpoints.md;
11
- this.breakpoints = [
12
- {
13
- mediaQueryString: SkyMediaQueryService_1.xs,
14
- name: SkyMediaBreakpoints.xs
15
- },
16
- {
17
- mediaQueryString: SkyMediaQueryService_1.sm,
18
- name: SkyMediaBreakpoints.sm
19
- },
20
- {
21
- mediaQueryString: SkyMediaQueryService_1.md,
22
- name: SkyMediaBreakpoints.md
23
- },
24
- {
25
- mediaQueryString: SkyMediaQueryService_1.lg,
26
- name: SkyMediaBreakpoints.lg
27
- }
28
- ];
29
- this.mediaQueries = [];
30
- this.addListeners();
31
- }
32
- SkyMediaQueryService_1 = SkyMediaQueryService;
33
- Object.defineProperty(SkyMediaQueryService.prototype, "current", {
34
- /**
35
- * Returns the current breakpoint.
36
- */
37
- get: function () {
38
- return this._current;
39
- },
40
- enumerable: true,
41
- configurable: true
42
- });
43
- SkyMediaQueryService.prototype.ngOnDestroy = function () {
44
- this.removeListeners();
45
- this.currentSubject.complete();
46
- };
47
- /**
48
- * Suscribes to screen size changes.
49
- * @param listener Specifies a function that is called when breakpoints change.
50
- */
51
- SkyMediaQueryService.prototype.subscribe = function (listener) {
52
- return this.currentSubject.subscribe({
53
- next: function (breakpoints) {
54
- listener(breakpoints);
55
- }
56
- });
57
- };
58
- /**
59
- * @internal
60
- */
61
- SkyMediaQueryService.prototype.destroy = function () {
62
- this.removeListeners();
63
- this.currentSubject.complete();
64
- };
65
- SkyMediaQueryService.prototype.addListeners = function () {
66
- var _this = this;
67
- this.mediaQueries = this.breakpoints.map(function (breakpoint) {
68
- var mq = matchMedia(breakpoint.mediaQueryString);
69
- var listener = function (event) {
70
- // Run the check outside of Angular's change detection since Angular
71
- // does not wrap matchMedia listeners in NgZone.
72
- // See: https://blog.assaf.co/angular-2-change-detection-zones-and-an-example/
73
- _this.zone.run(function () {
74
- if (event.matches) {
75
- _this.notifyBreakpointChange(breakpoint.name);
76
- }
77
- });
78
- };
79
- mq.addListener(listener);
80
- if (mq.matches) {
81
- _this.notifyBreakpointChange(breakpoint.name);
82
- }
83
- return {
84
- mediaQueryList: mq,
85
- listener: listener
86
- };
87
- });
88
- };
89
- SkyMediaQueryService.prototype.removeListeners = function () {
90
- this.mediaQueries.forEach(function (mediaQuery) {
91
- mediaQuery.mediaQueryList.removeListener(mediaQuery.listener);
92
- });
93
- this.mediaQueries = [];
94
- };
95
- SkyMediaQueryService.prototype.notifyBreakpointChange = function (breakpoint) {
96
- this._current = breakpoint;
97
- this.currentSubject.next(breakpoint);
98
- };
99
- var SkyMediaQueryService_1;
100
- /**
101
- * The size for the `xs` breakpoint.
102
- */
103
- SkyMediaQueryService.xs = '(max-width: 767px)';
104
- /**
105
- * The size for the `sm` breakpoint.
106
- */
107
- SkyMediaQueryService.sm = '(min-width: 768px) and (max-width: 991px)';
108
- /**
109
- * The size for the `md` breakpoint.
110
- */
111
- SkyMediaQueryService.md = '(min-width: 992px) and (max-width: 1199px)';
112
- /**
113
- * The size for the `lg` breakpoint.
114
- */
115
- SkyMediaQueryService.lg = '(min-width: 1200px)';
116
- SkyMediaQueryService.ctorParameters = function () { return [
117
- { type: NgZone }
118
- ]; };
119
- SkyMediaQueryService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SkyMediaQueryService_Factory() { return new SkyMediaQueryService(i0.ɵɵinject(i0.NgZone)); }, token: SkyMediaQueryService, providedIn: "root" });
120
- SkyMediaQueryService = SkyMediaQueryService_1 = __decorate([
121
- Injectable({
122
- providedIn: 'root'
123
- })
124
- ], SkyMediaQueryService);
125
- return SkyMediaQueryService;
126
- }());
127
- export { SkyMediaQueryService };
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtcXVlcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bza3l1eC9jb3JlLyIsInNvdXJjZXMiOlsibW9kdWxlcy9tZWRpYS1xdWVyeS9tZWRpYS1xdWVyeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUNWLE1BQU0sRUFDTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLGVBQWUsRUFFaEIsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsbUJBQW1CLEVBQ3BCLE1BQU0scUJBQXFCLENBQUM7O0FBUzdCO0lBNERFLDhCQUNVLElBQVk7UUFBWixTQUFJLEdBQUosSUFBSSxDQUFRO1FBaENkLG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQXNCLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV4RSxhQUFRLEdBQUcsbUJBQW1CLENBQUMsRUFBRSxDQUFDO1FBRWxDLGdCQUFXLEdBR2I7WUFDSjtnQkFDRSxnQkFBZ0IsRUFBRSxzQkFBb0IsQ0FBQyxFQUFFO2dCQUN6QyxJQUFJLEVBQUUsbUJBQW1CLENBQUMsRUFBRTthQUM3QjtZQUNEO2dCQUNFLGdCQUFnQixFQUFFLHNCQUFvQixDQUFDLEVBQUU7Z0JBQ3pDLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxFQUFFO2FBQzdCO1lBQ0Q7Z0JBQ0UsZ0JBQWdCLEVBQUUsc0JBQW9CLENBQUMsRUFBRTtnQkFDekMsSUFBSSxFQUFFLG1CQUFtQixDQUFDLEVBQUU7YUFDN0I7WUFDRDtnQkFDRSxnQkFBZ0IsRUFBRSxzQkFBb0IsQ0FBQyxFQUFFO2dCQUN6QyxJQUFJLEVBQUUsbUJBQW1CLENBQUMsRUFBRTthQUM3QjtTQUNGLENBQUM7UUFFTSxpQkFBWSxHQUdkLEVBQUUsQ0FBQztRQUtQLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDOzZCQWhFVSxvQkFBb0I7SUF5Qi9CLHNCQUFXLHlDQUFPO1FBSGxCOztXQUVHO2FBQ0g7WUFDRSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDdkIsQ0FBQzs7O09BQUE7SUF1Q00sMENBQVcsR0FBbEI7UUFDRSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksd0NBQVMsR0FBaEIsVUFBaUIsUUFBK0I7UUFDOUMsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQztZQUNuQyxJQUFJLEVBQUUsVUFBQyxXQUFnQztnQkFDckMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3hCLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxzQ0FBTyxHQUFkO1FBQ0UsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVPLDJDQUFZLEdBQXBCO1FBQUEsaUJBMEJDO1FBekJDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsVUFBQyxVQUFlO1lBQ3ZELElBQU0sRUFBRSxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUVuRCxJQUFNLFFBQVEsR0FBRyxVQUFDLEtBQVU7Z0JBQzFCLG9FQUFvRTtnQkFDcEUsZ0RBQWdEO2dCQUNoRCw4RUFBOEU7Z0JBQzlFLEtBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO29CQUNaLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTt3QkFDakIsS0FBSSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztxQkFDOUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUM7WUFFRixFQUFFLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRXpCLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRTtnQkFDZCxLQUFJLENBQUMsc0JBQXNCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzlDO1lBRUQsT0FBTztnQkFDTCxjQUFjLEVBQUUsRUFBRTtnQkFDbEIsUUFBUSxVQUFBO2FBQ1QsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLDhDQUFlLEdBQXZCO1FBQ0UsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsVUFBQyxVQUFVO1lBQ25DLFVBQVUsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRSxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxxREFBc0IsR0FBOUIsVUFBK0IsVUFBK0I7UUFDNUQsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7UUFDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkMsQ0FBQzs7SUEvSEQ7O09BRUc7SUFDVyx1QkFBRSxHQUFHLG9CQUFvQixDQUFDO0lBRXhDOztPQUVHO0lBQ1csdUJBQUUsR0FBRywyQ0FBMkMsQ0FBQztJQUUvRDs7T0FFRztJQUNXLHVCQUFFLEdBQUcsNENBQTRDLENBQUM7SUFFaEU7O09BRUc7SUFDVyx1QkFBRSxHQUFHLHFCQUFxQixDQUFDOztnQkF5Q3pCLE1BQU07OztJQTdEWCxvQkFBb0I7UUFIaEMsVUFBVSxDQUFDO1lBQ1YsVUFBVSxFQUFFLE1BQU07U0FDbkIsQ0FBQztPQUNXLG9CQUFvQixDQWtJaEM7K0JBeEpEO0NBd0pDLEFBbElELElBa0lDO1NBbElZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGFibGUsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIFN1YnNjcmlwdGlvblxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgU2t5TWVkaWFCcmVha3BvaW50c1xufSBmcm9tICcuL21lZGlhLWJyZWFrcG9pbnRzJztcblxuaW1wb3J0IHtcbiAgU2t5TWVkaWFRdWVyeUxpc3RlbmVyXG59IGZyb20gJy4vbWVkaWEtcXVlcnktbGlzdGVuZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTa3lNZWRpYVF1ZXJ5U2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgLyoqXG4gICAqIFRoZSBzaXplIGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB4cyA9ICcobWF4LXdpZHRoOiA3NjdweCknO1xuXG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgc20gPSAnKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCknO1xuXG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgbWQgPSAnKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpJztcblxuICAvKipcbiAgICogVGhlIHNpemUgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGxnID0gJyhtaW4td2lkdGg6IDEyMDBweCknO1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGN1cnJlbnQoKTogU2t5TWVkaWFCcmVha3BvaW50cyB7XG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnQ7XG4gIH1cblxuICBwcml2YXRlIGN1cnJlbnRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTa3lNZWRpYUJyZWFrcG9pbnRzPih0aGlzLmN1cnJlbnQpO1xuXG4gIHByaXZhdGUgX2N1cnJlbnQgPSBTa3lNZWRpYUJyZWFrcG9pbnRzLm1kO1xuXG4gIHByaXZhdGUgYnJlYWtwb2ludHM6IHtcbiAgICBtZWRpYVF1ZXJ5U3RyaW5nOiBzdHJpbmcsXG4gICAgbmFtZTogU2t5TWVkaWFCcmVha3BvaW50c1xuICB9W10gPSBbXG4gICAge1xuICAgICAgbWVkaWFRdWVyeVN0cmluZzogU2t5TWVkaWFRdWVyeVNlcnZpY2UueHMsXG4gICAgICBuYW1lOiBTa3lNZWRpYUJyZWFrcG9pbnRzLnhzXG4gICAgfSxcbiAgICB7XG4gICAgICBtZWRpYVF1ZXJ5U3RyaW5nOiBTa3lNZWRpYVF1ZXJ5U2VydmljZS5zbSxcbiAgICAgIG5hbWU6IFNreU1lZGlhQnJlYWtwb2ludHMuc21cbiAgICB9LFxuICAgIHtcbiAgICAgIG1lZGlhUXVlcnlTdHJpbmc6IFNreU1lZGlhUXVlcnlTZXJ2aWNlLm1kLFxuICAgICAgbmFtZTogU2t5TWVkaWFCcmVha3BvaW50cy5tZFxuICAgIH0sXG4gICAge1xuICAgICAgbWVkaWFRdWVyeVN0cmluZzogU2t5TWVkaWFRdWVyeVNlcnZpY2UubGcsXG4gICAgICBuYW1lOiBTa3lNZWRpYUJyZWFrcG9pbnRzLmxnXG4gICAgfVxuICBdO1xuXG4gIHByaXZhdGUgbWVkaWFRdWVyaWVzOiB7XG4gICAgbWVkaWFRdWVyeUxpc3Q6IE1lZGlhUXVlcnlMaXN0LFxuICAgIGxpc3RlbmVyOiAoKGV2ZW50OiBhbnkpID0+IHZvaWQpXG4gIH1bXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgem9uZTogTmdab25lXG4gICkge1xuICAgIHRoaXMuYWRkTGlzdGVuZXJzKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5yZW1vdmVMaXN0ZW5lcnMoKTtcbiAgICB0aGlzLmN1cnJlbnRTdWJqZWN0LmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogU3VzY3JpYmVzIHRvIHNjcmVlbiBzaXplIGNoYW5nZXMuXG4gICAqIEBwYXJhbSBsaXN0ZW5lciBTcGVjaWZpZXMgYSBmdW5jdGlvbiB0aGF0IGlzIGNhbGxlZCB3aGVuIGJyZWFrcG9pbnRzIGNoYW5nZS5cbiAgICovXG4gIHB1YmxpYyBzdWJzY3JpYmUobGlzdGVuZXI6IFNreU1lZGlhUXVlcnlMaXN0ZW5lcik6IFN1YnNjcmlwdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFN1YmplY3Quc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChicmVha3BvaW50czogU2t5TWVkaWFCcmVha3BvaW50cykgPT4ge1xuICAgICAgICBsaXN0ZW5lcihicmVha3BvaW50cyk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnJlbW92ZUxpc3RlbmVycygpO1xuICAgIHRoaXMuY3VycmVudFN1YmplY3QuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIHRoaXMubWVkaWFRdWVyaWVzID0gdGhpcy5icmVha3BvaW50cy5tYXAoKGJyZWFrcG9pbnQ6IGFueSkgPT4ge1xuICAgICAgY29uc3QgbXEgPSBtYXRjaE1lZGlhKGJyZWFrcG9pbnQubWVkaWFRdWVyeVN0cmluZyk7XG5cbiAgICAgIGNvbnN0IGxpc3RlbmVyID0gKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgLy8gUnVuIHRoZSBjaGVjayBvdXRzaWRlIG9mIEFuZ3VsYXIncyBjaGFuZ2UgZGV0ZWN0aW9uIHNpbmNlIEFuZ3VsYXJcbiAgICAgICAgLy8gZG9lcyBub3Qgd3JhcCBtYXRjaE1lZGlhIGxpc3RlbmVycyBpbiBOZ1pvbmUuXG4gICAgICAgIC8vIFNlZTogaHR0cHM6Ly9ibG9nLmFzc2FmLmNvL2FuZ3VsYXItMi1jaGFuZ2UtZGV0ZWN0aW9uLXpvbmVzLWFuZC1hbi1leGFtcGxlL1xuICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICBpZiAoZXZlbnQubWF0Y2hlcykge1xuICAgICAgICAgICAgdGhpcy5ub3RpZnlCcmVha3BvaW50Q2hhbmdlKGJyZWFrcG9pbnQubmFtZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH07XG5cbiAgICAgIG1xLmFkZExpc3RlbmVyKGxpc3RlbmVyKTtcblxuICAgICAgaWYgKG1xLm1hdGNoZXMpIHtcbiAgICAgICAgdGhpcy5ub3RpZnlCcmVha3BvaW50Q2hhbmdlKGJyZWFrcG9pbnQubmFtZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1lZGlhUXVlcnlMaXN0OiBtcSxcbiAgICAgICAgbGlzdGVuZXJcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZUxpc3RlbmVycygpOiB2b2lkIHtcbiAgICB0aGlzLm1lZGlhUXVlcmllcy5mb3JFYWNoKChtZWRpYVF1ZXJ5KSA9PiB7XG4gICAgICBtZWRpYVF1ZXJ5Lm1lZGlhUXVlcnlMaXN0LnJlbW92ZUxpc3RlbmVyKG1lZGlhUXVlcnkubGlzdGVuZXIpO1xuICAgIH0pO1xuICAgIHRoaXMubWVkaWFRdWVyaWVzID0gW107XG4gIH1cblxuICBwcml2YXRlIG5vdGlmeUJyZWFrcG9pbnRDaGFuZ2UoYnJlYWtwb2ludDogU2t5TWVkaWFCcmVha3BvaW50cyk6IHZvaWQge1xuICAgIHRoaXMuX2N1cnJlbnQgPSBicmVha3BvaW50O1xuICAgIHRoaXMuY3VycmVudFN1YmplY3QubmV4dChicmVha3BvaW50KTtcbiAgfVxufVxuIl19
@@ -1,19 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Injectable } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- var MutationObserverService = /** @class */ (function () {
5
- function MutationObserverService() {
6
- }
7
- MutationObserverService.prototype.create = function (callback) {
8
- return new MutationObserver(callback);
9
- };
10
- MutationObserverService.ɵprov = i0.ɵɵdefineInjectable({ factory: function MutationObserverService_Factory() { return new MutationObserverService(); }, token: MutationObserverService, providedIn: "root" });
11
- MutationObserverService = __decorate([
12
- Injectable({
13
- providedIn: 'root'
14
- })
15
- ], MutationObserverService);
16
- return MutationObserverService;
17
- }());
18
- export { MutationObserverService };
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXV0YXRpb24tb2JzZXJ2ZXItc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bza3l1eC9jb3JlLyIsInNvdXJjZXMiOlsibW9kdWxlcy9tdXRhdGlvbi9tdXRhdGlvbi1vYnNlcnZlci1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUNYLE1BQU0sZUFBZSxDQUFDOztBQUt2QjtJQUFBO0tBSUM7SUFIUSx3Q0FBTSxHQUFiLFVBQWMsUUFBYTtRQUN6QixPQUFPLElBQUksZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDeEMsQ0FBQzs7SUFIVSx1QkFBdUI7UUFIbkMsVUFBVSxDQUFDO1lBQ1YsVUFBVSxFQUFFLE1BQU07U0FDbkIsQ0FBQztPQUNXLHVCQUF1QixDQUluQztrQ0FYRDtDQVdDLEFBSkQsSUFJQztTQUpZLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGFibGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlIHtcbiAgcHVibGljIGNyZWF0ZShjYWxsYmFjazogYW55KTogTXV0YXRpb25PYnNlcnZlciB7XG4gICAgcmV0dXJuIG5ldyBNdXRhdGlvbk9ic2VydmVyKGNhbGxiYWNrKTtcbiAgfVxufVxuIl19
@@ -1 +0,0 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy1zeW1ib2wuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2t5dXgvY29yZS8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvbnVtZXJpYy9udW1lcmljLXN5bWJvbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTa3lOdW1lcmljU3ltYm9sIHtcbiAgdmFsdWU6IG51bWJlcjtcbiAgbGFiZWw6IHN0cmluZztcbn1cbiJdfQ==
@@ -1,29 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { NgModule } from '@angular/core';
3
- import { SkyI18nModule } from '@skyux/i18n';
4
- import { SkyCoreResourcesModule } from '../shared/core-resources.module';
5
- import { SkyNumericPipe } from './numeric.pipe';
6
- var SkyNumericModule = /** @class */ (function () {
7
- function SkyNumericModule() {
8
- }
9
- SkyNumericModule = __decorate([
10
- NgModule({
11
- declarations: [
12
- SkyNumericPipe
13
- ],
14
- providers: [
15
- SkyNumericPipe
16
- ],
17
- imports: [
18
- SkyI18nModule,
19
- SkyCoreResourcesModule
20
- ],
21
- exports: [
22
- SkyNumericPipe
23
- ]
24
- })
25
- ], SkyNumericModule);
26
- return SkyNumericModule;
27
- }());
28
- export { SkyNumericModule };
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2t5dXgvY29yZS8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvbnVtZXJpYy9udW1lcmljLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsYUFBYSxFQUNkLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFDTCxzQkFBc0IsRUFDdkIsTUFBTSxpQ0FBaUMsQ0FBQztBQUV6QyxPQUFPLEVBQ0wsY0FBYyxFQUNmLE1BQU0sZ0JBQWdCLENBQUM7QUFpQnhCO0lBQUE7SUFBZ0MsQ0FBQztJQUFwQixnQkFBZ0I7UUFmNUIsUUFBUSxDQUFDO1lBQ1IsWUFBWSxFQUFFO2dCQUNaLGNBQWM7YUFDZjtZQUNELFNBQVMsRUFBRTtnQkFDVCxjQUFjO2FBQ2Y7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsYUFBYTtnQkFDYixzQkFBc0I7YUFDdkI7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsY0FBYzthQUNmO1NBQ0YsQ0FBQztPQUNXLGdCQUFnQixDQUFJO0lBQUQsdUJBQUM7Q0FBQSxBQUFqQyxJQUFpQztTQUFwQixnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBOZ01vZHVsZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgU2t5STE4bk1vZHVsZVxufSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmltcG9ydCB7XG4gIFNreUNvcmVSZXNvdXJjZXNNb2R1bGVcbn0gZnJvbSAnLi4vc2hhcmVkL2NvcmUtcmVzb3VyY2VzLm1vZHVsZSc7XG5cbmltcG9ydCB7XG4gIFNreU51bWVyaWNQaXBlXG59IGZyb20gJy4vbnVtZXJpYy5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU2t5TnVtZXJpY1BpcGVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgU2t5TnVtZXJpY1BpcGVcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIFNreUkxOG5Nb2R1bGUsXG4gICAgU2t5Q29yZVJlc291cmNlc01vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgU2t5TnVtZXJpY1BpcGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTa3lOdW1lcmljTW9kdWxlIHsgfVxuIl19
@@ -1,38 +0,0 @@
1
- /**
2
- * Provides arguments for the number to format.
3
- */
4
- var NumericOptions = /** @class */ (function () {
5
- function NumericOptions() {
6
- /**
7
- * Specifies the maximum number of digits after the decimal separator.
8
- * @default 1
9
- */
10
- this.digits = 1;
11
- /**
12
- * Specifies how to format the number. Options are `currency` or `number`.
13
- * @default "number"
14
- */
15
- this.format = 'number';
16
- /**
17
- * Specifies the ISO4217 currency code to use for currency formatting. If you do not specify a
18
- * currency code, the component uses the browser's culture to determine the currency unless your
19
- * SPA provides a different culture with `SkyAppLocaleProvider`.
20
- * @default 'USD'
21
- */
22
- this.iso = 'USD';
23
- /**
24
- * Indicates whether to shorten numbers to rounded numbers and abbreviation characters
25
- * such as K for thousands, M for millions, B for billions, and T for trillion.
26
- */
27
- this.truncate = true;
28
- /**
29
- * Specifies the starting point after which numbers are shortened to rounded numbers
30
- * and abbreviation characters.
31
- * @default 0
32
- */
33
- this.truncateAfter = 0;
34
- }
35
- return NumericOptions;
36
- }());
37
- export { NumericOptions };
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy5vcHRpb25zLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNreXV4L2NvcmUvIiwic291cmNlcyI6WyJtb2R1bGVzL251bWVyaWMvbnVtZXJpYy5vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0g7SUFBQTtRQUVFOzs7V0FHRztRQUNJLFdBQU0sR0FBWSxDQUFDLENBQUM7UUFFM0I7OztXQUdHO1FBQ0ksV0FBTSxHQUFZLFFBQVEsQ0FBQztRQUVsQzs7Ozs7V0FLRztRQUNJLFFBQUcsR0FBWSxLQUFLLENBQUM7UUFjNUI7OztXQUdHO1FBQ0ksYUFBUSxHQUFhLElBQUksQ0FBQztRQUVqQzs7OztXQUlHO1FBQ0ksa0JBQWEsR0FBWSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUFELHFCQUFDO0FBQUQsQ0FBQyxBQTlDRCxJQThDQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUHJvdmlkZXMgYXJndW1lbnRzIGZvciB0aGUgbnVtYmVyIHRvIGZvcm1hdC5cbiAqL1xuZXhwb3J0IGNsYXNzIE51bWVyaWNPcHRpb25zIHtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBkaWdpdHMgYWZ0ZXIgdGhlIGRlY2ltYWwgc2VwYXJhdG9yLlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICBwdWJsaWMgZGlnaXRzPzogbnVtYmVyID0gMTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGhvdyB0byBmb3JtYXQgdGhlIG51bWJlci4gT3B0aW9ucyBhcmUgYGN1cnJlbmN5YCBvciBgbnVtYmVyYC5cbiAgICogQGRlZmF1bHQgXCJudW1iZXJcIlxuICAgKi9cbiAgcHVibGljIGZvcm1hdD86IHN0cmluZyA9ICdudW1iZXInO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIElTTzQyMTcgY3VycmVuY3kgY29kZSB0byB1c2UgZm9yIGN1cnJlbmN5IGZvcm1hdHRpbmcuIElmIHlvdSBkbyBub3Qgc3BlY2lmeSBhXG4gICAqIGN1cnJlbmN5IGNvZGUsIHRoZSBjb21wb25lbnQgdXNlcyB0aGUgYnJvd3NlcidzIGN1bHR1cmUgdG8gZGV0ZXJtaW5lIHRoZSBjdXJyZW5jeSB1bmxlc3MgeW91clxuICAgKiBTUEEgcHJvdmlkZXMgYSBkaWZmZXJlbnQgY3VsdHVyZSB3aXRoIGBTa3lBcHBMb2NhbGVQcm92aWRlcmAuXG4gICAqIEBkZWZhdWx0ICdVU0QnXG4gICAqL1xuICBwdWJsaWMgaXNvPzogc3RyaW5nID0gJ1VTRCc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbG9jYWxlIGNvZGUgdG8gdXNlIHdoZW4gZm9ybWF0dGluZy5cbiAgICovXG4gIHB1YmxpYyBsb2NhbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbWluaW11bSBudW1iZXIgb2YgZGlnaXRzIGFmdGVyIHRoZSBkZWNpbWFsIHNlcGFyYXRvci4gVGhpcyBwcm9wZXJ0eSBvbmx5IGFwcGxpZXNcbiAgICogd2hlbiB0aGUgYHRydW5jYXRlYCBwcm9wZXJ0eSBpcyBzZXQgdG8gYGZhbHNlYC4gSWYgYGRpZ2l0c2Agc3BlY2lmaWVzIGEgbWF4aW11bSBudW1iZXIgb2ZcbiAgICogZGlnaXRzLCB0aGVuIGBtaW5EaWdpdHNgIG11c3QgYmUgbGVzcyB0aGFuIHRoYXQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgbWluRGlnaXRzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byBzaG9ydGVuIG51bWJlcnMgdG8gcm91bmRlZCBudW1iZXJzIGFuZCBhYmJyZXZpYXRpb24gY2hhcmFjdGVyc1xuICAgKiBzdWNoIGFzIEsgZm9yIHRob3VzYW5kcywgTSBmb3IgbWlsbGlvbnMsIEIgZm9yIGJpbGxpb25zLCBhbmQgVCBmb3IgdHJpbGxpb24uXG4gICAqL1xuICBwdWJsaWMgdHJ1bmNhdGU/OiBib29sZWFuID0gdHJ1ZTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBzdGFydGluZyBwb2ludCBhZnRlciB3aGljaCBudW1iZXJzIGFyZSBzaG9ydGVuZWQgdG8gcm91bmRlZCBudW1iZXJzXG4gICAqIGFuZCBhYmJyZXZpYXRpb24gY2hhcmFjdGVycy5cbiAgICogQGRlZmF1bHQgMFxuICAgKi9cbiAgcHVibGljIHRydW5jYXRlQWZ0ZXI/OiBudW1iZXIgPSAwO1xufVxuIl19
@@ -1,70 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Pipe } from '@angular/core';
3
- import { SkyAppLocaleProvider } from '@skyux/i18n';
4
- import { takeUntil } from 'rxjs/operators';
5
- import { Subject } from 'rxjs';
6
- import { SkyNumericService } from './numeric.service';
7
- import { NumericOptions } from './numeric.options';
8
- /**
9
- * Shorten numbers to rounded numbers and abbreviation characters such as K for thousands,
10
- * M for millions, B for billions, and T for trillion. The pipe also formats for currency.
11
- * Be sure you have a space after the two curly brackets opening the pipe and
12
- * a space before the two curly brackets closing the pipe or it will not work.
13
- * Usage:
14
- * ```
15
- * {{ value | skyNumeric(config) }}
16
- * ```
17
- */
18
- var SkyNumericPipe = /** @class */ (function () {
19
- function SkyNumericPipe(localeProvider, numericService) {
20
- this.localeProvider = localeProvider;
21
- this.numericService = numericService;
22
- this.ngUnsubscribe = new Subject();
23
- this.localeProvider.getLocaleInfo()
24
- .pipe(takeUntil(this.ngUnsubscribe))
25
- .subscribe(function (localeInfo) {
26
- numericService.currentLocale = localeInfo.locale;
27
- });
28
- }
29
- SkyNumericPipe.prototype.ngOnDestroy = function () {
30
- this.ngUnsubscribe.next();
31
- this.ngUnsubscribe.complete();
32
- };
33
- SkyNumericPipe.prototype.transform = function (value, config) {
34
- var options = new NumericOptions();
35
- // The default number of digits is `1`. When truncate is disabled, set digits
36
- // to `0` to avoid the unnecessary addition of `.0` at the end of the formatted number.
37
- if (config &&
38
- config.truncate === false &&
39
- config.digits === undefined) {
40
- config.digits = 0;
41
- }
42
- // If the minimum digits is less than the set maximum digits then throw an error
43
- if (config &&
44
- config.minDigits &&
45
- config.digits &&
46
- config.minDigits > config.digits) {
47
- throw new Error('The `digits` property must be greater than or equal to the `minDigits` property');
48
- // If there is a minimum digits given but not a maximum then default the maximum to the minimum
49
- }
50
- else if (config &&
51
- config.minDigits &&
52
- !config.digits) {
53
- config.digits = config.minDigits;
54
- }
55
- Object.assign(options, config);
56
- return this.numericService.formatNumber(value, options);
57
- };
58
- SkyNumericPipe.ctorParameters = function () { return [
59
- { type: SkyAppLocaleProvider },
60
- { type: SkyNumericService }
61
- ]; };
62
- SkyNumericPipe = __decorate([
63
- Pipe({
64
- name: 'skyNumeric'
65
- })
66
- ], SkyNumericPipe);
67
- return SkyNumericPipe;
68
- }());
69
- export { SkyNumericPipe };
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNreXV4L2NvcmUvIiwic291cmNlcyI6WyJtb2R1bGVzL251bWVyaWMvbnVtZXJpYy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsSUFBSSxFQUdMLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTCxvQkFBb0IsRUFDckIsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUNMLFNBQVMsRUFDVixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDTCxPQUFPLEVBQ1IsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2xCLE1BQU0sbUJBQW1CLENBQUM7QUFFM0IsT0FBTyxFQUNMLGNBQWMsRUFDZixNQUFNLG1CQUFtQixDQUFDO0FBRTNCOzs7Ozs7Ozs7R0FTRztBQUlIO0lBSUUsd0JBQ1UsY0FBb0MsRUFDM0IsY0FBaUM7UUFEMUMsbUJBQWMsR0FBZCxjQUFjLENBQXNCO1FBQzNCLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUo1QyxrQkFBYSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFNMUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUU7YUFDaEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDbkMsU0FBUyxDQUFDLFVBQUMsVUFBVTtZQUNwQixjQUFjLENBQUMsYUFBYSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sb0NBQVcsR0FBbEI7UUFDRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVNLGtDQUFTLEdBQWhCLFVBQWlCLEtBQWEsRUFBRSxNQUF1QjtRQUNyRCxJQUFNLE9BQU8sR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBRXJDLDZFQUE2RTtRQUM3RSx1RkFBdUY7UUFDdkYsSUFDRSxNQUFNO1lBQ04sTUFBTSxDQUFDLFFBQVEsS0FBSyxLQUFLO1lBQ3pCLE1BQU0sQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUMzQjtZQUNBLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQ25CO1FBRUQsZ0ZBQWdGO1FBQ2hGLElBQ0UsTUFBTTtZQUNOLE1BQU0sQ0FBQyxTQUFTO1lBQ2hCLE1BQU0sQ0FBQyxNQUFNO1lBQ2IsTUFBTSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUNoQztZQUNBLE1BQU0sSUFBSSxLQUFLLENBQ2IsaUZBQWlGLENBQ2xGLENBQUM7WUFFSiwrRkFBK0Y7U0FDOUY7YUFBTSxJQUNMLE1BQU07WUFDTixNQUFNLENBQUMsU0FBUztZQUNoQixDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQ2Q7WUFDQSxNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUM7U0FDbEM7UUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUUvQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMxRCxDQUFDOztnQkFuRHlCLG9CQUFvQjtnQkFDWCxpQkFBaUI7O0lBTnpDLGNBQWM7UUFIMUIsSUFBSSxDQUFDO1lBQ0osSUFBSSxFQUFFLFlBQVk7U0FDbkIsQ0FBQztPQUNXLGNBQWMsQ0F5RDFCO0lBQUQscUJBQUM7Q0FBQSxBQXpERCxJQXlEQztTQXpEWSxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgUGlwZSxcbiAgUGlwZVRyYW5zZm9ybSxcbiAgT25EZXN0cm95XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBTa3lBcHBMb2NhbGVQcm92aWRlclxufSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmltcG9ydCB7XG4gIHRha2VVbnRpbFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7XG4gIFN1YmplY3Rcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIFNreU51bWVyaWNTZXJ2aWNlXG59IGZyb20gJy4vbnVtZXJpYy5zZXJ2aWNlJztcblxuaW1wb3J0IHtcbiAgTnVtZXJpY09wdGlvbnNcbn0gZnJvbSAnLi9udW1lcmljLm9wdGlvbnMnO1xuXG4vKipcbiAqIFNob3J0ZW4gbnVtYmVycyB0byByb3VuZGVkIG51bWJlcnMgYW5kIGFiYnJldmlhdGlvbiBjaGFyYWN0ZXJzIHN1Y2ggYXMgSyBmb3IgdGhvdXNhbmRzLFxuICogTSBmb3IgbWlsbGlvbnMsIEIgZm9yIGJpbGxpb25zLCBhbmQgVCBmb3IgdHJpbGxpb24uIFRoZSBwaXBlIGFsc28gZm9ybWF0cyBmb3IgY3VycmVuY3kuXG4gKiBCZSBzdXJlIHlvdSBoYXZlIGEgc3BhY2UgYWZ0ZXIgdGhlIHR3byBjdXJseSBicmFja2V0cyBvcGVuaW5nIHRoZSBwaXBlIGFuZFxuICogYSBzcGFjZSBiZWZvcmUgdGhlIHR3byBjdXJseSBicmFja2V0cyBjbG9zaW5nIHRoZSBwaXBlIG9yIGl0IHdpbGwgbm90IHdvcmsuXG4gKiBVc2FnZTpcbiAqIGBgYFxuICoge3sgdmFsdWUgfCBza3lOdW1lcmljKGNvbmZpZykgfX1cbiAqIGBgYFxuICovXG5AUGlwZSh7XG4gIG5hbWU6ICdza3lOdW1lcmljJ1xufSlcbmV4cG9ydCBjbGFzcyBTa3lOdW1lcmljUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0sIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGxvY2FsZVByb3ZpZGVyOiBTa3lBcHBMb2NhbGVQcm92aWRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG51bWVyaWNTZXJ2aWNlOiBTa3lOdW1lcmljU2VydmljZVxuICApIHtcbiAgICB0aGlzLmxvY2FsZVByb3ZpZGVyLmdldExvY2FsZUluZm8oKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChsb2NhbGVJbmZvKSA9PiB7XG4gICAgICAgIG51bWVyaWNTZXJ2aWNlLmN1cnJlbnRMb2NhbGUgPSBsb2NhbGVJbmZvLmxvY2FsZTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBudW1iZXIsIGNvbmZpZz86IE51bWVyaWNPcHRpb25zKTogc3RyaW5nIHtcbiAgICBjb25zdCBvcHRpb25zID0gbmV3IE51bWVyaWNPcHRpb25zKCk7XG5cbiAgICAvLyBUaGUgZGVmYXVsdCBudW1iZXIgb2YgZGlnaXRzIGlzIGAxYC4gV2hlbiB0cnVuY2F0ZSBpcyBkaXNhYmxlZCwgc2V0IGRpZ2l0c1xuICAgIC8vIHRvIGAwYCB0byBhdm9pZCB0aGUgdW5uZWNlc3NhcnkgYWRkaXRpb24gb2YgYC4wYCBhdCB0aGUgZW5kIG9mIHRoZSBmb3JtYXR0ZWQgbnVtYmVyLlxuICAgIGlmIChcbiAgICAgIGNvbmZpZyAmJlxuICAgICAgY29uZmlnLnRydW5jYXRlID09PSBmYWxzZSAmJlxuICAgICAgY29uZmlnLmRpZ2l0cyA9PT0gdW5kZWZpbmVkXG4gICAgKSB7XG4gICAgICBjb25maWcuZGlnaXRzID0gMDtcbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgbWluaW11bSBkaWdpdHMgaXMgbGVzcyB0aGFuIHRoZSBzZXQgbWF4aW11bSBkaWdpdHMgdGhlbiB0aHJvdyBhbiBlcnJvclxuICAgIGlmIChcbiAgICAgIGNvbmZpZyAmJlxuICAgICAgY29uZmlnLm1pbkRpZ2l0cyAmJlxuICAgICAgY29uZmlnLmRpZ2l0cyAmJlxuICAgICAgY29uZmlnLm1pbkRpZ2l0cyA+IGNvbmZpZy5kaWdpdHNcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ1RoZSBgZGlnaXRzYCBwcm9wZXJ0eSBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byB0aGUgYG1pbkRpZ2l0c2AgcHJvcGVydHknXG4gICAgICApO1xuXG4gICAgLy8gSWYgdGhlcmUgaXMgYSBtaW5pbXVtIGRpZ2l0cyBnaXZlbiBidXQgbm90IGEgbWF4aW11bSB0aGVuIGRlZmF1bHQgdGhlIG1heGltdW0gdG8gdGhlIG1pbmltdW1cbiAgICB9IGVsc2UgaWYgKFxuICAgICAgY29uZmlnICYmXG4gICAgICBjb25maWcubWluRGlnaXRzICYmXG4gICAgICAhY29uZmlnLmRpZ2l0c1xuICAgICkge1xuICAgICAgY29uZmlnLmRpZ2l0cyA9IGNvbmZpZy5taW5EaWdpdHM7XG4gICAgfVxuXG4gICAgT2JqZWN0LmFzc2lnbihvcHRpb25zLCBjb25maWcpO1xuXG4gICAgcmV0dXJuIHRoaXMubnVtZXJpY1NlcnZpY2UuZm9ybWF0TnVtYmVyKHZhbHVlLCBvcHRpb25zKTtcbiAgfVxufVxuIl19
@@ -1,195 +0,0 @@
1
- import { __decorate, __read } from "tslib";
2
- import { Injectable } from '@angular/core';
3
- import { SkyIntlNumberFormatStyle, SkyLibResourcesService } from '@skyux/i18n';
4
- import { SkyNumberFormatUtility } from '../shared/number-format/number-format-utility';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@skyux/i18n";
7
- var SkyNumericService = /** @class */ (function () {
8
- function SkyNumericService(resourcesService) {
9
- this.resourcesService = resourcesService;
10
- this.symbolIndex = [
11
- { value: 1E12, label: this.getSymbol('skyux_numeric_trillions_symbol') },
12
- { value: 1E9, label: this.getSymbol('skyux_numeric_billions_symbol') },
13
- { value: 1E6, label: this.getSymbol('skyux_numeric_millions_symbol') },
14
- { value: 1E3, label: this.getSymbol('skyux_numeric_thousands_symbol') }
15
- ];
16
- }
17
- Object.defineProperty(SkyNumericService.prototype, "currentLocale", {
18
- get: function () {
19
- return this._locale || 'en-US';
20
- },
21
- /**
22
- * The browser's current locale.
23
- * @internal
24
- */
25
- set: function (value) {
26
- this._locale = value;
27
- },
28
- enumerable: true,
29
- configurable: true
30
- });
31
- /**
32
- * Shortens with or without symbol (K/M/B/T) depending on value of number.
33
- * @param value The number to format.
34
- * @param options Format options.
35
- */
36
- SkyNumericService.prototype.formatNumber = function (value, options) {
37
- /* tslint:disable-next-line:no-null-keyword */
38
- if (isNaN(value) || value === null) {
39
- return '';
40
- }
41
- var decimalPlaceRegExp = /\.0+$|(\.[0-9]*[1-9])0+$/;
42
- // Get the symbol for the number after rounding, since rounding could push the number
43
- // into a different symbol range.
44
- var roundedNumber = this.roundNumber(value, options.digits);
45
- var roundedNumberAbs = Math.abs(roundedNumber);
46
- var suffix = '';
47
- for (var i = 0; i < this.symbolIndex.length; i++) {
48
- var symbol = this.symbolIndex[i];
49
- if (options.truncate &&
50
- roundedNumberAbs >= options.truncateAfter && roundedNumberAbs >= symbol.value) {
51
- roundedNumber = this.roundNumber((value / symbol.value), options.digits);
52
- if (Math.abs(roundedNumber) === 1000 && i > 0) {
53
- // Rounding caused the number to cross into the range of the next symbol.
54
- symbol = this.symbolIndex[i - 1];
55
- roundedNumber /= 1000;
56
- }
57
- suffix = symbol.label;
58
- break;
59
- }
60
- }
61
- var output = roundedNumber.toString().replace(decimalPlaceRegExp, '$1') + suffix;
62
- this.storeShortenSymbol(output);
63
- var locale = options.locale || this.currentLocale;
64
- var digits;
65
- // Checks the string entered for format. Using toLowerCase to ignore case.
66
- switch (options.format.toLowerCase()) {
67
- // In a case where a decimal value was not shortened and
68
- // the digit input is 2 or higher, it forces 2 digits.
69
- // For example, this prevents a value like $15.50 from displaying as $15.5.
70
- // Note: This will need to be reviewed if we support currencies with
71
- // three decimal digits.
72
- case 'currency':
73
- var isDecimal = (value % 1 !== 0);
74
- if (options.minDigits) {
75
- digits = "1." + options.minDigits + "-" + options.digits;
76
- }
77
- else if (isDecimal && options.digits >= 2) {
78
- digits = "1.2-" + options.digits;
79
- }
80
- else {
81
- digits = "1.0-" + options.digits;
82
- }
83
- // Angular 5+ needs a string for this parameter, but Angular 4 needs a boolean.
84
- // To support both versions we can supply 'symbol' which will evaluate truthy for Angular 4
85
- // and the appropriate string value for Angular 5+.
86
- // See: https://angular.io/api/common/CurrencyPipe#parameters
87
- var symbolDisplay = 'symbol';
88
- output = SkyNumberFormatUtility.formatNumber(locale, parseFloat(output), SkyIntlNumberFormatStyle.Currency, digits, options.iso, symbolDisplay);
89
- break;
90
- // The following is a catch-all to ensure that if
91
- // anything but currency (or a future option) are entered,
92
- // it will be treated like a number.
93
- default:
94
- // Ensures localization of the number to ensure comma and
95
- // decimal separator
96
- if (options.minDigits) {
97
- digits = "1." + options.minDigits + "-" + options.digits;
98
- }
99
- else if (options.truncate) {
100
- digits = "1.0-" + options.digits;
101
- }
102
- else {
103
- digits = "1." + options.digits + "-" + options.digits;
104
- }
105
- output = SkyNumberFormatUtility.formatNumber(locale, parseFloat(output), SkyIntlNumberFormatStyle.Decimal, digits);
106
- break;
107
- }
108
- if (options.truncate) {
109
- output = this.replaceShortenSymbol(output);
110
- }
111
- return output;
112
- };
113
- /**
114
- * Rounds a given number
115
- *
116
- * JS's limitation - numbers bigger than Number.MIN_SAFE_INTEGER or Number.MAX_SAFE_INTEGER
117
- * are not guaranteed to be represented or rounded correctly
118
- * @param value - value to round
119
- * @param precision - what precision to round with, defaults to 0 decimal places
120
- */
121
- SkyNumericService.prototype.roundNumber = function (value, precision) {
122
- if (precision === void 0) { precision = 0; }
123
- if (precision < 0) {
124
- throw new Error('SkyInvalidArgument: precision must be >= 0');
125
- }
126
- /* tslint:disable-next-line:no-null-keyword */
127
- /* Sanity check - ignoring coverage but should not ignore if we make this method public */
128
- /* istanbul ignore next */
129
- if (isNaN(value) || value === null) {
130
- return 0;
131
- }
132
- var scaledValue = this.scaleNumberByPowerOfTen(value, precision, true);
133
- var scaledRoundedValue = Math.round(scaledValue);
134
- var unscaledRoundedValue = this.scaleNumberByPowerOfTen(scaledRoundedValue, precision, false);
135
- return unscaledRoundedValue;
136
- };
137
- /**
138
- * Scales a given number by a power of 10
139
- * @param value - value to scale
140
- * @param scalar - 10^scalar
141
- * @param scaleUp - whether to increase or decrease the value
142
- */
143
- SkyNumericService.prototype.scaleNumberByPowerOfTen = function (value, scalar, scaleUp) {
144
- var valueStr = value.toString().toLowerCase();
145
- var isExponentFormat = valueStr.includes('e');
146
- if (isExponentFormat) {
147
- var _a = __read(valueStr.split('e'), 2), base = _a[0], exp = _a[1];
148
- var newExp = scaleUp ? (Number(exp) + scalar) : (Number(exp) - scalar);
149
- return Number(base + "e" + newExp);
150
- }
151
- else {
152
- var e = scaleUp ? 'e' : 'e-';
153
- return Number("" + value + e + scalar);
154
- }
155
- };
156
- /**
157
- * Stores the symbol added from shortening to reapply later.
158
- * @param value The string to derive the shorten symbol from.
159
- */
160
- SkyNumericService.prototype.storeShortenSymbol = function (value) {
161
- var symbols = this.symbolIndex.map(function (s) { return s.label; });
162
- var regexp = new RegExp(symbols.join('|'), 'ig');
163
- var match = value.match(regexp);
164
- this.shortSymbol = (match) ? match.toString() : '';
165
- };
166
- /**
167
- * Must have previously called storeShortenSymbol to have something to replace.
168
- * Finds the last number in the formatted number, gets the index of the position
169
- * after that character and re-inserts the symbol.
170
- * Works regardless of currency symbol position.
171
- * @param value The string to modify.
172
- */
173
- SkyNumericService.prototype.replaceShortenSymbol = function (value) {
174
- var result = /(\d)(?!.*\d)/g.exec(value);
175
- var pos = result.index + result.length;
176
- var output = value.substring(0, pos) + this.shortSymbol + value.substring(pos);
177
- return output;
178
- };
179
- SkyNumericService.prototype.getSymbol = function (key) {
180
- // TODO: Need to implement the async `getString` method in a breaking change.
181
- return this.resourcesService.getStringForLocale({ locale: 'en_US' }, key);
182
- };
183
- SkyNumericService.ctorParameters = function () { return [
184
- { type: SkyLibResourcesService }
185
- ]; };
186
- SkyNumericService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SkyNumericService_Factory() { return new SkyNumericService(i0.ɵɵinject(i1.SkyLibResourcesService)); }, token: SkyNumericService, providedIn: "any" });
187
- SkyNumericService = __decorate([
188
- Injectable({
189
- providedIn: 'any'
190
- })
191
- ], SkyNumericService);
192
- return SkyNumericService;
193
- }());
194
- export { SkyNumericService };
195
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNreXV4L2NvcmUvIiwic291cmNlcyI6WyJtb2R1bGVzL251bWVyaWMvbnVtZXJpYy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUNYLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTCx3QkFBd0IsRUFDeEIsc0JBQXNCLEVBQ3ZCLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFDTCxzQkFBc0IsRUFDdkIsTUFBTSwrQ0FBK0MsQ0FBQzs7O0FBYXZEO0lBNEJFLDJCQUNVLGdCQUF3QztRQUF4QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXdCO1FBVjFDLGdCQUFXLEdBQXVCO1lBQ3hDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQ0FBZ0MsQ0FBQyxFQUFFO1lBQ3hFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQywrQkFBK0IsQ0FBQyxFQUFFO1lBQ3RFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQywrQkFBK0IsQ0FBQyxFQUFFO1lBQ3RFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQ0FBZ0MsQ0FBQyxFQUFFO1NBQ3hFLENBQUM7SUFNRSxDQUFDO0lBeEJMLHNCQUFXLDRDQUFhO2FBSXhCO1lBQ0UsT0FBTyxJQUFJLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQztRQUNqQyxDQUFDO1FBVkQ7OztXQUdHO2FBQ0gsVUFBeUIsS0FBYTtZQUNwQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN2QixDQUFDOzs7T0FBQTtJQXdCRDs7OztPQUlHO0lBQ0ksd0NBQVksR0FBbkIsVUFDRSxLQUFhLEVB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LEFBL09ELElBK09DO1NBL09ZLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGFibGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIFNreUludGxOdW1iZXJGb3JtYXRTdHlsZSxcbiAgU2t5TGliUmVzb3VyY2VzU2VydmljZVxufSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmltcG9ydCB7XG4gIFNreU51bWJlckZvcm1hdFV0aWxpdHlcbn0gZnJvbSAnLi4vc2hhcmVkL251bWJlci1mb3JtYXQvbnVtYmVyLWZvcm1hdC11dGlsaXR5JztcblxuaW1wb3J0IHtcbiAgTnVtZXJpY09wdGlvbnNcbn0gZnJvbSAnLi9udW1lcmljLm9wdGlvbnMnO1xuXG5pbXBvcnQge1xuICBTa3lOdW1lcmljU3ltYm9sXG59IGZyb20gJy4vbnVtZXJpYy1zeW1ib2wnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdhbnknXG59KVxuZXhwb3J0IGNsYXNzIFNreU51bWVyaWNTZXJ2aWNlIHtcblxuICAvKipcbiAgICogVGhlIGJyb3dzZXIncyBjdXJyZW50IGxvY2FsZS5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc2V0IGN1cnJlbnRMb2NhbGUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2xvY2FsZSA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBjdXJyZW50TG9jYWxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2xvY2FsZSB8fCAnZW4tVVMnO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHNob3J0U3ltYm9sOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBzeW1ib2xJbmRleDogU2t5TnVtZXJpY1N5bWJvbFtdID0gW1xuICAgIHsgdmFsdWU6IDFFMTIsIGxhYmVsOiB0aGlzLmdldFN5bWJvbCgnc2t5dXhfbnVtZXJpY190cmlsbGlvbnNfc3ltYm9sJykgfSxcbiAgICB7IHZhbHVlOiAxRTksIGxhYmVsOiB0aGlzLmdldFN5bWJvbCgnc2t5dXhfbnVtZXJpY19iaWxsaW9uc19zeW1ib2wnKSB9LFxuICAgIHsgdmFsdWU6IDFFNiwgbGFiZWw6IHRoaXMuZ2V0U3ltYm9sKCdza3l1eF9udW1lcmljX21pbGxpb25zX3N5bWJvbCcpIH0sXG4gICAgeyB2YWx1ZTogMUUzLCBsYWJlbDogdGhpcy5nZXRTeW1ib2woJ3NreXV4X251bWVyaWNfdGhvdXNhbmRzX3N5bWJvbCcpIH1cbiAgXTtcblxuICBwcml2YXRlIF9sb2NhbGU6IHN0cmluZztcbuKAi1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlc291cmNlc1NlcnZpY2U6IFNreUxpYlJlc291cmNlc1NlcnZpY2VcbiAgKSB7IH1cbuKAi1xuICAvKipcbiAgICogU2hvcnRlbnMgd2l0aCBvciB3aXRob3V0IHN5bWJvbCAoSy9NL0IvVCkgZGVwZW5kaW5nIG9uIHZhbHVlIG9mIG51bWJlci5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSBudW1iZXIgdG8gZm9ybWF0LlxuICAgKiBAcGFyYW0gb3B0aW9ucyBGb3JtYXQgb3B0aW9ucy5cbiAgICovXG4gIHB1YmxpYyBmb3JtYXROdW1iZXIoXG4gICAgdmFsdWU6IG51bWJlcixcbiAgICBvcHRpb25zOiBOdW1lcmljT3B0aW9uc1xuICApOiBzdHJpbmcge1xuICAgIC8qIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1udWxsLWtleXdvcmQgKi9cbiAgICBpZiAoaXNOYU4odmFsdWUpIHx8IHZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgY29uc3QgZGVjaW1hbFBsYWNlUmVnRXhwID0gL1xcLjArJHwoXFwuWzAtOV0qWzEtOV0pMCskLztcblxuICAgIC8vIEdldCB0aGUgc3ltYm9sIGZvciB0aGUgbnVtYmVyIGFmdGVyIHJvdW5kaW5nLCBzaW5jZSByb3VuZGluZyBjb3VsZCBwdXNoIHRoZSBudW1iZXJcbiAgICAvLyBpbnRvIGEgZGlmZmVyZW50IHN5bWJvbCByYW5nZS5cbiAgICBsZXQgcm91bmRlZE51bWJlciA9IHRoaXMucm91bmROdW1iZXIodmFsdWUsIG9wdGlvbnMuZGlnaXRzKTtcbiAgICBsZXQgcm91bmRlZE51bWJlckFicyA9IE1hdGguYWJzKHJvdW5kZWROdW1iZXIpO1xuXG4gICAgbGV0IHN1ZmZpeCA9ICcnO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN5bWJvbEluZGV4Lmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZXQgc3ltYm9sID0gdGhpcy5zeW1ib2xJbmRleFtpXTtcblxuICAgICAgaWYgKFxuICAgICAgICBvcHRpb25zLnRydW5jYXRlICYmXG4gICAgICAgICAgcm91bmRlZE51bWJlckFicyA+PSBvcHRpb25zLnRydW5jYXRlQWZ0ZXIgJiYgcm91bmRlZE51bWJlckFicyA+PSBzeW1ib2wudmFsdWVcbiAgICAgICkge1xuICAgICAgICByb3VuZGVkTnVtYmVyID0gdGhpcy5yb3VuZE51bWJlcigodmFsdWUgLyBzeW1ib2wudmFsdWUpLCBvcHRpb25zLmRpZ2l0cyk7XG5cbiAgICAgICAgaWYgKE1hdGguYWJzKHJvdW5kZWROdW1iZXIpID09PSAxMDAwICYmIGkgPiAwKSB7XG4gICAgICAgICAgLy8gUm91bmRpbmcgY2F1c2VkIHRoZSBudW1iZXIgdG8gY3Jvc3MgaW50byB0aGUgcmFuZ2Ugb2YgdGhlIG5leHQgc3ltYm9sLlxuICAgICAgICAgIHN5bWJvbCA9IHRoaXMuc3ltYm9sSW5kZXhbaSAtIDFdO1xuICAgICAgICAgIHJvdW5kZWROdW1iZXIgLz0gMTAwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHN1ZmZpeCA9IHN5bWJvbC5sYWJlbDtcblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgb3V0cHV0ID0gcm91bmRlZE51bWJlci50b1N0cmluZygpLnJlcGxhY2UoZGVjaW1hbFBsYWNlUmVnRXhwLCAnJDEnKSArIHN1ZmZpeDtcblxuICAgIHRoaXMuc3RvcmVTaG9ydGVuU3ltYm9sKG91dHB1dCk7XG5cbiAgICBjb25zdCBsb2NhbGUgPSBvcHRpb25zLmxvY2FsZSB8fCB0aGlzLmN1cnJlbnRMb2NhbGU7XG5cbiAgICBsZXQgZGlnaXRzOiBzdHJpbmc7XG4gICAgLy8gQ2hlY2tzIHRoZSBzdHJpbmcgZW50ZXJlZCBmb3IgZm9ybWF0LiBVc2luZyB0b0xvd2VyQ2FzZSB0byBpZ25vcmUgY2FzZS5cbiAgICBzd2l0Y2ggKG9wdGlvbnMuZm9ybWF0LnRvTG93ZXJDYXNlKCkpIHtcblxuICAgICAgLy8gSW4gYSBjYXNlIHdoZXJlIGEgZGVjaW1hbCB2YWx1ZSB3YXMgbm90IHNob3J0ZW5lZCBhbmRcbiAgICAgIC8vIHRoZSBkaWdpdCBpbnB1dCBpcyAyIG9yIGhpZ2hlciwgaXQgZm9yY2VzIDIgZGlnaXRzLlxuICAgICAgLy8gRm9yIGV4YW1wbGUsIHRoaXMgcHJldmVudHMgYSB2YWx1ZSBsaWtlICQxNS41MCBmcm9tIGRpc3BsYXlpbmcgYXMgJDE1LjUuXG4gICAgICAvLyBOb3RlOiBUaGlzIHdpbGwgbmVlZCB0byBiZSByZXZpZXdlZCBpZiB3ZSBzdXBwb3J0IGN1cnJlbmNpZXMgd2l0aFxuICAgICAgLy8gdGhyZWUgZGVjaW1hbCBkaWdpdHMuXG4gICAgICBjYXNlICdjdXJyZW5jeSc6XG4gICAgICAgIGNvbnN0IGlzRGVjaW1hbCA9ICh2YWx1ZSAlIDEgIT09IDApO1xuXG4gICAgICAgIGlmIChvcHRpb25zLm1pbkRpZ2l0cykge1xuICAgICAgICAgIGRpZ2l0cyA9IGAxLiR7b3B0aW9ucy5taW5EaWdpdHN9LSR7b3B0aW9ucy5kaWdpdHN9YDtcbiAgICAgICAgfSBlbHNlIGlmIChpc0RlY2ltYWwgJiYgb3B0aW9ucy5kaWdpdHMgPj0gMikge1xuICAgICAgICAgIGRpZ2l0cyA9IGAxLjItJHtvcHRpb25zLmRpZ2l0c31gO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGRpZ2l0cyA9IGAxLjAtJHtvcHRpb25zLmRpZ2l0c31gO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQW5ndWxhciA1KyBuZWVkcyBhIHN0cmluZyBmb3IgdGhpcyBwYXJhbWV0ZXIsIGJ1dCBBbmd1bGFyIDQgbmVlZHMgYSBib29sZWFuLlxuICAgICAgICAvLyBUbyBzdXBwb3J0IGJvdGggdmVyc2lvbnMgd2UgY2FuIHN1cHBseSAnc3ltYm9sJyB3aGljaCB3aWxsIGV2YWx1YXRlIHRydXRoeSBmb3IgQW5ndWxhciA0XG4gICAgICAgIC8vIGFuZCB0aGUgYXBwcm9wcmlhdGUgc3RyaW5nIHZhbHVlIGZvciBBbmd1bGFyIDUrLlxuICAgICAgICAvLyBTZWU6IGh0dHBzOi8vYW5ndWxhci5pby9hcGkvY29tbW9uL0N1cnJlbmN5UGlwZSNwYXJhbWV0ZXJzXG4gICAgICAgIGNvbnN0IHN5bWJvbERpc3BsYXk6IGFueSA9ICdzeW1ib2wnO1xuXG4gICAgICAgIG91dHB1dCA9IFNreU51bWJlckZvcm1hdFV0aWxpdHkuZm9ybWF0TnVtYmVyKFxuICAgICAgICAgIGxvY2FsZSxcbiAgICAgICAgICBwYXJzZUZsb2F0KG91dHB1dCksXG4gICAgICAgICAgU2t5SW50bE51bWJlckZvcm1hdFN0eWxlLkN1cnJlbmN5LFxuICAgICAgICAgIGRpZ2l0cyxcbiAgICAgICAgICBvcHRpb25zLmlzbyxcbiAgICAgICAgICBzeW1ib2xEaXNwbGF5XG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICAvLyBUaGUgZm9sbG93aW5nIGlzIGEgY2F0Y2gtYWxsIHRvIGVuc3VyZSB0aGF0IGlmXG4gICAgICAvLyBhbnl0aGluZyBidXQgY3VycmVuY3kgKG9yIGEgZnV0dXJlIG9wdGlvbikgYXJlIGVudGVyZWQsXG4gICAgICAvLyBpdCB3aWxsIGJlIHRyZWF0ZWQgbGlrZSBhIG51bWJlci5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIC8vIEVuc3VyZXMgbG9jYWxpemF0aW9uIG9mIHRoZSBudW1iZXIgdG8gZW5zdXJlIGNvbW1hIGFuZFxuICAgICAgICAvLyBkZWNpbWFsIHNlcGFyYXRvclxuICAgICAgICBpZiAob3B0aW9ucy5taW5EaWdpdHMpIHtcbiAgICAgICAgICBkaWdpdHMgPSBgMS4ke29wdGlvbnMubWluRGlnaXRzfS0ke29wdGlvbnMuZGlnaXRzfWA7XG4gICAgICAgIH0gZWxzZSBpZiAob3B0aW9ucy50cnVuY2F0ZSkge1xuICAgICAgICAgIGRpZ2l0cyA9IGAxLjAtJHtvcHRpb25zLmRpZ2l0c31gO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGRpZ2l0cyA9IGAxLiR7b3B0aW9ucy5kaWdpdHN9LSR7b3B0aW9ucy5kaWdpdHN9YDtcbiAgICAgICAgfVxuXG4gICAgICAgIG91dHB1dCA9IFNreU51bWJlckZvcm1hdFV0aWxpdHkuZm9ybWF0TnVtYmVyKFxuICAgICAgICAgIGxvY2FsZSxcbiAgICAgICAgICBwYXJzZUZsb2F0KG91dHB1dCksXG4gICAgICAgICAgU2t5SW50bE51bWJlckZvcm1hdFN0eWxlLkRlY2ltYWwsXG4gICAgICAgICAgZGlnaXRzXG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLnRydW5jYXRlKSB7XG4gICAgICBvdXRwdXQgPSB0aGlzLnJlcGxhY2VTaG9ydGVuU3ltYm9sKG91dHB1dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG91dHB1dDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSb3VuZHMgYSBnaXZlbiBudW1iZXJcbiAgICpcbiAgICogSlMncyBsaW1pdGF0aW9uIC0gbnVtYmVycyBiaWdnZXIgdGhhbiBOdW1iZXIuTUlOX1NBRkVfSU5URUdFUiBvciBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuICAgKiBhcmUgbm90IGd1YXJhbnRlZWQgdG8gYmUgcmVwcmVzZW50ZWQgb3Igcm91bmRlZCBjb3JyZWN0bHlcbiAgICogQHBhcmFtIHZhbHVlIC0gdmFsdWUgdG8gcm91bmRcbiAgICogQHBhcmFtIHByZWNpc2lvbiAtIHdoYXQgcHJlY2lzaW9uIHRvIHJvdW5kIHdpdGgsIGRlZmF1bHRzIHRvIDAgZGVjaW1hbCBwbGFjZXNcbiAgICovXG4gIHByaXZhdGUgcm91bmROdW1iZXIoXG4gICAgdmFsdWU6IG51bWJlcixcbiAgICBwcmVjaXNpb246IG51bWJlciA9IDBcbiAgKTogbnVtYmVyIHtcbiAgICBpZiAocHJlY2lzaW9uIDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdTa3lJbnZhbGlkQXJndW1lbnQ6IHByZWNpc2lvbiBtdXN0IGJlID49IDAnKTtcbiAgICB9XG7igItcbiAgICAvKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tbnVsbC1rZXl3b3JkICovXG4gICAgLyogU2FuaXR5IGNoZWNrIC0gaWdub3JpbmcgY292ZXJhZ2UgYnV0IHNob3VsZCBub3QgaWdub3JlIGlmIHdlIG1ha2UgdGhpcyBtZXRob2QgcHVibGljICovXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICBpZiAoaXNOYU4odmFsdWUpIHx8IHZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG7igItcbiAgICBjb25zdCBzY2FsZWRWYWx1ZTogbnVtYmVyID0gdGhpcy5zY2FsZU51bWJlckJ5UG93ZXJPZlRlbih2YWx1ZSwgcHJlY2lzaW9uLCB0cnVlKTtcbiAgICBjb25zdCBzY2FsZWRSb3VuZGVkVmFsdWU6IG51bWJlciA9IE1hdGgucm91bmQoc2NhbGVkVmFsdWUpO1xuICAgIGNvbnN0IHVuc2NhbGVkUm91bmRlZFZhbHVlOiBudW1iZXIgPSB0aGlzLnNjYWxlTnVtYmVyQnlQb3dlck9mVGVuKFxuICAgICAgc2NhbGVkUm91bmRlZFZhbHVlLFxuICAgICAgcHJlY2lzaW9uLFxuICAgICAgZmFsc2VcbiAgICApO1xu4oCLXG4gICAgcmV0dXJuIHVuc2NhbGVkUm91bmRlZFZhbHVlO1xuICB9XG7igItcbiAgLyoqXG4gICAqIFNjYWxlcyBhIGdpdmVuIG51bWJlciBieSBhIHBvd2VyIG9mIDEwXG4gICAqIEBwYXJhbSB2YWx1ZSAtIHZhbHVlIHRvIHNjYWxlXG4gICAqIEBwYXJhbSBzY2FsYXIgLSAxMF5zY2FsYXJcbiAgICogQHBhcmFtIHNjYWxlVXAgLSB3aGV0aGVyIHRvIGluY3JlYXNlIG9yIGRlY3JlYXNlIHRoZSB2YWx1ZVxuICAgKi9cbiAgcHJpdmF0ZSBzY2FsZU51bWJlckJ5UG93ZXJPZlRlbihcbiAgICB2YWx1ZTogbnVtYmVyLFxuICAgIHNjYWxhcjogbnVtYmVyLFxuICAgIHNjYWxlVXA6IGJvb2xlYW5cbiAgKTogbnVtYmVyIHtcbiAgICBjb25zdCB2YWx1ZVN0cjogc3RyaW5nID0gdmFsdWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgIGNvbnN0IGlzRXhwb25lbnRGb3JtYXQ6IGJvb2xlYW4gPSB2YWx1ZVN0ci5pbmNsdWRlcygnZScpO1xu4oCLXG4gICAgaWYgKGlzRXhwb25lbnRGb3JtYXQpIHtcbiAgICAgIGNvbnN0IFtiYXNlLCBleHBdID0gdmFsdWVTdHIuc3BsaXQoJ2UnKTtcbiAgICAgIGNvbnN0IG5ld0V4cCA9IHNjYWxlVXAgPyAoTnVtYmVyKGV4cCkgKyBzY2FsYXIpIDogKE51bWJlcihleHApIC0gc2NhbGFyKTtcbiAgICAgIHJldHVybiBOdW1iZXIoYCR7YmFzZX1lJHtuZXdFeHB9YCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGUgPSBzY2FsZVVwID8gJ2UnIDogJ2UtJztcbiAgICAgIHJldHVybiBOdW1iZXIoYCR7dmFsdWV9JHtlfSR7c2NhbGFyfWApO1xuICAgIH1cbiAgfVxu4oCLXG4gIC8qKlxuICAgKiBTdG9yZXMgdGhlIHN5bWJvbCBhZGRlZCBmcm9tIHNob3J0ZW5pbmcgdG8gcmVhcHBseSBsYXRlci5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSBzdHJpbmcgdG8gZGVyaXZlIHRoZSBzaG9ydGVuIHN5bWJvbCBmcm9tLlxuICAgKi9cbiAgcHJpdmF0ZSBzdG9yZVNob3J0ZW5TeW1ib2wodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHN5bWJvbHM6IHN0cmluZ1tdID0gdGhpcy5zeW1ib2xJbmRleC5tYXAocyA9PiBzLmxhYmVsKTtcbiAgICBjb25zdCByZWdleHAgPSBuZXcgUmVnRXhwKHN5bWJvbHMuam9pbignfCcpLCAnaWcnKTtcbiAgICBjb25zdCBtYXRjaCA9IHZhbHVlLm1hdGNoKHJlZ2V4cCk7XG4gICAgdGhpcy5zaG9ydFN5bWJvbCA9IChtYXRjaCkgPyBtYXRjaC50b1N0cmluZygpIDogJyc7XG4gIH1cblxuICAvKipcbiAgICogTXVzdCBoYXZlIHByZXZpb3VzbHkgY2FsbGVkIHN0b3JlU2hvcnRlblN5bWJvbCB0byBoYXZlIHNvbWV0aGluZyB0byByZXBsYWNlLlxuICAgKiBGaW5kcyB0aGUgbGFzdCBudW1iZXIgaW4gdGhlIGZvcm1hdHRlZCBudW1iZXIsIGdldHMgdGhlIGluZGV4IG9mIHRoZSBwb3NpdGlvblxuICAgKiBhZnRlciB0aGF0IGNoYXJhY3RlciBhbmQgcmUtaW5zZXJ0cyB0aGUgc3ltYm9sLlxuICAgKiBXb3JrcyByZWdhcmRsZXNzIG9mIGN1cnJlbmN5IHN5bWJvbCBwb3NpdGlvbi5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSBzdHJpbmcgdG8gbW9kaWZ5LlxuICAgKi9cbiAgcHJpdmF0ZSByZXBsYWNlU2hvcnRlblN5bWJvbCh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCByZXN1bHQgPSAvKFxcZCkoPyEuKlxcZCkvZy5leGVjKHZhbHVlKTtcbiAgICBjb25zdCBwb3MgPSByZXN1bHQuaW5kZXggKyByZXN1bHQubGVuZ3RoO1xuICAgIGNvbnN0IG91dHB1dCA9IHZhbHVlLnN1YnN0cmluZygwLCBwb3MpICsgdGhpcy5zaG9ydFN5bWJvbCArIHZhbHVlLnN1YnN0cmluZyhwb3MpO1xuXG4gICAgcmV0dXJuIG91dHB1dDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U3ltYm9sKGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAvLyBUT0RPOiBOZWVkIHRvIGltcGxlbWVudCB0aGUgYXN5bmMgYGdldFN0cmluZ2AgbWV0aG9kIGluIGEgYnJlYWtpbmcgY2hhbmdlLlxuICAgIHJldHVybiB0aGlzLnJlc291cmNlc1NlcnZpY2UuZ2V0U3RyaW5nRm9yTG9jYWxlKFxuICAgICAgeyBsb2NhbGU6ICdlbl9VUycgfSxcbiAgICAgIGtleVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -1,44 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Injectable, Renderer2, RendererFactory2 } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * @internal
6
- */
7
- var SkyOverlayAdapterService = /** @class */ (function () {
8
- function SkyOverlayAdapterService(rendererFactory) {
9
- this.renderer = rendererFactory.createRenderer(undefined, undefined);
10
- }
11
- SkyOverlayAdapterService.prototype.restrictBodyScroll = function () {
12
- // Create a style element to avoid overwriting any existing inline body styles.
13
- var styleElement = this.renderer.createElement('style');
14
- var textNode = this.renderer.createText('body { overflow: hidden }');
15
- // Apply a `data-` attribute to make unit testing easier.
16
- this.renderer.setAttribute(styleElement, 'data-test-selector', 'sky-overlay-restrict-scroll-styles');
17
- this.renderer.appendChild(styleElement, textNode);
18
- this.renderer.appendChild(document.head, styleElement);
19
- if (this.styleElement) {
20
- this.destroyStyleElement();
21
- }
22
- this.styleElement = styleElement;
23
- };
24
- SkyOverlayAdapterService.prototype.releaseBodyScroll = function () {
25
- this.destroyStyleElement();
26
- };
27
- SkyOverlayAdapterService.prototype.destroyStyleElement = function () {
28
- if (this.styleElement.parentElement === document.head) {
29
- this.renderer.removeChild(document.head, this.styleElement);
30
- }
31
- };
32
- SkyOverlayAdapterService.ctorParameters = function () { return [
33
- { type: RendererFactory2 }
34
- ]; };
35
- SkyOverlayAdapterService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SkyOverlayAdapterService_Factory() { return new SkyOverlayAdapterService(i0.ɵɵinject(i0.RendererFactory2)); }, token: SkyOverlayAdapterService, providedIn: "root" });
36
- SkyOverlayAdapterService = __decorate([
37
- Injectable({
38
- providedIn: 'root'
39
- })
40
- ], SkyOverlayAdapterService);
41
- return SkyOverlayAdapterService;
42
- }());
43
- export { SkyOverlayAdapterService };
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1hZGFwdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2t5dXgvY29yZS8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvb3ZlcmxheS9vdmVybGF5LWFkYXB0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUNMLFVBQVUsRUFDVixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDOztBQUV2Qjs7R0FFRztBQUlIO0lBTUUsa0NBQ0UsZUFBaUM7UUFFakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRU0scURBQWtCLEdBQXpCO1FBQ0UsK0VBQStFO1FBQy9FLElBQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzFELElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFFdkUseURBQXlEO1FBQ3pELElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUN4QixZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLG9DQUFvQyxDQUNyQyxDQUFDO1FBRUYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFFdkQsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1NBQzVCO1FBRUQsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7SUFDbkMsQ0FBQztJQUVNLG9EQUFpQixHQUF4QjtRQUNFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTyxzREFBbUIsR0FBM0I7UUFDRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxLQUFLLFFBQVEsQ0FBQyxJQUFJLEVBQUU7WUFDckQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDN0Q7SUFDSCxDQUFDOztnQkFuQ2tCLGdCQUFnQjs7O0lBUHhCLHdCQUF3QjtRQUhwQyxVQUFVLENBQUM7WUFDVixVQUFVLEVBQUUsTUFBTTtTQUNuQixDQUFDO09BQ1csd0JBQXdCLENBMkNwQzttQ0F4REQ7Q0F3REMsQUEzQ0QsSUEyQ0M7U0EzQ1ksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQge1xuICBJbmplY3RhYmxlLFxuICBSZW5kZXJlcjIsXG4gIFJlbmRlcmVyRmFjdG9yeTJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNreU92ZXJsYXlBZGFwdGVyU2VydmljZSB7XG5cbiAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyO1xuXG4gIHByaXZhdGUgc3R5bGVFbGVtZW50OiBIVE1MU3R5bGVFbGVtZW50O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5MlxuICApIHtcbiAgICB0aGlzLnJlbmRlcmVyID0gcmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKHVuZGVmaW5lZCwgdW5kZWZpbmVkKTtcbiAgfVxuXG4gIHB1YmxpYyByZXN0cmljdEJvZHlTY3JvbGwoKTogdm9pZCB7XG4gICAgLy8gQ3JlYXRlIGEgc3R5bGUgZWxlbWVudCB0byBhdm9pZCBvdmVyd3JpdGluZyBhbnkgZXhpc3RpbmcgaW5saW5lIGJvZHkgc3R5bGVzLlxuICAgIGNvbnN0IHN0eWxlRWxlbWVudCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcbiAgICBjb25zdCB0ZXh0Tm9kZSA9IHRoaXMucmVuZGVyZXIuY3JlYXRlVGV4dCgnYm9keSB7IG92ZXJmbG93OiBoaWRkZW4gfScpO1xuXG4gICAgLy8gQXBwbHkgYSBgZGF0YS1gIGF0dHJpYnV0ZSB0byBtYWtlIHVuaXQgdGVzdGluZyBlYXNpZXIuXG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoXG4gICAgICBzdHlsZUVsZW1lbnQsXG4gICAgICAnZGF0YS10ZXN0LXNlbGVjdG9yJyxcbiAgICAgICdza3ktb3ZlcmxheS1yZXN0cmljdC1zY3JvbGwtc3R5bGVzJ1xuICAgICk7XG5cbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHN0eWxlRWxlbWVudCwgdGV4dE5vZGUpO1xuICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuaGVhZCwgc3R5bGVFbGVtZW50KTtcblxuICAgIGlmICh0aGlzLnN0eWxlRWxlbWVudCkge1xuICAgICAgdGhpcy5kZXN0cm95U3R5bGVFbGVtZW50KCk7XG4gICAgfVxuXG4gICAgdGhpcy5zdHlsZUVsZW1lbnQgPSBzdHlsZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgcmVsZWFzZUJvZHlTY3JvbGwoKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95U3R5bGVFbGVtZW50KCk7XG4gIH1cblxuICBwcml2YXRlIGRlc3Ryb3lTdHlsZUVsZW1lbnQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3R5bGVFbGVtZW50LnBhcmVudEVsZW1lbnQgPT09IGRvY3VtZW50LmhlYWQpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuaGVhZCwgdGhpcy5zdHlsZUVsZW1lbnQpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1 +0,0 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2t5dXgvY29yZS8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvb3ZlcmxheS9vdmVybGF5LWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTa3lPdmVybGF5Q29uZmlnIHtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGlmIHRoZSBvdmVybGF5IHNob3VsZCBiZSBjbG9zZWQgYWZ0ZXIgYSBuYXZpZ2F0aW9uIGNoYW5nZS5cbiAgICovXG4gIGNsb3NlT25OYXZpZ2F0aW9uPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGlmIHRoZSBvdmVybGF5IHNob3VsZCBiZSBjbG9zZWQgd2hlbiBhIHVzZXIgY2xpY2tzIG91dHNpZGUgdGhlIG92ZXJsYXkncyBjb250ZW50LlxuICAgKi9cbiAgZW5hYmxlQ2xvc2U/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgaWYgbW91c2UgaW50ZXJhY3Rpb25zIHNob3VsZCBiZSBhbGxvd2VkIGJlbG93IHRoZSBiYWNrZHJvcC5cbiAgICovXG4gIGVuYWJsZVBvaW50ZXJFdmVudHM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgaWYgd2luZG93IHNjcm9sbGluZyBzaG91bGQgYmUgZW5hYmxlZCB3aGVuIHRoZSBvdmVybGF5IGlzIG9wZW5lZC5cbiAgICovXG4gIGVuYWJsZVNjcm9sbD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBpZiB0aGUgb3ZlcmxheSdzIGJhY2tkcm9wIHNob3VsZCBiZSB2aXNpYmxlLlxuICAgKi9cbiAgc2hvd0JhY2tkcm9wPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGV4dHJhIENTUyBjbGFzc2VzIHRvIGJlIGFkZGVkIHRvIHRoZSBvdmVybGF5J3Mgd3JhcHBlciBlbGVtZW50LlxuICAgKi9cbiAgd3JhcHBlckNsYXNzPzogc3RyaW5nO1xuXG59XG4iXX0=
@@ -1,12 +0,0 @@
1
- /**
2
- * Provides contextual information to each overlay created.
3
- * @internal
4
- */
5
- var SkyOverlayContext = /** @class */ (function () {
6
- function SkyOverlayContext(config) {
7
- this.config = config;
8
- }
9
- return SkyOverlayContext;
10
- }());
11
- export { SkyOverlayContext };
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNreXV4L2NvcmUvIiwic291cmNlcyI6WyJtb2R1bGVzL292ZXJsYXkvb3ZlcmxheS1jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBOzs7R0FHRztBQUNIO0lBRUUsMkJBQ2tCLE1BQXdCO1FBQXhCLFdBQU0sR0FBTixNQUFNLENBQWtCO0lBQ3RDLENBQUM7SUFFUCx3QkFBQztBQUFELENBQUMsQUFORCxJQU1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgU2t5T3ZlcmxheUNvbmZpZ1xufSBmcm9tICcuL292ZXJsYXktY29uZmlnJztcblxuLyoqXG4gKiBQcm92aWRlcyBjb250ZXh0dWFsIGluZm9ybWF0aW9uIHRvIGVhY2ggb3ZlcmxheSBjcmVhdGVkLlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lPdmVybGF5Q29udGV4dCB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGNvbmZpZzogU2t5T3ZlcmxheUNvbmZpZ1xuICApIHsgfVxuXG59XG4iXX0=