Commit 00b101bf authored by Tino Goratsch's avatar Tino Goratsch

- dropped bower as the frontend dependency manager --> use npm as the single source of truth

- adjusted the README.md
parent c071bbd8
/.idea
/ACP3/config.yml
/bower_components
/build/logs/
/cache/*
/node_modules
......
......@@ -40,7 +40,7 @@ class Libraries
'enabled' => false,
'dependencies' => ['bootstrap'],
'css' => 'dataTables.bootstrap.css',
'js' => 'jquery.dataTables.min.js'
'js' => 'jquery.dataTables.js'
],
'bootbox' => [
'enabled' => false,
......
/**
* @preserve HTML5 Shiv 3.7.3 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
*/
!function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=t.elements;return"string"==typeof a?a.split(" "):a}function e(a,b){var c=t.elements;"string"!=typeof c&&(c=c.join(" ")),"string"!=typeof a&&(a=a.join(" ")),t.elements=c+" "+a,j(b)}function f(a){var b=s[a[q]];return b||(b={},r++,a[q]=r,s[r]=b),b}function g(a,c,d){if(c||(c=b),l)return c.createElement(a);d||(d=f(c));var e;return e=d.cache[a]?d.cache[a].cloneNode():p.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!e.canHaveChildren||o.test(a)||e.tagUrn?e:d.frag.appendChild(e)}function h(a,c){if(a||(a=b),l)return a.createDocumentFragment();c=c||f(a);for(var e=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)e.createElement(h[g]);return e}function i(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return t.shivMethods?g(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-:]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(t,b.frag)}function j(a){a||(a=b);var d=f(a);return!t.shivCSS||k||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),l||i(a,d),a}var k,l,m="3.7.3",n=a.html5||{},o=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,p=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,q="_html5shiv",r=0,s={};!function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",k="hidden"in a,l=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){k=!0,l=!0}}();var t={elements:n.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:m,shivCSS:n.shivCSS!==!1,supportsUnknownElements:l,shivMethods:n.shivMethods!==!1,type:"default",shivDocument:j,createElement:g,createDocumentFragment:h,addElements:e};a.html5=t,j(b),"object"==typeof module&&module.exports&&(module.exports=t)}("undefined"!=typeof window?window:this,document);
\ No newline at end of file
!function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=t.elements;return"string"==typeof a?a.split(" "):a}function e(a,b){var c=t.elements;"string"!=typeof c&&(c=c.join(" ")),"string"!=typeof a&&(a=a.join(" ")),t.elements=c+" "+a,j(b)}function f(a){var b=s[a[q]];return b||(b={},r++,a[q]=r,s[r]=b),b}function g(a,c,d){if(c||(c=b),l)return c.createElement(a);d||(d=f(c));var e;return e=d.cache[a]?d.cache[a].cloneNode():p.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!e.canHaveChildren||o.test(a)||e.tagUrn?e:d.frag.appendChild(e)}function h(a,c){if(a||(a=b),l)return a.createDocumentFragment();c=c||f(a);for(var e=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)e.createElement(h[g]);return e}function i(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return t.shivMethods?g(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-:]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(t,b.frag)}function j(a){a||(a=b);var d=f(a);return!t.shivCSS||k||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),l||i(a,d),a}var k,l,m="3.7.3-pre",n=a.html5||{},o=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,p=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,q="_html5shiv",r=0,s={};!function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",k="hidden"in a,l=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){k=!0,l=!0}}();var t={elements:n.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:m,shivCSS:n.shivCSS!==!1,supportsUnknownElements:l,shivMethods:n.shivMethods!==!1,type:"default",shivDocument:j,createElement:g,createDocumentFragment:h,addElements:e};a.html5=t,j(b),"object"==typeof module&&module.exports&&(module.exports=t)}("undefined"!=typeof window?window:this,document);
\ No newline at end of file
//! moment.js
//! version : 2.15.0
//! version : 2.15.1
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
//! license : MIT
//! momentjs.com
......@@ -101,7 +101,7 @@ function Xa(a){for(var b,c,d,e,f=0;f<a.length;){for(e=Wa(a[f]).split("-"),b=e.le
//the next array item is better than a shallower substring of this one
break;b--}f++}return null}function Ya(a){var b=null;
// TODO: Find a better way to register and load all the locales in Node
if(!we[a]&&"undefined"!=typeof module&&module&&module.require)try{b=se._abbr,module.require("./locale/"+a),
if(!we[a]&&"undefined"!=typeof module&&module&&module.exports)try{b=se._abbr,require("./locale/"+a),
// because defineLocale currently also sets the global locale, we
// want to undo that for lazy loaded locales
Za(b)}catch(c){}return we[a]}
......@@ -492,4 +492,4 @@ T("X",0,0,"unix"),T("x",0,0,"valueOf"),
// PARSING
Y("x",Rd),Y("X",Ud),aa("X",function(a,b,c){c._d=new Date(1e3*parseFloat(a,10))}),aa("x",function(a,b,c){c._d=new Date(t(a))}),
// Side effect imports
a.version="2.15.0",b(rb),a.fn=Se,a.min=tb,a.max=ub,a.now=Fe,a.utc=j,a.unix=Jc,a.months=Pc,a.isDate=f,a.locale=Za,a.invalid=n,a.duration=Nb,a.isMoment=r,a.weekdays=Rc,a.parseZone=Kc,a.localeData=ab,a.isDuration=wb,a.monthsShort=Qc,a.weekdaysMin=Tc,a.defineLocale=$a,a.updateLocale=_a,a.locales=bb,a.weekdaysShort=Sc,a.normalizeUnits=J,a.relativeTimeRounding=id,a.relativeTimeThreshold=jd,a.calendarFormat=Tb,a.prototype=Se;var nf=a;return nf});
\ No newline at end of file
a.version="2.15.1",b(rb),a.fn=Se,a.min=tb,a.max=ub,a.now=Fe,a.utc=j,a.unix=Jc,a.months=Pc,a.isDate=f,a.locale=Za,a.invalid=n,a.duration=Nb,a.isMoment=r,a.weekdays=Rc,a.parseZone=Kc,a.localeData=ab,a.isDuration=wb,a.monthsShort=Qc,a.weekdaysMin=Tc,a.defineLocale=$a,a.updateLocale=_a,a.locales=bb,a.weekdaysShort=Sc,a.normalizeUnits=J,a.relativeTimeRounding=id,a.relativeTimeThreshold=jd,a.calendarFormat=Tb,a.prototype=Se;var nf=a;return nf});
\ No newline at end of file
......@@ -37,10 +37,9 @@ If so, execute the following command from the projects root directory:
$ composer install
```
Make sure that you have node.js with npm, bower and gulp-cli globally installed.
Make sure that you have installed node.js with npm and gulp-cli globally.
If so, execute the following commands from the projects root directory:
If so, execute the following command from the projects root directory, to install the necessary frontend development dependencies:
```sh
$ npm install
$ bower install
```
......@@ -7,39 +7,39 @@ module.exports = function (gulp, plugins) {
"use strict";
return function () {
var bowerBasePath = './bower_components',
var nodeBasePath = './node_modules',
systemBasePath = './ACP3/Modules/ACP3/System/Resources/Assets',
paths = [
{
'src': [
bowerBasePath + '/jquery/dist/jquery.min.js',
bowerBasePath + '/bootbox.js/bootbox.js',
bowerBasePath + '/moment/min/moment.min.js',
bowerBasePath + '/datatables.net/js/jquery.dataTables.min.js',
bowerBasePath + '/datatables.net-bs/js/dataTables.bootstrap.js',
bowerBasePath + '/bootstrap/dist/js/bootstrap.min.js',
bowerBasePath + '/fancybox/source/jquery.fancybox.pack.js',
bowerBasePath + '/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js',
bowerBasePath + '/html5shiv/dist/html5shiv.min.js'
nodeBasePath + '/jquery/dist/jquery.min.js',
nodeBasePath + '/bootbox/bootbox.js',
nodeBasePath + '/moment/min/moment.min.js',
nodeBasePath + '/datatables.net/js/jquery.dataTables.js',
nodeBasePath + '/datatables.net-bs/js/dataTables.bootstrap.js',
nodeBasePath + '/bootstrap/dist/js/bootstrap.min.js',
nodeBasePath + '/fancybox/source/jquery.fancybox.pack.js',
nodeBasePath + '/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js',
nodeBasePath + '/html5shiv/dist/html5shiv.min.js'
],
'dest': systemBasePath + '/js'
},
{
'src': bowerBasePath + '/bootstrap/dist/fonts/*',
'src': nodeBasePath + '/bootstrap/dist/fonts/*',
'dest': systemBasePath + '/fonts'
},
{
'src': [
bowerBasePath + '/fancybox/source/*.gif',
bowerBasePath + '/fancybox/source/*.png'
nodeBasePath + '/fancybox/source/*.gif',
nodeBasePath + '/fancybox/source/*.png'
],
'dest': systemBasePath + '/images/fancybox'
},
{
'src': [
bowerBasePath + '/bootstrap/dist/css/bootstrap.min.css',
bowerBasePath + '/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.css',
bowerBasePath + '/datatables.net-bs/css/dataTables.bootstrap.css'
nodeBasePath + '/bootstrap/dist/css/bootstrap.min.css',
nodeBasePath + '/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.css',
nodeBasePath + '/datatables.net-bs/css/dataTables.bootstrap.css'
],
'dest': systemBasePath + '/css'
......@@ -51,7 +51,7 @@ module.exports = function (gulp, plugins) {
.pipe(gulp.dest(paths[i].dest));
}
return gulp.src(bowerBasePath + '/fancybox/source/jquery.fancybox.css')
return gulp.src(nodeBasePath + '/fancybox/source/jquery.fancybox.css')
.pipe(plugins.modifyCssUrls({
prepend: '../images/fancybox/'
}))
......
......@@ -17,6 +17,12 @@
"homepage": "http://www.acp3-cms.net",
"private": true,
"devDependencies": {
"bootbox": "^4.4.0",
"bootstrap": "^3.3.7",
"datatables.net": "^1.10.12",
"datatables.net-bs": "^1.10.12",
"eonasdan-bootstrap-datetimepicker": "^4.17.42",
"fancybox": "^2.1.5",
"gulp": "^3.9.1",
"gulp-change": "^1.0.0",
"gulp-less": "^3.1.0",
......@@ -25,6 +31,9 @@
"gulp-plumber": "^1.1.0",
"gulp-rename": "^1.2.2",
"gulp-util": "^3.0.7",
"html5shiv": "^3.7.3",
"jquery": "^2.2.4",
"moment": "^2.15.0",
"yargs": "^4.8.1"
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment