diff --git a/.babelrc b/.babelrc deleted file mode 100755 index 968e86e9..00000000 --- a/.babelrc +++ /dev/null @@ -1,12 +0,0 @@ -{ - "plugins": [ - "transform-class-properties", - "transform-object-rest-spread" - ], - "presets": [ - ["env", { - "modules": false - }], - "stage-0" - ] -} diff --git a/.eslintrc.yml b/.eslintrc.yml index 4ed39074..39709feb 100755 --- a/.eslintrc.yml +++ b/.eslintrc.yml @@ -2,8 +2,7 @@ extends: airbnb-base - parser: - @babel/eslint-parser + parser: "@babel/eslint-parser" settings: ecmascript: 7 diff --git a/.gitignore b/.gitignore index 9848098b..dc354c5e 100755 --- a/.gitignore +++ b/.gitignore @@ -30,3 +30,4 @@ package-lock.json # ---------------------------- build/ +dist/ diff --git a/CHANGELOG.md b/CHANGELOG.md index f4436840..a1496823 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,3 +3,7 @@ #### 1.0.0 - Intial release + +#### 1.1.0 + +- Upgrade to webpack 5 \ No newline at end of file diff --git a/browserslist b/browserslist index ba620219..ce551742 100755 --- a/browserslist +++ b/browserslist @@ -1 +1,2 @@ Last 3 versions +IE 11 \ No newline at end of file diff --git a/package.json b/package.json index 569ce4e6..539ce308 100644 --- a/package.json +++ b/package.json @@ -1,14 +1,14 @@ { "name": "adminator", - "version": "1.0.0", + "version": "1.1.0", "private": true, "description": "HTML Admin Template", "scripts": { - "start": "webpack-dev-server", - "dev": "webpack-dashboard -t 'Project' -- webpack-dev-server", - "clean": "shx rm -rf ./build", - "build": "npm run clean && cross-env NODE_ENV=\"production\" webpack", - "preview": "cross-env NODE_ENV=\"production\" webpack-dev-server", + "start": "webpack server", + "dev": "webpack-dashboard -t 'Project' -- webpack server", + "clean": "shx rm -rf ./dist", + "build": "npm run clean && cross-env webpack", + "preview": "cross-env webpack server", "lint:js": "eslint ./src ./webpack ./*.js -f table --ext .js --ext .jsx", "lint:scss": "stylelint ./src/**/*.scss --syntax scss", "lint": "npm run lint:js && npm run lint:scss" @@ -21,32 +21,41 @@ "@babel/plugin-transform-runtime": "^7.13.9", "@babel/runtime": "^7.13.9", "babel-core": "^6.26.3", - "babel-loader": "^7.1.5", + "babel-loader": "^8.2.2", "babel-preset-env": "^1.7.0", "babel-preset-stage-0": "^6.24.1", "case-sensitive-paths-webpack-plugin": "^2.4.0", - "copy-webpack-plugin": "^4.6.0", + "copy-webpack-plugin": "^9.0.0", "cross-env": "^7.0.3", - "css-loader": "^0.28.11", + "css-loader": "^5.2.6", "eslint": "^7.21.0", "eslint-config-airbnb-base": "^14.2.1", "eslint-plugin-import": "2.22.1", "extract-text-webpack-plugin": "^3.0.2", - "html-webpack-plugin": "^3.2.0", + "html-webpack-plugin": "^5.3.1", "imagemin-webpack-plugin": "^2.4.2", + "mini-css-extract-plugin": "^1.6.0", "node-sass": "^4.14.1", - "postcss-loader": "^3.0.0", + "postcss": "^8.3.0", + "postcss-loader": "^5.3.0", "postcss-preset-env": "^6.7.0", - "sass-loader": "^7.3.1", + "sass-loader": "^11.1.1", "shx": "^0.3.3", - "style-loader": "^0.23.1", - "stylelint": "^13.11.0", - "stylelint-config-standard": "^20.0.0", - "webpack": "^3.10.0", + "style-loader": "^2.0.0", + "stylelint": "^13.13.1", + "stylelint-config-standard": "^22.0.0", + "webpack": "^5.37.1", + "webpack-cli": "^4.7.0", "webpack-dashboard": "^3.3.1", - "webpack-dev-server": "^2.11.5" + "webpack-dev-server": "^3.11.2" }, "dependencies": { + "@fullcalendar/core": "^5.7.0", + "@fullcalendar/daygrid": "^5.7.0", + "@fullcalendar/interaction": "^5.7.0", + "@fullcalendar/list": "^5.7.0", + "@fullcalendar/timegrid": "^5.7.0", + "@popperjs/core": "^2.9.2", "babel-polyfill": "^6.26.0", "bootstrap": "^4.6.0", "bootstrap-datepicker": "^1.9.0", @@ -54,17 +63,17 @@ "chart.js": "^2.9.4", "datatables": "^1.10.18", "easy-pie-chart": "^2.1.7", - "file-loader": "^2.0.0", - "fullcalendar": "^3.10.0", + "file-loader": "^6.2.0", + "fullcalendar": "^5.7.0", "jquery": "^3.6.0", "jquery-sparkline": "^2.4.0", "jvectormap": "^2.0.4", - "load-google-maps-api": "^1.3.3", + "load-google-maps-api": "^2.0.2", "lodash": "^4.17.21", "masonry-layout": "^4.2.2", "moment": "^2.29.1", "perfect-scrollbar": "^1.5.0", - "popper.js": "^1.14.3", + "popper.js": "^1.16.1", "skycons": "^1.0.0" } } diff --git a/src/assets/scripts/fullcalendar/index.js b/src/assets/scripts/fullcalendar/index.js index de3ebba9..a7708193 100755 --- a/src/assets/scripts/fullcalendar/index.js +++ b/src/assets/scripts/fullcalendar/index.js @@ -1,59 +1,81 @@ import * as $ from 'jquery'; -import 'fullcalendar/dist/fullcalendar.min.js'; -import 'fullcalendar/dist/fullcalendar.min.css'; +import { Calendar } from '@fullcalendar/core'; +import interactionPlugin from '@fullcalendar/interaction'; +import dayGridPlugin from '@fullcalendar/daygrid'; +import timeGridPlugin from '@fullcalendar/timegrid'; +import listPlugin from '@fullcalendar/list'; -export default (function () { - const date = new Date(); - const d = date.getDate(); - const m = date.getMonth(); - const y = date.getFullYear(); +document.addEventListener('DOMContentLoaded', function() { + var calendarEl = document.getElementById('calendar'); - const events = [{ - title : 'All Day Event', - start : new Date(y, m, 1), - desc : 'Meetings', - bullet : 'success', - }, { - title : 'Long Event', - start : new Date(y, m, d - 5), - end : new Date(y, m, d - 2), - desc : 'Hangouts', - bullet : 'success', - }, { - title : 'Repeating Event', - start : new Date(y, m, d - 3, 16, 0), - allDay : false, - desc : 'Product Checkup', - bullet : 'warning', - }, { - title : 'Repeating Event', - start : new Date(y, m, d + 4, 16, 0), - allDay : false, - desc : 'Conference', - bullet : 'danger', - }, { - title : 'Birthday Party', - start : new Date(y, m, d + 1, 19, 0), - end : new Date(y, m, d + 1, 22, 30), - allDay : false, - desc : 'Gathering', - }, { - title : 'Click for Google', - start : new Date(y, m, 28), - end : new Date(y, m, 29), - url : 'http ://google.com/', - desc : 'Google', - bullet : 'success', - }]; - - $('#full-calendar').fullCalendar({ - events, - height : 800, - editable : true, - header: { - left : 'month,agendaWeek,agendaDay', - center : 'title', - right : 'today prev,next', + var calendar = new Calendar(calendarEl, { + plugins: [ interactionPlugin, dayGridPlugin, timeGridPlugin, listPlugin ], + headerToolbar: { + left: 'prev,next today', + center: 'title', + right: 'dayGridMonth,timeGridWeek,timeGridDay,listWeek' }, + initialDate: '2018-01-12', + navLinks: true, // can click day/week names to navigate views + editable: true, + dayMaxEvents: true, // allow "more" link when too many events + events: [ + { + title: 'All Day Event', + start: '2018-01-01', + }, + { + title: 'Long Event', + start: '2018-01-07', + end: '2018-01-10' + }, + { + groupId: 999, + title: 'Repeating Event', + start: '2018-01-09T16:00:00' + }, + { + groupId: 999, + title: 'Repeating Event', + start: '2018-01-16T16:00:00' + }, + { + title: 'Conference', + start: '2018-01-11', + end: '2018-01-13' + }, + { + title: 'Meeting', + start: '2018-01-12T10:30:00', + end: '2018-01-12T12:30:00' + }, + { + title: 'Lunch', + start: '2018-01-12T12:00:00' + }, + { + title: 'Meeting', + start: '2018-01-12T14:30:00' + }, + { + title: 'Happy Hour', + start: '2018-01-12T17:30:00' + }, + { + title: 'Dinner', + start: '2018-01-12T20:00:00' + }, + { + title: 'Birthday Party', + start: '2018-01-13T07:00:00' + }, + { + title: 'Click for Google', + url: 'http://google.com/', + start: '2018-01-28' + } + ] }); -}()) + + calendar.render(); +}); diff --git a/src/calendar.html b/src/calendar.html index e0d4cc59..05d09042 100755 --- a/src/calendar.html +++ b/src/calendar.html @@ -637,7 +637,7 @@

Monday

-
+