Rust implementation of NextGraph, a Decentralized and local-first web 3.0 ecosystem
https://nextgraph.org
byzantine-fault-tolerancecrdtsdappsdecentralizede2eeeventual-consistencyjson-ldlocal-firstmarkdownocapoffline-firstp2pp2p-networkprivacy-protectionrdfrich-text-editorself-hostedsemantic-websparqlweb3collaboration
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
797 B
29 lines
797 B
import {invoke, checkPermissions as checkPluginPermissions} from '@tauri-apps/api/core'
|
|
|
|
export type PermissionState = 'granted' | 'denied' | 'prompt'
|
|
|
|
export type PermissionType = 'readContacts'
|
|
|
|
export type PermissionStatus = {
|
|
readContacts: PermissionState
|
|
}
|
|
|
|
export type ImportContactsResult = {
|
|
contacts: any[]
|
|
}
|
|
|
|
export async function importContacts(): Promise<ImportContactsResult> {
|
|
return invoke('plugin:contacts-importer|import_contacts');
|
|
}
|
|
|
|
export async function checkPermissions(): Promise<PermissionStatus> {
|
|
return await checkPluginPermissions('contacts-importer')
|
|
}
|
|
|
|
export async function requestPermissions(
|
|
permissions: PermissionType[] | null
|
|
): Promise<PermissionStatus> {
|
|
return await invoke('plugin:contacts-importer|request_permissions', {
|
|
permissions
|
|
})
|
|
} |