From da3a8e601293a6e5bd74da526f580ad4b14ca8ac Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Tue, 12 Oct 2021 12:39:23 +0200 Subject: [PATCH] Move Selectors to classes --- src/selector_manager/model/Selectors.js | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/selector_manager/model/Selectors.js b/src/selector_manager/model/Selectors.js index 479b3ce7c..01d246777 100644 --- a/src/selector_manager/model/Selectors.js +++ b/src/selector_manager/model/Selectors.js @@ -1,24 +1,20 @@ import { filter } from 'underscore'; -import Backbone from 'backbone'; +import { Collection } from 'common'; import Selector from './Selector'; -export default Backbone.Collection.extend({ - model: Selector, - - modelId: attr => `${attr.name}_${attr.type || Selector.TYPE_CLASS}`, - +export default class Selectors extends Collection { getStyleable() { return filter( this.models, item => item.get('active') && !item.get('private') ); - }, + } getValid({ noDisabled } = {}) { return filter(this.models, item => !item.get('private')).filter(item => noDisabled ? item.get('active') : 1 ); - }, + } getFullString(collection, opts = {}) { const result = []; @@ -26,4 +22,8 @@ export default Backbone.Collection.extend({ coll.forEach(selector => result.push(selector.getFullName(opts))); return result.join('').trim(); } -}); +} + +Selectors.prototype.model = Selector; +Selectors.prototype.modelId = attr => + `${attr.name}_${attr.type || Selector.TYPE_CLASS}`;