@progress/kendo-react-inputs 9.4.0-develop.6 → 9.4.0-develop.8

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.
Files changed (104) hide show
  1. package/checkbox/Checkbox.js +1 -1
  2. package/checkbox/Checkbox.mjs +0 -1
  3. package/colors/ColorContrastLabels.js +1 -1
  4. package/colors/ColorContrastLabels.mjs +2 -3
  5. package/colors/ColorContrastSvg.js +1 -1
  6. package/colors/ColorContrastSvg.mjs +11 -12
  7. package/colors/ColorGradient.js +1 -1
  8. package/colors/ColorGradient.mjs +85 -80
  9. package/colors/ColorInput.js +1 -1
  10. package/colors/ColorInput.mjs +55 -45
  11. package/colors/ColorPalette.js +1 -1
  12. package/colors/ColorPalette.mjs +55 -47
  13. package/colors/ColorPicker.js +1 -1
  14. package/colors/ColorPicker.mjs +312 -183
  15. package/colors/FlatColorPicker.js +1 -1
  16. package/colors/FlatColorPicker.mjs +225 -140
  17. package/colors/HexInput.js +1 -1
  18. package/colors/HexInput.mjs +10 -9
  19. package/colors/Picker.js +1 -1
  20. package/colors/Picker.mjs +22 -23
  21. package/colors/models/palette-presets.js +1 -1
  22. package/colors/models/palette-presets.mjs +1 -2
  23. package/colors/utils/color-cache.js +1 -1
  24. package/colors/utils/color-cache.mjs +12 -13
  25. package/colors/utils/color-palette.service.js +1 -1
  26. package/colors/utils/color-palette.service.mjs +0 -1
  27. package/colors/utils/color-parser.js +1 -1
  28. package/colors/utils/color-parser.mjs +5 -6
  29. package/colors/utils/misc.js +1 -1
  30. package/colors/utils/misc.mjs +0 -1
  31. package/colors/utils/svg-calc.js +1 -1
  32. package/colors/utils/svg-calc.mjs +9 -10
  33. package/common/AdaptiveMode.js +8 -0
  34. package/common/AdaptiveMode.mjs +73 -0
  35. package/dist/cdn/js/kendo-react-inputs.js +1 -1
  36. package/index.d.mts +118 -10
  37. package/index.d.ts +118 -10
  38. package/index.js +2 -1
  39. package/index.mjs +4 -4
  40. package/input/Input.js +1 -1
  41. package/input/Input.mjs +8 -9
  42. package/input/InputClearValue.js +1 -1
  43. package/input/InputClearValue.mjs +3 -4
  44. package/input/InputPrefix.js +1 -1
  45. package/input/InputPrefix.mjs +4 -5
  46. package/input/InputSeparator.js +1 -1
  47. package/input/InputSeparator.mjs +8 -9
  48. package/input/InputSuffix.js +1 -1
  49. package/input/InputSuffix.mjs +4 -5
  50. package/input/InputValidationIcon.js +1 -1
  51. package/input/InputValidationIcon.mjs +3 -4
  52. package/maskedtextbox/MaskedTextBox.js +1 -1
  53. package/maskedtextbox/MaskedTextBox.mjs +0 -1
  54. package/maskedtextbox/masking.service.js +1 -1
  55. package/maskedtextbox/masking.service.mjs +0 -1
  56. package/maskedtextbox/parsing/combinators.js +1 -1
  57. package/maskedtextbox/parsing/combinators.mjs +8 -9
  58. package/maskedtextbox/parsing/parsers.js +1 -1
  59. package/maskedtextbox/parsing/parsers.mjs +0 -1
  60. package/maskedtextbox/parsing/result.js +1 -1
  61. package/maskedtextbox/parsing/result.mjs +7 -8
  62. package/maskedtextbox/parsing/stream.js +1 -1
  63. package/maskedtextbox/parsing/stream.mjs +0 -1
  64. package/maskedtextbox/utils.js +1 -1
  65. package/maskedtextbox/utils.mjs +11 -12
  66. package/messages/index.js +1 -1
  67. package/messages/index.mjs +39 -38
  68. package/numerictextbox/NumericTextBox.js +1 -1
  69. package/numerictextbox/NumericTextBox.mjs +0 -1
  70. package/numerictextbox/utils/index.js +1 -1
  71. package/numerictextbox/utils/index.mjs +0 -1
  72. package/package-metadata.js +1 -1
  73. package/package-metadata.mjs +2 -3
  74. package/package.json +9 -9
  75. package/radiobutton/RadioButton.js +1 -1
  76. package/radiobutton/RadioButton.mjs +0 -1
  77. package/radiobutton/RadioGroup.js +1 -1
  78. package/radiobutton/RadioGroup.mjs +0 -1
  79. package/range-slider/RangeSlider.js +1 -1
  80. package/range-slider/RangeSlider.mjs +0 -1
  81. package/range-slider/range-raducer.js +1 -1
  82. package/range-slider/range-raducer.mjs +2 -3
  83. package/rating/Rating.js +1 -1
  84. package/rating/Rating.mjs +0 -1
  85. package/rating/RatingItem.js +1 -1
  86. package/rating/RatingItem.mjs +0 -1
  87. package/rating/rating-reducer.js +1 -1
  88. package/rating/rating-reducer.mjs +0 -1
  89. package/rating/utils/index.js +1 -1
  90. package/rating/utils/index.mjs +0 -1
  91. package/signature/Signature.js +1 -1
  92. package/signature/Signature.mjs +0 -1
  93. package/signature/utils/index.js +1 -1
  94. package/signature/utils/index.mjs +3 -4
  95. package/slider/Slider.js +1 -1
  96. package/slider/Slider.mjs +0 -1
  97. package/slider/SliderLabel.js +1 -1
  98. package/slider/SliderLabel.mjs +3 -4
  99. package/switch/Switch.js +1 -1
  100. package/switch/Switch.mjs +0 -1
  101. package/textarea/TextArea.js +1 -1
  102. package/textarea/TextArea.mjs +0 -1
  103. package/textbox/Textbox.js +1 -1
  104. package/textbox/Textbox.mjs +7 -8
@@ -5,51 +5,53 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";
9
- import * as a from "react";
10
- import { NumericTextBox as o } from "../numerictextbox/NumericTextBox.mjs";
11
- import v from "./HexInput.mjs";
12
- import { Button as x } from "@progress/kendo-react-buttons";
13
- import { caretAltExpandIcon as C } from "@progress/kendo-svg-icons";
14
- import { provideLocalizationService as k, registerForIntl as E, registerForLocalization as M } from "@progress/kendo-react-intl";
15
- import { colorGradientHex as r, messages as n, colorGradientR as l, colorGradientG as g, colorGradientB as c, colorGradientA as p, colorGradientToggleInputsButton as h } from "../messages/index.mjs";
8
+ import * as t from "react";
9
+ import { NumericTextBox as r } from "../numerictextbox/NumericTextBox.mjs";
10
+ import M from "./HexInput.mjs";
11
+ import { Button as v } from "@progress/kendo-react-buttons";
12
+ import { caretAltExpandIcon as x } from "@progress/kendo-svg-icons";
13
+ import { provideLocalizationService as C, registerForIntl as k, registerForLocalization as E } from "@progress/kendo-react-intl";
14
+ import { colorGradientHex as n, messages as o, colorGradientR as l, colorGradientG as g, colorGradientB as p, colorGradientA as h, colorGradientToggleInputsButton as c } from "../messages/index.mjs";
16
15
  const i = ["rgba", "rgb", "hex"];
17
- class d extends a.Component {
16
+ class d extends t.Component {
18
17
  constructor(e) {
19
- super(e), this.onRgbaRChange = (t) => {
20
- this.dispatchRgbaChange({ r: t.value }, t);
21
- }, this.onRgbaGChange = (t) => {
22
- this.dispatchRgbaChange({ g: t.value }, t);
23
- }, this.onRgbaBChange = (t) => {
24
- this.dispatchRgbaChange({ b: t.value }, t);
25
- }, this.onRgbaAChange = (t) => {
26
- this.dispatchRgbaChange({ a: t.value }, t);
18
+ super(e), this.onRgbaRChange = (a) => {
19
+ this.dispatchRgbaChange({ r: a.value }, a);
20
+ }, this.onRgbaGChange = (a) => {
21
+ this.dispatchRgbaChange({ g: a.value }, a);
22
+ }, this.onRgbaBChange = (a) => {
23
+ this.dispatchRgbaChange({ b: a.value }, a);
24
+ }, this.onRgbaAChange = (a) => {
25
+ this.dispatchRgbaChange({ a: a.value }, a);
27
26
  }, this.state = { inputMode: e.defaultInputMode || i[1] };
28
27
  }
29
28
  render() {
30
- const e = k(this), t = e.toLanguageString(r, n[r]), s = e.toLanguageString(l, n[l]), m = e.toLanguageString(g, n[g]), b = e.toLanguageString(c, n[c]), u = e.toLanguageString(p, n[p]), f = e.toLanguageString(
31
- h,
32
- n[h]
29
+ const e = C(this), a = e.toLanguageString(n, o[n]), s = e.toLanguageString(l, o[l]), m = e.toLanguageString(g, o[g]), b = e.toLanguageString(p, o[p]), f = e.toLanguageString(h, o[h]), u = e.toLanguageString(
30
+ c,
31
+ o[c]
33
32
  );
34
- return /* @__PURE__ */ a.createElement("div", { className: "k-colorgradient-inputs k-hstack" }, /* @__PURE__ */ a.createElement("div", { className: "k-vstack" }, /* @__PURE__ */ a.createElement(
35
- x,
33
+ return /* @__PURE__ */ t.createElement("div", { className: "k-colorgradient-inputs k-hstack" }, /* @__PURE__ */ t.createElement("div", { className: "k-vstack" }, /* @__PURE__ */ t.createElement(
34
+ v,
36
35
  {
37
- "aria-label": f,
36
+ "aria-label": u,
38
37
  fillMode: "flat",
39
38
  icon: "caret-alt-expand",
40
- svgIcon: C,
39
+ svgIcon: x,
41
40
  className: "k-colorgradient-toggle-mode",
41
+ size: this.props.size,
42
42
  onClick: this.onToggleModeChange.bind(this)
43
43
  }
44
- )), this.state.inputMode === "hex" && /* @__PURE__ */ a.createElement("div", { className: "k-vstack k-flex-1" }, /* @__PURE__ */ a.createElement(
45
- v,
44
+ )), this.state.inputMode === "hex" && /* @__PURE__ */ t.createElement("div", { className: "k-vstack k-flex-1" }, /* @__PURE__ */ t.createElement(
45
+ M,
46
46
  {
47
47
  hex: this.props.hex,
48
48
  onHexChange: this.props.onHexChange,
49
- disabled: this.props.disabled
49
+ disabled: this.props.disabled,
50
+ size: this.props.size,
51
+ fillMode: this.props.fillMode
50
52
  }
51
- ), /* @__PURE__ */ a.createElement("label", { className: "k-colorgradient-input-label" }, t)), (this.state.inputMode === "rgb" || this.state.inputMode === "rgba") && /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement("div", { className: "k-vstack" }, /* @__PURE__ */ a.createElement(
52
- o,
53
+ ), /* @__PURE__ */ t.createElement("label", { className: "k-colorgradient-input-label" }, a)), (this.state.inputMode === "rgb" || this.state.inputMode === "rgba") && /* @__PURE__ */ t.createElement(t.Fragment, null, /* @__PURE__ */ t.createElement("div", { className: "k-vstack" }, /* @__PURE__ */ t.createElement(
54
+ r,
53
55
  {
54
56
  value: this.props.rgba.r,
55
57
  ariaLabel: String(this.props.rgba.r),
@@ -58,10 +60,12 @@ class d extends a.Component {
58
60
  spinners: !1,
59
61
  format: "n",
60
62
  onChange: this.onRgbaRChange,
61
- disabled: this.props.disabled
63
+ disabled: this.props.disabled,
64
+ size: this.props.size,
65
+ fillMode: this.props.fillMode
62
66
  }
63
- ), /* @__PURE__ */ a.createElement("label", { className: "k-colorgradient-input-label" }, s)), /* @__PURE__ */ a.createElement("div", { className: "k-vstack" }, /* @__PURE__ */ a.createElement(
64
- o,
67
+ ), /* @__PURE__ */ t.createElement("label", { className: "k-colorgradient-input-label" }, s)), /* @__PURE__ */ t.createElement("div", { className: "k-vstack" }, /* @__PURE__ */ t.createElement(
68
+ r,
65
69
  {
66
70
  value: this.props.rgba.g,
67
71
  ariaLabel: String(this.props.rgba.g),
@@ -70,10 +74,12 @@ class d extends a.Component {
70
74
  spinners: !1,
71
75
  format: "n",
72
76
  onChange: this.onRgbaGChange,
73
- disabled: this.props.disabled
77
+ disabled: this.props.disabled,
78
+ size: this.props.size,
79
+ fillMode: this.props.fillMode
74
80
  }
75
- ), /* @__PURE__ */ a.createElement("label", { className: "k-colorgradient-input-label" }, m)), /* @__PURE__ */ a.createElement("div", { className: "k-vstack" }, /* @__PURE__ */ a.createElement(
76
- o,
81
+ ), /* @__PURE__ */ t.createElement("label", { className: "k-colorgradient-input-label" }, m)), /* @__PURE__ */ t.createElement("div", { className: "k-vstack" }, /* @__PURE__ */ t.createElement(
82
+ r,
77
83
  {
78
84
  value: this.props.rgba.b,
79
85
  ariaLabel: String(this.props.rgba.b),
@@ -82,10 +88,12 @@ class d extends a.Component {
82
88
  spinners: !1,
83
89
  format: "n",
84
90
  onChange: this.onRgbaBChange,
85
- disabled: this.props.disabled
91
+ disabled: this.props.disabled,
92
+ size: this.props.size,
93
+ fillMode: this.props.fillMode
86
94
  }
87
- ), /* @__PURE__ */ a.createElement("label", { className: "k-colorgradient-input-label" }, b))), this.state.inputMode === "rgba" && /* @__PURE__ */ a.createElement("div", { className: "k-vstack" }, this.props.opacity && /* @__PURE__ */ a.createElement(
88
- o,
95
+ ), /* @__PURE__ */ t.createElement("label", { className: "k-colorgradient-input-label" }, b))), this.state.inputMode === "rgba" && /* @__PURE__ */ t.createElement("div", { className: "k-vstack" }, this.props.opacity && /* @__PURE__ */ t.createElement(
96
+ r,
89
97
  {
90
98
  value: this.props.rgba.a,
91
99
  ariaLabel: String(this.props.rgba.a),
@@ -95,26 +103,28 @@ class d extends a.Component {
95
103
  spinners: !1,
96
104
  format: "n2",
97
105
  onChange: this.onRgbaAChange,
98
- disabled: this.props.disabled
106
+ disabled: this.props.disabled,
107
+ size: this.props.size,
108
+ fillMode: this.props.fillMode
99
109
  }
100
- ), this.props.opacity && /* @__PURE__ */ a.createElement("label", { className: "k-colorgradient-input-label" }, u)));
110
+ ), this.props.opacity && /* @__PURE__ */ t.createElement("label", { className: "k-colorgradient-input-label" }, f)));
101
111
  }
102
- dispatchRgbaChange(e, t) {
112
+ dispatchRgbaChange(e, a) {
103
113
  const s = { ...this.props.rgba };
104
- e.r !== void 0 && (s.r = e.r), e.g !== void 0 && (s.g = e.g), e.b !== void 0 && (s.b = e.b), e.a !== void 0 && (s.a = e.a), this.props.onRgbaChange(s, t);
114
+ e.r !== void 0 && (s.r = e.r), e.g !== void 0 && (s.g = e.g), e.b !== void 0 && (s.b = e.b), e.a !== void 0 && (s.a = e.a), this.props.onRgbaChange(s, a);
105
115
  }
106
116
  onToggleModeChange() {
107
117
  const e = i.length - 1 === i.indexOf(this.state.inputMode) ? 0 : i.indexOf(this.state.inputMode) + 1;
108
118
  if (this.props.opacity)
109
119
  this.setState({ inputMode: i[e] });
110
120
  else {
111
- const t = i[e] === "rgba" ? e + 1 : e;
112
- this.setState({ inputMode: i[t] });
121
+ const a = i[e] === "rgba" ? e + 1 : e;
122
+ this.setState({ inputMode: i[a] });
113
123
  }
114
124
  }
115
125
  }
126
+ k(d);
116
127
  E(d);
117
- M(d);
118
128
  export {
119
129
  d as default
120
130
  };
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const F=require("react"),s=require("prop-types"),T=require("./utils/color-palette.service.js"),r=require("@progress/kendo-react-common"),N=require("../package-metadata.js"),D=require("./models/palette-presets.js"),I=require("./utils/misc.js"),L=require("./utils/color-parser.js");function O(n){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const e in n)if(e!=="default"){const o=Object.getOwnPropertyDescriptor(n,e);Object.defineProperty(t,e,o.get?o:{enumerable:!0,get:()=>n[e]})}}return t.default=n,Object.freeze(t)}const l=O(F),v=24,u=10,S="office",c=class c extends l.Component{constructor(t){super(t),this.wrapperRef=l.createRef(),this.paletteService=null,this.focus=()=>{this.wrapperRef&&this.wrapperRef.current&&this.wrapperRef.current.focus()},this.onKeyDown=e=>{switch(e.key){case r.KEYS.down:this.handleCellNavigation(0,1);break;case r.KEYS.up:this.handleCellNavigation(0,-1);break;case r.KEYS.right:this.handleCellNavigation(1,0);break;case r.KEYS.left:this.handleCellNavigation(-1,0);break;case r.KEYS.enter:this.handleEnter(e);break;default:return}e.preventDefault()},this.onColorClick=(e,o)=>{this.isUncontrolled?this.setState({selectedColor:e,focusedColor:e}):this.setState({focusedColor:e}),this.dispatchChangeEvent(e,o)},this.onFocus=e=>{this.paletteService&&(this.setState({focusedColor:this.state.selectedColor||this.paletteService.colorRows[0][0]}),this.props.onFocus&&this.props.onFocus.call(void 0,e))},this.onBlur=()=>{this.setState({focusedColor:void 0})},r.validatePackage(N.packageMetadata),this.state={selectedColor:this.props.value!==void 0?this.props.value:this.props.defaultValue?this.props.defaultValue:void 0,isFirstRender:!0}}get guid(){return this.props.id}render(){const t=this.getPaletteInfo(),e=this.paletteService=new T.ColorPaletteService;e.setColorMatrix(t.colors,t.columns);const o=e.getCellCoordsFor(this.state.selectedColor),i=e.getCellCoordsFor(this.state.focusedColor),a=r.classNames("k-colorpalette",{"k-disabled":this.props.disabled},this.props.className);return t.colors.length?l.createElement("div",{id:this.props.id,role:"grid",className:a,onFocus:this.onFocus,onBlur:this.onBlur,onKeyDown:this.onKeyDown,"aria-disabled":this.props.ariaDisabled||(this.props.disabled?"true":void 0),"aria-labelledby":this.props.ariaLabelledBy,"aria-describedby":this.props.ariaDescribedBy,tabIndex:r.getTabIndex(this.props.tabIndex,this.props.disabled),ref:this.wrapperRef},l.createElement("table",{className:"k-colorpalette-table",role:"presentation"},l.createElement("tbody",{role:"rowgroup"},this.renderRows(e.colorRows,o,i)))):""}static getDerivedStateFromProps(t,e){if(!e.isFirstRender&&t.value!==void 0){if(t.value===""&&e.selectedColor!==void 0)return{selectedColor:void 0};if(t.value!==""&&t.value!==e.selectedColor)return{selectedColor:t.value}}else if(e.isFirstRender)return{isFirstRender:!1};return null}handleCellNavigation(t,e){if(this.paletteService)if(this.focusedColorCooridanates){const o=this.paletteService.getNextCell(this.focusedColorCooridanates,t,e);this.setState({focusedColor:this.paletteService.getColorAt(o)})}else this.setState({focusedColor:this.paletteService.colorRows[0][0]})}handleEnter(t){this.isUncontrolled&&this.setState({selectedColor:this.state.focusedColor}),this.dispatchChangeEvent(this.state.focusedColor,t)}dispatchChangeEvent(t,e){r.dispatchEvent(this.props.onChange,e,this,{value:t,rgbaValue:L.parseColor(t,"rgba")})}get focusedColorCooridanates(){return this.state.focusedColor&&this.paletteService?this.paletteService.getCellCoordsFor(this.state.focusedColor):void 0}get isUncontrolled(){return this.props.value===void 0}getPaletteInfo(){if(typeof this.props.palette=="string"){const t=D.PALETTEPRESETS[this.props.palette];return I.isPresent(t)?{colors:t.colors,columns:this.props.columns||t.columns||u}:{colors:[],columns:0}}return{colors:this.props.palette||[],columns:this.props.columns||u}}renderRows(t,e,o){return t.map((i,a)=>l.createElement("tr",{role:"row",key:a},this.renderColumns(i,a,e,o)))}renderColumns(t,e,o,i){const a=o!==void 0&&o.row===e,E=o&&o.col,w=i!==void 0&&i.row===e,y=i&&i.col,f=typeof this.props.tileSize!="number"?this.props.tileSize:{width:this.props.tileSize,height:this.props.tileSize},C=f.width+"px",P=f.height+"px";return t.map((h,d)=>{const g=a&&E===d,k=r.classNames("k-colorpalette-tile",{"k-selected":g,"k-focus":w&&y===d});return l.createElement("td",{role:"gridcell",className:k,"aria-label":h,"aria-selected":g?!0:this.props.disabled?void 0:!1,style:{backgroundColor:h,width:C,height:P,minWidth:C},onClick:R=>this.onColorClick(h,R),id:this.createCellId({row:e,col:d}),key:d})})}createCellId(t){return`${this.guid}_${t.row}_${t.col}`}};c.displayName="ColorPalette",c.propTypes={palette:s.oneOfType([s.arrayOf(s.string.isRequired),s.string]),columns:s.number,tileSize:s.any,defaultValue:s.string,value:s.string,disabled:s.bool,tabIndex:s.number,onChange:s.func,onFocus:s.func,id:s.string,ariaLabelledBy:s.string,ariaDescribedBy:s.string,className:s.string},c.defaultProps={palette:S,tileSize:v};let p=c;const b=r.createPropsContext(),m=r.withIdHOC(r.withPropsContext(b,p));m.displayName="KendoReactColorPalette";exports.ColorPalette=m;exports.ColorPalettePropsContext=b;exports.ColorPaletteWithoutContext=p;exports.DEFAULT_COLUMNS_COUNT=u;exports.DEFAULT_PRESET=S;exports.DEFAULT_TILE_SIZE=v;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("react"),s=require("prop-types"),P=require("./utils/color-palette.service.js"),r=require("@progress/kendo-react-common"),R=require("../package-metadata.js"),T=require("./models/palette-presets.js"),F=require("./utils/misc.js"),N=require("./utils/color-parser.js");function D(l){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(l){for(const e in l)if(e!=="default"){const o=Object.getOwnPropertyDescriptor(l,e);Object.defineProperty(t,e,o.get?o:{enumerable:!0,get:()=>l[e]})}}return t.default=l,Object.freeze(t)}const a=D(k),C=24,h=10,g="office",n=class n extends a.Component{constructor(t){super(t),this.wrapperRef=a.createRef(),this.paletteService=null,this.focus=()=>{this.wrapperRef&&this.wrapperRef.current&&this.wrapperRef.current.focus()},this.onKeyDown=e=>{switch(e.key){case r.KEYS.down:this.handleCellNavigation(0,1);break;case r.KEYS.up:this.handleCellNavigation(0,-1);break;case r.KEYS.right:this.handleCellNavigation(1,0);break;case r.KEYS.left:this.handleCellNavigation(-1,0);break;case r.KEYS.enter:this.handleEnter(e);break;default:return}e.preventDefault()},this.onColorClick=(e,o)=>{this.isUncontrolled?this.setState({selectedColor:e,focusedColor:e}):this.setState({focusedColor:e}),this.dispatchChangeEvent(e,o)},this.onFocus=e=>{this.paletteService&&(this.setState({focusedColor:this.state.selectedColor||this.paletteService.colorRows[0][0]}),this.props.onFocus&&this.props.onFocus.call(void 0,e))},this.onBlur=()=>{this.setState({focusedColor:void 0})},r.validatePackage(R.packageMetadata),this.state={selectedColor:this.props.value!==void 0?this.props.value:this.props.defaultValue?this.props.defaultValue:void 0,isFirstRender:!0}}get guid(){return this.props.id}render(){const t=this.getPaletteInfo(),e=this.paletteService=new P.ColorPaletteService;e.setColorMatrix(t.colors,t.columns);const o=e.getCellCoordsFor(this.state.selectedColor),i=e.getCellCoordsFor(this.state.focusedColor);return t.colors.length?a.createElement("div",{id:this.props.id,role:"grid",className:r.classNames("k-colorpalette",{[`k-colorpalette-${r.kendoThemeMaps.sizeMap[this.props.size]||this.props.size}`]:this.props.size,"k-disabled":this.props.disabled},this.props.className),onFocus:this.onFocus,onBlur:this.onBlur,onKeyDown:this.onKeyDown,"aria-disabled":this.props.ariaDisabled||(this.props.disabled?"true":void 0),"aria-labelledby":this.props.ariaLabelledBy,"aria-describedby":this.props.ariaDescribedBy,tabIndex:r.getTabIndex(this.props.tabIndex,this.props.disabled),ref:this.wrapperRef},a.createElement("table",{className:"k-colorpalette-table",role:"presentation"},a.createElement("tbody",{role:"rowgroup"},this.renderRows(e.colorRows,o,i)))):""}static getDerivedStateFromProps(t,e){if(!e.isFirstRender&&t.value!==void 0){if(t.value===""&&e.selectedColor!==void 0)return{selectedColor:void 0};if(t.value!==""&&t.value!==e.selectedColor)return{selectedColor:t.value}}else if(e.isFirstRender)return{isFirstRender:!1};return null}handleCellNavigation(t,e){if(this.paletteService)if(this.focusedColorCooridanates){const o=this.paletteService.getNextCell(this.focusedColorCooridanates,t,e);this.setState({focusedColor:this.paletteService.getColorAt(o)})}else this.setState({focusedColor:this.paletteService.colorRows[0][0]})}handleEnter(t){this.isUncontrolled&&this.setState({selectedColor:this.state.focusedColor}),this.dispatchChangeEvent(this.state.focusedColor,t)}dispatchChangeEvent(t,e){r.dispatchEvent(this.props.onChange,e,this,{value:t,rgbaValue:N.parseColor(t,"rgba")})}get focusedColorCooridanates(){return this.state.focusedColor&&this.paletteService?this.paletteService.getCellCoordsFor(this.state.focusedColor):void 0}get isUncontrolled(){return this.props.value===void 0}getPaletteInfo(){if(typeof this.props.palette=="string"){const t=T.PALETTEPRESETS[this.props.palette];return F.isPresent(t)?{colors:t.colors,columns:this.props.columns||t.columns||h}:{colors:[],columns:0}}return{colors:this.props.palette||[],columns:this.props.columns||h}}renderRows(t,e,o){return t.map((i,c)=>a.createElement("tr",{role:"row",key:c},this.renderColumns(i,c,e,o)))}renderColumns(t,e,o,i){const c=o!==void 0&&o.row===e,b=o&&o.col,S=i!==void 0&&i.row===e,E=i&&i.col;return t.map((u,d)=>{const f=c&&b===d,y=r.classNames("k-colorpalette-tile",{"k-selected":f,"k-focus":S&&E===d});return a.createElement("td",{role:"gridcell",className:y,"aria-label":u,"aria-selected":f?!0:this.props.disabled?void 0:!1,style:{backgroundColor:u},onClick:w=>this.onColorClick(u,w),id:this.createCellId({row:e,col:d}),key:d})})}createCellId(t){return`${this.guid}_${t.row}_${t.col}`}};n.displayName="ColorPalette",n.propTypes={palette:s.oneOfType([s.arrayOf(s.string.isRequired),s.string]),columns:s.number,tileSize:s.any,defaultValue:s.string,value:s.string,disabled:s.bool,tabIndex:s.number,onChange:s.func,onFocus:s.func,id:s.string,ariaLabelledBy:s.string,ariaDescribedBy:s.string,className:s.string,size:s.oneOf(["small","medium","large",null])},n.defaultProps={palette:g,tileSize:C,size:"medium"};let p=n;const v=r.createPropsContext(),m=r.withIdHOC(r.withPropsContext(v,p));m.displayName="KendoReactColorPalette";exports.ColorPalette=m;exports.ColorPalettePropsContext=v;exports.ColorPaletteWithoutContext=p;exports.DEFAULT_COLUMNS_COUNT=h;exports.DEFAULT_PRESET=g;exports.DEFAULT_TILE_SIZE=C;
@@ -5,34 +5,33 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";
9
8
  import * as i from "react";
10
9
  import s from "prop-types";
11
- import { ColorPaletteService as E } from "./utils/color-palette.service.mjs";
12
- import { KEYS as a, validatePackage as k, classNames as C, getTabIndex as R, dispatchEvent as F, createPropsContext as N, withIdHOC as P, withPropsContext as T } from "@progress/kendo-react-common";
13
- import { packageMetadata as I } from "../package-metadata.mjs";
14
- import { PALETTEPRESETS as D } from "./models/palette-presets.mjs";
15
- import { isPresent as L } from "./utils/misc.mjs";
16
- import { parseColor as U } from "./utils/color-parser.mjs";
17
- const x = 24, m = 10, z = "office", n = class n extends i.Component {
10
+ import { ColorPaletteService as S } from "./utils/color-palette.service.mjs";
11
+ import { KEYS as l, validatePackage as w, classNames as u, kendoThemeMaps as E, getTabIndex as k, dispatchEvent as y, createPropsContext as R, withIdHOC as F, withPropsContext as N } from "@progress/kendo-react-common";
12
+ import { packageMetadata as P } from "../package-metadata.mjs";
13
+ import { PALETTEPRESETS as T } from "./models/palette-presets.mjs";
14
+ import { isPresent as I } from "./utils/misc.mjs";
15
+ import { parseColor as D } from "./utils/color-parser.mjs";
16
+ const z = 24, f = 10, L = "office", a = class a extends i.Component {
18
17
  constructor(t) {
19
18
  super(t), this.wrapperRef = i.createRef(), this.paletteService = null, this.focus = () => {
20
19
  this.wrapperRef && this.wrapperRef.current && this.wrapperRef.current.focus();
21
20
  }, this.onKeyDown = (e) => {
22
21
  switch (e.key) {
23
- case a.down:
22
+ case l.down:
24
23
  this.handleCellNavigation(0, 1);
25
24
  break;
26
- case a.up:
25
+ case l.up:
27
26
  this.handleCellNavigation(0, -1);
28
27
  break;
29
- case a.right:
28
+ case l.right:
30
29
  this.handleCellNavigation(1, 0);
31
30
  break;
32
- case a.left:
31
+ case l.left:
33
32
  this.handleCellNavigation(-1, 0);
34
33
  break;
35
- case a.enter:
34
+ case l.enter:
36
35
  this.handleEnter(e);
37
36
  break;
38
37
  default:
@@ -45,7 +44,7 @@ const x = 24, m = 10, z = "office", n = class n extends i.Component {
45
44
  this.paletteService && (this.setState({ focusedColor: this.state.selectedColor || this.paletteService.colorRows[0][0] }), this.props.onFocus && this.props.onFocus.call(void 0, e));
46
45
  }, this.onBlur = () => {
47
46
  this.setState({ focusedColor: void 0 });
48
- }, k(I), this.state = {
47
+ }, w(P), this.state = {
49
48
  selectedColor: this.props.value !== void 0 ? this.props.value : this.props.defaultValue ? this.props.defaultValue : void 0,
50
49
  isFirstRender: !0
51
50
  };
@@ -57,22 +56,29 @@ const x = 24, m = 10, z = "office", n = class n extends i.Component {
57
56
  * @hidden
58
57
  */
59
58
  render() {
60
- const t = this.getPaletteInfo(), e = this.paletteService = new E();
59
+ const t = this.getPaletteInfo(), e = this.paletteService = new S();
61
60
  e.setColorMatrix(t.colors, t.columns);
62
- const o = e.getCellCoordsFor(this.state.selectedColor), r = e.getCellCoordsFor(this.state.focusedColor), l = C("k-colorpalette", { "k-disabled": this.props.disabled }, this.props.className);
61
+ const o = e.getCellCoordsFor(this.state.selectedColor), r = e.getCellCoordsFor(this.state.focusedColor);
63
62
  return t.colors.length ? /* @__PURE__ */ i.createElement(
64
63
  "div",
65
64
  {
66
65
  id: this.props.id,
67
66
  role: "grid",
68
- className: l,
67
+ className: u(
68
+ "k-colorpalette",
69
+ {
70
+ [`k-colorpalette-${E.sizeMap[this.props.size] || this.props.size}`]: this.props.size,
71
+ "k-disabled": this.props.disabled
72
+ },
73
+ this.props.className
74
+ ),
69
75
  onFocus: this.onFocus,
70
76
  onBlur: this.onBlur,
71
77
  onKeyDown: this.onKeyDown,
72
78
  "aria-disabled": this.props.ariaDisabled || (this.props.disabled ? "true" : void 0),
73
79
  "aria-labelledby": this.props.ariaLabelledBy,
74
80
  "aria-describedby": this.props.ariaDescribedBy,
75
- tabIndex: R(this.props.tabIndex, this.props.disabled),
81
+ tabIndex: k(this.props.tabIndex, this.props.disabled),
76
82
  ref: this.wrapperRef
77
83
  },
78
84
  /* @__PURE__ */ i.createElement("table", { className: "k-colorpalette-table", role: "presentation" }, /* @__PURE__ */ i.createElement("tbody", { role: "rowgroup" }, this.renderRows(e.colorRows, o, r)))
@@ -107,7 +113,7 @@ const x = 24, m = 10, z = "office", n = class n extends i.Component {
107
113
  this.isUncontrolled && this.setState({ selectedColor: this.state.focusedColor }), this.dispatchChangeEvent(this.state.focusedColor, t);
108
114
  }
109
115
  dispatchChangeEvent(t, e) {
110
- F(this.props.onChange, e, this, { value: t, rgbaValue: U(t, "rgba") });
116
+ y(this.props.onChange, e, this, { value: t, rgbaValue: D(t, "rgba") });
111
117
  }
112
118
  get focusedColorCooridanates() {
113
119
  return this.state.focusedColor && this.paletteService ? this.paletteService.getCellCoordsFor(this.state.focusedColor) : void 0;
@@ -117,33 +123,33 @@ const x = 24, m = 10, z = "office", n = class n extends i.Component {
117
123
  }
118
124
  getPaletteInfo() {
119
125
  if (typeof this.props.palette == "string") {
120
- const t = D[this.props.palette];
121
- return L(t) ? {
126
+ const t = T[this.props.palette];
127
+ return I(t) ? {
122
128
  colors: t.colors,
123
- columns: this.props.columns || t.columns || m
129
+ columns: this.props.columns || t.columns || f
124
130
  } : { colors: [], columns: 0 };
125
131
  }
126
- return { colors: this.props.palette || [], columns: this.props.columns || m };
132
+ return { colors: this.props.palette || [], columns: this.props.columns || f };
127
133
  }
128
134
  renderRows(t, e, o) {
129
- return t.map((r, l) => /* @__PURE__ */ i.createElement("tr", { role: "row", key: l }, this.renderColumns(r, l, e, o)));
135
+ return t.map((r, n) => /* @__PURE__ */ i.createElement("tr", { role: "row", key: n }, this.renderColumns(r, n, e, o)));
130
136
  }
131
137
  renderColumns(t, e, o, r) {
132
- const l = o !== void 0 && o.row === e, g = o && o.col, v = r !== void 0 && r.row === e, b = r && r.col, h = typeof this.props.tileSize != "number" ? this.props.tileSize : { width: this.props.tileSize, height: this.props.tileSize }, u = h.width + "px", S = h.height + "px";
138
+ const n = o !== void 0 && o.row === e, C = o && o.col, m = r !== void 0 && r.row === e, g = r && r.col;
133
139
  return t.map((d, c) => {
134
- const f = l && g === c, w = C("k-colorpalette-tile", {
135
- "k-selected": f,
136
- "k-focus": v && b === c
140
+ const h = n && C === c, v = u("k-colorpalette-tile", {
141
+ "k-selected": h,
142
+ "k-focus": m && g === c
137
143
  });
138
144
  return /* @__PURE__ */ i.createElement(
139
145
  "td",
140
146
  {
141
147
  role: "gridcell",
142
- className: w,
148
+ className: v,
143
149
  "aria-label": d,
144
- "aria-selected": f ? !0 : this.props.disabled ? void 0 : !1,
145
- style: { backgroundColor: d, width: u, height: S, minWidth: u },
146
- onClick: (y) => this.onColorClick(d, y),
150
+ "aria-selected": h ? !0 : this.props.disabled ? void 0 : !1,
151
+ style: { backgroundColor: d },
152
+ onClick: (b) => this.onColorClick(d, b),
147
153
  id: this.createCellId({ row: e, col: c }),
148
154
  key: c
149
155
  }
@@ -154,7 +160,7 @@ const x = 24, m = 10, z = "office", n = class n extends i.Component {
154
160
  return `${this.guid}_${t.row}_${t.col}`;
155
161
  }
156
162
  };
157
- n.displayName = "ColorPalette", n.propTypes = {
163
+ a.displayName = "ColorPalette", a.propTypes = {
158
164
  palette: s.oneOfType([s.arrayOf(s.string.isRequired), s.string]),
159
165
  columns: s.number,
160
166
  tileSize: s.any,
@@ -167,24 +173,26 @@ n.displayName = "ColorPalette", n.propTypes = {
167
173
  id: s.string,
168
174
  ariaLabelledBy: s.string,
169
175
  ariaDescribedBy: s.string,
170
- className: s.string
171
- }, n.defaultProps = {
172
- palette: z,
173
- tileSize: x
176
+ className: s.string,
177
+ size: s.oneOf(["small", "medium", "large", null])
178
+ }, a.defaultProps = {
179
+ palette: L,
180
+ tileSize: z,
181
+ size: "medium"
174
182
  };
175
- let p = n;
176
- const B = N(), A = P(
177
- T(
178
- B,
183
+ let p = a;
184
+ const U = R(), B = F(
185
+ N(
186
+ U,
179
187
  p
180
188
  )
181
189
  );
182
- A.displayName = "KendoReactColorPalette";
190
+ B.displayName = "KendoReactColorPalette";
183
191
  export {
184
- A as ColorPalette,
185
- B as ColorPalettePropsContext,
192
+ B as ColorPalette,
193
+ U as ColorPalettePropsContext,
186
194
  p as ColorPaletteWithoutContext,
187
- m as DEFAULT_COLUMNS_COUNT,
188
- z as DEFAULT_PRESET,
189
- x as DEFAULT_TILE_SIZE
195
+ f as DEFAULT_COLUMNS_COUNT,
196
+ L as DEFAULT_PRESET,
197
+ z as DEFAULT_TILE_SIZE
190
198
  };
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const fe=require("react"),r=require("prop-types"),o=require("@progress/kendo-react-common"),ke=require("../package-metadata.js"),me=require("./Picker.js"),ge=require("./ColorGradient.js"),M=require("./ColorPalette.js"),be=require("@progress/kendo-react-buttons"),ve=require("@progress/kendo-svg-icons"),F=require("../messages/index.js"),Ee=require("@progress/kendo-react-intl");function Ce(c){const m=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(c){for(const a in c)if(a!=="default"){const b=Object.getOwnPropertyDescriptor(c,a);Object.defineProperty(m,a,b.get?b:{enumerable:!0,get:()=>c[a]})}}return m.default=c,Object.freeze(m)}const e=Ce(fe),ye={opacity:!0},Pe={palette:M.DEFAULT_PRESET,tileSize:M.DEFAULT_TILE_SIZE},L=c=>c!==void 0,K=o.createPropsContext(),B=e.forwardRef((c,m)=>{o.validatePackage(ke.packageMetadata);const a=o.usePropsContext(K,c),b=Ee.useLocalization(),{size:P=k.size,rounded:T=k.rounded,fillMode:q=k.fillMode,gradientSettings:U=k.gradientSettings,paletteSettings:$=k.paletteSettings,view:u=k.view,popupSettings:W,valid:Z,disabled:w,tabIndex:J,icon:S,svgIcon:I,iconClassName:v,onChange:R,onFocus:D,onBlur:N,onActiveColorClick:h,className:Q}=a,l=e.useRef(null),g=e.useRef(null),E=e.useRef(null),f=e.useRef(),X=e.useRef(null),[Y,x]=e.useState(!1),[ee,te]=e.useState(a.defaultValue),[ne,oe]=e.useState(!1),A=L(a.value),d=L(a.open),i=A?a.value:ee,C=d?a.open:ne,_=e.useCallback(()=>{l.current&&l.current.focus()},[]);e.useImperativeHandle(m,()=>({element:l.current,actionElement:X.current,value:i,focus:_}),[i,_]);const p=e.useCallback((t,s)=>{d||(!t&&!s&&l&&l.current&&l.current.focus(),oe(t))},[d]),z=e.useMemo(()=>new o.Navigation({root:l,selectors:[".k-colorpicker",".k-color-picker-popup"],tabIndex:0,keyboardEvents:{keydown:{Escape:(t,s,n)=>{p(!1)},Enter:(t,s,n)=>{!d&&t===l.current&&(n.preventDefault(),n.stopPropagation(),p(!0))},ArrowDown:(t,s,n)=>{n.altKey&&(n.preventDefault(),n.stopPropagation(),p(!0))},ArrowUp:(t,s,n)=>{n.altKey&&(n.preventDefault(),n.stopPropagation(),p(!1))},Tab:(t,s,n)=>{var V,j;if(o.getActiveElement(document)!==l.current){const G=(V=E.current)==null?void 0:V.wrapperRef.current,y=(j=g.current)==null?void 0:j.wrapperRef.current;u==="palette"&&G?o.keepFocusInContainer(n,G):u==="gradient"&&y?o.keepFocusInContainer(n,y):u==="combo"&&y&&o.keepFocusInContainer(n,y.parentElement)}}}}}),[p,d]),ae=e.useCallback(z.triggerKeyboardEvent.bind(z),[]),re=e.useCallback(()=>{d||(g.current&&g.current.wrapperRef.current?o.focusFirstFocusableChild(g.current.wrapperRef.current):E.current&&E.current.focus())},[d]),le=e.useCallback(()=>{p(!C,!0)},[C]),ce=e.useCallback(t=>{h&&h.call(void 0,{syntheticEvent:t,nativeEvent:t.nativeEvent,value:i})},[h,i]),ie=e.useCallback(t=>{f.current?(clearTimeout(f.current),f.current=void 0):x(!0),D&&D.call(void 0,{nativeEvent:t.nativeEvent,syntheticEvent:t})},[D]),se=e.useCallback(()=>{p(!1,!0),x(!1),f.current=void 0},[]),ue=e.useCallback(t=>{clearTimeout(f.current),f.current=window.setTimeout(se),N&&N.call(void 0,{nativeEvent:t.nativeEvent,syntheticEvent:t})},[N]),O=e.useCallback((t,s)=>{const n=s?t.rgbaValue:t.value;A||te(n),R&&R.call(void 0,{value:n,nativeEvent:t.nativeEvent,syntheticEvent:t.syntheticEvent})},[A,R]),de=e.useCallback(t=>O(t,!0),[L,O]),H=o.useDir(l,a.dir),pe=Z!==!1;return e.createElement("span",{id:a.id,role:"combobox","aria-label":a.ariaLabel,"aria-labelledby":a.ariaLabelledBy,"aria-describedby":a.ariaDescribedBy,"aria-haspopup":"dialog","aria-expanded":C,"aria-disabled":w?"true":void 0,className:o.classNames("k-colorpicker","k-picker","k-icon-picker",{[`k-picker-${o.kendoThemeMaps.sizeMap[P]||P}`]:P,[`k-picker-${q}`]:q,[`k-rounded-${o.kendoThemeMaps.roundedMap[T]||T}`]:T,"k-invalid":!pe,"k-disabled":w,"k-focus":Y,className:Q}),ref:l,tabIndex:o.getTabIndex(J,w),title:a.title,onKeyDown:ae,onFocus:ie,onBlur:ue,dir:H},e.createElement(me.Picker,{dir:H,open:C,onOpen:re,popupAnchor:l.current||void 0,popupSettings:{...W},input:e.createElement("span",{onClick:ce,className:"k-input-inner"},e.createElement("span",{className:o.classNames("k-value-icon","k-color-preview",{"k-no-color":!i,"k-icon-color-preview":S||I||v})},v&&e.createElement("span",{className:o.classNames("k-color-preview-icon",v)}),!v&&(S||I)&&e.createElement(o.IconWrap,{name:S,icon:I}),e.createElement("span",{className:"k-color-preview-mask",style:{backgroundColor:i}}))),button:e.createElement(be.Button,{tabIndex:-1,type:"button",onClick:le,className:"k-input-button",rounded:null,icon:"caret-alt-down",svgIcon:ve.caretAltDownIcon,"aria-label":b.toLanguageString(F.colorPickerDropdownButtonAriaLabel,F.messages[F.colorPickerDropdownButtonAriaLabel])}),content:e.createElement(e.Fragment,null,(u==="combo"||u==="gradient")&&e.createElement(ge.ColorGradient,{...U,ref:g,isInsidePopup:!0,value:i,onChange:O}),(u==="combo"||u==="palette")&&e.createElement(M.ColorPalette,{...$,ref:E,value:i,onChange:de}))}))});B.propTypes={value:r.string,defaultValue:r.string,disabled:r.bool,view:r.oneOf(["gradient","palette","combo"]),dir:r.string,id:r.string,icon:r.string,svgIcon:o.svgIconPropType,ariaLabelledBy:r.string,ariaDescribedBy:r.string,size:r.oneOf([null,"small","medium","large"]),rounded:r.oneOf([null,"small","medium","large","full"]),fillMode:r.oneOf([null,"solid","flat","outline"]),className:r.string};const k={size:"medium",rounded:"medium",fillMode:"solid",view:"palette",gradientSettings:ye,paletteSettings:Pe};B.displayName="KendoColorPicker";exports.ColorPicker=B;exports.ColorPickerPropsContext=K;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Be=require("react"),o=require("prop-types"),n=require("@progress/kendo-react-common"),Oe=require("../package-metadata.js"),De=require("./Picker.js"),ze=require("./ColorGradient.js"),K=require("./ColorPalette.js"),B=require("./FlatColorPicker.js"),Ne=require("@progress/kendo-react-buttons"),Le=require("@progress/kendo-svg-icons"),u=require("../messages/index.js"),xe=require("@progress/kendo-react-intl"),qe=require("../common/AdaptiveMode.js"),He=require("@progress/kendo-react-layout");function Ve(p){const y=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(p){for(const a in p)if(a!=="default"){const k=Object.getOwnPropertyDescriptor(p,a);Object.defineProperty(y,a,k.get?k:{enumerable:!0,get:()=>p[a]})}}return y.default=p,Object.freeze(y)}const t=Ve(Be),Me={opacity:!0},Ue={palette:K.DEFAULT_PRESET,tileSize:K.DEFAULT_TILE_SIZE},G=p=>p!==void 0,ue=n.createPropsContext(),W=t.forwardRef((p,y)=>{var re,oe;n.validatePackage(Oe.packageMetadata);const a=n.usePropsContext(ue,p),k=xe.useLocalization(),$=n.useAdaptiveModeContext(),{size:d=E.size,rounded:O=E.rounded,fillMode:_=E.fillMode,gradientSettings:Z=E.gradientSettings,paletteSettings:J=E.paletteSettings,flatColorPickerSettings:S,view:f=a.views?void 0:E.view,views:l=f?void 0:E.views,activeView:Q,popupSettings:C,valid:de,disabled:D,tabIndex:pe,icon:z,svgIcon:N,iconClassName:R,onChange:L,onFocus:x,onBlur:q,onActiveColorClick:H,className:fe,adaptive:ge,adaptiveTitle:X=k.toLanguageString(u.colorPickerAdaptiveTitle,u.messages[u.colorPickerAdaptiveTitle])}=a,i=t.useRef(null),T=t.useRef(null),A=t.useRef(null),v=t.useRef(null),w=t.useRef(),ke=t.useRef(null),[ve,Y]=t.useState(!1),[me,Ce]=t.useState(a.defaultValue),[be,Ee]=t.useState(!1),[I,we]=t.useState(),V=G(a.value),b=G(a.open),c=V?a.value:me,P=b?a.open:be,ee=t.useCallback(()=>{i.current&&i.current.focus()},[]);t.useImperativeHandle(y,()=>({element:i.current,actionElement:ke.current,value:c,focus:ee}),[c,ee]);const Pe=!!(I&&$&&I<=$.medium&&ge);t.useEffect(()=>{const e=n.canUseDOM&&window.ResizeObserver&&new window.ResizeObserver(Ie.bind(void 0));return document!=null&&document.body&&e&&e.observe(document.body),()=>{document!=null&&document.body&&e&&e.disconnect()}},[]);const g=t.useCallback((e,s)=>{b||(!e&&!s&&i&&i.current&&i.current.focus(),Ee(e))},[b]),te=t.useMemo(()=>new n.Navigation({root:i,selectors:[".k-colorpicker",".k-color-picker-popup"],tabIndex:0,keyboardEvents:{keydown:{Escape:(e,s,r)=>{g(!1)},Enter:(e,s,r)=>{!b&&e===i.current&&(r.preventDefault(),r.stopPropagation(),g(!0))},ArrowDown:(e,s,r)=>{r.altKey&&(r.preventDefault(),r.stopPropagation(),g(!0))},ArrowUp:(e,s,r)=>{r.altKey&&(r.preventDefault(),r.stopPropagation(),g(!1))},Tab:(e,s,r)=>{var h,le,ie;if(n.getActiveElement(document)!==i.current){const ce=(h=A.current)==null?void 0:h.wrapperRef.current,F=(le=T.current)==null?void 0:le.wrapperRef.current,se=(ie=v.current)==null?void 0:ie.element;f==="palette"&&ce?n.keepFocusInContainer(r,ce):f==="gradient"&&F?n.keepFocusInContainer(r,F):f==="combo"&&F?n.keepFocusInContainer(r,F.parentElement):l&&se&&n.keepFocusInContainer(r,se)}}}}}),[g,b]),ye=t.useCallback(te.triggerKeyboardEvent.bind(te),[]),Se=t.useCallback(()=>{b||(T.current&&T.current.wrapperRef.current?n.focusFirstFocusableChild(T.current.wrapperRef.current):A.current?A.current.focus():v.current&&v.current.element&&n.focusFirstFocusableChild(v.current.element))},[b]),M=t.useCallback(()=>{g(!P,!0)},[P]),U=t.useCallback(()=>{g(!1,!0)},[g]),Te=t.useCallback(e=>{H&&H.call(void 0,{syntheticEvent:e,nativeEvent:e.nativeEvent,value:c,target:{element:i.current,value:c}})},[H,c]),he=t.useCallback(e=>{w.current?(clearTimeout(w.current),w.current=void 0):Y(!0),x&&x.call(void 0,{nativeEvent:e.nativeEvent,syntheticEvent:e})},[x]),_e=t.useCallback(()=>{g(!1,!0),Y(!1),w.current=void 0},[]),Re=t.useCallback(e=>{clearTimeout(w.current),w.current=window.setTimeout(_e),q&&q.call(void 0,{nativeEvent:e.nativeEvent,syntheticEvent:e})},[q]),m=t.useCallback((e,s)=>{var h;const r=s?e.rgbaValue||"":(h=e.value)!=null?h:"";V||Ce(r),L&&L.call(void 0,{value:r,nativeEvent:e.nativeEvent,syntheticEvent:e.syntheticEvent,target:{element:i.current,value:r}})},[V,L]),ne=t.useCallback(e=>m(e,!0),[G,m]),j=t.useCallback(e=>t.createElement(t.Fragment,null,(f==="combo"||f==="gradient")&&t.createElement(ze.ColorGradient,{...Z,_adaptive:e,ref:T,isInsidePopup:!0,size:e?"large":d,fillMode:_,value:c,onChange:m}),(f==="combo"||f==="palette")&&t.createElement(K.ColorPalette,{...J,ref:A,size:e?"large":d,value:c,onChange:ne}),l&&l[0]==="gradient"&&l[1]==="palette"&&t.createElement(B.FlatColorPicker,{...S,_gradientSettings:{_adaptive:e},ref:v,size:e?"large":d,views:["gradient","palette"],activeView:Q,showButtons:!e,value:c,onChange:m}),l&&l[0]==="palette"&&l[1]==="gradient"&&t.createElement(B.FlatColorPicker,{...S,_gradientSettings:{_adaptive:e},ref:v,size:e?"large":d,views:["palette","gradient"],showButtons:!e,value:c,onChange:m}),l&&l.includes("gradient")&&!l.includes("palette")&&t.createElement(B.FlatColorPicker,{...S,_gradientSettings:{_adaptive:e},ref:v,size:e?"large":d,views:["gradient"],showButtons:!e,value:c,onChange:m}),l&&l.includes("palette")&&!l.includes("gradient")&&t.createElement(B.FlatColorPicker,{...S,_gradientSettings:{_adaptive:e},ref:v,size:e?"large":d,views:["palette"],showButtons:!e,value:c,onChange:m})),[Q,_,S,Z,m,ne,J,d,c,f,l]),Ae=t.useCallback(()=>{var s;const e={animation:!!((s=C==null?void 0:C.animate)==null||s),title:X,expand:P,onClose:U,windowWidth:I,footer:{cancelText:k.toLanguageString(u.flatColorPickerCancelBtn,u.messages[u.flatColorPickerCancelBtn]),onCancel:U,applyText:k.toLanguageString(u.flatColorPickerApplyBtn,u.messages[u.flatColorPickerApplyBtn]),onApply:M}};return t.createElement(qe.AdaptiveMode,{...e},t.createElement(He.ActionSheetContent,{overflowHidden:!0},j(!0)))},[C==null?void 0:C.animate,X,P,U,I,k,M,j]),Ie=t.useCallback(e=>{for(const s of e)we(s.target.clientWidth)},[]),ae=n.useDir(i,a.dir),Fe=de!==!1;return t.createElement("span",{id:a.id,role:"combobox","aria-label":a.ariaLabel,"aria-labelledby":a.ariaLabelledBy,"aria-describedby":a.ariaDescribedBy,"aria-haspopup":"dialog","aria-expanded":P,"aria-controls":`k-colorpicker-popup-${(re=a.id)!=null?re:0}`,"aria-disabled":D?"true":void 0,className:n.classNames("k-colorpicker","k-picker","k-icon-picker",{[`k-picker-${n.kendoThemeMaps.sizeMap[d]||d}`]:d,[`k-picker-${_}`]:_,[`k-rounded-${n.kendoThemeMaps.roundedMap[O]||O}`]:O,"k-invalid":!Fe,"k-disabled":D,"k-focus":ve,className:fe}),ref:i,tabIndex:n.getTabIndex(pe,D),title:a.title,onKeyDown:ye,onFocus:he,onBlur:Re,dir:ae},t.createElement(De.Picker,{dir:ae,open:P,onOpen:Se,popupAnchor:i.current||void 0,popupSettings:{id:`k-colorpicker-popup-${(oe=a.id)!=null?oe:0}`,...C},input:t.createElement("span",{onClick:Te,className:"k-input-inner"},t.createElement("span",{className:n.classNames("k-value-icon","k-color-preview",{"k-no-color":!c,"k-icon-color-preview":z||N||R})},R&&t.createElement("span",{className:n.classNames("k-color-preview-icon",R)}),!R&&(z||N)&&t.createElement(n.IconWrap,{name:z,icon:N}),t.createElement("span",{className:"k-color-preview-mask",style:{backgroundColor:c}}))),button:t.createElement(Ne.Button,{tabIndex:-1,type:"button",onClick:M,className:"k-input-button",rounded:null,icon:"caret-alt-down",svgIcon:Le.caretAltDownIcon,"aria-label":k.toLanguageString(u.colorPickerDropdownButtonAriaLabel,u.messages[u.colorPickerDropdownButtonAriaLabel])}),content:j(!1),_mobileMode:Pe,_actionSheet:Ae()}))});W.propTypes={value:o.string,defaultValue:o.string,disabled:o.bool,view:o.oneOf(["gradient","palette","combo"]),views:o.arrayOf(o.oneOf(["gradient","palette"])),dir:o.string,id:o.string,icon:o.string,svgIcon:n.svgIconPropType,ariaLabelledBy:o.string,ariaDescribedBy:o.string,size:o.oneOf([null,"small","medium","large"]),rounded:o.oneOf([null,"small","medium","large","full"]),fillMode:o.oneOf([null,"solid","flat","outline"]),className:o.string,adaptive:o.bool,adaptiveTitle:o.string};const E={size:"medium",rounded:"medium",fillMode:"solid",view:"palette",views:["gradient","palette"],gradientSettings:Me,paletteSettings:Ue};W.displayName="KendoColorPicker";exports.ColorPicker=W;exports.ColorPickerPropsContext=ue;