UNPKG

@drizm/ng-whiteboard

Version:

A Canvas component for Angular which supports free drawing.

40 lines 5.93 kB
export var CanvasWhiteboardUpdateType; (function (CanvasWhiteboardUpdateType) { CanvasWhiteboardUpdateType[CanvasWhiteboardUpdateType["START"] = 0] = "START"; CanvasWhiteboardUpdateType[CanvasWhiteboardUpdateType["DRAG"] = 1] = "DRAG"; CanvasWhiteboardUpdateType[CanvasWhiteboardUpdateType["STOP"] = 2] = "STOP"; })(CanvasWhiteboardUpdateType || (CanvasWhiteboardUpdateType = {})); export class CanvasWhiteboardUpdate { constructor(x, y, type, UUID, selectedShape, selectedShapeOptions) { this.x = x; this.y = y; this.type = type; this.UUID = UUID; this.selectedShape = selectedShape; this.selectedShapeOptions = selectedShapeOptions; } static deserializeJson(json) { let parsedJson; try { parsedJson = JSON.parse(json); return new CanvasWhiteboardUpdate(parsedJson.x, parsedJson.y, parsedJson.type, parsedJson.uuid, parsedJson.selectedShape, parsedJson.selectedShapeOptions); } catch (e) { console.error('The canvas whiteboard update is not parseable'); return null; } } stringify() { var _a, _b; const objectToSerialize = { x: (_a = this.x) === null || _a === void 0 ? void 0 : _a.toFixed(3), y: (_b = this.y) === null || _b === void 0 ? void 0 : _b.toFixed(3), type: this.type, uuid: this.UUID, selectedShape: this.selectedShape, selectedShapeOptions: this.selectedShapeOptions || undefined }; return JSON.stringify(objectToSerialize); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FudmFzLXdoaXRlYm9hcmQtdXBkYXRlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctd2hpdGVib2FyZC9zcmMvbGliL19jbGFzc2VzL2NhbnZhcy13aGl0ZWJvYXJkLXVwZGF0ZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQU4sSUFBWSwwQkFJWDtBQUpELFdBQVksMEJBQTBCO0lBQ3BDLDZFQUFTLENBQUE7SUFDVCwyRUFBUSxDQUFBO0lBQ1IsMkVBQVEsQ0FBQTtBQUNWLENBQUMsRUFKVywwQkFBMEIsS0FBMUIsMEJBQTBCLFFBSXJDO0FBRUQsTUFBTSxPQUFPLHNCQUFzQjtJQXlCakMsWUFBWSxDQUFVLEVBQ1YsQ0FBVSxFQUNWLElBQWlDLEVBQ2pDLElBQWEsRUFDYixhQUFzQixFQUN0QixvQkFBbUQ7UUFDN0QsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDWCxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNYLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ25DLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxvQkFBb0IsQ0FBQztJQUNuRCxDQUFDO0lBN0JELE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBUztRQUM5QixJQUFJLFVBQVUsQ0FBQztRQUNmLElBQUk7WUFDRixVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM5QixPQUFPLElBQUksc0JBQXNCLENBQy9CLFVBQVUsQ0FBQyxDQUFDLEVBQ1osVUFBVSxDQUFDLENBQUMsRUFDWixVQUFVLENBQUMsSUFBSSxFQUNmLFVBQVUsQ0FBQyxJQUFJLEVBQ2YsVUFBVSxDQUFDLGFBQWEsRUFDeEIsVUFBVSxDQUFDLG9CQUFvQixDQUFDLENBQUM7U0FDcEM7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQztZQUMvRCxPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQWdCRCxTQUFTOztRQUNQLE1BQU0saUJBQWlCLEdBQUc7WUFDeEIsQ0FBQyxRQUFFLElBQUksQ0FBQyxDQUFDLDBDQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDckIsQ0FBQyxRQUFFLElBQUksQ0FBQyxDQUFDLDBDQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDckIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxTQUFTO1NBQzdELENBQUM7UUFFRixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUMzQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NhbnZhc1doaXRlYm9hcmRTaGFwZU9wdGlvbnN9IGZyb20gJy4vc2hhcGUvY2FudmFzLXdoaXRlYm9hcmQtc2hhcGUtb3B0aW9ucyc7XHJcblxyXG5leHBvcnQgZW51bSBDYW52YXNXaGl0ZWJvYXJkVXBkYXRlVHlwZSB7XHJcbiAgU1RBUlQgPSAwLFxyXG4gIERSQUcgPSAxLFxyXG4gIFNUT1AgPSAyXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBDYW52YXNXaGl0ZWJvYXJkVXBkYXRlIHtcclxuICB4PzogbnVtYmVyO1xyXG4gIHk/OiBudW1iZXI7XHJcbiAgdHlwZT86IENhbnZhc1doaXRlYm9hcmRVcGRhdGVUeXBlO1xyXG4gIFVVSUQ/OiBzdHJpbmc7XHJcbiAgc2VsZWN0ZWRTaGFwZT86IHN0cmluZztcclxuICBzZWxlY3RlZFNoYXBlT3B0aW9ucz86IENhbnZhc1doaXRlYm9hcmRTaGFwZU9wdGlvbnM7XHJcblxyXG4gIHN0YXRpYyBkZXNlcmlhbGl6ZUpzb24oanNvbjogYW55KTogQ2FudmFzV2hpdGVib2FyZFVwZGF0ZSB8IG51bGwge1xyXG4gICAgbGV0IHBhcnNlZEpzb247XHJcbiAgICB0cnkge1xyXG4gICAgICBwYXJzZWRKc29uID0gSlNPTi5wYXJzZShqc29uKTtcclxuICAgICAgcmV0dXJuIG5ldyBDYW52YXNXaGl0ZWJvYXJkVXBkYXRlKFxyXG4gICAgICAgIHBhcnNlZEpzb24ueCxcclxuICAgICAgICBwYXJzZWRKc29uLnksXHJcbiAgICAgICAgcGFyc2VkSnNvbi50eXBlLFxyXG4gICAgICAgIHBhcnNlZEpzb24udXVpZCxcclxuICAgICAgICBwYXJzZWRKc29uLnNlbGVjdGVkU2hhcGUsXHJcbiAgICAgICAgcGFyc2VkSnNvbi5zZWxlY3RlZFNoYXBlT3B0aW9ucyk7XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1RoZSBjYW52YXMgd2hpdGVib2FyZCB1cGRhdGUgaXMgbm90IHBhcnNlYWJsZScpO1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHg/OiBudW1iZXIsXHJcbiAgICAgICAgICAgICAgeT86IG51bWJlcixcclxuICAgICAgICAgICAgICB0eXBlPzogQ2FudmFzV2hpdGVib2FyZFVwZGF0ZVR5cGUsXHJcbiAgICAgICAgICAgICAgVVVJRD86IHN0cmluZyxcclxuICAgICAgICAgICAgICBzZWxlY3RlZFNoYXBlPzogc3RyaW5nLFxyXG4gICAgICAgICAgICAgIHNlbGVjdGVkU2hhcGVPcHRpb25zPzogQ2FudmFzV2hpdGVib2FyZFNoYXBlT3B0aW9ucykge1xyXG4gICAgdGhpcy54ID0geDtcclxuICAgIHRoaXMueSA9IHk7XHJcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xyXG4gICAgdGhpcy5VVUlEID0gVVVJRDtcclxuICAgIHRoaXMuc2VsZWN0ZWRTaGFwZSA9IHNlbGVjdGVkU2hhcGU7XHJcbiAgICB0aGlzLnNlbGVjdGVkU2hhcGVPcHRpb25zID0gc2VsZWN0ZWRTaGFwZU9wdGlvbnM7XHJcbiAgfVxyXG5cclxuICBzdHJpbmdpZnkoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IG9iamVjdFRvU2VyaWFsaXplID0ge1xyXG4gICAgICB4OiB0aGlzLng/LnRvRml4ZWQoMyksXHJcbiAgICAgIHk6IHRoaXMueT8udG9GaXhlZCgzKSxcclxuICAgICAgdHlwZTogdGhpcy50eXBlLFxyXG4gICAgICB1dWlkOiB0aGlzLlVVSUQsXHJcbiAgICAgIHNlbGVjdGVkU2hhcGU6IHRoaXMuc2VsZWN0ZWRTaGFwZSxcclxuICAgICAgc2VsZWN0ZWRTaGFwZU9wdGlvbnM6IHRoaXMuc2VsZWN0ZWRTaGFwZU9wdGlvbnMgfHwgdW5kZWZpbmVkXHJcbiAgICB9O1xyXG5cclxuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShvYmplY3RUb1NlcmlhbGl6ZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==