1.0.2 • Published 1 year ago
capacitor-quick-actions v1.0.2
Capacitor Quick Actions
Plugin for using Quick Actions in your Capacitor Apps.
Now it supports only on iOS/iPadOS 13+.
Install
npm install capacitor-quick-actions
npx cap sync
Preparation
Modify your AppDelegate.swift
:
1. Add import CapacitorQuickActions
to the top of the file.
2. Add application function
to the bottom of the file:
func application(_ application: UIApplication, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void) {
let handled = QuickActions.handleQuickAction(shortcutItem)
completionHandler(handled)
}
Example of the AppDelegate.swift
file available here.
Usage
// Import the plugin
import { QuickActions } from 'capacitor-quick-actions';
// Add buttons to the home screen
const addButtonsToHomeScreen = async () => {
await QuickActions.addQuickActions({
actions: [
{ id: "button1", title: 'Action1', iconName: 'house', description: 'Description1' },
{ id: "button2", title: 'Action2', iconName: '2' } // Description is optional
]
});
}
// Remove buttons from the home screen
const clearButtonsFromHomeScreen = async () => {
await QuickActions.clearQuickActions();
}
// Add Listener for the selected action
QuickActions.addListener('quickActionSelected', (data) => {
console.log('Quick Action selected:', data.type); // returns id of the selected action
});
Icons
To use icons in your quick actions provide the name of the icon from this app.
API
addQuickActions(...)
addQuickActions(options: { actions: QuickAction[]; }) => Promise<void>
Param | Type |
---|---|
options | { actions: QuickAction[]; } |
clearQuickActions()
clearQuickActions() => Promise<void>
addListener('quickActionSelected', ...)
addListener(eventName: 'quickActionSelected', listenerFunc: (data: { type: string; }) => void) => PluginListenerHandle
Param | Type |
---|---|
eventName | 'quickActionSelected' |
listenerFunc | (data: { type: string; }) => void |
Returns: PluginListenerHandle
Interfaces
QuickAction
Prop | Type |
---|---|
id | string |
title | string |
iconName | string |
description | string |
PluginListenerHandle
Prop | Type |
---|---|
remove | () => Promise<void> |