gesture-controller.mjs 3.5 KB

1234567891011121314151617181920212223242526272829303132
  1. import { Injectable } from '@angular/core';
  2. import { createGesture } from '@ionic/core';
  3. import * as i0 from "@angular/core";
  4. export class GestureController {
  5. zone;
  6. constructor(zone) {
  7. this.zone = zone;
  8. }
  9. /**
  10. * Create a new gesture
  11. */
  12. create(opts, runInsideAngularZone = false) {
  13. if (runInsideAngularZone) {
  14. Object.getOwnPropertyNames(opts).forEach((key) => {
  15. if (typeof opts[key] === 'function') {
  16. const fn = opts[key];
  17. opts[key] = (...props) => this.zone.run(() => fn(...props));
  18. }
  19. });
  20. }
  21. return createGesture(opts);
  22. }
  23. /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GestureController, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
  24. /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GestureController, providedIn: 'root' });
  25. }
  26. i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GestureController, decorators: [{
  27. type: Injectable,
  28. args: [{
  29. providedIn: 'root',
  30. }]
  31. }], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
  32. //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzdHVyZS1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Byb3ZpZGVycy9nZXN0dXJlLWNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUs1QyxNQUFNLE9BQU8saUJBQWlCO0lBQ1I7SUFBcEIsWUFBb0IsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7SUFBRyxDQUFDO0lBQ3BDOztPQUVHO0lBQ0gsTUFBTSxDQUFDLElBQW1CLEVBQUUsb0JBQW9CLEdBQUcsS0FBSztRQUN0RCxJQUFJLG9CQUFvQixFQUFFO1lBQ3hCLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDL0MsSUFBSSxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxVQUFVLEVBQUU7b0JBQ25DLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFZLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7aUJBQ3BFO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUVELE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdCLENBQUM7MkhBaEJVLGlCQUFpQjsrSEFBakIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHsgR2VzdHVyZSwgR2VzdHVyZUNvbmZpZyB9IGZyb20gJ0Bpb25pYy9jb3JlJztcbmltcG9ydCB7IGNyZWF0ZUdlc3R1cmUgfSBmcm9tICdAaW9uaWMvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBHZXN0dXJlQ29udHJvbGxlciB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgem9uZTogTmdab25lKSB7fVxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGdlc3R1cmVcbiAgICovXG4gIGNyZWF0ZShvcHRzOiBHZXN0dXJlQ29uZmlnLCBydW5JbnNpZGVBbmd1bGFyWm9uZSA9IGZhbHNlKTogR2VzdHVyZSB7XG4gICAgaWYgKHJ1bkluc2lkZUFuZ3VsYXJab25lKSB7XG4gICAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhvcHRzKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBvcHRzW2tleV0gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICBjb25zdCBmbiA9IG9wdHNba2V5XTtcbiAgICAgICAgICBvcHRzW2tleV0gPSAoLi4ucHJvcHM6IGFueVtdKSA9PiB0aGlzLnpvbmUucnVuKCgpID0+IGZuKC4uLnByb3BzKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBjcmVhdGVHZXN0dXJlKG9wdHMpO1xuICB9XG59XG4iXX0=