@aurigma/design-atoms
Version:
Design Atoms is a part of Customer's Canvas SDK which allows for manipulating individual design elements through your code.
196 lines • 10.3 kB
JavaScript
import { MultiCallRequest } from "./MultiCallRequest";
import { ItemHandlerImageLoaderService } from "./ItemHandlerImageLoaderService";
import * as Utils from "@aurigma/design-atoms-model/Utils/Utils";
var Service = /** @class */ (function () {
function Service(designAtomsApiClient) {
var _this = this;
this._designAtomsApiClient = null;
this._multiCallEnabled = false;
this._nextMultiCallRequest = null;
this._updateShapeItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, resolve, failure) {
var data = {
canvasData: canvasData,
itemData: itemData,
itemHandlerData: itemHandlerData,
};
_this._designAtomsApiClient.sendRequest("UpdateShapeItemHandler", data, resolve, failure);
};
this._updateByColorData = function (canvasData, colorData, itemData, colorSettings, /* not used but required */ resolve, failure) {
var data = {
canvasData: canvasData,
colorData: colorData,
};
_this._designAtomsApiClient.sendRequest("UpdateByColorData", data, resolve, failure);
};
this._updateBoundedTextItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, resolve, failure) {
var data = {
itemData: itemData,
canvasData: canvasData,
itemHandlerData: itemHandlerData,
colorSettings: colorSettings
};
_this._designAtomsApiClient.sendRequest("UpdateBoundedTextItemHandler", data, resolve, failure);
};
this._updatePlainTextItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, resolve, failure) {
var data = {
itemData: itemData,
canvasData: canvasData,
itemHandlerData: itemHandlerData,
colorSettings: colorSettings
};
_this._designAtomsApiClient.sendRequest("UpdatePlainTextItemHandler", data, resolve, failure);
};
this._designAtomsApiClient = designAtomsApiClient;
this.imageLoaderService = new ItemHandlerImageLoaderService(Utils.urlCombine(designAtomsApiClient.backendUrl, "/api/ccviewer"));
}
Object.defineProperty(Service.prototype, "multiCallEnabled", {
get: function () {
return this._multiCallEnabled;
},
set: function (value) {
this._multiCallEnabled = value;
},
enumerable: true,
configurable: true
});
Object.defineProperty(Service.prototype, "multiCallStarted", {
get: function () {
return this._nextMultiCallRequest != null && this._nextMultiCallRequest.multiCallStarted;
},
enumerable: true,
configurable: true
});
Service.prototype.beginMultiCall = function () {
if (!this.multiCallEnabled)
return;
if (!this.multiCallStarted)
this._nextMultiCallRequest = new MultiCallRequest(this, this.imageLoaderService);
this._nextMultiCallRequest.beginMultiCall();
};
Service.prototype.endMultiCall = function (requestImage) {
if (requestImage === void 0) { requestImage = true; }
if (!this.multiCallEnabled)
return Promise.resolve(false);
if (!this.multiCallStarted)
throw new Error("ServiceProxy: beginMultiCall should be called first to start MultiCall.");
return this._nextMultiCallRequest.endMultiCall(requestImage);
};
Service.prototype.UpdateImageItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, actualSize, preserveAspectRatio, url, resolve, failure) {
var data = {
canvasData: canvasData,
itemHandlerData: itemHandlerData,
itemData: itemData,
actualSize: actualSize,
preserveAspectRatio: preserveAspectRatio,
url: url
};
this._designAtomsApiClient.sendRequest("UpdateImageItemHandler", data, resolve, failure);
};
Service.prototype.UpdateBarcodeItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, resolve, failure) {
var data = {
canvasData: canvasData,
itemHandlerData: itemHandlerData,
itemData: itemData,
colorSettings: colorSettings
};
this._designAtomsApiClient.sendRequest("UpdateBarcodeItemHandler", data, resolve, failure);
};
Service.prototype.UpdateBoundedTextItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, resolve, failure) {
this._callUpdateItemHandler(canvasData, itemHandlerData, itemData, colorSettings, resolve, failure, "UpdateBoundedTextItemHandler", this._updateBoundedTextItemHandler);
};
Service.prototype.UpdatePathBoundedTextItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, resolve, failure) {
var data = {
itemData: itemData,
canvasData: canvasData,
itemHandlerData: itemHandlerData,
colorSettings: colorSettings
};
this._designAtomsApiClient.sendRequest("UpdatePathBoundedTextItemHandler", data, resolve, failure);
};
Service.prototype.UpdatePlainTextItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, success, failure) {
this._callUpdateItemHandler(canvasData, itemHandlerData, itemData, colorSettings, success, failure, "UpdatePlainTextItemHandler", this._updatePlainTextItemHandler);
};
Service.prototype.UpdateAutoScaledTextItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, resolve, failure) {
var data = {
itemData: itemData,
canvasData: canvasData,
itemHandlerData: itemHandlerData,
colorSettings: colorSettings
};
this._designAtomsApiClient.sendRequest("UpdateAutoScaledTextItemHandler", data, resolve, failure);
};
Service.prototype.UpdateArchedTextItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, resolve, failure) {
var data = {
itemData: itemData,
canvasData: canvasData,
itemHandlerData: itemHandlerData,
colorSettings: colorSettings
};
this._designAtomsApiClient.sendRequest("UpdateArchedTextItemHandler", data, resolve, failure);
};
Service.prototype.UpdateCurvedTextItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, resolve, failure) {
var data = {
itemData: itemData,
canvasData: canvasData,
itemHandlerData: itemHandlerData,
colorSettings: colorSettings
};
this._designAtomsApiClient.sendRequest("UpdateCurvedTextItemHandler", data, resolve, failure);
};
Service.prototype.UpdateByColorData = function (canvasData, colorData, success, failure) {
this._callUpdateItemHandler(canvasData, colorData, null, null, success, failure, "UpdateByColorData", this._updateByColorData);
};
Service.prototype.UpdateByRectangleItemHandlerData = function (canvasData, itemHandlerData, itemData, colorSettings, resolve, failure) {
this.UpdateShapeItemHandler(canvasData, itemHandlerData, itemData, colorSettings, resolve, failure);
};
Service.prototype.UpdateShapeItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, success, failure) {
this._callUpdateItemHandler(canvasData, itemHandlerData, itemData, colorSettings, success, failure, "UpdateShapeItemHandler", this._updateShapeItemHandler);
};
Service.prototype.GetImageSize = function (imageId, pageIndex, success, failure) {
// Multi call not implemented
this._getImageSize(imageId, pageIndex, success, failure);
};
Service.prototype.getWatermarkItemsAsync = function (width, height, watermarkConfig) {
var _this = this;
var data = {
width: width,
height: height,
watermarkConfig: watermarkConfig
};
return new Promise(function (resolve, reject) {
_this._designAtomsApiClient.sendRequest("getWatermarkItems", data, function (result) {
resolve(result);
}, function (error, userContext, methodName) { return reject({ error: error, userContext: userContext, methodName: methodName }); });
});
};
Service.prototype.getWatermarkItems = function (width, height, watermarkConfig, resolve, failure) {
var data = {
width: width,
height: height,
watermarkConfig: watermarkConfig
};
this._designAtomsApiClient.sendRequest("getWatermarkItems", data, resolve, failure);
};
Service.prototype.sendRequest = function (methodName, data, resolve, failure, returnRawResponse) {
if (returnRawResponse === void 0) { returnRawResponse = false; }
return this._designAtomsApiClient.sendRequest(methodName, data, resolve, failure, returnRawResponse);
};
Service.prototype._getImageSize = function (imageId, pageIndex, resolve, failure) {
var data = {
imageId: imageId,
pageIndex: pageIndex,
};
this._designAtomsApiClient.sendRequest("GetImageSize", data, resolve, failure);
};
Service.prototype._callUpdateItemHandler = function (canvasData, itemHandlerData, itemData, colorSettings, success, failure, serverMethodName, method) {
var data = { canvasData: canvasData, itemHandlerData: itemHandlerData, itemData: itemData, methodName: serverMethodName };
if (this._nextMultiCallRequest != null && this._nextMultiCallRequest.multiCallStarted) {
if (this._nextMultiCallRequest.queueForMultiCall(data, success, failure))
return;
}
method(canvasData, itemHandlerData, itemData, colorSettings, success, failure);
};
return Service;
}());
export { Service };
//# sourceMappingURL=Service.js.map