@microsoft/omnichannel-amsclient
Advanced tools
Comparing version 0.1.5-main.b1291d8 to 0.1.5-main.c68b1c5
@@ -5,3 +5,8 @@ # Changelog | ||
## [Unreleased] | ||
### Fixed | ||
- Fix `FramedClient` not retrieving custom supported image MIME types | ||
### Added | ||
- Added error handling for createObject and uploadDocument | ||
## [0.1.4] - 2023-02-09 | ||
@@ -8,0 +13,0 @@ ### Added |
@@ -101,2 +101,14 @@ "use strict"; | ||
}; | ||
var defineSupportedImagesMimeTypes = function (supportedImagesMimeTypes) { | ||
return (supportedImagesMimeTypes && supportedImagesMimeTypes.length > 0) ? | ||
supportedImagesMimeTypes : | ||
defaultSupportedImagesMimeTypes; | ||
}; | ||
var defineTypeForOperation = function (fileType, apiOperation, supportedImagesMimeTypes) { | ||
var mimeTypes = defineSupportedImagesMimeTypes(supportedImagesMimeTypes); | ||
if (mimeTypes.includes(fileType.toLowerCase())) { | ||
return apiOperation === AmsApiOperation.Create ? DocumentTypes.CreateImageType : DocumentTypes.UploadImageType; | ||
} | ||
return apiOperation === AmsApiOperation.Create ? DocumentTypes.CreateDocumentType : DocumentTypes.UploadDocumentType; | ||
}; | ||
var skypeTokenAuth = function (chatToken) { return __awaiter(void 0, void 0, void 0, function () { | ||
@@ -138,14 +150,2 @@ var url, headers, request, response, error_1; | ||
}); }; | ||
var defineSupportedImagesMimeTypes = function (supportedImagesMimeTypes) { | ||
return (supportedImagesMimeTypes && supportedImagesMimeTypes.length > 0) ? | ||
supportedImagesMimeTypes : | ||
defaultSupportedImagesMimeTypes; | ||
}; | ||
var defineTypeForOperation = function (fileType, apiOperation, supportedImagesMimeTypes) { | ||
var mimeTypes = defineSupportedImagesMimeTypes(supportedImagesMimeTypes); | ||
if (mimeTypes.includes(fileType.toLowerCase())) { | ||
return apiOperation === AmsApiOperation.Create ? DocumentTypes.CreateImageType : DocumentTypes.UploadImageType; | ||
} | ||
return apiOperation === AmsApiOperation.Create ? DocumentTypes.CreateDocumentType : DocumentTypes.UploadDocumentType; | ||
}; | ||
var createObject = function (id, file, chatToken, supportedImagesMimeTypes) { return __awaiter(void 0, void 0, void 0, function () { | ||
@@ -183,2 +183,5 @@ var permissions, typeObject, body, url, headers, request, response, jsonResponse, error_2; | ||
response = _d.sent(); | ||
if (!response.ok) { | ||
throw new Error("AMSCreateObjectFailed"); | ||
} | ||
return [4 /*yield*/, response.json()]; | ||
@@ -197,3 +200,3 @@ case 3: | ||
var uploadDocument = function (documentId, file, chatToken, supportedImagesMimeTypes) { return __awaiter(void 0, void 0, void 0, function () { | ||
var typeObject, url, headers, request, fileMetadata, error_3; | ||
var typeObject, url, headers, request, response, fileMetadata, error_3; | ||
var _a; | ||
@@ -219,3 +222,6 @@ var _b; | ||
case 2: | ||
_c.sent(); | ||
response = _c.sent(); | ||
if (!response.ok) { | ||
throw new Error("AMSUploadDocumentFailed"); | ||
} | ||
fileMetadata = { | ||
@@ -222,0 +228,0 @@ name: file.name, |
@@ -1,1 +0,1 @@ | ||
exports.baseUrl = 'https://comms.omnichannelengagementhub.com/ams'; exports.sdkVersion = '0.1.5-main.b1291d8'; | ||
exports.baseUrl = 'https://comms.omnichannelengagementhub.com/ams'; exports.sdkVersion = '0.1.5-main.c68b1c5'; |
@@ -56,2 +56,3 @@ "use strict"; | ||
var uuid_1 = require("./utils/uuid"); | ||
var PostMessageEventStatus_1 = require("./PostMessageEventStatus"); | ||
var version = config_1.sdkVersion; | ||
@@ -315,12 +316,28 @@ var iframePrefix = 'Microsoft_Omnichannel_AMSClient_Iframe_Window'; | ||
else if (event.data.eventName === PostMessageEventName_1.default.CreateObject) { | ||
if (data.requestId in this.requestCallbacks) { | ||
this.requestCallbacks[data.requestId].resolve(data.response); | ||
delete this.requestCallbacks[data.requestId]; | ||
if (data.eventStatus === PostMessageEventStatus_1.default.Success) { | ||
if (data.requestId in this.requestCallbacks) { | ||
this.requestCallbacks[data.requestId].resolve(data.response); | ||
delete this.requestCallbacks[data.requestId]; | ||
} | ||
} | ||
else { | ||
if (data.requestId in this.requestCallbacks) { | ||
this.requestCallbacks[data.requestId].reject(); | ||
delete this.requestCallbacks[data.requestId]; | ||
} | ||
} | ||
} | ||
else if (event.data.eventName === PostMessageEventName_1.default.UploadDocument) { | ||
if (data.requestId in this.requestCallbacks) { | ||
this.requestCallbacks[data.requestId].resolve(data.response); | ||
delete this.requestCallbacks[data.requestId]; | ||
if (data.eventStatus === PostMessageEventStatus_1.default.Success) { | ||
if (data.requestId in this.requestCallbacks) { | ||
this.requestCallbacks[data.requestId].resolve(data.response); | ||
delete this.requestCallbacks[data.requestId]; | ||
} | ||
} | ||
else { | ||
if (data.requestId in this.requestCallbacks) { | ||
this.requestCallbacks[data.requestId].reject(); | ||
delete this.requestCallbacks[data.requestId]; | ||
} | ||
} | ||
} | ||
@@ -327,0 +344,0 @@ else if (event.data.eventName === PostMessageEventName_1.default.GetViewStatus) { |
@@ -105,3 +105,3 @@ "use strict"; | ||
return __awaiter(this, void 0, void 0, function () { | ||
var data, response, postMessageData, error_1, response, postMessageData, error_2, response, postMessageData, error_3, response, postMessageData, error_4, response, postMessageData, error_5; | ||
var data, response, postMessageData, error_1, response, postMessageData, error_2, postMessageData, response, postMessageData, error_3, postMessageData, response, postMessageData, error_4, response, postMessageData, error_5; | ||
return __generator(this, function (_u) { | ||
@@ -172,3 +172,3 @@ switch (_u.label) { | ||
_u.trys.push([6, 8, , 9]); | ||
return [4 /*yield*/, API_1.default.createObject(data.id, data.file, data.chatToken)]; | ||
return [4 /*yield*/, API_1.default.createObject(data.id, data.file, data.chatToken, data.supportedImagesMimeTypes)]; | ||
case 7: | ||
@@ -194,3 +194,9 @@ response = _u.sent(); | ||
error_2 = _u.sent(); | ||
this.postMessage(PostMessageEventType_1.default.Response, PostMessageEventName_1.default.CreateObject, {}, PostMessageEventStatus_1.default.Failure); | ||
postMessageData = { | ||
requestId: data.requestId, | ||
eventType: PostMessageEventType_1.default.Response, | ||
eventName: data.eventName, | ||
eventStatus: PostMessageEventStatus_1.default.Failure | ||
}; | ||
this.postMessage(PostMessageEventType_1.default.Response, PostMessageEventName_1.default.CreateObject, postMessageData, PostMessageEventStatus_1.default.Failure); | ||
this.scenarioMarker.failScenario(PostMessageEventName_1.default.CreateObject, { | ||
@@ -217,3 +223,3 @@ AMSClientRuntimeId: data.runtimeId, | ||
_u.trys.push([11, 13, , 14]); | ||
return [4 /*yield*/, API_1.default.uploadDocument(data.documentId, data.file, data.chatToken)]; | ||
return [4 /*yield*/, API_1.default.uploadDocument(data.documentId, data.file, data.chatToken, data.supportedImagesMimeTypes)]; | ||
case 12: | ||
@@ -240,3 +246,9 @@ response = _u.sent(); | ||
error_3 = _u.sent(); | ||
this.postMessage(PostMessageEventType_1.default.Response, PostMessageEventName_1.default.UploadDocument, {}, PostMessageEventStatus_1.default.Failure); | ||
postMessageData = { | ||
requestId: data.requestId, | ||
eventType: PostMessageEventType_1.default.Response, | ||
eventName: data.eventName, | ||
eventStatus: PostMessageEventStatus_1.default.Failure | ||
}; | ||
this.postMessage(PostMessageEventType_1.default.Response, PostMessageEventName_1.default.UploadDocument, postMessageData, PostMessageEventStatus_1.default.Failure); | ||
this.scenarioMarker.failScenario(PostMessageEventName_1.default.UploadDocument, { | ||
@@ -264,3 +276,3 @@ AMSClientRuntimeId: data.runtimeId, | ||
_u.trys.push([16, 18, , 19]); | ||
return [4 /*yield*/, API_1.default.getViewStatus(data.fileMetadata, data.chatToken)]; | ||
return [4 /*yield*/, API_1.default.getViewStatus(data.fileMetadata, data.chatToken, data.supportedImagesMimeTypes)]; | ||
case 17: | ||
@@ -310,3 +322,3 @@ response = _u.sent(); | ||
_u.trys.push([21, 23, , 24]); | ||
return [4 /*yield*/, API_1.default.getView(data.fileMetadata, data.viewLocation, data.chatToken)]; | ||
return [4 /*yield*/, API_1.default.getView(data.fileMetadata, data.viewLocation, data.chatToken, data.supportedImagesMimeTypes)]; | ||
case 22: | ||
@@ -313,0 +325,0 @@ response = _u.sent(); |
{ | ||
"name": "@microsoft/omnichannel-amsclient", | ||
"version": "0.1.5-main.b1291d8", | ||
"version": "0.1.5-main.c68b1c5", | ||
"description": "Microsoft Omnichannel AMSClient", | ||
@@ -5,0 +5,0 @@ "files": [ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
259572
2116