vue-poster-editor
Version:
A poster editor based on Vue.js
54 lines (42 loc) • 1.69 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _onecolor = require('../utils/onecolor');
var _onecolor2 = _interopRequireDefault(_onecolor);
var _editorLayout = require('./editor-layout.html');
var _editorLayout2 = _interopRequireDefault(_editorLayout);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
template: _editorLayout2.default,
props: ['options', 'global', 'editor', 'layout'],
computed: {
canvasBackgroundColor: function canvasBackgroundColor() {
var color = this.global.backgroundColor;
return color ? _onecolor2.default.rgbaParser(color).cssa() : '';
},
layoutBackgroundColor: function layoutBackgroundColor() {
var color = this.layout.backgroundColor;
return color ? _onecolor2.default.rgbaParser(color).cssa() : 'transparent';
},
layoutBackgroundSize: function layoutBackgroundSize() {
var size = this.layout.backgroundSize;
if (Array.isArray(size)) {
var zoom = this.global.zoom;
var width = zoom * (+size[0] || 0);
var height = zoom * (size[1] || 0);
return width + 'px ' + height + 'px';
}
return null;
},
isCurrentLayout: function isCurrentLayout() {
return this.editor.currentLayout === this.layout;
}
},
methods: {
setCurrentLayout: function setCurrentLayout(layout) {
this.editor && this.editor.toggleLayout(layout);
}
}
};
module.exports = exports['default'];