@onecx/angular-accelerator 4.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/README.md +7 -0
  2. package/assets/i18n/de.json +130 -0
  3. package/assets/i18n/en.json +130 -0
  4. package/assets/images/placeholder.png +0 -0
  5. package/assets/styles.scss +8 -0
  6. package/esm2020/index.mjs +49 -0
  7. package/esm2020/lib/angular-accelerator-primeng.module.mjs +83 -0
  8. package/esm2020/lib/angular-accelerator.module.mjs +209 -0
  9. package/esm2020/lib/components/column-group-selection/column-group-selection.component.mjs +72 -0
  10. package/esm2020/lib/components/custom-group-column-selector/custom-group-column-selector.component.mjs +108 -0
  11. package/esm2020/lib/components/data-layout-selection/data-layout-selection.component.mjs +45 -0
  12. package/esm2020/lib/components/data-list-grid/data-list-grid.component.mjs +358 -0
  13. package/esm2020/lib/components/data-list-grid-sorting/data-list-grid-sorting.component.mjs +92 -0
  14. package/esm2020/lib/components/data-sort-base/data-sort-base.mjs +110 -0
  15. package/esm2020/lib/components/data-table/data-table.component.mjs +350 -0
  16. package/esm2020/lib/components/data-view/data-view.component.mjs +355 -0
  17. package/esm2020/lib/components/diagram/diagram.component.mjs +136 -0
  18. package/esm2020/lib/components/group-by-count-diagram/group-by-count-diagram.component.mjs +109 -0
  19. package/esm2020/lib/components/interactive-data-view/interactive-data-view.component.mjs +342 -0
  20. package/esm2020/lib/components/page-header/page-header.component.mjs +189 -0
  21. package/esm2020/lib/components/search-config/search-config.component.mjs +34 -0
  22. package/esm2020/lib/components/search-header/search-header.component.mjs +136 -0
  23. package/esm2020/lib/directives/if-breakpoint.directive.mjs +39 -0
  24. package/esm2020/lib/directives/if-permission.directive.mjs +53 -0
  25. package/esm2020/lib/functions/flatten-object.mjs +20 -0
  26. package/esm2020/lib/model/breadcrumb-menu-item.model.mjs +2 -0
  27. package/esm2020/lib/model/column-type.model.mjs +9 -0
  28. package/esm2020/lib/model/data-action.mjs +2 -0
  29. package/esm2020/lib/model/data-column-name-id.model.mjs +2 -0
  30. package/esm2020/lib/model/data-sort-direction.mjs +2 -0
  31. package/esm2020/lib/model/data-table-column.model.mjs +2 -0
  32. package/esm2020/lib/model/diagram-column.mjs +2 -0
  33. package/esm2020/lib/model/diagram-data.mjs +2 -0
  34. package/esm2020/lib/model/diagram-type.mjs +2 -0
  35. package/esm2020/lib/model/search-config-info.mjs +2 -0
  36. package/esm2020/lib/pipes/dynamic.pipe.mjs +58 -0
  37. package/esm2020/lib/pipes/ocxtimeago.pipe.mjs +15 -0
  38. package/esm2020/lib/services/breadcrumb.service.mjs +79 -0
  39. package/esm2020/lib/services/translation-cache.service.mjs +54 -0
  40. package/esm2020/lib/utils/async-translate-loader.utils.mjs +12 -0
  41. package/esm2020/lib/utils/caching-translate-loader.utils.mjs +15 -0
  42. package/esm2020/lib/utils/colorutils.mjs +19 -0
  43. package/esm2020/lib/utils/create-translate-loader.utils.mjs +23 -0
  44. package/esm2020/lib/utils/dateutils.mjs +32 -0
  45. package/esm2020/lib/utils/objectutils.mjs +30 -0
  46. package/esm2020/lib/utils/ocxtimeagointl.utils.mjs +34 -0
  47. package/esm2020/lib/utils/primeicon.utils.mjs +2 -0
  48. package/esm2020/lib/utils/translate.combined.loader.mjs +36 -0
  49. package/esm2020/onecx-angular-accelerator.mjs +5 -0
  50. package/esm2020/testing/column-group-selection.harness.mjs +10 -0
  51. package/esm2020/testing/custom-group-column-selector.harness.mjs +31 -0
  52. package/esm2020/testing/data-layout-selection.harness.mjs +33 -0
  53. package/esm2020/testing/data-list-grid.harness.mjs +47 -0
  54. package/esm2020/testing/data-table.harness.mjs +57 -0
  55. package/esm2020/testing/data-view.harness.mjs +12 -0
  56. package/esm2020/testing/default-grid-item.harness.mjs +24 -0
  57. package/esm2020/testing/default-list-item.harness.mjs +24 -0
  58. package/esm2020/testing/diagram.harness.mjs +22 -0
  59. package/esm2020/testing/index.mjs +17 -0
  60. package/esm2020/testing/interactive-data-view.harness.mjs +19 -0
  61. package/esm2020/testing/more-actions-menu-button.harness.mjs +35 -0
  62. package/esm2020/testing/onecx-angular-accelerator-testing.mjs +5 -0
  63. package/esm2020/testing/page-header.harness.mjs +36 -0
  64. package/esm2020/testing/search-config.harness.mjs +10 -0
  65. package/fesm2015/onecx-angular-accelerator-testing.mjs +430 -0
  66. package/fesm2015/onecx-angular-accelerator-testing.mjs.map +1 -0
  67. package/fesm2015/onecx-angular-accelerator.mjs +3118 -0
  68. package/fesm2015/onecx-angular-accelerator.mjs.map +1 -0
  69. package/fesm2020/onecx-angular-accelerator-testing.mjs +338 -0
  70. package/fesm2020/onecx-angular-accelerator-testing.mjs.map +1 -0
  71. package/fesm2020/onecx-angular-accelerator.mjs +3085 -0
  72. package/fesm2020/onecx-angular-accelerator.mjs.map +1 -0
  73. package/index.d.ts +38 -0
  74. package/lib/angular-accelerator-primeng.module.d.ts +16 -0
  75. package/lib/angular-accelerator.module.d.ts +32 -0
  76. package/lib/components/column-group-selection/column-group-selection.component.d.ts +28 -0
  77. package/lib/components/custom-group-column-selector/custom-group-column-selector.component.d.ts +45 -0
  78. package/lib/components/data-layout-selection/data-layout-selection.component.d.ts +25 -0
  79. package/lib/components/data-list-grid/data-list-grid.component.d.ts +120 -0
  80. package/lib/components/data-list-grid-sorting/data-list-grid-sorting.component.d.ts +30 -0
  81. package/lib/components/data-sort-base/data-sort-base.d.ts +32 -0
  82. package/lib/components/data-table/data-table.component.d.ts +124 -0
  83. package/lib/components/data-view/data-view.component.d.ts +112 -0
  84. package/lib/components/diagram/diagram.component.d.ts +43 -0
  85. package/lib/components/group-by-count-diagram/group-by-count-diagram.component.d.ts +39 -0
  86. package/lib/components/interactive-data-view/interactive-data-view.component.d.ts +108 -0
  87. package/lib/components/page-header/page-header.component.d.ts +90 -0
  88. package/lib/components/search-config/search-config.component.d.ts +16 -0
  89. package/lib/components/search-header/search-header.component.d.ts +46 -0
  90. package/lib/directives/if-breakpoint.directive.d.ts +12 -0
  91. package/lib/directives/if-permission.directive.d.ts +18 -0
  92. package/lib/functions/flatten-object.d.ts +14 -0
  93. package/lib/model/breadcrumb-menu-item.model.d.ts +60 -0
  94. package/lib/model/column-type.model.d.ts +7 -0
  95. package/lib/model/data-action.d.ts +9 -0
  96. package/lib/model/data-column-name-id.model.d.ts +4 -0
  97. package/lib/model/data-sort-direction.d.ts +5 -0
  98. package/lib/model/data-table-column.model.d.ts +9 -0
  99. package/lib/model/diagram-column.d.ts +5 -0
  100. package/lib/model/diagram-data.d.ts +4 -0
  101. package/lib/model/diagram-type.d.ts +5 -0
  102. package/lib/model/search-config-info.d.ts +4 -0
  103. package/lib/pipes/dynamic.pipe.d.ts +13 -0
  104. package/lib/pipes/ocxtimeago.pipe.d.ts +6 -0
  105. package/lib/services/breadcrumb.service.d.ts +20 -0
  106. package/lib/services/translation-cache.service.d.ts +12 -0
  107. package/lib/utils/async-translate-loader.utils.d.ts +9 -0
  108. package/lib/utils/caching-translate-loader.utils.d.ts +13 -0
  109. package/lib/utils/colorutils.d.ts +12 -0
  110. package/lib/utils/create-translate-loader.utils.d.ts +5 -0
  111. package/lib/utils/dateutils.d.ts +9 -0
  112. package/lib/utils/objectutils.d.ts +4 -0
  113. package/lib/utils/ocxtimeagointl.utils.d.ts +9 -0
  114. package/lib/utils/primeicon.utils.d.ts +5 -0
  115. package/lib/utils/translate.combined.loader.d.ts +9 -0
  116. package/package.json +55 -0
  117. package/testing/column-group-selection.harness.d.ts +6 -0
  118. package/testing/custom-group-column-selector.harness.d.ts +14 -0
  119. package/testing/data-layout-selection.harness.d.ts +11 -0
  120. package/testing/data-list-grid.harness.d.ts +15 -0
  121. package/testing/data-table.harness.d.ts +17 -0
  122. package/testing/data-view.harness.d.ts +8 -0
  123. package/testing/default-grid-item.harness.d.ts +11 -0
  124. package/testing/default-list-item.harness.d.ts +12 -0
  125. package/testing/diagram.harness.d.ts +10 -0
  126. package/testing/index.d.ts +16 -0
  127. package/testing/interactive-data-view.harness.d.ts +15 -0
  128. package/testing/more-actions-menu-button.harness.d.ts +10 -0
  129. package/testing/page-header.harness.d.ts +13 -0
  130. package/testing/search-config.harness.d.ts +6 -0
@@ -0,0 +1,20 @@
1
+ export function flattenObject(ob) {
2
+ const toReturn = {};
3
+ for (const i in ob) {
4
+ if (!Object.prototype.hasOwnProperty.call(ob, i))
5
+ continue;
6
+ if (!!ob[i] && typeof ob[i] == 'object' && !(ob[i] instanceof Date) && !Array.isArray(ob[i])) {
7
+ const flatObject = flattenObject(ob[i]);
8
+ for (const x in flatObject) {
9
+ if (!Object.prototype.hasOwnProperty.call(flatObject, x))
10
+ continue;
11
+ toReturn[i + '.' + x] = flatObject[x];
12
+ }
13
+ }
14
+ else {
15
+ toReturn[i] = ob[i];
16
+ }
17
+ }
18
+ return toReturn;
19
+ }
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxhdHRlbi1vYmplY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9mdW5jdGlvbnMvZmxhdHRlbi1vYmplY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEJBLE1BQU0sVUFBVSxhQUFhLENBQW9DLEVBQUs7SUFDcEUsTUFBTSxRQUFRLEdBQTRCLEVBQUUsQ0FBQTtJQUU1QyxLQUFLLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBRTtRQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFBRSxTQUFRO1FBRTFELElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxRQUFRLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDNUYsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQTRCLENBQUMsQ0FBQTtZQUNsRSxLQUFLLE1BQU0sQ0FBQyxJQUFJLFVBQVUsRUFBRTtnQkFDMUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO29CQUFFLFNBQVE7Z0JBRWxFLFFBQVEsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFJLFVBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUE7YUFDL0M7U0FDRjthQUFNO1lBQ0wsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtTQUNwQjtLQUNGO0lBQ0QsT0FBTyxRQUFxQixDQUFBO0FBQzlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJ0eXBlIEV4dGVuZDxUT2JqIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sIEsgZXh0ZW5kcyBzdHJpbmc+ID0ge1xuICBbVEtleSBpbiBrZXlvZiBUT2JqICYgc3RyaW5nIGFzIGAke0t9JHtUS2V5fWBdOiBUT2JqW1RLZXldIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICA/IEV4dGVuZDxUT2JqW1RLZXldLCBgJHtLfSR7VEtleX0uYD5cbiAgICA6IFRPYmpbVEtleV1cbn1cblxudHlwZSBOb25PYmplY3RLZXlzT2Y8VD4gPSB7XG4gIFtLIGluIGtleW9mIFRdOiBUW0tdIGV4dGVuZHMgQXJyYXk8YW55PiA/IEsgOiBUW0tdIGV4dGVuZHMgb2JqZWN0ID8gKFRbS10gZXh0ZW5kcyBEYXRlID8gSyA6IG5ldmVyKSA6IEtcbn1ba2V5b2YgVF1cblxudHlwZSBPYmplY3RLZXlzT2Y8VD4gPSB7XG4gIFtLIGluIGtleW9mIFRdOiBUW0tdIGV4dGVuZHMgQXJyYXk8YW55PiA/IG5ldmVyIDogVFtLXSBleHRlbmRzIG9iamVjdCA/IEsgOiBuZXZlclxufVtrZXlvZiBUXVxuXG50eXBlIEZpbHRlcjxUT2JqIGV4dGVuZHMgb2JqZWN0LCBUS2V5ID0ga2V5b2YgVE9iaj4gPSBUS2V5IGV4dGVuZHMga2V5b2YgVE9ialxuICA/IFRPYmpbVEtleV0gZXh0ZW5kcyBBcnJheTxhbnk+XG4gICAgPyBUT2JqXG4gICAgOiBUT2JqW1RLZXldIGV4dGVuZHMgb2JqZWN0XG4gICAgPyBGaWx0ZXI8VE9ialtUS2V5XT5cbiAgICA6IFBpY2s8VE9iaiwgTm9uT2JqZWN0S2V5c09mPFRPYmo+PiB8IEZpbHRlcjxQaWNrPFRPYmosIE9iamVjdEtleXNPZjxUT2JqPj4+XG4gIDogbmV2ZXJcblxudHlwZSBVbmlvblRvSW50ZXJzZWN0aW9uPFU+ID0gKFUgZXh0ZW5kcyBhbnkgPyAoazogVSkgPT4gdm9pZCA6IG5ldmVyKSBleHRlbmRzIChrOiBpbmZlciBJKSA9PiB2b2lkID8gSSA6IG5ldmVyXG5cbmV4cG9ydCB0eXBlIFJlc3VsdDxUT2JqIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4+ID0gVW5pb25Ub0ludGVyc2VjdGlvbjxGaWx0ZXI8RXh0ZW5kPFRPYmosICcnPj4+XG5cbmV4cG9ydCBmdW5jdGlvbiBmbGF0dGVuT2JqZWN0PE8gZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4ob2I6IE8pOiBSZXN1bHQ8Tz4ge1xuICBjb25zdCB0b1JldHVybjogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fVxuXG4gIGZvciAoY29uc3QgaSBpbiBvYikge1xuICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iLCBpKSkgY29udGludWVcblxuICAgIGlmICghIW9iW2ldICYmIHR5cGVvZiBvYltpXSA9PSAnb2JqZWN0JyAmJiAhKG9iW2ldIGluc3RhbmNlb2YgRGF0ZSkgJiYgIUFycmF5LmlzQXJyYXkob2JbaV0pKSB7XG4gICAgICBjb25zdCBmbGF0T2JqZWN0ID0gZmxhdHRlbk9iamVjdChvYltpXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilcbiAgICAgIGZvciAoY29uc3QgeCBpbiBmbGF0T2JqZWN0KSB7XG4gICAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGZsYXRPYmplY3QsIHgpKSBjb250aW51ZVxuXG4gICAgICAgIHRvUmV0dXJuW2kgKyAnLicgKyB4XSA9IChmbGF0T2JqZWN0IGFzIGFueSlbeF1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdG9SZXR1cm5baV0gPSBvYltpXVxuICAgIH1cbiAgfVxuICByZXR1cm4gdG9SZXR1cm4gYXMgUmVzdWx0PE8+XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi1tZW51LWl0ZW0ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9tb2RlbC9icmVhZGNydW1iLW1lbnUtaXRlbS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUXVlcnlQYXJhbXNIYW5kbGluZyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAncHJpbWVuZy9hcGknXG5leHBvcnQgaW50ZXJmYWNlIEJyZWFkQ3J1bWJNZW51SXRlbSB7XG4gIC8qKiBAZGVwcmVjYXRlZCB1c2UgbGFiZWxLZXkgaW5zdGVhZCAqL1xuICBsYWJlbD86IHN0cmluZ1xuICBsYWJlbEtleT86IHN0cmluZ1xuICBpY29uPzogc3RyaW5nXG4gIGNvbW1hbmQ/OiAoZXZlbnQ/OiBhbnkpID0+IHZvaWRcbiAgdXJsPzogc3RyaW5nXG4gIGl0ZW1zPzogTWVudUl0ZW1bXVxuICBleHBhbmRlZD86IGJvb2xlYW5cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIHZpc2libGU/OiBib29sZWFuXG4gIHRhcmdldD86IHN0cmluZ1xuICBlc2NhcGU/OiBib29sZWFuXG4gIHJvdXRlckxpbmtBY3RpdmVPcHRpb25zPzogYW55XG4gIHNlcGFyYXRvcj86IGJvb2xlYW5cbiAgYmFkZ2U/OiBzdHJpbmdcbiAgdG9vbHRpcD86IHN0cmluZ1xuICB0b29sdGlwUG9zaXRpb24/OiBzdHJpbmdcbiAgYmFkZ2VTdHlsZUNsYXNzPzogc3RyaW5nXG4gIHN0eWxlPzogYW55XG4gIHN0eWxlQ2xhc3M/OiBzdHJpbmdcbiAgLyoqIEBkZXByZWNhdGVkIHVzZSB0aXRsZUtleSBpbnN0ZWFkICovXG4gIHRpdGxlPzogc3RyaW5nXG4gIHRpdGxlS2V5Pzogc3RyaW5nXG4gIGlkPzogc3RyaW5nXG4gIGF1dG9tYXRpb25JZD86IGFueVxuICB0YWJpbmRleD86IHN0cmluZ1xuICByb3V0ZXJMaW5rPzogYW55XG4gIHF1ZXJ5UGFyYW1zPzoge1xuICAgIFtrOiBzdHJpbmddOiBhbnlcbiAgfVxuICBmcmFnbWVudD86IHN0cmluZ1xuICBxdWVyeVBhcmFtc0hhbmRsaW5nPzogUXVlcnlQYXJhbXNIYW5kbGluZ1xuICBwcmVzZXJ2ZUZyYWdtZW50PzogYm9vbGVhblxuICBza2lwTG9jYXRpb25DaGFuZ2U/OiBib29sZWFuXG4gIHJlcGxhY2VVcmw/OiBib29sZWFuXG4gIGljb25TdHlsZT86IGFueVxuICBpY29uQ2xhc3M/OiBzdHJpbmdcbiAgc3RhdGU/OiB7XG4gICAgW2s6IHN0cmluZ106IGFueVxuICB9XG4gIHRvb2x0aXBPcHRpb25zPzoge1xuICAgIHRvb2x0aXBMYWJlbD86IHN0cmluZ1xuICAgIHRvb2x0aXBQb3NpdGlvbj86IHN0cmluZ1xuICAgIHRvb2x0aXBFdmVudD86IHN0cmluZ1xuICAgIGFwcGVuZFRvPzogYW55XG4gICAgcG9zaXRpb25TdHlsZT86IHN0cmluZ1xuICAgIHRvb2x0aXBTdHlsZUNsYXNzPzogc3RyaW5nXG4gICAgdG9vbHRpcFpJbmRleD86IHN0cmluZ1xuICAgIGVzY2FwZT86IGJvb2xlYW5cbiAgICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgICBwb3NpdGlvblRvcD86IG51bWJlclxuICAgIHBvc2l0aW9uTGVmdD86IG51bWJlclxuICAgIHNob3dEZWxheT86IG51bWJlclxuICAgIGhpZGVEZWxheT86IG51bWJlclxuICAgIGxpZmU/OiBudW1iZXJcbiAgfVxufVxuIl19
@@ -0,0 +1,9 @@
1
+ export var ColumnType;
2
+ (function (ColumnType) {
3
+ ColumnType["STRING"] = "STRING";
4
+ ColumnType["NUMBER"] = "NUMBER";
5
+ ColumnType["DATE"] = "DATE";
6
+ ColumnType["RELATIVE_DATE"] = "RELATIVE_DATE";
7
+ ColumnType["TRANSLATION_KEY"] = "TRANSLATION_KEY";
8
+ })(ColumnType || (ColumnType = {}));
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLXR5cGUubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9tb2RlbC9jb2x1bW4tdHlwZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxVQU1YO0FBTkQsV0FBWSxVQUFVO0lBQ3BCLCtCQUFpQixDQUFBO0lBQ2pCLCtCQUFpQixDQUFBO0lBQ2pCLDJCQUFhLENBQUE7SUFDYiw2Q0FBK0IsQ0FBQTtJQUMvQixpREFBbUMsQ0FBQTtBQUNyQyxDQUFDLEVBTlcsVUFBVSxLQUFWLFVBQVUsUUFNckIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBDb2x1bW5UeXBlIHtcbiAgU1RSSU5HID0gJ1NUUklORycsXG4gIE5VTUJFUiA9ICdOVU1CRVInLFxuICBEQVRFID0gJ0RBVEUnLFxuICBSRUxBVElWRV9EQVRFID0gJ1JFTEFUSVZFX0RBVEUnLFxuICBUUkFOU0xBVElPTl9LRVkgPSAnVFJBTlNMQVRJT05fS0VZJyxcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9tb2RlbC9kYXRhLWFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBEYXRhQWN0aW9uIHtcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWxLZXk/OiBzdHJpbmdcbiAgaWNvbj86IHN0cmluZ1xuICBwZXJtaXNzaW9uOiBzdHJpbmdcbiAgY2xhc3Nlcz86IHN0cmluZ1tdXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBjYWxsYmFjazogKGRhdGE6IGFueSkgPT4gdm9pZFxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb2x1bW4tbmFtZS1pZC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1hY2NlbGVyYXRvci9zcmMvbGliL21vZGVsL2RhdGEtY29sdW1uLW5hbWUtaWQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRGF0YUNvbHVtbk5hbWVJZCB7XG4gIGNvbHVtbklkOiBzdHJpbmdcbiAgY29sdW1uTmFtZTogc3RyaW5nIHwgbnVtYmVyXG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1zb3J0LWRpcmVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1hY2NlbGVyYXRvci9zcmMvbGliL21vZGVsL2RhdGEtc29ydC1kaXJlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlbnVtIERhdGFTb3J0RGlyZWN0aW9uIHtcbiAgQVNDRU5ESU5HID0gJ0FTQ0VORElORycsXG4gIERFU0NFTkRJTkcgPSAnREVTQ0VORElORycsXG4gIE5PTkUgPSAnTk9ORScsXG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS1jb2x1bW4ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9tb2RlbC9kYXRhLXRhYmxlLWNvbHVtbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sdW1uVHlwZSB9IGZyb20gJy4vY29sdW1uLXR5cGUubW9kZWwnXG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRhYmxlQ29sdW1uIHtcbiAgY29sdW1uVHlwZTogQ29sdW1uVHlwZVxuICBuYW1lS2V5OiBzdHJpbmdcbiAgaWQ6IHN0cmluZ1xuICBzb3J0YWJsZT86IGJvb2xlYW5cbiAgZmlsdGVyYWJsZT86IGJvb2xlYW5cbiAgcHJlZGVmaW5lZEdyb3VwS2V5cz86IHN0cmluZ1tdXG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ3JhbS1jb2x1bW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9tb2RlbC9kaWFncmFtLWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sdW1uVHlwZSB9IGZyb20gJy4vY29sdW1uLXR5cGUubW9kZWwnXG5cbmV4cG9ydCB0eXBlIERpYWdyYW1Db2x1bW4gPSB7IGNvbHVtblR5cGU6IENvbHVtblR5cGU7IGlkOiBzdHJpbmcgfVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ3JhbS1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvbW9kZWwvZGlhZ3JhbS1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBEaWFncmFtRGF0YSA9IHsgbGFiZWw6IHN0cmluZzsgdmFsdWU6IG51bWJlciB9XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ3JhbS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvbW9kZWwvZGlhZ3JhbS10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW51bSBEaWFncmFtVHlwZSB7XG4gIFBJRSA9ICdQSUUnLFxuICBWRVJUSUNBTF9CQVIgPSAnVkVSVElDQUxfQkFSJyxcbiAgSE9SSVpPTlRBTF9CQVIgPSAnSE9SSVpPTlRBTF9CQVInLFxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvbmZpZy1pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvbW9kZWwvc2VhcmNoLWNvbmZpZy1pbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNlYXJjaENvbmZpZ0luZm8ge1xuICBpZDogc3RyaW5nXG4gIG5hbWU6IHN0cmluZ1xufVxuIl19
@@ -0,0 +1,58 @@
1
+ import { CurrencyPipe, DatePipe, DecimalPipe } from '@angular/common';
2
+ import { Inject, Injector, LOCALE_ID, Pipe } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ export class DynamicPipe {
5
+ constructor(locale, injector) {
6
+ this.injector = injector;
7
+ this.knownPipes = {};
8
+ this.knownPipes = {
9
+ currency: new CurrencyPipe(locale),
10
+ decimal: new DecimalPipe(locale),
11
+ date: new DatePipe(locale),
12
+ };
13
+ }
14
+ transform(value, requiredPipe, pipeArgs) {
15
+ if (!requiredPipe) {
16
+ return value;
17
+ }
18
+ const injector = Injector.create({
19
+ name: 'DynamicPipe',
20
+ parent: this.injector,
21
+ providers: [{ provide: requiredPipe }],
22
+ });
23
+ const pipe = injector.get(requiredPipe);
24
+ return pipe.transform(value, pipeArgs);
25
+ }
26
+ transform2(value, pipeToken, ...pipeArgs) {
27
+ if (!pipeToken) {
28
+ return value;
29
+ }
30
+ else {
31
+ // eslint-disable-next-line no-prototype-builtins
32
+ if (pipeToken && this.knownPipes.hasOwnProperty(pipeToken)) {
33
+ const pipe = this.knownPipes[pipeToken];
34
+ if (Array.isArray(pipeArgs)) {
35
+ return pipe.transform(value, ...pipeArgs);
36
+ }
37
+ else {
38
+ return pipe.transform(value, pipeArgs);
39
+ }
40
+ }
41
+ else {
42
+ return value;
43
+ }
44
+ }
45
+ }
46
+ }
47
+ DynamicPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicPipe, deps: [{ token: LOCALE_ID }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Pipe });
48
+ DynamicPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: DynamicPipe, name: "dynamicPipe" });
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicPipe, decorators: [{
50
+ type: Pipe,
51
+ args: [{
52
+ name: 'dynamicPipe',
53
+ }]
54
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
55
+ type: Inject,
56
+ args: [LOCALE_ID]
57
+ }] }, { type: i0.Injector }]; } });
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvcGlwZXMvZHluYW1pYy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ3JFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQXVCLE1BQU0sZUFBZSxDQUFBOztBQUt0RixNQUFNLE9BQU8sV0FBVztJQUV0QixZQUFzQyxNQUFjLEVBQVUsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQURoRixlQUFVLEdBQXNDLEVBQUUsQ0FBQTtRQUVoRCxJQUFJLENBQUMsVUFBVSxHQUFHO1lBQ2hCLFFBQVEsRUFBRSxJQUFJLFlBQVksQ0FBQyxNQUFNLENBQUM7WUFDbEMsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDLE1BQU0sQ0FBQztZQUNoQyxJQUFJLEVBQUUsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDO1NBQzNCLENBQUE7SUFDSCxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQVUsRUFBRSxZQUF3QixFQUFFLFFBQWM7UUFDNUQsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNqQixPQUFPLEtBQUssQ0FBQTtTQUNiO1FBRUQsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUMvQixJQUFJLEVBQUUsYUFBYTtZQUNuQixNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDckIsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLENBQUM7U0FDdkMsQ0FBQyxDQUFBO1FBQ0YsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUN2QyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFBO0lBQ3hDLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBVSxFQUFFLFNBQWMsRUFBRSxHQUFHLFFBQWU7UUFDdkQsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNkLE9BQU8sS0FBSyxDQUFBO1NBQ2I7YUFBTTtZQUNMLGlEQUFpRDtZQUNqRCxJQUFJLFNBQVMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDMUQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQkFDdkMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO29CQUMzQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUE7aUJBQzFDO3FCQUFNO29CQUNMLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUE7aUJBQ3ZDO2FBQ0Y7aUJBQU07Z0JBQ0wsT0FBTyxLQUFLLENBQUE7YUFDYjtTQUNGO0lBQ0gsQ0FBQzs7eUdBeENVLFdBQVcsa0JBRUssU0FBUzt1R0FGekIsV0FBVzs0RkFBWCxXQUFXO2tCQUh2QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxhQUFhO2lCQUNwQjs7MEJBR3FCLE1BQU07MkJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1cnJlbmN5UGlwZSwgRGF0ZVBpcGUsIERlY2ltYWxQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RvciwgTE9DQUxFX0lELCBQaXBlLCBQaXBlVHJhbnNmb3JtLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuQFBpcGUoe1xuICBuYW1lOiAnZHluYW1pY1BpcGUnLFxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICBrbm93blBpcGVzOiB7IFtuYW1lOiBzdHJpbmddOiBQaXBlVHJhbnNmb3JtIH0gPSB7fVxuICBwdWJsaWMgY29uc3RydWN0b3IoQEluamVjdChMT0NBTEVfSUQpIGxvY2FsZTogc3RyaW5nLCBwcml2YXRlIGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHRoaXMua25vd25QaXBlcyA9IHtcbiAgICAgIGN1cnJlbmN5OiBuZXcgQ3VycmVuY3lQaXBlKGxvY2FsZSksXG4gICAgICBkZWNpbWFsOiBuZXcgRGVjaW1hbFBpcGUobG9jYWxlKSxcbiAgICAgIGRhdGU6IG5ldyBEYXRlUGlwZShsb2NhbGUpLFxuICAgIH1cbiAgfVxuXG4gIHRyYW5zZm9ybSh2YWx1ZTogYW55LCByZXF1aXJlZFBpcGU/OiBUeXBlPGFueT4sIHBpcGVBcmdzPzogYW55KTogYW55IHtcbiAgICBpZiAoIXJlcXVpcmVkUGlwZSkge1xuICAgICAgcmV0dXJuIHZhbHVlXG4gICAgfVxuXG4gICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgbmFtZTogJ0R5bmFtaWNQaXBlJyxcbiAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvcixcbiAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogcmVxdWlyZWRQaXBlIH1dLFxuICAgIH0pXG4gICAgY29uc3QgcGlwZSA9IGluamVjdG9yLmdldChyZXF1aXJlZFBpcGUpXG4gICAgcmV0dXJuIHBpcGUudHJhbnNmb3JtKHZhbHVlLCBwaXBlQXJncylcbiAgfVxuXG4gIHRyYW5zZm9ybTIodmFsdWU6IGFueSwgcGlwZVRva2VuOiBhbnksIC4uLnBpcGVBcmdzOiBhbnlbXSk6IGFueSB7XG4gICAgaWYgKCFwaXBlVG9rZW4pIHtcbiAgICAgIHJldHVybiB2YWx1ZVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcHJvdG90eXBlLWJ1aWx0aW5zXG4gICAgICBpZiAocGlwZVRva2VuICYmIHRoaXMua25vd25QaXBlcy5oYXNPd25Qcm9wZXJ0eShwaXBlVG9rZW4pKSB7XG4gICAgICAgIGNvbnN0IHBpcGUgPSB0aGlzLmtub3duUGlwZXNbcGlwZVRva2VuXVxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShwaXBlQXJncykpIHtcbiAgICAgICAgICByZXR1cm4gcGlwZS50cmFuc2Zvcm0odmFsdWUsIC4uLnBpcGVBcmdzKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBwaXBlLnRyYW5zZm9ybSh2YWx1ZSwgcGlwZUFyZ3MpXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB2YWx1ZVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,15 @@
1
+ import { Pipe } from '@angular/core';
2
+ import { TimeagoPipe } from 'ngx-timeago';
3
+ import * as i0 from "@angular/core";
4
+ // eslint-disable-next-line @angular-eslint/use-pipe-transform-interface
5
+ export class OcxTimeAgoPipe extends TimeagoPipe {
6
+ }
7
+ OcxTimeAgoPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OcxTimeAgoPipe, deps: null, target: i0.ɵɵFactoryTarget.Pipe });
8
+ OcxTimeAgoPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: OcxTimeAgoPipe, name: "timeago" });
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OcxTimeAgoPipe, decorators: [{
10
+ type: Pipe,
11
+ args: [{
12
+ name: 'timeago',
13
+ }]
14
+ }] });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2N4dGltZWFnby5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvcGlwZXMvb2N4dGltZWFnby5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDcEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQTs7QUFLekMsd0VBQXdFO0FBQ3hFLE1BQU0sT0FBTyxjQUFlLFNBQVEsV0FBVzs7NEdBQWxDLGNBQWM7MEdBQWQsY0FBYzs0RkFBZCxjQUFjO2tCQUoxQixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxTQUFTO2lCQUNoQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVGltZWFnb1BpcGUgfSBmcm9tICduZ3gtdGltZWFnbydcblxuQFBpcGUoe1xuICBuYW1lOiAndGltZWFnbycsXG59KVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC91c2UtcGlwZS10cmFuc2Zvcm0taW50ZXJmYWNlXG5leHBvcnQgY2xhc3MgT2N4VGltZUFnb1BpcGUgZXh0ZW5kcyBUaW1lYWdvUGlwZSB7fVxuIl19
@@ -0,0 +1,79 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { ActivatedRoute, NavigationEnd, Router } from '@angular/router';
3
+ import { TranslateService } from '@ngx-translate/core';
4
+ import { BehaviorSubject, filter } from 'rxjs';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/router";
7
+ import * as i2 from "@ngx-translate/core";
8
+ export class BreadcrumbService {
9
+ constructor(router, activeRoute, translateService) {
10
+ this.router = router;
11
+ this.activeRoute = activeRoute;
12
+ this.translateService = translateService;
13
+ this.itemsSource = new BehaviorSubject([]);
14
+ this.generatedItemsSource = new BehaviorSubject([]);
15
+ this.itemsHandler = this.itemsSource.asObservable();
16
+ const breadcrumbs = [];
17
+ this.addBreadcrumb(this.activeRoute.snapshot, [], breadcrumbs);
18
+ this.generatedItemsSource.next(breadcrumbs);
19
+ this.router.events.pipe(filter((e) => e instanceof NavigationEnd)).subscribe(() => {
20
+ const root = this.router.routerState.snapshot.root;
21
+ const breadcrumbs = [];
22
+ this.addBreadcrumb(root, [], breadcrumbs);
23
+ this.generatedItemsSource.next(breadcrumbs);
24
+ });
25
+ }
26
+ addBreadcrumb(route, parentUrl, breadcrumbs) {
27
+ if (route && route.url) {
28
+ const routeUrl = parentUrl.concat(route.url.map((url) => url.path));
29
+ if (route.routeConfig?.path) {
30
+ if (route.data['breadcrumb']) {
31
+ const breadcrumb = {
32
+ label: this.getLabel(route.data, route.paramMap),
33
+ routerLink: '/' + routeUrl.join('/'),
34
+ };
35
+ breadcrumbs.push(breadcrumb);
36
+ }
37
+ else {
38
+ const breadcrumb = {
39
+ label: 'NA',
40
+ routerLink: '/' + routeUrl.join('/'),
41
+ };
42
+ breadcrumbs.push(breadcrumb);
43
+ }
44
+ }
45
+ this.addBreadcrumb(route.firstChild, routeUrl, breadcrumbs);
46
+ }
47
+ }
48
+ getLabel(data, params) {
49
+ if (typeof data['breadcrumbFn'] === 'function') {
50
+ return data['breadcrumbFn'](data, params);
51
+ }
52
+ return data['breadcrumb'];
53
+ }
54
+ setItems(items) {
55
+ const translationKeys = [
56
+ ...items.map((i) => i.labelKey || '').filter((l) => !!l),
57
+ ...items.map((i) => i.titleKey || '').filter((l) => !!l),
58
+ ];
59
+ if (translationKeys.length) {
60
+ this.translateService.get(translationKeys).subscribe((translations) => {
61
+ this.itemsSource.next(items.map((i) => ({
62
+ ...i,
63
+ label: translations[i.labelKey || ''] || i.label,
64
+ title: translations[i.titleKey || ''] || i.title,
65
+ })));
66
+ });
67
+ }
68
+ else {
69
+ this.itemsSource.next(items);
70
+ }
71
+ }
72
+ }
73
+ BreadcrumbService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BreadcrumbService, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable });
74
+ BreadcrumbService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BreadcrumbService, providedIn: 'any' });
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BreadcrumbService, decorators: [{
76
+ type: Injectable,
77
+ args: [{ providedIn: 'any' }]
78
+ }], ctorParameters: function () { return [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.TranslateService }]; } });
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvc2VydmljZXMvYnJlYWRjcnVtYi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxFQUFFLGNBQWMsRUFBZ0MsYUFBYSxFQUFZLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQy9HLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFBOzs7O0FBSzlDLE1BQU0sT0FBTyxpQkFBaUI7SUFNNUIsWUFBb0IsTUFBYyxFQUFVLFdBQTJCLEVBQVUsZ0JBQWtDO1FBQS9GLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFBVSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBTDNHLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQWEsRUFBRSxDQUFDLENBQUE7UUFDekQseUJBQW9CLEdBQUcsSUFBSSxlQUFlLENBQWEsRUFBRSxDQUFDLENBQUE7UUFFMUQsaUJBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFBO1FBRzVDLE1BQU0sV0FBVyxHQUFlLEVBQUUsQ0FBQTtRQUNsQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQTtRQUM5RCxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQzNDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDaEYsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQTtZQUNsRCxNQUFNLFdBQVcsR0FBZSxFQUFFLENBQUE7WUFDbEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFBO1lBRXpDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDN0MsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRU8sYUFBYSxDQUFDLEtBQW9DLEVBQUUsU0FBbUIsRUFBRSxXQUF1QjtRQUN0RyxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQ3RCLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO1lBQ25FLElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBQzNCLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRTtvQkFDNUIsTUFBTSxVQUFVLEdBQWE7d0JBQzNCLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQzt3QkFDaEQsVUFBVSxFQUFFLEdBQUcsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztxQkFDckMsQ0FBQTtvQkFDRCxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO2lCQUM3QjtxQkFBTTtvQkFDTCxNQUFNLFVBQVUsR0FBYTt3QkFDM0IsS0FBSyxFQUFFLElBQUk7d0JBQ1gsVUFBVSxFQUFFLEdBQUcsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztxQkFDckMsQ0FBQTtvQkFDRCxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO2lCQUM3QjthQUNGO1lBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQTtTQUM1RDtJQUNILENBQUM7SUFFTyxRQUFRLENBQUMsSUFBVSxFQUFFLE1BQWdCO1FBQzNDLElBQUksT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssVUFBVSxFQUFFO1lBQzlDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQTtTQUMxQztRQUNELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFBO0lBQzNCLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBMkI7UUFDbEMsTUFBTSxlQUFlLEdBQUc7WUFDdEIsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4RCxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3pELENBQUE7UUFDRCxJQUFJLGVBQWUsQ0FBQyxNQUFNLEVBQUU7WUFDMUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxZQUFpQixFQUFFLEVBQUU7Z0JBQ3pFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUNuQixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUNoQixHQUFHLENBQUM7b0JBQ0osS0FBSyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLO29CQUNoRCxLQUFLLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUs7aUJBQ2pELENBQUMsQ0FBQyxDQUNKLENBQUE7WUFDSCxDQUFDLENBQUMsQ0FBQTtTQUNIO2FBQU07WUFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtTQUM3QjtJQUNILENBQUM7OytHQW5FVSxpQkFBaUI7bUhBQWpCLGlCQUFpQixjQURKLEtBQUs7NEZBQ2xCLGlCQUFpQjtrQkFEN0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBEYXRhLCBOYXZpZ2F0aW9uRW5kLCBQYXJhbU1hcCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZpbHRlciB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJ1xuaW1wb3J0IHsgQnJlYWRDcnVtYk1lbnVJdGVtIH0gZnJvbSAnLi4vbW9kZWwvYnJlYWRjcnVtYi1tZW51LWl0ZW0ubW9kZWwnXG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ2FueScgfSlcbmV4cG9ydCBjbGFzcyBCcmVhZGNydW1iU2VydmljZSB7XG4gIHByaXZhdGUgaXRlbXNTb3VyY2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1lbnVJdGVtW10+KFtdKVxuICBnZW5lcmF0ZWRJdGVtc1NvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWVudUl0ZW1bXT4oW10pXG5cbiAgaXRlbXNIYW5kbGVyID0gdGhpcy5pdGVtc1NvdXJjZS5hc09ic2VydmFibGUoKVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgYWN0aXZlUm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcbiAgICBjb25zdCBicmVhZGNydW1iczogTWVudUl0ZW1bXSA9IFtdXG4gICAgdGhpcy5hZGRCcmVhZGNydW1iKHRoaXMuYWN0aXZlUm91dGUuc25hcHNob3QsIFtdLCBicmVhZGNydW1icylcbiAgICB0aGlzLmdlbmVyYXRlZEl0ZW1zU291cmNlLm5leHQoYnJlYWRjcnVtYnMpXG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoZmlsdGVyKChlKSA9PiBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBjb25zdCByb290ID0gdGhpcy5yb3V0ZXIucm91dGVyU3RhdGUuc25hcHNob3Qucm9vdFxuICAgICAgY29uc3QgYnJlYWRjcnVtYnM6IE1lbnVJdGVtW10gPSBbXVxuICAgICAgdGhpcy5hZGRCcmVhZGNydW1iKHJvb3QsIFtdLCBicmVhZGNydW1icylcblxuICAgICAgdGhpcy5nZW5lcmF0ZWRJdGVtc1NvdXJjZS5uZXh0KGJyZWFkY3J1bWJzKVxuICAgIH0pXG4gIH1cblxuICBwcml2YXRlIGFkZEJyZWFkY3J1bWIocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QgfCBudWxsLCBwYXJlbnRVcmw6IHN0cmluZ1tdLCBicmVhZGNydW1iczogTWVudUl0ZW1bXSkge1xuICAgIGlmIChyb3V0ZSAmJiByb3V0ZS51cmwpIHtcbiAgICAgIGNvbnN0IHJvdXRlVXJsID0gcGFyZW50VXJsLmNvbmNhdChyb3V0ZS51cmwubWFwKCh1cmwpID0+IHVybC5wYXRoKSlcbiAgICAgIGlmIChyb3V0ZS5yb3V0ZUNvbmZpZz8ucGF0aCkge1xuICAgICAgICBpZiAocm91dGUuZGF0YVsnYnJlYWRjcnVtYiddKSB7XG4gICAgICAgICAgY29uc3QgYnJlYWRjcnVtYjogTWVudUl0ZW0gPSB7XG4gICAgICAgICAgICBsYWJlbDogdGhpcy5nZXRMYWJlbChyb3V0ZS5kYXRhLCByb3V0ZS5wYXJhbU1hcCksXG4gICAgICAgICAgICByb3V0ZXJMaW5rOiAnLycgKyByb3V0ZVVybC5qb2luKCcvJyksXG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFkY3J1bWJzLnB1c2goYnJlYWRjcnVtYilcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCBicmVhZGNydW1iOiBNZW51SXRlbSA9IHtcbiAgICAgICAgICAgIGxhYmVsOiAnTkEnLFxuICAgICAgICAgICAgcm91dGVyTGluazogJy8nICsgcm91dGVVcmwuam9pbignLycpLFxuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhZGNydW1icy5wdXNoKGJyZWFkY3J1bWIpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhpcy5hZGRCcmVhZGNydW1iKHJvdXRlLmZpcnN0Q2hpbGQsIHJvdXRlVXJsLCBicmVhZGNydW1icylcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldExhYmVsKGRhdGE6IERhdGEsIHBhcmFtczogUGFyYW1NYXApIHtcbiAgICBpZiAodHlwZW9mIGRhdGFbJ2JyZWFkY3J1bWJGbiddID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICByZXR1cm4gZGF0YVsnYnJlYWRjcnVtYkZuJ10oZGF0YSwgcGFyYW1zKVxuICAgIH1cbiAgICByZXR1cm4gZGF0YVsnYnJlYWRjcnVtYiddXG4gIH1cblxuICBzZXRJdGVtcyhpdGVtczogQnJlYWRDcnVtYk1lbnVJdGVtW10pIHtcbiAgICBjb25zdCB0cmFuc2xhdGlvbktleXMgPSBbXG4gICAgICAuLi5pdGVtcy5tYXAoKGkpID0+IGkubGFiZWxLZXkgfHwgJycpLmZpbHRlcigobCkgPT4gISFsKSxcbiAgICAgIC4uLml0ZW1zLm1hcCgoaSkgPT4gaS50aXRsZUtleSB8fCAnJykuZmlsdGVyKChsKSA9PiAhIWwpLFxuICAgIF1cbiAgICBpZiAodHJhbnNsYXRpb25LZXlzLmxlbmd0aCkge1xuICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldCh0cmFuc2xhdGlvbktleXMpLnN1YnNjcmliZSgodHJhbnNsYXRpb25zOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5pdGVtc1NvdXJjZS5uZXh0KFxuICAgICAgICAgIGl0ZW1zLm1hcCgoaSkgPT4gKHtcbiAgICAgICAgICAgIC4uLmksXG4gICAgICAgICAgICBsYWJlbDogdHJhbnNsYXRpb25zW2kubGFiZWxLZXkgfHwgJyddIHx8IGkubGFiZWwsXG4gICAgICAgICAgICB0aXRsZTogdHJhbnNsYXRpb25zW2kudGl0bGVLZXkgfHwgJyddIHx8IGkudGl0bGUsXG4gICAgICAgICAgfSkpXG4gICAgICAgIClcbiAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXRlbXNTb3VyY2UubmV4dChpdGVtcylcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,54 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { BehaviorSubject, filter, first, map, of, race, tap, withLatestFrom } from 'rxjs';
3
+ import { SyncableTopic } from '@onecx/accelerator';
4
+ import * as i0 from "@angular/core";
5
+ // This topic is defined here and not in integration-interface, because
6
+ // it is not used as framework independent integration but for improving
7
+ // angular specific things
8
+ class TranslationCacheTopic extends SyncableTopic {
9
+ constructor() {
10
+ super('translationCache', 1);
11
+ }
12
+ }
13
+ export class TranslationCacheService {
14
+ constructor() {
15
+ this.translationTopic$ = new TranslationCacheTopic();
16
+ this.translations$ = new BehaviorSubject({});
17
+ this.translationTopic$
18
+ .pipe(withLatestFrom(this.translations$), map(([topicTranslations, translations]) => {
19
+ let foundValueOthersDoNotKnow = false;
20
+ const newTranslations = { ...translations };
21
+ Object.keys(topicTranslations).forEach((k) => {
22
+ if (!topicTranslations[k] && translations[k]) {
23
+ foundValueOthersDoNotKnow = true;
24
+ }
25
+ newTranslations[k] ?? (newTranslations[k] = topicTranslations[k]);
26
+ });
27
+ return [newTranslations, foundValueOthersDoNotKnow];
28
+ }), tap(([newTranslations, foundValueOthersDoNotKnow]) => {
29
+ if (foundValueOthersDoNotKnow) {
30
+ this.translationTopic$.publish(newTranslations);
31
+ }
32
+ }), map(([newTranslations]) => newTranslations))
33
+ .subscribe(this.translations$);
34
+ }
35
+ ngOnDestroy() {
36
+ this.translationTopic$.destroy();
37
+ }
38
+ getTranslationFile(url, cacheMissFunction) {
39
+ if (this.translations$.value[url]) {
40
+ return of(this.translations$.value[url]);
41
+ }
42
+ this.translationTopic$.publish({ ...this.translations$.value, [url]: null });
43
+ return race(this.translations$.pipe(filter((t) => t[url]), map((t) => t[url])), cacheMissFunction().pipe(tap((t) => {
44
+ this.translationTopic$.publish({ ...this.translations$.value, [url]: t });
45
+ }))).pipe(first());
46
+ }
47
+ }
48
+ TranslationCacheService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TranslationCacheService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
49
+ TranslationCacheService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TranslationCacheService, providedIn: 'root' });
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TranslationCacheService, decorators: [{
51
+ type: Injectable,
52
+ args: [{ providedIn: 'root' }]
53
+ }], ctorParameters: function () { return []; } });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tY2FjaGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1hY2NlbGVyYXRvci9zcmMvbGliL3NlcnZpY2VzL3RyYW5zbGF0aW9uLWNhY2hlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNyRyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7O0FBRWxELHVFQUF1RTtBQUN2RSx3RUFBd0U7QUFDeEUsMEJBQTBCO0FBQzFCLE1BQU0scUJBQXNCLFNBQVEsYUFBa0M7SUFDcEU7UUFDRSxLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDOUIsQ0FBQztDQUNGO0FBR0QsTUFBTSxPQUFPLHVCQUF1QjtJQUdsQztRQUZRLHNCQUFpQixHQUFHLElBQUkscUJBQXFCLEVBQUUsQ0FBQTtRQUMvQyxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFNLEVBQUUsQ0FBQyxDQUFBO1FBRWxELElBQUksQ0FBQyxpQkFBaUI7YUFDbkIsSUFBSSxDQUNILGNBQWMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQ2xDLEdBQUcsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLEVBQUUsWUFBWSxDQUFDLEVBQUUsRUFBRTtZQUN4QyxJQUFJLHlCQUF5QixHQUFHLEtBQUssQ0FBQTtZQUNyQyxNQUFNLGVBQWUsR0FBRyxFQUFFLEdBQUcsWUFBWSxFQUFFLENBQUE7WUFDM0MsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUMzQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLElBQUksWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUM1Qyx5QkFBeUIsR0FBRyxJQUFJLENBQUE7aUJBQ2pDO2dCQUNELGVBQWUsQ0FBQyxDQUFDLE1BQWpCLGVBQWUsQ0FBQyxDQUFDLElBQU0saUJBQWlCLENBQUMsQ0FBQyxDQUFDLEVBQUE7WUFDN0MsQ0FBQyxDQUFDLENBQUE7WUFDRixPQUFPLENBQUMsZUFBZSxFQUFFLHlCQUF5QixDQUFDLENBQUE7UUFDckQsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLENBQUMsQ0FBQyxlQUFlLEVBQUUseUJBQXlCLENBQUMsRUFBRSxFQUFFO1lBQ25ELElBQUkseUJBQXlCLEVBQUU7Z0JBQzdCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUE7YUFDaEQ7UUFDSCxDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FDNUM7YUFDQSxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0lBQ2xDLENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxDQUFBO0lBQ2xDLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxHQUFXLEVBQUUsaUJBQXdDO1FBQ3RFLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDakMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtTQUN6QztRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtRQUM1RSxPQUFPLElBQUksQ0FDVCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDckIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFDckIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDbkIsRUFDRCxpQkFBaUIsRUFBRSxDQUFDLElBQUksQ0FDdEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDUixJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUE7UUFDM0UsQ0FBQyxDQUFDLENBQ0gsQ0FDRixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFBO0lBQ2pCLENBQUM7O3FIQS9DVSx1QkFBdUI7eUhBQXZCLHVCQUF1QixjQURWLE1BQU07NEZBQ25CLHVCQUF1QjtrQkFEbkMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBmaWx0ZXIsIGZpcnN0LCBtYXAsIG9mLCByYWNlLCB0YXAsIHdpdGhMYXRlc3RGcm9tIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IFN5bmNhYmxlVG9waWMgfSBmcm9tICdAb25lY3gvYWNjZWxlcmF0b3InXG5cbi8vIFRoaXMgdG9waWMgaXMgZGVmaW5lZCBoZXJlIGFuZCBub3QgaW4gaW50ZWdyYXRpb24taW50ZXJmYWNlLCBiZWNhdXNlXG4vLyBpdCBpcyBub3QgdXNlZCBhcyBmcmFtZXdvcmsgaW5kZXBlbmRlbnQgaW50ZWdyYXRpb24gYnV0IGZvciBpbXByb3Zpbmdcbi8vIGFuZ3VsYXIgc3BlY2lmaWMgdGhpbmdzXG5jbGFzcyBUcmFuc2xhdGlvbkNhY2hlVG9waWMgZXh0ZW5kcyBTeW5jYWJsZVRvcGljPFJlY29yZDxzdHJpbmcsIGFueT4+IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoJ3RyYW5zbGF0aW9uQ2FjaGUnLCAxKVxuICB9XG59XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgVHJhbnNsYXRpb25DYWNoZVNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHRyYW5zbGF0aW9uVG9waWMkID0gbmV3IFRyYW5zbGF0aW9uQ2FjaGVUb3BpYygpXG4gIHByaXZhdGUgdHJhbnNsYXRpb25zJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55Pih7fSlcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy50cmFuc2xhdGlvblRvcGljJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMudHJhbnNsYXRpb25zJCksXG4gICAgICAgIG1hcCgoW3RvcGljVHJhbnNsYXRpb25zLCB0cmFuc2xhdGlvbnNdKSA9PiB7XG4gICAgICAgICAgbGV0IGZvdW5kVmFsdWVPdGhlcnNEb05vdEtub3cgPSBmYWxzZVxuICAgICAgICAgIGNvbnN0IG5ld1RyYW5zbGF0aW9ucyA9IHsgLi4udHJhbnNsYXRpb25zIH1cbiAgICAgICAgICBPYmplY3Qua2V5cyh0b3BpY1RyYW5zbGF0aW9ucykuZm9yRWFjaCgoaykgPT4ge1xuICAgICAgICAgICAgaWYgKCF0b3BpY1RyYW5zbGF0aW9uc1trXSAmJiB0cmFuc2xhdGlvbnNba10pIHtcbiAgICAgICAgICAgICAgZm91bmRWYWx1ZU90aGVyc0RvTm90S25vdyA9IHRydWVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG5ld1RyYW5zbGF0aW9uc1trXSA/Pz0gdG9waWNUcmFuc2xhdGlvbnNba11cbiAgICAgICAgICB9KVxuICAgICAgICAgIHJldHVybiBbbmV3VHJhbnNsYXRpb25zLCBmb3VuZFZhbHVlT3RoZXJzRG9Ob3RLbm93XVxuICAgICAgICB9KSxcbiAgICAgICAgdGFwKChbbmV3VHJhbnNsYXRpb25zLCBmb3VuZFZhbHVlT3RoZXJzRG9Ob3RLbm93XSkgPT4ge1xuICAgICAgICAgIGlmIChmb3VuZFZhbHVlT3RoZXJzRG9Ob3RLbm93KSB7XG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0aW9uVG9waWMkLnB1Ymxpc2gobmV3VHJhbnNsYXRpb25zKVxuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIG1hcCgoW25ld1RyYW5zbGF0aW9uc10pID0+IG5ld1RyYW5zbGF0aW9ucylcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUodGhpcy50cmFuc2xhdGlvbnMkKVxuICB9XG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNsYXRpb25Ub3BpYyQuZGVzdHJveSgpXG4gIH1cblxuICBnZXRUcmFuc2xhdGlvbkZpbGUodXJsOiBzdHJpbmcsIGNhY2hlTWlzc0Z1bmN0aW9uOiAoKSA9PiBPYnNlcnZhYmxlPGFueT4pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICh0aGlzLnRyYW5zbGF0aW9ucyQudmFsdWVbdXJsXSkge1xuICAgICAgcmV0dXJuIG9mKHRoaXMudHJhbnNsYXRpb25zJC52YWx1ZVt1cmxdKVxuICAgIH1cbiAgICB0aGlzLnRyYW5zbGF0aW9uVG9waWMkLnB1Ymxpc2goeyAuLi50aGlzLnRyYW5zbGF0aW9ucyQudmFsdWUsIFt1cmxdOiBudWxsIH0pXG4gICAgcmV0dXJuIHJhY2UoXG4gICAgICB0aGlzLnRyYW5zbGF0aW9ucyQucGlwZShcbiAgICAgICAgZmlsdGVyKCh0KSA9PiB0W3VybF0pLFxuICAgICAgICBtYXAoKHQpID0+IHRbdXJsXSlcbiAgICAgICksXG4gICAgICBjYWNoZU1pc3NGdW5jdGlvbigpLnBpcGUoXG4gICAgICAgIHRhcCgodCkgPT4ge1xuICAgICAgICAgIHRoaXMudHJhbnNsYXRpb25Ub3BpYyQucHVibGlzaCh7IC4uLnRoaXMudHJhbnNsYXRpb25zJC52YWx1ZSwgW3VybF06IHQgfSlcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICApLnBpcGUoZmlyc3QoKSlcbiAgfVxufVxuIl19
@@ -0,0 +1,12 @@
1
+ import { defaultIfEmpty, first, mergeMap, of, tap } from 'rxjs';
2
+ export class AsyncTranslateLoader {
3
+ constructor(translateLoader$) {
4
+ this.translateLoader$ = translateLoader$;
5
+ this.timerId = AsyncTranslateLoader.lastTimerId++;
6
+ }
7
+ getTranslation(lang) {
8
+ return this.translateLoader$.pipe(tap(() => console.time('AsyncTranslateLoader_' + this.timerId)), defaultIfEmpty(undefined), first(), mergeMap((translateLoader) => translateLoader?.getTranslation(lang) ?? of({})), tap(() => console.timeEnd('AsyncTranslateLoader_' + this.timerId)));
9
+ }
10
+ }
11
+ AsyncTranslateLoader.lastTimerId = 0;
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtdHJhbnNsYXRlLWxvYWRlci51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1hY2NlbGVyYXRvci9zcmMvbGliL3V0aWxzL2FzeW5jLXRyYW5zbGF0ZS1sb2FkZXIudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFFM0UsTUFBTSxPQUFPLG9CQUFvQjtJQUkvQixZQUFvQixnQkFBNkM7UUFBN0MscUJBQWdCLEdBQWhCLGdCQUFnQixDQUE2QjtRQUZqRSxZQUFPLEdBQUcsb0JBQW9CLENBQUMsV0FBVyxFQUFFLENBQUE7SUFFd0IsQ0FBQztJQUVyRSxjQUFjLENBQUMsSUFBWTtRQUN6QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQy9CLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUMvRCxjQUFjLENBQUMsU0FBUyxDQUFDLEVBQ3pCLEtBQUssRUFBRSxFQUNQLFFBQVEsQ0FBQyxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUMsZUFBZSxFQUFFLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFDOUUsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQ25FLENBQUE7SUFDSCxDQUFDOztBQWJNLGdDQUFXLEdBQUcsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNsYXRlTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IGRlZmF1bHRJZkVtcHR5LCBmaXJzdCwgbWVyZ2VNYXAsIE9ic2VydmFibGUsIG9mLCB0YXAgfSBmcm9tICdyeGpzJ1xuXG5leHBvcnQgY2xhc3MgQXN5bmNUcmFuc2xhdGVMb2FkZXIgaW1wbGVtZW50cyBUcmFuc2xhdGVMb2FkZXIge1xuICBzdGF0aWMgbGFzdFRpbWVySWQgPSAwXG4gIHRpbWVySWQgPSBBc3luY1RyYW5zbGF0ZUxvYWRlci5sYXN0VGltZXJJZCsrXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGVMb2FkZXIkOiBPYnNlcnZhYmxlPFRyYW5zbGF0ZUxvYWRlcj4pIHt9XG5cbiAgZ2V0VHJhbnNsYXRpb24obGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVMb2FkZXIkLnBpcGUoXG4gICAgICB0YXAoKCkgPT4gY29uc29sZS50aW1lKCdBc3luY1RyYW5zbGF0ZUxvYWRlcl8nICsgdGhpcy50aW1lcklkKSksXG4gICAgICBkZWZhdWx0SWZFbXB0eSh1bmRlZmluZWQpLFxuICAgICAgZmlyc3QoKSxcbiAgICAgIG1lcmdlTWFwKCh0cmFuc2xhdGVMb2FkZXIpID0+IHRyYW5zbGF0ZUxvYWRlcj8uZ2V0VHJhbnNsYXRpb24obGFuZykgPz8gb2Yoe30pKSxcbiAgICAgIHRhcCgoKSA9PiBjb25zb2xlLnRpbWVFbmQoJ0FzeW5jVHJhbnNsYXRlTG9hZGVyXycgKyB0aGlzLnRpbWVySWQpKVxuICAgIClcbiAgfVxufVxuIl19
@@ -0,0 +1,15 @@
1
+ import { TranslateHttpLoader } from '@ngx-translate/http-loader';
2
+ export class CachingTranslateLoader {
3
+ constructor(translationCache, http, prefix, suffix) {
4
+ this.translationCache = translationCache;
5
+ this.http = http;
6
+ this.prefix = prefix;
7
+ this.suffix = suffix;
8
+ this.translateLoader = new TranslateHttpLoader(this.http, this.prefix, this.suffix);
9
+ }
10
+ getTranslation(lang) {
11
+ const url = `${this.prefix}${lang}${this.suffix}`;
12
+ return this.translationCache.getTranslationFile(url, () => this.translateLoader.getTranslation(lang));
13
+ }
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGluZy10cmFuc2xhdGUtbG9hZGVyLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvdXRpbHMvY2FjaGluZy10cmFuc2xhdGUtbG9hZGVyLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBSWhFLE1BQU0sT0FBTyxzQkFBc0I7SUFHakMsWUFDVSxnQkFBeUMsRUFDekMsSUFBZ0IsRUFDaEIsTUFBZSxFQUNmLE1BQWU7UUFIZixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXlCO1FBQ3pDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsV0FBTSxHQUFOLE1BQU0sQ0FBUztRQUNmLFdBQU0sR0FBTixNQUFNLENBQVM7UUFOakIsb0JBQWUsR0FBRyxJQUFJLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFPbkYsQ0FBQztJQUVKLGNBQWMsQ0FBQyxJQUFZO1FBQ3pCLE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFBO1FBRWpELE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQ3ZHLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCdcbmltcG9ydCB7IFRyYW5zbGF0ZUxvYWRlciB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBUcmFuc2xhdGVIdHRwTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvaHR0cC1sb2FkZXInXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IFRyYW5zbGF0aW9uQ2FjaGVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdHJhbnNsYXRpb24tY2FjaGUuc2VydmljZSdcblxuZXhwb3J0IGNsYXNzIENhY2hpbmdUcmFuc2xhdGVMb2FkZXIgaW1wbGVtZW50cyBUcmFuc2xhdGVMb2FkZXIge1xuICBwcml2YXRlIHRyYW5zbGF0ZUxvYWRlciA9IG5ldyBUcmFuc2xhdGVIdHRwTG9hZGVyKHRoaXMuaHR0cCwgdGhpcy5wcmVmaXgsIHRoaXMuc3VmZml4KVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdHJhbnNsYXRpb25DYWNoZTogVHJhbnNsYXRpb25DYWNoZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgcHJlZml4Pzogc3RyaW5nLFxuICAgIHByaXZhdGUgc3VmZml4Pzogc3RyaW5nXG4gICkge31cblxuICBnZXRUcmFuc2xhdGlvbihsYW5nOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHVybCA9IGAke3RoaXMucHJlZml4fSR7bGFuZ30ke3RoaXMuc3VmZml4fWBcblxuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0aW9uQ2FjaGUuZ2V0VHJhbnNsYXRpb25GaWxlKHVybCwgKCkgPT4gdGhpcy50cmFuc2xhdGVMb2FkZXIuZ2V0VHJhbnNsYXRpb24obGFuZykpXG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,19 @@
1
+ export class ColorUtils {
2
+ static calculatePoint(i, intervalSize, colorRangeInfo) {
3
+ const { colorStart, colorEnd, useEndAsStart } = colorRangeInfo;
4
+ return useEndAsStart ? colorEnd - i * intervalSize : colorStart + i * intervalSize;
5
+ }
6
+ static interpolateColors(dataLength, colorScale, colorRangeInfo) {
7
+ const { colorStart, colorEnd } = colorRangeInfo;
8
+ const colorRange = colorEnd - colorStart;
9
+ const intervalSize = colorRange / dataLength;
10
+ let i, colorPoint;
11
+ const colorArray = [];
12
+ for (i = 0; i < dataLength; i++) {
13
+ colorPoint = this.calculatePoint(i, intervalSize, colorRangeInfo);
14
+ colorArray.push(colorScale(colorPoint));
15
+ }
16
+ return colorArray;
17
+ }
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3J1dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1hY2NlbGVyYXRvci9zcmMvbGliL3V0aWxzL2NvbG9ydXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFVBQVU7SUFDZCxNQUFNLENBQUMsY0FBYyxDQUMxQixDQUFTLEVBQ1QsWUFBb0IsRUFDcEIsY0FBc0U7UUFFdEUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLEdBQUcsY0FBYyxDQUFBO1FBQzlELE9BQU8sYUFBYSxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsVUFBVSxHQUFHLENBQUMsR0FBRyxZQUFZLENBQUE7SUFDcEYsQ0FBQztJQUVNLE1BQU0sQ0FBQyxpQkFBaUIsQ0FDN0IsVUFBa0IsRUFDbEIsVUFBOEIsRUFDOUIsY0FBc0U7UUFFdEUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsR0FBRyxjQUFjLENBQUE7UUFDL0MsTUFBTSxVQUFVLEdBQUcsUUFBUSxHQUFHLFVBQVUsQ0FBQTtRQUN4QyxNQUFNLFlBQVksR0FBRyxVQUFVLEdBQUcsVUFBVSxDQUFBO1FBQzVDLElBQUksQ0FBQyxFQUFFLFVBQVUsQ0FBQTtRQUNqQixNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUE7UUFFckIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxVQUFVLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDL0IsVUFBVSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLFlBQVksRUFBRSxjQUFjLENBQUMsQ0FBQTtZQUNqRSxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBO1NBQ3hDO1FBRUQsT0FBTyxVQUFVLENBQUE7SUFDbkIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIENvbG9yVXRpbHMge1xuICBwdWJsaWMgc3RhdGljIGNhbGN1bGF0ZVBvaW50KFxuICAgIGk6IG51bWJlcixcbiAgICBpbnRlcnZhbFNpemU6IG51bWJlcixcbiAgICBjb2xvclJhbmdlSW5mbzogeyBjb2xvclN0YXJ0OiBhbnk7IGNvbG9yRW5kOiBhbnk7IHVzZUVuZEFzU3RhcnQ6IGFueSB9XG4gICk6IGFueSB7XG4gICAgY29uc3QgeyBjb2xvclN0YXJ0LCBjb2xvckVuZCwgdXNlRW5kQXNTdGFydCB9ID0gY29sb3JSYW5nZUluZm9cbiAgICByZXR1cm4gdXNlRW5kQXNTdGFydCA/IGNvbG9yRW5kIC0gaSAqIGludGVydmFsU2l6ZSA6IGNvbG9yU3RhcnQgKyBpICogaW50ZXJ2YWxTaXplXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGludGVycG9sYXRlQ29sb3JzKFxuICAgIGRhdGFMZW5ndGg6IG51bWJlcixcbiAgICBjb2xvclNjYWxlOiAoYXJnMDogYW55KSA9PiBhbnksXG4gICAgY29sb3JSYW5nZUluZm86IHsgY29sb3JTdGFydDogYW55OyBjb2xvckVuZDogYW55OyB1c2VFbmRBc1N0YXJ0OiBhbnkgfVxuICApOiBhbnkge1xuICAgIGNvbnN0IHsgY29sb3JTdGFydCwgY29sb3JFbmQgfSA9IGNvbG9yUmFuZ2VJbmZvXG4gICAgY29uc3QgY29sb3JSYW5nZSA9IGNvbG9yRW5kIC0gY29sb3JTdGFydFxuICAgIGNvbnN0IGludGVydmFsU2l6ZSA9IGNvbG9yUmFuZ2UgLyBkYXRhTGVuZ3RoXG4gICAgbGV0IGksIGNvbG9yUG9pbnRcbiAgICBjb25zdCBjb2xvckFycmF5ID0gW11cblxuICAgIGZvciAoaSA9IDA7IGkgPCBkYXRhTGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbG9yUG9pbnQgPSB0aGlzLmNhbGN1bGF0ZVBvaW50KGksIGludGVydmFsU2l6ZSwgY29sb3JSYW5nZUluZm8pXG4gICAgICBjb2xvckFycmF5LnB1c2goY29sb3JTY2FsZShjb2xvclBvaW50KSlcbiAgICB9XG5cbiAgICByZXR1cm4gY29sb3JBcnJheVxuICB9XG59XG4iXX0=
@@ -0,0 +1,23 @@
1
+ import { Location } from '@angular/common';
2
+ import { inject } from '@angular/core';
3
+ import { combineLatest, filter, map, tap } from 'rxjs';
4
+ import { TranslationCacheService } from '../services/translation-cache.service';
5
+ import { AsyncTranslateLoader } from './async-translate-loader.utils';
6
+ import { CachingTranslateLoader } from './caching-translate-loader.utils';
7
+ import { TranslateCombinedLoader } from './translate.combined.loader';
8
+ let lastTranslateLoaderTimerId = 0;
9
+ export function createTranslateLoader(http, appStateService, translationCacheService) {
10
+ const ts = translationCacheService ?? inject(TranslationCacheService);
11
+ const timerId = lastTranslateLoaderTimerId++;
12
+ console.time('createTranslateLoader_' + timerId);
13
+ return new AsyncTranslateLoader(combineLatest([appStateService.currentMfe$.asObservable(), appStateService.globalLoading$.asObservable()]).pipe(filter(([, isLoading]) => !isLoading), map(([currentMfe]) => {
14
+ return new TranslateCombinedLoader(
15
+ // translations of shell or of app in standalone mode
16
+ new CachingTranslateLoader(ts, http, `./assets/i18n/`, '.json'),
17
+ // translations of portal-integration-angular of app
18
+ new CachingTranslateLoader(ts, http, Location.joinWithSlash(currentMfe.remoteBaseUrl, `onecx-portal-lib/assets/i18n/`), '.json'),
19
+ // translations of the app
20
+ new CachingTranslateLoader(ts, http, Location.joinWithSlash(currentMfe.remoteBaseUrl, `assets/i18n/`), '.json'));
21
+ }), tap(() => console.timeEnd('createTranslateLoader_' + timerId))));
22
+ }
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXRyYW5zbGF0ZS1sb2FkZXIudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi91dGlscy9jcmVhdGUtdHJhbnNsYXRlLWxvYWRlci51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUd0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ3RELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBQ3JFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ3pFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBRXJFLElBQUksMEJBQTBCLEdBQUcsQ0FBQyxDQUFBO0FBRWxDLE1BQU0sVUFBVSxxQkFBcUIsQ0FDbkMsSUFBZ0IsRUFDaEIsZUFBZ0MsRUFDaEMsdUJBQWlEO0lBRWpELE1BQU0sRUFBRSxHQUFHLHVCQUF1QixJQUFJLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO0lBQ3JFLE1BQU0sT0FBTyxHQUFHLDBCQUEwQixFQUFFLENBQUE7SUFDNUMsT0FBTyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxPQUFPLENBQUMsQ0FBQTtJQUNoRCxPQUFPLElBQUksb0JBQW9CLENBQzdCLGFBQWEsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLEVBQUUsZUFBZSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUM3RyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQ3JDLEdBQUcsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRTtRQUNuQixPQUFPLElBQUksdUJBQXVCO1FBQ2hDLHFEQUFxRDtRQUNyRCxJQUFJLHNCQUFzQixDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDO1FBQy9ELG9EQUFvRDtRQUNwRCxJQUFJLHNCQUFzQixDQUN4QixFQUFFLEVBQ0YsSUFBSSxFQUNKLFFBQVEsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSwrQkFBK0IsQ0FBQyxFQUNqRixPQUFPLENBQ1I7UUFDRCwwQkFBMEI7UUFDMUIsSUFBSSxzQkFBc0IsQ0FDeEIsRUFBRSxFQUNGLElBQUksRUFDSixRQUFRLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsY0FBYyxDQUFDLEVBQ2hFLE9BQU8sQ0FDUixDQUNGLENBQUE7SUFDSCxDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUMvRCxDQUNGLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnXG5pbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IEFwcFN0YXRlU2VydmljZSB9IGZyb20gJ0BvbmVjeC9hbmd1bGFyLWludGVncmF0aW9uLWludGVyZmFjZSdcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIGZpbHRlciwgbWFwLCB0YXAgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgVHJhbnNsYXRpb25DYWNoZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy90cmFuc2xhdGlvbi1jYWNoZS5zZXJ2aWNlJ1xuaW1wb3J0IHsgQXN5bmNUcmFuc2xhdGVMb2FkZXIgfSBmcm9tICcuL2FzeW5jLXRyYW5zbGF0ZS1sb2FkZXIudXRpbHMnXG5pbXBvcnQgeyBDYWNoaW5nVHJhbnNsYXRlTG9hZGVyIH0gZnJvbSAnLi9jYWNoaW5nLXRyYW5zbGF0ZS1sb2FkZXIudXRpbHMnXG5pbXBvcnQgeyBUcmFuc2xhdGVDb21iaW5lZExvYWRlciB9IGZyb20gJy4vdHJhbnNsYXRlLmNvbWJpbmVkLmxvYWRlcidcblxubGV0IGxhc3RUcmFuc2xhdGVMb2FkZXJUaW1lcklkID0gMFxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlVHJhbnNsYXRlTG9hZGVyKFxuICBodHRwOiBIdHRwQ2xpZW50LFxuICBhcHBTdGF0ZVNlcnZpY2U6IEFwcFN0YXRlU2VydmljZSxcbiAgdHJhbnNsYXRpb25DYWNoZVNlcnZpY2U/OiBUcmFuc2xhdGlvbkNhY2hlU2VydmljZVxuKTogVHJhbnNsYXRlTG9hZGVyIHtcbiAgY29uc3QgdHMgPSB0cmFuc2xhdGlvbkNhY2hlU2VydmljZSA/PyBpbmplY3QoVHJhbnNsYXRpb25DYWNoZVNlcnZpY2UpXG4gIGNvbnN0IHRpbWVySWQgPSBsYXN0VHJhbnNsYXRlTG9hZGVyVGltZXJJZCsrXG4gIGNvbnNvbGUudGltZSgnY3JlYXRlVHJhbnNsYXRlTG9hZGVyXycgKyB0aW1lcklkKVxuICByZXR1cm4gbmV3IEFzeW5jVHJhbnNsYXRlTG9hZGVyKFxuICAgIGNvbWJpbmVMYXRlc3QoW2FwcFN0YXRlU2VydmljZS5jdXJyZW50TWZlJC5hc09ic2VydmFibGUoKSwgYXBwU3RhdGVTZXJ2aWNlLmdsb2JhbExvYWRpbmckLmFzT2JzZXJ2YWJsZSgpXSkucGlwZShcbiAgICAgIGZpbHRlcigoWywgaXNMb2FkaW5nXSkgPT4gIWlzTG9hZGluZyksXG4gICAgICBtYXAoKFtjdXJyZW50TWZlXSkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFRyYW5zbGF0ZUNvbWJpbmVkTG9hZGVyKFxuICAgICAgICAgIC8vIHRyYW5zbGF0aW9ucyBvZiBzaGVsbCBvciBvZiBhcHAgaW4gc3RhbmRhbG9uZSBtb2RlXG4gICAgICAgICAgbmV3IENhY2hpbmdUcmFuc2xhdGVMb2FkZXIodHMsIGh0dHAsIGAuL2Fzc2V0cy9pMThuL2AsICcuanNvbicpLFxuICAgICAgICAgIC8vIHRyYW5zbGF0aW9ucyBvZiBwb3J0YWwtaW50ZWdyYXRpb24tYW5ndWxhciBvZiBhcHBcbiAgICAgICAgICBuZXcgQ2FjaGluZ1RyYW5zbGF0ZUxvYWRlcihcbiAgICAgICAgICAgIHRzLFxuICAgICAgICAgICAgaHR0cCxcbiAgICAgICAgICAgIExvY2F0aW9uLmpvaW5XaXRoU2xhc2goY3VycmVudE1mZS5yZW1vdGVCYXNlVXJsLCBgb25lY3gtcG9ydGFsLWxpYi9hc3NldHMvaTE4bi9gKSxcbiAgICAgICAgICAgICcuanNvbidcbiAgICAgICAgICApLFxuICAgICAgICAgIC8vIHRyYW5zbGF0aW9ucyBvZiB0aGUgYXBwXG4gICAgICAgICAgbmV3IENhY2hpbmdUcmFuc2xhdGVMb2FkZXIoXG4gICAgICAgICAgICB0cyxcbiAgICAgICAgICAgIGh0dHAsXG4gICAgICAgICAgICBMb2NhdGlvbi5qb2luV2l0aFNsYXNoKGN1cnJlbnRNZmUucmVtb3RlQmFzZVVybCwgYGFzc2V0cy9pMThuL2ApLFxuICAgICAgICAgICAgJy5qc29uJ1xuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgfSksXG4gICAgICB0YXAoKCkgPT4gY29uc29sZS50aW1lRW5kKCdjcmVhdGVUcmFuc2xhdGVMb2FkZXJfJyArIHRpbWVySWQpKVxuICAgIClcbiAgKVxufVxuIl19
@@ -0,0 +1,32 @@
1
+ import { Inject, Injectable, LOCALE_ID } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class DateUtils {
4
+ constructor(locale) {
5
+ this.locale = locale;
6
+ this.options = {
7
+ month: 'short',
8
+ day: '2-digit',
9
+ year: 'numeric',
10
+ hour: 'numeric',
11
+ minute: '2-digit',
12
+ second: '2-digit',
13
+ };
14
+ }
15
+ localizedDate(date) {
16
+ return date
17
+ ? new Intl.DateTimeFormat(this.locale, this.options).format(date instanceof Date ? date : new Date(date))
18
+ : '';
19
+ }
20
+ }
21
+ DateUtils.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DateUtils, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable });
22
+ DateUtils.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DateUtils, providedIn: 'root' });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DateUtils, decorators: [{
24
+ type: Injectable,
25
+ args: [{
26
+ providedIn: 'root',
27
+ }]
28
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
29
+ type: Inject,
30
+ args: [LOCALE_ID]
31
+ }] }]; } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvdXRpbHMvZGF0ZXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTs7QUFLN0QsTUFBTSxPQUFPLFNBQVM7SUFDcEIsWUFBeUMsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFFdkQsWUFBTyxHQUErQjtZQUNwQyxLQUFLLEVBQUUsT0FBTztZQUNkLEdBQUcsRUFBRSxTQUFTO1lBQ2QsSUFBSSxFQUFFLFNBQVM7WUFDZixJQUFJLEVBQUUsU0FBUztZQUNmLE1BQU0sRUFBRSxTQUFTO1lBQ2pCLE1BQU0sRUFBRSxTQUFTO1NBQ2xCLENBQUE7SUFUeUQsQ0FBQztJQVczRCxhQUFhLENBQUMsSUFBd0M7UUFDcEQsT0FBTyxJQUFJO1lBQ1QsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxZQUFZLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6RyxDQUFDLENBQUMsRUFBRSxDQUFBO0lBQ1IsQ0FBQzs7dUdBaEJVLFNBQVMsa0JBQ0EsU0FBUzsyR0FEbEIsU0FBUyxjQUZSLE1BQU07NEZBRVAsU0FBUztrQkFIckIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUVjLE1BQU07MkJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgTE9DQUxFX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERhdGVVdGlscyB7XG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoTE9DQUxFX0lEKSBwcm90ZWN0ZWQgbG9jYWxlOiBzdHJpbmcpIHt9XG5cbiAgb3B0aW9uczogSW50bC5EYXRlVGltZUZvcm1hdE9wdGlvbnMgPSB7XG4gICAgbW9udGg6ICdzaG9ydCcsXG4gICAgZGF5OiAnMi1kaWdpdCcsXG4gICAgeWVhcjogJ251bWVyaWMnLFxuICAgIGhvdXI6ICdudW1lcmljJyxcbiAgICBtaW51dGU6ICcyLWRpZ2l0JyxcbiAgICBzZWNvbmQ6ICcyLWRpZ2l0JyxcbiAgfVxuXG4gIGxvY2FsaXplZERhdGUoZGF0ZTogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGRhdGVcbiAgICAgID8gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQodGhpcy5sb2NhbGUsIHRoaXMub3B0aW9ucykuZm9ybWF0KGRhdGUgaW5zdGFuY2VvZiBEYXRlID8gZGF0ZSA6IG5ldyBEYXRlKGRhdGUpKVxuICAgICAgOiAnJ1xuICB9XG59XG4iXX0=
@@ -0,0 +1,30 @@
1
+ export class ObjectUtils {
2
+ static resolveFieldData(data, field) {
3
+ if (data && field) {
4
+ if (this.isFunction(field)) {
5
+ return field(data);
6
+ }
7
+ else if (field.indexOf('.') == -1) {
8
+ return data[field];
9
+ }
10
+ else {
11
+ const fields = field.split('.');
12
+ let value = data;
13
+ for (let i = 0, len = fields.length; i < len; ++i) {
14
+ if (value == null) {
15
+ return null;
16
+ }
17
+ value = value[fields[i]];
18
+ }
19
+ return value;
20
+ }
21
+ }
22
+ else {
23
+ return null;
24
+ }
25
+ }
26
+ static isFunction(obj) {
27
+ return !!(obj && obj.constructor && obj.call && obj.apply);
28
+ }
29
+ }
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0dXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi91dGlscy9vYmplY3R1dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sV0FBVztJQUNmLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUNsRCxJQUFJLElBQUksSUFBSSxLQUFLLEVBQUU7WUFDakIsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUMxQixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTthQUNuQjtpQkFBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUU7Z0JBQ25DLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO2FBQ25CO2lCQUFNO2dCQUNMLE1BQU0sTUFBTSxHQUFhLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7Z0JBQ3pDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQTtnQkFDaEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRTtvQkFDakQsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFO3dCQUNqQixPQUFPLElBQUksQ0FBQTtxQkFDWjtvQkFDRCxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO2lCQUN6QjtnQkFDRCxPQUFPLEtBQUssQ0FBQTthQUNiO1NBQ0Y7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFBO1NBQ1o7SUFDSCxDQUFDO0lBRU0sTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFRO1FBQy9CLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxXQUFXLElBQUksR0FBRyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDNUQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIE9iamVjdFV0aWxzIHtcbiAgcHVibGljIHN0YXRpYyByZXNvbHZlRmllbGREYXRhKGRhdGE6IGFueSwgZmllbGQ6IGFueSk6IGFueSB7XG4gICAgaWYgKGRhdGEgJiYgZmllbGQpIHtcbiAgICAgIGlmICh0aGlzLmlzRnVuY3Rpb24oZmllbGQpKSB7XG4gICAgICAgIHJldHVybiBmaWVsZChkYXRhKVxuICAgICAgfSBlbHNlIGlmIChmaWVsZC5pbmRleE9mKCcuJykgPT0gLTEpIHtcbiAgICAgICAgcmV0dXJuIGRhdGFbZmllbGRdXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBmaWVsZHM6IHN0cmluZ1tdID0gZmllbGQuc3BsaXQoJy4nKVxuICAgICAgICBsZXQgdmFsdWUgPSBkYXRhXG4gICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSBmaWVsZHMubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHtcbiAgICAgICAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICB9XG4gICAgICAgICAgdmFsdWUgPSB2YWx1ZVtmaWVsZHNbaV1dXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbHVlXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBpc0Z1bmN0aW9uKG9iajogYW55KSB7XG4gICAgcmV0dXJuICEhKG9iaiAmJiBvYmouY29uc3RydWN0b3IgJiYgb2JqLmNhbGwgJiYgb2JqLmFwcGx5KVxuICB9XG59XG4iXX0=
@@ -0,0 +1,34 @@
1
+ import { map } from 'rxjs';
2
+ import { TimeagoIntl } from 'ngx-timeago';
3
+ import { strings as englishStrings } from 'ngx-timeago/language-strings/en';
4
+ import { strings as germanStrings } from 'ngx-timeago/language-strings/de';
5
+ export class OcxTimeagoIntl extends TimeagoIntl {
6
+ constructor(userService) {
7
+ super();
8
+ this.userService = userService;
9
+ this.LANG_TO_STRINGS = {
10
+ en: englishStrings,
11
+ de: germanStrings,
12
+ };
13
+ this.DEFAULT_LANG = 'en';
14
+ this.strings = englishStrings;
15
+ userService.lang$
16
+ .pipe(map((lang) => {
17
+ return this.getBestMatchLanguage(lang);
18
+ }))
19
+ .subscribe((lang) => {
20
+ this.strings = this.LANG_TO_STRINGS[lang];
21
+ this.changes.next();
22
+ });
23
+ }
24
+ getBestMatchLanguage(lang) {
25
+ if (Object.keys(this.LANG_TO_STRINGS).includes(lang)) {
26
+ return lang;
27
+ }
28
+ else {
29
+ console.log(`${lang} is not supported. Using ${this.DEFAULT_LANG} as a fallback.`);
30
+ }
31
+ return this.DEFAULT_LANG;
32
+ }
33
+ }
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2N4dGltZWFnb2ludGwudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi91dGlscy9vY3h0aW1lYWdvaW50bC51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzFCLE9BQU8sRUFBaUIsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3hELE9BQU8sRUFBRSxPQUFPLElBQUksY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDM0UsT0FBTyxFQUFFLE9BQU8sSUFBSSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUcxRSxNQUFNLE9BQU8sY0FBZSxTQUFRLFdBQVc7SUFPN0MsWUFBc0IsV0FBd0I7UUFDNUMsS0FBSyxFQUFFLENBQUE7UUFEYSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQU50QyxvQkFBZSxHQUFxQztZQUMxRCxFQUFFLEVBQUUsY0FBYztZQUNsQixFQUFFLEVBQUUsYUFBYTtTQUNsQixDQUFBO1FBQ08saUJBQVksR0FBRyxJQUFJLENBQUE7UUFJekIsSUFBSSxDQUFDLE9BQU8sR0FBRyxjQUFjLENBQUE7UUFDN0IsV0FBVyxDQUFDLEtBQUs7YUFDZCxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDWCxPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFjLENBQUMsQ0FBQTtRQUNsRCxDQUFDLENBQUMsQ0FDSDthQUNBLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUN6QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFBO1FBQ3JCLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUVELG9CQUFvQixDQUFDLElBQVk7UUFDL0IsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEQsT0FBTyxJQUFJLENBQUE7U0FDWjthQUFNO1lBQ0wsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksNEJBQTRCLElBQUksQ0FBQyxZQUFZLGlCQUFpQixDQUFDLENBQUE7U0FDbkY7UUFDRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUE7SUFDMUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IElMMTBuc1N0cmluZ3MsIFRpbWVhZ29JbnRsIH0gZnJvbSAnbmd4LXRpbWVhZ28nXG5pbXBvcnQgeyBzdHJpbmdzIGFzIGVuZ2xpc2hTdHJpbmdzIH0gZnJvbSAnbmd4LXRpbWVhZ28vbGFuZ3VhZ2Utc3RyaW5ncy9lbidcbmltcG9ydCB7IHN0cmluZ3MgYXMgZ2VybWFuU3RyaW5ncyB9IGZyb20gJ25neC10aW1lYWdvL2xhbmd1YWdlLXN0cmluZ3MvZGUnXG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJ0BvbmVjeC9hbmd1bGFyLWludGVncmF0aW9uLWludGVyZmFjZSdcblxuZXhwb3J0IGNsYXNzIE9jeFRpbWVhZ29JbnRsIGV4dGVuZHMgVGltZWFnb0ludGwge1xuICBwcml2YXRlIExBTkdfVE9fU1RSSU5HUzogeyBba2V5OiBzdHJpbmddOiBJTDEwbnNTdHJpbmdzIH0gPSB7XG4gICAgZW46IGVuZ2xpc2hTdHJpbmdzLFxuICAgIGRlOiBnZXJtYW5TdHJpbmdzLFxuICB9XG4gIHByaXZhdGUgREVGQVVMVF9MQU5HID0gJ2VuJ1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCB1c2VyU2VydmljZTogVXNlclNlcnZpY2UpIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5zdHJpbmdzID0gZW5nbGlzaFN0cmluZ3NcbiAgICB1c2VyU2VydmljZS5sYW5nJFxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgobGFuZykgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLmdldEJlc3RNYXRjaExhbmd1YWdlKGxhbmcgYXMgc3RyaW5nKVxuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgobGFuZykgPT4ge1xuICAgICAgICB0aGlzLnN0cmluZ3MgPSB0aGlzLkxBTkdfVE9fU1RSSU5HU1tsYW5nXVxuICAgICAgICB0aGlzLmNoYW5nZXMubmV4dCgpXG4gICAgICB9KVxuICB9XG5cbiAgZ2V0QmVzdE1hdGNoTGFuZ3VhZ2UobGFuZzogc3RyaW5nKSB7XG4gICAgaWYgKE9iamVjdC5rZXlzKHRoaXMuTEFOR19UT19TVFJJTkdTKS5pbmNsdWRlcyhsYW5nKSkge1xuICAgICAgcmV0dXJuIGxhbmdcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5sb2coYCR7bGFuZ30gaXMgbm90IHN1cHBvcnRlZC4gVXNpbmcgJHt0aGlzLkRFRkFVTFRfTEFOR30gYXMgYSBmYWxsYmFjay5gKVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5ERUZBVUxUX0xBTkdcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWVpY29uLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvdXRpbHMvcHJpbWVpY29uLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcmltZUljb25zIH0gZnJvbSAncHJpbWVuZy9hcGknXG4vKipcbiAqIEBleGFtcGxlIGxldCBteUljb24gOiBQcmltZUljb24gPSBQcmltZUljb25zLm15SWNvblxuICovXG5leHBvcnQgdHlwZSBQcmltZUljb24gPSAodHlwZW9mIFByaW1lSWNvbnMpW2tleW9mIE9taXQ8dHlwZW9mIFByaW1lSWNvbnMsICdwcm90b3R5cGUnPl1cbiJdfQ==
@@ -0,0 +1,36 @@
1
+ import { forkJoin, map } from 'rxjs';
2
+ export class TranslateCombinedLoader {
3
+ constructor(...loaders) {
4
+ this._loaders = loaders;
5
+ }
6
+ getTranslation(lang) {
7
+ return forkJoin(this._loaders.map((l) => l.getTranslation(lang))).pipe(map((allTranslations) => {
8
+ let result = {};
9
+ allTranslations.forEach((translations) => {
10
+ result = this.mergeDeep(result, translations);
11
+ });
12
+ return result;
13
+ }));
14
+ }
15
+ isObject(item) {
16
+ return item && typeof item === 'object' && !Array.isArray(item);
17
+ }
18
+ mergeDeep(target, source) {
19
+ const output = Object.assign({}, target);
20
+ if (this.isObject(target) && this.isObject(source)) {
21
+ Object.keys(source).forEach((key) => {
22
+ if (this.isObject(source[key])) {
23
+ if (!(key in target))
24
+ Object.assign(output, { [key]: source[key] });
25
+ else
26
+ output[key] = this.mergeDeep(target[key], source[key]);
27
+ }
28
+ else {
29
+ Object.assign(output, { [key]: source[key] });
30
+ }
31
+ });
32
+ }
33
+ return output;
34
+ }
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLmNvbWJpbmVkLmxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1hY2NlbGVyYXRvci9zcmMvbGliL3V0aWxzL3RyYW5zbGF0ZS5jb21iaW5lZC5sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFjLFFBQVEsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDaEQsTUFBTSxPQUFPLHVCQUF1QjtJQUVsQyxZQUFZLEdBQUcsT0FBMEI7UUFDdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUE7SUFDekIsQ0FBQztJQUNELGNBQWMsQ0FBQyxJQUFZO1FBQ3pCLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3BFLEdBQUcsQ0FBQyxDQUFDLGVBQWUsRUFBRSxFQUFFO1lBQ3RCLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQTtZQUNmLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRTtnQkFDdkMsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFBO1lBQy9DLENBQUMsQ0FBQyxDQUFBO1lBQ0YsT0FBTyxNQUFNLENBQUE7UUFDZixDQUFDLENBQUMsQ0FDSCxDQUFBO0lBQ0gsQ0FBQztJQUNELFFBQVEsQ0FBQyxJQUFTO1FBQ2hCLE9BQU8sSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDakUsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUFXLEVBQUUsTUFBVztRQUNoQyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUN4QyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNsRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNsQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7b0JBQzlCLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxNQUFNLENBQUM7d0JBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUE7O3dCQUM5RCxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7aUJBQzVEO3FCQUFNO29CQUNMLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFBO2lCQUM5QztZQUNILENBQUMsQ0FBQyxDQUFBO1NBQ0g7UUFDRCxPQUFPLE1BQU0sQ0FBQTtJQUNmLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zbGF0ZUxvYWRlciB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmb3JrSm9pbiwgbWFwIH0gZnJvbSAncnhqcydcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVDb21iaW5lZExvYWRlciBpbXBsZW1lbnRzIFRyYW5zbGF0ZUxvYWRlciB7XG4gIHByaXZhdGUgX2xvYWRlcnM6IFRyYW5zbGF0ZUxvYWRlcltdXG4gIGNvbnN0cnVjdG9yKC4uLmxvYWRlcnM6IFRyYW5zbGF0ZUxvYWRlcltdKSB7XG4gICAgdGhpcy5fbG9hZGVycyA9IGxvYWRlcnNcbiAgfVxuICBnZXRUcmFuc2xhdGlvbihsYW5nOiBzdHJpbmcpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xuICAgIHJldHVybiBmb3JrSm9pbih0aGlzLl9sb2FkZXJzLm1hcCgobCkgPT4gbC5nZXRUcmFuc2xhdGlvbihsYW5nKSkpLnBpcGUoXG4gICAgICBtYXAoKGFsbFRyYW5zbGF0aW9ucykgPT4ge1xuICAgICAgICBsZXQgcmVzdWx0ID0ge31cbiAgICAgICAgYWxsVHJhbnNsYXRpb25zLmZvckVhY2goKHRyYW5zbGF0aW9ucykgPT4ge1xuICAgICAgICAgIHJlc3VsdCA9IHRoaXMubWVyZ2VEZWVwKHJlc3VsdCwgdHJhbnNsYXRpb25zKVxuICAgICAgICB9KVxuICAgICAgICByZXR1cm4gcmVzdWx0XG4gICAgICB9KVxuICAgIClcbiAgfVxuICBpc09iamVjdChpdGVtOiBhbnkpOiBhbnkge1xuICAgIHJldHVybiBpdGVtICYmIHR5cGVvZiBpdGVtID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShpdGVtKVxuICB9XG5cbiAgbWVyZ2VEZWVwKHRhcmdldDogYW55LCBzb3VyY2U6IGFueSk6IGFueSB7XG4gICAgY29uc3Qgb3V0cHV0ID0gT2JqZWN0LmFzc2lnbih7fSwgdGFyZ2V0KVxuICAgIGlmICh0aGlzLmlzT2JqZWN0KHRhcmdldCkgJiYgdGhpcy5pc09iamVjdChzb3VyY2UpKSB7XG4gICAgICBPYmplY3Qua2V5cyhzb3VyY2UpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBpZiAodGhpcy5pc09iamVjdChzb3VyY2Vba2V5XSkpIHtcbiAgICAgICAgICBpZiAoIShrZXkgaW4gdGFyZ2V0KSkgT2JqZWN0LmFzc2lnbihvdXRwdXQsIHsgW2tleV06IHNvdXJjZVtrZXldIH0pXG4gICAgICAgICAgZWxzZSBvdXRwdXRba2V5XSA9IHRoaXMubWVyZ2VEZWVwKHRhcmdldFtrZXldLCBzb3VyY2Vba2V5XSlcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBPYmplY3QuYXNzaWduKG91dHB1dCwgeyBba2V5XTogc291cmNlW2tleV0gfSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gICAgcmV0dXJuIG91dHB1dFxuICB9XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lY3gtYW5ndWxhci1hY2NlbGVyYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1hY2NlbGVyYXRvci9zcmMvb25lY3gtYW5ndWxhci1hY2NlbGVyYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -0,0 +1,10 @@
1
+ import { ComponentHarness } from '@angular/cdk/testing';
2
+ import { PDropdownHarness } from '@onecx/angular-testing';
3
+ export class ColumnGroupSelectionHarness extends ComponentHarness {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.getPDropdown = this.locatorFor(PDropdownHarness);
7
+ }
8
+ }
9
+ ColumnGroupSelectionHarness.hostSelector = 'ocx-column-group-selection';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWdyb3VwLXNlbGVjdGlvbi5oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3Rlc3RpbmcvY29sdW1uLWdyb3VwLXNlbGVjdGlvbi5oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBRXpELE1BQU0sT0FBTywyQkFBNEIsU0FBUSxnQkFBZ0I7SUFBakU7O1FBR0UsaUJBQVksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUE7SUFDbEQsQ0FBQzs7QUFIUSx3Q0FBWSxHQUFHLDRCQUE0QixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50SGFybmVzcyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJ1xuaW1wb3J0IHsgUERyb3Bkb3duSGFybmVzcyB9IGZyb20gJ0BvbmVjeC9hbmd1bGFyLXRlc3RpbmcnXG5cbmV4cG9ydCBjbGFzcyBDb2x1bW5Hcm91cFNlbGVjdGlvbkhhcm5lc3MgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzIHtcbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdvY3gtY29sdW1uLWdyb3VwLXNlbGVjdGlvbidcblxuICBnZXRQRHJvcGRvd24gPSB0aGlzLmxvY2F0b3JGb3IoUERyb3Bkb3duSGFybmVzcylcbn1cbiJdfQ==