import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core'; import { Injectable } from '@angular/core'; export interface DocumentViewerOptions { title: string; documentView: { closeLabel: string; }; navigationView: { closeLabel: string; }; email: { enabled: boolean; }; print: { enabled: boolean; }; openWith: { enabled: boolean; }; bookmarks: { enabled: boolean; }; search: { enabled: boolean; }; autoClose: { onPause: boolean; }; }; /** * @name Document Viewer * @description * This plugin offers a slim API to view PDF files which are either stored in the apps assets folder (/www/*) or in any other file system directory available via the cordova file plugin. * * @usage * ```typescript * import { DocumentViewer } from '@ionic-native/document-viewer'; * * * constructor(private document: DocumentViewer) { } * * ... * const options = { * title: 'My PDF' * } * this.document.view('assets/myFile.pdf', 'application/pdf', options) * * ``` * * @interfaces * DocumentViewerOptions */ @Plugin({ pluginName: 'Document Viewer', plugin: 'cordova-plugin-document-viewer', pluginRef: 'SitewaertsDocumentViewer', repo: 'DocumentViewer', platforms: ['Android', 'iOS', 'Windows'] }) @Injectable() export class DocumentViewer extends IonicNativePlugin { /** * Displays the email composer pre-filled with data. * * @returns {Promise} Resolves promise when the EmailComposer has been opened */ @Cordova() getSupportInfo(): Promise { return; } /** * Check if the document can be shown * * @param url {string} Url to the file * @param contentType {string} Content type of the file * @param options {Array} options */ @Cordova({ sync: true }) canViewDocument(url: string, contentType: string, options: Array): void { } /** * Opens the file * * @param url {string} Url to the file * @param contentType {string} Content type of the file * @param options {Array} options */ @Cordova({ sync: true }) viewDocument(url: string, contentType: string, options: Array): void { } }