mirror of https://github.com/artf/grapesjs.git
nocodeframeworkdrag-and-dropsite-buildersite-generatortemplate-builderui-builderweb-builderweb-builder-frameworkwebsite-builderno-codepage-builder
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
2.3 KiB
94 lines
2.3 KiB
import TypeableCollection from 'domain_abstract/model/TypeableCollection';
|
|
const Property = require('./Property');
|
|
|
|
module.exports = require('backbone').Collection.extend(TypeableCollection).extend({
|
|
types: [
|
|
{
|
|
id: 'stack',
|
|
model: require('./PropertyStack'),
|
|
view: require('./../view/PropertyStackView'),
|
|
isType(value) {
|
|
if (value && value.type == 'stack') {
|
|
return value;
|
|
}
|
|
}
|
|
},{
|
|
id: 'composite',
|
|
model: require('./PropertyComposite'),
|
|
view: require('./../view/PropertyCompositeView'),
|
|
isType(value) {
|
|
if (value && value.type == 'composite') {
|
|
return value;
|
|
}
|
|
}
|
|
},{
|
|
id: 'file',
|
|
model: Property,
|
|
view: require('./../view/PropertyFileView'),
|
|
isType(value) {
|
|
if (value && value.type == 'file') {
|
|
return value;
|
|
}
|
|
}
|
|
},{
|
|
id: 'color',
|
|
model: Property,
|
|
view: require('./../view/PropertyColorView'),
|
|
isType(value) {
|
|
if (value && value.type == 'color') {
|
|
return value;
|
|
}
|
|
}
|
|
},{
|
|
id: 'select',
|
|
model: require('./PropertyRadio'),
|
|
view: require('./../view/PropertySelectView'),
|
|
isType(value) {
|
|
if (value && value.type == 'select') {
|
|
return value;
|
|
}
|
|
}
|
|
},{
|
|
id: 'radio',
|
|
model: require('./PropertyRadio'),
|
|
view: require('./../view/PropertyRadioView'),
|
|
isType(value) {
|
|
if (value && value.type == 'radio') {
|
|
return value;
|
|
}
|
|
}
|
|
},{
|
|
id: 'slider',
|
|
model: require('./PropertySlider'),
|
|
view: require('./../view/PropertySliderView'),
|
|
isType(value) {
|
|
if (value && value.type == 'slider') {
|
|
return value;
|
|
}
|
|
}
|
|
},{
|
|
id: 'integer',
|
|
model: require('./PropertyInteger'),
|
|
view: require('./../view/PropertyIntegerView'),
|
|
isType(value) {
|
|
if (value && value.type == 'integer') {
|
|
return value;
|
|
}
|
|
}
|
|
},{
|
|
id: 'base',
|
|
model: Property,
|
|
view: require('./../view/PropertyView'),
|
|
isType(value) {
|
|
value.type = 'base';
|
|
return value;
|
|
}
|
|
}
|
|
],
|
|
|
|
getFullValue() {
|
|
let result = '';
|
|
this.each(model => result += `${model.getFullValue()} `);
|
|
return result.trim();
|
|
}
|
|
});
|
|
|