From 48a766246d08170c709345bba235275eef0bd020 Mon Sep 17 00:00:00 2001 From: Liam DeBeasi Date: Fri, 8 Nov 2019 10:35:52 -0500 Subject: [PATCH] feat(angular): expose Ionic Gestures via GestureController (#19864) * expose gestures thru angular * run linter --- angular/src/index.ts | 1 + angular/src/providers/gesture-controller.ts | 14 ++++++++++++++ core/src/interface.d.ts | 2 +- 3 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 angular/src/providers/gesture-controller.ts diff --git a/angular/src/index.ts b/angular/src/index.ts index 77e1cb77edc..7569db35012 100644 --- a/angular/src/index.ts +++ b/angular/src/index.ts @@ -31,6 +31,7 @@ export { NavController } from './providers/nav-controller'; export { DomController } from './providers/dom-controller'; export { Config } from './providers/config'; export { AnimationController } from './providers/animation-controller'; +export { GestureController } from './providers/gesture-controller'; // ROUTER STRATEGY export { IonicRouteStrategy } from './util/ionic-router-reuse-strategy'; diff --git a/angular/src/providers/gesture-controller.ts b/angular/src/providers/gesture-controller.ts new file mode 100644 index 00000000000..c69186e3f21 --- /dev/null +++ b/angular/src/providers/gesture-controller.ts @@ -0,0 +1,14 @@ +import { Injectable } from '@angular/core'; +import { Gesture, GestureConfig, createGesture } from '@ionic/core'; + +@Injectable({ + providedIn: 'root', +}) +export class GestureController { + /** + * Create a new gesture + */ + create(opts: GestureConfig): Gesture { + return createGesture(opts); + } +} diff --git a/core/src/interface.d.ts b/core/src/interface.d.ts index dd3fedc0299..b066e44aab5 100644 --- a/core/src/interface.d.ts +++ b/core/src/interface.d.ts @@ -34,7 +34,7 @@ export * from './components/virtual-scroll/virtual-scroll-interface'; export { Animation, AnimationBuilder } from './utils/animation/animation-interface'; export * from './utils/overlays-interface'; export * from './global/config'; -export { Gesture, GestureDetail } from './utils/gesture'; +export { Gesture, GestureConfig, GestureDetail } from './utils/gesture'; // Global aux types export type TextFieldTypes = 'date' | 'email' | 'number' | 'password' | 'search' | 'tel' | 'text' | 'url' | 'time';