@ethlete/core 0.2.0-next.1 → 0.2.0-next.10

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 (139) hide show
  1. package/esm2020/lib/decorators/index.mjs +2 -0
  2. package/esm2020/lib/decorators/memo/memo.decorator.mjs +2 -2
  3. package/esm2020/lib/directives/click-outside/click-outside.directive.mjs +37 -0
  4. package/esm2020/lib/directives/click-outside/public-api.mjs +2 -0
  5. package/esm2020/lib/directives/cursor-drag-scroll/cursor-drag-scroll.constants.mjs +3 -0
  6. package/esm2020/lib/directives/cursor-drag-scroll/cursor-drag-scroll.directive.mjs +147 -0
  7. package/esm2020/lib/directives/cursor-drag-scroll/public-api.mjs +2 -0
  8. package/esm2020/lib/directives/let/let.directive.mjs +8 -8
  9. package/esm2020/lib/directives/observe-content/observe-content.directive.mjs +68 -0
  10. package/esm2020/lib/directives/observe-content/public-api.mjs +2 -0
  11. package/esm2020/lib/directives/observe-resize/observe-resize.directive.mjs +68 -0
  12. package/esm2020/lib/directives/observe-resize/public-api.mjs +2 -0
  13. package/esm2020/lib/directives/observe-scroll-state/observe-scroll-state.constants.mjs +3 -0
  14. package/esm2020/lib/directives/observe-scroll-state/observe-scroll-state.directive.mjs +171 -0
  15. package/esm2020/lib/directives/observe-scroll-state/observe-scroll-state.types.mjs +2 -0
  16. package/esm2020/lib/directives/observe-scroll-state/public-api.mjs +3 -0
  17. package/esm2020/lib/directives/public-api.mjs +10 -1
  18. package/esm2020/lib/directives/repeat/repeat.directive.mjs +10 -11
  19. package/esm2020/lib/directives/scroll-observer-first-element/index.mjs +2 -0
  20. package/esm2020/lib/directives/scroll-observer-first-element/public-api.mjs +2 -0
  21. package/esm2020/lib/directives/scroll-observer-first-element/scroll-observer-first-element.directive.mjs +31 -0
  22. package/esm2020/lib/directives/scroll-observer-ignore-target/index.mjs +2 -0
  23. package/esm2020/lib/directives/scroll-observer-ignore-target/public-api.mjs +2 -0
  24. package/esm2020/lib/directives/scroll-observer-ignore-target/scroll-observer-ignore-target.directive.mjs +18 -0
  25. package/esm2020/lib/directives/scroll-observer-last-element/index.mjs +2 -0
  26. package/esm2020/lib/directives/scroll-observer-last-element/public-api.mjs +2 -0
  27. package/esm2020/lib/directives/scroll-observer-last-element/scroll-observer-last-element.directive.mjs +34 -0
  28. package/esm2020/lib/directives/seo/public-api.mjs +5 -0
  29. package/esm2020/lib/directives/seo/seo.directive.constants.mjs +3 -0
  30. package/esm2020/lib/directives/seo/seo.directive.mjs +166 -0
  31. package/esm2020/lib/directives/seo/seo.directive.types.mjs +2 -0
  32. package/esm2020/lib/directives/seo/seo.directive.utils.mjs +7 -0
  33. package/esm2020/lib/pipes/normalize-game-result-type/normalize-game-result-type.pipe.mjs +15 -0
  34. package/esm2020/lib/pipes/normalize-game-result-type/normalize-game-result-type.types.mjs +2 -0
  35. package/esm2020/lib/pipes/normalize-game-result-type/normalize-game-result-type.util.mjs +34 -0
  36. package/esm2020/lib/pipes/normalize-game-result-type/public-api.mjs +4 -0
  37. package/esm2020/lib/pipes/normalize-match-participants/normalize-match-participants.pipe.mjs +15 -0
  38. package/esm2020/lib/pipes/normalize-match-participants/normalize-match-participants.types.mjs +2 -0
  39. package/esm2020/lib/pipes/normalize-match-participants/normalize-match-participants.util.mjs +47 -0
  40. package/esm2020/lib/pipes/normalize-match-participants/public-api.mjs +4 -0
  41. package/esm2020/lib/pipes/normalize-match-score/normalize-match-score.pipe.mjs +15 -0
  42. package/esm2020/lib/pipes/normalize-match-score/normalize-match-score.types.mjs +2 -0
  43. package/esm2020/lib/pipes/normalize-match-score/normalize-match-score.util.mjs +126 -0
  44. package/esm2020/lib/pipes/normalize-match-score/public-api.mjs +4 -0
  45. package/esm2020/lib/pipes/normalize-match-state/index.mjs +2 -0
  46. package/esm2020/lib/pipes/normalize-match-state/normalize-match-state.constants.mjs +2 -0
  47. package/esm2020/lib/pipes/normalize-match-state/normalize-match-state.pipe.mjs +15 -0
  48. package/esm2020/lib/pipes/normalize-match-state/normalize-match-state.util.mjs +19 -0
  49. package/esm2020/lib/pipes/normalize-match-state/public-api.mjs +4 -0
  50. package/esm2020/lib/pipes/normalize-match-type/normalize-match-type.pipe.mjs +15 -0
  51. package/esm2020/lib/pipes/normalize-match-type/normalize-match-type.util.mjs +38 -0
  52. package/esm2020/lib/pipes/normalize-match-type/public-api.mjs +3 -0
  53. package/esm2020/lib/pipes/public-api.mjs +6 -1
  54. package/esm2020/lib/pipes/to-array/to-array.pipe.mjs +3 -3
  55. package/esm2020/lib/services/click-observer.service.mjs +73 -0
  56. package/esm2020/lib/services/content-observer.service.mjs +79 -0
  57. package/esm2020/lib/services/destroy.service.mjs +19 -0
  58. package/esm2020/lib/services/focus-visible.service.mjs +7 -7
  59. package/esm2020/lib/services/index.mjs +2 -0
  60. package/esm2020/lib/services/public-api.mjs +6 -2
  61. package/esm2020/lib/services/resize-observer.service.mjs +75 -0
  62. package/esm2020/lib/services/viewport.service.mjs +43 -18
  63. package/esm2020/lib/types/i18n.types.mjs +2 -0
  64. package/esm2020/lib/types/public-api.mjs +3 -2
  65. package/esm2020/lib/utils/index.mjs +2 -0
  66. package/esm2020/lib/utils/public-api.mjs +2 -1
  67. package/esm2020/lib/utils/scrollable.utils.mjs +5 -0
  68. package/fesm2015/ethlete-core.mjs +1413 -116
  69. package/fesm2015/ethlete-core.mjs.map +1 -1
  70. package/fesm2020/ethlete-core.mjs +1410 -116
  71. package/fesm2020/ethlete-core.mjs.map +1 -1
  72. package/lib/decorators/index.d.ts +1 -0
  73. package/lib/directives/click-outside/click-outside.directive.d.ts +12 -0
  74. package/lib/directives/click-outside/public-api.d.ts +1 -0
  75. package/lib/directives/cursor-drag-scroll/cursor-drag-scroll.constants.d.ts +2 -0
  76. package/lib/directives/cursor-drag-scroll/cursor-drag-scroll.directive.d.ts +27 -0
  77. package/lib/directives/cursor-drag-scroll/public-api.d.ts +1 -0
  78. package/lib/directives/let/let.directive.d.ts +1 -1
  79. package/lib/directives/observe-content/observe-content.directive.d.ts +22 -0
  80. package/lib/directives/observe-content/public-api.d.ts +1 -0
  81. package/lib/directives/observe-resize/observe-resize.directive.d.ts +22 -0
  82. package/lib/directives/observe-resize/public-api.d.ts +1 -0
  83. package/lib/directives/observe-scroll-state/observe-scroll-state.constants.d.ts +3 -0
  84. package/lib/directives/observe-scroll-state/observe-scroll-state.directive.d.ts +31 -0
  85. package/lib/directives/observe-scroll-state/observe-scroll-state.types.d.ts +6 -0
  86. package/lib/directives/observe-scroll-state/public-api.d.ts +3 -0
  87. package/lib/directives/public-api.d.ts +9 -0
  88. package/lib/directives/repeat/repeat.directive.d.ts +3 -4
  89. package/lib/directives/scroll-observer-first-element/index.d.ts +1 -0
  90. package/lib/directives/scroll-observer-first-element/public-api.d.ts +1 -0
  91. package/lib/directives/scroll-observer-first-element/scroll-observer-first-element.directive.d.ts +10 -0
  92. package/lib/directives/scroll-observer-ignore-target/index.d.ts +1 -0
  93. package/lib/directives/scroll-observer-ignore-target/public-api.d.ts +1 -0
  94. package/lib/directives/scroll-observer-ignore-target/scroll-observer-ignore-target.directive.d.ts +6 -0
  95. package/lib/directives/scroll-observer-last-element/index.d.ts +1 -0
  96. package/lib/directives/scroll-observer-last-element/public-api.d.ts +1 -0
  97. package/lib/directives/scroll-observer-last-element/scroll-observer-last-element.directive.d.ts +10 -0
  98. package/lib/directives/seo/public-api.d.ts +4 -0
  99. package/lib/directives/seo/seo.directive.constants.d.ts +3 -0
  100. package/lib/directives/seo/seo.directive.d.ts +21 -0
  101. package/lib/directives/seo/seo.directive.types.d.ts +51 -0
  102. package/lib/directives/seo/seo.directive.utils.d.ts +2 -0
  103. package/lib/pipes/normalize-game-result-type/normalize-game-result-type.pipe.d.ts +7 -0
  104. package/lib/pipes/normalize-game-result-type/normalize-game-result-type.types.d.ts +4 -0
  105. package/lib/pipes/normalize-game-result-type/normalize-game-result-type.util.d.ts +2 -0
  106. package/lib/pipes/normalize-game-result-type/public-api.d.ts +3 -0
  107. package/lib/pipes/normalize-match-participants/normalize-match-participants.pipe.d.ts +7 -0
  108. package/lib/pipes/normalize-match-participants/normalize-match-participants.types.d.ts +21 -0
  109. package/lib/pipes/normalize-match-participants/normalize-match-participants.util.d.ts +4 -0
  110. package/lib/pipes/normalize-match-participants/public-api.d.ts +3 -0
  111. package/lib/pipes/normalize-match-score/normalize-match-score.pipe.d.ts +7 -0
  112. package/lib/pipes/normalize-match-score/normalize-match-score.types.d.ts +12 -0
  113. package/lib/pipes/normalize-match-score/normalize-match-score.util.d.ts +27 -0
  114. package/lib/pipes/normalize-match-score/public-api.d.ts +3 -0
  115. package/lib/pipes/normalize-match-state/index.d.ts +1 -0
  116. package/lib/pipes/normalize-match-state/normalize-match-state.constants.d.ts +7 -0
  117. package/lib/pipes/normalize-match-state/normalize-match-state.pipe.d.ts +7 -0
  118. package/lib/pipes/normalize-match-state/normalize-match-state.util.d.ts +3 -0
  119. package/lib/pipes/normalize-match-state/public-api.d.ts +3 -0
  120. package/lib/pipes/normalize-match-type/normalize-match-type.pipe.d.ts +7 -0
  121. package/lib/pipes/normalize-match-type/normalize-match-type.util.d.ts +3 -0
  122. package/lib/pipes/normalize-match-type/public-api.d.ts +2 -0
  123. package/lib/pipes/public-api.d.ts +5 -0
  124. package/lib/services/click-observer.service.d.ts +21 -0
  125. package/lib/services/content-observer.service.d.ts +21 -0
  126. package/lib/services/destroy.service.d.ts +9 -0
  127. package/lib/services/index.d.ts +1 -0
  128. package/lib/services/public-api.d.ts +5 -1
  129. package/lib/services/resize-observer.service.d.ts +21 -0
  130. package/lib/services/viewport.service.d.ts +3 -0
  131. package/lib/services/viewport.types.d.ts +1 -1
  132. package/lib/types/angular.types.d.ts +1 -1
  133. package/lib/types/i18n.types.d.ts +4 -0
  134. package/lib/types/public-api.d.ts +2 -1
  135. package/lib/types/viewport.types.d.ts +2 -2
  136. package/lib/utils/index.d.ts +1 -0
  137. package/lib/utils/public-api.d.ts +1 -0
  138. package/lib/utils/scrollable.utils.d.ts +1 -0
  139. package/package.json +8 -6
@@ -0,0 +1,2 @@
1
+ export * from './public-api';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9kZWNvcmF0b3JzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -12,7 +12,7 @@ function memoize(func, resolver, cache) {
12
12
  memoized.cache = cache;
13
13
  return memoized;
14
14
  }
15
- const defaultResolver = (...args) => args[0];
15
+ const defaultResolver = (...args) => args.join('-');
16
16
  export const Memo = (config = {}) => (_, __, descriptor) => {
17
17
  if (typeof descriptor.value !== 'function') {
18
18
  throw new Error('Memoization can be applied only to methods');
@@ -22,4 +22,4 @@ export const Memo = (config = {}) => (_, __, descriptor) => {
22
22
  descriptor.value = memoize(descriptor.value, resolver, cache);
23
23
  return descriptor;
24
24
  };
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtby5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9kZWNvcmF0b3JzL21lbW8vbWVtby5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0JBLFNBQVMsT0FBTyxDQUFDLElBQXNDLEVBQUUsUUFBc0IsRUFBRSxLQUFjO0lBQzdGLE1BQU0sUUFBUSxHQUFHLFVBQXlCLEdBQUcsSUFBZTtRQUMxRCxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN2QyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDO1FBRTdCLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNsQixPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDdkI7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN0QyxRQUFRLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQztRQUNqRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDLENBQUM7SUFFRixRQUFRLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUV2QixPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBRUQsTUFBTSxlQUFlLEdBQWlCLENBQUMsR0FBRyxJQUFlLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUV0RSxNQUFNLENBQUMsTUFBTSxJQUFJLEdBQ2YsQ0FBQyxTQUFxQixFQUFFLEVBQUUsRUFBRSxDQUM1QixDQUFDLENBQVUsRUFBRSxFQUFVLEVBQUUsVUFBOEIsRUFBc0IsRUFBRTtJQUM3RSxJQUFJLE9BQU8sVUFBVSxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUU7UUFDMUMsTUFBTSxJQUFJLEtBQUssQ0FBQyw0Q0FBNEMsQ0FBQyxDQUFDO0tBQy9EO0lBRUQsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsSUFBSSxlQUFlLENBQUM7SUFDcEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBRXhDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzlELE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTWVtb1Jlc29sdmVyIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgKC4uLmFyZ3M6IGFueVtdKTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1hcExpa2U8SyA9IHVua25vd24sIFYgPSB1bmtub3duPiB7XG4gIHNldChrZXk6IEssIHY6IFYpOiBNYXBMaWtlPEssIFY+O1xuICBnZXQoa2V5OiBLKTogVjtcbiAgaGFzKGtleTogSyk6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWVtb0NvbmZpZyB7XG4gIHJlc29sdmVyPzogTWVtb1Jlc29sdmVyO1xuICBjYWNoZT86IE1hcExpa2U7XG59XG5cbmZ1bmN0aW9uIG1lbW9pemUoZnVuYzogKC4uLl9hcmdzOiB1bmtub3duW10pID0+IHVua25vd24sIHJlc29sdmVyOiBNZW1vUmVzb2x2ZXIsIGNhY2hlOiBNYXBMaWtlKSB7XG4gIGNvbnN0IG1lbW9pemVkID0gZnVuY3Rpb24gKHRoaXM6IHVua25vd24sIC4uLmFyZ3M6IHVua25vd25bXSkge1xuICAgIGNvbnN0IGtleSA9IHJlc29sdmVyLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgIGNvbnN0IGNhY2hlID0gbWVtb2l6ZWQuY2FjaGU7XG5cbiAgICBpZiAoY2FjaGUuaGFzKGtleSkpIHtcbiAgICAgIHJldHVybiBjYWNoZS5nZXQoa2V5KTtcbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQgPSBmdW5jLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgIG1lbW9pemVkLmNhY2hlID0gY2FjaGUuc2V0KGtleSwgcmVzdWx0KSA/PyBjYWNoZTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9O1xuXG4gIG1lbW9pemVkLmNhY2hlID0gY2FjaGU7XG5cbiAgcmV0dXJuIG1lbW9pemVkO1xufVxuXG5jb25zdCBkZWZhdWx0UmVzb2x2ZXI6IE1lbW9SZXNvbHZlciA9ICguLi5hcmdzOiB1bmtub3duW10pID0+IGFyZ3NbMF07XG5cbmV4cG9ydCBjb25zdCBNZW1vID1cbiAgKGNvbmZpZzogTWVtb0NvbmZpZyA9IHt9KSA9PlxuICAoXzogdW5rbm93biwgX186IHN0cmluZywgZGVzY3JpcHRvcjogUHJvcGVydHlEZXNjcmlwdG9yKTogUHJvcGVydHlEZXNjcmlwdG9yID0+IHtcbiAgICBpZiAodHlwZW9mIGRlc2NyaXB0b3IudmFsdWUgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTWVtb2l6YXRpb24gY2FuIGJlIGFwcGxpZWQgb25seSB0byBtZXRob2RzJyk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzb2x2ZXIgPSBjb25maWcucmVzb2x2ZXIgPz8gZGVmYXVsdFJlc29sdmVyO1xuICAgIGNvbnN0IGNhY2hlID0gY29uZmlnLmNhY2hlID8/IG5ldyBNYXAoKTtcblxuICAgIGRlc2NyaXB0b3IudmFsdWUgPSBtZW1vaXplKGRlc2NyaXB0b3IudmFsdWUsIHJlc29sdmVyLCBjYWNoZSk7XG4gICAgcmV0dXJuIGRlc2NyaXB0b3I7XG4gIH07XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtby5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9kZWNvcmF0b3JzL21lbW8vbWVtby5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0JBLFNBQVMsT0FBTyxDQUFDLElBQXNDLEVBQUUsUUFBc0IsRUFBRSxLQUFjO0lBQzdGLE1BQU0sUUFBUSxHQUFHLFVBQXlCLEdBQUcsSUFBZTtRQUMxRCxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN2QyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDO1FBRTdCLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNsQixPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDdkI7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN0QyxRQUFRLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQztRQUNqRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDLENBQUM7SUFFRixRQUFRLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUV2QixPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBRUQsTUFBTSxlQUFlLEdBQWlCLENBQUMsR0FBRyxJQUFlLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7QUFFN0UsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUNmLENBQUMsU0FBcUIsRUFBRSxFQUFFLEVBQUUsQ0FDNUIsQ0FBQyxDQUFVLEVBQUUsRUFBVSxFQUFFLFVBQThCLEVBQXNCLEVBQUU7SUFDN0UsSUFBSSxPQUFPLFVBQVUsQ0FBQyxLQUFLLEtBQUssVUFBVSxFQUFFO1FBQzFDLE1BQU0sSUFBSSxLQUFLLENBQUMsNENBQTRDLENBQUMsQ0FBQztLQUMvRDtJQUVELE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLElBQUksZUFBZSxDQUFDO0lBQ3BELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUV4QyxVQUFVLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM5RCxPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIE1lbW9SZXNvbHZlciB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICguLi5hcmdzOiBhbnlbXSk6IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNYXBMaWtlPEsgPSB1bmtub3duLCBWID0gdW5rbm93bj4ge1xuICBzZXQoa2V5OiBLLCB2OiBWKTogTWFwTGlrZTxLLCBWPjtcbiAgZ2V0KGtleTogSyk6IFY7XG4gIGhhcyhrZXk6IEspOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1lbW9Db25maWcge1xuICByZXNvbHZlcj86IE1lbW9SZXNvbHZlcjtcbiAgY2FjaGU/OiBNYXBMaWtlO1xufVxuXG5mdW5jdGlvbiBtZW1vaXplKGZ1bmM6ICguLi5fYXJnczogdW5rbm93bltdKSA9PiB1bmtub3duLCByZXNvbHZlcjogTWVtb1Jlc29sdmVyLCBjYWNoZTogTWFwTGlrZSkge1xuICBjb25zdCBtZW1vaXplZCA9IGZ1bmN0aW9uICh0aGlzOiB1bmtub3duLCAuLi5hcmdzOiB1bmtub3duW10pIHtcbiAgICBjb25zdCBrZXkgPSByZXNvbHZlci5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICBjb25zdCBjYWNoZSA9IG1lbW9pemVkLmNhY2hlO1xuXG4gICAgaWYgKGNhY2hlLmhhcyhrZXkpKSB7XG4gICAgICByZXR1cm4gY2FjaGUuZ2V0KGtleSk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0ID0gZnVuYy5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICBtZW1vaXplZC5jYWNoZSA9IGNhY2hlLnNldChrZXksIHJlc3VsdCkgPz8gY2FjaGU7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfTtcblxuICBtZW1vaXplZC5jYWNoZSA9IGNhY2hlO1xuXG4gIHJldHVybiBtZW1vaXplZDtcbn1cblxuY29uc3QgZGVmYXVsdFJlc29sdmVyOiBNZW1vUmVzb2x2ZXIgPSAoLi4uYXJnczogdW5rbm93bltdKSA9PiBhcmdzLmpvaW4oJy0nKTtcblxuZXhwb3J0IGNvbnN0IE1lbW8gPVxuICAoY29uZmlnOiBNZW1vQ29uZmlnID0ge30pID0+XG4gIChfOiB1bmtub3duLCBfXzogc3RyaW5nLCBkZXNjcmlwdG9yOiBQcm9wZXJ0eURlc2NyaXB0b3IpOiBQcm9wZXJ0eURlc2NyaXB0b3IgPT4ge1xuICAgIGlmICh0eXBlb2YgZGVzY3JpcHRvci52YWx1ZSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNZW1vaXphdGlvbiBjYW4gYmUgYXBwbGllZCBvbmx5IHRvIG1ldGhvZHMnKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXNvbHZlciA9IGNvbmZpZy5yZXNvbHZlciA/PyBkZWZhdWx0UmVzb2x2ZXI7XG4gICAgY29uc3QgY2FjaGUgPSBjb25maWcuY2FjaGUgPz8gbmV3IE1hcCgpO1xuXG4gICAgZGVzY3JpcHRvci52YWx1ZSA9IG1lbW9pemUoZGVzY3JpcHRvci52YWx1ZSwgcmVzb2x2ZXIsIGNhY2hlKTtcbiAgICByZXR1cm4gZGVzY3JpcHRvcjtcbiAgfTtcbiJdfQ==
@@ -0,0 +1,37 @@
1
+ import { Directive, ElementRef, EventEmitter, inject, Output } from '@angular/core';
2
+ import { ClickObserverService } from '../../services';
3
+ import * as i0 from "@angular/core";
4
+ export class ClickOutsideDirective {
5
+ constructor() {
6
+ this._elementRef = inject(ElementRef);
7
+ this._clickObserverService = inject(ClickObserverService);
8
+ this._subscription = null;
9
+ this.etClickOutside = new EventEmitter();
10
+ }
11
+ ngOnInit() {
12
+ setTimeout(() => {
13
+ this._subscription = this._clickObserverService.observe(this._elementRef.nativeElement).subscribe((event) => {
14
+ const activeElement = event.target;
15
+ const isInside = this._elementRef.nativeElement.contains(activeElement);
16
+ if (!isInside) {
17
+ this.etClickOutside.emit(event);
18
+ }
19
+ });
20
+ });
21
+ }
22
+ ngOnDestroy() {
23
+ this._subscription?.unsubscribe();
24
+ }
25
+ }
26
+ ClickOutsideDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ClickOutsideDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
27
+ ClickOutsideDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0", type: ClickOutsideDirective, isStandalone: true, selector: "[etClickOutside]", outputs: { etClickOutside: "etClickOutside" }, ngImport: i0 });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ClickOutsideDirective, decorators: [{
29
+ type: Directive,
30
+ args: [{
31
+ selector: '[etClickOutside]',
32
+ standalone: true,
33
+ }]
34
+ }], propDecorators: { etClickOutside: [{
35
+ type: Output
36
+ }] } });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9kaXJlY3RpdmVzL2NsaWNrLW91dHNpZGUvY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQU10RCxNQUFNLE9BQU8scUJBQXFCO0lBSmxDO1FBS1UsZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMsMEJBQXFCLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFFckQsa0JBQWEsR0FBd0IsSUFBSSxDQUFDO1FBR2xELG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztLQWtCakQ7SUFoQkMsUUFBUTtRQUNOLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDMUcsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLE1BQXFCLENBQUM7Z0JBQ2xELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFFeEUsSUFBSSxDQUFDLFFBQVEsRUFBRTtvQkFDYixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDakM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3BDLENBQUM7O2tIQXhCVSxxQkFBcUI7c0dBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs4QkFRQyxjQUFjO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENsaWNrT2JzZXJ2ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZXRDbGlja091dHNpZGVdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQ2xpY2tPdXRzaWRlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIF9lbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIF9jbGlja09ic2VydmVyU2VydmljZSA9IGluamVjdChDbGlja09ic2VydmVyU2VydmljZSk7XG5cbiAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCBudWxsID0gbnVsbDtcblxuICBAT3V0cHV0KClcbiAgZXRDbGlja091dHNpZGUgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLl9zdWJzY3JpcHRpb24gPSB0aGlzLl9jbGlja09ic2VydmVyU2VydmljZS5vYnNlcnZlKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICBjb25zdCBhY3RpdmVFbGVtZW50ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgICAgICBjb25zdCBpc0luc2lkZSA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhhY3RpdmVFbGVtZW50KTtcblxuICAgICAgICBpZiAoIWlzSW5zaWRlKSB7XG4gICAgICAgICAgdGhpcy5ldENsaWNrT3V0c2lkZS5lbWl0KGV2ZW50KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './click-outside.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvY2xpY2stb3V0c2lkZS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NsaWNrLW91dHNpZGUuZGlyZWN0aXZlJztcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export const CURSOR_DRAG_SCROLLING_CLASS = 'et-cursor-drag-scroll--scrolling';
2
+ export const CURSOR_DRAG_SCROLLING_PREPARED_CLASS = 'et-cursor-drag-scroll--prepared';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Vyc29yLWRyYWctc2Nyb2xsLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvY3Vyc29yLWRyYWctc2Nyb2xsL2N1cnNvci1kcmFnLXNjcm9sbC5jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsa0NBQWtDLENBQUM7QUFDOUUsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQUcsaUNBQWlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgQ1VSU09SX0RSQUdfU0NST0xMSU5HX0NMQVNTID0gJ2V0LWN1cnNvci1kcmFnLXNjcm9sbC0tc2Nyb2xsaW5nJztcbmV4cG9ydCBjb25zdCBDVVJTT1JfRFJBR19TQ1JPTExJTkdfUFJFUEFSRURfQ0xBU1MgPSAnZXQtY3Vyc29yLWRyYWctc2Nyb2xsLS1wcmVwYXJlZCc7XG4iXX0=
@@ -0,0 +1,147 @@
1
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
2
+ import { Directive, ElementRef, inject, Input } from '@angular/core';
3
+ import { combineLatest, debounceTime, fromEvent, startWith, Subject, take, takeUntil, tap } from 'rxjs';
4
+ import { ContentObserverService, DestroyService, ResizeObserverService } from '../../services';
5
+ import { elementCanScroll } from '../../utils';
6
+ import { CURSOR_DRAG_SCROLLING_CLASS, CURSOR_DRAG_SCROLLING_PREPARED_CLASS } from './cursor-drag-scroll.constants';
7
+ import * as i0 from "@angular/core";
8
+ export class CursorDragScrollDirective {
9
+ constructor() {
10
+ this._subscriptions = [];
11
+ this._destroy$ = inject(DestroyService).destroy$;
12
+ this._elementRef = inject(ElementRef);
13
+ this._contentObserverService = inject(ContentObserverService);
14
+ this._resizeObserverService = inject(ResizeObserverService);
15
+ this._bufferUntilScroll = 5;
16
+ this._mouseUp$ = new Subject();
17
+ this._isScrolling = false;
18
+ this._canScroll = false;
19
+ this._currentScrollState = {
20
+ top: 0,
21
+ left: 0,
22
+ x: 0,
23
+ y: 0,
24
+ };
25
+ this._enabled = false;
26
+ }
27
+ get enabled() {
28
+ return this._enabled;
29
+ }
30
+ set enabled(value) {
31
+ this._enabled = coerceBooleanProperty(value);
32
+ if (this._enabled) {
33
+ this._enableCursorDragScroll();
34
+ }
35
+ else {
36
+ this._disableCursorDragScroll();
37
+ }
38
+ }
39
+ ngAfterViewInit() {
40
+ if (this.enabled) {
41
+ this._enableCursorDragScroll();
42
+ }
43
+ else {
44
+ this._disableCursorDragScroll();
45
+ }
46
+ }
47
+ _enableCursorDragScroll() {
48
+ const contentResizeSub = combineLatest([
49
+ this._contentObserverService.observe(this._elementRef.nativeElement).pipe(startWith(null)),
50
+ this._resizeObserverService.observe(this._elementRef.nativeElement).pipe(startWith(null)),
51
+ ])
52
+ .pipe(debounceTime(25), tap(() => this._updateCanScrollState()), takeUntil(this._destroy$))
53
+ .subscribe();
54
+ const mousedownSub = fromEvent(this._elementRef.nativeElement, 'mousedown')
55
+ .pipe(tap((e) => this._onMouseDown(e)), takeUntil(this._destroy$))
56
+ .subscribe();
57
+ this._subscriptions.push(contentResizeSub, mousedownSub);
58
+ this._updateCanScrollState();
59
+ }
60
+ _disableCursorDragScroll() {
61
+ this._subscriptions.forEach((sub) => sub.unsubscribe());
62
+ this._subscriptions.length = 0;
63
+ this._elementRef.nativeElement.style.cursor = 'default';
64
+ }
65
+ _onMouseDown(e) {
66
+ if (!this._elementRef?.nativeElement || !this._canScroll) {
67
+ return;
68
+ }
69
+ const element = this._elementRef.nativeElement;
70
+ element.classList.add(CURSOR_DRAG_SCROLLING_PREPARED_CLASS);
71
+ this._elementRef.nativeElement.style.scrollSnapType = 'none';
72
+ this._elementRef.nativeElement.style.scrollBehavior = 'unset';
73
+ this._currentScrollState = {
74
+ left: this._elementRef.nativeElement.scrollLeft,
75
+ top: this._elementRef.nativeElement.scrollTop,
76
+ x: e.clientX,
77
+ y: e.clientY,
78
+ };
79
+ fromEvent(document, 'mousemove')
80
+ .pipe(tap((e) => this._mouseMoveHandler(e)), takeUntil(this._mouseUp$), takeUntil(this._destroy$))
81
+ .subscribe();
82
+ fromEvent(document, 'mouseup')
83
+ .pipe(tap(() => this._mouseUpHandler()), take(1), takeUntil(this._destroy$))
84
+ .subscribe();
85
+ }
86
+ _mouseMoveHandler(e) {
87
+ e.preventDefault();
88
+ if (!this._elementRef?.nativeElement) {
89
+ return;
90
+ }
91
+ const dx = e.clientX - this._currentScrollState.x;
92
+ const dy = e.clientY - this._currentScrollState.y;
93
+ if (Math.abs(dx) > this._bufferUntilScroll || Math.abs(dy) > this._bufferUntilScroll) {
94
+ const element = this._elementRef.nativeElement;
95
+ if (!this._isScrolling) {
96
+ this._isScrolling = true;
97
+ element.style.cursor = 'grabbing';
98
+ element.classList.add(CURSOR_DRAG_SCROLLING_CLASS);
99
+ element.scroll({
100
+ top: this._currentScrollState.top - dy,
101
+ left: this._currentScrollState.left - dx,
102
+ behavior: 'smooth',
103
+ });
104
+ }
105
+ else {
106
+ element.scrollTop = this._currentScrollState.top - dy;
107
+ element.scrollLeft = this._currentScrollState.left - dx;
108
+ }
109
+ }
110
+ }
111
+ _mouseUpHandler() {
112
+ this._mouseUp$.next(true);
113
+ this._isScrolling = false;
114
+ if (!this._elementRef?.nativeElement) {
115
+ return;
116
+ }
117
+ this._elementRef.nativeElement.style.scrollSnapType = '';
118
+ this._elementRef.nativeElement.style.scrollBehavior = '';
119
+ this._elementRef.nativeElement.style.cursor = 'grab';
120
+ this._elementRef.nativeElement.classList.remove(CURSOR_DRAG_SCROLLING_CLASS);
121
+ this._elementRef.nativeElement.classList.remove(CURSOR_DRAG_SCROLLING_PREPARED_CLASS);
122
+ }
123
+ _updateCanScrollState() {
124
+ this._canScroll = elementCanScroll(this._elementRef.nativeElement);
125
+ if (this._canScroll) {
126
+ this._elementRef.nativeElement.style.cursor = 'grab';
127
+ }
128
+ else {
129
+ this._elementRef.nativeElement.style.cursor = 'default';
130
+ }
131
+ }
132
+ }
133
+ CursorDragScrollDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CursorDragScrollDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
134
+ CursorDragScrollDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0", type: CursorDragScrollDirective, isStandalone: true, selector: "[etCursorDragScroll]", inputs: { enabled: ["etCursorDragScroll", "enabled"] }, providers: [DestroyService], exportAs: ["etCursorDragScroll"], ngImport: i0 });
135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CursorDragScrollDirective, decorators: [{
136
+ type: Directive,
137
+ args: [{
138
+ selector: '[etCursorDragScroll]',
139
+ exportAs: 'etCursorDragScroll',
140
+ standalone: true,
141
+ providers: [DestroyService],
142
+ }]
143
+ }], propDecorators: { enabled: [{
144
+ type: Input,
145
+ args: ['etCursorDragScroll']
146
+ }] } });
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Vyc29yLWRyYWctc2Nyb2xsLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvY3Vyc29yLWRyYWctc2Nyb2xsL2N1cnNvci1kcmFnLXNjcm9sbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVFLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFnQixJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0SCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0YsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9DLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQVFuSCxNQUFNLE9BQU8seUJBQXlCO0lBTnRDO1FBT21CLG1CQUFjLEdBQW1CLEVBQUUsQ0FBQztRQUNwQyxjQUFTLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUM1QyxnQkFBVyxHQUFHLE1BQU0sQ0FBMEIsVUFBVSxDQUFDLENBQUM7UUFDMUQsNEJBQXVCLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDekQsMkJBQXNCLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFdkQsdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLGNBQVMsR0FBRyxJQUFJLE9BQU8s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Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBpbmplY3QsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBkZWJvdW5jZVRpbWUsIGZyb21FdmVudCwgc3RhcnRXaXRoLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIHRha2UsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb250ZW50T2JzZXJ2ZXJTZXJ2aWNlLCBEZXN0cm95U2VydmljZSwgUmVzaXplT2JzZXJ2ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgZWxlbWVudENhblNjcm9sbCB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IENVUlNPUl9EUkFHX1NDUk9MTElOR19DTEFTUywgQ1VSU09SX0RSQUdfU0NST0xMSU5HX1BSRVBBUkVEX0NMQVNTIH0gZnJvbSAnLi9jdXJzb3ItZHJhZy1zY3JvbGwuY29uc3RhbnRzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2V0Q3Vyc29yRHJhZ1Njcm9sbF0nLFxuICBleHBvcnRBczogJ2V0Q3Vyc29yRHJhZ1Njcm9sbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHByb3ZpZGVyczogW0Rlc3Ryb3lTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgQ3Vyc29yRHJhZ1Njcm9sbERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IGluamVjdChEZXN0cm95U2VydmljZSkuZGVzdHJveSQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb250ZW50T2JzZXJ2ZXJTZXJ2aWNlID0gaW5qZWN0KENvbnRlbnRPYnNlcnZlclNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yZXNpemVPYnNlcnZlclNlcnZpY2UgPSBpbmplY3QoUmVzaXplT2JzZXJ2ZXJTZXJ2aWNlKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9idWZmZXJVbnRpbFNjcm9sbCA9IDU7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21vdXNlVXAkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICBwcml2YXRlIF9pc1Njcm9sbGluZyA9IGZhbHNlO1xuICBwcml2YXRlIF9jYW5TY3JvbGwgPSBmYWxzZTtcblxuICBwcml2YXRlIF9jdXJyZW50U2Nyb2xsU3RhdGUgPSB7XG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgeDogMCxcbiAgICB5OiAwLFxuICB9O1xuXG4gIEBJbnB1dCgnZXRDdXJzb3JEcmFnU2Nyb2xsJylcbiAgZ2V0IGVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gIH1cbiAgc2V0IGVuYWJsZWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX2VuYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuXG4gICAgaWYgKHRoaXMuX2VuYWJsZWQpIHtcbiAgICAgIHRoaXMuX2VuYWJsZUN1cnNvckRyYWdTY3JvbGwoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fZGlzYWJsZUN1cnNvckRyYWdTY3JvbGwoKTtcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBfZW5hYmxlZCA9IGZhbHNlO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5lbmFibGVkKSB7XG4gICAgICB0aGlzLl9lbmFibGVDdXJzb3JEcmFnU2Nyb2xsKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2Rpc2FibGVDdXJzb3JEcmFnU2Nyb2xsKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZW5hYmxlQ3Vyc29yRHJhZ1Njcm9sbCgpIHtcbiAgICBjb25zdCBjb250ZW50UmVzaXplU3ViID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLl9jb250ZW50T2JzZXJ2ZXJTZXJ2aWNlLm9ic2VydmUodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KS5waXBlKHN0YXJ0V2l0aChudWxsKSksXG4gICAgICB0aGlzLl9yZXNpemVPYnNlcnZlclNlcnZpY2Uub2JzZXJ2ZSh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpLnBpcGUoc3RhcnRXaXRoKG51bGwpKSxcbiAgICBdKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGRlYm91bmNlVGltZSgyNSksXG4gICAgICAgIHRhcCgoKSA9PiB0aGlzLl91cGRhdGVDYW5TY3JvbGxTdGF0ZSgpKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIGNvbnN0IG1vdXNlZG93blN1YiA9IGZyb21FdmVudDxNb3VzZUV2ZW50Pih0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdtb3VzZWRvd24nKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoZSkgPT4gdGhpcy5fb25Nb3VzZURvd24oZSkpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5wdXNoKGNvbnRlbnRSZXNpemVTdWIsIG1vdXNlZG93blN1Yik7XG5cbiAgICB0aGlzLl91cGRhdGVDYW5TY3JvbGxTdGF0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZUN1cnNvckRyYWdTY3JvbGwoKSB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5mb3JFYWNoKChzdWIpID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmxlbmd0aCA9IDA7XG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnN0eWxlLmN1cnNvciA9ICdkZWZhdWx0JztcbiAgfVxuXG4gIHByaXZhdGUgX29uTW91c2VEb3duKGU6IE1vdXNlRXZlbnQpIHtcbiAgICBpZiAoIXRoaXMuX2VsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQgfHwgIXRoaXMuX2NhblNjcm9sbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoQ1VSU09SX0RSQUdfU0NST0xMSU5HX1BSRVBBUkVEX0NMQVNTKTtcblxuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdHlsZS5zY3JvbGxTbmFwVHlwZSA9ICdub25lJztcbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2Nyb2xsQmVoYXZpb3IgPSAndW5zZXQnO1xuXG4gICAgdGhpcy5fY3VycmVudFNjcm9sbFN0YXRlID0ge1xuICAgICAgbGVmdDogdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNjcm9sbExlZnQsXG4gICAgICB0b3A6IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zY3JvbGxUb3AsXG4gICAgICB4OiBlLmNsaWVudFgsXG4gICAgICB5OiBlLmNsaWVudFksXG4gICAgfTtcblxuICAgIGZyb21FdmVudDxNb3VzZUV2ZW50Pihkb2N1bWVudCwgJ21vdXNlbW92ZScpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKChlKSA9PiB0aGlzLl9tb3VzZU1vdmVIYW5kbGVyKGUpKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX21vdXNlVXAkKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIGZyb21FdmVudDxNb3VzZUV2ZW50Pihkb2N1bWVudCwgJ21vdXNldXAnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoKSA9PiB0aGlzLl9tb3VzZVVwSGFuZGxlcigpKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX21vdXNlTW92ZUhhbmRsZXIoZTogTW91c2VFdmVudCkge1xuICAgIGUucHJldmVudERlZmF1bHQoKTtcblxuICAgIGlmICghdGhpcy5fZWxlbWVudFJlZj8ubmF0aXZlRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGR4ID0gZS5jbGllbnRYIC0gdGhpcy5fY3VycmVudFNjcm9sbFN0YXRlLng7XG4gICAgY29uc3QgZHkgPSBlLmNsaWVudFkgLSB0aGlzLl9jdXJyZW50U2Nyb2xsU3RhdGUueTtcblxuICAgIGlmIChNYXRoLmFicyhkeCkgPiB0aGlzLl9idWZmZXJVbnRpbFNjcm9sbCB8fCBNYXRoLmFicyhkeSkgPiB0aGlzLl9idWZmZXJVbnRpbFNjcm9sbCkge1xuICAgICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgICAgaWYgKCF0aGlzLl9pc1Njcm9sbGluZykge1xuICAgICAgICB0aGlzLl9pc1Njcm9sbGluZyA9IHRydWU7XG5cbiAgICAgICAgZWxlbWVudC5zdHlsZS5jdXJzb3IgPSAnZ3JhYmJpbmcnO1xuICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoQ1VSU09SX0RSQUdfU0NST0xMSU5HX0NMQVNTKTtcbiAgICAgICAgZWxlbWVudC5zY3JvbGwoe1xuICAgICAgICAgIHRvcDogdGhpcy5fY3VycmVudFNjcm9sbFN0YXRlLnRvcCAtIGR5LFxuICAgICAgICAgIGxlZnQ6IHRoaXMuX2N1cnJlbnRTY3JvbGxTdGF0ZS5sZWZ0IC0gZHgsXG4gICAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsZW1lbnQuc2Nyb2xsVG9wID0gdGhpcy5fY3VycmVudFNjcm9sbFN0YXRlLnRvcCAtIGR5O1xuICAgICAgICBlbGVtZW50LnNjcm9sbExlZnQgPSB0aGlzLl9jdXJyZW50U2Nyb2xsU3RhdGUubGVmdCAtIGR4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX21vdXNlVXBIYW5kbGVyKCkge1xuICAgIHRoaXMuX21vdXNlVXAkLm5leHQodHJ1ZSk7XG4gICAgdGhpcy5faXNTY3JvbGxpbmcgPSBmYWxzZTtcblxuICAgIGlmICghdGhpcy5fZWxlbWVudFJlZj8ubmF0aXZlRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdHlsZS5zY3JvbGxTbmFwVHlwZSA9ICcnO1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdHlsZS5zY3JvbGxCZWhhdmlvciA9ICcnO1xuXG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnN0eWxlLmN1cnNvciA9ICdncmFiJztcbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShDVVJTT1JfRFJBR19TQ1JPTExJTkdfQ0xBU1MpO1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKENVUlNPUl9EUkFHX1NDUk9MTElOR19QUkVQQVJFRF9DTEFTUyk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVDYW5TY3JvbGxTdGF0ZSgpIHtcbiAgICB0aGlzLl9jYW5TY3JvbGwgPSBlbGVtZW50Q2FuU2Nyb2xsKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG5cbiAgICBpZiAodGhpcy5fY2FuU2Nyb2xsKSB7XG4gICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc3R5bGUuY3Vyc29yID0gJ2dyYWInO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc3R5bGUuY3Vyc29yID0gJ2RlZmF1bHQnO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './cursor-drag-scroll.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvY3Vyc29yLWRyYWctc2Nyb2xsL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQ0FBZ0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY3Vyc29yLWRyYWctc2Nyb2xsLmRpcmVjdGl2ZSc7XG4iXX0=
@@ -2,6 +2,10 @@ import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';
2
2
  import { LetContext } from './let.types';
3
3
  import * as i0 from "@angular/core";
4
4
  export class LetDirective {
5
+ set etLet(value) {
6
+ this._context.$implicit = this._context.etLet = value;
7
+ this._updateView();
8
+ }
5
9
  constructor(_viewContainer, templateRef) {
6
10
  this._viewContainer = _viewContainer;
7
11
  this._context = new LetContext();
@@ -9,10 +13,6 @@ export class LetDirective {
9
13
  this._viewRef = null;
10
14
  this._templateRef = templateRef;
11
15
  }
12
- set etLet(value) {
13
- this._context.$implicit = this._context.etLet = value;
14
- this._updateView();
15
- }
16
16
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
17
  static ngTemplateContextGuard(dir, ctx) {
18
18
  return true;
@@ -26,9 +26,9 @@ export class LetDirective {
26
26
  }
27
27
  }
28
28
  }
29
- LetDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.6", ngImport: i0, type: LetDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
30
- LetDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.6", type: LetDirective, isStandalone: true, selector: "[etLet]", inputs: { etLet: "etLet" }, ngImport: i0 });
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.6", ngImport: i0, type: LetDirective, decorators: [{
29
+ LetDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: LetDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
30
+ LetDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0", type: LetDirective, isStandalone: true, selector: "[etLet]", inputs: { etLet: "etLet" }, ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: LetDirective, decorators: [{
32
32
  type: Directive,
33
33
  args: [{
34
34
  selector: '[etLet]',
@@ -37,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.6", ngImpor
37
37
  }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }]; }, propDecorators: { etLet: [{
38
38
  type: Input
39
39
  }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGV0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvbGV0L2xldC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBbUIsS0FBSyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQU16QyxNQUFNLE9BQU8sWUFBWTtJQWF2QixZQUFvQixjQUFnQyxFQUFFLFdBQXVDO1FBQXpFLG1CQUFjLEdBQWQsY0FBYyxDQUFrQjtRQUo1QyxhQUFRLEdBQWtCLElBQUksVUFBVSxFQUFLLENBQUM7UUFDOUMsaUJBQVksR0FBc0MsSUFBSSxDQUFDO1FBQ3ZELGFBQVEsR0FBMEMsSUFBSSxDQUFDO1FBRzdELElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO0lBQ2xDLENBQUM7SUFkRCxJQUNJLEtBQUssQ0FBQyxLQUFRO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUN0RCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQVlELDhEQUE4RDtJQUM5RCxNQUFNLENBQUMsc0JBQXNCLENBQUksR0FBb0IsRUFBRSxHQUFRO1FBQzdELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLFdBQVc7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM1QixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUMxRjtTQUNGO0lBQ0gsQ0FBQzs7eUdBN0JVLFlBQVk7NkZBQVosWUFBWTsyRkFBWixZQUFZO2tCQUp4QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxTQUFTO29CQUNuQixVQUFVLEVBQUUsSUFBSTtpQkFDakI7aUlBR0ssS0FBSztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbWJlZGRlZFZpZXdSZWYsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGV0Q29udGV4dCB9IGZyb20gJy4vbGV0LnR5cGVzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2V0TGV0XScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIExldERpcmVjdGl2ZTxUID0gdW5rbm93bj4ge1xuICBASW5wdXQoKVxuICBzZXQgZXRMZXQodmFsdWU6IFQpIHtcbiAgICB0aGlzLl9jb250ZXh0LiRpbXBsaWNpdCA9IHRoaXMuX2NvbnRleHQuZXRMZXQgPSB2YWx1ZTtcbiAgICB0aGlzLl91cGRhdGVWaWV3KCk7XG4gIH1cblxuICBzdGF0aWMgbmdUZW1wbGF0ZUd1YXJkX25nTGV0OiAnYmluZGluZyc7XG5cbiAgcHJpdmF0ZSBfY29udGV4dDogTGV0Q29udGV4dDxUPiA9IG5ldyBMZXRDb250ZXh0PFQ+KCk7XG4gIHByaXZhdGUgX3RlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxMZXRDb250ZXh0PFQ+PiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF92aWV3UmVmOiBFbWJlZGRlZFZpZXdSZWY8TGV0Q29udGV4dDxUPj4gfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF92aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLCB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8TGV0Q29udGV4dDxUPj4pIHtcbiAgICB0aGlzLl90ZW1wbGF0ZVJlZiA9IHRlbXBsYXRlUmVmO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgc3RhdGljIG5nVGVtcGxhdGVDb250ZXh0R3VhcmQ8VD4oZGlyOiBMZXREaXJlY3RpdmU8VD4sIGN0eDogYW55KTogY3R4IGlzIExldENvbnRleHQ8VD4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlVmlldygpIHtcbiAgICBpZiAoIXRoaXMuX3ZpZXdSZWYpIHtcbiAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIuY2xlYXIoKTtcbiAgICAgIGlmICh0aGlzLl90ZW1wbGF0ZVJlZikge1xuICAgICAgICB0aGlzLl92aWV3UmVmID0gdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5fdGVtcGxhdGVSZWYsIHRoaXMuX2NvbnRleHQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGV0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvbGV0L2xldC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBbUIsS0FBSyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQU16QyxNQUFNLE9BQU8sWUFBWTtJQUN2QixJQUNJLEtBQUssQ0FBQyxLQUFRO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUN0RCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQVFELFlBQW9CLGNBQWdDLEVBQUUsV0FBdUM7UUFBekUsbUJBQWMsR0FBZCxjQUFjLENBQWtCO1FBSjVDLGFBQVEsR0FBa0IsSUFBSSxVQUFVLEVBQUssQ0FBQztRQUM5QyxpQkFBWSxHQUFzQyxJQUFJLENBQUM7UUFDdkQsYUFBUSxHQUEwQyxJQUFJLENBQUM7UUFHN0QsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7SUFDbEMsQ0FBQztJQUVELDhEQUE4RDtJQUM5RCxNQUFNLENBQUMsc0JBQXNCLENBQUksR0FBb0IsRUFBRSxHQUFRO1FBQzdELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLFdBQVc7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM1QixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUMxRjtTQUNGO0lBQ0gsQ0FBQzs7eUdBN0JVLFlBQVk7NkZBQVosWUFBWTsyRkFBWixZQUFZO2tCQUp4QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxTQUFTO29CQUNuQixVQUFVLEVBQUUsSUFBSTtpQkFDakI7aUlBR0ssS0FBSztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbWJlZGRlZFZpZXdSZWYsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGV0Q29udGV4dCB9IGZyb20gJy4vbGV0LnR5cGVzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2V0TGV0XScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIExldERpcmVjdGl2ZTxUID0gdW5rbm93bj4ge1xuICBASW5wdXQoKVxuICBzZXQgZXRMZXQodmFsdWU6IFQpIHtcbiAgICB0aGlzLl9jb250ZXh0LiRpbXBsaWNpdCA9IHRoaXMuX2NvbnRleHQuZXRMZXQgPSB2YWx1ZTtcbiAgICB0aGlzLl91cGRhdGVWaWV3KCk7XG4gIH1cblxuICBzdGF0aWMgbmdUZW1wbGF0ZUd1YXJkX25nTGV0OiAnYmluZGluZyc7XG5cbiAgcHJpdmF0ZSBfY29udGV4dDogTGV0Q29udGV4dDxUPiA9IG5ldyBMZXRDb250ZXh0PFQ+KCk7XG4gIHByaXZhdGUgX3RlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxMZXRDb250ZXh0PFQ+PiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF92aWV3UmVmOiBFbWJlZGRlZFZpZXdSZWY8TGV0Q29udGV4dDxUPj4gfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF92aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLCB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8TGV0Q29udGV4dDxUPj4pIHtcbiAgICB0aGlzLl90ZW1wbGF0ZVJlZiA9IHRlbXBsYXRlUmVmO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgc3RhdGljIG5nVGVtcGxhdGVDb250ZXh0R3VhcmQ8VD4oZGlyOiBMZXREaXJlY3RpdmU8VD4sIGN0eDogYW55KTogY3R4IGlzIExldENvbnRleHQ8VD4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlVmlldygpIHtcbiAgICBpZiAoIXRoaXMuX3ZpZXdSZWYpIHtcbiAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIuY2xlYXIoKTtcbiAgICAgIGlmICh0aGlzLl90ZW1wbGF0ZVJlZikge1xuICAgICAgICB0aGlzLl92aWV3UmVmID0gdGhpcy5fdmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5fdGVtcGxhdGVSZWYsIHRoaXMuX2NvbnRleHQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,68 @@
1
+ import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';
2
+ import { Directive, ElementRef, EventEmitter, inject, Input, NgZone, Output, } from '@angular/core';
3
+ import { debounceTime } from 'rxjs/operators';
4
+ import { ContentObserverService } from '../../services';
5
+ import * as i0 from "@angular/core";
6
+ export class ObserveContentDirective {
7
+ constructor() {
8
+ this._contentObserver = inject(ContentObserverService);
9
+ this._elementRef = inject(ElementRef);
10
+ this._ngZone = inject(NgZone);
11
+ this.event = new EventEmitter();
12
+ this._disabled = false;
13
+ this._debounce = null;
14
+ this._currentSubscription = null;
15
+ }
16
+ get disabled() {
17
+ return this._disabled;
18
+ }
19
+ set disabled(value) {
20
+ this._disabled = coerceBooleanProperty(value);
21
+ this._disabled ? this._unsubscribe() : this._subscribe();
22
+ }
23
+ get debounce() {
24
+ return this._debounce;
25
+ }
26
+ set debounce(value) {
27
+ this._debounce = coerceNumberProperty(value);
28
+ this._subscribe();
29
+ }
30
+ ngAfterContentInit() {
31
+ if (!this._currentSubscription && !this.disabled) {
32
+ this._subscribe();
33
+ }
34
+ }
35
+ ngOnDestroy() {
36
+ this._unsubscribe();
37
+ }
38
+ _subscribe() {
39
+ this._unsubscribe();
40
+ const stream = this._contentObserver.observe(this._elementRef);
41
+ this._ngZone.runOutsideAngular(() => {
42
+ this._currentSubscription = (this.debounce ? stream.pipe(debounceTime(this.debounce)) : stream).subscribe(this.event);
43
+ });
44
+ }
45
+ _unsubscribe() {
46
+ this._currentSubscription?.unsubscribe();
47
+ }
48
+ }
49
+ ObserveContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ObserveContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
50
+ ObserveContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0", type: ObserveContentDirective, isStandalone: true, selector: "[etObserveContent]", inputs: { disabled: ["etObserveContentDisabled", "disabled"], debounce: ["etObserveContentDebounce", "debounce"] }, outputs: { event: "etObserveContent" }, exportAs: ["etObserveContent"], ngImport: i0 });
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ObserveContentDirective, decorators: [{
52
+ type: Directive,
53
+ args: [{
54
+ selector: '[etObserveContent]',
55
+ exportAs: 'etObserveContent',
56
+ standalone: true,
57
+ }]
58
+ }], propDecorators: { event: [{
59
+ type: Output,
60
+ args: ['etObserveContent']
61
+ }], disabled: [{
62
+ type: Input,
63
+ args: ['etObserveContentDisabled']
64
+ }], debounce: [{
65
+ type: Input,
66
+ args: ['etObserveContentDebounce']
67
+ }] } });
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JzZXJ2ZS1jb250ZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvb2JzZXJ2ZS1jb250ZW50L29ic2VydmUtY29udGVudC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG9CQUFvQixFQUE2QixNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFFTixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQU94RCxNQUFNLE9BQU8sdUJBQXVCO0lBTHBDO1FBTVUscUJBQWdCLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDbEQsZ0JBQVcsR0FBRyxNQUFNLENBQTBCLFVBQVUsQ0FBQyxDQUFDO1FBQzFELFlBQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFHeEIsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFDO1FBVTlDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFVbEIsY0FBUyxHQUFrQixJQUFJLENBQUM7UUFFaEMseUJBQW9CLEdBQXdCLElBQUksQ0FBQztLQTBCMUQ7SUE5Q0MsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFtQjtRQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzNELENBQUM7SUFHRCxJQUNJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLEtBQWtCO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFLRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDaEQsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVPLFVBQVU7UUFDaEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRS9ELElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQ3ZHLElBQUksQ0FBQyxLQUFLLENBQ1gsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQzNDLENBQUM7O29IQXJEVSx1QkFBdUI7d0dBQXZCLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQUxuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs4QkFPVSxLQUFLO3NCQURiLE1BQU07dUJBQUMsa0JBQWtCO2dCQUl0QixRQUFRO3NCQURYLEtBQUs7dUJBQUMsMEJBQTBCO2dCQVc3QixRQUFRO3NCQURYLEtBQUs7dUJBQUMsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSwgQm9vbGVhbklucHV0LCBOdW1iZXJJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgaW5qZWN0LFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IENvbnRlbnRPYnNlcnZlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tldE9ic2VydmVDb250ZW50XScsXG4gIGV4cG9ydEFzOiAnZXRPYnNlcnZlQ29udGVudCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIE9ic2VydmVDb250ZW50RGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfY29udGVudE9ic2VydmVyID0gaW5qZWN0KENvbnRlbnRPYnNlcnZlclNlcnZpY2UpO1xuICBwcml2YXRlIF9lbGVtZW50UmVmID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSBfbmdab25lID0gaW5qZWN0KE5nWm9uZSk7XG5cbiAgQE91dHB1dCgnZXRPYnNlcnZlQ29udGVudCcpXG4gIHJlYWRvbmx5IGV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxNdXRhdGlvblJlY29yZFtdPigpO1xuXG4gIEBJbnB1dCgnZXRPYnNlcnZlQ29udGVudERpc2FibGVkJylcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLl9kaXNhYmxlZCA/IHRoaXMuX3Vuc3Vic2NyaWJlKCkgOiB0aGlzLl9zdWJzY3JpYmUoKTtcbiAgfVxuICBwcml2YXRlIF9kaXNhYmxlZCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgnZXRPYnNlcnZlQ29udGVudERlYm91bmNlJylcbiAgZ2V0IGRlYm91bmNlKCk6IG51bWJlciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9kZWJvdW5jZTtcbiAgfVxuICBzZXQgZGVib3VuY2UodmFsdWU6IE51bWJlcklucHV0KSB7XG4gICAgdGhpcy5fZGVib3VuY2UgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy5fc3Vic2NyaWJlKCk7XG4gIH1cbiAgcHJpdmF0ZSBfZGVib3VuY2U6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgX2N1cnJlbnRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuX2N1cnJlbnRTdWJzY3JpcHRpb24gJiYgIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuX3N1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX3Vuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIF9zdWJzY3JpYmUoKSB7XG4gICAgdGhpcy5fdW5zdWJzY3JpYmUoKTtcbiAgICBjb25zdCBzdHJlYW0gPSB0aGlzLl9jb250ZW50T2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLl9lbGVtZW50UmVmKTtcblxuICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICB0aGlzLl9jdXJyZW50U3Vic2NyaXB0aW9uID0gKHRoaXMuZGVib3VuY2UgPyBzdHJlYW0ucGlwZShkZWJvdW5jZVRpbWUodGhpcy5kZWJvdW5jZSkpIDogc3RyZWFtKS5zdWJzY3JpYmUoXG4gICAgICAgIHRoaXMuZXZlbnQsXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdW5zdWJzY3JpYmUoKSB7XG4gICAgdGhpcy5fY3VycmVudFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './observe-content.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvb2JzZXJ2ZS1jb250ZW50L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vb2JzZXJ2ZS1jb250ZW50LmRpcmVjdGl2ZSc7XG4iXX0=
@@ -0,0 +1,68 @@
1
+ import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';
2
+ import { Directive, ElementRef, EventEmitter, inject, Input, NgZone, Output, } from '@angular/core';
3
+ import { debounceTime } from 'rxjs';
4
+ import { ResizeObserverService } from '../../services';
5
+ import * as i0 from "@angular/core";
6
+ export class ObserveResizeDirective {
7
+ constructor() {
8
+ this._resizeObserver = inject(ResizeObserverService);
9
+ this._elementRef = inject(ElementRef);
10
+ this._ngZone = inject(NgZone);
11
+ this.event = new EventEmitter();
12
+ this._disabled = false;
13
+ this._debounce = null;
14
+ this._currentSubscription = null;
15
+ }
16
+ get disabled() {
17
+ return this._disabled;
18
+ }
19
+ set disabled(value) {
20
+ this._disabled = coerceBooleanProperty(value);
21
+ this._disabled ? this._unsubscribe() : this._subscribe();
22
+ }
23
+ get debounce() {
24
+ return this._debounce;
25
+ }
26
+ set debounce(value) {
27
+ this._debounce = coerceNumberProperty(value);
28
+ this._subscribe();
29
+ }
30
+ ngAfterContentInit() {
31
+ if (!this._currentSubscription && !this.disabled) {
32
+ this._subscribe();
33
+ }
34
+ }
35
+ ngOnDestroy() {
36
+ this._unsubscribe();
37
+ }
38
+ _subscribe() {
39
+ this._unsubscribe();
40
+ const stream = this._resizeObserver.observe(this._elementRef);
41
+ this._ngZone.runOutsideAngular(() => {
42
+ this._currentSubscription = (this.debounce ? stream.pipe(debounceTime(this.debounce)) : stream).subscribe(this.event);
43
+ });
44
+ }
45
+ _unsubscribe() {
46
+ this._currentSubscription?.unsubscribe();
47
+ }
48
+ }
49
+ ObserveResizeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ObserveResizeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
50
+ ObserveResizeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0", type: ObserveResizeDirective, isStandalone: true, selector: "[etObserveResize]", inputs: { disabled: ["etObserveResizeDisabled", "disabled"], debounce: ["etObserveResizeDebounce", "debounce"] }, outputs: { event: "etObserveResize" }, exportAs: ["etObserveResize"], ngImport: i0 });
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ObserveResizeDirective, decorators: [{
52
+ type: Directive,
53
+ args: [{
54
+ selector: '[etObserveResize]',
55
+ exportAs: 'etObserveResize',
56
+ standalone: true,
57
+ }]
58
+ }], propDecorators: { event: [{
59
+ type: Output,
60
+ args: ['etObserveResize']
61
+ }], disabled: [{
62
+ type: Input,
63
+ args: ['etObserveResizeDisabled']
64
+ }], debounce: [{
65
+ type: Input,
66
+ args: ['etObserveResizeDebounce']
67
+ }] } });
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JzZXJ2ZS1yZXNpemUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9vYnNlcnZlLXJlc2l6ZS9vYnNlcnZlLXJlc2l6ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG9CQUFvQixFQUE2QixNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFFTixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFnQixZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBT3ZELE1BQU0sT0FBTyxzQkFBc0I7SUFMbkM7UUFNVSxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ2hELGdCQUFXLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQztRQUMxRCxZQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBR3hCLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBeUIsQ0FBQztRQVVuRCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBVWxCLGNBQVMsR0FBa0IsSUFBSSxDQUFDO1FBRWhDLHlCQUFvQixHQUF3QixJQUFJLENBQUM7S0EwQjFEO0lBOUNDLElBQ0ksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsS0FBbUI7UUFDOUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUMzRCxDQUFDO0lBR0QsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFrQjtRQUM3QixJQUFJLENBQUMsU0FBUyxHQUFHLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBS0Qsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2hELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFTyxVQUFVO1FBQ2hCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFOUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDbEMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsQ0FDdkcsSUFBSSxDQUFDLEtBQUssQ0FDWCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sWUFBWTtRQUNsQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDM0MsQ0FBQzs7bUhBckRVLHNCQUFzQjt1R0FBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBTGxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzhCQU9VLEtBQUs7c0JBRGIsTUFBTTt1QkFBQyxpQkFBaUI7Z0JBSXJCLFFBQVE7c0JBRFgsS0FBSzt1QkFBQyx5QkFBeUI7Z0JBVzVCLFFBQVE7c0JBRFgsS0FBSzt1QkFBQyx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHksIGNvZXJjZU51bWJlclByb3BlcnR5LCBCb29sZWFuSW5wdXQsIE51bWJlcklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSZXNpemVPYnNlcnZlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tldE9ic2VydmVSZXNpemVdJyxcbiAgZXhwb3J0QXM6ICdldE9ic2VydmVSZXNpemUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBPYnNlcnZlUmVzaXplRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXIgPSBpbmplY3QoUmVzaXplT2JzZXJ2ZXJTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBfZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG4gIHByaXZhdGUgX25nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuXG4gIEBPdXRwdXQoJ2V0T2JzZXJ2ZVJlc2l6ZScpXG4gIHJlYWRvbmx5IGV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxSZXNpemVPYnNlcnZlckVudHJ5W10+KCk7XG5cbiAgQElucHV0KCdldE9ic2VydmVSZXNpemVEaXNhYmxlZCcpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy5fZGlzYWJsZWQgPyB0aGlzLl91bnN1YnNjcmliZSgpIDogdGhpcy5fc3Vic2NyaWJlKCk7XG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcblxuICBASW5wdXQoJ2V0T2JzZXJ2ZVJlc2l6ZURlYm91bmNlJylcbiAgZ2V0IGRlYm91bmNlKCk6IG51bWJlciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9kZWJvdW5jZTtcbiAgfVxuICBzZXQgZGVib3VuY2UodmFsdWU6IE51bWJlcklucHV0KSB7XG4gICAgdGhpcy5fZGVib3VuY2UgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy5fc3Vic2NyaWJlKCk7XG4gIH1cbiAgcHJpdmF0ZSBfZGVib3VuY2U6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgX2N1cnJlbnRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuX2N1cnJlbnRTdWJzY3JpcHRpb24gJiYgIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuX3N1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX3Vuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIF9zdWJzY3JpYmUoKSB7XG4gICAgdGhpcy5fdW5zdWJzY3JpYmUoKTtcbiAgICBjb25zdCBzdHJlYW0gPSB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuX2VsZW1lbnRSZWYpO1xuXG4gICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIHRoaXMuX2N1cnJlbnRTdWJzY3JpcHRpb24gPSAodGhpcy5kZWJvdW5jZSA/IHN0cmVhbS5waXBlKGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlKSkgOiBzdHJlYW0pLnN1YnNjcmliZShcbiAgICAgICAgdGhpcy5ldmVudCxcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF91bnN1YnNjcmliZSgpIHtcbiAgICB0aGlzLl9jdXJyZW50U3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './observe-resize.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvb2JzZXJ2ZS1yZXNpemUvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9vYnNlcnZlLXJlc2l6ZS5kaXJlY3RpdmUnO1xuIl19
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export const OBSERVE_SCROLL_STATE = new InjectionToken('OBSERVE_SCROLL_STATE');
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JzZXJ2ZS1zY3JvbGwtc3RhdGUuY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9vYnNlcnZlLXNjcm9sbC1zdGF0ZS9vYnNlcnZlLXNjcm9sbC1zdGF0ZS5jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLGNBQWMsQ0FBOEIsc0JBQXNCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZlU2Nyb2xsU3RhdGVEaXJlY3RpdmUgfSBmcm9tICcuL29ic2VydmUtc2Nyb2xsLXN0YXRlLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBjb25zdCBPQlNFUlZFX1NDUk9MTF9TVEFURSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxPYnNlcnZlU2Nyb2xsU3RhdGVEaXJlY3RpdmU+KCdPQlNFUlZFX1NDUk9MTF9TVEFURScpO1xuIl19