@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
@@ -41,5 +41,5 @@ export class SkeletonItemComponent {
41
41
  }], customStyle: [{
42
42
  type: Input
43
43
  }] }); })();
44
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SkeletonItemComponent, { className: "SkeletonItemComponent" }); })();
44
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SkeletonItemComponent, { className: "SkeletonItemComponent", filePath: "skeleton/item/component.ts", lineNumber: 13 }); })();
45
45
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3NrZWxldG9uL2l0ZW0vY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3NrZWxldG9uL2l0ZW0vdGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7SUNReEUsOEJBS0M7SUFDQywwQkFHRTtJQUNKLGlCQUFNOztBRE5SLE1BQU0sT0FBTyxxQkFBcUI7SUFObEM7UUFRRSxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBR2YsU0FBSSxHQUFpQixNQUFNLENBQUM7UUFHNUIsYUFBUSxHQUFHLEtBQUssQ0FBQztLQVFsQjtJQUhDLFFBQVEsQ0FBQyxJQUFrQjtRQUN6QixPQUFPLHVDQUF1QyxJQUFJLEVBQUUsQ0FBQztJQUN2RCxDQUFDO3NGQWZVLHFCQUFxQjtvRUFBckIscUJBQXFCO1lDWmxDLDhCQU9DOztZQUNDLDJFQUtDO1lBTUgsaUJBQU07O1lBbEJKLDJEQUErQjtZQUsvQixBQUpBLDhFQUdFLDRCQUNxQjtZQUdwQixlQUFzQjtZQUF0QiwyQ0FBc0I7OztpRkRHZCxxQkFBcUI7Y0FOakMsU0FBUzsyQkFDRSxtQkFBbUIsbUJBR1osdUJBQXVCLENBQUMsTUFBTTtnQkFJL0MsTUFBTTtrQkFETCxLQUFLO1lBSU4sSUFBSTtrQkFESCxLQUFLO1lBSU4sUUFBUTtrQkFEUCxLQUFLO1lBSU4sV0FBVztrQkFEVixLQUFLOztrRkFWSyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdHJpbmdNYXAgfSBmcm9tICcuLi8uLi9jb3JlL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgdHlwZSBza2VsZXRvblR5cGUgPSAncmVjdCcgfCAncm91bmQnIHwgJ2ltYWdlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLXNrZWxldG9uLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJ3RlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2tlbGV0b25JdGVtQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgYWN0aXZlID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgdHlwZTogc2tlbGV0b25UeXBlID0gJ3JlY3QnO1xuXG4gIEBJbnB1dCgpXG4gIGlzU3F1YXJlID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgY3VzdG9tU3R5bGU6IFN0cmluZ01hcDtcblxuICBnZXRDbGFzcyh0eXBlOiBza2VsZXRvblR5cGUpIHtcbiAgICByZXR1cm4gYGFjbC1za2VsZXRvbi1pdGVtIGFjbC1za2VsZXRvbi1pdGVtLSR7dHlwZX1gO1xuICB9XG59XG4iLCI8ZGl2XG4gIFtjbGFzc109XCJ0eXBlIHwgcHVyZTogZ2V0Q2xhc3NcIlxuICBbbmdDbGFzc109XCJ7XG4gICAgJ2FjbC1za2VsZXRvbi1pdGVtLWFjdGl2ZSc6IHRoaXMuYWN0aXZlLFxuICAgICdhY2wtc2tlbGV0b24taXRlbS1pc1NxdWFyZSc6IHRoaXMuaXNTcXVhcmVcbiAgfVwiXG4gIFtuZ1N0eWxlXT1cImN1c3RvbVN0eWxlXCJcbj5cbiAgPHN2Z1xuICAgICpuZ0lmPVwidHlwZSA9PT0gJ2ltYWdlJ1wiXG4gICAgY2xhc3M9XCJhY2wtc2tlbGV0b24taW1hZ2Utc3ZnXCJcbiAgICB2aWV3Qm94PVwiMCAwIDEwOTggMTAyNFwiXG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gID5cbiAgICA8cGF0aFxuICAgICAgZD1cIk0zNjUuNzE0Mjg2IDMyOS4xNDI4NTdxMCA0NS43MTQyODYtMzIuMDM2NTcxIDc3LjY3NzcxNHQtNzcuNjc3NzE0IDMyLjAzNjU3MS03Ny42Nzc3MTQtMzIuMDM2NTcxLTMyLjAzNjU3MS03Ny42Nzc3MTQgMzIuMDM2NTcxLTc3LjY3NzcxNCA3Ny42Nzc3MTQtMzIuMDM2NTcxIDc3LjY3NzcxNCAzMi4wMzY1NzEgMzIuMDM2NTcxIDc3LjY3NzcxNHpNOTUwLjg1NzE0MyA1NDguNTcxNDI5bDAgMjU2LTgwNC41NzE0MjkgMCAwLTEwOS43MTQyODYgMTgyLjg1NzE0My0xODIuODU3MTQzIDkxLjQyODU3MSA5MS40Mjg1NzEgMjkyLjU3MTQyOS0yOTIuNTcxNDI5ek0xMDA1LjcxNDI4NiAxNDYuMjg1NzE0bC05MTQuMjg1NzE0IDBxLTcuNDYwNTcxIDAtMTIuODczMTQzIDUuNDEyNTcxdC01LjQxMjU3MSAxMi44NzMxNDNsMCA2OTQuODU3MTQzcTAgNy40NjA1NzEgNS40MTI1NzEgMTIuODczMTQzdDEyLjg3MzE0MyA1LjQxMjU3MWw5MTQuMjg1NzE0IDBxNy40NjA1NzEgMCAxMi44NzMxNDMtNS40MTI1NzF0NS40MTI1NzEtMTIuODczMTQzbDAtNjk0Ljg1NzE0M3EwLTcuNDYwNTcxLTUuNDEyNTcxLTEyLjg3MzE0M3QtMTIuODczMTQzLTUuNDEyNTcxek0xMDk3LjE0Mjg1NyAxNjQuNTcxNDI5bDAgNjk0Ljg1NzE0M3EwIDM3Ljc0MTcxNC0yNi44NDM0MjkgNjQuNTg1MTQzdC02NC41ODUxNDMgMjYuODQzNDI5bC05MTQuMjg1NzE0IDBxLTM3Ljc0MTcxNCAwLTY0LjU4NTE0My0yNi44NDM0Mjl0LTI2Ljg0MzQyOS02NC41ODUxNDNsMC02OTQuODU3MTQzcTAtMzcuNzQxNzE0IDI2Ljg0MzQyOS02NC41ODUxNDN0NjQuNTg1MTQzLTI2Ljg0MzQyOWw5MTQuMjg1NzE0IDBxMzcuNzQxNzE0IDAgNjQuNTg1MTQzIDI2Ljg0MzQyOXQyNi44NDM0MjkgNjQuNTg1MTQzelwiXG4gICAgICBjbGFzcz1cImFjbC1za2VsZXRvbi1pbWFnZS1wYXRoXCJcbiAgICAvPlxuICA8L3N2Zz5cbjwvZGl2PlxuIl19
@@ -32,5 +32,5 @@ export class NavSkeletonComponent {
32
32
  type: Component,
33
33
  args: [{ selector: 'acl-nav-skeleton', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ul>\n <li\n *ngFor=\"let nav of navList\"\n class=\"nav-item\"\n >\n <acl-skeleton-item\n [isSquare]=\"true\"\n [active]=\"true\"\n ></acl-skeleton-item>\n <acl-skeleton-item\n [customStyle]=\"{ width: nav * 30 + 'px' }\"\n [active]=\"true\"\n ></acl-skeleton-item>\n <acl-skeleton-item\n [isSquare]=\"true\"\n [active]=\"true\"\n ></acl-skeleton-item>\n </li>\n</ul>\n", styles: [".nav-item{display:flex;align-items:center;margin-bottom:20px;padding:0 20px}.nav-item acl-skeleton-item:nth-child(1){margin-right:12px}.nav-item acl-skeleton-item:nth-child(2){flex:1}\n"] }]
34
34
  }], null, null); })();
35
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NavSkeletonComponent, { className: "NavSkeletonComponent" }); })();
35
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NavSkeletonComponent, { className: "NavSkeletonComponent", filePath: "skeleton/nav-skeleton/component.ts", lineNumber: 9 }); })();
36
36
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3NrZWxldG9uL25hdi1za2VsZXRvbi9jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvc2tlbGV0b24vbmF2LXNrZWxldG9uL3RlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztJQ0NqRSw2QkFHQztJQVNDLEFBSkEsQUFKQSx1Q0FHcUIsMkJBSUEsMkJBSUE7SUFDdkIsaUJBQUs7OztJQVhELGNBQWlCO0lBQ2pCLEFBREEsK0JBQWlCLGdCQUNGO0lBR2YsY0FBMEM7SUFDMUMsQUFEQSw0RUFBMEMsZ0JBQzNCO0lBR2YsY0FBaUI7SUFDakIsQUFEQSwrQkFBaUIsZ0JBQ0Y7O0FEUHJCLE1BQU0sT0FBTyxvQkFBb0I7SUFOakM7UUFPRSxZQUFPLEdBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztLQUN0RTtxRkFGWSxvQkFBb0I7b0VBQXBCLG9CQUFvQjtZQ1JqQywwQkFBSTtZQUNGLG1FQUdDO1lBY0gsaUJBQUs7O1lBaEJlLGNBQVU7WUFBVixxQ0FBVTs7O2lGRE1qQixvQkFBb0I7Y0FOaEMsU0FBUzsyQkFDRSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTTs7a0ZBRXBDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLW5hdi1za2VsZXRvbicsXG4gIHRlbXBsYXRlVXJsOiAndGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWydzdHlsZS5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBOYXZTa2VsZXRvbkNvbXBvbmVudCB7XG4gIG5hdkxpc3Q6IG51bWJlcltdID0gWzEsIDIsIDIsIDIsIDEsIDIsIDIsIDMsIDMsIDMsIDIsIDIsIDIsIDMsIDIsIDFdO1xufVxuIiwiPHVsPlxuICA8bGlcbiAgICAqbmdGb3I9XCJsZXQgbmF2IG9mIG5hdkxpc3RcIlxuICAgIGNsYXNzPVwibmF2LWl0ZW1cIlxuICA+XG4gICAgPGFjbC1za2VsZXRvbi1pdGVtXG4gICAgICBbaXNTcXVhcmVdPVwidHJ1ZVwiXG4gICAgICBbYWN0aXZlXT1cInRydWVcIlxuICAgID48L2FjbC1za2VsZXRvbi1pdGVtPlxuICAgIDxhY2wtc2tlbGV0b24taXRlbVxuICAgICAgW2N1c3RvbVN0eWxlXT1cInsgd2lkdGg6IG5hdiAqIDMwICsgJ3B4JyB9XCJcbiAgICAgIFthY3RpdmVdPVwidHJ1ZVwiXG4gICAgPjwvYWNsLXNrZWxldG9uLWl0ZW0+XG4gICAgPGFjbC1za2VsZXRvbi1pdGVtXG4gICAgICBbaXNTcXVhcmVdPVwidHJ1ZVwiXG4gICAgICBbYWN0aXZlXT1cInRydWVcIlxuICAgID48L2FjbC1za2VsZXRvbi1pdGVtPlxuICA8L2xpPlxuPC91bD5cbiJdfQ==
@@ -823,5 +823,5 @@ __decorate([
823
823
  type: HostBinding,
824
824
  args: ['style.max-height']
825
825
  }] }); })();
826
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TableComponent, { className: "TableComponent" }); })();
826
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TableComponent, { className: "TableComponent", filePath: "table/component.ts", lineNumber: 64 }); })();
827
827
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3RhYmxlL2NvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy90YWJsZS90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFRLE1BQU0sWUFBWSxDQUFDO0FBQy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULFdBQVcsR0FFWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzFFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLEdBQUcsRUFDSCxLQUFLLEVBQ0wsVUFBVSxFQUNWLEVBQUUsRUFDRixhQUFhLEVBQ2IsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2xFLE9BQU8sRUFDTCxpQkFBaUIsR0FFbEIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RSxPQUFP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QUNGLFVBQVU7cURBQTBCO0FBYXBEO0lBREMsZUFBZSxFQUFFOzhCQUNOLFVBQVU7aURBQStCO2lGQXREMUMsY0FBYztjQU4xQixTQUFTOzJCQUNFLFdBQVcsbUJBRUosdUJBQXVCLENBQUMsTUFBTTttR0FRL0MsSUFBSTtrQkFESCxLQUFLO1lBSU4sS0FBSyxNQUdMLFVBQVU7a0JBRFQsS0FBSztZQUlOLFdBQVcsTUFHWCxZQUFZO2tCQURYLEtBQUs7WUFJTixhQUFhLE1BR2Isc0JBQXNCO2tCQURyQixLQUFLO1lBSU4sTUFBTTtrQkFETCxLQUFLO1lBSU4sV0FBVztrQkFEVixLQUFLO1lBSU4sT0FBTztrQkFETixLQUFLO1lBSU4sUUFBUSxNQUdSLFlBQVk7a0JBRFgsS0FBSztZQUlOLGFBQWEsTUFHYixPQUFPO2tCQUROLEtBQUs7WUFRTixRQUFRO2tCQURQLEtBQUs7WUFJTixTQUFTLE1BR1QsT0FBTztrQkFETixLQUFLO1lBSU4sVUFBVTtrQkFEVCxLQUFLO1lBSU4sb0JBQW9CO2tCQURuQixLQUFLO1lBSU4sZ0JBQWdCO2tCQURmLEtBQUs7WUFJTixRQUFRO2tCQURQLEtBQUs7WUFJTixlQUFlO2tCQURkLEtBQUs7WUFJTixnQkFBZ0I7a0JBRGYsS0FBSztZQUdHLGVBQWU7a0JBQXZCLEtBQUs7WUFHTixNQUFNO2tCQURMLE1BQU07WUFJUCxNQUFNO2tCQURMLE1BQU07WUFJUCxVQUFVO2tCQURULE1BQU07WUFJUCxhQUFhO2tCQURaLGVBQWU7bUJBQUMscUJBQXFCO1lBSWxDLGFBQWE7a0JBRGhCLFdBQVc7bUJBQUMsaUNBQWlDO1lBTTFDLG1CQUFtQjtrQkFEdEIsV0FBVzttQkFBQyxrQkFBa0I7O2tGQWhHcEIsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGhhbmRsZVBpeGVsLCBTb3J0IH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFRyYWNrQnlGdW5jdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGdldCwgaXNGdW5jdGlvbiwgaXNPYmplY3RMaWtlLCBpc1N0cmluZywgbGFzdCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIG1hcCxcbiAgbWVyZ2UsXG4gIE9ic2VydmFibGUsXG4gIG9mLFxuICBSZXBsYXlTdWJqZWN0LFxuICBzd2l0Y2hNYXAsXG4gIHRhcCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEFDVElPTiwgQ1JFQVRFRF9BVCwgTElOSywgVVBEQVRFIH0gZnJvbSAnLi4vY29yZS9jb25zdGFudHMvY29uc3RhbnRzJztcbmltcG9ydCB7IGlzRmllbGROb3RBdmFpbGFibGUgfSBmcm9tICcuLi9jb3JlL3BpcGVzL2ZpZWxkLW5vdC1hdmFpbGFibGUucGlwZSc7XG5pbXBvcnQgeyBDUkVBVE9SLCBOQU1FIH0gZnJvbSAnLi4vY29yZS9zZXJ2aWNlcy9rOHMtdXRpbC5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIEs4c1Jlc291cmNlQWN0aW9uLFxuICBLdWJlcm5ldGVzUmVzb3VyY2VMaXN0LFxufSBmcm9tICcuLi9jb3JlL3R5cGVzL2s4cy9wdWJsaWMtYXBpJztcbmltcG9ydCB7IGlzSzhzUmVzb3VyY2UsIG5vb3AsIHRyYWNrQnlVaWQgfSBmcm9tICcuLi9jb3JlL3V0aWxzL2NvbW1vbic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlSW5wdXQgfSBmcm9tICcuLi9jb3JlL3V0aWxzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgcHVibGlzaFJlZiB9IGZyb20gJy4uL2NvcmUvdXRpbHMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFN0cmVhbUxpc3RMb2FkZXIgfSBmcm9tICcuLi9rOHMtcmVzb3VyY2UtbGlzdC90eXBlcyc7XG5cbmltcG9ydCB7XG4gIERFRkFVTFRfUEFHRV9TSVpFLFxuICBERUZBVUxUX1BBR0VfU0laRV9PUFRJT05TLFxuICBERUZBVUxUX1BBR0lOQVRJT05fTEFZT1VULFxufSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUYWJsZUNlbGxEZWZEaXJlY3RpdmUgfSBmcm9tICcuL2hlbHBlcnMuZGlyZWN0aXZlJztcbmltcG9ydCB7XG4gIE5vcm1hbGl6ZWRUYWJsZUNvbHVtbkRlZixcbiAgVGFibGVDb2x1bW5EZWZzLFxuICBUYWJsZUNvbHVtbixcbiAgVGFibGVDb2x1bW5EZWYsXG4gIFRhYmxlRmlsdGVyRm4sXG4gIFRhYmxlQ29sdW1uQWN0aW9uRXh0cmEsXG4gIFRhYmxlQ29sdW1uQWN0aW9uRXh0cmFJdGVtLFxuICBUYWJsZUNvbHVtbkFjdGlvbkRpc2FibGVkSGFuZGxlcixcbn0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBLTk9XTl9DT0xVTU5TLCBUYWJsZVV0aWxTZXJ2aWNlIH0gZnJvbSAnLi91dGlsLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJ3RlbXBsYXRlLmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudDxcbiAgSXRlbSBleHRlbmRzIG9iamVjdCxcbiAgQ29udGV4dCA9IFRhYmxlVXRpbFNlcnZpY2U8SXRlbT4sXG4+IHtcbiAgQElucHV0KClcbiAgbGlzdCE6IFN0cmVhbUxpc3RMb2FkZXI8S3ViZXJuZXRlc1Jlc291cmNlTGlzdDxJdGVtPiwgSXRlbT47XG5cbiAgQE9ic2VydmFibGVJbnB1dCgpXG4gIGxpc3QkITogT2JzZXJ2YWJsZTxTdHJlYW1MaXN0TG9hZGVyPEt1YmVybmV0ZXNSZXNvdXJjZUxpc3Q8SXRlbT4sIEl0ZW0+PjtcblxuICBASW5wdXQoKVxuICBkYXRhU291cmNlOiBJdGVtW10gfCBPYnNlcnZhYmxlPEl0ZW1bXT47XG5cbiAgQE9ic2VydmFibGVJbnB1dCgpXG4gIGRhdGFTb3VyY2UkITogT2JzZXJ2YWJsZTxJdGVtW10gfCBPYnNlcnZhYmxlPEl0ZW1bXT4+O1xuXG4gIEBJbnB1dCgpXG4gIHJlc291cmNlTmFtZTogc3RyaW5nO1xuXG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICByZXNvdXJjZU5hbWUkITogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuXG4gIEBJbnB1dCgpXG4gIHJlc291cmNlTmFtZVRyYW5zbGF0ZWQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBzdGlja3k6IG51bWJlciB8IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwZXJtaXNzaW9uczogUGFydGlhbDxSZWNvcmQ8SzhzUmVzb3VyY2VBY3Rpb24sIGJvb2xlYW4+PjtcblxuICBASW5wdXQoKVxuICBjb2x1bW5zOiBSZWFkb25seUFycmF5PFRhYmxlQ29sdW1uPEl0ZW0sIENvbnRleHQ+PjtcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgY29sdW1ucyQhOiBPYnNlcnZhYmxlPEFycmF5PFRhYmxlQ29sdW1uPEl0ZW0sIENvbnRleHQ+Pj47XG5cbiAgQElucHV0KClcbiAgZmlsdGVyUGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgZmlsdGVyUGFyYW1zJCE6IE9ic2VydmFibGU8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+O1xuXG4gIEBJbnB1dCgpXG4gIGNvbnRleHQ6IENvbnRleHQ7XG5cbiAgZ2V0IGZpbmFsQ29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0ID8/ICh0aGlzLnV0aWwgYXMgdW5rbm93biBhcyBDb250ZXh0KTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGZpbHRlckZuOiBUYWJsZUZpbHRlckZuPEl0ZW0sIENvbnRleHQ+O1xuXG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICBmaWx0ZXJGbiQhOiBPYnNlcnZhYmxlPFRhYmxlRmlsdGVyRm48SXRlbSwgQ29udGV4dD4+O1xuXG4gIEBJbnB1dCgpXG4gIHRyYWNrQnk6IFRyYWNrQnlGdW5jdGlvbjxJdGVtPiA9IHRoaXMudHJhY2tCeUZuO1xuXG4gIEBJbnB1dCgpXG4gIG5vRGF0YUhpbnQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBsb2FkaW5nRXJyb3JUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBASW5wdXQoKVxuICBlbmFibGVQYWdpbmF0aW9uID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcGFnZVNpemUgPSBERUZBVUxUX1BBR0VfU0laRTtcblxuICBASW5wdXQoKVxuICBwYWdlU2l6ZU9wdGlvbnMgPSBERUZBVUxUX1BBR0VfU0laRV9PUFRJT05TO1xuXG4gIEBJbnB1dCgpXG4gIHBhZ2luYXRpb25MYXlvdXQgPSBERUZBVUxUX1BBR0lOQVRJT05fTEFZT1VUO1xuXG4gIEBJbnB1dCgpIGZpcnN0U2Nyb2xsTG9hZDogbnVtYmVyO1xuXG4gIEBPdXRwdXQoKVxuICB1cGRhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPEl0ZW0+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGRlbGV0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8SXRlbT4oKTtcblxuICBAT3V0cHV0KClcbiAgc29ydENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8U29ydD4oKTtcblxuICBAQ29udGVudENoaWxkcmVuKFRhYmxlQ2VsbERlZkRpcmVjdGl2ZSlcbiAgdGFibGVDZWxsRGVmczogUXVlcnlMaXN0PFRhYmxlQ2VsbERlZkRpcmVjdGl2ZTxJdGVtPj47XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hdWktdGFibGVfX3Njcm9sbC13cmFwcGVyJylcbiAgZ2V0IHNjcm9sbFdyYXBwZXIoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5zdGlja3k7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1heC1oZWlnaHQnKVxuICBnZXQgc2Nyb2xsV3JhcHBlckhlaWdodCgpIHtcbiAgICByZXR1cm4gaGFuZGxlUGl4ZWwodGhpcy5zdGlja3kpO1xuICB9XG5cbiAgY3VycmVudFBhZ2UkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDEpO1xuXG4gIHBhZ2VTaXplJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPihERUZBVUxUX1BBR0VfU0laRSk7XG5cbiAgcGFnaW5hdGlvbiA9IHtcbiAgICB0b3RhbDogMCxcbiAgICBwYWdlczogMCxcbiAgfTtcblxuICBmaW5hbERhdGFTb3VyY2UkID0gdGhpcy5kYXRhU291cmNlJC5waXBlKFxuICAgIHN3aXRjaE1hcChkYXRhU291cmNlID0+XG4gICAgICBkYXRhU291cmNlIGluc3RhbmNlb2YgT2JzZXJ2YWJsZSA/IGRhdGFTb3VyY2UgOiBvZihkYXRhU291cmNlKSxcbiAgICApLFxuICAgIHB1Ymxpc2hSZWYoKSxcbiAgKTtcblxuICBmaW5hbFJlc291cmNlTmFtZSQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmxpc3QkLCB0aGlzLnJlc291cmNlTmFtZSRdKS5waXBlKFxuICAgIHN3aXRjaE1hcCgoW2xpc3QsIHJlc291cmNlTmFtZV0pID0+XG4gICAgICAhbGlzdCB8fCByZXNvdXJjZU5hbWVcbiAgICAgICAgPyBvZihyZXNvdXJjZU5hbWUpXG4gICAgICAgIDogbGlzdC5yYXdSZXNwb25zZSQucGlwZShcbiAgICAgICAgICAgIG1hcChyZXMgPT4gcmVzPy5raW5kLnNsaWNlKDAsIC00KS50b0xvd2VyQ2FzZSgpKSxcbiAgICAgICAgICApLFxuICAgICksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG4gIGNvbHVtbkRlZnMkID0gdGhpcy5jb2x1bW5zJC5waXBlKFxuICAgIG1hcChcbiAgICAgIGNvbHVtbnMgPT5cbiAgICAgICAgKGNvbHVtbnMgfHwgW10pLm1hcChjb2x1bW4gPT4ge1xuICAgICAgICAgIGNvbHVtbiA9IGlzU3RyaW5nKGNvbHVtbikgPyB7IG5hbWU6IGNvbHVtbiB9IDogY29sdW1uO1xuICAgICAgICAgIGlmICghKCdwYXRoJyBpbiBjb2x1bW4pICYmICFLTk9XTl9DT0xVTU5TLmhhcyhjb2x1bW4ubmFtZSkpIHtcbiAgICAgICAgICAgIGNvbHVtbi5wYXRoID0gY29sdW1uLm5hbWU7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMubm9ybWFsaXplQ29sdW1uRGVmU29ydChjb2x1bW4pO1xuICAgICAgICAgIHRoaXMubm9ybWFsaXplQ29sdW1uRGVmVHJhbnNsYXRlKGNvbHVtbik7XG4gICAgICAgICAgcmV0dXJuIHRoaXMubm9ybWFsaXplQWN0aW9uQ29sdW1uRGVmKGNvbHVtbik7XG4gICAgICAgIH0pIGFzIFRhYmxlQ29sdW1uRGVmczxJdGVtLCBDb250ZXh0PixcbiAgICApLFxuICAgIHB1Ymxpc2hSZWYoKSxcbiAgKTtcblxuICBjb2x1bW5OYW1lcyQgPSB0aGlzLmNvbHVtbkRlZnMkLnBpcGUoXG4gICAgbWFwKGNvbHVtbnMgPT4gY29sdW1ucy5tYXAoY29sdW1uID0+IGNvbHVtbi5uYW1lKSksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG4gIGFjdGl2ZVNvcnQkJCA9IG5ldyBSZXBsYXlTdWJqZWN0PFNvcnQ+KDEpO1xuXG4gIGFjdGl2ZVNvcnQkOiBPYnNlcnZhYmxlPFNvcnQ+ID0gbWVyZ2UoXG4gICAgdGhpcy5hY3RpdmVTb3J0JCQsXG4gICAgdGhpcy5jb2x1bW5EZWZzJC5waXBlKFxuICAgICAgbWFwKGNvbHVtbkRlZnMgPT4ge1xuICAgICAgICBjb25zdCBjb2x1bW5EZWYgPSBjb2x1bW5EZWZzLmZpbmQoY29sdW1uID0+IGNvbHVtbi5zb3J0Py5hY3RpdmUpO1xuICAgICAgICByZXR1cm4gY29sdW1uRGVmXG4gICAgICAgICAgPyB7IGFjdGl2ZTogY29sdW1uRGVmLm5hbWUsIGRpcmVjdGlvbjogY29sdW1uRGVmLnNvcnQuZGlyZWN0aW9uIH1cbiAgICAgICAgICA6IG51bGw7XG4gICAgICB9KSxcbiAgICApLFxuICApLnBpcGUocHVibGlzaFJlZigpKTtcblxuICBmaWx0ZXJlZEl0ZW1zJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMubGlzdCQsIHRoaXMuZmluYWxEYXRhU291cmNlJF0pLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKFtsaXN0LCBkYXRhU291cmNlXSkgPT4gKGxpc3QgPyBsaXN0Lml0ZW1zJCA6IG9mKGRhdGFTb3VyY2UpKSksXG4gICAgKSxcbiAgICB0aGlzLmNvbHVtbkRlZnMkLFxuICAgIHRoaXMuYWN0aXZlU29ydCQsXG4gICAgdGhpcy5maWx0ZXJQYXJhbXMkLFxuICAgIHRoaXMuZmlsdGVyRm4kLFxuICBdKS5waXBlKFxuICAgIG1hcChcbiAgICAgIChbXG4gICAgICAgIGl0ZW1zLFxuICAgICAgICBjb2x1bW5EZWZzLFxuICAgICAgICBhY3RpdmVTb3J0LFxuICAgICAgICBmaWx0ZXJQYXJhbXMsXG4gICAgICAgIGZpbHRlckZuID0gdGhpcy51dGlsLmRlZmF1bHRGaWx0ZXJGbixcbiAgICAgIF0pID0+XG4gICAgICAgIGZpbHRlckZuLmNhbGwoXG4gICAgICAgICAgdGhpcy5maW5hbENvbnRleHQsXG4gICAgICAgICAgaXRlbXMsXG4gICAgICAgICAgY29sdW1uRGVmcyxcbiAgICAgICAgICBhY3RpdmVTb3J0LFxuICAgICAgICAgIGZpbHRlclBhcmFtcyxcbiAgICAgICAgICB0aGlzLmZpbmFsQ29udGV4dCxcbiAgICAgICAgKSxcbiAgICApLFxuICAgIHB1Ymxpc2hSZWYoKSxcbiAgKTtcblxuICBwYWdlZEl0ZW1zJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMuZmlsdGVyZWRJdGVtcyQsXG4gICAgdGhpcy5jdXJyZW50UGFnZSQsXG4gICAgdGhpcy5wYWdlU2l6ZSQsXG4gIF0pLnBpcGUoXG4gICAgdGFwKChbaXRlbXMsIF8sIHBhZ2VTaXplXSkgPT4ge1xuICAgICAgaWYgKHRoaXMuZW5hYmxlUGFnaW5hdGlvbikge1xuICAgICAgICB0aGlzLnBhZ2luYXRpb24gPVxuICAgICAgICAgIGl0ZW1zLmxlbmd0aCA9PT0gMFxuICAgICAgICAgICAgPyB7IHRvdGFsOiAwLCBwYWdlczogMCB9XG4gICAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgICB0b3RhbDogaXRlbXMubGVuZ3RoLFxuICAgICAgICAgICAgICAgIHBhZ2VzOiBNYXRoLmNlaWwoaXRlbXMubGVuZ3RoIC8gcGFnZVNpemUpLFxuICAgICAgICAgICAgICB9O1xuICAgICAgfVxuICAgIH0pLFxuICAgIG1hcCgoW2l0ZW1zLCBjdXJyZW50UGFnZSwgcGFnZVNpemVdKSA9PiB7XG4gICAgICBpZiAoIXRoaXMuZW5hYmxlUGFnaW5hdGlvbikge1xuICAgICAgICByZXR1cm4gaXRlbXM7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5wYWdpbmF0aW9uLnBhZ2VzIDwgY3VycmVudFBhZ2UgJiYgdGhpcy5wYWdpbmF0aW9uLnBhZ2VzICE9PSAwKSB7XG4gICAgICAgIGN1cnJlbnRQYWdlID0gdGhpcy5wYWdpbmF0aW9uLnBhZ2VzO1xuICAgICAgICB0aGlzLmN1cnJlbnRQYWdlJC5uZXh0KGN1cnJlbnRQYWdlKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGJlZ2luID0gKGN1cnJlbnRQYWdlIC0gMSkgKiBwYWdlU2l6ZTtcbiAgICAgIHJldHVybiBpdGVtcy5zbGljZShiZWdpbiwgYmVnaW4gKyBwYWdlU2l6ZSk7XG4gICAgfSksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG4gIGdldCBpc0xpc3RQYWdlKCkge1xuICAgIHJldHVybiB0aGlzLnJvdXRlLnJvdXRlQ29uZmlnPy5wYXRoID09PSAnbGlzdCc7XG4gIH1cblxuICBpc0xpc3RQYWdlJCA9IHRoaXMucm91dGUudXJsLnBpcGUoXG4gICAgbWFwKCgpID0+IHRoaXMuaXNMaXN0UGFnZSksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG4gIGlzRnVuY3Rpb24gPSBpc0Z1bmN0aW9uO1xuICBpc0s4c1Jlc291cmNlID0gaXNLOHNSZXNvdXJjZTtcbiAgaXNGaWVsZE5vdEF2YWlsYWJsZSA9IGlzRmllbGROb3RBdmFpbGFibGU7XG5cbiAgZ2V0VmFsdWVGcm9tUGF0aCA9IHRoaXMudXRpbC5nZXRWYWx1ZUZyb21QYXRoO1xuICB0cmFja0J5TmFtZShfOiBudW1iZXIsIGNvbHVtbkRlZjogVGFibGVDb2x1bW5EZWY8SXRlbSwgQ29udGV4dD4pIHtcbiAgICByZXR1cm4gY29sdW1uRGVmLm5hbWU7XG4gIH1cblxuICBOQU1FID0gTkFNRTtcbiAgQ1JFQVRPUiA9IENSRUFUT1I7XG4gIENSRUFURURfQVQgPSBDUkVBVEVEX0FUO1xuICBBQ1RJT04gPSBBQ1RJT047XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdXRpbDogVGFibGVVdGlsU2VydmljZTxJdGVtPixcbiAgKSB7XG4gICAgdGhpcy5nZXRDb2x1bW5UZW1wbGF0ZSA9IHRoaXMuZ2V0Q29sdW1uVGVtcGxhdGUuYmluZCh0aGlzKTtcbiAgfVxuXG4gIG5vcm1hbGl6ZUNvbHVtbkRlZlRyYW5zbGF0ZShjb2x1bW46IFRhYmxlQ29sdW1uRGVmPEl0ZW0sIENvbnRleHQ+KSB7XG4gICAgY29uc3QgeyB0cmFuc2xhdGUgfSA9IGNvbHVtbjtcbiAgICBpZiAodHJhbnNsYXRlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBjb2x1bW47XG4gICAgfVxuICAgIGlmICh0cmFuc2xhdGUgPT09IHRydWUpIHtcbiAgICAgIGNvbHVtbi50cmFuc2xhdGUgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAoaXNTdHJpbmcodHJhbnNsYXRlKSkge1xuICAgICAgY29sdW1uLnRyYW5zbGF0ZSA9ICh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyKSA9PiB0cmFuc2xhdGUgKyB2YWx1ZTtcbiAgICB9IGVsc2UgaWYgKGlzT2JqZWN0TGlrZSh0cmFuc2xhdGUpKSB7XG4gICAgICBjb2x1bW4udHJhbnNsYXRlID0gKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIpID0+IGdldCh0cmFuc2xhdGUsIHZhbHVlKTtcbiAgICB9XG4gICAgcmV0dXJuIGNvbHVtbjtcbiAgfVxuXG4gIG5vcm1hbGl6ZUNvbHVtbkRlZlNvcnQoY29sdW1uOiBUYWJsZUNvbHVtbkRlZjxJdGVtLCBDb250ZXh0Pikge1xuICAgIGNvbnN0IHsgc29ydCB9ID0gY29sdW1uO1xuICAgIGlmIChzb3J0ID09IG51bGwpIHtcbiAgICAgIHJldHVybiBjb2x1bW47XG4gICAgfVxuICAgIGlmIChzb3J0ID09PSB0cnVlKSB7XG4gICAgICBjb2x1bW4uc29ydCA9IHtcbiAgICAgICAgZGlyZWN0aW9uOiAnYXNjJyxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmIChpc1N0cmluZyhzb3J0KSkge1xuICAgICAgY29sdW1uLnNvcnQgPSB7XG4gICAgICAgIGRpcmVjdGlvbjogc29ydCxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmIChpc0Z1bmN0aW9uKHNvcnQpKSB7XG4gICAgICBjb2x1bW4uc29ydCA9IHtcbiAgICAgICAgZGlyZWN0aW9uOiAnYXNjJyxcbiAgICAgICAgaGFuZGxlcjogc29ydCxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmIChzb3J0LmRpcmVjdGlvbiA9PSBudWxsKSB7XG4gICAgICBzb3J0LmRpcmVjdGlvbiA9ICdhc2MnO1xuICAgIH1cbiAgICByZXR1cm4gY29sdW1uO1xuICB9XG5cbiAgb25Tb3J0Q2hhbmdlKCRldmVudDogU29ydCkge1xuICAgIHRoaXMuc29ydENoYW5nZS5uZXh0KCRldmVudCk7XG4gICAgdGhpcy5hY3RpdmVTb3J0JCQubmV4dCgkZXZlbnQpO1xuICB9XG5cbiAgbm9ybWFsaXplQWN0aW9uQ29sdW1uRGVmKFxuICAgIGNvbHVtbjogVGFibGVDb2x1bW5EZWY8SXRlbSwgQ29udGV4dD4sXG4gICk6IE5vcm1hbGl6ZWRUYWJsZUNvbHVtbkRlZjxJdGVtLCBDb250ZXh0PiB7XG4gICAgaWYgKGNvbHVtbi5uYW1lICE9PSBBQ1RJT04gfHwgIWNvbHVtbi5leHRyYSkge1xuICAgICAgcmV0dXJuIGNvbHVtbiBhcyBOb3JtYWxpemVkVGFibGVDb2x1bW5EZWY8SXRlbSwgQ29udGV4dD47XG4gICAgfVxuXG4gICAgY29uc3QgZXh0cmEgPSBjb2x1bW4uZXh0cmEgYXMgVGFibGVDb2x1bW5BY3Rpb25FeHRyYTxJdGVtLCBDb250ZXh0PjtcbiAgICAoW0s4c1Jlc291cmNlQWN0aW9uLkRFTEVURSwgSzhzUmVzb3VyY2VBY3Rpb24uVVBEQVRFXSBhcyBjb25zdCkuZm9yRWFjaChcbiAgICAgIGFjdGlvbiA9PiB7XG4gICAgICAgIGlmICghZXh0cmFbYWN0aW9uXSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBsZXQgaGFuZGxlciA9IChcbiAgICAgICAgICBleHRyYVthY3Rpb25dIGFzIFRhYmxlQ29sdW1uQWN0aW9uRXh0cmFJdGVtPEl0ZW0sIENvbnRleHQ+XG4gICAgICAgICkuZGlzYWJsZWQ7XG4gICAgICAgIGlmIChoYW5kbGVyID09IG51bGwpIHtcbiAgICAgICAgICBoYW5kbGVyID0gbm9vcCBhcyBUYWJsZUNvbHVtbkFjdGlvbkRpc2FibGVkSGFuZGxlcjxJdGVtLCBDb250ZXh0PjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNGdW5jdGlvbihoYW5kbGVyKSkge1xuICAgICAgICAgIChcbiAgICAgICAgICAgIGV4dHJhW2FjdGlvbl0gYXMgVGFibGVDb2x1bW5BY3Rpb25FeHRyYUl0ZW08SXRlbSwgQ29udGV4dD5cbiAgICAgICAgICApLmRpc2FibGVkID0geyBoYW5kbGVyIH07XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgKTtcbiAgICByZXR1cm4gY29sdW1uIGFzIE5vcm1hbGl6ZWRUYWJsZUNvbHVtbkRlZjxJdGVtLCBDb250ZXh0PjtcbiAgfVxuXG4gIGdldENvbHVtblRlbXBsYXRlKGNvbHVtbjogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMudGFibGVDZWxsRGVmcy5maW5kKGRlZiA9PiBkZWYuYWNsVGFibGVDZWxsRGVmID09PSBjb2x1bW4pXG4gICAgICA/LnRlbXBsYXRlUmVmO1xuICB9XG5cbiAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IEl0ZW0pIHtcbiAgICByZXR1cm4gaXNLOHNSZXNvdXJjZShpdGVtKVxuICAgICAgPyB0cmFja0J5VWlkKGluZGV4LCBpdGVtKVxuICAgICAgOiBnZXQoaXRlbSwgTkFNRSwgaW5kZXgpO1xuICB9XG5cbiAgb25VcGRhdGUoZGF0YTogSXRlbSwgY29sdW1uRGVmOiBUYWJsZUNvbHVtbkRlZjxJdGVtLCBDb250ZXh0Pikge1xuICAgIHRoaXMudXBkYXRlLmVtaXQoZGF0YSk7XG5cbiAgICBpZiAoZ2V0KGNvbHVtbkRlZi5leHRyYSwgW1VQREFURSwgTElOS10pICE9PSBmYWxzZSkge1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoXG4gICAgICAgIFtcbiAgICAgICAgICB0aGlzLmlzTGlzdFBhZ2UgPyAnLi4nIDogJy4nLFxuICAgICAgICAgIFVQREFURSxcbiAgICAgICAgICB0aGlzLmdldFZhbHVlRnJvbVBhdGgoZGF0YSwgTkFNRSksXG4gICAgICAgIF0sXG4gICAgICAgIHtcbiAgICAgICAgICByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlLFxuICAgICAgICB9LFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBnZXRWYWx1ZTxULCBGIGV4dGVuZHMgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gVD4oXG4gICAgZnVuY3Rpb25PclZhbHVlOiBUIHwgRixcbiAgICAuLi5hcmdzOiBQYXJhbWV0ZXJzPEY+XG4gICk6IFQge1xuICAgIHJldHVybiBpc0Z1bmN0aW9uKGZ1bmN0aW9uT3JWYWx1ZSlcbiAgICAgID8gZnVuY3Rpb25PclZhbHVlLmNhbGwobGFzdChhcmdzKSwgLi4uYXJncylcbiAgICAgIDogZnVuY3Rpb25PclZhbHVlO1xuICB9XG59XG4iLCI8YXVpLXRhYmxlXG4gIGF1aVNvcnRcbiAgW2FjdGl2ZV09XCIoYWN0aXZlU29ydCQgfCBhc3luYyk/LmFjdGl2ZVwiXG4gIFtkaXJlY3Rpb25dPVwiKGFjdGl2ZVNvcnQkIHwgYXN5bmMpPy5kaXJlY3Rpb25cIlxuICBbZGF0YVNvdXJjZV09XCJwYWdlZEl0ZW1zJFwiXG4gIFt0cmFja0J5XT1cInRyYWNrQnlcIlxuICAoc29ydENoYW5nZSk9XCJvblNvcnRDaGFuZ2UoJGV2ZW50KVwiXG4gIFthdWlUYWJsZVNjcm9sbGFibGVdPVwiISFzdGlja3lcIlxuPlxuICA8bmctY29udGFpbmVyXG4gICAgKm5nRm9yPVwibGV0IGNvbHVtbkRlZiBvZiBjb2x1bW5EZWZzJCB8IGFzeW5jOyB0cmFja0J5OiB0cmFja0J5TmFtZVwiXG4gICAgW2F1aVRhYmxlQ29sdW1uRGVmXT1cImNvbHVtbkRlZi5uYW1lXCJcbiAgICBbc3RpY2t5XT1cImNvbHVtbkRlZi5zdGlja3lcIlxuICAgIFtzdGlja3lFbmRdPVwiY29sdW1uRGVmLnN0aWNreUVuZFwiXG4gID5cbiAgICA8YXVpLXRhYmxlLWhlYWRlci1jZWxsXG4gICAgICAqYXVpVGFibGVIZWFkZXJDZWxsRGVmXG4gICAgICBbc3R5bGVdPVwiY29sdW1uRGVmLnN0eWxlXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uRGVmLm5hbWUgIT09IEFDVElPTlwiPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICpuZ0lmPVwiY29sdW1uRGVmLnNvcnRcIlxuICAgICAgICAgIGF1aS1zb3J0LWhlYWRlclxuICAgICAgICAgIFtzdGFydF09XCJjb2x1bW5EZWYuc29ydC5kaXJlY3Rpb25cIlxuICAgICAgICAgID57eyBjb2x1bW5EZWYubGFiZWwgfHwgY29sdW1uRGVmLm5hbWUgfCB0cmFuc2xhdGUgfX08L3NwYW5cbiAgICAgICAgPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFjb2x1bW5EZWYuc29ydFwiPnt7XG4gICAgICAgICAgY29sdW1uRGVmLmxhYmVsIHx8IGNvbHVtbkRlZi5uYW1lIHwgdHJhbnNsYXRlXG4gICAgICAgIH19PC9zcGFuPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9hdWktdGFibGUtaGVhZGVyLWNlbGw+XG5cbiAgICA8YXVpLXRhYmxlLWNlbGxcbiAgICAgICphdWlUYWJsZUNlbGxEZWY9XCJcbiAgICAgICAgbGV0IGRhdGE7XG4gICAgICAgIGxldCBpbmRleCA9IGluZGV4O1xuICAgICAgICBsZXQgZXZlbiA9IGV2ZW47XG4gICAgICAgIGxldCBvZGQgPSBvZGQ7XG4gICAgICAgIGxldCBsYXN0ID0gbGFzdFxuICAgICAgXCJcbiAgICAgIFtkaXJlY3Rpb25dPVwiY29sdW1uRGVmLmRpcmVjdGlvblwiXG4gICAgICBbbmdDbGFzc109XCJjb2x1bW5EZWYuY2xhc3NcIlxuICAgICAgW3N0eWxlXT1cImNvbHVtbkRlZi5zdHlsZVwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgIGNvbHVtbkRlZi5uYW1lIHwgcHVyZTogZ2V0Q29sdW1uVGVtcGxhdGUgYXMgdGVtcGxhdGU7XG4gICAgICAgICAgZWxzZSB0YWJsZUNlbGxEZWZUcGxcbiAgICAgICAgXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICB0ZW1wbGF0ZTtcbiAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgJGltcGxpY2l0OiBkYXRhLFxuICAgICAgICAgICAgICBpbmRleDogaW5kZXgsXG4gICAgICAgICAgICAgIGV2ZW46IGV2ZW4sXG4gICAgICAgICAgICAgIG9kZDogb2RkLFxuICAgICAgICAgICAgICBsYXN0OiBsYXN0LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIFwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICN0YWJsZUNlbGxEZWZUcGw+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgICAgY29sdW1uRGVmLnBhdGggIT0gbnVsbCAmJlxuICAgICAgICAgICAgICAoZGF0YVxuICAgICAgICAgICAgICAgIHwgcHVyZVxuICAgICAgICAgICAgICAgICAgOiBnZXRWYWx1ZUZyb21QYXRoXG4gICAgICAgICAgICAgICAgICA6IGNvbHVtbkRlZi5uYW1lXG4gICAgICAgICAgICAgICAgICA6IGNvbHVtbkRlZi5wYXRoKSBhcyB2YWx1ZTtcbiAgICAgICAgICAgIGVsc2UgZGVmYXVsdFRhYmxlQ2VsbFRwbFxuICAgICAgICAgIFwiXG4gICAgICAgID5cbiAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICB0YWJsZUNlbGxDb250ZW50O1xuICAgICAgICAgICAgICBjb250ZXh0OiB7IGNvbHVtbkRlZjogY29sdW1uRGVmLCB2YWx1ZTogdmFsdWUgfVxuICAgICAgICAgICAgXCJcbiAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdFRhYmxlQ2VsbFRwbD5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICBkZWZhdWx0VGFibGVDZWxsO1xuICAgICAgICAgICAgY29udGV4dDogeyBkYXRhOiBkYXRhLCBjb2x1bW5EZWY6IGNvbHVtbkRlZiB9XG4gICAgICAgICAgXCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2F1aS10YWJsZS1jZWxsPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8YXVpLXRhYmxlLWhlYWRlci1yb3dcbiAgICAqYXVpVGFibGVIZWFkZXJSb3dEZWY9XCJjb2x1bW5OYW1lcyQgfCBhc3luYzsgc3RpY2t5OiAhIXN0aWNreVwiXG4gID48L2F1aS10YWJsZS1oZWFkZXItcm93PlxuICA8YXVpLXRhYmxlLXJvd1xuICAgICphdWlUYWJsZVJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGNvbHVtbk5hbWVzJCB8IGFzeW5jXCJcbiAgPjwvYXVpLXRhYmxlLXJvdz5cblxuICA8bmctY29udGFpbmVyICphdWlUYWJsZVBsYWNlaG9sZGVyRGVmPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsaXN0XCI+XG4gICAgICA8ZGl2XG4gICAgICAgIFtoaWRkZW5dPVwiXG4gICAgICAgICAgKHBhZ2VkSXRlbXMkIHwgYXN5bmMpPy5sZW5ndGggfHwgIShsaXN0Lml0ZW1zJCB8IGFzeW5jKT8ubGVuZ3RoXG4gICAgICAgIFwiXG4gICAgICAgIGNsYXNzPVwiZW1wdHktcGxhY2Vob2xkZXJcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nSWY9XCJmaW5hbFJlc291cmNlTmFtZSQgfCBhc3luYyBhcyBmaW5hbFJlc291cmNlTmFtZTsgZWxzZSBub0RhdGFcIlxuICAgICAgICA+XG4gICAgICAgICAge3tcbiAgICAgICAgICAgICdub19uYW1lZF9kYXRhX2hpbnQnXG4gICAgICAgICAgICAgIHwgdHJhbnNsYXRlXG4gICAgICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6XG4gICAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2VOYW1lVHJhbnNsYXRlZCB8fCAoZmluYWxSZXNvdXJjZU5hbWUgfCB0cmFuc2xhdGUpLFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgIH19XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgICA8YWNsLWs4cy1yZXNvdXJjZS1saXN0LWZvb3RlclxuICAgICAgICBbaGlkZGVuXT1cIlxuICAgICAgICAgICEocGFnZWRJdGVtcyQgfCBhc3luYyk/Lmxlbmd0aCAmJiAobGlzdC5pdGVtcyQgfCBhc3luYyk/Lmxlbmd0aFxuICAgICAgICBcIlxuICAgICAgICBbbGlzdF09XCJsaXN0XCJcbiAgICAgICAgW3Jlc291cmNlTmFtZV09XCJmaW5hbFJlc291cmNlTmFtZSQgfCBhc3luY1wiXG4gICAgICAgIFtyZXNvdXJjZU5hbWVUcmFuc2xhdGVkXT1cInJlc291cmNlTmFtZVRyYW5zbGF0ZWRcIlxuICAgICAgICBbZmlyc3RTY3JvbGxMb2FkXT1cImZpcnN0U2Nyb2xsTG9hZFwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2FkaW5nRXJyb3JUZW1wbGF0ZVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICphY2xLOHNMaXN0Rm9vdGVyTG9hZGluZ0Vycm9yXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJsb2FkaW5nRXJyb3JUZW1wbGF0ZVwiXG4gICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvYWNsLWs4cy1yZXNvdXJjZS1saXN0LWZvb3Rlcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cIiFsaXN0ICYmICEocGFnZWRJdGVtcyQgfCBhc3luYyk/Lmxlbmd0aFwiXG4gICAgICBjbGFzcz1cImVtcHR5LXBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmluYWxEYXRhU291cmNlJCB8IGFzeW5jOyBlbHNlIGxvYWRpbmdcIj5cbiAgICAgICAge3tcbiAgICAgICAgICBub0RhdGFIaW50IHx8XG4gICAgICAgICAgICAoJ25vX25hbWVkX2RhdGFfaGludCdcbiAgICAgICAgICAgICAgfCB0cmFuc2xhdGVcbiAgICAgICAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogcmVzb3VyY2VOYW1lVHJhbnNsYXRlZCB8fCAocmVzb3VyY2VOYW1lIHwgdHJhbnNsYXRlKSxcbiAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgIH19XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjbG9hZGluZz5cbiAgICAgICAgPGF1aS1pY29uXG4gICAgICAgICAgY2xhc3M9XCJhY2wtbG9hZGluZy1tYXNrX19pY29uXCJcbiAgICAgICAgICBzaXplPVwiMTZweFwiXG4gICAgICAgICAgaWNvbj1cInNwaW5uZXJcIlxuICAgICAgICA+PC9hdWktaWNvbj5cbiAgICAgICAge3sgJ2xvYWRpbmdfcGxlYXNlX3dhaXQnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvYXVpLXRhYmxlPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiZW5hYmxlUGFnaW5hdGlvblwiPlxuICA8YXVpLXBhZ2luYXRvclxuICAgIFtsYXlvdXRdPVwicGFnaW5hdGlvbkxheW91dFwiXG4gICAgW2N1cnJlbnRQYWdlXT1cImN1cnJlbnRQYWdlJCB8IGFzeW5jXCJcbiAgICBbcGFnZVNpemVdPVwicGFnZVNpemUkIHwgYXN5bmNcIlxuICAgIFt0b3RhbF09XCJwYWdpbmF0aW9uLnRvdGFsXCJcbiAgICAoY3VycmVudFBhZ2VDaGFuZ2UpPVwiY3VycmVudFBhZ2UkLm5leHQoJGV2ZW50KVwiXG4gICAgKHBhZ2VTaXplQ2hhbmdlKT1cInBhZ2VTaXplJC5uZXh0KCRldmVudClcIlxuICAgIFtwYWdlU2l6ZU9wdGlvbnNdPVwicGFnZVNpemVPcHRpb25zXCJcbiAgPjwvYXVpLXBhZ2luYXRvcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGVcbiAgI2RlZmF1bHRUYWJsZUNlbGxcbiAgbGV0LWRhdGE9XCJkYXRhXCJcbiAgbGV0LWNvbHVtbkRlZj1cImNvbHVtbkRlZlwiXG4+XG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImNvbHVtbkRlZi5uYW1lXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiTkFNRVwiPlxuICAgICAgPGRpdlxuICAgICAgICAqbmdJZj1cImRhdGEgfCBwdXJlOiBnZXRWYWx1ZUZyb21QYXRoIDogY29sdW1uRGVmLm5hbWUgYXMgbmFtZVwiXG4gICAgICAgIGNsYXNzPVwiYXVpLXRhYmxlX19jZWxsX19uYW1lXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICBjb2x1bW5EZWYuZXh0cmE/LmxpbmsgIT09IGZhbHNlICYmICEoZGF0YSB8IGFjbElzRGVsZXRpbmcpO1xuICAgICAgICAgICAgZWxzZSBwbGFpbk5hbWVcbiAgICAgICAgICBcIlxuICAgICAgICA+XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsoaXNMaXN0UGFnZSQgfCBhc3luYykgPyAnLi4nIDogJy4nLCAnZGV0YWlsJywgbmFtZV1cIlxuICAgICAgICAgICAgW2F1aVRvb2x0aXBdPVwibmFtZVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgbmFtZSB9fVxuICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjcGxhaW5OYW1lPlxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICBbYXVpVG9vbHRpcF09XCJuYW1lXCJcbiAgICAgICAgICAgIFtjbGFzcy5kZWxldGluZy10ZXh0XT1cImRhdGEgfCBhY2xJc0RlbGV0aW5nXCJcbiAgICAgICAgICAgID57eyBuYW1lIH19PC9zcGFuXG4gICAgICAgICAgPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8YWNsLWRlbGV0aW5nLXRhZ1xuICAgICAgICAgICpuZ0lmPVwiZGF0YSB8IHB1cmU6IGlzSzhzUmVzb3VyY2VcIlxuICAgICAgICAgIFtyZXNvdXJjZV09XCJkYXRhXCJcbiAgICAgICAgPjwvYWNsLWRlbGV0aW5nLXRhZz5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgIChkYXRhIHwgcHVyZTogaXNLOHNSZXNvdXJjZSlcbiAgICAgICAgICAgID8gKGRhdGEgfCBhY2xEaXNwbGF5TmFtZSlcbiAgICAgICAgICAgIDogZGF0YS5kaXNwbGF5TmFtZSBhcyBkaXNwbGF5TmFtZVxuICAgICAgICBcIlxuICAgICAgICBjbGFzcz1cImF1aS10YWJsZV9fY2VsbF9fZGlzcGxheS1uYW1lXCJcbiAgICAgICAgW2NsYXNzLmRlbGV0aW5nLXRleHRdPVwiZGF0YSB8IGFjbElzRGVsZXRpbmdcIlxuICAgICAgPlxuICAgICAgICB7eyBkaXNwbGF5TmFtZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiQ1JFQVRFRF9BVFwiPlxuICAgICAgPGFjbC1yZWxhdGl2ZS10aW1lXG4gICAgICAgIFt0aW1lXT1cImRhdGEgfCBwdXJlOiBnZXRWYWx1ZUZyb21QYXRoIDogY29sdW1uRGVmLm5hbWVcIlxuICAgICAgPjwvYWNsLXJlbGF0aXZlLXRpbWU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiQUNUSU9OXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgICAgW3NxdWFyZV09XCJ0cnVlXCJcbiAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgW2F1aURyb3Bkb3duXT1cIm1lbnVcIlxuICAgICAgICBbYXVpRHJvcGRvd25Db250ZXh0XT1cInsgJGltcGxpY2l0OiBkYXRhLCBjb2x1bW5EZWY6IGNvbHVtbkRlZiB9XCJcbiAgICAgID5cbiAgICAgICAgPGF1aS1pY29uIGljb249XCJlbGxpcHNpc192X3NcIj48L2F1aS1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hEZWZhdWx0PlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgIGRhdGEgfCBwdXJlOiBnZXRWYWx1ZUZyb21QYXRoIDogY29sdW1uRGVmLm5hbWUgYXMgdmFsdWU7XG4gICAgICAgICAgZWxzZSBlbXB0eVxuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgIHRhYmxlQ2VsbENvbnRlbnQ7XG4gICAgICAgICAgICBjb250ZXh0OiB7IGNvbHVtbkRlZjogY29sdW1uRGVmLCB2YWx1ZTogdmFsdWUgfVxuICAgICAgICAgIFwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZVxuICAjdGFibGVDZWxsQ29udGVudFxuICBsZXQtY29sdW1uRGVmPVwiY29sdW1uRGVmXCJcbiAgbGV0LXZhbHVlPVwidmFsdWVcIlxuPlxuICA8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJcbiAgICAgIGNvbHVtbkRlZi50cmFuc2xhdGUgPT0gbnVsbFxuICAgICAgICA/IHZhbHVlXG4gICAgICAgIDogY29sdW1uRGVmLnRyYW5zbGF0ZSA9PT0gdHJ1ZVxuICAgICAgICAgID8gKHZhbHVlIHwgdHJhbnNsYXRlKVxuICAgICAgICAgIDogKHZhbHVlXG4gICAgICAgICAgICB8IHB1cmU6IGNvbHVtbkRlZi50cmFuc2xhdGUgOiBmaW5hbENvbnRleHRcbiAgICAgICAgICAgIHwgdHJhbnNsYXRlKSBhcyB0ZXh0O1xuICAgICAgZWxzZSBlbXB0eVxuICAgIFwiXG4gID5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cImNvbHVtbkRlZi5lbGxpcHNpczsgZWxzZSBwbGFpblRleHRcIlxuICAgICAgY2xhc3M9XCJ0ZXh0LW92ZXJmbG93XCJcbiAgICAgIFthdWlUb29sdGlwXT1cInRleHRcIlxuICAgID5cbiAgICAgIHt7IHRleHQgfX1cbiAgICA8L2Rpdj5cbiAgICA8bmctdGVtcGxhdGUgI3BsYWluVGV4dD57eyB0ZXh0IH19PC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGVcbiAgI21lbnVcbiAgbGV0LWRhdGFcbiAgbGV0LWNvbHVtbkRlZj1cImNvbHVtbkRlZlwiXG4gID48YXVpLW1lbnU+XG4gICAgPGFjbC1kaXNhYmxlZC1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiY29sdW1uRGVmLmV4dHJhPy51cGRhdGUgIT09IGZhbHNlXCJcbiAgICAgIFtpc0FsbG93ZWRdPVwiIXBlcm1pc3Npb25zIHx8IHBlcm1pc3Npb25zLnVwZGF0ZVwiXG4gICAgICBbaXNEaXNhYmxlZF09XCJcbiAgICAgICAgKGNvbHVtbkRlZi5leHRyYT8udXBkYXRlPy5kaXNhYmxlZC5oYW5kbGVyIHwgcHVyZTogaXNGdW5jdGlvbikgJiZcbiAgICAgICAgKGRhdGEgfCBwdXJlOiBjb2x1bW5EZWYuZXh0cmEudXBkYXRlLmRpc2FibGVkLmhhbmRsZXIgOiBmaW5hbENvbnRleHQpXG4gICAgICBcIlxuICAgICAgW3Rvb2x0aXBdPVwiXG4gICAgICAgIGNvbHVtbkRlZi5leHRyYT8udXBkYXRlPy5kaXNhYmxlZC50b29sdGlwXG4gICAgICAgICAgfCBwdXJlOiBnZXRWYWx1ZSA6IGRhdGEgOiBmaW5hbENvbnRleHRcbiAgICAgICAgICB8IHRyYW5zbGF0ZVxuICAgICAgXCJcbiAgICAgIChjbGljayk9XCJvblVwZGF0ZShkYXRhLCBjb2x1bW5EZWYpXCJcbiAgICA+XG4gICAgICA8YXVpLW1lbnUtaXRlbT57eyAndXBkYXRlJyB8IHRyYW5zbGF0ZSB9fTwvYXVpLW1lbnUtaXRlbT5cbiAgICA8L2FjbC1kaXNhYmxlZC1jb250YWluZXI+XG4gICAgPGFjbC1kaXNhYmxlZC1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiY29sdW1uRGVmLmV4dHJhPy5kZWxldGUgIT09IGZhbHNlXCJcbiAgICAgIFtpc0FsbG93ZWRdPVwiIXBlcm1pc3Npb25zIHx8IHBlcm1pc3Npb25zLmRlbGV0ZVwiXG4gICAgICBbaXNEaXNhYmxlZF09XCJcbiAgICAgICAgKGNvbHVtbkRlZi5leHRyYT8uZGVsZXRlPy5kaXNhYmxlZC5oYW5kbGVyIHwgcHVyZTogaXNGdW5jdGlvbikgJiZcbiAgICAgICAgKGRhdGEgfCBwdXJlOiBjb2x1bW5EZWYuZXh0cmEuZGVsZXRlLmRpc2FibGVkLmhhbmRsZXIgOiBmaW5hbENvbnRleHQpXG4gICAgICBcIlxuICAgICAgW3Rvb2x0aXBdPVwiXG4gICAgICAgIGNvbHVtbkRlZi5leHRyYT8uZGVsZXRlPy5kaXNhYmxlZC50b29sdGlwXG4gICAgICAgICAgfCBwdXJlOiBnZXRWYWx1ZSA6IGRhdGEgOiBmaW5hbENvbnRleHRcbiAgICAgICAgICB8IHRyYW5zbGF0ZVxuICAgICAgXCJcbiAgICAgIChjbGljayk9XCJkZWxldGUuZW1pdChkYXRhKVwiXG4gICAgPlxuICAgICAgPGF1aS1tZW51LWl0ZW0+e3sgJ2RlbGV0ZScgfCB0cmFuc2xhdGUgfX08L2F1aS1tZW51LWl0ZW0+XG4gICAgPC9hY2wtZGlzYWJsZWQtY29udGFpbmVyPlxuICA8L2F1aS1tZW51PjwvbmctdGVtcGxhdGVcbj5cblxuPG5nLXRlbXBsYXRlICNlbXB0eT57eyBudWxsIHwgYWNsRmllbGROb3RBdmFpbGFibGUgfX08L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI25vRGF0YT57eyAnbm9fZGF0YScgfCB0cmFuc2xhdGUgfX08L25nLXRlbXBsYXRlPlxuIl19
@@ -29,14 +29,15 @@ import * as i16 from "../widget/field-set/group/component";
29
29
  import * as i17 from "../widget/field-set/column/component";
30
30
  import * as i18 from "../translate/translate.pipe";
31
31
  import * as i19 from "../translate/translate.directive";
32
- import * as i20 from "@angular/common";
33
- import * as i21 from "@angular/router";
34
- import * as i22 from "@alauda/ui";
35
- import * as i23 from "../k8s-resource-list/footer/component";
36
- import * as i24 from "../effect-directive/e2e-attribute-binding.directive";
37
- import * as i25 from "../core/pipes/field-not-available.pipe";
38
- import * as i26 from "../core/pipes/pure.pipe";
39
- import * as i27 from "../core/pipes/k8s-util.pipe";
32
+ import * as i20 from "../translate/intl-format.pipes";
33
+ import * as i21 from "@angular/common";
34
+ import * as i22 from "@angular/router";
35
+ import * as i23 from "@alauda/ui";
36
+ import * as i24 from "../k8s-resource-list/footer/component";
37
+ import * as i25 from "../effect-directive/e2e-attribute-binding.directive";
38
+ import * as i26 from "../core/pipes/field-not-available.pipe";
39
+ import * as i27 from "../core/pipes/pure.pipe";
40
+ import * as i28 from "../core/pipes/k8s-util.pipe";
40
41
  export const COMMON_TABLE_EXPORTABLE = [TableComponent, TableCellDefDirective];
41
42
  export class TableModule {
42
43
  static { this.ɵfac = function TableModule_Factory(t) { return new (t || TableModule)(); }; }
@@ -85,7 +86,7 @@ export class TableModule {
85
86
  TooltipModule,
86
87
  AuiTableModule,
87
88
  K8SResourceListModule,
88
- CoreModule, i1.ZeroStateComponent, i2.LoadingMaskComponent, i3.ConfirmDeleteComponent, i4.FoldableBlockComponent, i5.RelativeTimeComponent, i3.ConfirmDeleteContentDirective, i3.ConfirmDeleteLabelDirective, i3.ConfirmDeleteTipDirective, i6.DisabledContainerComponent, i7.TerminatingTagComponent, i8.FoldableItemInTableComponent, i9.SelectPrefixLabelDirective, i10.TextWithUrlComponent, i11.CardSectionComponent, i12.CurrentTimeComponent, i13.TextEllipsisComponent, i14.ResourceMultiSelectComponent, i15.FieldSetItemActionDirective, i15.FieldSetItemComponent, i16.FieldSetGroupComponent, i17.FieldSetColumnComponent, i17.FieldSetColumnGroupComponent, i18.TranslatePipe, i19.TranslateDirective, i19.TranslateMatchDirective, i19.TranslateTextDirective, PaginatorModule,
89
+ CoreModule, i1.ZeroStateComponent, i2.LoadingMaskComponent, i3.ConfirmDeleteComponent, i4.FoldableBlockComponent, i5.RelativeTimeComponent, i3.ConfirmDeleteContentDirective, i3.ConfirmDeleteLabelDirective, i3.ConfirmDeleteTipDirective, i6.DisabledContainerComponent, i7.TerminatingTagComponent, i8.FoldableItemInTableComponent, i9.SelectPrefixLabelDirective, i10.TextWithUrlComponent, i11.CardSectionComponent, i12.CurrentTimeComponent, i13.TextEllipsisComponent, i14.ResourceMultiSelectComponent, i15.FieldSetItemActionDirective, i15.FieldSetItemComponent, i16.FieldSetGroupComponent, i17.FieldSetColumnComponent, i17.FieldSetColumnGroupComponent, i18.TranslatePipe, i19.TranslateDirective, i19.TranslateMatchDirective, i19.TranslateTextDirective, i20.IntlNumberPipe, i20.IntlCurrencyPipe, i20.IntlPercentPipe, i20.IntlDatePipe, i20.IntlDateTimePipe, i20.IntlRelativeTimePipe, PaginatorModule,
89
90
  DisabledContainerComponent], exports: [TableComponent, TableCellDefDirective] }); })();
90
- i0.ɵɵsetComponentScope(TableComponent, [i20.NgClass, i20.NgForOf, i20.NgIf, i20.NgTemplateOutlet, i20.NgSwitch, i20.NgSwitchCase, i20.NgSwitchDefault, i21.RouterLink, i22.ButtonComponent, i22.DropdownDirective, i22.MenuComponent, i22.MenuItemComponent, i22.IconComponent, i22.SortDirective, i22.SortHeaderComponent, i22.TooltipDirective, i22.TableComponent, i22.TableRowComponent, i22.TableHeaderRowComponent, i22.TableCellDirective, i22.TableCellDefDirective, i22.TableHeaderCellDirective, i22.TableRowDefDirective, i22.TableHeaderRowDefDirective, i22.TableHeaderCellDefDirective, i22.TableColumnDefDirective, i22.TablePlaceholderDefDirective, i22.TableScrollableDirective, i23.K8SResourceListFooterComponent, i23.K8sListFooterLoadingErrorDirective, i24.E2eAttributeBindingDirective, i5.RelativeTimeComponent, i6.DisabledContainerComponent, i7.TerminatingTagComponent, i22.PaginatorComponent], [i20.AsyncPipe, i25.FieldNotAvailablePipe, i26.PurePipe, i27.K8sDisplayNamePipe, i27.K8sIsDeletingPipe, i18.TranslatePipe]);
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3RhYmxlL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsWUFBWSxFQUNaLGNBQWMsRUFDZCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsSUFBSSxjQUFjLEVBQzdCLGFBQWEsRUFDYixlQUFlLEdBQ2hCLE1BQU0sWUFBWSxDQUFDO0FBQ3BCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDaEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDdEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTVELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLENBQUMsY0FBYyxFQUFFLHFCQUFxQixDQUFDLENBQUM7QUFzQi9FLE1BQU0sT0FBTyxXQUFXOzRFQUFYLFdBQVc7bUVBQVgsV0FBVzt1RUFsQnBCLFlBQVk7WUFDWixZQUFZO1lBQ1osWUFBWTtZQUNaLGNBQWM7WUFDZCxVQUFVO1lBQ1YsVUFBVTtZQUNWLGFBQWE7WUFDYixjQUFjO1lBQ2QscUJBQXFCO1lBQ3JCLFVBQVUsZ1FBR1YsZUFBZTtZQUNmLDBCQUEwQjs7aUZBS2pCLFdBQVc7Y0FwQnZCLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixZQUFZO29CQUNaLFlBQVk7b0JBQ1osY0FBYztvQkFDZCxVQUFVO29CQUNWLFVBQVU7b0JBQ1YsYUFBYTtvQkFDYixjQUFjO29CQUNkLHFCQUFxQjtvQkFDckIsVUFBVTtvQkFDVixHQUFHLGFBQWE7b0JBQ2hCLEdBQUcsZ0JBQWdCO29CQUNuQixlQUFlO29CQUNmLDBCQUEwQjtpQkFDM0I7Z0JBQ0QsWUFBWSxFQUFFLHVCQUF1QjtnQkFDckMsT0FBTyxFQUFFLHVCQUF1QjthQUNqQzs7d0ZBQ1ksV0FBVyxtQkF0QmdCLGNBQWMsRUFBRSxxQkFBcUIsYUFJekUsWUFBWTtRQUNaLFlBQVk7UUFDWixZQUFZO1FBQ1osY0FBYztRQUNkLFVBQVU7UUFDVixVQUFVO1FBQ1YsYUFBYTtRQUNiLGNBQWM7UUFDZCxxQkFBcUI7UUFDckIsVUFBVSxtdUJBR1YsZUFBZTtRQUNmLDBCQUEwQixhQWpCVSxjQUFjLEVBQUUscUJBQXFCO3VCQUFyQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQnV0dG9uTW9kdWxlLFxuICBEcm9wZG93bk1vZHVsZSxcbiAgSWNvbk1vZHVsZSxcbiAgU29ydE1vZHVsZSxcbiAgVGFibGVNb2R1bGUgYXMgQXVpVGFibGVNb2R1bGUsXG4gIFRvb2x0aXBNb2R1bGUsXG4gIFBhZ2luYXRvck1vZHVsZSxcbn0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICcuLi9jb3JlL21vZHVsZSc7XG5pbXBvcnQgeyBEaXNhYmxlZENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL2Rpc2FibGVkLWNvbnRhaW5lci9kaXNhYmxlZC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEs4U1Jlc291cmNlTGlzdE1vZHVsZSB9IGZyb20gJy4uL2s4cy1yZXNvdXJjZS1saXN0L2s4cy1yZXNvdXJjZS1saXN0Lm1vZHVsZSc7XG5pbXBvcnQgeyBUUkFOU0xBVEVfTU9EVUxFIH0gZnJvbSAnLi4vdHJhbnNsYXRlL3RyYW5zbGF0ZS5tb2R1bGUnO1xuaW1wb3J0IHsgV0lER0VUX01PRFVMRSB9IGZyb20gJy4uL3dpZGdldC93aWRnZXQubW9kdWxlJztcblxuaW1wb3J0IHsgVGFibGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZUNlbGxEZWZEaXJlY3RpdmUgfSBmcm9tICcuL2hlbHBlcnMuZGlyZWN0aXZlJztcblxuZXhwb3J0IGNvbnN0IENPTU1PTl9UQUJMRV9FWFBPUlRBQkxFID0gW1RhYmxlQ29tcG9uZW50LCBUYWJsZUNlbGxEZWZEaXJlY3RpdmVdO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBCdXR0b25Nb2R1bGUsXG4gICAgRHJvcGRvd25Nb2R1bGUsXG4gICAgSWNvbk1vZHVsZSxcbiAgICBTb3J0TW9kdWxlLFxuICAgIFRvb2x0aXBNb2R1bGUsXG4gICAgQXVpVGFibGVNb2R1bGUsXG4gICAgSzhTUmVzb3VyY2VMaXN0TW9kdWxlLFxuICAgIENvcmVNb2R1bGUsXG4gICAgLi4uV0lER0VUX01PRFVMRSxcbiAgICAuLi5UUkFOU0xBVEVfTU9EVUxFLFxuICAgIFBhZ2luYXRvck1vZHVsZSxcbiAgICBEaXNhYmxlZENvbnRhaW5lckNvbXBvbmVudCxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBDT01NT05fVEFCTEVfRVhQT1JUQUJMRSxcbiAgZXhwb3J0czogQ09NTU9OX1RBQkxFX0VYUE9SVEFCTEUsXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlTW9kdWxlIHt9XG4iXX0=
91
+ i0.ɵɵsetComponentScope(TableComponent, [i21.NgClass, i21.NgForOf, i21.NgIf, i21.NgTemplateOutlet, i21.NgSwitch, i21.NgSwitchCase, i21.NgSwitchDefault, i22.RouterLink, i23.ButtonComponent, i23.DropdownDirective, i23.MenuComponent, i23.MenuItemComponent, i23.IconComponent, i23.SortDirective, i23.SortHeaderComponent, i23.TooltipDirective, i23.TableComponent, i23.TableRowComponent, i23.TableHeaderRowComponent, i23.TableCellDirective, i23.TableCellDefDirective, i23.TableHeaderCellDirective, i23.TableRowDefDirective, i23.TableHeaderRowDefDirective, i23.TableHeaderCellDefDirective, i23.TableColumnDefDirective, i23.TablePlaceholderDefDirective, i23.TableScrollableDirective, i24.K8SResourceListFooterComponent, i24.K8sListFooterLoadingErrorDirective, i25.E2eAttributeBindingDirective, i5.RelativeTimeComponent, i6.DisabledContainerComponent, i7.TerminatingTagComponent, i23.PaginatorComponent], [i21.AsyncPipe, i26.FieldNotAvailablePipe, i27.PurePipe, i28.K8sDisplayNamePipe, i28.K8sIsDeletingPipe, i18.TranslatePipe]);
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3RhYmxlL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsWUFBWSxFQUNaLGNBQWMsRUFDZCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsSUFBSSxjQUFjLEVBQzdCLGFBQWEsRUFDYixlQUFlLEdBQ2hCLE1BQU0sWUFBWSxDQUFDO0FBQ3BCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDaEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDdEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU1RCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLGNBQWMsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO0FBc0IvRSxNQUFNLE9BQU8sV0FBVzs0RUFBWCxXQUFXO21FQUFYLFdBQVc7dUVBbEJwQixZQUFZO1lBQ1osWUFBWTtZQUNaLFlBQVk7WUFDWixjQUFjO1lBQ2QsVUFBVTtZQUNWLFVBQVU7WUFDVixhQUFhO1lBQ2IsY0FBYztZQUNkLHFCQUFxQjtZQUNyQixVQUFVLGdRQUdWLGVBQWU7WUFDZiwwQkFBMEI7O2lGQUtqQixXQUFXO2NBcEJ2QixRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osWUFBWTtvQkFDWixZQUFZO29CQUNaLGNBQWM7b0JBQ2QsVUFBVTtvQkFDVixVQUFVO29CQUNWLGFBQWE7b0JBQ2IsY0FBYztvQkFDZCxxQkFBcUI7b0JBQ3JCLFVBQVU7b0JBQ1YsR0FBRyxhQUFhO29CQUNoQixHQUFHLGdCQUFnQjtvQkFDbkIsZUFBZTtvQkFDZiwwQkFBMEI7aUJBQzNCO2dCQUNELFlBQVksRUFBRSx1QkFBdUI7Z0JBQ3JDLE9BQU8sRUFBRSx1QkFBdUI7YUFDakM7O3dGQUNZLFdBQVcsbUJBdEJnQixjQUFjLEVBQUUscUJBQXFCLGFBSXpFLFlBQVk7UUFDWixZQUFZO1FBQ1osWUFBWTtRQUNaLGNBQWM7UUFDZCxVQUFVO1FBQ1YsVUFBVTtRQUNWLGFBQWE7UUFDYixjQUFjO1FBQ2QscUJBQXFCO1FBQ3JCLFVBQVUsbzJCQUdWLGVBQWU7UUFDZiwwQkFBMEIsYUFqQlUsY0FBYyxFQUFFLHFCQUFxQjt1QkFBckMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJ1dHRvbk1vZHVsZSxcbiAgRHJvcGRvd25Nb2R1bGUsXG4gIEljb25Nb2R1bGUsXG4gIFNvcnRNb2R1bGUsXG4gIFRhYmxlTW9kdWxlIGFzIEF1aVRhYmxlTW9kdWxlLFxuICBUb29sdGlwTW9kdWxlLFxuICBQYWdpbmF0b3JNb2R1bGUsXG59IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBDb3JlTW9kdWxlIH0gZnJvbSAnLi4vY29yZS9tb2R1bGUnO1xuaW1wb3J0IHsgRGlzYWJsZWRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9kaXNhYmxlZC1jb250YWluZXIvZGlzYWJsZWQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBLOFNSZXNvdXJjZUxpc3RNb2R1bGUgfSBmcm9tICcuLi9rOHMtcmVzb3VyY2UtbGlzdC9rOHMtcmVzb3VyY2UtbGlzdC5tb2R1bGUnO1xuaW1wb3J0IHsgVFJBTlNMQVRFX01PRFVMRSB9IGZyb20gJy4uL3RyYW5zbGF0ZS90cmFuc2xhdGUubW9kdWxlJztcbmltcG9ydCB7IFdJREdFVF9NT0RVTEUgfSBmcm9tICcuLi93aWRnZXQvd2lkZ2V0Lm1vZHVsZSc7XG5cbmltcG9ydCB7IFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFibGVDZWxsRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi9oZWxwZXJzLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBjb25zdCBDT01NT05fVEFCTEVfRVhQT1JUQUJMRSA9IFtUYWJsZUNvbXBvbmVudCwgVGFibGVDZWxsRGVmRGlyZWN0aXZlXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgQnV0dG9uTW9kdWxlLFxuICAgIERyb3Bkb3duTW9kdWxlLFxuICAgIEljb25Nb2R1bGUsXG4gICAgU29ydE1vZHVsZSxcbiAgICBUb29sdGlwTW9kdWxlLFxuICAgIEF1aVRhYmxlTW9kdWxlLFxuICAgIEs4U1Jlc291cmNlTGlzdE1vZHVsZSxcbiAgICBDb3JlTW9kdWxlLFxuICAgIC4uLldJREdFVF9NT0RVTEUsXG4gICAgLi4uVFJBTlNMQVRFX01PRFVMRSxcbiAgICBQYWdpbmF0b3JNb2R1bGUsXG4gICAgRGlzYWJsZWRDb250YWluZXJDb21wb25lbnQsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogQ09NTU9OX1RBQkxFX0VYUE9SVEFCTEUsXG4gIGV4cG9ydHM6IENPTU1PTl9UQUJMRV9FWFBPUlRBQkxFLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZU1vZHVsZSB7fVxuIl19
@@ -3,7 +3,6 @@
3
3
  * @module translate
4
4
  */
5
5
  export const LOCALE_STORAGE = '__LOCALE__';
6
- // eslint-disable-next-line regexp/strict
7
6
  export const LOCALE_PLACEHOLDER_REGEX = /{+\s*locale\s*}+/;
8
7
  export const FALLBACK_LANGUAGE = 'en';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3RyYW5zbGF0ZS9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLFlBQVksQ0FBQztBQUUzQyx5Q0FBeUM7QUFDekMsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsa0JBQWtCLENBQUM7QUFFM0QsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgdHJhbnNsYXRlXG4gKi9cblxuZXhwb3J0IGNvbnN0IExPQ0FMRV9TVE9SQUdFID0gJ19fTE9DQUxFX18nO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVnZXhwL3N0cmljdFxuZXhwb3J0IGNvbnN0IExPQ0FMRV9QTEFDRUhPTERFUl9SRUdFWCA9IC97K1xccypsb2NhbGVcXHMqfSsvO1xuXG5leHBvcnQgY29uc3QgRkFMTEJBQ0tfTEFOR1VBR0UgPSAnZW4nO1xuIl19
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3RyYW5zbGF0ZS9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLFlBQVksQ0FBQztBQUUzQyxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxrQkFBa0IsQ0FBQztBQUUzRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSB0cmFuc2xhdGVcbiAqL1xuXG5leHBvcnQgY29uc3QgTE9DQUxFX1NUT1JBR0UgPSAnX19MT0NBTEVfXyc7XG5cbmV4cG9ydCBjb25zdCBMT0NBTEVfUExBQ0VIT0xERVJfUkVHRVggPSAveytcXHMqbG9jYWxlXFxzKn0rLztcblxuZXhwb3J0IGNvbnN0IEZBTExCQUNLX0xBTkdVQUdFID0gJ2VuJztcbiJdfQ==
@@ -0,0 +1,293 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * @module translate
4
+ */
5
+ import { ChangeDetectorRef, inject, Injectable, Pipe, } from '@angular/core';
6
+ import { Subject, takeUntil } from 'rxjs';
7
+ import { FIELD_NOT_AVAILABLE_PLACEHOLDER } from '../core/public-api';
8
+ import { RelativeTimeManagerService } from './relative-time-manager.service';
9
+ import { TranslateService } from './translate.service';
10
+ import * as i0 from "@angular/core";
11
+ /**
12
+ * 基础国际化格式化 Pipe 抽象类
13
+ * 提供响应式的 locale 变化监听功能
14
+ */
15
+ class BaseIntlPipe {
16
+ constructor() {
17
+ this.destroy$$ = new Subject();
18
+ this.cdr = inject(ChangeDetectorRef);
19
+ this.translate = inject(TranslateService);
20
+ // 监听 locale 变化
21
+ this.translate.locale$.pipe(takeUntil(this.destroy$$)).subscribe(() => {
22
+ this.cdr.markForCheck();
23
+ });
24
+ }
25
+ ngOnDestroy() {
26
+ this.destroy$$.next();
27
+ this.destroy$$.complete();
28
+ }
29
+ static { this.ɵfac = function BaseIntlPipe_Factory(t) { return new (t || BaseIntlPipe)(); }; }
30
+ static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: BaseIntlPipe, factory: BaseIntlPipe.ɵfac }); }
31
+ }
32
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseIntlPipe, [{
33
+ type: Injectable
34
+ }], () => [], null); })();
35
+ /**
36
+ * 数字格式化 Pipe
37
+ * @example
38
+ * {{ 1234.56 | aclIntlNumber }} // "1,234.56"
39
+ * {{ 0.85 | aclIntlNumber:{ style: 'percent' } }} // "85%"
40
+ * {{ 1234.56 | aclIntlNumber:{ minimumFractionDigits: 2 } }} // "1,234.56"
41
+ */
42
+ export class IntlNumberPipe extends BaseIntlPipe {
43
+ transform(value, options) {
44
+ if (value == null || isNaN(value)) {
45
+ return FIELD_NOT_AVAILABLE_PLACEHOLDER;
46
+ }
47
+ return this.translate.formatNumber(value, options || {});
48
+ }
49
+ static { this.ɵfac = /*@__PURE__*/ (() => { let ɵIntlNumberPipe_BaseFactory; return function IntlNumberPipe_Factory(t) { return (ɵIntlNumberPipe_BaseFactory || (ɵIntlNumberPipe_BaseFactory = i0.ɵɵgetInheritedFactory(IntlNumberPipe)))(t || IntlNumberPipe); }; })(); }
50
+ static { this.ɵpipe = /*@__PURE__*/ i0.ɵɵdefinePipe({ name: "aclIntlNumber", type: IntlNumberPipe, pure: false, standalone: true }); }
51
+ }
52
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IntlNumberPipe, [{
53
+ type: Pipe,
54
+ args: [{
55
+ name: 'aclIntlNumber',
56
+ pure: false,
57
+ standalone: true,
58
+ }]
59
+ }], null, null); })();
60
+ /**
61
+ * 货币格式化 Pipe
62
+ * @example
63
+ * {{ 1234.56 | aclIntlCurrency }} // "¥1,234.56"
64
+ * {{ 1234.56 | aclIntlCurrency:'USD' }} // "$1,234.56"
65
+ * {{ 1234.56 | aclIntlCurrency:'EUR':{ minimumFractionDigits: 2 } }} // "€1,234.56"
66
+ */
67
+ export class IntlCurrencyPipe extends BaseIntlPipe {
68
+ transform(value, currency, options) {
69
+ if (value == null || isNaN(value)) {
70
+ return FIELD_NOT_AVAILABLE_PLACEHOLDER;
71
+ }
72
+ return this.translate.formatCurrency(value, currency, options);
73
+ }
74
+ static { this.ɵfac = /*@__PURE__*/ (() => { let ɵIntlCurrencyPipe_BaseFactory; return function IntlCurrencyPipe_Factory(t) { return (ɵIntlCurrencyPipe_BaseFactory || (ɵIntlCurrencyPipe_BaseFactory = i0.ɵɵgetInheritedFactory(IntlCurrencyPipe)))(t || IntlCurrencyPipe); }; })(); }
75
+ static { this.ɵpipe = /*@__PURE__*/ i0.ɵɵdefinePipe({ name: "aclIntlCurrency", type: IntlCurrencyPipe, pure: false, standalone: true }); }
76
+ }
77
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IntlCurrencyPipe, [{
78
+ type: Pipe,
79
+ args: [{
80
+ name: 'aclIntlCurrency',
81
+ pure: false,
82
+ standalone: true,
83
+ }]
84
+ }], null, null); })();
85
+ /**
86
+ * 百分比格式化 Pipe
87
+ * @example
88
+ * {{ 0.85 | aclIntlPercent }} // "85%"
89
+ * {{ 0.8567 | aclIntlPercent:{ minimumFractionDigits: 2 } }} // "85.67%"
90
+ */
91
+ export class IntlPercentPipe extends BaseIntlPipe {
92
+ transform(value, options) {
93
+ if (value == null || isNaN(value)) {
94
+ return FIELD_NOT_AVAILABLE_PLACEHOLDER;
95
+ }
96
+ return this.translate.formatPercent(value, options || {});
97
+ }
98
+ static { this.ɵfac = /*@__PURE__*/ (() => { let ɵIntlPercentPipe_BaseFactory; return function IntlPercentPipe_Factory(t) { return (ɵIntlPercentPipe_BaseFactory || (ɵIntlPercentPipe_BaseFactory = i0.ɵɵgetInheritedFactory(IntlPercentPipe)))(t || IntlPercentPipe); }; })(); }
99
+ static { this.ɵpipe = /*@__PURE__*/ i0.ɵɵdefinePipe({ name: "aclIntlPercent", type: IntlPercentPipe, pure: false, standalone: true }); }
100
+ }
101
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IntlPercentPipe, [{
102
+ type: Pipe,
103
+ args: [{
104
+ name: 'aclIntlPercent',
105
+ pure: false,
106
+ standalone: true,
107
+ }]
108
+ }], null, null); })();
109
+ /**
110
+ * 日期格式化 Pipe
111
+ * @example
112
+ * {{ date | aclIntlDate }} // "2025/01/01"
113
+ * {{ date | aclIntlDate:{ dateStyle: 'long' } }} // "2025年1月1日"
114
+ * {{ date | aclIntlDate:{ year: 'numeric', month: 'long' } }} // "2025年1月"
115
+ */
116
+ export class IntlDatePipe extends BaseIntlPipe {
117
+ transform(value, options) {
118
+ if (value == null) {
119
+ return FIELD_NOT_AVAILABLE_PLACEHOLDER;
120
+ }
121
+ // 检查日期是否有效
122
+ const date = value instanceof Date ? value : new Date(value);
123
+ if (isNaN(date.getTime())) {
124
+ return FIELD_NOT_AVAILABLE_PLACEHOLDER;
125
+ }
126
+ return this.translate.formatDate(value, options);
127
+ }
128
+ static { this.ɵfac = /*@__PURE__*/ (() => { let ɵIntlDatePipe_BaseFactory; return function IntlDatePipe_Factory(t) { return (ɵIntlDatePipe_BaseFactory || (ɵIntlDatePipe_BaseFactory = i0.ɵɵgetInheritedFactory(IntlDatePipe)))(t || IntlDatePipe); }; })(); }
129
+ static { this.ɵpipe = /*@__PURE__*/ i0.ɵɵdefinePipe({ name: "aclIntlDate", type: IntlDatePipe, pure: false, standalone: true }); }
130
+ }
131
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IntlDatePipe, [{
132
+ type: Pipe,
133
+ args: [{
134
+ name: 'aclIntlDate',
135
+ pure: false,
136
+ standalone: true,
137
+ }]
138
+ }], null, null); })();
139
+ /**
140
+ * 日期时间格式化 Pipe
141
+ * @example
142
+ * {{ date | aclIntlDateTime }} // "2025/01/01 14:30:00"
143
+ * {{ date | aclIntlDateTime:{ dateStyle: 'medium', timeStyle: 'short' } }} // "2025年1月1日 14:30"
144
+ */
145
+ export class IntlDateTimePipe extends BaseIntlPipe {
146
+ transform(value, options) {
147
+ if (value == null) {
148
+ return FIELD_NOT_AVAILABLE_PLACEHOLDER;
149
+ }
150
+ // 检查日期是否有效
151
+ const date = value instanceof Date ? value : new Date(value);
152
+ if (isNaN(date.getTime())) {
153
+ return FIELD_NOT_AVAILABLE_PLACEHOLDER;
154
+ }
155
+ return this.translate.formatDateTime(value, options);
156
+ }
157
+ static { this.ɵfac = /*@__PURE__*/ (() => { let ɵIntlDateTimePipe_BaseFactory; return function IntlDateTimePipe_Factory(t) { return (ɵIntlDateTimePipe_BaseFactory || (ɵIntlDateTimePipe_BaseFactory = i0.ɵɵgetInheritedFactory(IntlDateTimePipe)))(t || IntlDateTimePipe); }; })(); }
158
+ static { this.ɵpipe = /*@__PURE__*/ i0.ɵɵdefinePipe({ name: "aclIntlDateTime", type: IntlDateTimePipe, pure: false, standalone: true }); }
159
+ }
160
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IntlDateTimePipe, [{
161
+ type: Pipe,
162
+ args: [{
163
+ name: 'aclIntlDateTime',
164
+ pure: false,
165
+ standalone: true,
166
+ }]
167
+ }], null, null); })();
168
+ // 时间间隔常量 (毫秒)
169
+ const MILLISECONDS_SECOND = 1000;
170
+ const MILLISECONDS_MINUTE = MILLISECONDS_SECOND * 60;
171
+ const MILLISECONDS_HOUR = MILLISECONDS_MINUTE * 60;
172
+ const MILLISECONDS_DAY = MILLISECONDS_HOUR * 24;
173
+ /**
174
+ * 相对时间格式化 Pipe
175
+ * 支持两种使用方式:
176
+ * 1. 传入 Date 对象,自动计算相对时间
177
+ * 2. 传入数值和单位,手动指定相对时间
178
+ *
179
+ * 特性:
180
+ * - 自动刷新UI:根据时间距离智能调整刷新频率
181
+ * - 性能优化:共享定时器,避免大量单独计时器
182
+ * - 响应式设计:监听语言变化自动更新
183
+ *
184
+ * @example
185
+ * // 自动计算
186
+ * {{ pastDate | aclIntlRelativeTime }} // "2 hours ago"
187
+ * {{ futureDate | aclIntlRelativeTime:{ numeric: 'always' } }} // "in 2 hours"
188
+ *
189
+ * // 手动指定
190
+ * {{ -1 | aclIntlRelativeTime:'day' }} // "yesterday"
191
+ * {{ 2 | aclIntlRelativeTime:'hour':{ numeric: 'always' } }} // "in 2 hours"
192
+ * {{ -30 | aclIntlRelativeTime:'minute':{ numeric: 'always' } }} // "30 minutes ago"
193
+ */
194
+ export class IntlRelativeTimePipe extends BaseIntlPipe {
195
+ constructor() {
196
+ super(...arguments);
197
+ this.relativeTimeManager = inject(RelativeTimeManagerService);
198
+ }
199
+ ngOnDestroy() {
200
+ super.ngOnDestroy();
201
+ this.cleanupRefresh();
202
+ }
203
+ transform(value, unitOrOptions, options) {
204
+ if (value == null) {
205
+ return FIELD_NOT_AVAILABLE_PLACEHOLDER;
206
+ }
207
+ // 情况1: 传入 Date 对象,自动计算相对时间(支持自动刷新)
208
+ if (value instanceof Date) {
209
+ this.currentValue = value;
210
+ this.setupAutoRefresh(value);
211
+ const relativeOptions = unitOrOptions;
212
+ return this.translate.formatRelativeTime(value, relativeOptions);
213
+ }
214
+ // 情况2: 传入数字,需要手动指定单位(不需要自动刷新)
215
+ if (typeof value === 'number') {
216
+ this.cleanupRefresh(); // 清除可能存在的刷新订阅
217
+ if (isNaN(value)) {
218
+ return FIELD_NOT_AVAILABLE_PLACEHOLDER;
219
+ }
220
+ const unit = unitOrOptions;
221
+ if (!unit) {
222
+ return FIELD_NOT_AVAILABLE_PLACEHOLDER;
223
+ }
224
+ // 对于手动指定单位的情况,直接调用翻译服务
225
+ return this.translate.formatRelativeTime(value, unit, options);
226
+ }
227
+ return FIELD_NOT_AVAILABLE_PLACEHOLDER;
228
+ }
229
+ /**
230
+ * 设置自动刷新机制
231
+ * 使用共享的计时器管理器,提高多实例场景下的性能
232
+ * 时间间隔大于一天时不设置自动刷新
233
+ */
234
+ setupAutoRefresh(date) {
235
+ const distance = Math.abs(Date.now() - date.getTime());
236
+ // 时间间隔大于一天时,不需要自动刷新
237
+ if (distance >= MILLISECONDS_DAY) {
238
+ this.cleanupRefresh();
239
+ return;
240
+ }
241
+ let interval;
242
+ if (distance < MILLISECONDS_MINUTE) {
243
+ interval = MILLISECONDS_SECOND;
244
+ }
245
+ else if (distance < MILLISECONDS_HOUR) {
246
+ interval = MILLISECONDS_MINUTE;
247
+ }
248
+ else {
249
+ interval = MILLISECONDS_HOUR;
250
+ }
251
+ // 如果刷新间隔没有变化,无需重新订阅
252
+ if (this.currentInterval === interval && this.refreshSubscription) {
253
+ return;
254
+ }
255
+ this.cleanupRefresh();
256
+ this.currentInterval = interval;
257
+ // 订阅共享的刷新事件
258
+ this.refreshSubscription = this.relativeTimeManager
259
+ .getRefreshSubject(interval)
260
+ .pipe(takeUntil(this.destroy$$))
261
+ .subscribe(() => {
262
+ this.cdr.markForCheck();
263
+ // 重新计算刷新间隔,适应时间变化
264
+ if (this.currentValue) {
265
+ this.setupAutoRefresh(this.currentValue);
266
+ }
267
+ });
268
+ }
269
+ /**
270
+ * 清理刷新相关资源
271
+ */
272
+ cleanupRefresh() {
273
+ if (this.refreshSubscription) {
274
+ this.refreshSubscription.unsubscribe();
275
+ this.refreshSubscription = undefined;
276
+ }
277
+ if (this.currentInterval !== undefined) {
278
+ this.relativeTimeManager.releaseRefreshSubject(this.currentInterval);
279
+ this.currentInterval = undefined;
280
+ }
281
+ }
282
+ static { this.ɵfac = /*@__PURE__*/ (() => { let ɵIntlRelativeTimePipe_BaseFactory; return function IntlRelativeTimePipe_Factory(t) { return (ɵIntlRelativeTimePipe_BaseFactory || (ɵIntlRelativeTimePipe_BaseFactory = i0.ɵɵgetInheritedFactory(IntlRelativeTimePipe)))(t || IntlRelativeTimePipe); }; })(); }
283
+ static { this.ɵpipe = /*@__PURE__*/ i0.ɵɵdefinePipe({ name: "aclIntlRelativeTime", type: IntlRelativeTimePipe, pure: false, standalone: true }); }
284
+ }
285
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IntlRelativeTimePipe, [{
286
+ type: Pipe,
287
+ args: [{
288
+ name: 'aclIntlRelativeTime',
289
+ pure: false,
290
+ standalone: true,
291
+ }]
292
+ }], null, null); })();
293
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50bC1mb3JtYXQucGlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvdHJhbnNsYXRlL2ludGwtZm9ybWF0LnBpcGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsTUFBTSxFQUNOLFVBQVUsRUFFVixJQUFJLEdBRUwsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXhELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXJFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUV2RDs7O0dBR0c7QUFDSCxNQUNlLFlBQVk7SUFPekI7UUFObUIsY0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFaEMsUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRWhDLGNBQVMsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUd0RCxlQUFlO1FBQ2YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3BFLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDOzZFQWpCWSxZQUFZO3VFQUFaLFlBQVks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QUMsbUJBQW1CLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLFNBQVMsQ0FBQztRQUN2QyxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsZUFBZSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDckUsSUFBSSxDQUFDLGVBQWUsR0FBRyxTQUFTLENBQUM7UUFDbkMsQ0FBQztJQUNILENBQUM7b1BBbkhVLG9CQUFvQixTQUFwQixvQkFBb0I7NkZBQXBCLG9CQUFvQjs7aUZBQXBCLG9CQUFvQjtjQUxoQyxJQUFJO2VBQUM7Z0JBQ0osSUFBSSxFQUFFLHFCQUFxQjtnQkFDM0IsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsVUFBVSxFQUFFLElBQUk7YUFDakIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSB0cmFuc2xhdGVcbiAqL1xuXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgaW5qZWN0LFxuICBJbmplY3RhYmxlLFxuICBPbkRlc3Ryb3ksXG4gIFBpcGUsXG4gIFBpcGVUcmFuc2Zvcm0sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRklFTERfTk9UX0FWQUlMQUJMRV9QTEFDRUhPTERFUiB9IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IFJlbGF0aXZlVGltZU1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi9yZWxhdGl2ZS10aW1lLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnLi90cmFuc2xhdGUuc2VydmljZSc7XG5cbi8qKlxuICog5Z+656GA5Zu96ZmF5YyW5qC85byP5YyWIFBpcGUg5oq96LGh57G7XG4gKiDmj5Dkvpvlk43lupTlvI/nmoQgbG9jYWxlIOWPmOWMluebkeWQrOWKn+iDvVxuICovXG5ASW5qZWN0YWJsZSgpXG5hYnN0cmFjdCBjbGFzcyBCYXNlSW50bFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtLCBPbkRlc3Ryb3kge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGVzdHJveSQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdHJhbnNsYXRlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIC8vIOebkeWQrCBsb2NhbGUg5Y+Y5YyWXG4gICAgdGhpcy50cmFuc2xhdGUubG9jYWxlJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkJC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgYWJzdHJhY3QgdHJhbnNmb3JtKHZhbHVlOiBhbnksIC4uLmFyZ3M6IGFueVtdKTogc3RyaW5nO1xufVxuXG4vKipcbiAqIOaVsOWtl+agvOW8j+WMliBQaXBlXG4gKiBAZXhhbXBsZVxuICoge3sgMTIzNC41NiB8IGFjbEludGxOdW1iZXIgfX0gLy8gXCIxLDIzNC41NlwiXG4gKiB7eyAwLjg1IHwgYWNsSW50bE51bWJlcjp7IHN0eWxlOiAncGVyY2VudCcgfSB9fSAvLyBcIjg1JVwiXG4gKiB7eyAxMjM0LjU2IHwgYWNsSW50bE51bWJlcjp7IG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMiB9IH19IC8vIFwiMSwyMzQuNTZcIlxuICovXG5AUGlwZSh7XG4gIG5hbWU6ICdhY2xJbnRsTnVtYmVyJyxcbiAgcHVyZTogZmFsc2UsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEludGxOdW1iZXJQaXBlIGV4dGVuZHMgQmFzZUludGxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybSh2YWx1ZTogbnVtYmVyLCBvcHRpb25zPzogSW50bC5OdW1iZXJGb3JtYXRPcHRpb25zKTogc3RyaW5nIHtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCB8fCBpc05hTih2YWx1ZSkpIHtcbiAgICAgIHJldHVybiBGSUVMRF9OT1RfQVZBSUxBQkxFX1BMQUNFSE9MREVSO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5mb3JtYXROdW1iZXIodmFsdWUsIG9wdGlvbnMgfHwge30pO1xuICB9XG59XG5cbi8qKlxuICog6LSn5biB5qC85byP5YyWIFBpcGVcbiAqIEBleGFtcGxlXG4gKiB7eyAxMjM0LjU2IHwgYWNsSW50bEN1cnJlbmN5IH19IC8vIFwiwqUxLDIzNC41NlwiXG4gKiB7eyAxMjM0LjU2IHwgYWNsSW50bEN1cnJlbmN5OidVU0QnIH19IC8vIFwiJDEsMjM0LjU2XCJcbiAqIHt7IDEyMzQuNTYgfCBhY2xJbnRsQ3VycmVuY3k6J0VVUic6eyBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IDIgfSB9fSAvLyBcIuKCrDEsMjM0LjU2XCJcbiAqL1xuQFBpcGUoe1xuICBuYW1lOiAnYWNsSW50bEN1cnJlbmN5JyxcbiAgcHVyZTogZmFsc2UsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEludGxDdXJyZW5jeVBpcGUgZXh0ZW5kcyBCYXNlSW50bFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKFxuICAgIHZhbHVlOiBudW1iZXIsXG4gICAgY3VycmVuY3k/OiBzdHJpbmcsXG4gICAgb3B0aW9ucz86IEludGwuTnVtYmVyRm9ybWF0T3B0aW9ucyxcbiAgKTogc3RyaW5nIHtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCB8fCBpc05hTih2YWx1ZSkpIHtcbiAgICAgIHJldHVybiBGSUVMRF9OT1RfQVZBSUxBQkxFX1BMQUNFSE9MREVSO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5mb3JtYXRDdXJyZW5jeSh2YWx1ZSwgY3VycmVuY3ksIG9wdGlvbnMpO1xuICB9XG59XG5cbi8qKlxuICog55m+5YiG5q+U5qC85byP5YyWIFBpcGVcbiAqIEBleGFtcGxlXG4gKiB7eyAwLjg1IHwgYWNsSW50bFBlcmNlbnQgfX0gLy8gXCI4NSVcIlxuICoge3sgMC44NTY3IHwgYWNsSW50bFBlcmNlbnQ6eyBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IDIgfSB9fSAvLyBcIjg1LjY3JVwiXG4gKi9cbkBQaXBlKHtcbiAgbmFtZTogJ2FjbEludGxQZXJjZW50JyxcbiAgcHVyZTogZmFsc2UsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEludGxQZXJjZW50UGlwZSBleHRlbmRzIEJhc2VJbnRsUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0oXG4gICAgdmFsdWU6IG51bWJlcixcbiAgICBvcHRpb25zPzogT21pdDxJbnRsLk51bWJlckZvcm1hdE9wdGlvbnMsICdzdHlsZSc+LFxuICApOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsIHx8IGlzTmFOKHZhbHVlKSkge1xuICAgICAgcmV0dXJuIEZJRUxEX05PVF9BVkFJTEFCTEVfUExBQ0VIT0xERVI7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmZvcm1hdFBlcmNlbnQodmFsdWUsIG9wdGlvbnMgfHwge30pO1xuICB9XG59XG5cbi8qKlxuICog5pel5pyf5qC85byP5YyWIFBpcGVcbiAqIEBleGFtcGxlXG4gKiB7eyBkYXRlIHwgYWNsSW50bERhdGUgfX0gLy8gXCIyMDI1LzAxLzAxXCJcbiAqIHt7IGRhdGUgfCBhY2xJbnRsRGF0ZTp7IGRhdGVTdHlsZTogJ2xvbmcnIH0gfX0gLy8gXCIyMDI15bm0MeaciDHml6VcIlxuICoge3sgZGF0ZSB8IGFjbEludGxEYXRlOnsgeWVhcjogJ251bWVyaWMnLCBtb250aDogJ2xvbmcnIH0gfX0gLy8gXCIyMDI15bm0MeaciFwiXG4gKi9cbkBQaXBlKHtcbiAgbmFtZTogJ2FjbEludGxEYXRlJyxcbiAgcHVyZTogZmFsc2UsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEludGxEYXRlUGlwZSBleHRlbmRzIEJhc2VJbnRsUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0oXG4gICAgdmFsdWU6IERhdGUgfCBzdHJpbmcgfCBudW1iZXIsXG4gICAgb3B0aW9ucz86IEludGwuRGF0ZVRpbWVGb3JtYXRPcHRpb25zLFxuICApOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gRklFTERfTk9UX0FWQUlMQUJMRV9QTEFDRUhPTERFUjtcbiAgICB9XG5cbiAgICAvLyDmo4Dmn6Xml6XmnJ/mmK/lkKbmnInmlYhcbiAgICBjb25zdCBkYXRlID0gdmFsdWUgaW5zdGFuY2VvZiBEYXRlID8gdmFsdWUgOiBuZXcgRGF0ZSh2YWx1ZSk7XG4gICAgaWYgKGlzTmFOKGRhdGUuZ2V0VGltZSgpKSkge1xuICAgICAgcmV0dXJuIEZJRUxEX05PVF9BVkFJTEFCTEVfUExBQ0VIT0xERVI7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmZvcm1hdERhdGUodmFsdWUsIG9wdGlvbnMpO1xuICB9XG59XG5cbi8qKlxuICog5pel5pyf5pe26Ze05qC85byP5YyWIFBpcGVcbiAqIEBleGFtcGxlXG4gKiB7eyBkYXRlIHwgYWNsSW50bERhdGVUaW1lIH19IC8vIFwiMjAyNS8wMS8wMSAxNDozMDowMFwiXG4gKiB7eyBkYXRlIHwgYWNsSW50bERhdGVUaW1lOnsgZGF0ZVN0eWxlOiAnbWVkaXVtJywgdGltZVN0eWxlOiAnc2hvcnQnIH0gfX0gLy8gXCIyMDI15bm0MeaciDHml6UgMTQ6MzBcIlxuICovXG5AUGlwZSh7XG4gIG5hbWU6ICdhY2xJbnRsRGF0ZVRpbWUnLFxuICBwdXJlOiBmYWxzZSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgSW50bERhdGVUaW1lUGlwZSBleHRlbmRzIEJhc2VJbnRsUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0oXG4gICAgdmFsdWU6IERhdGUgfCBzdHJpbmcgfCBudW1iZXIsXG4gICAgb3B0aW9ucz86IEludGwuRGF0ZVRpbWVGb3JtYXRPcHRpb25zLFxuICApOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gRklFTERfTk9UX0FWQUlMQUJMRV9QTEFDRUhPTERFUjtcbiAgICB9XG5cbiAgICAvLyDmo4Dmn6Xml6XmnJ/mmK/lkKbmnInmlYhcbiAgICBjb25zdCBkYXRlID0gdmFsdWUgaW5zdGFuY2VvZiBEYXRlID8gdmFsdWUgOiBuZXcgRGF0ZSh2YWx1ZSk7XG4gICAgaWYgKGlzTmFOKGRhdGUuZ2V0VGltZSgpKSkge1xuICAgICAgcmV0dXJuIEZJRUxEX05PVF9BVkFJTEFCTEVfUExBQ0VIT0xERVI7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmZvcm1hdERhdGVUaW1lKHZhbHVlLCBvcHRpb25zKTtcbiAgfVxufVxuXG4vLyDml7bpl7Tpl7TpmpTluLjph48gKOavq+enkilcbmNvbnN0IE1JTExJU0VDT05EU19TRUNPTkQgPSAxMDAwO1xuY29uc3QgTUlMTElTRUNPTkRTX01JTlVURSA9IE1JTExJU0VDT05EU19TRUNPTkQgKiA2MDtcbmNvbnN0IE1JTExJU0VDT05EU19IT1VSID0gTUlMTElTRUNPTkRTX01JTlVURSAqIDYwO1xuY29uc3QgTUlMTElTRUNPTkRTX0RBWSA9IE1JTExJU0VDT05EU19IT1VSICogMjQ7XG5cbi8qKlxuICog55u45a+55pe26Ze05qC85byP5YyWIFBpcGVcbiAqIOaUr+aMgeS4pOenjeS9v+eUqOaWueW8j++8mlxuICogMS4g5Lyg5YWlIERhdGUg5a+56LGh77yM6Ieq5Yqo6K6h566X55u45a+55pe26Ze0XG4gKiAyLiDkvKDlhaXmlbDlgLzlkozljZXkvY3vvIzmiYvliqjmjIflrprnm7jlr7nml7bpl7RcbiAqXG4gKiDnibnmgKfvvJpcbiAqIC0g6Ieq5Yqo5Yi35pawVUnvvJrmoLnmja7ml7bpl7Tot53nprvmmbrog73osIPmlbTliLfmlrDpopHnjodcbiAqIC0g5oCn6IO95LyY5YyW77ya5YWx5Lqr5a6a5pe25Zmo77yM6YG/5YWN5aSn6YeP5Y2V54us6K6h5pe25ZmoXG4gKiAtIOWTjeW6lOW8j+iuvuiuoe+8muebkeWQrOivreiogOWPmOWMluiHquWKqOabtOaWsFxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyDoh6rliqjorqHnrpdcbiAqIHt7IHBhc3REYXRlIHwgYWNsSW50bFJlbGF0aXZlVGltZSB9fSAvLyBcIjIgaG91cnMgYWdvXCJcbiAqIHt7IGZ1dHVyZURhdGUgfCBhY2xJbnRsUmVsYXRpdmVUaW1lOnsgbnVtZXJpYzogJ2Fsd2F5cycgfSB9fSAvLyBcImluIDIgaG91cnNcIlxuICpcbiAqIC8vIOaJi+WKqOaMh+WumlxuICoge3sgLTEgfCBhY2xJbnRsUmVsYXRpdmVUaW1lOidkYXknIH19IC8vIFwieWVzdGVyZGF5XCJcbiAqIHt7IDIgfCBhY2xJbnRsUmVsYXRpdmVUaW1lOidob3VyJzp7IG51bWVyaWM6ICdhbHdheXMnIH0gfX0gLy8gXCJpbiAyIGhvdXJzXCJcbiAqIHt7IC0zMCB8IGFjbEludGxSZWxhdGl2ZVRpbWU6J21pbnV0ZSc6eyBudW1lcmljOiAnYWx3YXlzJyB9IH19IC8vIFwiMzAgbWludXRlcyBhZ29cIlxuICovXG5AUGlwZSh7XG4gIG5hbWU6ICdhY2xJbnRsUmVsYXRpdmVUaW1lJyxcbiAgcHVyZTogZmFsc2UsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEludGxSZWxhdGl2ZVRpbWVQaXBlXG4gIGV4dGVuZHMgQmFzZUludGxQaXBlXG4gIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSwgT25EZXN0cm95XG57XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVsYXRpdmVUaW1lTWFuYWdlciA9IGluamVjdChSZWxhdGl2ZVRpbWVNYW5hZ2VyU2VydmljZSk7XG5cbiAgcHJpdmF0ZSBjdXJyZW50SW50ZXJ2YWw/OiBudW1iZXI7XG4gIHByaXZhdGUgcmVmcmVzaFN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBjdXJyZW50VmFsdWU/OiBEYXRlO1xuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5jbGVhbnVwUmVmcmVzaCgpO1xuICB9XG5cbiAgdHJhbnNmb3JtKFxuICAgIHZhbHVlOiBEYXRlIHwgbnVtYmVyLFxuICAgIHVuaXRPck9wdGlvbnM/OlxuICAgICAgfCBJbnRsLlJlbGF0aXZlVGltZUZvcm1hdFVuaXRcbiAgICAgIHwgSW50bC5SZWxhdGl2ZVRpbWVGb3JtYXRPcHRpb25zLFxuICAgIG9wdGlvbnM/OiBJbnRsLlJlbGF0aXZlVGltZUZvcm1hdE9wdGlvbnMsXG4gICk6IHN0cmluZyB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBGSUVMRF9OT1RfQVZBSUxBQkxFX1BMQUNFSE9MREVSO1xuICAgIH1cblxuICAgIC8vIOaDheWGtTE6IOS8oOWFpSBEYXRlIOWvueixoe+8jOiHquWKqOiuoeeul+ebuOWvueaXtumXtO+8iOaUr+aMgeiHquWKqOWIt+aWsO+8iVxuICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgIHRoaXMuY3VycmVudFZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLnNldHVwQXV0b1JlZnJlc2godmFsdWUpO1xuXG4gICAgICBjb25zdCByZWxhdGl2ZU9wdGlvbnMgPSB1bml0T3JPcHRpb25zIGFzXG4gICAgICAgIHwgSW50bC5SZWxhdGl2ZVRpbWVGb3JtYXRPcHRpb25zXG4gICAgICAgIHwgdW5kZWZpbmVkO1xuXG4gICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuZm9ybWF0UmVsYXRpdmVUaW1lKHZhbHVlLCByZWxhdGl2ZU9wdGlvbnMpO1xuICAgIH1cblxuICAgIC8vIOaDheWGtTI6IOS8oOWFpeaVsOWtl++8jOmcgOimgeaJi+WKqOaMh+WumuWNleS9je+8iOS4jemcgOimgeiHquWKqOWIt+aWsO+8iVxuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICB0aGlzLmNsZWFudXBSZWZyZXNoKCk7IC8vIOa4hemZpOWPr+iDveWtmOWcqOeahOWIt+aWsOiuoumYhVxuXG4gICAgICBpZiAoaXNOYU4odmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBGSUVMRF9OT1RfQVZBSUxBQkxFX1BMQUNFSE9MREVSO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB1bml0ID0gdW5pdE9yT3B0aW9ucyBhcyBJbnRsLlJlbGF0aXZlVGltZUZvcm1hdFVuaXQ7XG4gICAgICBpZiAoIXVuaXQpIHtcbiAgICAgICAgcmV0dXJuIEZJRUxEX05PVF9BVkFJTEFCTEVfUExBQ0VIT0xERVI7XG4gICAgICB9XG5cbiAgICAgIC8vIOWvueS6juaJi+WKqOaMh+WumuWNleS9jeeahOaDheWGte+8jOebtOaOpeiwg+eUqOe/u+ivkeacjeWKoVxuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmZvcm1hdFJlbGF0aXZlVGltZSh2YWx1ZSwgdW5pdCwgb3B0aW9ucyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIEZJRUxEX05PVF9BVkFJTEFCTEVfUExBQ0VIT0xERVI7XG4gIH1cblxuICAvKipcbiAgICog6K6+572u6Ieq5Yqo5Yi35paw5py65Yi2XG4gICAqIOS9v+eUqOWFseS6q+eahOiuoeaXtuWZqOeuoeeQhuWZqO+8jOaPkOmrmOWkmuWunuS+i+WcuuaZr+S4i+eahOaAp+iDvVxuICAgKiDml7bpl7Tpl7TpmpTlpKfkuo7kuIDlpKnml7bkuI3orr7nva7oh6rliqjliLfmlrBcbiAgICovXG4gIHByaXZhdGUgc2V0dXBBdXRvUmVmcmVzaChkYXRlOiBEYXRlKTogdm9pZCB7XG4gICAgY29uc3QgZGlzdGFuY2UgPSBNYXRoLmFicyhEYXRlLm5vdygpIC0gZGF0ZS5nZXRUaW1lKCkpO1xuXG4gICAgLy8g5pe26Ze06Ze06ZqU5aSn5LqO5LiA5aSp5pe277yM5LiN6ZyA6KaB6Ieq5Yqo5Yi35pawXG4gICAgaWYgKGRpc3RhbmNlID49IE1JTExJU0VDT05EU19EQVkpIHtcbiAgICAgIHRoaXMuY2xlYW51cFJlZnJlc2goKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgaW50ZXJ2YWw6IG51bWJlcjtcbiAgICBpZiAoZGlzdGFuY2UgPCBNSUxMSVNFQ09ORFNfTUlOVVRFKSB7XG4gICAgICBpbnRlcnZhbCA9IE1JTExJU0VDT05EU19TRUNPTkQ7XG4gICAgfSBlbHNlIGlmIChkaXN0YW5jZSA8IE1JTExJU0VDT05EU19IT1VSKSB7XG4gICAgICBpbnRlcnZhbCA9IE1JTExJU0VDT05EU19NSU5VVEU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGludGVydmFsID0gTUlMTElTRUNPTkRTX0hPVVI7XG4gICAgfVxuXG4gICAgLy8g5aaC5p6c5Yi35paw6Ze06ZqU5rKh5pyJ5Y+Y5YyW77yM5peg6ZyA6YeN5paw6K6i6ZiFXG4gICAgaWYgKHRoaXMuY3VycmVudEludGVydmFsID09PSBpbnRlcnZhbCAmJiB0aGlzLnJlZnJlc2hTdWJzY3JpcHRpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmNsZWFudXBSZWZyZXNoKCk7XG4gICAgdGhpcy5jdXJyZW50SW50ZXJ2YWwgPSBpbnRlcnZhbDtcblxuICAgIC8vIOiuoumYheWFseS6q+eahOWIt+aWsOS6i+S7tlxuICAgIHRoaXMucmVmcmVzaFN1YnNjcmlwdGlvbiA9IHRoaXMucmVsYXRpdmVUaW1lTWFuYWdlclxuICAgICAgLmdldFJlZnJlc2hTdWJqZWN0KGludGVydmFsKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQkKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgLy8g6YeN5paw6K6h566X5Yi35paw6Ze06ZqU77yM6YCC5bqU5pe26Ze05Y+Y5YyWXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgIHRoaXMuc2V0dXBBdXRvUmVmcmVzaCh0aGlzLmN1cnJlbnRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIOa4heeQhuWIt+aWsOebuOWFs+i1hOa6kFxuICAgKi9cbiAgcHJpdmF0ZSBjbGVhbnVwUmVmcmVzaCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZWZyZXNoU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnJlZnJlc2hTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMucmVmcmVzaFN1YnNjcmlwdGlvbiA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jdXJyZW50SW50ZXJ2YWwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5yZWxhdGl2ZVRpbWVNYW5hZ2VyLnJlbGVhc2VSZWZyZXNoU3ViamVjdCh0aGlzLmN1cnJlbnRJbnRlcnZhbCk7XG4gICAgICB0aGlzLmN1cnJlbnRJbnRlcnZhbCA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -6,12 +6,13 @@
6
6
  /** imports */
7
7
  export * from './constants';
8
8
  export * from './helpers';
9
+ export * from './i18n-assets-loader';
10
+ export * from './i18n-config';
11
+ export * from './intl-format.pipes';
9
12
  export * from './tokens';
10
13
  export * from './translate.directive';
11
14
  export * from './translate.module';
12
15
  export * from './translate.pipe';
13
16
  export * from './translate.service';
14
17
  export * from './types';
15
- export * from './i18n-assets-loader';
16
- export * from './i18n-config';
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy90cmFuc2xhdGUvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsY0FBYztBQUNkLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogW1tpbmNsdWRlOnRyYW5zbGF0ZS9SRUFETUUubWRdXVxuICogQG1vZHVsZSB0cmFuc2xhdGVcbiAqIEBwcmVmZXJyZWRcbiAqL1xuXG4vKiogaW1wb3J0cyAqL1xuZXhwb3J0ICogZnJvbSAnLi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9oZWxwZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vdG9rZW5zJztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3RyYW5zbGF0ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi90cmFuc2xhdGUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3RyYW5zbGF0ZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9pMThuLWFzc2V0cy1sb2FkZXInO1xuZXhwb3J0ICogZnJvbSAnLi9pMThuLWNvbmZpZyc7XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy90cmFuc2xhdGUvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsY0FBYztBQUNkLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBbW2luY2x1ZGU6dHJhbnNsYXRlL1JFQURNRS5tZF1dXG4gKiBAbW9kdWxlIHRyYW5zbGF0ZVxuICogQHByZWZlcnJlZFxuICovXG5cbi8qKiBpbXBvcnRzICovXG5leHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2hlbHBlcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9pMThuLWFzc2V0cy1sb2FkZXInO1xuZXhwb3J0ICogZnJvbSAnLi9pMThuLWNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2ludGwtZm9ybWF0LnBpcGVzJztcbmV4cG9ydCAqIGZyb20gJy4vdG9rZW5zJztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3RyYW5zbGF0ZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi90cmFuc2xhdGUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3RyYW5zbGF0ZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuIl19