Skip to content

houseninjadojo/ember-capacitor-haptics

Repository files navigation

ember-capacitor-haptics

Haptics Capacitor plugin as Ember Service.

Compatibility

  • Ember.js v3.28 or above
  • Ember CLI v3.28 or above
  • Node.js v14 or above

Installation

ember install @ember-capacitor/haptics

Usage

import Component from '@glimmer/component';
import { inject as service } from '@ember/service';
import { action } from '@ember/object';

import { ImpactStyle } from 'ember-capacitor-haptics/services/capacitor-haptics';

export default class MyComponent extends Component {
  @service haptics;

  @action
  async vibrate() {
    await this.haptics.vibrate(ImpactStyle.Heavy);
  }
}

API

impact(...)

impact(options?: ImpactOptions | undefined) => Promise<void>

Trigger a haptics "impact" feedback

Param Type
options ImpactOptions

Since: 1.0.0


notification(...)

notification(options?: NotificationOptions | undefined) => Promise<void>

Trigger a haptics "notification" feedback

Param Type
options NotificationOptions

Since: 1.0.0


vibrate(...)

vibrate(options?: VibrateOptions | undefined) => Promise<void>

Vibrate the device

Param Type
options VibrateOptions

Since: 1.0.0


selectionStart()

selectionStart() => Promise<void>

Trigger a selection started haptic hint

Since: 1.0.0


selectionChanged()

selectionChanged() => Promise<void>

Trigger a selection changed haptic hint. If a selection was started already, this will cause the device to provide haptic feedback

Since: 1.0.0


selectionEnd()

selectionEnd() => Promise<void>

If selectionStart() was called, selectionEnd() ends the selection. For example, call this when a user has lifted their finger from a control

Since: 1.0.0


Interfaces

ImpactOptions

Prop Type Description Default Since
style ImpactStyle Impact Feedback Style The mass of the objects in the collision simulated by a UIImpactFeedbackGenerator object. ImpactStyle.Heavy 1.0.0

NotificationOptions

Prop Type Description Default Since
type NotificationType Notification Feedback Type The type of notification feedback generated by a UINotificationFeedbackGenerator object. NotificationType.SUCCESS 1.0.0

VibrateOptions

Prop Type Description Default Since
duration number Duration of the vibration in milliseconds. 300 1.0.0

Enums

ImpactStyle

Members Value Description Since
Heavy 'HEAVY' A collision between large, heavy user interface elements 1.0.0
Medium 'MEDIUM' A collision between moderately sized user interface elements 1.0.0
Light 'LIGHT' A collision between small, light user interface elements 1.0.0

NotificationType

Members Value Description Since
Success 'SUCCESS' A notification feedback type indicating that a task has completed successfully 1.0.0
Warning 'WARNING' A notification feedback type indicating that a task has produced a warning 1.0.0
Error 'ERROR' A notification feedback type indicating that a task has failed 1.0.0

Contributing

See the Contributing guide for details.

License

This project is licensed under the MIT License.