Merge branch '2.0' into anchor

This commit is contained in:
Lison 2018-06-20 11:00:05 +08:00 committed by GitHub
commit 754eedf571
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
156 changed files with 61134 additions and 18815 deletions

1
.gitignore vendored
View file

@ -17,7 +17,6 @@ npm-debug.log
*.swo *.swo
*.log *.log
examples/dist/ examples/dist/
dist/
yarn-error.log yarn-error.log
test/unit/coverage test/unit/coverage
.vscode .vscode

View file

@ -1,7 +1,7 @@
sudo: required sudo: required
language: node_js language: node_js
node_js: node_js:
- '6' - '8'
script: script:
- 'npm run test' - 'npm run test'
before_script: before_script:

View file

@ -41,8 +41,10 @@
- [TalkingData](http://www.talkingdata.com/) - [TalkingData](http://www.talkingdata.com/)
- [Alibaba](http://www.alibaba.com/) - [Alibaba](http://www.alibaba.com/)
- [Tencent](https://www.tencent.com/)
- [JD](http://www.jd.com/) - [JD](http://www.jd.com/)
- [DiDi](http://www.didichuxing.com/) - [DiDi](http://www.didichuxing.com/)
- [Meituan](http://www.meituan.com/)
- [Sina](http://www.sina.com.cn/) - [Sina](http://www.sina.com.cn/)
- [Lenovo](https://www.lenovo.com.cn/) - [Lenovo](https://www.lenovo.com.cn/)
@ -119,13 +121,13 @@ If you want to contribute or have questions or bugs to report:
[huanghong1125](https://github.com/huanghong1125) | ![](https://avatars3.githubusercontent.com/u/12794817?v=3&s=60) | [huanghong1125](https://github.com/huanghong1125) | ![](https://avatars3.githubusercontent.com/u/12794817?v=3&s=60) |
## Links ## Ecosystem Links
- [TalkingData](https://github.com/TalkingData) - [iView-Admin](https://github.com/iview/iview-admin)
- [Vue](https://github.com/vuejs/vue) - [iView-Doc](https://github.com/iview/iview-doc)
- [Webpack](https://github.com/webpack/webpack) - [iView-Cli](https://github.com/iview/iview-cli)
- [Ionicons](https://github.com/driftyco/ionicons) - [iView-Loader](https://github.com/iview/iview-loader)
- [Ant Design](https://github.com/ant-design/ant-design) - [iView-Area](https://github.com/iview/iview-area)
## License ## License
[MIT](http://opensource.org/licenses/MIT) [MIT](http://opensource.org/licenses/MIT)

View file

@ -1,6 +1,8 @@
const path = require('path'); const path = require('path');
const webpack = require('webpack'); const webpack = require('webpack');
const entry = require('./locale'); const entry = require('./locale');
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
process.env.NODE_ENV = 'production'; process.env.NODE_ENV = 'production';
module.exports = { module.exports = {
@ -40,7 +42,7 @@ module.exports = {
NODE_ENV: '"production"' NODE_ENV: '"production"'
} }
}), }),
new webpack.optimize.UglifyJsPlugin({ new UglifyJsPlugin({
parallel: true, parallel: true,
sourceMap: true, sourceMap: true,
}) })

View file

@ -3,6 +3,7 @@ const webpack = require('webpack');
const merge = require('webpack-merge'); const merge = require('webpack-merge');
const webpackBaseConfig = require('./webpack.base.config.js'); const webpackBaseConfig = require('./webpack.base.config.js');
const CompressionPlugin = require('compression-webpack-plugin'); const CompressionPlugin = require('compression-webpack-plugin');
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
process.env.NODE_ENV = 'production'; process.env.NODE_ENV = 'production';
@ -32,7 +33,7 @@ module.exports = merge(webpackBaseConfig, {
new webpack.DefinePlugin({ new webpack.DefinePlugin({
'process.env.NODE_ENV': '"production"' 'process.env.NODE_ENV': '"production"'
}), }),
new webpack.optimize.UglifyJsPlugin({ new UglifyJsPlugin({
parallel: true, parallel: true,
sourceMap: true, sourceMap: true,
}), }),

38284
dist/iview.js vendored Normal file

File diff suppressed because one or more lines are too long

1
dist/iview.js.map vendored Normal file

File diff suppressed because one or more lines are too long

26
dist/iview.min.js vendored Normal file

File diff suppressed because one or more lines are too long

BIN
dist/iview.min.js.gz vendored Normal file

Binary file not shown.

1
dist/iview.min.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/cs-CZ.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=2)}([function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){a||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,r=o(1);var a=((n=r)&&n.__esModule?n:{default:n}).default.prototype.$isServer},function(t,o){t.exports=e},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,r=o(0);var a={i:{locale:"cs-CZ",select:{placeholder:"Vybrat",noMatch:"Nenalezeny žádné položky",loading:"Nahrávám"},table:{noDataText:"Žádná data",noFilteredDataText:"Nenalezeny žádné položky",confirmFilter:"Potvrdit",resetFilter:"Reset",clearFilter:"Vše"},datepicker:{selectDate:"Vybrat datum",selectTime:"Vybrat čas",startTime:"Začátek",endTime:"Konec",clear:"Vymazat",ok:"OK",datePanelLabel:"[mmmm] [yyyy]",month:"Měsíc",month1:"Leden",month2:"Únor",month3:"Březen",month4:"Duben",month5:"Květen",month6:"Červen",month7:"Červenec",month8:"Srpen",month9:"Září",month10:"Říjen",month11:"Listopad",month12:"Prosinec",year:"Rok",weekStartDay:"1",weeks:{sun:"Ne",mon:"Po",tue:"Út",wed:"St",thu:"Čt",fri:"Pá",sat:"So"},months:{m1:"Led",m2:"Úno",m3:"Bře",m4:"Dub",m5:"Kvě",m6:"Čer",m7:"Čnc",m8:"Srp",m9:"Zář",m10:"Říj",m11:"Lis",m12:"Pro"}},transfer:{titles:{source:"Zdroj",target:"Cíl"},filterPlaceholder:"Hledat",notFoundText:"Nenalezeno"},modal:{okText:"OK",cancelText:"Zrušit"},poptip:{okText:"OK",cancelText:"Zrušit"},page:{prev:"Následující",next:"Předchozí",total:"Celkem",item:"položka",items:"položek",prev5:"Předchozích 5 stránek",next5:"Následujících 5 stránek",page:"na stránku",goto:"Jít na",p:""},rate:{star:"hvězda",stars:"hvězdy"},tree:{emptyText:"Žádná data"}}};(0,((n=r)&&n.__esModule?n:{default:n}).default)(a),t.default=a}])});
//# sourceMappingURL=cs-CZ.js.map

1
dist/locale/cs-CZ.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/de-DE.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/locale/",n(n.s=3)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var r,o=n(1);var i=((r=o)&&r.__esModule?r:{default:r}).default.prototype.$isServer},function(t,n){t.exports=e},,function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o=n(0);var i={i:{locale:"de-DE",select:{placeholder:"Auswählen",noMatch:"Keine Übereinstimmungen",loading:"Lädt"},table:{noDataText:"Keine Daten",noFilteredDataText:"Keine gefilterten Daten",confirmFilter:"Bestätigen",resetFilter:"Zurücksetzen",clearFilter:"Alle"},datepicker:{selectDate:"Datum auswählen",selectTime:"Zeit auswählen",startTime:"Beginn",endTime:"Ende",clear:"Leeren",ok:"OK",datePanelLabel:"[mmmm] [yyyy]",month:"Monat",month1:"Januar",month2:"Februar",month3:"März",month4:"April",month5:"Mai",month6:"Juni",month7:"Juli",month8:"August",month9:"September",month10:"Oktober",month11:"November",month12:"Dezember",year:"Jahr",weekStartDay:"1",weeks:{sun:"So",mon:"Mo",tue:"Di",wed:"Mi",thu:"Do",fri:"Fr",sat:"Sa"},months:{m1:"Jan",m2:"Feb",m3:"Mär",m4:"Apr",m5:"Mai",m6:"Jun",m7:"Jul",m8:"Aug",m9:"Sep",m10:"Okt",m11:"Nov",m12:"Dez"}},transfer:{titles:{source:"Quelle",target:"Ziel"},filterPlaceholder:"Suchen",notFoundText:"Nicht gefunden"},modal:{okText:"OK",cancelText:"Abbrechen"},poptip:{okText:"OK",cancelText:"Abbrechen"},page:{prev:"Vorherige Seite",next:"Nächste Seite",total:"Total",item:"Eintrag",items:"Einträge",prev5:"vorherigen fünf Seiten",next5:"nächste fünf Seiten",page:"/seite",goto:"Gehe zu",p:""},rate:{star:"Stern",stars:"Sterne"},tree:{emptyText:"Keine Daten"}}};(0,((r=o)&&r.__esModule?r:{default:r}).default)(i),t.default=i}])});
//# sourceMappingURL=de-DE.js.map

1
dist/locale/de-DE.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/el-GR.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=4)}([function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,r=o(1);var i=((n=r)&&n.__esModule?n:{default:n}).default.prototype.$isServer},function(t,o){t.exports=e},,,function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,r=o(0);var i={i:{locale:"el-GR",select:{placeholder:"Επιλογή",noMatch:"Δεν βρέθηκαν αποτελέσματα",loading:"Φόρτωση"},table:{noDataText:"Χωρίς δεδομένα",noFilteredDataText:"Χωρίς φίλτρο",confirmFilter:"Επιβεβαίωση",resetFilter:"Επαναφορά",clearFilter:"Όλα"},datepicker:{selectDate:"Επιλέξτε ημέρα",selectTime:"Επιλέξτε ώρα",startTime:"Ωρα Έναρξης",endTime:"Ωρα Λήξης",clear:"Καθαρισμός",ok:"Εντάξει",datePanelLabel:"[mmmm] [yyyy]",month:"Μήνας",month1:"Ιανουάριος",month2:"Φεβρουάριος",month3:"Μάρτιος",month4:"Απρίλιος",month5:"Μάιος",month6:"Ιούνιος",month7:"Ιούλιος",month8:"Αύγουστος",month9:"Σεπτέμβριος",month10:"Οκτώβριος",month11:"Νοέμβριος",month12:"Δεκέμβριος",year:"Έτος",weekStartDay:"1",weeks:{sun:"Κυρ",mon:"Δευ",tue:"Τρι",wed:"Τετ",thu:"Πεμ",fri:"Παρ",sat:"Σαβ"},months:{m1:"Ιαν",m2:"Φεβ",m3:"Μαρ",m4:"Απρ",m5:"Μαϊ",m6:"Ιουν",m7:"Ιουλ",m8:"Αυγ",m9:"Σεπ",m10:"Οκτ",m11:"Νοε",m12:"Δεκ"}},transfer:{titles:{source:"Πηγή",target:"Στόχος"},filterPlaceholder:"Αναζήτηση",notFoundText:"Δεν βρέθηκαν αποτελέσματα"},modal:{okText:"Εντάξει",cancelText:"Ακύρωση"},poptip:{okText:"Εντάξει",cancelText:"Ακύρωση"},page:{prev:"Προηγούμενη Σελίδα",next:"Επόμενη Σελίδα",total:"Σύνολο",item:"Αντικείμενο",items:"Αντικείμενα",prev5:"Προηγούμενες 5 Σελίδες",next5:"Επόμενες 5 Σελίδες",page:"/Σελίδα",goto:"Μετάβαση σε",p:""},rate:{star:"Αστέρι",stars:"Αστέρια"},tree:{emptyText:"Χωρίς Δεδομένα"}}};(0,((n=r)&&n.__esModule?n:{default:n}).default)(i),t.default=i}])});
//# sourceMappingURL=el-GR.js.map

1
dist/locale/el-GR.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/en-US.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,o),a.l=!0,a.exports}return o.m=e,o.c=t,o.d=function(e,t,r){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=5)}([function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){n||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var r,a=o(1);var n=((r=a)&&r.__esModule?r:{default:r}).default.prototype.$isServer},function(t,o){t.exports=e},,,,function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,a=o(0);var n={i:{locale:"en-US",select:{placeholder:"Select",noMatch:"No matching data",loading:"Loading"},table:{noDataText:"No Data",noFilteredDataText:"No filter data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All"},datepicker:{selectDate:"Select date",selectTime:"Select time",startTime:"Start Time",endTime:"End Time",clear:"Clear",ok:"OK",datePanelLabel:"[mmmm] [yyyy]",month:"Month",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",year:"Year",weekStartDay:"0",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},months:{m1:"Jan",m2:"Feb",m3:"Mar",m4:"Apr",m5:"May",m6:"Jun",m7:"Jul",m8:"Aug",m9:"Sep",m10:"Oct",m11:"Nov",m12:"Dec"}},transfer:{titles:{source:"Source",target:"Target"},filterPlaceholder:"Search here",notFoundText:"Not Found"},modal:{okText:"OK",cancelText:"Cancel"},poptip:{okText:"OK",cancelText:"Cancel"},page:{prev:"Previous Page",next:"Next Page",total:"Total",item:"item",items:"items",prev5:"Previous 5 Pages",next5:"Next 5 Pages",page:"/page",goto:"Goto",p:""},rate:{star:"Star",stars:"Stars"},tree:{emptyText:"No Data"}}};(0,((r=a)&&r.__esModule?r:{default:r}).default)(n),t.default=n}])});
//# sourceMappingURL=en-US.js.map

1
dist/locale/en-US.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/es-ES.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(r){if(t[r])return t[r].exports;var n=t[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,o),n.l=!0,n.exports}return o.m=e,o.c=t,o.d=function(e,t,r){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=6)}([function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var r,n=o(1);var i=((r=n)&&r.__esModule?r:{default:r}).default.prototype.$isServer},function(t,o){t.exports=e},,,,,function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,n=o(0);var i={i:{locale:"es-ES",select:{placeholder:"Seleccionar",noMatch:"Sin coincidencias",loading:"Cargando"},table:{noDataText:"Sin Datos",noFilteredDataText:"Sin Datos para el filtro",confirmFilter:"Aceptar",resetFilter:"Quitar filtro",clearFilter:"Todos"},datepicker:{selectDate:"Seleccionar fecha",selectTime:"Seleccionar hora",startTime:"Hora de inicio",endTime:"Hora de fin",clear:"Limpiar",ok:"Aceptar",datePanelLabel:"[mmmm] [yyyy]",month:"Mes",month1:"Enero",month2:"Febrero",month3:"Marzo",month4:"Abril",month5:"Mayo",month6:"Junio",month7:"Julio",month8:"Augosto",month9:"Septiembre",month10:"Octubre",month11:"Noviembre",month12:"Diciembre",year:"Año",weekStartDay:"1",weeks:{sun:"Dom",mon:"Lun",tue:"Mar",wed:"Mié",thu:"Jue",fri:"Vie",sat:"Sáb"},months:{m1:"Ene",m2:"Feb",m3:"Mar",m4:"Abr",m5:"May",m6:"Jun",m7:"Jul",m8:"Ago",m9:"Sep",m10:"Oct",m11:"Nov",m12:"Dic"}},transfer:{titles:{source:"Origen",target:"Destino"},filterPlaceholder:"Buscar aquí",notFoundText:"Sin resultados"},modal:{okText:"Aceptar",cancelText:"Cancelar"},poptip:{okText:"Aceptar",cancelText:"Cancelar"},page:{prev:"Página Anterior",next:"Página Siguiente",total:"Total",item:"Elemento",items:"Elementos",prev5:"5 Páginas Anteriores",next5:"5 Páginas Siguientes",page:"/page",goto:"Ir a",p:""},rate:{star:"Estrella",stars:"Estrellas"},tree:{emptyText:"Sin Datos"}}};(0,((r=n)&&r.__esModule?r:{default:r}).default)(i),t.default=i}])});
//# sourceMappingURL=es-ES.js.map

1
dist/locale/es-ES.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/fa-IR.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(r){if(t[r])return t[r].exports;var n=t[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,o),n.l=!0,n.exports}return o.m=e,o.c=t,o.d=function(e,t,r){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=7)}([function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){a||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var r,n=o(1);var a=((r=n)&&r.__esModule?r:{default:r}).default.prototype.$isServer},function(t,o){t.exports=e},,,,,,function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,n=o(0);var a={i:{locale:"fa-IR",select:{placeholder:"انتخاب‌ کنید",noMatch:"یافت نشد",loading:"در‌حال بارگذاری"},table:{noDataText:"اطلاعاتی موجود نیست",noFilteredDataText:"بدون اطلاعات فیلترشده",confirmFilter:"تایید",resetFilter:"بازنشانی",clearFilter:"همه"},datepicker:{selectDate:"انتخاب تاریخ",selectTime:"انتخاب زمان",startTime:"تاریخ شروع",endTime:"تاریخ پایان",clear:"پاکسازی",ok:"تایید",datePanelLabel:"[mmmm] [yyyy]",month:"ماه",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",year:"سال",weekStartDay:"0",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},months:{m1:"Jan",m2:"Feb",m3:"Mar",m4:"Apr",m5:"May",m6:"Jun",m7:"Jul",m8:"Aug",m9:"Sep",m10:"Oct",m11:"Nov",m12:"Dec"}},transfer:{titles:{source:"منبع",target:"هدف"},filterPlaceholder:"اینجا جستجو کنید",notFoundText:"پیدا نشد"},modal:{okText:"تایید",cancelText:"لغو"},poptip:{okText:"تایید",cancelText:"لغو"},page:{prev:"صفحه قبلی",next:"صفحه بعدی",total:"مجموع",item:"داده",items:"داده‌ها",prev5:"۵ صفحه قبلی",next5:"۵ صفحه بعدی",page:"/صفحه",goto:"برو‌به",p:""},rate:{star:"ستاره",stars:"ستاره‌ها"},tree:{emptyText:"بدون اطلاعات"}}};(0,((r=n)&&r.__esModule?r:{default:r}).default)(a),t.default=a}])});
//# sourceMappingURL=fa-IR.js.map

1
dist/locale/fa-IR.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/fr-FR.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/locale/",n(n.s=8)}({0:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){a||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var r,o=n(1);var a=((r=o)&&r.__esModule?r:{default:r}).default.prototype.$isServer},1:function(t,n){t.exports=e},8:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o=n(0);var a={i:{locale:"fr-FR",select:{placeholder:"Sélectionnez",noMatch:"Aucun résultat",loading:"Chargement"},table:{noDataText:"Aucune donnée",noFilteredDataText:"No filter data",confirmFilter:"Confirmez",resetFilter:"Reset",clearFilter:"Tout"},datepicker:{selectDate:"Sélectionnez une date",selectTime:"Sélectionnez une heure",startTime:"Heure de début",endTime:"Heure de fin",clear:"Annuler",ok:"OK",datePanelLabel:"[mmmm] [yyyy]",month:"Mois",month1:"Janvier",month2:"Février",month3:"Mars",month4:"Avril",month5:"Mai",month6:"Juin",month7:"Juillet",month8:"Août",month9:"Septembre",month10:"Octobre",month11:"Novembre",month12:"Decembre",year:"An",weekStartDay:"1",weeks:{sun:"Dim",mon:"Lun",tue:"Mar",wed:"Mer",thu:"Jeu",fri:"Ven",sat:"Sam"},months:{m1:"Jan",m2:"Fev",m3:"Mar",m4:"Avr",m5:"Mai",m6:"Jun",m7:"Jul",m8:"Aoû",m9:"Sep",m10:"Oct",m11:"Nov",m12:"Déc"}},transfer:{titles:{source:"Source",target:"Cible"},filterPlaceholder:"Recherche",notFoundText:"Pas de résultat"},modal:{okText:"OK",cancelText:"Annuler"},poptip:{okText:"OK",cancelText:"Annuler"},page:{prev:"Page Précédente",next:"Page Suivante",total:"Total",item:"élément",items:"éléments",prev5:"5 Pages en Avant",next5:"5 Pages en Arrière",page:"/page",goto:"Aller à",p:""},rate:{star:"Étoile",stars:"Étoiles"},tree:{emptyText:"Aucune donnée"}}};(0,((r=o)&&r.__esModule?r:{default:r}).default)(a),t.default=a}})});
//# sourceMappingURL=fr-FR.js.map

1
dist/locale/fr-FR.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/hi-IN.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=9)}({0:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,r=o(1);var i=((n=r)&&n.__esModule?n:{default:n}).default.prototype.$isServer},1:function(t,o){t.exports=e},9:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,r=o(0);var i={i:{locale:"hi-IN",select:{placeholder:"कृपया चुने|",noMatch:"कोई आकड़ा उपलब्ध नहीं है|",loading:"लोड हो रहा है"},table:{noDataText:"कोई आकड़ा उपलब्ध नहीं है",noFilteredDataText:"कोई आकड़ा उपलब्ध नहीं है",confirmFilter:"पुष्टि करें",resetFilter:"पुनः तैयार करना",clearFilter:"सब कुछ"},datepicker:{selectDate:"दिनांक चुनें",selectTime:"समय चुनें",startTime:"प्रारंभ समय",endTime:"समाप्ति समय",clear:"साफ़ करें",ok:"ठीक",datePanelLabel:"[mmmm] [yyyy]",month:"महीना",month1:"जनवरी",month2:"फरवरी",month3:"मार्च",month4:"अप्रैल",month5:"मई",month6:"जून",month7:"जुलाई",month8:"अगस्त",month9:"सितंबर",month10:"अक्टूबर",month11:"नवंबर",month12:"दिसंबर",year:"साल",weekStartDay:"0",weeks:{sun:"रविवार",mon:"सोमवार",tue:"मंगलवार",wed:"बुधवार",thu:"गुरुवार",fri:"शुक्रवार",sat:"शनिवार"},months:{m1:"जनवरी",m2:"फरवरी",m3:"मार्च",m4:"अप्रैल",m5:"मई",m6:"जून",m7:"जुलाई",m8:"अगस्त",m9:"सितंबर",m10:"अक्टूबर",m11:"नवंबर",m12:"दिसंबर"}},transfer:{titles:{source:"स्रोत",target:"लक्ष्य"},filterPlaceholder:"यहां खोजें",notFoundText:"कोई आकड़ा उपलब्ध नहीं है"},modal:{okText:"ठीक",cancelText:"निरस्त करना"},poptip:{okText:"ठीक",cancelText:"निरस्त करना"},page:{prev:"पिछला पेज",next:"अगला पेज",total:"समस्त",item:"एक चीज",items:"अनेक चीज",prev5:"पिछला 5 पेज",next5:"अगला 5 पेज",page:"/page",goto:"जाओ",p:""},rate:{star:"प्रसिद्ध",stars:"प्रसिद्ध"},tree:{emptyText:"कोई आकड़ा उपलब्ध नहीं है"}}};(0,((n=r)&&n.__esModule?n:{default:n}).default)(i),t.default=i}})});
//# sourceMappingURL=hi-IN.js.map

1
dist/locale/hi-IN.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/id-ID.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function a(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,a),i.l=!0,i.exports}return a.m=e,a.c=t,a.d=function(e,t,n){a.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="/dist/locale/",a(a.s=10)}({0:function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){r||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,i=a(1);var r=((n=i)&&n.__esModule?n:{default:n}).default.prototype.$isServer},1:function(t,a){t.exports=e},10:function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,i=a(0);var r={i:{locale:"id-ID",select:{placeholder:"Pilih",noMatch:"Tidak ada data yang cocok",loading:"Memuat"},table:{noDataText:"Tidak ada data",noFilteredDataText:"Tidak ada data filter",confirmFilter:"Konfirmasi",resetFilter:"Tata ulang",clearFilter:"Semua"},datepicker:{selectDate:"Pilih tanggal",selectTime:"Pilih waktu",startTime:"Waktu Mulai",endTime:"Waktu Selesai",clear:"Bersihkan",ok:"OK",datePanelLabel:"[mmmm] [yyyy]",month:"",month1:"Januari",month2:"Februari",month3:"Maret",month4:"April",month5:"Mei",month6:"Juni",month7:"Juli",month8:"Agustus",month9:"September",month10:"Oktober",month11:"November",month12:"Desember",year:"",weekStartDay:"1",weeks:{sun:"Min",mon:"Sen",tue:"Sel",wed:"Rab",thu:"Kam",fri:"Jum",sat:"Sab"},months:{m1:"Jan",m2:"Feb",m3:"Mar",m4:"Apr",m5:"Mei",m6:"Jun",m7:"Jul",m8:"Agu",m9:"Sep",m10:"Okt",m11:"Nov",m12:"Dec"}},transfer:{titles:{source:"Sumber",target:"Tujuan"},filterPlaceholder:"Cari disini",notFoundText:"Tidak ditemukan"},modal:{okText:"OK",cancelText:"Batal"},poptip:{okText:"OK",cancelText:"Batal"},page:{prev:"Halaman Sebelumnya",next:"Halaman Selanjutnya",total:"Total",item:"butir",items:"butir",prev5:"5 Halaman Sebelumnya",next5:"5 Halaman Selanjutnya",page:"/page",goto:"Pergi ke",p:""},rate:{star:"Star",stars:"Stars"},tree:{emptyText:"Tidak ada data"}}};(0,((n=i)&&n.__esModule?n:{default:n}).default)(r),t.default=r}})});
//# sourceMappingURL=id-ID.js.map

1
dist/locale/id-ID.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/it-IT.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,o),i.l=!0,i.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=11)}({0:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){a||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,i=o(1);var a=((n=i)&&n.__esModule?n:{default:n}).default.prototype.$isServer},1:function(t,o){t.exports=e},11:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,i=o(0);var a={i:{locale:"it-IT",select:{placeholder:"Seleziona",noMatch:"Nessun Risultato",loading:"Caricamento"},table:{noDataText:"Nessun Risultato",noFilteredDataText:"Filtro senza risultati",confirmFilter:"Conferma",resetFilter:"Reset",clearFilter:"Tutto"},datepicker:{selectDate:"Seleziona data",selectTime:"Seleziona orario",startTime:"Orario inizio",endTime:"Orario fine",clear:"Annulla",ok:"OK",datePanelLabel:"[mmmm] [yyyy]",month:"Mese",month1:"Gennaio",month2:"Febbraio",month3:"Marzo",month4:"Aprile",month5:"Maggio",month6:"Giugno",month7:"Luglio",month8:"Agosto",month9:"Settembre",month10:"Ottobre",month11:"Novembre",month12:"Dicembre",year:"Anno",weekStartDay:"1",weeks:{sun:"Dom",mon:"Lun",tue:"Mar",wed:"Mer",thu:"Gio",fri:"Ven",sat:"Sab"},months:{m1:"Gen",m2:"Feb",m3:"Mar",m4:"Apr",m5:"Mag",m6:"Giu",m7:"Lug",m8:"Ago",m9:"Set",m10:"Ott",m11:"Nov",m12:"Dic"}},transfer:{titles:{source:"Origine",target:"Destinazione"},filterPlaceholder:"Cerca",notFoundText:"Nessun Risultato"},modal:{okText:"OK",cancelText:"Annulla"},poptip:{okText:"OK",cancelText:"Annulla"},page:{prev:"Pagina Precedente",next:"Pagina Successiva",total:"Totale",item:"elemento",items:"elementi",prev5:"5 Pagine Precedenti",next5:"5 Pagine Successive",page:"/pagina",goto:"Vai a",p:""},rate:{star:"Stella",stars:"Stelle"},tree:{emptyText:"Nessun Risultato"}}};(0,((n=i)&&n.__esModule?n:{default:n}).default)(a),t.default=a}})});
//# sourceMappingURL=it-IT.js.map

1
dist/locale/it-IT.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/ja-JP.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=12)}({0:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,r=o(1);var i=((n=r)&&n.__esModule?n:{default:n}).default.prototype.$isServer},1:function(t,o){t.exports=e},12:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,r=o(0);var i={i:{locale:"ja-JP",select:{placeholder:"選んでください",noMatch:"マッチするデータなし",loading:"ロード中"},table:{noDataText:"データなし",noFilteredDataText:"スクリーニングしたデータなし",confirmFilter:"スクリーニング",resetFilter:"リセット",clearFilter:"全部"},datepicker:{selectDate:"日時を選んでください",selectTime:"時間を選んでください",startTime:"スタート時間",endTime:"終了時間",clear:"クリーア",ok:"確定",datePanelLabel:"[yyyy年] [m月]",month:"月",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",year:"年",weekStartDay:"0",weeks:{sun:"日",mon:"月",tue:"火",wed:"水",thu:"木",fri:"金",sat:"土"},months:{m1:"1月",m2:"2月",m3:"3月",m4:"4月",m5:"5月",m6:"6月",m7:"7月",m8:"8月",m9:"9月",m10:"10月",m11:"11月",m12:"12月"}},transfer:{titles:{source:"ソースリスト",target:"ターゲットリスト"},filterPlaceholder:"検索内容を入力ください",notFoundText:"内容が見つかってなかった"},modal:{okText:"確定",cancelText:"キャンセル"},poptip:{okText:"確定",cancelText:"キャンセル"},page:{prev:"前へ",next:"次へ",total:"全部",item:"件",items:"件",prev5:"前の5ページへ",next5:"次の5ページへ",page:"件/ページ",goto:"",p:"ページ目へ"},rate:{star:"点",stars:"点"},tree:{emptyText:"データなし"}}};(0,((n=r)&&n.__esModule?n:{default:n}).default)(i),t.default=i}})});
//# sourceMappingURL=ja-JP.js.map

1
dist/locale/ja-JP.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/ko-KR.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=13)}({0:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,r=o(1);var i=((n=r)&&n.__esModule?n:{default:n}).default.prototype.$isServer},1:function(t,o){t.exports=e},13:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,r=o(0);var i={i:{locale:"ko-KR",select:{placeholder:"선택",noMatch:"일치하는 데이터 없음",loading:"로딩"},table:{noDataText:"데이터 없음",noFilteredDataText:"필터된 데이터 없음",confirmFilter:"확인",resetFilter:"초기화",clearFilter:"전부"},datepicker:{selectDate:"날짜 선택",selectTime:"시간 선택",startTime:"시작 시간",endTime:"종료 시간",clear:"삭제",ok:"예",datePanelLabel:"[yyyy년] [m월]",month:"월",month1:"1월",month2:"2월",month3:"3월",month4:"4월",month5:"5월",month6:"6월",month7:"7월",month8:"8월",month9:"9월",month10:"10월",month11:"11월",month12:"12월",year:"년",weekStartDay:"0",weeks:{sun:"일",mon:"월",tue:"화",wed:"수",thu:"목",fri:"금",sat:"토"},months:{m1:"1월",m2:"2월",m3:"3월",m4:"4월",m5:"5월",m6:"6월",m7:"7월",m8:"8월",m9:"9월",m10:"10월",m11:"11월",m12:"12월"}},transfer:{titles:{source:"소스",target:"타겟"},filterPlaceholder:"여기서 찾기",notFoundText:"아무 것도 찾을 수 없음"},modal:{okText:"예",cancelText:"취소"},poptip:{okText:"예",cancelText:"취소"},page:{prev:"이전 페이지",next:"다음 페이지",total:"전체",item:"항목",items:"항목",prev5:"이전 5 페이지",next5:"다음 5 페이지",page:"/페이지",goto:"이동",p:""},rate:{star:"중요",stars:"중요"},tree:{emptyText:"데이터 없음"}}};(0,((n=r)&&n.__esModule?n:{default:n}).default)(i),t.default=i}})});
//# sourceMappingURL=ko-KR.js.map

1
dist/locale/ko-KR.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/nl-NL.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:o})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/locale/",n(n.s=14)}({0:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){a||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var o,r=n(1);var a=((o=r)&&o.__esModule?o:{default:o}).default.prototype.$isServer},1:function(t,n){t.exports=e},14:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o,r=n(0);var a={i:{locale:"nl-NL",select:{placeholder:"Selecteer",noMatch:"Geen overeenkomsten",loading:"Laden"},table:{noDataText:"Geen data",noFilteredDataText:"Geen gefilterde data",confirmFilter:"Bevestig",resetFilter:"Herstel",clearFilter:"Alles"},datepicker:{selectDate:"Selecteer datum",selectTime:"Selecteer tijd",startTime:"Begin tijd",endTime:"Eind tijd",clear:"Herstel",ok:"Ok",datePanelLabel:"[mm] [yyyy]",month:"Maand",month1:"Januari",month2:"Februari",month3:"Maart",month4:"April",month5:"Mei",month6:"Juni",month7:"Juli",month8:"Augustus",month9:"September",month10:"Oktober",month11:"November",month12:"December",year:"Jaar",weekStartDay:"1",weeks:{sun:"Zon",mon:"Maa",tue:"Din",wed:"Woe",thu:"Don",fri:"Vri",sat:"Zat"},months:{m1:"Jan",m2:"Feb",m3:"Mar",m4:"Apr",m5:"Mei",m6:"Jun",m7:"Jul",m8:"Aug",m9:"Sep",m10:"Okt",m11:"Nov",m12:"Dec"}},transfer:{titles:{source:"Bron",target:"Doel"},filterPlaceholder:"Zoeken",notFoundText:"Niet gevonden"},modal:{okText:"Ok",cancelText:"Annuleren"},poptip:{okText:"Ok",cancelText:"Annuleren"},page:{prev:"Vorige pagina",next:"Volgende pagina",total:"Totaal",item:"item",items:"items",prev5:"Vorige 5 pagina's",next5:"Volgende 5 pagina's",page:"/pagina",goto:"Ga",p:""},rate:{star:"Ster",stars:"Sterren"},tree:{emptyText:"Geen data"}}};(0,((o=r)&&o.__esModule?o:{default:o}).default)(a),t.default=a}})});
//# sourceMappingURL=nl-NL.js.map

1
dist/locale/nl-NL.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/pt-BR.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,o),a.l=!0,a.exports}return o.m=e,o.c=t,o.d=function(e,t,r){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=15)}({0:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){n||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var r,a=o(1);var n=((r=a)&&r.__esModule?r:{default:r}).default.prototype.$isServer},1:function(t,o){t.exports=e},15:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,a=o(0);var n={i:{locale:"pt-BR",select:{placeholder:"Selecionar",noMatch:"Não encontrado",loading:"Carregando"},table:{noDataText:"Sem dados",noFilteredDataText:"Sem dados filtrados",confirmFilter:"Confirmar",resetFilter:"Limpar",clearFilter:"Todos"},datepicker:{selectDate:"Selecione a data",selectTime:"Selecione a hora",startTime:"Hora inicial",endTime:"Hora final",clear:"Limpar",ok:"Confirmar",datePanelLabel:"[mmmm] de [yyyy]",month:"Mês",month1:"Janeiro",month2:"Fevereiro",month3:"Março",month4:"Abril",month5:"Maio",month6:"Junho",month7:"Julho",month8:"Agosto",month9:"Setembro",month10:"Outubro",month11:"Novembro",month12:"Dezembro",year:"Ano",weekStartDay:"0",weeks:{sun:"Dom",mon:"Seg",tue:"Ter",wed:"Qua",thu:"Qui",fri:"Sex",sat:"Sáb"},months:{m1:"Jan",m2:"Fev",m3:"Mar",m4:"Abr",m5:"Mai",m6:"Jun",m7:"Jul",m8:"Ago",m9:"Set",m10:"Out",m11:"Nov",m12:"Dez"}},transfer:{titles:{source:"Origem",target:"Destino"},filterPlaceholder:"Pesquise aqui",notFoundText:"Não encontrado"},modal:{okText:"Confirmar",cancelText:"Cancelar"},poptip:{okText:"Confirmar",cancelText:"Cancelar"},page:{prev:"Página Anterior",next:"Próxima Página",total:"Total",item:"item",items:"itens",prev5:"Voltar 5 Páginas",next5:"Avançar 5 Páginas",page:"/page",goto:"Ir para",p:""},rate:{star:"Estrela",stars:"Estrelas"},tree:{emptyText:"Sem dados"}}};(0,((r=a)&&r.__esModule?r:{default:r}).default)(n),t.default=n}})});
//# sourceMappingURL=pt-BR.js.map

1
dist/locale/pt-BR.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/pt-PT.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,o),a.l=!0,a.exports}return o.m=e,o.c=t,o.d=function(e,t,r){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=16)}({0:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){n||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var r,a=o(1);var n=((r=a)&&r.__esModule?r:{default:r}).default.prototype.$isServer},1:function(t,o){t.exports=e},16:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,a=o(0);var n={i:{locale:"pt-PT",select:{placeholder:"Selecionar",noMatch:"Não encontrado",loading:"A carregar"},table:{noDataText:"Sem dados",noFilteredDataText:"Sem dados filtrados",confirmFilter:"Confirmar",resetFilter:"Limpar",clearFilter:"Todos"},datepicker:{selectDate:"Selecione a data",selectTime:"Selecione a hora",startTime:"Hora inicial",endTime:"Hora final",clear:"Limpar",ok:"Confirmar",datePanelLabel:"[mmmm] de [yyyy]",month:"Mês",month1:"Janeiro",month2:"Fevereiro",month3:"Março",month4:"Abril",month5:"Maio",month6:"Junho",month7:"Julho",month8:"Agosto",month9:"Setembro",month10:"Outubro",month11:"Novembro",month12:"Dezembro",year:"Ano",weekStartDay:"1",weeks:{sun:"Dom",mon:"Seg",tue:"Ter",wed:"Qua",thu:"Qui",fri:"Sex",sat:"Sáb"},months:{m1:"Jan",m2:"Fev",m3:"Mar",m4:"Abr",m5:"Mai",m6:"Jun",m7:"Jul",m8:"Ago",m9:"Set",m10:"Out",m11:"Nov",m12:"Dez"}},transfer:{titles:{source:"Origem",target:"Destino"},filterPlaceholder:"Pesquise aqui",notFoundText:"Não encontrado"},modal:{okText:"Confirmar",cancelText:"Cancelar"},poptip:{okText:"Confirmar",cancelText:"Cancelar"},page:{prev:"Página anterior",next:"Próxima página",total:"Total",item:"item",items:"itens",prev5:"Voltar 5 páginas",next5:"Avançar 5 páginas",page:"/page",goto:"Ir para",p:""},rate:{star:"Estrela",stars:"Estrelas"},tree:{emptyText:"Sem dados"}}};(0,((r=a)&&r.__esModule?r:{default:r}).default)(n),t.default=n}})});
//# sourceMappingURL=pt-PT.js.map

1
dist/locale/pt-PT.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/ro-RO.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/locale/",n(n.s=17)}({0:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var r,a=n(1);var i=((r=a)&&r.__esModule?r:{default:r}).default.prototype.$isServer},1:function(t,n){t.exports=e},17:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,a=n(0);var i={i:{locale:"ro-RO",select:{placeholder:"Selectează",noMatch:"Niciun rezultat",loading:"Încărcare"},table:{noDataText:"Fără date",noFilteredDataText:"Filtru fără rezultate",confirmFilter:"Confirmă",resetFilter:"Resetează",clearFilter:"Tot"},datepicker:{selectDate:"Selectează data",selectTime:"Selectează timpul",startTime:"Ora inițială",endTime:"Ora finală",clear:"Anulează",ok:"OK",datePanelLabel:"[mmmm] [yyyy]",month:"Lună",month1:"Ianuarie",month2:"Februarie",month3:"Martie",month4:"Aprilia",month5:"Mai",month6:"Iunie",month7:"Iulie",month8:"August",month9:"Septembrie",month10:"Octombrie",month11:"Noiembrie",month12:"Decembrie",year:"An",weekStartDay:"1",weeks:{sun:"Dum",mon:"Lun",tue:"Mar",wed:"Mie",thu:"Joi",fri:"Vin",sat:"Sâm"},months:{m1:"Ian",m2:"Feb",m3:"Mar",m4:"Apr",m5:"Mai",m6:"Iun",m7:"Iul",m8:"Aug",m9:"Sep",m10:"Oct",m11:"Noi",m12:"Dec"}},transfer:{titles:{source:"Origine",target:"Destinație"},filterPlaceholder:"Caută",notFoundText:"Niciun rezultat"},modal:{okText:"OK",cancelText:"Renunță"},poptip:{okText:"OK",cancelText:"Renunță"},page:{prev:"Pagina precedentă",next:"Pagina urmatoare",total:"Total",item:"element",items:"elemente",prev5:"5 Pagini precedente",next5:"Urmatoarele 5 Pagini",page:"/pagina",goto:"Du-te la",p:""},rate:{star:"Stea",stars:"Stele"},tree:{emptyText:"Fără date"}}};(0,((r=a)&&r.__esModule?r:{default:r}).default)(i),t.default=i}})});
//# sourceMappingURL=ro-RO.js.map

1
dist/locale/ro-RO.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/ru-RU.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=18)}({0:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,r=o(1);var i=((n=r)&&n.__esModule?n:{default:n}).default.prototype.$isServer},1:function(t,o){t.exports=e},18:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,r=o(0);var i={i:{locale:"ru-RU",select:{placeholder:"Выбрать",noMatch:"Нет соответствующих данных",loading:"Загрузка"},table:{noDataText:"Нет данных",noFilteredDataText:"Нет данных по фильтру",confirmFilter:"Подтвердить",resetFilter:"Сброс",clearFilter:"Все"},datepicker:{selectDate:"Выбрать дату",selectTime:"Выбрать время",startTime:"Начальное время",endTime:"Конечное время",clear:"Очистить",ok:"OK",datePanelLabel:"[Mmmm] [yyyy]",month:"",month1:"Январь",month2:"Февраль",month3:"Март",month4:"Апрель",month5:"Май",month6:"Июнь",month7:"Июль",month8:"Август",month9:"Сентябрь",month10:"Октябрь",month11:"Ноябрь",month12:"Декабрь",year:"",weekStartDay:"1",weeks:{sun:"Вс",mon:"Пн",tue:"Вт",wed:"Ср",thu:"Чт",fri:"Пт",sat:"Сб"},months:{m1:"Янв",m2:"Фев",m3:"Мар",m4:"Апр",m5:"Май",m6:"Июн",m7:"Июл",m8:"Авг",m9:"Сен",m10:"Окт",m11:"Ноя",m12:"Дек"}},transfer:{titles:{source:"Источник",target:"Цель"},filterPlaceholder:"Искать здесь",notFoundText:"Не Найдено"},modal:{okText:"OK",cancelText:"Отменить"},poptip:{okText:"OK",cancelText:"Отменить"},page:{prev:"Пред. страница",next:"След. страница",total:"Всего",item:"пункт",items:"пункты",prev5:"Пред. 5 страниц",next5:"След. 5 страниц",page:"/page",goto:"Идти к",p:""},rate:{star:"Звезда",stars:"Звезды"},tree:{emptyText:"Нет данных"}}};(0,((n=r)&&n.__esModule?n:{default:n}).default)(i),t.default=i}})});
//# sourceMappingURL=ru-RU.js.map

1
dist/locale/ru-RU.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/sv-SE.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="/dist/locale/",r(r.s=19)}({0:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){a||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,o=r(1);var a=((n=o)&&n.__esModule?n:{default:n}).default.prototype.$isServer},1:function(t,r){t.exports=e},19:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,o=r(0);var a={i:{locale:"sv-SE",select:{placeholder:"Välj",noMatch:"Ingen träff",loading:"Laddar"},table:{noDataText:"Ingen data",noFilteredDataText:"Ingen filter data",confirmFilter:"Bekräfta",resetFilter:"Återställ filter",clearFilter:"Rensa filter"},datepicker:{selectDate:"Välj datum",selectTime:"Välj tidpunkt",startTime:"Start tid",endTime:"Slut tid",clear:"Rensa",ok:"Ok",datePanelLabel:"[mmmm] [yyyy]",month:"Månad",month1:"Januari",month2:"Februari",month3:"Mars",month4:"April",month5:"Maj",month6:"Juni",month7:"Juli",month8:"Augusti",month9:"September",month10:"Oktober",month11:"November",month12:"December",year:"År",weekStartDay:"1",weeks:{sun:"Sön",mon:"Mån",tue:"Tis",wed:"Ons",thu:"Tor",fri:"Fre",sat:"Lör"},months:{m1:"Jan",m2:"Feb",m3:"Mar",m4:"Apr",m5:"Maj",m6:"Jun",m7:"Jul",m8:"Aug",m9:"Sep",m10:"Okt",m11:"Nov",m12:"Dec"}},transfer:{titles:{source:"Källa",target:"Mål"},filterPlaceholder:"Sök här",notFoundText:"Hittade inte"},modal:{okText:"Ok",cancelText:"Avbryt"},poptip:{okText:"Ok",cancelText:"Avbryt"},page:{prev:"Föregående sida",next:"Nästa sida",total:"Totalt",item:"objekt",items:"objekt",prev5:"Föregående 5 sidor",next5:"Nästa 5 sidor",page:"/page",goto:"Gå till",p:""},rate:{star:"Stjärna",stars:"Stjärnor"},tree:{emptyText:"Ingen data"}}};(0,((n=o)&&n.__esModule?n:{default:n}).default)(a),t.default=a}})});
//# sourceMappingURL=sv-SE.js.map

1
dist/locale/sv-SE.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/th-TH.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=20)}({0:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,r=o(1);var i=((n=r)&&n.__esModule?n:{default:n}).default.prototype.$isServer},1:function(t,o){t.exports=e},20:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,r=o(0);var i={i:{locale:"th-TH",select:{placeholder:"ตัวเลือก",noMatch:"ข้อมูลไม่ตรงกัน",loading:"ดาวน์โหลด"},table:{noDataText:"ไม่พบข้อมูล",noFilteredDataText:"ไม่พบตัวกรองข้อมูล",confirmFilter:"ยืนยัน",resetFilter:"รีเซ็ต",clearFilter:"ทั้งหมด"},datepicker:{selectDate:"เลือกวัน",selectTime:"เลือกเวลา",startTime:"เริ่มเวลา",endTime:"สิ้นสุดเวลา",clear:"ล้างข้อมูล",ok:"ตกลง",datePanelLabel:"[mmmm] [yyyy]",month:"เดือน",month1:"มกราตม",month2:"กุมภาพันธ์",month3:"มีนาคม",month4:"เมษายน",month5:"พฤษภาคม",month6:"มิถุนายน",month7:"กรกฎาคม",month8:"สิงหาคม",month9:"กันยายน",month10:"ตุลาคม",month11:"พฤศจิกายน",month12:"ธันวาคม",year:"ปี",weekStartDay:"0",weeks:{sun:"อาทิตย์",mon:"จันทร์",tue:"อังคาร",wed:"พุธ",thu:"พฤหัสบดี",fri:"ศุกร์",sat:"เสาร์"},months:{m1:"ม.ค.",m2:"ก.พ.",m3:"มี.ค.",m4:"เม.ย.",m5:"พ.ค.",m6:"มิ.ย.",m7:"ก.ค.",m8:"ส.ค.",m9:"ก.ย.",m10:"ต.ค.",m11:"พ.ย.",m12:"ธ.ค."}},transfer:{titles:{source:"แหล่งข้อมูล",target:"เป้าหมาย"},filterPlaceholder:"ค้นหาที่นี้",notFoundText:"ค้นหาไม่พบ"},modal:{okText:"ตกลง",cancelText:"ยกเลิก"},poptip:{okText:"ตกลง",cancelText:"ยกเลิก"},page:{prev:"หน้าก่อน",next:"หน้าถัดไป",total:"ทั้งหมด",item:"ไอเทม",items:"ไอเทม",prev5:"ก่อน 5 หน้า",next5:"ถัดไป 5 หน้า",page:"/หน้า",goto:"ไปยัง",p:"หน้า"},rate:{star:"ดวง",stars:"ดวง"},tree:{emptyText:"ไม่พบข้อมูล"}}};(0,((n=r)&&n.__esModule?n:{default:n}).default)(i),t.default=i}})});
//# sourceMappingURL=th-TH.js.map

1
dist/locale/th-TH.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/tr-TR.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function a(o){if(t[o])return t[o].exports;var n=t[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,a),n.l=!0,n.exports}return a.m=e,a.c=t,a.d=function(e,t,o){a.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:o})},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="/dist/locale/",a(a.s=21)}({0:function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){r||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var o,n=a(1);var r=((o=n)&&o.__esModule?o:{default:o}).default.prototype.$isServer},1:function(t,a){t.exports=e},21:function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o,n=a(0);var r={i:{locale:"tr-TR",select:{placeholder:"Seç",noMatch:"Eşleşen veri yok",loading:"yükleme"},table:{noDataText:"Veri Yok",noFilteredDataText:"Süzülen veri yok",confirmFilter:"Onayla",resetFilter:"Sıfırla",clearFilter:"Hepsi"},datepicker:{selectDate:"Tarih seç",selectTime:"Zaman seç",startTime:"Başlangıç",endTime:"Bitişe",clear:"Temizle",ok:"Tamam",datePanelLabel:"[mmmm] [yyyy]",month:"",month1:"Ocak",month2:"Şubat",month3:"Mart",month4:"Nisan",month5:"Mayıs",month6:"Haziran",month7:"Temmuz",month8:"Ağustos",month9:"Eylül",month10:"Ekim",month11:"Kasım",month12:"Aralık",year:"",weekStartDay:"0",weeks:{sun:"Paz",mon:"Pzt",tue:"Sal",wed:"Çar",thu:"Per",fri:"Cum",sat:"Cmt"},months:{m1:"Oca",m2:"Şub",m3:"Mar",m4:"Nis",m5:"May",m6:"Haz",m7:"Tem",m8:"Ağu",m9:"Eyl",m10:"Ekm",m11:"Kas",m12:"Ara"}},transfer:{titles:{source:"Kaynak",target:"Hedef"},filterPlaceholder:"Arama yapın",notFoundText:"Bulunamadı"},modal:{okText:"Tamam",cancelText:"İptal"},poptip:{okText:"Tamam",cancelText:"İptal"},page:{prev:"Önceki",next:"Sonraki",total:"Toplam",item:"öğe",items:"öğeler",prev5:"Önceki 5 Sayfa",next5:"Sonraki 5 Sayfa",page:"/sayfa",goto:"Git",p:""},rate:{star:"Yıldız",stars:"Yıldız"},tree:{emptyText:"Veri Yok"}}};(0,((o=n)&&o.__esModule?o:{default:o}).default)(r),t.default=r}})});
//# sourceMappingURL=tr-TR.js.map

1
dist/locale/tr-TR.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/uk-UA.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=22)}({0:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,r=o(1);var i=((n=r)&&n.__esModule?n:{default:n}).default.prototype.$isServer},1:function(t,o){t.exports=e},22:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,r=o(0);var i={i:{locale:"uk-UA",select:{placeholder:"Обрати",noMatch:"Немає відповідних даних",loading:"Завантаження"},table:{noDataText:"Немає даних",noFilteredDataText:"Немає даних по фільтру",confirmFilter:"Підтвердити",resetFilter:"Скинути",clearFilter:"Усе"},datepicker:{selectDate:"Обрати дату",selectTime:"Обрати час",startTime:"Початковий час",endTime:"Кінцевий час",clear:"Очистити",ok:"OK",datePanelLabel:"[Mmmm] [yyyy]",month:"",month1:"Січень",month2:"Лютий",month3:"Березень",month4:"Квітень",month5:"Травень",month6:"Червень",month7:"Липень",month8:"Серпень",month9:"Вересень",month10:"Жовтень",month11:"Листопад",month12:"Грудень",year:"",weekStartDay:"1",weeks:{sun:"Нд",mon:"Пн",tue:"Вт",wed:"Ср",thu:"Чт",fri:"Пт",sat:"Сб"},months:{m1:"Січ",m2:"Лют",m3:"Бер",m4:"Кві",m5:"Тра",m6:"Чер",m7:"Лип",m8:"Сер",m9:"Вер",m10:"Жов",m11:"Лис",m12:"Гру"}},transfer:{titles:{source:"Джерело",target:"Ціль"},filterPlaceholder:"Шукати тут",notFoundText:"Не знайдено"},modal:{okText:"OK",cancelText:"Скасувати"},poptip:{okText:"OK",cancelText:"Скасувати"},page:{prev:"Попер. сторінка",next:"Наст. сторінка",total:"Всього",item:"пункт",items:"пункти",prev5:"Попер. 5 сторінок",next5:"Наст. 5 сторінок",page:"/page",goto:"Йти до",p:""},rate:{star:"Зірка",stars:"Зірки"},tree:{emptyText:"Немає даних"}}};(0,((n=r)&&n.__esModule?n:{default:n}).default)(i),t.default=i}})});
//# sourceMappingURL=uk-UA.js.map

1
dist/locale/uk-UA.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/vi-VN.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:o})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/locale/",n(n.s=23)}({0:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){a||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var o,r=n(1);var a=((o=r)&&o.__esModule?o:{default:o}).default.prototype.$isServer},1:function(t,n){t.exports=e},23:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o,r=n(0);var a={i:{locale:"vi-VN",select:{placeholder:"Chọn",noMatch:"Không tìm thấy",loading:"Đang tải"},table:{noDataText:"Không có dữ liệu",noFilteredDataText:"Không có dữ liệu lọc",confirmFilter:"Xác nhận",resetFilter:"Làm lại",clearFilter:"Xóa hết"},datepicker:{selectDate:"Chọn ngày",selectTime:"Chọn giờ",startTime:"Ngày bắt đầu",endTime:"Ngày kết thúc",clear:"Xóa",ok:"Đồng ý",datePanelLabel:"[Tháng mm]/[yyyy]",month:"",month1:"Tháng 1",month2:"Tháng 2",month3:"Tháng 3",month4:"Tháng 4",month5:"Tháng 5",month6:"Tháng 6",month7:"Tháng 7",month8:"Tháng 8",month9:"Tháng 9",month10:"Tháng 10",month11:"Tháng 11",month12:"Tháng 12",year:"",weekStartDay:"1",weeks:{sun:"CN",mon:"T2",tue:"T3",wed:"T4",thu:"T5",fri:"T6",sat:"T7"},months:{m1:"Th.1",m2:"Th.2",m3:"Th.3",m4:"Th.4",m5:"Th.5",m6:"Th.6",m7:"Th.7",m8:"Th.8",m9:"Th.9",m10:"Th.10",m11:"Th.11",m12:"Th.12"}},transfer:{titles:{source:"Nguồn",target:"Đích"},filterPlaceholder:"Nhập từ khóa",notFoundText:"Không tìm thấy"},modal:{okText:"Đồng ý",cancelText:"Hủy bỏ"},poptip:{okText:"Đồng ý",cancelText:"Hủy bỏ"},page:{prev:"Trang trước",next:"Trang kế",total:"Tổng",item:"kết quả",items:"kết quả",prev5:"5 trang trước",next5:"5 trang kế",page:"/trang",goto:"Tới trang",p:""},rate:{star:"Sao",stars:"Sao"},tree:{emptyText:"Không có dữ liệu"}}};(0,((o=r)&&o.__esModule?o:{default:o}).default)(a),t.default=a}})});
//# sourceMappingURL=vi-VN.js.map

1
dist/locale/vi-VN.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/zh-CN.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=24)}({0:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,r=o(1);var i=((n=r)&&n.__esModule?n:{default:n}).default.prototype.$isServer},1:function(t,o){t.exports=e},24:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,r=o(0);var i={i:{locale:"zh-CN",select:{placeholder:"请选择",noMatch:"无匹配数据",loading:"加载中"},table:{noDataText:"暂无数据",noFilteredDataText:"暂无筛选结果",confirmFilter:"筛选",resetFilter:"重置",clearFilter:"全部"},datepicker:{selectDate:"选择日期",selectTime:"选择时间",startTime:"开始时间",endTime:"结束时间",clear:"清空",ok:"确定",datePanelLabel:"[yyyy年] [m月]",month:"月",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",year:"年",weekStartDay:"0",weeks:{sun:"日",mon:"一",tue:"二",wed:"三",thu:"四",fri:"五",sat:"六"},months:{m1:"1月",m2:"2月",m3:"3月",m4:"4月",m5:"5月",m6:"6月",m7:"7月",m8:"8月",m9:"9月",m10:"10月",m11:"11月",m12:"12月"}},transfer:{titles:{source:"源列表",target:"目的列表"},filterPlaceholder:"请输入搜索内容",notFoundText:"列表为空"},modal:{okText:"确定",cancelText:"取消"},poptip:{okText:"确定",cancelText:"取消"},page:{prev:"上一页",next:"下一页",total:"共",item:"条",items:"条",prev5:"向前 5 页",next5:"向后 5 页",page:"条/页",goto:"跳至",p:"页"},rate:{star:"星",stars:"星"},tree:{emptyText:"暂无数据"}}};(0,((n=r)&&n.__esModule?n:{default:n}).default)(i),t.default=i}})});
//# sourceMappingURL=zh-CN.js.map

1
dist/locale/zh-CN.js.map vendored Normal file

File diff suppressed because one or more lines are too long

2
dist/locale/zh-TW.js vendored Normal file
View file

@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("iview/locale",["vue"],t):"object"==typeof exports?exports["iview/locale"]=t(require("vue")):e["iview/locale"]=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/locale/",o(o.s=25)}({0:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){i||void 0!==window.iview&&("langs"in iview||(iview.langs={}),iview.langs[e.i.locale]=e)};var n,r=o(1);var i=((n=r)&&n.__esModule?n:{default:n}).default.prototype.$isServer},1:function(t,o){t.exports=e},25:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,r=o(0);var i={i:{locale:"zh-TW",select:{placeholder:"請選擇",noMatch:"無匹配資料",loading:"加載中"},table:{noDataText:"暫無資料",noFilteredDataText:"暫無篩選結果",confirmFilter:"篩選",resetFilter:"重置",clearFilter:"全部"},datepicker:{selectDate:"選擇日期",selectTime:"選擇時間",startTime:"開始時間",endTime:"結束時間",clear:"清空",ok:"確定",datePanelLabel:"[yyyy年] [m月]",month:"月",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",year:"年",weekStartDay:"0",weeks:{sun:"日",mon:"一",tue:"二",wed:"三",thu:"四",fri:"五",sat:"六"},months:{m1:"1月",m2:"2月",m3:"3月",m4:"4月",m5:"5月",m6:"6月",m7:"7月",m8:"8月",m9:"9月",m10:"10月",m11:"11月",m12:"12月"}},transfer:{titles:{source:"來源列表",target:"目標列表"},filterPlaceholder:"請輸入搜尋內容",notFoundText:"列表爲空"},modal:{okText:"確定",cancelText:"取消"},poptip:{okText:"確定",cancelText:"取消"},page:{prev:"上一頁",next:"下一頁",total:"共",item:"條",items:"條",prev5:"向前 5 頁",next5:"向後 5 頁",page:"條/頁",goto:"跳至",p:"頁"},rate:{star:"星",stars:"星"},tree:{emptyText:"暫無資料"}}};(0,((n=r)&&n.__esModule?n:{default:n}).default)(i),t.default=i}})});
//# sourceMappingURL=zh-TW.js.map

1
dist/locale/zh-TW.js.map vendored Normal file

File diff suppressed because one or more lines are too long

BIN
dist/styles/fonts/ionicons.eot vendored Executable file

Binary file not shown.

2230
dist/styles/fonts/ionicons.svg vendored Executable file

File diff suppressed because it is too large Load diff

After

Width:  |  Height:  |  Size: 326 KiB

BIN
dist/styles/fonts/ionicons.ttf vendored Executable file

Binary file not shown.

BIN
dist/styles/fonts/ionicons.woff vendored Executable file

Binary file not shown.

1
dist/styles/iview.css vendored Normal file

File diff suppressed because one or more lines are too long

View file

@ -63,6 +63,7 @@ nav {
<li><router-link to="/color-picker">ColorPicker</router-link></li> <li><router-link to="/color-picker">ColorPicker</router-link></li>
<li><router-link to="/auto-complete">AutoComplete</router-link></li> <li><router-link to="/auto-complete">AutoComplete</router-link></li>
<li><router-link to="/scroll">Scroll</router-link></li> <li><router-link to="/scroll">Scroll</router-link></li>
<li><router-link to="/time">Time</router-link></li>
</ul> </ul>
</nav> </nav>
<router-view></router-view> <router-view></router-view>

View file

@ -206,6 +206,10 @@ const router = new VueRouter({
{ {
path: '/scroll', path: '/scroll',
component: (resolve) => require(['./routers/scroll.vue'], resolve) component: (resolve) => require(['./routers/scroll.vue'], resolve)
},
{
path: '/time',
component: (resolve) => require(['./routers/time.vue'], resolve)
} }
] ]
}); });

View file

@ -1,38 +1,58 @@
<template> <template>
<Collapse accordion v-model="value3"> <div>
<Panel name="1"> <Collapse accordion v-model="value3">
史蒂夫·乔布斯 <Panel name="1">
<div slot="content"> 史蒂夫·乔布斯
史蒂夫·乔布斯Steve Jobs1955年2月24日生于美国加利福尼亚州旧金山美国发明家企业家美国苹果公司联合创办人 <div slot="content">
<Collapse accordion v-model="value4"> 史蒂夫·乔布斯Steve Jobs1955年2月24日生于美国加利福尼亚州旧金山美国发明家企业家美国苹果公司联合创办人
<Panel name="1-1"> <Collapse accordion v-model="value4">
iPhone <Panel name="1-1">
<p slot="content">iPhone是美国苹果公司研发的智能手机它搭载iOS操作系统第一代iPhone于2007年1月9日由苹果公司前首席执行官史蒂夫·乔布斯发布并在2007年6月29日正式发售</p> iPhone
<p slot="content">iPhone是美国苹果公司研发的智能手机它搭载iOS操作系统第一代iPhone于2007年1月9日由苹果公司前首席执行官史蒂夫·乔布斯发布并在2007年6月29日正式发售</p>
</Panel>
<Panel name="1-2">
iPad
<p slot="content">iPad是由苹果公司于2010年开始发布的平板电脑系列定位介于苹果的智能手机iPhone和笔记本电脑产品之间屏幕中有4个虚拟程序固定栏与iPhone布局一样提供浏览网站收发电子邮件观看电子书播放音频或视频玩游戏等功能由英国出生的设计主管乔纳森·伊夫Jonathan Ive有些翻译为 乔纳森·艾维领导的团队设计的这个圆滑超薄的产品反映出了伊夫对德国天才设计师Dieter Rams的崇敬之情</p>
</Panel>
</Collapse>
</div>
</Panel> </Panel>
<Panel name="1-2"> <Panel name="2">
iPad 斯蒂夫·盖瑞·沃兹尼亚克
<p slot="content">iPad是由苹果公司于2010年开始发布的平板电脑系列定位介于苹果的智能手机iPhone和笔记本电脑产品之间屏幕中有4个虚拟程序固定栏与iPhone布局一样提供浏览网站收发电子邮件观看电子书播放音频或视频玩游戏等功能由英国出生的设计主管乔纳森·伊夫Jonathan Ive有些翻译为 乔纳森·艾维领导的团队设计的这个圆滑超薄的产品反映出了伊夫对德国天才设计师Dieter Rams的崇敬之情</p> <p slot="content">斯蒂夫·盖瑞·沃兹尼亚克Stephen Gary Wozniak美国电脑工程师曾与史蒂夫·乔布斯合伙创立苹果电脑今之苹果公司斯蒂夫·盖瑞·沃兹尼亚克曾就读于美国科罗拉多大学后转学入美国著名高等学府加州大学伯克利分校UC Berkeley并获得电机工程及计算机EECS本科学位1987</p>
</Panel>
<Panel name="3">
乔纳森·伊夫
<p slot="content">乔纳森·伊夫是一位工业设计师现任Apple公司设计师兼资深副总裁英国爵士他曾参与设计了iPodiMaciPhoneiPad等众多苹果产品除了乔布斯他是对苹果那些著名的产品最有影响力的人</p>
</Panel> </Panel>
</Collapse> </Collapse>
</div>
</Panel> <br/>
<Panel name="2"> <br/>
斯蒂夫·盖瑞·沃兹尼亚克 <Collapse v-model="value5">
<p slot="content">斯蒂夫·盖瑞·沃兹尼亚克Stephen Gary Wozniak美国电脑工程师曾与史蒂夫·乔布斯合伙创立苹果电脑今之苹果公司斯蒂夫·盖瑞·沃兹尼亚克曾就读于美国科罗拉多大学后转学入美国著名高等学府加州大学伯克利分校UC Berkeley并获得电机工程及计算机EECS本科学位1987</p> <Panel name="21">
</Panel> 斯蒂夫·盖瑞·沃兹尼亚克
<Panel name="3"> <p slot="content">斯蒂夫·盖瑞·沃兹尼亚克Stephen Gary Wozniak美国电脑工程师曾与史蒂夫·乔布斯合伙创立苹果电脑今之苹果公司斯蒂夫·盖瑞·沃兹尼亚克曾就读于美国科罗拉多大学后转学入美国著名高等学府加州大学伯克利分校UC Berkeley并获得电机工程及计算机EECS本科学位1987</p>
乔纳森·伊夫 </Panel>
<p slot="content">乔纳森·伊夫是一位工业设计师现任Apple公司设计师兼资深副总裁英国爵士他曾参与设计了iPodiMaciPhoneiPad等众多苹果产品除了乔布斯他是对苹果那些著名的产品最有影响力的人</p> <Panel name="22">
</Panel> 乔纳森·伊夫
</Collapse> <p slot="content">乔纳森·伊夫是一位工业设计师现任Apple公司设计师兼资深副总裁英国爵士他曾参与设计了iPodiMaciPhoneiPad等众多苹果产品除了乔布斯他是对苹果那些著名的产品最有影响力的人</p>
</Panel>
<Panel name="23">
乔纳森·伊夫
<p slot="content">乔纳森·伊夫是一位工业设计师现任Apple公司设计师兼资深副总裁英国爵士他曾参与设计了iPodiMaciPhoneiPad等众多苹果产品除了乔布斯他是对苹果那些著名的产品最有影响力的人</p>
</Panel>
</Collapse>
</div>
</template> </template>
<script> <script>
export default { export default {
data () { data () {
return { return {
value3: '1', value3: ['1', '2', '3'],
value4: '1-1' value4: '1-1',
} value5: ['21', '22', '23']
};
} }
} };
</script> </script>

View file

@ -1,41 +1,158 @@
<template> <template>
<div style="margin: 100px;"> <div style="margin: 100px;">
{{ color }} {{color}}
<!--<Input placeholder="请输入..." size="large" style="width: 50px;"></Input>--> <!--<Input placeholder="请输入..." size="large" style="width: 50px;"></Input>-->
<color-picker @on-change="c1" @on-active-change="c2" v-model="color" placement="bottom-start" size="large"></color-picker> <color-picker
<Date-picker transfer type="date" placeholder="选择日期" style="width: 200px"></Date-picker> v-model="color"
<color-picker :transfer="true" ref="xxx" v-model="color" format="rgb" alpha :recommend="true"></color-picker> placement="bottom-start"
<color-picker v-model="color2" format="hsv" :alpha="true" :recommend="false"></color-picker> size="large"
@on-change="c1"
@on-active-change="c2"></color-picker>
<Input value="hello" style="display: inline-block" />
<Date-picker
transfer
type="date"
placeholder="选择日期"
style="width: 200px"></Date-picker>
<color-picker
ref="xxx"
:transfer="true"
v-model="color"
:recommend="true"
format="rgb"
alpha
@on-change="onChange"
@on-active-change="onActiveChange"></color-picker>
<color-picker
v-model="color2"
:alpha="true"
:recommend="false"
format="hsv"></color-picker>
<!--<Date-picker type="date" placeholder="选择日期" style="width: 200px"></Date-picker>--> <!--<Date-picker type="date" placeholder="选择日期" style="width: 200px"></Date-picker>-->
<color-picker v-model="color" placement="bottom-start" size="small"></color-picker> <color-picker
<Date-picker type="date" placeholder="选择日期" size="small" style="width: 200px"></Date-picker> v-model="color"
placement="bottom-start"
size="small"></color-picker>
<Date-picker
type="date"
placeholder="选择日期"
size="small"
style="width: 200px"></Date-picker>
<color-picker
ref="yyy"
:colors="colors"
v-model="color"
transfer
format="rgb"
alpha></color-picker>
<Button @click="setColor">set color</Button> <Button @click="setColor">set color</Button>
<br><br><br><br> <br><br><br><br>
<ColorPicker v-model="color7" :hue="false"></ColorPicker> {{openState}}
<ColorPicker
v-model="color7"
:hue="false"
@on-open-change="onOpenChange"></ColorPicker>
<ColorPicker
v-model="color7"
:hue="false"
:hide-drop-down="hideDropDown"
transfer
@on-open-change="onOpenChange"></ColorPicker>
<br><br><br><br>
<ColorPicker
v-model="color7"
disabled></ColorPicker>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
props: {}, props: {},
data () {
return { data() {
color: 'rgba(12,34,255,.85)', return {
color2: '', color: 'rgba(12,34,255,.85)',
color7: '#19be6b' color2: '',
}; color7: '#19be6b',
openState: false,
colors: [
'#2d8cf0',
'#19be6b',
'#ff9900',
'#ed3f14',
'#00b5ff',
'#19c919',
'#f9e31c',
'#ea1a1a',
'#9b1dea',
'#00c2b1',
'#ac7a33',
'#1d35ea',
'#8bc34a',
'#f16b62',
'#ea4ca3',
'#0d94aa',
'#febd79',
'#5d4037',
'#00bcd4',
'#f06292',
'#cddc39',
'#607d8b',
'#000000',
'#ffffff',
'#2d8cf0',
'#19be6b',
'#ff9900',
'#ed3f14',
'#00b5ff',
'#19c919',
'#f9e31c',
'#ea1a1a',
'#9b1dea',
'#00c2b1',
'#ac7a33',
'#1d35ea',
'#8bc34a',
'#f16b62',
'#ea4ca3',
'#0d94aa',
'#febd79',
'#5d4037',
],
hideDropDown: false,
};
},
computed: {},
mounted() {
setInterval(this.toggleShowHide, 2000);
},
methods: {
setColor() {
this.color = '#26bc77';
}, },
computed: {}, c1(d) {
methods: { console.log(d);
setColor () { },
this.color = '#26bc77'; c2(d) {
}, console.log(d);
c1 (d) { },
console.log(d); onOpenChange(state) {
}, this.openState = state;
c2 (d) { },
console.log(d); onChange(d) {
} console.log(d);
} },
}; onActiveChange(d) {
console.log(d);
},
toggleShowHide() {
this.hideDropDown = !this.hideDropDown;
},
},
};
</script> </script>

View file

@ -0,0 +1,32 @@
<template>
<Submenu :name="`${parentName}`">
<template slot="title">
<span>{{ parentItem.name }}</span>
</template>
<template v-for="item in children">
<custem-menu-item v-if="item.children && item.children.length !== 0" :key="`menu-${item.name}`" :parent-item="item"></custem-menu-item>
<menu-item v-else :name="`${item.name}`" :key="`menu-${item.name}`">{{ item.name }}</menu-item>
</template>
</Submenu>
</template>
<script>
export default {
name: 'custemMenuItem',
props: {
parentItem: {
type: Object,
default: () => {}
},
theme: String,
iconSize: Number
},
computed: {
parentName () {
return this.parentItem.name
},
children () {
return this.parentItem.children
}
}
}
</script>

View file

@ -249,14 +249,17 @@
<template> <template>
<div style="width: 500px;margin: 100px;"> <div style="width: 500px;margin: 100px;">
<Row> <p><input type="text"></p>
<Col span="12">
<DatePicker type="date" show-week-numbers placeholder="Select date" style="width: 200px"></DatePicker> <DatePicker type="month" show-week-numbers placeholder="Select date" style="width: 200px"></DatePicker>
</Col> <DatePicker type="year" show-week-numbers placeholder="Select date" style="width: 200px"></DatePicker>
<Col span="12">
<DatePicker type="daterange" show-week-numbers placement="bottom-end" placeholder="Select date" style="width: 200px"></DatePicker> <DatePicker type="date" transfer show-week-numbers placeholder="Select date" style="width: 400px"></DatePicker>
</Col> <DatePicker type="datetime" show-week-numbers confirm placeholder="Select date" style="width: 400px"></DatePicker>
</Row>
<DatePicker type="daterange" transfer show-week-numbers placeholder="Select date" style="width: 400px"></DatePicker>
<DatePicker type="datetimerange" transfer show-week-numbers placeholder="Select date" style="width: 400px"></DatePicker>
<Time-Picker :steps="[1, 1, 15]" :value="new Date()"></Time-Picker>
</div> </div>
</template> </template>
<script> <script>

View file

@ -1,17 +1,353 @@
<template> <template>
<Dropdown trigger="click" style="margin-left: 20px"> <div>
<a href="javascript:void(0)"> <div>
click 触发 <Dropdown trigger="click" style="margin-left: 20px" placement="right-start" >
<Icon type="arrow-down-b"></Icon> <a href="javascript:void(0)">
</a> right-start
<DropdownMenu slot="list"> <Icon type="arrow-down-b"></Icon>
<DropdownItem>驴打滚</DropdownItem> </a>
<DropdownItem>炸酱面</DropdownItem> <DropdownMenu slot="list">
<DropdownItem>豆汁儿</DropdownItem> <DropdownItem>驴打滚</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem> <DropdownItem>炸酱面</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem> <DropdownItem>豆汁儿</DropdownItem>
</DropdownMenu> <DropdownItem>冰糖葫芦</DropdownItem>
</Dropdown> <DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="right-end" >
<a href="javascript:void(0)">
right-end
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="bottom-start" >
<a href="javascript:void(0)">
bottom-start
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="bottom-end" >
<a href="javascript:void(0)">
bottom-end
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="top-start" >
<a href="javascript:void(0)">
top-start
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="top-end" >
<a href="javascript:void(0)">
top-end
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="left-start" >
<a href="javascript:void(0)">
left-start
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="left-end" >
<a href="javascript:void(0)">
left-end
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="top" >
<a href="javascript:void(0)">
top
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="bottom" >
<a href="javascript:void(0)">
bottom
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="left" >
<a href="javascript:void(0)">
left
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="right" >
<a href="javascript:void(0)">
right
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
</div>
<br><br><br><br>
<div style='width:600px;height:100px;overflow: auto;border:1px solid'>
<Dropdown trigger="click" style="margin-left: 20px" placement="right-start" >
<a href="javascript:void(0)">
right-start
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="right-end" >
<a href="javascript:void(0)">
right-end
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="bottom-start" >
<a href="javascript:void(0)">
bottom-start
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="bottom-end" >
<a href="javascript:void(0)">
bottom-end
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="top-start" >
<a href="javascript:void(0)">
top-start
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="top-end" >
<a href="javascript:void(0)">
top-end
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="left-start" >
<a href="javascript:void(0)">
left-start
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="left-end" >
<a href="javascript:void(0)">
left-end
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="top" >
<a href="javascript:void(0)">
top
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="bottom" >
<a href="javascript:void(0)">
bottom
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="left" >
<a href="javascript:void(0)">
left
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
<Dropdown trigger="click" style="margin-left: 20px" placement="right" >
<a href="javascript:void(0)">
right
<Icon type="arrow-down-b"></Icon>
</a>
<DropdownMenu slot="list">
<DropdownItem>驴打滚</DropdownItem>
<DropdownItem>炸酱面</DropdownItem>
<DropdownItem>豆汁儿</DropdownItem>
<DropdownItem>冰糖葫芦</DropdownItem>
<DropdownItem>北京烤鸭</DropdownItem>
</DropdownMenu>
</Dropdown>
</div>
</div>
</template> </template>
<script> <script>
export default { export default {

View file

@ -41,13 +41,20 @@
<template> <template>
<div> <div>
<InputNumber :max="1000000000" :min="1" v-model="value1" :formatter="formatter" :parser="parser" @on-change="change" style="width: 200px"></InputNumber> <!-- <InputNumber :max="1000000000" :min="1" v-model="value1" :formatter="formatter" :parser="parser" @on-change="change" style="width: 200px"></InputNumber>
<InputNumber :max="1000000000" :min="1" v-model="value2" :formatter="formatter2" :parser="parser2" @on-change="change" style="width: 200px"></InputNumber> <InputNumber :max="1000000000" :min="1" v-model="value2" :formatter="formatter2" :parser="parser2" @on-change="change" style="width: 200px"></InputNumber>
<InputNumber @on-change="change" style="width: 200px"></InputNumber> <InputNumber @on-change="change" style="width: 200px"></InputNumber>
<InputNumber v-model="valueNull" @on-change="change" style="width: 200px"></InputNumber> <InputNumber v-model="valueNull" @on-change="change" style="width: 200px"></InputNumber>
<InputNumber v-model="valueNull" @on-change="change" :formatter="formatter" :parser="parser" style="width: 200px"></InputNumber> <InputNumber v-model="valueNull" @on-change="change" :formatter="formatter" :parser="parser" style="width: 200px"></InputNumber>
<InputNumber v-model="value2" @on-focus="focus" style="width: 200px"></InputNumber>
<InputNumber v-model="value3" style="width: 200px" placeholder="Enter something..."></InputNumber> -->
<InputNumber v-model="valueNull" style="width: 200px" :min='0' :max='10000' :precision='2' ></InputNumber>
</div> </div>
</template> </template>
<script> <script>
@ -56,6 +63,7 @@
return { return {
value1: 1800000, value1: 1800000,
value2: 55, value2: 55,
value3: 100,
valueNull:null, valueNull:null,
formatter: (value) => `$ ${value}`.replace(/\B(?=(\d{3})+(?!\d))/g, ','), formatter: (value) => `$ ${value}`.replace(/\B(?=(\d{3})+(?!\d))/g, ','),
parser: (value) => value.replace(/\$\s?|(,*)/g, ''), parser: (value) => value.replace(/\$\s?|(,*)/g, ''),
@ -64,6 +72,9 @@
} }
}, },
methods: { methods: {
focus (e) {
e.target.select()
},
change (v) { change (v) {
console.log(v) console.log(v)
} }

View file

@ -44,14 +44,140 @@
<MenuItem name="5-4">Option 12</MenuItem> <MenuItem name="5-4">Option 12</MenuItem>
</Submenu> </Submenu>
</Menu> </Menu>
<br/>
<Menu ref="menu2" theme="dark" accordion :open-names="openNames2" @on-open-change="handleOpenChange">
<template v-for="item in menuList">
<custem-menu-item v-if="item.children" :key="`menu-${item.name}`" :parent-item="item"></custem-menu-item>
<menu-item v-else :name="`${item.name}`" :key="`menu-${item.name}`">{{ item.name }}</menu-item>
</template>
</Menu>
<Button @click="addNewItem">添加菜单项</Button>
<Button @click="changeActive">修改激活项</Button>
<Button @click="setOpenNames">修改展开数组</Button> <Button @click="setOpenNames">修改展开数组</Button>
<Menu mode="horizontal" theme="light" :active-name="activeName" @on-open-change="hc">
<MenuItem name="1">
<Icon type="ios-paper"></Icon>
内容管理
</MenuItem>
<MenuItem name="2">
<Icon type="ios-people"></Icon>
用户管理
</MenuItem>
<Submenu name="3">
<template slot="title">
<Icon type="stats-bars"></Icon>
统计分析
</template>
<MenuGroup title="使用">
<MenuItem name="3-1">新增和启动</MenuItem>
<MenuItem name="3-2">活跃分析</MenuItem>
<MenuItem name="3-3">时段分析</MenuItem>
</MenuGroup>
<MenuGroup title="留存">
<MenuItem name="3-4">用户留存</MenuItem>
<MenuItem name="3-5">流失用户</MenuItem>
</MenuGroup>
</Submenu>
<Submenu name="4">
<template slot="title">
<Icon type="stats-bars"></Icon>
统计分析2
</template>
<MenuGroup title="使用2">
<MenuItem name="4-1">新增和启动2</MenuItem>
<MenuItem name="4-2">活跃分析2</MenuItem>
<MenuItem name="4-3">时段分析2</MenuItem>
</MenuGroup>
<MenuGroup title="留存2">
<MenuItem name="4-4">用户留存2</MenuItem>
<MenuItem name="4-5">流失用户2</MenuItem>
</MenuGroup>
</Submenu>
<MenuItem name="5">
<Icon type="settings"></Icon>
综合设置
</MenuItem>
</Menu>
</div> </div>
</template> </template>
<script> <script>
import custemMenuItem from './custem-menu-item.vue'
export default { export default {
components: {
custemMenuItem
},
data () { data () {
return { return {
openNames: ['1'] openNames: ['1'],
openNames2: [],
menuList: [
{
name: '111',
children: [
{
name: '111-111'
},
{
name: '111-222'
}
]
},
{
name: '222',
children: [
{
name: '222-111'
},
{
name: '222-222',
children: [
{
name: '222-222-111'
},
{
name: '222-222-222',
children: [
{
name: '222-222-222-111'
},
{
name: '222-222-222-222'
}
]
}
]
},
{
name: '222-333',
children: [
{
name: '222-333-111',
children: [
{
name: '222-333-111-111'
},
{
name: '222-333-111-222'
}
]
},
{
name: '222-333-222',
children: [
{
name: '222-333-222-111'
},
{
name: '222-333-222-222'
}
]
}
]
}
]
}
],
activeName: '1'
}; };
}, },
methods: { methods: {
@ -60,9 +186,27 @@
}, },
setOpenNames () { setOpenNames () {
this.openNames = ['2', '3']; this.openNames = ['2', '3'];
this.openNames2 = ['222', '222-222', '222-222-222', '222-222-222-111']
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.menu.updateOpened(); this.$refs.menu.updateOpened();
this.$refs.menu2.updateOpened();
}) })
},
addNewItem () {
this.menuList[1].children[1].children.push({
name: '222-222-333',
children: [
{
name: '222-222-333-111'
}
]
})
},
changeActive () {
this.activeName = String(Number(this.activeName) + 1)
},
hc (data) {
console.log(data);
} }
} }
} }

View file

@ -2,7 +2,7 @@
<div style="margin: 200px"> <div style="margin: 200px">
<Tabs value="name1"> <Tabs value="name1">
<TabPane label="标签一" name="name1"> <TabPane label="标签一" name="name1">
<div style="width: 200px;height:300px"> <!-- <div style="width: 200px;height:300px;overflow: auto;">
<Poptip title="提示标题" content="标签一的内容" placement="left" transfer > <Poptip title="提示标题" content="标签一的内容" placement="left" transfer >
<Button id="aaa">左边</Button> <Button id="aaa">左边</Button>
</Poptip> </Poptip>
@ -15,6 +15,19 @@
<Poptip title="提示标题" content="标签一的内容" placement="bottom" transfer> <Poptip title="提示标题" content="标签一的内容" placement="bottom" transfer>
<Button id="aaa">下边</Button> <Button id="aaa">下边</Button>
</Poptip> </Poptip>
</div> -->
<div>
<Poptip title="提示标题" content="标签一的内容" transfer>
<Button id="aaa">点击显示</Button>
<div slot="content">
<Button @click='loadData(15)'>15条数据</Button>
<Button @click='loadData(10)'>10条数据</Button>
<Button @click='loadData(5)'>5条数据</Button>
<Button @click='loadData(3)'>3条数据</Button>
<Table :columns='columns1' :data='data1'>
</Table>
</div>
</Poptip>
</div> </div>
</TabPane> </TabPane>
<TabPane label="标签二" name="name2">标签二的内容</TabPane> <TabPane label="标签二" name="name2">标签二的内容</TabPane>
@ -27,8 +40,48 @@
return { return {
options: { options: {
} },
columns1:[
{
title: 'Data1',
key: 'data1',
width: 100,
},
{
title: 'Data2',
key: 'data2',
width: 100
},
{
title: 'Data3',
key: 'data3',
width: 100
},
{
title: 'Data4',
key: 'data4',
width: 100
}
],
data1:[],
} }
},
created(){
this.loadData(5);
},
methods:{
loadData(num){
let data = [];
for (let i=0; i<num; i++) {
data.push({
data1:Math.random()*1000000,
data2:Math.random()*100000000,
data3:Math.random()*10000000000,
data4:Math.random()*1000000000000,
})
}
this.data1 = data
},
} }
} }
</script> </script>

View file

@ -2,6 +2,8 @@
<div> <div>
<Rate v-model="value"></Rate> <Rate v-model="value"></Rate>
<Rate allow-half v-model="valueHalf"></Rate> <Rate allow-half v-model="valueHalf"></Rate>
<Rate clearable v-model="valueClear"></Rate>
<Rate clearable allow-half v-model="valueClearHalf"></Rate>
<!--<Rate show-text v-model="valueText"></Rate>--> <!--<Rate show-text v-model="valueText"></Rate>-->
<!--<Rate show-text allow-half v-model="valueCustomText">--> <!--<Rate show-text allow-half v-model="valueCustomText">-->
<!--<span style="color: #f5a623">{{ valueCustomText }}</span>--> <!--<span style="color: #f5a623">{{ valueCustomText }}</span>-->
@ -17,7 +19,9 @@
valueHalf: 2.5, valueHalf: 2.5,
valueText: 3, valueText: 3,
valueCustomText: 4.0, valueCustomText: 4.0,
valueDisabled: 2.4 valueDisabled: 2.4,
valueClear: 1,
valueClearHalf: 1.5,
} }
} }
} }

File diff suppressed because it is too large Load diff

View file

@ -1,7 +1,14 @@
<style>
table {
border-collapse: collapse;
border-spacing: 0;
}
</style>
<template> <template>
<div> <div>
<br><br><br><br><br> <!-- <br><br><br><br><br> -->
<Table border :show-header='false' :columns="columns1" height="500" :data="data1"></Table> <!-- <Table border :show-header='false' :columns="columns1" height="500" :data="data1"></Table> -->
<!-- <Table border :columns="columns1" height='300'></Table> --> <!-- <Table border :columns="columns1" height='300'></Table> -->
<!-- <br><br><br><br><br> --> <!-- <br><br><br><br><br> -->
<!-- <Table width="550" height="200" border :columns="columns2" :data="data4"></Table> --> <!-- <Table width="550" height="200" border :columns="columns2" :data="data4"></Table> -->
@ -10,18 +17,68 @@
<!-- <br><br><br><br><br> --> <!-- <br><br><br><br><br> -->
<!-- <Table border :columns="columns6" :data="data5"></Table> --> <!-- <Table border :columns="columns6" :data="data5"></Table> -->
<!-- <br><br><br><br><br> --> <!-- <br><br><br><br><br> -->
<Table border :show-header='false' :columns="columns7" height="200" :data="data7"></Table> <!-- <Table border :show-header='false' :columns="columns7" height="200" :data="data7"></Table> -->
<Table border :columns="columns7" height="240" :data="data7"></Table> <!-- <Table border :columns="columns7" height="240" :data="data7"></Table> -->
<!-- <br><br><br><br><br> --> <!-- <br><br><br><br><br> -->
<!-- <Table border :columns="columns8" :data="data7" height="200"></Table> --> <!-- <Table border :columns="columns8" :data="data7" height="200"></Table> -->
<!-- <Table border :columns="columns8" height="200"></Table> --> <!-- <Table border :columns="columns8" height="200"></Table> -->
<br><br><br><br><br> <!-- <br><br><br><br><br> -->
<div class="layout-demo-con">
<Button @click="change">修改Sider绑定的变量来控制收缩</Button>
<Layout :style="{minHeight: '80vh'}">
<Sider
v-model="isCollapsed"
collapsed-width="0"
hide-trigger
breakpoint="sm"
@on-collapse="changed"
collapsible
ref="side"
width="200">
<Menu width="auto" theme="dark" active-name="1">
<MenuGroup title="内容管理">
<MenuItem name="1">
<Icon type="document-text"></Icon>
文章管理
</MenuItem>
<MenuItem name="2">
<Icon type="chatbubbles"></Icon>
评论管理
</MenuItem>
</MenuGroup>
<MenuGroup title="统计分析">
<MenuItem name="3">
<Icon type="heart"></Icon>
用户留存
</MenuItem>
<MenuItem name="4">
<Icon type="heart-broken"></Icon>
流失用户
</MenuItem>
</MenuGroup>
</Menu>
<!-- <div slot="trigger"><Icon type="document-text"></Icon></div> -->
</Sider>
<Layout class-name="test-class">
<Header :style="{background: '#eee'}"><Button @click="toggleCollapse">菜单</Button></Header>
<Content :style="{background:'#FFCF9E'}">
<!-- <Table border :columns="columns1" height="500" :data="data1"></Table> -->
<!-- <br> -->
<!-- <Table border :columns="columns5" :data="data5"></Table> -->
<Table border :columns="columns8" height="240" :data="data7"></Table>
</Content>
<Footer>sdfsdsdfsdfs</Footer>
</Layout>
</Layout>
</div>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
data () { data () {
return { return {
isCollapsed: false,
columns1: [ columns1: [
{ {
title: 'Name', title: 'Name',
@ -409,12 +466,18 @@
], ],
columns8: [ columns8: [
{
title: 'Address',
key: 'address',
minWidth:200,
//maxWidth:300,
},
{ {
title: 'Date', title: 'Date',
key: 'date', key: 'date',
sortable: true, sortable: true,
minWidth:100, minWidth:100,
maxWidth:200, maxWidth:150,
}, },
{ {
title: 'Name', title: 'Name',
@ -425,15 +488,9 @@
{ {
title: 'Age', title: 'Age',
key: 'age', key: 'age',
minWidth:100, minWidth:60,
maxWidth:200, maxWidth:100,
}, },
{
title: 'Address',
key: 'address',
minWidth:200,
maxWidth:300,
}
], ],
} }
}, },
@ -453,6 +510,22 @@
}); });
} }
this.data1 = data; this.data1 = data;
},
methods: {
toggleCollapse () {
this.$refs.side.toggleCollapse();
},
change () {
this.isCollapsed = !this.isCollapsed;
},
changed (res) {
console.log(res)
}
},
watch: {
isCollapsed (val) {
// console.log(val)
}
} }
} }
</script> </script>

View file

@ -158,21 +158,57 @@
<!--</script>--> <!--</script>-->
<template> <template>
<Tabs type="card"> <div>
<TabPane v-for="tab in tabs" :key="tab" :label="'标签' + tab">标签{{ tab }}</TabPane> <i-input></i-input>
<Button type="ghost" @click="handleTabsAdd" size="small" slot="extra">增加</Button> <Button type="ghost" @click="handleTabsAdd" size="small" slot="extra">增加</Button>
</Tabs>
<hr style="margin: 10px 0;">
<Tabs type="card">
<TabPane v-for="tab in tabs" :key="tab" :label="'Tab' + tab">
<div>
<h3>Some text...</h3>
<i-button>Some focusable content...{{ tab }}</i-button>
</div>
</TabPane>
</Tabs>
<Tabs type="card">
<TabPane label="标签一">标签一的内容</TabPane>
<TabPane label="标签二" disabled>标签二的内容</TabPane>
<TabPane label="标签三">标签三的内容</TabPane>
</Tabs>
<tabs v-model="name" type="card" @on-click="handleClick">
<tab-pane name="a" label="标签一">
<div>1</div>
</tab-pane>
<tab-pane name="b" label="标签二">
<div>2</div>
</tab-pane>
<tab-pane name="c" label="标签三">
<div>3</div>
</tab-pane>
<tab-pane name="d" label="标签四">
<div>4</div>
</tab-pane>
<tab-pane name="e" label="标签五">
<div>5</div>
</tab-pane>
</tabs>
</div>
</template> </template>
<script> <script>
export default { export default {
data () { data () {
return { return {
tabs: 2 tabs: 2,
name: 'b',
} }
}, },
methods: { methods: {
handleTabsAdd () { handleTabsAdd () {
this.tabs ++; this.tabs ++;
},
handleClick (name) {
console.log(name);
} }
} }
} }

18
examples/routers/time.vue Normal file
View file

@ -0,0 +1,18 @@
<template>
<div>
<Time :time="1526608921" />
<Time :time="1652839997" />
<Time :time="ddd" :interval="1" />
</div>
</template>
<script>
export default {
data () {
return {
ddd: new Date('2018-04-27 14:23:00')
};
},
computed: {},
methods: {}
};
</script>

29978
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -1,127 +1,130 @@
{ {
"name": "iview", "name": "iview",
"version": "2.12.0", "version": "2.14.3",
"title": "iView", "title": "iView",
"description": "A high quality UI components Library with Vue.js", "description": "A high quality UI components Library with Vue.js",
"homepage": "http://www.iviewui.com", "homepage": "http://www.iviewui.com",
"keywords": [ "keywords": [
"iview", "iview",
"vue", "vue",
"vue.js", "vue.js",
"component", "component",
"components", "components",
"ui", "ui",
"framework" "framework"
], ],
"main": "dist/iview.js", "main": "dist/iview.js",
"files": [ "files": [
"dist", "dist",
"src" "src"
], ],
"scripts": { "scripts": {
"dev": "webpack-dev-server --content-base test/ --open --inline --hot --compress --history-api-fallback --port 8081 --config build/webpack.dev.config.js", "dev": "webpack-dev-server --content-base test/ --open --inline --hot --compress --history-api-fallback --port 8081 --config build/webpack.dev.config.js",
"dev:s": "webpack-dev-server --content-base test/ --open --inline --hot --compress --history-api-fallback --port 8081 --host 0.0.0.0 --config build/webpack.dev.config.js", "dev:s": "webpack-dev-server --content-base test/ --open --inline --hot --compress --history-api-fallback --port 8081 --host 0.0.0.0 --config build/webpack.dev.config.js",
"dist:style": "gulp --gulpfile build/build-style.js", "dist:style": "gulp --gulpfile build/build-style.js",
"dist:dev": "webpack --config build/webpack.dist.dev.config.js", "dist:dev": "webpack --config build/webpack.dist.dev.config.js",
"dist:prod": "webpack --config build/webpack.dist.prod.config.js", "dist:prod": "webpack --config build/webpack.dist.prod.config.js",
"dist:locale": "webpack --config build/webpack.dist.locale.config.js", "dist:locale": "webpack --config build/webpack.dist.locale.config.js",
"dist": "npm run dist:style && npm run dist:dev && npm run dist:prod && npm run dist:locale", "dist": "npm run dist:style && npm run dist:dev && npm run dist:prod && npm run dist:locale",
"lint": "eslint --fix --ext .js,.vue src", "lint": "eslint --fix --ext .js,.vue src",
"unit": "cross-env BABEL_ENV=test karma start test/unit/karma.conf.js --single-run", "unit": "cross-env BABEL_ENV=test karma start test/unit/karma.conf.js --single-run",
"test": "npm run lint && npm run unit", "test": "npm run lint && npm run unit",
"prepublish": "npm run dist" "prepare": "npm run dist"
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/iview/iview" "url": "https://github.com/iview/iview"
}, },
"author": "Aresn", "author": "Aresn",
"license": "MIT", "license": "MIT",
"bugs": { "bugs": {
"url": "https://github.com/iview/iview/issues" "url": "https://github.com/iview/iview/issues"
}, },
"dependencies": { "dependencies": {
"async-validator": "^1.8.2", "async-validator": "^1.8.2",
"deepmerge": "^2.1.0", "deepmerge": "^2.1.0",
"element-resize-detector": "^1.1.14", "element-resize-detector": "^1.1.14",
"js-calendar": "^1.2.3", "js-calendar": "^1.2.3",
"lodash.throttle": "^4.1.1", "lodash.throttle": "^4.1.1",
"popper.js": "^1.14.1", "popper.js": "^1.14.1",
"tinycolor2": "^1.4.1" "tinycolor2": "^1.4.1",
}, "v-click-outside-x": "^3.0.0"
"peerDependencies": { },
"vue": "^2.5.2" "peerDependencies": {
}, "vue": "^2.5.2"
"devDependencies": { },
"autoprefixer-loader": "^3.2.0", "devDependencies": {
"babel-cli": "^6.26.0", "autoprefixer-loader": "^3.2.0",
"babel-core": "^6.26.0", "babel-cli": "^6.26.0",
"babel-helper-vue-jsx-merge-props": "^2.0.3", "babel-core": "^6.26.0",
"babel-loader": "^7.1.4", "babel-helper-vue-jsx-merge-props": "^2.0.3",
"babel-plugin-dynamic-import-node": "^1.2.0", "babel-loader": "^7.1.4",
"babel-plugin-syntax-jsx": "^6.18.0", "babel-plugin-dynamic-import-node": "^1.2.0",
"babel-plugin-transform-class-properties": "^6.24.1", "babel-plugin-syntax-jsx": "^6.18.0",
"babel-plugin-transform-es5-property-mutators": "^6.24.1", "babel-plugin-transform-class-properties": "^6.24.1",
"babel-plugin-transform-object-rest-spread": "^6.26.0", "babel-plugin-transform-es5-property-mutators": "^6.24.1",
"babel-plugin-transform-runtime": "^6.23.0", "babel-plugin-transform-object-rest-spread": "^6.26.0",
"babel-plugin-transform-vue-jsx": "^3.7.0", "babel-plugin-transform-runtime": "^6.23.0",
"babel-preset-env": "^1.6.1", "babel-plugin-transform-vue-jsx": "^3.7.0",
"babel-preset-stage-3": "^6.24.1", "babel-preset-env": "^1.6.1",
"babel-runtime": "^6.26.0", "babel-preset-stage-3": "^6.24.1",
"chai": "^4.1.2", "babel-runtime": "^6.26.0",
"compression-webpack-plugin": "^1.1.10", "chai": "^4.1.2",
"cross-env": "^5.1.3", "compression-webpack-plugin": "^1.1.10",
"css-loader": "^0.28.10", "cross-env": "^5.1.3",
"eslint": "^3.19.0", "css-loader": "^0.28.10",
"eslint-plugin-vue": "^2.1.0", "eslint": "^3.19.0",
"extract-text-webpack-plugin": "^2.1.2", "eslint-plugin-vue": "^2.1.0",
"file-loader": "^1.1.11", "extract-text-webpack-plugin": "^2.1.2",
"friendly-errors-webpack-plugin": "^1.6.1", "file-loader": "^1.1.11",
"gulp": "^3.9.1", "friendly-errors-webpack-plugin": "^1.6.1",
"gulp-autoprefixer": "^5.0.0", "gulp": "^3.9.1",
"gulp-clean-css": "^3.9.3", "gulp-autoprefixer": "^5.0.0",
"gulp-less": "^4.0.0", "gulp-clean-css": "^3.9.3",
"gulp-rename": "^1.2.2", "gulp-less": "^4.0.0",
"html-loader": "^0.5.5", "gulp-rename": "^1.2.2",
"html-webpack-plugin": "^3.0.6", "html-loader": "^0.5.5",
"karma": "^2.0.0", "html-webpack-plugin": "^3.0.6",
"karma-chrome-launcher": "^2.2.0", "karma": "^2.0.0",
"karma-coverage": "^1.1.1", "karma-chrome-launcher": "^2.2.0",
"karma-mocha": "^1.3.0", "karma-coverage": "^1.1.1",
"karma-sinon-chai": "^1.3.3", "karma-mocha": "^1.3.0",
"karma-sourcemap-loader": "^0.3.7", "karma-sinon-chai": "^1.3.3",
"karma-spec-reporter": "^0.0.32", "karma-sourcemap-loader": "^0.3.7",
"karma-webpack": "^2.0.13", "karma-spec-reporter": "^0.0.32",
"less": "^2.7.3", "karma-webpack": "^2.0.13",
"less-loader": "^4.0.6", "less": "^2.7.3",
"lolex": "^2.3.2", "less-loader": "^4.0.6",
"mocha": "^5.0.4", "lolex": "^2.3.2",
"sinon": "^4.4.2", "mocha": "^5.0.4",
"sinon-chai": "^3.0.0", "sinon": "^4.4.2",
"style-loader": "^0.20.2", "sinon-chai": "^3.0.0",
"url-loader": "^1.0.1", "style-loader": "^0.20.2",
"vue": "^2.5.16", "uglifyjs-webpack-plugin": "^1.2.3",
"vue-hot-reload-api": "^2.3.0", "url-loader": "^1.0.1",
"vue-html-loader": "^1.2.4", "vue": "^2.5.16",
"vue-loader": "^14.2.1", "vue-hot-reload-api": "^2.3.0",
"vue-router": "^3.0.1", "vue-html-loader": "^1.2.4",
"vue-style-loader": "^4.0.2", "vue-loader": "^14.2.1",
"vue-template-compiler": "^2.5.16", "vue-router": "^3.0.1",
"webpack": "^3.11.0", "vue-style-loader": "^4.0.2",
"webpack-dev-server": "^2.11.1", "vue-template-compiler": "^2.5.16",
"webpack-merge": "^3.0.0" "webpack": "^3.11.0",
}, "webpack-dev-server": "^2.11.1",
"engines": { "webpack-merge": "^3.0.0"
"node": ">= 6.0.0", },
"npm": ">= 3.0.0" "engines": {
}, "node": ">=8.9.1",
"browserslist": [ "npm": ">=5.5.1",
"last 3 Chrome versions", "yarn": ">=1.3.2"
"last 3 Firefox versions", },
"Safari >= 10", "browserslist": [
"Explorer >= 11", "last 3 Chrome versions",
"Edge >= 12", "last 3 Firefox versions",
"iOS >= 10", "Safari >= 10",
"Android >= 6" "Explorer >= 11",
] "Edge >= 12",
"iOS >= 10",
"Android >= 6"
]
} }

View file

@ -8,6 +8,7 @@
:placeholder="placeholder" :placeholder="placeholder"
:size="size" :size="size"
:placement="placement" :placement="placement"
:value="currentValue"
filterable filterable
remote remote
auto-complete auto-complete
@ -124,7 +125,9 @@
}, },
watch: { watch: {
value (val) { value (val) {
this.disableEmitChange = true; if(this.currentValue !== val){
this.disableEmitChange = true;
}
this.currentValue = val; this.currentValue = val;
}, },
currentValue (val) { currentValue (val) {
@ -144,20 +147,19 @@
}, },
handleChange (val) { handleChange (val) {
this.currentValue = val; this.currentValue = val;
this.$refs.select.model = val;
this.$refs.input.blur(); this.$refs.input.blur();
this.$emit('on-select', val); this.$emit('on-select', val);
}, },
handleFocus () { handleFocus (event) {
this.$refs.select.visible = true; this.$emit('on-focus', event);
}, },
handleBlur () { handleBlur (event) {
this.$refs.select.visible = false; this.$emit('on-blur', event);
}, },
handleClear () { handleClear () {
if (!this.clearable) return; if (!this.clearable) return;
this.currentValue = ''; this.currentValue = '';
this.$refs.select.model = ''; this.$refs.select.reset();
} }
} }
}; };

View file

@ -34,7 +34,7 @@ export default {
gpuAcceleration: false, gpuAcceleration: false,
}, },
preventOverflow :{ preventOverflow :{
boundariesElement: 'body' boundariesElement: 'window'
} }
} }
}; };
@ -90,7 +90,7 @@ export default {
if (!options.modifiers.offset) { if (!options.modifiers.offset) {
options.modifiers.offset = {}; options.modifiers.offset = {};
} }
options.modifiers.offset = this.offset; options.modifiers.offset.offset = this.offset;
options.onCreate =()=>{ options.onCreate =()=>{
this.$nextTick(this.updatePopper); this.$nextTick(this.updatePopper);
this.$emit('created', this); this.$emit('created', this);
@ -110,6 +110,10 @@ export default {
this.popperJS = null; this.popperJS = null;
} }
}, },
updated (){
this.$nextTick(()=>this.updatePopper());
},
beforeDestroy() { beforeDestroy() {
if (isServer) return; if (isServer) return;
if (this.popperJS) { if (this.popperJS) {

View file

@ -1,6 +1,6 @@
<template> <template>
<div :class="classes"> <div :class="classes">
<button :class="arrowClasses" class="left" @click="arrowEvent(-1)"> <button type="button" :class="arrowClasses" class="left" @click="arrowEvent(-1)">
<Icon type="chevron-left"></Icon> <Icon type="chevron-left"></Icon>
</button> </button>
<div :class="[prefixCls + '-list']"> <div :class="[prefixCls + '-list']">
@ -10,7 +10,7 @@
<div :class="[prefixCls + '-track', showCopyTrack ? 'higher' : '']" :style="copyTrackStyles" ref="copyTrack" v-if="loop"> <div :class="[prefixCls + '-track', showCopyTrack ? 'higher' : '']" :style="copyTrackStyles" ref="copyTrack" v-if="loop">
</div> </div>
</div> </div>
<button :class="arrowClasses" class="right" @click="arrowEvent(1)"> <button type="button" :class="arrowClasses" class="right" @click="arrowEvent(1)">
<Icon type="chevron-right"></Icon> <Icon type="chevron-right"></Icon>
</button> </button>
<ul :class="dotsClasses"> <ul :class="dotsClasses">
@ -18,7 +18,7 @@
<li :class="[n - 1 === currentIndex ? prefixCls + '-active' : '']" <li :class="[n - 1 === currentIndex ? prefixCls + '-active' : '']"
@click="dotsEvent('click', n - 1)" @click="dotsEvent('click', n - 1)"
@mouseover="dotsEvent('hover', n - 1)"> @mouseover="dotsEvent('hover', n - 1)">
<button :class="[radiusDot ? 'radius' : '']"></button> <button type="button" :class="[radiusDot ? 'radius' : '']"></button>
</li> </li>
</template> </template>
</ul> </ul>

View file

@ -1,5 +1,5 @@
<template> <template>
<div :class="classes" v-clickoutside="handleClose"> <div :class="classes" v-click-outside="handleClose">
<div :class="[prefixCls + '-rel']" @click="toggleOpen" ref="reference"> <div :class="[prefixCls + '-rel']" @click="toggleOpen" ref="reference">
<input type="hidden" :name="name" :value="currentValue"> <input type="hidden" :name="name" :value="currentValue">
<slot> <slot>
@ -57,7 +57,7 @@
import Drop from '../select/dropdown.vue'; import Drop from '../select/dropdown.vue';
import Icon from '../icon/icon.vue'; import Icon from '../icon/icon.vue';
import Caspanel from './caspanel.vue'; import Caspanel from './caspanel.vue';
import clickoutside from '../../directives/clickoutside'; import {directive as clickOutside} from 'v-click-outside-x';
import TransferDom from '../../directives/transfer-dom'; import TransferDom from '../../directives/transfer-dom';
import { oneOf } from '../../utils/assist'; import { oneOf } from '../../utils/assist';
import Emitter from '../../mixins/emitter'; import Emitter from '../../mixins/emitter';
@ -70,7 +70,7 @@
name: 'Cascader', name: 'Cascader',
mixins: [ Emitter, Locale ], mixins: [ Emitter, Locale ],
components: { iInput, Drop, Icon, Caspanel }, components: { iInput, Drop, Icon, Caspanel },
directives: { clickoutside, TransferDom }, directives: { clickOutside, TransferDom },
props: { props: {
data: { data: {
type: Array, type: Array,

View file

@ -36,15 +36,8 @@
this.$children.forEach((child, index) => { this.$children.forEach((child, index) => {
const name = child.name || index.toString(); const name = child.name || index.toString();
let isActive = false;
if (self.accordion) { child.isActive = activeKey.indexOf(name) > -1;
isActive = activeKey === name;
} else {
isActive = activeKey.indexOf(name) > -1;
}
child.isActive = isActive;
child.index = index; child.index = index;
}); });
}, },

View file

@ -1,77 +1,103 @@
<template> <template>
<div class="ivu-color-picker-alpha"> <div
<div class="ivu-color-picker-alpha-checkboard-wrap"> :class="[prefixCls + '-alpha']"
<div class="ivu-color-picker-alpha-checkerboard"></div> tabindex="0"
@click="$el.focus()"
@keydown.esc="handleEscape"
@keydown.left="handleLeft"
@keydown.right="handleRight"
@keydown.up="handleUp"
@keydown.down="handleDown"
>
<div :class="[prefixCls + '-alpha-checkboard-wrap']">
<div :class="[prefixCls + '-alpha-checkerboard']"></div>
</div> </div>
<div class="ivu-color-picker-alpha-gradient" :style="{background: gradientColor}"></div> <div
<div class="ivu-color-picker-alpha-container" ref="container" :style="gradientStyle"
@mousedown="handleMouseDown" :class="[prefixCls + '-alpha-gradient']"></div>
@touchmove="handleChange" <div
@touchstart="handleChange"> ref="container"
<div class="ivu-color-picker-alpha-pointer" :style="{left: colors.a * 100 + '%'}"> :class="[prefixCls + '-alpha-container']"
<div class="ivu-color-picker-alpha-picker"></div> @mousedown="handleMouseDown"
@touchmove="handleChange"
@touchstart="handleChange">
<div
:style="{top: 0, left: `${value.a * 100}%`}"
:class="[prefixCls + '-alpha-pointer']">
<div :class="[prefixCls + '-alpha-picker']"></div>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
export default { import HSAMixin from './hsaMixin';
name: 'Alpha', import Prefixes from './prefixMixin';
props: { import {clamp, toRGBAString} from './utils';
value: Object,
onChange: Function export default {
name: 'Alpha',
mixins: [HSAMixin, Prefixes],
data() {
const normalStep = 1;
const jumpStep = 10;
return {
left: -normalStep,
right: normalStep,
up: jumpStep,
down: -jumpStep,
powerKey: 'shiftKey',
};
},
computed: {
gradientStyle() {
const {r, g, b} = this.value.rgba;
const start = toRGBAString({r, g, b, a: 0});
const finish = toRGBAString({r, g, b, a: 1});
return {background: `linear-gradient(to right, ${start} 0%, ${finish} 100%)`};
}, },
computed: { },
colors () {
return this.value; methods: {
}, change(newAlpha) {
gradientColor () { const {h, s, l} = this.value.hsl;
const rgba = this.colors.rgba; const {a} = this.value;
const rgbStr = [rgba.r, rgba.g, rgba.b].join(',');
return 'linear-gradient(to right, rgba(' + rgbStr + ', 0) 0%, rgba(' + rgbStr + ', 1) 100%)'; if (a !== newAlpha) {
this.$emit('change', {h, s, l, a: newAlpha, source: 'rgba'});
} }
}, },
methods: { handleSlide(e, direction) {
handleChange (e, skip) { e.preventDefault();
!skip && e.preventDefault(); e.stopPropagation();
const container = this.$refs.container;
const containerWidth = container.clientWidth;
const xOffset = container.getBoundingClientRect().left + window.pageXOffset; this.change(clamp(e[this.powerKey] ? direction : Math.round(this.value.hsl.a * 100 + direction) / 100, 0, 1));
const pageX = e.pageX || (e.touches ? e.touches[0].pageX : 0); },
const left = pageX - xOffset; handleChange(e) {
e.preventDefault();
e.stopPropagation();
let a; const left = this.getLeft(e);
if (left < 0) {
a = 0;
} else if (left > containerWidth) {
a = 1;
} else {
a = Math.round(left * 100 / containerWidth) / 100;
}
if (this.colors.a !== a) { if (left < 0) {
this.$emit('change', { this.change(0);
h: this.colors.hsl.h, return;
s: this.colors.hsl.s,
l: this.colors.hsl.l,
a: a,
source: 'rgba'
});
}
},
handleMouseDown (e) {
this.handleChange(e, true);
window.addEventListener('mousemove', this.handleChange);
window.addEventListener('mouseup', this.handleMouseUp);
},
handleMouseUp () {
this.unbindEventListeners();
},
unbindEventListeners () {
window.removeEventListener('mousemove', this.handleChange);
window.removeEventListener('mouseup', this.handleMouseUp);
} }
}
}; const {clientWidth} = this.$refs.container;
if (left > clientWidth) {
this.change(1);
return;
}
this.change(Math.round(left * 100 / clientWidth) / 100);
},
},
};
</script> </script>

View file

@ -1,374 +1,453 @@
<template> <template>
<div :class="classes" v-clickoutside="handleClose"> <div
<div ref="reference" @click="toggleVisible" :class="wrapClasses"> v-click-outside.capture="handleClose"
<input type="hidden" :name="name" :value="currentValue"> v-click-outside:mousedown.capture="handleClose"
<i class="ivu-icon ivu-icon-arrow-down-b ivu-input-icon ivu-input-icon-normal"></i> :class="classes">
<div :class="inputClasses"> <div
ref="reference"
:class="wrapClasses"
@click="toggleVisible">
<input
:name="name"
:value="currentValue"
type="hidden">
<i :class="arrowClasses"></i>
<div
ref="input"
:tabindex="disabled ? undefined : 0"
:class="inputClasses"
@keydown.tab="onTab"
@keydown.esc="onEscape"
@keydown.up="onArrow"
@keydown.down="onArrow"
>
<div :class="[prefixCls + '-color']"> <div :class="[prefixCls + '-color']">
<div :class="[prefixCls + '-color-empty']" v-show="value === '' && !visible"> <div
<i class="ivu-icon ivu-icon-ios-close-empty"></i> v-show="value === '' && !visible"
:class="[prefixCls + '-color-empty']">
<i :class="[iconPrefixCls, iconPrefixCls + '-ios-close-empty']"></i>
</div> </div>
<div v-show="value || visible" :style="{backgroundColor: displayedColor}"></div> <div
v-show="value || visible"
:style="displayedColorStyle"></div>
</div> </div>
</div> </div>
</div> </div>
<transition name="transition-drop"> <transition name="transition-drop">
<Drop <Drop
v-transfer-dom
v-show="visible" v-show="visible"
@click.native="handleTransferClick"
:class="{ [prefixCls + '-transfer']: transfer }"
class-name="ivu-transfer-no-max-height"
:placement="placement"
ref="drop" ref="drop"
:placement="placement"
:data-transfer="transfer" :data-transfer="transfer"
v-transfer-dom> :class="dropClasses"
<div :class="[prefixCls + '-picker']"> >
<div :class="[prefixCls + '-picker-wrapper']"> <transition name="fade">
<div :class="[prefixCls + '-picker-panel']"> <div
<Saturation v-model="saturationColors" @change="childChange"></Saturation> v-if="visible"
:class="[prefixCls + '-picker']">
<div :class="[prefixCls + '-picker-wrapper']">
<div :class="[prefixCls + '-picker-panel']">
<Saturation
ref="saturation"
v-model="saturationColors"
:focused="visible"
@change="childChange"
@keydown.native.tab="handleFirstTab"
></Saturation>
</div>
<div
v-if="hue"
:class="[prefixCls + '-picker-hue-slider']">
<Hue
v-model="saturationColors"
@change="childChange"></Hue>
</div>
<div
v-if="alpha"
:class="[prefixCls + '-picker-alpha-slider']">
<Alpha
v-model="saturationColors"
@change="childChange"></Alpha>
</div>
<recommend-colors
v-if="colors.length"
:list="colors"
:class="[prefixCls + '-picker-colors']"
@picker-color="handleSelectColor"></recommend-colors>
<recommend-colors
v-if="!colors.length && recommend"
:list="recommendedColor"
:class="[prefixCls + '-picker-colors']"
@picker-color="handleSelectColor"></recommend-colors>
</div> </div>
<div v-if="hue" :class="[prefixCls + '-picker-hue-slider']"> <div :class="[prefixCls + '-confirm']">
<Hue v-model="saturationColors" @change="childChange"></Hue> <span :class="[prefixCls + '-confirm-color']">{{formatColor}}</span>
<i-button
ref="clear"
:tabindex="0"
size="small"
type="ghost"
@click.native="handleClear"
@keydown.enter="handleClear"
@keydown.native.esc="closer"
>{{t('i.datepicker.clear')}}</i-button>
<i-button
ref="ok"
:tabindex="0"
size="small"
type="primary"
@click.native="handleSuccess"
@keydown.native.tab="handleLastTab"
@keydown.enter="handleSuccess"
@keydown.native.esc="closer"
>{{t('i.datepicker.ok')}}</i-button>
</div> </div>
<div v-if="alpha" :class="[prefixCls + '-picker-alpha-slider']">
<Alpha v-model="saturationColors" @change="childChange"></Alpha>
</div>
<recommend-colors
v-if="colors.length"
:list="colors"
:class="[prefixCls + '-picker-colors']"
@picker-color="handleSelectColor"></recommend-colors>
<recommend-colors
v-if="!colors.length && recommend"
:list="recommendedColor"
:class="[prefixCls + '-picker-colors']"
@picker-color="handleSelectColor"></recommend-colors>
</div> </div>
<div :class="[prefixCls + '-confirm']"> </transition>
<span :class="[prefixCls + '-confirm-color']">{{ formatColor }}</span>
<Confirm @on-pick-success="handleSuccess" @on-pick-clear="handleClear"></Confirm>
</div>
</div>
</Drop> </Drop>
</transition> </transition>
</div> </div>
</template> </template>
<script> <script>
import tinycolor from 'tinycolor2'; import tinycolor from 'tinycolor2';
import {directive as clickOutside} from 'v-click-outside-x';
import TransferDom from '../../directives/transfer-dom';
import Drop from '../../components/select/dropdown.vue';
import RecommendColors from './recommend-colors.vue';
import Saturation from './saturation.vue';
import Hue from './hue.vue';
import Alpha from './alpha.vue';
import Locale from '../../mixins/locale';
import {oneOf} from '../../utils/assist';
import Emitter from '../../mixins/emitter';
import Prefixes from './prefixMixin';
import {changeColor, toRGBAString} from './utils';
import clickoutside from '../../directives/clickoutside'; export default {
import TransferDom from '../../directives/transfer-dom'; name: 'ColorPicker',
import Drop from '../../components/select/dropdown.vue'; components: {Drop, RecommendColors, Saturation, Hue, Alpha},
import RecommendColors from './recommend-colors.vue';
import Confirm from '../date-picker/base/confirm.vue';
import Saturation from './saturation.vue';
import Hue from './hue.vue';
import Alpha from './alpha.vue';
import { oneOf } from '../../utils/assist'; directives: {clickOutside, TransferDom},
import Emitter from '../../mixins/emitter';
const prefixCls = 'ivu-color-picker'; mixins: [Emitter, Locale, Prefixes],
const inputPrefixCls = 'ivu-input';
function _colorChange (data, oldHue) { props: {
data = data === '' ? '#2d8cf0' : data; value: {
const alpha = data && data.a; type: String,
let color; default: undefined,
},
// hsl is better than hex between conversions hue: {
if (data && data.hsl) { type: Boolean,
color = tinycolor(data.hsl); default: true,
} else if (data && data.hex && data.hex.length > 0) { },
color = tinycolor(data.hex); alpha: {
} else { type: Boolean,
color = tinycolor(data); default: false,
} },
recommend: {
if (color && (color._a === undefined || color._a === null)) { type: Boolean,
color.setAlpha(alpha || 1); default: false,
} },
format: {
const hsl = color.toHsl(); type: String,
const hsv = color.toHsv(); validator(value) {
return oneOf(value, ['hsl', 'hsv', 'hex', 'rgb']);
if (hsl.s === 0) { },
hsv.h = hsl.h = data.h || (data.hsl && data.hsl.h) || oldHue || 0; default: undefined,
} },
colors: {
// when the hsv.v is less than 0.0164 (base on test) type: Array,
// because of possible loss of precision default() {
// the result of hue and saturation would be miscalculated return [];
if (hsv.v < 0.0164) { },
hsv.h = data.h || (data.hsv && data.hsv.h) || 0; },
hsv.s = data.s || (data.hsv && data.hsv.s) || 0; disabled: {
} type: Boolean,
default: false,
if (hsl.l < 0.01) { },
hsl.h = data.h || (data.hsl && data.hsl.h) || 0; size: {
hsl.s = data.s || (data.hsl && data.hsl.s) || 0; type: String,
} validator(value) {
return oneOf(value, ['small', 'large', 'default']);
},
default: 'default',
},
hideDropDown: {
type: Boolean,
default: false,
},
placement: {
type: String,
validator(value) {
return oneOf(value, [
'top',
'top-start',
'top-end',
'bottom',
'bottom-start',
'bottom-end',
'left',
'left-start',
'left-end',
'right',
'right-start',
'right-end',
]);
},
default: 'bottom',
},
transfer: {
type: Boolean,
default: false,
},
name: {
type: String,
default: undefined,
},
},
data() {
return { return {
hsl: hsl, val: changeColor(this.value),
hex: color.toHexString().toUpperCase(), currentValue: this.value,
rgba: color.toRgb(), dragging: false,
hsv: hsv, visible: false,
oldHue: data.h || oldHue || hsl.h, recommendedColor: [
source: data.source, '#2d8cf0',
a: data.a || color.getAlpha() '#19be6b',
'#ff9900',
'#ed3f14',
'#00b5ff',
'#19c919',
'#f9e31c',
'#ea1a1a',
'#9b1dea',
'#00c2b1',
'#ac7a33',
'#1d35ea',
'#8bc34a',
'#f16b62',
'#ea4ca3',
'#0d94aa',
'#febd79',
'#5d4037',
'#00bcd4',
'#f06292',
'#cddc39',
'#607d8b',
'#000000',
'#ffffff',
],
}; };
} },
export default { computed: {
name: 'ColorPicker', arrowClasses() {
mixins: [ Emitter ], return [
components: { Drop, Confirm, RecommendColors, Saturation, Hue, Alpha }, this.iconPrefixCls,
directives: { clickoutside, TransferDom }, `${this.iconPrefixCls}-arrow-down-b`,
props: { `${this.inputPrefixCls}-icon`,
value: { `${this.inputPrefixCls}-icon-normal`,
type: String ];
},
transition() {
return oneOf(this.placement, ['bottom-start', 'bottom', 'bottom-end']) ? 'slide-up' : 'fade';
},
saturationColors: {
get() {
return this.val;
}, },
hue: { set(newVal) {
type: Boolean, this.val = newVal;
default: true this.$emit('on-active-change', this.formatColor);
}, },
alpha: { },
type: Boolean, classes() {
default: false return [
}, `${this.prefixCls}`,
recommend: { {
type: Boolean, [`${this.prefixCls}-transfer`]: this.transfer,
default: false
},
format: {
validator (value) {
return oneOf(value, ['hsl', 'hsv', 'hex', 'rgb']);
}
},
colors: {
type: Array,
default () {
return [];
}
},
disabled: {
type: Boolean,
default: false
},
size: {
validator (value) {
return oneOf(value, ['small', 'large', 'default']);
}, },
default: 'default' ];
}, },
placement: { wrapClasses() {
validator (value) { return [
return oneOf(value, ['top', 'top-start', 'top-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end', 'right', 'right-start', 'right-end']); `${this.prefixCls}-rel`,
`${this.prefixCls}-${this.size}`,
`${this.inputPrefixCls}-wrapper`,
`${this.inputPrefixCls}-wrapper-${this.size}`,
{
[`${this.prefixCls}-disabled`]: this.disabled,
}, },
default: 'bottom' ];
},
transfer: {
type: Boolean,
default: false
},
name: {
type: String
}
}, },
data () { inputClasses() {
return { return [
val: _colorChange(this.value), `${this.prefixCls}-input`,
currentValue: this.value, `${this.inputPrefixCls}`,
prefixCls: prefixCls, `${this.inputPrefixCls}-${this.size}`,
visible: false, {
disableCloseUnderTransfer: false, // transfer Drop [`${this.prefixCls}-focused`]: this.visible,
recommendedColor: [ [`${this.prefixCls}-disabled`]: this.disabled,
'#2d8cf0',
'#19be6b',
'#ff9900',
'#ed3f14',
'#00b5ff',
'#19c919',
'#f9e31c',
'#ea1a1a',
'#9b1dea',
'#00c2b1',
'#ac7a33',
'#1d35ea',
'#8bc34a',
'#f16b62',
'#ea4ca3',
'#0d94aa',
'#febd79',
'#5d4037',
'#00bcd4',
'#f06292',
'#cddc39',
'#607d8b',
'#000000',
'#ffffff'
]
};
},
computed: {
transition () {
if (this.placement === 'bottom-start' || this.placement === 'bottom' || this.placement === 'bottom-end') {
return 'slide-up';
} else {
return 'fade';
}
},
saturationColors: {
get () {
return this.val;
}, },
set (newVal) { ];
this.val = newVal; },
this.$emit('on-active-change', this.formatColor); dropClasses() {
} return [
}, `${this.transferPrefixCls}-no-max-height`,
classes () { {
return [ [`${this.prefixCls}-transfer`]: this.transfer,
`${prefixCls}`, [`${this.prefixCls}-hide-drop`]: this.hideDropDown,
{ },
[`${prefixCls}-transfer`]: this.transfer ];
} },
]; displayedColorStyle() {
}, return {backgroundColor: toRGBAString(this.visible ? this.saturationColors.rgba : tinycolor(this.value).toRgb())};
wrapClasses () { },
return [ formatColor() {
`${prefixCls}-rel`, const {format, saturationColors} = this;
`${prefixCls}-${this.size}`,
`${inputPrefixCls}-wrapper`,
`${inputPrefixCls}-wrapper-${this.size}`
];
},
inputClasses () {
return [
`${prefixCls}-input`,
`${inputPrefixCls}`,
`${inputPrefixCls}-${this.size}`,
{
[`${inputPrefixCls}-disabled`]: this.disabled
}
];
},
displayedColor () {
let color;
if (this.visible) {
const rgba = this.saturationColors.rgba;
color = {
r: rgba.r,
g: rgba.g,
b: rgba.b,
a: rgba.a
};
} else {
color = tinycolor(this.value).toRgb();
}
return `rgba(${color.r}, ${color.g}, ${color.b}, ${color.a})`;
},
formatColor () {
const value = this.saturationColors;
const format = this.format;
let color;
const rgba = `rgba(${value.rgba.r}, ${value.rgba.g}, ${value.rgba.b}, ${value.rgba.a})`; if (format) {
if (format) { if (format === 'hsl') {
if (format === 'hsl') { return tinycolor(saturationColors.hsl).toHslString();
color = tinycolor(value.hsl).toHslString();
} else if (format === 'hsv') {
color = tinycolor(value.hsv).toHsvString();
} else if (format === 'hex') {
color = value.hex;
} else if (format === 'rgb') {
color = rgba;
}
} else if (this.alpha) {
color = rgba;
} else {
color = value.hex;
} }
return color;
if (format === 'hsv') {
return tinycolor(saturationColors.hsv).toHsvString();
}
if (format === 'hex') {
return saturationColors.hex;
}
if (format === 'rgb') {
return toRGBAString(saturationColors.rgba);
}
} else if (this.alpha) {
return toRGBAString(saturationColors.rgba);
}
return saturationColors.hex;
},
},
watch: {
value(newVal) {
this.val = changeColor(newVal);
},
visible(val) {
this.val = changeColor(this.value);
this.$refs.drop[val ? 'update' : 'destroy']();
this.$emit('on-open-change', Boolean(val));
},
},
mounted() {
this.$on('on-escape-keydown', this.closer);
this.$on('on-dragging', this.setDragging);
},
methods: {
setDragging(value) {
this.dragging = value;
},
handleClose(event) {
if (this.visible) {
if (this.dragging || event.type === 'mousedown') {
event.preventDefault();
return;
}
if (this.transfer) {
const {$el} = this.$refs.drop;
if ($el === event.target || $el.contains(event.target)) {
return;
}
}
this.closer(event);
return;
}
this.visible = false;
},
toggleVisible() {
if (this.disabled) {
return;
}
this.visible = !this.visible;
this.$refs.input.focus();
},
childChange(data) {
this.colorChange(data);
},
colorChange(data, oldHue) {
this.oldHue = this.saturationColors.hsl.h;
this.saturationColors = changeColor(data, oldHue || this.oldHue);
},
closer(event) {
if (event) {
event.preventDefault();
event.stopPropagation();
}
this.visible = false;
this.$refs.input.focus();
},
handleButtons(event, value) {
this.currentValue = value;
this.$emit('input', value);
this.$emit('on-change', value);
this.dispatch('FormItem', 'on-form-change', value);
this.closer(event);
},
handleSuccess(event) {
this.handleButtons(event, this.formatColor);
this.$emit('on-pick-success');
},
handleClear(event) {
this.handleButtons(event, '');
this.$emit('on-pick-clear');
},
handleSelectColor(color) {
this.val = changeColor(color);
this.$emit('on-active-change', this.formatColor);
},
handleFirstTab(event) {
if (event.shiftKey) {
event.preventDefault();
event.stopPropagation();
this.$refs.ok.$el.focus();
} }
}, },
watch: { handleLastTab(event) {
value (newVal) { if (!event.shiftKey) {
this.val = _colorChange(newVal); event.preventDefault();
}, event.stopPropagation();
visible (val) { this.$refs.saturation.$el.focus();
this.val = _colorChange(this.value);
if (val) {
this.$refs.drop.update();
} else {
this.$refs.drop.destroy();
}
} }
}, },
methods: { onTab(event) {
// transfer Drop if (this.visible) {
handleTransferClick () { event.preventDefault();
if (this.transfer) this.disableCloseUnderTransfer = true;
},
handleClose () {
if (this.disableCloseUnderTransfer) {
this.disableCloseUnderTransfer = false;
return false;
}
this.visible = false;
},
toggleVisible () {
this.visible = !this.visible;
},
childChange (data) {
this.colorChange(data);
},
colorChange (data, oldHue) {
this.oldHue = this.saturationColors.hsl.h;
this.saturationColors = _colorChange(data, oldHue || this.oldHue);
},
isValidHex (hex) {
return tinycolor(hex).isValid();
},
simpleCheckForValidColor (data) {
const keysToCheck = ['r', 'g', 'b', 'a', 'h', 's', 'l', 'v'];
let checked = 0;
let passed = 0;
for (let i = 0; i < keysToCheck.length; i++) {
const letter = keysToCheck[i];
if (data[letter]) {
checked++;
if (!isNaN(data[letter])) {
passed++;
}
}
}
if (checked === passed) {
return data;
}
},
handleSuccess () {
const color = this.formatColor;
this.currentValue = color;
this.$emit('input', color);
this.$emit('on-change', color);
this.dispatch('FormItem', 'on-form-change', color);
this.handleClose();
},
handleClear () {
this.currentValue = '';
this.$emit('input', '');
this.$emit('on-change', '');
this.dispatch('FormItem', 'on-form-change', '');
this.handleClose();
},
handleSelectColor (color) {
this.val = _colorChange(color);
} }
} },
}; onEscape(event) {
if (this.visible) {
this.closer(event);
}
},
onArrow(event) {
if (!this.visible) {
event.preventDefault();
event.stopPropagation();
this.visible = true;
}
},
},
};
</script> </script>

View file

@ -0,0 +1,7 @@
export default {
methods: {
handleEscape(e) {
this.dispatch('ColorPicker', 'on-escape-keydown', e);
},
},
};

View file

@ -0,0 +1,78 @@
import Emitter from '../../mixins/emitter';
import handleEscapeMixin from './handleEscapeMixin';
import {getTouches} from './utils';
import { on, off } from '../../utils/dom';
export default {
mixins: [Emitter, handleEscapeMixin],
props: {
focused: {
type: Boolean,
default: false,
},
value: {
type: Object,
default: undefined,
},
},
beforeDestroy() {
this.unbindEventListeners();
},
created() {
if (this.focused) {
setTimeout(() => this.$el.focus(), 1);
}
},
methods: {
handleLeft(e) {
this.handleSlide(e, this.left, 'left');
},
handleRight(e) {
this.handleSlide(e, this.right, 'right');
},
handleUp(e) {
this.handleSlide(e, this.up, 'up');
},
handleDown(e) {
this.handleSlide(e, this.down, 'down');
},
handleMouseDown(e) {
this.dispatch('ColorPicker', 'on-dragging', true);
this.handleChange(e, true);
// window.addEventListener('mousemove', this.handleChange, false);
// window.addEventListener('mouseup', this.handleMouseUp, false);
on(window, 'mousemove', this.handleChange);
on(window, 'mouseup', this.handleMouseUp);
},
handleMouseUp() {
this.unbindEventListeners();
},
unbindEventListeners() {
// window.removeEventListener('mousemove', this.handleChange);
// window.removeEventListener('mouseup', this.handleMouseUp);
off(window, 'mousemove', this.handleChange);
off(window, 'mouseup', this.handleMouseUp);
// This timeout is required so that the click handler for click-outside
// has the chance to run before the mouseup removes the dragging flag.
setTimeout(() => this.dispatch('ColorPicker', 'on-dragging', false), 1);
},
getLeft(e) {
const {container} = this.$refs;
const xOffset = container.getBoundingClientRect().left + window.pageXOffset;
const pageX = e.pageX || getTouches(e, 'PageX');
return pageX - xOffset;
},
getTop(e) {
const {container} = this.$refs;
const yOffset = container.getBoundingClientRect().top + window.pageYOffset;
const pageY = e.pageY || getTouches(e, 'PageY');
return pageY - yOffset;
},
},
};

View file

@ -1,86 +1,101 @@
<template> <template>
<div class="ivu-color-picker-hue"> <div
<div class="ivu-color-picker-hue-container" ref="container" :class="[prefixCls + '-hue']"
@mousedown="handleMouseDown" tabindex="0"
@touchmove="handleChange" @click="$el.focus()"
@touchstart="handleChange"> @keydown.esc="handleEscape"
<div class="ivu-color-picker-hue-pointer" :style="{top: 0, left: pointerLeft}"> @keydown.left="handleLeft"
<div class="ivu-color-picker-hue-picker"></div> @keydown.right="handleRight"
@keydown.up="handleUp"
@keydown.down="handleDown"
>
<div
ref="container"
:class="[prefixCls + '-hue-container']"
@mousedown="handleMouseDown"
@touchmove="handleChange"
@touchstart="handleChange">
<div
:style="{top: 0, left: `${percent}%`}"
:class="[prefixCls + '-hue-pointer']">
<div :class="[prefixCls + '-hue-picker']"></div>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
export default { import HASMixin from './hsaMixin';
name: 'Hue', import Prefixes from './prefixMixin';
props: { import {clamp} from './utils';
value: Object
},
data () {
return {
oldHue: 0,
pullDirection: ''
};
},
computed: {
colors () {
const h = this.value.hsl.h;
if (h !== 0 && h - this.oldHue > 0) this.pullDirection = 'right';
if (h !== 0 && h - this.oldHue < 0) this.pullDirection = 'left';
this.oldHue = h;
return this.value; export default {
}, name: 'Hue',
pointerLeft () {
if (this.colors.hsl.h === 0 && this.pullDirection === 'right') return '100%';
return (this.colors.hsl.h * 100) / 360 + '%';
}
},
methods: {
handleChange (e, skip) {
!skip && e.preventDefault();
const container = this.$refs.container; mixins: [HASMixin, Prefixes],
const containerWidth = container.clientWidth;
const xOffset = container.getBoundingClientRect().left + window.pageXOffset; data() {
const pageX = e.pageX || (e.touches ? e.touches[0].pageX : 0); const normalStep = 1 / 360 * 25;
const left = pageX - xOffset; const jumpStep = 20 * normalStep;
let h; return {
let percent; left: -normalStep,
right: normalStep,
up: jumpStep,
down: -jumpStep,
powerKey: 'shiftKey',
percent: clamp(this.value.hsl.h * 100 / 360, 0, 100),
};
},
if (left < 0) { watch: {
h = 0; value () {
} else if (left > containerWidth) { this.percent = clamp(this.value.hsl.h * 100 / 360, 0, 100);
h = 360;
} else {
percent = left * 100 / containerWidth;
h = (360 * percent / 100);
}
if (this.colors.hsl.h !== h) {
this.$emit('change', {
h: h,
s: this.colors.hsl.s,
l: this.colors.hsl.l,
a: this.colors.hsl.a,
source: 'hsl'
});
}
},
handleMouseDown (e) {
this.handleChange(e, true);
window.addEventListener('mousemove', this.handleChange);
window.addEventListener('mouseup', this.handleMouseUp);
},
handleMouseUp () {
this.unbindEventListeners();
},
unbindEventListeners () {
window.removeEventListener('mousemove', this.handleChange);
window.removeEventListener('mouseup', this.handleMouseUp);
}
} }
}; },
methods: {
change(percent) {
this.percent = clamp(percent, 0, 100);
const {h, s, l, a} = this.value.hsl;
const newHue = clamp(percent / 100 * 360, 0, 360);
if (h !== newHue) {
this.$emit('change', {h: newHue, s, l, a, source: 'hsl'});
}
},
handleSlide(e, direction) {
e.preventDefault();
e.stopPropagation();
if (e[this.powerKey]) {
this.change(direction < 0 ? 0 : 100);
return;
}
this.change(this.percent + direction);
},
handleChange(e) {
e.preventDefault();
e.stopPropagation();
const left = this.getLeft(e);
if (left < 0) {
this.change(0);
return;
}
const {clientWidth} = this.$refs.container;
if (left > clientWidth) {
this.change(100);
return;
}
this.change(left * 100 / clientWidth);
},
},
};
</script> </script>

View file

@ -1,2 +1,3 @@
import ColorPicker from './color-picker.vue'; import ColorPicker from './color-picker.vue';
export default ColorPicker; export default ColorPicker;

View file

@ -0,0 +1,10 @@
export default {
data() {
return {
prefixCls: 'ivu-color-picker',
inputPrefixCls: 'ivu-input',
iconPrefixCls: 'ivu-icon',
transferPrefixCls: 'ivu-transfer',
};
},
};

View file

@ -1,20 +1,153 @@
<template> <template>
<div> <div
ref="reference"
tabindex="0"
@click="handleClick"
@keydown.esc="handleEscape"
@keydown.enter="handleEnter"
@keydown.left="handleArrow($event, 'x', left)"
@keydown.right="handleArrow($event, 'x', right)"
@keydown.up="handleArrow($event, 'y', up)"
@keydown.down="handleArrow($event, 'y', down)"
@blur="blurColor"
@focus="focusColor"
>
<template v-for="(item, index) in list"> <template v-for="(item, index) in list">
<span @click="handleClick(index)"><em :style="{'background': item}"></em></span> <div
<br v-if="(index + 1) % 12 === 0 && index !== 0 && (index + 1) !== list.length"> :key="item + ':' + index"
:class="[prefixCls + '-picker-colors-wrapper']">
<div :data-color-id="index">
<div
:style="{background: item}"
:class="[prefixCls + '-picker-colors-wrapper-color']"
></div>
<div
:ref="'color-circle-' + index"
:class="[prefixCls + '-picker-colors-wrapper-circle', hideClass]"></div>
</div>
</div>
<br v-if="lineBreak(list, index)">
</template> </template>
</div> </div>
</template> </template>
<script> <script>
export default { import Emitter from '../../mixins/emitter';
props: { import HandleEscapeMixin from './handleEscapeMixin';
list: Array import Prefixes from './prefixMixin';
import {clamp} from './utils';
export default {
name: 'RecommendedColors',
mixins: [Emitter, HandleEscapeMixin, Prefixes],
props: {
list: {
type: Array,
default: undefined,
}, },
methods: { },
handleClick (index) {
this.$emit('picker-color', this.list[index]); data() {
const columns = 12;
const rows = Math.ceil(this.list.length / columns);
const normalStep = 1;
return {
left: -normalStep,
right: normalStep,
up: -normalStep,
down: normalStep,
powerKey: 'shiftKey',
grid: {x: 1, y: 1},
rows,
columns,
};
},
computed: {
hideClass() {
return `${this.prefixCls}-hide`;
},
linearIndex() {
return this.getLinearIndex(this.grid);
},
currentCircle() {
return this.$refs[`color-circle-${this.linearIndex}`][0];
},
},
methods: {
getLinearIndex(grid) {
return this.columns * (grid.y - 1) + grid.x - 1;
},
getMaxLimit(axis) {
return axis === 'x' ? this.columns : this.rows;
},
handleArrow(e, axis, direction) {
e.preventDefault();
e.stopPropagation();
this.blurColor();
const grid = {...this.grid};
if (e[this.powerKey]) {
if (direction < 0) {
grid[axis] = 1;
} else {
grid[axis] = this.getMaxLimit(axis);
}
} else {
grid[axis] += direction;
} }
}
}; const index = this.getLinearIndex(grid);
if (index >= 0 && index < this.list.length) {
this.grid[axis] = clamp(grid[axis], 1, this.getMaxLimit(axis));
}
this.focusColor();
},
blurColor() {
this.currentCircle.classList.add(this.hideClass);
},
focusColor() {
this.currentCircle.classList.remove(this.hideClass);
},
handleEnter(e) {
this.handleClick(e, this.currentCircle);
},
handleClick(e, circle) {
e.preventDefault();
e.stopPropagation();
this.$refs.reference.focus();
const target = circle || e.target;
const colorId = target.dataset.colorId || target.parentElement.dataset.colorId;
if (colorId) {
this.blurColor();
const id = Number(colorId) + 1;
this.grid.x = id % this.columns || this.columns;
this.grid.y = Math.ceil(id / this.columns);
this.focusColor();
this.$emit('picker-color', this.list[colorId]);
this.$emit('change', {hex: this.list[colorId], source: 'hex'});
}
},
lineBreak(list, index) {
if (!index) {
return false;
}
const nextIndex = index + 1;
return nextIndex < list.length && nextIndex % this.columns === 0;
},
},
};
</script> </script>

View file

@ -1,98 +1,101 @@
<template> <template>
<div class="ivu-color-picker-saturation-wrapper"> <div
:class="[prefixCls + '-saturation-wrapper']"
tabindex="0"
@keydown.esc="handleEscape"
@click="$el.focus()"
@keydown.left="handleLeft"
@keydown.right="handleRight"
@keydown.up="handleUp"
@keydown.down="handleDown"
>
<div <div
class="ivu-color-picker-saturation"
:style="{background: bgColor}"
ref="container" ref="container"
:style="bgColorStyle"
:class="[prefixCls + '-saturation']"
@mousedown="handleMouseDown"> @mousedown="handleMouseDown">
<div class="ivu-color-picker-saturation--white"></div> <div :class="[prefixCls + '-saturation--white']"></div>
<div class="ivu-color-picker-saturation--black"></div> <div :class="[prefixCls + '-saturation--black']"></div>
<div class="ivu-color-picker-saturation-pointer" :style="{top: pointerTop, left: pointerLeft}"> <div
<div class="ivu-color-picker-saturation-circle"></div> :style="pointerStyle"
:class="[prefixCls + '-saturation-pointer']">
<div :class="[prefixCls + '-saturation-circle']"></div>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script>
import throttle from 'lodash.throttle';
export default { <script>
name: 'Saturation', import HSAMixin from './hsaMixin';
props: { import Prefixes from './prefixMixin';
value: Object import {clamp, getIncrement} from './utils';
import { on, off } from '../../utils/dom';
export default {
name: 'Saturation',
mixins: [HSAMixin, Prefixes],
data() {
const normalStep = 0.01;
return {
left: -normalStep,
right: normalStep,
up: normalStep,
down: -normalStep,
multiplier: 10,
powerKey: 'shiftKey',
};
},
computed: {
bgColorStyle() {
return {background: `hsl(${this.value.hsv.h}, 100%, 50%)`};
}, },
data () { pointerStyle() {
return {}; return {top: `${-(this.value.hsv.v * 100) + 1 + 100}%`, left: `${this.value.hsv.s * 100}%`};
}, },
computed: { },
colors () {
return this.value; methods: {
}, change(h, s, v, a) {
bgColor () { this.$emit('change', {h, s, v, a, source: 'hsva'});
return `hsl(${this.colors.hsv.h}, 100%, 50%)`;
},
pointerTop () {
return (-(this.colors.hsv.v * 100) + 1) + 100 + '%';
},
pointerLeft () {
return this.colors.hsv.s * 100 + '%';
}
}, },
methods: { handleSlide(e, direction, key) {
throttle: throttle((fn, data) => {fn(data);}, 20, e.preventDefault();
{ e.stopPropagation();
'leading': true,
'trailing': false const isPowerKey = e[this.powerKey];
}), const increment = isPowerKey ? direction * this.multiplier : direction;
handleChange (e, skip) { const {h, s, v, a} = this.value.hsv;
!skip && e.preventDefault(); const saturation = clamp(s + getIncrement(key, ['left', 'right'], increment), 0, 1);
const container = this.$refs.container; const bright = clamp(v + getIncrement(key, ['up', 'down'], increment), 0, 1);
const containerWidth = container.clientWidth;
const containerHeight = container.clientHeight; this.change(h, saturation, bright, a);
const xOffset = container.getBoundingClientRect().left + window.pageXOffset; },
const yOffset = container.getBoundingClientRect().top + window.pageYOffset; handleChange(e) {
const pageX = e.pageX || (e.touches ? e.touches[0].pageX : 0); e.preventDefault();
const pageY = e.pageY || (e.touches ? e.touches[0].pageY : 0); e.stopPropagation();
let left = pageX - xOffset;
let top = pageY - yOffset; const {clientWidth, clientHeight} = this.$refs.container;
if (left < 0) { const left = clamp(this.getLeft(e), 0, clientWidth);
left = 0; const top = clamp(this.getTop(e), 0, clientHeight);
} else if (left > containerWidth) { const saturation = left / clientWidth;
left = containerWidth; const bright = clamp(1 - top / clientHeight, 0, 1);
} else if (top < 0) {
top = 0; this.change(this.value.hsv.h, saturation, bright, this.value.hsv.a);
} else if (top > containerHeight) { },
top = containerHeight; handleMouseDown(e) {
} HSAMixin.methods.handleMouseDown.call(this, e);
const saturation = left / containerWidth; // window.addEventListener('mouseup', this.handleChange, false);
let bright = -(top / containerHeight) + 1; on(window, 'mouseup', this.handleChange);
bright = bright > 0 ? bright : 0; },
bright = bright > 1 ? 1 : bright; unbindEventListeners(e) {
this.throttle(this.onChange, { HSAMixin.methods.unbindEventListeners.call(this, e);
h: this.colors.hsv.h, // window.removeEventListener('mouseup', this.handleChange);
s: saturation, off(window, 'mouseup', this.handleChange);
v: bright, },
a: this.colors.hsv.a, },
source: 'hsva' };
});
},
onChange (param) {
this.$emit('change', param);
},
handleMouseDown () {
// this.handleChange(e, true)
window.addEventListener('mousemove', this.handleChange);
window.addEventListener('mouseup', this.handleChange);
window.addEventListener('mouseup', this.handleMouseUp);
},
handleMouseUp () {
this.unbindEventListeners();
},
unbindEventListeners () {
window.removeEventListener('mousemove', this.handleChange);
window.removeEventListener('mouseup', this.handleChange);
window.removeEventListener('mouseup', this.handleMouseUp);
}
}
};
</script> </script>

View file

@ -0,0 +1,118 @@
import tinycolor from 'tinycolor2';
import {oneOf} from '../../utils/assist';
function setAlpha(data, alpha) {
const color = tinycolor(data);
const {_a} = color;
if (_a === undefined || _a === null) {
color.setAlpha(alpha || 1);
}
return color;
}
function getColor(data, colorData) {
const alpha = colorData && colorData.a;
if (colorData) {
// hsl is better than hex between conversions
if (colorData.hsl) {
return setAlpha(colorData.hsl, alpha);
}
if (colorData.hex && colorData.hex.length > 0) {
return setAlpha(colorData.hex, alpha);
}
}
return setAlpha(colorData, alpha);
}
export function changeColor(data, oldHue) {
const colorData = data === '' ? '#2d8cf0' : data;
const color = getColor(data, colorData);
const hsl = color.toHsl();
const hsv = color.toHsv();
if (hsl.s === 0) {
hsl.h = colorData.h || (colorData.hsl && colorData.hsl.h) || oldHue || 0;
hsv.h = hsl.h;
}
// when the hsv.v is less than 0.0164 (base on test)
// because of possible loss of precision
// the result of hue and saturation would be miscalculated
if (hsv.v < 0.0164) {
hsv.h = colorData.h || (colorData.hsv && colorData.hsv.h) || 0;
hsv.s = colorData.s || (colorData.hsv && colorData.hsv.s) || 0;
}
if (hsl.l < 0.01) {
hsl.h = colorData.h || (colorData.hsl && colorData.hsl.h) || 0;
hsl.s = colorData.s || (colorData.hsl && colorData.hsl.s) || 0;
}
return {
hsl,
hex: color.toHexString().toUpperCase(),
rgba: color.toRgb(),
hsv,
oldHue: colorData.h || oldHue || hsl.h,
source: colorData.source,
a: colorData.a || color.getAlpha(),
};
}
export function clamp(value, min, max) {
if (value < min) {
return min;
}
if (value > max) {
return max;
}
return value;
}
export function getIncrement(key, keys, increment) {
return oneOf(key, keys) ? increment : 0;
}
export function getTouches(e, prop) {
return e.touches ? e.touches[0][prop] : 0;
}
export function toRGBAString(rgba) {
const {r, g, b, a} = rgba;
return `rgba(${[r, g, b, a].join(',')})`;
}
export function isValidHex(hex) {
return tinycolor(hex).isValid();
}
function checkIteratee(data, counts, letter) {
let {checked, passed} = counts;
const value = data[letter];
if (value) {
checked += 1;
if (Number.isFinite(value)) {
passed += 1;
}
}
return {checked, passed};
}
const keysToCheck = ['r', 'g', 'b', 'a', 'h', 's', 'l', 'v'];
export function simpleCheckForValidColor(data) {
const results = keysToCheck.reduce(checkIteratee.bind(null, data), {checked: 0, passed: 0});
return results.checked === results.passed ? data : undefined;
}

View file

@ -1,37 +1,47 @@
<template> <template>
<div :class="[prefixCls + '-confirm']"> <div :class="[prefixCls + '-confirm']" @keydown.tab.capture="handleTab">
<span :class="timeClasses" v-if="showTime" @click="handleToggleTime"> <i-button :class="timeClasses" size="small" type="text" :disabled="timeDisabled" v-if="showTime" @click="handleToggleTime">
<template v-if="isTime">{{ t('i.datepicker.selectDate') }}</template> {{labels.time}}
<template v-else>{{ t('i.datepicker.selectTime') }}</template> </i-button>
</span> <i-button size="small" type="ghost" @click.native="handleClear" @keydown.enter.native="handleClear">
<i-button size="small" type="text" @click.native="handleClear">{{ t('i.datepicker.clear') }}</i-button> {{labels.clear}}
<i-button size="small" type="primary" @click.native="handleSuccess">{{ t('i.datepicker.ok') }}</i-button> </i-button>
<i-button size="small" type="primary" @click.native="handleSuccess" @keydown.enter.native="handleSuccess">
{{labels.ok}}
</i-button>
</div> </div>
</template> </template>
<script> <script>
import iButton from '../../button/button.vue'; import iButton from '../../button/button.vue';
import Locale from '../../../mixins/locale'; import Locale from '../../../mixins/locale';
import Emitter from '../../../mixins/emitter';
const prefixCls = 'ivu-picker'; const prefixCls = 'ivu-picker';
export default { export default {
mixins: [ Locale ], mixins: [Locale, Emitter],
components: { iButton }, components: {iButton},
props: { props: {
showTime: false, showTime: false,
isTime: false, isTime: false,
timeDisabled: false timeDisabled: false
}, },
data () { data() {
return { return {
prefixCls: prefixCls prefixCls: prefixCls
}; };
}, },
computed: { computed: {
timeClasses () { timeClasses () {
return { return `${prefixCls}-confirm-time`;
[`${prefixCls}-confirm-time-disabled`]: this.timeDisabled },
}; labels(){
const labels = ['time', 'clear', 'ok'];
const values = [(this.isTime ? 'selectDate' : 'selectTime'), 'clear', 'ok'];
return labels.reduce((obj, key, i) => {
obj[key] = this.t('i.datepicker.' + values[i]);
return obj;
}, {});
} }
}, },
methods: { methods: {
@ -44,6 +54,17 @@
handleToggleTime () { handleToggleTime () {
if (this.timeDisabled) return; if (this.timeDisabled) return;
this.$emit('on-pick-toggle-time'); this.$emit('on-pick-toggle-time');
this.dispatch('CalendarPicker', 'focus-input');
},
handleTab(e) {
const tabbables = [...this.$el.children];
const expectedFocus = tabbables[e.shiftKey ? 'shift' : 'pop']();
if (document.activeElement === expectedFocus) {
e.preventDefault();
e.stopPropagation();
this.dispatch('CalendarPicker', 'focus-input');
}
} }
} }
}; };

View file

@ -7,9 +7,9 @@
</div> </div>
<span <span
:class="getCellCls(cell)" :class="getCellCls(cell)"
v-for="(cell, i) in readCells" v-for="(cell, i) in cells"
:key="String(cell.date) + i" :key="String(cell.date) + i"
@click="handleClick(cell)" @click="handleClick(cell, $event)"
@mouseenter="handleMouseMove(cell)" @mouseenter="handleMouseMove(cell)"
> >
<em>{{ cell.desc }}</em> <em>{{ cell.desc }}</em>
@ -61,7 +61,7 @@
const weekDays = translatedDays.splice(weekStartDay, 7 - weekStartDay).concat(translatedDays.splice(0, weekStartDay)); const weekDays = translatedDays.splice(weekStartDay, 7 - weekStartDay).concat(translatedDays.splice(0, weekStartDay));
return this.showWeekNumbers ? [''].concat(weekDays) : weekDays; return this.showWeekNumbers ? [''].concat(weekDays) : weekDays;
}, },
readCells () { cells () {
const tableYear = this.tableDate.getFullYear(); const tableYear = this.tableDate.getFullYear();
const tableMonth = this.tableDate.getMonth(); const tableMonth = this.tableDate.getMonth();
const today = clearHours(new Date()); // timestamp of today const today = clearHours(new Date()); // timestamp of today
@ -99,7 +99,9 @@
[`${prefixCls}-cell-prev-month`]: cell.type === 'prevMonth', [`${prefixCls}-cell-prev-month`]: cell.type === 'prevMonth',
[`${prefixCls}-cell-next-month`]: cell.type === 'nextMonth', [`${prefixCls}-cell-next-month`]: cell.type === 'nextMonth',
[`${prefixCls}-cell-week-label`]: cell.type === 'weekLabel', [`${prefixCls}-cell-week-label`]: cell.type === 'weekLabel',
[`${prefixCls}-cell-range`]: cell.range && !cell.start && !cell.end [`${prefixCls}-cell-range`]: cell.range && !cell.start && !cell.end,
[`${prefixCls}-focused`]: clearHours(cell.date) === clearHours(this.focusedDate)
} }
]; ];
}, },

View file

@ -2,6 +2,7 @@
import {clearHours} from '../util'; import {clearHours} from '../util';
export default { export default {
name: 'PanelTable',
props: { props: {
tableDate: { tableDate: {
type: Date, type: Date,
@ -26,7 +27,10 @@ export default {
selecting: false selecting: false
}) })
}, },
focusedDate: {
type: Date,
required: true,
}
}, },
computed: { computed: {
dates(){ dates(){

View file

@ -38,14 +38,16 @@
const tableYear = this.tableDate.getFullYear(); const tableYear = this.tableDate.getFullYear();
const selectedDays = this.dates.filter(Boolean).map(date => clearHours(new Date(date.getFullYear(), date.getMonth(), 1))); const selectedDays = this.dates.filter(Boolean).map(date => clearHours(new Date(date.getFullYear(), date.getMonth(), 1)));
const focusedDate = clearHours(new Date(this.focusedDate.getFullYear(), this.focusedDate.getMonth(), 1));
for (let i = 0; i < 12; i++) { for (let i = 0; i < 12; i++) {
const cell = deepCopy(cell_tmpl); const cell = deepCopy(cell_tmpl);
cell.date = new Date(tableYear, i, 1); cell.date = new Date(tableYear, i, 1);
cell.text = this.tCell(i + 1); cell.text = this.tCell(i + 1);
const time = clearHours(cell.date); const day = clearHours(cell.date);
cell.disabled = typeof this.disabledDate === 'function' && this.disabledDate(cell.date) && this.selectionMode === 'month'; cell.disabled = typeof this.disabledDate === 'function' && this.disabledDate(cell.date) && this.selectionMode === 'month';
cell.selected = selectedDays.includes(time); cell.selected = selectedDays.includes(day);
cell.focused = day === focusedDate;
cells.push(cell); cells.push(cell);
} }
@ -59,6 +61,7 @@
{ {
[`${prefixCls}-cell-selected`]: cell.selected, [`${prefixCls}-cell-selected`]: cell.selected,
[`${prefixCls}-cell-disabled`]: cell.disabled, [`${prefixCls}-cell-disabled`]: cell.disabled,
[`${prefixCls}-cell-focused`]: cell.focused,
[`${prefixCls}-cell-range`]: cell.range && !cell.start && !cell.end [`${prefixCls}-cell-range`]: cell.range && !cell.start && !cell.end
} }
]; ];

View file

@ -22,8 +22,10 @@
import { deepCopy, scrollTop, firstUpperCase } from '../../../utils/assist'; import { deepCopy, scrollTop, firstUpperCase } from '../../../utils/assist';
const prefixCls = 'ivu-time-picker-cells'; const prefixCls = 'ivu-time-picker-cells';
const timeParts = ['hours', 'minutes', 'seconds'];
export default { export default {
name: 'TimeSpinner',
mixins: [Options], mixins: [Options],
props: { props: {
hours: { hours: {
@ -51,7 +53,9 @@
return { return {
spinerSteps: [1, 1, 1].map((one, i) => Math.abs(this.steps[i]) || one), spinerSteps: [1, 1, 1].map((one, i) => Math.abs(this.steps[i]) || one),
prefixCls: prefixCls, prefixCls: prefixCls,
compiled: false compiled: false,
focusedColumn: -1, // which column inside the picker
focusedTime: [0, 0, 0] // the values array into [hh, mm, ss]
}; };
}, },
computed: { computed: {
@ -66,6 +70,7 @@
hoursList () { hoursList () {
let hours = []; let hours = [];
const step = this.spinerSteps[0]; const step = this.spinerSteps[0];
const focusedHour = this.focusedColumn === 0 && this.focusedTime[0];
const hour_tmpl = { const hour_tmpl = {
text: 0, text: 0,
selected: false, selected: false,
@ -76,6 +81,7 @@
for (let i = 0; i < 24; i += step) { for (let i = 0; i < 24; i += step) {
const hour = deepCopy(hour_tmpl); const hour = deepCopy(hour_tmpl);
hour.text = i; hour.text = i;
hour.focused = i === focusedHour;
if (this.disabledHours.length && this.disabledHours.indexOf(i) > -1) { if (this.disabledHours.length && this.disabledHours.indexOf(i) > -1) {
hour.disabled = true; hour.disabled = true;
@ -90,6 +96,7 @@
minutesList () { minutesList () {
let minutes = []; let minutes = [];
const step = this.spinerSteps[1]; const step = this.spinerSteps[1];
const focusedMinute = this.focusedColumn === 1 && this.focusedTime[1];
const minute_tmpl = { const minute_tmpl = {
text: 0, text: 0,
selected: false, selected: false,
@ -100,6 +107,7 @@
for (let i = 0; i < 60; i += step) { for (let i = 0; i < 60; i += step) {
const minute = deepCopy(minute_tmpl); const minute = deepCopy(minute_tmpl);
minute.text = i; minute.text = i;
minute.focused = i === focusedMinute;
if (this.disabledMinutes.length && this.disabledMinutes.indexOf(i) > -1) { if (this.disabledMinutes.length && this.disabledMinutes.indexOf(i) > -1) {
minute.disabled = true; minute.disabled = true;
@ -113,6 +121,7 @@
secondsList () { secondsList () {
let seconds = []; let seconds = [];
const step = this.spinerSteps[2]; const step = this.spinerSteps[2];
const focusedMinute = this.focusedColumn === 2 && this.focusedTime[2];
const second_tmpl = { const second_tmpl = {
text: 0, text: 0,
selected: false, selected: false,
@ -123,6 +132,7 @@
for (let i = 0; i < 60; i += step) { for (let i = 0; i < 60; i += step) {
const second = deepCopy(second_tmpl); const second = deepCopy(second_tmpl);
second.text = i; second.text = i;
second.focused = i === focusedMinute;
if (this.disabledSeconds.length && this.disabledSeconds.indexOf(i) > -1) { if (this.disabledSeconds.length && this.disabledSeconds.indexOf(i) > -1) {
second.disabled = true; second.disabled = true;
@ -141,15 +151,32 @@
`${prefixCls}-cell`, `${prefixCls}-cell`,
{ {
[`${prefixCls}-cell-selected`]: cell.selected, [`${prefixCls}-cell-selected`]: cell.selected,
[`${prefixCls}-cell-focused`]: cell.focused,
[`${prefixCls}-cell-disabled`]: cell.disabled [`${prefixCls}-cell-disabled`]: cell.disabled
} }
]; ];
}, },
chooseValue(values){
const changes = timeParts.reduce((obj, part, i) => {
const value = values[i];
if (this[part] === value) return obj;
return {
...obj,
[part]: value
};
}, {});
if (Object.keys(changes).length > 0) {
this.emitChange(changes);
}
},
handleClick (type, cell) { handleClick (type, cell) {
if (cell.disabled) return; if (cell.disabled) return;
const data = {}; const data = {[type]: cell.text};
data[type] = cell.text; this.emitChange(data);
this.$emit('on-change', data); },
emitChange(changes){
this.$emit('on-change', changes);
this.$emit('on-pick-click'); this.$emit('on-pick-click');
}, },
scroll (type, index) { scroll (type, index) {
@ -168,15 +195,19 @@
return index; return index;
}, },
updateScroll () { updateScroll () {
const times = ['hours', 'minutes', 'seconds'];
this.$nextTick(() => { this.$nextTick(() => {
times.forEach(type => { timeParts.forEach(type => {
this.$refs[type].scrollTop = 24 * this[`${type}List`].findIndex(obj => obj.text == this[type]); this.$refs[type].scrollTop = 24 * this[`${type}List`].findIndex(obj => obj.text == this[type]);
}); });
}); });
}, },
formatTime (text) { formatTime (text) {
return text < 10 ? '0' + text : text; return text < 10 ? '0' + text : text;
},
updateFocusedTime(col, time) {
this.focusedColumn = col;
this.focusedTime = time.slice();
} }
}, },
watch: { watch: {
@ -191,6 +222,13 @@
seconds (val) { seconds (val) {
if (!this.compiled) return; if (!this.compiled) return;
this.scroll('seconds', this.secondsList.findIndex(obj => obj.text == val)); this.scroll('seconds', this.secondsList.findIndex(obj => obj.text == val));
},
focusedTime(updated, old){
timeParts.forEach((part, i) => {
if (updated[i] === old[i] || typeof updated[i] === 'undefined') return;
const valueIndex = this[`${part}List`].findIndex(obj => obj.text === updated[i]);
this.scroll(part, valueIndex);
});
} }
}, },
mounted () { mounted () {

Some files were not shown because too many files have changed in this diff Show more