diff --git a/.eslintignore b/.eslintignore index baca311b..dc70b364 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,3 +1,4 @@ node_modules/* /dist/** .eslintrc.js +vite.config.mjs diff --git a/.eslintrc.js b/.eslintrc.js index f19d1539..fc9e572a 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,30 +1,7 @@ module.exports = { - root: true, - env: { - node: true, - }, - extends: [ - 'plugin:vue/vue3-essential', - 'eslint:recommended', - 'plugin:prettier/recommended', - ], - parserOptions: { - parser: '@babel/eslint-parser', - }, + extends: ["plugin:vue/vue3-essential", "eslint:recommended"], rules: { - 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off', - 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off', - 'vue/multi-word-component-names': 'off', + "no-console": process.env.NODE_ENV === "production" ? "warn" : "off", + "no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off", }, - overrides: [ - { - files: [ - '**/__tests__/*.{j,t}s?(x)', - '**/tests/unit/**/*.spec.{j,t}s?(x)', - ], - env: { - jest: true, - }, - }, - ], -} +}; diff --git a/.prettierrc.js b/.prettierrc.js index 6ac17b64..61281d24 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -1,7 +1,7 @@ module.exports = { - // jsxBracketSameLine: true, semi: false, trailingComma: "all", singleQuote: true, - tabWidth: 2 + printWidth: 100, + tabWidth: 2, }; diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..eee6fcc1 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2024 creativeLabs Łukasz Holeczek. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/README.md b/README.md index 1f772b7c..0307d814 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,12 @@ +# CoreUI Free Vue Admin Template [![Tweet](https://img.shields.io/twitter/url/http/shields.io.svg?style=social&logo=twitter)](https://twitter.com/intent/tweet?text=CoreUI%20-%20Free%Vue%204%20Admin%20Template%20&url=https://coreui.io&hashtags=bootstrap,admin,template,dashboard,panel,free,angular,react,vue) + +[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](https://opensource.org/licenses/MIT) [![@coreui coreui](https://img.shields.io/badge/@coreui%20-coreui-lightgrey.svg?style=flat-square)](https://github.com/coreui/coreui) [![npm package][npm-coreui-badge]][npm-coreui] -[![NPM downloads][npm-coreui-download]][npm-coreui] +[![NPM downloads][npm-coreui-download]][npm-coreui] [![@coreui vue](https://img.shields.io/badge/@coreui%20-vue-lightgrey.svg?style=flat-square)](https://github.com/coreui/vue) [![npm package][npm-coreui-vue-badge]][npm-coreui-vue] [![NPM downloads][npm-coreui-vue-download]][npm-coreui-vue] -[![npm next][npm-next]][npm] [npm-coreui]: https://www.npmjs.com/package/@coreui/coreui [npm-coreui-badge]: https://img.shields.io/npm/v/@coreui/coreui.png?style=flat-square @@ -12,17 +14,17 @@ [npm-coreui-vue]: https://www.npmjs.com/package/@coreui/vue [npm-coreui-vue-badge]: https://img.shields.io/npm/v/@coreui/vue.png?style=flat-square [npm-coreui-vue-download]: https://img.shields.io/npm/dm/@coreui/vue.svg?style=flat-square -[npm-next]: https://img.shields.io/npm/v/@coreui/vue/next.png?style=flat-square [npm]: https://www.npmjs.com/package/@coreui/vue -# CoreUI Free Vue Admin Template v4 +[![Bootstrap Admin Template](https://assets.coreui.io/products/coreui-free-bootstrap-admin-template-light-dark.webp)](https://coreui.io/product/free-react-admin-template/) CoreUI is meant to be the UX game changer. Pure & transparent code is devoid of redundant components, so the app is light enough to offer ultimate user experience. This means mobile devices also, where the navigation is just as easy and intuitive as on a desktop or laptop. The CoreUI Layout API lets you customize your project for almost any device – be it Mobile, Web or WebApp – CoreUI covers them all! ## Table of Contents * [Versions](#versions) -* [CoreUI Pro](#coreui-pro) +* [CoreUI PRO](#coreui-pro) +* [CoreUI PRO Vue Admin Templates](#coreui-pro-vue-admin-templates) * [Quick Start](#quick-start) * [Installation](#installation) * [Basic usage](#basic-usage) @@ -31,6 +33,7 @@ CoreUI is meant to be the UX game changer. Pure & transparent code is devoid of * [Versioning](#versioning) * [Creators](#creators) * [Community](#community) +* [Support CoreUI Development](#support-coreui-development) * [Copyright and License](#copyright-and-license) ## Versions @@ -40,12 +43,22 @@ CoreUI is meant to be the UX game changer. Pure & transparent code is devoid of * [CoreUI Free React.js Admin Template](https://github.com/coreui/coreui-free-react-admin-template) * [CoreUI Free Vue.js Admin Template](https://github.com/coreui/coreui-free-vue-admin-template) -## CoreUI Pro +## CoreUI PRO + +* πŸ’ͺ [CoreUI PRO Angular Admin Template](https://coreui.io/product/angular-dashboard-template/) +* πŸ’ͺ [CoreUI PRO Bootstrap Admin Template](https://coreui.io/product/bootstrap-dashboard-template/) +* πŸ’ͺ [CoreUI PRO React Admin Template](https://coreui.io/product/react-dashboard-template/) +* πŸ’ͺ [CoreUI PRO Vue Admin Template](https://coreui.io/product/vue-dashboard-template/) + +## CoreUI PRO Vue Admin Templates + +| Default Theme | Light Theme | +| --- | --- | +| [![CoreUI PRO Vue Admin Template](https://coreui.io/images/templates/coreui_pro_default_light_dark.webp)](https://coreui.io/product/vue-dashboard-template/?theme=default) | [![CoreUI PRO Vue Admin Template](https://coreui.io/images/templates/coreui_pro_light_light_dark.webp)](https://coreui.io/product/vue-dashboard-template/?theme=light)| -* πŸ’ͺ [CoreUI Pro Angular Admin Template](https://coreui.io/product/angular-dashboard-template/) -* πŸ’ͺ [CoreUI Pro Bootstrap Admin Template](https://coreui.io/product/bootstrap-dashboard-template/) -* πŸ’ͺ [CoreUI Pro React Admin Template](https://coreui.io/product/react-dashboard-template/) -* πŸ’ͺ [CoreUI Pro Vue Admin Template](https://coreui.io/product/vue-dashboard-template/) +| Default Theme v3 | Light Theme v3 | +| --- | --- | +| [![CoreUI PRO Vue Admin Template](https://coreui.io/images/templates/coreui_pro_default_v3_light_dark.webp)](https://coreui.io/product/vue-dashboard-template/?theme=default-v3) | [![CoreUI PRO Vue Admin Template](https://coreui.io/images/templates/coreui_pro_light_v3_light_dark.webp)](https://coreui.io/product/vue-dashboard-template/?theme=light)| ## Quick Start @@ -68,14 +81,14 @@ $ yarn install ``` bash # dev server with hot reload at http://localhost:3000 -$ npm run serve +$ npm run dev ``` or ``` bash # dev server with hot reload at http://localhost:3000 -$ yarn serve +$ yarn dev ``` Navigate to [http://localhost:3000](http://localhost:3000). The app will automatically reload if you change any of the source files. @@ -103,27 +116,26 @@ Within the download you'll find the following directories and files, logically g ``` coreui-free-vue-admin-template β”œβ”€β”€ public/ # static files -β”‚ └── index.html # html template -β”‚ β”œβ”€β”€ src/ # project root β”‚ β”œβ”€β”€ assets/ # images, icons, etc. β”‚ β”œβ”€β”€ components/ # common components - header, footer, sidebar, etc. β”‚ β”œβ”€β”€ layouts/ # layout containers β”‚ β”œβ”€β”€ scss/ # scss styles β”‚ β”œβ”€β”€ router # routes config -β”‚ └── store # template state example +β”‚ β”œβ”€β”€ store # template state example β”‚ β”œβ”€β”€ views/ # application views β”‚ β”œβ”€β”€ _nav.js # sidebar navigation config β”‚ β”œβ”€β”€ App.vue β”‚ β”œβ”€β”€ ... β”‚ └── main.js -β”‚ -└── package.json +β”œβ”€β”€ index.html # html template +β”œβ”€β”€ package.json +└── vite.config.js ``` ## Documentation -The documentation for the CoreUI Admin Template is hosted at our website [CoreUI for Vue](https://coreui.io/vue/) +The documentation for the CoreUI Admin Template is hosted at our website [CoreUI for Vue](https://coreui.io/vue/docs/templates/installation.html) ## Versioning @@ -134,12 +146,19 @@ See [the Releases section of our project](https://github.com/coreui/coreui-free- ## Creators **Łukasz Holeczek** + * * -* -**CoreUI team** -* https://github.com/orgs/coreui/people +**Andrzej KopaΕ„ski** + +* + +**CoreUI Team** + +* +* +* ## Community @@ -150,46 +169,10 @@ Get updates on CoreUI's development and chat with the project maintainers and co ## Support CoreUI Development -CoreUI is an MIT-licensed open source project and is completely free to use. However, the amount of effort needed to maintain and develop new features for the project is not sustainable without proper financial backing. You can support development by buying the [CoreUI PRO](https://coreui.io/pricing/) or by becoming a sponsor via [Open Collective](https://opencollective.com/coreui/). - - - -### Platinum Sponsors - -Support this project by [becoming a Platinum Sponsor](https://opencollective.com/coreui/contribute/platinum-sponsor-40959/). A large company logo will be added here with a link to your website. - - - -### Gold Sponsors - -Support this project by [becoming a Gold Sponsor](https://opencollective.com/coreui/contribute/gold-sponsor-40960/). A big company logo will be added here with a link to your website. - - - -### Silver Sponsors - -Support this project by [becoming a Silver Sponsor](https://opencollective.com/coreui/contribute/silver-sponsor-40967/). A medium company logo will be added here with a link to your website. - - - -### Bronze Sponsors - -Support this project by [becoming a Bronze Sponsor](https://opencollective.com/coreui/contribute/bronze-sponsor-40966/). The company avatar will show up here with a link to your OpenCollective Profile. - - - -### Backers - -Thanks to all the backers and sponsors! Support this project by [becoming a backer](https://opencollective.com/coreui/contribute/backer-40965/). - - - - +CoreUI is an MIT-licensed open source project and is completely free to use. However, the amount of effort needed to maintain and develop new features for the project is not sustainable without proper financial backing. You can support development by buying the [CoreUI PRO](https://coreui.io/pricing/?framework=vue&src=github-coreui-free-vue-admin-template) or by becoming a sponsor via [Open Collective](https://opencollective.com/coreui/). ## Copyright and License -copyright 2022 creativeLabs Łukasz Holeczek. +copyright 2024 creativeLabs Łukasz Holeczek. - -Code released under [the MIT license](https://github.com/coreui/coreui-free-react-admin-template/blob/master/LICENSE). -There is only one limitation you can't can’t re-distribute the CoreUI as stock. You can’t do this if you modify the CoreUI. In past we faced some problems with persons who tried to sell CoreUI based templates. +Code released under [the MIT license](https://github.com/coreui/coreui-free-react-admin-template/blob/main/LICENSE). diff --git a/babel.config.js b/babel.config.js deleted file mode 100644 index c1b783ea..00000000 --- a/babel.config.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - presets: ['@vue/cli-plugin-babel/preset'], -} diff --git a/cypress.json b/cypress.json deleted file mode 100644 index 470c7201..00000000 --- a/cypress.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "pluginsFile": "tests/e2e/plugins/index.js" -} diff --git a/public/index.html b/index.html similarity index 73% rename from public/index.html rename to index.html index df559041..1c4aae12 100644 --- a/public/index.html +++ b/index.html @@ -1,10 +1,10 @@ @@ -32,12 +32,20 @@ + -
+
+ diff --git a/jest.config.js b/jest.config.js deleted file mode 100644 index 2dac575d..00000000 --- a/jest.config.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - preset: '@vue/cli-plugin-unit-jest', -} diff --git a/jsconfig.json b/jsconfig.json deleted file mode 100644 index 4aafc5f6..00000000 --- a/jsconfig.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "compilerOptions": { - "target": "es5", - "module": "esnext", - "baseUrl": "./", - "moduleResolution": "node", - "paths": { - "@/*": [ - "src/*" - ] - }, - "lib": [ - "esnext", - "dom", - "dom.iterable", - "scripthost" - ] - } -} diff --git a/package.json b/package.json index 1e74ca23..2fe17aea 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@coreui/coreui-free-vue-admin-template", - "version": "4.1.0", + "version": "5.0.0", "description": "CoreUI Free Vue Admin Template", "bugs": { "url": "https://github.com/coreui/coreui-free-vue-admin-template/issues" @@ -12,49 +12,33 @@ "license": "MIT", "author": "The CoreUI Team (https://github.com/orgs/coreui/people)", "scripts": { - "build": "vue-cli-service build", - "lint": "vue-cli-service lint", - "serve": "vue-cli-service serve", - "test:e2e": "vue-cli-service test:e2e", - "test:unit": "vue-cli-service test:unit" - }, - "config": { - "coreui_library_short_version": "4.1" + "dev": "vite --force", + "build": "vite build", + "lint": "eslint \"src/**/*.{js,vue}\"", + "preview": "vite preview" }, "dependencies": { - "@coreui/chartjs": "^3.0.0", - "@coreui/coreui": "^4.1.0", - "@coreui/icons": "^2.1.0", + "@coreui/chartjs": "^4.0.0", + "@coreui/coreui": "^5.0.0", + "@coreui/icons": "^3.0.1", "@coreui/icons-vue": "2.0.0", - "@coreui/utils": "^1.3.1", - "@coreui/vue": "^4.1.0", - "@coreui/vue-chartjs": "2.0.0", - "core-js": "^3.19.0", - "vue": "^3.2.23", - "vue-router": "^4.0.12", - "vuex": "^4.0.2" + "@coreui/utils": "^2.0.2", + "@coreui/vue": "^5.0.0", + "@coreui/vue-chartjs": "^3.0.0", + "@popperjs/core": "^2.11.8", + "chart.js": "^4.4.2", + "simplebar-vue": "^2.3.3", + "vue": "^3.4.21", + "vue-router": "^4.3.0", + "vuex": "^4.1.0" }, "devDependencies": { - "@babel/core": "^7.12.16", - "@babel/eslint-parser": "^7.12.16", - "@vue/cli-plugin-babel": "~5.0.0-rc.1", - "@vue/cli-plugin-e2e-cypress": "~5.0.0-rc.1", - "@vue/cli-plugin-eslint": "~5.0.0-rc.1", - "@vue/cli-plugin-router": "~5.0.0-rc.1", - "@vue/cli-plugin-unit-jest": "~5.0.0-rc.1", - "@vue/cli-plugin-vuex": "~5.0.0-rc.1", - "@vue/cli-service": "~5.0.0-rc.1", - "@vue/test-utils": "^2.0.0-0", - "@vue/vue3-jest": "^27.0.0-alpha.1", - "babel-jest": "^27.0.6", - "cypress": "^8.7.0", - "eslint": "^7.32.0", - "eslint-config-prettier": "^8.3.0", - "eslint-plugin-prettier": "^4.0.0", - "eslint-plugin-vue": "^8.0.3", - "jest": "^27.0.5", - "prettier": "^2.4.1", - "sass": "^1.32.7", - "sass-loader": "^12.0.0" + "@vitejs/plugin-vue": "^5.0.4", + "autoprefixer": "^10.4.19", + "eslint": "^8.57.0", + "eslint-plugin-vue": "^9.24.0", + "postcss": "^8.4.38", + "sass": "^1.72.0", + "vite": "^5.2.6" } } diff --git a/src/App.vue b/src/App.vue index 7502212d..177546e0 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,8 +1,41 @@ + diff --git a/src/_nav.js b/src/_nav.js index f13cfa50..6e7d0eb5 100644 --- a/src/_nav.js +++ b/src/_nav.js @@ -232,6 +232,11 @@ export default [ name: 'Modals', to: '/notifications/modals', }, + { + component: 'CNavItem', + name: 'Toasts', + to: '/notifications/toasts', + }, ], }, { diff --git a/src/assets/brand/logo-negative.js b/src/assets/brand/logo-negative.js deleted file mode 100644 index 1c99aa91..00000000 --- a/src/assets/brand/logo-negative.js +++ /dev/null @@ -1,31 +0,0 @@ -export const logoNegative = [ - '556 134', - ` - coreui vue logo - - - - - - - - - - - - - - - - - - - - - - - - - -`, -] diff --git a/src/assets/brand/logo.js b/src/assets/brand/logo.js index b5e89f3a..a5901345 100644 --- a/src/assets/brand/logo.js +++ b/src/assets/brand/logo.js @@ -1,30 +1,17 @@ export const logo = [ - '556 134', - ` - coreui vue - + '532 116', + ` - - - - - - + - - - - - - - - - - - - + + + + + + `, -] +] \ No newline at end of file diff --git a/src/assets/brand/sygnet.js b/src/assets/brand/sygnet.js index 3a57fbdd..dbda6351 100644 --- a/src/assets/brand/sygnet.js +++ b/src/assets/brand/sygnet.js @@ -1,12 +1,7 @@ export const sygnet = [ - '160 160', - ` - coreui logo - - - - - - -`, -] + '102 115', + ` + + + `, +] \ No newline at end of file diff --git a/src/assets/icons/index.js b/src/assets/icons/index.js index 2c292085..55c6ddf1 100644 --- a/src/assets/icons/index.js +++ b/src/assets/icons/index.js @@ -42,6 +42,7 @@ import { cilCheckCircle, cilCode, cilCommentSquare, + cilContrast, cilCursor, cilDrop, cilDollar, @@ -72,6 +73,7 @@ import { cilSpeech, cilSpeedometer, cilStar, + cilSun, cilTask, cilUser, cilUserFemale, @@ -98,6 +100,7 @@ export const iconsSet = Object.assign( cilCheckCircle, cilCode, cilCommentSquare, + cilContrast, cilCursor, cilDrop, cilDollar, @@ -128,6 +131,7 @@ export const iconsSet = Object.assign( cilSpeech, cilSpeedometer, cilStar, + cilSun, cilTask, cilUser, cilUserFemale, diff --git a/src/components/AppBreadcrumb.vue b/src/components/AppBreadcrumb.vue index 53b29cdc..49ddfc73 100644 --- a/src/components/AppBreadcrumb.vue +++ b/src/components/AppBreadcrumb.vue @@ -1,5 +1,5 @@ diff --git a/src/components/DocsExample.vue b/src/components/DocsExample.vue index ba72828c..5ec26d21 100644 --- a/src/components/DocsExample.vue +++ b/src/components/DocsExample.vue @@ -1,9 +1,10 @@ diff --git a/src/views/base/Spinners.vue b/src/views/base/Spinners.vue index 93bce819..8c366349 100644 --- a/src/views/base/Spinners.vue +++ b/src/views/base/Spinners.vue @@ -1,21 +1,18 @@