From ce972e7e45664d6ffd7524e3ada5500625bb0ba5 Mon Sep 17 00:00:00 2001 From: Damyan Mitev <damyan.mitev@vereign.com> Date: Tue, 28 May 2019 11:07:24 +0300 Subject: [PATCH] implement WopiAPI.createDocument --- javascript/src/iframe/wopiapi-iframe.js | 27 +++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/javascript/src/iframe/wopiapi-iframe.js b/javascript/src/iframe/wopiapi-iframe.js index 6e7794e..542042c 100644 --- a/javascript/src/iframe/wopiapi-iframe.js +++ b/javascript/src/iframe/wopiapi-iframe.js @@ -1,3 +1,5 @@ +import {encodeResponse} from "../utilities/appUtility"; + const axios = require('axios'); function WopiAPI() {} @@ -20,6 +22,31 @@ WopiAPI.prototype.getPassports = function (resourceID, contentType) { return axios(requestConfig); }; +WopiAPI.prototype.createDocument = async (passportUUID, path, contentType, title) => { + const authenticationPublicKey = localStorage.getItem("authenticatedIdentity"); + if ( + !authenticationPublicKey || + !window.loadedIdentities[authenticationPublicKey] || + !extendPinCodeTtl(authenticationPublicKey) + ) { + return encodeResponse("400", "", "Identity not authenticated"); + } + + const config = { + headers: { + path, + passportuuid: passportUUID, + contentType, + title + } + }; + const response = await executeRestfulFunction("private", window.viamApi, window.viamApi.documentCreateDocument, + config); + + const resourceID = response.data; + return await this.getPassports(resourceID, contentType); +}; + WopiAPI.prototype.putDocument = function (resourceID, accessToken, file) { const { publicKey, uuid, token, deviceHash } = window.viamApi.getConfig().headers; -- GitLab