diff --git a/gulpfile.js b/gulpfile.js index 2ed4f6ba..989729a0 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -14,7 +14,6 @@ const changed = require('gulp-changed'); const childProcess = require('child_process'); const css = require('gulp-clean-css'); const del = require('del'); -const dist = require('gulp-npm-dist'); const fs = require('fs-extra'); const gulp = require('gulp'); const plumber = require('gulp-plumber'); @@ -82,16 +81,13 @@ function clean(done) { } function scripts() { - return ( - gulp - .src(['assets/js/**/*.js', '!assets/js/**/*.min.js']) - .pipe(plumber()) - .pipe(changed('assets/js/**/*')) - .pipe(babel()) - // .pipe(uglify().on('error', console.log)) - .pipe(rename({suffix: '.min'})) - .pipe(gulp.dest('assets/js')) - ); + return gulp + .src(['assets/js/**/*.js', '!assets/js/**/*.min.js']) + .pipe(plumber()) + .pipe(changed('assets/js/**/*')) + .pipe(babel()) + .pipe(rename({suffix: '.min'})) + .pipe(gulp.dest('assets/js')); } function styles() { @@ -112,27 +108,79 @@ function watch(done) { done(); } -function vendor() { +function vendor(done) { del.sync(['assets/vendor/**', '!assets/vendor/index.html']); - const excludes = [ - 'less', - 'metadata', - 'scss', - 'attribution.js', - 'examples', - 'src', - 'test', - 'esm', - 'cjs', - 'external', - 'build' - ]; + // Bootstrap + gulp.src([ + 'node_modules/bootstrap/dist/js/bootstrap.min.js', + 'node_modules/bootstrap/dist/css/bootstrap.min.css' + ]).pipe(gulp.dest('assets/vendor/bootstrap')); - return gulp - .src(dist({excludes}), {base: './node_modules'}) - .pipe(rename((path) => (path.dirname = path.dirname.replace(/\/dist/, '').replace(/\\dist/, '')))) - .pipe(gulp.dest('./assets/vendor')); + // FontAwesome + gulp.src([ + 'node_modules/@fortawesome/fontawesome-free/js/fontawesome.min.js', + 'node_modules/@fortawesome/fontawesome-free/js/solid.min.js' + ]).pipe(gulp.dest('assets/vendor/fontawesome')); + + // Cookie Consent + gulp.src([ + 'node_modules/cookieconsent/build/cookieconsent.min.js', + 'node_modules/cookieconsent/build/cookieconsent.min.css' + ]).pipe(gulp.dest('assets/vendor/cookieconsent')); + + // DateJS + gulp.src(['node_modules/datejs/lib/date.js']) + .pipe(rename({suffix: '.min'})) + .pipe(gulp.dest('assets/vendor/datejs')); + + // FullCalendar + gulp.src([ + 'node_modules/fullcalendar/dist/fullcalendar.min.js', + 'node_modules/fullcalendar/dist/fullcalendar.min.css' + ]).pipe(gulp.dest('assets/vendor/fullcalendar')); + + // jQuery JEditable + gulp.src(['node_modules/jquery-jeditable/dist/jquery.jeditable.min.js']).pipe( + gulp.dest('assets/vendor/jquery-jeditable') + ); + + // jQuery UI + gulp.src(['node_modules/jquery-ui-dist/jquery-ui.min.js', 'node_modules/jquery-ui-dist/jquery-ui.min.css']).pipe( + gulp.dest('assets/vendor/jquery-ui') + ); + + // jQuery UI Timepicker Addon + gulp.src([ + 'node_modules/jquery-ui-timepicker-addon/dist/jquery-ui-timepicker-addon.min.js', + 'node_modules/jquery-ui-timepicker-addon/dist/jquery-ui-timepicker-addon.min.css' + ]).pipe(gulp.dest('assets/vendor/jquery-ui-timepicker-addon')); + + // jQuery UI Touch Punch + gulp.src(['node_modules/jquery-ui-touch-punch/jquery.ui.touch-punch.min.js']).pipe( + gulp.dest('assets/vendor/jquery-ui-touch-punch') + ); + + // Moment + gulp.src(['node_modules/moment/min/moment.min.js']).pipe(gulp.dest('assets/vendor/moment')); + + // Moment Timezone + gulp.src(['node_modules/moment-timezone/builds/moment-timezone.min.js']).pipe( + gulp.dest('assets/vendor/moment-timezone') + ); + + // Select2 + gulp.src(['node_modules/select2/dist/js/select2.min.js']).pipe(gulp.dest('assets/vendor/select2')); + + // Tippy.js + gulp.src(['node_modules/tippy.js/dist/tippy-bundle.umd.min.js']).pipe(gulp.dest('assets/vendor/tippy.js')); + + // Trumbowyg + gulp.src(['node_modules/trumbowyg/dist/trumbowyg.min.js', 'node_modules/trumbowyg/dist/ui/trumbowyg.min.css']).pipe( + gulp.dest('assets/vendor/trumbowyg') + ); + + done(); } exports.clean = gulp.series(clean); diff --git a/package-lock.json b/package-lock.json index 49f239e2..39e62e82 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2701,12 +2701,6 @@ "has-symbols": "^1.0.1" } }, - "get-own-enumerable-property-symbols": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", - "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", - "dev": true - }, "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", @@ -3068,26 +3062,6 @@ "yargs": "^7.1.0" } }, - "gulp-debug": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/gulp-debug/-/gulp-debug-4.0.0.tgz", - "integrity": "sha512-cn/GhMD2nVZCVxAl5vWao4/dcoZ8wUJ8w3oqTvQaGDmC1vT7swNOEbhQTWJp+/otKePT64aENcqAQXDcdj5H1g==", - "dev": true, - "requires": { - "chalk": "^2.3.0", - "fancy-log": "^1.3.2", - "plur": "^3.0.0", - "stringify-object": "^3.0.0", - "through2": "^2.0.0", - "tildify": "^1.1.2" - } - }, - "gulp-npm-dist": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/gulp-npm-dist/-/gulp-npm-dist-1.0.3.tgz", - "integrity": "sha512-7nank8dgqYXOR6K7VM5VdzvAmCGCaudUEbVKOkCVyu+/EK3QuD8PUJ+UlV/f2QWswN0jDXnHlM7FuT2BUt8P3w==", - "dev": true - }, "gulp-plumber": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/gulp-plumber/-/gulp-plumber-1.2.1.tgz", @@ -3402,12 +3376,6 @@ "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", "dev": true }, - "irregular-plurals": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-2.0.0.tgz", - "integrity": "sha512-Y75zBYLkh0lJ9qxeHlMjQ7bSbyiSqNW/UOPWDmzC7cXskL1hekSITh1Oc6JV0XCWWZ9DE8VYSB71xocLk3gmGw==", - "dev": true - }, "is-absolute": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", @@ -3555,12 +3523,6 @@ } } }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, "is-path-cwd": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", @@ -3579,12 +3541,6 @@ "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "dev": true }, - "is-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", - "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", - "dev": true - }, "is-relative": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", @@ -3652,13 +3608,10 @@ "jquery": "^3.5.1" } }, - "jquery-ui": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/jquery-ui/-/jquery-ui-1.13.0.tgz", - "integrity": "sha512-Osf7ECXNTYHtKBkn9xzbIf9kifNrBhfywFEKxOeB/OVctVmLlouV9mfc2qXCp6uyO4Pn72PXKOnj09qXetopCw==", - "requires": { - "jquery": ">=1.8.0 <4.0.0" - } + "jquery-ui-dist": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/jquery-ui-dist/-/jquery-ui-dist-1.12.1.tgz", + "integrity": "sha1-XAgV08xvkP9fqvWyaKbiO0ypBPo=" }, "jquery-ui-timepicker-addon": { "version": "1.6.3", @@ -4406,12 +4359,6 @@ "readable-stream": "^2.0.1" } }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, "os-locale": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", @@ -4584,15 +4531,6 @@ } } }, - "plur": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/plur/-/plur-3.1.1.tgz", - "integrity": "sha512-t1Ax8KUvV3FFII8ltczPn2tJdjqbd1sIzu6t4JL7nQ3EyeL/lTrj5PWKb06ic5/6XYDr65rQ4uzQEGN70/6X5w==", - "dev": true, - "requires": { - "irregular-plurals": "^2.0.0" - } - }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -5499,17 +5437,6 @@ } } }, - "stringify-object": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", - "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", - "dev": true, - "requires": { - "get-own-enumerable-property-symbols": "^3.0.0", - "is-obj": "^1.0.1", - "is-regexp": "^1.0.0" - } - }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -5558,15 +5485,6 @@ "xtend": "~4.0.0" } }, - "tildify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz", - "integrity": "sha1-3OwD9V3Km3qj5bBPIYF+tW5jWIo=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0" - } - }, "time-stamp": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", diff --git a/package.json b/package.json index dbe4b213..895a7983 100644 --- a/package.json +++ b/package.json @@ -25,14 +25,13 @@ }, "dependencies": { "@fortawesome/fontawesome-free": "^5.15.4", - "@popperjs/core": "^2.10.2", "bootstrap": "^4.5.3", "cookieconsent": "^3.1.1", "datejs": "0.0.2", "fullcalendar": "^3.10.4", "jquery": "^3.5.1", "jquery-jeditable": "^2.0.19", - "jquery-ui": "^1.13.0", + "jquery-ui-dist": "^1.12.1", "jquery-ui-timepicker-addon": "^1.6.3", "jquery-ui-touch-punch": "^0.2.3", "moment": "^2.29.1", @@ -50,8 +49,6 @@ "gulp-babel": "^8.0.0", "gulp-changed": "^3.2.0", "gulp-clean-css": "^3.10.0", - "gulp-debug": "^4.0.0", - "gulp-npm-dist": "^1.0.3", "gulp-plumber": "^1.2.1", "gulp-rename": "^1.4.0", "gulp-sass": "^5.0.0",