@ethlete/core 0.2.0-next.8 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/esm2020/lib/components/public-api.mjs +2 -0
  2. package/esm2020/lib/components/structured-data/public-api.mjs +2 -0
  3. package/esm2020/lib/components/structured-data/structured-data.component.mjs +37 -0
  4. package/esm2020/lib/directives/animatable/animatable.directive.mjs +79 -0
  5. package/esm2020/lib/directives/animatable/public-api.mjs +2 -0
  6. package/esm2020/lib/directives/animated-lifecycle/animated-lifecycle.directive.mjs +115 -0
  7. package/esm2020/lib/directives/animated-lifecycle/public-api.mjs +2 -0
  8. package/esm2020/lib/directives/click-outside/click-outside.directive.mjs +3 -3
  9. package/esm2020/lib/directives/cursor-drag-scroll/cursor-drag-scroll.directive.mjs +5 -5
  10. package/esm2020/lib/directives/let/let.directive.mjs +8 -8
  11. package/esm2020/lib/directives/observe-content/observe-content.directive.mjs +7 -7
  12. package/esm2020/lib/directives/observe-resize/observe-resize.directive.mjs +7 -7
  13. package/esm2020/lib/directives/observe-scroll-state/observe-scroll-state.directive.mjs +11 -10
  14. package/esm2020/lib/directives/public-api.mjs +3 -2
  15. package/esm2020/lib/directives/repeat/repeat.directive.mjs +10 -11
  16. package/esm2020/lib/directives/scroll-observer-first-element/scroll-observer-first-element.directive.mjs +3 -3
  17. package/esm2020/lib/directives/scroll-observer-ignore-target/scroll-observer-ignore-target.directive.mjs +3 -3
  18. package/esm2020/lib/directives/scroll-observer-last-element/scroll-observer-last-element.directive.mjs +3 -3
  19. package/esm2020/lib/directives/seo/seo.directive.mjs +8 -4
  20. package/esm2020/lib/pipes/normalize-game-result-type/normalize-game-result-type.pipe.mjs +15 -0
  21. package/esm2020/lib/pipes/normalize-game-result-type/normalize-game-result-type.types.mjs +2 -0
  22. package/esm2020/lib/pipes/normalize-game-result-type/normalize-game-result-type.util.mjs +34 -0
  23. package/esm2020/lib/pipes/normalize-game-result-type/public-api.mjs +4 -0
  24. package/esm2020/lib/pipes/normalize-match-participants/normalize-match-participants.pipe.mjs +15 -0
  25. package/esm2020/lib/pipes/normalize-match-participants/normalize-match-participants.types.mjs +2 -0
  26. package/esm2020/lib/pipes/normalize-match-participants/normalize-match-participants.util.mjs +47 -0
  27. package/esm2020/lib/pipes/normalize-match-participants/public-api.mjs +4 -0
  28. package/esm2020/lib/pipes/normalize-match-score/normalize-match-score.pipe.mjs +15 -0
  29. package/esm2020/lib/pipes/normalize-match-score/normalize-match-score.types.mjs +2 -0
  30. package/esm2020/lib/pipes/normalize-match-score/normalize-match-score.util.mjs +126 -0
  31. package/esm2020/lib/pipes/normalize-match-score/public-api.mjs +4 -0
  32. package/esm2020/lib/pipes/normalize-match-state/index.mjs +2 -0
  33. package/esm2020/lib/pipes/normalize-match-state/normalize-match-state.constants.mjs +2 -0
  34. package/esm2020/lib/pipes/normalize-match-state/normalize-match-state.pipe.mjs +15 -0
  35. package/esm2020/lib/pipes/normalize-match-state/normalize-match-state.util.mjs +19 -0
  36. package/esm2020/lib/pipes/normalize-match-state/public-api.mjs +4 -0
  37. package/esm2020/lib/pipes/normalize-match-type/normalize-match-type.pipe.mjs +15 -0
  38. package/esm2020/lib/pipes/normalize-match-type/normalize-match-type.util.mjs +38 -0
  39. package/esm2020/lib/pipes/normalize-match-type/public-api.mjs +3 -0
  40. package/esm2020/lib/pipes/public-api.mjs +6 -1
  41. package/esm2020/lib/pipes/to-array/to-array.pipe.mjs +3 -3
  42. package/esm2020/lib/public-api.mjs +3 -1
  43. package/esm2020/lib/services/click-observer.service.mjs +6 -6
  44. package/esm2020/lib/services/content-observer.service.mjs +6 -6
  45. package/esm2020/lib/services/destroy.service.mjs +3 -3
  46. package/esm2020/lib/services/focus-visible.service.mjs +7 -7
  47. package/esm2020/lib/services/public-api.mjs +2 -1
  48. package/esm2020/lib/services/resize-observer.service.mjs +6 -6
  49. package/esm2020/lib/services/router-state.service.mjs +115 -0
  50. package/esm2020/lib/services/viewport.service.mjs +16 -16
  51. package/esm2020/lib/types/angular.types.mjs +36 -2
  52. package/esm2020/lib/types/i18n.types.mjs +2 -0
  53. package/esm2020/lib/types/public-api.mjs +3 -2
  54. package/esm2020/lib/utils/animation.utils.mjs +18 -0
  55. package/esm2020/lib/utils/clone.util.mjs +78 -0
  56. package/esm2020/lib/utils/cookie.util.mjs +48 -0
  57. package/esm2020/lib/utils/equal.util.mjs +118 -0
  58. package/esm2020/lib/utils/media-query-observable.util.mjs +18 -0
  59. package/esm2020/lib/utils/public-api.mjs +8 -2
  60. package/esm2020/lib/utils/reactive-binding.util.mjs +111 -0
  61. package/esm2020/lib/validators/is-array-not-empty.validator.mjs +9 -0
  62. package/esm2020/lib/validators/is-email.validator.mjs +10 -0
  63. package/esm2020/lib/validators/must-match.validator.mjs +19 -0
  64. package/esm2020/lib/validators/public-api.mjs +12 -0
  65. package/fesm2015/ethlete-core.mjs +1232 -138
  66. package/fesm2015/ethlete-core.mjs.map +1 -1
  67. package/fesm2020/ethlete-core.mjs +1238 -138
  68. package/fesm2020/ethlete-core.mjs.map +1 -1
  69. package/lib/components/public-api.d.ts +1 -0
  70. package/lib/components/structured-data/public-api.d.ts +1 -0
  71. package/lib/components/structured-data/structured-data.component.d.ts +11 -0
  72. package/lib/directives/animatable/animatable.directive.d.ts +20 -0
  73. package/lib/directives/animatable/public-api.d.ts +1 -0
  74. package/lib/directives/animated-lifecycle/animated-lifecycle.directive.d.ts +22 -0
  75. package/lib/directives/animated-lifecycle/public-api.d.ts +1 -0
  76. package/lib/directives/observe-content/observe-content.directive.d.ts +2 -2
  77. package/lib/directives/observe-resize/observe-resize.directive.d.ts +2 -2
  78. package/lib/directives/observe-scroll-state/observe-scroll-state.directive.d.ts +2 -2
  79. package/lib/directives/observe-scroll-state/observe-scroll-state.types.d.ts +1 -1
  80. package/lib/directives/public-api.d.ts +2 -1
  81. package/lib/directives/repeat/repeat.directive.d.ts +2 -3
  82. package/lib/directives/seo/seo.directive.types.d.ts +1 -1
  83. package/lib/pipes/normalize-game-result-type/normalize-game-result-type.pipe.d.ts +7 -0
  84. package/lib/pipes/normalize-game-result-type/normalize-game-result-type.types.d.ts +4 -0
  85. package/lib/pipes/normalize-game-result-type/normalize-game-result-type.util.d.ts +2 -0
  86. package/lib/pipes/normalize-game-result-type/public-api.d.ts +3 -0
  87. package/lib/pipes/normalize-match-participants/normalize-match-participants.pipe.d.ts +7 -0
  88. package/lib/pipes/normalize-match-participants/normalize-match-participants.types.d.ts +21 -0
  89. package/lib/pipes/normalize-match-participants/normalize-match-participants.util.d.ts +4 -0
  90. package/lib/pipes/normalize-match-participants/public-api.d.ts +3 -0
  91. package/lib/pipes/normalize-match-score/normalize-match-score.pipe.d.ts +7 -0
  92. package/lib/pipes/normalize-match-score/normalize-match-score.types.d.ts +12 -0
  93. package/lib/pipes/normalize-match-score/normalize-match-score.util.d.ts +27 -0
  94. package/lib/pipes/normalize-match-score/public-api.d.ts +3 -0
  95. package/lib/pipes/normalize-match-state/index.d.ts +1 -0
  96. package/lib/pipes/normalize-match-state/normalize-match-state.constants.d.ts +7 -0
  97. package/lib/pipes/normalize-match-state/normalize-match-state.pipe.d.ts +7 -0
  98. package/lib/pipes/normalize-match-state/normalize-match-state.util.d.ts +3 -0
  99. package/lib/pipes/normalize-match-state/public-api.d.ts +3 -0
  100. package/lib/pipes/normalize-match-type/normalize-match-type.pipe.d.ts +7 -0
  101. package/lib/pipes/normalize-match-type/normalize-match-type.util.d.ts +3 -0
  102. package/lib/pipes/normalize-match-type/public-api.d.ts +2 -0
  103. package/lib/pipes/public-api.d.ts +5 -0
  104. package/lib/public-api.d.ts +2 -0
  105. package/lib/services/public-api.d.ts +1 -0
  106. package/lib/services/router-state.service.d.ts +40 -0
  107. package/lib/services/viewport.types.d.ts +1 -1
  108. package/lib/types/angular.types.d.ts +14 -1
  109. package/lib/types/i18n.types.d.ts +4 -0
  110. package/lib/types/public-api.d.ts +2 -1
  111. package/lib/types/viewport.types.d.ts +2 -2
  112. package/lib/utils/animation.utils.d.ts +4 -0
  113. package/lib/utils/clone.util.d.ts +15 -0
  114. package/lib/utils/cookie.util.d.ts +5 -0
  115. package/lib/utils/equal.util.d.ts +27 -0
  116. package/lib/utils/media-query-observable.util.d.ts +5 -0
  117. package/lib/utils/public-api.d.ts +7 -1
  118. package/lib/utils/reactive-binding.util.d.ts +19 -0
  119. package/lib/validators/is-array-not-empty.validator.d.ts +3 -0
  120. package/lib/validators/is-email.validator.d.ts +3 -0
  121. package/lib/validators/must-match.validator.d.ts +3 -0
  122. package/lib/validators/public-api.d.ts +8 -0
  123. package/package.json +8 -5
  124. package/esm2020/lib/directives/destroy/destroy.directive.mjs +0 -22
  125. package/esm2020/lib/directives/destroy/public-api.mjs +0 -2
  126. package/lib/directives/destroy/destroy.directive.d.ts +0 -9
  127. package/lib/directives/destroy/public-api.d.ts +0 -1
@@ -0,0 +1,126 @@
1
+ import { normalizeMatchState } from '../normalize-match-state';
2
+ const EMPTY_SCORE = {
3
+ home: { score: 'match-score.placeholder', isWinner: false },
4
+ away: { score: 'match-score.placeholder', isWinner: false },
5
+ isNumeric: false,
6
+ subLine: null,
7
+ };
8
+ export const normalizeMatchScore = (match) => {
9
+ if (!match) {
10
+ return null;
11
+ }
12
+ const matchState = normalizeMatchState(match);
13
+ const subLine = getMatchScoreSubLine(match);
14
+ if (!match.homeScore && !match.awayScore) {
15
+ return { ...EMPTY_SCORE, subLine, isNumeric: false };
16
+ }
17
+ if (isKnockoutMatch(match)) {
18
+ if (matchState === "preMatch" /* MatchStateType.PRE_MATCH */ || matchState === "live" /* MatchStateType.LIVE */) {
19
+ return { ...EMPTY_SCORE, subLine, isNumeric: false };
20
+ }
21
+ return {
22
+ home: {
23
+ score: getKnockoutMatchScore(match.homeScore),
24
+ isWinner: match.homeScore?.status === 'won',
25
+ },
26
+ away: {
27
+ score: getKnockoutMatchScore(match.awayScore),
28
+ isWinner: match.awayScore?.status === 'won',
29
+ },
30
+ subLine,
31
+ isNumeric: false,
32
+ };
33
+ }
34
+ else if (isGroupMatch(match)) {
35
+ if (match.games.length === 1) {
36
+ // Return the score if only one game has been played
37
+ return {
38
+ ...getGroupMatchScore(match),
39
+ subLine,
40
+ isNumeric: true,
41
+ };
42
+ }
43
+ else {
44
+ return {
45
+ ...getGroupMatchPoints(match),
46
+ subLine,
47
+ isNumeric: true,
48
+ };
49
+ }
50
+ }
51
+ else {
52
+ return {
53
+ ...getGroupMatchScore(match),
54
+ subLine,
55
+ isNumeric: true,
56
+ };
57
+ }
58
+ };
59
+ export const isKnockoutMatch = (match) => {
60
+ if (!match) {
61
+ return false;
62
+ }
63
+ return (match.matchType === 'single_elimination' ||
64
+ match.matchType === 'double_elimination' ||
65
+ match.matchType === 'fifa_swiss');
66
+ };
67
+ export const isGroupMatch = (match) => {
68
+ if (!match) {
69
+ return false;
70
+ }
71
+ return match.matchType === 'groups' || match.matchType === 'league';
72
+ };
73
+ export const getKnockoutMatchScore = (score) => {
74
+ if (score?.status === 'won') {
75
+ return 'match-score.knockout.won';
76
+ }
77
+ else if (score?.status === 'lost') {
78
+ return 'match-score.knockout.lost';
79
+ }
80
+ else if (score?.status === 'tie') {
81
+ return 'match-score.knockout.tie';
82
+ }
83
+ return null;
84
+ };
85
+ export const getMatchScoreSubLine = (match) => {
86
+ if (isKnockoutMatch(match)) {
87
+ return null;
88
+ }
89
+ else if (isGroupMatch(match)) {
90
+ return 'match-score.groups.sub-line';
91
+ }
92
+ else {
93
+ return null;
94
+ }
95
+ };
96
+ export const getGroupMatchScore = (match) => {
97
+ if (!match) {
98
+ return null;
99
+ }
100
+ return {
101
+ home: {
102
+ score: match.homeScore?.ownPoints || 0,
103
+ isWinner: match.homeScore?.status === 'won',
104
+ },
105
+ away: {
106
+ score: match.awayScore?.ownPoints || 0,
107
+ isWinner: match.awayScore?.status === 'won',
108
+ },
109
+ };
110
+ };
111
+ export const getGroupMatchPoints = (match) => {
112
+ if (!match) {
113
+ return null;
114
+ }
115
+ return {
116
+ home: {
117
+ score: match.homeScore?.score || 0,
118
+ isWinner: match.homeScore?.status === 'won',
119
+ },
120
+ away: {
121
+ score: match.awayScore?.score || 0,
122
+ isWinner: match.awayScore?.status === 'won',
123
+ },
124
+ };
125
+ };
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9ybWFsaXplLW1hdGNoLXNjb3JlLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9waXBlcy9ub3JtYWxpemUtbWF0Y2gtc2NvcmUvbm9ybWFsaXplLW1hdGNoLXNjb3JlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFrQixtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRy9FLE1BQU0sV0FBVyxHQUF5QjtJQUN4QyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUseUJBQXlCLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtJQUMzRCxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUseUJBQXlCLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtJQUMzRCxTQUFTLEVBQUUsS0FBSztJQUNoQixPQUFPLEVBQUUsSUFBSTtDQUNkLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEtBQXVDLEVBQStCLEVBQUU7SUFDMUcsSUFBSSxDQUFDLEtBQUssRUFBRTtRQUNWLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFFRCxNQUFNLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxNQUFNLE9BQU8sR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUU1QyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUU7UUFDeEMsT0FBTyxFQUFFLEdBQUcsV0FBVyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7S0FDdEQ7SUFFRCxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUMxQixJQUFJLFVBQVUsOENBQTZCLElBQUksVUFBVSxxQ0FBd0IsRUFBRTtZQUNqRixPQUFPLEVBQUUsR0FBRyxXQUFXLEVBQUUsT0FBTyxFQUFF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QUFFO1lBQ0osS0FBSyxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUUsU0FBUyxJQUFJLENBQUM7WUFDdEMsUUFBUSxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUUsTUFBTSxLQUFLLEtBQUs7U0FDNUM7UUFDRCxJQUFJLEVBQUU7WUFDSixLQUFLLEVBQUUsS0FBSyxDQUFDLFNBQVMsRUFBRSxTQUFTLElBQUksQ0FBQztZQUN0QyxRQUFRLEVBQUUsS0FBSyxDQUFDLFNBQVMsRUFBRSxNQUFNLEtBQUssS0FBSztTQUM1QztLQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEtBQXVDLEVBQUUsRUFBRTtJQUM3RSxJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1YsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELE9BQU87UUFDTCxJQUFJLEVBQUU7WUFDSixLQUFLLEVBQUUsS0FBSyxDQUFDLFNBQVMsRUFBRSxLQUFLLElBQUksQ0FBQztZQUNsQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFNBQVMsRUFBRSxNQUFNLEtBQUssS0FBSztTQUM1QztRQUNELElBQUksRUFBRTtZQUNKLEtBQUssRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFLEtBQUssSUFBSSxDQUFDO1lBQ2xDLFFBQVEsRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFLE1BQU0sS0FBSyxLQUFLO1NBQzVDO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hdGNoTGlzdFZpZXcsIE1hdGNoUmFua2luZ1ZpZXcgfSBmcm9tICdAZXRobGV0ZS90eXBlcyc7XG5pbXBvcnQgeyBNYXRjaFN0YXRlVHlwZSwgbm9ybWFsaXplTWF0Y2hTdGF0ZSB9IGZyb20gJy4uL25vcm1hbGl6ZS1tYXRjaC1zdGF0ZSc7XG5pbXBvcnQgeyBOb3JtYWxpemVkTWF0Y2hTY29yZSB9IGZyb20gJy4vbm9ybWFsaXplLW1hdGNoLXNjb3JlLnR5cGVzJztcblxuY29uc3QgRU1QVFlfU0NPUkU6IE5vcm1hbGl6ZWRNYXRjaFNjb3JlID0ge1xuICBob21lOiB7IHNjb3JlOiAnbWF0Y2gtc2NvcmUucGxhY2Vob2xkZXInLCBpc1dpbm5lcjogZmFsc2UgfSxcbiAgYXdheTogeyBzY29yZTogJ21hdGNoLXNjb3JlLnBsYWNlaG9sZGVyJywgaXNXaW5uZXI6IGZhbHNlIH0sXG4gIGlzTnVtZXJpYzogZmFsc2UsXG4gIHN1YkxpbmU6IG51bGwsXG59O1xuXG5leHBvcnQgY29uc3Qgbm9ybWFsaXplTWF0Y2hTY29yZSA9IChtYXRjaDogTWF0Y2hMaXN0VmlldyB8IG51bGwgfCB1bmRlZmluZWQpOiBOb3JtYWxpemVkTWF0Y2hTY29yZSB8IG51bGwgPT4ge1xuICBpZiAoIW1hdGNoKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBtYXRjaFN0YXRlID0gbm9ybWFsaXplTWF0Y2hTdGF0ZShtYXRjaCk7XG4gIGNvbnN0IHN1YkxpbmUgPSBnZXRNYXRjaFNjb3JlU3ViTGluZShtYXRjaCk7XG5cbiAgaWYgKCFtYXRjaC5ob21lU2NvcmUgJiYgIW1hdGNoLmF3YXlTY29yZSkge1xuICAgIHJldHVybiB7IC4uLkVNUFRZX1NDT1JFLCBzdWJMaW5lLCBpc051bWVyaWM6IGZhbHNlIH07XG4gIH1cblxuICBpZiAoaXNLbm9ja291dE1hdGNoKG1hdGNoKSkge1xuICAgIGlmIChtYXRjaFN0YXRlID09PSBNYXRjaFN0YXRlVHlwZS5QUkVfTUFUQ0ggfHwgbWF0Y2hTdGF0ZSA9PT0gTWF0Y2hTdGF0ZVR5cGUuTElWRSkge1xuICAgICAgcmV0dXJuIHsgLi4uRU1QVFlfU0NPUkUsIHN1YkxpbmUsIGlzTnVtZXJpYzogZmFsc2UgfTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgaG9tZToge1xuICAgICAgICBzY29yZTogZ2V0S25vY2tvdXRNYXRjaFNjb3JlKG1hdGNoLmhvbWVTY29yZSksXG4gICAgICAgIGlzV2lubmVyOiBtYXRjaC5ob21lU2NvcmU/LnN0YXR1cyA9PT0gJ3dvbicsXG4gICAgICB9LFxuICAgICAgYXdheToge1xuICAgICAgICBzY29yZTogZ2V0S25vY2tvdXRNYXRjaFNjb3JlKG1hdGNoLmF3YXlTY29yZSksXG4gICAgICAgIGlzV2lubmVyOiBtYXRjaC5hd2F5U2NvcmU/LnN0YXR1cyA9PT0gJ3dvbicsXG4gICAgICB9LFxuICAgICAgc3ViTGluZSxcbiAgICAgIGlzTnVtZXJpYzogZmFsc2UsXG4gICAgfTtcbiAgfSBlbHNlIGlmIChpc0dyb3VwTWF0Y2gobWF0Y2gpKSB7XG4gICAgaWYgKG1hdGNoLmdhbWVzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgLy8gUmV0dXJuIHRoZSBzY29yZSBpZiBvbmx5IG9uZSBnYW1lIGhhcyBiZWVuIHBsYXllZFxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uZ2V0R3JvdXBNYXRjaFNjb3JlKG1hdGNoKSxcbiAgICAgICAgc3ViTGluZSxcbiAgICAgICAgaXNOdW1lcmljOiB0cnVlLFxuICAgICAgfSBhcyBOb3JtYWxpemVkTWF0Y2hTY29yZTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uZ2V0R3JvdXBNYXRjaFBvaW50cyhtYXRjaCksXG4gICAgICAgIHN1YkxpbmUsXG4gICAgICAgIGlzTnVtZXJpYzogdHJ1ZSxcbiAgICAgIH0gYXMgTm9ybWFsaXplZE1hdGNoU2NvcmU7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5nZXRHcm91cE1hdGNoU2NvcmUobWF0Y2gpLFxuICAgICAgc3ViTGluZSxcbiAgICAgIGlzTnVtZXJpYzogdHJ1ZSxcbiAgICB9IGFzIE5vcm1hbGl6ZWRNYXRjaFNjb3JlO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgaXNLbm9ja291dE1hdGNoID0gKG1hdGNoOiBNYXRjaExpc3RWaWV3IHwgbnVsbCB8IHVuZGVmaW5lZCkgPT4ge1xuICBpZiAoIW1hdGNoKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICBtYXRjaC5tYXRjaFR5cGUgPT09ICdzaW5nbGVfZWxpbWluYXRpb24nIHx8XG4gICAgbWF0Y2gubWF0Y2hUeXBlID09PSAnZG91YmxlX2VsaW1pbmF0aW9uJyB8fFxuICAgIG1hdGNoLm1hdGNoVHlwZSA9PT0gJ2ZpZmFfc3dpc3MnXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgaXNHcm91cE1hdGNoID0gKG1hdGNoOiBNYXRjaExpc3RWaWV3IHwgbnVsbCB8IHVuZGVmaW5lZCkgPT4ge1xuICBpZiAoIW1hdGNoKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIG1hdGNoLm1hdGNoVHlwZSA9PT0gJ2dyb3VwcycgfHwgbWF0Y2gubWF0Y2hUeXBlID09PSAnbGVhZ3VlJztcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRLbm9ja291dE1hdGNoU2NvcmUgPSAoc2NvcmU6IE1hdGNoUmFua2luZ1ZpZXcgfCBudWxsIHwgdW5kZWZpbmVkKSA9PiB7XG4gIGlmIChzY29yZT8uc3RhdHVzID09PSAnd29uJykge1xuICAgIHJldHVybiAnbWF0Y2gtc2NvcmUua25vY2tvdXQud29uJztcbiAgfSBlbHNlIGlmIChzY29yZT8uc3RhdHVzID09PSAnbG9zdCcpIHtcbiAgICByZXR1cm4gJ21hdGNoLXNjb3JlLmtub2Nrb3V0Lmxvc3QnO1xuICB9IGVsc2UgaWYgKHNjb3JlPy5zdGF0dXMgPT09ICd0aWUnKSB7XG4gICAgcmV0dXJuICdtYXRjaC1zY29yZS5rbm9ja291dC50aWUnO1xuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0TWF0Y2hTY29yZVN1YkxpbmUgPSAobWF0Y2g6IE1hdGNoTGlzdFZpZXcgfCBudWxsIHwgdW5kZWZpbmVkKSA9PiB7XG4gIGlmIChpc0tub2Nrb3V0TWF0Y2gobWF0Y2gpKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH0gZWxzZSBpZiAoaXNHcm91cE1hdGNoKG1hdGNoKSkge1xuICAgIHJldHVybiAnbWF0Y2gtc2NvcmUuZ3JvdXBzLnN1Yi1saW5lJztcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGdldEdyb3VwTWF0Y2hTY29yZSA9IChtYXRjaDogTWF0Y2hMaXN0VmlldyB8IG51bGwgfCB1bmRlZmluZWQpID0+IHtcbiAgaWYgKCFtYXRjaCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBob21lOiB7XG4gICAgICBzY29yZTogbWF0Y2guaG9tZVNjb3JlPy5vd25Qb2ludHMgfHwgMCxcbiAgICAgIGlzV2lubmVyOiBtYXRjaC5ob21lU2NvcmU/LnN0YXR1cyA9PT0gJ3dvbicsXG4gICAgfSxcbiAgICBhd2F5OiB7XG4gICAgICBzY29yZTogbWF0Y2guYXdheVNjb3JlPy5vd25Qb2ludHMgfHwgMCxcbiAgICAgIGlzV2lubmVyOiBtYXRjaC5hd2F5U2NvcmU/LnN0YXR1cyA9PT0gJ3dvbicsXG4gICAgfSxcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRHcm91cE1hdGNoUG9pbnRzID0gKG1hdGNoOiBNYXRjaExpc3RWaWV3IHwgbnVsbCB8IHVuZGVmaW5lZCkgPT4ge1xuICBpZiAoIW1hdGNoKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGhvbWU6IHtcbiAgICAgIHNjb3JlOiBtYXRjaC5ob21lU2NvcmU/LnNjb3JlIHx8IDAsXG4gICAgICBpc1dpbm5lcjogbWF0Y2guaG9tZVNjb3JlPy5zdGF0dXMgPT09ICd3b24nLFxuICAgIH0sXG4gICAgYXdheToge1xuICAgICAgc2NvcmU6IG1hdGNoLmF3YXlTY29yZT8uc2NvcmUgfHwgMCxcbiAgICAgIGlzV2lubmVyOiBtYXRjaC5hd2F5U2NvcmU/LnN0YXR1cyA9PT0gJ3dvbicsXG4gICAgfSxcbiAgfTtcbn07XG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from './normalize-match-score.pipe';
2
+ export * from './normalize-match-score.types';
3
+ export * from './normalize-match-score.util';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3BpcGVzL25vcm1hbGl6ZS1tYXRjaC1zY29yZS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9ub3JtYWxpemUtbWF0Y2gtc2NvcmUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL25vcm1hbGl6ZS1tYXRjaC1zY29yZS50eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL25vcm1hbGl6ZS1tYXRjaC1zY29yZS51dGlsJztcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './public-api';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9waXBlcy9ub3JtYWxpemUtbWF0Y2gtc3RhdGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9ybWFsaXplLW1hdGNoLXN0YXRlLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3BpcGVzL25vcm1hbGl6ZS1tYXRjaC1zdGF0ZS9ub3JtYWxpemUtbWF0Y2gtc3RhdGUuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW51bSBNYXRjaFN0YXRlVHlwZSB7XG4gIFBSRVBBUklOR19ST1VORCA9ICdwcmVwYXJpbmdSb3VuZCcsXG4gIFBSRV9NQVRDSCA9ICdwcmVNYXRjaCcsXG4gIExJVkUgPSAnbGl2ZScsXG4gIFBPU1RfTUFUQ0ggPSAncG9zdE1hdGNoJyxcbiAgQVVUT19XSU4gPSAnYXV0b1dpbicsXG59XG4iXX0=
@@ -0,0 +1,15 @@
1
+ import { Pipe } from '@angular/core';
2
+ import { normalizeMatchState } from './normalize-match-state.util';
3
+ import * as i0 from "@angular/core";
4
+ export class NormalizeMatchStatePipe {
5
+ constructor() {
6
+ this.transform = normalizeMatchState;
7
+ }
8
+ }
9
+ NormalizeMatchStatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: NormalizeMatchStatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
10
+ NormalizeMatchStatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.1.4", ngImport: i0, type: NormalizeMatchStatePipe, isStandalone: true, name: "etNormalizeMatchState" });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: NormalizeMatchStatePipe, decorators: [{
12
+ type: Pipe,
13
+ args: [{ name: 'etNormalizeMatchState', standalone: true }]
14
+ }] });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9ybWFsaXplLW1hdGNoLXN0YXRlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9waXBlcy9ub3JtYWxpemUtbWF0Y2gtc3RhdGUvbm9ybWFsaXplLW1hdGNoLXN0YXRlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBR25FLE1BQU0sT0FBTyx1QkFBdUI7SUFEcEM7UUFFRSxjQUFTLEdBQUcsbUJBQW1CLENBQUM7S0FDakM7O29IQUZZLHVCQUF1QjtrSEFBdkIsdUJBQXVCOzJGQUF2Qix1QkFBdUI7a0JBRG5DLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsdUJBQXVCLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG5vcm1hbGl6ZU1hdGNoU3RhdGUgfSBmcm9tICcuL25vcm1hbGl6ZS1tYXRjaC1zdGF0ZS51dGlsJztcblxuQFBpcGUoeyBuYW1lOiAnZXROb3JtYWxpemVNYXRjaFN0YXRlJywgc3RhbmRhbG9uZTogdHJ1ZSB9KVxuZXhwb3J0IGNsYXNzIE5vcm1hbGl6ZU1hdGNoU3RhdGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybSA9IG5vcm1hbGl6ZU1hdGNoU3RhdGU7XG59XG4iXX0=
@@ -0,0 +1,19 @@
1
+ export const normalizeMatchState = (match) => {
2
+ if (match?.isCompletedByReferee) {
3
+ return "autoWin" /* MatchStateType.AUTO_WIN */;
4
+ }
5
+ else if (match?.status === 'preparing') {
6
+ return "preMatch" /* MatchStateType.PRE_MATCH */;
7
+ }
8
+ else if (match?.status === 'started') {
9
+ return "live" /* MatchStateType.LIVE */;
10
+ }
11
+ else if (match?.status === 'published' || match?.status === 'finished') {
12
+ return "postMatch" /* MatchStateType.POST_MATCH */;
13
+ }
14
+ else if (match?.round.state !== 'preparing') {
15
+ return "preparingRound" /* MatchStateType.PREPARING_ROUND */;
16
+ }
17
+ return null;
18
+ };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9ybWFsaXplLW1hdGNoLXN0YXRlLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9waXBlcy9ub3JtYWxpemUtbWF0Y2gtc3RhdGUvbm9ybWFsaXplLW1hdGNoLXN0YXRlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxLQUF1QyxFQUFFLEVBQUU7SUFDN0UsSUFBSSxLQUFLLEVBQUUsb0JBQW9CLEVBQUU7UUFDL0IsK0NBQStCO0tBQ2hDO1NBQU0sSUFBSSxLQUFLLEVBQUUsTUFBTSxLQUFLLFdBQVcsRUFBRTtRQUN4QyxpREFBZ0M7S0FDakM7U0FBTSxJQUFJLEtBQUssRUFBRSxNQUFNLEtBQUssU0FBUyxFQUFFO1FBQ3RDLHdDQUEyQjtLQUM1QjtTQUFNLElBQUksS0FBSyxFQUFFLE1BQU0sS0FBSyxXQUFXLElBQUksS0FBSyxFQUFFLE1BQU0sS0FBSyxVQUFVLEVBQUU7UUFDeEUsbURBQWlDO0tBQ2xDO1NBQU0sSUFBSSxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssS0FBSyxXQUFXLEVBQUU7UUFDN0MsNkRBQXNDO0tBQ3ZDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXRjaExpc3RWaWV3IH0gZnJvbSAnQGV0aGxldGUvdHlwZXMnO1xuaW1wb3J0IHsgTWF0Y2hTdGF0ZVR5cGUgfSBmcm9tICcuL25vcm1hbGl6ZS1tYXRjaC1zdGF0ZS5jb25zdGFudHMnO1xuXG5leHBvcnQgY29uc3Qgbm9ybWFsaXplTWF0Y2hTdGF0ZSA9IChtYXRjaDogTWF0Y2hMaXN0VmlldyB8IG51bGwgfCB1bmRlZmluZWQpID0+IHtcbiAgaWYgKG1hdGNoPy5pc0NvbXBsZXRlZEJ5UmVmZXJlZSkge1xuICAgIHJldHVybiBNYXRjaFN0YXRlVHlwZS5BVVRPX1dJTjtcbiAgfSBlbHNlIGlmIChtYXRjaD8uc3RhdHVzID09PSAncHJlcGFyaW5nJykge1xuICAgIHJldHVybiBNYXRjaFN0YXRlVHlwZS5QUkVfTUFUQ0g7XG4gIH0gZWxzZSBpZiAobWF0Y2g/LnN0YXR1cyA9PT0gJ3N0YXJ0ZWQnKSB7XG4gICAgcmV0dXJuIE1hdGNoU3RhdGVUeXBlLkxJVkU7XG4gIH0gZWxzZSBpZiAobWF0Y2g/LnN0YXR1cyA9PT0gJ3B1Ymxpc2hlZCcgfHwgbWF0Y2g/LnN0YXR1cyA9PT0gJ2ZpbmlzaGVkJykge1xuICAgIHJldHVybiBNYXRjaFN0YXRlVHlwZS5QT1NUX01BVENIO1xuICB9IGVsc2UgaWYgKG1hdGNoPy5yb3VuZC5zdGF0ZSAhPT0gJ3ByZXBhcmluZycpIHtcbiAgICByZXR1cm4gTWF0Y2hTdGF0ZVR5cGUuUFJFUEFSSU5HX1JPVU5EO1xuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59O1xuIl19
@@ -0,0 +1,4 @@
1
+ export * from './normalize-match-state.constants';
2
+ export * from './normalize-match-state.pipe';
3
+ export * from './normalize-match-state.util';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3BpcGVzL25vcm1hbGl6ZS1tYXRjaC1zdGF0ZS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9ub3JtYWxpemUtbWF0Y2gtc3RhdGUuY29uc3RhbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbm9ybWFsaXplLW1hdGNoLXN0YXRlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9ub3JtYWxpemUtbWF0Y2gtc3RhdGUudXRpbCc7XG4iXX0=
@@ -0,0 +1,15 @@
1
+ import { Pipe } from '@angular/core';
2
+ import { normalizeMatchType } from './normalize-match-type.util';
3
+ import * as i0 from "@angular/core";
4
+ export class NormalizeMatchTypePipe {
5
+ constructor() {
6
+ this.transform = normalizeMatchType;
7
+ }
8
+ }
9
+ NormalizeMatchTypePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: NormalizeMatchTypePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
10
+ NormalizeMatchTypePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.1.4", ngImport: i0, type: NormalizeMatchTypePipe, isStandalone: true, name: "etNormalizeMatchType" });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: NormalizeMatchTypePipe, decorators: [{
12
+ type: Pipe,
13
+ args: [{ name: 'etNormalizeMatchType', standalone: true }]
14
+ }] });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9ybWFsaXplLW1hdGNoLXR5cGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3BpcGVzL25vcm1hbGl6ZS1tYXRjaC10eXBlL25vcm1hbGl6ZS1tYXRjaC10eXBlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBR2pFLE1BQU0sT0FBTyxzQkFBc0I7SUFEbkM7UUFFRSxjQUFTLEdBQUcsa0JBQWtCLENBQUM7S0FDaEM7O21IQUZZLHNCQUFzQjtpSEFBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBRGxDLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG5vcm1hbGl6ZU1hdGNoVHlwZSB9IGZyb20gJy4vbm9ybWFsaXplLW1hdGNoLXR5cGUudXRpbCc7XG5cbkBQaXBlKHsgbmFtZTogJ2V0Tm9ybWFsaXplTWF0Y2hUeXBlJywgc3RhbmRhbG9uZTogdHJ1ZSB9KVxuZXhwb3J0IGNsYXNzIE5vcm1hbGl6ZU1hdGNoVHlwZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtID0gbm9ybWFsaXplTWF0Y2hUeXBlO1xufVxuIl19
@@ -0,0 +1,38 @@
1
+ export const normalizeMatchType = (matchType) => {
2
+ if (!matchType) {
3
+ return null;
4
+ }
5
+ switch (matchType) {
6
+ case 'double_elimination':
7
+ return {
8
+ i18n: 'match-type.double-elimination',
9
+ text: 'Double Elimination',
10
+ };
11
+ case 'single_elimination':
12
+ return {
13
+ i18n: 'match-type.single-elimination',
14
+ text: 'Single Elimination',
15
+ };
16
+ case 'fifa_swiss':
17
+ return {
18
+ i18n: 'match-type.fifa-swiss',
19
+ text: 'FIFA Swiss',
20
+ };
21
+ case 'groups':
22
+ return {
23
+ i18n: 'match-type.groups',
24
+ text: 'Groups',
25
+ };
26
+ case 'league':
27
+ return {
28
+ i18n: 'match-type.league',
29
+ text: 'League',
30
+ };
31
+ case 'pools':
32
+ return {
33
+ i18n: 'match-type.pools',
34
+ text: 'Pools',
35
+ };
36
+ }
37
+ };
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9ybWFsaXplLW1hdGNoLXR5cGUudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3BpcGVzL25vcm1hbGl6ZS1tYXRjaC10eXBlL25vcm1hbGl6ZS1tYXRjaC10eXBlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxTQUF1QyxFQUF1QixFQUFFO0lBQ2pHLElBQUksQ0FBQyxTQUFTLEVBQUU7UUFDZCxPQUFPLElBQUksQ0FBQztLQUNiO0lBRUQsUUFBUSxTQUFTLEVBQUU7UUFDakIsS0FBSyxvQkFBb0I7WUFDdkIsT0FBTztnQkFDTCxJQUFJLEVBQUUsK0JBQStCO2dCQUNyQyxJQUFJLEVBQUUsb0JBQW9CO2FBQzNCLENBQUM7UUFDSixLQUFLLG9CQUFvQjtZQUN2QixPQUFPO2dCQUNMLElBQUksRUFBRSwrQkFBK0I7Z0JBQ3JDLElBQUksRUFBRSxvQkFBb0I7YUFDM0IsQ0FBQztRQUNKLEtBQUssWUFBWTtZQUNmLE9BQU87Z0JBQ0wsSUFBSSxFQUFFLHVCQUF1QjtnQkFDN0IsSUFBSSxFQUFFLFlBQVk7YUFDbkIsQ0FBQztRQUNKLEtBQUssUUFBUTtZQUNYLE9BQU87Z0JBQ0wsSUFBSSxFQUFFLG1CQUFtQjtnQkFDekIsSUFBSSxFQUFFLFFBQVE7YUFDZixDQUFDO1FBQ0osS0FBSyxRQUFRO1lBQ1gsT0FBTztnQkFDTCxJQUFJLEVBQUUsbUJBQW1CO2dCQUN6QixJQUFJLEVBQUUsUUFBUTthQUNmLENBQUM7UUFDSixLQUFLLE9BQU87WUFDVixPQUFPO2dCQUNMLElBQUksRUFBRSxrQkFBa0I7Z0JBQ3hCLElBQUksRUFBRSxPQUFPO2FBQ2QsQ0FBQztLQUNMO0FBQ0gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RhZ2VUeXBlIH0gZnJvbSAnQGV0aGxldGUvdHlwZXMnO1xuaW1wb3J0IHsgVHJhbnNsYXRhYmxlIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3Qgbm9ybWFsaXplTWF0Y2hUeXBlID0gKG1hdGNoVHlwZTogU3RhZ2VUeXBlIHwgbnVsbCB8IHVuZGVmaW5lZCk6IFRyYW5zbGF0YWJsZSB8IG51bGwgPT4ge1xuICBpZiAoIW1hdGNoVHlwZSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgc3dpdGNoIChtYXRjaFR5cGUpIHtcbiAgICBjYXNlICdkb3VibGVfZWxpbWluYXRpb24nOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaTE4bjogJ21hdGNoLXR5cGUuZG91YmxlLWVsaW1pbmF0aW9uJyxcbiAgICAgICAgdGV4dDogJ0RvdWJsZSBFbGltaW5hdGlvbicsXG4gICAgICB9O1xuICAgIGNhc2UgJ3NpbmdsZV9lbGltaW5hdGlvbic6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpMThuOiAnbWF0Y2gtdHlwZS5zaW5nbGUtZWxpbWluYXRpb24nLFxuICAgICAgICB0ZXh0OiAnU2luZ2xlIEVsaW1pbmF0aW9uJyxcbiAgICAgIH07XG4gICAgY2FzZSAnZmlmYV9zd2lzcyc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpMThuOiAnbWF0Y2gtdHlwZS5maWZhLXN3aXNzJyxcbiAgICAgICAgdGV4dDogJ0ZJRkEgU3dpc3MnLFxuICAgICAgfTtcbiAgICBjYXNlICdncm91cHMnOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaTE4bjogJ21hdGNoLXR5cGUuZ3JvdXBzJyxcbiAgICAgICAgdGV4dDogJ0dyb3VwcycsXG4gICAgICB9O1xuICAgIGNhc2UgJ2xlYWd1ZSc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpMThuOiAnbWF0Y2gtdHlwZS5sZWFndWUnLFxuICAgICAgICB0ZXh0OiAnTGVhZ3VlJyxcbiAgICAgIH07XG4gICAgY2FzZSAncG9vbHMnOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaTE4bjogJ21hdGNoLXR5cGUucG9vbHMnLFxuICAgICAgICB0ZXh0OiAnUG9vbHMnLFxuICAgICAgfTtcbiAgfVxufTtcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './normalize-match-type.pipe';
2
+ export * from './normalize-match-type.util';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3BpcGVzL25vcm1hbGl6ZS1tYXRjaC10eXBlL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9ub3JtYWxpemUtbWF0Y2gtdHlwZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbm9ybWFsaXplLW1hdGNoLXR5cGUudXRpbCc7XG4iXX0=
@@ -1,2 +1,7 @@
1
+ export * from './normalize-game-result-type/public-api';
2
+ export * from './normalize-match-participants/public-api';
3
+ export * from './normalize-match-score/public-api';
4
+ export * from './normalize-match-state/public-api';
5
+ export * from './normalize-match-type/public-api';
1
6
  export * from './to-array/public-api';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3BpcGVzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdG8tYXJyYXkvcHVibGljLWFwaSc7XG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3BpcGVzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL25vcm1hbGl6ZS1nYW1lLXJlc3VsdC10eXBlL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9ub3JtYWxpemUtbWF0Y2gtcGFydGljaXBhbnRzL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9ub3JtYWxpemUtbWF0Y2gtc2NvcmUvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL25vcm1hbGl6ZS1tYXRjaC1zdGF0ZS9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbm9ybWFsaXplLW1hdGNoLXR5cGUvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL3RvLWFycmF5L3B1YmxpYy1hcGknO1xuIl19
@@ -6,9 +6,9 @@ export class ToArrayPipe {
6
6
  this.transform = toArray;
7
7
  }
8
8
  }
9
- ToArrayPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ToArrayPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
10
- ToArrayPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.0", ngImport: i0, type: ToArrayPipe, isStandalone: true, name: "toArray" });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ToArrayPipe, decorators: [{
9
+ ToArrayPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ToArrayPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
10
+ ToArrayPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.1.4", ngImport: i0, type: ToArrayPipe, isStandalone: true, name: "toArray" });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ToArrayPipe, decorators: [{
12
12
  type: Pipe,
13
13
  args: [{ name: 'toArray', standalone: true }]
14
14
  }] });
@@ -1,3 +1,4 @@
1
+ export * from './components/public-api';
1
2
  export * from './constants/public-api';
2
3
  export * from './decorators/public-api';
3
4
  export * from './directives/public-api';
@@ -5,4 +6,5 @@ export * from './pipes/public-api';
5
6
  export * from './services/public-api';
6
7
  export * from './types/public-api';
7
8
  export * from './utils/public-api';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9kZWNvcmF0b3JzL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi91dGlscy9wdWJsaWMtYXBpJztcbiJdfQ==
9
+ export * from './validators/public-api';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cy9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vZGVjb3JhdG9ycy9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvcHVibGljLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL3ZhbGlkYXRvcnMvcHVibGljLWFwaSc7XG4iXX0=
@@ -8,9 +8,9 @@ export class ClickObserverFactory {
8
8
  return fromEvent(document, 'click');
9
9
  }
10
10
  }
11
- ClickObserverFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ClickObserverFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
12
- ClickObserverFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ClickObserverFactory, providedIn: 'root' });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ClickObserverFactory, decorators: [{
11
+ ClickObserverFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ClickObserverFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
12
+ ClickObserverFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ClickObserverFactory, providedIn: 'root' });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ClickObserverFactory, decorators: [{
14
14
  type: Injectable,
15
15
  args: [{ providedIn: 'root' }]
16
16
  }] });
@@ -64,9 +64,9 @@ export class ClickObserverService {
64
64
  }
65
65
  }
66
66
  }
67
- ClickObserverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ClickObserverService, deps: [{ token: ClickObserverFactory }], target: i0.ɵɵFactoryTarget.Injectable });
68
- ClickObserverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ClickObserverService, providedIn: 'root' });
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ClickObserverService, decorators: [{
67
+ ClickObserverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ClickObserverService, deps: [{ token: ClickObserverFactory }], target: i0.ɵɵFactoryTarget.Injectable });
68
+ ClickObserverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ClickObserverService, providedIn: 'root' });
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ClickObserverService, decorators: [{
70
70
  type: Injectable,
71
71
  args: [{ providedIn: 'root' }]
72
72
  }], ctorParameters: function () { return [{ type: ClickObserverFactory }]; } });
@@ -8,9 +8,9 @@ export class MutationObserverFactory {
8
8
  return typeof MutationObserver === 'undefined' ? null : new MutationObserver(callback);
9
9
  }
10
10
  }
11
- MutationObserverFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: MutationObserverFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
12
- MutationObserverFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: MutationObserverFactory, providedIn: 'root' });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: MutationObserverFactory, decorators: [{
11
+ MutationObserverFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: MutationObserverFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
12
+ MutationObserverFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: MutationObserverFactory, providedIn: 'root' });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: MutationObserverFactory, decorators: [{
14
14
  type: Injectable,
15
15
  args: [{ providedIn: 'root' }]
16
16
  }] });
@@ -70,9 +70,9 @@ export class ContentObserverService {
70
70
  }
71
71
  }
72
72
  }
73
- ContentObserverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ContentObserverService, deps: [{ token: MutationObserverFactory }], target: i0.ɵɵFactoryTarget.Injectable });
74
- ContentObserverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ContentObserverService, providedIn: 'root' });
75
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ContentObserverService, decorators: [{
73
+ ContentObserverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ContentObserverService, deps: [{ token: MutationObserverFactory }], target: i0.ɵɵFactoryTarget.Injectable });
74
+ ContentObserverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ContentObserverService, providedIn: 'root' });
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ContentObserverService, decorators: [{
76
76
  type: Injectable,
77
77
  args: [{ providedIn: 'root' }]
78
78
  }], ctorParameters: function () { return [{ type: MutationObserverFactory }]; } });
@@ -11,9 +11,9 @@ export class DestroyService {
11
11
  this._destroy$.unsubscribe();
12
12
  }
13
13
  }
14
- DestroyService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DestroyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
15
- DestroyService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DestroyService });
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: DestroyService, decorators: [{
14
+ DestroyService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: DestroyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
15
+ DestroyService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: DestroyService });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: DestroyService, decorators: [{
17
17
  type: Injectable
18
18
  }] });
19
19
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzdHJveS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvc2VydmljZXMvZGVzdHJveS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHL0IsTUFBTSxPQUFPLGNBQWM7SUFEM0I7UUFFbUIsY0FBUyxHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7UUFFM0MsYUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7S0FNbkQ7SUFKQyxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUMvQixDQUFDOzsyR0FSVSxjQUFjOytHQUFkLGNBQWM7MkZBQWQsY0FBYztrQkFEMUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGVzdHJveVNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG5cbiAgcmVhZG9ubHkgZGVzdHJveSQgPSB0aGlzLl9kZXN0cm95JC5hc09ic2VydmFibGUoKTtcblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KHRydWUpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
@@ -2,6 +2,9 @@ import { DOCUMENT } from '@angular/common';
2
2
  import { inject, Injectable } from '@angular/core';
3
3
  import * as i0 from "@angular/core";
4
4
  export class FocusVisibleService {
5
+ get isFocusVisible() {
6
+ return this._hadKeyboardEvent;
7
+ }
5
8
  constructor() {
6
9
  this._document = inject(DOCUMENT);
7
10
  this._hadKeyboardEvent = false;
@@ -10,9 +13,6 @@ export class FocusVisibleService {
10
13
  this._document.addEventListener('pointerdown', this.onPointerDown.bind(this), true);
11
14
  this._document.addEventListener('touchstart', this.onPointerDown.bind(this), true);
12
15
  }
13
- get isFocusVisible() {
14
- return this._hadKeyboardEvent;
15
- }
16
16
  onKeyDown(e) {
17
17
  if (e.metaKey || e.altKey || e.ctrlKey) {
18
18
  return;
@@ -23,12 +23,12 @@ export class FocusVisibleService {
23
23
  this._hadKeyboardEvent = false;
24
24
  }
25
25
  }
26
- FocusVisibleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: FocusVisibleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
27
- FocusVisibleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: FocusVisibleService, providedIn: 'root' });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: FocusVisibleService, decorators: [{
26
+ FocusVisibleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: FocusVisibleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
27
+ FocusVisibleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: FocusVisibleService, providedIn: 'root' });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: FocusVisibleService, decorators: [{
29
29
  type: Injectable,
30
30
  args: [{
31
31
  providedIn: 'root',
32
32
  }]
33
33
  }], ctorParameters: function () { return []; } });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXMtdmlzaWJsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvc2VydmljZXMvZm9jdXMtdmlzaWJsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLbkQsTUFBTSxPQUFPLG1CQUFtQjtJQVM5QjtRQVJpQixjQUFTLEdBQUcsTUFBTSxDQUFXLFFBQVEsQ0FBQyxDQUFDO1FBRWhELHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQU9oQyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM1RSxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNsRixJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBVEQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFTRCxTQUFTLENBQUMsQ0FBZ0I7UUFDeEIsSUFBSSxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRTtZQUN0QyxPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztJQUNqQyxDQUFDOztnSEExQlUsbUJBQW1CO29IQUFuQixtQkFBbUIsY0FGbEIsTUFBTTsyRkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBGb2N1c1Zpc2libGVTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZG9jdW1lbnQgPSBpbmplY3Q8RG9jdW1lbnQ+KERPQ1VNRU5UKTtcblxuICBwcml2YXRlIF9oYWRLZXlib2FyZEV2ZW50ID0gZmFsc2U7XG5cbiAgZ2V0IGlzRm9jdXNWaXNpYmxlKCkge1xuICAgIHJldHVybiB0aGlzLl9oYWRLZXlib2FyZEV2ZW50O1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5fZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMub25LZXlEb3duLmJpbmQodGhpcyksIHRydWUpO1xuICAgIHRoaXMuX2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMub25Qb2ludGVyRG93bi5iaW5kKHRoaXMpLCB0cnVlKTtcbiAgICB0aGlzLl9kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVyZG93bicsIHRoaXMub25Qb2ludGVyRG93bi5iaW5kKHRoaXMpLCB0cnVlKTtcbiAgICB0aGlzLl9kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgdGhpcy5vblBvaW50ZXJEb3duLmJpbmQodGhpcyksIHRydWUpO1xuICB9XG5cbiAgb25LZXlEb3duKGU6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoZS5tZXRhS2V5IHx8IGUuYWx0S2V5IHx8IGUuY3RybEtleSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2hhZEtleWJvYXJkRXZlbnQgPSB0cnVlO1xuICB9XG5cbiAgb25Qb2ludGVyRG93bigpIHtcbiAgICB0aGlzLl9oYWRLZXlib2FyZEV2ZW50ID0gZmFsc2U7XG4gIH1cbn1cbiJdfQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXMtdmlzaWJsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvc2VydmljZXMvZm9jdXMtdmlzaWJsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLbkQsTUFBTSxPQUFPLG1CQUFtQjtJQUs5QixJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEMsQ0FBQztJQUVEO1FBUmlCLGNBQVMsR0FBRyxNQUFNLENBQVcsUUFBUSxDQUFDLENBQUM7UUFFaEQsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBT2hDLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzVFLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2xGLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRCxTQUFTLENBQUMsQ0FBZ0I7UUFDeEIsSUFBSSxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRTtZQUN0QyxPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztJQUNqQyxDQUFDOztnSEExQlUsbUJBQW1CO29IQUFuQixtQkFBbUIsY0FGbEIsTUFBTTsyRkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBGb2N1c1Zpc2libGVTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZG9jdW1lbnQgPSBpbmplY3Q8RG9jdW1lbnQ+KERPQ1VNRU5UKTtcblxuICBwcml2YXRlIF9oYWRLZXlib2FyZEV2ZW50ID0gZmFsc2U7XG5cbiAgZ2V0IGlzRm9jdXNWaXNpYmxlKCkge1xuICAgIHJldHVybiB0aGlzLl9oYWRLZXlib2FyZEV2ZW50O1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5fZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMub25LZXlEb3duLmJpbmQodGhpcyksIHRydWUpO1xuICAgIHRoaXMuX2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMub25Qb2ludGVyRG93bi5iaW5kKHRoaXMpLCB0cnVlKTtcbiAgICB0aGlzLl9kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVyZG93bicsIHRoaXMub25Qb2ludGVyRG93bi5iaW5kKHRoaXMpLCB0cnVlKTtcbiAgICB0aGlzLl9kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgdGhpcy5vblBvaW50ZXJEb3duLmJpbmQodGhpcyksIHRydWUpO1xuICB9XG5cbiAgb25LZXlEb3duKGU6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoZS5tZXRhS2V5IHx8IGUuYWx0S2V5IHx8IGUuY3RybEtleSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2hhZEtleWJvYXJkRXZlbnQgPSB0cnVlO1xuICB9XG5cbiAgb25Qb2ludGVyRG93bigpIHtcbiAgICB0aGlzLl9oYWRLZXlib2FyZEV2ZW50ID0gZmFsc2U7XG4gIH1cbn1cbiJdfQ==
@@ -3,6 +3,7 @@ export * from './content-observer.service';
3
3
  export * from './destroy.service';
4
4
  export * from './focus-visible.service';
5
5
  export * from './resize-observer.service';
6
+ export * from './router-state.service';
6
7
  export * from './viewport.service';
7
8
  export * from './viewport.types';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3NlcnZpY2VzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2xpY2stb2JzZXJ2ZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRlbnQtb2JzZXJ2ZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2Rlc3Ryb3kuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZvY3VzLXZpc2libGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc2l6ZS1vYnNlcnZlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vdmlld3BvcnQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3ZpZXdwb3J0LnR5cGVzJztcbiJdfQ==
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3NlcnZpY2VzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jbGljay1vYnNlcnZlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vY29udGVudC1vYnNlcnZlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZGVzdHJveS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZm9jdXMtdmlzaWJsZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcmVzaXplLW9ic2VydmVyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9yb3V0ZXItc3RhdGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3ZpZXdwb3J0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi92aWV3cG9ydC50eXBlcyc7XG4iXX0=
@@ -8,9 +8,9 @@ export class ResizeObserverFactory {
8
8
  return typeof ResizeObserver === 'undefined' ? null : new ResizeObserver(callback);
9
9
  }
10
10
  }
11
- ResizeObserverFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ResizeObserverFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
12
- ResizeObserverFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ResizeObserverFactory, providedIn: 'root' });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ResizeObserverFactory, decorators: [{
11
+ ResizeObserverFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ResizeObserverFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
12
+ ResizeObserverFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ResizeObserverFactory, providedIn: 'root' });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ResizeObserverFactory, decorators: [{
14
14
  type: Injectable,
15
15
  args: [{ providedIn: 'root' }]
16
16
  }] });
@@ -66,9 +66,9 @@ export class ResizeObserverService {
66
66
  }
67
67
  }
68
68
  }
69
- ResizeObserverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ResizeObserverService, deps: [{ token: ResizeObserverFactory }], target: i0.ɵɵFactoryTarget.Injectable });
70
- ResizeObserverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ResizeObserverService, providedIn: 'root' });
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: ResizeObserverService, decorators: [{
69
+ ResizeObserverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ResizeObserverService, deps: [{ token: ResizeObserverFactory }], target: i0.ɵɵFactoryTarget.Injectable });
70
+ ResizeObserverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ResizeObserverService, providedIn: 'root' });
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ResizeObserverService, decorators: [{
72
72
  type: Injectable,
73
73
  args: [{ providedIn: 'root' }]
74
74
  }], ctorParameters: function () { return [{ type: ResizeObserverFactory }]; } });
@@ -0,0 +1,115 @@
1
+ import { inject, Injectable } from '@angular/core';
2
+ import { NavigationEnd, Router } from '@angular/router';
3
+ import { BehaviorSubject, combineLatest, debounceTime, distinctUntilChanged, filter, map, pairwise, } from 'rxjs';
4
+ import { equal } from '../utils';
5
+ import * as i0 from "@angular/core";
6
+ export const routerDisableScrollTop = (config = {}) => {
7
+ if (!config.asReturnRoute) {
8
+ return {
9
+ disableScrollTop: true,
10
+ };
11
+ }
12
+ return {
13
+ disableScrollTopAsReturnRoute: true,
14
+ };
15
+ };
16
+ export class RouterStateService {
17
+ get route$() {
18
+ return this._route$.asObservable();
19
+ }
20
+ get state$() {
21
+ return this._state$.asObservable();
22
+ }
23
+ constructor() {
24
+ this._isScrollTopOnNavigationEnabled = false;
25
+ this._router = inject(Router);
26
+ this._route$ = new BehaviorSubject('/');
27
+ this._state$ = new BehaviorSubject({
28
+ title: null,
29
+ fragment: null,
30
+ data: {},
31
+ pathParams: {},
32
+ queryParams: {},
33
+ });
34
+ this._router.events
35
+ .pipe(filter((event) => event instanceof NavigationEnd), distinctUntilChanged((a, b) => a.url === b.url), map((event) => {
36
+ const { url } = event;
37
+ const urlWithoutQueryParams = url.split('?')[0];
38
+ const withoutFragment = urlWithoutQueryParams.split('#')[0];
39
+ return withoutFragment;
40
+ }))
41
+ .subscribe(this._route$);
42
+ this._route$
43
+ .pipe(map(() => {
44
+ let route = this._router.routerState.snapshot.root;
45
+ while (route.firstChild) {
46
+ route = route.firstChild;
47
+ }
48
+ const { data, params, queryParams, title, fragment } = route;
49
+ return {
50
+ data,
51
+ pathParams: params,
52
+ queryParams,
53
+ title: title ?? null,
54
+ fragment,
55
+ };
56
+ }))
57
+ .subscribe(this._state$);
58
+ }
59
+ enableScrollEnhancements(config = {}) {
60
+ if (this._isScrollTopOnNavigationEnabled) {
61
+ return;
62
+ }
63
+ this._isScrollTopOnNavigationEnabled = true;
64
+ combineLatest([this._state$.pipe(pairwise()), this._route$.pipe(pairwise())])
65
+ .pipe(debounceTime(1))
66
+ .subscribe(([[prevState, currState], [prevRoute, currRoute]]) => {
67
+ const sameUrlNavigation = prevRoute === currRoute && equal(prevState.pathParams, currState.pathParams);
68
+ const didFragmentChange = prevState.fragment !== currState.fragment;
69
+ if (sameUrlNavigation) {
70
+ const allQueryParams = [
71
+ ...new Set(Object.keys(prevState.queryParams).concat(Object.keys(currState.queryParams))),
72
+ ];
73
+ const changedQueryParams = allQueryParams.filter((key) => currState.queryParams[key] !== prevState.queryParams[key]);
74
+ if (!config.queryParamTriggerList?.length && !didFragmentChange) {
75
+ return;
76
+ }
77
+ const caseQueryParams = changedQueryParams.some((key) => config.queryParamTriggerList?.includes(key));
78
+ const caseFragment = didFragmentChange && config.fragment?.enabled;
79
+ if (caseQueryParams) {
80
+ (config.scrollElement ?? document.documentElement).scrollTop = 0;
81
+ }
82
+ else if (caseFragment) {
83
+ const fragmentElement = document.getElementById(currState.fragment ?? '');
84
+ if (fragmentElement) {
85
+ fragmentElement.scrollIntoView({ behavior: config.fragment?.smooth ? 'smooth' : 'auto' });
86
+ }
87
+ }
88
+ }
89
+ else {
90
+ if (!(currState.data['disableScrollTopAsReturnRoute'] && prevState.data['disableScrollTop']) &&
91
+ !currState.data['disableScrollTop']) {
92
+ (config.scrollElement ?? document.documentElement).scrollTop = 0;
93
+ }
94
+ }
95
+ });
96
+ }
97
+ selectQueryParam(key) {
98
+ return this._state$.pipe(map((state) => state.queryParams[key]));
99
+ }
100
+ selectPathParam(key) {
101
+ return this._state$.pipe(map((state) => state.pathParams[key]));
102
+ }
103
+ selectData(key) {
104
+ return this._state$.pipe(map((state) => state.data[key]));
105
+ }
106
+ }
107
+ RouterStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: RouterStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
108
+ RouterStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: RouterStateService, providedIn: 'root' });
109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: RouterStateService, decorators: [{
110
+ type: Injectable,
111
+ args: [{
112
+ providedIn: 'root',
113
+ }]
114
+ }], ctorParameters: function () { return []; } });
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9zZXJ2aWNlcy9yb3V0ZXItc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQVEsYUFBYSxFQUFVLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsTUFBTSxFQUNOLEdBQUcsRUFFSCxRQUFRLEdBQ1QsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDOztBQUVqQyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLFNBQXNDLEVBQUUsRUFBRSxFQUFFO0lBQ2pGLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFO1FBQ3pCLE9BQU87WUFDTCxnQkFBZ0IsRUFBRSxJQUFJO1NBQ3ZCLENBQUM7S0FDSDtJQUVELE9BQU87UUFDTCw2QkFBNkIsRUFBRSxJQUFJO0tBQ3BDLENBQUM7QUFDSixDQUFDLENBQUM7QUFLRixNQUFNLE9BQU8sa0JBQWtCO0lBb0I3QixJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7UUEzQlEsb0NBQStCLEdBQUcsS0FBSyxDQUFDO1FBQy9CLFlBQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekIsWUFBTyxHQUFHLElBQUksZUFBZSxDQUFDLEdBQUcsQ0FBQyxD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QUFrQixDQUFDLENBQUM7b0JBQ3hGLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxFQUNuQztvQkFDQSxDQUFDLE1BQU0sQ0FBQyxhQUFhLElBQUksUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7aUJBQ2xFO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxnQkFBZ0IsQ0FBeUIsR0FBVztRQUNsRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELGVBQWUsQ0FBeUIsR0FBVztRQUNqRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELFVBQVUsQ0FBYyxHQUFXO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDOzsrR0F2SVUsa0JBQWtCO21IQUFsQixrQkFBa0IsY0FGakIsTUFBTTsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhLCBOYXZpZ2F0aW9uRW5kLCBQYXJhbXMsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIGRlYm91bmNlVGltZSxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZpbHRlcixcbiAgbWFwLFxuICBPYnNlcnZhYmxlLFxuICBwYWlyd2lzZSxcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBlcXVhbCB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IHJvdXRlckRpc2FibGVTY3JvbGxUb3AgPSAoY29uZmlnOiB7IGFzUmV0dXJuUm91dGU/OiBib29sZWFuIH0gPSB7fSkgPT4ge1xuICBpZiAoIWNvbmZpZy5hc1JldHVyblJvdXRlKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRpc2FibGVTY3JvbGxUb3A6IHRydWUsXG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZGlzYWJsZVNjcm9sbFRvcEFzUmV0dXJuUm91dGU6IHRydWUsXG4gIH07XG59O1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUm91dGVyU3RhdGVTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBfaXNTY3JvbGxUb3BPbk5hdmlnYXRpb25FbmFibGVkID0gZmFsc2U7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3JvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3JvdXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoJy8nKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9zdGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHtcbiAgICBkYXRhOiBEYXRhO1xuICAgIHBhdGhQYXJhbXM6IFBhcmFtcztcbiAgICBxdWVyeVBhcmFtczogUGFyYW1zO1xuICAgIHRpdGxlOiBzdHJpbmcgfCBudWxsO1xuICAgIGZyYWdtZW50OiBzdHJpbmcgfCBudWxsO1xuICB9Pih7XG4gICAgdGl0bGU6IG51bGwsXG4gICAgZnJhZ21lbnQ6IG51bGwsXG4gICAgZGF0YToge30sXG4gICAgcGF0aFBhcmFtczoge30sXG4gICAgcXVlcnlQYXJhbXM6IHt9LFxuICB9KTtcblxuICBnZXQgcm91dGUkKCkge1xuICAgIHJldHVybiB0aGlzLl9yb3V0ZSQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgc3RhdGUkKCkge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZSQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9yb3V0ZXIuZXZlbnRzXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKChldmVudCk6IGV2ZW50IGlzIE5hdmlnYXRpb25FbmQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKGEsIGIpID0+IGEudXJsID09PSBiLnVybCksXG4gICAgICAgIG1hcCgoZXZlbnQpID0+IHtcbiAgICAgICAgICBjb25zdCB7IHVybCB9ID0gZXZlbnQ7XG5cbiAgICAgICAgICBjb25zdCB1cmxXaXRob3V0UXVlcnlQYXJhbXMgPSB1cmwuc3BsaXQoJz8nKVswXTtcbiAgICAgICAgICBjb25zdCB3aXRob3V0RnJhZ21lbnQgPSB1cmxXaXRob3V0UXVlcnlQYXJhbXMuc3BsaXQoJyMnKVswXTtcblxuICAgICAgICAgIHJldHVybiB3aXRob3V0RnJhZ21lbnQ7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSh0aGlzLl9yb3V0ZSQpO1xuXG4gICAgdGhpcy5fcm91dGUkXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCgpID0+IHtcbiAgICAgICAgICBsZXQgcm91dGUgPSB0aGlzLl9yb3V0ZXIucm91dGVyU3RhdGUuc25hcHNob3Qucm9vdDtcblxuICAgICAgICAgIHdoaWxlIChyb3V0ZS5maXJzdENoaWxkKSB7XG4gICAgICAgICAgICByb3V0ZSA9IHJvdXRlLmZpcnN0Q2hpbGQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgeyBkYXRhLCBwYXJhbXMsIHF1ZXJ5UGFyYW1zLCB0aXRsZSwgZnJhZ21lbnQgfSA9IHJvdXRlO1xuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICBwYXRoUGFyYW1zOiBwYXJhbXMsXG4gICAgICAgICAgICBxdWVyeVBhcmFtcyxcbiAgICAgICAgICAgIHRpdGxlOiB0aXRsZSA/PyBudWxsLFxuICAgICAgICAgICAgZnJhZ21lbnQsXG4gICAgICAgICAgfTtcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKHRoaXMuX3N0YXRlJCk7XG4gIH1cblxuICBlbmFibGVTY3JvbGxFbmhhbmNlbWVudHMoXG4gICAgY29uZmlnOiB7XG4gICAgICBzY3JvbGxFbGVtZW50PzogSFRNTEVsZW1lbnQ7XG4gICAgICBxdWVyeVBhcmFtVHJpZ2dlckxpc3Q/OiBzdHJpbmdbXTtcbiAgICAgIGZyYWdtZW50Pzoge1xuICAgICAgICBlbmFibGVkPzogYm9vbGVhbjtcbiAgICAgICAgc21vb3RoPzogYm9vbGVhbjtcbiAgICAgIH07XG4gICAgfSA9IHt9LFxuICApIHtcbiAgICBpZiAodGhpcy5faXNTY3JvbGxUb3BPbk5hdmlnYXRpb25FbmFibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5faXNTY3JvbGxUb3BPbk5hdmlnYXRpb25FbmFibGVkID0gdHJ1ZTtcblxuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuX3N0YXRlJC5waXBlKHBhaXJ3aXNlKCkpLCB0aGlzLl9yb3V0ZSQucGlwZShwYWlyd2lzZSgpKV0pXG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUoMSkpXG4gICAgICAuc3Vic2NyaWJlKChbW3ByZXZTdGF0ZSwgY3VyclN0YXRlXSwgW3ByZXZSb3V0ZSwgY3VyclJvdXRlXV0pID0+IHtcbiAgICAgICAgY29uc3Qgc2FtZVVybE5hdmlnYXRpb24gPSBwcmV2Um91dGUgPT09IGN1cnJSb3V0ZSAmJiBlcXVhbChwcmV2U3RhdGUucGF0aFBhcmFtcywgY3VyclN0YXRlLnBhdGhQYXJhbXMpO1xuICAgICAgICBjb25zdCBkaWRGcmFnbWVudENoYW5nZSA9IHByZXZTdGF0ZS5mcmFnbWVudCAhPT0gY3VyclN0YXRlLmZyYWdtZW50O1xuXG4gICAgICAgIGlmIChzYW1lVXJsTmF2aWdhdGlvbikge1xuICAgICAgICAgIGNvbnN0IGFsbFF1ZXJ5UGFyYW1zID0gW1xuICAgICAgICAgICAgLi4ubmV3IFNldChPYmplY3Qua2V5cyhwcmV2U3RhdGUucXVlcnlQYXJhbXMpLmNvbmNhdChPYmplY3Qua2V5cyhjdXJyU3RhdGUucXVlcnlQYXJhbXMpKSksXG4gICAgICAgICAgXTtcblxuICAgICAgICAgIGNvbnN0IGNoYW5nZWRRdWVyeVBhcmFtcyA9IGFsbFF1ZXJ5UGFyYW1zLmZpbHRlcihcbiAgICAgICAgICAgIChrZXkpID0+IGN1cnJTdGF0ZS5xdWVyeVBhcmFtc1trZXldICE9PSBwcmV2U3RhdGUucXVlcnlQYXJhbXNba2V5XSxcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgaWYgKCFjb25maWcucXVlcnlQYXJhbVRyaWdnZXJMaXN0Py5sZW5ndGggJiYgIWRpZEZyYWdtZW50Q2hhbmdlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgY2FzZVF1ZXJ5UGFyYW1zID0gY2hhbmdlZFF1ZXJ5UGFyYW1zLnNvbWUoKGtleSkgPT4gY29uZmlnLnF1ZXJ5UGFyYW1UcmlnZ2VyTGlzdD8uaW5jbHVkZXMoa2V5KSk7XG4gICAgICAgICAgY29uc3QgY2FzZUZyYWdtZW50ID0gZGlkRnJhZ21lbnRDaGFuZ2UgJiYgY29uZmlnLmZyYWdtZW50Py5lbmFibGVkO1xuXG4gICAgICAgICAgaWYgKGNhc2VRdWVyeVBhcmFtcykge1xuICAgICAgICAgICAgKGNvbmZpZy5zY3JvbGxFbGVtZW50ID8/IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkuc2Nyb2xsVG9wID0gMDtcbiAgICAgICAgICB9IGVsc2UgaWYgKGNhc2VGcmFnbWVudCkge1xuICAgICAgICAgICAgY29uc3QgZnJhZ21lbnRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoY3VyclN0YXRlLmZyYWdtZW50ID8/ICcnKTtcblxuICAgICAgICAgICAgaWYgKGZyYWdtZW50RWxlbWVudCkge1xuICAgICAgICAgICAgICBmcmFnbWVudEVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogY29uZmlnLmZyYWdtZW50Py5zbW9vdGggPyAnc21vb3RoJyA6ICdhdXRvJyB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgIShjdXJyU3RhdGUuZGF0YVsnZGlzYWJsZVNjcm9sbFRvcEFzUmV0dXJuUm91dGUnXSAmJiBwcmV2U3RhdGUuZGF0YVsnZGlzYWJsZVNjcm9sbFRvcCddKSAmJlxuICAgICAgICAgICAgIWN1cnJTdGF0ZS5kYXRhWydkaXNhYmxlU2Nyb2xsVG9wJ11cbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIChjb25maWcuc2Nyb2xsRWxlbWVudCA/PyBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLnNjcm9sbFRvcCA9IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIHNlbGVjdFF1ZXJ5UGFyYW08VCA9IHN0cmluZyB8IHVuZGVmaW5lZD4oa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5fc3RhdGUkLnBpcGUobWFwKChzdGF0ZSkgPT4gc3RhdGUucXVlcnlQYXJhbXNba2V5XSkpO1xuICB9XG5cbiAgc2VsZWN0UGF0aFBhcmFtPFQgPSBzdHJpbmcgfCB1bmRlZmluZWQ+KGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXRlJC5waXBlKG1hcCgoc3RhdGUpID0+IHN0YXRlLnBhdGhQYXJhbXNba2V5XSkpO1xuICB9XG5cbiAgc2VsZWN0RGF0YTxUID0gdW5rbm93bj4oa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5fc3RhdGUkLnBpcGUobWFwKChzdGF0ZSkgPT4gc3RhdGUuZGF0YVtrZXldKSk7XG4gIH1cbn1cbiJdfQ==