vxe-pc-ui 3.16.21 → 3.16.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/color-picker/index.js +14 -0
- package/es/color-picker/src/color-picker.js +40 -28
- package/es/color-picker/src/util.js +252 -36
- package/es/date-picker/src/date-picker.js +2 -1
- package/es/date-range-picker/src/date-range-picker.js +2 -1
- package/es/icon/style.css +1 -1
- package/es/select/src/select.js +2 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/color-picker/index.js +14 -0
- package/lib/color-picker/index.min.js +1 -1
- package/lib/color-picker/src/color-picker.js +38 -27
- package/lib/color-picker/src/color-picker.min.js +1 -1
- package/lib/color-picker/src/util.js +266 -46
- package/lib/color-picker/src/util.min.js +1 -1
- package/lib/date-picker/src/date-picker.js +2 -1
- package/lib/date-picker/src/date-picker.min.js +1 -1
- package/lib/date-range-picker/src/date-range-picker.js +2 -1
- package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +318 -77
- package/lib/index.umd.min.js +1 -1
- package/lib/select/src/select.js +2 -1
- package/lib/select/src/select.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +1 -1
- package/packages/color-picker/index.ts +15 -0
- package/packages/color-picker/src/color-picker.ts +41 -29
- package/packages/color-picker/src/util.ts +267 -42
- package/packages/date-picker/src/date-picker.ts +4 -2
- package/packages/date-range-picker/src/date-range-picker.ts +4 -2
- package/packages/select/src/select.ts +4 -2
- package/types/components/color-picker.d.ts +93 -0
- package/types/components/grid.d.ts +6 -0
- package/types/components/table.d.ts +2 -2
- package/types/ui/index.d.ts +2 -0
- /package/es/icon/{iconfont.1784868314197.ttf → iconfont.1784893277784.ttf} +0 -0
- /package/es/icon/{iconfont.1784868314197.woff → iconfont.1784893277784.woff} +0 -0
- /package/es/icon/{iconfont.1784868314197.woff2 → iconfont.1784893277784.woff2} +0 -0
- /package/es/{iconfont.1784868314197.ttf → iconfont.1784893277784.ttf} +0 -0
- /package/es/{iconfont.1784868314197.woff → iconfont.1784893277784.woff} +0 -0
- /package/es/{iconfont.1784868314197.woff2 → iconfont.1784893277784.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1784868314197.ttf → iconfont.1784893277784.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1784868314197.woff → iconfont.1784893277784.woff} +0 -0
- /package/lib/icon/style/{iconfont.1784868314197.woff2 → iconfont.1784893277784.woff2} +0 -0
- /package/lib/{iconfont.1784868314197.ttf → iconfont.1784893277784.ttf} +0 -0
- /package/lib/{iconfont.1784868314197.woff → iconfont.1784893277784.woff} +0 -0
- /package/lib/{iconfont.1784868314197.woff2 → iconfont.1784893277784.woff2} +0 -0
package/es/ui/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { VxeUI, setConfig, setIcon } from '@vxe-ui/core';
|
|
2
2
|
import { dynamicApp } from '../dynamics';
|
|
3
3
|
import { warnLog } from './src/log';
|
|
4
|
-
export const version = "3.16.
|
|
4
|
+
export const version = "3.16.22";
|
|
5
5
|
VxeUI.uiVersion = version;
|
|
6
6
|
VxeUI.dynamicApp = dynamicApp;
|
|
7
7
|
export function config(options) {
|
package/es/ui/src/log.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VxeUI } from '@vxe-ui/core';
|
|
2
2
|
const { log } = VxeUI;
|
|
3
|
-
const uiVersion = `ui v${"3.16.
|
|
3
|
+
const uiVersion = `ui v${"3.16.22"}`;
|
|
4
4
|
export function createComponentLog(name) {
|
|
5
5
|
const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
|
|
6
6
|
const ganttVersion = VxeUI.ganttVersion ? `gantt v${VxeUI.ganttVersion}` : '';
|
|
@@ -7,6 +7,7 @@ exports.default = exports.VxeColorPicker = exports.ColorPicker = void 0;
|
|
|
7
7
|
var _core = require("@vxe-ui/core");
|
|
8
8
|
var _colorPicker = _interopRequireDefault(require("./src/color-picker"));
|
|
9
9
|
var _dynamics = require("../dynamics");
|
|
10
|
+
var _util = require("./src/util");
|
|
10
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
12
|
var VxeColorPicker = exports.VxeColorPicker = Object.assign({}, _colorPicker.default, {
|
|
12
13
|
install: function install(app) {
|
|
@@ -15,5 +16,18 @@ var VxeColorPicker = exports.VxeColorPicker = Object.assign({}, _colorPicker.def
|
|
|
15
16
|
});
|
|
16
17
|
_dynamics.dynamicApp.use(VxeColorPicker);
|
|
17
18
|
_core.VxeUI.component(_colorPicker.default);
|
|
19
|
+
_core.VxeUI.color = {
|
|
20
|
+
parseColor: _util.parseColor,
|
|
21
|
+
hasRgb: _util.hasRgb,
|
|
22
|
+
hasHex: _util.hasHex,
|
|
23
|
+
toRgb: _util.toRgb,
|
|
24
|
+
toRgbString: _util.toRgbString,
|
|
25
|
+
toHex: _util.toHex,
|
|
26
|
+
toHexString: _util.toHexString,
|
|
27
|
+
toHsl: _util.toHsl,
|
|
28
|
+
toHsv: _util.toHsv,
|
|
29
|
+
lighten: _util.lighten,
|
|
30
|
+
darken: _util.darken
|
|
31
|
+
};
|
|
18
32
|
var ColorPicker = exports.ColorPicker = VxeColorPicker;
|
|
19
33
|
var _default = exports.default = VxeColorPicker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.VxeColorPicker=exports.ColorPicker=void 0;var _core=require("@vxe-ui/core"),_colorPicker=_interopRequireDefault(require("./src/color-picker")),_dynamics=require("../dynamics");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var VxeColorPicker=exports.VxeColorPicker=Object.assign({},_colorPicker.default,{install:function(e){e.component(_colorPicker.default.name,_colorPicker.default)}}),ColorPicker=(_dynamics.dynamicApp.use(VxeColorPicker),_core.VxeUI.component(_colorPicker.default),exports.ColorPicker=VxeColorPicker),_default=exports.default=VxeColorPicker;
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.VxeColorPicker=exports.ColorPicker=void 0;var _core=require("@vxe-ui/core"),_colorPicker=_interopRequireDefault(require("./src/color-picker")),_dynamics=require("../dynamics"),_util=require("./src/util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var VxeColorPicker=exports.VxeColorPicker=Object.assign({},_colorPicker.default,{install:function(e){e.component(_colorPicker.default.name,_colorPicker.default)}}),ColorPicker=(_dynamics.dynamicApp.use(VxeColorPicker),_core.VxeUI.component(_colorPicker.default),_core.VxeUI.color={parseColor:_util.parseColor,hasRgb:_util.hasRgb,hasHex:_util.hasHex,toRgb:_util.toRgb,toRgbString:_util.toRgbString,toHex:_util.toHex,toHexString:_util.toHexString,toHsl:_util.toHsl,toHsv:_util.toHsv,lighten:_util.lighten,darken:_util.darken},exports.ColorPicker=VxeColorPicker),_default=exports.default=VxeColorPicker;
|
|
@@ -193,6 +193,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
193
193
|
var $xeTable = $xeColorPicker.$xeTable;
|
|
194
194
|
var $xeModal = $xeColorPicker.$xeModal;
|
|
195
195
|
var $xeDrawer = $xeColorPicker.$xeDrawer;
|
|
196
|
+
var $xeCard = $xeColorPicker.$xeCard;
|
|
196
197
|
var $xeForm = $xeColorPicker.$xeForm;
|
|
197
198
|
var transfer = props.transfer;
|
|
198
199
|
if (transfer === null) {
|
|
@@ -200,7 +201,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
200
201
|
if (_xeUtils.default.isBoolean(globalTransfer)) {
|
|
201
202
|
return globalTransfer;
|
|
202
203
|
}
|
|
203
|
-
if ($xeTable || $xeModal || $xeDrawer || $xeForm) {
|
|
204
|
+
if ($xeTable || $xeModal || $xeDrawer || $xeCard || $xeForm) {
|
|
204
205
|
return true;
|
|
205
206
|
}
|
|
206
207
|
}
|
|
@@ -293,31 +294,41 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
293
294
|
var isRgb = $xeColorPicker.computeIsRgb;
|
|
294
295
|
var hueSliderEl = $xeColorPicker.$refs.refHueSliderElem;
|
|
295
296
|
var alphaSliderEl = $xeColorPicker.$refs.refAlphaSliderElem;
|
|
296
|
-
var colorRest = (0, _util.
|
|
297
|
-
reactData.hexValue =
|
|
298
|
-
reactData.rValue =
|
|
299
|
-
reactData.gValue =
|
|
300
|
-
reactData.bValue =
|
|
301
|
-
reactData.aValue =
|
|
302
|
-
if (colorRest
|
|
303
|
-
if (
|
|
304
|
-
|
|
305
|
-
var rgbRest = (0, _util.hexToRgb)(colorRest.hex);
|
|
306
|
-
if (rgbRest) {
|
|
307
|
-
reactData.rValue = rgbRest.r;
|
|
308
|
-
reactData.gValue = rgbRest.g;
|
|
309
|
-
reactData.bValue = rgbRest.b;
|
|
310
|
-
reactData.aValue = rgbRest.a;
|
|
311
|
-
}
|
|
312
|
-
}
|
|
297
|
+
var colorRest = (0, _util.parseValColor)(selectColor);
|
|
298
|
+
reactData.hexValue = '';
|
|
299
|
+
reactData.rValue = 0;
|
|
300
|
+
reactData.gValue = 0;
|
|
301
|
+
reactData.bValue = 0;
|
|
302
|
+
reactData.aValue = 1;
|
|
303
|
+
if (colorRest) {
|
|
304
|
+
if (colorRest.type === 'hex') {
|
|
305
|
+
reactData.hexValue = colorRest.hex;
|
|
313
306
|
} else {
|
|
314
|
-
|
|
315
|
-
|
|
307
|
+
reactData.rValue = colorRest.r;
|
|
308
|
+
reactData.gValue = colorRest.g;
|
|
309
|
+
reactData.bValue = colorRest.b;
|
|
310
|
+
reactData.aValue = colorRest.a;
|
|
311
|
+
}
|
|
312
|
+
if (colorRest.value) {
|
|
313
|
+
if (isRgb) {
|
|
314
|
+
if (colorRest.type === 'hex') {
|
|
315
|
+
var rgbRest = (0, _util.hexToRgb)(colorRest.hex);
|
|
316
|
+
if (rgbRest) {
|
|
317
|
+
reactData.rValue = rgbRest.r;
|
|
318
|
+
reactData.gValue = rgbRest.g;
|
|
319
|
+
reactData.bValue = rgbRest.b;
|
|
320
|
+
reactData.aValue = rgbRest.a;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
} else {
|
|
324
|
+
if (colorRest.type !== 'hex') {
|
|
325
|
+
reactData.hexValue = (0, _util.rgbToHexVal)(colorRest.r, colorRest.g, colorRest.b, colorRest.a);
|
|
326
|
+
}
|
|
316
327
|
}
|
|
317
328
|
}
|
|
318
329
|
}
|
|
319
330
|
if (isAniVisible) {
|
|
320
|
-
var hsvRest = colorRest.type === 'hex' ? (0, _util.hexToHsv)(colorRest.hex) : (0, _util.rgbToHsv)(colorRest);
|
|
331
|
+
var hsvRest = colorRest ? colorRest.type === 'hex' ? (0, _util.hexToHsv)(colorRest.hex) : (0, _util.rgbToHsv)(colorRest) : null;
|
|
321
332
|
var colorPanelEl = $xeColorPicker.$refs.refColorPanelElem;
|
|
322
333
|
if (hsvRest) {
|
|
323
334
|
if (colorPanelEl) {
|
|
@@ -330,7 +341,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
330
341
|
}
|
|
331
342
|
}
|
|
332
343
|
if (alphaSliderEl) {
|
|
333
|
-
$xeColorPicker.handleAlphaColor(alphaSliderEl.clientWidth *
|
|
344
|
+
$xeColorPicker.handleAlphaColor(alphaSliderEl.clientWidth * reactData.aValue);
|
|
334
345
|
}
|
|
335
346
|
}
|
|
336
347
|
},
|
|
@@ -542,7 +553,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
542
553
|
gNum = itemNum - offsetNum;
|
|
543
554
|
break;
|
|
544
555
|
}
|
|
545
|
-
reactData.panelColor = (0, _util.
|
|
556
|
+
reactData.panelColor = (0, _util.toValRgb)(rNum, gNum, bNum);
|
|
546
557
|
hueSliderBtnEl.style.left = (0, _dom.toCssUnit)(offsetLeft);
|
|
547
558
|
}
|
|
548
559
|
},
|
|
@@ -623,7 +634,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
623
634
|
gValue = reactData.gValue,
|
|
624
635
|
bValue = reactData.bValue,
|
|
625
636
|
aValue = reactData.aValue;
|
|
626
|
-
reactData.selectColor = (0, _util.
|
|
637
|
+
reactData.selectColor = (0, _util.toValRgb)(rValue, gValue, bValue, aValue);
|
|
627
638
|
$xeColorPicker.updateModelColor();
|
|
628
639
|
},
|
|
629
640
|
handleInputAlphaEvent: function handleInputAlphaEvent() {
|
|
@@ -684,12 +695,12 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
684
695
|
var colorPanelRect = colorPanelEl.getBoundingClientRect();
|
|
685
696
|
var offsetTop = Math.min(clientHeight, Math.max(0, clientY - colorPanelRect.y));
|
|
686
697
|
var offsetLeft = Math.min(clientWidth, Math.max(0, clientX - colorPanelRect.x));
|
|
687
|
-
var colorRest = (0, _util.
|
|
698
|
+
var colorRest = (0, _util.parseValColor)(panelColor);
|
|
688
699
|
if (colorRest) {
|
|
689
700
|
var hsvRest = colorRest.type === 'hex' ? (0, _util.hexToHsv)(colorRest.hex) : (0, _util.rgbToHsv)(colorRest);
|
|
690
701
|
if (hsvRest) {
|
|
691
702
|
var ragRest = (0, _util.hsvToRgb)(hsvRest.h, offsetLeft / clientWidth, 1 - offsetTop / clientHeight);
|
|
692
|
-
reactData.selectColor = (0, _util.
|
|
703
|
+
reactData.selectColor = (0, _util.toValRgb)(ragRest.r, ragRest.g, ragRest.b, showAlpha ? aValue : null);
|
|
693
704
|
$xeColorPicker.handlePanelColor(offsetLeft, offsetTop);
|
|
694
705
|
}
|
|
695
706
|
}
|
|
@@ -1020,7 +1031,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
1020
1031
|
reactData.hexValue = val;
|
|
1021
1032
|
},
|
|
1022
1033
|
change: function change() {
|
|
1023
|
-
var colorRest = (0, _util.
|
|
1034
|
+
var colorRest = (0, _util.parseValColor)(reactData.hexValue);
|
|
1024
1035
|
if (colorRest) {
|
|
1025
1036
|
if (colorRest.value) {
|
|
1026
1037
|
reactData.selectColor = colorRest.value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_util=require("./util"),_button=_interopRequireDefault(require("../../button")),_input=_interopRequireDefault(require("../../input")),_numberInput=_interopRequireDefault(require("../../number-input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperty(e,t,l){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var l=e[Symbol.toPrimitive];if(void 0===l)return("string"===t?String:Number)(e);l=l.call(e,t||"default");if("object"!=_typeof(l))return l;throw new TypeError("@@toPrimitive must return a primitive value.")}var WinEyeDropper="undefined"!=typeof window?window.EyeDropper:null,typeList=[{label:"HEX",value:"hex"},{label:"RGB",value:"rgb"}],_default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeColorPicker",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:String,placeholder:String,clearable:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.clearable}},type:{type:String,default:function(){return(0,_ui.getConfig)().colorPicker.type}},size:{type:String,default:function(){return(0,_ui.getConfig)().colorPicker.size||(0,_ui.getConfig)().size}},className:[String,Function],popupClassName:[String,Function],colors:{type:Array,default:function(){return _xeUtils.default.clone((0,_ui.getConfig)().colorPicker.colors,!0)||[]}},showAlpha:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showAlpha}},showEyeDropper:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showEyeDropper}},showColorExtractor:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showColorExtractor}},showQuick:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showQuick}},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},clickToCopy:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.clickToCopy}},placement:String,transfer:{type:Boolean,default:null},popupConfig:Object},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeColorPicker:this}},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{initialized:!1,selectTyle:"hex",selectColor:"",showTypePopup:!1,panelColor:"",hexValue:"",rValue:0,gValue:0,bValue:0,aValue:0,panelIndex:0,panelStyle:{},panelPlacement:null,visiblePanel:!1,isAniVisible:!1,isActivated:!1},internalData:{hpTimeout:void 0}}},computed:Object.assign(Object.assign({},{}),{computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeBtnTransfer:function(){var e=this,t=e.$xeTable,l=e.$xeModal,o=e.$xeDrawer,n=e.$xeForm,e=e.transfer;if(null===e){var i=(0,_ui.getConfig)().colorPicker.transfer;if(_xeUtils.default.isBoolean(i))return i;if(t||l||o||n)return!0}return e},computeColorList:function(){var e=this.colors;return e?e.map(function(e){return _xeUtils.default.isString(e)?{label:e,value:e}:{label:_xeUtils.default.eqNull(e.label)?e.value:e.label,value:e.value}}):[]},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().colorPicker.popupConfig,this.popupConfig)},computeIsRgb:function(){return"rgb"===this.reactData.selectTyle},computeSelectTypeItem:function(){var t=this.reactData.selectTyle;return typeList.find(function(e){return e.value===t})}}),methods:{dispatchEvent:function(e,t,l){this.$emit(e,(0,_ui.createEvent)(l,{$colorPicker:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},updateMode:function(){var e=this.reactData,t=this.value;e.selectColor=_xeUtils.default.toValueString(t),this.updateModelColor()},updateType:function(){var e=this.reactData,t=this.type,t="rgb"!==t&&"rgba"!==t?"hex":"rgb";e.selectTyle=t,this.updateMode()},updateModelColor:function(){var e=this,t=e.reactData,l=t.selectColor,o=t.isAniVisible,n=e.computeIsRgb,i=e.$refs.refHueSliderElem,r=e.$refs.refAlphaSliderElem,l=(0,_util.parseColor)(l);t.hexValue=l.hex,t.rValue=l.r,t.gValue=l.g,t.bValue=l.b,t.aValue=l.a,l.value&&(n?"hex"===l.type&&(n=(0,_util.hexToRgb)(l.hex))&&(t.rValue=n.r,t.gValue=n.g,t.bValue=n.b,t.aValue=n.a):"hex"!==l.type&&(t.hexValue=(0,_util.rgbToHex)(l))),o&&(n="hex"===l.type?(0,_util.hexToHsv)(l.hex):(0,_util.rgbToHsv)(l),t=e.$refs.refColorPanelElem,n&&(t&&(o=t.clientHeight*(1-n.v),t=t.clientWidth*n.s,e.handlePanelColor(t,o)),i)&&e.handleHueColor(_xeUtils.default.ceil((1-n.h/360)*i.clientWidth)),r)&&e.handleAlphaColor(r.clientWidth*l.a)},updateZindex:function(){var e=this.reactData;e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){function e(){var e=(0,_dom.updatePanelPlacement)(i,r,{placement:c.placement||o,defaultPlacement:c.defaultPlacement,teleportTo:a}),t=Object.assign(e.style,{zIndex:n});l.panelStyle=t,l.panelPlacement=e.placement}var t=this,l=t.reactData,o=t.placement,n=l.panelIndex,i=t.$refs.refElem,r=t.$refs.refOptionPanel,a=t.computeBtnTransfer,c=t.computePopupOpts;return e(),t.$nextTick().then(e)},showOptionPanel:function(){var e,t=this,l=t.reactData,o=t.internalData,n=o.hpTimeout;t.computeIsDisabled||(n&&(clearTimeout(n),o.hpTimeout=void 0),n=t.computeBtnTransfer,o=t.computePopupOpts,e=t.$refs.refOptionPanel,l.initialized||(l.initialized=!0,n&&e&&(n=o.appendTo,(0,_dom.getPopupContainer)(n).appendChild(e))),l.isActivated=!0,l.isAniVisible=!0,setTimeout(function(){t.updateModelColor(),l.visiblePanel=!0},10),t.updateZindex(),t.updatePlacement())},hideOptionPanel:function(){var e=this.reactData,t=this.internalData;e.visiblePanel=!1,t.hpTimeout=setTimeout(function(){e.isAniVisible=!1},350)},changeEvent:function(e,t){var l=this,o=l,n=l.reactData,i=l.$xeForm,r=l.formItemInfo;(n.selectColor=t)!==o.value&&(l.emitModel(t),l.dispatchEvent("change",{value:t},e),i)&&r&&i.triggerItemEvent(e,r.itemConfig.field,t)},clearValueEvent:function(e,t){this.changeEvent(e,t),this.dispatchEvent("clear",{value:t},e)},focusEvent:function(){var e=this.reactData;this.computeIsDisabled||e.visiblePanel||this.showOptionPanel()},blurEvent:function(){this.reactData.isActivated=!1},clearEvent:function(e){this.clearValueEvent(e,null),this.hideOptionPanel()},confirmEvent:function(e){var t=this.reactData,l=t.selectTyle;this.changeEvent(e,"hex"===l?t.hexValue:t.selectColor),this.hideOptionPanel()},togglePanelEvent:function(e){var t=this.reactData;e.preventDefault(),t.visiblePanel?this.hideOptionPanel():this.showOptionPanel()},clickEvent:function(e){this.togglePanelEvent(e),this.dispatchEvent("click",{},e)},handlePanelClickEvent:function(){this.reactData.showTypePopup=!1},toggleTypeVisibleEvent:function(e){var t=this.reactData;e.stopPropagation(),t.showTypePopup=!t.showTypePopup},handleChangeType:function(e){var t=this.reactData;e!==t.selectTyle&&(t.selectTyle=e,this.updateModelColor()),t.showTypePopup=!1},handleHueColor:function(e){var t=this.reactData,l=this.$refs.refHueSliderElem,o=this.$refs.refHueSliderBtnElem;if(l&&o){e<0&&(e=0);var l=_xeUtils.default.toInteger(l.clientWidth),n=255,l=_xeUtils.default.ceil(1530/l*e),i=l%n,r=0,a=0,c=0;switch(Math.ceil(l/n)){case 1:r=n,c=i;break;case 2:r=n-i,c=n;break;case 3:a=i,c=n;break;case 4:c=(a=n)-i;break;case 5:r=i,a=n;break;case 6:a=(r=n)-i}t.panelColor=(0,_util.toRgb)(r,a,c),o.style.left=(0,_dom.toCssUnit)(e)}},handleHueBarEvent:function(e){var t=this.$refs.refHueSliderElem,l=this.$refs.refHueSliderBtnElem;t&&l&&(l=t.getBoundingClientRect(),t=_xeUtils.default.toInteger(t.clientWidth),t=_xeUtils.default.ceil(Math.min(t-1,Math.max(1,e.clientX-l.x))),this.handleHueColor(t))},handleHueSliderMousedownEvent:function(e){var t=this;e.preventDefault(),document.onmousemove=function(e){e.preventDefault(),t.handleHueBarEvent(e)},document.onmouseup=function(e){document.onmousemove=null,document.onmouseup=null,t.handleHueBarEvent(e)}},handleAlphaColor:function(e){var t=this.reactData,l=t.selectColor,o=this.$refs.refAlphaSliderElem,n=this.$refs.refAlphaSliderBtnElem;o&&n&&(o=o.getBoundingClientRect().width,o=_xeUtils.default.ceil(100/o*(e=o<(e=e<0?0:e)?o:e)/100,2),t.aValue=o,n.style.left=(0,_dom.toCssUnit)(e),t.selectColor=(0,_util.updateColorAlpha)(l,o))},handleAlphaBarEvent:function(e){var t=this.$refs.refAlphaSliderElem,l=this.$refs.refAlphaSliderBtnElem;t&&l&&(t=(l=t.getBoundingClientRect()).width,t=Math.min(t,Math.max(0,e.clientX-l.x)),this.handleAlphaColor(t),this.updateModelColor())},handleAlphaSliderMousedownEvent:function(e){var t=this;e.preventDefault(),document.onmousemove=function(e){e.preventDefault(),t.handleAlphaBarEvent(e)},document.onmouseup=function(e){document.onmousemove=null,document.onmouseup=null,t.handleAlphaBarEvent(e)}},handleInputRgbEvent:function(){var e=this.reactData,t=e.rValue;e.selectColor=(0,_util.toRgb)(t,e.gValue,e.bValue,e.aValue),this.updateModelColor()},handleInputAlphaEvent:function(){var e=this.reactData.aValue,t=this.$refs.refAlphaSliderElem,l=this.$refs.refAlphaSliderBtnElem;t&&l&&(l=t.getBoundingClientRect().width,this.handleAlphaColor(l*e))},handleQuickEvent:function(e,t){var l=this.reactData,t=t.value;l.selectColor=t,this.updateModelColor()},handlePanelColor:function(e,t){var l=this.$refs.refColorActiveElem;l&&(l.style.top=(0,_dom.toCssUnit)(t),l.style.left=(0,_dom.toCssUnit)(e))},handleEyeDropperEvent:function(){var t=this,l=t.reactData;if(WinEyeDropper)try{(new WinEyeDropper).open().then(function(e){e&&e.sRGBHex&&(l.selectColor=e.sRGBHex,t.updateModelColor())}).catch(function(){})}catch(e){}},handleSelectColorByXY:function(e,t){var l,o=this,n=o.reactData,i=o.showAlpha,r=n.panelColor,a=n.aValue,c=o.$refs.refColorPanelElem,u=o.$refs.refColorActiveElem;c&&u&&(u=c.clientWidth,l=c.clientHeight,c=c.getBoundingClientRect(),t=Math.min(l,Math.max(0,t-c.y)),e=Math.min(u,Math.max(0,e-c.x)),(c=(0,_util.parseColor)(r))&&(r="hex"===c.type?(0,_util.hexToHsv)(c.hex):(0,_util.rgbToHsv)(c))&&(c=(0,_util.hsvToRgb)(r.h,e/u,1-t/l),n.selectColor=(0,_util.toRgb)(c.r,c.g,c.b,i?a:null),o.handlePanelColor(e,t)),o.updateModelColor())},handleSelectColorMousedownEvent:function(e){var t=this;e.stopPropagation(),e.preventDefault(),t.handleSelectColorByXY(e.clientX,e.clientY),document.onmousemove=function(e){t.handleSelectColorByXY(e.clientX,e.clientY)},document.onmouseup=function(){document.onmousemove=null,document.onmouseup=null}},handleCopyColorEvent:function(){var e=this.reactData.selectColor;e&&_ui.VxeUI.clipboard.copy(e)&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.colorPicker.copySuccess",[e]),status:"success"})},handleGlobalMousewheelEvent:function(e){var t=this,l=t.reactData.visiblePanel;t.computeIsDisabled||l&&(l=t.$refs.refOptionPanel,(0,_dom.getEventTargetNode)(e,l).flag?t.updatePlacement():t.hideOptionPanel())},handleGlobalMousedownEvent:function(e){var t,l,o=this,n=o.reactData,i=n.visiblePanel;o.computeIsDisabled||(t=o.$refs.refElem,l=o.$refs.refOptionPanel,n.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,l).flag,i&&!n.isActivated&&o.hideOptionPanel())},handleGlobalBlurEvent:function(){var e=this.reactData,t=e.visiblePanel,l=e.isActivated;t&&this.hideOptionPanel(),l&&(e.isActivated=!1),(t||l)&&(e=this.$refs.refInputTarget)&&e.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},renderColorWrapper:function(e){var t=this.reactData,l=this.showColorExtractor,t=t.panelColor;return l?e("div",{ref:"refColorPanelElem",class:"vxe-color-picker--color-wrapper",on:{mousedown:this.handleSelectColorMousedownEvent}},[e("div",{class:"vxe-color-picker--color-bg",style:{backgroundColor:t}}),e("div",{class:"vxe-color-picker--white-bg"}),e("div",{class:"vxe-color-picker--black-bg"}),e("div",{ref:"refColorActiveElem",class:"vxe-color-picker--color-active"})]):(0,_ui.renderEmptyElement)(this)},renderColorBar:function(e){var l=this,t=l.reactData,o=l.showAlpha,n=l.clickToCopy,i=t.selectTyle,r=t.showTypePopup,a=t.hexValue,c=t.rValue,u=t.gValue,s=t.bValue,p=t.aValue,d=t.selectColor,f=t.panelColor,h=l.computeIsRgb,v=l.computeSelectTypeItem;return e("div",{class:"vxe-color-picker--bar-wrapper"},[e("div",{class:"vxe-color-picker--slider-wrapper"},[l.showEyeDropper&&WinEyeDropper?e("div",{class:"vxe-color-picker--color-dropper"},[e("span",{class:"vxe-color-picker--color-dropper-btn",on:{click:l.handleEyeDropperEvent}},[e("i",{class:(0,_ui.getIcon)().COLOR_PICKER_EYE_DROPPER})])]):(0,_ui.renderEmptyElement)(l),e("div",{class:"vxe-color-picker--slider-preview"},[e("div",{class:"vxe-color-picker--preview-btn"},[e("div",{class:"vxe-color-picker--preview-color",style:{backgroundColor:d}},n?[e("span",{class:"vxe-color-picker--preview-copy-btn",on:{click:l.handleCopyColorEvent}},[e("i",{class:(0,_ui.getIcon)().COLOR_PICKER_COLOR_COPY})])]:[])])]),e("div",{class:"vxe-color-picker--slider-handle"},[e("div",{ref:"refHueSliderElem",class:"vxe-color-picker--bar-hue-slider",on:{click:l.handleHueBarEvent}},[e("div",{ref:"refHueSliderBtnElem",class:"vxe-color-picker--bar-hue-btn",on:{mousedown:l.handleHueSliderMousedownEvent}})]),o?e("div",{ref:"refAlphaSliderElem",class:"vxe-color-picker--bar-alpha-slider",on:{click:l.handleAlphaBarEvent}},[e("div",{class:"vxe-color-picker--bar-alpha-bg",style:{background:"linear-gradient(to right, rgba(0, 0, 0, 0), ".concat(f,")")}}),e("div",{ref:"refAlphaSliderBtnElem",class:"vxe-color-picker--bar-alpha-btn",on:{mousedown:l.handleAlphaSliderMousedownEvent}})]):(0,_ui.renderEmptyElement)(l)])]),e("div",{class:"vxe-color-picker--custom-wrapper"},[e("div",{class:"vxe-color-picker--type-switch"},[e("div",{class:"vxe-color-picker--type-label",on:{click:l.toggleTypeVisibleEvent}},[e("span","".concat(v?v.label:i)),e("span",{class:"vxe-color-picker--type-icon"},[e("i",{class:r?(0,_ui.getIcon)().COLOR_PICKER_TPTY_OPEN:(0,_ui.getIcon)().COLOR_PICKER_TPTY_CLOSE})])]),e("div",{class:["vxe-color-picker--type-popup",{"is--visible":r}]},typeList.map(function(t){return e("div",{class:"vxe-color-picker--type-item",on:{click:function(e){e.stopPropagation(),l.handleChangeType(t.value)}}},t.label)}))]),e("div",{class:"vxe-color-picker--".concat(i,"-wrapper")},h?[e("div",{class:"vxe-color-picker--input-wrapper"},[e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:c,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.rValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:u,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.gValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:s,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.bValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"number",size:"mini",align:"center",min:0,max:1,step:.01,maxLength:4,placeholder:"",value:p,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.aValue=e},change:l.handleInputAlphaEvent}})]),e("div",{class:"vxe-color-picker--input-title"},[e("span","R"),e("span","G"),e("span","B"),e("span","A")])]:[e("div",{class:"vxe-color-picker--input-wrapper"},[e(_input.default,{props:{type:"text",size:"mini",align:"center",maxLength:9,placeholder:"",value:a},on:{modelValue:function(e){t.hexValue=e},change:function(){var e=(0,_util.parseColor)(t.hexValue);e&&e.value&&(t.selectColor=e.value,l.updateModelColor())}}})]),e("div",{class:"vxe-color-picker--input-title"},(0,_ui.getI18n)("vxe.colorPicker.hex"))])])])},renderQuickWrapper:function(l){var o=this,e=o.showQuick,t=o.computeColorList;return e&&t.length?l("div",{class:"vxe-color-picker--quick-wrapper"},t.map(function(t,e){return l("div",{key:e,class:"vxe-color-picker--quick-item",attrs:{title:t.label||""},style:{backgroundColor:t.value},on:{click:function(e){o.handleQuickEvent(e,t)}}})})):(0,_ui.renderEmptyElement)(o)},renderVN:function(e){var t=this,l=t.reactData,o=t.className,n=t.popupClassName,i=t.clearable,r=t.value,a=l.initialized,c=l.isActivated,u=l.isAniVisible,s=l.visiblePanel,p=t.computeSize,d=t.computeIsDisabled,f=t.computeBtnTransfer;return t.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-color-picker--readonly",o]},[e("div",{class:"vxe-color-picker--readonly-color",style:{backgroundColor:r}})]):e("div",{ref:"refElem",class:["vxe-color-picker",o?_xeUtils.default.isFunction(o)?o({$colorPicker:t}):o:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(p),p),"is--selected",!!r),"is--visible",s),"is--disabled",d),"is--active",c)]},[e("input",{ref:"refInputTarget",class:"vxe-color-picker--input",on:{focus:t.focusEvent,blur:t.blurEvent}}),e("div",{class:"vxe-color-picker--inner",on:{click:t.clickEvent}},[e("div",{class:"vxe-color-picker--inner-color",style:{backgroundColor:r}})]),e("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-color-picker--panel",n?_xeUtils.default.isFunction(n)?n({$colorPicker:t}):n:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(p),p),"is--transfer",f),"ani--leave",u),"ani--enter",s)],attrs:{placement:l.panelPlacement},style:l.panelStyle},[a&&(s||u)?e("div",{class:"vxe-color-picker--panel-wrapper",on:{click:t.handlePanelClickEvent}},[t.renderColorWrapper(e),t.renderColorBar(e),t.renderQuickWrapper(e),e("div",{class:"vxe-color-picker--footer-wrapper"},[i?e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.colorPicker.clear"),size:"mini"},on:{click:t.clearEvent}}):(0,_ui.renderEmptyElement)(t),e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.colorPicker.confirm"),size:"mini",status:"primary"},on:{click:t.confirmEvent}})])]):(0,_ui.renderEmptyElement)(t)])])}},watch:{value:function(){this.updateMode()},type:function(){this.updateType()}},created:function(){var e=this;e.reactData.selectColor="".concat(e.value||""),e.updateType(),_ui.globalEvents.on(e,"mousewheel",e.handleGlobalMousewheelEvent),_ui.globalEvents.on(e,"mousedown",e.handleGlobalMousedownEvent),_ui.globalEvents.on(e,"blur",e.handleGlobalBlurEvent),_ui.globalEvents.on(e,"resize",e.handleGlobalResizeEvent)},beforeDestroy:function(){var e=this,t=e.$refs.refOptionPanel;t&&t.parentNode&&t.parentNode.removeChild(t),_ui.globalEvents.off(e,"mousewheel"),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"blur"),_ui.globalEvents.off(e,"resize")},render:function(e){return this.renderVN(e)}});
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_util=require("./util"),_button=_interopRequireDefault(require("../../button")),_input=_interopRequireDefault(require("../../input")),_numberInput=_interopRequireDefault(require("../../number-input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperty(e,t,l){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var l=e[Symbol.toPrimitive];if(void 0===l)return("string"===t?String:Number)(e);l=l.call(e,t||"default");if("object"!=_typeof(l))return l;throw new TypeError("@@toPrimitive must return a primitive value.")}var WinEyeDropper="undefined"!=typeof window?window.EyeDropper:null,typeList=[{label:"HEX",value:"hex"},{label:"RGB",value:"rgb"}],_default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeColorPicker",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:String,placeholder:String,clearable:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.clearable}},type:{type:String,default:function(){return(0,_ui.getConfig)().colorPicker.type}},size:{type:String,default:function(){return(0,_ui.getConfig)().colorPicker.size||(0,_ui.getConfig)().size}},className:[String,Function],popupClassName:[String,Function],colors:{type:Array,default:function(){return _xeUtils.default.clone((0,_ui.getConfig)().colorPicker.colors,!0)||[]}},showAlpha:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showAlpha}},showEyeDropper:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showEyeDropper}},showColorExtractor:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showColorExtractor}},showQuick:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.showQuick}},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},clickToCopy:{type:Boolean,default:function(){return(0,_ui.getConfig)().colorPicker.clickToCopy}},placement:String,transfer:{type:Boolean,default:null},popupConfig:Object},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeColorPicker:this}},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{initialized:!1,selectTyle:"hex",selectColor:"",showTypePopup:!1,panelColor:"",hexValue:"",rValue:0,gValue:0,bValue:0,aValue:0,panelIndex:0,panelStyle:{},panelPlacement:null,visiblePanel:!1,isAniVisible:!1,isActivated:!1},internalData:{hpTimeout:void 0}}},computed:Object.assign(Object.assign({},{}),{computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeBtnTransfer:function(){var e=this,t=e.$xeTable,l=e.$xeModal,o=e.$xeDrawer,n=e.$xeCard,i=e.$xeForm,e=e.transfer;if(null===e){var r=(0,_ui.getConfig)().colorPicker.transfer;if(_xeUtils.default.isBoolean(r))return r;if(t||l||o||n||i)return!0}return e},computeColorList:function(){var e=this.colors;return e?e.map(function(e){return _xeUtils.default.isString(e)?{label:e,value:e}:{label:_xeUtils.default.eqNull(e.label)?e.value:e.label,value:e.value}}):[]},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().colorPicker.popupConfig,this.popupConfig)},computeIsRgb:function(){return"rgb"===this.reactData.selectTyle},computeSelectTypeItem:function(){var t=this.reactData.selectTyle;return typeList.find(function(e){return e.value===t})}}),methods:{dispatchEvent:function(e,t,l){this.$emit(e,(0,_ui.createEvent)(l,{$colorPicker:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},updateMode:function(){var e=this.reactData,t=this.value;e.selectColor=_xeUtils.default.toValueString(t),this.updateModelColor()},updateType:function(){var e=this.reactData,t=this.type,t="rgb"!==t&&"rgba"!==t?"hex":"rgb";e.selectTyle=t,this.updateMode()},updateModelColor:function(){var e=this,t=e.reactData,l=t.selectColor,o=t.isAniVisible,n=e.computeIsRgb,i=e.$refs.refHueSliderElem,r=e.$refs.refAlphaSliderElem,l=(0,_util.parseValColor)(l);t.hexValue="",t.rValue=0,t.gValue=0,t.bValue=0,t.aValue=1,l&&("hex"===l.type?t.hexValue=l.hex:(t.rValue=l.r,t.gValue=l.g,t.bValue=l.b,t.aValue=l.a),l.value)&&(n?"hex"===l.type&&(n=(0,_util.hexToRgb)(l.hex))&&(t.rValue=n.r,t.gValue=n.g,t.bValue=n.b,t.aValue=n.a):"hex"!==l.type&&(t.hexValue=(0,_util.rgbToHexVal)(l.r,l.g,l.b,l.a))),o&&(n=l?"hex"===l.type?(0,_util.hexToHsv)(l.hex):(0,_util.rgbToHsv)(l):null,o=e.$refs.refColorPanelElem,n&&(o&&(l=o.clientHeight*(1-n.v),o=o.clientWidth*n.s,e.handlePanelColor(o,l)),i)&&e.handleHueColor(_xeUtils.default.ceil((1-n.h/360)*i.clientWidth)),r)&&e.handleAlphaColor(r.clientWidth*t.aValue)},updateZindex:function(){var e=this.reactData;e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){function e(){var e=(0,_dom.updatePanelPlacement)(i,r,{placement:u.placement||o,defaultPlacement:u.defaultPlacement,teleportTo:a}),t=Object.assign(e.style,{zIndex:n});l.panelStyle=t,l.panelPlacement=e.placement}var t=this,l=t.reactData,o=t.placement,n=l.panelIndex,i=t.$refs.refElem,r=t.$refs.refOptionPanel,a=t.computeBtnTransfer,u=t.computePopupOpts;return e(),t.$nextTick().then(e)},showOptionPanel:function(){var e,t=this,l=t.reactData,o=t.internalData,n=o.hpTimeout;t.computeIsDisabled||(n&&(clearTimeout(n),o.hpTimeout=void 0),n=t.computeBtnTransfer,o=t.computePopupOpts,e=t.$refs.refOptionPanel,l.initialized||(l.initialized=!0,n&&e&&(n=o.appendTo,(0,_dom.getPopupContainer)(n).appendChild(e))),l.isActivated=!0,l.isAniVisible=!0,setTimeout(function(){t.updateModelColor(),l.visiblePanel=!0},10),t.updateZindex(),t.updatePlacement())},hideOptionPanel:function(){var e=this.reactData,t=this.internalData;e.visiblePanel=!1,t.hpTimeout=setTimeout(function(){e.isAniVisible=!1},350)},changeEvent:function(e,t){var l=this,o=l,n=l.reactData,i=l.$xeForm,r=l.formItemInfo;(n.selectColor=t)!==o.value&&(l.emitModel(t),l.dispatchEvent("change",{value:t},e),i)&&r&&i.triggerItemEvent(e,r.itemConfig.field,t)},clearValueEvent:function(e,t){this.changeEvent(e,t),this.dispatchEvent("clear",{value:t},e)},focusEvent:function(){var e=this.reactData;this.computeIsDisabled||e.visiblePanel||this.showOptionPanel()},blurEvent:function(){this.reactData.isActivated=!1},clearEvent:function(e){this.clearValueEvent(e,null),this.hideOptionPanel()},confirmEvent:function(e){var t=this.reactData,l=t.selectTyle;this.changeEvent(e,"hex"===l?t.hexValue:t.selectColor),this.hideOptionPanel()},togglePanelEvent:function(e){var t=this.reactData;e.preventDefault(),t.visiblePanel?this.hideOptionPanel():this.showOptionPanel()},clickEvent:function(e){this.togglePanelEvent(e),this.dispatchEvent("click",{},e)},handlePanelClickEvent:function(){this.reactData.showTypePopup=!1},toggleTypeVisibleEvent:function(e){var t=this.reactData;e.stopPropagation(),t.showTypePopup=!t.showTypePopup},handleChangeType:function(e){var t=this.reactData;e!==t.selectTyle&&(t.selectTyle=e,this.updateModelColor()),t.showTypePopup=!1},handleHueColor:function(e){var t=this.reactData,l=this.$refs.refHueSliderElem,o=this.$refs.refHueSliderBtnElem;if(l&&o){e<0&&(e=0);var l=_xeUtils.default.toInteger(l.clientWidth),n=255,l=_xeUtils.default.ceil(1530/l*e),i=l%n,r=0,a=0,u=0;switch(Math.ceil(l/n)){case 1:r=n,u=i;break;case 2:r=n-i,u=n;break;case 3:a=i,u=n;break;case 4:u=(a=n)-i;break;case 5:r=i,a=n;break;case 6:a=(r=n)-i}t.panelColor=(0,_util.toValRgb)(r,a,u),o.style.left=(0,_dom.toCssUnit)(e)}},handleHueBarEvent:function(e){var t=this.$refs.refHueSliderElem,l=this.$refs.refHueSliderBtnElem;t&&l&&(l=t.getBoundingClientRect(),t=_xeUtils.default.toInteger(t.clientWidth),t=_xeUtils.default.ceil(Math.min(t-1,Math.max(1,e.clientX-l.x))),this.handleHueColor(t))},handleHueSliderMousedownEvent:function(e){var t=this;e.preventDefault(),document.onmousemove=function(e){e.preventDefault(),t.handleHueBarEvent(e)},document.onmouseup=function(e){document.onmousemove=null,document.onmouseup=null,t.handleHueBarEvent(e)}},handleAlphaColor:function(e){var t=this.reactData,l=t.selectColor,o=this.$refs.refAlphaSliderElem,n=this.$refs.refAlphaSliderBtnElem;o&&n&&(o=o.getBoundingClientRect().width,o=_xeUtils.default.ceil(100/o*(e=o<(e=e<0?0:e)?o:e)/100,2),t.aValue=o,n.style.left=(0,_dom.toCssUnit)(e),t.selectColor=(0,_util.updateColorAlpha)(l,o))},handleAlphaBarEvent:function(e){var t=this.$refs.refAlphaSliderElem,l=this.$refs.refAlphaSliderBtnElem;t&&l&&(t=(l=t.getBoundingClientRect()).width,t=Math.min(t,Math.max(0,e.clientX-l.x)),this.handleAlphaColor(t),this.updateModelColor())},handleAlphaSliderMousedownEvent:function(e){var t=this;e.preventDefault(),document.onmousemove=function(e){e.preventDefault(),t.handleAlphaBarEvent(e)},document.onmouseup=function(e){document.onmousemove=null,document.onmouseup=null,t.handleAlphaBarEvent(e)}},handleInputRgbEvent:function(){var e=this.reactData,t=e.rValue;e.selectColor=(0,_util.toValRgb)(t,e.gValue,e.bValue,e.aValue),this.updateModelColor()},handleInputAlphaEvent:function(){var e=this.reactData.aValue,t=this.$refs.refAlphaSliderElem,l=this.$refs.refAlphaSliderBtnElem;t&&l&&(l=t.getBoundingClientRect().width,this.handleAlphaColor(l*e))},handleQuickEvent:function(e,t){var l=this.reactData,t=t.value;l.selectColor=t,this.updateModelColor()},handlePanelColor:function(e,t){var l=this.$refs.refColorActiveElem;l&&(l.style.top=(0,_dom.toCssUnit)(t),l.style.left=(0,_dom.toCssUnit)(e))},handleEyeDropperEvent:function(){var t=this,l=t.reactData;if(WinEyeDropper)try{(new WinEyeDropper).open().then(function(e){e&&e.sRGBHex&&(l.selectColor=e.sRGBHex,t.updateModelColor())}).catch(function(){})}catch(e){}},handleSelectColorByXY:function(e,t){var l,o=this,n=o.reactData,i=o.showAlpha,r=n.panelColor,a=n.aValue,u=o.$refs.refColorPanelElem,c=o.$refs.refColorActiveElem;u&&c&&(c=u.clientWidth,l=u.clientHeight,u=u.getBoundingClientRect(),t=Math.min(l,Math.max(0,t-u.y)),e=Math.min(c,Math.max(0,e-u.x)),(u=(0,_util.parseValColor)(r))&&(r="hex"===u.type?(0,_util.hexToHsv)(u.hex):(0,_util.rgbToHsv)(u))&&(u=(0,_util.hsvToRgb)(r.h,e/c,1-t/l),n.selectColor=(0,_util.toValRgb)(u.r,u.g,u.b,i?a:null),o.handlePanelColor(e,t)),o.updateModelColor())},handleSelectColorMousedownEvent:function(e){var t=this;e.stopPropagation(),e.preventDefault(),t.handleSelectColorByXY(e.clientX,e.clientY),document.onmousemove=function(e){t.handleSelectColorByXY(e.clientX,e.clientY)},document.onmouseup=function(){document.onmousemove=null,document.onmouseup=null}},handleCopyColorEvent:function(){var e=this.reactData.selectColor;e&&_ui.VxeUI.clipboard.copy(e)&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.colorPicker.copySuccess",[e]),status:"success"})},handleGlobalMousewheelEvent:function(e){var t=this,l=t.reactData.visiblePanel;t.computeIsDisabled||l&&(l=t.$refs.refOptionPanel,(0,_dom.getEventTargetNode)(e,l).flag?t.updatePlacement():t.hideOptionPanel())},handleGlobalMousedownEvent:function(e){var t,l,o=this,n=o.reactData,i=n.visiblePanel;o.computeIsDisabled||(t=o.$refs.refElem,l=o.$refs.refOptionPanel,n.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,l).flag,i&&!n.isActivated&&o.hideOptionPanel())},handleGlobalBlurEvent:function(){var e=this.reactData,t=e.visiblePanel,l=e.isActivated;t&&this.hideOptionPanel(),l&&(e.isActivated=!1),(t||l)&&(e=this.$refs.refInputTarget)&&e.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},renderColorWrapper:function(e){var t=this.reactData,l=this.showColorExtractor,t=t.panelColor;return l?e("div",{ref:"refColorPanelElem",class:"vxe-color-picker--color-wrapper",on:{mousedown:this.handleSelectColorMousedownEvent}},[e("div",{class:"vxe-color-picker--color-bg",style:{backgroundColor:t}}),e("div",{class:"vxe-color-picker--white-bg"}),e("div",{class:"vxe-color-picker--black-bg"}),e("div",{ref:"refColorActiveElem",class:"vxe-color-picker--color-active"})]):(0,_ui.renderEmptyElement)(this)},renderColorBar:function(e){var l=this,t=l.reactData,o=l.showAlpha,n=l.clickToCopy,i=t.selectTyle,r=t.showTypePopup,a=t.hexValue,u=t.rValue,c=t.gValue,s=t.bValue,p=t.aValue,d=t.selectColor,f=t.panelColor,h=l.computeIsRgb,v=l.computeSelectTypeItem;return e("div",{class:"vxe-color-picker--bar-wrapper"},[e("div",{class:"vxe-color-picker--slider-wrapper"},[l.showEyeDropper&&WinEyeDropper?e("div",{class:"vxe-color-picker--color-dropper"},[e("span",{class:"vxe-color-picker--color-dropper-btn",on:{click:l.handleEyeDropperEvent}},[e("i",{class:(0,_ui.getIcon)().COLOR_PICKER_EYE_DROPPER})])]):(0,_ui.renderEmptyElement)(l),e("div",{class:"vxe-color-picker--slider-preview"},[e("div",{class:"vxe-color-picker--preview-btn"},[e("div",{class:"vxe-color-picker--preview-color",style:{backgroundColor:d}},n?[e("span",{class:"vxe-color-picker--preview-copy-btn",on:{click:l.handleCopyColorEvent}},[e("i",{class:(0,_ui.getIcon)().COLOR_PICKER_COLOR_COPY})])]:[])])]),e("div",{class:"vxe-color-picker--slider-handle"},[e("div",{ref:"refHueSliderElem",class:"vxe-color-picker--bar-hue-slider",on:{click:l.handleHueBarEvent}},[e("div",{ref:"refHueSliderBtnElem",class:"vxe-color-picker--bar-hue-btn",on:{mousedown:l.handleHueSliderMousedownEvent}})]),o?e("div",{ref:"refAlphaSliderElem",class:"vxe-color-picker--bar-alpha-slider",on:{click:l.handleAlphaBarEvent}},[e("div",{class:"vxe-color-picker--bar-alpha-bg",style:{background:"linear-gradient(to right, rgba(0, 0, 0, 0), ".concat(f,")")}}),e("div",{ref:"refAlphaSliderBtnElem",class:"vxe-color-picker--bar-alpha-btn",on:{mousedown:l.handleAlphaSliderMousedownEvent}})]):(0,_ui.renderEmptyElement)(l)])]),e("div",{class:"vxe-color-picker--custom-wrapper"},[e("div",{class:"vxe-color-picker--type-switch"},[e("div",{class:"vxe-color-picker--type-label",on:{click:l.toggleTypeVisibleEvent}},[e("span","".concat(v?v.label:i)),e("span",{class:"vxe-color-picker--type-icon"},[e("i",{class:r?(0,_ui.getIcon)().COLOR_PICKER_TPTY_OPEN:(0,_ui.getIcon)().COLOR_PICKER_TPTY_CLOSE})])]),e("div",{class:["vxe-color-picker--type-popup",{"is--visible":r}]},typeList.map(function(t){return e("div",{class:"vxe-color-picker--type-item",on:{click:function(e){e.stopPropagation(),l.handleChangeType(t.value)}}},t.label)}))]),e("div",{class:"vxe-color-picker--".concat(i,"-wrapper")},h?[e("div",{class:"vxe-color-picker--input-wrapper"},[e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:u,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.rValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:c,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.gValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",value:s,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.bValue=e},change:l.handleInputRgbEvent}}),e(_numberInput.default,{props:{type:"number",size:"mini",align:"center",min:0,max:1,step:.01,maxLength:4,placeholder:"",value:p,controlConfig:{showButton:!1}},on:{modelValue:function(e){t.aValue=e},change:l.handleInputAlphaEvent}})]),e("div",{class:"vxe-color-picker--input-title"},[e("span","R"),e("span","G"),e("span","B"),e("span","A")])]:[e("div",{class:"vxe-color-picker--input-wrapper"},[e(_input.default,{props:{type:"text",size:"mini",align:"center",maxLength:9,placeholder:"",value:a},on:{modelValue:function(e){t.hexValue=e},change:function(){var e=(0,_util.parseValColor)(t.hexValue);e&&e.value&&(t.selectColor=e.value,l.updateModelColor())}}})]),e("div",{class:"vxe-color-picker--input-title"},(0,_ui.getI18n)("vxe.colorPicker.hex"))])])])},renderQuickWrapper:function(l){var o=this,e=o.showQuick,t=o.computeColorList;return e&&t.length?l("div",{class:"vxe-color-picker--quick-wrapper"},t.map(function(t,e){return l("div",{key:e,class:"vxe-color-picker--quick-item",attrs:{title:t.label||""},style:{backgroundColor:t.value},on:{click:function(e){o.handleQuickEvent(e,t)}}})})):(0,_ui.renderEmptyElement)(o)},renderVN:function(e){var t=this,l=t.reactData,o=t.className,n=t.popupClassName,i=t.clearable,r=t.value,a=l.initialized,u=l.isActivated,c=l.isAniVisible,s=l.visiblePanel,p=t.computeSize,d=t.computeIsDisabled,f=t.computeBtnTransfer;return t.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-color-picker--readonly",o]},[e("div",{class:"vxe-color-picker--readonly-color",style:{backgroundColor:r}})]):e("div",{ref:"refElem",class:["vxe-color-picker",o?_xeUtils.default.isFunction(o)?o({$colorPicker:t}):o:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(p),p),"is--selected",!!r),"is--visible",s),"is--disabled",d),"is--active",u)]},[e("input",{ref:"refInputTarget",class:"vxe-color-picker--input",on:{focus:t.focusEvent,blur:t.blurEvent}}),e("div",{class:"vxe-color-picker--inner",on:{click:t.clickEvent}},[e("div",{class:"vxe-color-picker--inner-color",style:{backgroundColor:r}})]),e("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-color-picker--panel",n?_xeUtils.default.isFunction(n)?n({$colorPicker:t}):n:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(p),p),"is--transfer",f),"ani--leave",c),"ani--enter",s)],attrs:{placement:l.panelPlacement},style:l.panelStyle},[a&&(s||c)?e("div",{class:"vxe-color-picker--panel-wrapper",on:{click:t.handlePanelClickEvent}},[t.renderColorWrapper(e),t.renderColorBar(e),t.renderQuickWrapper(e),e("div",{class:"vxe-color-picker--footer-wrapper"},[i?e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.colorPicker.clear"),size:"mini"},on:{click:t.clearEvent}}):(0,_ui.renderEmptyElement)(t),e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.colorPicker.confirm"),size:"mini",status:"primary"},on:{click:t.confirmEvent}})])]):(0,_ui.renderEmptyElement)(t)])])}},watch:{value:function(){this.updateMode()},type:function(){this.updateType()}},created:function(){var e=this;e.reactData.selectColor="".concat(e.value||""),e.updateType(),_ui.globalEvents.on(e,"mousewheel",e.handleGlobalMousewheelEvent),_ui.globalEvents.on(e,"mousedown",e.handleGlobalMousedownEvent),_ui.globalEvents.on(e,"blur",e.handleGlobalBlurEvent),_ui.globalEvents.on(e,"resize",e.handleGlobalResizeEvent)},beforeDestroy:function(){var e=this,t=e.$refs.refOptionPanel;t&&t.parentNode&&t.parentNode.removeChild(t),_ui.globalEvents.off(e,"mousewheel"),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"blur"),_ui.globalEvents.off(e,"resize")},render:function(e){return this.renderVN(e)}});
|
|
@@ -3,15 +3,24 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.darken = void 0;
|
|
6
7
|
exports.hasHex = hasHex;
|
|
7
8
|
exports.hasRgb = hasRgb;
|
|
8
9
|
exports.hexToHsv = hexToHsv;
|
|
9
10
|
exports.hexToRgb = hexToRgb;
|
|
10
11
|
exports.hsvToRgb = hsvToRgb;
|
|
12
|
+
exports.lighten = void 0;
|
|
11
13
|
exports.parseColor = parseColor;
|
|
12
|
-
exports.
|
|
14
|
+
exports.parseValColor = parseValColor;
|
|
15
|
+
exports.rgbToHexVal = rgbToHexVal;
|
|
13
16
|
exports.rgbToHsv = rgbToHsv;
|
|
17
|
+
exports.toHex = toHex;
|
|
18
|
+
exports.toHexString = toHexString;
|
|
19
|
+
exports.toHsl = toHsl;
|
|
20
|
+
exports.toHsv = toHsv;
|
|
14
21
|
exports.toRgb = toRgb;
|
|
22
|
+
exports.toRgbString = toRgbString;
|
|
23
|
+
exports.toValRgb = toValRgb;
|
|
15
24
|
exports.updateColorAlpha = updateColorAlpha;
|
|
16
25
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
17
26
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -24,13 +33,148 @@ var hexAlphaNumMaps = {};
|
|
|
24
33
|
});
|
|
25
34
|
var rgbRE = /^rgb(a?)\((\d{1,3})[,\s]+(\d{1,3})[,\s]+(\d{1,3})([,//\s]+([0-9.]{1,4})(%?))?\)$/;
|
|
26
35
|
function hasRgb(value) {
|
|
27
|
-
return value && rgbRE.test(value);
|
|
36
|
+
return !!(value && rgbRE.test(value));
|
|
28
37
|
}
|
|
29
38
|
var hexRE = /^(#?)([0-9A-Fa-f]{6})([0-9A-Fa-f]{2})?$/;
|
|
30
39
|
function hasHex(value) {
|
|
31
|
-
return value && hexRE.test(value);
|
|
40
|
+
return !!(value && hexRE.test(value));
|
|
32
41
|
}
|
|
33
|
-
function
|
|
42
|
+
function toRgb(value) {
|
|
43
|
+
if (value) {
|
|
44
|
+
if (hexRE.test(value)) {
|
|
45
|
+
return hexToRgb(value);
|
|
46
|
+
}
|
|
47
|
+
return parseRgbVal(value);
|
|
48
|
+
}
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
function toRgbString(value) {
|
|
52
|
+
var rgbRest = toRgb(value);
|
|
53
|
+
if (rgbRest) {
|
|
54
|
+
return rgbRest.label;
|
|
55
|
+
}
|
|
56
|
+
return '';
|
|
57
|
+
}
|
|
58
|
+
function toHex(value) {
|
|
59
|
+
if (value) {
|
|
60
|
+
if (rgbRE.test(value)) {
|
|
61
|
+
return rgbValToHex(value);
|
|
62
|
+
}
|
|
63
|
+
return parseHexVal(value);
|
|
64
|
+
}
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
function toHexString(value) {
|
|
68
|
+
var hexRest = toHex(value);
|
|
69
|
+
if (hexRest) {
|
|
70
|
+
return hexRest.label;
|
|
71
|
+
}
|
|
72
|
+
return '';
|
|
73
|
+
}
|
|
74
|
+
function toHsl(value) {
|
|
75
|
+
var rgbRest = toRgb(value);
|
|
76
|
+
if (rgbRest) {
|
|
77
|
+
var hslRest = rgbToHsl(rgbRest);
|
|
78
|
+
if (hslRest) {
|
|
79
|
+
var rest = Object.assign({
|
|
80
|
+
value: value,
|
|
81
|
+
type: 'hsl'
|
|
82
|
+
}, hslRest);
|
|
83
|
+
return rest;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return null;
|
|
87
|
+
}
|
|
88
|
+
function toHsv(value) {
|
|
89
|
+
var rgbRest = toRgb(value);
|
|
90
|
+
if (rgbRest) {
|
|
91
|
+
var hslRest = rgbToHsv(rgbRest);
|
|
92
|
+
if (hslRest) {
|
|
93
|
+
var rest = Object.assign({
|
|
94
|
+
value: value,
|
|
95
|
+
type: 'hsv'
|
|
96
|
+
}, hslRest);
|
|
97
|
+
return rest;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return null;
|
|
101
|
+
}
|
|
102
|
+
function parseColor(val, format) {
|
|
103
|
+
if (val) {
|
|
104
|
+
if (format === 'hex') {
|
|
105
|
+
return toHex(val);
|
|
106
|
+
}
|
|
107
|
+
if (format === 'hsl') {
|
|
108
|
+
return toHsl(val);
|
|
109
|
+
}
|
|
110
|
+
if (format === 'hsv') {
|
|
111
|
+
return toHsv(val);
|
|
112
|
+
}
|
|
113
|
+
return toRgb(val);
|
|
114
|
+
}
|
|
115
|
+
return null;
|
|
116
|
+
}
|
|
117
|
+
function handleNumClamp(val) {
|
|
118
|
+
return Math.min(1, Math.max(0, val));
|
|
119
|
+
}
|
|
120
|
+
function createLightenDarken(isAdd) {
|
|
121
|
+
return function (val, ratio) {
|
|
122
|
+
var colorRest = parseColor(val);
|
|
123
|
+
var hslRest = toHsl(val);
|
|
124
|
+
if (colorRest && hslRest) {
|
|
125
|
+
ratio = ratio === 0 ? 0 : ratio || 10;
|
|
126
|
+
hslRest.l += (isAdd ? ratio : -ratio) / 100;
|
|
127
|
+
hslRest.l = handleNumClamp(hslRest.l);
|
|
128
|
+
var rgbRest = hslToRgb(hslRest);
|
|
129
|
+
if (rgbRest) {
|
|
130
|
+
if ((colorRest === null || colorRest === void 0 ? void 0 : colorRest.type) === 'hex') {
|
|
131
|
+
return rgbToHexVal(rgbRest.r, rgbRest.g, rgbRest.b, hslRest.a);
|
|
132
|
+
}
|
|
133
|
+
return toValRgb(rgbRest.r, rgbRest.g, rgbRest.b, hslRest.a);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
return val;
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
var lighten = exports.lighten = createLightenDarken(1);
|
|
140
|
+
var darken = exports.darken = createLightenDarken(0);
|
|
141
|
+
function parseHexVal(value) {
|
|
142
|
+
if (value) {
|
|
143
|
+
var hexRest = value.match(hexRE);
|
|
144
|
+
if (hexRest) {
|
|
145
|
+
var rest = {
|
|
146
|
+
value: value,
|
|
147
|
+
label: value,
|
|
148
|
+
type: 'hex',
|
|
149
|
+
hex: value,
|
|
150
|
+
hexV: hexRest[2],
|
|
151
|
+
hexA: hexRest[3] || '',
|
|
152
|
+
a: (hexRest[3] ? hexAlphaKeyMaps[hexRest[3].toUpperCase()] : 1) || 1
|
|
153
|
+
};
|
|
154
|
+
return rest;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
return null;
|
|
158
|
+
}
|
|
159
|
+
function parseRgbVal(value) {
|
|
160
|
+
if (value) {
|
|
161
|
+
var rgbRest = value.match(rgbRE);
|
|
162
|
+
if (rgbRest) {
|
|
163
|
+
var rest = {
|
|
164
|
+
value: value,
|
|
165
|
+
label: value,
|
|
166
|
+
type: rgbRest[6] ? 'rgba' : 'rgb',
|
|
167
|
+
r: parseInt(rgbRest[2]),
|
|
168
|
+
g: parseInt(rgbRest[3]),
|
|
169
|
+
b: parseInt(rgbRest[4]),
|
|
170
|
+
a: rgbRest[7] ? parseInt(rgbRest[6]) / 100 : rgbRest[6] ? parseFloat(rgbRest[6]) : 1
|
|
171
|
+
};
|
|
172
|
+
return rest;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
return null;
|
|
176
|
+
}
|
|
177
|
+
function parseValColor(value) {
|
|
34
178
|
var rest = {
|
|
35
179
|
value: '',
|
|
36
180
|
type: '',
|
|
@@ -43,58 +187,44 @@ function parseColor(value) {
|
|
|
43
187
|
a: 1
|
|
44
188
|
};
|
|
45
189
|
if (value) {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
rest
|
|
50
|
-
rest.hex = value;
|
|
51
|
-
rest.hexV = hexRest[2];
|
|
52
|
-
rest.hexA = hexRest[3] || '';
|
|
53
|
-
rest.a = (hexRest[3] ? hexAlphaKeyMaps[hexRest[3].toUpperCase()] : 1) || 1;
|
|
54
|
-
}
|
|
55
|
-
var rgbRest = value.match(rgbRE);
|
|
56
|
-
if (rgbRest) {
|
|
57
|
-
rest.value = value;
|
|
58
|
-
rest.type = rgbRest[6] ? 'rgba' : 'rgb';
|
|
59
|
-
rest.r = parseInt(rgbRest[2]);
|
|
60
|
-
rest.g = parseInt(rgbRest[3]);
|
|
61
|
-
rest.b = parseInt(rgbRest[4]);
|
|
62
|
-
rest.a = rgbRest[7] ? parseInt(rgbRest[6]) / 100 : rgbRest[6] ? parseFloat(rgbRest[6]) : 1;
|
|
190
|
+
if (hexRE.test(value)) {
|
|
191
|
+
return Object.assign(rest, parseHexVal(value));
|
|
192
|
+
} else if (rgbRE.test(value)) {
|
|
193
|
+
return Object.assign(rest, parseRgbVal(value));
|
|
63
194
|
}
|
|
64
195
|
}
|
|
65
196
|
return rest;
|
|
66
197
|
}
|
|
67
198
|
function updateColorAlpha(value) {
|
|
68
199
|
var alpha = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
|
69
|
-
var colorRest =
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
return toRgb(r, g, b, alpha);
|
|
77
|
-
}
|
|
78
|
-
if (type === 'hex') {
|
|
79
|
-
return "#".concat(hexV).concat(alpha === 1 ? '' : hexAlphaNumMaps[alpha] || '');
|
|
200
|
+
var colorRest = parseValColor(value);
|
|
201
|
+
if (colorRest) {
|
|
202
|
+
var type = colorRest.type;
|
|
203
|
+
if (type === 'hex') {
|
|
204
|
+
return "#".concat(colorRest.hexV).concat(alpha === 1 ? '' : hexAlphaNumMaps[alpha] || '');
|
|
205
|
+
}
|
|
206
|
+
return toValRgb(colorRest.r, colorRest.g, colorRest.b, alpha);
|
|
80
207
|
}
|
|
81
208
|
return '';
|
|
82
209
|
}
|
|
83
|
-
function
|
|
84
|
-
if (_xeUtils.default.eqNull(a)) {
|
|
210
|
+
function toValRgb(r, g, b, a) {
|
|
211
|
+
if (_xeUtils.default.eqNull(a) || a === 1) {
|
|
85
212
|
return "rgb(".concat(r, ",").concat(g, ",").concat(b, ")");
|
|
86
213
|
}
|
|
87
214
|
return "rgba(".concat(r, ",").concat(g, ",").concat(b, ",").concat(a, ")");
|
|
88
215
|
}
|
|
89
|
-
function
|
|
90
|
-
|
|
91
|
-
|
|
216
|
+
function rgbValToHex(value) {
|
|
217
|
+
var rgbRest = parseRgbVal(value);
|
|
218
|
+
if (rgbRest) {
|
|
219
|
+
var hexVal = rgbToHexVal(rgbRest.r, rgbRest.g, rgbRest.b, rgbRest.a);
|
|
220
|
+
if (hexVal) {
|
|
221
|
+
return parseHexVal(hexVal);
|
|
222
|
+
}
|
|
92
223
|
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
a = _rgbRest$a === void 0 ? 1 : _rgbRest$a;
|
|
224
|
+
return null;
|
|
225
|
+
}
|
|
226
|
+
function rgbToHexVal(r, g, b, a) {
|
|
227
|
+
a = _xeUtils.default.isNumber(a) ? a : 1;
|
|
98
228
|
var hexR = r.toString(16).padStart(2, '0');
|
|
99
229
|
var hexG = g.toString(16).padStart(2, '0');
|
|
100
230
|
var hexB = b.toString(16).padStart(2, '0');
|
|
@@ -145,6 +275,89 @@ function rgbToHsv(rgbRest) {
|
|
|
145
275
|
v: _xeUtils.default.round(val, 2)
|
|
146
276
|
};
|
|
147
277
|
}
|
|
278
|
+
function rgbToHsl(rgbRest) {
|
|
279
|
+
if (!rgbRest) {
|
|
280
|
+
return null;
|
|
281
|
+
}
|
|
282
|
+
var r = rgbRest.r,
|
|
283
|
+
g = rgbRest.g,
|
|
284
|
+
b = rgbRest.b,
|
|
285
|
+
a = rgbRest.a;
|
|
286
|
+
var rNorm = r / 255;
|
|
287
|
+
var gNorm = g / 255;
|
|
288
|
+
var bNorm = b / 255;
|
|
289
|
+
var max = Math.max(rNorm, gNorm, bNorm);
|
|
290
|
+
var min = Math.min(rNorm, gNorm, bNorm);
|
|
291
|
+
var delta = max - min;
|
|
292
|
+
var h = 0;
|
|
293
|
+
var s = 0;
|
|
294
|
+
var l = (max + min) / 2;
|
|
295
|
+
if (delta !== 0) {
|
|
296
|
+
s = l > 0.5 ? delta / (2 - max - min) : delta / (max + min);
|
|
297
|
+
if (max === rNorm) {
|
|
298
|
+
h = (gNorm - bNorm) / delta % 6;
|
|
299
|
+
} else if (max === gNorm) {
|
|
300
|
+
h = (bNorm - rNorm) / delta + 2;
|
|
301
|
+
} else {
|
|
302
|
+
h = (rNorm - gNorm) / delta + 4;
|
|
303
|
+
}
|
|
304
|
+
h *= 60;
|
|
305
|
+
if (h < 0) {
|
|
306
|
+
h += 360;
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
return {
|
|
310
|
+
h: h,
|
|
311
|
+
s: s,
|
|
312
|
+
l: l,
|
|
313
|
+
a: _xeUtils.default.isNumber(a) ? a : 1
|
|
314
|
+
};
|
|
315
|
+
}
|
|
316
|
+
function hslToRgb(slRest) {
|
|
317
|
+
if (!slRest) {
|
|
318
|
+
return null;
|
|
319
|
+
}
|
|
320
|
+
var h = slRest.h,
|
|
321
|
+
s = slRest.s,
|
|
322
|
+
l = slRest.l;
|
|
323
|
+
var sNorm = s;
|
|
324
|
+
var lNorm = l;
|
|
325
|
+
h = (h % 360 + 360) % 360;
|
|
326
|
+
var c = (1 - Math.abs(2 * lNorm - 1)) * sNorm;
|
|
327
|
+
var x = c * (1 - Math.abs(h / 60 % 2 - 1));
|
|
328
|
+
var m = lNorm - c / 2;
|
|
329
|
+
var r, g, b;
|
|
330
|
+
if (h >= 0 && h < 60) {
|
|
331
|
+
r = c;
|
|
332
|
+
g = x;
|
|
333
|
+
b = 0;
|
|
334
|
+
} else if (h >= 60 && h < 120) {
|
|
335
|
+
r = x;
|
|
336
|
+
g = c;
|
|
337
|
+
b = 0;
|
|
338
|
+
} else if (h >= 120 && h < 180) {
|
|
339
|
+
r = 0;
|
|
340
|
+
g = c;
|
|
341
|
+
b = x;
|
|
342
|
+
} else if (h >= 180 && h < 240) {
|
|
343
|
+
r = 0;
|
|
344
|
+
g = x;
|
|
345
|
+
b = c;
|
|
346
|
+
} else if (h >= 240 && h < 300) {
|
|
347
|
+
r = x;
|
|
348
|
+
g = 0;
|
|
349
|
+
b = c;
|
|
350
|
+
} else {
|
|
351
|
+
r = c;
|
|
352
|
+
g = 0;
|
|
353
|
+
b = x;
|
|
354
|
+
}
|
|
355
|
+
return {
|
|
356
|
+
r: Math.round((r + m) * 255),
|
|
357
|
+
g: Math.round((g + m) * 255),
|
|
358
|
+
b: Math.round((b + m) * 255)
|
|
359
|
+
};
|
|
360
|
+
}
|
|
148
361
|
function hsvToRgb(h, s, v) {
|
|
149
362
|
var r = 0;
|
|
150
363
|
var g = 0;
|
|
@@ -203,11 +416,18 @@ function hexToRgb(str) {
|
|
|
203
416
|
if (str) {
|
|
204
417
|
var rests = str.match(/^(#?)([0-9A-Fa-f]{2})([0-9A-Fa-f]{2})([0-9A-Fa-f]{2})([0-9A-Fa-f]{2})?$/);
|
|
205
418
|
if (rests) {
|
|
419
|
+
var r = parseInt(rests[2], 16);
|
|
420
|
+
var g = parseInt(rests[3], 16);
|
|
421
|
+
var b = parseInt(rests[4], 16);
|
|
422
|
+
var a = (rests[5] ? hexAlphaKeyMaps[rests[5].toUpperCase()] : 1) || 1;
|
|
206
423
|
return {
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
424
|
+
value: str,
|
|
425
|
+
label: toValRgb(r, g, b, rests[5] ? a : null),
|
|
426
|
+
type: rests[5] ? 'rgba' : 'rgb',
|
|
427
|
+
r: r,
|
|
428
|
+
g: g,
|
|
429
|
+
b: b,
|
|
430
|
+
a: a
|
|
211
431
|
};
|
|
212
432
|
}
|
|
213
433
|
}
|