├── template ├── .eslintignore ├── static │ ├── logo.png │ └── favicon.ico ├── layouts │ ├── default.vue │ ├── error.vue │ ├── web.vue │ └── wap.vue ├── middleware │ ├── wechatConfig.js │ └── adminCheckLogin.js ├── assets │ ├── admin │ │ ├── images │ │ │ └── logo.png │ │ └── js │ │ │ ├── index.js │ │ │ └── login.js │ ├── util │ │ ├── isWapByAgent.js │ │ ├── needDelay.js │ │ ├── sort.js │ │ └── util.js │ └── css │ │ └── flex.css ├── typings │ ├── index.d.ts │ └── vue │ │ ├── vue-shim.d.ts │ │ └── ddv-shim.d.ts ├── theme │ ├── fonts │ │ ├── element-icons.ttf │ │ └── element-icons.woff │ ├── form-item.css │ ├── menu-item.css │ ├── submenu.css │ ├── tab-pane.css │ ├── breadcrumb-item.css │ ├── button-group.css │ ├── checkbox-button.css │ ├── checkbox-group.css │ ├── collapse-item.css │ ├── dropdown-item.css │ ├── dropdown-menu.css │ ├── menu-item-group.css │ ├── element-variables.css │ ├── radio-group.css │ ├── steps.css │ ├── icon.css │ ├── option-group.css │ ├── card.css │ ├── spinner.css │ ├── badge.css │ ├── rate.css │ ├── option.css │ ├── carousel-item.css │ └── row.css ├── api │ ├── index.js │ └── users.js ├── components │ ├── admin │ │ └── common │ │ │ ├── admin-header │ │ │ ├── index.js │ │ │ └── src │ │ │ │ ├── ddv-ui-col.js │ │ │ │ └── ddv-ui-main.vue │ │ │ ├── admin-sidebar │ │ │ ├── index.js │ │ │ └── src │ │ │ │ ├── main.vue │ │ │ │ ├── ddv-ui-row.js │ │ │ │ └── ddv-ui-col.js │ │ │ ├── admin-breadcrumb │ │ │ ├── index.js │ │ │ └── src │ │ │ │ ├── ddv-ui-breadcrumb.vue │ │ │ │ ├── ddv-ui-breadcrumb-item.vue │ │ │ │ ├── ddv-ui-breadcrumb.css │ │ │ │ └── main.vue │ │ │ └── ddvWangeditor │ │ │ ├── index.js │ │ │ ├── js │ │ │ └── uploadInit.js │ │ │ └── component │ │ │ └── wangeditor.vue │ ├── editDiv.vue │ └── video-player │ │ ├── lang │ │ ├── zh-CN.json │ │ ├── zh-TW.json │ │ ├── ko.json │ │ ├── ja.json │ │ ├── fa.json │ │ ├── cs.json │ │ ├── vi.json │ │ ├── ba.json │ │ ├── hr.json │ │ ├── pt-BR.json │ │ ├── sr.json │ │ ├── fi.json │ │ ├── hu.json │ │ ├── sv.json │ │ ├── nn.json │ │ ├── uk.json │ │ ├── nb.json │ │ ├── da.json │ │ ├── ru.json │ │ ├── bg.json │ │ ├── it.json │ │ ├── ca.json │ │ ├── es.json │ │ ├── tr.json │ │ ├── ar.json │ │ ├── pl.json │ │ ├── nl.json │ │ ├── en.json │ │ ├── de.json │ │ ├── fr.json │ │ └── el.json │ │ └── languages.js ├── store │ ├── index.js │ └── layouts │ │ └── admin.js ├── .babelrc ├── .editorconfig ├── pages │ ├── wap │ │ └── index.vue │ └── admin │ │ ├── about.vue │ │ ├── index.vue │ │ └── login.vue ├── README.md ├── plugins │ ├── ddv-util.js │ ├── ddv-restful-api.js │ ├── flexible.js │ └── inject.js ├── prettier.config.js ├── api.config.js ├── .gitignore ├── .npmignore ├── tsconfig.json ├── .eslintrc.js ├── package.json └── nuxt.config.js ├── meta.js ├── .gitignore ├── LICENSE └── README.md /template/.eslintignore: -------------------------------------------------------------------------------- 1 | /plugins/flexible.js 2 | /ddvcms -------------------------------------------------------------------------------- /template/static/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddvs/nuxt-cms/HEAD/template/static/logo.png -------------------------------------------------------------------------------- /template/layouts/default.vue: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /template/middleware/wechatConfig.js: -------------------------------------------------------------------------------- 1 | export default function ({res, store, redirect, route}) { 2 | } 3 | -------------------------------------------------------------------------------- /template/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddvs/nuxt-cms/HEAD/template/static/favicon.ico -------------------------------------------------------------------------------- /template/assets/admin/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddvs/nuxt-cms/HEAD/template/assets/admin/images/logo.png -------------------------------------------------------------------------------- /template/typings/index.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | -------------------------------------------------------------------------------- /template/theme/fonts/element-icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddvs/nuxt-cms/HEAD/template/theme/fonts/element-icons.ttf -------------------------------------------------------------------------------- /template/theme/fonts/element-icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddvs/nuxt-cms/HEAD/template/theme/fonts/element-icons.woff -------------------------------------------------------------------------------- /template/api/index.js: -------------------------------------------------------------------------------- 1 | var router = require('express').Router() 2 | 3 | // Add USERS Routes 4 | // router.use(require('./users')) 5 | 6 | module.exports = router 7 | -------------------------------------------------------------------------------- /template/middleware/adminCheckLogin.js: -------------------------------------------------------------------------------- 1 | export default function ({store, redirect, route}) { 2 | if (store.state.admin.isLogin === false && route.path !== '/admin/login') { 3 | return redirect('/admin/login') 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /template/components/admin/common/admin-header/index.js: -------------------------------------------------------------------------------- 1 | import adminHeader from './src/ddv-ui-main' 2 | 3 | /* istanbul ignore next */ 4 | adminHeader.install = function VueUseInstall (Vue) { 5 | Vue.component(adminHeader.name, adminHeader) 6 | } 7 | 8 | export default adminHeader 9 | -------------------------------------------------------------------------------- /template/components/admin/common/admin-sidebar/index.js: -------------------------------------------------------------------------------- 1 | import adminSidebar from './src/main' 2 | 3 | /* istanbul ignore next */ 4 | adminSidebar.install = function VueUseInstall (Vue) { 5 | Vue.component(adminSidebar.name, adminSidebar) 6 | } 7 | 8 | export default adminSidebar 9 | -------------------------------------------------------------------------------- /template/components/admin/common/admin-breadcrumb/index.js: -------------------------------------------------------------------------------- 1 | import adminBreadcrumb from './src/main' 2 | 3 | /* istanbul ignore next */ 4 | adminBreadcrumb.install = function VueUseInstall (Vue) { 5 | Vue.component(adminBreadcrumb.name, adminBreadcrumb) 6 | } 7 | 8 | export default adminBreadcrumb 9 | -------------------------------------------------------------------------------- /template/typings/vue/vue-shim.d.ts: -------------------------------------------------------------------------------- 1 | import VueRouter, { Route } from "vue-router"; 2 | import Vue from "vue"; 3 | 4 | declare module "*.vue" { 5 | export default Vue; 6 | } 7 | 8 | declare module "vue/types/vue" { 9 | interface Vue { 10 | $router: VueRouter; 11 | $route: Route; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /template/store/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Vuex from 'vuex' 3 | 4 | import adminStore from './layouts/admin.js' 5 | 6 | Vue.use(Vuex) 7 | 8 | const store = () => { 9 | return new Vuex.Store({ 10 | modules: { 11 | admin: adminStore 12 | } 13 | }) 14 | } 15 | export default store 16 | -------------------------------------------------------------------------------- /template/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | ["es2015", { "modules": false }] 4 | ], 5 | "plugins": [ 6 | [ 7 | "component", 8 | [ 9 | { 10 | "libraryName": "element-ui", 11 | "styleLibraryName": "theme-default" 12 | } 13 | ] 14 | ] 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /template/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | # 对所有文件有效 //[*js]只对js文件有效 3 | [*] 4 | #设置编码格式 5 | charset = utf-8 6 | #缩进类型 可选space和tab 7 | indent_style = space 8 | #缩进数量可选整数值2 or 4,或者tab 9 | indent_size = 2 10 | #换行符的格式 11 | end_of_line = lf 12 | # 是否在文件的最后插入一个空行 可选true和false 13 | insert_final_newline = true 14 | # 是否删除行尾的空格 可选择true和false 15 | trim_trailing_whitespace = true 16 | -------------------------------------------------------------------------------- /template/pages/wap/index.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 22 | -------------------------------------------------------------------------------- /template/README.md: -------------------------------------------------------------------------------- 1 | # {{ name }} 2 | 3 | > {{ description }} 4 | 5 | ## Build Setup 6 | 7 | ``` bash 8 | # install dependencies 9 | $ npm install # Or yarn install 10 | 11 | # serve with hot reload at localhost:3000 12 | $ npm run dev 13 | 14 | # build for production and launch server 15 | $ npm start 16 | 17 | For detailed explanation on how things work, checkout the [Nuxt.js docs](https://github.com/nuxt/nuxt.js). 18 | -------------------------------------------------------------------------------- /template/components/admin/common/ddvWangeditor/index.js: -------------------------------------------------------------------------------- 1 | var WedContainer = require('./component/wangeditor.vue') 2 | 3 | var WedBuild = function (Vue) { 4 | Vue.component('ddv-wangeditor', WedContainer) 5 | } 6 | 7 | var ddvWangeditor = { 8 | ddvWangeditor: WedContainer, 9 | install: function (Vue) { 10 | WedBuild(Vue) 11 | } 12 | } 13 | 14 | module.exports = ddvWangeditor 15 | module.exports.default = module.exports 16 | -------------------------------------------------------------------------------- /template/components/admin/common/admin-breadcrumb/src/ddv-ui-breadcrumb.vue: -------------------------------------------------------------------------------- 1 | 6 | 53 | -------------------------------------------------------------------------------- /template/.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | parser: 'babel-eslint', 4 | parserOptions: { 5 | sourceType: 'module' 6 | }, 7 | env: { 8 | browser: true, 9 | node: true 10 | }, 11 | typescript: { 12 | typeCheck: { 13 | eslint: true 14 | } 15 | }, 16 | buildModules: ['@nuxt/typescript-build'], 17 | // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style 18 | extends: [ 19 | 'standard', 20 | '@nuxtjs/eslint-config-typescript' 21 | ], 22 | // required to lint *.vue files 23 | plugins: [ 24 | 'html' 25 | ], 26 | // add your custom rules here 27 | rules: { 28 | "no-debugger": process.env.NODE_ENV === "production" ? 2 : 0, 29 | "generator-star-spacing": 0, 30 | "no-multi-spaces": 1, 31 | "no-self-compare": 2, 32 | "no-sparse-arrays": 2, 33 | "no-use-before-define": 2, 34 | eqeqeq: 2, 35 | "newline-after-var": 2, 36 | "no-extra-boolean-cast": 1, 37 | "no-extra-parens": 1, 38 | "no-empty": 1, 39 | "no-unused-vars": 1, 40 | "no-dupe-keys": 2, 41 | "valid-typeof": 2, 42 | "no-unreachable": 2, 43 | "key-spacing": [ 44 | 1, 45 | { 46 | beforeColon: false, 47 | afterColon: true 48 | } 49 | ], 50 | "no-redeclare": [ 51 | 2, 52 | { 53 | // 禁止重复声明变量 54 | builtinGlobals: true 55 | } 56 | ] 57 | }, 58 | globals: { 59 | 'd': true, 60 | 'console': true, 61 | 'document': true, 62 | 'location': true 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /template/components/video-player/lang/it.json: -------------------------------------------------------------------------------- 1 | { 2 | "Play": "Play", 3 | "Pause": "Pausa", 4 | "Current Time": "Orario attuale", 5 | "Duration Time": "Durata", 6 | "Remaining Time": "Tempo rimanente", 7 | "Stream Type": "Tipo del Streaming", 8 | "LIVE": "LIVE", 9 | "Loaded": "Caricato", 10 | "Progress": "Stato", 11 | "Fullscreen": "Schermo intero", 12 | "Non-Fullscreen": "Chiudi schermo intero", 13 | "Mute": "Muto", 14 | "Unmute": "Audio", 15 | "Playback Rate": "Tasso di riproduzione", 16 | "Subtitles": "Sottotitoli", 17 | "subtitles off": "Senza sottotitoli", 18 | "Captions": "Sottotitoli non udenti", 19 | "captions off": "Senza sottotitoli non udenti", 20 | "Chapters": "Capitolo", 21 | "You aborted the media playback": "La riproduzione del filmato è stata interrotta.", 22 | "A network error caused the media download to fail part-way.": "Il download del filmato è stato interrotto a causa di un problema rete.", 23 | "The media could not be loaded, either because the server or network failed or because the format is not supported.": "Il filmato non può essere caricato a causa di un errore nel server o nella rete o perché il formato non viene supportato.", 24 | "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.": "La riproduzione del filmato è stata interrotta a causa di un file danneggiato o per l’utilizzo di impostazioni non supportate dal browser.", 25 | "No compatible source was found for this media.": "Non ci sono fonti compatibili per questo filmato." 26 | } 27 | -------------------------------------------------------------------------------- /template/components/video-player/lang/ca.json: -------------------------------------------------------------------------------- 1 | { 2 | "Play": "Reproducció", 3 | "Pause": "Pausa", 4 | "Current Time": "Temps reproduït", 5 | "Duration Time": "Durada total", 6 | "Remaining Time": "Temps restant", 7 | "Stream Type": "Tipus de seqüència", 8 | "LIVE": "EN DIRECTE", 9 | "Loaded": "Carregat", 10 | "Progress": "Progrés", 11 | "Fullscreen": "Pantalla completa", 12 | "Non-Fullscreen": "Pantalla no completa", 13 | "Mute": "Silencia", 14 | "Unmute": "Amb so", 15 | "Playback Rate": "Velocitat de reproducció", 16 | "Subtitles": "Subtítols", 17 | "subtitles off": "Subtítols desactivats", 18 | "Captions": "Llegendes", 19 | "captions off": "Llegendes desactivades", 20 | "Chapters": "Capítols", 21 | "You aborted the media playback": "Heu interromput la reproducció del vídeo.", 22 | "A network error caused the media download to fail part-way.": "Un error de la xarxa ha interromput la baixada del vídeo.", 23 | "The media could not be loaded, either because the server or network failed or because the format is not supported.": "No s'ha pogut carregar el vídeo perquè el servidor o la xarxa han fallat, o bé perquè el seu format no és compatible.", 24 | "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.": "La reproducció de vídeo s'ha interrumput per un problema de corrupció de dades o bé perquè el vídeo demanava funcions que el vostre navegador no ofereix.", 25 | "No compatible source was found for this media.": "No s'ha trobat cap font compatible amb el vídeo." 26 | } 27 | -------------------------------------------------------------------------------- /template/components/video-player/lang/es.json: -------------------------------------------------------------------------------- 1 | { 2 | "Play": "Reproducción", 3 | "Pause": "Pausa", 4 | "Current Time": "Tiempo reproducido", 5 | "Duration Time": "Duración total", 6 | "Remaining Time": "Tiempo restante", 7 | "Stream Type": "Tipo de secuencia", 8 | "LIVE": "DIRECTO", 9 | "Loaded": "Cargado", 10 | "Progress": "Progreso", 11 | "Fullscreen": "Pantalla completa", 12 | "Non-Fullscreen": "Pantalla no completa", 13 | "Mute": "Silenciar", 14 | "Unmute": "No silenciado", 15 | "Playback Rate": "Velocidad de reproducción", 16 | "Subtitles": "Subtítulos", 17 | "subtitles off": "Subtítulos desactivados", 18 | "Captions": "Subtítulos especiales", 19 | "captions off": "Subtítulos especiales desactivados", 20 | "Chapters": "Capítulos", 21 | "You aborted the media playback": "Ha interrumpido la reproducción del vídeo.", 22 | "A network error caused the media download to fail part-way.": "Un error de red ha interrumpido la descarga del vídeo.", 23 | "The media could not be loaded, either because the server or network failed or because the format is not supported.": "No se ha podido cargar el vídeo debido a un fallo de red o del servidor o porque el formato es incompatible.", 24 | "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.": "La reproducción de vídeo se ha interrumpido por un problema de corrupción de datos o porque el vídeo precisa funciones que su navegador no ofrece.", 25 | "No compatible source was found for this media.": "No se ha encontrado ninguna fuente compatible con este vídeo." 26 | } 27 | -------------------------------------------------------------------------------- /template/plugins/flexible.js: -------------------------------------------------------------------------------- 1 | !function(a,b){function c(){var b=f.getBoundingClientRect().width;b/i>540&&(b=540*i);var c=b/10;f.style.fontSize=c+"px",k.rem=a.rem=c}var d,e=a.document,f=e.documentElement,g=e.querySelector('meta[name="viewport"]'),h=e.querySelector('meta[name="flexible"]'),i=0,j=0,k=b.flexible||(b.flexible={});if(g){console.warn("将根据已有的meta标签来设置缩放比例");var l=g.getAttribute("content").match(/initial\-scale=([\d\.]+)/);l&&(j=parseFloat(l[1]),i=parseInt(1/j))}else if(h){var m=h.getAttribute("content");if(m){var n=m.match(/initial\-dpr=([\d\.]+)/),o=m.match(/maximum\-dpr=([\d\.]+)/);n&&(i=parseFloat(n[1]),j=parseFloat((1/i).toFixed(2))),o&&(i=parseFloat(o[1]),j=parseFloat((1/i).toFixed(2)))}}if(!i&&!j){var p=(a.navigator.appVersion.match(/android/gi),a.navigator.appVersion.match(/iphone/gi)),q=a.devicePixelRatio;i=p?q>=3&&(!i||i>=3)?3:q>=2&&(!i||i>=2)?2:1:1,j=1/i}if(f.setAttribute("data-dpr",i),!g)if(g=e.createElement("meta"),g.setAttribute("name","viewport"),g.setAttribute("content","initial-scale="+j+", maximum-scale="+j+", minimum-scale="+j+", user-scalable=no"),f.firstElementChild)f.firstElementChild.appendChild(g);else{var r=e.createElement("div");r.appendChild(g),e.write(r.innerHTML)}a.addEventListener("resize",function(){clearTimeout(d),d=setTimeout(c,300)},!1),a.addEventListener("pageshow",function(a){a.persisted&&(clearTimeout(d),d=setTimeout(c,300))},!1),"complete"===e.readyState?e.body.style.fontSize=12*i+"px":e.addEventListener("DOMContentLoaded",function(){e.body.style.fontSize=12*i+"px"},!1),c(),k.dpr=a.dpr=i,k.refreshRem=c,k.rem2px=function(a){var b=parseFloat(a)*this.rem;return"string"==typeof a&&a.match(/rem$/)&&(b+="px"),b},k.px2rem=function(a){var b=parseFloat(a)/this.rem;return"string"==typeof a&&a.match(/px$/)&&(b+="rem"),b}}(window,window.lib||(window.lib={})); 2 | -------------------------------------------------------------------------------- /template/components/video-player/lang/tr.json: -------------------------------------------------------------------------------- 1 | { 2 | "Play": "Oynat", 3 | "Pause": "Duraklat", 4 | "Current Time": "Süre", 5 | "Duration Time": "Toplam Süre", 6 | "Remaining Time": "Kalan Süre", 7 | "Stream Type": "Yayın Tipi", 8 | "LIVE": "CANLI", 9 | "Loaded": "Yüklendi", 10 | "Progress": "Yükleniyor", 11 | "Fullscreen": "Tam Ekran", 12 | "Non-Fullscreen": "Küçük Ekran", 13 | "Mute": "Ses Kapa", 14 | "Unmute": "Ses Aç", 15 | "Playback Rate": "Oynatma Hızı", 16 | "Subtitles": "Altyazı", 17 | "subtitles off": "Altyazı Kapalı", 18 | "Captions": "Ek Açıklamalar", 19 | "captions off": "Ek Açıklamalar Kapalı", 20 | "Chapters": "Bölümler", 21 | "You aborted the media playback": "Video oynatmayı iptal ettiniz", 22 | "A network error caused the media download to fail part-way.": "Video indirilirken bağlantı sorunu oluştu.", 23 | "The media could not be loaded, either because the server or network failed or because the format is not supported.": "Video oynatılamadı, ağ ya da sunucu hatası veya belirtilen format desteklenmiyor.", 24 | "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.": "Tarayıcınız desteklemediği için videoda hata oluştu.", 25 | "No compatible source was found for this media.": "Video için kaynak bulunamadı.", 26 | "Play Video": "Videoyu Oynat", 27 | "Close": "Kapat", 28 | "Modal Window": "Modal Penceresi", 29 | "This is a modal window": "Bu bir modal penceresidir", 30 | "This modal can be closed by pressing the Escape key or activating the close button.": "Bu modal ESC tuşuna basarak ya da kapata tıklanarak kapatılabilir.", 31 | ", opens captions settings dialog": ", ek açıklama ayarları menüsünü açar", 32 | ", opens subtitles settings dialog": ", altyazı ayarları menüsünü açar", 33 | ", selected": ", seçildi" 34 | } 35 | -------------------------------------------------------------------------------- /template/components/admin/common/admin-header/src/ddv-ui-col.js: -------------------------------------------------------------------------------- 1 | export default { 2 | name: 'ddvUiCol', 3 | props: { 4 | span: { 5 | type: Number, 6 | default: 24 7 | }, 8 | tag: { 9 | type: String, 10 | default: 'div' 11 | }, 12 | offset: Number, 13 | pull: Number, 14 | push: Number, 15 | xs: [Number, Object], 16 | sm: [Number, Object], 17 | md: [Number, Object], 18 | lg: [Number, Object] 19 | }, 20 | 21 | computed: { 22 | gutter () { 23 | let parent = this.$parent 24 | while (parent && parent.$options.componentName !== 'ElRow') { 25 | parent = parent.$parent 26 | } 27 | return parent ? parent.gutter : 0 28 | } 29 | }, 30 | render (h) { 31 | let classList = [] 32 | let style = {} 33 | 34 | if (this.gutter) { 35 | style.paddingLeft = this.gutter / 2 + 'px' 36 | style.paddingRight = style.paddingLeft 37 | } 38 | 39 | ['span', 'offset', 'pull', 'push'].forEach(prop => { 40 | if (this[prop]) { 41 | classList.push( 42 | prop !== 'span' 43 | ? `el-col-${prop}-${this[prop]}` 44 | : `el-col-${this[prop]}` 45 | ) 46 | } 47 | }); 48 | 49 | ['xs', 'sm', 'md', 'lg'].forEach(size => { 50 | if (typeof this[size] === 'number') { 51 | classList.push(`el-col-${size}-${this[size]}`) 52 | } else if (typeof this[size] === 'object') { 53 | let props = this[size] 54 | Object.keys(props).forEach(prop => { 55 | classList.push( 56 | prop !== 'span' 57 | ? `el-col-${size}-${prop}-${props[prop]}` 58 | : `el-col-${size}-${props[prop]}` 59 | ) 60 | }) 61 | } 62 | }) 63 | 64 | return h(this.tag, { 65 | class: ['el-col', classList], 66 | style 67 | }, this.$slots.default) 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /template/components/video-player/lang/ar.json: -------------------------------------------------------------------------------- 1 | { 2 | "Play": "تشغيل", 3 | "Pause": "ايقاف", 4 | "Current Time": "الوقت الحالي", 5 | "Duration Time": "Dauer", 6 | "Remaining Time": "الوقت المتبقي", 7 | "Stream Type": "نوع التيار", 8 | "LIVE": "مباشر", 9 | "Loaded": "تم التحميل", 10 | "Progress": "التقدم", 11 | "Fullscreen": "ملء الشاشة", 12 | "Non-Fullscreen": "غير ملء الشاشة", 13 | "Mute": "صامت", 14 | "Unmute": "غير الصامت", 15 | "Playback Rate": "معدل التشغيل", 16 | "Subtitles": "الترجمة", 17 | "subtitles off": "ايقاف الترجمة", 18 | "Captions": "التعليقات", 19 | "captions off": "ايقاف التعليقات", 20 | "Chapters": "فصول", 21 | "You aborted the media playback": "لقد ألغيت تشغيل الفيديو", 22 | "A network error caused the media download to fail part-way.": "تسبب خطأ في الشبكة بفشل تحميل الفيديو بالكامل.", 23 | "The media could not be loaded, either because the server or network failed or because the format is not supported.": "لا يمكن تحميل الفيديو بسبب فشل في الخادم أو الشبكة ، أو فشل بسبب عدم امكانية قراءة تنسيق الفيديو.", 24 | "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.": "تم ايقاف تشغيل الفيديو بسبب مشكلة فساد أو لأن الفيديو المستخدم يستخدم ميزات غير مدعومة من متصفحك.", 25 | "No compatible source was found for this media.": "فشل العثور على أي مصدر متوافق مع هذا الفيديو.", 26 | "Play Video": "تشغيل الفيديو", 27 | "Close": "أغلق", 28 | "Modal Window": "نافذة مشروطة", 29 | "This is a modal window": "هذه نافذة مشروطة", 30 | "This modal can be closed by pressing the Escape key or activating the close button.": "يمكن غلق هذه النافذة المشروطة عن طريق الضغط على زر الخروج أو تفعيل زر الإغلاق", 31 | ", opens captions settings dialog": ", تفتح نافذة خيارات التعليقات", 32 | ", opens subtitles settings dialog": ", تفتح نافذة خيارات الترجمة", 33 | ", selected": ", مختار" 34 | } 35 | -------------------------------------------------------------------------------- /template/components/admin/common/admin-sidebar/src/ddv-ui-col.js: -------------------------------------------------------------------------------- 1 | export default { 2 | name: 'ddvUiCol', 3 | 4 | props: { 5 | span: { 6 | type: Number, 7 | default: 24 8 | }, 9 | tag: { 10 | type: String, 11 | default: 'div' 12 | }, 13 | offset: Number, 14 | pull: Number, 15 | push: Number, 16 | xs: [Number, Object], 17 | sm: [Number, Object], 18 | md: [Number, Object], 19 | lg: [Number, Object] 20 | }, 21 | 22 | computed: { 23 | gutter () { 24 | let parent = this.$parent 25 | while (parent && parent.$options.componentName !== 'ElRow') { 26 | parent = parent.$parent 27 | } 28 | return parent ? parent.gutter : 0 29 | } 30 | }, 31 | render (h) { 32 | let classList = [] 33 | let style = {} 34 | 35 | if (this.gutter) { 36 | style.paddingLeft = this.gutter / 2 + 'px' 37 | style.paddingRight = style.paddingLeft 38 | } 39 | 40 | ['span', 'offset', 'pull', 'push'].forEach(prop => { 41 | if (this[prop]) { 42 | classList.push( 43 | prop !== 'span' 44 | ? `el-col-${prop}-${this[prop]}` 45 | : `el-col-${this[prop]}` 46 | ) 47 | } 48 | }); 49 | 50 | ['xs', 'sm', 'md', 'lg'].forEach(size => { 51 | if (typeof this[size] === 'number') { 52 | classList.push(`el-col-${size}-${this[size]}`) 53 | } else if (typeof this[size] === 'object') { 54 | let props = this[size] 55 | Object.keys(props).forEach(prop => { 56 | classList.push( 57 | prop !== 'span' 58 | ? `el-col-${size}-${prop}-${props[prop]}` 59 | : `el-col-${size}-${props[prop]}` 60 | ) 61 | }) 62 | } 63 | }) 64 | 65 | return h(this.tag, { 66 | class: ['el-col', classList], 67 | style 68 | }, this.$slots.default) 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /template/components/admin/common/admin-header/src/ddv-ui-main.vue: -------------------------------------------------------------------------------- 1 | 29 | 30 | 35 | 36 | 72 | -------------------------------------------------------------------------------- /template/pages/admin/index.vue: -------------------------------------------------------------------------------- 1 | 2 | 70 | 71 | 72 | -------------------------------------------------------------------------------- /template/components/video-player/lang/pl.json: -------------------------------------------------------------------------------- 1 | { 2 | "Play": "Odtwarzaj", 3 | "Pause": "Pauza", 4 | "Current Time": "Aktualny czas", 5 | "Duration Time": "Czas trwania", 6 | "Remaining Time": "Pozostały czas", 7 | "Stream Type": "Typ strumienia", 8 | "LIVE": "NA ŻYWO", 9 | "Loaded": "Załadowany", 10 | "Progress": "Status", 11 | "Fullscreen": "Pełny ekran", 12 | "Non-Fullscreen": "Pełny ekran niedostępny", 13 | "Mute": "Wyłącz dźwięk", 14 | "Unmute": "Włącz dźwięk", 15 | "Playback Rate": "Szybkość odtwarzania", 16 | "Subtitles": "Napisy", 17 | "subtitles off": "Napisy wyłączone", 18 | "Captions": "Transkrypcja", 19 | "captions off": "Transkrypcja wyłączona", 20 | "Chapters": "Rozdziały", 21 | "You aborted the media playback": "Odtwarzanie zostało przerwane", 22 | "A network error caused the media download to fail part-way.": "Problemy z siecią spowodowały błąd przy pobieraniu materiału wideo.", 23 | "The media could not be loaded, either because the server or network failed or because the format is not supported.": "Materiał wideo nie może być załadowany, ponieważ wystąpił problem z siecią lub format nie jest obsługiwany", 24 | "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.": "Odtwarzanie materiału wideo zostało przerwane z powodu uszkodzonego pliku wideo lub z powodu błędu funkcji, które nie są wspierane przez przeglądarkę.", 25 | "No compatible source was found for this media.": "Dla tego materiału wideo nie znaleziono kompatybilnego źródła.", 26 | "Play video": "Odtwarzaj wideo", 27 | "Close": "Zamknij", 28 | "Modal Window": "Okno Modala", 29 | "This is a modal window": "To jest okno modala", 30 | "This modal can be closed by pressing the Escape key or activating the close button.": "Ten modal możesz zamknąć naciskając przycisk Escape albo wybierając przycisk Zamknij.", 31 | ", opens captions settings dialog": ", otwiera okno dialogowe ustawień transkrypcji", 32 | ", opens subtitles settings dialog": ", otwiera okno dialogowe napisów", 33 | ", selected": ", zaznaczone" 34 | } 35 | -------------------------------------------------------------------------------- /template/components/admin/common/ddvWangeditor/js/uploadInit.js: -------------------------------------------------------------------------------- 1 | // 初始化上传 2 | export { 3 | createUploadInit 4 | } 5 | function createUploadInit (httpRequest) { 6 | // 初始化 7 | function uploadInit () { 8 | // this 即 editor 对象 9 | var editor = this 10 | // 触发选择文件的按钮的id 11 | var btnId = editor.customUploadBtnId 12 | // 触发选择文件的按钮的父容器的id 13 | var containerId = editor.customUploadContainerId 14 | // 输入框 15 | var input = document.createElement('input') 16 | // 文件上传 17 | input.setAttribute('type', 'file') 18 | // 支持同时多文件 19 | input.setAttribute('multiple', 'multiple') 20 | input.style = 'position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;z-index:99;' 21 | // 获取文件 22 | input.onchange = function onchange (e) { 23 | uploads(e && e.target && e.target.files, editor) 24 | input.value = '' 25 | } 26 | var $container = document.getElementById(containerId) 27 | $container.style = 'position:relative' 28 | $container.appendChild(input) 29 | } 30 | 31 | // 运行多个文件上传 32 | function uploads (files, editor) { 33 | var i 34 | files = files && files.length && files.length > 0 ? files : [] 35 | if (files.length < 1) { 36 | return 37 | } 38 | for (i = 0; i < files.length; i++) { 39 | uploadRun(files[i], editor) 40 | } 41 | } 42 | 43 | // 运行单个上传 44 | function uploadRun (file, editor) { 45 | var options = { 46 | file: file, 47 | onSuccess: function onSuccess (res) { 48 | // 隐藏进度条 49 | editor.hideUploadProgress() 50 | // 插入图片到editor 51 | editor.command(null, 'insertHtml', '') 52 | }, 53 | onError: function onError (e) { 54 | alert('上传失败' + e.message) 55 | }, 56 | onProgress: function onProgress (e) { 57 | // 显示进度条 58 | editor.showUploadProgress(e.percent) 59 | } 60 | } 61 | var _promise = httpRequest(options) 62 | if (typeof Promise !== 'undefined' && _promise instanceof Promise) { 63 | _promise.then(options.onSuccess, options.onError) 64 | } 65 | } 66 | return uploadInit 67 | } 68 | -------------------------------------------------------------------------------- /template/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dddd", 3 | "version": "4.0.0", 4 | "description": "Nuxt.js project", 5 | "author": "HadiChan <15089581429@163.com>", 6 | "private": true, 7 | "scripts": { 8 | "dev": "ddv-cms dev", 9 | "start": "ddv-cms start", 10 | "build": "ddv-cms build", 11 | "build::a": "ddv-cms build -a", 12 | "generate": "ddv-cms generate", 13 | "precommit": "npm run lint", 14 | "lint": "eslint --ext .js,.vue --ignore-path .gitignore .eslintignore /plugins/flexible.js ." 15 | }, 16 | "dependencies": { 17 | "@nuxtjs/component-cache": "~1.1.1", 18 | "amfe-flexible": "^2.2.1", 19 | "babel-polyfill": "^6.23.0", 20 | "bootstrap": "^3.3.7", 21 | "ddv-cms": "^0.5.5", 22 | "ddv-restful-api": "^0.4.14", 23 | "ddv-restful-ws-api": "~0.1.1", 24 | "ddv-ui": "~0.1.0", 25 | "ddv-upload-api": "~0.0.8", 26 | "ddv-util": "~0.0.10", 27 | "element-ui": "^2.13.0", 28 | "font-awesome": "^4.7.0", 29 | "lodash": "^4.17.4", 30 | "mint-ui": "~2.2.9", 31 | "nuxt-property-decorator": "^2.5.1", 32 | "nuxt-typed-vuex": "^0.1.17", 33 | "node-sass": "^4.13.1", 34 | "postcss-flexible": "^0.4.1", 35 | "postcss-import": "^11.0.0", 36 | "postcss-loader": "^3.0.0", 37 | "postcss-nesting": "^7.0.1", 38 | "postcss-salad": "^2.0.1", 39 | "sass-loader": "^6.0.6", 40 | "scss-loader": "~0.0.1" 41 | }, 42 | "devDependencies": { 43 | "@babel/plugin-transform-runtime": "^7.8.3", 44 | "@nuxt/typescript-build": "^0.6.0", 45 | "@nuxtjs/eslint-config-typescript": "^1.0.2", 46 | "@typescript-eslint/eslint-plugin": "^2.25.0", 47 | "babel-eslint": "^8.2.1", 48 | "babel-plugin-component": "^1.1.1", 49 | "eslint": "^5.0.1", 50 | "eslint-config-prettier": "^3.1.0", 51 | "eslint-config-vue": "^2.0.2", 52 | "eslint-loader": "^2.0.0", 53 | "eslint-plugin-html": "^6.0.0", 54 | "eslint-plugin-prettier": "2.6.2", 55 | "eslint-plugin-vue": "^4.0.0", 56 | "prettier": "1.14.3" 57 | }, 58 | "standard": { 59 | "parser": "babel-eslint", 60 | "globals": [ 61 | "d", 62 | "document", 63 | "location" 64 | ] 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /template/layouts/web.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 71 | -------------------------------------------------------------------------------- /template/components/video-player/lang/nl.json: -------------------------------------------------------------------------------- 1 | { 2 | "Play": "Afspelen", 3 | "Pause": "Pauze", 4 | "Current Time": "Huidige tijd", 5 | "Duration Time": "Looptijd", 6 | "Remaining Time": "Resterende tijd", 7 | "Stream Type": "Streamtype", 8 | "LIVE": "LIVE", 9 | "Loaded": "Geladen", 10 | "Progress": "Status", 11 | "Fullscreen": "Volledig scherm", 12 | "Non-Fullscreen": "Geen volledig scherm", 13 | "Mute": "Geluid uit", 14 | "Unmute": "Geluid aan", 15 | "Playback Rate": "Weergavesnelheid", 16 | "Subtitles": "Ondertiteling", 17 | "subtitles off": "ondertiteling uit", 18 | "Captions": "Bijschriften", 19 | "captions off": "bijschriften uit", 20 | "Chapters": "Hoofdstukken", 21 | "Descriptions": "Beschrijvingen", 22 | "descriptions off": "beschrijvingen off", 23 | "You aborted the media playback": "U hebt de mediaweergave afgebroken.", 24 | "A network error caused the media download to fail part-way.": "De mediadownload is mislukt door een netwerkfout.", 25 | "The media could not be loaded, either because the server or network failed or because the format is not supported.": "De media kon niet worden geladen, vanwege een server- of netwerkfout of doordat het formaat niet wordt ondersteund.", 26 | "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.": "De mediaweergave is afgebroken vanwege beschadigde data of het mediabestand gebruikt functies die niet door uw browser worden ondersteund.", 27 | "No compatible source was found for this media.": "Voor deze media is geen ondersteunde bron gevonden.", 28 | "Play Video": "Video Afspelen", 29 | "Close": "Sluiten", 30 | "Modal Window": "Modal Venster", 31 | "This is a modal window": "Dit is een modaal venster", 32 | "This modal can be closed by pressing the Escape key or activating the close button.": "Dit modaal venster kan gesloten worden door op Escape te drukken of de 'sluiten' knop te activeren.", 33 | ", opens captions settings dialog": ", opent bijschriften instellingen venster", 34 | ", opens subtitles settings dialog": ", opent ondertiteling instellingen venster", 35 | ", opens descriptions settings dialog": ", opent beschrijvingen instellingen venster", 36 | ", selected": ", selected" 37 | } 38 | -------------------------------------------------------------------------------- /template/typings/vue/ddv-shim.d.ts: -------------------------------------------------------------------------------- 1 | import { Plugin } from '@nuxt/types' 2 | 3 | type anyData = { [key: string]: any } 4 | /** 5 | * 一般用作接收 Promise 错误进行统一处理 6 | * 7 | */ 8 | type autoRetry = (fn: (data: anyData, addData: (data: anyData) => void) => Promise) => Promise; 9 | 10 | interface DdvUtil extends Promise { 11 | autoRetry: autoRetry; 12 | /** 13 | * 发送的数据会自动转换为 query 服务器GET参数 14 | * @param input 发送参数 15 | */ 16 | send(input?: anyData): DdvUtil; 17 | /** 18 | * 将发送到 send 的参数先去除无效数据,如 null、false、undefined 19 | * @param input 发送参数 20 | */ 21 | sendValidData(input?: anyData): DdvUtil; 22 | /** 23 | * 使用不经过处理的参数发送给服务器,非必要不建议使用 24 | */ 25 | native(): DdvUtil; 26 | /** 27 | * 可以改变请求的path,如:api.get('/path').path('/path2') 28 | * @param path 请求地址 29 | */ 30 | path(path: string): DdvUtil; 31 | /** 32 | * GET请求 33 | * @param path 请求地址 34 | */ 35 | get(path: string): DdvUtil; 36 | /** 37 | * PUT请求 38 | * @param path 请求地址 39 | */ 40 | put(path: string): DdvUtil; 41 | /** 42 | * POST请求 43 | * @param path 请求地址 44 | */ 45 | post(path: string): DdvUtil; 46 | /** 47 | * DELETE请求 48 | * @param path 请求地址 49 | */ 50 | del(path: string): DdvUtil; 51 | /** 52 | * DELETE请求 53 | * @param path 请求地址 54 | */ 55 | delete(path: string): DdvUtil; 56 | /** 57 | * 改变请求头,如:api.get('/path').headers({}) 58 | * @param input 请求头 59 | * @param isClean 是否清除默认请求头 60 | */ 61 | headers(input: anyData, isClean?: boolean): DdvUtil; 62 | /** 63 | * 服务器GET参数 64 | * @param input 65 | * @param isClean 66 | */ 67 | query(input: anyData, isClean?: boolean): DdvUtil; 68 | isBrowser: boolean 69 | isServer: boolean 70 | redirect: (path: string, replace?: boolean) => void 71 | [key: string]: any; 72 | } 73 | 74 | declare module 'vue/types/vue' { 75 | interface Vue { 76 | $ddvUtil: DdvUtil; 77 | } 78 | } 79 | 80 | declare module '@nuxt/types' { 81 | interface NuxtAppOptions { 82 | ddvUtil: DdvUtil; 83 | autoRetry: autoRetry; 84 | } 85 | interface Context { 86 | ddvUtil: DdvUtil; 87 | autoRetry: autoRetry; 88 | } 89 | } 90 | 91 | const ddvUtil: Plugin = (context, inject) => { 92 | inject('autoRetry', autoRetry) 93 | inject('ddvUtil', DdvUtil) 94 | } 95 | 96 | export default ddvUtil 97 | -------------------------------------------------------------------------------- /template/components/video-player/lang/en.json: -------------------------------------------------------------------------------- 1 | { 2 | "Play": "Play", 3 | "Pause": "Pause", 4 | "Current Time": "Current Time", 5 | "Duration Time": "Duration Time", 6 | "Remaining Time": "Remaining Time", 7 | "Stream Type": "Stream Type", 8 | "LIVE": "LIVE", 9 | "Loaded": "Loaded", 10 | "Progress": "Progress", 11 | "Fullscreen": "Fullscreen", 12 | "Non-Fullscreen": "Non-Fullscreen", 13 | "Mute": "Mute", 14 | "Unmute": "Unmute", 15 | "Playback Rate": "Playback Rate", 16 | "Subtitles": "Subtitles", 17 | "subtitles off": "subtitles off", 18 | "Captions": "Captions", 19 | "captions off": "captions off", 20 | "Chapters": "Chapters", 21 | "Close Modal Dialog": "Close Modal Dialog", 22 | "Descriptions": "Descriptions", 23 | "descriptions off": "descriptions off", 24 | "Audio Track": "Audio Track", 25 | "You aborted the media playback": "You aborted the media playback", 26 | "A network error caused the media download to fail part-way.": "A network error caused the media download to fail part-way.", 27 | "The media could not be loaded, either because the server or network failed or because the format is not supported.": "The media could not be loaded, either because the server or network failed or because the format is not supported.", 28 | "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.": "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.", 29 | "No compatible source was found for this media.": "No compatible source was found for this media.", 30 | "The media is encrypted and we do not have the keys to decrypt it.": "The media is encrypted and we do not have the keys to decrypt it.", 31 | "Play Video": "Play Video", 32 | "Close": "Close", 33 | "Modal Window": "Modal Window", 34 | "This is a modal window": "This is a modal window", 35 | "This modal can be closed by pressing the Escape key or activating the close button.": "This modal can be closed by pressing the Escape key or activating the close button.", 36 | ", opens captions settings dialog": ", opens captions settings dialog", 37 | ", opens subtitles settings dialog": ", opens subtitles settings dialog", 38 | ", opens descriptions settings dialog": ", opens descriptions settings dialog", 39 | ", selected": ", selected" 40 | } 41 | -------------------------------------------------------------------------------- /template/theme/form-item.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/theme/menu-item.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/theme/submenu.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/theme/tab-pane.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/theme/breadcrumb-item.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/theme/button-group.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/theme/checkbox-button.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/theme/checkbox-group.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/theme/collapse-item.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/theme/dropdown-item.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/theme/dropdown-menu.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/theme/menu-item-group.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* Transition 3 | -------------------------- */ 4 | /* Colors 5 | -------------------------- */ 6 | /* Link 7 | -------------------------- */ 8 | /* Border 9 | -------------------------- */ 10 | /* Box-shadow 11 | -------------------------- */ 12 | /* Fill 13 | -------------------------- */ 14 | /* Font 15 | -------------------------- */ 16 | /* Size 17 | -------------------------- */ 18 | /* z-index 19 | -------------------------- */ 20 | /* Disable base 21 | -------------------------- */ 22 | /* Icon 23 | -------------------------- */ 24 | /* Checkbox 25 | -------------------------- */ 26 | /* Radio 27 | -------------------------- */ 28 | /* Select 29 | -------------------------- */ 30 | /* Alert 31 | -------------------------- */ 32 | /* Message Box 33 | -------------------------- */ 34 | /* Message 35 | -------------------------- */ 36 | /* Notification 37 | -------------------------- */ 38 | /* Input 39 | -------------------------- */ 40 | /* Cascader 41 | -------------------------- */ 42 | /* Group 43 | -------------------------- */ 44 | /* Tab 45 | -------------------------- */ 46 | /* Button 47 | -------------------------- */ 48 | /* cascader 49 | -------------------------- */ 50 | /* Switch 51 | -------------------------- */ 52 | /* Dialog 53 | -------------------------- */ 54 | /* Table 55 | -------------------------- */ 56 | /* Pagination 57 | -------------------------- */ 58 | /* Popover 59 | -------------------------- */ 60 | /* Tooltip 61 | -------------------------- */ 62 | /* Tag 63 | -------------------------- */ 64 | /* Dropdown 65 | -------------------------- */ 66 | /* Badge 67 | -------------------------- */ 68 | /* Card 69 | --------------------------*/ 70 | /* Slider 71 | --------------------------*/ 72 | /* Steps 73 | --------------------------*/ 74 | /* Menu 75 | --------------------------*/ 76 | /* Rate 77 | --------------------------*/ 78 | /* DatePicker 79 | --------------------------*/ 80 | /* Loading 81 | --------------------------*/ 82 | /* Scrollbar 83 | --------------------------*/ 84 | /* Carousel 85 | --------------------------*/ 86 | /* Collapse 87 | --------------------------*/ 88 | /* Transfer 89 | --------------------------*/ 90 | } -------------------------------------------------------------------------------- /template/pages/admin/login.vue: -------------------------------------------------------------------------------- 1 | 38 | 71 | 72 | 96 | 97 | 98 | -------------------------------------------------------------------------------- /template/components/video-player/lang/de.json: -------------------------------------------------------------------------------- 1 | { 2 | "Play": "Wiedergabe", 3 | "Pause": "Pause", 4 | "Current Time": "Aktueller Zeitpunkt", 5 | "Duration Time": "Dauer", 6 | "Remaining Time": "Verbleibende Zeit", 7 | "Stream Type": "Streamtyp", 8 | "LIVE": "LIVE", 9 | "Loaded": "Geladen", 10 | "Progress": "Status", 11 | "Fullscreen": "Vollbild", 12 | "Non-Fullscreen": "Kein Vollbild", 13 | "Mute": "Ton aus", 14 | "Unmute": "Ton ein", 15 | "Playback Rate": "Wiedergabegeschwindigkeit", 16 | "Subtitles": "Untertitel", 17 | "subtitles off": "Untertitel aus", 18 | "Captions": "Untertitel", 19 | "captions off": "Untertitel aus", 20 | "Chapters": "Kapitel", 21 | "You aborted the media playback": "Sie haben die Videowiedergabe abgebrochen.", 22 | "A network error caused the media download to fail part-way.": "Der Videodownload ist aufgrund eines Netzwerkfehlers fehlgeschlagen.", 23 | "The media could not be loaded, either because the server or network failed or because the format is not supported.": "Das Video konnte nicht geladen werden, da entweder ein Server- oder Netzwerkfehler auftrat oder das Format nicht unterstützt wird.", 24 | "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.": "Die Videowiedergabe wurde entweder wegen eines Problems mit einem beschädigten Video oder wegen verwendeten Funktionen, die vom Browser nicht unterstützt werden, abgebrochen.", 25 | "No compatible source was found for this media.": "Für dieses Video wurde keine kompatible Quelle gefunden.", 26 | "Play Video": "Video abspielen", 27 | "Close": "Schließen", 28 | "Modal Window": "Modales Fenster", 29 | "This is a modal window": "Dies ist ein modales Fenster", 30 | "This modal can be closed by pressing the Escape key or activating the close button.": "Durch Drücken der Esc-Taste bzw. Betätigung der Schaltfläche \"Schließen\" wird dieses modale Fenster geschlossen.", 31 | ", opens captions settings dialog": ", öffnet Einstellungen für Untertitel", 32 | ", opens subtitles settings dialog": ", öffnet Einstellungen für Untertitel", 33 | ", selected": ", ausgewählt", 34 | "Close Modal Dialog": "Modales Fenster schließen", 35 | "Descriptions": "Beschreibungen", 36 | "descriptions off": "Beschreibungen aus", 37 | "The media is encrypted and we do not have the keys to decrypt it.": "Die Entschlüsselungsschlüssel für den verschlüsselten Medieninhalt sind nicht verfügbar.", 38 | ", opens descriptions settings dialog": ", öffnet Einstellungen für Beschreibungen", 39 | "Audio Track": "Tonspur" 40 | } 41 | -------------------------------------------------------------------------------- /template/components/video-player/lang/fr.json: -------------------------------------------------------------------------------- 1 | { 2 | "Play": "Lecture", 3 | "Pause": "Pause", 4 | "Current Time": "Temps actuel", 5 | "Duration Time": "Durée", 6 | "Remaining Time": "Temps restant", 7 | "Stream Type": "Type de flux", 8 | "LIVE": "EN DIRECT", 9 | "Loaded": "Chargé", 10 | "Progress": "Progression", 11 | "Fullscreen": "Plein écran", 12 | "Non-Fullscreen": "Fenêtré", 13 | "Mute": "Sourdine", 14 | "Unmute": "Son activé", 15 | "Playback Rate": "Vitesse de lecture", 16 | "Subtitles": "Sous-titres", 17 | "subtitles off": "Sous-titres désactivés", 18 | "Captions": "Sous-titres transcrits", 19 | "captions off": "Sous-titres transcrits désactivés", 20 | "Chapters": "Chapitres", 21 | "Close Modal Dialog": "Fermer la boîte de dialogue modale", 22 | "Descriptions": "Descriptions", 23 | "descriptions off": "descriptions désactivées", 24 | "Audio Track": "Piste audio", 25 | "You aborted the media playback": "Vous avez interrompu la lecture de la vidéo.", 26 | "A network error caused the media download to fail part-way.": "Une erreur de réseau a interrompu le téléchargement de la vidéo.", 27 | "The media could not be loaded, either because the server or network failed or because the format is not supported.": "Cette vidéo n'a pas pu être chargée, soit parce que le serveur ou le réseau a échoué ou parce que le format n'est pas reconnu.", 28 | "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.": "La lecture de la vidéo a été interrompue à cause d'un problème de corruption ou parce que la vidéo utilise des fonctionnalités non prises en charge par votre navigateur.", 29 | "No compatible source was found for this media.": "Aucune source compatible n'a été trouvée pour cette vidéo.", 30 | "The media is encrypted and we do not have the keys to decrypt it.": "Le média est chiffré et nous n'avons pas les clés pour le déchiffrer.", 31 | "Play Video": "Lire la vidéo", 32 | "Close": "Fermer", 33 | "Modal Window": "Fenêtre modale", 34 | "This is a modal window": "Ceci est une fenêtre modale", 35 | "This modal can be closed by pressing the Escape key or activating the close button.": "Ce modal peut être fermé en appuyant sur la touche Échap ou activer le bouton de fermeture.", 36 | ", opens captions settings dialog": ", ouvrir les paramètres des sous-titres transcrits", 37 | ", opens subtitles settings dialog": ", ouvrir les paramètres des sous-titres", 38 | ", opens descriptions settings dialog": ", ouvrir les paramètres des descriptions", 39 | ", selected": ", sélectionné" 40 | } 41 | -------------------------------------------------------------------------------- /template/components/video-player/lang/el.json: -------------------------------------------------------------------------------- 1 | { 2 | "Play": "Aναπαραγωγή", 3 | "Pause": "Παύση", 4 | "Current Time": "Τρέχων χρόνος", 5 | "Duration Time": "Συνολικός χρόνος", 6 | "Remaining Time": "Υπολοιπόμενος χρόνος", 7 | "Stream Type": "Τύπος ροής", 8 | "LIVE": "ΖΩΝΤΑΝΑ", 9 | "Loaded": "Φόρτωση επιτυχής", 10 | "Progress": "Πρόοδος", 11 | "Fullscreen": "Πλήρης οθόνη", 12 | "Non-Fullscreen": "Έξοδος από πλήρη οθόνη", 13 | "Mute": "Σίγαση", 14 | "Unmute": "Kατάργηση σίγασης", 15 | "Playback Rate": "Ρυθμός αναπαραγωγής", 16 | "Subtitles": "Υπότιτλοι", 17 | "subtitles off": "απόκρυψη υπότιτλων", 18 | "Captions": "Λεζάντες", 19 | "captions off": "απόκρυψη λεζάντων", 20 | "Chapters": "Κεφάλαια", 21 | "Close Modal Dialog": "Κλείσιμο παραθύρου", 22 | "Descriptions": "Περιγραφές", 23 | "descriptions off": "απόκρυψη περιγραφών", 24 | "Audio Track": "Ροή ήχου", 25 | "You aborted the media playback": "Ακυρώσατε την αναπαραγωγή", 26 | "A network error caused the media download to fail part-way.": "Ένα σφάλμα δικτύου προκάλεσε την αποτυχία μεταφόρτωσης του αρχείου προς αναπαραγωγή.", 27 | "The media could not be loaded, either because the server or network failed or because the format is not supported.": "Το αρχείο προς αναπαραγωγή δεν ήταν δυνατό να φορτωθεί είτε γιατί υπήρξε σφάλμα στον διακομιστή ή το δίκτυο, είτε γιατί ο τύπος του αρχείου δεν υποστηρίζεται.", 28 | "The media playback was aborted due to a corruption problem or because the media used features your browser did not support.": "Η αναπαραγωγή ακυρώθηκε είτε λόγω κατεστραμμένου αρχείου, είτε γιατί το αρχείο απαιτεί λειτουργίες που δεν υποστηρίζονται από το πρόγραμμα περιήγησης που χρησιμοποιείτε.", 29 | "No compatible source was found for this media.": "Δεν βρέθηκε συμβατή πηγή αναπαραγωγής για το συγκεκριμένο αρχείο.", 30 | "The media is encrypted and we do not have the keys to decrypt it.": "Το αρχείο προς αναπαραγωγή είναι κρυπτογραφημένo και δεν υπάρχουν τα απαραίτητα κλειδιά αποκρυπτογράφησης.", 31 | "Play Video": "Αναπαραγωγή βίντεο", 32 | "Close": "Κλείσιμο", 33 | "Modal Window": "Aναδυόμενο παράθυρο", 34 | "This is a modal window": "Το παρών είναι ένα αναδυόμενο παράθυρο", 35 | "This modal can be closed by pressing the Escape key or activating the close button.": "Αυτό το παράθυρο μπορεί να εξαφανιστεί πατώντας το πλήκτρο Escape ή πατώντας το κουμπί κλεισίματος.", 36 | ", opens captions settings dialog": ", εμφανίζει τις ρυθμίσεις για τις λεζάντες", 37 | ", opens subtitles settings dialog": ", εμφανίζει τις ρυθμίσεις για τους υπότιτλους", 38 | ", opens descriptions settings dialog": ", εμφανίζει τις ρυθμίσεις για τις περιγραφές", 39 | ", selected": ", επιλεγμένο" 40 | } 41 | -------------------------------------------------------------------------------- /template/theme/element-variables.css: -------------------------------------------------------------------------------- 1 | :root { 2 | 3 | /* Transition 4 | -------------------------- */ 5 | 6 | /* Colors 7 | -------------------------- */ 8 | 9 | /* Link 10 | -------------------------- */ 11 | 12 | /* Border 13 | -------------------------- */ 14 | 15 | /* Box-shadow 16 | -------------------------- */ 17 | 18 | /* Fill 19 | -------------------------- */ 20 | 21 | /* Font 22 | -------------------------- */ 23 | 24 | /* Size 25 | -------------------------- */ 26 | 27 | /* z-index 28 | -------------------------- */ 29 | 30 | /* Disable base 31 | -------------------------- */ 32 | 33 | /* Icon 34 | -------------------------- */ 35 | 36 | /* Checkbox 37 | -------------------------- */ 38 | 39 | 40 | 41 | /* Radio 42 | -------------------------- */ 43 | 44 | /* Select 45 | -------------------------- */ 46 | 47 | /* Alert 48 | -------------------------- */ 49 | 50 | /* Message Box 51 | -------------------------- */ 52 | 53 | /* Message 54 | -------------------------- */ 55 | 56 | /* Notification 57 | -------------------------- */ 58 | 59 | /* Input 60 | -------------------------- */ 61 | 62 | /* Cascader 63 | -------------------------- */ 64 | 65 | /* Group 66 | -------------------------- */ 67 | 68 | /* Tab 69 | -------------------------- */ 70 | 71 | /* Button 72 | -------------------------- */ 73 | 74 | 75 | /* cascader 76 | -------------------------- */ 77 | 78 | /* Switch 79 | -------------------------- */ 80 | 81 | /* Dialog 82 | -------------------------- */ 83 | 84 | /* Table 85 | -------------------------- */ 86 | 87 | /* Pagination 88 | -------------------------- */ 89 | 90 | /* Popover 91 | -------------------------- */ 92 | 93 | /* Tooltip 94 | -------------------------- */ 95 | 96 | /* Tag 97 | -------------------------- */ 98 | 99 | /* Dropdown 100 | -------------------------- */ 101 | 102 | /* Badge 103 | -------------------------- */ 104 | 105 | /* Card 106 | --------------------------*/ 107 | 108 | /* Slider 109 | --------------------------*/ 110 | 111 | /* Steps 112 | --------------------------*/ 113 | 114 | /* Menu 115 | --------------------------*/ 116 | 117 | /* Rate 118 | --------------------------*/ 119 | 120 | /* DatePicker 121 | --------------------------*/ 122 | 123 | /* Loading 124 | --------------------------*/ 125 | 126 | /* Scrollbar 127 | --------------------------*/ 128 | 129 | /* Carousel 130 | --------------------------*/ 131 | 132 | /* Collapse 133 | --------------------------*/ 134 | 135 | /* Transfer 136 | --------------------------*/ 137 | } 138 | -------------------------------------------------------------------------------- /template/assets/util/sort.js: -------------------------------------------------------------------------------- 1 | import util from 'ddv-util' 2 | 3 | export default sort 4 | /** 5 | * array 检测数组 6 | * opts 配置参数 7 | * [callback] 回调,有则使用异步,没有则同步 8 | * [isRec] 是否递归查询 9 | */ 10 | function sort (array, opts, callback, isRec) { 11 | if (!Array.isArray(array)) { 12 | throw new Error('"data" is not an array') 13 | } 14 | 15 | if (!(typeof callback === 'function')) { 16 | isRec = callback === true 17 | callback = null 18 | } 19 | 20 | if (array.length <= 1 && !isRec) { 21 | if (callback) { 22 | callback(array) 23 | } else { 24 | return array 25 | } 26 | } 27 | let sortOrderCheck = ['asc', 'desc'] 28 | var arr = [] 29 | util.extend(true, arr, array) 30 | /** 31 | * sortOrder 排序规则,asc是指定列按升序排列,desc则是指定列按降序排列 32 | * prop 排序检测key;如为一维数组则可以不传 33 | * children 指定子节点对象的某个属性值 34 | */ 35 | opts = (typeof opts === 'object') ? opts : { sortOrder: 'desc' } 36 | // 默认降序 37 | opts.sortOrder = sortOrderCheck.includes(opts.sortOrder) ? opts.sortOrder : 'desc' 38 | sortOrderCheck = void 0 39 | 40 | var recFn = (arr) => { 41 | arr.forEach(item => { 42 | if (Array.isArray(item[opts.children]) && item[opts.children].length > 1) { 43 | item = item[opts.children].sort(by(opts.prop, opts.sortOrder)) 44 | recFn(item) 45 | } 46 | }) 47 | } 48 | 49 | var fn = () => { 50 | arr.sort(by(opts.prop, opts.sortOrder)) 51 | 52 | if (isRec && opts.children) { 53 | recFn(arr) 54 | } 55 | } 56 | 57 | if (callback) { 58 | Promise.resolve() 59 | .then(() => { 60 | fn() 61 | callback(arr) 62 | }) 63 | } else { 64 | fn() 65 | return arr 66 | } 67 | } 68 | 69 | function isNumber (data, prop) { 70 | var flag = false 71 | 72 | if (typeof data === 'object') { 73 | flag = !!(Number(data[prop]) || Number(data[prop] === 0)); 74 | } else if (typeof data === 'number' || typeof data === 'string') { 75 | flag = !!(Number(data) || Number(data === 0)); 76 | } 77 | return flag 78 | } 79 | 80 | function by(name, sort) { 81 | return function(o, p) { 82 | var a, b; 83 | var flag = sort === "desc" ? 1 : -1; 84 | let oFlag = isNumber(o, name) 85 | let pFlag = isNumber(p, name) 86 | 87 | if (o && p && oFlag && pFlag) { 88 | oFlag = pFlag = void 0; 89 | a = typeof o === "object" ? parseInt(o[name]) : parseInt(o); 90 | b = typeof p === "object" ? parseInt(p[name]) : parseInt(p); 91 | if (a === b) { 92 | return 0; 93 | } 94 | if (typeof a === typeof b) { 95 | return a < b ? flag : -flag; 96 | } 97 | return typeof a < typeof b ? flag : -flag; 98 | } 99 | }; 100 | } 101 | -------------------------------------------------------------------------------- /template/plugins/inject.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | const emptyLeft = '(\\s|^)' 3 | const emptyright = '(\\s|$)' 4 | 5 | let filters = { // 过滤器 6 | time: (val, rule = 'Y-m-d h:m:s') => { 7 | return d.date(rule, val) 8 | } 9 | } 10 | 11 | Object.keys(filters).forEach(key => { 12 | Vue.filter(key, filters[key]) 13 | }) 14 | // class操作兼容 15 | function hasClass (elements, cName) { 16 | return !!elements.className.match(new RegExp(emptyLeft + cName + emptyright)) 17 | } 18 | function addClass (elements, cName) { 19 | if (!hasClass(elements, cName)) { 20 | elements.className += ' ' + cName 21 | } 22 | } 23 | function removeClass (elements, cName) { 24 | if (hasClass(elements, cName)) { 25 | elements.className = elements.className.replace(new RegExp(emptyLeft + cName + emptyright), ' ') 26 | } 27 | } 28 | let directive = { // 指令 29 | center: function (el, binding) { // 图片居中切割 30 | el.onload = (e) => { 31 | let w = el.naturalWidth 32 | let h = el.naturalHeight 33 | let pW = el.parentNode.offsetWidth 34 | let pH = el.parentNode.offsetHeight 35 | let ratio = w / h 36 | let pRatio = pW / pH 37 | if (pRatio > ratio) { 38 | removeClass(el, 'Hcenter') 39 | addClass(el, 'Vcenter') 40 | // el.classList.remove('Hcenter') 41 | // el.classList.add('Vcenter') 42 | } else { 43 | removeClass(el, 'Vcenter') 44 | addClass(el, 'Hcenter') 45 | // el.classList.remove('Vcenter') 46 | // el.classList.add('Hcenter') 47 | } 48 | } 49 | }, 50 | flex: function (el, binding) { // 容器自适应 51 | // el.classList.add('flex-box') 52 | addClass(el, 'flex-box') 53 | var div = document.createElement('div') 54 | div.className = 'expansion' 55 | div.style.paddingBottom = binding.value * 100 + '%' 56 | el.appendChild(div) 57 | }, 58 | src: function (el, binding) { 59 | if (binding.value === el.src) return 60 | setTimeout(() => { 61 | let pW = el.parentNode.offsetWidth 62 | let pH = el.parentNode.offsetHeight 63 | if (binding.modifiers.center) { 64 | el.src = binding.value + '?x-oss-process=image/resize,m_fill,h_' + parseInt(pH) + ',w_' + parseInt(pW) 65 | el.onload = function (e) { 66 | let w = el.naturalWidth 67 | let h = el.naturalHeight 68 | let ratio = w / h 69 | let pRatio = pW / pH 70 | if (pRatio > ratio) { 71 | removeClass(el, 'Hcenter') 72 | addClass(el, 'Vcenter') 73 | // el.classList.remove('Hcenter') 74 | // el.classList.add('Vcenter') 75 | } else { 76 | removeClass(el, 'Vcenter') 77 | addClass(el, 'Hcenter') 78 | // el.classList.remove('Vcenter') 79 | // el.classList.add('Hcenter') 80 | } 81 | } 82 | } else { 83 | el.src = binding.value + '?x-oss-process=image/resize,m_lfit,h_' + parseInt(pH) + ',w_' + parseInt(pW) 84 | } 85 | }, 10) 86 | } 87 | } 88 | 89 | Object.keys(directive).forEach(key => { 90 | Vue.directive(key, directive[key]) 91 | }) 92 | -------------------------------------------------------------------------------- /template/components/admin/common/ddvWangeditor/component/wangeditor.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 11 | 12 | 108 | 109 | 117 | -------------------------------------------------------------------------------- /template/layouts/wap.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | 15 | 16 | 117 | -------------------------------------------------------------------------------- /template/nuxt.config.js: -------------------------------------------------------------------------------- 1 | const isProduction = process.env.NODE_ENV === 'production' 2 | 3 | module.exports = { 4 | typescript: { 5 | typeCheck: { 6 | eslint: true 7 | } 8 | }, 9 | buildModules: [ 10 | '@nuxt/typescript-build', 11 | // 必要使用 nuxt-typed-vuex 导出 accessorType,不让会导致死循环 12 | // @see: https://nuxt-typed-vuex.danielcroe.com/setup.html#add-type-definitions 13 | 'nuxt-typed-vuex' 14 | ], 15 | /* 16 | ** Headers of the page 17 | */ 18 | head: { 19 | title: 'ddv-template', 20 | meta: [ 21 | {charset: 'utf-8'}, 22 | {'http-equiv': 'content-type', 'content': 'text/html;charset=utf-8'}, 23 | {'http-equiv': 'X-UA-Compatible', 'content': 'IE=edge,chrome=1'} 24 | ], 25 | link: [ 26 | {rel: 'icon', type: 'image/x-icon', href: '/favicon.ico'} 27 | ] 28 | }, 29 | css: [], 30 | render: { 31 | bundleRenderer: { 32 | // 添加prefetch和preload,以加快初始页面加载时间 33 | // 如果页面和路由很多的情况下可以选择关闭 34 | resourceHints: true 35 | } 36 | }, 37 | build: { 38 | transpile: [ 39 | /typed-vuex/, 40 | ], 41 | babel: { 42 | plugins: [ 43 | [ 44 | '@babel/plugin-proposal-decorators', { 45 | legacy: true 46 | } 47 | ], 48 | [ 49 | '@babel/plugin-proposal-class-properties', 50 | { 51 | loose: true 52 | } 53 | ] 54 | ] 55 | }, 56 | /** 57 | * @see https://zh.nuxtjs.org/api/configuration-build#publicpath 58 | */ 59 | // publicPath: '', 60 | vendor: ['ddv-restful-api', 'ddv-restful-ws-api', 'ddv-util'], 61 | postcss: { 62 | plugins: { 63 | 'postcss-nesting': {}, 64 | 'postcss-salad': { 65 | 'browsers': ['last 3 versions'], 66 | 'features': { 67 | 'autoprefixer': false, 68 | 'bem': { 69 | 'shortcuts': { 70 | 'component': 'b', 71 | 'modifier': 'm', 72 | 'descendent': 'e', 73 | 'utility': 'util', 74 | 'component-namespace': 'n' 75 | }, 76 | 'separators': { 77 | 'descendent': '__', 78 | 'modifier': '--' 79 | } 80 | } 81 | } 82 | }, 83 | 'postcss-flexible': { 84 | remUnit: 75 85 | } 86 | }, 87 | preset: { 88 | autoprefixer: true 89 | } 90 | }, 91 | 'html.minify': { 92 | removeComments: isProduction 93 | }, 94 | extend (config, ctx) { 95 | // Run ESLint on save 96 | // if (ctx.isDev && ctx.isClient) { 97 | // config.module.rules.push({ 98 | // enforce: 'pre', 99 | // test: /\.(js|vue)$/, 100 | // loader: 'eslint-loader', 101 | // exclude: /(node_modules)/ 102 | // }) 103 | // } 104 | }, 105 | extractCSS: isProduction, 106 | }, 107 | plugins: [ 108 | '~/plugins/ddv-restful-api', 109 | '~/plugins/ddv-util', 110 | '~/plugins/inject' 111 | ], 112 | /* 113 | ** Global CSS 114 | */ 115 | // css: ['~/assets/css/main.css'], 116 | /* 117 | ** Customize the progress-bar color 118 | */ 119 | loading: { 120 | color: '#3B8070' 121 | }, 122 | modules: ['@nuxtjs/component-cache'] 123 | } 124 | -------------------------------------------------------------------------------- /template/theme/radio-group.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | :root{ 3 | /* Transition 4 | -------------------------- */ 5 | /* Colors 6 | -------------------------- */ 7 | /* Link 8 | -------------------------- */ 9 | /* Border 10 | -------------------------- */ 11 | /* Box-shadow 12 | -------------------------- */ 13 | /* Fill 14 | -------------------------- */ 15 | /* Font 16 | -------------------------- */ 17 | /* Size 18 | -------------------------- */ 19 | /* z-index 20 | -------------------------- */ 21 | /* Disable base 22 | -------------------------- */ 23 | /* Icon 24 | -------------------------- */ 25 | /* Checkbox 26 | -------------------------- */ 27 | /* Radio 28 | -------------------------- */ 29 | /* Select 30 | -------------------------- */ 31 | /* Alert 32 | -------------------------- */ 33 | /* Message Box 34 | -------------------------- */ 35 | /* Message 36 | -------------------------- */ 37 | /* Notification 38 | -------------------------- */ 39 | /* Input 40 | -------------------------- */ 41 | /* Cascader 42 | -------------------------- */ 43 | /* Group 44 | -------------------------- */ 45 | /* Tab 46 | -------------------------- */ 47 | /* Button 48 | -------------------------- */ 49 | /* cascader 50 | -------------------------- */ 51 | /* Switch 52 | -------------------------- */ 53 | /* Dialog 54 | -------------------------- */ 55 | /* Table 56 | -------------------------- */ 57 | /* Pagination 58 | -------------------------- */ 59 | /* Popover 60 | -------------------------- */ 61 | /* Tooltip 62 | -------------------------- */ 63 | /* Tag 64 | -------------------------- */ 65 | /* Dropdown 66 | -------------------------- */ 67 | /* Badge 68 | -------------------------- */ 69 | /* Card 70 | --------------------------*/ 71 | /* Slider 72 | --------------------------*/ 73 | /* Steps 74 | --------------------------*/ 75 | /* Menu 76 | --------------------------*/ 77 | /* Rate 78 | --------------------------*/ 79 | /* DatePicker 80 | --------------------------*/ 81 | /* Loading 82 | --------------------------*/ 83 | /* Scrollbar 84 | --------------------------*/ 85 | /* Carousel 86 | --------------------------*/ 87 | /* Collapse 88 | --------------------------*/ 89 | /* Transfer 90 | --------------------------*/ 91 | } 92 | 93 | .el-radio-group{ 94 | display: inline-block; 95 | font-size: 0; 96 | line-height: 1; 97 | vertical-align: middle 98 | } 99 | 100 | .el-radio-group .el-radio{ 101 | font-size: 14px 102 | } 103 | :root{ 104 | /* Transition 105 | -------------------------- */ 106 | /* Colors 107 | -------------------------- */ 108 | /* Link 109 | -------------------------- */ 110 | /* Border 111 | -------------------------- */ 112 | /* Box-shadow 113 | -------------------------- */ 114 | /* Fill 115 | -------------------------- */ 116 | /* Font 117 | -------------------------- */ 118 | /* Size 119 | -------------------------- */ 120 | /* z-index 121 | -------------------------- */ 122 | /* Disable base 123 | -------------------------- */ 124 | /* Icon 125 | -------------------------- */ 126 | /* Checkbox 127 | -------------------------- */ 128 | /* Radio 129 | -------------------------- */ 130 | /* Select 131 | -------------------------- */ 132 | /* Alert 133 | -------------------------- */ 134 | /* Message Box 135 | -------------------------- */ 136 | /* Message 137 | -------------------------- */ 138 | /* Notification 139 | -------------------------- */ 140 | /* Input 141 | -------------------------- */ 142 | /* Cascader 143 | -------------------------- */ 144 | /* Group 145 | -------------------------- */ 146 | /* Tab 147 | -------------------------- */ 148 | /* Button 149 | -------------------------- */ 150 | /* cascader 151 | -------------------------- */ 152 | /* Switch 153 | -------------------------- */ 154 | /* Dialog 155 | -------------------------- */ 156 | /* Table 157 | -------------------------- */ 158 | /* Pagination 159 | -------------------------- */ 160 | /* Popover 161 | -------------------------- */ 162 | /* Tooltip 163 | -------------------------- */ 164 | /* Tag 165 | -------------------------- */ 166 | /* Dropdown 167 | -------------------------- */ 168 | /* Badge 169 | -------------------------- */ 170 | /* Card 171 | --------------------------*/ 172 | /* Slider 173 | --------------------------*/ 174 | /* Steps 175 | --------------------------*/ 176 | /* Menu 177 | --------------------------*/ 178 | /* Rate 179 | --------------------------*/ 180 | /* DatePicker 181 | --------------------------*/ 182 | /* Loading 183 | --------------------------*/ 184 | /* Scrollbar 185 | --------------------------*/ 186 | /* Carousel 187 | --------------------------*/ 188 | /* Collapse 189 | --------------------------*/ 190 | /* Transfer 191 | --------------------------*/ 192 | } -------------------------------------------------------------------------------- /template/theme/steps.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | :root{ 3 | /* Transition 4 | -------------------------- */ 5 | /* Colors 6 | -------------------------- */ 7 | /* Link 8 | -------------------------- */ 9 | /* Border 10 | -------------------------- */ 11 | /* Box-shadow 12 | -------------------------- */ 13 | /* Fill 14 | -------------------------- */ 15 | /* Font 16 | -------------------------- */ 17 | /* Size 18 | -------------------------- */ 19 | /* z-index 20 | -------------------------- */ 21 | /* Disable base 22 | -------------------------- */ 23 | /* Icon 24 | -------------------------- */ 25 | /* Checkbox 26 | -------------------------- */ 27 | /* Radio 28 | -------------------------- */ 29 | /* Select 30 | -------------------------- */ 31 | /* Alert 32 | -------------------------- */ 33 | /* Message Box 34 | -------------------------- */ 35 | /* Message 36 | -------------------------- */ 37 | /* Notification 38 | -------------------------- */ 39 | /* Input 40 | -------------------------- */ 41 | /* Cascader 42 | -------------------------- */ 43 | /* Group 44 | -------------------------- */ 45 | /* Tab 46 | -------------------------- */ 47 | /* Button 48 | -------------------------- */ 49 | /* cascader 50 | -------------------------- */ 51 | /* Switch 52 | -------------------------- */ 53 | /* Dialog 54 | -------------------------- */ 55 | /* Table 56 | -------------------------- */ 57 | /* Pagination 58 | -------------------------- */ 59 | /* Popover 60 | -------------------------- */ 61 | /* Tooltip 62 | -------------------------- */ 63 | /* Tag 64 | -------------------------- */ 65 | /* Dropdown 66 | -------------------------- */ 67 | /* Badge 68 | -------------------------- */ 69 | /* Card 70 | --------------------------*/ 71 | /* Slider 72 | --------------------------*/ 73 | /* Steps 74 | --------------------------*/ 75 | /* Menu 76 | --------------------------*/ 77 | /* Rate 78 | --------------------------*/ 79 | /* DatePicker 80 | --------------------------*/ 81 | /* Loading 82 | --------------------------*/ 83 | /* Scrollbar 84 | --------------------------*/ 85 | /* Carousel 86 | --------------------------*/ 87 | /* Collapse 88 | --------------------------*/ 89 | /* Transfer 90 | --------------------------*/ 91 | } 92 | 93 | .el-steps{ 94 | font-size: 0; 95 | } 96 | 97 | .el-steps > :last-child .el-step__line{ 98 | display: none; 99 | } 100 | 101 | .el-steps.is-horizontal{ 102 | white-space: nowrap; 103 | } 104 | 105 | .el-steps.is-horizontal.is-center{ 106 | text-align: center; 107 | } 108 | :root{ 109 | /* Transition 110 | -------------------------- */ 111 | /* Colors 112 | -------------------------- */ 113 | /* Link 114 | -------------------------- */ 115 | /* Border 116 | -------------------------- */ 117 | /* Box-shadow 118 | -------------------------- */ 119 | /* Fill 120 | -------------------------- */ 121 | /* Font 122 | -------------------------- */ 123 | /* Size 124 | -------------------------- */ 125 | /* z-index 126 | -------------------------- */ 127 | /* Disable base 128 | -------------------------- */ 129 | /* Icon 130 | -------------------------- */ 131 | /* Checkbox 132 | -------------------------- */ 133 | /* Radio 134 | -------------------------- */ 135 | /* Select 136 | -------------------------- */ 137 | /* Alert 138 | -------------------------- */ 139 | /* Message Box 140 | -------------------------- */ 141 | /* Message 142 | -------------------------- */ 143 | /* Notification 144 | -------------------------- */ 145 | /* Input 146 | -------------------------- */ 147 | /* Cascader 148 | -------------------------- */ 149 | /* Group 150 | -------------------------- */ 151 | /* Tab 152 | -------------------------- */ 153 | /* Button 154 | -------------------------- */ 155 | /* cascader 156 | -------------------------- */ 157 | /* Switch 158 | -------------------------- */ 159 | /* Dialog 160 | -------------------------- */ 161 | /* Table 162 | -------------------------- */ 163 | /* Pagination 164 | -------------------------- */ 165 | /* Popover 166 | -------------------------- */ 167 | /* Tooltip 168 | -------------------------- */ 169 | /* Tag 170 | -------------------------- */ 171 | /* Dropdown 172 | -------------------------- */ 173 | /* Badge 174 | -------------------------- */ 175 | /* Card 176 | --------------------------*/ 177 | /* Slider 178 | --------------------------*/ 179 | /* Steps 180 | --------------------------*/ 181 | /* Menu 182 | --------------------------*/ 183 | /* Rate 184 | --------------------------*/ 185 | /* DatePicker 186 | --------------------------*/ 187 | /* Loading 188 | --------------------------*/ 189 | /* Scrollbar 190 | --------------------------*/ 191 | /* Carousel 192 | --------------------------*/ 193 | /* Collapse 194 | --------------------------*/ 195 | /* Transfer 196 | --------------------------*/ 197 | } -------------------------------------------------------------------------------- /template/theme/icon.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'element-icons'; 3 | src: url('fonts/element-icons.woff?t=1472440741') format('woff'), /* chrome, firefox */ 4 | url('fonts/element-icons.ttf?t=1472440741') format('truetype'); /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/ 5 | font-weight: 400; 6 | font-style: normal; 7 | } 8 | 9 | [class^="el-icon-"], [class*=" el-icon-"] { 10 | /* use !important to prevent issues with browser extensions that change fonts */ 11 | font-family: 'element-icons' !important; 12 | speak: none; 13 | font-style: normal; 14 | font-weight: 400; 15 | font-variant: normal; 16 | text-transform: none; 17 | line-height: 1; 18 | vertical-align: baseline; 19 | display: inline-block; 20 | 21 | /* Better Font Rendering =========== */ 22 | -webkit-font-smoothing: antialiased; 23 | -moz-osx-font-smoothing: grayscale; 24 | } 25 | 26 | .el-icon-arrow-down:before { content: "\e600"; } 27 | .el-icon-arrow-left:before { content: "\e601"; } 28 | .el-icon-arrow-right:before { content: "\e602"; } 29 | .el-icon-arrow-up:before { content: "\e603"; } 30 | .el-icon-caret-bottom:before { content: "\e604"; } 31 | .el-icon-caret-left:before { content: "\e605"; } 32 | .el-icon-caret-right:before { content: "\e606"; } 33 | .el-icon-caret-top:before { content: "\e607"; } 34 | .el-icon-check:before { content: "\e608"; } 35 | .el-icon-circle-check:before { content: "\e609"; } 36 | .el-icon-circle-close:before { content: "\e60a"; } 37 | .el-icon-circle-cross:before { content: "\e60b"; } 38 | .el-icon-close:before { content: "\e60c"; } 39 | .el-icon-upload:before { content: "\e60d"; } 40 | .el-icon-d-arrow-left:before { content: "\e60e"; } 41 | .el-icon-d-arrow-right:before { content: "\e60f"; } 42 | .el-icon-d-caret:before { content: "\e610"; } 43 | .el-icon-date:before { content: "\e611"; } 44 | .el-icon-delete:before { content: "\e612"; } 45 | .el-icon-document:before { content: "\e613"; } 46 | .el-icon-edit:before { content: "\e614"; } 47 | .el-icon-information:before { content: "\e615"; } 48 | .el-icon-loading:before { content: "\e616"; } 49 | .el-icon-menu:before { content: "\e617"; } 50 | .el-icon-message:before { content: "\e618"; } 51 | .el-icon-minus:before { content: "\e619"; } 52 | .el-icon-more:before { content: "\e61a"; } 53 | .el-icon-picture:before { content: "\e61b"; } 54 | .el-icon-plus:before { content: "\e61c"; } 55 | .el-icon-search:before { content: "\e61d"; } 56 | .el-icon-setting:before { content: "\e61e"; } 57 | .el-icon-share:before { content: "\e61f"; } 58 | .el-icon-star-off:before { content: "\e620"; } 59 | .el-icon-star-on:before { content: "\e621"; } 60 | .el-icon-time:before { content: "\e622"; } 61 | .el-icon-warning:before { content: "\e623"; } 62 | .el-icon-delete2:before { content: "\e624"; } 63 | .el-icon-upload2:before { content: "\e627"; } 64 | .el-icon-view:before { content: "\e626"; } 65 | 66 | .el-icon-loading { 67 | animation: rotating 1s linear infinite; 68 | } 69 | 70 | .el-icon--right { 71 | margin-left: 5px; 72 | } 73 | .el-icon--left { 74 | margin-right: 5px; 75 | } 76 | 77 | @keyframes rotating { 78 | 0% { 79 | transform: rotateZ(0deg); 80 | } 81 | 100% { 82 | transform: rotateZ(360deg); 83 | } 84 | } 85 | :root { /* Transition 86 | -------------------------- */ /* Colors 87 | -------------------------- */ /* Link 88 | -------------------------- */ /* Border 89 | -------------------------- */ /* Box-shadow 90 | -------------------------- */ /* Fill 91 | -------------------------- */ /* Font 92 | -------------------------- */ /* Size 93 | -------------------------- */ /* z-index 94 | -------------------------- */ /* Disable base 95 | -------------------------- */ /* Icon 96 | -------------------------- */ /* Checkbox 97 | -------------------------- */ /* Radio 98 | -------------------------- */ /* Select 99 | -------------------------- */ /* Alert 100 | -------------------------- */ /* Message Box 101 | -------------------------- */ /* Message 102 | -------------------------- */ /* Notification 103 | -------------------------- */ /* Input 104 | -------------------------- */ /* Cascader 105 | -------------------------- */ /* Group 106 | -------------------------- */ /* Tab 107 | -------------------------- */ /* Button 108 | -------------------------- */ /* cascader 109 | -------------------------- */ /* Switch 110 | -------------------------- */ /* Dialog 111 | -------------------------- */ /* Table 112 | -------------------------- */ /* Pagination 113 | -------------------------- */ /* Popover 114 | -------------------------- */ /* Tooltip 115 | -------------------------- */ /* Tag 116 | -------------------------- */ /* Dropdown 117 | -------------------------- */ /* Badge 118 | -------------------------- */ /* Card 119 | --------------------------*/ /* Slider 120 | --------------------------*/ /* Steps 121 | --------------------------*/ /* Menu 122 | --------------------------*/ /* Rate 123 | --------------------------*/ /* DatePicker 124 | --------------------------*/ /* Loading 125 | --------------------------*/ /* Scrollbar 126 | --------------------------*/ /* Carousel 127 | --------------------------*/ /* Collapse 128 | --------------------------*/ /* Transfer 129 | --------------------------*/ 130 | } -------------------------------------------------------------------------------- /template/theme/option-group.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | :root{ 3 | /* Transition 4 | -------------------------- */ 5 | /* Colors 6 | -------------------------- */ 7 | /* Link 8 | -------------------------- */ 9 | /* Border 10 | -------------------------- */ 11 | /* Box-shadow 12 | -------------------------- */ 13 | /* Fill 14 | -------------------------- */ 15 | /* Font 16 | -------------------------- */ 17 | /* Size 18 | -------------------------- */ 19 | /* z-index 20 | -------------------------- */ 21 | /* Disable base 22 | -------------------------- */ 23 | /* Icon 24 | -------------------------- */ 25 | /* Checkbox 26 | -------------------------- */ 27 | /* Radio 28 | -------------------------- */ 29 | /* Select 30 | -------------------------- */ 31 | /* Alert 32 | -------------------------- */ 33 | /* Message Box 34 | -------------------------- */ 35 | /* Message 36 | -------------------------- */ 37 | /* Notification 38 | -------------------------- */ 39 | /* Input 40 | -------------------------- */ 41 | /* Cascader 42 | -------------------------- */ 43 | /* Group 44 | -------------------------- */ 45 | /* Tab 46 | -------------------------- */ 47 | /* Button 48 | -------------------------- */ 49 | /* cascader 50 | -------------------------- */ 51 | /* Switch 52 | -------------------------- */ 53 | /* Dialog 54 | -------------------------- */ 55 | /* Table 56 | -------------------------- */ 57 | /* Pagination 58 | -------------------------- */ 59 | /* Popover 60 | -------------------------- */ 61 | /* Tooltip 62 | -------------------------- */ 63 | /* Tag 64 | -------------------------- */ 65 | /* Dropdown 66 | -------------------------- */ 67 | /* Badge 68 | -------------------------- */ 69 | /* Card 70 | --------------------------*/ 71 | /* Slider 72 | --------------------------*/ 73 | /* Steps 74 | --------------------------*/ 75 | /* Menu 76 | --------------------------*/ 77 | /* Rate 78 | --------------------------*/ 79 | /* DatePicker 80 | --------------------------*/ 81 | /* Loading 82 | --------------------------*/ 83 | /* Scrollbar 84 | --------------------------*/ 85 | /* Carousel 86 | --------------------------*/ 87 | /* Collapse 88 | --------------------------*/ 89 | /* Transfer 90 | --------------------------*/ 91 | } 92 | 93 | .el-select-group{ 94 | margin: 0; 95 | padding: 0 96 | } 97 | 98 | .el-select-group .el-select-dropdown__item{ 99 | padding-left: 20px 100 | } 101 | 102 | .el-select-group__wrap{ 103 | list-style: none; 104 | margin: 0; 105 | padding: 0 106 | } 107 | 108 | .el-select-group__title{ 109 | padding-left: 10px; 110 | font-size: 12px; 111 | color: #999; 112 | height: 30px; 113 | line-height: 30px 114 | } 115 | :root{ 116 | /* Transition 117 | -------------------------- */ 118 | /* Colors 119 | -------------------------- */ 120 | /* Link 121 | -------------------------- */ 122 | /* Border 123 | -------------------------- */ 124 | /* Box-shadow 125 | -------------------------- */ 126 | /* Fill 127 | -------------------------- */ 128 | /* Font 129 | -------------------------- */ 130 | /* Size 131 | -------------------------- */ 132 | /* z-index 133 | -------------------------- */ 134 | /* Disable base 135 | -------------------------- */ 136 | /* Icon 137 | -------------------------- */ 138 | /* Checkbox 139 | -------------------------- */ 140 | /* Radio 141 | -------------------------- */ 142 | /* Select 143 | -------------------------- */ 144 | /* Alert 145 | -------------------------- */ 146 | /* Message Box 147 | -------------------------- */ 148 | /* Message 149 | -------------------------- */ 150 | /* Notification 151 | -------------------------- */ 152 | /* Input 153 | -------------------------- */ 154 | /* Cascader 155 | -------------------------- */ 156 | /* Group 157 | -------------------------- */ 158 | /* Tab 159 | -------------------------- */ 160 | /* Button 161 | -------------------------- */ 162 | /* cascader 163 | -------------------------- */ 164 | /* Switch 165 | -------------------------- */ 166 | /* Dialog 167 | -------------------------- */ 168 | /* Table 169 | -------------------------- */ 170 | /* Pagination 171 | -------------------------- */ 172 | /* Popover 173 | -------------------------- */ 174 | /* Tooltip 175 | -------------------------- */ 176 | /* Tag 177 | -------------------------- */ 178 | /* Dropdown 179 | -------------------------- */ 180 | /* Badge 181 | -------------------------- */ 182 | /* Card 183 | --------------------------*/ 184 | /* Slider 185 | --------------------------*/ 186 | /* Steps 187 | --------------------------*/ 188 | /* Menu 189 | --------------------------*/ 190 | /* Rate 191 | --------------------------*/ 192 | /* DatePicker 193 | --------------------------*/ 194 | /* Loading 195 | --------------------------*/ 196 | /* Scrollbar 197 | --------------------------*/ 198 | /* Carousel 199 | --------------------------*/ 200 | /* Collapse 201 | --------------------------*/ 202 | /* Transfer 203 | --------------------------*/ 204 | } -------------------------------------------------------------------------------- /template/theme/card.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | :root{ 3 | /* Transition 4 | -------------------------- */ 5 | /* Colors 6 | -------------------------- */ 7 | /* Link 8 | -------------------------- */ 9 | /* Border 10 | -------------------------- */ 11 | /* Box-shadow 12 | -------------------------- */ 13 | /* Fill 14 | -------------------------- */ 15 | /* Font 16 | -------------------------- */ 17 | /* Size 18 | -------------------------- */ 19 | /* z-index 20 | -------------------------- */ 21 | /* Disable base 22 | -------------------------- */ 23 | /* Icon 24 | -------------------------- */ 25 | /* Checkbox 26 | -------------------------- */ 27 | /* Radio 28 | -------------------------- */ 29 | /* Select 30 | -------------------------- */ 31 | /* Alert 32 | -------------------------- */ 33 | /* Message Box 34 | -------------------------- */ 35 | /* Message 36 | -------------------------- */ 37 | /* Notification 38 | -------------------------- */ 39 | /* Input 40 | -------------------------- */ 41 | /* Cascader 42 | -------------------------- */ 43 | /* Group 44 | -------------------------- */ 45 | /* Tab 46 | -------------------------- */ 47 | /* Button 48 | -------------------------- */ 49 | /* cascader 50 | -------------------------- */ 51 | /* Switch 52 | -------------------------- */ 53 | /* Dialog 54 | -------------------------- */ 55 | /* Table 56 | -------------------------- */ 57 | /* Pagination 58 | -------------------------- */ 59 | /* Popover 60 | -------------------------- */ 61 | /* Tooltip 62 | -------------------------- */ 63 | /* Tag 64 | -------------------------- */ 65 | /* Dropdown 66 | -------------------------- */ 67 | /* Badge 68 | -------------------------- */ 69 | /* Card 70 | --------------------------*/ 71 | /* Slider 72 | --------------------------*/ 73 | /* Steps 74 | --------------------------*/ 75 | /* Menu 76 | --------------------------*/ 77 | /* Rate 78 | --------------------------*/ 79 | /* DatePicker 80 | --------------------------*/ 81 | /* Loading 82 | --------------------------*/ 83 | /* Scrollbar 84 | --------------------------*/ 85 | /* Carousel 86 | --------------------------*/ 87 | /* Collapse 88 | --------------------------*/ 89 | /* Transfer 90 | --------------------------*/ 91 | } 92 | 93 | .el-card{ 94 | border: 1px solid rgb(209, 224, 229); 95 | border-radius: 4px; 96 | background-color: #fff; 97 | overflow: hidden; 98 | box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, .12), 99 | 0px 0px 6px 0px rgba(0, 0, 0, .04) 100 | } 101 | 102 | .el-card__header{ 103 | padding: 18px 20px; 104 | border-bottom: 1px solid rgb(209, 224, 229); 105 | box-sizing: border-box 106 | } 107 | 108 | .el-card__body{ 109 | padding: 20px 110 | } 111 | :root{ 112 | /* Transition 113 | -------------------------- */ 114 | /* Colors 115 | -------------------------- */ 116 | /* Link 117 | -------------------------- */ 118 | /* Border 119 | -------------------------- */ 120 | /* Box-shadow 121 | -------------------------- */ 122 | /* Fill 123 | -------------------------- */ 124 | /* Font 125 | -------------------------- */ 126 | /* Size 127 | -------------------------- */ 128 | /* z-index 129 | -------------------------- */ 130 | /* Disable base 131 | -------------------------- */ 132 | /* Icon 133 | -------------------------- */ 134 | /* Checkbox 135 | -------------------------- */ 136 | /* Radio 137 | -------------------------- */ 138 | /* Select 139 | -------------------------- */ 140 | /* Alert 141 | -------------------------- */ 142 | /* Message Box 143 | -------------------------- */ 144 | /* Message 145 | -------------------------- */ 146 | /* Notification 147 | -------------------------- */ 148 | /* Input 149 | -------------------------- */ 150 | /* Cascader 151 | -------------------------- */ 152 | /* Group 153 | -------------------------- */ 154 | /* Tab 155 | -------------------------- */ 156 | /* Button 157 | -------------------------- */ 158 | /* cascader 159 | -------------------------- */ 160 | /* Switch 161 | -------------------------- */ 162 | /* Dialog 163 | -------------------------- */ 164 | /* Table 165 | -------------------------- */ 166 | /* Pagination 167 | -------------------------- */ 168 | /* Popover 169 | -------------------------- */ 170 | /* Tooltip 171 | -------------------------- */ 172 | /* Tag 173 | -------------------------- */ 174 | /* Dropdown 175 | -------------------------- */ 176 | /* Badge 177 | -------------------------- */ 178 | /* Card 179 | --------------------------*/ 180 | /* Slider 181 | --------------------------*/ 182 | /* Steps 183 | --------------------------*/ 184 | /* Menu 185 | --------------------------*/ 186 | /* Rate 187 | --------------------------*/ 188 | /* DatePicker 189 | --------------------------*/ 190 | /* Loading 191 | --------------------------*/ 192 | /* Scrollbar 193 | --------------------------*/ 194 | /* Carousel 195 | --------------------------*/ 196 | /* Collapse 197 | --------------------------*/ 198 | /* Transfer 199 | --------------------------*/ 200 | } -------------------------------------------------------------------------------- /template/theme/spinner.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | :root{ 3 | /* Transition 4 | -------------------------- */ 5 | /* Colors 6 | -------------------------- */ 7 | /* Link 8 | -------------------------- */ 9 | /* Border 10 | -------------------------- */ 11 | /* Box-shadow 12 | -------------------------- */ 13 | /* Fill 14 | -------------------------- */ 15 | /* Font 16 | -------------------------- */ 17 | /* Size 18 | -------------------------- */ 19 | /* z-index 20 | -------------------------- */ 21 | /* Disable base 22 | -------------------------- */ 23 | /* Icon 24 | -------------------------- */ 25 | /* Checkbox 26 | -------------------------- */ 27 | /* Radio 28 | -------------------------- */ 29 | /* Select 30 | -------------------------- */ 31 | /* Alert 32 | -------------------------- */ 33 | /* Message Box 34 | -------------------------- */ 35 | /* Message 36 | -------------------------- */ 37 | /* Notification 38 | -------------------------- */ 39 | /* Input 40 | -------------------------- */ 41 | /* Cascader 42 | -------------------------- */ 43 | /* Group 44 | -------------------------- */ 45 | /* Tab 46 | -------------------------- */ 47 | /* Button 48 | -------------------------- */ 49 | /* cascader 50 | -------------------------- */ 51 | /* Switch 52 | -------------------------- */ 53 | /* Dialog 54 | -------------------------- */ 55 | /* Table 56 | -------------------------- */ 57 | /* Pagination 58 | -------------------------- */ 59 | /* Popover 60 | -------------------------- */ 61 | /* Tooltip 62 | -------------------------- */ 63 | /* Tag 64 | -------------------------- */ 65 | /* Dropdown 66 | -------------------------- */ 67 | /* Badge 68 | -------------------------- */ 69 | /* Card 70 | --------------------------*/ 71 | /* Slider 72 | --------------------------*/ 73 | /* Steps 74 | --------------------------*/ 75 | /* Menu 76 | --------------------------*/ 77 | /* Rate 78 | --------------------------*/ 79 | /* DatePicker 80 | --------------------------*/ 81 | /* Loading 82 | --------------------------*/ 83 | /* Scrollbar 84 | --------------------------*/ 85 | /* Carousel 86 | --------------------------*/ 87 | /* Collapse 88 | --------------------------*/ 89 | /* Transfer 90 | --------------------------*/ 91 | } 92 | 93 | .el-time-spinner{ 94 | width: 100%; 95 | white-space: nowrap; 96 | } 97 | 98 | .el-spinner{ 99 | display: inline-block; 100 | vertical-align: middle; 101 | } 102 | 103 | .el-spinner-inner{ 104 | animation: rotate 2s linear infinite; 105 | width: 50px; 106 | height: 50px; 107 | } 108 | 109 | .el-spinner-inner .path{ 110 | stroke: #ececec; 111 | stroke-linecap: round; 112 | animation: dash 1.5s ease-in-out infinite; 113 | } 114 | @keyframes rotate { 115 | 100% { 116 | transform: rotate(360deg); 117 | } 118 | } 119 | 120 | @keyframes dash { 121 | 0% { 122 | stroke-dasharray: 1, 150; 123 | stroke-dashoffset: 0; 124 | } 125 | 50% { 126 | stroke-dasharray: 90, 150; 127 | stroke-dashoffset: -35; 128 | } 129 | 100% { 130 | stroke-dasharray: 90, 150; 131 | stroke-dashoffset: -124; 132 | } 133 | } 134 | :root{ 135 | /* Transition 136 | -------------------------- */ 137 | /* Colors 138 | -------------------------- */ 139 | /* Link 140 | -------------------------- */ 141 | /* Border 142 | -------------------------- */ 143 | /* Box-shadow 144 | -------------------------- */ 145 | /* Fill 146 | -------------------------- */ 147 | /* Font 148 | -------------------------- */ 149 | /* Size 150 | -------------------------- */ 151 | /* z-index 152 | -------------------------- */ 153 | /* Disable base 154 | -------------------------- */ 155 | /* Icon 156 | -------------------------- */ 157 | /* Checkbox 158 | -------------------------- */ 159 | /* Radio 160 | -------------------------- */ 161 | /* Select 162 | -------------------------- */ 163 | /* Alert 164 | -------------------------- */ 165 | /* Message Box 166 | -------------------------- */ 167 | /* Message 168 | -------------------------- */ 169 | /* Notification 170 | -------------------------- */ 171 | /* Input 172 | -------------------------- */ 173 | /* Cascader 174 | -------------------------- */ 175 | /* Group 176 | -------------------------- */ 177 | /* Tab 178 | -------------------------- */ 179 | /* Button 180 | -------------------------- */ 181 | /* cascader 182 | -------------------------- */ 183 | /* Switch 184 | -------------------------- */ 185 | /* Dialog 186 | -------------------------- */ 187 | /* Table 188 | -------------------------- */ 189 | /* Pagination 190 | -------------------------- */ 191 | /* Popover 192 | -------------------------- */ 193 | /* Tooltip 194 | -------------------------- */ 195 | /* Tag 196 | -------------------------- */ 197 | /* Dropdown 198 | -------------------------- */ 199 | /* Badge 200 | -------------------------- */ 201 | /* Card 202 | --------------------------*/ 203 | /* Slider 204 | --------------------------*/ 205 | /* Steps 206 | --------------------------*/ 207 | /* Menu 208 | --------------------------*/ 209 | /* Rate 210 | --------------------------*/ 211 | /* DatePicker 212 | --------------------------*/ 213 | /* Loading 214 | --------------------------*/ 215 | /* Scrollbar 216 | --------------------------*/ 217 | /* Carousel 218 | --------------------------*/ 219 | /* Collapse 220 | --------------------------*/ 221 | /* Transfer 222 | --------------------------*/ 223 | } -------------------------------------------------------------------------------- /template/assets/util/util.js: -------------------------------------------------------------------------------- 1 | /** 2 | * 工具类 3 | */ 4 | // 手机号码 5 | const MOBILEPHONE_REGEXP = /^(0)?1([3|4|5|7|8])+([0-9]){9,10}$/ 6 | // 邮箱 7 | const EMAIL_REGEXP = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/i 8 | // 身份证 9 | const DICARD_REGEXP = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/ 10 | 11 | import sort from '~/assets/util/sort.js' 12 | 13 | export default { 14 | // 货币格式化 15 | formatCurrency (num) { 16 | num = num || '0' 17 | num = num.toString().replace(/\$|\,/g, '') 18 | if (isNaN(num)) { num = '0' } 19 | var sign = (num == (num = Math.abs(num))) 20 | num = Math.floor(num * 100 + 0.50000000001) 21 | var cents = num % 100 22 | num = Math.floor(num / 100).toString() 23 | if (cents < 10) { 24 | cents = '0' + cents 25 | } 26 | for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++) { 27 | num = num.substring(0, num.length - (4 * i + 3)) + ',' + 28 | num.substring(num.length - (4 * i + 3)) 29 | } 30 | return (((sign) ? '' : '-') + num + '.' + cents) 31 | }, 32 | // 返回所有结果集,格式为[[1,2,3],[4,5,6]...] 33 | combine (array) { 34 | if (!(Array.isArray(array))) { 35 | console.error('非法数组') 36 | return 37 | } 38 | 39 | var r = []; 40 | (function f (t, a, n) { 41 | if (n === array.length) return r.push(t) 42 | 43 | for (var i = 0; i < a[n].length; i++) { 44 | f(t.concat(a[n][i]), a, n + 1) 45 | } 46 | })([], array, array.length - array.length) 47 | 48 | return r 49 | }, 50 | // 移除所有值为假的对象,返回对象本身 51 | compactObj (obj) { 52 | if (typeof obj === 'object' && !Array.isArray(obj)) { 53 | Object.keys(obj || []).forEach(key => { 54 | if (!obj[key] && obj[key] !== 0) { 55 | delete obj[key] 56 | } 57 | }) 58 | return obj 59 | } else { 60 | console.error('参数有误,必须是一个对象', obj) 61 | } 62 | }, 63 | deepCopy (parent, child) { // 对象深拷贝(非构造函数) 64 | let c = child || Array.isArray(parent) ? [] : {} 65 | if (typeof parent !== 'object' || typeof c !== 'object') { 66 | console.error('参数有误:deepCopy(Object|Array, [, Object|Array])') 67 | return c 68 | } 69 | Object.keys(parent).forEach(key => { 70 | if (typeof parent[key] === 'object') { 71 | c[key] = (parent[key].constructor === Array) ? [] : {} 72 | this.deepCopy(parent[key], c[key]) 73 | } else { 74 | c[key] = parent[key] 75 | } 76 | }) 77 | return c 78 | }, 79 | // 移除所有值为假的数组,返回数组本身 80 | compactArray (array) { 81 | if (!(Array.isArray(array))) { 82 | console.error('参数有误,必须是一个数组', array) 83 | return 84 | } 85 | 86 | let index = -1, 87 | length = array.length 88 | 89 | while (++index < length) { 90 | let value = array[index] 91 | if (!value) { 92 | array.splice(index, 1) 93 | } 94 | } 95 | return array 96 | }, 97 | // 验证。暂时支持:手机号、邮箱、身份证。后面补 98 | regCheck (num, type) { 99 | var flag 100 | 101 | if (!type) { 102 | console.warn('传入你要检测的类型') 103 | return 104 | } 105 | 106 | type = type.toLocaleLowerCase() 107 | switch (type) { 108 | case 'mobile_phone': 109 | flag = MOBILEPHONE_REGEXP.test(num) 110 | break 111 | case 'e_mail': 112 | flag = EMAIL_REGEXP.test(num) 113 | break 114 | case 'id_card': 115 | flag = DICARD_REGEXP.test(num) 116 | break 117 | // no default: 118 | } 119 | return flag 120 | }, 121 | timeSince (date) { 122 | var oldDate = date 123 | 124 | date = date.split('-').join('/') 125 | 126 | var seconds = Math.floor((new Date() - new Date(date)) / 1000) 127 | 128 | var interval = Math.floor(seconds / 31536000) 129 | if (interval > 1) { 130 | return oldDate 131 | } 132 | interval = Math.floor(seconds / 2592000) 133 | if (interval > 1) { 134 | return oldDate 135 | } 136 | interval = Math.floor(seconds / 86400) 137 | if (interval > 1 && interval <= 7) { 138 | return interval + ' 天前' 139 | } else if (interval > 7) { 140 | return oldDate 141 | } 142 | interval = Math.floor(seconds / 3600) 143 | if (interval > 1) { 144 | return interval + ' 小时前' 145 | } 146 | interval = Math.floor(seconds / 60) 147 | if (interval > 1) { 148 | return interval + ' 分钟前' 149 | } 150 | return '刚刚' 151 | }, 152 | timeEquation (val) { 153 | if (typeof val !== 'number') { 154 | val = Number(val) 155 | } 156 | 157 | if (val === 0 || isNaN(val)) return '0秒' 158 | let time 159 | let cnt = Math.round(val) 160 | let hour = Math.floor(cnt / 3600) 161 | let minute = Math.floor(cnt % 3600 / 60) 162 | let seconds = Math.round(cnt % 3600 % 60) 163 | 164 | if (hour < 10) { 165 | hour += '0' 166 | } 167 | 168 | if (minute < 10) { 169 | minute += '0' 170 | } 171 | 172 | if (seconds < 10) { 173 | seconds += '0' 174 | } 175 | 176 | if (hour === '00' && minute === '00' && seconds === '00') { 177 | time = '-' 178 | } else { 179 | time = `${hour}小时${minute}分钟${seconds}秒` 180 | } 181 | 182 | return time 183 | }, 184 | // 切割数组 185 | chunk (array, size) { 186 | if (!(Array.isArray(array))) { 187 | console.error('非法数组') 188 | return 189 | } 190 | 191 | var result = [] 192 | for (var x = 0; x < Math.ceil(array.length / size); x++) { 193 | var start = x * size 194 | var end = start + size 195 | result.push(array.slice(start, end)) 196 | } 197 | return result 198 | }, 199 | sort 200 | } 201 | -------------------------------------------------------------------------------- /template/theme/badge.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | :root{ 3 | /* Transition 4 | -------------------------- */ 5 | /* Colors 6 | -------------------------- */ 7 | /* Link 8 | -------------------------- */ 9 | /* Border 10 | -------------------------- */ 11 | /* Box-shadow 12 | -------------------------- */ 13 | /* Fill 14 | -------------------------- */ 15 | /* Font 16 | -------------------------- */ 17 | /* Size 18 | -------------------------- */ 19 | /* z-index 20 | -------------------------- */ 21 | /* Disable base 22 | -------------------------- */ 23 | /* Icon 24 | -------------------------- */ 25 | /* Checkbox 26 | -------------------------- */ 27 | /* Radio 28 | -------------------------- */ 29 | /* Select 30 | -------------------------- */ 31 | /* Alert 32 | -------------------------- */ 33 | /* Message Box 34 | -------------------------- */ 35 | /* Message 36 | -------------------------- */ 37 | /* Notification 38 | -------------------------- */ 39 | /* Input 40 | -------------------------- */ 41 | /* Cascader 42 | -------------------------- */ 43 | /* Group 44 | -------------------------- */ 45 | /* Tab 46 | -------------------------- */ 47 | /* Button 48 | -------------------------- */ 49 | /* cascader 50 | -------------------------- */ 51 | /* Switch 52 | -------------------------- */ 53 | /* Dialog 54 | -------------------------- */ 55 | /* Table 56 | -------------------------- */ 57 | /* Pagination 58 | -------------------------- */ 59 | /* Popover 60 | -------------------------- */ 61 | /* Tooltip 62 | -------------------------- */ 63 | /* Tag 64 | -------------------------- */ 65 | /* Dropdown 66 | -------------------------- */ 67 | /* Badge 68 | -------------------------- */ 69 | /* Card 70 | --------------------------*/ 71 | /* Slider 72 | --------------------------*/ 73 | /* Steps 74 | --------------------------*/ 75 | /* Menu 76 | --------------------------*/ 77 | /* Rate 78 | --------------------------*/ 79 | /* DatePicker 80 | --------------------------*/ 81 | /* Loading 82 | --------------------------*/ 83 | /* Scrollbar 84 | --------------------------*/ 85 | /* Carousel 86 | --------------------------*/ 87 | /* Collapse 88 | --------------------------*/ 89 | /* Transfer 90 | --------------------------*/ 91 | } 92 | 93 | .el-badge{ 94 | position: relative; 95 | vertical-align: middle; 96 | display: inline-block 97 | } 98 | 99 | .el-badge__content{ 100 | background-color: #ff4949; 101 | border-radius: 10px; 102 | color: #fff; 103 | display: inline-block; 104 | font-size: 12px; 105 | height: 18px; 106 | line-height: 18px; 107 | padding: 0 6px; 108 | text-align: center; 109 | white-space: nowrap; 110 | border: 1px solid #fff 111 | } 112 | 113 | .el-badge__content.is-dot{ 114 | width: 8px; 115 | height: 8px; 116 | padding: 0; 117 | right: 0; 118 | border-radius: 50% 119 | } 120 | 121 | .el-badge__content.is-fixed{ 122 | top: 0; 123 | right: 10px; 124 | position: absolute; 125 | transform: translateY(-50%) translateX(100%) 126 | } 127 | 128 | .el-badge__content.is-fixed.is-dot{ 129 | right: 5px 130 | } 131 | :root{ 132 | /* Transition 133 | -------------------------- */ 134 | /* Colors 135 | -------------------------- */ 136 | /* Link 137 | -------------------------- */ 138 | /* Border 139 | -------------------------- */ 140 | /* Box-shadow 141 | -------------------------- */ 142 | /* Fill 143 | -------------------------- */ 144 | /* Font 145 | -------------------------- */ 146 | /* Size 147 | -------------------------- */ 148 | /* z-index 149 | -------------------------- */ 150 | /* Disable base 151 | -------------------------- */ 152 | /* Icon 153 | -------------------------- */ 154 | /* Checkbox 155 | -------------------------- */ 156 | /* Radio 157 | -------------------------- */ 158 | /* Select 159 | -------------------------- */ 160 | /* Alert 161 | -------------------------- */ 162 | /* Message Box 163 | -------------------------- */ 164 | /* Message 165 | -------------------------- */ 166 | /* Notification 167 | -------------------------- */ 168 | /* Input 169 | -------------------------- */ 170 | /* Cascader 171 | -------------------------- */ 172 | /* Group 173 | -------------------------- */ 174 | /* Tab 175 | -------------------------- */ 176 | /* Button 177 | -------------------------- */ 178 | /* cascader 179 | -------------------------- */ 180 | /* Switch 181 | -------------------------- */ 182 | /* Dialog 183 | -------------------------- */ 184 | /* Table 185 | -------------------------- */ 186 | /* Pagination 187 | -------------------------- */ 188 | /* Popover 189 | -------------------------- */ 190 | /* Tooltip 191 | -------------------------- */ 192 | /* Tag 193 | -------------------------- */ 194 | /* Dropdown 195 | -------------------------- */ 196 | /* Badge 197 | -------------------------- */ 198 | /* Card 199 | --------------------------*/ 200 | /* Slider 201 | --------------------------*/ 202 | /* Steps 203 | --------------------------*/ 204 | /* Menu 205 | --------------------------*/ 206 | /* Rate 207 | --------------------------*/ 208 | /* DatePicker 209 | --------------------------*/ 210 | /* Loading 211 | --------------------------*/ 212 | /* Scrollbar 213 | --------------------------*/ 214 | /* Carousel 215 | --------------------------*/ 216 | /* Collapse 217 | --------------------------*/ 218 | /* Transfer 219 | --------------------------*/ 220 | } -------------------------------------------------------------------------------- /template/theme/rate.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | :root{ 3 | /* Transition 4 | -------------------------- */ 5 | /* Colors 6 | -------------------------- */ 7 | /* Link 8 | -------------------------- */ 9 | /* Border 10 | -------------------------- */ 11 | /* Box-shadow 12 | -------------------------- */ 13 | /* Fill 14 | -------------------------- */ 15 | /* Font 16 | -------------------------- */ 17 | /* Size 18 | -------------------------- */ 19 | /* z-index 20 | -------------------------- */ 21 | /* Disable base 22 | -------------------------- */ 23 | /* Icon 24 | -------------------------- */ 25 | /* Checkbox 26 | -------------------------- */ 27 | /* Radio 28 | -------------------------- */ 29 | /* Select 30 | -------------------------- */ 31 | /* Alert 32 | -------------------------- */ 33 | /* Message Box 34 | -------------------------- */ 35 | /* Message 36 | -------------------------- */ 37 | /* Notification 38 | -------------------------- */ 39 | /* Input 40 | -------------------------- */ 41 | /* Cascader 42 | -------------------------- */ 43 | /* Group 44 | -------------------------- */ 45 | /* Tab 46 | -------------------------- */ 47 | /* Button 48 | -------------------------- */ 49 | /* cascader 50 | -------------------------- */ 51 | /* Switch 52 | -------------------------- */ 53 | /* Dialog 54 | -------------------------- */ 55 | /* Table 56 | -------------------------- */ 57 | /* Pagination 58 | -------------------------- */ 59 | /* Popover 60 | -------------------------- */ 61 | /* Tooltip 62 | -------------------------- */ 63 | /* Tag 64 | -------------------------- */ 65 | /* Dropdown 66 | -------------------------- */ 67 | /* Badge 68 | -------------------------- */ 69 | /* Card 70 | --------------------------*/ 71 | /* Slider 72 | --------------------------*/ 73 | /* Steps 74 | --------------------------*/ 75 | /* Menu 76 | --------------------------*/ 77 | /* Rate 78 | --------------------------*/ 79 | /* DatePicker 80 | --------------------------*/ 81 | /* Loading 82 | --------------------------*/ 83 | /* Scrollbar 84 | --------------------------*/ 85 | /* Carousel 86 | --------------------------*/ 87 | /* Collapse 88 | --------------------------*/ 89 | /* Transfer 90 | --------------------------*/ 91 | } 92 | 93 | .el-rate{ 94 | height: 20px; 95 | line-height: 1; 96 | } 97 | 98 | .el-rate__item{ 99 | display: inline-block; 100 | position: relative; 101 | font-size: 0; 102 | vertical-align: middle; 103 | } 104 | 105 | .el-rate__icon{ 106 | position: relative; 107 | display: inline-block; 108 | font-size: 18px; 109 | margin-right: 6px; 110 | color: rgb(191, 210, 217); 111 | transition: .3s; 112 | } 113 | 114 | .el-rate__icon .path2 { 115 | position: absolute; 116 | left: 0; 117 | top: 0; 118 | } 119 | 120 | .el-rate__icon.hover{ 121 | transform: scale(1.15); 122 | } 123 | 124 | .el-rate__decimal{ 125 | position: absolute; 126 | top: 0; 127 | left: 0; 128 | display: inline-block; 129 | overflow: hidden; 130 | } 131 | 132 | .el-rate__text{ 133 | font-size: 14px; 134 | vertical-align: middle; 135 | } 136 | :root{ 137 | /* Transition 138 | -------------------------- */ 139 | /* Colors 140 | -------------------------- */ 141 | /* Link 142 | -------------------------- */ 143 | /* Border 144 | -------------------------- */ 145 | /* Box-shadow 146 | -------------------------- */ 147 | /* Fill 148 | -------------------------- */ 149 | /* Font 150 | -------------------------- */ 151 | /* Size 152 | -------------------------- */ 153 | /* z-index 154 | -------------------------- */ 155 | /* Disable base 156 | -------------------------- */ 157 | /* Icon 158 | -------------------------- */ 159 | /* Checkbox 160 | -------------------------- */ 161 | /* Radio 162 | -------------------------- */ 163 | /* Select 164 | -------------------------- */ 165 | /* Alert 166 | -------------------------- */ 167 | /* Message Box 168 | -------------------------- */ 169 | /* Message 170 | -------------------------- */ 171 | /* Notification 172 | -------------------------- */ 173 | /* Input 174 | -------------------------- */ 175 | /* Cascader 176 | -------------------------- */ 177 | /* Group 178 | -------------------------- */ 179 | /* Tab 180 | -------------------------- */ 181 | /* Button 182 | -------------------------- */ 183 | /* cascader 184 | -------------------------- */ 185 | /* Switch 186 | -------------------------- */ 187 | /* Dialog 188 | -------------------------- */ 189 | /* Table 190 | -------------------------- */ 191 | /* Pagination 192 | -------------------------- */ 193 | /* Popover 194 | -------------------------- */ 195 | /* Tooltip 196 | -------------------------- */ 197 | /* Tag 198 | -------------------------- */ 199 | /* Dropdown 200 | -------------------------- */ 201 | /* Badge 202 | -------------------------- */ 203 | /* Card 204 | --------------------------*/ 205 | /* Slider 206 | --------------------------*/ 207 | /* Steps 208 | --------------------------*/ 209 | /* Menu 210 | --------------------------*/ 211 | /* Rate 212 | --------------------------*/ 213 | /* DatePicker 214 | --------------------------*/ 215 | /* Loading 216 | --------------------------*/ 217 | /* Scrollbar 218 | --------------------------*/ 219 | /* Carousel 220 | --------------------------*/ 221 | /* Collapse 222 | --------------------------*/ 223 | /* Transfer 224 | --------------------------*/ 225 | } -------------------------------------------------------------------------------- /template/theme/option.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | :root{ 3 | /* Transition 4 | -------------------------- */ 5 | /* Colors 6 | -------------------------- */ 7 | /* Link 8 | -------------------------- */ 9 | /* Border 10 | -------------------------- */ 11 | /* Box-shadow 12 | -------------------------- */ 13 | /* Fill 14 | -------------------------- */ 15 | /* Font 16 | -------------------------- */ 17 | /* Size 18 | -------------------------- */ 19 | /* z-index 20 | -------------------------- */ 21 | /* Disable base 22 | -------------------------- */ 23 | /* Icon 24 | -------------------------- */ 25 | /* Checkbox 26 | -------------------------- */ 27 | /* Radio 28 | -------------------------- */ 29 | /* Select 30 | -------------------------- */ 31 | /* Alert 32 | -------------------------- */ 33 | /* Message Box 34 | -------------------------- */ 35 | /* Message 36 | -------------------------- */ 37 | /* Notification 38 | -------------------------- */ 39 | /* Input 40 | -------------------------- */ 41 | /* Cascader 42 | -------------------------- */ 43 | /* Group 44 | -------------------------- */ 45 | /* Tab 46 | -------------------------- */ 47 | /* Button 48 | -------------------------- */ 49 | /* cascader 50 | -------------------------- */ 51 | /* Switch 52 | -------------------------- */ 53 | /* Dialog 54 | -------------------------- */ 55 | /* Table 56 | -------------------------- */ 57 | /* Pagination 58 | -------------------------- */ 59 | /* Popover 60 | -------------------------- */ 61 | /* Tooltip 62 | -------------------------- */ 63 | /* Tag 64 | -------------------------- */ 65 | /* Dropdown 66 | -------------------------- */ 67 | /* Badge 68 | -------------------------- */ 69 | /* Card 70 | --------------------------*/ 71 | /* Slider 72 | --------------------------*/ 73 | /* Steps 74 | --------------------------*/ 75 | /* Menu 76 | --------------------------*/ 77 | /* Rate 78 | --------------------------*/ 79 | /* DatePicker 80 | --------------------------*/ 81 | /* Loading 82 | --------------------------*/ 83 | /* Scrollbar 84 | --------------------------*/ 85 | /* Carousel 86 | --------------------------*/ 87 | /* Collapse 88 | --------------------------*/ 89 | /* Transfer 90 | --------------------------*/ 91 | } 92 | 93 | .el-select-dropdown{} 94 | 95 | .el-select-dropdown__item{ 96 | font-size: 14px; 97 | padding: 8px 10px; 98 | position: relative; 99 | white-space: nowrap; 100 | overflow: hidden; 101 | text-overflow: ellipsis; 102 | color: rgb(72, 96, 106); 103 | height: 36px; 104 | line-height: 1.5; 105 | box-sizing: border-box; 106 | cursor: pointer 107 | } 108 | 109 | .el-select-dropdown__item.hover, .el-select-dropdown__item:hover{ 110 | background-color: rgb(228, 235, 241) 111 | } 112 | 113 | .el-select-dropdown__item.selected{ 114 | color: #fff; 115 | background-color: #15b8d9 116 | } 117 | 118 | .el-select-dropdown__item.selected.hover{ 119 | background-color: rgb(18, 162, 191) 120 | } 121 | 122 | .el-select-dropdown__item span{ 123 | line-height: 1.5 !important 124 | } 125 | 126 | .el-select-dropdown__item.is-disabled{ 127 | color: rgb(191, 210, 217); 128 | cursor: not-allowed 129 | } 130 | 131 | .el-select-dropdown__item.is-disabled:hover{ 132 | background-color: #fff 133 | } 134 | :root{ 135 | /* Transition 136 | -------------------------- */ 137 | /* Colors 138 | -------------------------- */ 139 | /* Link 140 | -------------------------- */ 141 | /* Border 142 | -------------------------- */ 143 | /* Box-shadow 144 | -------------------------- */ 145 | /* Fill 146 | -------------------------- */ 147 | /* Font 148 | -------------------------- */ 149 | /* Size 150 | -------------------------- */ 151 | /* z-index 152 | -------------------------- */ 153 | /* Disable base 154 | -------------------------- */ 155 | /* Icon 156 | -------------------------- */ 157 | /* Checkbox 158 | -------------------------- */ 159 | /* Radio 160 | -------------------------- */ 161 | /* Select 162 | -------------------------- */ 163 | /* Alert 164 | -------------------------- */ 165 | /* Message Box 166 | -------------------------- */ 167 | /* Message 168 | -------------------------- */ 169 | /* Notification 170 | -------------------------- */ 171 | /* Input 172 | -------------------------- */ 173 | /* Cascader 174 | -------------------------- */ 175 | /* Group 176 | -------------------------- */ 177 | /* Tab 178 | -------------------------- */ 179 | /* Button 180 | -------------------------- */ 181 | /* cascader 182 | -------------------------- */ 183 | /* Switch 184 | -------------------------- */ 185 | /* Dialog 186 | -------------------------- */ 187 | /* Table 188 | -------------------------- */ 189 | /* Pagination 190 | -------------------------- */ 191 | /* Popover 192 | -------------------------- */ 193 | /* Tooltip 194 | -------------------------- */ 195 | /* Tag 196 | -------------------------- */ 197 | /* Dropdown 198 | -------------------------- */ 199 | /* Badge 200 | -------------------------- */ 201 | /* Card 202 | --------------------------*/ 203 | /* Slider 204 | --------------------------*/ 205 | /* Steps 206 | --------------------------*/ 207 | /* Menu 208 | --------------------------*/ 209 | /* Rate 210 | --------------------------*/ 211 | /* DatePicker 212 | --------------------------*/ 213 | /* Loading 214 | --------------------------*/ 215 | /* Scrollbar 216 | --------------------------*/ 217 | /* Carousel 218 | --------------------------*/ 219 | /* Collapse 220 | --------------------------*/ 221 | /* Transfer 222 | --------------------------*/ 223 | } -------------------------------------------------------------------------------- /template/theme/carousel-item.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | :root{ 3 | /* Transition 4 | -------------------------- */ 5 | /* Colors 6 | -------------------------- */ 7 | /* Link 8 | -------------------------- */ 9 | /* Border 10 | -------------------------- */ 11 | /* Box-shadow 12 | -------------------------- */ 13 | /* Fill 14 | -------------------------- */ 15 | /* Font 16 | -------------------------- */ 17 | /* Size 18 | -------------------------- */ 19 | /* z-index 20 | -------------------------- */ 21 | /* Disable base 22 | -------------------------- */ 23 | /* Icon 24 | -------------------------- */ 25 | /* Checkbox 26 | -------------------------- */ 27 | /* Radio 28 | -------------------------- */ 29 | /* Select 30 | -------------------------- */ 31 | /* Alert 32 | -------------------------- */ 33 | /* Message Box 34 | -------------------------- */ 35 | /* Message 36 | -------------------------- */ 37 | /* Notification 38 | -------------------------- */ 39 | /* Input 40 | -------------------------- */ 41 | /* Cascader 42 | -------------------------- */ 43 | /* Group 44 | -------------------------- */ 45 | /* Tab 46 | -------------------------- */ 47 | /* Button 48 | -------------------------- */ 49 | /* cascader 50 | -------------------------- */ 51 | /* Switch 52 | -------------------------- */ 53 | /* Dialog 54 | -------------------------- */ 55 | /* Table 56 | -------------------------- */ 57 | /* Pagination 58 | -------------------------- */ 59 | /* Popover 60 | -------------------------- */ 61 | /* Tooltip 62 | -------------------------- */ 63 | /* Tag 64 | -------------------------- */ 65 | /* Dropdown 66 | -------------------------- */ 67 | /* Badge 68 | -------------------------- */ 69 | /* Card 70 | --------------------------*/ 71 | /* Slider 72 | --------------------------*/ 73 | /* Steps 74 | --------------------------*/ 75 | /* Menu 76 | --------------------------*/ 77 | /* Rate 78 | --------------------------*/ 79 | /* DatePicker 80 | --------------------------*/ 81 | /* Loading 82 | --------------------------*/ 83 | /* Scrollbar 84 | --------------------------*/ 85 | /* Carousel 86 | --------------------------*/ 87 | /* Collapse 88 | --------------------------*/ 89 | /* Transfer 90 | --------------------------*/ 91 | } 92 | 93 | .el-carousel{} 94 | 95 | .el-carousel__item{ 96 | position: absolute; 97 | top: 0; 98 | left: 0; 99 | width: 100%; 100 | height: 100%; 101 | display: inline-block; 102 | overflow: hidden; 103 | z-index: 0 104 | } 105 | 106 | .el-carousel__item.is-animating{ 107 | transition: transform .4s ease-in-out 108 | } 109 | 110 | .el-carousel__item.is-active{ 111 | z-index: 2 112 | } 113 | 114 | .el-carousel__item--card{ 115 | width: 50%; 116 | transition: transform .4s ease-in-out 117 | } 118 | 119 | .el-carousel__item--card.is-in-stage{ 120 | cursor: pointer; 121 | z-index: 1 122 | } 123 | 124 | .el-carousel__item--card.is-in-stage:hover .el-carousel__mask, .el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask{ 125 | opacity: 0.12 126 | } 127 | 128 | .el-carousel__item--card.is-active{ 129 | z-index: 2 130 | } 131 | 132 | .el-carousel__mask{ 133 | position: absolute; 134 | width: 100%; 135 | height: 100%; 136 | top: 0; 137 | left: 0; 138 | background-color: #fff; 139 | opacity: 0.24; 140 | transition: .2s 141 | }:root{ 142 | /* Transition 143 | -------------------------- */ 144 | /* Colors 145 | -------------------------- */ 146 | /* Link 147 | -------------------------- */ 148 | /* Border 149 | -------------------------- */ 150 | /* Box-shadow 151 | -------------------------- */ 152 | /* Fill 153 | -------------------------- */ 154 | /* Font 155 | -------------------------- */ 156 | /* Size 157 | -------------------------- */ 158 | /* z-index 159 | -------------------------- */ 160 | /* Disable base 161 | -------------------------- */ 162 | /* Icon 163 | -------------------------- */ 164 | /* Checkbox 165 | -------------------------- */ 166 | /* Radio 167 | -------------------------- */ 168 | /* Select 169 | -------------------------- */ 170 | /* Alert 171 | -------------------------- */ 172 | /* Message Box 173 | -------------------------- */ 174 | /* Message 175 | -------------------------- */ 176 | /* Notification 177 | -------------------------- */ 178 | /* Input 179 | -------------------------- */ 180 | /* Cascader 181 | -------------------------- */ 182 | /* Group 183 | -------------------------- */ 184 | /* Tab 185 | -------------------------- */ 186 | /* Button 187 | -------------------------- */ 188 | /* cascader 189 | -------------------------- */ 190 | /* Switch 191 | -------------------------- */ 192 | /* Dialog 193 | -------------------------- */ 194 | /* Table 195 | -------------------------- */ 196 | /* Pagination 197 | -------------------------- */ 198 | /* Popover 199 | -------------------------- */ 200 | /* Tooltip 201 | -------------------------- */ 202 | /* Tag 203 | -------------------------- */ 204 | /* Dropdown 205 | -------------------------- */ 206 | /* Badge 207 | -------------------------- */ 208 | /* Card 209 | --------------------------*/ 210 | /* Slider 211 | --------------------------*/ 212 | /* Steps 213 | --------------------------*/ 214 | /* Menu 215 | --------------------------*/ 216 | /* Rate 217 | --------------------------*/ 218 | /* DatePicker 219 | --------------------------*/ 220 | /* Loading 221 | --------------------------*/ 222 | /* Scrollbar 223 | --------------------------*/ 224 | /* Carousel 225 | --------------------------*/ 226 | /* Collapse 227 | --------------------------*/ 228 | /* Transfer 229 | --------------------------*/ 230 | } -------------------------------------------------------------------------------- /template/theme/row.css: -------------------------------------------------------------------------------- 1 | .el-row:before, .el-row:after{ 2 | display: table; 3 | content: "" 4 | } 5 | .el-row:after{ 6 | clear: both 7 | }@charset "UTF-8"; 8 | :root{ 9 | /* Transition 10 | -------------------------- */ 11 | /* Colors 12 | -------------------------- */ 13 | /* Link 14 | -------------------------- */ 15 | /* Border 16 | -------------------------- */ 17 | /* Box-shadow 18 | -------------------------- */ 19 | /* Fill 20 | -------------------------- */ 21 | /* Font 22 | -------------------------- */ 23 | /* Size 24 | -------------------------- */ 25 | /* z-index 26 | -------------------------- */ 27 | /* Disable base 28 | -------------------------- */ 29 | /* Icon 30 | -------------------------- */ 31 | /* Checkbox 32 | -------------------------- */ 33 | /* Radio 34 | -------------------------- */ 35 | /* Select 36 | -------------------------- */ 37 | /* Alert 38 | -------------------------- */ 39 | /* Message Box 40 | -------------------------- */ 41 | /* Message 42 | -------------------------- */ 43 | /* Notification 44 | -------------------------- */ 45 | /* Input 46 | -------------------------- */ 47 | /* Cascader 48 | -------------------------- */ 49 | /* Group 50 | -------------------------- */ 51 | /* Tab 52 | -------------------------- */ 53 | /* Button 54 | -------------------------- */ 55 | /* cascader 56 | -------------------------- */ 57 | /* Switch 58 | -------------------------- */ 59 | /* Dialog 60 | -------------------------- */ 61 | /* Table 62 | -------------------------- */ 63 | /* Pagination 64 | -------------------------- */ 65 | /* Popover 66 | -------------------------- */ 67 | /* Tooltip 68 | -------------------------- */ 69 | /* Tag 70 | -------------------------- */ 71 | /* Dropdown 72 | -------------------------- */ 73 | /* Badge 74 | -------------------------- */ 75 | /* Card 76 | --------------------------*/ 77 | /* Slider 78 | --------------------------*/ 79 | /* Steps 80 | --------------------------*/ 81 | /* Menu 82 | --------------------------*/ 83 | /* Rate 84 | --------------------------*/ 85 | /* DatePicker 86 | --------------------------*/ 87 | /* Loading 88 | --------------------------*/ 89 | /* Scrollbar 90 | --------------------------*/ 91 | /* Carousel 92 | --------------------------*/ 93 | /* Collapse 94 | --------------------------*/ 95 | /* Transfer 96 | --------------------------*/ 97 | } 98 | 99 | .el-row{ 100 | position: relative; 101 | box-sizing: border-box 102 | } 103 | 104 | .el-row--flex{ 105 | display: -ms-flexbox; 106 | display: flex 107 | } 108 | 109 | .el-row--flex:before, .el-row--flex:after{ 110 | display: none 111 | } 112 | 113 | .el-row--flex.is-align-bottom{ 114 | -ms-flex-align: end; 115 | align-items: flex-end 116 | } 117 | 118 | .el-row--flex.is-align-middle{ 119 | -ms-flex-align: center; 120 | align-items: center 121 | } 122 | 123 | .el-row--flex.is-justify-space-around{ 124 | -ms-flex-pack: distribute; 125 | justify-content: space-around 126 | } 127 | 128 | .el-row--flex.is-justify-space-between{ 129 | -ms-flex-pack: justify; 130 | justify-content: space-between 131 | } 132 | 133 | .el-row--flex.is-justify-end{ 134 | -ms-flex-pack: end; 135 | justify-content: flex-end 136 | } 137 | 138 | .el-row--flex.is-justify-center{ 139 | -ms-flex-pack: center; 140 | justify-content: center 141 | } 142 | :root{ 143 | /* Transition 144 | -------------------------- */ 145 | /* Colors 146 | -------------------------- */ 147 | /* Link 148 | -------------------------- */ 149 | /* Border 150 | -------------------------- */ 151 | /* Box-shadow 152 | -------------------------- */ 153 | /* Fill 154 | -------------------------- */ 155 | /* Font 156 | -------------------------- */ 157 | /* Size 158 | -------------------------- */ 159 | /* z-index 160 | -------------------------- */ 161 | /* Disable base 162 | -------------------------- */ 163 | /* Icon 164 | -------------------------- */ 165 | /* Checkbox 166 | -------------------------- */ 167 | /* Radio 168 | -------------------------- */ 169 | /* Select 170 | -------------------------- */ 171 | /* Alert 172 | -------------------------- */ 173 | /* Message Box 174 | -------------------------- */ 175 | /* Message 176 | -------------------------- */ 177 | /* Notification 178 | -------------------------- */ 179 | /* Input 180 | -------------------------- */ 181 | /* Cascader 182 | -------------------------- */ 183 | /* Group 184 | -------------------------- */ 185 | /* Tab 186 | -------------------------- */ 187 | /* Button 188 | -------------------------- */ 189 | /* cascader 190 | -------------------------- */ 191 | /* Switch 192 | -------------------------- */ 193 | /* Dialog 194 | -------------------------- */ 195 | /* Table 196 | -------------------------- */ 197 | /* Pagination 198 | -------------------------- */ 199 | /* Popover 200 | -------------------------- */ 201 | /* Tooltip 202 | -------------------------- */ 203 | /* Tag 204 | -------------------------- */ 205 | /* Dropdown 206 | -------------------------- */ 207 | /* Badge 208 | -------------------------- */ 209 | /* Card 210 | --------------------------*/ 211 | /* Slider 212 | --------------------------*/ 213 | /* Steps 214 | --------------------------*/ 215 | /* Menu 216 | --------------------------*/ 217 | /* Rate 218 | --------------------------*/ 219 | /* DatePicker 220 | --------------------------*/ 221 | /* Loading 222 | --------------------------*/ 223 | /* Scrollbar 224 | --------------------------*/ 225 | /* Carousel 226 | --------------------------*/ 227 | /* Collapse 228 | --------------------------*/ 229 | /* Transfer 230 | --------------------------*/ 231 | } --------------------------------------------------------------------------------