diff --git a/gulp/scaffold/default.js b/gulp/scaffold/default.js index 71f77787..5377ba21 100644 --- a/gulp/scaffold/default.js +++ b/gulp/scaffold/default.js @@ -48,7 +48,7 @@ var taskName = 'scaffold', src: './source/assets/js/helpers/estaticoapp.js', insertionPoint: '/* autoinsertmodule */', importInsertionPoint: '/* autoinsertmodulereference */', - insertionTemplate: 'this.modules.{{keyName}} = {{className}};\n ', + insertionTemplate: 'this.modules[{{className}}.name] = {{className}};\n ', importInsertionTemplate: 'import {{className}} from \'{{modulePath}}\';\n' }, diff --git a/source/assets/js/helpers/module.js b/source/assets/js/helpers/module.js index aa36c482..32df3905 100644 --- a/source/assets/js/helpers/module.js +++ b/source/assets/js/helpers/module.js @@ -12,7 +12,7 @@ class EstaticoModule { * @param {object} options - The options passed as data attribute in the Module */ constructor($element, _defaultData, _defaultOptions, data, options) { - this.name = this.constructor.name.toLowerCase(); + this.name = this.constructor.name; this.ui = { $element diff --git a/source/modules/.scaffold/scaffold.js b/source/modules/.scaffold/scaffold.js index cc4926f9..d17f5982 100644 --- a/source/modules/.scaffold/scaffold.js +++ b/source/modules/.scaffold/scaffold.js @@ -1,39 +1,47 @@ -/*! +import EstaticoModule from '../../assets/js/helpers/module'; + +/* * {{originalName}} * * @author * @copyright */ -import EstaticoModule from '../../assets/js/helpers/module'; - -class {{className}} extends EstaticoModule { +export default class {{className}} extends EstaticoModule { + static events = { + // eventname: `eventname.estatico.${{{className}}.name}` + }; + static defaultData = {}; + static defaultOptions = { + domSelectors: { + // item: `[data-${{{className}}.name}}="item"]` + }, + stateClasses: { + // activated: 'is_activated' + } + }; constructor($element, data, options) { - let _defaultData = {}, - _name = '{{name}}', - _defaultOptions = { - domSelectors: { - // item: '[data-' + _name + '="item"]' - }, - stateClasses: { - // activated: 'is_activated' - } - }; - - super($element, _defaultData, _defaultOptions, data, options); + super($element, {{className}}.defaultData, {{className}}.defaultOptions, data, options); this._initUi(); this._initEventListeners(); } - static get events() { - return { - // eventname: 'eventname.estatico.' + {{name}} - }; + /** + * Unbind events, remove data, custom teardown + * + * @public + */ + destroy() { + super.destroy(); + + // Custom destroy actions go here } /** * Initialisation of variables, which point to DOM elements + * + * @private */ _initUi() { // DOM element pointers @@ -41,19 +49,10 @@ class {{className}} extends EstaticoModule { /** * Event listeners initialisation + * + * @private */ _initEventListeners() { // Event listeners } - - /** - * Unbind events, remove data, custom teardown - */ - destroy() { - super.destroy(); - - // Custom destroy actions go here - } } - -export default {{className}};