diff --git a/gulpfile.js b/gulpfile.js deleted file mode 100644 index 4faca360..00000000 --- a/gulpfile.js +++ /dev/null @@ -1,240 +0,0 @@ -'use strict'; - -var gulp = require('gulp'), - babel = require('gulp-babel'), - uglify = require('gulp-uglify'), - stylus = require('gulp-stylus'), - cleanCss = require('gulp-clean-css'), - del = require('del'), - exec = require('child_process').exec, - concat = require('gulp-concat'), - zip = require('gulp-zip'), - replace = require('gulp-batch-replace'), - notify = require('gulp-notify'), - sourcemaps = require('gulp-sourcemaps'), - merge = require('merge2'), - runSequence = require('run-sequence'); - -var version = require('./package.json').version; - -var srcPath = 'resources/assets/src'; -var distPath = 'resources/assets/dist'; - -var vendorScripts = [ - 'jquery/dist/jquery.min.js', - 'bootstrap/dist/js/bootstrap.min.js', - 'admin-lte/dist/js/adminlte.min.js', - 'bootstrap-fileinput/js/fileinput.min.js', - 'icheck/icheck.min.js', - 'toastr/build/toastr.min.js', - 'es6-promise/dist/es6-promise.auto.min.js', - 'sweetalert2/dist/sweetalert2.min.js', - 'jqPaginator/dist/1.2.0/jqPaginator.min.js', -]; - -var vendorScriptsToBeMinified = [ - 'regenerator-runtime/runtime.js', - 'datatables.net/js/jquery.dataTables.js', - 'datatables.net-bs/js/dataTables.bootstrap.js', - 'resources/assets/dist/js/common.js', -]; - -var vendorStyles = [ - 'bootstrap/dist/css/bootstrap.min.css', - 'admin-lte/dist/css/AdminLTE.min.css', - 'datatables.net-bs/css/dataTables.bootstrap.css', - 'bootstrap-fileinput/css/fileinput.min.css', - 'font-awesome/css/font-awesome.min.css', - 'icheck/skins/square/blue.css', - 'toastr/build/toastr.min.css', - 'sweetalert2/dist/sweetalert2.min.css', -]; - -var styleReplacements = [ - ['blue.png', '"../images/blue.png"'], - ['blue@2x.png', '"../images/blue@2x.png"'], - ['../img/loading.gif', '"../images/loading.gif"'], - ['../img/loading-sm.gif', '"../images/loading-sm.gif"'], -]; - -var scriptReplacements = []; - -var fonts = [ - 'font-awesome/fonts/**', - 'bootstrap/dist/fonts/**', - 'resources/assets/src/fonts/**', -]; - -var images = [ - 'icheck/skins/square/blue.png', - 'icheck/skins/square/blue@2x.png', - 'resources/assets/src/images/**', - 'bootstrap-fileinput/img/loading.gif', - 'bootstrap-fileinput/img/loading-sm.gif', -]; - -// aka. `yarn run build` -gulp.task('default', ['build']); - -// Build the things! -gulp.task('build', callback => { - runSequence('clean', ['compile-es6', 'compile-stylus'], 'publish-vendor', 'notify', callback); -}); - -// Send a notification -gulp.task('notify', () => { - return gulp.src('').pipe(notify('Assets compiled!')); -}); - -// Concentrate all vendor scripts & styles to one dist file -gulp.task('publish-vendor', ['compile-es6'], callback => { - // JavaScript files - var js = gulp.src(convertNpmRelativePath(vendorScripts)) - .pipe(replace(scriptReplacements)); - var jsToBeMinified = gulp.src(convertNpmRelativePath(vendorScriptsToBeMinified)) - .pipe(uglify()); - merge(js, jsToBeMinified) - .pipe(concat('app.js')) - .pipe(gulp.dest(`${distPath}/js/`)); - // CSS files - gulp.src(convertNpmRelativePath(vendorStyles)) - .pipe(concat('style.css')) - .pipe(replace(styleReplacements)) - .pipe(gulp.dest(`${distPath}/css/`)); - // Fonts - gulp.src(convertNpmRelativePath(fonts)) - .pipe(gulp.dest(`${distPath}/fonts/`)); - // Images - gulp.src(convertNpmRelativePath(images)) - .pipe(gulp.dest(`${distPath}/images/`)); - // AdminLTE skins - gulp.src(convertNpmRelativePath(['admin-lte/dist/css/skins/*.min.css'])) - .pipe(gulp.dest(`${distPath}/css/skins/`)); - // 3D skin preview - gulp.src(convertNpmRelativePath(['three/build/three.min.js', 'skinview3d/build/skinview3d.min.js'])) - .pipe(concat('skinview3d.js')) - .pipe(gulp.dest(`${distPath}/js/`)); - // Chart.js - gulp.src(convertNpmRelativePath(['chart.js/dist/Chart.min.js'])) - .pipe(concat('chart.js')) - .pipe(gulp.dest(`${distPath}/js/`)); - - callback(); -}); - -// Compile stylus to css -gulp.task('compile-stylus', () => { - return gulp.src(`${srcPath}/stylus/*.styl`) - .pipe(sourcemaps.init()) - .pipe(stylus()) - .pipe(cleanCss()) - .pipe(sourcemaps.write('./maps')) - .pipe(gulp.dest(`${distPath}/css`)); -}); - -// Compile ES6 scripts to ES5 -gulp.task('compile-es6', callback => { - ['common', 'admin', 'auth', 'skinlib', 'user'].forEach(moduleName => { - return gulp.src(`${srcPath}/js/${moduleName}/*.js`) - .pipe(sourcemaps.init()) - .pipe(babel()) - .pipe(concat(`${moduleName}.js`)) - .pipe(uglify()) - .pipe(sourcemaps.write('./maps')) - .pipe(gulp.dest(`${distPath}/js`)); - }); - - callback(); -}); - -// Delete cache files -gulp.task('clean', () => { - clearCache(); - - return clearDist(); -}); - -// Release archive file -// aka. `yarn run release` -gulp.task('zip', () => { - clearCache(); - console.log('Cache file deleted'); - - exec('composer dump-autoload --no-dev', () => { - console.log('Autoload files generated without autoload-dev'); - }); - - let zipPath = `blessing-skin-server-v${version}.zip`; - - console.log(`Zip archive will be saved to ${zipPath}.`); - - return gulp.src([ - '**/*.*', - 'artisan', - 'LICENSE', - '!.babelrc', - '!.eslintrc.js', - '!.eslintignore', - '!.editorconfig', - '!.travis.yml', - '!{.env,.env.testing}', - '!{.git,.git/**}', - '!{.gitignore,.gitmodules,.gitattributes}', - '!gulpfile.js', - '!composer.*', - '!yarn.lock', - '!plugins/**', - 'plugins/', - '!phpunit.xml', - '!package.json', - '!{tests,tests/**}', - '!ISSUE_TEMPLATE.md', - '!{coverage,coverage/**}', - '!{node_modules,node_modules/**}', - '!storage/textures/**', - '!resources/assets/{src,src/**}', - '!resources/assets/dist/**/{maps,maps/**}', - // do not pack packages for developments - '!vendor/fzaninotto/**', - '!vendor/mockery/**', - '!vendor/phpunit/**', - '!vendor/symfony/css-selector/**', - '!vendor/symfony/dom-crawler/**', - '!vendor/mikey179/vfsStream/**', - ], { dot: true }) - .pipe(zip(zipPath)) - .pipe(notify('Don\'t forget to compile Stylus & ES2015 files before publishing a release!')) - .pipe(gulp.dest('../')) - .pipe(notify({ message: `Zip archive saved to ${zipPath}!` })); -}); - -gulp.task('watch', ['compile-stylus', 'compile-es6'], () => { - // watch .scss files - gulp.watch(`${srcPath}/stylus/*.scss`, ['compile-stylus'], () => notify('Stylus files compiled!')); - // watch .js files - gulp.watch(`${srcPath}/js/**/*.js`, ['compile-es6'], () => notify('ES6 scripts compiled!')); - gulp.watch(`${srcPath}/js/general.js`, ['publish-vendor']); -}); - -function convertNpmRelativePath(paths) { - return paths.map(relativePath => { - return relativePath.startsWith('resources') ? relativePath : `node_modules/${relativePath}`; - }); -} - -function clearCache() { - return del([ - 'storage/logs/*', - 'storage/testing/*', - 'storage/debugbar/*', - 'storage/update_cache/*', - 'storage/yaml-translation/*', - 'storage/framework/cache/*', - 'storage/framework/sessions/*', - 'storage/framework/views/*' - ]); -} - -function clearDist() { - return del([`${distPath}/**/*`]); -} diff --git a/package.json b/package.json index 258a229e..ca751b7d 100644 --- a/package.json +++ b/package.json @@ -11,11 +11,12 @@ "private": true, "scripts": { "dev": "webpack-serve", - "build": "webpack --mode=production -p", + "build": "rimraf public && webpack --mode=production -p", "lint": "eslint --ext=.js,.vue -f=beauty .", "test": "jest", "codecov": "codecov -F js", - "postinstall": "rimraf node_modules/jest-runtime/node_modules/babel-core node_modules/jest-config/node_modules/babel-core" + "postinstall": "rimraf node_modules/jest-runtime/node_modules/babel-core node_modules/jest-config/node_modules/babel-core", + "release": "yarn build && node scripts/release.js" }, "resolutions": { "uglify-es": "npm:terser" @@ -43,9 +44,13 @@ "@babel/plugin-syntax-dynamic-import": "^7.0.0-beta.54", "@babel/plugin-transform-runtime": "^7.0.0-beta.55", "@babel/preset-env": "^7.0.0-beta.54", + "@types/adm-zip": "^0.4.31", + "@types/execa": "^0.9.0", "@types/jest": "^23.3.1", "@types/jquery": "^3.3.5", + "@types/listr": "^0.13.0", "@vue/test-utils": "^1.0.0-beta.21", + "adm-zip": "^0.4.11", "autoprefixer": "^9.0.1", "babel-core": "7.0.0-bridge.0", "babel-eslint": "^8.2.6", @@ -60,10 +65,12 @@ "eslint": "^5.2.0", "eslint-formatter-beauty": "^3.0.0-beta.2", "eslint-plugin-vue": "^5.0.0-beta.1", + "execa": "^0.11.0", "file-loader": "^1.1.11", "jest": "^23.4.1", "jest-extended": "^0.7.2", "json-loader": "^0.5.7", + "listr": "^0.14.1", "mini-css-extract-plugin": "^0.4.1", "postcss-loader": "^2.1.6", "rimraf": "^2.6.2", diff --git a/scripts/release.js b/scripts/release.js new file mode 100644 index 00000000..7ef93399 --- /dev/null +++ b/scripts/release.js @@ -0,0 +1,45 @@ +const { promisify } = require('util'); +const Listr = require('listr'); +const execa = require('execa'); +const rimraf = require('rimraf'); + +function del(path) { + return new Promise((resolve, reject) => { + rimraf(path, err => err ? reject(err) : resolve()); + }); +} + +const tasks = new Listr([ + { + title: 'Clear cache files', + task: async () => await Promise.all([ + 'storage/logs/*.log', + 'storage/testing/*', + 'storage/debugbar/*', + 'storage/update_cache/*', + 'storage/update_cache', + 'storage/yaml-translation/*', + 'storage/framework/cache/*', + 'storage/framework/sessions/*', + 'storage/framework/views/*', + ].map(del)) + }, + { + title: 'Install PHP dependencies for production', + task: async () => { + await del('vendor'); + await execa('composer', ['install', '--no-dev']); + return del('vendor/bin'); + } + }, + { + title: 'Build the zip archive', + task: require('./zip') + }, + { + title: 'Install PHP dependencies for development', + task: () => execa('composer', ['install']) + }, +]); + +tasks.run().catch(console.error); diff --git a/scripts/zip.js b/scripts/zip.js new file mode 100644 index 00000000..604c7871 --- /dev/null +++ b/scripts/zip.js @@ -0,0 +1,21 @@ +const fs = require('fs'); +const path = require('path'); +const AdmZip = require('adm-zip'); +const { version } = require('../package.json'); + +module.exports = function () { + const list = fs.readFileSync('./zip.txt', 'utf-8').split('\n'); + list.pop(); // Remove the empty line + + const archive = new AdmZip(); + + list.forEach(item => { + if (item.endsWith('/')) { + archive.addLocalFolder(item, item); + } else { + archive.addLocalFile(item); + } + }); + + archive.writeZip(`../blessing-skin-server-v${version}.zip`); +}; diff --git a/yarn.lock b/yarn.lock index ce73088f..1a312fba 100644 --- a/yarn.lock +++ b/yarn.lock @@ -632,6 +632,12 @@ version "5.2.0" resolved "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-5.2.0.tgz#50cd9856774351c56c0b1b0db4efe122d7913e58" +"@samverschueren/stream-to-observable@^0.3.0": + version "0.3.0" + resolved "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz#ecdf48d532c58ea477acfcab80348424f8d0662f" + dependencies: + any-observable "^0.3.0" + "@shellscape/koa-send@^4.1.0": version "4.1.3" resolved "https://registry.yarnpkg.com/@shellscape/koa-send/-/koa-send-4.1.3.tgz#1a7c8df21f63487e060b7bfd8ed82e1d3c4ae0b0" @@ -652,6 +658,18 @@ version "0.7.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" +"@types/adm-zip@^0.4.31": + version "0.4.31" + resolved "https://registry.npmjs.org/@types/adm-zip/-/adm-zip-0.4.31.tgz#a3376b9fa8f4c6e9c078c176d2df2caeb7939de3" + dependencies: + "@types/node" "*" + +"@types/execa@^0.9.0": + version "0.9.0" + resolved "https://registry.npmjs.org/@types/execa/-/execa-0.9.0.tgz#9b025d2755f17e80beaf9368c3f4f319d8b0fb93" + dependencies: + "@types/node" "*" + "@types/jest@^23.3.1": version "23.3.1" resolved "https://registry.yarnpkg.com/@types/jest/-/jest-23.3.1.tgz#a4319aedb071d478e6f407d1c4578ec8156829cf" @@ -660,6 +678,16 @@ version "3.3.5" resolved "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.3.5.tgz#75cfec8c5ee38355d14296ada7e7e2fb8bd3ac2f" +"@types/listr@^0.13.0": + version "0.13.0" + resolved "https://registry.npmjs.org/@types/listr/-/listr-0.13.0.tgz#6250bc4a04123cafa24fc73d1b880653a6ae6721" + dependencies: + "@types/node" "*" + +"@types/node@*": + version "10.7.1" + resolved "https://registry.npmjs.org/@types/node/-/node-10.7.1.tgz#b704d7c259aa40ee052eec678758a68d07132a2e" + "@types/strip-bom@^3.0.0": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/strip-bom/-/strip-bom-3.0.0.tgz#14a8ec3956c2e81edb7520790aecf21c290aebd2" @@ -922,6 +950,10 @@ acorn@^5.0.3, acorn@^5.2.1, acorn@^5.4.1: version "5.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.4.1.tgz#fdc58d9d17f4a4e98d102ded826a9b9759125102" +adm-zip@^0.4.11: + version "0.4.11" + resolved "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz#2aa54c84c4b01a9d0fb89bb11982a51f13e3d62a" + admin-lte@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/admin-lte/-/admin-lte-2.4.2.tgz#6a2928fa34715881eb69a09b64dbccc8d5fae539" @@ -1010,6 +1042,10 @@ ansi-align@^2.0.0: dependencies: string-width "^2.0.0" +ansi-escapes@^1.0.0: + version "1.4.0" + resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" + ansi-escapes@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92" @@ -1038,6 +1074,10 @@ ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" +any-observable@^0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/any-observable/-/any-observable-0.3.0.tgz#af933475e5806a67d0d7df090dd5e8bef65d119b" + any-promise@^1.0.0, any-promise@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" @@ -1918,7 +1958,7 @@ center-align@^0.1.1: align-text "^0.1.3" lazy-cache "^1.0.3" -chalk@^1.1.3: +chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: @@ -2049,12 +2089,29 @@ cli-boxes@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" +cli-cursor@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" + dependencies: + restore-cursor "^1.0.1" + cli-cursor@^2.0.0, cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" dependencies: restore-cursor "^2.0.0" +cli-spinners@^0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-0.1.2.tgz#bb764d88e185fb9e1e6a2a1f19772318f605e31c" + +cli-truncate@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" + dependencies: + slice-ansi "0.0.4" + string-width "^1.0.1" + cli-width@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" @@ -2412,7 +2469,7 @@ cross-spawn@^5.0.1: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^6.0.5: +cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" dependencies: @@ -2672,6 +2729,10 @@ date-fns@2.0.0-alpha.7: version "2.0.0-alpha.7" resolved "https://registry.npmjs.org/date-fns/-/date-fns-2.0.0-alpha.7.tgz#245ad16f95764eababfb2c0a41fd5d033c20e57a" +date-fns@^1.27.2: + version "1.29.0" + resolved "https://registry.npmjs.org/date-fns/-/date-fns-1.29.0.tgz#12e609cdcb935127311d04d33334e2960a2a54e6" + date-now@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" @@ -2957,6 +3018,10 @@ electron-to-chromium@^1.3.47, electron-to-chromium@^1.3.52: version "1.3.52" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.52.tgz#d2d9f1270ba4a3b967b831c40ef71fb4d9ab5ce0" +elegant-spinner@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" + elliptic@^6.0.0: version "6.4.0" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" @@ -3228,6 +3293,18 @@ exec-sh@^0.2.0: dependencies: merge "^1.1.3" +execa@^0.11.0: + version "0.11.0" + resolved "https://registry.npmjs.org/execa/-/execa-0.11.0.tgz#0b3c71daf9b9159c252a863cd981af1b4410d97a" + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + execa@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" @@ -3252,6 +3329,10 @@ execa@^0.8.0: signal-exit "^3.0.0" strip-eof "^1.0.0" +exit-hook@^1.0.0: + version "1.1.1" + resolved "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" + exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" @@ -3433,6 +3514,13 @@ fb-watchman@^2.0.0: dependencies: bser "^2.0.0" +figures@^1.7.0: + version "1.7.0" + resolved "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" + dependencies: + escape-string-regexp "^1.0.5" + object-assign "^4.1.0" + figures@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" @@ -3682,6 +3770,12 @@ get-stream@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" +get-stream@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.0.0.tgz#9e074cb898bd2b9ebabb445a1766d7f43576d977" + dependencies: + pump "^3.0.0" + get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -4116,6 +4210,12 @@ imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + dependencies: + repeating "^2.0.0" + indent-string@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" @@ -4438,6 +4538,12 @@ is-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" +is-observable@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz#b3e986c8f44de950867cab5403f5a3465005975e" + dependencies: + symbol-observable "^1.1.0" + is-odd@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-2.0.0.tgz#7646624671fd7ea558ccd9a2795182f2958f1b24" @@ -5257,6 +5363,53 @@ lexical-scope@^1.2.0: dependencies: astw "^2.0.0" +listr-silent-renderer@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e" + +listr-update-renderer@^0.4.0: + version "0.4.0" + resolved "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.4.0.tgz#344d980da2ca2e8b145ba305908f32ae3f4cc8a7" + dependencies: + chalk "^1.1.3" + cli-truncate "^0.2.1" + elegant-spinner "^1.0.1" + figures "^1.7.0" + indent-string "^3.0.0" + log-symbols "^1.0.2" + log-update "^1.0.2" + strip-ansi "^3.0.1" + +listr-verbose-renderer@^0.4.0: + version "0.4.1" + resolved "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#8206f4cf6d52ddc5827e5fd14989e0e965933a35" + dependencies: + chalk "^1.1.3" + cli-cursor "^1.0.2" + date-fns "^1.27.2" + figures "^1.7.0" + +listr@^0.14.1: + version "0.14.1" + resolved "https://registry.npmjs.org/listr/-/listr-0.14.1.tgz#8a7afa4a7135cee4c921d128e0b7dfc6e522d43d" + dependencies: + "@samverschueren/stream-to-observable" "^0.3.0" + cli-truncate "^0.2.1" + figures "^1.7.0" + indent-string "^2.1.0" + is-observable "^1.1.0" + is-promise "^2.1.0" + is-stream "^1.1.0" + listr-silent-renderer "^1.1.1" + listr-update-renderer "^0.4.0" + listr-verbose-renderer "^0.4.0" + log-symbols "^1.0.2" + log-update "^1.0.2" + ora "^0.2.3" + p-map "^1.1.1" + rxjs "^6.1.0" + strip-ansi "^3.0.1" + load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" @@ -5354,12 +5507,25 @@ lodash@^4.13.1, lodash@^4.14.0, lodash@^4.17.4: version "4.17.5" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" +log-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" + dependencies: + chalk "^1.0.0" + log-symbols@^2.1.0, log-symbols@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" dependencies: chalk "^2.0.1" +log-update@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/log-update/-/log-update-1.0.2.tgz#19929f64c4093d2d2e7075a1dad8af59c296b8d1" + dependencies: + ansi-escapes "^1.0.0" + cli-cursor "^1.0.2" + log-update@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/log-update/-/log-update-2.3.0.tgz#88328fd7d1ce7938b29283746f0b1bc126b24708" @@ -6059,6 +6225,10 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: dependencies: wrappy "1" +onetime@^1.0.0: + version "1.1.0" + resolved "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" + onetime@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" @@ -6097,6 +6267,15 @@ optionator@^0.8.1, optionator@^0.8.2: type-check "~0.3.2" wordwrap "~1.0.0" +ora@^0.2.3: + version "0.2.3" + resolved "https://registry.npmjs.org/ora/-/ora-0.2.3.tgz#37527d220adcd53c39b73571d754156d5db657a4" + dependencies: + chalk "^1.1.1" + cli-cursor "^1.0.2" + cli-spinners "^0.1.2" + object-assign "^4.0.1" + os-browserify@^0.3.0, os-browserify@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" @@ -6166,6 +6345,10 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" +p-map@^1.1.1: + version "1.2.0" + resolved "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" + p-reduce@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" @@ -6775,6 +6958,13 @@ pump@^2.0.0, pump@^2.0.1: end-of-stream "^1.1.0" once "^1.3.1" +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + pumpify@^1.3.3: version "1.5.1" resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" @@ -7214,6 +7404,13 @@ resolve@^1.3.2, resolve@^1.6.0: dependencies: path-parse "^1.0.5" +restore-cursor@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" + dependencies: + exit-hook "^1.0.0" + onetime "^1.0.0" + restore-cursor@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" @@ -7485,6 +7682,10 @@ slash@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" +slice-ansi@0.0.4: + version "0.0.4" + resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" + slice-ansi@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" @@ -7898,6 +8099,10 @@ symbol-observable@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.1.tgz#8340fc4702c3122df5d22288f88283f513d3fdd4" +symbol-observable@^1.1.0: + version "1.2.0" + resolved "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" + symbol-tree@^3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" diff --git a/zip.txt b/zip.txt new file mode 100644 index 00000000..0481fb6d --- /dev/null +++ b/zip.txt @@ -0,0 +1,18 @@ +app/ +bootstrap/ +config/ +database/ +public/ +resources/lang/ +resources/views/ +routes/ +storage/ +vendor/ +.env.example +.htaccess +artisan +index.php +LICENSE +README.md +README_EN.md +web.config