@taiga-ui/addon-mobile 2.87.0 → 2.89.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 (87) hide show
  1. package/bundles/taiga-ui-addon-mobile-components-pull-to-refresh.umd.js +229 -110
  2. package/bundles/taiga-ui-addon-mobile-components-pull-to-refresh.umd.js.map +1 -1
  3. package/bundles/taiga-ui-addon-mobile-components-pull-to-refresh.umd.min.js +1 -1
  4. package/bundles/taiga-ui-addon-mobile-components-pull-to-refresh.umd.min.js.map +1 -1
  5. package/bundles/taiga-ui-addon-mobile-components-sheet.umd.js +11 -3
  6. package/bundles/taiga-ui-addon-mobile-components-sheet.umd.js.map +1 -1
  7. package/bundles/taiga-ui-addon-mobile-components-sheet.umd.min.js +1 -1
  8. package/bundles/taiga-ui-addon-mobile-components-sheet.umd.min.js.map +1 -1
  9. package/bundles/taiga-ui-addon-mobile-directives-elastic-sticky.umd.js +14 -27
  10. package/bundles/taiga-ui-addon-mobile-directives-elastic-sticky.umd.js.map +1 -1
  11. package/bundles/taiga-ui-addon-mobile-directives-elastic-sticky.umd.min.js +1 -1
  12. package/bundles/taiga-ui-addon-mobile-directives-elastic-sticky.umd.min.js.map +1 -1
  13. package/bundles/taiga-ui-addon-mobile.umd.js +4 -12
  14. package/bundles/taiga-ui-addon-mobile.umd.js.map +1 -1
  15. package/bundles/taiga-ui-addon-mobile.umd.min.js +1 -1
  16. package/components/pull-to-refresh/index.d.ts +2 -0
  17. package/components/pull-to-refresh/loader-android/loader-android.component.d.ts +10 -2
  18. package/components/pull-to-refresh/loader-ios/loader-ios.component.d.ts +7 -1
  19. package/components/pull-to-refresh/pull-to-refresh.component.d.ts +10 -7
  20. package/components/pull-to-refresh/pull-to-refresh.providers.d.ts +15 -6
  21. package/components/pull-to-refresh/pull-to-refresh.service.d.ts +14 -0
  22. package/components/pull-to-refresh/pull-to-refresh.tokens.d.ts +5 -0
  23. package/components/pull-to-refresh/taiga-ui-addon-mobile-components-pull-to-refresh.metadata.json +1 -1
  24. package/components/sheet/sheet.service.d.ts +2 -1
  25. package/components/sheet/taiga-ui-addon-mobile-components-sheet.metadata.json +1 -1
  26. package/directives/elastic-sticky/elastic-sticky.service.d.ts +1 -2
  27. package/directives/elastic-sticky/taiga-ui-addon-mobile-directives-elastic-sticky.metadata.json +1 -1
  28. package/esm2015/components/pull-to-refresh/index.js +3 -1
  29. package/esm2015/components/pull-to-refresh/loader-android/loader-android.component.js +39 -16
  30. package/esm2015/components/pull-to-refresh/loader-ios/loader-ios.component.js +22 -13
  31. package/esm2015/components/pull-to-refresh/pull-to-refresh.component.js +46 -30
  32. package/esm2015/components/pull-to-refresh/pull-to-refresh.module.js +4 -3
  33. package/esm2015/components/pull-to-refresh/pull-to-refresh.providers.js +22 -27
  34. package/esm2015/components/pull-to-refresh/pull-to-refresh.service.js +52 -0
  35. package/esm2015/components/pull-to-refresh/pull-to-refresh.tokens.js +8 -0
  36. package/esm2015/components/sheet/sheet.service.js +16 -5
  37. package/esm2015/directives/elastic-sticky/elastic-sticky.service.js +12 -25
  38. package/esm2015/index.js +1 -2
  39. package/esm5/components/pull-to-refresh/index.js +3 -1
  40. package/esm5/components/pull-to-refresh/loader-android/loader-android.component.js +51 -16
  41. package/esm5/components/pull-to-refresh/loader-ios/loader-ios.component.js +26 -13
  42. package/esm5/components/pull-to-refresh/pull-to-refresh.component.js +48 -36
  43. package/esm5/components/pull-to-refresh/pull-to-refresh.module.js +4 -3
  44. package/esm5/components/pull-to-refresh/pull-to-refresh.providers.js +22 -32
  45. package/esm5/components/pull-to-refresh/pull-to-refresh.service.js +75 -0
  46. package/esm5/components/pull-to-refresh/pull-to-refresh.tokens.js +8 -0
  47. package/esm5/components/sheet/sheet.service.js +16 -5
  48. package/esm5/directives/elastic-sticky/elastic-sticky.service.js +13 -27
  49. package/esm5/index.js +1 -2
  50. package/fesm2015/taiga-ui-addon-mobile-components-pull-to-refresh.js +176 -90
  51. package/fesm2015/taiga-ui-addon-mobile-components-pull-to-refresh.js.map +1 -1
  52. package/fesm2015/taiga-ui-addon-mobile-components-sheet.js +12 -4
  53. package/fesm2015/taiga-ui-addon-mobile-components-sheet.js.map +1 -1
  54. package/fesm2015/taiga-ui-addon-mobile-directives-elastic-sticky.js +11 -24
  55. package/fesm2015/taiga-ui-addon-mobile-directives-elastic-sticky.js.map +1 -1
  56. package/fesm2015/taiga-ui-addon-mobile.js +0 -1
  57. package/fesm2015/taiga-ui-addon-mobile.js.map +1 -1
  58. package/fesm5/taiga-ui-addon-mobile-components-pull-to-refresh.js +226 -110
  59. package/fesm5/taiga-ui-addon-mobile-components-pull-to-refresh.js.map +1 -1
  60. package/fesm5/taiga-ui-addon-mobile-components-sheet.js +12 -4
  61. package/fesm5/taiga-ui-addon-mobile-components-sheet.js.map +1 -1
  62. package/fesm5/taiga-ui-addon-mobile-directives-elastic-sticky.js +12 -26
  63. package/fesm5/taiga-ui-addon-mobile-directives-elastic-sticky.js.map +1 -1
  64. package/fesm5/taiga-ui-addon-mobile.js +0 -1
  65. package/fesm5/taiga-ui-addon-mobile.js.map +1 -1
  66. package/index.d.ts +0 -1
  67. package/package.json +4 -4
  68. package/taiga-ui-addon-mobile.metadata.json +1 -1
  69. package/bundles/taiga-ui-addon-mobile-tokens.umd.js +0 -16
  70. package/bundles/taiga-ui-addon-mobile-tokens.umd.js.map +0 -1
  71. package/bundles/taiga-ui-addon-mobile-tokens.umd.min.js +0 -2
  72. package/bundles/taiga-ui-addon-mobile-tokens.umd.min.js.map +0 -1
  73. package/esm2015/tokens/index.js +0 -2
  74. package/esm2015/tokens/loaded.js +0 -6
  75. package/esm2015/tokens/taiga-ui-addon-mobile-tokens.js +0 -5
  76. package/esm5/tokens/index.js +0 -2
  77. package/esm5/tokens/loaded.js +0 -6
  78. package/esm5/tokens/taiga-ui-addon-mobile-tokens.js +0 -5
  79. package/fesm2015/taiga-ui-addon-mobile-tokens.js +0 -13
  80. package/fesm2015/taiga-ui-addon-mobile-tokens.js.map +0 -1
  81. package/fesm5/taiga-ui-addon-mobile-tokens.js +0 -13
  82. package/fesm5/taiga-ui-addon-mobile-tokens.js.map +0 -1
  83. package/tokens/index.d.ts +0 -1
  84. package/tokens/loaded.d.ts +0 -3
  85. package/tokens/package.json +0 -13
  86. package/tokens/taiga-ui-addon-mobile-tokens.d.ts +0 -4
  87. package/tokens/taiga-ui-addon-mobile-tokens.metadata.json +0 -1
@@ -1,43 +1,78 @@
1
- import { __decorate } from "tslib";
2
- import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';
3
- var HIDDEN_DISTANCE = 2;
1
+ import { __decorate, __param } from "tslib";
2
+ import { ChangeDetectionStrategy, Component, HostBinding, Inject } from '@angular/core';
3
+ import { POLYMORPHEUS_CONTEXT, PolymorpheusComponent } from '@tinkoff/ng-polymorpheus';
4
+ import { MICRO_OFFSET } from '../pull-to-refresh.service';
5
+ import { TUI_PULL_TO_REFRESH_THRESHOLD } from '../pull-to-refresh.tokens';
4
6
  var ROTATE_X_DEFAULT = 180;
5
7
  var ROTATE_X_MAX = 500;
6
8
  var ROTATE_X_MULTIPLIER = 2.3;
7
9
  var TuiMobileLoaderAndroidComponent = /** @class */ (function () {
8
- function TuiMobileLoaderAndroidComponent() {
9
- this.pulled = 0;
10
+ function TuiMobileLoaderAndroidComponent(context, threshold) {
11
+ this.context = context;
12
+ this.threshold = threshold;
10
13
  }
11
14
  Object.defineProperty(TuiMobileLoaderAndroidComponent.prototype, "transform", {
12
15
  get: function () {
13
- var rotateX = Math.min(ROTATE_X_DEFAULT + this.pulled * ROTATE_X_MULTIPLIER, ROTATE_X_MAX);
16
+ var rotateX = Math.min(ROTATE_X_DEFAULT + this.percent * ROTATE_X_MULTIPLIER, ROTATE_X_MAX);
14
17
  return "rotate(" + rotateX + " 0 0)";
15
18
  },
16
19
  enumerable: true,
17
20
  configurable: true
18
21
  });
19
- Object.defineProperty(TuiMobileLoaderAndroidComponent.prototype, "hidden", {
22
+ Object.defineProperty(TuiMobileLoaderAndroidComponent.prototype, "percent", {
20
23
  get: function () {
21
- return this.pulled < HIDDEN_DISTANCE;
24
+ return (this.context.$implicit * 100) / this.threshold;
22
25
  },
23
26
  enumerable: true,
24
27
  configurable: true
25
28
  });
29
+ Object.defineProperty(TuiMobileLoaderAndroidComponent.prototype, "opacity", {
30
+ get: function () {
31
+ return this.context.$implicit / (this.threshold * 1.5);
32
+ },
33
+ enumerable: true,
34
+ configurable: true
35
+ });
36
+ Object.defineProperty(TuiMobileLoaderAndroidComponent.prototype, "dropped", {
37
+ get: function () {
38
+ return (this.context.$implicit <= MICRO_OFFSET ||
39
+ this.context.$implicit === this.threshold);
40
+ },
41
+ enumerable: true,
42
+ configurable: true
43
+ });
44
+ Object.defineProperty(TuiMobileLoaderAndroidComponent.prototype, "hostTransform", {
45
+ get: function () {
46
+ return "translateY(" + Math.min(this.context.$implicit, this.threshold * 1.5) + "px)";
47
+ },
48
+ enumerable: true,
49
+ configurable: true
50
+ });
51
+ TuiMobileLoaderAndroidComponent.ctorParameters = function () { return [
52
+ { type: undefined, decorators: [{ type: Inject, args: [POLYMORPHEUS_CONTEXT,] }] },
53
+ { type: Number, decorators: [{ type: Inject, args: [TUI_PULL_TO_REFRESH_THRESHOLD,] }] }
54
+ ]; };
55
+ __decorate([
56
+ HostBinding('class._visible')
57
+ ], TuiMobileLoaderAndroidComponent.prototype, "percent", null);
26
58
  __decorate([
27
- Input()
28
- ], TuiMobileLoaderAndroidComponent.prototype, "pulled", void 0);
59
+ HostBinding('class._dropped')
60
+ ], TuiMobileLoaderAndroidComponent.prototype, "dropped", null);
29
61
  __decorate([
30
- HostBinding('class._hidden')
31
- ], TuiMobileLoaderAndroidComponent.prototype, "hidden", null);
62
+ HostBinding('style.transform')
63
+ ], TuiMobileLoaderAndroidComponent.prototype, "hostTransform", null);
32
64
  TuiMobileLoaderAndroidComponent = __decorate([
33
65
  Component({
34
66
  selector: 'tui-mobile-android-loader',
35
- template: "<svg\n *ngIf=\"pulled !== 100; else loading\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.transform]=\"transform\"\n>\n <defs>\n <mask id=\"mask-1\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"white\"\n />\n </mask>\n </defs>\n <g mask=\"url(#mask-1)\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"black\"\n />\n </g>\n</svg>\n<ng-template #loading>\n <svg\n viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"t-loading\"\n >\n <circle\n cx=\"50\"\n cy=\"50\"\n r=\"50\"\n stroke-dasharray=\"314\"\n class=\"t-circle\"\n ></circle>\n </svg>\n</ng-template>\n",
67
+ template: "<div class=\"t-wrapper\">\n <svg\n *ngIf=\"percent !== 100; else loading\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.transform]=\"transform\"\n [style.opacity]=\"opacity\"\n >\n <defs>\n <mask id=\"mask-1\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"white\"\n />\n </mask>\n </defs>\n <g mask=\"url(#mask-1)\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M21 12C21 7.03 16.97 3 12 3C7.03 3 3 7.03 3 12C3 16.97 7.03 21 12 21C14.06 21 15.96 20.3 17.48 19.14L16.06 17.7C14.91 18.51 13.51 19 12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12H16L20 16L24 12H21Z\"\n fill=\"black\"\n />\n </g>\n </svg>\n</div>\n<ng-template #loading>\n <svg\n viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"t-loading\"\n >\n <circle\n cx=\"50\"\n cy=\"50\"\n r=\"50\"\n stroke-dasharray=\"314\"\n class=\"t-circle\"\n ></circle>\n </svg>\n</ng-template>\n",
36
68
  changeDetection: ChangeDetectionStrategy.OnPush,
37
- styles: [":host{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);display:flex;height:2.25rem;width:2.25rem;background-color:#fff;border-radius:6.25rem;align-items:center;justify-content:center}:host._hidden{visibility:hidden;transition:none}.t-loading{display:block;width:1rem;border-radius:100%;animation:3s linear infinite tuiLoaderRotate}.t-circle{fill:none;stroke:var(--tui-text-01);stroke-width:1.5rem;animation:3s linear infinite tuiLoaderDashOffset}"]
38
- })
69
+ styles: [":host{transition-property:opacity;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:-webkit-sticky;position:sticky;top:0;z-index:1;display:block;height:0;opacity:0}:host._visible{opacity:1}:host._dropped{transition:transform var(--tui-duration) cubic-bezier(.4,0,.2,1),opacity var(--tui-duration) var(--tui-duration)}.t-wrapper{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);position:absolute;top:-2.5rem;left:50%;display:flex;height:2.25rem;width:2.25rem;background-color:var(--tui-secondary);border-radius:6.25rem;align-items:center;justify-content:center;margin-left:-1.125rem}.t-loading{display:block;width:1rem;border-radius:100%;animation:3s linear infinite tuiLoaderRotate}.t-circle{fill:none;stroke:var(--tui-text-01);stroke-width:1.5rem;animation:3s linear infinite tuiLoaderDashOffset}@keyframes tuiLoaderDashOffset{0%,100%{stroke-dashoffset:-66}50%{stroke-dashoffset:-314}}@keyframes tuiLoaderRotate{0%{transform:rotate(0)}50%{transform:rotate(1turn)}100%{transform:rotate(3turn)}}"]
70
+ }),
71
+ __param(0, Inject(POLYMORPHEUS_CONTEXT)),
72
+ __param(1, Inject(TUI_PULL_TO_REFRESH_THRESHOLD))
39
73
  ], TuiMobileLoaderAndroidComponent);
40
74
  return TuiMobileLoaderAndroidComponent;
41
75
  }());
42
76
  export { TuiMobileLoaderAndroidComponent };
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWFuZHJvaWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2FkZG9uLW1vYmlsZS9jb21wb25lbnRzL3B1bGwtdG8tcmVmcmVzaC8iLCJzb3VyY2VzIjpbImxvYWRlci1hbmRyb2lkL2xvYWRlci1hbmRyb2lkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXJGLElBQU0sZUFBZSxHQUFHLENBQUMsQ0FBQztBQUMxQixJQUFNLGdCQUFnQixHQUFHLEdBQUcsQ0FBQztBQUM3QixJQUFNLFlBQVksR0FBRyxHQUFHLENBQUM7QUFDekIsSUFBTSxtQkFBbUIsR0FBRyxHQUFHLENBQUM7QUFRaEM7SUFBQTtRQUVJLFdBQU0sR0FBRyxDQUFDLENBQUM7SUFlZixDQUFDO0lBYkcsc0JBQUksc0RBQVM7YUFBYjtZQUNJLElBQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQ3BCLGdCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsbUJBQW1CLEVBQ3BELFlBQVksQ0FDZixDQUFDO1lBRUYsT0FBTyxZQUFVLE9BQU8sVUFBTyxDQUFDO1FBQ3BDLENBQUM7OztPQUFBO0lBR0Qsc0JBQUksbURBQU07YUFBVjtZQUNJLE9BQU8sSUFBSSxDQUFDLE1BQU0sR0FBRyxlQUFlLENBQUM7UUFDekMsQ0FBQzs7O09BQUE7SUFkRDtRQURDLEtBQUssRUFBRTttRUFDRztJQVlYO1FBREMsV0FBVyxDQUFDLGVBQWUsQ0FBQztpRUFHNUI7SUFoQlEsK0JBQStCO1FBTjNDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSwyQkFBMkI7WUFDckMsMjZDQUE2QztZQUU3QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7U0FDbEQsQ0FBQztPQUNXLCtCQUErQixDQWlCM0M7SUFBRCxzQ0FBQztDQUFBLEFBakJELElBaUJDO1NBakJZLCtCQUErQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuY29uc3QgSElEREVOX0RJU1RBTkNFID0gMjtcbmNvbnN0IFJPVEFURV9YX0RFRkFVTFQgPSAxODA7XG5jb25zdCBST1RBVEVfWF9NQVggPSA1MDA7XG5jb25zdCBST1RBVEVfWF9NVUxUSVBMSUVSID0gMi4zO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1tb2JpbGUtYW5kcm9pZC1sb2FkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9sb2FkZXItYW5kcm9pZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9sb2FkZXItYW5kcm9pZC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aU1vYmlsZUxvYWRlckFuZHJvaWRDb21wb25lbnQge1xuICAgIEBJbnB1dCgpXG4gICAgcHVsbGVkID0gMDtcblxuICAgIGdldCB0cmFuc2Zvcm0oKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3Qgcm90YXRlWCA9IE1hdGgubWluKFxuICAgICAgICAgICAgUk9UQVRFX1hfREVGQVVMVCArIHRoaXMucHVsbGVkICogUk9UQVRFX1hfTVVMVElQTElFUixcbiAgICAgICAgICAgIFJPVEFURV9YX01BWCxcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gYHJvdGF0ZSgke3JvdGF0ZVh9IDAgMClgO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX2hpZGRlbicpXG4gICAgZ2V0IGhpZGRlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHVsbGVkIDwgSElEREVOX0RJU1RBTkNFO1xuICAgIH1cbn1cbiJdfQ==
77
+ export var TUI_ANDROID_LOADER = new PolymorpheusComponent(TuiMobileLoaderAndroidComponent);
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWFuZHJvaWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2FkZG9uLW1vYmlsZS9jb21wb25lbnRzL3B1bGwtdG8tcmVmcmVzaC8iLCJzb3VyY2VzIjpbImxvYWRlci1hbmRyb2lkL2xvYWRlci1hbmRyb2lkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXRGLE9BQU8sRUFBQyxvQkFBb0IsRUFBRSxxQkFBcUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRXJGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUV4RSxJQUFNLGdCQUFnQixHQUFHLEdBQUcsQ0FBQztBQUM3QixJQUFNLFlBQVksR0FBRyxHQUFHLENBQUM7QUFDekIsSUFBTSxtQkFBbUIsR0FBRyxHQUFHLENBQUM7QUFRaEM7SUFDSSx5Q0FFcUIsT0FBdUMsRUFDQSxTQUFpQjtRQUR4RCxZQUFPLEdBQVAsT0FBTyxDQUFnQztRQUNBLGNBQVMsR0FBVCxTQUFTLENBQVE7SUFDMUUsQ0FBQztJQUVKLHNCQUFJLHNEQUFTO2FBQWI7WUFDSSxJQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUNwQixnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLG1CQUFtQixFQUNyRCxZQUFZLENBQ2YsQ0FBQztZQUVGLE9BQU8sWUFBVSxPQUFPLFVBQU8sQ0FBQztRQUNwQyxDQUFDOzs7T0FBQTtJQUdELHNCQUFJLG9EQUFPO2FBQVg7WUFDSSxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUMzRCxDQUFDOzs7T0FBQTtJQUVELHNCQUFJLG9EQUFPO2FBQVg7WUFDSSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUMzRCxDQUFDOzs7T0FBQTtJQUdELHNCQUFJLG9EQUFPO2FBQVg7WUFDSSxPQUFPLENBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLElBQUksWUFBWTtnQkFDdEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FDNUMsQ0FBQztRQUNOLENBQUM7OztPQUFBO0lBR0Qsc0JBQUksMERBQWE7YUFBakI7WUFDSSxPQUFPLGdCQUFjLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsUUFBSyxDQUFDO1FBQ3JGLENBQUM7OztPQUFBOztnREFsQ0ksTUFBTSxTQUFDLG9CQUFvQjs2Q0FFM0IsTUFBTSxTQUFDLDZCQUE2Qjs7SUFhekM7UUFEQyxXQUFXLENBQUMsZ0JBQWdCLENBQUM7a0VBRzdCO0lBT0Q7UUFEQyxXQUFXLENBQUMsZ0JBQWdCLENBQUM7a0VBTTdCO0lBR0Q7UUFEQyxXQUFXLENBQUMsaUJBQWlCLENBQUM7d0VBRzlCO0lBcENRLCtCQUErQjtRQU4zQyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsMkJBQTJCO1lBQ3JDLG9tREFBNkM7WUFFN0MsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O1NBQ2xELENBQUM7UUFHTyxXQUFBLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO1FBRTVCLFdBQUEsTUFBTSxDQUFDLDZCQUE2QixDQUFDLENBQUE7T0FKakMsK0JBQStCLENBcUMzQztJQUFELHNDQUFDO0NBQUEsQUFyQ0QsSUFxQ0M7U0FyQ1ksK0JBQStCO0FBdUM1QyxNQUFNLENBQUMsSUFBTSxrQkFBa0IsR0FBRyxJQUFJLHFCQUFxQixDQUN2RCwrQkFBK0IsQ0FDbEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUNvbnRleHRXaXRoSW1wbGljaXR9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtQT0xZTU9SUEhFVVNfQ09OVEVYVCwgUG9seW1vcnBoZXVzQ29tcG9uZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge01JQ1JPX09GRlNFVH0gZnJvbSAnLi4vcHVsbC10by1yZWZyZXNoLnNlcnZpY2UnO1xuaW1wb3J0IHtUVUlfUFVMTF9UT19SRUZSRVNIX1RIUkVTSE9MRH0gZnJvbSAnLi4vcHVsbC10by1yZWZyZXNoLnRva2Vucyc7XG5cbmNvbnN0IFJPVEFURV9YX0RFRkFVTFQgPSAxODA7XG5jb25zdCBST1RBVEVfWF9NQVggPSA1MDA7XG5jb25zdCBST1RBVEVfWF9NVUxUSVBMSUVSID0gMi4zO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1tb2JpbGUtYW5kcm9pZC1sb2FkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9sb2FkZXItYW5kcm9pZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9sb2FkZXItYW5kcm9pZC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aU1vYmlsZUxvYWRlckFuZHJvaWRDb21wb25lbnQge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFBPTFlNT1JQSEVVU19DT05URVhUKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRleHQ6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8bnVtYmVyPixcbiAgICAgICAgQEluamVjdChUVUlfUFVMTF9UT19SRUZSRVNIX1RIUkVTSE9MRCkgcHJpdmF0ZSByZWFkb25seSB0aHJlc2hvbGQ6IG51bWJlcixcbiAgICApIHt9XG5cbiAgICBnZXQgdHJhbnNmb3JtKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHJvdGF0ZVggPSBNYXRoLm1pbihcbiAgICAgICAgICAgIFJPVEFURV9YX0RFRkFVTFQgKyB0aGlzLnBlcmNlbnQgKiBST1RBVEVfWF9NVUxUSVBMSUVSLFxuICAgICAgICAgICAgUk9UQVRFX1hfTUFYLFxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiBgcm90YXRlKCR7cm90YXRlWH0gMCAwKWA7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fdmlzaWJsZScpXG4gICAgZ2V0IHBlcmNlbnQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuICh0aGlzLmNvbnRleHQuJGltcGxpY2l0ICogMTAwKSAvIHRoaXMudGhyZXNob2xkO1xuICAgIH1cblxuICAgIGdldCBvcGFjaXR5KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRleHQuJGltcGxpY2l0IC8gKHRoaXMudGhyZXNob2xkICogMS41KTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9kcm9wcGVkJylcbiAgICBnZXQgZHJvcHBlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuY29udGV4dC4kaW1wbGljaXQgPD0gTUlDUk9fT0ZGU0VUIHx8XG4gICAgICAgICAgICB0aGlzLmNvbnRleHQuJGltcGxpY2l0ID09PSB0aGlzLnRocmVzaG9sZFxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUudHJhbnNmb3JtJylcbiAgICBnZXQgaG9zdFRyYW5zZm9ybSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYHRyYW5zbGF0ZVkoJHtNYXRoLm1pbih0aGlzLmNvbnRleHQuJGltcGxpY2l0LCB0aGlzLnRocmVzaG9sZCAqIDEuNSl9cHgpYDtcbiAgICB9XG59XG5cbmV4cG9ydCBjb25zdCBUVUlfQU5EUk9JRF9MT0FERVIgPSBuZXcgUG9seW1vcnBoZXVzQ29tcG9uZW50KFxuICAgIFR1aU1vYmlsZUxvYWRlckFuZHJvaWRDb21wb25lbnQsXG4pO1xuIl19
@@ -1,22 +1,31 @@
1
- import { __decorate } from "tslib";
2
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
3
- import { TuiDestroyService } from '@taiga-ui/cdk';
1
+ import { __decorate, __param } from "tslib";
2
+ import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
3
+ import { POLYMORPHEUS_CONTEXT, PolymorpheusComponent } from '@tinkoff/ng-polymorpheus';
4
+ import { TUI_PULL_TO_REFRESH_THRESHOLD } from '../pull-to-refresh.tokens';
4
5
  var LOADED_STEP = 8;
5
6
  var ROTATE_X_STEP = 30;
6
7
  var TuiMobileLoaderIOSComponent = /** @class */ (function () {
7
- function TuiMobileLoaderIOSComponent() {
8
- this.pulled = 0;
8
+ function TuiMobileLoaderIOSComponent(context, threshold) {
9
+ this.context = context;
10
+ this.threshold = threshold;
9
11
  this.steps = 12;
10
12
  }
11
13
  Object.defineProperty(TuiMobileLoaderIOSComponent.prototype, "finished", {
12
14
  get: function () {
13
- return this.pulled >= 100;
15
+ return this.percent >= 100;
16
+ },
17
+ enumerable: true,
18
+ configurable: true
19
+ });
20
+ Object.defineProperty(TuiMobileLoaderIOSComponent.prototype, "percent", {
21
+ get: function () {
22
+ return (this.context.$implicit * 100) / this.threshold;
14
23
  },
15
24
  enumerable: true,
16
25
  configurable: true
17
26
  });
18
27
  TuiMobileLoaderIOSComponent.prototype.isShown = function (index) {
19
- return this.pulled > (index + 1) * LOADED_STEP;
28
+ return this.percent > (index + 1) * LOADED_STEP;
20
29
  };
21
30
  TuiMobileLoaderIOSComponent.prototype.calculateTransform = function (index) {
22
31
  return "rotate(" + index * ROTATE_X_STEP + " 50 50)";
@@ -24,18 +33,22 @@ var TuiMobileLoaderIOSComponent = /** @class */ (function () {
24
33
  TuiMobileLoaderIOSComponent.prototype.calculateAnimationBegin = function (index) {
25
34
  return (index * LOADED_STEP) / 100 + "s";
26
35
  };
27
- __decorate([
28
- Input()
29
- ], TuiMobileLoaderIOSComponent.prototype, "pulled", void 0);
36
+ TuiMobileLoaderIOSComponent.ctorParameters = function () { return [
37
+ { type: undefined, decorators: [{ type: Inject, args: [POLYMORPHEUS_CONTEXT,] }] },
38
+ { type: Number, decorators: [{ type: Inject, args: [TUI_PULL_TO_REFRESH_THRESHOLD,] }] }
39
+ ]; };
30
40
  TuiMobileLoaderIOSComponent = __decorate([
31
41
  Component({
32
42
  selector: 'tui-mobile-ios-loader',
33
43
  template: "<svg\n width=\"36\"\n height=\"36\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n viewBox=\"0 0 100 100\"\n preserveAspectRatio=\"xMidYMid\"\n>\n <ng-container *tuiRepeatTimes=\"let index of steps\">\n <g\n *ngIf=\"isShown(index)\"\n [attr.transform]=\"calculateTransform(index)\"\n >\n <rect\n x=\"47\"\n y=\"22\"\n rx=\"7.05\"\n ry=\"3.3\"\n width=\"6\"\n height=\"16\"\n fill=\"#c7c9cc\"\n >\n <animate\n *ngIf=\"finished\"\n attributeName=\"opacity\"\n values=\"1;0\"\n keyTimes=\"0;1\"\n dur=\"1s\"\n repeatCount=\"indefinite\"\n [attr.begin]=\"calculateAnimationBegin(index)\"\n ></animate>\n </rect>\n </g>\n </ng-container>\n</svg>\n",
34
44
  changeDetection: ChangeDetectionStrategy.OnPush,
35
- providers: [TuiDestroyService]
36
- })
45
+ styles: [":host{position:absolute;top:-.5rem;left:50%;margin-left:-1.125rem}"]
46
+ }),
47
+ __param(0, Inject(POLYMORPHEUS_CONTEXT)),
48
+ __param(1, Inject(TUI_PULL_TO_REFRESH_THRESHOLD))
37
49
  ], TuiMobileLoaderIOSComponent);
38
50
  return TuiMobileLoaderIOSComponent;
39
51
  }());
40
52
  export { TuiMobileLoaderIOSComponent };
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWlvcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tbW9iaWxlL2NvbXBvbmVudHMvcHVsbC10by1yZWZyZXNoLyIsInNvdXJjZXMiOlsibG9hZGVyLWlvcy9sb2FkZXItaW9zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRWhELElBQU0sV0FBVyxHQUFHLENBQUMsQ0FBQztBQUN0QixJQUFNLGFBQWEsR0FBRyxFQUFFLENBQUM7QUFRekI7SUFBQTtRQUVJLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFFRixVQUFLLEdBQUcsRUFBRSxDQUFDO0lBaUJ4QixDQUFDO0lBZkcsc0JBQUksaURBQVE7YUFBWjtZQUNJLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQUM7UUFDOUIsQ0FBQzs7O09BQUE7SUFFRCw2Q0FBTyxHQUFQLFVBQVEsS0FBYTtRQUNqQixPQUFPLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDO0lBQ25ELENBQUM7SUFFRCx3REFBa0IsR0FBbEIsVUFBbUIsS0FBYTtRQUM1QixPQUFPLFlBQVUsS0FBSyxHQUFHLGFBQWEsWUFBUyxDQUFDO0lBQ3BELENBQUM7SUFFRCw2REFBdUIsR0FBdkIsVUFBd0IsS0FBYTtRQUNqQyxPQUFVLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQyxHQUFHLEdBQUcsTUFBRyxDQUFDO0lBQzdDLENBQUM7SUFsQkQ7UUFEQyxLQUFLLEVBQUU7K0RBQ0c7SUFGRiwyQkFBMkI7UUFOdkMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLHVCQUF1QjtZQUNqQyx1aUNBQXlDO1lBQ3pDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLFNBQVMsRUFBRSxDQUFDLGlCQUFpQixDQUFDO1NBQ2pDLENBQUM7T0FDVywyQkFBMkIsQ0FxQnZDO0lBQUQsa0NBQUM7Q0FBQSxBQXJCRCxJQXFCQztTQXJCWSwyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpRGVzdHJveVNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuXG5jb25zdCBMT0FERURfU1RFUCA9IDg7XG5jb25zdCBST1RBVEVfWF9TVEVQID0gMzA7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLW1vYmlsZS1pb3MtbG9hZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbG9hZGVyLWlvcy50ZW1wbGF0ZS5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aU1vYmlsZUxvYWRlcklPU0NvbXBvbmVudCB7XG4gICAgQElucHV0KClcbiAgICBwdWxsZWQgPSAwO1xuXG4gICAgcmVhZG9ubHkgc3RlcHMgPSAxMjtcblxuICAgIGdldCBmaW5pc2hlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHVsbGVkID49IDEwMDtcbiAgICB9XG5cbiAgICBpc1Nob3duKGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHVsbGVkID4gKGluZGV4ICsgMSkgKiBMT0FERURfU1RFUDtcbiAgICB9XG5cbiAgICBjYWxjdWxhdGVUcmFuc2Zvcm0oaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgcm90YXRlKCR7aW5kZXggKiBST1RBVEVfWF9TVEVQfSA1MCA1MClgO1xuICAgIH1cblxuICAgIGNhbGN1bGF0ZUFuaW1hdGlvbkJlZ2luKGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCR7KGluZGV4ICogTE9BREVEX1NURVApIC8gMTAwfXNgO1xuICAgIH1cbn1cbiJdfQ==
53
+ export var TUI_IOS_LOADER = new PolymorpheusComponent(TuiMobileLoaderIOSComponent);
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWlvcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tbW9iaWxlL2NvbXBvbmVudHMvcHVsbC10by1yZWZyZXNoLyIsInNvdXJjZXMiOlsibG9hZGVyLWlvcy9sb2FkZXItaW9zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFekUsT0FBTyxFQUFDLG9CQUFvQixFQUFFLHFCQUFxQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFckYsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFeEUsSUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBQ3RCLElBQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztBQVF6QjtJQUdJLHFDQUVxQixPQUF1QyxFQUNBLFNBQWlCO1FBRHhELFlBQU8sR0FBUCxPQUFPLENBQWdDO1FBQ0EsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUxwRSxVQUFLLEdBQUcsRUFBRSxDQUFDO0lBTWpCLENBQUM7SUFFSixzQkFBSSxpREFBUTthQUFaO1lBQ0ksT0FBTyxJQUFJLENBQUMsT0FBTyxJQUFJLEdBQUcsQ0FBQztRQUMvQixDQUFDOzs7T0FBQTtJQUVELHNCQUFJLGdEQUFPO2FBQVg7WUFDSSxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUMzRCxDQUFDOzs7T0FBQTtJQUVELDZDQUFPLEdBQVAsVUFBUSxLQUFhO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsR0FBRyxXQUFXLENBQUM7SUFDcEQsQ0FBQztJQUVELHdEQUFrQixHQUFsQixVQUFtQixLQUFhO1FBQzVCLE9BQU8sWUFBVSxLQUFLLEdBQUcsYUFBYSxZQUFTLENBQUM7SUFDcEQsQ0FBQztJQUVELDZEQUF1QixHQUF2QixVQUF3QixLQUFhO1FBQ2pDLE9BQVUsQ0FBQyxLQUFLLEdBQUcsV0FBVyxDQUFDLEdBQUcsR0FBRyxNQUFHLENBQUM7SUFDN0MsQ0FBQzs7Z0RBdkJJLE1BQU0sU0FBQyxvQkFBb0I7NkNBRTNCLE1BQU0sU0FBQyw2QkFBNkI7O0lBTmhDLDJCQUEyQjtRQU52QyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsdUJBQXVCO1lBQ2pDLHVpQ0FBeUM7WUFFekMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O1NBQ2xELENBQUM7UUFLTyxXQUFBLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO1FBRTVCLFdBQUEsTUFBTSxDQUFDLDZCQUE2QixDQUFDLENBQUE7T0FOakMsMkJBQTJCLENBNEJ2QztJQUFELGtDQUFDO0NBQUEsQUE1QkQsSUE0QkM7U0E1QlksMkJBQTJCO0FBOEJ4QyxNQUFNLENBQUMsSUFBTSxjQUFjLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlDb250ZXh0V2l0aEltcGxpY2l0fSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7UE9MWU1PUlBIRVVTX0NPTlRFWFQsIFBvbHltb3JwaGV1c0NvbXBvbmVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUVUlfUFVMTF9UT19SRUZSRVNIX1RIUkVTSE9MRH0gZnJvbSAnLi4vcHVsbC10by1yZWZyZXNoLnRva2Vucyc7XG5cbmNvbnN0IExPQURFRF9TVEVQID0gODtcbmNvbnN0IFJPVEFURV9YX1NURVAgPSAzMDtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktbW9iaWxlLWlvcy1sb2FkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9sb2FkZXItaW9zLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xvYWRlci1pb3Muc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlNb2JpbGVMb2FkZXJJT1NDb21wb25lbnQge1xuICAgIHJlYWRvbmx5IHN0ZXBzID0gMTI7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChQT0xZTU9SUEhFVVNfQ09OVEVYVClcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjb250ZXh0OiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4sXG4gICAgICAgIEBJbmplY3QoVFVJX1BVTExfVE9fUkVGUkVTSF9USFJFU0hPTEQpIHByaXZhdGUgcmVhZG9ubHkgdGhyZXNob2xkOiBudW1iZXIsXG4gICAgKSB7fVxuXG4gICAgZ2V0IGZpbmlzaGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wZXJjZW50ID49IDEwMDtcbiAgICB9XG5cbiAgICBnZXQgcGVyY2VudCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKHRoaXMuY29udGV4dC4kaW1wbGljaXQgKiAxMDApIC8gdGhpcy50aHJlc2hvbGQ7XG4gICAgfVxuXG4gICAgaXNTaG93bihpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnBlcmNlbnQgPiAoaW5kZXggKyAxKSAqIExPQURFRF9TVEVQO1xuICAgIH1cblxuICAgIGNhbGN1bGF0ZVRyYW5zZm9ybShpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGByb3RhdGUoJHtpbmRleCAqIFJPVEFURV9YX1NURVB9IDUwIDUwKWA7XG4gICAgfVxuXG4gICAgY2FsY3VsYXRlQW5pbWF0aW9uQmVnaW4oaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHsoaW5kZXggKiBMT0FERURfU1RFUCkgLyAxMDB9c2A7XG4gICAgfVxufVxuXG5leHBvcnQgY29uc3QgVFVJX0lPU19MT0FERVIgPSBuZXcgUG9seW1vcnBoZXVzQ29tcG9uZW50KFR1aU1vYmlsZUxvYWRlcklPU0NvbXBvbmVudCk7XG4iXX0=
@@ -1,56 +1,68 @@
1
1
  import { __decorate, __param } from "tslib";
2
- import { ChangeDetectionStrategy, Component, Inject, Output } from '@angular/core';
3
- import { TUI_IS_IOS, tuiPure } from '@taiga-ui/cdk';
4
- import { Observable, of } from 'rxjs';
5
- import { distinctUntilChanged, filter, map, mapTo } from 'rxjs/operators';
6
- import { MICRO_OFFSET, PULLED_DISTANCE, TUI_PULL_TO_REFRESH_PROVIDERS, TUI_PULLING, } from './pull-to-refresh.providers';
7
- var IOS_LOADING_DISTANCE = PULLED_DISTANCE / 2;
8
- var ANDROID_MAX_DISTANCE = PULLED_DISTANCE * 1.5;
9
- function translateY(distance) {
10
- return "translateY(" + distance + "px)";
11
- }
2
+ import { ChangeDetectionStrategy, Component, ElementRef, Inject, Input, Output, Self, } from '@angular/core';
3
+ import { TUI_IS_IOS, tuiDefaultProp, TuiDestroyService, tuiScrollFrom, } from '@taiga-ui/cdk';
4
+ import { TUI_SCROLL_REF } from '@taiga-ui/core';
5
+ import { Observable } from 'rxjs';
6
+ import { distinctUntilChanged, filter, map, startWith, takeUntil } from 'rxjs/operators';
7
+ import { TUI_PULL_TO_REFRESH_COMPONENT } from './pull-to-refresh.providers';
8
+ import { MICRO_OFFSET, TuiPullToRefreshService } from './pull-to-refresh.service';
9
+ import { TUI_PULL_TO_REFRESH_THRESHOLD } from './pull-to-refresh.tokens';
12
10
  var TuiPullToRefreshComponent = /** @class */ (function () {
13
- function TuiPullToRefreshComponent(isIOS, pulling$) {
11
+ function TuiPullToRefreshComponent(destroy$, _a, isIOS, threshold, component, pulling$) {
12
+ var _this = this;
13
+ var nativeElement = _a.nativeElement;
14
14
  this.isIOS = isIOS;
15
+ this.threshold = threshold;
16
+ this.component = component;
15
17
  this.pulling$ = pulling$;
16
- this.pulled = this.pulling$.pipe(distinctUntilChanged(), filter(function (distance) { return distance === PULLED_DISTANCE; }), mapTo(undefined));
17
- this.pulledInPercent$ = this.pulling$.pipe(map(function (distance) { return (distance * 100) / PULLED_DISTANCE; }));
18
- this.dropped$ = this.pulling$.pipe(map(function (distance) { return distance <= MICRO_OFFSET || distance === PULLED_DISTANCE; }), distinctUntilChanged());
19
- this.contentTransform$ = this.isIOS
20
- ? this.pulling$.pipe(map(function (distance) {
21
- return distance === PULLED_DISTANCE ? IOS_LOADING_DISTANCE : distance;
22
- }), map(translateY))
23
- : of(null);
18
+ this.styleHandler = this.isIOS
19
+ ? function (distance) { return ({ transform: "translateY(" + distance / 2 + "px)" }); }
20
+ : function () { return null; };
21
+ this.pulled = this.pulling$.pipe(filter(function (distance) { return distance === _this.threshold; }));
22
+ this.dropped$ = this.pulling$.pipe(map(function (distance) { return distance <= MICRO_OFFSET || distance === _this.threshold; }), distinctUntilChanged());
23
+ // Ensure scrolling down is impossible while pulling
24
+ tuiScrollFrom(nativeElement)
25
+ .pipe(startWith(null), takeUntil(destroy$))
26
+ .subscribe(function () {
27
+ if (nativeElement.scrollTop) {
28
+ nativeElement.style.touchAction = '';
29
+ }
30
+ else {
31
+ nativeElement.style.touchAction = 'pan-down';
32
+ }
33
+ });
24
34
  }
25
- Object.defineProperty(TuiPullToRefreshComponent.prototype, "loaderTransform$", {
26
- get: function () {
27
- return this.pulling$.pipe(map(function (distance) { return translateY(Math.min(distance, ANDROID_MAX_DISTANCE)); }));
28
- },
29
- enumerable: true,
30
- configurable: true
31
- });
32
35
  TuiPullToRefreshComponent.ctorParameters = function () { return [
36
+ { type: Observable, decorators: [{ type: Inject, args: [TuiDestroyService,] }, { type: Self }] },
37
+ { type: ElementRef, decorators: [{ type: Inject, args: [TUI_SCROLL_REF,] }] },
33
38
  { type: Boolean, decorators: [{ type: Inject, args: [TUI_IS_IOS,] }] },
34
- { type: Observable, decorators: [{ type: Inject, args: [TUI_PULLING,] }] }
39
+ { type: Number, decorators: [{ type: Inject, args: [TUI_PULL_TO_REFRESH_THRESHOLD,] }] },
40
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_PULL_TO_REFRESH_COMPONENT,] }] },
41
+ { type: Observable, decorators: [{ type: Inject, args: [TuiPullToRefreshService,] }] }
35
42
  ]; };
43
+ __decorate([
44
+ Input(),
45
+ tuiDefaultProp()
46
+ ], TuiPullToRefreshComponent.prototype, "styleHandler", void 0);
36
47
  __decorate([
37
48
  Output()
38
49
  ], TuiPullToRefreshComponent.prototype, "pulled", void 0);
39
- __decorate([
40
- tuiPure
41
- ], TuiPullToRefreshComponent.prototype, "loaderTransform$", null);
42
50
  TuiPullToRefreshComponent = __decorate([
43
51
  Component({
44
52
  selector: 'tui-pull-to-refresh',
45
- template: "<div\n tuiOverscroll\n [class.t-drop-animation]=\"dropped$ | async\"\n [style.transform]=\"contentTransform$ | async\"\n>\n <ng-content></ng-content>\n</div>\n\n<tui-mobile-ios-loader\n *ngIf=\"isIOS; else androidLoader\"\n class=\"t-ios-spinner\"\n [pulled]=\"(pulledInPercent$ | async) || 0\"\n></tui-mobile-ios-loader>\n\n<ng-template #androidLoader>\n <tui-mobile-android-loader\n class=\"t-android-loader\"\n [class.t-drop-animation]=\"dropped$ | async\"\n [style.transform]=\"loaderTransform$ | async\"\n [pulled]=\"(pulledInPercent$ | async) || 0\"\n ></tui-mobile-android-loader>\n</ng-template>\n",
53
+ template: "<div\n polymorpheus-outlet\n [content]=\"component\"\n [context]=\"{$implicit: (pulling$ | async) || 0}\"\n></div>\n\n<div\n [class.t-drop]=\"dropped$ | async\"\n [ngStyle]=\"styleHandler((pulling$ | async) || 0)\"\n>\n <ng-content></ng-content>\n</div>\n",
46
54
  changeDetection: ChangeDetectionStrategy.OnPush,
47
- providers: [TUI_PULL_TO_REFRESH_PROVIDERS],
48
- styles: [":host{position:relative;display:block;overflow:hidden}.t-ios-spinner{position:absolute;top:-.5rem;left:50%;margin-left:-1.125rem}.t-android-loader{position:absolute;top:-1.5rem;left:50%;margin-left:-1.125rem}.t-drop-animation{transition:all var(--tui-duration) cubic-bezier(.4,0,.2,1)}"]
55
+ providers: [TuiPullToRefreshService, TuiDestroyService],
56
+ styles: [".t-drop{transition:all var(--tui-duration) cubic-bezier(.4,0,.2,1)}"]
49
57
  }),
50
- __param(0, Inject(TUI_IS_IOS)),
51
- __param(1, Inject(TUI_PULLING))
58
+ __param(0, Inject(TuiDestroyService)), __param(0, Self()),
59
+ __param(1, Inject(TUI_SCROLL_REF)),
60
+ __param(2, Inject(TUI_IS_IOS)),
61
+ __param(3, Inject(TUI_PULL_TO_REFRESH_THRESHOLD)),
62
+ __param(4, Inject(TUI_PULL_TO_REFRESH_COMPONENT)),
63
+ __param(5, Inject(TuiPullToRefreshService))
52
64
  ], TuiPullToRefreshComponent);
53
65
  return TuiPullToRefreshComponent;
54
66
  }());
55
67
  export { TuiPullToRefreshComponent };
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVsbC10by1yZWZyZXNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1tb2JpbGUvY29tcG9uZW50cy9wdWxsLXRvLXJlZnJlc2gvIiwic291cmNlcyI6WyJwdWxsLXRvLXJlZnJlc2guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakYsT0FBTyxFQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFDLFVBQVUsRUFBRSxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFDLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEUsT0FBTyxFQUNILFlBQVksRUFDWixlQUFlLEVBQ2YsNkJBQTZCLEVBQzdCLFdBQVcsR0FDZCxNQUFNLDZCQUE2QixDQUFDO0FBRXJDLElBQU0sb0JBQW9CLEdBQUcsZUFBZSxHQUFHLENBQUMsQ0FBQztBQUNqRCxJQUFNLG9CQUFvQixHQUFHLGVBQWUsR0FBRyxHQUFHLENBQUM7QUFFbkQsU0FBUyxVQUFVLENBQUMsUUFBZ0I7SUFDaEMsT0FBTyxnQkFBYyxRQUFRLFFBQUssQ0FBQztBQUN2QyxDQUFDO0FBU0Q7SUEwQkksbUNBQ2lDLEtBQWMsRUFDTCxRQUE0QjtRQURyQyxVQUFLLEdBQUwsS0FBSyxDQUFTO1FBQ0wsYUFBUSxHQUFSLFFBQVEsQ0FBb0I7UUExQjdELFdBQU0sR0FBcUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2xELG9CQUFvQixFQUFFLEVBQ3RCLE1BQU0sQ0FBQyxVQUFBLFFBQVEsSUFBSSxPQUFBLFFBQVEsS0FBSyxlQUFlLEVBQTVCLENBQTRCLENBQUMsRUFDaEQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUNuQixDQUFDO1FBRU8scUJBQWdCLEdBQXVCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUM5RCxHQUFHLENBQUMsVUFBQSxRQUFRLElBQUksT0FBQSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsR0FBRyxlQUFlLEVBQWxDLENBQWtDLENBQUMsQ0FDdEQsQ0FBQztRQUVPLGFBQVEsR0FBd0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ3ZELEdBQUcsQ0FBQyxVQUFBLFFBQVEsSUFBSSxPQUFBLFFBQVEsSUFBSSxZQUFZLElBQUksUUFBUSxLQUFLLGVBQWUsRUFBeEQsQ0FBd0QsQ0FBQyxFQUN6RSxvQkFBb0IsRUFBRSxDQUN6QixDQUFDO1FBRU8sc0JBQWlCLEdBQThCLElBQUksQ0FBQyxLQUFLO1lBQzlELENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDZCxHQUFHLENBQUMsVUFBQSxRQUFRO2dCQUNSLE9BQUEsUUFBUSxLQUFLLGVBQWUsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLFFBQVE7WUFBOUQsQ0FBOEQsQ0FDakUsRUFDRCxHQUFHLENBQUMsVUFBVSxDQUFDLENBQ2xCO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUtaLENBQUM7SUFHSixzQkFBSSx1REFBZ0I7YUFBcEI7WUFDSSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNyQixHQUFHLENBQUMsVUFBQSxRQUFRLElBQUksT0FBQSxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsb0JBQW9CLENBQUMsQ0FBQyxFQUFwRCxDQUFvRCxDQUFDLENBQ3hFLENBQUM7UUFDTixDQUFDOzs7T0FBQTs7OENBVEksTUFBTSxTQUFDLFVBQVU7Z0JBQzhCLFVBQVUsdUJBQXpELE1BQU0sU0FBQyxXQUFXOztJQTFCdkI7UUFEQyxNQUFNLEVBQUU7NkRBS1A7SUEwQkY7UUFEQyxPQUFPO3FFQUtQO0lBcENRLHlCQUF5QjtRQVByQyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUscUJBQXFCO1lBQy9CLGdxQkFBOEM7WUFFOUMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07WUFDL0MsU0FBUyxFQUFFLENBQUMsNkJBQTZCLENBQUM7O1NBQzdDLENBQUM7UUE0Qk8sV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbEIsV0FBQSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7T0E1QmYseUJBQXlCLENBcUNyQztJQUFELGdDQUFDO0NBQUEsQUFyQ0QsSUFxQ0M7U0FyQ1kseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbmplY3QsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RVSV9JU19JT1MsIHR1aVB1cmV9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2Rpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgbWFwVG99IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgICBNSUNST19PRkZTRVQsXG4gICAgUFVMTEVEX0RJU1RBTkNFLFxuICAgIFRVSV9QVUxMX1RPX1JFRlJFU0hfUFJPVklERVJTLFxuICAgIFRVSV9QVUxMSU5HLFxufSBmcm9tICcuL3B1bGwtdG8tcmVmcmVzaC5wcm92aWRlcnMnO1xuXG5jb25zdCBJT1NfTE9BRElOR19ESVNUQU5DRSA9IFBVTExFRF9ESVNUQU5DRSAvIDI7XG5jb25zdCBBTkRST0lEX01BWF9ESVNUQU5DRSA9IFBVTExFRF9ESVNUQU5DRSAqIDEuNTtcblxuZnVuY3Rpb24gdHJhbnNsYXRlWShkaXN0YW5jZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYHRyYW5zbGF0ZVkoJHtkaXN0YW5jZX1weClgO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1wdWxsLXRvLXJlZnJlc2gnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wdWxsLXRvLXJlZnJlc2gudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vcHVsbC10by1yZWZyZXNoLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtUVUlfUFVMTF9UT19SRUZSRVNIX1BST1ZJREVSU10sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVB1bGxUb1JlZnJlc2hDb21wb25lbnQge1xuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHB1bGxlZDogT2JzZXJ2YWJsZTx2b2lkPiA9IHRoaXMucHVsbGluZyQucGlwZShcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgZmlsdGVyKGRpc3RhbmNlID0+IGRpc3RhbmNlID09PSBQVUxMRURfRElTVEFOQ0UpLFxuICAgICAgICBtYXBUbyh1bmRlZmluZWQpLFxuICAgICk7XG5cbiAgICByZWFkb25seSBwdWxsZWRJblBlcmNlbnQkOiBPYnNlcnZhYmxlPG51bWJlcj4gPSB0aGlzLnB1bGxpbmckLnBpcGUoXG4gICAgICAgIG1hcChkaXN0YW5jZSA9PiAoZGlzdGFuY2UgKiAxMDApIC8gUFVMTEVEX0RJU1RBTkNFKSxcbiAgICApO1xuXG4gICAgcmVhZG9ubHkgZHJvcHBlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnB1bGxpbmckLnBpcGUoXG4gICAgICAgIG1hcChkaXN0YW5jZSA9PiBkaXN0YW5jZSA8PSBNSUNST19PRkZTRVQgfHwgZGlzdGFuY2UgPT09IFBVTExFRF9ESVNUQU5DRSksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgKTtcblxuICAgIHJlYWRvbmx5IGNvbnRlbnRUcmFuc2Zvcm0kOiBPYnNlcnZhYmxlPHN0cmluZyB8IG51bGw+ID0gdGhpcy5pc0lPU1xuICAgICAgICA/IHRoaXMucHVsbGluZyQucGlwZShcbiAgICAgICAgICAgICAgbWFwKGRpc3RhbmNlID0+XG4gICAgICAgICAgICAgICAgICBkaXN0YW5jZSA9PT0gUFVMTEVEX0RJU1RBTkNFID8gSU9TX0xPQURJTkdfRElTVEFOQ0UgOiBkaXN0YW5jZSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgbWFwKHRyYW5zbGF0ZVkpLFxuICAgICAgICAgIClcbiAgICAgICAgOiBvZihudWxsKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFRVSV9JU19JT1MpIHJlYWRvbmx5IGlzSU9TOiBib29sZWFuLFxuICAgICAgICBASW5qZWN0KFRVSV9QVUxMSU5HKSBwcml2YXRlIHJlYWRvbmx5IHB1bGxpbmckOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgKSB7fVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXQgbG9hZGVyVHJhbnNmb3JtJCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wdWxsaW5nJC5waXBlKFxuICAgICAgICAgICAgbWFwKGRpc3RhbmNlID0+IHRyYW5zbGF0ZVkoTWF0aC5taW4oZGlzdGFuY2UsIEFORFJPSURfTUFYX0RJU1RBTkNFKSkpLFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVsbC10by1yZWZyZXNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1tb2JpbGUvY29tcG9uZW50cy9wdWxsLXRvLXJlZnJlc2gvIiwic291cmNlcyI6WyJwdWxsLXRvLXJlZnJlc2guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sSUFBSSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxVQUFVLEVBRVYsY0FBYyxFQUNkLGlCQUFpQixFQUVqQixhQUFhLEdBQ2hCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sRUFBQyxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RixPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUMxRSxPQUFPLEVBQUMsWUFBWSxFQUFFLHVCQUF1QixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDaEYsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFTdkU7SUFpQkksbUNBQ3VDLFFBQTZCLEVBQ3hDLEVBQXdDLEVBQzNCLEtBQWMsRUFDSyxTQUFpQixFQUVoRSxTQUE4RCxFQUM3QixRQUE0QjtRQVAxRSxpQkFtQkM7WUFqQjRCLGdDQUFhO1FBQ0QsVUFBSyxHQUFMLEtBQUssQ0FBUztRQUNLLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFFaEUsY0FBUyxHQUFULFNBQVMsQ0FBcUQ7UUFDN0IsYUFBUSxHQUFSLFFBQVEsQ0FBb0I7UUFyQjFFLGlCQUFZLEdBQW1ELElBQUksQ0FBQyxLQUFLO1lBQ3JFLENBQUMsQ0FBQyxVQUFBLFFBQVEsSUFBSSxPQUFBLENBQUMsRUFBQyxTQUFTLEVBQUUsZ0JBQWMsUUFBUSxHQUFHLENBQUMsUUFBSyxFQUFDLENBQUMsRUFBOUMsQ0FBOEM7WUFDNUQsQ0FBQyxDQUFDLGNBQU0sT0FBQSxJQUFJLEVBQUosQ0FBSSxDQUFDO1FBR1IsV0FBTSxHQUF3QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDckQsTUFBTSxDQUFDLFVBQUEsUUFBUSxJQUFJLE9BQUEsUUFBUSxLQUFLLEtBQUksQ0FBQyxTQUFTLEVBQTNCLENBQTJCLENBQUMsQ0FDbEQsQ0FBQztRQUVPLGFBQVEsR0FBd0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ3ZELEdBQUcsQ0FBQyxVQUFBLFFBQVEsSUFBSSxPQUFBLFFBQVEsSUFBSSxZQUFZLElBQUksUUFBUSxLQUFLLEtBQUksQ0FBQyxTQUFTLEVBQXZELENBQXVELENBQUMsRUFDeEUsb0JBQW9CLEVBQUUsQ0FDekIsQ0FBQztRQVdFLG9EQUFvRDtRQUNwRCxhQUFhLENBQUMsYUFBYSxDQUFDO2FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzFDLFNBQVMsQ0FBQztZQUNQLElBQUksYUFBYSxDQUFDLFNBQVMsRUFBRTtnQkFDekIsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO2FBQ3hDO2lCQUFNO2dCQUNILGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQzthQUNoRDtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQzs7Z0JBbEJnRCxVQUFVLHVCQUF0RCxNQUFNLFNBQUMsaUJBQWlCLGNBQUcsSUFBSTtnQkFDUyxVQUFVLHVCQUFsRCxNQUFNLFNBQUMsY0FBYzs4Q0FDckIsTUFBTSxTQUFDLFVBQVU7NkNBQ2pCLE1BQU0sU0FBQyw2QkFBNkI7Z0RBQ3BDLE1BQU0sU0FBQyw2QkFBNkI7Z0JBRWUsVUFBVSx1QkFBN0QsTUFBTSxTQUFDLHVCQUF1Qjs7SUFyQm5DO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxFQUFFO21FQUdBO0lBR2pCO1FBREMsTUFBTSxFQUFFOzZEQUdQO0lBVk8seUJBQXlCO1FBUHJDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsNlJBQThDO1lBRTlDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLFNBQVMsRUFBRSxDQUFDLHVCQUF1QixFQUFFLGlCQUFpQixDQUFDOztTQUMxRCxDQUFDO1FBbUJPLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUEsRUFBRSxXQUFBLElBQUksRUFBRSxDQUFBO1FBQ2pDLFdBQUEsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1FBQ3RCLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2xCLFdBQUEsTUFBTSxDQUFDLDZCQUE2QixDQUFDLENBQUE7UUFDckMsV0FBQSxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtRQUVyQyxXQUFBLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO09BeEIzQix5QkFBeUIsQ0FxQ3JDO0lBQUQsZ0NBQUM7Q0FBQSxBQXJDRCxJQXFDQztTQXJDWSx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIFRVSV9JU19JT1MsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICBUdWlIYW5kbGVyLFxuICAgIHR1aVNjcm9sbEZyb20sXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfU0NST0xMX1JFRn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCBzdGFydFdpdGgsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1RVSV9QVUxMX1RPX1JFRlJFU0hfQ09NUE9ORU5UfSBmcm9tICcuL3B1bGwtdG8tcmVmcmVzaC5wcm92aWRlcnMnO1xuaW1wb3J0IHtNSUNST19PRkZTRVQsIFR1aVB1bGxUb1JlZnJlc2hTZXJ2aWNlfSBmcm9tICcuL3B1bGwtdG8tcmVmcmVzaC5zZXJ2aWNlJztcbmltcG9ydCB7VFVJX1BVTExfVE9fUkVGUkVTSF9USFJFU0hPTER9IGZyb20gJy4vcHVsbC10by1yZWZyZXNoLnRva2Vucyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLXB1bGwtdG8tcmVmcmVzaCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3B1bGwtdG8tcmVmcmVzaC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9wdWxsLXRvLXJlZnJlc2guc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1R1aVB1bGxUb1JlZnJlc2hTZXJ2aWNlLCBUdWlEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVB1bGxUb1JlZnJlc2hDb21wb25lbnQge1xuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzdHlsZUhhbmRsZXI6IFR1aUhhbmRsZXI8bnVtYmVyLCBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgbnVsbD4gPSB0aGlzLmlzSU9TXG4gICAgICAgID8gZGlzdGFuY2UgPT4gKHt0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKCR7ZGlzdGFuY2UgLyAyfXB4KWB9KVxuICAgICAgICA6ICgpID0+IG51bGw7XG5cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBwdWxsZWQ6IE9ic2VydmFibGU8dW5rbm93bj4gPSB0aGlzLnB1bGxpbmckLnBpcGUoXG4gICAgICAgIGZpbHRlcihkaXN0YW5jZSA9PiBkaXN0YW5jZSA9PT0gdGhpcy50aHJlc2hvbGQpLFxuICAgICk7XG5cbiAgICByZWFkb25seSBkcm9wcGVkJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMucHVsbGluZyQucGlwZShcbiAgICAgICAgbWFwKGRpc3RhbmNlID0+IGRpc3RhbmNlIDw9IE1JQ1JPX09GRlNFVCB8fCBkaXN0YW5jZSA9PT0gdGhpcy50aHJlc2hvbGQpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgQFNlbGYoKSBkZXN0cm95JDogT2JzZXJ2YWJsZTx1bmtub3duPixcbiAgICAgICAgQEluamVjdChUVUlfU0NST0xMX1JFRikge25hdGl2ZUVsZW1lbnR9OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUVUlfSVNfSU9TKSBwcml2YXRlIHJlYWRvbmx5IGlzSU9TOiBib29sZWFuLFxuICAgICAgICBASW5qZWN0KFRVSV9QVUxMX1RPX1JFRlJFU0hfVEhSRVNIT0xEKSBwcml2YXRlIHJlYWRvbmx5IHRocmVzaG9sZDogbnVtYmVyLFxuICAgICAgICBASW5qZWN0KFRVSV9QVUxMX1RPX1JFRlJFU0hfQ09NUE9ORU5UKVxuICAgICAgICByZWFkb25seSBjb21wb25lbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxudW1iZXI+PixcbiAgICAgICAgQEluamVjdChUdWlQdWxsVG9SZWZyZXNoU2VydmljZSkgcmVhZG9ubHkgcHVsbGluZyQ6IE9ic2VydmFibGU8bnVtYmVyPixcbiAgICApIHtcbiAgICAgICAgLy8gRW5zdXJlIHNjcm9sbGluZyBkb3duIGlzIGltcG9zc2libGUgd2hpbGUgcHVsbGluZ1xuICAgICAgICB0dWlTY3JvbGxGcm9tKG5hdGl2ZUVsZW1lbnQpXG4gICAgICAgICAgICAucGlwZShzdGFydFdpdGgobnVsbCksIHRha2VVbnRpbChkZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAobmF0aXZlRWxlbWVudC5zY3JvbGxUb3ApIHtcbiAgICAgICAgICAgICAgICAgICAgbmF0aXZlRWxlbWVudC5zdHlsZS50b3VjaEFjdGlvbiA9ICcnO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIG5hdGl2ZUVsZW1lbnQuc3R5bGUudG91Y2hBY3Rpb24gPSAncGFuLWRvd24nO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,8 +1,9 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { NgModule } from '@angular/core';
4
- import { TuiOverscrollModule, TuiRepeatTimesModule } from '@taiga-ui/cdk';
4
+ import { TuiRepeatTimesModule } from '@taiga-ui/cdk';
5
5
  import { TuiSvgModule } from '@taiga-ui/core';
6
+ import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
6
7
  import { TuiMobileLoaderAndroidComponent } from './loader-android/loader-android.component';
7
8
  import { TuiMobileLoaderIOSComponent } from './loader-ios/loader-ios.component';
8
9
  import { TuiPullToRefreshComponent } from './pull-to-refresh.component';
@@ -11,7 +12,7 @@ var TuiPullToRefreshModule = /** @class */ (function () {
11
12
  }
12
13
  TuiPullToRefreshModule = __decorate([
13
14
  NgModule({
14
- imports: [CommonModule, TuiSvgModule, TuiOverscrollModule, TuiRepeatTimesModule],
15
+ imports: [CommonModule, TuiSvgModule, TuiRepeatTimesModule, PolymorpheusModule],
15
16
  declarations: [
16
17
  TuiPullToRefreshComponent,
17
18
  TuiMobileLoaderAndroidComponent,
@@ -23,4 +24,4 @@ var TuiPullToRefreshModule = /** @class */ (function () {
23
24
  return TuiPullToRefreshModule;
24
25
  }());
25
26
  export { TuiPullToRefreshModule };
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVsbC10by1yZWZyZXNoLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1tb2JpbGUvY29tcG9uZW50cy9wdWxsLXRvLXJlZnJlc2gvIiwic291cmNlcyI6WyJwdWxsLXRvLXJlZnJlc2gubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsbUJBQW1CLEVBQUUsb0JBQW9CLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTVDLE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzFGLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzlFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBV3RFO0lBQUE7SUFBcUMsQ0FBQztJQUF6QixzQkFBc0I7UUFUbEMsUUFBUSxDQUFDO1lBQ04sT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxvQkFBb0IsQ0FBQztZQUNoRixZQUFZLEVBQUU7Z0JBQ1YseUJBQXlCO2dCQUN6QiwrQkFBK0I7Z0JBQy9CLDJCQUEyQjthQUM5QjtZQUNELE9BQU8sRUFBRSxDQUFDLHlCQUF5QixDQUFDO1NBQ3ZDLENBQUM7T0FDVyxzQkFBc0IsQ0FBRztJQUFELDZCQUFDO0NBQUEsQUFBdEMsSUFBc0M7U0FBekIsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpT3ZlcnNjcm9sbE1vZHVsZSwgVHVpUmVwZWF0VGltZXNNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlTdmdNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcblxuaW1wb3J0IHtUdWlNb2JpbGVMb2FkZXJBbmRyb2lkQ29tcG9uZW50fSBmcm9tICcuL2xvYWRlci1hbmRyb2lkL2xvYWRlci1hbmRyb2lkLmNvbXBvbmVudCc7XG5pbXBvcnQge1R1aU1vYmlsZUxvYWRlcklPU0NvbXBvbmVudH0gZnJvbSAnLi9sb2FkZXItaW9zL2xvYWRlci1pb3MuY29tcG9uZW50JztcbmltcG9ydCB7VHVpUHVsbFRvUmVmcmVzaENvbXBvbmVudH0gZnJvbSAnLi9wdWxsLXRvLXJlZnJlc2guY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUdWlTdmdNb2R1bGUsIFR1aU92ZXJzY3JvbGxNb2R1bGUsIFR1aVJlcGVhdFRpbWVzTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgVHVpUHVsbFRvUmVmcmVzaENvbXBvbmVudCxcbiAgICAgICAgVHVpTW9iaWxlTG9hZGVyQW5kcm9pZENvbXBvbmVudCxcbiAgICAgICAgVHVpTW9iaWxlTG9hZGVySU9TQ29tcG9uZW50LFxuICAgIF0sXG4gICAgZXhwb3J0czogW1R1aVB1bGxUb1JlZnJlc2hDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlQdWxsVG9SZWZyZXNoTW9kdWxlIHt9XG4iXX0=
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVsbC10by1yZWZyZXNoLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1tb2JpbGUvY29tcG9uZW50cy9wdWxsLXRvLXJlZnJlc2gvIiwic291cmNlcyI6WyJwdWxsLXRvLXJlZnJlc2gubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTVELE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzFGLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzlFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBV3RFO0lBQUE7SUFBcUMsQ0FBQztJQUF6QixzQkFBc0I7UUFUbEMsUUFBUSxDQUFDO1lBQ04sT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxrQkFBa0IsQ0FBQztZQUMvRSxZQUFZLEVBQUU7Z0JBQ1YseUJBQXlCO2dCQUN6QiwrQkFBK0I7Z0JBQy9CLDJCQUEyQjthQUM5QjtZQUNELE9BQU8sRUFBRSxDQUFDLHlCQUF5QixDQUFDO1NBQ3ZDLENBQUM7T0FDVyxzQkFBc0IsQ0FBRztJQUFELDZCQUFDO0NBQUEsQUFBdEMsSUFBc0M7U0FBekIsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpUmVwZWF0VGltZXNNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlTdmdNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7UG9seW1vcnBoZXVzTW9kdWxlfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aU1vYmlsZUxvYWRlckFuZHJvaWRDb21wb25lbnR9IGZyb20gJy4vbG9hZGVyLWFuZHJvaWQvbG9hZGVyLWFuZHJvaWQuY29tcG9uZW50JztcbmltcG9ydCB7VHVpTW9iaWxlTG9hZGVySU9TQ29tcG9uZW50fSBmcm9tICcuL2xvYWRlci1pb3MvbG9hZGVyLWlvcy5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlQdWxsVG9SZWZyZXNoQ29tcG9uZW50fSBmcm9tICcuL3B1bGwtdG8tcmVmcmVzaC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFR1aVN2Z01vZHVsZSwgVHVpUmVwZWF0VGltZXNNb2R1bGUsIFBvbHltb3JwaGV1c01vZHVsZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIFR1aVB1bGxUb1JlZnJlc2hDb21wb25lbnQsXG4gICAgICAgIFR1aU1vYmlsZUxvYWRlckFuZHJvaWRDb21wb25lbnQsXG4gICAgICAgIFR1aU1vYmlsZUxvYWRlcklPU0NvbXBvbmVudCxcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtUdWlQdWxsVG9SZWZyZXNoQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUHVsbFRvUmVmcmVzaE1vZHVsZSB7fVxuIl19
@@ -1,32 +1,22 @@
1
- import { ElementRef, InjectionToken } from '@angular/core';
2
- import { TUI_LOADED } from '@taiga-ui/addon-mobile/tokens';
3
- import { TUI_IS_IOS, typedFromEvent } from '@taiga-ui/cdk';
4
- import { merge } from 'rxjs';
5
- import { endWith, filter, map, mapTo, scan, switchMap, takeUntil } from 'rxjs/operators';
6
- export var MICRO_OFFSET = Math.pow(10, -6);
7
- export var PULLED_DISTANCE = 50;
8
- export var TUI_PULLING = new InjectionToken("Stream that emits content pulling");
9
- export var TUI_PULL_TO_REFRESH_PROVIDERS = [
10
- {
11
- provide: TUI_PULLING,
12
- deps: [TUI_IS_IOS, TUI_LOADED, ElementRef],
13
- useFactory: pullingFactory,
14
- },
15
- ];
16
- // eslint-disable-next-line @typescript-eslint/naming-convention
17
- export function pullingFactory(isIOS, loaded$, _a) {
18
- var nativeElement = _a.nativeElement;
19
- return merge(typedFromEvent(nativeElement, "touchstart", { passive: true }).pipe(filter(function () { return nativeElement.scrollTop === 0; }), switchMap(function (touchStart) {
20
- return typedFromEvent(nativeElement, "touchmove").pipe(map(function (touchMove) {
21
- return touchMove.touches[0].clientY - touchStart.touches[0].clientY;
22
- }), takeUntil(typedFromEvent(nativeElement, "touchend")), endWith(0));
23
- })), loaded$.pipe(mapTo(NaN))).pipe(scan(function (max, current) {
24
- if (Number.isNaN(current)) {
25
- return 0;
26
- }
27
- var androidLoading = !isIOS && max === PULLED_DISTANCE;
28
- var dropped = current === 0 && max > PULLED_DISTANCE;
29
- return androidLoading || dropped ? PULLED_DISTANCE : current + MICRO_OFFSET;
30
- }, 0));
31
- }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVsbC10by1yZWZyZXNoLnByb3ZpZGVycy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1tb2JpbGUvY29tcG9uZW50cy9wdWxsLXRvLXJlZnJlc2gvIiwic291cmNlcyI6WyJwdWxsLXRvLXJlZnJlc2gucHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUUsY0FBYyxFQUFXLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RCxPQUFPLEVBQUMsVUFBVSxFQUFFLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUMsS0FBSyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RixNQUFNLENBQUMsSUFBTSxZQUFZLEdBQUcsU0FBQSxFQUFFLEVBQUksQ0FBQyxDQUFDLENBQUEsQ0FBQztBQUNyQyxNQUFNLENBQUMsSUFBTSxlQUFlLEdBQUcsRUFBRSxDQUFDO0FBRWxDLE1BQU0sQ0FBQyxJQUFNLFdBQVcsR0FBRyxJQUFJLGNBQWMsQ0FDekMsbUNBQW1DLENBQ3RDLENBQUM7QUFFRixNQUFNLENBQUMsSUFBTSw2QkFBNkIsR0FBZTtJQUNyRDtRQUNJLE9BQU8sRUFBRSxXQUFXO1FBQ3BCLElBQUksRUFBRSxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDO1FBQzFDLFVBQVUsRUFBRSxjQUFjO0tBQzdCO0NBQ0osQ0FBQztBQUVGLGdFQUFnRTtBQUNoRSxNQUFNLFVBQVUsY0FBYyxDQUMxQixLQUFjLEVBQ2QsT0FBNEIsRUFDNUIsRUFBd0M7UUFBdkMsZ0NBQWE7SUFFZCxPQUFPLEtBQUssQ0FDUixjQUFjLENBQUMsYUFBYSxFQUFFLFlBQVksRUFBRSxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDLElBQUksQ0FDN0QsTUFBTSxDQUFDLGNBQU0sT0FBQSxhQUFhLENBQUMsU0FBUyxLQUFLLENBQUMsRUFBN0IsQ0FBNkIsQ0FBQyxFQUMzQyxTQUFTLENBQUMsVUFBQSxVQUFVO1FBQ2hCLE9BQUEsY0FBYyxDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQzNDLEdBQUcsQ0FDQyxVQUFBLFNBQVM7WUFDTCxPQUFBLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTztRQUE1RCxDQUE0RCxDQUNuRSxFQUNELFNBQVMsQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDLEVBQ3BELE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FDYjtJQVBELENBT0MsQ0FDSixDQUNKLEVBQ0QsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDM0IsQ0FBQyxJQUFJLENBQ0YsSUFBSSxDQUFDLFVBQUMsR0FBRyxFQUFFLE9BQU87UUFDZCxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDdkIsT0FBTyxDQUFDLENBQUM7U0FDWjtRQUVELElBQU0sY0FBYyxHQUFHLENBQUMsS0FBSyxJQUFJLEdBQUcsS0FBSyxlQUFlLENBQUM7UUFDekQsSUFBTSxPQUFPLEdBQUcsT0FBTyxLQUFLLENBQUMsSUFBSSxHQUFHLEdBQUcsZUFBZSxDQUFDO1FBRXZELE9BQU8sY0FBYyxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDO0lBQ2hGLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDUixDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RWxlbWVudFJlZiwgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VFVJX0xPQURFRH0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLW1vYmlsZS90b2tlbnMnO1xuaW1wb3J0IHtUVUlfSVNfSU9TLCB0eXBlZEZyb21FdmVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge21lcmdlLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZW5kV2l0aCwgZmlsdGVyLCBtYXAsIG1hcFRvLCBzY2FuLCBzd2l0Y2hNYXAsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY29uc3QgTUlDUk9fT0ZGU0VUID0gMTAgKiogLTY7XG5leHBvcnQgY29uc3QgUFVMTEVEX0RJU1RBTkNFID0gNTA7XG5cbmV4cG9ydCBjb25zdCBUVUlfUFVMTElORyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxPYnNlcnZhYmxlPG51bWJlcj4+KFxuICAgIGBTdHJlYW0gdGhhdCBlbWl0cyBjb250ZW50IHB1bGxpbmdgLFxuKTtcblxuZXhwb3J0IGNvbnN0IFRVSV9QVUxMX1RPX1JFRlJFU0hfUFJPVklERVJTOiBQcm92aWRlcltdID0gW1xuICAgIHtcbiAgICAgICAgcHJvdmlkZTogVFVJX1BVTExJTkcsXG4gICAgICAgIGRlcHM6IFtUVUlfSVNfSU9TLCBUVUlfTE9BREVELCBFbGVtZW50UmVmXSxcbiAgICAgICAgdXNlRmFjdG9yeTogcHVsbGluZ0ZhY3RvcnksXG4gICAgfSxcbl07XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBmdW5jdGlvbiBwdWxsaW5nRmFjdG9yeShcbiAgICBpc0lPUzogYm9vbGVhbixcbiAgICBsb2FkZWQkOiBPYnNlcnZhYmxlPHVua25vd24+LFxuICAgIHtuYXRpdmVFbGVtZW50fTogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4pOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIHJldHVybiBtZXJnZShcbiAgICAgICAgdHlwZWRGcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgYHRvdWNoc3RhcnRgLCB7cGFzc2l2ZTogdHJ1ZX0pLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKCkgPT4gbmF0aXZlRWxlbWVudC5zY3JvbGxUb3AgPT09IDApLFxuICAgICAgICAgICAgc3dpdGNoTWFwKHRvdWNoU3RhcnQgPT5cbiAgICAgICAgICAgICAgICB0eXBlZEZyb21FdmVudChuYXRpdmVFbGVtZW50LCBgdG91Y2htb3ZlYCkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKFxuICAgICAgICAgICAgICAgICAgICAgICAgdG91Y2hNb3ZlID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG91Y2hNb3ZlLnRvdWNoZXNbMF0uY2xpZW50WSAtIHRvdWNoU3RhcnQudG91Y2hlc1swXS5jbGllbnRZLFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwodHlwZWRGcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgYHRvdWNoZW5kYCkpLFxuICAgICAgICAgICAgICAgICAgICBlbmRXaXRoKDApLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgICBsb2FkZWQkLnBpcGUobWFwVG8oTmFOKSksXG4gICAgKS5waXBlKFxuICAgICAgICBzY2FuKChtYXgsIGN1cnJlbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChOdW1iZXIuaXNOYU4oY3VycmVudCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgYW5kcm9pZExvYWRpbmcgPSAhaXNJT1MgJiYgbWF4ID09PSBQVUxMRURfRElTVEFOQ0U7XG4gICAgICAgICAgICBjb25zdCBkcm9wcGVkID0gY3VycmVudCA9PT0gMCAmJiBtYXggPiBQVUxMRURfRElTVEFOQ0U7XG5cbiAgICAgICAgICAgIHJldHVybiBhbmRyb2lkTG9hZGluZyB8fCBkcm9wcGVkID8gUFVMTEVEX0RJU1RBTkNFIDogY3VycmVudCArIE1JQ1JPX09GRlNFVDtcbiAgICAgICAgfSwgMCksXG4gICAgKTtcbn1cbiJdfQ==
1
+ import { inject, InjectionToken } from '@angular/core';
2
+ import { TUI_IS_IOS } from '@taiga-ui/cdk';
3
+ import { EMPTY } from 'rxjs';
4
+ import { TUI_ANDROID_LOADER } from './loader-android/loader-android.component';
5
+ import { TUI_IOS_LOADER } from './loader-ios/loader-ios.component';
6
+ /**
7
+ * Stream that emits when loading is over
8
+ */
9
+ export var TUI_PULL_TO_REFRESH_LOADED = new InjectionToken("[TUI_PULL_TO_REFRESH_LOADED]", {
10
+ factory: function () { return EMPTY; },
11
+ });
12
+ /**
13
+ * Loading indicator component that gets current pull distance in pixels as context
14
+ */
15
+ export var TUI_PULL_TO_REFRESH_COMPONENT = new InjectionToken("[TUI_PULL_TO_REFRESH_COMPONENT]", {
16
+ factory: function () { return (inject(TUI_IS_IOS) ? TUI_IOS_LOADER : TUI_ANDROID_LOADER); },
17
+ });
18
+ /**
19
+ * @deprecated renamed to {@link TUI_PULL_TO_REFRESH_LOADED}
20
+ */
21
+ export var TUI_LOADED = TUI_PULL_TO_REFRESH_LOADED;
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVsbC10by1yZWZyZXNoLnByb3ZpZGVycy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1tb2JpbGUvY29tcG9uZW50cy9wdWxsLXRvLXJlZnJlc2gvIiwic291cmNlcyI6WyJwdWxsLXRvLXJlZnJlc2gucHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUUsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBQyxVQUFVLEVBQXlCLE1BQU0sZUFBZSxDQUFDO0FBRWpFLE9BQU8sRUFBQyxLQUFLLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDN0UsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBRWpFOztHQUVHO0FBQ0gsTUFBTSxDQUFDLElBQU0sMEJBQTBCLEdBQUcsSUFBSSxjQUFjLENBQ3hELDhCQUE4QixFQUM5QjtJQUNJLE9BQU8sRUFBRSxjQUFNLE9BQUEsS0FBSyxFQUFMLENBQUs7Q0FDdkIsQ0FDSixDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLENBQUMsSUFBTSw2QkFBNkIsR0FBRyxJQUFJLGNBQWMsQ0FFN0QsaUNBQWlDLEVBQUU7SUFDakMsT0FBTyxFQUFFLGNBQU0sT0FBQSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUExRCxDQUEwRDtDQUM1RSxDQUFDLENBQUM7QUFFSDs7R0FFRztBQUNILE1BQU0sQ0FBQyxJQUFNLFVBQVUsR0FBRywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7aW5qZWN0LCBJbmplY3Rpb25Ub2tlbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RVSV9JU19JT1MsIFR1aUNvbnRleHRXaXRoSW1wbGljaXR9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtFTVBUWSwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VFVJX0FORFJPSURfTE9BREVSfSBmcm9tICcuL2xvYWRlci1hbmRyb2lkL2xvYWRlci1hbmRyb2lkLmNvbXBvbmVudCc7XG5pbXBvcnQge1RVSV9JT1NfTE9BREVSfSBmcm9tICcuL2xvYWRlci1pb3MvbG9hZGVyLWlvcy5jb21wb25lbnQnO1xuXG4vKipcbiAqIFN0cmVhbSB0aGF0IGVtaXRzIHdoZW4gbG9hZGluZyBpcyBvdmVyXG4gKi9cbmV4cG9ydCBjb25zdCBUVUlfUFVMTF9UT19SRUZSRVNIX0xPQURFRCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxPYnNlcnZhYmxlPHVua25vd24+PihcbiAgICBgW1RVSV9QVUxMX1RPX1JFRlJFU0hfTE9BREVEXWAsXG4gICAge1xuICAgICAgICBmYWN0b3J5OiAoKSA9PiBFTVBUWSxcbiAgICB9LFxuKTtcblxuLyoqXG4gKiBMb2FkaW5nIGluZGljYXRvciBjb21wb25lbnQgdGhhdCBnZXRzIGN1cnJlbnQgcHVsbCBkaXN0YW5jZSBpbiBwaXhlbHMgYXMgY29udGV4dFxuICovXG5leHBvcnQgY29uc3QgVFVJX1BVTExfVE9fUkVGUkVTSF9DT01QT05FTlQgPSBuZXcgSW5qZWN0aW9uVG9rZW48XG4gICAgUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PG51bWJlcj4+XG4+KGBbVFVJX1BVTExfVE9fUkVGUkVTSF9DT01QT05FTlRdYCwge1xuICAgIGZhY3Rvcnk6ICgpID0+IChpbmplY3QoVFVJX0lTX0lPUykgPyBUVUlfSU9TX0xPQURFUiA6IFRVSV9BTkRST0lEX0xPQURFUiksXG59KTtcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCByZW5hbWVkIHRvIHtAbGluayBUVUlfUFVMTF9UT19SRUZSRVNIX0xPQURFRH1cbiAqL1xuZXhwb3J0IGNvbnN0IFRVSV9MT0FERUQgPSBUVUlfUFVMTF9UT19SRUZSRVNIX0xPQURFRDtcbiJdfQ==
@@ -0,0 +1,75 @@
1
+ import { __decorate, __extends, __param } from "tslib";
2
+ import { ElementRef, Inject, Injectable } from '@angular/core';
3
+ import { tuiScrollFrom, tuiTypedFromEvent } from '@taiga-ui/cdk';
4
+ import { TUI_SCROLL_REF } from '@taiga-ui/core';
5
+ import { EMPTY, Observable } from 'rxjs';
6
+ import { distinctUntilChanged, endWith, filter, map, scan, share, startWith, switchMap, takeUntil, takeWhile, tap, } from 'rxjs/operators';
7
+ import { TUI_PULL_TO_REFRESH_COMPONENT, TUI_PULL_TO_REFRESH_LOADED, } from './pull-to-refresh.providers';
8
+ import { TUI_PULL_TO_REFRESH_THRESHOLD } from './pull-to-refresh.tokens';
9
+ export var MICRO_OFFSET = Math.pow(10, -6);
10
+ // @dynamic
11
+ var TuiPullToRefreshService = /** @class */ (function (_super) {
12
+ __extends(TuiPullToRefreshService, _super);
13
+ function TuiPullToRefreshService(el, scrollRef, loaded$, threshold, component) {
14
+ var _this = _super.call(this, function (subscriber) { return (component ? _this.pulling$ : EMPTY).subscribe(subscriber); }) || this;
15
+ _this.el = el;
16
+ _this.scrollRef = scrollRef;
17
+ _this.loaded$ = loaded$;
18
+ _this.threshold = threshold;
19
+ // Hack for iOS to determine if pulling stopped due to scroll
20
+ // because Safari does not support `touch-action: pan-down`
21
+ _this.touched = false;
22
+ _this.pulling$ = _this.loaded$.pipe(startWith(null), switchMap(function () {
23
+ return tuiTypedFromEvent(_this.element, "touchstart", { passive: true }).pipe(filter(function () { return !_this.scrollTop; }), map(function (_a) {
24
+ var touches = _a.touches;
25
+ return touches[0].clientY;
26
+ }), switchMap(function (start) {
27
+ return tuiTypedFromEvent(_this.element, "touchmove").pipe(tap(function () {
28
+ _this.touched = true;
29
+ }), map(function (_a) {
30
+ var touches = _a.touches;
31
+ return touches[0].clientY - start;
32
+ }), filter(function (distance) { return distance > 0; }), takeUntil(tuiTypedFromEvent(_this.element, "touchend").pipe(tap(function () {
33
+ _this.touched = false;
34
+ }))), takeUntil(tuiScrollFrom(_this.scrollRef.nativeElement)), endWith(0));
35
+ }), scan(function (prev, current) {
36
+ return !current && !_this.touched && prev > _this.threshold
37
+ ? _this.threshold
38
+ : current + current * MICRO_OFFSET;
39
+ }, 0), takeWhile(function (distance) { return distance !== _this.threshold; }, true), startWith(0));
40
+ }), distinctUntilChanged(), share());
41
+ return _this;
42
+ }
43
+ Object.defineProperty(TuiPullToRefreshService.prototype, "element", {
44
+ get: function () {
45
+ return this.el.nativeElement;
46
+ },
47
+ enumerable: true,
48
+ configurable: true
49
+ });
50
+ Object.defineProperty(TuiPullToRefreshService.prototype, "scrollTop", {
51
+ get: function () {
52
+ return this.scrollRef.nativeElement.scrollTop;
53
+ },
54
+ enumerable: true,
55
+ configurable: true
56
+ });
57
+ TuiPullToRefreshService.ctorParameters = function () { return [
58
+ { type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
59
+ { type: ElementRef, decorators: [{ type: Inject, args: [TUI_SCROLL_REF,] }] },
60
+ { type: Observable, decorators: [{ type: Inject, args: [TUI_PULL_TO_REFRESH_LOADED,] }] },
61
+ { type: Number, decorators: [{ type: Inject, args: [TUI_PULL_TO_REFRESH_THRESHOLD,] }] },
62
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_PULL_TO_REFRESH_COMPONENT,] }] }
63
+ ]; };
64
+ TuiPullToRefreshService = __decorate([
65
+ Injectable(),
66
+ __param(0, Inject(ElementRef)),
67
+ __param(1, Inject(TUI_SCROLL_REF)),
68
+ __param(2, Inject(TUI_PULL_TO_REFRESH_LOADED)),
69
+ __param(3, Inject(TUI_PULL_TO_REFRESH_THRESHOLD)),
70
+ __param(4, Inject(TUI_PULL_TO_REFRESH_COMPONENT))
71
+ ], TuiPullToRefreshService);
72
+ return TuiPullToRefreshService;
73
+ }(Observable));
74
+ export { TuiPullToRefreshService };
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVsbC10by1yZWZyZXNoLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tbW9iaWxlL2NvbXBvbmVudHMvcHVsbC10by1yZWZyZXNoLyIsInNvdXJjZXMiOlsicHVsbC10by1yZWZyZXNoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUMsYUFBYSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsS0FBSyxFQUFFLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLE9BQU8sRUFDUCxNQUFNLEVBQ04sR0FBRyxFQUNILElBQUksRUFDSixLQUFLLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxFQUNULEdBQUcsR0FDTixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDSCw2QkFBNkIsRUFDN0IsMEJBQTBCLEdBQzdCLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFdkUsTUFBTSxDQUFDLElBQU0sWUFBWSxHQUFHLFNBQUEsRUFBRSxFQUFJLENBQUMsQ0FBQyxDQUFBLENBQUM7QUFFckMsV0FBVztBQUVYO0lBQTZDLDJDQUFrQjtJQTRDM0QsaUNBQ3lDLEVBQTJCLEVBQ3ZCLFNBQWtDLEVBQ3RCLE9BQTRCLEVBQ3pCLFNBQWlCLEVBQ2xDLFNBQWtCO1FBTDdELFlBT0ksa0JBQU0sVUFBQSxVQUFVLElBQUksT0FBQSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUF6RCxDQUF5RCxDQUFDLFNBQ2pGO1FBUHdDLFFBQUUsR0FBRixFQUFFLENBQXlCO1FBQ3ZCLGVBQVMsR0FBVCxTQUFTLENBQXlCO1FBQ3RCLGFBQU8sR0FBUCxPQUFPLENBQXFCO1FBQ3pCLGVBQVMsR0FBVCxTQUFTLENBQVE7UUEvQzdFLDZEQUE2RDtRQUM3RCwyREFBMkQ7UUFDbkQsYUFBTyxHQUFHLEtBQUssQ0FBQztRQUVQLGNBQVEsR0FBRyxLQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDekMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUNmLFNBQVMsQ0FBQztZQUNOLE9BQUEsaUJBQWlCLENBQUMsS0FBSSxDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQyxJQUFJLENBQy9ELE1BQU0sQ0FBQyxjQUFNLE9BQUEsQ0FBQyxLQUFJLENBQUMsU0FBUyxFQUFmLENBQWUsQ0FBQyxFQUM3QixHQUFHLENBQUMsVUFBQyxFQUFTO29CQUFSLG9CQUFPO2dCQUFNLE9BQUEsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU87WUFBbEIsQ0FBa0IsQ0FBQyxFQUN0QyxTQUFTLENBQUMsVUFBQSxLQUFLO2dCQUNYLE9BQUEsaUJBQWlCLENBQUMsS0FBSSxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQzdDLEdBQUcsQ0FBQztvQkFDQSxLQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztnQkFDeEIsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLFVBQUMsRUFBUzt3QkFBUixvQkFBTztvQkFBTSxPQUFBLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsS0FBSztnQkFBMUIsQ0FBMEIsQ0FBQyxFQUM5QyxNQUFNLENBQUMsVUFBQSxRQUFRLElBQUksT0FBQSxRQUFRLEdBQUcsQ0FBQyxFQUFaLENBQVksQ0FBQyxFQUNoQyxTQUFTLENBQ0wsaUJBQWlCLENBQUMsS0FBSSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQzVDLEdBQUcsQ0FBQztvQkFDQSxLQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztnQkFDekIsQ0FBQyxDQUFDLENBQ0wsQ0FDSixFQUNELFNBQVMsQ0FBQyxhQUFhLENBQUMsS0FBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUN0RCxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQ2I7WUFmRCxDQWVDLENBQ0osRUFDRCxJQUFJLENBQ0EsVUFBQyxJQUFJLEVBQUUsT0FBTztnQkFDVixPQUFBLENBQUMsT0FBTyxJQUFJLENBQUMsS0FBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLEdBQUcsS0FBSSxDQUFDLFNBQVM7b0JBQzlDLENBQUMsQ0FBQyxLQUFJLENBQUMsU0FBUztvQkFDaEIsQ0FBQyxDQUFDLE9BQU8sR0FBRyxPQUFPLEdBQUcsWUFBWTtZQUZ0QyxDQUVzQyxFQUMxQyxDQUFDLENBQ0osRUFDRCxTQUFTLENBQUMsVUFBQSxRQUFRLElBQUksT0FBQSxRQUFRLEtBQUssS0FBSSxDQUFDLFNBQVMsRUFBM0IsQ0FBMkIsRUFBRSxJQUFJLENBQUMsRUFDeEQsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUNmO1FBOUJELENBOEJDLENBQ0osRUFDRCxvQkFBb0IsRUFBRSxFQUN0QixLQUFLLEVBQUUsQ0FDVixDQUFDOztJQVVGLENBQUM7SUFFRCxzQkFBWSw0Q0FBTzthQUFuQjtZQUNJLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUM7UUFDakMsQ0FBQzs7O09BQUE7SUFFRCxzQkFBWSw4Q0FBUzthQUFyQjtZQUNJLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO1FBQ2xELENBQUM7OztPQUFBOztnQkFmNEMsVUFBVSx1QkFBbEQsTUFBTSxTQUFDLFVBQVU7Z0JBQ2tDLFVBQVUsdUJBQTdELE1BQU0sU0FBQyxjQUFjO2dCQUN3QyxVQUFVLHVCQUF2RSxNQUFNLFNBQUMsMEJBQTBCOzZDQUNqQyxNQUFNLFNBQUMsNkJBQTZCO2dEQUNwQyxNQUFNLFNBQUMsNkJBQTZCOztJQWpEaEMsdUJBQXVCO1FBRG5DLFVBQVUsRUFBRTtRQThDSixXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNsQixXQUFBLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQTtRQUN0QixXQUFBLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO1FBQ2xDLFdBQUEsTUFBTSxDQUFDLDZCQUE2QixDQUFDLENBQUE7UUFDckMsV0FBQSxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtPQWpEakMsdUJBQXVCLENBNkRuQztJQUFELDhCQUFDO0NBQUEsQUE3REQsQ0FBNkMsVUFBVSxHQTZEdEQ7U0E3RFksdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFbGVtZW50UmVmLCBJbmplY3QsIEluamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0dWlTY3JvbGxGcm9tLCB0dWlUeXBlZEZyb21FdmVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1RVSV9TQ1JPTExfUkVGfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge0VNUFRZLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gICAgZW5kV2l0aCxcbiAgICBmaWx0ZXIsXG4gICAgbWFwLFxuICAgIHNjYW4sXG4gICAgc2hhcmUsXG4gICAgc3RhcnRXaXRoLFxuICAgIHN3aXRjaE1hcCxcbiAgICB0YWtlVW50aWwsXG4gICAgdGFrZVdoaWxlLFxuICAgIHRhcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICAgIFRVSV9QVUxMX1RPX1JFRlJFU0hfQ09NUE9ORU5ULFxuICAgIFRVSV9QVUxMX1RPX1JFRlJFU0hfTE9BREVELFxufSBmcm9tICcuL3B1bGwtdG8tcmVmcmVzaC5wcm92aWRlcnMnO1xuaW1wb3J0IHtUVUlfUFVMTF9UT19SRUZSRVNIX1RIUkVTSE9MRH0gZnJvbSAnLi9wdWxsLXRvLXJlZnJlc2gudG9rZW5zJztcblxuZXhwb3J0IGNvbnN0IE1JQ1JPX09GRlNFVCA9IDEwICoqIC02O1xuXG4vLyBAZHluYW1pY1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFR1aVB1bGxUb1JlZnJlc2hTZXJ2aWNlIGV4dGVuZHMgT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICAvLyBIYWNrIGZvciBpT1MgdG8gZGV0ZXJtaW5lIGlmIHB1bGxpbmcgc3RvcHBlZCBkdWUgdG8gc2Nyb2xsXG4gICAgLy8gYmVjYXVzZSBTYWZhcmkgZG9lcyBub3Qgc3VwcG9ydCBgdG91Y2gtYWN0aW9uOiBwYW4tZG93bmBcbiAgICBwcml2YXRlIHRvdWNoZWQgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHVsbGluZyQgPSB0aGlzLmxvYWRlZCQucGlwZShcbiAgICAgICAgc3RhcnRXaXRoKG51bGwpLFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT5cbiAgICAgICAgICAgIHR1aVR5cGVkRnJvbUV2ZW50KHRoaXMuZWxlbWVudCwgYHRvdWNoc3RhcnRgLCB7cGFzc2l2ZTogdHJ1ZX0pLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKCgpID0+ICF0aGlzLnNjcm9sbFRvcCksXG4gICAgICAgICAgICAgICAgbWFwKCh7dG91Y2hlc30pID0+IHRvdWNoZXNbMF0uY2xpZW50WSksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKHN0YXJ0ID0+XG4gICAgICAgICAgICAgICAgICAgIHR1aVR5cGVkRnJvbUV2ZW50KHRoaXMuZWxlbWVudCwgYHRvdWNobW92ZWApLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICB0YXAoKCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudG91Y2hlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgoe3RvdWNoZXN9KSA9PiB0b3VjaGVzWzBdLmNsaWVudFkgLSBzdGFydCksXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIoZGlzdGFuY2UgPT4gZGlzdGFuY2UgPiAwKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlUeXBlZEZyb21FdmVudCh0aGlzLmVsZW1lbnQsIGB0b3VjaGVuZGApLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcCgoKTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRvdWNoZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwodHVpU2Nyb2xsRnJvbSh0aGlzLnNjcm9sbFJlZi5uYXRpdmVFbGVtZW50KSksXG4gICAgICAgICAgICAgICAgICAgICAgICBlbmRXaXRoKDApLFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgc2NhbihcbiAgICAgICAgICAgICAgICAgICAgKHByZXYsIGN1cnJlbnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAhY3VycmVudCAmJiAhdGhpcy50b3VjaGVkICYmIHByZXYgPiB0aGlzLnRocmVzaG9sZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gdGhpcy50aHJlc2hvbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGN1cnJlbnQgKyBjdXJyZW50ICogTUlDUk9fT0ZGU0VULFxuICAgICAgICAgICAgICAgICAgICAwLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgdGFrZVdoaWxlKGRpc3RhbmNlID0+IGRpc3RhbmNlICE9PSB0aGlzLnRocmVzaG9sZCwgdHJ1ZSksXG4gICAgICAgICAgICAgICAgc3RhcnRXaXRoKDApLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgc2hhcmUoKSxcbiAgICApO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoVFVJX1NDUk9MTF9SRUYpIHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsUmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUVUlfUFVMTF9UT19SRUZSRVNIX0xPQURFRCkgcHJpdmF0ZSByZWFkb25seSBsb2FkZWQkOiBPYnNlcnZhYmxlPHVua25vd24+LFxuICAgICAgICBASW5qZWN0KFRVSV9QVUxMX1RPX1JFRlJFU0hfVEhSRVNIT0xEKSBwcml2YXRlIHJlYWRvbmx5IHRocmVzaG9sZDogbnVtYmVyLFxuICAgICAgICBASW5qZWN0KFRVSV9QVUxMX1RPX1JFRlJFU0hfQ09NUE9ORU5UKSBjb21wb25lbnQ6IHVua25vd24sXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKHN1YnNjcmliZXIgPT4gKGNvbXBvbmVudCA/IHRoaXMucHVsbGluZyQgOiBFTVBUWSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBlbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBzY3JvbGxUb3AoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2Nyb2xsUmVmLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,8 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ /**
3
+ * Pull threshold in pixels until loading starts
4
+ */
5
+ export var TUI_PULL_TO_REFRESH_THRESHOLD = new InjectionToken("[TUI_PULL_TO_REFRESH_THRESHOLD]", {
6
+ factory: function () { return 50; },
7
+ });
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVsbC10by1yZWZyZXNoLnRva2Vucy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1tb2JpbGUvY29tcG9uZW50cy9wdWxsLXRvLXJlZnJlc2gvIiwic291cmNlcyI6WyJwdWxsLXRvLXJlZnJlc2gudG9rZW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFN0M7O0dBRUc7QUFFSCxNQUFNLENBQUMsSUFBTSw2QkFBNkIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsaUNBQWlDLEVBQ2pDO0lBQ0ksT0FBTyxFQUFFLGNBQU0sT0FBQSxFQUFFLEVBQUYsQ0FBRTtDQUNwQixDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBQdWxsIHRocmVzaG9sZCBpbiBwaXhlbHMgdW50aWwgbG9hZGluZyBzdGFydHNcbiAqL1xuXG5leHBvcnQgY29uc3QgVFVJX1BVTExfVE9fUkVGUkVTSF9USFJFU0hPTEQgPSBuZXcgSW5qZWN0aW9uVG9rZW48bnVtYmVyPihcbiAgICBgW1RVSV9QVUxMX1RPX1JFRlJFU0hfVEhSRVNIT0xEXWAsXG4gICAge1xuICAgICAgICBmYWN0b3J5OiAoKSA9PiA1MCxcbiAgICB9LFxuKTtcbiJdfQ==