UNPKG

52.5 kBJavaScriptView Raw
1module.exports =
2/******/ (function(modules) { // webpackBootstrap
3/******/ // The module cache
4/******/ var installedModules = {};
5/******/
6/******/ // The require function
7/******/ function __webpack_require__(moduleId) {
8/******/
9/******/ // Check if module is in cache
10/******/ if(installedModules[moduleId]) {
11/******/ return installedModules[moduleId].exports;
12/******/ }
13/******/ // Create a new module (and put it into the cache)
14/******/ var module = installedModules[moduleId] = {
15/******/ i: moduleId,
16/******/ l: false,
17/******/ exports: {}
18/******/ };
19/******/
20/******/ // Execute the module function
21/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
22/******/
23/******/ // Flag the module as loaded
24/******/ module.l = true;
25/******/
26/******/ // Return the exports of the module
27/******/ return module.exports;
28/******/ }
29/******/
30/******/
31/******/ // expose the modules object (__webpack_modules__)
32/******/ __webpack_require__.m = modules;
33/******/
34/******/ // expose the module cache
35/******/ __webpack_require__.c = installedModules;
36/******/
37/******/ // define getter function for harmony exports
38/******/ __webpack_require__.d = function(exports, name, getter) {
39/******/ if(!__webpack_require__.o(exports, name)) {
40/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
41/******/ }
42/******/ };
43/******/
44/******/ // define __esModule on exports
45/******/ __webpack_require__.r = function(exports) {
46/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
47/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
48/******/ }
49/******/ Object.defineProperty(exports, '__esModule', { value: true });
50/******/ };
51/******/
52/******/ // create a fake namespace object
53/******/ // mode & 1: value is a module id, require it
54/******/ // mode & 2: merge all properties of value into the ns
55/******/ // mode & 4: return value when already ns object
56/******/ // mode & 8|1: behave like require
57/******/ __webpack_require__.t = function(value, mode) {
58/******/ if(mode & 1) value = __webpack_require__(value);
59/******/ if(mode & 8) return value;
60/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
61/******/ var ns = Object.create(null);
62/******/ __webpack_require__.r(ns);
63/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
64/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
65/******/ return ns;
66/******/ };
67/******/
68/******/ // getDefaultExport function for compatibility with non-harmony modules
69/******/ __webpack_require__.n = function(module) {
70/******/ var getter = module && module.__esModule ?
71/******/ function getDefault() { return module['default']; } :
72/******/ function getModuleExports() { return module; };
73/******/ __webpack_require__.d(getter, 'a', getter);
74/******/ return getter;
75/******/ };
76/******/
77/******/ // Object.prototype.hasOwnProperty.call
78/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
79/******/
80/******/ // __webpack_public_path__
81/******/ __webpack_require__.p = "/dist/";
82/******/
83/******/
84/******/ // Load entry module and return exports
85/******/ return __webpack_require__(__webpack_require__.s = 54);
86/******/ })
87/************************************************************************/
88/******/ ({
89
90/***/ 0:
91/***/ (function(module, __webpack_exports__, __webpack_require__) {
92
93"use strict";
94/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
95/* globals __VUE_SSR_CONTEXT__ */
96
97// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
98// This module is a runtime utility for cleaner component module output and will
99// be included in the final webpack user bundle.
100
101function normalizeComponent (
102 scriptExports,
103 render,
104 staticRenderFns,
105 functionalTemplate,
106 injectStyles,
107 scopeId,
108 moduleIdentifier, /* server only */
109 shadowMode /* vue-cli only */
110) {
111 // Vue.extend constructor export interop
112 var options = typeof scriptExports === 'function'
113 ? scriptExports.options
114 : scriptExports
115
116 // render functions
117 if (render) {
118 options.render = render
119 options.staticRenderFns = staticRenderFns
120 options._compiled = true
121 }
122
123 // functional template
124 if (functionalTemplate) {
125 options.functional = true
126 }
127
128 // scopedId
129 if (scopeId) {
130 options._scopeId = 'data-v-' + scopeId
131 }
132
133 var hook
134 if (moduleIdentifier) { // server build
135 hook = function (context) {
136 // 2.3 injection
137 context =
138 context || // cached call
139 (this.$vnode && this.$vnode.ssrContext) || // stateful
140 (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
141 // 2.2 with runInNewContext: true
142 if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
143 context = __VUE_SSR_CONTEXT__
144 }
145 // inject component styles
146 if (injectStyles) {
147 injectStyles.call(this, context)
148 }
149 // register component module identifier for async chunk inferrence
150 if (context && context._registeredComponents) {
151 context._registeredComponents.add(moduleIdentifier)
152 }
153 }
154 // used by ssr in case component is cached and beforeCreate
155 // never gets called
156 options._ssrRegister = hook
157 } else if (injectStyles) {
158 hook = shadowMode
159 ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
160 : injectStyles
161 }
162
163 if (hook) {
164 if (options.functional) {
165 // for template-only hot-reload because in that case the render fn doesn't
166 // go through the normalizer
167 options._injectStyles = hook
168 // register for functioal component in vue file
169 var originalRender = options.render
170 options.render = function renderWithStyleInjection (h, context) {
171 hook.call(context)
172 return originalRender(h, context)
173 }
174 } else {
175 // inject component registration as beforeCreate hook
176 var existing = options.beforeCreate
177 options.beforeCreate = existing
178 ? [].concat(existing, hook)
179 : [hook]
180 }
181 }
182
183 return {
184 exports: scriptExports,
185 options: options
186 }
187}
188
189
190/***/ }),
191
192/***/ 10:
193/***/ (function(module, exports) {
194
195module.exports = require("element-ui/lib/input");
196
197/***/ }),
198
199/***/ 12:
200/***/ (function(module, exports) {
201
202module.exports = require("element-ui/lib/utils/clickoutside");
203
204/***/ }),
205
206/***/ 13:
207/***/ (function(module, exports) {
208
209module.exports = require("element-ui/lib/button");
210
211/***/ }),
212
213/***/ 4:
214/***/ (function(module, exports) {
215
216module.exports = require("element-ui/lib/mixins/emitter");
217
218/***/ }),
219
220/***/ 5:
221/***/ (function(module, exports) {
222
223module.exports = require("element-ui/lib/utils/vue-popper");
224
225/***/ }),
226
227/***/ 54:
228/***/ (function(module, __webpack_exports__, __webpack_require__) {
229
230"use strict";
231__webpack_require__.r(__webpack_exports__);
232
233// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/main.vue?vue&type=template&id=55c8ade7&
234var render = function() {
235 var _vm = this
236 var _h = _vm.$createElement
237 var _c = _vm._self._c || _h
238 return _c(
239 "div",
240 {
241 directives: [
242 {
243 name: "clickoutside",
244 rawName: "v-clickoutside",
245 value: _vm.hide,
246 expression: "hide"
247 }
248 ],
249 class: [
250 "el-color-picker",
251 _vm.colorDisabled ? "is-disabled" : "",
252 _vm.colorSize ? "el-color-picker--" + _vm.colorSize : ""
253 ]
254 },
255 [
256 _vm.colorDisabled
257 ? _c("div", { staticClass: "el-color-picker__mask" })
258 : _vm._e(),
259 _c(
260 "div",
261 {
262 staticClass: "el-color-picker__trigger",
263 on: { click: _vm.handleTrigger }
264 },
265 [
266 _c(
267 "span",
268 {
269 staticClass: "el-color-picker__color",
270 class: { "is-alpha": _vm.showAlpha }
271 },
272 [
273 _c("span", {
274 staticClass: "el-color-picker__color-inner",
275 style: {
276 backgroundColor: _vm.displayedColor
277 }
278 }),
279 !_vm.value && !_vm.showPanelColor
280 ? _c("span", {
281 staticClass: "el-color-picker__empty el-icon-close"
282 })
283 : _vm._e()
284 ]
285 ),
286 _c("span", {
287 directives: [
288 {
289 name: "show",
290 rawName: "v-show",
291 value: _vm.value || _vm.showPanelColor,
292 expression: "value || showPanelColor"
293 }
294 ],
295 staticClass: "el-color-picker__icon el-icon-arrow-down"
296 })
297 ]
298 ),
299 _c("picker-dropdown", {
300 ref: "dropdown",
301 class: ["el-color-picker__panel", _vm.popperClass || ""],
302 attrs: {
303 color: _vm.color,
304 "show-alpha": _vm.showAlpha,
305 predefine: _vm.predefine
306 },
307 on: { pick: _vm.confirmValue, clear: _vm.clearValue },
308 model: {
309 value: _vm.showPicker,
310 callback: function($$v) {
311 _vm.showPicker = $$v
312 },
313 expression: "showPicker"
314 }
315 })
316 ],
317 1
318 )
319}
320var staticRenderFns = []
321render._withStripped = true
322
323
324// CONCATENATED MODULE: ./packages/color-picker/src/main.vue?vue&type=template&id=55c8ade7&
325
326// CONCATENATED MODULE: ./packages/color-picker/src/color.js
327var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
328
329function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
330
331var hsv2hsl = function hsv2hsl(hue, sat, val) {
332 return [hue, sat * val / ((hue = (2 - sat) * val) < 1 ? hue : 2 - hue) || 0, hue / 2];
333};
334
335// Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1
336// <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>
337var isOnePointZero = function isOnePointZero(n) {
338 return typeof n === 'string' && n.indexOf('.') !== -1 && parseFloat(n) === 1;
339};
340
341var isPercentage = function isPercentage(n) {
342 return typeof n === 'string' && n.indexOf('%') !== -1;
343};
344
345// Take input from [0, n] and return it as [0, 1]
346var bound01 = function bound01(value, max) {
347 if (isOnePointZero(value)) value = '100%';
348
349 var processPercent = isPercentage(value);
350 value = Math.min(max, Math.max(0, parseFloat(value)));
351
352 // Automatically convert percentage into number
353 if (processPercent) {
354 value = parseInt(value * max, 10) / 100;
355 }
356
357 // Handle floating point rounding errors
358 if (Math.abs(value - max) < 0.000001) {
359 return 1;
360 }
361
362 // Convert into [0, 1] range if it isn't already
363 return value % max / parseFloat(max);
364};
365
366var INT_HEX_MAP = { 10: 'A', 11: 'B', 12: 'C', 13: 'D', 14: 'E', 15: 'F' };
367
368var toHex = function toHex(_ref) {
369 var r = _ref.r,
370 g = _ref.g,
371 b = _ref.b;
372
373 var hexOne = function hexOne(value) {
374 value = Math.min(Math.round(value), 255);
375 var high = Math.floor(value / 16);
376 var low = value % 16;
377 return '' + (INT_HEX_MAP[high] || high) + (INT_HEX_MAP[low] || low);
378 };
379
380 if (isNaN(r) || isNaN(g) || isNaN(b)) return '';
381
382 return '#' + hexOne(r) + hexOne(g) + hexOne(b);
383};
384
385var HEX_INT_MAP = { A: 10, B: 11, C: 12, D: 13, E: 14, F: 15 };
386
387var parseHexChannel = function parseHexChannel(hex) {
388 if (hex.length === 2) {
389 return (HEX_INT_MAP[hex[0].toUpperCase()] || +hex[0]) * 16 + (HEX_INT_MAP[hex[1].toUpperCase()] || +hex[1]);
390 }
391
392 return HEX_INT_MAP[hex[1].toUpperCase()] || +hex[1];
393};
394
395var hsl2hsv = function hsl2hsv(hue, sat, light) {
396 sat = sat / 100;
397 light = light / 100;
398 var smin = sat;
399 var lmin = Math.max(light, 0.01);
400 var sv = void 0;
401 var v = void 0;
402
403 light *= 2;
404 sat *= light <= 1 ? light : 2 - light;
405 smin *= lmin <= 1 ? lmin : 2 - lmin;
406 v = (light + sat) / 2;
407 sv = light === 0 ? 2 * smin / (lmin + smin) : 2 * sat / (light + sat);
408
409 return {
410 h: hue,
411 s: sv * 100,
412 v: v * 100
413 };
414};
415
416// `rgbToHsv`
417// Converts an RGB color value to HSV
418// *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]
419// *Returns:* { h, s, v } in [0,1]
420var rgb2hsv = function rgb2hsv(r, g, b) {
421 r = bound01(r, 255);
422 g = bound01(g, 255);
423 b = bound01(b, 255);
424
425 var max = Math.max(r, g, b);
426 var min = Math.min(r, g, b);
427 var h = void 0,
428 s = void 0;
429 var v = max;
430
431 var d = max - min;
432 s = max === 0 ? 0 : d / max;
433
434 if (max === min) {
435 h = 0; // achromatic
436 } else {
437 switch (max) {
438 case r:
439 h = (g - b) / d + (g < b ? 6 : 0);
440 break;
441 case g:
442 h = (b - r) / d + 2;
443 break;
444 case b:
445 h = (r - g) / d + 4;
446 break;
447 }
448 h /= 6;
449 }
450
451 return { h: h * 360, s: s * 100, v: v * 100 };
452};
453
454// `hsvToRgb`
455// Converts an HSV color value to RGB.
456// *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]
457// *Returns:* { r, g, b } in the set [0, 255]
458var hsv2rgb = function hsv2rgb(h, s, v) {
459 h = bound01(h, 360) * 6;
460 s = bound01(s, 100);
461 v = bound01(v, 100);
462
463 var i = Math.floor(h);
464 var f = h - i;
465 var p = v * (1 - s);
466 var q = v * (1 - f * s);
467 var t = v * (1 - (1 - f) * s);
468 var mod = i % 6;
469 var r = [v, q, p, p, t, v][mod];
470 var g = [t, v, v, q, p, p][mod];
471 var b = [p, p, t, v, v, q][mod];
472
473 return {
474 r: Math.round(r * 255),
475 g: Math.round(g * 255),
476 b: Math.round(b * 255)
477 };
478};
479
480var Color = function () {
481 function Color(options) {
482 _classCallCheck(this, Color);
483
484 this._hue = 0;
485 this._saturation = 100;
486 this._value = 100;
487 this._alpha = 100;
488
489 this.enableAlpha = false;
490 this.format = 'hex';
491 this.value = '';
492
493 options = options || {};
494
495 for (var option in options) {
496 if (options.hasOwnProperty(option)) {
497 this[option] = options[option];
498 }
499 }
500
501 this.doOnChange();
502 }
503
504 Color.prototype.set = function set(prop, value) {
505 if (arguments.length === 1 && (typeof prop === 'undefined' ? 'undefined' : _typeof(prop)) === 'object') {
506 for (var p in prop) {
507 if (prop.hasOwnProperty(p)) {
508 this.set(p, prop[p]);
509 }
510 }
511
512 return;
513 }
514
515 this['_' + prop] = value;
516 this.doOnChange();
517 };
518
519 Color.prototype.get = function get(prop) {
520 return this['_' + prop];
521 };
522
523 Color.prototype.toRgb = function toRgb() {
524 return hsv2rgb(this._hue, this._saturation, this._value);
525 };
526
527 Color.prototype.fromString = function fromString(value) {
528 var _this = this;
529
530 if (!value) {
531 this._hue = 0;
532 this._saturation = 100;
533 this._value = 100;
534
535 this.doOnChange();
536 return;
537 }
538
539 var fromHSV = function fromHSV(h, s, v) {
540 _this._hue = Math.max(0, Math.min(360, h));
541 _this._saturation = Math.max(0, Math.min(100, s));
542 _this._value = Math.max(0, Math.min(100, v));
543
544 _this.doOnChange();
545 };
546
547 if (value.indexOf('hsl') !== -1) {
548 var parts = value.replace(/hsla|hsl|\(|\)/gm, '').split(/\s|,/g).filter(function (val) {
549 return val !== '';
550 }).map(function (val, index) {
551 return index > 2 ? parseFloat(val) : parseInt(val, 10);
552 });
553
554 if (parts.length === 4) {
555 this._alpha = Math.floor(parseFloat(parts[3]) * 100);
556 } else if (parts.length === 3) {
557 this._alpha = 100;
558 }
559 if (parts.length >= 3) {
560 var _hsl2hsv = hsl2hsv(parts[0], parts[1], parts[2]),
561 h = _hsl2hsv.h,
562 s = _hsl2hsv.s,
563 v = _hsl2hsv.v;
564
565 fromHSV(h, s, v);
566 }
567 } else if (value.indexOf('hsv') !== -1) {
568 var _parts = value.replace(/hsva|hsv|\(|\)/gm, '').split(/\s|,/g).filter(function (val) {
569 return val !== '';
570 }).map(function (val, index) {
571 return index > 2 ? parseFloat(val) : parseInt(val, 10);
572 });
573
574 if (_parts.length === 4) {
575 this._alpha = Math.floor(parseFloat(_parts[3]) * 100);
576 } else if (_parts.length === 3) {
577 this._alpha = 100;
578 }
579 if (_parts.length >= 3) {
580 fromHSV(_parts[0], _parts[1], _parts[2]);
581 }
582 } else if (value.indexOf('rgb') !== -1) {
583 var _parts2 = value.replace(/rgba|rgb|\(|\)/gm, '').split(/\s|,/g).filter(function (val) {
584 return val !== '';
585 }).map(function (val, index) {
586 return index > 2 ? parseFloat(val) : parseInt(val, 10);
587 });
588
589 if (_parts2.length === 4) {
590 this._alpha = Math.floor(parseFloat(_parts2[3]) * 100);
591 } else if (_parts2.length === 3) {
592 this._alpha = 100;
593 }
594 if (_parts2.length >= 3) {
595 var _rgb2hsv = rgb2hsv(_parts2[0], _parts2[1], _parts2[2]),
596 _h = _rgb2hsv.h,
597 _s = _rgb2hsv.s,
598 _v = _rgb2hsv.v;
599
600 fromHSV(_h, _s, _v);
601 }
602 } else if (value.indexOf('#') !== -1) {
603 var hex = value.replace('#', '').trim();
604 if (!/^(?:[0-9a-fA-F]{3}){1,2}$/.test(hex)) return;
605 var r = void 0,
606 g = void 0,
607 b = void 0;
608
609 if (hex.length === 3) {
610 r = parseHexChannel(hex[0] + hex[0]);
611 g = parseHexChannel(hex[1] + hex[1]);
612 b = parseHexChannel(hex[2] + hex[2]);
613 } else if (hex.length === 6 || hex.length === 8) {
614 r = parseHexChannel(hex.substring(0, 2));
615 g = parseHexChannel(hex.substring(2, 4));
616 b = parseHexChannel(hex.substring(4, 6));
617 }
618
619 if (hex.length === 8) {
620 this._alpha = Math.floor(parseHexChannel(hex.substring(6)) / 255 * 100);
621 } else if (hex.length === 3 || hex.length === 6) {
622 this._alpha = 100;
623 }
624
625 var _rgb2hsv2 = rgb2hsv(r, g, b),
626 _h2 = _rgb2hsv2.h,
627 _s2 = _rgb2hsv2.s,
628 _v2 = _rgb2hsv2.v;
629
630 fromHSV(_h2, _s2, _v2);
631 }
632 };
633
634 Color.prototype.compare = function compare(color) {
635 return Math.abs(color._hue - this._hue) < 2 && Math.abs(color._saturation - this._saturation) < 1 && Math.abs(color._value - this._value) < 1 && Math.abs(color._alpha - this._alpha) < 1;
636 };
637
638 Color.prototype.doOnChange = function doOnChange() {
639 var _hue = this._hue,
640 _saturation = this._saturation,
641 _value = this._value,
642 _alpha = this._alpha,
643 format = this.format;
644
645
646 if (this.enableAlpha) {
647 switch (format) {
648 case 'hsl':
649 var hsl = hsv2hsl(_hue, _saturation / 100, _value / 100);
650 this.value = 'hsla(' + _hue + ', ' + Math.round(hsl[1] * 100) + '%, ' + Math.round(hsl[2] * 100) + '%, ' + _alpha / 100 + ')';
651 break;
652 case 'hsv':
653 this.value = 'hsva(' + _hue + ', ' + Math.round(_saturation) + '%, ' + Math.round(_value) + '%, ' + _alpha / 100 + ')';
654 break;
655 default:
656 var _hsv2rgb = hsv2rgb(_hue, _saturation, _value),
657 r = _hsv2rgb.r,
658 g = _hsv2rgb.g,
659 b = _hsv2rgb.b;
660
661 this.value = 'rgba(' + r + ', ' + g + ', ' + b + ', ' + _alpha / 100 + ')';
662 }
663 } else {
664 switch (format) {
665 case 'hsl':
666 var _hsl = hsv2hsl(_hue, _saturation / 100, _value / 100);
667 this.value = 'hsl(' + _hue + ', ' + Math.round(_hsl[1] * 100) + '%, ' + Math.round(_hsl[2] * 100) + '%)';
668 break;
669 case 'hsv':
670 this.value = 'hsv(' + _hue + ', ' + Math.round(_saturation) + '%, ' + Math.round(_value) + '%)';
671 break;
672 case 'rgb':
673 var _hsv2rgb2 = hsv2rgb(_hue, _saturation, _value),
674 _r = _hsv2rgb2.r,
675 _g = _hsv2rgb2.g,
676 _b = _hsv2rgb2.b;
677
678 this.value = 'rgb(' + _r + ', ' + _g + ', ' + _b + ')';
679 break;
680 default:
681 this.value = toHex(hsv2rgb(_hue, _saturation, _value));
682 }
683 }
684 };
685
686 return Color;
687}();
688
689/* harmony default export */ var src_color = (Color);
690;
691// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/picker-dropdown.vue?vue&type=template&id=06601625&
692var picker_dropdownvue_type_template_id_06601625_render = function() {
693 var _vm = this
694 var _h = _vm.$createElement
695 var _c = _vm._self._c || _h
696 return _c(
697 "transition",
698 { attrs: { name: "el-zoom-in-top" }, on: { "after-leave": _vm.doDestroy } },
699 [
700 _c(
701 "div",
702 {
703 directives: [
704 {
705 name: "show",
706 rawName: "v-show",
707 value: _vm.showPopper,
708 expression: "showPopper"
709 }
710 ],
711 staticClass: "el-color-dropdown"
712 },
713 [
714 _c(
715 "div",
716 { staticClass: "el-color-dropdown__main-wrapper" },
717 [
718 _c("hue-slider", {
719 ref: "hue",
720 staticStyle: { float: "right" },
721 attrs: { color: _vm.color, vertical: "" }
722 }),
723 _c("sv-panel", { ref: "sl", attrs: { color: _vm.color } })
724 ],
725 1
726 ),
727 _vm.showAlpha
728 ? _c("alpha-slider", { ref: "alpha", attrs: { color: _vm.color } })
729 : _vm._e(),
730 _vm.predefine
731 ? _c("predefine", {
732 attrs: { color: _vm.color, colors: _vm.predefine }
733 })
734 : _vm._e(),
735 _c(
736 "div",
737 { staticClass: "el-color-dropdown__btns" },
738 [
739 _c(
740 "span",
741 { staticClass: "el-color-dropdown__value" },
742 [
743 _c("el-input", {
744 attrs: { "validate-event": false, size: "mini" },
745 on: { blur: _vm.handleConfirm },
746 nativeOn: {
747 keyup: function($event) {
748 if (
749 !("button" in $event) &&
750 _vm._k(
751 $event.keyCode,
752 "enter",
753 13,
754 $event.key,
755 "Enter"
756 )
757 ) {
758 return null
759 }
760 return _vm.handleConfirm($event)
761 }
762 },
763 model: {
764 value: _vm.customInput,
765 callback: function($$v) {
766 _vm.customInput = $$v
767 },
768 expression: "customInput"
769 }
770 })
771 ],
772 1
773 ),
774 _c(
775 "el-button",
776 {
777 staticClass: "el-color-dropdown__link-btn",
778 attrs: { size: "mini", type: "text" },
779 on: {
780 click: function($event) {
781 _vm.$emit("clear")
782 }
783 }
784 },
785 [
786 _vm._v(
787 "\n " +
788 _vm._s(_vm.t("el.colorpicker.clear")) +
789 "\n "
790 )
791 ]
792 ),
793 _c(
794 "el-button",
795 {
796 staticClass: "el-color-dropdown__btn",
797 attrs: { plain: "", size: "mini" },
798 on: { click: _vm.confirmValue }
799 },
800 [
801 _vm._v(
802 "\n " +
803 _vm._s(_vm.t("el.colorpicker.confirm")) +
804 "\n "
805 )
806 ]
807 )
808 ],
809 1
810 )
811 ],
812 1
813 )
814 ]
815 )
816}
817var picker_dropdownvue_type_template_id_06601625_staticRenderFns = []
818picker_dropdownvue_type_template_id_06601625_render._withStripped = true
819
820
821// CONCATENATED MODULE: ./packages/color-picker/src/components/picker-dropdown.vue?vue&type=template&id=06601625&
822
823// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/sv-panel.vue?vue&type=template&id=d8583596&
824var sv_panelvue_type_template_id_d8583596_render = function() {
825 var _vm = this
826 var _h = _vm.$createElement
827 var _c = _vm._self._c || _h
828 return _c(
829 "div",
830 {
831 staticClass: "el-color-svpanel",
832 style: {
833 backgroundColor: _vm.background
834 }
835 },
836 [
837 _c("div", { staticClass: "el-color-svpanel__white" }),
838 _c("div", { staticClass: "el-color-svpanel__black" }),
839 _c(
840 "div",
841 {
842 staticClass: "el-color-svpanel__cursor",
843 style: {
844 top: _vm.cursorTop + "px",
845 left: _vm.cursorLeft + "px"
846 }
847 },
848 [_c("div")]
849 )
850 ]
851 )
852}
853var sv_panelvue_type_template_id_d8583596_staticRenderFns = []
854sv_panelvue_type_template_id_d8583596_render._withStripped = true
855
856
857// CONCATENATED MODULE: ./packages/color-picker/src/components/sv-panel.vue?vue&type=template&id=d8583596&
858
859// EXTERNAL MODULE: external "vue"
860var external_vue_ = __webpack_require__(7);
861var external_vue_default = /*#__PURE__*/__webpack_require__.n(external_vue_);
862
863// CONCATENATED MODULE: ./packages/color-picker/src/draggable.js
864
865var isDragging = false;
866
867/* harmony default export */ var draggable = (function (element, options) {
868 if (external_vue_default.a.prototype.$isServer) return;
869 var moveFn = function moveFn(event) {
870 if (options.drag) {
871 options.drag(event);
872 }
873 };
874 var upFn = function upFn(event) {
875 document.removeEventListener('mousemove', moveFn);
876 document.removeEventListener('mouseup', upFn);
877 document.onselectstart = null;
878 document.ondragstart = null;
879
880 isDragging = false;
881
882 if (options.end) {
883 options.end(event);
884 }
885 };
886 element.addEventListener('mousedown', function (event) {
887 if (isDragging) return;
888 document.onselectstart = function () {
889 return false;
890 };
891 document.ondragstart = function () {
892 return false;
893 };
894
895 document.addEventListener('mousemove', moveFn);
896 document.addEventListener('mouseup', upFn);
897 isDragging = true;
898
899 if (options.start) {
900 options.start(event);
901 }
902 });
903});
904// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/sv-panel.vue?vue&type=script&lang=js&
905//
906//
907//
908//
909//
910//
911//
912//
913//
914//
915//
916//
917//
918//
919//
920//
921//
922
923
924
925/* harmony default export */ var sv_panelvue_type_script_lang_js_ = ({
926 name: 'el-sl-panel',
927
928 props: {
929 color: {
930 required: true
931 }
932 },
933
934 computed: {
935 colorValue: function colorValue() {
936 var hue = this.color.get('hue');
937 var value = this.color.get('value');
938 return { hue: hue, value: value };
939 }
940 },
941
942 watch: {
943 colorValue: function colorValue() {
944 this.update();
945 }
946 },
947
948 methods: {
949 update: function update() {
950 var saturation = this.color.get('saturation');
951 var value = this.color.get('value');
952
953 var el = this.$el;
954 var width = el.clientWidth,
955 height = el.clientHeight;
956
957
958 this.cursorLeft = saturation * width / 100;
959 this.cursorTop = (100 - value) * height / 100;
960
961 this.background = 'hsl(' + this.color.get('hue') + ', 100%, 50%)';
962 },
963 handleDrag: function handleDrag(event) {
964 var el = this.$el;
965 var rect = el.getBoundingClientRect();
966
967 var left = event.clientX - rect.left;
968 var top = event.clientY - rect.top;
969 left = Math.max(0, left);
970 left = Math.min(left, rect.width);
971
972 top = Math.max(0, top);
973 top = Math.min(top, rect.height);
974
975 this.cursorLeft = left;
976 this.cursorTop = top;
977 this.color.set({
978 saturation: left / rect.width * 100,
979 value: 100 - top / rect.height * 100
980 });
981 }
982 },
983
984 mounted: function mounted() {
985 var _this = this;
986
987 draggable(this.$el, {
988 drag: function drag(event) {
989 _this.handleDrag(event);
990 },
991 end: function end(event) {
992 _this.handleDrag(event);
993 }
994 });
995
996 this.update();
997 },
998 data: function data() {
999 return {
1000 cursorTop: 0,
1001 cursorLeft: 0,
1002 background: 'hsl(0, 100%, 50%)'
1003 };
1004 }
1005});
1006// CONCATENATED MODULE: ./packages/color-picker/src/components/sv-panel.vue?vue&type=script&lang=js&
1007 /* harmony default export */ var components_sv_panelvue_type_script_lang_js_ = (sv_panelvue_type_script_lang_js_);
1008// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
1009var componentNormalizer = __webpack_require__(0);
1010
1011// CONCATENATED MODULE: ./packages/color-picker/src/components/sv-panel.vue
1012
1013
1014
1015
1016
1017/* normalize component */
1018
1019var component = Object(componentNormalizer["a" /* default */])(
1020 components_sv_panelvue_type_script_lang_js_,
1021 sv_panelvue_type_template_id_d8583596_render,
1022 sv_panelvue_type_template_id_d8583596_staticRenderFns,
1023 false,
1024 null,
1025 null,
1026 null
1027
1028)
1029
1030/* hot reload */
1031if (false) { var api; }
1032component.options.__file = "packages/color-picker/src/components/sv-panel.vue"
1033/* harmony default export */ var sv_panel = (component.exports);
1034// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/hue-slider.vue?vue&type=template&id=5cdc43b1&
1035var hue_slidervue_type_template_id_5cdc43b1_render = function() {
1036 var _vm = this
1037 var _h = _vm.$createElement
1038 var _c = _vm._self._c || _h
1039 return _c(
1040 "div",
1041 {
1042 staticClass: "el-color-hue-slider",
1043 class: { "is-vertical": _vm.vertical }
1044 },
1045 [
1046 _c("div", {
1047 ref: "bar",
1048 staticClass: "el-color-hue-slider__bar",
1049 on: { click: _vm.handleClick }
1050 }),
1051 _c("div", {
1052 ref: "thumb",
1053 staticClass: "el-color-hue-slider__thumb",
1054 style: {
1055 left: _vm.thumbLeft + "px",
1056 top: _vm.thumbTop + "px"
1057 }
1058 })
1059 ]
1060 )
1061}
1062var hue_slidervue_type_template_id_5cdc43b1_staticRenderFns = []
1063hue_slidervue_type_template_id_5cdc43b1_render._withStripped = true
1064
1065
1066// CONCATENATED MODULE: ./packages/color-picker/src/components/hue-slider.vue?vue&type=template&id=5cdc43b1&
1067
1068// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/hue-slider.vue?vue&type=script&lang=js&
1069//
1070//
1071//
1072//
1073//
1074//
1075//
1076//
1077//
1078//
1079//
1080//
1081//
1082
1083
1084
1085/* harmony default export */ var hue_slidervue_type_script_lang_js_ = ({
1086 name: 'el-color-hue-slider',
1087
1088 props: {
1089 color: {
1090 required: true
1091 },
1092
1093 vertical: Boolean
1094 },
1095
1096 data: function data() {
1097 return {
1098 thumbLeft: 0,
1099 thumbTop: 0
1100 };
1101 },
1102
1103
1104 computed: {
1105 hueValue: function hueValue() {
1106 var hue = this.color.get('hue');
1107 return hue;
1108 }
1109 },
1110
1111 watch: {
1112 hueValue: function hueValue() {
1113 this.update();
1114 }
1115 },
1116
1117 methods: {
1118 handleClick: function handleClick(event) {
1119 var thumb = this.$refs.thumb;
1120 var target = event.target;
1121
1122 if (target !== thumb) {
1123 this.handleDrag(event);
1124 }
1125 },
1126 handleDrag: function handleDrag(event) {
1127 var rect = this.$el.getBoundingClientRect();
1128 var thumb = this.$refs.thumb;
1129
1130 var hue = void 0;
1131
1132 if (!this.vertical) {
1133 var left = event.clientX - rect.left;
1134 left = Math.min(left, rect.width - thumb.offsetWidth / 2);
1135 left = Math.max(thumb.offsetWidth / 2, left);
1136
1137 hue = Math.round((left - thumb.offsetWidth / 2) / (rect.width - thumb.offsetWidth) * 360);
1138 } else {
1139 var top = event.clientY - rect.top;
1140 top = Math.min(top, rect.height - thumb.offsetHeight / 2);
1141 top = Math.max(thumb.offsetHeight / 2, top);
1142
1143 hue = Math.round((top - thumb.offsetHeight / 2) / (rect.height - thumb.offsetHeight) * 360);
1144 }
1145
1146 this.color.set('hue', hue);
1147 },
1148 getThumbLeft: function getThumbLeft() {
1149 if (this.vertical) return 0;
1150 var el = this.$el;
1151 var hue = this.color.get('hue');
1152
1153 if (!el) return 0;
1154 var thumb = this.$refs.thumb;
1155 return Math.round(hue * (el.offsetWidth - thumb.offsetWidth / 2) / 360);
1156 },
1157 getThumbTop: function getThumbTop() {
1158 if (!this.vertical) return 0;
1159 var el = this.$el;
1160 var hue = this.color.get('hue');
1161
1162 if (!el) return 0;
1163 var thumb = this.$refs.thumb;
1164 return Math.round(hue * (el.offsetHeight - thumb.offsetHeight / 2) / 360);
1165 },
1166 update: function update() {
1167 this.thumbLeft = this.getThumbLeft();
1168 this.thumbTop = this.getThumbTop();
1169 }
1170 },
1171
1172 mounted: function mounted() {
1173 var _this = this;
1174
1175 var _$refs = this.$refs,
1176 bar = _$refs.bar,
1177 thumb = _$refs.thumb;
1178
1179
1180 var dragConfig = {
1181 drag: function drag(event) {
1182 _this.handleDrag(event);
1183 },
1184 end: function end(event) {
1185 _this.handleDrag(event);
1186 }
1187 };
1188
1189 draggable(bar, dragConfig);
1190 draggable(thumb, dragConfig);
1191 this.update();
1192 }
1193});
1194// CONCATENATED MODULE: ./packages/color-picker/src/components/hue-slider.vue?vue&type=script&lang=js&
1195 /* harmony default export */ var components_hue_slidervue_type_script_lang_js_ = (hue_slidervue_type_script_lang_js_);
1196// CONCATENATED MODULE: ./packages/color-picker/src/components/hue-slider.vue
1197
1198
1199
1200
1201
1202/* normalize component */
1203
1204var hue_slider_component = Object(componentNormalizer["a" /* default */])(
1205 components_hue_slidervue_type_script_lang_js_,
1206 hue_slidervue_type_template_id_5cdc43b1_render,
1207 hue_slidervue_type_template_id_5cdc43b1_staticRenderFns,
1208 false,
1209 null,
1210 null,
1211 null
1212
1213)
1214
1215/* hot reload */
1216if (false) { var hue_slider_api; }
1217hue_slider_component.options.__file = "packages/color-picker/src/components/hue-slider.vue"
1218/* harmony default export */ var hue_slider = (hue_slider_component.exports);
1219// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/alpha-slider.vue?vue&type=template&id=068c66cb&
1220var alpha_slidervue_type_template_id_068c66cb_render = function() {
1221 var _vm = this
1222 var _h = _vm.$createElement
1223 var _c = _vm._self._c || _h
1224 return _c(
1225 "div",
1226 {
1227 staticClass: "el-color-alpha-slider",
1228 class: { "is-vertical": _vm.vertical }
1229 },
1230 [
1231 _c("div", {
1232 ref: "bar",
1233 staticClass: "el-color-alpha-slider__bar",
1234 style: {
1235 background: _vm.background
1236 },
1237 on: { click: _vm.handleClick }
1238 }),
1239 _c("div", {
1240 ref: "thumb",
1241 staticClass: "el-color-alpha-slider__thumb",
1242 style: {
1243 left: _vm.thumbLeft + "px",
1244 top: _vm.thumbTop + "px"
1245 }
1246 })
1247 ]
1248 )
1249}
1250var alpha_slidervue_type_template_id_068c66cb_staticRenderFns = []
1251alpha_slidervue_type_template_id_068c66cb_render._withStripped = true
1252
1253
1254// CONCATENATED MODULE: ./packages/color-picker/src/components/alpha-slider.vue?vue&type=template&id=068c66cb&
1255
1256// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/alpha-slider.vue?vue&type=script&lang=js&
1257//
1258//
1259//
1260//
1261//
1262//
1263//
1264//
1265//
1266//
1267//
1268//
1269//
1270//
1271//
1272//
1273//
1274//
1275//
1276
1277
1278
1279/* harmony default export */ var alpha_slidervue_type_script_lang_js_ = ({
1280 name: 'el-color-alpha-slider',
1281
1282 props: {
1283 color: {
1284 required: true
1285 },
1286 vertical: Boolean
1287 },
1288
1289 watch: {
1290 'color._alpha': function color_alpha() {
1291 this.update();
1292 },
1293 'color.value': function colorValue() {
1294 this.update();
1295 }
1296 },
1297
1298 methods: {
1299 handleClick: function handleClick(event) {
1300 var thumb = this.$refs.thumb;
1301 var target = event.target;
1302
1303 if (target !== thumb) {
1304 this.handleDrag(event);
1305 }
1306 },
1307 handleDrag: function handleDrag(event) {
1308 var rect = this.$el.getBoundingClientRect();
1309 var thumb = this.$refs.thumb;
1310
1311
1312 if (!this.vertical) {
1313 var left = event.clientX - rect.left;
1314 left = Math.max(thumb.offsetWidth / 2, left);
1315 left = Math.min(left, rect.width - thumb.offsetWidth / 2);
1316
1317 this.color.set('alpha', Math.round((left - thumb.offsetWidth / 2) / (rect.width - thumb.offsetWidth) * 100));
1318 } else {
1319 var top = event.clientY - rect.top;
1320 top = Math.max(thumb.offsetHeight / 2, top);
1321 top = Math.min(top, rect.height - thumb.offsetHeight / 2);
1322
1323 this.color.set('alpha', Math.round((top - thumb.offsetHeight / 2) / (rect.height - thumb.offsetHeight) * 100));
1324 }
1325 },
1326 getThumbLeft: function getThumbLeft() {
1327 if (this.vertical) return 0;
1328 var el = this.$el;
1329 var alpha = this.color._alpha;
1330
1331 if (!el) return 0;
1332 var thumb = this.$refs.thumb;
1333 return Math.round(alpha * (el.offsetWidth - thumb.offsetWidth / 2) / 100);
1334 },
1335 getThumbTop: function getThumbTop() {
1336 if (!this.vertical) return 0;
1337 var el = this.$el;
1338 var alpha = this.color._alpha;
1339
1340 if (!el) return 0;
1341 var thumb = this.$refs.thumb;
1342 return Math.round(alpha * (el.offsetHeight - thumb.offsetHeight / 2) / 100);
1343 },
1344 getBackground: function getBackground() {
1345 if (this.color && this.color.value) {
1346 var _color$toRgb = this.color.toRgb(),
1347 r = _color$toRgb.r,
1348 g = _color$toRgb.g,
1349 b = _color$toRgb.b;
1350
1351 return 'linear-gradient(to right, rgba(' + r + ', ' + g + ', ' + b + ', 0) 0%, rgba(' + r + ', ' + g + ', ' + b + ', 1) 100%)';
1352 }
1353 return null;
1354 },
1355 update: function update() {
1356 this.thumbLeft = this.getThumbLeft();
1357 this.thumbTop = this.getThumbTop();
1358 this.background = this.getBackground();
1359 }
1360 },
1361
1362 data: function data() {
1363 return {
1364 thumbLeft: 0,
1365 thumbTop: 0,
1366 background: null
1367 };
1368 },
1369 mounted: function mounted() {
1370 var _this = this;
1371
1372 var _$refs = this.$refs,
1373 bar = _$refs.bar,
1374 thumb = _$refs.thumb;
1375
1376
1377 var dragConfig = {
1378 drag: function drag(event) {
1379 _this.handleDrag(event);
1380 },
1381 end: function end(event) {
1382 _this.handleDrag(event);
1383 }
1384 };
1385
1386 draggable(bar, dragConfig);
1387 draggable(thumb, dragConfig);
1388 this.update();
1389 }
1390});
1391// CONCATENATED MODULE: ./packages/color-picker/src/components/alpha-slider.vue?vue&type=script&lang=js&
1392 /* harmony default export */ var components_alpha_slidervue_type_script_lang_js_ = (alpha_slidervue_type_script_lang_js_);
1393// CONCATENATED MODULE: ./packages/color-picker/src/components/alpha-slider.vue
1394
1395
1396
1397
1398
1399/* normalize component */
1400
1401var alpha_slider_component = Object(componentNormalizer["a" /* default */])(
1402 components_alpha_slidervue_type_script_lang_js_,
1403 alpha_slidervue_type_template_id_068c66cb_render,
1404 alpha_slidervue_type_template_id_068c66cb_staticRenderFns,
1405 false,
1406 null,
1407 null,
1408 null
1409
1410)
1411
1412/* hot reload */
1413if (false) { var alpha_slider_api; }
1414alpha_slider_component.options.__file = "packages/color-picker/src/components/alpha-slider.vue"
1415/* harmony default export */ var alpha_slider = (alpha_slider_component.exports);
1416// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/predefine.vue?vue&type=template&id=06e03093&
1417var predefinevue_type_template_id_06e03093_render = function() {
1418 var _vm = this
1419 var _h = _vm.$createElement
1420 var _c = _vm._self._c || _h
1421 return _c("div", { staticClass: "el-color-predefine" }, [
1422 _c(
1423 "div",
1424 { staticClass: "el-color-predefine__colors" },
1425 _vm._l(_vm.rgbaColors, function(item, index) {
1426 return _c(
1427 "div",
1428 {
1429 key: _vm.colors[index],
1430 staticClass: "el-color-predefine__color-selector",
1431 class: { selected: item.selected, "is-alpha": item._alpha < 100 },
1432 on: {
1433 click: function($event) {
1434 _vm.handleSelect(index)
1435 }
1436 }
1437 },
1438 [_c("div", { style: { "background-color": item.value } })]
1439 )
1440 }),
1441 0
1442 )
1443 ])
1444}
1445var predefinevue_type_template_id_06e03093_staticRenderFns = []
1446predefinevue_type_template_id_06e03093_render._withStripped = true
1447
1448
1449// CONCATENATED MODULE: ./packages/color-picker/src/components/predefine.vue?vue&type=template&id=06e03093&
1450
1451// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/predefine.vue?vue&type=script&lang=js&
1452//
1453//
1454//
1455//
1456//
1457//
1458//
1459//
1460//
1461//
1462//
1463//
1464//
1465//
1466//
1467
1468
1469
1470/* harmony default export */ var predefinevue_type_script_lang_js_ = ({
1471 props: {
1472 colors: { type: Array, required: true },
1473 color: { required: true }
1474 },
1475 data: function data() {
1476 return {
1477 rgbaColors: this.parseColors(this.colors, this.color)
1478 };
1479 },
1480
1481 methods: {
1482 handleSelect: function handleSelect(index) {
1483 this.color.fromString(this.colors[index]);
1484 },
1485 parseColors: function parseColors(colors, color) {
1486 return colors.map(function (value) {
1487 var c = new src_color();
1488 c.enableAlpha = true;
1489 c.format = 'rgba';
1490 c.fromString(value);
1491 c.selected = c.value === color.value;
1492 return c;
1493 });
1494 }
1495 },
1496 watch: {
1497 '$parent.currentColor': function $parentCurrentColor(val) {
1498 var color = new src_color();
1499 color.fromString(val);
1500
1501 this.rgbaColors.forEach(function (item) {
1502 item.selected = color.compare(item);
1503 });
1504 },
1505 colors: function colors(newVal) {
1506 this.rgbaColors = this.parseColors(newVal, this.color);
1507 },
1508 color: function color(newVal) {
1509 this.rgbaColors = this.parseColors(this.colors, newVal);
1510 }
1511 }
1512});
1513// CONCATENATED MODULE: ./packages/color-picker/src/components/predefine.vue?vue&type=script&lang=js&
1514 /* harmony default export */ var components_predefinevue_type_script_lang_js_ = (predefinevue_type_script_lang_js_);
1515// CONCATENATED MODULE: ./packages/color-picker/src/components/predefine.vue
1516
1517
1518
1519
1520
1521/* normalize component */
1522
1523var predefine_component = Object(componentNormalizer["a" /* default */])(
1524 components_predefinevue_type_script_lang_js_,
1525 predefinevue_type_template_id_06e03093_render,
1526 predefinevue_type_template_id_06e03093_staticRenderFns,
1527 false,
1528 null,
1529 null,
1530 null
1531
1532)
1533
1534/* hot reload */
1535if (false) { var predefine_api; }
1536predefine_component.options.__file = "packages/color-picker/src/components/predefine.vue"
1537/* harmony default export */ var predefine = (predefine_component.exports);
1538// EXTERNAL MODULE: external "element-ui/lib/utils/vue-popper"
1539var vue_popper_ = __webpack_require__(5);
1540var vue_popper_default = /*#__PURE__*/__webpack_require__.n(vue_popper_);
1541
1542// EXTERNAL MODULE: external "element-ui/lib/mixins/locale"
1543var locale_ = __webpack_require__(6);
1544var locale_default = /*#__PURE__*/__webpack_require__.n(locale_);
1545
1546// EXTERNAL MODULE: external "element-ui/lib/input"
1547var input_ = __webpack_require__(10);
1548var input_default = /*#__PURE__*/__webpack_require__.n(input_);
1549
1550// EXTERNAL MODULE: external "element-ui/lib/button"
1551var button_ = __webpack_require__(13);
1552var button_default = /*#__PURE__*/__webpack_require__.n(button_);
1553
1554// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/components/picker-dropdown.vue?vue&type=script&lang=js&
1555//
1556//
1557//
1558//
1559//
1560//
1561//
1562//
1563//
1564//
1565//
1566//
1567//
1568//
1569//
1570//
1571//
1572//
1573//
1574//
1575//
1576//
1577//
1578//
1579//
1580//
1581//
1582//
1583//
1584//
1585//
1586//
1587//
1588//
1589//
1590//
1591//
1592//
1593//
1594//
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605/* harmony default export */ var picker_dropdownvue_type_script_lang_js_ = ({
1606 name: 'el-color-picker-dropdown',
1607
1608 mixins: [vue_popper_default.a, locale_default.a],
1609
1610 components: {
1611 SvPanel: sv_panel,
1612 HueSlider: hue_slider,
1613 AlphaSlider: alpha_slider,
1614 ElInput: input_default.a,
1615 ElButton: button_default.a,
1616 Predefine: predefine
1617 },
1618
1619 props: {
1620 color: {
1621 required: true
1622 },
1623 showAlpha: Boolean,
1624 predefine: Array
1625 },
1626
1627 data: function data() {
1628 return {
1629 customInput: ''
1630 };
1631 },
1632
1633
1634 computed: {
1635 currentColor: function currentColor() {
1636 var parent = this.$parent;
1637 return !parent.value && !parent.showPanelColor ? '' : parent.color.value;
1638 }
1639 },
1640
1641 methods: {
1642 confirmValue: function confirmValue() {
1643 this.$emit('pick');
1644 },
1645 handleConfirm: function handleConfirm() {
1646 this.color.fromString(this.customInput);
1647 }
1648 },
1649
1650 mounted: function mounted() {
1651 this.$parent.popperElm = this.popperElm = this.$el;
1652 this.referenceElm = this.$parent.$el;
1653 },
1654
1655
1656 watch: {
1657 showPopper: function showPopper(val) {
1658 var _this = this;
1659
1660 if (val === true) {
1661 this.$nextTick(function () {
1662 var _$refs = _this.$refs,
1663 sl = _$refs.sl,
1664 hue = _$refs.hue,
1665 alpha = _$refs.alpha;
1666
1667 sl && sl.update();
1668 hue && hue.update();
1669 alpha && alpha.update();
1670 });
1671 }
1672 },
1673
1674
1675 currentColor: {
1676 immediate: true,
1677 handler: function handler(val) {
1678 this.customInput = val;
1679 }
1680 }
1681 }
1682});
1683// CONCATENATED MODULE: ./packages/color-picker/src/components/picker-dropdown.vue?vue&type=script&lang=js&
1684 /* harmony default export */ var components_picker_dropdownvue_type_script_lang_js_ = (picker_dropdownvue_type_script_lang_js_);
1685// CONCATENATED MODULE: ./packages/color-picker/src/components/picker-dropdown.vue
1686
1687
1688
1689
1690
1691/* normalize component */
1692
1693var picker_dropdown_component = Object(componentNormalizer["a" /* default */])(
1694 components_picker_dropdownvue_type_script_lang_js_,
1695 picker_dropdownvue_type_template_id_06601625_render,
1696 picker_dropdownvue_type_template_id_06601625_staticRenderFns,
1697 false,
1698 null,
1699 null,
1700 null
1701
1702)
1703
1704/* hot reload */
1705if (false) { var picker_dropdown_api; }
1706picker_dropdown_component.options.__file = "packages/color-picker/src/components/picker-dropdown.vue"
1707/* harmony default export */ var picker_dropdown = (picker_dropdown_component.exports);
1708// EXTERNAL MODULE: external "element-ui/lib/utils/clickoutside"
1709var clickoutside_ = __webpack_require__(12);
1710var clickoutside_default = /*#__PURE__*/__webpack_require__.n(clickoutside_);
1711
1712// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
1713var emitter_ = __webpack_require__(4);
1714var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
1715
1716// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/color-picker/src/main.vue?vue&type=script&lang=js&
1717//
1718//
1719//
1720//
1721//
1722//
1723//
1724//
1725//
1726//
1727//
1728//
1729//
1730//
1731//
1732//
1733//
1734//
1735//
1736//
1737//
1738//
1739//
1740//
1741//
1742//
1743//
1744//
1745//
1746//
1747//
1748//
1749
1750
1751
1752
1753
1754
1755/* harmony default export */ var mainvue_type_script_lang_js_ = ({
1756 name: 'ElColorPicker',
1757
1758 mixins: [emitter_default.a],
1759
1760 props: {
1761 value: String,
1762 showAlpha: Boolean,
1763 colorFormat: String,
1764 disabled: Boolean,
1765 size: String,
1766 popperClass: String,
1767 predefine: Array
1768 },
1769
1770 inject: {
1771 elForm: {
1772 default: ''
1773 },
1774 elFormItem: {
1775 default: ''
1776 }
1777 },
1778
1779 directives: { Clickoutside: clickoutside_default.a },
1780
1781 computed: {
1782 displayedColor: function displayedColor() {
1783 if (!this.value && !this.showPanelColor) {
1784 return 'transparent';
1785 }
1786
1787 return this.displayedRgb(this.color, this.showAlpha);
1788 },
1789 _elFormItemSize: function _elFormItemSize() {
1790 return (this.elFormItem || {}).elFormItemSize;
1791 },
1792 colorSize: function colorSize() {
1793 return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
1794 },
1795 colorDisabled: function colorDisabled() {
1796 return this.disabled || (this.elForm || {}).disabled;
1797 }
1798 },
1799
1800 watch: {
1801 value: function value(val) {
1802 if (!val) {
1803 this.showPanelColor = false;
1804 } else if (val && val !== this.color.value) {
1805 this.color.fromString(val);
1806 }
1807 },
1808
1809 color: {
1810 deep: true,
1811 handler: function handler() {
1812 this.showPanelColor = true;
1813 }
1814 },
1815 displayedColor: function displayedColor(val) {
1816 if (!this.showPicker) return;
1817 var currentValueColor = new src_color({
1818 enableAlpha: this.showAlpha,
1819 format: this.colorFormat
1820 });
1821 currentValueColor.fromString(this.value);
1822
1823 var currentValueColorRgb = this.displayedRgb(currentValueColor, this.showAlpha);
1824 if (val !== currentValueColorRgb) {
1825 this.$emit('active-change', val);
1826 }
1827 }
1828 },
1829
1830 methods: {
1831 handleTrigger: function handleTrigger() {
1832 if (this.colorDisabled) return;
1833 this.showPicker = !this.showPicker;
1834 },
1835 confirmValue: function confirmValue() {
1836 var value = this.color.value;
1837 this.$emit('input', value);
1838 this.$emit('change', value);
1839 this.dispatch('ElFormItem', 'el.form.change', value);
1840 this.showPicker = false;
1841 },
1842 clearValue: function clearValue() {
1843 this.$emit('input', null);
1844 this.$emit('change', null);
1845 if (this.value !== null) {
1846 this.dispatch('ElFormItem', 'el.form.change', null);
1847 }
1848 this.showPanelColor = false;
1849 this.showPicker = false;
1850 this.resetColor();
1851 },
1852 hide: function hide() {
1853 this.showPicker = false;
1854 this.resetColor();
1855 },
1856 resetColor: function resetColor() {
1857 var _this = this;
1858
1859 this.$nextTick(function (_) {
1860 if (_this.value) {
1861 _this.color.fromString(_this.value);
1862 } else {
1863 _this.showPanelColor = false;
1864 }
1865 });
1866 },
1867 displayedRgb: function displayedRgb(color, showAlpha) {
1868 if (!(color instanceof src_color)) {
1869 throw Error('color should be instance of Color Class');
1870 }
1871
1872 var _color$toRgb = color.toRgb(),
1873 r = _color$toRgb.r,
1874 g = _color$toRgb.g,
1875 b = _color$toRgb.b;
1876
1877 return showAlpha ? 'rgba(' + r + ', ' + g + ', ' + b + ', ' + color.get('alpha') / 100 + ')' : 'rgb(' + r + ', ' + g + ', ' + b + ')';
1878 }
1879 },
1880
1881 mounted: function mounted() {
1882 var value = this.value;
1883 if (value) {
1884 this.color.fromString(value);
1885 }
1886 this.popperElm = this.$refs.dropdown.$el;
1887 },
1888 data: function data() {
1889 var color = new src_color({
1890 enableAlpha: this.showAlpha,
1891 format: this.colorFormat
1892 });
1893
1894 return {
1895 color: color,
1896 showPicker: false,
1897 showPanelColor: false
1898 };
1899 },
1900
1901
1902 components: {
1903 PickerDropdown: picker_dropdown
1904 }
1905});
1906// CONCATENATED MODULE: ./packages/color-picker/src/main.vue?vue&type=script&lang=js&
1907 /* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_);
1908// CONCATENATED MODULE: ./packages/color-picker/src/main.vue
1909
1910
1911
1912
1913
1914/* normalize component */
1915
1916var main_component = Object(componentNormalizer["a" /* default */])(
1917 src_mainvue_type_script_lang_js_,
1918 render,
1919 staticRenderFns,
1920 false,
1921 null,
1922 null,
1923 null
1924
1925)
1926
1927/* hot reload */
1928if (false) { var main_api; }
1929main_component.options.__file = "packages/color-picker/src/main.vue"
1930/* harmony default export */ var main = (main_component.exports);
1931// CONCATENATED MODULE: ./packages/color-picker/index.js
1932
1933
1934/* istanbul ignore next */
1935main.install = function (Vue) {
1936 Vue.component(main.name, main);
1937};
1938
1939/* harmony default export */ var color_picker = __webpack_exports__["default"] = (main);
1940
1941/***/ }),
1942
1943/***/ 6:
1944/***/ (function(module, exports) {
1945
1946module.exports = require("element-ui/lib/mixins/locale");
1947
1948/***/ }),
1949
1950/***/ 7:
1951/***/ (function(module, exports) {
1952
1953module.exports = require("vue");
1954
1955/***/ })
1956
1957/******/ });
\No newline at end of file