123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683 |
- module.exports =
- /******/ (function(modules) { // webpackBootstrap
- /******/ // The module cache
- /******/ var installedModules = {};
- /******/
- /******/ // The require function
- /******/ function __webpack_require__(moduleId) {
- /******/
- /******/ // Check if module is in cache
- /******/ if(installedModules[moduleId]) {
- /******/ return installedModules[moduleId].exports;
- /******/ }
- /******/ // Create a new module (and put it into the cache)
- /******/ var module = installedModules[moduleId] = {
- /******/ i: moduleId,
- /******/ l: false,
- /******/ exports: {}
- /******/ };
- /******/
- /******/ // Execute the module function
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
- /******/
- /******/ // Flag the module as loaded
- /******/ module.l = true;
- /******/
- /******/ // Return the exports of the module
- /******/ return module.exports;
- /******/ }
- /******/
- /******/
- /******/ // expose the modules object (__webpack_modules__)
- /******/ __webpack_require__.m = modules;
- /******/
- /******/ // expose the module cache
- /******/ __webpack_require__.c = installedModules;
- /******/
- /******/ // define getter function for harmony exports
- /******/ __webpack_require__.d = function(exports, name, getter) {
- /******/ if(!__webpack_require__.o(exports, name)) {
- /******/ Object.defineProperty(exports, name, {
- /******/ configurable: false,
- /******/ enumerable: true,
- /******/ get: getter
- /******/ });
- /******/ }
- /******/ };
- /******/
- /******/ // getDefaultExport function for compatibility with non-harmony modules
- /******/ __webpack_require__.n = function(module) {
- /******/ var getter = module && module.__esModule ?
- /******/ function getDefault() { return module['default']; } :
- /******/ function getModuleExports() { return module; };
- /******/ __webpack_require__.d(getter, 'a', getter);
- /******/ return getter;
- /******/ };
- /******/
- /******/ // Object.prototype.hasOwnProperty.call
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
- /******/
- /******/ // __webpack_public_path__
- /******/ __webpack_require__.p = "/dist/";
- /******/
- /******/ // Load entry module and return exports
- /******/ return __webpack_require__(__webpack_require__.s = 217);
- /******/ })
- /************************************************************************/
- /******/ ({
- /***/ 0:
- /***/ (function(module, exports) {
- /* globals __VUE_SSR_CONTEXT__ */
- // IMPORTANT: Do NOT use ES2015 features in this file.
- // This module is a runtime utility for cleaner component module output and will
- // be included in the final webpack user bundle.
- module.exports = function normalizeComponent (
- rawScriptExports,
- compiledTemplate,
- functionalTemplate,
- injectStyles,
- scopeId,
- moduleIdentifier /* server only */
- ) {
- var esModule
- var scriptExports = rawScriptExports = rawScriptExports || {}
- // ES6 modules interop
- var type = typeof rawScriptExports.default
- if (type === 'object' || type === 'function') {
- esModule = rawScriptExports
- scriptExports = rawScriptExports.default
- }
- // Vue.extend constructor export interop
- var options = typeof scriptExports === 'function'
- ? scriptExports.options
- : scriptExports
- // render functions
- if (compiledTemplate) {
- options.render = compiledTemplate.render
- options.staticRenderFns = compiledTemplate.staticRenderFns
- options._compiled = true
- }
- // functional template
- if (functionalTemplate) {
- options.functional = true
- }
- // scopedId
- if (scopeId) {
- options._scopeId = scopeId
- }
- var hook
- if (moduleIdentifier) { // server build
- hook = function (context) {
- // 2.3 injection
- context =
- context || // cached call
- (this.$vnode && this.$vnode.ssrContext) || // stateful
- (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
- // 2.2 with runInNewContext: true
- if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
- context = __VUE_SSR_CONTEXT__
- }
- // inject component styles
- if (injectStyles) {
- injectStyles.call(this, context)
- }
- // register component module identifier for async chunk inferrence
- if (context && context._registeredComponents) {
- context._registeredComponents.add(moduleIdentifier)
- }
- }
- // used by ssr in case component is cached and beforeCreate
- // never gets called
- options._ssrRegister = hook
- } else if (injectStyles) {
- hook = injectStyles
- }
- if (hook) {
- var functional = options.functional
- var existing = functional
- ? options.render
- : options.beforeCreate
- if (!functional) {
- // inject component registration as beforeCreate hook
- options.beforeCreate = existing
- ? [].concat(existing, hook)
- : [hook]
- } else {
- // for template-only hot-reload because in that case the render fn doesn't
- // go through the normalizer
- options._injectStyles = hook
- // register for functioal component in vue file
- options.render = function renderWithStyleInjection (h, context) {
- hook.call(context)
- return existing(h, context)
- }
- }
- }
- return {
- esModule: esModule,
- exports: scriptExports,
- options: options
- }
- }
- /***/ }),
- /***/ 1:
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/mixins/emitter");
- /***/ }),
- /***/ 10:
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/clickoutside");
- /***/ }),
- /***/ 11:
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- exports.__esModule = true;
- exports.nextYear = exports.prevYear = exports.nextMonth = exports.prevMonth = exports.timeWithinRange = exports.limitTimeRange = exports.clearMilliseconds = exports.clearTime = exports.modifyTime = exports.modifyDate = exports.range = exports.getRangeHours = exports.getWeekNumber = exports.getStartDateOfMonth = exports.nextDate = exports.prevDate = exports.getFirstDayOfMonth = exports.getDayCountOfYear = exports.getDayCountOfMonth = exports.parseDate = exports.formatDate = exports.isDateObject = exports.isDate = exports.toDate = undefined;
- var _date = __webpack_require__(28);
- var _date2 = _interopRequireDefault(_date);
- var _locale = __webpack_require__(14);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- var weeks = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'];
- var months = ['jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'];
- var getI18nSettings = function getI18nSettings() {
- return {
- dayNamesShort: weeks.map(function (week) {
- return (0, _locale.t)('el.datepicker.weeks.' + week);
- }),
- dayNames: weeks.map(function (week) {
- return (0, _locale.t)('el.datepicker.weeks.' + week);
- }),
- monthNamesShort: months.map(function (month) {
- return (0, _locale.t)('el.datepicker.months.' + month);
- }),
- monthNames: months.map(function (month, index) {
- return (0, _locale.t)('el.datepicker.month' + (index + 1));
- }),
- amPm: ['am', 'pm']
- };
- };
- var newArray = function newArray(start, end) {
- var result = [];
- for (var i = start; i <= end; i++) {
- result.push(i);
- }
- return result;
- };
- var toDate = exports.toDate = function toDate(date) {
- return isDate(date) ? new Date(date) : null;
- };
- var isDate = exports.isDate = function isDate(date) {
- if (date === null || date === undefined) return false;
- if (isNaN(new Date(date).getTime())) return false;
- return true;
- };
- var isDateObject = exports.isDateObject = function isDateObject(val) {
- return val instanceof Date;
- };
- var formatDate = exports.formatDate = function formatDate(date, format) {
- date = toDate(date);
- if (!date) return '';
- return _date2.default.format(date, format || 'yyyy-MM-dd', getI18nSettings());
- };
- var parseDate = exports.parseDate = function parseDate(string, format) {
- return _date2.default.parse(string, format || 'yyyy-MM-dd', getI18nSettings());
- };
- var getDayCountOfMonth = exports.getDayCountOfMonth = function getDayCountOfMonth(year, month) {
- if (month === 3 || month === 5 || month === 8 || month === 10) {
- return 30;
- }
- if (month === 1) {
- if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) {
- return 29;
- } else {
- return 28;
- }
- }
- return 31;
- };
- var getDayCountOfYear = exports.getDayCountOfYear = function getDayCountOfYear(year) {
- var isLeapYear = year % 400 === 0 || year % 100 !== 0 && year % 4 === 0;
- return isLeapYear ? 366 : 365;
- };
- var getFirstDayOfMonth = exports.getFirstDayOfMonth = function getFirstDayOfMonth(date) {
- var temp = new Date(date.getTime());
- temp.setDate(1);
- return temp.getDay();
- };
- // see: https://stackoverflow.com/questions/3674539/incrementing-a-date-in-javascript
- // {prev, next} Date should work for Daylight Saving Time
- // Adding 24 * 60 * 60 * 1000 does not work in the above scenario
- var prevDate = exports.prevDate = function prevDate(date) {
- var amount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
- return new Date(date.getFullYear(), date.getMonth(), date.getDate() - amount);
- };
- var nextDate = exports.nextDate = function nextDate(date) {
- var amount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
- return new Date(date.getFullYear(), date.getMonth(), date.getDate() + amount);
- };
- var getStartDateOfMonth = exports.getStartDateOfMonth = function getStartDateOfMonth(year, month) {
- var result = new Date(year, month, 1);
- var day = result.getDay();
- if (day === 0) {
- return prevDate(result, 7);
- } else {
- return prevDate(result, day);
- }
- };
- var getWeekNumber = exports.getWeekNumber = function getWeekNumber(src) {
- var date = new Date(src.getTime());
- date.setHours(0, 0, 0, 0);
- // Thursday in current week decides the year.
- date.setDate(date.getDate() + 3 - (date.getDay() + 6) % 7);
- // January 4 is always in week 1.
- var week1 = new Date(date.getFullYear(), 0, 4);
- // Adjust to Thursday in week 1 and count number of weeks from date to week 1.
- // Rounding should be fine for Daylight Saving Time. Its shift should never be more than 12 hours.
- return 1 + Math.round(((date.getTime() - week1.getTime()) / 86400000 - 3 + (week1.getDay() + 6) % 7) / 7);
- };
- var getRangeHours = exports.getRangeHours = function getRangeHours(ranges) {
- var hours = [];
- var disabledHours = [];
- (ranges || []).forEach(function (range) {
- var value = range.map(function (date) {
- return date.getHours();
- });
- disabledHours = disabledHours.concat(newArray(value[0], value[1]));
- });
- if (disabledHours.length) {
- for (var i = 0; i < 24; i++) {
- hours[i] = disabledHours.indexOf(i) === -1;
- }
- } else {
- for (var _i = 0; _i < 24; _i++) {
- hours[_i] = false;
- }
- }
- return hours;
- };
- var range = exports.range = function range(n) {
- // see https://stackoverflow.com/questions/3746725/create-a-javascript-array-containing-1-n
- return Array.apply(null, { length: n }).map(function (_, n) {
- return n;
- });
- };
- var modifyDate = exports.modifyDate = function modifyDate(date, y, m, d) {
- return new Date(y, m, d, date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds());
- };
- var modifyTime = exports.modifyTime = function modifyTime(date, h, m, s) {
- return new Date(date.getFullYear(), date.getMonth(), date.getDate(), h, m, s, date.getMilliseconds());
- };
- var clearTime = exports.clearTime = function clearTime(date) {
- return new Date(date.getFullYear(), date.getMonth(), date.getDate());
- };
- var clearMilliseconds = exports.clearMilliseconds = function clearMilliseconds(date) {
- return new Date(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), 0);
- };
- var limitTimeRange = exports.limitTimeRange = function limitTimeRange(date, ranges) {
- var format = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'HH:mm:ss';
- // TODO: refactory a more elegant solution
- if (ranges.length === 0) return date;
- var normalizeDate = function normalizeDate(date) {
- return _date2.default.parse(_date2.default.format(date, format), format);
- };
- var ndate = normalizeDate(date);
- var nranges = ranges.map(function (range) {
- return range.map(normalizeDate);
- });
- if (nranges.some(function (nrange) {
- return ndate >= nrange[0] && ndate <= nrange[1];
- })) return date;
- var minDate = nranges[0][0];
- var maxDate = nranges[0][0];
- nranges.forEach(function (nrange) {
- minDate = new Date(Math.min(nrange[0], minDate));
- maxDate = new Date(Math.max(nrange[1], minDate));
- });
- var ret = ndate < minDate ? minDate : maxDate;
- // preserve Year/Month/Date
- return modifyDate(ret, date.getFullYear(), date.getMonth(), date.getDate());
- };
- var timeWithinRange = exports.timeWithinRange = function timeWithinRange(date, selectableRange, format) {
- var limitedDate = limitTimeRange(date, selectableRange, format);
- return limitedDate.getTime() === date.getTime();
- };
- var prevMonth = exports.prevMonth = function prevMonth(date) {
- var year = date.getFullYear();
- var month = date.getMonth();
- if (month === 0) {
- year -= 1;
- month = 11;
- } else {
- month -= 1;
- }
- var monthDate = Math.min(date.getDate(), getDayCountOfMonth(year, month));
- return modifyDate(date, year, month, monthDate);
- };
- var nextMonth = exports.nextMonth = function nextMonth(date) {
- var year = date.getFullYear();
- var month = date.getMonth();
- if (month === 11) {
- year += 1;
- month = 0;
- } else {
- month += 1;
- }
- var monthDate = Math.min(date.getDate(), getDayCountOfMonth(year, month));
- return modifyDate(date, year, month, monthDate);
- };
- // check for leap year Feburary
- var prevYear = exports.prevYear = function prevYear(date) {
- var amount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
- var year = date.getFullYear() - amount;
- var month = date.getMonth();
- var monthDate = Math.min(date.getDate(), getDayCountOfMonth(year, month));
- return modifyDate(date, year, month, monthDate);
- };
- var nextYear = exports.nextYear = function nextYear(date) {
- var amount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
- var year = date.getFullYear() + amount;
- var month = date.getMonth();
- var monthDate = Math.min(date.getDate(), getDayCountOfMonth(year, month));
- return modifyDate(date, year, month, monthDate);
- };
- /***/ }),
- /***/ 13:
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/mixins/focus");
- /***/ }),
- /***/ 14:
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/locale");
- /***/ }),
- /***/ 18:
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/scrollbar");
- /***/ }),
- /***/ 217:
- /***/ (function(module, exports, __webpack_require__) {
- module.exports = __webpack_require__(218);
- /***/ }),
- /***/ 218:
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- exports.__esModule = true;
- var _timeSelect = __webpack_require__(219);
- var _timeSelect2 = _interopRequireDefault(_timeSelect);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- /* istanbul ignore next */
- _timeSelect2.default.install = function (Vue) {
- Vue.component(_timeSelect2.default.name, _timeSelect2.default);
- };
- exports.default = _timeSelect2.default;
- /***/ }),
- /***/ 219:
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- exports.__esModule = true;
- var _picker = __webpack_require__(26);
- var _picker2 = _interopRequireDefault(_picker);
- var _timeSelect = __webpack_require__(220);
- var _timeSelect2 = _interopRequireDefault(_timeSelect);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- exports.default = {
- mixins: [_picker2.default],
- name: 'ElTimeSelect',
- beforeCreate: function beforeCreate() {
- this.type = 'time-select';
- this.panel = _timeSelect2.default;
- }
- };
- /***/ }),
- /***/ 220:
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_time_select_vue__ = __webpack_require__(221);
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_time_select_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_time_select_vue__);
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_2dfad182_hasScoped_false_preserveWhitespace_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_time_select_vue__ = __webpack_require__(222);
- var normalizeComponent = __webpack_require__(0)
- /* script */
- /* template */
- /* template functional */
- var __vue_template_functional__ = false
- /* styles */
- var __vue_styles__ = null
- /* scopeId */
- var __vue_scopeId__ = null
- /* moduleIdentifier (server only) */
- var __vue_module_identifier__ = null
- var Component = normalizeComponent(
- __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_time_select_vue___default.a,
- __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_2dfad182_hasScoped_false_preserveWhitespace_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_time_select_vue__["a" /* default */],
- __vue_template_functional__,
- __vue_styles__,
- __vue_scopeId__,
- __vue_module_identifier__
- )
- /* harmony default export */ __webpack_exports__["default"] = (Component.exports);
- /***/ }),
- /***/ 221:
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- exports.__esModule = true;
- var _scrollbar = __webpack_require__(18);
- var _scrollbar2 = _interopRequireDefault(_scrollbar);
- var _scrollIntoView = __webpack_require__(25);
- var _scrollIntoView2 = _interopRequireDefault(_scrollIntoView);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var parseTime = function parseTime(time) {
- var values = (time || '').split(':');
- if (values.length >= 2) {
- var hours = parseInt(values[0], 10);
- var minutes = parseInt(values[1], 10);
- return {
- hours: hours,
- minutes: minutes
- };
- }
- /* istanbul ignore next */
- return null;
- };
- var compareTime = function compareTime(time1, time2) {
- var value1 = parseTime(time1);
- var value2 = parseTime(time2);
- var minutes1 = value1.minutes + value1.hours * 60;
- var minutes2 = value2.minutes + value2.hours * 60;
- if (minutes1 === minutes2) {
- return 0;
- }
- return minutes1 > minutes2 ? 1 : -1;
- };
- var formatTime = function formatTime(time) {
- return (time.hours < 10 ? '0' + time.hours : time.hours) + ':' + (time.minutes < 10 ? '0' + time.minutes : time.minutes);
- };
- var nextTime = function nextTime(time, step) {
- var timeValue = parseTime(time);
- var stepValue = parseTime(step);
- var next = {
- hours: timeValue.hours,
- minutes: timeValue.minutes
- };
- next.minutes += stepValue.minutes;
- next.hours += stepValue.hours;
- next.hours += Math.floor(next.minutes / 60);
- next.minutes = next.minutes % 60;
- return formatTime(next);
- };
- exports.default = {
- components: { ElScrollbar: _scrollbar2.default },
- watch: {
- value: function value(val) {
- var _this = this;
- if (!val) return;
- this.$nextTick(function () {
- return _this.scrollToOption();
- });
- }
- },
- methods: {
- handleClick: function handleClick(item) {
- if (!item.disabled) {
- this.$emit('pick', item.value);
- }
- },
- handleClear: function handleClear() {
- this.$emit('pick', null);
- },
- scrollToOption: function scrollToOption() {
- var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '.selected';
- var menu = this.$refs.popper.querySelector('.el-picker-panel__content');
- (0, _scrollIntoView2.default)(menu, menu.querySelector(selector));
- },
- handleMenuEnter: function handleMenuEnter() {
- var _this2 = this;
- var selected = this.items.map(function (item) {
- return item.value;
- }).indexOf(this.value) !== -1;
- var hasDefault = this.items.map(function (item) {
- return item.value;
- }).indexOf(this.defaultValue) !== -1;
- var option = selected && '.selected' || hasDefault && '.default' || '.time-select-item:not(.disabled)';
- this.$nextTick(function () {
- return _this2.scrollToOption(option);
- });
- },
- scrollDown: function scrollDown(step) {
- var items = this.items;
- var length = items.length;
- var total = items.length;
- var index = items.map(function (item) {
- return item.value;
- }).indexOf(this.value);
- while (total--) {
- index = (index + step + length) % length;
- if (!items[index].disabled) {
- this.$emit('pick', items[index].value, true);
- return;
- }
- }
- },
- isValidValue: function isValidValue(date) {
- return this.items.filter(function (item) {
- return !item.disabled;
- }).map(function (item) {
- return item.value;
- }).indexOf(date) !== -1;
- },
- handleKeydown: function handleKeydown(event) {
- var keyCode = event.keyCode;
- if (keyCode === 38 || keyCode === 40) {
- var mapping = { 40: 1, 38: -1 };
- var offset = mapping[keyCode.toString()];
- this.scrollDown(offset);
- event.stopPropagation();
- return;
- }
- }
- },
- data: function data() {
- return {
- popperClass: '',
- start: '09:00',
- end: '18:00',
- step: '00:30',
- value: '',
- defaultValue: '',
- visible: false,
- minTime: '',
- maxTime: '',
- width: 0
- };
- },
- computed: {
- items: function items() {
- var start = this.start;
- var end = this.end;
- var step = this.step;
- var result = [];
- if (start && end && step) {
- var current = start;
- while (compareTime(current, end) <= 0) {
- result.push({
- value: current,
- disabled: compareTime(current, this.minTime || '-1:-1') <= 0 || compareTime(current, this.maxTime || '100:100') >= 0
- });
- current = nextTime(current, step);
- }
- }
- return result;
- }
- }
- };
- /***/ }),
- /***/ 222:
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',{attrs:{"name":"el-zoom-in-top"},on:{"before-enter":_vm.handleMenuEnter,"after-leave":function($event){_vm.$emit('dodestroy')}}},[_c('div',{directives:[{name:"show",rawName:"v-show",value:(_vm.visible),expression:"visible"}],ref:"popper",staticClass:"el-picker-panel time-select el-popper",class:_vm.popperClass,style:({ width: _vm.width + 'px' })},[_c('el-scrollbar',{attrs:{"noresize":"","wrap-class":"el-picker-panel__content"}},_vm._l((_vm.items),function(item){return _c('div',{staticClass:"time-select-item",class:{ selected: _vm.value === item.value, disabled: item.disabled, default: item.value === _vm.defaultValue },attrs:{"disabled":item.disabled},on:{"click":function($event){_vm.handleClick(item)}}},[_vm._v(_vm._s(item.value))])}))],1)])}
- var staticRenderFns = []
- var esExports = { render: render, staticRenderFns: staticRenderFns }
- /* harmony default export */ __webpack_exports__["a"] = (esExports);
- /***/ }),
- /***/ 25:
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/scroll-into-view");
- /***/ }),
- /***/ 26:
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_picker_vue__ = __webpack_require__(27);
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_picker_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_picker_vue__);
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_b32bdda0_hasScoped_false_preserveWhitespace_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_picker_vue__ = __webpack_require__(29);
- var normalizeComponent = __webpack_require__(0)
- /* script */
- /* template */
- /* template functional */
- var __vue_template_functional__ = false
- /* styles */
- var __vue_styles__ = null
- /* scopeId */
- var __vue_scopeId__ = null
- /* moduleIdentifier (server only) */
- var __vue_module_identifier__ = null
- var Component = normalizeComponent(
- __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_picker_vue___default.a,
- __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_b32bdda0_hasScoped_false_preserveWhitespace_false_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_picker_vue__["a" /* default */],
- __vue_template_functional__,
- __vue_styles__,
- __vue_scopeId__,
- __vue_module_identifier__
- )
- /* harmony default export */ __webpack_exports__["default"] = (Component.exports);
- /***/ }),
- /***/ 27:
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- exports.__esModule = true;
- var _vue = __webpack_require__(5);
- var _vue2 = _interopRequireDefault(_vue);
- var _clickoutside = __webpack_require__(10);
- var _clickoutside2 = _interopRequireDefault(_clickoutside);
- var _util = __webpack_require__(11);
- var _vuePopper = __webpack_require__(8);
- var _vuePopper2 = _interopRequireDefault(_vuePopper);
- var _emitter = __webpack_require__(1);
- var _emitter2 = _interopRequireDefault(_emitter);
- var _focus = __webpack_require__(13);
- var _focus2 = _interopRequireDefault(_focus);
- var _input = __webpack_require__(6);
- var _input2 = _interopRequireDefault(_input);
- var _merge = __webpack_require__(9);
- var _merge2 = _interopRequireDefault(_merge);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- var NewPopper = {
- props: {
- appendToBody: _vuePopper2.default.props.appendToBody,
- offset: _vuePopper2.default.props.offset,
- boundariesPadding: _vuePopper2.default.props.boundariesPadding
- },
- methods: _vuePopper2.default.methods,
- data: function data() {
- return (0, _merge2.default)({ visibleArrow: true }, _vuePopper2.default.data);
- },
- beforeDestroy: _vuePopper2.default.beforeDestroy
- };
- var DEFAULT_FORMATS = {
- date: 'yyyy-MM-dd',
- month: 'yyyy-MM',
- datetime: 'yyyy-MM-dd HH:mm:ss',
- time: 'HH:mm:ss',
- week: 'yyyywWW',
- timerange: 'HH:mm:ss',
- daterange: 'yyyy-MM-dd',
- datetimerange: 'yyyy-MM-dd HH:mm:ss',
- year: 'yyyy'
- };
- var HAVE_TRIGGER_TYPES = ['date', 'datetime', 'time', 'time-select', 'week', 'month', 'year', 'daterange', 'timerange', 'datetimerange'];
- var DATE_FORMATTER = function DATE_FORMATTER(value, format) {
- return (0, _util.formatDate)(value, format);
- };
- var DATE_PARSER = function DATE_PARSER(text, format) {
- return (0, _util.parseDate)(text, format);
- };
- var RANGE_FORMATTER = function RANGE_FORMATTER(value, format) {
- if (Array.isArray(value) && value.length === 2) {
- var start = value[0];
- var end = value[1];
- if (start && end) {
- return [(0, _util.formatDate)(start, format), (0, _util.formatDate)(end, format)];
- }
- }
- return '';
- };
- var RANGE_PARSER = function RANGE_PARSER(array, format, separator) {
- if (!Array.isArray(array)) {
- array = array.split(separator);
- }
- if (array.length === 2) {
- var range1 = array[0];
- var range2 = array[1];
- return [(0, _util.parseDate)(range1, format), (0, _util.parseDate)(range2, format)];
- }
- return [];
- };
- var TYPE_VALUE_RESOLVER_MAP = {
- default: {
- formatter: function formatter(value) {
- if (!value) return '';
- return '' + value;
- },
- parser: function parser(text) {
- if (text === undefined || text === '') return null;
- return text;
- }
- },
- week: {
- formatter: function formatter(value, format) {
- var week = (0, _util.getWeekNumber)(value);
- var month = value.getMonth();
- var trueDate = new Date(value);
- if (week === 1 && month === 11) {
- trueDate.setHours(0, 0, 0, 0);
- trueDate.setDate(trueDate.getDate() + 3 - (trueDate.getDay() + 6) % 7);
- }
- var date = (0, _util.formatDate)(trueDate, format);
- date = /WW/.test(date) ? date.replace(/WW/, week < 10 ? '0' + week : week) : date.replace(/W/, week);
- return date;
- },
- parser: function parser(text) {
- var array = (text || '').split('w');
- if (array.length === 2) {
- var year = Number(array[0]);
- var month = Number(array[1]);
- if (!isNaN(year) && !isNaN(month) && month < 54) {
- return text;
- }
- }
- return null;
- }
- },
- date: {
- formatter: DATE_FORMATTER,
- parser: DATE_PARSER
- },
- datetime: {
- formatter: DATE_FORMATTER,
- parser: DATE_PARSER
- },
- daterange: {
- formatter: RANGE_FORMATTER,
- parser: RANGE_PARSER
- },
- datetimerange: {
- formatter: RANGE_FORMATTER,
- parser: RANGE_PARSER
- },
- timerange: {
- formatter: RANGE_FORMATTER,
- parser: RANGE_PARSER
- },
- time: {
- formatter: DATE_FORMATTER,
- parser: DATE_PARSER
- },
- month: {
- formatter: DATE_FORMATTER,
- parser: DATE_PARSER
- },
- year: {
- formatter: DATE_FORMATTER,
- parser: DATE_PARSER
- },
- number: {
- formatter: function formatter(value) {
- if (!value) return '';
- return '' + value;
- },
- parser: function parser(text) {
- var result = Number(text);
- if (!isNaN(text)) {
- return result;
- } else {
- return null;
- }
- }
- }
- };
- var PLACEMENT_MAP = {
- left: 'bottom-start',
- center: 'bottom',
- right: 'bottom-end'
- };
- var parseAsFormatAndType = function parseAsFormatAndType(value, customFormat, type) {
- var rangeSeparator = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '-';
- if (!value) return null;
- var parser = (TYPE_VALUE_RESOLVER_MAP[type] || TYPE_VALUE_RESOLVER_MAP['default']).parser;
- var format = customFormat || DEFAULT_FORMATS[type];
- return parser(value, format, rangeSeparator);
- };
- var formatAsFormatAndType = function formatAsFormatAndType(value, customFormat, type) {
- if (!value) return null;
- var formatter = (TYPE_VALUE_RESOLVER_MAP[type] || TYPE_VALUE_RESOLVER_MAP['default']).formatter;
- var format = customFormat || DEFAULT_FORMATS[type];
- return formatter(value, format);
- };
- // only considers date-picker's value: Date or [Date, Date]
- var valueEquals = function valueEquals(a, b) {
- var aIsArray = a instanceof Array;
- var bIsArray = b instanceof Array;
- if (aIsArray && bIsArray) {
- return new Date(a[0]).getTime() === new Date(b[0]).getTime() && new Date(a[1]).getTime() === new Date(b[1]).getTime();
- }
- if (!aIsArray && !bIsArray) {
- return new Date(a).getTime() === new Date(b).getTime();
- }
- return false;
- };
- var isString = function isString(val) {
- return typeof val === 'string' || val instanceof String;
- };
- var validator = function validator(val) {
- // either: String, Array of String, null / undefined
- return val === null || val === undefined || isString(val) || Array.isArray(val) && val.length === 2 && val.every(isString);
- };
- exports.default = {
- mixins: [_emitter2.default, NewPopper, (0, _focus2.default)('reference')],
- inject: {
- elFormItem: {
- default: ''
- }
- },
- props: {
- size: String,
- format: String,
- valueFormat: String,
- readonly: Boolean,
- placeholder: String,
- startPlaceholder: String,
- endPlaceholder: String,
- name: {
- default: '',
- validator: validator
- },
- disabled: Boolean,
- clearable: {
- type: Boolean,
- default: true
- },
- id: {
- default: '',
- validator: validator
- },
- popperClass: String,
- editable: {
- type: Boolean,
- default: true
- },
- align: {
- type: String,
- default: 'left'
- },
- value: {},
- defaultValue: {},
- rangeSeparator: {
- default: '-'
- },
- pickerOptions: {},
- unlinkPanels: Boolean
- },
- components: { ElInput: _input2.default },
- directives: { Clickoutside: _clickoutside2.default },
- data: function data() {
- return {
- pickerVisible: false,
- showClose: false,
- userInput: null,
- valueOnOpen: null, // value when picker opens, used to determine whether to emit change
- unwatchPickerOptions: null
- };
- },
- watch: {
- pickerVisible: function pickerVisible(val) {
- if (this.readonly || this.disabled) return;
- if (val) {
- this.showPicker();
- this.valueOnOpen = this.value;
- } else {
- this.hidePicker();
- this.emitChange(this.value);
- // flush user input if it is parsable
- // this.displayValue here is not a typo, it merges text for both panels in range mode
- var parsedValue = this.parseString(this.displayValue);
- if (this.userInput && parsedValue && this.isValidValue(parsedValue)) {
- this.userInput = null;
- }
- this.dispatch('ElFormItem', 'el.form.blur');
- this.$emit('blur', this);
- this.blur();
- }
- },
- parsedValue: {
- immediate: true,
- handler: function handler(val) {
- if (this.picker) {
- this.picker.value = val;
- }
- }
- },
- defaultValue: function defaultValue(val) {
- // NOTE: should eventually move to jsx style picker + panel ?
- if (this.picker) {
- this.picker.defaultValue = val;
- }
- }
- },
- computed: {
- ranged: function ranged() {
- return this.type.indexOf('range') > -1;
- },
- reference: function reference() {
- var reference = this.$refs.reference;
- return reference.$el || reference;
- },
- refInput: function refInput() {
- if (this.reference) {
- return [].slice.call(this.reference.querySelectorAll('input'));
- }
- return [];
- },
- valueIsEmpty: function valueIsEmpty() {
- var val = this.value;
- if (Array.isArray(val)) {
- for (var i = 0, len = val.length; i < len; i++) {
- if (val[i]) {
- return false;
- }
- }
- } else {
- if (val) {
- return false;
- }
- }
- return true;
- },
- triggerClass: function triggerClass() {
- return this.type.indexOf('time') !== -1 ? 'el-icon-time' : 'el-icon-date';
- },
- selectionMode: function selectionMode() {
- if (this.type === 'week') {
- return 'week';
- } else if (this.type === 'month') {
- return 'month';
- } else if (this.type === 'year') {
- return 'year';
- }
- return 'day';
- },
- haveTrigger: function haveTrigger() {
- if (typeof this.showTrigger !== 'undefined') {
- return this.showTrigger;
- }
- return HAVE_TRIGGER_TYPES.indexOf(this.type) !== -1;
- },
- displayValue: function displayValue() {
- var formattedValue = formatAsFormatAndType(this.parsedValue, this.format, this.type, this.rangeSeparator);
- if (Array.isArray(this.userInput)) {
- return [this.userInput[0] || formattedValue && formattedValue[0] || '', this.userInput[1] || formattedValue && formattedValue[1] || ''];
- } else {
- return this.userInput !== null ? this.userInput : formattedValue || '';
- }
- },
- parsedValue: function parsedValue() {
- var isParsed = (0, _util.isDateObject)(this.value) || Array.isArray(this.value) && this.value.every(_util.isDateObject);
- if (this.valueFormat && !isParsed) {
- return parseAsFormatAndType(this.value, this.valueFormat, this.type, this.rangeSeparator) || this.value;
- } else {
- return this.value;
- }
- },
- _elFormItemSize: function _elFormItemSize() {
- return (this.elFormItem || {}).elFormItemSize;
- },
- pickerSize: function pickerSize() {
- return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
- }
- },
- created: function created() {
- // vue-popper
- this.popperOptions = {
- boundariesPadding: 0,
- gpuAcceleration: false
- };
- this.placement = PLACEMENT_MAP[this.align] || PLACEMENT_MAP.left;
- },
- methods: {
- blur: function blur() {
- this.refInput.forEach(function (input) {
- return input.blur();
- });
- },
- // {parse, formatTo} Value deals maps component value with internal Date
- parseValue: function parseValue(value) {
- var isParsed = (0, _util.isDateObject)(value) || Array.isArray(value) && value.every(_util.isDateObject);
- if (this.valueFormat && !isParsed) {
- return parseAsFormatAndType(value, this.valueFormat, this.type, this.rangeSeparator) || value;
- } else {
- return value;
- }
- },
- formatToValue: function formatToValue(date) {
- var isFormattable = (0, _util.isDateObject)(date) || Array.isArray(date) && date.every(_util.isDateObject);
- if (this.valueFormat && isFormattable) {
- return formatAsFormatAndType(date, this.valueFormat, this.type, this.rangeSeparator);
- } else {
- return date;
- }
- },
- // {parse, formatTo} String deals with user input
- parseString: function parseString(value) {
- var type = Array.isArray(value) ? this.type : this.type.replace('range', '');
- return parseAsFormatAndType(value, this.format, type);
- },
- formatToString: function formatToString(value) {
- var type = Array.isArray(value) ? this.type : this.type.replace('range', '');
- return formatAsFormatAndType(value, this.format, type);
- },
- handleMouseEnter: function handleMouseEnter() {
- if (this.readonly || this.disabled) return;
- if (!this.valueIsEmpty && this.clearable) {
- this.showClose = true;
- }
- },
- handleChange: function handleChange() {
- if (this.userInput) {
- var value = this.parseString(this.displayValue);
- if (value) {
- this.picker.value = value;
- if (this.isValidValue(value)) {
- this.emitInput(value);
- this.userInput = null;
- }
- }
- }
- },
- handleStartInput: function handleStartInput(event) {
- if (this.userInput) {
- this.userInput = [event.target.value, this.userInput[1]];
- } else {
- this.userInput = [event.target.value, null];
- }
- },
- handleEndInput: function handleEndInput(event) {
- if (this.userInput) {
- this.userInput = [this.userInput[0], event.target.value];
- } else {
- this.userInput = [null, event.target.value];
- }
- },
- handleStartChange: function handleStartChange(event) {
- var value = this.parseString(this.userInput && this.userInput[0]);
- if (value) {
- this.userInput = [this.formatToString(value), this.displayValue[1]];
- var newValue = [value, this.picker.value && this.picker.value[1]];
- this.picker.value = newValue;
- if (this.isValidValue(newValue)) {
- this.emitInput(newValue);
- this.userInput = null;
- }
- }
- },
- handleEndChange: function handleEndChange(event) {
- var value = this.parseString(this.userInput && this.userInput[1]);
- if (value) {
- this.userInput = [this.displayValue[0], this.formatToString(value)];
- var newValue = [this.picker.value && this.picker.value[0], value];
- this.picker.value = newValue;
- if (this.isValidValue(newValue)) {
- this.emitInput(newValue);
- this.userInput = null;
- }
- }
- },
- handleClickIcon: function handleClickIcon(event) {
- if (this.readonly || this.disabled) return;
- if (this.showClose) {
- event.stopPropagation();
- this.emitInput(null);
- this.emitChange(null);
- this.showClose = false;
- if (this.picker && typeof this.picker.handleClear === 'function') {
- this.picker.handleClear();
- }
- } else {
- this.pickerVisible = !this.pickerVisible;
- }
- },
- handleClose: function handleClose() {
- this.pickerVisible = false;
- },
- handleFocus: function handleFocus() {
- var type = this.type;
- if (HAVE_TRIGGER_TYPES.indexOf(type) !== -1 && !this.pickerVisible) {
- this.pickerVisible = true;
- }
- this.$emit('focus', this);
- },
- handleKeydown: function handleKeydown(event) {
- var _this = this;
- var keyCode = event.keyCode;
- // ESC
- if (keyCode === 27) {
- this.pickerVisible = false;
- event.stopPropagation();
- return;
- }
- // Tab
- if (keyCode === 9) {
- if (!this.ranged) {
- this.handleChange();
- this.pickerVisible = this.picker.visible = false;
- this.blur();
- event.stopPropagation();
- } else {
- // user may change focus between two input
- setTimeout(function () {
- if (_this.refInput.indexOf(document.activeElement) === -1) {
- _this.pickerVisible = false;
- _this.blur();
- event.stopPropagation();
- }
- }, 0);
- }
- return;
- }
- // Enter
- if (keyCode === 13 && this.displayValue) {
- var value = this.parseString(this.displayValue);
- if (this.isValidValue(value)) {
- this.handleChange();
- this.pickerVisible = this.picker.visible = false;
- this.blur();
- }
- event.stopPropagation();
- return;
- }
- // if user is typing, do not let picker handle key input
- if (this.userInput) {
- event.stopPropagation();
- return;
- }
- // delegate other keys to panel
- if (this.picker && this.picker.handleKeydown) {
- this.picker.handleKeydown(event);
- }
- },
- handleRangeClick: function handleRangeClick() {
- var type = this.type;
- if (HAVE_TRIGGER_TYPES.indexOf(type) !== -1 && !this.pickerVisible) {
- this.pickerVisible = true;
- }
- this.$emit('focus', this);
- },
- hidePicker: function hidePicker() {
- if (this.picker) {
- this.picker.resetView && this.picker.resetView();
- this.pickerVisible = this.picker.visible = false;
- this.destroyPopper();
- }
- },
- showPicker: function showPicker() {
- var _this2 = this;
- if (this.$isServer) return;
- if (!this.picker) {
- this.mountPicker();
- }
- this.pickerVisible = this.picker.visible = true;
- this.updatePopper();
- this.picker.value = this.parsedValue;
- this.picker.resetView && this.picker.resetView();
- this.$nextTick(function () {
- _this2.picker.adjustSpinners && _this2.picker.adjustSpinners();
- });
- },
- mountPicker: function mountPicker() {
- var _this3 = this;
- this.picker = new _vue2.default(this.panel).$mount();
- this.picker.defaultValue = this.defaultValue;
- this.picker.popperClass = this.popperClass;
- this.popperElm = this.picker.$el;
- this.picker.width = this.reference.getBoundingClientRect().width;
- this.picker.showTime = this.type === 'datetime' || this.type === 'datetimerange';
- this.picker.selectionMode = this.selectionMode;
- this.picker.unlinkPanels = this.unlinkPanels;
- this.picker.arrowControl = this.arrowControl || this.timeArrowControl || false;
- if (this.format) {
- this.picker.format = this.format;
- }
- var updateOptions = function updateOptions() {
- var options = _this3.pickerOptions;
- if (options && options.selectableRange) {
- (function () {
- var ranges = options.selectableRange;
- var parser = TYPE_VALUE_RESOLVER_MAP.datetimerange.parser;
- var format = DEFAULT_FORMATS.timerange;
- ranges = Array.isArray(ranges) ? ranges : [ranges];
- _this3.picker.selectableRange = ranges.map(function (range) {
- return parser(range, format, _this3.rangeSeparator);
- });
- })();
- }
- for (var option in options) {
- if (options.hasOwnProperty(option) &&
- // 忽略 time-picker 的该配置项
- option !== 'selectableRange') {
- _this3.picker[option] = options[option];
- }
- }
- };
- updateOptions();
- this.unwatchPickerOptions = this.$watch('pickerOptions', function () {
- return updateOptions();
- }, { deep: true });
- this.$el.appendChild(this.picker.$el);
- this.picker.resetView && this.picker.resetView();
- this.picker.$on('dodestroy', this.doDestroy);
- this.picker.$on('pick', function () {
- var date = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
- var visible = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
- _this3.userInput = null;
- _this3.pickerVisible = _this3.picker.visible = visible;
- _this3.emitInput(date);
- _this3.picker.resetView && _this3.picker.resetView();
- });
- this.picker.$on('select-range', function (start, end, pos) {
- if (_this3.refInput.length === 0) return;
- if (!pos || pos === 'min') {
- _this3.refInput[0].setSelectionRange(start, end);
- _this3.refInput[0].focus();
- } else if (pos === 'max') {
- _this3.refInput[1].setSelectionRange(start, end);
- _this3.refInput[1].focus();
- }
- });
- },
- unmountPicker: function unmountPicker() {
- if (this.picker) {
- this.picker.$destroy();
- this.picker.$off();
- if (typeof this.unwatchPickerOptions === 'function') {
- this.unwatchPickerOptions();
- }
- this.picker.$el.parentNode.removeChild(this.picker.$el);
- }
- },
- emitChange: function emitChange(val) {
- this.$emit('change', val);
- this.dispatch('ElFormItem', 'el.form.change', val);
- this.valueOnOpen = val;
- },
- emitInput: function emitInput(val) {
- var formatted = this.formatToValue(val);
- if (!valueEquals(this.value, formatted)) {
- this.$emit('input', formatted);
- }
- },
- isValidValue: function isValidValue(value) {
- if (!this.picker) {
- this.mountPicker();
- }
- if (this.picker.isValidValue) {
- return value && this.picker.isValidValue(value);
- } else {
- return true;
- }
- }
- }
- };
- /***/ }),
- /***/ 28:
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/date");
- /***/ }),
- /***/ 29:
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.ranged)?_c('el-input',{directives:[{name:"clickoutside",rawName:"v-clickoutside",value:(_vm.handleClose),expression:"handleClose"}],ref:"reference",staticClass:"el-date-editor",class:'el-date-editor--' + _vm.type,attrs:{"readonly":!_vm.editable || _vm.readonly,"disabled":_vm.disabled,"size":_vm.pickerSize,"id":_vm.id,"name":_vm.name,"placeholder":_vm.placeholder,"value":_vm.displayValue,"validateEvent":false,"prefix-icon":_vm.triggerClass},on:{"focus":_vm.handleFocus,"input":function (value) { return _vm.userInput = value; }},nativeOn:{"keydown":function($event){_vm.handleKeydown($event)},"mouseenter":function($event){_vm.handleMouseEnter($event)},"mouseleave":function($event){_vm.showClose = false},"change":function($event){_vm.handleChange($event)}}},[(_vm.haveTrigger)?_c('i',{staticClass:"el-input__icon",class:{ 'el-icon-circle-close': _vm.showClose },attrs:{"slot":"suffix"},on:{"click":_vm.handleClickIcon},slot:"suffix"}):_vm._e()]):_c('div',{directives:[{name:"clickoutside",rawName:"v-clickoutside",value:(_vm.handleClose),expression:"handleClose"}],ref:"reference",staticClass:"el-date-editor el-range-editor el-input__inner",class:[
- 'el-date-editor--' + _vm.type,
- _vm.pickerSize ? ("el-range-editor--" + _vm.pickerSize) : '',
- _vm.disabled ? 'is-disabled' : '',
- _vm.pickerVisible ? 'is-active' : ''
- ],on:{"click":_vm.handleRangeClick,"mouseenter":_vm.handleMouseEnter,"mouseleave":function($event){_vm.showClose = false},"keydown":_vm.handleKeydown}},[_c('i',{class:['el-input__icon', 'el-range__icon', _vm.triggerClass]}),_c('input',{staticClass:"el-range-input",attrs:{"placeholder":_vm.startPlaceholder,"disabled":_vm.disabled,"id":_vm.id && _vm.id[0],"readonly":!_vm.editable || _vm.readonly,"name":_vm.name && _vm.name[0]},domProps:{"value":_vm.displayValue && _vm.displayValue[0]},on:{"input":_vm.handleStartInput,"change":_vm.handleStartChange,"focus":_vm.handleFocus}}),_c('span',{staticClass:"el-range-separator"},[_vm._v(_vm._s(_vm.rangeSeparator))]),_c('input',{staticClass:"el-range-input",attrs:{"placeholder":_vm.endPlaceholder,"disabled":_vm.disabled,"id":_vm.id && _vm.id[1],"readonly":!_vm.editable || _vm.readonly,"name":_vm.name && _vm.name[1]},domProps:{"value":_vm.displayValue && _vm.displayValue[1]},on:{"input":_vm.handleEndInput,"change":_vm.handleEndChange,"focus":_vm.handleFocus}}),(_vm.haveTrigger)?_c('i',{staticClass:"el-input__icon el-range__close-icon",class:{ 'el-icon-circle-close': _vm.showClose },on:{"click":_vm.handleClickIcon}}):_vm._e()])}
- var staticRenderFns = []
- var esExports = { render: render, staticRenderFns: staticRenderFns }
- /* harmony default export */ __webpack_exports__["a"] = (esExports);
- /***/ }),
- /***/ 5:
- /***/ (function(module, exports) {
- module.exports = require("vue");
- /***/ }),
- /***/ 6:
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/input");
- /***/ }),
- /***/ 8:
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/vue-popper");
- /***/ }),
- /***/ 9:
- /***/ (function(module, exports) {
- module.exports = require("element-ui/lib/utils/merge");
- /***/ })
- /******/ });
|