diff --git a/.gitignore b/.gitignore index dd87e2d73f..b5f56d6034 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ node_modules build +spliting.js diff --git a/@salix/app/src/app.js b/@salix/app/src/app.js index b3ac02fdd1..833374e394 100644 --- a/@salix/app/src/app.js +++ b/@salix/app/src/app.js @@ -1,5 +1,5 @@ import {bootstrap} from './bootstrap'; import * as spliting from './spliting'; -import * as routes from './routes'; +import * as routes from './configroutes'; bootstrap(); diff --git a/@salix/app/src/configroutes.js b/@salix/app/src/configroutes.js new file mode 100644 index 0000000000..9f132c40b9 --- /dev/null +++ b/@salix/app/src/configroutes.js @@ -0,0 +1,31 @@ +import * as core from '@salix/core'; +import * as spliting from './spliting'; +import * as deps from './spliting/deps.json'; + +function loader(route) { + return function ($ocLazyLoad, $q) { + return $q((resolve) => { + core.splitingRegister.execute(route.module).then(function (dependencies) { + var array = dependencies.map((item) => { return { name: item } }); + resolve($ocLazyLoad.load(array)); + }); + }); + }; +} + +function config($stateProvider, $urlRouterProvider) { + core.splitingRegister.registerGraph(deps); + + for (var file in routes) + routes[file].forEach(function (route) { + $stateProvider.state(route.state, { + url: route.url, + template: route.template, + resolve: { + loader: loader(route) + } + }) + }); +} + +core.module.config(config); diff --git a/@salix/app/src/fake.js b/@salix/app/src/fake.js deleted file mode 100644 index 39683e7cc3..0000000000 --- a/@salix/app/src/fake.js +++ /dev/null @@ -1,41 +0,0 @@ -export const graphRoutes = { - routes: [ - { - url: '/index', - state: 'index', - template: '', - module: 'compras', - description: '', - image: '', - }, - { - url: '/add', - state: 'add', - template: '', - module: 'compras', - description: '', - image: '', - }, - { - url: '/edit', - state: 'edit', - template: '', - module: 'compras', - description: '', - image: '', - }, - { - url: '/delete', - state: 'delete', - template: '', - module: 'compras', - description: '', - image: '', - } - ], - - graphDependendies: { - compras: ["crud"], - crud: [] - } -}; \ No newline at end of file diff --git a/@salix/app/src/routes.js b/@salix/app/src/routes.js deleted file mode 100644 index fd5750bd7d..0000000000 --- a/@salix/app/src/routes.js +++ /dev/null @@ -1,40 +0,0 @@ -import * as core from '@salix/core'; -import * as spliting from './spliting'; -<<<<<<< HEAD - -function config($stateProvider, $urlRouterProvider) { - function loader($ocLazyLoad, $q) { - return $q(resolve => { - spliting.crud(() => { - resolve($ocLazyLoad.load({name: 'crud'})); -======= -import * as routes from './fake'; - -core.module.config(function ($stateProvider, $urlRouterProvider) { - core.splitingRegister.registerGraph(routes.graphRoutes.graphDependendies); - - function loader(route) { - return function loader($ocLazyLoad, $q) { - return $q((resolve) => { - core.splitingRegister.execute(route.module).then(function(dependencies){ - var array = dependencies.map((item) => { return { name: item } }); - resolve($ocLazyLoad.load(array)); - }); ->>>>>>> 0bfbc5e0642bb669d8568ea1ce1782fde1702aa6 - }); - }); - } - - $urlRouterProvider.otherwise("/"); - - routes.graphRoutes.routes.forEach(function (route) { - $stateProvider.state(route.state, { - url: route.url, - template: route.template, - resolve: { - loader: loader(route) - } - }) - }); -}); - diff --git a/@salix/app/src/spliting.js b/@salix/app/src/spliting.js deleted file mode 100644 index fb7680727b..0000000000 --- a/@salix/app/src/spliting.js +++ /dev/null @@ -1,28 +0,0 @@ -import * as core from '@salix/core'; - -export const compras = () => { - return new Promise(resolve => { - require.ensure([], () => { - require('@salix/compras'); - resolve('compras'); - }, "salix.compras"); - }); -}; - -core.splitingRegister.register('compras', compras); - -export const ventas = () => { - require.ensure([], () => { - require('@salix/ventas') - }, "salix.ventas"); -}; - -core.splitingRegister.register('ventas', ventas); - -export const pagos = () => { - require.ensure([], () => { - require('@salix/pagos') - }, "salix.pagos"); -}; - -core.splitingRegister.register('pagos', pagos); \ No newline at end of file diff --git a/@salix/app/src/spliting/deps.json b/@salix/app/src/spliting/deps.json new file mode 100644 index 0000000000..33c88e8901 --- /dev/null +++ b/@salix/app/src/spliting/deps.json @@ -0,0 +1,5 @@ +{ + "app": ["buys", "crud"], + "buys": ["crud"], + "crud": [] +} diff --git a/@salix/app/src/spliting/import.tpl.js b/@salix/app/src/spliting/import.tpl.js new file mode 100644 index 0000000000..9c17e355d4 --- /dev/null +++ b/@salix/app/src/spliting/import.tpl.js @@ -0,0 +1 @@ +import * as core from '@salix/core'; diff --git a/@salix/app/src/spliting/require.tpl.js b/@salix/app/src/spliting/require.tpl.js new file mode 100644 index 0000000000..345fc16858 --- /dev/null +++ b/@salix/app/src/spliting/require.tpl.js @@ -0,0 +1,11 @@ + +export const $module = () => { + return new Promise(resolve => { + require.ensure([], () => { + require('@salix/$module'); + resolve('$module'); + }, "salix.$module"); + }); +}; + +core.splitingRegister.register('$module', $module); diff --git a/@salix/buys/index.js b/@salix/buys/index.js new file mode 100644 index 0000000000..af578bfcd4 --- /dev/null +++ b/@salix/buys/index.js @@ -0,0 +1,2 @@ +export * from './src/buys'; + diff --git a/@salix/compras/src/compras.js b/@salix/buys/src/buys.js similarity index 100% rename from @salix/compras/src/compras.js rename to @salix/buys/src/buys.js diff --git a/@salix/compras/index.js b/@salix/compras/index.js deleted file mode 100644 index deb604b562..0000000000 --- a/@salix/compras/index.js +++ /dev/null @@ -1,2 +0,0 @@ -export * from './src/compras'; - diff --git a/@salix/compras/src/spliting.js b/@salix/compras/src/spliting.js deleted file mode 100644 index d55880521d..0000000000 --- a/@salix/compras/src/spliting.js +++ /dev/null @@ -1,12 +0,0 @@ -import * as core from '@salix/core'; - -export const crud = () => { - return new Promise(resolve => { - require.ensure([], () => { - require('@salix/crud'); - resolve('crud'); - }, "salix.crud"); - }); -}; - -core.splitingRegister.register('crud', crud); \ No newline at end of file diff --git a/@salix/core/src/check/check.mt.html b/@salix/core/src/check/check.mt.html index 13d98afe29..a4616186ea 100644 --- a/@salix/core/src/check/check.mt.html +++ b/@salix/core/src/check/check.mt.html @@ -1,3 +1,4 @@ - - *[text]* - + diff --git a/@salix/core/src/check/check.mt.js b/@salix/core/src/check/check.mt.js index 5c043ad4ba..cacd3c5416 100644 --- a/@salix/core/src/check/check.mt.js +++ b/@salix/core/src/check/check.mt.js @@ -5,7 +5,7 @@ import template from './check.mt.html'; const _NAME = 'check'; const DEFAULT_TEXT = 'check'; -const DEFAULT_CLASS = 'mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect'; +const DEFAULT_CLASS = 'mdl-checkbox__input'; export const NAME = util.getFactoryName(_NAME + constant.MATERIAL_DESIGN_FRAMEWORK); @@ -13,8 +13,9 @@ export function factory() { return { template: template, default: { - text: DEFAULT_TEXT, + label: DEFAULT_TEXT, enabled: 'true', + id: 'checkboxId', className: DEFAULT_CLASS } } diff --git a/@salix/core/src/core.js b/@salix/core/src/core.js index f0e8af9e11..ad8aad0b91 100644 --- a/@salix/core/src/core.js +++ b/@salix/core/src/core.js @@ -25,3 +25,15 @@ export {NAME as TEXTFIELDBT,factory as textfieldbt} from './textfield/textfield. export {NAME as LABEL,directive as LabelDirective} from './label/label' export {NAME as LABELMT,factory as labelmt} from './label/label.mt' export {NAME as LABELBT,factory as labelbt} from './label/label.bt' + +export {NAME as PASSWORD,directive as PasswordDirective} from './password/password' +export {NAME as PASSWORDMT,factory as passwordmt} from './password/password.mt' +export {NAME as SUBMIT,directive as SubmitDirective} from './submit/submit' +export {NAME as SUBMITMT,factory as submitmt} from './submit/submit.mt' +export {NAME as SNACKBAR,directive as SnackbarDirective} from './snackbar/snackbar' +export {NAME as SNACKBARMT,factory as snackbarmt} from './snackbar/snackbar.mt' +export {NAME as SPINNER,directive as SpinnerDirective} from './spinner/spinner' +export {NAME as SPINNERMT,factory as spinnermt} from './spinner/spinner.mt' + +export {NAME as LOGIN, COMPONENT as LOGIN_COMPONENT} from './login/login'; + diff --git a/@salix/core/src/login/login.html b/@salix/core/src/login/login.html new file mode 100755 index 0000000000..8670c2a32b --- /dev/null +++ b/@salix/core/src/login/login.html @@ -0,0 +1,25 @@ +
+
+
+
+
+ +
+
+ +
+
+ +
+
+ +
+ +
+
+
+ +
diff --git a/@salix/core/src/login/login.js b/@salix/core/src/login/login.js new file mode 100644 index 0000000000..2cb9cc09f4 --- /dev/null +++ b/@salix/core/src/login/login.js @@ -0,0 +1,88 @@ +import {module} from '../module'; +import template from './login.html'; +import style from './login.scss'; + +export const COMPONENT = { + template: template, + controller: function () { + function $ (id) { + return document.getElementById (id); + } + + var self = this; + $('form').onsubmit = function () { + self._onSubmit (); + return false; + }; + + this._onSubmit = function () { + var params = ''; + var elements = $('form').elements; + + for (var i = 0; i < elements.length; i++) + if (elements[i].name) { + if (params.length > 1) + params += '&'; + + params += elements[i].name +'='+ + encodeURIComponent (elements[i].value); + } + + var request = new XMLHttpRequest (); + request.open ('post', form.action, true); + request.setRequestHeader ('Content-Type', + 'application/x-www-form-urlencoded'); + request.onreadystatechange = + this._onLoginResponse.bind (this, request); + request.send (params); + + $('spinner').firstChild.MaterialSpinner.start (); + }; + this._onLoginResponse = function (request) { + $('spinner').firstChild.MaterialSpinner.stop (); + + if (request.readyState !== 4) + return; + + var data = null; + + try { + var data = JSON.parse (request.responseText); + console.debug (data); + } + catch (e) {} + + if (request.status == 200 && data) + { + sessionStorage.setItem ('token', data.accessToken); + window.location = 'index.html'; + } + else + { + sessionStorage.setItem ('token', ''); + + var message; + + switch (request.status) + { + case 401: + message = 'Invalid credentials'; + break; + case 0: + message = 'Can\'t contact with server'; + break; + default: + message = 'Something went wrong'; + } + + var snackbar = $('snackbar'); + snackbar.firstChild.MaterialSnackbar.showSnackbar ({ + message: message + }); + } + } + } +}; + +module.component('vnLogin', COMPONENT); + diff --git a/@salix/core/src/login/login.scss b/@salix/core/src/login/login.scss new file mode 100644 index 0000000000..679d3d58cf --- /dev/null +++ b/@salix/core/src/login/login.scss @@ -0,0 +1,47 @@ + +.vn-login +{ + position: absolute; + height: 100%; + width: 100%; + margin: 0; + padding: 0; + color: #333; + font-size: 1.1em; + font-weight: normal; + background-color: #EEE; + + .box-wrapper + { + position: relative; + max-width: 20em; + margin: auto; + height: inherit; + } + .box + { + box-sizing: border-box; + position: absolute; + top: 50%; + width: 100%; + height: 18em; + margin-top: -9em; + padding: 1em; + background-color: white; + box-shadow: 0 0 .3em 0 rgba(1,1,1,.4); + border-radius: .1em; + } + .footer + { + margin-top: 1em; + margin-left: 3em; + text-align: center; + } + input[type=submit] + { + display: inline; + } +} + +@media (max-height: 50em){} + diff --git a/@salix/core/src/password/password.js b/@salix/core/src/password/password.js new file mode 100644 index 0000000000..86b909e921 --- /dev/null +++ b/@salix/core/src/password/password.js @@ -0,0 +1,18 @@ +import {module} from '../module'; +import * as resolveFactory from '../resolveDefaultComponents'; +import * as util from '../util'; + +const _NAME = 'password'; +export const NAME = util.getName(_NAME); + +directive.$inject =[resolveFactory.NAME]; +export function directive (resolve){ + return{ + require:'E', + template: function(_,attr){ + return resolve.getTemplate(_NAME, attr); + } + } +} + +module.directive(NAME,directive); diff --git a/@salix/core/src/password/password.mt.html b/@salix/core/src/password/password.mt.html new file mode 100644 index 0000000000..4be2904127 --- /dev/null +++ b/@salix/core/src/password/password.mt.html @@ -0,0 +1,4 @@ +
+ + +
diff --git a/@salix/core/src/password/password.mt.js b/@salix/core/src/password/password.mt.js new file mode 100644 index 0000000000..5bad39aff0 --- /dev/null +++ b/@salix/core/src/password/password.mt.js @@ -0,0 +1,18 @@ +import {module} from '../module'; +import template from './password.mt.html'; + +export const NAME = 'vnPasswordmtFactory'; + +export function factory() { + return { + template: template, + default: { + label: 'Password', + name: 'password', + enabled: 'enabled', + className: 'mdl-textfield__input' + } + } +} + +module.factory(NAME, factory); diff --git a/@salix/core/src/snackbar/snackbar.js b/@salix/core/src/snackbar/snackbar.js new file mode 100644 index 0000000000..3209b3671a --- /dev/null +++ b/@salix/core/src/snackbar/snackbar.js @@ -0,0 +1,18 @@ +import {module} from '../module'; +import * as resolveFactory from '../resolveDefaultComponents'; +import * as util from '../util'; + +const _NAME = 'snackbar'; +export const NAME = util.getName(_NAME); + +directive.$inject =[resolveFactory.NAME]; +export function directive (resolve){ + return{ + require:'E', + template: function(_,attr){ + return resolve.getTemplate(_NAME, attr); + } + } +} + +module.directive(NAME,directive); diff --git a/@salix/core/src/snackbar/snackbar.mt.html b/@salix/core/src/snackbar/snackbar.mt.html new file mode 100644 index 0000000000..256f591b16 --- /dev/null +++ b/@salix/core/src/snackbar/snackbar.mt.html @@ -0,0 +1,4 @@ +
+
+ +
diff --git a/@salix/core/src/snackbar/snackbar.mt.js b/@salix/core/src/snackbar/snackbar.mt.js new file mode 100644 index 0000000000..9c13da28e5 --- /dev/null +++ b/@salix/core/src/snackbar/snackbar.mt.js @@ -0,0 +1,16 @@ +import {module} from '../module'; +import template from './snackbar.mt.html'; + +export const NAME = 'vnSnackbarmtFactory'; + +export function factory() { + return { + template: template, + default: { + message: 'Default message', + className: 'mdl-js-snackbar mdl-snackbar' + } + } +} + +module.factory(NAME, factory); diff --git a/@salix/core/src/spinner/spinner.js b/@salix/core/src/spinner/spinner.js new file mode 100644 index 0000000000..b7bc987b25 --- /dev/null +++ b/@salix/core/src/spinner/spinner.js @@ -0,0 +1,18 @@ +import {module} from '../module'; +import * as resolveFactory from '../resolveDefaultComponents'; +import * as util from '../util'; + +const _NAME = 'spinner'; +export const NAME = util.getName(_NAME); + +directive.$inject =[resolveFactory.NAME]; +export function directive (resolve){ + return{ + require:'E', + template: function(_,attr){ + return resolve.getTemplate(_NAME, attr); + } + } +} + +module.directive(NAME,directive); diff --git a/@salix/core/src/spinner/spinner.mt.html b/@salix/core/src/spinner/spinner.mt.html new file mode 100644 index 0000000000..45dd8201fd --- /dev/null +++ b/@salix/core/src/spinner/spinner.mt.html @@ -0,0 +1,2 @@ +
+
diff --git a/@salix/core/src/spinner/spinner.mt.js b/@salix/core/src/spinner/spinner.mt.js new file mode 100644 index 0000000000..a7ca37d903 --- /dev/null +++ b/@salix/core/src/spinner/spinner.mt.js @@ -0,0 +1,15 @@ +import {module} from '../module'; +import template from './spinner.mt.html'; + +export const NAME = 'vnSpinnermtFactory'; + +export function factory() { + return { + template: template, + default: { + className: 'mdl-spinner mdl-spinner--single-color mdl-js-spinner' + } + } +} + +module.factory(NAME, factory); diff --git a/@salix/core/src/submit/submit.js b/@salix/core/src/submit/submit.js new file mode 100644 index 0000000000..4f548ced98 --- /dev/null +++ b/@salix/core/src/submit/submit.js @@ -0,0 +1,18 @@ +import {module} from '../module'; +import * as resolveFactory from '../resolveDefaultComponents'; +import * as util from '../util'; + +const _NAME = 'submit'; +export const NAME = util.getName(_NAME); + +directive.$inject =[resolveFactory.NAME]; +export function directive (resolve){ + return{ + require:'E', + template: function(_,attr){ + return resolve.getTemplate(_NAME, attr); + } + } +} + +module.directive(NAME,directive); diff --git a/@salix/core/src/submit/submit.mt.html b/@salix/core/src/submit/submit.mt.html new file mode 100644 index 0000000000..fa4ddabb5f --- /dev/null +++ b/@salix/core/src/submit/submit.mt.html @@ -0,0 +1,2 @@ + + diff --git a/@salix/core/src/submit/submit.mt.js b/@salix/core/src/submit/submit.mt.js new file mode 100644 index 0000000000..33c5e5454b --- /dev/null +++ b/@salix/core/src/submit/submit.mt.js @@ -0,0 +1,17 @@ +import {module} from '../module'; +import template from './submit.mt.html'; + +export const NAME = 'vnSubmitmtFactory'; + +export function factory() { + return { + template: template, + default: { + text: 'Submit', + className: 'mdl-button mdl-js-button mdl-button--raised', + enabled: 'true' + } + } +} + +module.factory(NAME, factory); diff --git a/@salix/core/src/textfield/textfield.mt.html b/@salix/core/src/textfield/textfield.mt.html index 03c0555034..156daaa2e1 100644 --- a/@salix/core/src/textfield/textfield.mt.html +++ b/@salix/core/src/textfield/textfield.mt.html @@ -1,4 +1,4 @@
- - -
\ No newline at end of file + + + diff --git a/@salix/core/src/textfield/textfield.mt.js b/@salix/core/src/textfield/textfield.mt.js index 7caf83369e..a632c03365 100644 --- a/@salix/core/src/textfield/textfield.mt.js +++ b/@salix/core/src/textfield/textfield.mt.js @@ -4,7 +4,7 @@ import * as constant from '../constants'; import template from './textfield.mt.html'; const _NAME = 'textfield'; -const DEFAULT_TEXT = 'text'; +const DEFAULT_LABEL = 'text'; const DEFAULT_CLASS = 'mdl-textfield__input'; const DEFAULT_TYPE = 'text'; @@ -14,7 +14,8 @@ export function factory() { return { template: template, default: { - text: DEFAULT_TEXT, + label: DEFAULT_LABEL, + name: 'textfield', enabled: 'enabled', className: DEFAULT_CLASS, type: DEFAULT_TYPE diff --git a/@salix/core/src/util.js b/@salix/core/src/util.js index f6d0c9ea38..5206d37689 100644 --- a/@salix/core/src/util.js +++ b/@salix/core/src/util.js @@ -35,6 +35,7 @@ export function getProviderName(name){ export function getTemplateName(componentName,frameworkName){ return componentName + '.' + frameworkName + '.' + '.html' } + export function getVendorDependencies(vendors){ let dependencies = []; Object.keys(vendors).forEach((vendor)=>{ @@ -44,4 +45,4 @@ export function getVendorDependencies(vendors){ } }); return dependencies; -} \ No newline at end of file +} diff --git a/@salix/crud/src/crud.js b/@salix/crud/src/crud.js index 90229cbb40..b8e3ce4aac 100644 --- a/@salix/crud/src/crud.js +++ b/@salix/crud/src/crud.js @@ -1,8 +1,8 @@ export * from './module'; export {NAME as CUSTOMER_INDEX, - COMPONENT as CUSTOMER_INDEX_COMPONENT} from './customer/index'; + COMPONENT as CUSTOMER_INDEX_COMPONENT} from './customer/index'; export {NAME as CUSTOMER_ADD, - COMPONENT as CUSTOMER_ADD_COMPONENT} from './customer/index/add'; + COMPONENT as CUSTOMER_ADD_COMPONENT} from './customer/index/add'; export {NAME as CUSTOMER_LIST, - COMPONENT as CUSTOMER_LIST_COMPONENT} from './customer/index/list'; + COMPONENT as CUSTOMER_LIST_COMPONENT} from './customer/index/list'; diff --git a/@salix/crud/src/customer/routes.js b/@salix/crud/src/customer/routes.js new file mode 100644 index 0000000000..d68ceeac35 --- /dev/null +++ b/@salix/crud/src/customer/routes.js @@ -0,0 +1,8 @@ +[{ + url: '/index', + state: 'index', + template: '', + module: 'crud', + description: '', + image: '', +}] diff --git a/@salix/crud/src/provider/routes.js b/@salix/crud/src/provider/routes.js new file mode 100644 index 0000000000..f585a8c741 --- /dev/null +++ b/@salix/crud/src/provider/routes.js @@ -0,0 +1,8 @@ +[{ + url: '/provider', + state: 'provider', + template: '', + module: 'crud', + description: '', + image: '', +}] diff --git a/@salix/pagos/index.js b/@salix/pagos/index.js deleted file mode 100644 index 83329dc8ae..0000000000 --- a/@salix/pagos/index.js +++ /dev/null @@ -1,6 +0,0 @@ -import * as core from '@salix/core' -import * as vendors from '@salix/vendor' -import * as crud from '@salix/crud' -import * as ventas from '@salix/ventas' -import * as compras from '@salix/compras' -console.log('pagos') \ No newline at end of file diff --git a/@salix/ventas/index.js b/@salix/ventas/index.js deleted file mode 100644 index 3e815f50d7..0000000000 --- a/@salix/ventas/index.js +++ /dev/null @@ -1,4 +0,0 @@ -import * as core from '@salix/core' -import * as vendors from '@salix/vendor' -import * as crud from '@salix/crud' -console.log('ventas'); \ No newline at end of file diff --git a/gulpfile.js b/gulpfile.js index e17bbfd1e0..bcd4d24430 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -1,13 +1,72 @@ var gulp = require ('gulp'); +var wrap = require('gulp-wrap'); var concat = require ('gulp-concat'); var babel = require ('gulp-babel'); +var fs = require ('fs'); -gulp.task ('default', function () +// Routes + +var fileTpl = '\n"<%=file.path%>": <%=contents%>'; +var globalTpl = 'var routes = {<%=contents%>\n}'; + +gulp.task ('routes', function () { - var js = gulp.src ('./@salix/crud/**/routes.js') - .pipe (concat ('salix.routes.js')) + return gulp.src ('./@salix/**/routes.js') + .pipe (wrap (fileTpl)) + .pipe (concat ('salix.routes.js', {newLine: ','})) + .pipe (wrap (globalTpl)) .pipe (babel ({presets: ['es2015']})) .pipe (gulp.dest ('./build/private')); }); +// Spliting + +var baseDir = './@salix/app/src/spliting'; +var depsFile = baseDir +'/deps.json'; + +function splitingFunc () +{ + try { + var jsonDeps = fs.readFileSync (depsFile); + var modules = JSON.parse (jsonDeps); + } + catch (e) + { + console.error (e); + return; + } + + var importTpl = fs.readFileSync (baseDir +'/import.tpl.js', 'utf8'); + var requireTpl = fs.readFileSync (baseDir +'/require.tpl.js', 'utf8'); + + for (var modName in modules) + { + var deps = modules[modName]; + var splitFile = './@salix/'+ modName +'/src/spliting.js'; + + try { + fs.unlinkSync (splitFile); + } + catch (e) {} + + fs.appendFileSync (splitFile, importTpl); + + var i = deps.length; + while (i--) + fs.appendFileSync (splitFile, + requireTpl.replace (/\$module/g, deps[i])); + } +} + +gulp.task ('spliting', function () +{ + splitingFunc (); + //gulp.watch (depsFile, splitingFunc); +}); + +// Default + +gulp.task ('default', ['routes', 'spliting']); + + diff --git a/index.html b/index.html index e093cae628..d085b0f402 100644 --- a/index.html +++ b/index.html @@ -1,6 +1,7 @@ + Salix @@ -11,6 +12,10 @@ edit delete + + + + diff --git a/package.json b/package.json index 499ebbcf8e..03a28fec7b 100644 --- a/package.json +++ b/package.json @@ -19,17 +19,22 @@ "babel-core": "*", "babel-loader": "*", "babel-preset-es2015": "*", + "cors": "^2.8.1", "css-loader": "^0.25.0", "eslint": "^3.7.1", "eslint-config-angular": "^0.5.0", "eslint-config-google": "^0.6.0", "eslint-plugin-angular": "^1.4.1", "gulp": "^3.9.1", - "pre-commit": "^1.1.3", - "cors": "^2.8.1", "gulp-babel": "^6.1.2", "gulp-concat": "^2.6.0", + "gulp-insert": "^0.5.0", + "gulp-wrap": "^0.13.0", + "json-loader": "^0.5.4", + "node-sass": "^3.11.0", + "pre-commit": "^1.1.3", "raw-loader": "*", + "sass-loader": "^4.0.2", "style-loader": "^0.13.1", "webpack": "*", "webpack-dev-server": "*" @@ -41,5 +46,7 @@ "gulp": "gulp", "express": "node server.js" }, - "pre-commit": [ "lint" ] + "pre-commit": [ + "lint" + ] } diff --git a/webpack.config.js b/webpack.config.js index 695c713846..e4c838a324 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -22,15 +22,18 @@ module.exports = query: { presets: ['es2015'] } - }, { + },{ test: /\.html$/, loader: 'raw' - }, { + },{ test: /\.json$/, loader: 'json' - }, { + },{ test: /\.css$/, loader: 'style!css' + },{ + test: /\.scss$/, + loader: 'style!css!sass' } ] },