From 1b6391cfe16f41a3993c504a7a1e228bc78516e6 Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Sat, 19 Aug 2017 14:59:58 +0200 Subject: [PATCH] Remove propertyMap --- index.html | 15 ++++++++----- src/selector_manager/config/config.js | 16 ++------------ src/selector_manager/index.js | 32 +++++++++------------------ 3 files changed, 23 insertions(+), 40 deletions(-) diff --git a/index.html b/index.html index 8ab3059a2..40c3a24ac 100755 --- a/index.html +++ b/index.html @@ -1293,9 +1293,8 @@ }, });*/ - var resizerBtm = {tl: 0, tc: 0, tr: 0, cl: 0, cr:0, bl:0, br: 0}; - bm.add('column1', { - label: 'Col1', + let resizerBtm = {tl: 0, tc: 0, tr: 0, cl: 0, cr:0, bl:0, br: 0}; + bm.add('column1',{ content: { 'custom-name': 'Row grid', classes: ['row'], @@ -1304,14 +1303,20 @@ resizable: resizerBtm, components: [{ classes: ['cell'], - resizable: resizerBtm, + resizable: Object.assign({}, resizerBtm, {cr: 1}), attributes: {'data-column': 1}, draggable: '[data-columns]', 'custom-name': 'Cell grid', }] - //components: `
` }, }); + editor.on('selector:add', (selector) => { + console.log('Added ', selector.getFullName()); + if (['.row', '.cell'].indexOf(selector.getFullName()) >= 0 ) { + selector.set({private: 1}); + console.log('Updated ',selector.getFullName()); + } + }); var domc = editor.DomComponents; var defaultType = domc.getType('default'); diff --git a/src/selector_manager/config/config.js b/src/selector_manager/config/config.js index 7de496e4a..cd36505fb 100644 --- a/src/selector_manager/config/config.js +++ b/src/selector_manager/config/config.js @@ -3,10 +3,10 @@ module.exports = { // Style prefix stylePrefix: 'clm-', - // Default classes + // Default selectors selectors: [], - // Label for classes + // Label for selectors label: 'Classes', // Label for states @@ -18,16 +18,4 @@ module.exports = { { name: 'active', label: 'Click' }, { name: 'nth-of-type(2n)', label: 'Even/Odd' } ], - - // Associate properties on selector creation - // @example - // // If 'row' or 'cell' class is added into template, make those selectors - // // not visible by the user - // propertyMap: { - // '.row, .cell': { - // private: true, - // } - // }, - propertyMap: {}, - }; diff --git a/src/selector_manager/index.js b/src/selector_manager/index.js index 29cbf7a45..8f1a30df5 100644 --- a/src/selector_manager/index.js +++ b/src/selector_manager/index.js @@ -98,28 +98,12 @@ module.exports = config => { config: c, }); - selectors.on('add', this.selectorAdded); + selectors.on('add', (model) => + em.trigger('selector:add', model)); return this; }, - selectorAdded(model) { - const em = c.em; - const propertyMap = c.propertyMap; - let props = {}; - - Object.keys(propertyMap).forEach((selectors) => { - selectors.split(',').forEach((selector) => { - if (selector.trim() == model.getFullName()) { - props = Object.assign(props, propertyMap[selectors]); - } - }); - }); - - model.set(props); - em.trigger('selector:add', model); - }, - /** * Add a new selector to collection if it's not already exists. Class type is a default one * @param {String} name Selector name @@ -136,9 +120,15 @@ module.exports = config => { * }); * */ add(name, opts = {}) { - const em = c.em; - opts.name = name.name || name; - return selectors.add(opts); + const selector = this.get(name); + + if (!selector) { + console.log('Add pls', selector); + opts.name = name.name || name; + return selectors.add(opts); + } + + return selector; }, /**