@alauda-fe/common 1.4.28-beta.5 → 1.4.28

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 (174) hide show
  1. package/core/constants/constants.d.ts +0 -3
  2. package/core/services/intercept-deactivate.service.d.ts +2 -2
  3. package/core/services/time.service.d.ts +2 -8
  4. package/esm2022/abnormal-page/abnormal-page.component.mjs +1 -1
  5. package/esm2022/array-form-table/form/component.mjs +1 -1
  6. package/esm2022/array-form-table/key-value-form/component.mjs +1 -1
  7. package/esm2022/array-form-table/key-value-table/component.mjs +1 -1
  8. package/esm2022/array-form-table/string-array-form/component.mjs +1 -1
  9. package/esm2022/async-data/error-page/component.mjs +1 -1
  10. package/esm2022/async-data/page-state/component.mjs +1 -1
  11. package/esm2022/business/notification-disabled-container/component.mjs +1 -1
  12. package/esm2022/business/resource-select/exports/cluster-list/component.mjs +1 -1
  13. package/esm2022/business/resource-select/exports/cluster-selector/component.mjs +1 -1
  14. package/esm2022/business/resource-select/exports/icon/component.mjs +1 -1
  15. package/esm2022/business/resource-select/exports/mesh-group-selector/component.mjs +1 -1
  16. package/esm2022/business/resource-select/exports/namespace-list/component.mjs +1 -1
  17. package/esm2022/business/resource-select/exports/namespace-page/component.mjs +1 -1
  18. package/esm2022/business/resource-select/exports/namespace-selector/component.mjs +1 -1
  19. package/esm2022/business/resource-select/exports/project-list/component.mjs +1 -1
  20. package/esm2022/business/resource-select/exports/project-page/component.mjs +1 -1
  21. package/esm2022/business/resource-select/exports/project-selector/component.mjs +1 -1
  22. package/esm2022/business/resource-select/internals/data-grid/component.mjs +1 -1
  23. package/esm2022/business/resource-select/internals/meshgroup-list/component.mjs +1 -1
  24. package/esm2022/business/resource-select/internals/no-data/component.mjs +1 -1
  25. package/esm2022/business/resource-select/internals/resource-dashboard/component.mjs +1 -1
  26. package/esm2022/business/resource-select/internals/selector-popup/component.mjs +1 -1
  27. package/esm2022/chart/common/axis/axis-label.component.mjs +1 -1
  28. package/esm2022/chart/common/axis/x-axis-ticks.component.mjs +1 -1
  29. package/esm2022/chart/common/axis/x-axis.component.mjs +1 -1
  30. package/esm2022/chart/common/axis/x-plot-lines.component.mjs +1 -1
  31. package/esm2022/chart/common/axis/y-axis-ticks.component.mjs +1 -1
  32. package/esm2022/chart/common/axis/y-axis.component.mjs +1 -1
  33. package/esm2022/chart/common/axis/y-plot-lines.component.mjs +1 -1
  34. package/esm2022/chart/common/chart/chart.component.mjs +1 -1
  35. package/esm2022/chart/common/legend/legend.component.mjs +1 -1
  36. package/esm2022/chart/common/range-area/range-area.component.mjs +1 -1
  37. package/esm2022/chart/common/reference-area/reference-area.component.mjs +1 -1
  38. package/esm2022/chart/common/series/area-series.component.mjs +1 -1
  39. package/esm2022/chart/common/series/bar-path.component.mjs +1 -1
  40. package/esm2022/chart/common/series/bar-series.component.mjs +1 -1
  41. package/esm2022/chart/common/series/line-series.component.mjs +1 -1
  42. package/esm2022/chart/common/tooltip/tooltip.component.mjs +1 -1
  43. package/esm2022/chart/custom-template/dropdown-legend.mjs +1 -1
  44. package/esm2022/code/code-display-dialog/component.mjs +1 -1
  45. package/esm2022/code/k8s-yaml-display-dialog/component.mjs +1 -1
  46. package/esm2022/code/resource-yaml-display/component.mjs +1 -1
  47. package/esm2022/code/resource-yaml-editor/component.mjs +1 -1
  48. package/esm2022/code/yaml-sidebar/component.mjs +1 -1
  49. package/esm2022/core/components/tree/node/component.mjs +1 -1
  50. package/esm2022/core/components/tree/tree/component.mjs +1 -1
  51. package/esm2022/core/constants/constants.mjs +1 -4
  52. package/esm2022/core/directives/readonly-field.directive.mjs +1 -1
  53. package/esm2022/core/guards/intercept-deactivate.guard.mjs +2 -2
  54. package/esm2022/core/services/intercept-deactivate.service.mjs +1 -1
  55. package/esm2022/core/services/time.service.mjs +36 -13
  56. package/esm2022/custom-columns-setting/component.mjs +1 -1
  57. package/esm2022/disabled-container/disabled-container.component.mjs +1 -1
  58. package/esm2022/editable/editable.component.mjs +1 -1
  59. package/esm2022/editable-text/component.mjs +1 -1
  60. package/esm2022/exec/placeholder/component.mjs +1 -1
  61. package/esm2022/exec/terminal/component.mjs +1 -1
  62. package/esm2022/exec/terminal-group/component.mjs +1 -1
  63. package/esm2022/feature-gate-forbidden/component/component.mjs +1 -1
  64. package/esm2022/form/errors-mapper/errors-mapper-component/component.mjs +1 -1
  65. package/esm2022/form/errors-mapper/errors-mapper.directive.mjs +1 -1
  66. package/esm2022/form/labels-editor/component.mjs +1 -1
  67. package/esm2022/form/taints-editor/component.mjs +1 -1
  68. package/esm2022/form/upload-file/component.mjs +1 -1
  69. package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +1 -1
  70. package/esm2022/graph-canvas/components/graph-actions.component.mjs +1 -1
  71. package/esm2022/graph-canvas/components/graph-canvas.component.mjs +1 -1
  72. package/esm2022/graph-canvas/components/graph-link.component.mjs +1 -1
  73. package/esm2022/graph-canvas/components/graph-links.component.mjs +1 -1
  74. package/esm2022/grid-layout/components/grid/component.mjs +1 -1
  75. package/esm2022/grid-layout/components/grid-items/component.mjs +1 -1
  76. package/esm2022/help-document/component.mjs +1 -1
  77. package/esm2022/k8s-resource-list/footer/component.mjs +1 -1
  78. package/esm2022/k8s-shared/resource-mark/k8s-resource-mark.component.mjs +1 -1
  79. package/esm2022/k8s-shared/update-description-dialog/component.mjs +1 -1
  80. package/esm2022/k8s-shared/update-display-name-dialog/component.mjs +1 -1
  81. package/esm2022/k8s-shared/update-key-value-dialog/component.mjs +1 -1
  82. package/esm2022/lazy-component/lazy-load-component.mjs +1 -1
  83. package/esm2022/license/license-error/component.mjs +1 -1
  84. package/esm2022/list-display/component.mjs +1 -1
  85. package/esm2022/metric-chart/metric-chart.component.mjs +1 -1
  86. package/esm2022/metric-chart/metric-time-pick.mjs +1 -1
  87. package/esm2022/multi-search/action-input/component.mjs +1 -1
  88. package/esm2022/multi-search/form/component.mjs +1 -1
  89. package/esm2022/multi-search/multi-search-tags/component.mjs +1 -1
  90. package/esm2022/mutable/mosaic/mosaic.component.mjs +1 -1
  91. package/esm2022/notification/feedback-notification/component.mjs +1 -1
  92. package/esm2022/overview-banner/overview-banner.component.mjs +1 -1
  93. package/esm2022/page-guard/component/component.mjs +1 -1
  94. package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.component.mjs +1 -1
  95. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.mjs +1 -1
  96. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.mjs +1 -1
  97. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.component.mjs +1 -1
  98. package/esm2022/page-scaffold/page/notices/maintenance.component.mjs +1 -1
  99. package/esm2022/page-scaffold/page/notices/notice.component.mjs +1 -1
  100. package/esm2022/page-scaffold/page/page.component.mjs +1 -1
  101. package/esm2022/page-scaffold/page/page.module.mjs +6 -5
  102. package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +1 -1
  103. package/esm2022/page-scaffold/page-header/common-layout/namespace-select/component.mjs +1 -1
  104. package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +1 -1
  105. package/esm2022/page-scaffold/page-header/component.mjs +1 -1
  106. package/esm2022/page-scaffold/page-header/enterprise-support-status/component.mjs +1 -1
  107. package/esm2022/page-scaffold/page-header/header-notify/component/header-notify.component.mjs +1 -1
  108. package/esm2022/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.mjs +1 -1
  109. package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +1 -1
  110. package/esm2022/page-scaffold/page-header/help-menu/module.mjs +9 -8
  111. package/esm2022/pie-derivative-chart/donut-status/component.mjs +1 -1
  112. package/esm2022/pie-derivative-chart/radial-bar/radial-bar-chart.component.mjs +1 -1
  113. package/esm2022/pod-status/component.mjs +1 -1
  114. package/esm2022/searchable-selector/component.mjs +1 -1
  115. package/esm2022/skeleton/item/component.mjs +1 -1
  116. package/esm2022/skeleton/nav-skeleton/component.mjs +1 -1
  117. package/esm2022/table/component.mjs +1 -1
  118. package/esm2022/table/module.mjs +12 -11
  119. package/esm2022/translate/constants.mjs +1 -2
  120. package/esm2022/translate/intl-format.pipes.mjs +293 -0
  121. package/esm2022/translate/public-api.mjs +4 -3
  122. package/esm2022/translate/relative-time-manager.service.mjs +87 -0
  123. package/esm2022/translate/translate.directive.mjs +5 -4
  124. package/esm2022/translate/translate.module.mjs +22 -3
  125. package/esm2022/translate/translate.pipe.mjs +7 -8
  126. package/esm2022/translate/translate.service.mjs +721 -142
  127. package/esm2022/translate/types.mjs +1 -1
  128. package/esm2022/view-chart/custom-template/dropdown-legend.mjs +1 -1
  129. package/esm2022/view-chart/legend/legend.component.mjs +1 -1
  130. package/esm2022/view-chart/view-chart.component.mjs +1 -1
  131. package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +1 -1
  132. package/esm2022/view-zchart/legend/legend.component.mjs +1 -1
  133. package/esm2022/view-zchart/view-zchart.component.mjs +1 -1
  134. package/esm2022/widget/card-section/card-section.component.mjs +1 -1
  135. package/esm2022/widget/confirm-delete/confirm-delete.component.mjs +1 -1
  136. package/esm2022/widget/current-time/component.mjs +1 -1
  137. package/esm2022/widget/date-range-picker/component.mjs +1 -1
  138. package/esm2022/widget/field-set/column/component.mjs +2 -2
  139. package/esm2022/widget/field-set/group/component.mjs +1 -1
  140. package/esm2022/widget/field-set/item/component.mjs +1 -1
  141. package/esm2022/widget/foldable-block/component.mjs +1 -1
  142. package/esm2022/widget/foldable-item-in-table/component.mjs +1 -1
  143. package/esm2022/widget/loading-mask/loading-mask.component.mjs +1 -1
  144. package/esm2022/widget/password-input/component.mjs +1 -1
  145. package/esm2022/widget/relative-time/component.mjs +1 -1
  146. package/esm2022/widget/resource-label/component.mjs +1 -1
  147. package/esm2022/widget/resource-multi-select/component.mjs +1 -1
  148. package/esm2022/widget/search-panel/component.mjs +1 -1
  149. package/esm2022/widget/search-panel/search-item/component.mjs +1 -1
  150. package/esm2022/widget/status-icon/status-icon.component.mjs +1 -1
  151. package/esm2022/widget/tags-label/component.mjs +1 -1
  152. package/esm2022/widget/terminating-tag/component.mjs +1 -1
  153. package/esm2022/widget/text-ellipsis/component.mjs +1 -1
  154. package/esm2022/widget/text-with-url/component.mjs +1 -1
  155. package/esm2022/widget/zero-state/zero-state.component.mjs +1 -1
  156. package/esm2022/workload-status-icon/component.mjs +1 -1
  157. package/esm2022/xterm/xterm-terminal/xterm-terminal.component.mjs +1 -1
  158. package/esm2022/xterm/xterm.component.mjs +1 -1
  159. package/package.json +2 -2
  160. package/page-scaffold/page/page.module.d.ts +4 -3
  161. package/page-scaffold/page-header/help-menu/module.d.ts +2 -1
  162. package/table/component.d.ts +1 -1
  163. package/table/module.d.ts +2 -1
  164. package/translate/intl-format.pipes.d.ts +122 -0
  165. package/translate/public-api.d.ts +3 -2
  166. package/translate/relative-time-manager.service.d.ts +32 -0
  167. package/translate/translate.module.d.ts +4 -2
  168. package/translate/translate.pipe.d.ts +4 -5
  169. package/translate/translate.service.d.ts +292 -20
  170. package/translate/types.d.ts +16 -0
  171. package/code/resource-yaml-display/schema/component.d.ts +0 -61
  172. package/code/yaml-sidebar/yaml-examples.d.ts +0 -8
  173. package/esm2022/code/resource-yaml-display/schema/component.mjs +0 -531
  174. package/esm2022/code/yaml-sidebar/yaml-examples.mjs +0 -340
@@ -0,0 +1,87 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * @module translate
4
+ */
5
+ import { Injectable } from '@angular/core';
6
+ import { Subject } from 'rxjs';
7
+ import * as i0 from "@angular/core";
8
+ /**
9
+ * 相对时间管理器服务
10
+ *
11
+ * 用于优化大量相对时间显示的性能,通过共享定时器避免创建过多独立计时器。
12
+ * 当页面存在大量相对时间显示时,使用统一的刷新频率来批量更新所有实例。
13
+ */
14
+ export class RelativeTimeManagerService {
15
+ constructor() {
16
+ this.refreshSubjects = new Map();
17
+ this.timers = new Map();
18
+ }
19
+ /**
20
+ * 获取指定刷新间隔的 Subject
21
+ * 多个 pipe 实例可以共享同一个刷新频率
22
+ */
23
+ getRefreshSubject(interval) {
24
+ let subject = this.refreshSubjects.get(interval);
25
+ if (!subject) {
26
+ subject = new Subject();
27
+ this.refreshSubjects.set(interval, subject);
28
+ this.startTimer(interval);
29
+ }
30
+ return subject;
31
+ }
32
+ /**
33
+ * 释放指定间隔的订阅
34
+ * 当没有 pipe 实例使用时,自动清理定时器
35
+ */
36
+ releaseRefreshSubject(interval) {
37
+ const subject = this.refreshSubjects.get(interval);
38
+ if (subject && !subject.observed) {
39
+ this.stopTimer(interval);
40
+ subject.complete();
41
+ this.refreshSubjects.delete(interval);
42
+ }
43
+ }
44
+ startTimer(interval) {
45
+ if (this.timers.has(interval)) {
46
+ return; // 定时器已存在
47
+ }
48
+ const timerId = window.setInterval(() => {
49
+ const subject = this.refreshSubjects.get(interval);
50
+ if (subject?.observed) {
51
+ subject.next();
52
+ }
53
+ else {
54
+ // 没有订阅者时自动清理
55
+ this.stopTimer(interval);
56
+ if (subject) {
57
+ subject.complete();
58
+ this.refreshSubjects.delete(interval);
59
+ }
60
+ }
61
+ }, interval);
62
+ this.timers.set(interval, timerId);
63
+ }
64
+ stopTimer(interval) {
65
+ const timerId = this.timers.get(interval);
66
+ if (timerId !== undefined) {
67
+ clearInterval(timerId);
68
+ this.timers.delete(interval);
69
+ }
70
+ }
71
+ ngOnDestroy() {
72
+ // 清理所有定时器和 subjects
73
+ this.timers.forEach(timerId => clearInterval(timerId));
74
+ this.timers.clear();
75
+ this.refreshSubjects.forEach(subject => subject.complete());
76
+ this.refreshSubjects.clear();
77
+ }
78
+ static { this.ɵfac = function RelativeTimeManagerService_Factory(t) { return new (t || RelativeTimeManagerService)(); }; }
79
+ static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: RelativeTimeManagerService, factory: RelativeTimeManagerService.ɵfac, providedIn: 'root' }); }
80
+ }
81
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RelativeTimeManagerService, [{
82
+ type: Injectable,
83
+ args: [{
84
+ providedIn: 'root',
85
+ }]
86
+ }], null, null); })();
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRpdmUtdGltZS1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvdHJhbnNsYXRlL3JlbGF0aXZlLXRpbWUtbWFuYWdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFFL0I7Ozs7O0dBS0c7QUFJSCxNQUFNLE9BQU8sMEJBQTBCO0lBSHZDO1FBSW1CLG9CQUFlLEdBQUcsSUFBSSxHQUFHLEVBQXlCLENBQUM7UUFDbkQsV0FBTSxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO0tBcUVyRDtJQW5FQzs7O09BR0c7SUFDSCxpQkFBaUIsQ0FBQyxRQUFnQjtRQUNoQyxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVqRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDYixPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztZQUM5QixJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDNUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixDQUFDO1FBRUQsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7T0FHRztJQUNILHFCQUFxQixDQUFDLFFBQWdCO1FBQ3BDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25ELElBQUksT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDekIsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLENBQUM7SUFDSCxDQUFDO0lBRU8sVUFBVSxDQUFDLFFBQWdCO1FBQ2pDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUM5QixPQUFPLENBQUMsU0FBUztRQUNuQixDQUFDO1FBRUQsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUU7WUFDdEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbkQsSUFBSSxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUM7Z0JBQ3RCLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNqQixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sYUFBYTtnQkFDYixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUN6QixJQUFJLE9BQU8sRUFBRSxDQUFDO29CQUNaLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDbkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3hDLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRWIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFTyxTQUFTLENBQUMsUUFBZ0I7UUFDaEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUMsSUFBSSxPQUFPLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDMUIsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULG9CQUFvQjtRQUNwQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFcEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQy9CLENBQUM7MkZBdEVVLDBCQUEwQjt1RUFBMUIsMEJBQTBCLFdBQTFCLDBCQUEwQixtQkFGekIsTUFBTTs7aUZBRVAsMEJBQTBCO2NBSHRDLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIHRyYW5zbGF0ZVxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqIOebuOWvueaXtumXtOeuoeeQhuWZqOacjeWKoVxuICpcbiAqIOeUqOS6juS8mOWMluWkp+mHj+ebuOWvueaXtumXtOaYvuekuueahOaAp+iDve+8jOmAmui/h+WFseS6q+WumuaXtuWZqOmBv+WFjeWIm+W7uui/h+WkmueLrOeri+iuoeaXtuWZqOOAglxuICog5b2T6aG16Z2i5a2Y5Zyo5aSn6YeP55u45a+55pe26Ze05pi+56S65pe277yM5L2/55So57uf5LiA55qE5Yi35paw6aKR546H5p2l5om56YeP5pu05paw5omA5pyJ5a6e5L6L44CCXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBSZWxhdGl2ZVRpbWVNYW5hZ2VyU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVmcmVzaFN1YmplY3RzID0gbmV3IE1hcDxudW1iZXIsIFN1YmplY3Q8dm9pZD4+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGltZXJzID0gbmV3IE1hcDxudW1iZXIsIG51bWJlcj4oKTtcblxuICAvKipcbiAgICog6I635Y+W5oyH5a6a5Yi35paw6Ze06ZqU55qEIFN1YmplY3RcbiAgICog5aSa5LiqIHBpcGUg5a6e5L6L5Y+v5Lul5YWx5Lqr5ZCM5LiA5Liq5Yi35paw6aKR546HXG4gICAqL1xuICBnZXRSZWZyZXNoU3ViamVjdChpbnRlcnZhbDogbnVtYmVyKTogU3ViamVjdDx2b2lkPiB7XG4gICAgbGV0IHN1YmplY3QgPSB0aGlzLnJlZnJlc2hTdWJqZWN0cy5nZXQoaW50ZXJ2YWwpO1xuXG4gICAgaWYgKCFzdWJqZWN0KSB7XG4gICAgICBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICAgIHRoaXMucmVmcmVzaFN1YmplY3RzLnNldChpbnRlcnZhbCwgc3ViamVjdCk7XG4gICAgICB0aGlzLnN0YXJ0VGltZXIoaW50ZXJ2YWwpO1xuICAgIH1cblxuICAgIHJldHVybiBzdWJqZWN0O1xuICB9XG5cbiAgLyoqXG4gICAqIOmHiuaUvuaMh+WumumXtOmalOeahOiuoumYhVxuICAgKiDlvZPmsqHmnIkgcGlwZSDlrp7kvovkvb/nlKjml7bvvIzoh6rliqjmuIXnkIblrprml7blmahcbiAgICovXG4gIHJlbGVhc2VSZWZyZXNoU3ViamVjdChpbnRlcnZhbDogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3Qgc3ViamVjdCA9IHRoaXMucmVmcmVzaFN1YmplY3RzLmdldChpbnRlcnZhbCk7XG4gICAgaWYgKHN1YmplY3QgJiYgIXN1YmplY3Qub2JzZXJ2ZWQpIHtcbiAgICAgIHRoaXMuc3RvcFRpbWVyKGludGVydmFsKTtcbiAgICAgIHN1YmplY3QuY29tcGxldGUoKTtcbiAgICAgIHRoaXMucmVmcmVzaFN1YmplY3RzLmRlbGV0ZShpbnRlcnZhbCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzdGFydFRpbWVyKGludGVydmFsOiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50aW1lcnMuaGFzKGludGVydmFsKSkge1xuICAgICAgcmV0dXJuOyAvLyDlrprml7blmajlt7LlrZjlnKhcbiAgICB9XG5cbiAgICBjb25zdCB0aW1lcklkID0gd2luZG93LnNldEludGVydmFsKCgpID0+IHtcbiAgICAgIGNvbnN0IHN1YmplY3QgPSB0aGlzLnJlZnJlc2hTdWJqZWN0cy5nZXQoaW50ZXJ2YWwpO1xuICAgICAgaWYgKHN1YmplY3Q/Lm9ic2VydmVkKSB7XG4gICAgICAgIHN1YmplY3QubmV4dCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8g5rKh5pyJ6K6i6ZiF6ICF5pe26Ieq5Yqo5riF55CGXG4gICAgICAgIHRoaXMuc3RvcFRpbWVyKGludGVydmFsKTtcbiAgICAgICAgaWYgKHN1YmplY3QpIHtcbiAgICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7XG4gICAgICAgICAgdGhpcy5yZWZyZXNoU3ViamVjdHMuZGVsZXRlKGludGVydmFsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sIGludGVydmFsKTtcblxuICAgIHRoaXMudGltZXJzLnNldChpbnRlcnZhbCwgdGltZXJJZCk7XG4gIH1cblxuICBwcml2YXRlIHN0b3BUaW1lcihpbnRlcnZhbDogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3QgdGltZXJJZCA9IHRoaXMudGltZXJzLmdldChpbnRlcnZhbCk7XG4gICAgaWYgKHRpbWVySWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgY2xlYXJJbnRlcnZhbCh0aW1lcklkKTtcbiAgICAgIHRoaXMudGltZXJzLmRlbGV0ZShpbnRlcnZhbCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgLy8g5riF55CG5omA5pyJ5a6a5pe25Zmo5ZKMIHN1YmplY3RzXG4gICAgdGhpcy50aW1lcnMuZm9yRWFjaCh0aW1lcklkID0+IGNsZWFySW50ZXJ2YWwodGltZXJJZCkpO1xuICAgIHRoaXMudGltZXJzLmNsZWFyKCk7XG5cbiAgICB0aGlzLnJlZnJlc2hTdWJqZWN0cy5mb3JFYWNoKHN1YmplY3QgPT4gc3ViamVjdC5jb21wbGV0ZSgpKTtcbiAgICB0aGlzLnJlZnJlc2hTdWJqZWN0cy5jbGVhcigpO1xuICB9XG59XG4iXX0=
@@ -1,8 +1,8 @@
1
1
  import { Directive, Host, Input, IterableDiffers, TemplateRef, ViewContainerRef, } from '@angular/core';
2
- import { TEMPLATE_OPTIONS } from '../core/public-api';
3
2
  import { TranslateService } from './translate.service';
4
3
  import * as i0 from "@angular/core";
5
4
  import * as i1 from "./translate.service";
5
+ const TEMPLATE_INTERPOLATE = /(\{\{([^}]+)\}\}|\{([^}]+)\})/g;
6
6
  const placeholder = (val) => ({
7
7
  type: 'placeholder',
8
8
  val: val.trim(),
@@ -53,14 +53,15 @@ export class TranslateDirective {
53
53
  if (content.length === 0) {
54
54
  return [];
55
55
  }
56
- const matches = content.matchAll(TEMPLATE_OPTIONS.interpolate);
56
+ const matches = content.matchAll(TEMPLATE_INTERPOLATE);
57
57
  const result = [];
58
58
  let prevIndex = 0;
59
59
  for (const match of matches) {
60
60
  if (match.index > prevIndex) {
61
61
  result.push(text(content.slice(prevIndex, match.index)));
62
62
  }
63
- result.push(placeholder(match[1]));
63
+ const placeholderContent = match[2] || match[3];
64
+ result.push(placeholder(placeholderContent));
64
65
  prevIndex = match.index + match[0].length;
65
66
  }
66
67
  if (prevIndex < content.length) {
@@ -161,4 +162,4 @@ export class TranslateTextDirective {
161
162
  }], () => [{ type: i0.TemplateRef }, { type: TranslateDirective, decorators: [{
162
163
  type: Host
163
164
  }] }], null); })();
164
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy90cmFuc2xhdGUvdHJhbnNsYXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULElBQUksRUFDSixLQUFLLEVBR0wsZUFBZSxFQUNmLFdBQVcsRUFDWCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQU92RCxNQUFNLFdBQVcsR0FBRyxDQUFDLEdBQVcsRUFBVSxFQUFFLENBQUMsQ0FBQztJQUM1QyxJQUFJLEVBQUUsYUFBYTtJQUNuQixHQUFHLEVBQUUsR0FBRyxDQUFDLElBQUksRUFBRTtDQUNoQixDQUFDLENBQUM7QUFDSCxNQUFNLElBQUksR0FBRyxDQUFDLEdBQVcsRUFBVSxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztBQUU5RCxNQUFNLE9BQU8sYUFBYTtJQUN4QixZQUNrQixXQUE2QixFQUM3QixRQUFRLEVBQUU7UUFEVixnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7UUFDN0IsVUFBSyxHQUFMLEtBQUssQ0FBSztJQUN6QixDQUFDO0lBRUosTUFBTTtRQUNKLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3JCLENBQUM7Q0FDRjtBQUdELE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsWUFDbUIsYUFBK0IsRUFDL0IsU0FBMkIsRUFDM0IsT0FBd0I7UUFGeEIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBQy9CLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBWW5DLFVB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LFNBQVM7ZUFBQyxFQUFFLFFBQVEsRUFBRSxvQkFBb0IsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFOztzQkFJMUQsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgRG9DaGVjayxcbiAgSG9zdCxcbiAgSW5wdXQsXG4gIEl0ZXJhYmxlQ2hhbmdlcyxcbiAgSXRlcmFibGVEaWZmZXIsXG4gIEl0ZXJhYmxlRGlmZmVycyxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gJ3RzLWVzc2VudGlhbHMnO1xuXG5pbXBvcnQgeyBURU1QTEFURV9PUFRJT05TIH0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcblxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4vdHJhbnNsYXRlLnNlcnZpY2UnO1xuXG5pbnRlcmZhY2UgSW5saW5lIHtcbiAgdHlwZTogJ3BsYWNlaG9sZGVyJyB8ICd0ZXh0JztcbiAgdmFsOiBzdHJpbmc7XG59XG5cbmNvbnN0IHBsYWNlaG9sZGVyID0gKHZhbDogc3RyaW5nKTogSW5saW5lID0+ICh7XG4gIHR5cGU6ICdwbGFjZWhvbGRlcicsXG4gIHZhbDogdmFsLnRyaW0oKSxcbn0pO1xuY29uc3QgdGV4dCA9ICh2YWw6IHN0cmluZyk6IElubGluZSA9PiAoeyB0eXBlOiAndGV4dCcsIHZhbCB9KTtcblxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0ZVZpZXcge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgcHVibGljIHJlYWRvbmx5IG1hdGNoID0gJycsXG4gICkge31cblxuICBpc1RleHQoKSB7XG4gICAgcmV0dXJuICF0aGlzLm1hdGNoO1xuICB9XG59XG5cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1thY2xUcmFuc2xhdGVdJywgc3RhbmRhbG9uZTogdHJ1ZSB9KVxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIERvQ2hlY2sge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkaWZmZXJzOiBJdGVyYWJsZURpZmZlcnMsXG4gICkge31cblxuICBASW5wdXQoKSBzZXQgYWNsVHJhbnNsYXRlKGtleTogc3RyaW5nKSB7XG4gICAgdGhpcy50cmFuc2xhdGVLZXkgPSBrZXk7XG4gICAgdGhpcy5kaXJ0eSA9IHRydWU7XG4gIH1cblxuICB0cmFuc2xhdGVLZXk6IHN0cmluZyB8IERpY3Rpb25hcnk8c3RyaW5nPjtcblxuICBwcml2YXRlIGxvY2FsZTogc3RyaW5nO1xuXG4gIHByaXZhdGUgZGlydHkgPSBmYWxzZTtcblxuICBwcml2YXRlIHRleHRWaWV3OiBUcmFuc2xhdGVWaWV3O1xuXG4gIHByaXZhdGUgdmlld3M6IERpY3Rpb25hcnk8VHJhbnNsYXRlVmlldz4gPSB7fTtcblxuICBwcml2YXRlIGRpZmZlcjogSXRlcmFibGVEaWZmZXI8SW5saW5lPiB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgdmlld0luZGV4ZXM6IERpY3Rpb25hcnk8bnVtYmVyW10+ID0ge307XG5cbiAgcHJpdmF0ZSBpbmxpbmVzOiBJbmxpbmVbXTtcblxuICBpbmxpbmVUcmFja2VyID0gKGluZGV4OiBudW1iZXIsIGl0ZW06IElubGluZSkgPT5cbiAgICBpdGVtLnR5cGUgPT09ICd0ZXh0J1xuICAgICAgPyBgJHtpdGVtLnZhbH1fJHtpbmRleH1gXG4gICAgICA6IGAke2l0ZW0udmFsfV8ke2luZGV4fV8ke3RoaXMudmlld3NbaXRlbS52YWxdID8gJ2hhc192aWV3JyA6ICdub192aWV3J31gO1xuXG4gIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXJ0eSB8fCB0aGlzLmxvY2FsZSAhPT0gdGhpcy50cmFuc2xhdGUubG9jYWxlKSB7XG4gICAgICB0aGlzLmxvY2FsZSA9IHRoaXMudHJhbnNsYXRlLmxvY2FsZTtcbiAgICAgIHRoaXMuaW5saW5lcyA9IHRoaXMuc2VwYXJhdGVDb250ZW50KFxuICAgICAgICB0aGlzLnRyYW5zbGF0ZS5nZXRSYXcodGhpcy50cmFuc2xhdGVLZXkpLFxuICAgICAgKTtcblxuICAgICAgaWYgKCF0aGlzLmRpZmZlcikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHRoaXMuZGlmZmVyID0gdGhpcy5kaWZmZXJzLmZpbmQoW10pLmNyZWF0ZSh0aGlzLmlubGluZVRyYWNrZXIpO1xuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBmaW5kIGRpZmZlciBmb3IgdHJhbnNsYXRlIGRpcmVjdGl2ZSBpbmxpbmVzYCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhpcy51cGRhdGUodGhpcy5pbmxpbmVzKTtcbiAgICB9XG4gIH1cblxuICBzZXBhcmF0ZUNvbnRlbnQoY29udGVudDogc3RyaW5nKSB7XG4gICAgaWYgKGNvbnRlbnQubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgY29uc3QgbWF0Y2hlcyA9IGNvbnRlbnQubWF0Y2hBbGwoVEVNUExBVEVfT1BUSU9OUy5pbnRlcnBvbGF0ZSk7XG5cbiAgICBjb25zdCByZXN1bHQ6IElubGluZVtdID0gW107XG4gICAgbGV0IHByZXZJbmRleCA9IDA7XG5cbiAgICBmb3IgKGNvbnN0IG1hdGNoIG9mIG1hdGNoZXMpIHtcbiAgICAgIGlmIChtYXRjaC5pbmRleCA+IHByZXZJbmRleCkge1xuICAgICAgICByZXN1bHQucHVzaCh0ZXh0KGNvbnRlbnQuc2xpY2UocHJldkluZGV4LCBtYXRjaC5pbmRleCkpKTtcbiAgICAgIH1cblxuICAgICAgcmVzdWx0LnB1c2gocGxhY2Vob2xkZXIobWF0Y2hbMV0pKTtcblxuICAgICAgcHJldkluZGV4ID0gbWF0Y2guaW5kZXggKyBtYXRjaFswXS5sZW5ndGg7XG4gICAgfVxuXG4gICAgaWYgKHByZXZJbmRleCA8IGNvbnRlbnQubGVuZ3RoKSB7XG4gICAgICByZXN1bHQucHVzaCh0ZXh0KGNvbnRlbnQuc2xpY2UocHJldkluZGV4LCBjb250ZW50Lmxlbmd0aCkpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGUoaW5saW5lczogSW5saW5lW10pIHtcbiAgICBpZiAoIXRoaXMudGV4dFZpZXcpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ3RyYW5zbGF0ZSBkaXJlY3RpdmUgbmVlZCBhY2xUcmFuc2xhdGVUZXh0IHRvIHJlbmRlciB0ZXh0JyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmRpZmZlcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNoYW5nZXMgPSB0aGlzLmRpZmZlci5kaWZmKGlubGluZXMpO1xuXG4gICAgaWYgKCFjaGFuZ2VzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5hcHBseUNoYW5nZXMoY2hhbmdlcyk7XG5cbiAgICB0aGlzLmRpcnR5ID0gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGFwcGx5Q2hhbmdlcyhjaGFuZ2VzOiBJdGVyYWJsZUNoYW5nZXM8SW5saW5lPikge1xuICAgIGNoYW5nZXMuZm9yRWFjaE9wZXJhdGlvbigoY2hhbmdlLCBhZGp1c3RlZFByZXZpb3VzSW5kZXgsIGN1cnJlbnRJbmRleCkgPT4ge1xuICAgICAgaWYgKGNoYW5nZS5wcmV2aW91c0luZGV4ID09PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSBjaGFuZ2UuaXRlbTtcbiAgICAgICAgY29uc3QgaW5kZXggPSBjdXJyZW50SW5kZXggPT09IG51bGwgPyB1bmRlZmluZWQgOiBjdXJyZW50SW5kZXg7XG4gICAgICAgIGlmIChpdGVtLnR5cGUgPT09ICd0ZXh0Jykge1xuICAgICAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcoXG4gICAgICAgICAgICB0aGlzLnRleHRWaWV3LnRlbXBsYXRlUmVmLFxuICAgICAgICAgICAgeyAkaW1wbGljaXQ6IGl0ZW0udmFsIH0sXG4gICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHZpZXcgPSB0aGlzLnZpZXdzW2l0ZW0udmFsXTtcbiAgICAgICAgICBpZiAodmlldykge1xuICAgICAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyhcbiAgICAgICAgICAgICAgdmlldy50ZW1wbGF0ZVJlZixcbiAgICAgICAgICAgICAgbnVsbCxcbiAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KFxuICAgICAgICAgICAgICB0aGlzLnRleHRWaWV3LnRlbXBsYXRlUmVmLFxuICAgICAgICAgICAgICB7ICRpbXBsaWNpdDogaXRlbS52YWwgfSxcbiAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMudmlld0luZGV4ZXNbaXRlbS52YWxdID0gdGhpcy52aWV3SW5kZXhlc1tpdGVtLnZhbF0gfHwgW2luZGV4XTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChjdXJyZW50SW5kZXggPT09IG51bGwpIHtcbiAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyLnJlbW92ZShcbiAgICAgICAgICBhZGp1c3RlZFByZXZpb3VzSW5kZXggPT09IG51bGwgPyB1bmRlZmluZWQgOiBhZGp1c3RlZFByZXZpb3VzSW5kZXgsXG4gICAgICAgICk7XG4gICAgICB9IGVsc2UgaWYgKGFkanVzdGVkUHJldmlvdXNJbmRleCAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB2aWV3ID0gdGhpcy52aWV3Q29udGFpbmVyLmdldChhZGp1c3RlZFByZXZpb3VzSW5kZXgpITtcbiAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyLm1vdmUodmlldywgY3VycmVudEluZGV4KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFkZFZpZXcodmlldzogVHJhbnNsYXRlVmlldykge1xuICAgIGlmICh2aWV3LmlzVGV4dCgpKSB7XG4gICAgICB0aGlzLnRleHRWaWV3ID0gdmlldztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52aWV3c1t2aWV3Lm1hdGNoXSA9IHZpZXc7XG4gICAgICB0aGlzLnVwZGF0ZSh0aGlzLmlubGluZXMpO1xuICAgIH1cbiAgfVxufVxuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbYWNsVHJhbnNsYXRlTWF0Y2hdJywgc3RhbmRhbG9uZTogdHJ1ZSB9KVxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0ZU1hdGNoRGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICBASG9zdCgpIHByaXZhdGUgcmVhZG9ubHkgYWNsVHJhbnNsYXRlOiBUcmFuc2xhdGVEaXJlY3RpdmUsXG4gICkge31cblxuICBASW5wdXQoKSBzZXQgYWNsVHJhbnNsYXRlTWF0Y2godmFsOiBzdHJpbmcpIHtcbiAgICB0aGlzLmFjbFRyYW5zbGF0ZS5hZGRWaWV3KG5ldyBUcmFuc2xhdGVWaWV3KHRoaXMudGVtcGxhdGVSZWYsIHZhbCkpO1xuICB9XG59XG5cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1thY2xUcmFuc2xhdGVUZXh0XScsIHN0YW5kYWxvbmU6IHRydWUgfSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVUZXh0RGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgQEhvc3QoKSBwcml2YXRlIHJlYWRvbmx5IGFjbFRyYW5zbGF0ZTogVHJhbnNsYXRlRGlyZWN0aXZlLFxuICApIHtcbiAgICB0aGlzLmFjbFRyYW5zbGF0ZS5hZGRWaWV3KG5ldyBUcmFuc2xhdGVWaWV3KHRlbXBsYXRlUmVmKSk7XG4gIH1cbn1cbiJdfQ==
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy90cmFuc2xhdGUvdHJhbnNsYXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULElBQUksRUFDSixLQUFLLEVBR0wsZUFBZSxFQUNmLFdBQVcsRUFDWCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQU92RCxNQUFNLG9CQUFvQixHQUFHLGdDQUFnQyxDQUFDO0FBRTlELE1BQU0sV0FBVyxHQUFHLENBQUMsR0FBVyxFQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLElBQUksRUFBRSxhQUFhO0lBQ25CLEdBQUcsRUFBRSxHQUFHLENBQUMsSUFBSSxFQUFFO0NBQ2hCLENBQUMsQ0FBQztBQUVILE1BQU0sSUFBSSxHQUFHLENBQUMsR0FBVyxFQUFVLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0FBRTlELE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQ2tCLFdBQTZCLEVBQzdCLFFBQVEsRUFBRTtRQURWLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUM3QixVQUFLLEdBQUwsS0FBSyxDQUFLO0lBQ3pCLENBQUM7SUFFSixNQUFNO1FBQ0osT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDckIsQ0FBQztDQUNGO0FBR0QsTUFBTSxPQUFPLGtCQUFrQjtJQUM3QixZQUNtQixhQUErQixFQUMvQixTQUEyQixFQUMzQixPQUF3QjtRQUZ4QixrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFDL0IsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFZbkMsVUFBSyxHQUFHLEtB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QkFBc0I7b0VBQXRCLHNCQUFzQjs7aUZBQXRCLHNCQUFzQjtjQURsQyxTQUFTO2VBQUMsRUFBRSxRQUFRLEVBQUUsb0JBQW9CLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRTs7c0JBSTFELElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIERvQ2hlY2ssXG4gIEhvc3QsXG4gIElucHV0LFxuICBJdGVyYWJsZUNoYW5nZXMsXG4gIEl0ZXJhYmxlRGlmZmVyLFxuICBJdGVyYWJsZURpZmZlcnMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tICd0cy1lc3NlbnRpYWxzJztcblxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4vdHJhbnNsYXRlLnNlcnZpY2UnO1xuXG5pbnRlcmZhY2UgSW5saW5lIHtcbiAgdHlwZTogJ3BsYWNlaG9sZGVyJyB8ICd0ZXh0JztcbiAgdmFsOiBzdHJpbmc7XG59XG5cbmNvbnN0IFRFTVBMQVRFX0lOVEVSUE9MQVRFID0gLyhcXHtcXHsoW159XSspXFx9XFx9fFxceyhbXn1dKylcXH0pL2c7XG5cbmNvbnN0IHBsYWNlaG9sZGVyID0gKHZhbDogc3RyaW5nKTogSW5saW5lID0+ICh7XG4gIHR5cGU6ICdwbGFjZWhvbGRlcicsXG4gIHZhbDogdmFsLnRyaW0oKSxcbn0pO1xuXG5jb25zdCB0ZXh0ID0gKHZhbDogc3RyaW5nKTogSW5saW5lID0+ICh7IHR5cGU6ICd0ZXh0JywgdmFsIH0pO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNsYXRlVmlldyB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICBwdWJsaWMgcmVhZG9ubHkgbWF0Y2ggPSAnJyxcbiAgKSB7fVxuXG4gIGlzVGV4dCgpIHtcbiAgICByZXR1cm4gIXRoaXMubWF0Y2g7XG4gIH1cbn1cblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2FjbFRyYW5zbGF0ZV0nLCBzdGFuZGFsb25lOiB0cnVlIH0pXG5leHBvcnQgY2xhc3MgVHJhbnNsYXRlRGlyZWN0aXZlIGltcGxlbWVudHMgRG9DaGVjayB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycyxcbiAgKSB7fVxuXG4gIEBJbnB1dCgpIHNldCBhY2xUcmFuc2xhdGUoa2V5OiBzdHJpbmcpIHtcbiAgICB0aGlzLnRyYW5zbGF0ZUtleSA9IGtleTtcbiAgICB0aGlzLmRpcnR5ID0gdHJ1ZTtcbiAgfVxuXG4gIHRyYW5zbGF0ZUtleTogc3RyaW5nIHwgRGljdGlvbmFyeTxzdHJpbmc+O1xuXG4gIHByaXZhdGUgbG9jYWxlOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBkaXJ0eSA9IGZhbHNlO1xuXG4gIHByaXZhdGUgdGV4dFZpZXc6IFRyYW5zbGF0ZVZpZXc7XG5cbiAgcHJpdmF0ZSB2aWV3czogRGljdGlvbmFyeTxUcmFuc2xhdGVWaWV3PiA9IHt9O1xuXG4gIHByaXZhdGUgZGlmZmVyOiBJdGVyYWJsZURpZmZlcjxJbmxpbmU+IHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSB2aWV3SW5kZXhlczogRGljdGlvbmFyeTxudW1iZXJbXT4gPSB7fTtcblxuICBwcml2YXRlIGlubGluZXM6IElubGluZVtdO1xuXG4gIGlubGluZVRyYWNrZXIgPSAoaW5kZXg6IG51bWJlciwgaXRlbTogSW5saW5lKSA9PlxuICAgIGl0ZW0udHlwZSA9PT0gJ3RleHQnXG4gICAgICA/IGAke2l0ZW0udmFsfV8ke2luZGV4fWBcbiAgICAgIDogYCR7aXRlbS52YWx9XyR7aW5kZXh9XyR7dGhpcy52aWV3c1tpdGVtLnZhbF0gPyAnaGFzX3ZpZXcnIDogJ25vX3ZpZXcnfWA7XG5cbiAgbmdEb0NoZWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpcnR5IHx8IHRoaXMubG9jYWxlICE9PSB0aGlzLnRyYW5zbGF0ZS5sb2NhbGUpIHtcbiAgICAgIHRoaXMubG9jYWxlID0gdGhpcy50cmFuc2xhdGUubG9jYWxlO1xuICAgICAgdGhpcy5pbmxpbmVzID0gdGhpcy5zZXBhcmF0ZUNvbnRlbnQoXG4gICAgICAgIHRoaXMudHJhbnNsYXRlLmdldFJhdyh0aGlzLnRyYW5zbGF0ZUtleSksXG4gICAgICApO1xuXG4gICAgICBpZiAoIXRoaXMuZGlmZmVyKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgdGhpcy5kaWZmZXIgPSB0aGlzLmRpZmZlcnMuZmluZChbXSkuY3JlYXRlKHRoaXMuaW5saW5lVHJhY2tlcik7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGZpbmQgZGlmZmVyIGZvciB0cmFuc2xhdGUgZGlyZWN0aXZlIGlubGluZXNgKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGlzLnVwZGF0ZSh0aGlzLmlubGluZXMpO1xuICAgIH1cbiAgfVxuXG4gIHNlcGFyYXRlQ29udGVudChjb250ZW50OiBzdHJpbmcpIHtcbiAgICBpZiAoY29udGVudC5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBjb25zdCBtYXRjaGVzID0gY29udGVudC5tYXRjaEFsbChURU1QTEFURV9JTlRFUlBPTEFURSk7XG5cbiAgICBjb25zdCByZXN1bHQ6IElubGluZVtdID0gW107XG4gICAgbGV0IHByZXZJbmRleCA9IDA7XG5cbiAgICBmb3IgKGNvbnN0IG1hdGNoIG9mIG1hdGNoZXMpIHtcbiAgICAgIGlmIChtYXRjaC5pbmRleCA+IHByZXZJbmRleCkge1xuICAgICAgICByZXN1bHQucHVzaCh0ZXh0KGNvbnRlbnQuc2xpY2UocHJldkluZGV4LCBtYXRjaC5pbmRleCkpKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcGxhY2Vob2xkZXJDb250ZW50ID0gbWF0Y2hbMl0gfHwgbWF0Y2hbM107XG4gICAgICByZXN1bHQucHVzaChwbGFjZWhvbGRlcihwbGFjZWhvbGRlckNvbnRlbnQpKTtcblxuICAgICAgcHJldkluZGV4ID0gbWF0Y2guaW5kZXggKyBtYXRjaFswXS5sZW5ndGg7XG4gICAgfVxuXG4gICAgaWYgKHByZXZJbmRleCA8IGNvbnRlbnQubGVuZ3RoKSB7XG4gICAgICByZXN1bHQucHVzaCh0ZXh0KGNvbnRlbnQuc2xpY2UocHJldkluZGV4LCBjb250ZW50Lmxlbmd0aCkpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGUoaW5saW5lczogSW5saW5lW10pIHtcbiAgICBpZiAoIXRoaXMudGV4dFZpZXcpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ3RyYW5zbGF0ZSBkaXJlY3RpdmUgbmVlZCBhY2xUcmFuc2xhdGVUZXh0IHRvIHJlbmRlciB0ZXh0JyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmRpZmZlcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNoYW5nZXMgPSB0aGlzLmRpZmZlci5kaWZmKGlubGluZXMpO1xuXG4gICAgaWYgKCFjaGFuZ2VzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5hcHBseUNoYW5nZXMoY2hhbmdlcyk7XG5cbiAgICB0aGlzLmRpcnR5ID0gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGFwcGx5Q2hhbmdlcyhjaGFuZ2VzOiBJdGVyYWJsZUNoYW5nZXM8SW5saW5lPikge1xuICAgIGNoYW5nZXMuZm9yRWFjaE9wZXJhdGlvbigoY2hhbmdlLCBhZGp1c3RlZFByZXZpb3VzSW5kZXgsIGN1cnJlbnRJbmRleCkgPT4ge1xuICAgICAgaWYgKGNoYW5nZS5wcmV2aW91c0luZGV4ID09PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSBjaGFuZ2UuaXRlbTtcbiAgICAgICAgY29uc3QgaW5kZXggPSBjdXJyZW50SW5kZXggPT09IG51bGwgPyB1bmRlZmluZWQgOiBjdXJyZW50SW5kZXg7XG4gICAgICAgIGlmIChpdGVtLnR5cGUgPT09ICd0ZXh0Jykge1xuICAgICAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcoXG4gICAgICAgICAgICB0aGlzLnRleHRWaWV3LnRlbXBsYXRlUmVmLFxuICAgICAgICAgICAgeyAkaW1wbGljaXQ6IGl0ZW0udmFsIH0sXG4gICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHZpZXcgPSB0aGlzLnZpZXdzW2l0ZW0udmFsXTtcbiAgICAgICAgICBpZiAodmlldykge1xuICAgICAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyhcbiAgICAgICAgICAgICAgdmlldy50ZW1wbGF0ZVJlZixcbiAgICAgICAgICAgICAgbnVsbCxcbiAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KFxuICAgICAgICAgICAgICB0aGlzLnRleHRWaWV3LnRlbXBsYXRlUmVmLFxuICAgICAgICAgICAgICB7ICRpbXBsaWNpdDogaXRlbS52YWwgfSxcbiAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMudmlld0luZGV4ZXNbaXRlbS52YWxdID0gdGhpcy52aWV3SW5kZXhlc1tpdGVtLnZhbF0gfHwgW2luZGV4XTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChjdXJyZW50SW5kZXggPT09IG51bGwpIHtcbiAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyLnJlbW92ZShcbiAgICAgICAgICBhZGp1c3RlZFByZXZpb3VzSW5kZXggPT09IG51bGwgPyB1bmRlZmluZWQgOiBhZGp1c3RlZFByZXZpb3VzSW5kZXgsXG4gICAgICAgICk7XG4gICAgICB9IGVsc2UgaWYgKGFkanVzdGVkUHJldmlvdXNJbmRleCAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB2aWV3ID0gdGhpcy52aWV3Q29udGFpbmVyLmdldChhZGp1c3RlZFByZXZpb3VzSW5kZXgpITtcbiAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyLm1vdmUodmlldywgY3VycmVudEluZGV4KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFkZFZpZXcodmlldzogVHJhbnNsYXRlVmlldykge1xuICAgIGlmICh2aWV3LmlzVGV4dCgpKSB7XG4gICAgICB0aGlzLnRleHRWaWV3ID0gdmlldztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52aWV3c1t2aWV3Lm1hdGNoXSA9IHZpZXc7XG4gICAgICB0aGlzLnVwZGF0ZSh0aGlzLmlubGluZXMpO1xuICAgIH1cbiAgfVxufVxuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbYWNsVHJhbnNsYXRlTWF0Y2hdJywgc3RhbmRhbG9uZTogdHJ1ZSB9KVxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0ZU1hdGNoRGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICBASG9zdCgpIHByaXZhdGUgcmVhZG9ubHkgYWNsVHJhbnNsYXRlOiBUcmFuc2xhdGVEaXJlY3RpdmUsXG4gICkge31cblxuICBASW5wdXQoKSBzZXQgYWNsVHJhbnNsYXRlTWF0Y2godmFsOiBzdHJpbmcpIHtcbiAgICB0aGlzLmFjbFRyYW5zbGF0ZS5hZGRWaWV3KG5ldyBUcmFuc2xhdGVWaWV3KHRoaXMudGVtcGxhdGVSZWYsIHZhbCkpO1xuICB9XG59XG5cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1thY2xUcmFuc2xhdGVUZXh0XScsIHN0YW5kYWxvbmU6IHRydWUgfSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVUZXh0RGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgQEhvc3QoKSBwcml2YXRlIHJlYWRvbmx5IGFjbFRyYW5zbGF0ZTogVHJhbnNsYXRlRGlyZWN0aXZlLFxuICApIHtcbiAgICB0aGlzLmFjbFRyYW5zbGF0ZS5hZGRWaWV3KG5ldyBUcmFuc2xhdGVWaWV3KHRlbXBsYXRlUmVmKSk7XG4gIH1cbn1cbiJdfQ==
@@ -3,6 +3,7 @@
3
3
  * @module translate
4
4
  */
5
5
  import { NgModule } from '@angular/core';
6
+ import { IntlNumberPipe, IntlCurrencyPipe, IntlPercentPipe, IntlDatePipe, IntlDateTimePipe, IntlRelativeTimePipe, } from './intl-format.pipes';
6
7
  import { TranslateDirective, TranslateMatchDirective, TranslateTextDirective, } from './translate.directive';
7
8
  import { TranslatePipe } from './translate.pipe';
8
9
  import * as i0 from "@angular/core";
@@ -11,6 +12,12 @@ export const TRANSLATE_MODULE = [
11
12
  TranslateDirective,
12
13
  TranslateMatchDirective,
13
14
  TranslateTextDirective,
15
+ IntlNumberPipe,
16
+ IntlCurrencyPipe,
17
+ IntlPercentPipe,
18
+ IntlDatePipe,
19
+ IntlDateTimePipe,
20
+ IntlRelativeTimePipe,
14
21
  ];
15
22
  /**
16
23
  * @deprecated use `TranslatePipe` or `TRANSLATE_MODULE` except `.forRoot`
@@ -30,8 +37,20 @@ export class TranslateModule {
30
37
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(TranslateModule, { imports: [TranslatePipe,
31
38
  TranslateDirective,
32
39
  TranslateMatchDirective,
33
- TranslateTextDirective], exports: [TranslatePipe,
40
+ TranslateTextDirective,
41
+ IntlNumberPipe,
42
+ IntlCurrencyPipe,
43
+ IntlPercentPipe,
44
+ IntlDatePipe,
45
+ IntlDateTimePipe,
46
+ IntlRelativeTimePipe], exports: [TranslatePipe,
34
47
  TranslateDirective,
35
48
  TranslateMatchDirective,
36
- TranslateTextDirective] }); })();
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy90cmFuc2xhdGUvdHJhbnNsYXRlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsdUJBQXVCLEVBQ3ZCLHNCQUFzQixHQUN2QixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFFakQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsYUFBYTtJQUNiLGtCQUFrQjtJQUNsQix1QkFBdUI7SUFDdkIsc0JBQXNCO0NBQ2QsQ0FBQztBQUVYOztHQUVHO0FBS0gsTUFBTSxPQUFPLGVBQWU7Z0ZBQWYsZUFBZTttRUFBZixlQUFlOzs7aUZBQWYsZUFBZTtjQUozQixRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQztnQkFDOUIsT0FBTyxFQUFFLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQzthQUMvQjs7d0ZBQ1ksZUFBZSxjQWIxQixhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLHVCQUF1QjtRQUN2QixzQkFBc0IsYUFIdEIsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQix1QkFBdUI7UUFDdkIsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgdHJhbnNsYXRlXG4gKi9cblxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgVHJhbnNsYXRlRGlyZWN0aXZlLFxuICBUcmFuc2xhdGVNYXRjaERpcmVjdGl2ZSxcbiAgVHJhbnNsYXRlVGV4dERpcmVjdGl2ZSxcbn0gZnJvbSAnLi90cmFuc2xhdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICcuL3RyYW5zbGF0ZS5waXBlJztcblxuZXhwb3J0IGNvbnN0IFRSQU5TTEFURV9NT0RVTEUgPSBbXG4gIFRyYW5zbGF0ZVBpcGUsXG4gIFRyYW5zbGF0ZURpcmVjdGl2ZSxcbiAgVHJhbnNsYXRlTWF0Y2hEaXJlY3RpdmUsXG4gIFRyYW5zbGF0ZVRleHREaXJlY3RpdmUsXG5dIGFzIGNvbnN0O1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIHVzZSBgVHJhbnNsYXRlUGlwZWAgb3IgYFRSQU5TTEFURV9NT0RVTEVgIGV4Y2VwdCBgLmZvclJvb3RgXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFsuLi5UUkFOU0xBVEVfTU9EVUxFXSxcbiAgZXhwb3J0czogWy4uLlRSQU5TTEFURV9NT0RVTEVdLFxufSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVNb2R1bGUge31cbiJdfQ==
49
+ TranslateTextDirective,
50
+ IntlNumberPipe,
51
+ IntlCurrencyPipe,
52
+ IntlPercentPipe,
53
+ IntlDatePipe,
54
+ IntlDateTimePipe,
55
+ IntlRelativeTimePipe] }); })();
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy90cmFuc2xhdGUvdHJhbnNsYXRlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFDTCxjQUFjLEVBQ2QsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixZQUFZLEVBQ1osZ0JBQWdCLEVBQ2hCLG9CQUFvQixHQUNyQixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsdUJBQXVCLEVBQ3ZCLHNCQUFzQixHQUN2QixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFFakQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsYUFBYTtJQUNiLGtCQUFrQjtJQUNsQix1QkFBdUI7SUFDdkIsc0JBQXNCO0lBQ3RCLGNBQWM7SUFDZCxnQkFBZ0I7SUFDaEIsZUFBZTtJQUNmLFlBQVk7SUFDWixnQkFBZ0I7SUFDaEIsb0JBQW9CO0NBQ1osQ0FBQztBQUVYOztHQUVHO0FBS0gsTUFBTSxPQUFPLGVBQWU7Z0ZBQWYsZUFBZTttRUFBZixlQUFlOzs7aUZBQWYsZUFBZTtjQUozQixRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQztnQkFDOUIsT0FBTyxFQUFFLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQzthQUMvQjs7d0ZBQ1ksZUFBZSxjQW5CMUIsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQix1QkFBdUI7UUFDdkIsc0JBQXNCO1FBQ3RCLGNBQWM7UUFDZCxnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsb0JBQW9CLGFBVHBCLGFBQWE7UUFDYixrQkFBa0I7UUFDbEIsdUJBQXVCO1FBQ3ZCLHNCQUFzQjtRQUN0QixjQUFjO1FBQ2QsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFDZixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIHRyYW5zbGF0ZVxuICovXG5cbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIEludGxOdW1iZXJQaXBlLFxuICBJbnRsQ3VycmVuY3lQaXBlLFxuICBJbnRsUGVyY2VudFBpcGUsXG4gIEludGxEYXRlUGlwZSxcbiAgSW50bERhdGVUaW1lUGlwZSxcbiAgSW50bFJlbGF0aXZlVGltZVBpcGUsXG59IGZyb20gJy4vaW50bC1mb3JtYXQucGlwZXMnO1xuaW1wb3J0IHtcbiAgVHJhbnNsYXRlRGlyZWN0aXZlLFxuICBUcmFuc2xhdGVNYXRjaERpcmVjdGl2ZSxcbiAgVHJhbnNsYXRlVGV4dERpcmVjdGl2ZSxcbn0gZnJvbSAnLi90cmFuc2xhdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICcuL3RyYW5zbGF0ZS5waXBlJztcblxuZXhwb3J0IGNvbnN0IFRSQU5TTEFURV9NT0RVTEUgPSBbXG4gIFRyYW5zbGF0ZVBpcGUsXG4gIFRyYW5zbGF0ZURpcmVjdGl2ZSxcbiAgVHJhbnNsYXRlTWF0Y2hEaXJlY3RpdmUsXG4gIFRyYW5zbGF0ZVRleHREaXJlY3RpdmUsXG4gIEludGxOdW1iZXJQaXBlLFxuICBJbnRsQ3VycmVuY3lQaXBlLFxuICBJbnRsUGVyY2VudFBpcGUsXG4gIEludGxEYXRlUGlwZSxcbiAgSW50bERhdGVUaW1lUGlwZSxcbiAgSW50bFJlbGF0aXZlVGltZVBpcGUsXG5dIGFzIGNvbnN0O1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIHVzZSBgVHJhbnNsYXRlUGlwZWAgb3IgYFRSQU5TTEFURV9NT0RVTEVgIGV4Y2VwdCBgLmZvclJvb3RgXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFsuLi5UUkFOU0xBVEVfTU9EVUxFXSxcbiAgZXhwb3J0czogWy4uLlRSQU5TTEFURV9NT0RVTEVdLFxufSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVNb2R1bGUge31cbiJdfQ==
@@ -2,16 +2,15 @@
2
2
  * @packageDocumentation
3
3
  * @module translate
4
4
  */
5
- import { ChangeDetectorRef, Injector, Pipe, } from '@angular/core';
5
+ import { ChangeDetectorRef, inject, Pipe, } from '@angular/core';
6
6
  import { Subject, takeUntil } from 'rxjs';
7
7
  import { isEqual } from '../core/public-api';
8
8
  import { TranslateService } from './translate.service';
9
9
  import * as i0 from "@angular/core";
10
10
  export class TranslatePipe {
11
- constructor(injector) {
12
- this.injector = injector;
13
- this.cdr = this.injector.get(ChangeDetectorRef);
14
- this.translate = this.injector.get(TranslateService);
11
+ constructor() {
12
+ this.cdr = inject(ChangeDetectorRef);
13
+ this.translate = inject(TranslateService);
15
14
  this.destroy$$ = new Subject();
16
15
  this.translate.translationsAdded$
17
16
  .pipe(takeUntil(this.destroy$$))
@@ -53,7 +52,7 @@ export class TranslatePipe {
53
52
  this.destroy$$.next();
54
53
  this.destroy$$.complete();
55
54
  }
56
- static { this.ɵfac = function TranslatePipe_Factory(t) { return new (t || TranslatePipe)(i0.ɵɵdirectiveInject(i0.Injector, 16)); }; }
55
+ static { this.ɵfac = function TranslatePipe_Factory(t) { return new (t || TranslatePipe)(); }; }
57
56
  static { this.ɵpipe = /*@__PURE__*/ i0.ɵɵdefinePipe({ name: "translate", type: TranslatePipe, pure: false, standalone: true }); }
58
57
  }
59
58
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TranslatePipe, [{
@@ -63,5 +62,5 @@ export class TranslatePipe {
63
62
  pure: false,
64
63
  standalone: true,
65
64
  }]
66
- }], () => [{ type: i0.Injector }], null); })();
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvdHJhbnNsYXRlL3RyYW5zbGF0ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsUUFBUSxFQUVSLElBQUksR0FFTCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQVF2RCxNQUFNLE9BQU8sYUFBYTtJQVd4QixZQUErQixRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBVmhDLFFBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzNDLGNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBT2hELGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRy9DLElBQUksQ0FBQyxTQUFTLENBQUMsa0JBQWtCO2FBQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQy9CLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUF1QixFQUFFLElBQWM7UUFDL0MsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbkMsSUFDRSxPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDMUIsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzVCLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQ3pCLENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDcEIsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVmLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNyRSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzlCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRU8sV0FBVyxDQUFDLEdBQWlCLEVBQUUsSUFBYztRQUNuRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7UUFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU8sT0FBTztRQUNiLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDdkIsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7OEVBNURVLGFBQWE7bUZBQWIsYUFBYTs7aUZBQWIsYUFBYTtjQUx6QixJQUFJO2VBQUM7Z0JBQ0osSUFBSSxFQUFFLFdBQVc7Z0JBQ2pCLElBQUksRUFBRSxLQUFLO2dCQUNYLFVBQVUsRUFBRSxJQUFJO2FBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgdHJhbnNsYXRlXG4gKi9cblxuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIEluamVjdG9yLFxuICBPbkRlc3Ryb3ksXG4gIFBpcGUsXG4gIFBpcGVUcmFuc2Zvcm0sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgaXNFcXVhbCB9IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuL3RyYW5zbGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IFRyYW5zbGF0ZUtleSB9IGZyb20gJy4vdHlwZXMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICd0cmFuc2xhdGUnLFxuICBwdXJlOiBmYWxzZSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgVHJhbnNsYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0sIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY2RyID0gdGhpcy5pbmplY3Rvci5nZXQoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgdmFsdWU6IHN0cmluZztcbiAgcHJpdmF0ZSBsYXN0S2V5PzogVHJhbnNsYXRlS2V5O1xuICBwcml2YXRlIGxhc3REYXRhPzogdW5rbm93bjtcbiAgcHJpdmF0ZSBvbkNoYW5nZTogU3Vic2NyaXB0aW9uIHwgbnVsbDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHRoaXMudHJhbnNsYXRlLnRyYW5zbGF0aW9uc0FkZGVkJFxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQkKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgdHJhbnNmb3JtKGtleTogVHJhbnNsYXRlS2V5IHwgYW55LCBkYXRhPzogdW5rbm93bikge1xuICAgIGNvbnN0IHsgbG9jYWxlJCB9ID0gdGhpcy50cmFuc2xhdGU7XG4gICAgaWYgKFxuICAgICAgaXNFcXVhbChrZXksIHRoaXMubGFzdEtleSkgJiZcbiAgICAgIGlzRXF1YWwoZGF0YSwgdGhpcy5sYXN0RGF0YSkgJiZcbiAgICAgICFpc0VxdWFsKGtleSwgdGhpcy52YWx1ZSlcbiAgICApIHtcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlO1xuICAgIH1cblxuICAgIHRoaXMubGFzdERhdGEgPSBkYXRhO1xuICAgIHRoaXMudXBkYXRlVmFsdWUoa2V5LCBkYXRhKTtcbiAgICB0aGlzLmRpc3Bvc2UoKTtcblxuICAgIHRoaXMub25DaGFuZ2UgPSBsb2NhbGUkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmICh0aGlzLmxhc3RLZXkpIHtcbiAgICAgICAgdGhpcy5sYXN0S2V5ID0gbnVsbDtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShrZXksIGRhdGEpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVZhbHVlKGtleTogVHJhbnNsYXRlS2V5LCBkYXRhPzogdW5rbm93bikge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy50cmFuc2xhdGUuZ2V0KGtleSwgZGF0YSk7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMubGFzdEtleSA9IGtleTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHByaXZhdGUgZGlzcG9zZSgpIHtcbiAgICBpZiAodGhpcy5vbkNoYW5nZSkge1xuICAgICAgdGhpcy5vbkNoYW5nZS51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5vbkNoYW5nZSA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
65
+ }], () => [], null); })();
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvdHJhbnNsYXRlL3RyYW5zbGF0ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsTUFBTSxFQUVOLElBQUksR0FFTCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQVF2RCxNQUFNLE9BQU8sYUFBYTtJQVd4QjtRQVZpQixRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDaEMsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBT3JDLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRy9DLElBQUksQ0FBQyxTQUFTLENBQUMsa0JBQWtCO2FBQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQy9CLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUF1QixFQUFFLElBQW1CO1FBQ3BELE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ25DLElBQ0UsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQzFCLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUM1QixDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUN6QixDQUFDO1lBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3BCLENBQUM7UUFFRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFZixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDckUsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO2dCQUNwQixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUM5QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVPLFdBQVcsQ0FBQyxHQUFpQixFQUFFLElBQW1CO1FBQ3hELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztRQUNuQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTyxPQUFPO1FBQ2IsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUN2QixDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQzs4RUE1RFUsYUFBYTttRkFBYixhQUFhOztpRkFBYixhQUFhO2NBTHpCLElBQUk7ZUFBQztnQkFDSixJQUFJLEVBQUUsV0FBVztnQkFDakIsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsVUFBVSxFQUFFLElBQUk7YUFDakIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSB0cmFuc2xhdGVcbiAqL1xuXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgaW5qZWN0LFxuICBPbkRlc3Ryb3ksXG4gIFBpcGUsXG4gIFBpcGVUcmFuc2Zvcm0sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgaXNFcXVhbCB9IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuL3RyYW5zbGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IFRyYW5zbGF0ZUtleSwgVGVtcGxhdGVEYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ3RyYW5zbGF0ZScsXG4gIHB1cmU6IGZhbHNlLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcblxuICBwcml2YXRlIHZhbHVlOiBzdHJpbmc7XG4gIHByaXZhdGUgbGFzdEtleT86IFRyYW5zbGF0ZUtleTtcbiAgcHJpdmF0ZSBsYXN0RGF0YT86IFRlbXBsYXRlRGF0YTtcbiAgcHJpdmF0ZSBvbkNoYW5nZTogU3Vic2NyaXB0aW9uIHwgbnVsbDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy50cmFuc2xhdGUudHJhbnNsYXRpb25zQWRkZWQkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICB0cmFuc2Zvcm0oa2V5OiBUcmFuc2xhdGVLZXkgfCBhbnksIGRhdGE/OiBUZW1wbGF0ZURhdGEpIHtcbiAgICBjb25zdCB7IGxvY2FsZSQgfSA9IHRoaXMudHJhbnNsYXRlO1xuICAgIGlmIChcbiAgICAgIGlzRXF1YWwoa2V5LCB0aGlzLmxhc3RLZXkpICYmXG4gICAgICBpc0VxdWFsKGRhdGEsIHRoaXMubGFzdERhdGEpICYmXG4gICAgICAhaXNFcXVhbChrZXksIHRoaXMudmFsdWUpXG4gICAgKSB7XG4gICAgICByZXR1cm4gdGhpcy52YWx1ZTtcbiAgICB9XG5cbiAgICB0aGlzLmxhc3REYXRhID0gZGF0YTtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKGtleSwgZGF0YSk7XG4gICAgdGhpcy5kaXNwb3NlKCk7XG5cbiAgICB0aGlzLm9uQ2hhbmdlID0gbG9jYWxlJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5sYXN0S2V5KSB7XG4gICAgICAgIHRoaXMubGFzdEtleSA9IG51bGw7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoa2V5LCBkYXRhKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiB0aGlzLnZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVWYWx1ZShrZXk6IFRyYW5zbGF0ZUtleSwgZGF0YT86IFRlbXBsYXRlRGF0YSkge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy50cmFuc2xhdGUuZ2V0KGtleSwgZGF0YSk7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMubGFzdEtleSA9IGtleTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHByaXZhdGUgZGlzcG9zZSgpIHtcbiAgICBpZiAodGhpcy5vbkNoYW5nZSkge1xuICAgICAgdGhpcy5vbkNoYW5nZS51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5vbkNoYW5nZSA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==