@bigbinary/neetoui 8.2.45 → 8.2.47
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/dist/ColorPicker.js +97 -31
- package/dist/ColorPicker.js.map +1 -1
- package/dist/MultiEmailInput.js +15 -10
- package/dist/MultiEmailInput.js.map +1 -1
- package/dist/cjs/ColorPicker.js +97 -31
- package/dist/cjs/ColorPicker.js.map +1 -1
- package/dist/cjs/MultiEmailInput.js +15 -10
- package/dist/cjs/MultiEmailInput.js.map +1 -1
- package/package.json +1 -1
- package/types/ColorPicker.d.ts +2 -6
package/dist/ColorPicker.js
CHANGED
|
@@ -34,36 +34,94 @@ const s=()=>"undefined"!=typeof window&&"EyeDropper"in window,i=()=>Promise.reje
|
|
|
34
34
|
|
|
35
35
|
var useEyeDropper = p
|
|
36
36
|
|
|
37
|
-
var
|
|
37
|
+
var DEFAULT_PALETTE_COLORS = [{
|
|
38
|
+
hex: "#FFFFFF"
|
|
39
|
+
}, {
|
|
40
|
+
hex: "#D6D6D6"
|
|
41
|
+
}, {
|
|
42
|
+
hex: "#676767"
|
|
43
|
+
}, {
|
|
44
|
+
hex: "#0A0E13"
|
|
45
|
+
}, {
|
|
46
|
+
hex: "#91E5F6"
|
|
47
|
+
}, {
|
|
48
|
+
hex: "#2A79C4"
|
|
49
|
+
}, {
|
|
50
|
+
hex: "#095482"
|
|
51
|
+
}, {
|
|
52
|
+
hex: "#FFCDD2"
|
|
53
|
+
}, {
|
|
54
|
+
hex: "#E2EFAC"
|
|
55
|
+
}, {
|
|
56
|
+
hex: "#B3E5FC"
|
|
57
|
+
}, {
|
|
58
|
+
hex: "#C8E6C9"
|
|
59
|
+
}, {
|
|
60
|
+
hex: "#D7CCC8"
|
|
61
|
+
}, {
|
|
62
|
+
hex: "#F5DD90"
|
|
63
|
+
}, {
|
|
64
|
+
hex: "#C3C6F9"
|
|
65
|
+
}, {
|
|
66
|
+
hex: "#FFF7AE"
|
|
67
|
+
}, {
|
|
68
|
+
hex: "#FECE1E"
|
|
69
|
+
}, {
|
|
70
|
+
hex: "#FFD69D"
|
|
71
|
+
}, {
|
|
72
|
+
hex: "#FE871E"
|
|
73
|
+
}, {
|
|
74
|
+
hex: "#02C39A"
|
|
75
|
+
}, {
|
|
76
|
+
hex: "#00A896"
|
|
77
|
+
}, {
|
|
78
|
+
hex: "#028090"
|
|
79
|
+
}, {
|
|
80
|
+
hex: "#99B898"
|
|
81
|
+
}, {
|
|
82
|
+
hex: "#586BA4"
|
|
83
|
+
}, {
|
|
84
|
+
hex: "#324376"
|
|
85
|
+
}, {
|
|
86
|
+
hex: "#FF847C"
|
|
87
|
+
}, {
|
|
88
|
+
hex: "#F32E48"
|
|
89
|
+
}, {
|
|
90
|
+
hex: "#8064CE"
|
|
91
|
+
}, {
|
|
92
|
+
hex: "#4F329A"
|
|
93
|
+
}];
|
|
38
94
|
|
|
39
95
|
var Palette = function Palette(_ref) {
|
|
40
96
|
var color = _ref.color,
|
|
41
97
|
_ref$colorList = _ref.colorList,
|
|
42
|
-
colorList = _ref$colorList === void 0 ?
|
|
98
|
+
colorList = _ref$colorList === void 0 ? DEFAULT_PALETTE_COLORS : _ref$colorList,
|
|
43
99
|
onChange = _ref.onChange;
|
|
44
100
|
return /*#__PURE__*/React__default.createElement("div", {
|
|
45
101
|
className: "neeto-ui-flex neeto-ui-flex-row neeto-ui-flex-wrap neeto-ui-items-start neeto-ui-justify-start neeto-ui-color-palette neeto-ui-gap-1"
|
|
46
102
|
}, colorList.map(function (item) {
|
|
47
103
|
var hex = item.hex,
|
|
48
|
-
|
|
49
|
-
var
|
|
50
|
-
var
|
|
104
|
+
rgb = item.rgb;
|
|
105
|
+
var colorObject = tinycolor(hex !== null && hex !== void 0 ? hex : rgb);
|
|
106
|
+
var isTransparent = colorObject.getAlpha() === 0;
|
|
107
|
+
var isActive = Boolean(
|
|
108
|
+
// hex is case insensitive.
|
|
109
|
+
(color === null || color === void 0 ? void 0 : color.toLocaleLowerCase()) === (hex === null || hex === void 0 ? void 0 : hex.toLocaleLowerCase()) || color === rgb);
|
|
51
110
|
return /*#__PURE__*/React__default.createElement("div", {
|
|
52
111
|
"data-testid": "color-palette-item",
|
|
53
|
-
key: hex !== null && hex !== void 0 ? hex :
|
|
112
|
+
key: hex !== null && hex !== void 0 ? hex : rgb,
|
|
54
113
|
className: classnames("neeto-ui-color-palette__item neeto-ui-border", {
|
|
55
114
|
active: isActive
|
|
56
115
|
}),
|
|
57
116
|
onClick: function onClick() {
|
|
58
|
-
return onChange(
|
|
117
|
+
return onChange(hex !== null && hex !== void 0 ? hex : rgb);
|
|
59
118
|
}
|
|
60
119
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
61
120
|
style: {
|
|
62
|
-
backgroundColor: hex
|
|
121
|
+
backgroundColor: hex !== null && hex !== void 0 ? hex : rgb
|
|
63
122
|
},
|
|
64
123
|
className: classnames({
|
|
65
|
-
"transparent-bg-pattern": isTransparent
|
|
66
|
-
colorClassName: !isTransparent
|
|
124
|
+
"transparent-bg-pattern": isTransparent
|
|
67
125
|
})
|
|
68
126
|
}));
|
|
69
127
|
}));
|
|
@@ -84,7 +142,6 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
84
142
|
size = _ref$size === void 0 ? TARGET_SIZES.large : _ref$size,
|
|
85
143
|
_ref$onChange = _ref.onChange,
|
|
86
144
|
onChange = _ref$onChange === void 0 ? noop : _ref$onChange,
|
|
87
|
-
colorPaletteProps = _ref.colorPaletteProps,
|
|
88
145
|
dropdownProps = _ref.dropdownProps,
|
|
89
146
|
_ref$showEyeDropper = _ref.showEyeDropper,
|
|
90
147
|
showEyeDropper = _ref$showEyeDropper === void 0 ? true : _ref$showEyeDropper,
|
|
@@ -94,7 +151,8 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
94
151
|
showTransparencyControl = _ref$showTransparency === void 0 ? false : _ref$showTransparency,
|
|
95
152
|
_ref$showPicker = _ref.showPicker,
|
|
96
153
|
showPicker = _ref$showPicker === void 0 ? true : _ref$showPicker,
|
|
97
|
-
portalProps = _ref.portalProps
|
|
154
|
+
portalProps = _ref.portalProps,
|
|
155
|
+
colorPalette = _ref.colorPalette;
|
|
98
156
|
var _useState = useState(color),
|
|
99
157
|
_useState2 = _slicedToArray(_useState, 2),
|
|
100
158
|
colorInternal = _useState2[0],
|
|
@@ -107,35 +165,39 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
107
165
|
isSupported = _useEyeDropper.isSupported;
|
|
108
166
|
var PickerComponent = showTransparencyControl ? HexAlphaColorPicker : HexColorPicker;
|
|
109
167
|
var colorValue = (_ref2 = color !== null && color !== void 0 ? color : colorInternal) !== null && _ref2 !== void 0 ? _ref2 : "";
|
|
110
|
-
var onChangeInternal = onChange || setColorInternal;
|
|
111
168
|
var getColor = function getColor(colorValue) {
|
|
112
169
|
var color = tinycolor(colorValue);
|
|
170
|
+
if (color.isValid()) {
|
|
171
|
+
var hex = color.toHexString();
|
|
172
|
+
// return `transparent` for transparent colors.
|
|
173
|
+
if (color.getAlpha() === 0) hex = colorValue;else if (showTransparencyControl) hex = color.toHex8String();
|
|
174
|
+
return {
|
|
175
|
+
hex: hex,
|
|
176
|
+
rgb: color.toRgb()
|
|
177
|
+
};
|
|
178
|
+
}
|
|
113
179
|
return {
|
|
114
|
-
hex:
|
|
115
|
-
rgb:
|
|
180
|
+
hex: colorValue,
|
|
181
|
+
rgb: colorValue
|
|
116
182
|
};
|
|
117
183
|
};
|
|
184
|
+
var onColorChange = function onColorChange(color) {
|
|
185
|
+
var changeHandler = onChange !== null && onChange !== void 0 ? onChange : setColorInternal;
|
|
186
|
+
changeHandler(getColor(color));
|
|
187
|
+
};
|
|
118
188
|
var onColorInputChange = function onColorInputChange(hex) {
|
|
119
|
-
var color = tinycolor(hex);
|
|
120
|
-
var rgb = color.toRgb();
|
|
121
189
|
isInputChanged.current = true;
|
|
122
|
-
|
|
123
|
-
hex: hex,
|
|
124
|
-
rgb: rgb
|
|
125
|
-
});
|
|
126
|
-
};
|
|
127
|
-
var onPickerChange = function onPickerChange(hex) {
|
|
128
|
-
return onChangeInternal(getColor(hex));
|
|
190
|
+
onColorChange(hex);
|
|
129
191
|
};
|
|
130
192
|
var onBlur = function onBlur() {
|
|
131
193
|
// If input is not changed, don't call onChange on blur
|
|
132
194
|
if (!isInputChanged.current) return;
|
|
133
195
|
isInputChanged.current = false;
|
|
134
|
-
|
|
196
|
+
onColorChange(colorValue);
|
|
135
197
|
};
|
|
136
198
|
var pickColor = /*#__PURE__*/function () {
|
|
137
199
|
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
138
|
-
var colorResponse,
|
|
200
|
+
var colorResponse, hex;
|
|
139
201
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
140
202
|
while (1) switch (_context.prev = _context.next) {
|
|
141
203
|
case 0:
|
|
@@ -144,8 +206,8 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
144
206
|
return open();
|
|
145
207
|
case 3:
|
|
146
208
|
colorResponse = _context.sent;
|
|
147
|
-
|
|
148
|
-
|
|
209
|
+
hex = tinycolor(colorResponse.sRGBHex).toHexString();
|
|
210
|
+
onColorChange(hex);
|
|
149
211
|
_context.next = 10;
|
|
150
212
|
break;
|
|
151
213
|
case 8:
|
|
@@ -204,7 +266,7 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
204
266
|
"data-testid": "neeto-color-picker-section"
|
|
205
267
|
}, /*#__PURE__*/React__default.createElement(PickerComponent, {
|
|
206
268
|
color: colorValue,
|
|
207
|
-
onChange:
|
|
269
|
+
onChange: onColorChange
|
|
208
270
|
})), /*#__PURE__*/React__default.createElement("div", {
|
|
209
271
|
className: "neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-mt-3 neeto-ui-gap-2"
|
|
210
272
|
}, showEyeDropper && isSupported() && /*#__PURE__*/React__default.createElement(Button, {
|
|
@@ -225,13 +287,17 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
225
287
|
alpha: !!showTransparencyControl,
|
|
226
288
|
color: colorValue,
|
|
227
289
|
onChange: onColorInputChange
|
|
228
|
-
}))))),
|
|
290
|
+
}))))), /*#__PURE__*/React__default.createElement("div", {
|
|
229
291
|
"data-testid": "color-palette",
|
|
230
292
|
className: classnames("neeto-ui-colorpicker__palette-wrapper", {
|
|
231
293
|
"neeto-ui-colorpicker__palette-wrapper--hidden-picker": !showPicker,
|
|
232
294
|
"neeto-ui-pt-3 neeto-ui-border-t neeto-ui-border-gray-200": showPicker
|
|
233
295
|
})
|
|
234
|
-
}, /*#__PURE__*/React__default.createElement(Palette,
|
|
296
|
+
}, /*#__PURE__*/React__default.createElement(Palette, {
|
|
297
|
+
color: color,
|
|
298
|
+
colorList: colorPalette,
|
|
299
|
+
onChange: onColorChange
|
|
300
|
+
}))));
|
|
235
301
|
};
|
|
236
302
|
|
|
237
303
|
export { ColorPicker as default };
|
package/dist/ColorPicker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColorPicker.js","sources":["../node_modules/use-eye-dropper/lib/use-eye-dropper.module.js","../node_modules/use-eye-dropper/lib/index.module.js","../src/components/ColorPicker/constants.js","../src/components/ColorPicker/Palette.jsx","../src/components/ColorPicker/index.jsx"],"sourcesContent":["import{useMemo as r,useRef as o,useCallback as n,useEffect as t,useState as e}from\"react\";const s=()=>\"undefined\"!=typeof window&&\"EyeDropper\"in window,i=()=>Promise.reject(new Error(\"Unsupported browser.\")),c=()=>{const r=o(),[i,c]=e(!1);t(()=>(r.current=!0,c(s()),()=>{r.current=!1}),[]);const u=n(()=>i,[i]);return[r,u]},u=r=>{const o=(r=>s()&&new EyeDropper(r))(r);var n;return(n=o)?EyeDropper.prototype.open.bind(n):i},p=e=>{const s=r(()=>u(e),[e]),[i,p]=c(),a=o(),f=n(()=>{void 0!==a.current&&a.current.abort()},[a]),d=n(function(r){void 0===r&&(r={});try{f();const{signal:o,...n}=r,t=new AbortController;a.current=t;const e=void 0!==o?(r=>{const o=new AbortController,n=()=>{o.abort();for(const o of r)o.removeEventListener(\"abort\",n)};for(const o of r){if(o.aborted){n();break}o.addEventListener(\"abort\",n)}return o.signal})([o,t.signal]):t.signal;return Promise.resolve(function(r,o){try{var t=Promise.resolve(s({...n,signal:e}))}catch(r){return o(r)}return t&&t.then?t.then(void 0,o):t}(0,function(r){throw i.current||(r.canceled=!0),r}))}catch(r){return Promise.reject(r)}},[a,i,f,s]);return t(()=>f,[f]),{open:d,close:f,isSupported:p}};export{p as default};\n","import { default as DropperDev } from './use-eye-dropper.module.dev.js'\nimport { default as Dropper } from './use-eye-dropper.module.js'\n\nexport default process.env.NODE_ENV === 'production' ? Dropper : DropperDev\n","export const TRANSPARENT = \"transparent\";\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport { TRANSPARENT } from \"./constants\";\n\nconst Palette = ({ color, colorList = [], onChange }) => (\n <div className=\"neeto-ui-flex neeto-ui-flex-row neeto-ui-flex-wrap neeto-ui-items-start neeto-ui-justify-start neeto-ui-color-palette neeto-ui-gap-1\">\n {colorList.map(item => {\n const { hex, colorClassName } = item;\n const isTransparent = hex === TRANSPARENT;\n\n const isActive = Boolean(\n (color?.hex && color.hex === hex) ||\n (color?.colorClassName && color.colorClassName === colorClassName)\n );\n\n return (\n <div\n data-testid=\"color-palette-item\"\n key={hex ?? colorClassName}\n className={classnames(\n \"neeto-ui-color-palette__item neeto-ui-border\",\n { active: isActive }\n )}\n onClick={() => onChange(item)}\n >\n <div\n style={{ backgroundColor: hex }}\n className={classnames({\n \"transparent-bg-pattern\": isTransparent,\n colorClassName: !isTransparent,\n })}\n />\n </div>\n );\n })}\n </div>\n);\n\nPalette.propTypes = {\n color: PropTypes.shape({\n hex: PropTypes.string,\n colorClassName: PropTypes.string,\n }),\n colorList: PropTypes.arrayOf(\n PropTypes.shape({\n hex: PropTypes.string,\n colorClassName: PropTypes.string,\n })\n ),\n onChange: PropTypes.func,\n};\n\nexport default Palette;\n","import React, { useState, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Down, ColorPicker as ColorPickerIcon } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport {\n HexColorPicker,\n HexColorInput,\n HexAlphaColorPicker,\n} from \"react-colorful\";\nimport tinycolor from \"tinycolor2\";\nimport useEyeDropper from \"use-eye-dropper\";\n\nimport Button from \"components/Button\";\nimport Dropdown from \"components/Dropdown\";\nimport { noop } from \"utils\";\n\nimport Palette from \"./Palette\";\n\nconst TARGET_SIZES = {\n large: \"large\",\n medium: \"medium\",\n small: \"small\",\n};\n\nconst ColorPicker = ({\n color = \"\",\n size = TARGET_SIZES.large,\n onChange = noop,\n colorPaletteProps,\n dropdownProps,\n showEyeDropper = true,\n showHexValue = false,\n showTransparencyControl = false,\n showPicker = true,\n portalProps,\n}) => {\n const [colorInternal, setColorInternal] = useState(color);\n const isInputChanged = useRef(false);\n const { open, isSupported } = useEyeDropper({ pickRadius: 3 });\n\n const PickerComponent = showTransparencyControl\n ? HexAlphaColorPicker\n : HexColorPicker;\n\n const colorValue = color ?? colorInternal ?? \"\";\n\n const onChangeInternal = onChange || setColorInternal;\n\n const getColor = colorValue => {\n const color = tinycolor(colorValue);\n\n return {\n hex: showTransparencyControl ? color.toHex8String() : color.toHexString(),\n rgb: color.toRgb(),\n };\n };\n\n const onColorInputChange = hex => {\n const color = tinycolor(hex);\n const rgb = color.toRgb();\n isInputChanged.current = true;\n\n onChangeInternal({ hex, rgb });\n };\n\n const onPickerChange = hex => onChangeInternal(getColor(hex));\n\n const onBlur = () => {\n // If input is not changed, don't call onChange on blur\n if (!isInputChanged.current) return;\n isInputChanged.current = false;\n onChangeInternal(getColor(colorValue));\n };\n\n const pickColor = async () => {\n try {\n const colorResponse = await open();\n const colorHex = tinycolor(colorResponse.sRGBHex).toHexString();\n onPickerChange(colorHex);\n } catch {\n // Ensures component is still mounted\n // before calling setState\n // if (!e.canceled) setError(e);\n }\n };\n\n const Target = ({ size }) => (\n <button\n data-cy=\"color-picker-target\"\n data-testid=\"neeto-color-picker\"\n type=\"button\"\n className={classnames(\"neeto-ui-colorpicker__target\", {\n \"neeto-ui-colorpicker__target-size--large\": size === TARGET_SIZES.large,\n \"neeto-ui-colorpicker__target-size--medium\":\n size === TARGET_SIZES.medium,\n \"neeto-ui-colorpicker__target-size--small\": size === TARGET_SIZES.small,\n })}\n >\n {showHexValue && (\n <span className=\"neeto-ui-colorpicker-target__code\">{color}</span>\n )}\n <span className=\"neeto-ui-colorpicker-target__color-wrapper\">\n <span\n className=\"neeto-ui-colorpicker-target__color neeto-ui-border-gray-200\"\n style={{ backgroundColor: colorValue }}\n />\n <span className=\"neeto-ui-colorpicker-target__icon\">\n <Down size={16} />\n </span>\n </span>\n </button>\n );\n\n return (\n <Dropdown\n className=\"neeto-ui-colorpicker__dropdown\"\n closeOnSelect={false}\n customTarget={<Target {...{ size }} />}\n label={colorValue}\n position=\"bottom-start\"\n {...dropdownProps}\n dropdownProps={{ ...dropdownProps?.dropdownProps, ...portalProps }}\n >\n <div className=\"neeto-ui-colorpicker__popover\">\n {showPicker && (\n <>\n <div\n className=\"neeto-ui-colorpicker__pointer\"\n data-testid=\"neeto-color-picker-section\"\n >\n <PickerComponent color={colorValue} onChange={onPickerChange} />\n </div>\n <div className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-mt-3 neeto-ui-gap-2\">\n {showEyeDropper && isSupported() && (\n <Button\n className=\"neeto-ui-colorpicker__eyedropper-btn\"\n icon={ColorPickerIcon}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n onClick={pickColor}\n />\n )}\n <div className=\"neeto-ui-input__wrapper\">\n <div\n className=\"neeto-ui-colorpicker__input neeto-ui-input neeto-ui-input--small\"\n data-cy=\"colorpicker-editable-input\"\n >\n <HexColorInput\n {...{ onBlur }}\n prefixed\n alpha={!!showTransparencyControl}\n color={colorValue}\n onChange={onColorInputChange}\n />\n </div>\n </div>\n </div>\n </>\n )}\n {colorPaletteProps && (\n <div\n data-testid=\"color-palette\"\n className={classnames(\"neeto-ui-colorpicker__palette-wrapper\", {\n \"neeto-ui-colorpicker__palette-wrapper--hidden-picker\":\n !showPicker,\n \"neeto-ui-pt-3 neeto-ui-border-t neeto-ui-border-gray-200\":\n showPicker,\n })}\n >\n <Palette {...colorPaletteProps} />\n </div>\n )}\n </div>\n </Dropdown>\n );\n};\n\nColorPicker.propTypes = {\n /**\n * To specify the color value.\n */\n color: PropTypes.string,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To set the size of the target.\n */\n size: PropTypes.oneOf(Object.values(TARGET_SIZES)),\n /**\n * To specify the action to be triggered on changing the color.\n */\n onChange: PropTypes.func,\n /**\n * To specify the props to be passed to the Palette component.\n */\n colorPaletteProps: PropTypes.shape({\n color: PropTypes.shape({\n hex: PropTypes.string,\n colorClassName: PropTypes.string,\n }),\n colorList: PropTypes.arrayOf(\n PropTypes.shape({\n hex: PropTypes.string,\n colorClassName: PropTypes.string,\n })\n ),\n onChange: PropTypes.func,\n }),\n /**\n * Shows eye dropper to pick color.\n */\n showEyeDropper: PropTypes.bool,\n /**\n * To show hex value near to the color in the dropdown.\n * By default it will be enabled.\n */\n showHexValue: PropTypes.bool,\n /**\n * To show transparency control. By default it will be hidden.\n */\n showTransparencyControl: PropTypes.bool,\n /**\n * To show the color picker. Used to hide the picker in cases where only palette is required. By default it will be true.\n */\n showPicker: PropTypes.bool,\n /**\n * To specify the props to be passed to the dropdown portal.\n */\n portalProps: PropTypes.object,\n};\n\nexport default ColorPicker;\n"],"names":["o","e","t","n","r","Dropper","TRANSPARENT","Palette","_ref","color","_ref$colorList","colorList","onChange","React","createElement","className","map","item","hex","colorClassName","isTransparent","isActive","Boolean","key","classnames","active","onClick","style","backgroundColor","TARGET_SIZES","large","medium","small","ColorPicker","_ref2","_ref$color","_ref$size","size","_ref$onChange","noop","colorPaletteProps","dropdownProps","_ref$showEyeDropper","showEyeDropper","_ref$showHexValue","showHexValue","_ref$showTransparency","showTransparencyControl","_ref$showPicker","showPicker","portalProps","_useState","useState","_useState2","_slicedToArray","colorInternal","setColorInternal","isInputChanged","useRef","_useEyeDropper","useEyeDropper","pickRadius","open","isSupported","PickerComponent","HexAlphaColorPicker","HexColorPicker","colorValue","onChangeInternal","getColor","tinycolor","toHex8String","toHexString","rgb","toRgb","onColorInputChange","current","onPickerChange","onBlur","pickColor","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","colorResponse","colorHex","wrap","_callee$","_context","prev","next","sent","sRGBHex","t0","stop","apply","arguments","Target","_ref4","type","Down","Dropdown","_extends","closeOnSelect","customTarget","label","position","_objectSpread","Fragment","Button","icon","ColorPickerIcon","HexColorInput","prefixed","alpha"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"ColorPicker.js","sources":["../node_modules/use-eye-dropper/lib/use-eye-dropper.module.js","../node_modules/use-eye-dropper/lib/index.module.js","../src/components/ColorPicker/constants.js","../src/components/ColorPicker/Palette.jsx","../src/components/ColorPicker/index.jsx"],"sourcesContent":["import{useMemo as r,useRef as o,useCallback as n,useEffect as t,useState as e}from\"react\";const s=()=>\"undefined\"!=typeof window&&\"EyeDropper\"in window,i=()=>Promise.reject(new Error(\"Unsupported browser.\")),c=()=>{const r=o(),[i,c]=e(!1);t(()=>(r.current=!0,c(s()),()=>{r.current=!1}),[]);const u=n(()=>i,[i]);return[r,u]},u=r=>{const o=(r=>s()&&new EyeDropper(r))(r);var n;return(n=o)?EyeDropper.prototype.open.bind(n):i},p=e=>{const s=r(()=>u(e),[e]),[i,p]=c(),a=o(),f=n(()=>{void 0!==a.current&&a.current.abort()},[a]),d=n(function(r){void 0===r&&(r={});try{f();const{signal:o,...n}=r,t=new AbortController;a.current=t;const e=void 0!==o?(r=>{const o=new AbortController,n=()=>{o.abort();for(const o of r)o.removeEventListener(\"abort\",n)};for(const o of r){if(o.aborted){n();break}o.addEventListener(\"abort\",n)}return o.signal})([o,t.signal]):t.signal;return Promise.resolve(function(r,o){try{var t=Promise.resolve(s({...n,signal:e}))}catch(r){return o(r)}return t&&t.then?t.then(void 0,o):t}(0,function(r){throw i.current||(r.canceled=!0),r}))}catch(r){return Promise.reject(r)}},[a,i,f,s]);return t(()=>f,[f]),{open:d,close:f,isSupported:p}};export{p as default};\n","import { default as DropperDev } from './use-eye-dropper.module.dev.js'\nimport { default as Dropper } from './use-eye-dropper.module.js'\n\nexport default process.env.NODE_ENV === 'production' ? Dropper : DropperDev\n","export const DEFAULT_PALETTE_COLORS = [\n { hex: \"#FFFFFF\" },\n { hex: \"#D6D6D6\" },\n { hex: \"#676767\" },\n { hex: \"#0A0E13\" },\n { hex: \"#91E5F6\" },\n { hex: \"#2A79C4\" },\n { hex: \"#095482\" },\n { hex: \"#FFCDD2\" },\n { hex: \"#E2EFAC\" },\n { hex: \"#B3E5FC\" },\n { hex: \"#C8E6C9\" },\n { hex: \"#D7CCC8\" },\n { hex: \"#F5DD90\" },\n { hex: \"#C3C6F9\" },\n { hex: \"#FFF7AE\" },\n { hex: \"#FECE1E\" },\n { hex: \"#FFD69D\" },\n { hex: \"#FE871E\" },\n { hex: \"#02C39A\" },\n { hex: \"#00A896\" },\n { hex: \"#028090\" },\n { hex: \"#99B898\" },\n { hex: \"#586BA4\" },\n { hex: \"#324376\" },\n { hex: \"#FF847C\" },\n { hex: \"#F32E48\" },\n { hex: \"#8064CE\" },\n { hex: \"#4F329A\" },\n];\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport tinycolor from \"tinycolor2\";\n\nimport { DEFAULT_PALETTE_COLORS } from \"./constants\";\n\nconst Palette = ({ color, colorList = DEFAULT_PALETTE_COLORS, onChange }) => (\n <div className=\"neeto-ui-flex neeto-ui-flex-row neeto-ui-flex-wrap neeto-ui-items-start neeto-ui-justify-start neeto-ui-color-palette neeto-ui-gap-1\">\n {colorList.map(item => {\n const { hex, rgb } = item;\n const colorObject = tinycolor(hex ?? rgb);\n const isTransparent = colorObject.getAlpha() === 0;\n const isActive = Boolean(\n // hex is case insensitive.\n color?.toLocaleLowerCase() === hex?.toLocaleLowerCase() || color === rgb\n );\n\n return (\n <div\n data-testid=\"color-palette-item\"\n key={hex ?? rgb}\n className={classnames(\n \"neeto-ui-color-palette__item neeto-ui-border\",\n { active: isActive }\n )}\n onClick={() => onChange(hex ?? rgb)}\n >\n <div\n style={{ backgroundColor: hex ?? rgb }}\n className={classnames({\n \"transparent-bg-pattern\": isTransparent,\n })}\n />\n </div>\n );\n })}\n </div>\n);\n\nPalette.propTypes = {\n color: PropTypes.string,\n colorList: PropTypes.arrayOf(\n PropTypes.shape({ hex: PropTypes.string, rgb: PropTypes.string })\n ),\n onChange: PropTypes.func,\n};\n\nexport default Palette;\n","import React, { useState, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Down, ColorPicker as ColorPickerIcon } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport {\n HexColorPicker,\n HexColorInput,\n HexAlphaColorPicker,\n} from \"react-colorful\";\nimport tinycolor from \"tinycolor2\";\nimport useEyeDropper from \"use-eye-dropper\";\n\nimport Button from \"components/Button\";\nimport Dropdown from \"components/Dropdown\";\nimport { noop } from \"utils\";\n\nimport Palette from \"./Palette\";\n\nconst TARGET_SIZES = {\n large: \"large\",\n medium: \"medium\",\n small: \"small\",\n};\n\nconst ColorPicker = ({\n color = \"\",\n size = TARGET_SIZES.large,\n onChange = noop,\n dropdownProps,\n showEyeDropper = true,\n showHexValue = false,\n showTransparencyControl = false,\n showPicker = true,\n portalProps,\n colorPalette,\n}) => {\n const [colorInternal, setColorInternal] = useState(color);\n const isInputChanged = useRef(false);\n const { open, isSupported } = useEyeDropper({ pickRadius: 3 });\n\n const PickerComponent = showTransparencyControl\n ? HexAlphaColorPicker\n : HexColorPicker;\n\n const colorValue = color ?? colorInternal ?? \"\";\n\n const getColor = colorValue => {\n const color = tinycolor(colorValue);\n\n if (color.isValid()) {\n let hex = color.toHexString();\n // return `transparent` for transparent colors.\n if (color.getAlpha() === 0) hex = colorValue;\n else if (showTransparencyControl) hex = color.toHex8String();\n\n return { hex, rgb: color.toRgb() };\n }\n\n return { hex: colorValue, rgb: colorValue };\n };\n\n const onColorChange = color => {\n const changeHandler = onChange ?? setColorInternal;\n\n changeHandler(getColor(color));\n };\n\n const onColorInputChange = hex => {\n isInputChanged.current = true;\n\n onColorChange(hex);\n };\n\n const onBlur = () => {\n // If input is not changed, don't call onChange on blur\n if (!isInputChanged.current) return;\n\n isInputChanged.current = false;\n onColorChange(colorValue);\n };\n\n const pickColor = async () => {\n try {\n const colorResponse = await open();\n const hex = tinycolor(colorResponse.sRGBHex).toHexString();\n onColorChange(hex);\n } catch {\n // Ensures component is still mounted\n // before calling setState\n // if (!e.canceled) setError(e);\n }\n };\n\n const Target = ({ size }) => (\n <button\n data-cy=\"color-picker-target\"\n data-testid=\"neeto-color-picker\"\n type=\"button\"\n className={classnames(\"neeto-ui-colorpicker__target\", {\n \"neeto-ui-colorpicker__target-size--large\": size === TARGET_SIZES.large,\n \"neeto-ui-colorpicker__target-size--medium\":\n size === TARGET_SIZES.medium,\n \"neeto-ui-colorpicker__target-size--small\": size === TARGET_SIZES.small,\n })}\n >\n {showHexValue && (\n <span className=\"neeto-ui-colorpicker-target__code\">{color}</span>\n )}\n <span className=\"neeto-ui-colorpicker-target__color-wrapper\">\n <span\n className=\"neeto-ui-colorpicker-target__color neeto-ui-border-gray-200\"\n style={{ backgroundColor: colorValue }}\n />\n <span className=\"neeto-ui-colorpicker-target__icon\">\n <Down size={16} />\n </span>\n </span>\n </button>\n );\n\n return (\n <Dropdown\n className=\"neeto-ui-colorpicker__dropdown\"\n closeOnSelect={false}\n customTarget={<Target {...{ size }} />}\n label={colorValue}\n position=\"bottom-start\"\n {...dropdownProps}\n dropdownProps={{ ...dropdownProps?.dropdownProps, ...portalProps }}\n >\n <div className=\"neeto-ui-colorpicker__popover\">\n {showPicker && (\n <>\n <div\n className=\"neeto-ui-colorpicker__pointer\"\n data-testid=\"neeto-color-picker-section\"\n >\n <PickerComponent color={colorValue} onChange={onColorChange} />\n </div>\n <div className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-mt-3 neeto-ui-gap-2\">\n {showEyeDropper && isSupported() && (\n <Button\n className=\"neeto-ui-colorpicker__eyedropper-btn\"\n icon={ColorPickerIcon}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n onClick={pickColor}\n />\n )}\n <div className=\"neeto-ui-input__wrapper\">\n <div\n className=\"neeto-ui-colorpicker__input neeto-ui-input neeto-ui-input--small\"\n data-cy=\"colorpicker-editable-input\"\n >\n <HexColorInput\n {...{ onBlur }}\n prefixed\n alpha={!!showTransparencyControl}\n color={colorValue}\n onChange={onColorInputChange}\n />\n </div>\n </div>\n </div>\n </>\n )}\n <div\n data-testid=\"color-palette\"\n className={classnames(\"neeto-ui-colorpicker__palette-wrapper\", {\n \"neeto-ui-colorpicker__palette-wrapper--hidden-picker\": !showPicker,\n \"neeto-ui-pt-3 neeto-ui-border-t neeto-ui-border-gray-200\":\n showPicker,\n })}\n >\n <Palette\n {...{ color }}\n colorList={colorPalette}\n onChange={onColorChange}\n />\n </div>\n </div>\n </Dropdown>\n );\n};\n\nColorPicker.propTypes = {\n /**\n * To specify the color value.\n */\n color: PropTypes.string,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To set the size of the target.\n */\n size: PropTypes.oneOf(Object.values(TARGET_SIZES)),\n /**\n * To specify the action to be triggered on changing the color.\n */\n onChange: PropTypes.func,\n /**\n * To specify the colors shown in the palette.\n */\n colorPalette: PropTypes.arrayOf(\n PropTypes.shape({ hex: PropTypes.string, rgb: PropTypes.string })\n ),\n /**\n * Shows eye dropper to pick color.\n */\n showEyeDropper: PropTypes.bool,\n /**\n * To show hex value near to the color in the dropdown.\n * By default it will be enabled.\n */\n showHexValue: PropTypes.bool,\n /**\n * To show transparency control. By default it will be hidden.\n */\n showTransparencyControl: PropTypes.bool,\n /**\n * To show the color picker. Used to hide the picker in cases where only palette is required. By default it will be true.\n */\n showPicker: PropTypes.bool,\n /**\n * To specify the props to be passed to the dropdown portal.\n */\n portalProps: PropTypes.object,\n};\n\nexport default ColorPicker;\n"],"names":["o","e","t","n","r","Dropper","DEFAULT_PALETTE_COLORS","hex","Palette","_ref","color","_ref$colorList","colorList","onChange","React","createElement","className","map","item","rgb","colorObject","tinycolor","isTransparent","getAlpha","isActive","Boolean","toLocaleLowerCase","key","classnames","active","onClick","style","backgroundColor","TARGET_SIZES","large","medium","small","ColorPicker","_ref2","_ref$color","_ref$size","size","_ref$onChange","noop","dropdownProps","_ref$showEyeDropper","showEyeDropper","_ref$showHexValue","showHexValue","_ref$showTransparency","showTransparencyControl","_ref$showPicker","showPicker","portalProps","colorPalette","_useState","useState","_useState2","_slicedToArray","colorInternal","setColorInternal","isInputChanged","useRef","_useEyeDropper","useEyeDropper","pickRadius","open","isSupported","PickerComponent","HexAlphaColorPicker","HexColorPicker","colorValue","getColor","isValid","toHexString","toHex8String","toRgb","onColorChange","changeHandler","onColorInputChange","current","onBlur","pickColor","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","colorResponse","wrap","_callee$","_context","prev","next","sent","sRGBHex","t0","stop","apply","arguments","Target","_ref4","type","Down","Dropdown","_extends","closeOnSelect","customTarget","label","position","_objectSpread","Fragment","Button","icon","ColorPickerIcon","HexColorInput","prefixed","alpha"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAA0F,MAAM,CAAC,CAAC,IAAI,WAAW,EAAE,OAAO,MAAM,EAAE,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAACA,MAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAACC,QAAC,CAAC,CAAC,CAAC,CAAC,CAACC,SAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAACC,WAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAM,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAACC,OAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAACJ,MAAC,EAAE,CAAC,CAAC,CAACG,WAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,GAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAACA,WAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,EAAC,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAOD,SAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;;ACG3nC,oBAAuDG;;ACHhD,IAAMC,sBAAsB,GAAG,CACpC;AAAEC,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,EAClB;AAAEA,EAAAA,GAAG,EAAE,SAAA;AAAU,CAAC,CACnB;;ACrBD,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAAC,cAAA,GAAAF,IAAA,CAAEG,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAGL,KAAAA,CAAAA,GAAAA,sBAAsB,GAAAK,cAAA;IAAEE,QAAQ,GAAAJ,IAAA,CAARI,QAAQ,CAAA;EAAA,oBACpEC,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,sIAAA;AAAsI,GAAA,EAClJJ,SAAS,CAACK,GAAG,CAAC,UAAAC,IAAI,EAAI;AACrB,IAAA,IAAQX,GAAG,GAAUW,IAAI,CAAjBX,GAAG;MAAEY,GAAG,GAAKD,IAAI,CAAZC,GAAG,CAAA;IAChB,IAAMC,WAAW,GAAGC,SAAS,CAACd,GAAG,KAAHA,IAAAA,IAAAA,GAAG,KAAHA,KAAAA,CAAAA,GAAAA,GAAG,GAAIY,GAAG,CAAC,CAAA;AACzC,IAAA,IAAMG,aAAa,GAAGF,WAAW,CAACG,QAAQ,EAAE,KAAK,CAAC,CAAA;IAClD,IAAMC,QAAQ,GAAGC,OAAO;AACtB;IACA,CAAAf,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAEgB,iBAAiB,EAAE,OAAKnB,GAAG,aAAHA,GAAG,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAHA,GAAG,CAAEmB,iBAAiB,EAAE,CAAIhB,IAAAA,KAAK,KAAKS,GAAG,CACzE,CAAA;IAED,oBACEL,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACE,MAAA,aAAA,EAAY,oBAAoB;AAChCY,MAAAA,GAAG,EAAEpB,GAAG,KAAA,IAAA,IAAHA,GAAG,KAAHA,KAAAA,CAAAA,GAAAA,GAAG,GAAIY,GAAI;AAChBH,MAAAA,SAAS,EAAEY,UAAU,CACnB,8CAA8C,EAC9C;AAAEC,QAAAA,MAAM,EAAEL,QAAAA;AAAS,OAAC,CACpB;MACFM,OAAO,EAAE,SAAAA,OAAA,GAAA;QAAA,OAAMjB,QAAQ,CAACN,GAAG,KAAA,IAAA,IAAHA,GAAG,KAAHA,KAAAA,CAAAA,GAAAA,GAAG,GAAIY,GAAG,CAAC,CAAA;AAAA,OAAA;KAEnCL,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEgB,MAAAA,KAAK,EAAE;AAAEC,QAAAA,eAAe,EAAEzB,GAAG,KAAA,IAAA,IAAHA,GAAG,KAAA,KAAA,CAAA,GAAHA,GAAG,GAAIY,GAAAA;OAAM;MACvCH,SAAS,EAAEY,UAAU,CAAC;AACpB,QAAA,wBAAwB,EAAEN,aAAAA;OAC3B,CAAA;AAAE,KAAA,CACH,CACE,CAAA;AAEV,GAAC,CAAC,CACE,CAAA;AAAA,CACP;;;;ACpBD,IAAMW,YAAY,GAAG;AACnBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,KAAK,EAAE,OAAA;AACT,CAAC,CAAA;AAED,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAA5B,IAAA,EAWX;AAAA,EAAA,IAAA6B,KAAA,CAAA;AAAA,EAAA,IAAAC,UAAA,GAAA9B,IAAA,CAVJC,KAAK;AAALA,IAAAA,KAAK,GAAA6B,UAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,UAAA;IAAAC,SAAA,GAAA/B,IAAA,CACVgC,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,KAAA,CAAA,GAAGP,YAAY,CAACC,KAAK,GAAAM,SAAA;IAAAE,aAAA,GAAAjC,IAAA,CACzBI,QAAQ;AAARA,IAAAA,QAAQ,GAAA6B,aAAA,KAAGC,KAAAA,CAAAA,GAAAA,IAAI,GAAAD,aAAA;IACfE,aAAa,GAAAnC,IAAA,CAAbmC,aAAa;IAAAC,mBAAA,GAAApC,IAAA,CACbqC,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,mBAAA;IAAAE,iBAAA,GAAAtC,IAAA,CACrBuC,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,iBAAA;IAAAE,qBAAA,GAAAxC,IAAA,CACpByC,uBAAuB;AAAvBA,IAAAA,uBAAuB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IAAAE,eAAA,GAAA1C,IAAA,CAC/B2C,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,eAAA;IACjBE,WAAW,GAAA5C,IAAA,CAAX4C,WAAW;IACXC,YAAY,GAAA7C,IAAA,CAAZ6C,YAAY,CAAA;AAEZ,EAAA,IAAAC,SAAA,GAA0CC,QAAQ,CAAC9C,KAAK,CAAC;IAAA+C,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAlDI,IAAAA,aAAa,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,gBAAgB,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AACtC,EAAA,IAAMI,cAAc,GAAGC,MAAM,CAAC,KAAK,CAAC,CAAA;EACpC,IAAAC,cAAA,GAA8BC,aAAa,CAAC;AAAEC,MAAAA,UAAU,EAAE,CAAA;AAAE,KAAC,CAAC;IAAtDC,IAAI,GAAAH,cAAA,CAAJG,IAAI;IAAEC,WAAW,GAAAJ,cAAA,CAAXI,WAAW,CAAA;AAEzB,EAAA,IAAMC,eAAe,GAAGlB,uBAAuB,GAC3CmB,mBAAmB,GACnBC,cAAc,CAAA;AAElB,EAAA,IAAMC,UAAU,GAAAjC,CAAAA,KAAA,GAAG5B,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAALA,KAAK,GAAIiD,aAAa,MAAArB,IAAAA,IAAAA,KAAA,KAAAA,KAAAA,CAAAA,GAAAA,KAAA,GAAI,EAAE,CAAA;AAE/C,EAAA,IAAMkC,QAAQ,GAAG,SAAXA,QAAQA,CAAGD,UAAU,EAAI;AAC7B,IAAA,IAAM7D,KAAK,GAAGW,SAAS,CAACkD,UAAU,CAAC,CAAA;AAEnC,IAAA,IAAI7D,KAAK,CAAC+D,OAAO,EAAE,EAAE;AACnB,MAAA,IAAIlE,GAAG,GAAGG,KAAK,CAACgE,WAAW,EAAE,CAAA;AAC7B;MACA,IAAIhE,KAAK,CAACa,QAAQ,EAAE,KAAK,CAAC,EAAEhB,GAAG,GAAGgE,UAAU,CAAC,KACxC,IAAIrB,uBAAuB,EAAE3C,GAAG,GAAGG,KAAK,CAACiE,YAAY,EAAE,CAAA;MAE5D,OAAO;AAAEpE,QAAAA,GAAG,EAAHA,GAAG;QAAEY,GAAG,EAAET,KAAK,CAACkE,KAAK,EAAA;OAAI,CAAA;AACpC,KAAA;IAEA,OAAO;AAAErE,MAAAA,GAAG,EAAEgE,UAAU;AAAEpD,MAAAA,GAAG,EAAEoD,UAAAA;KAAY,CAAA;GAC5C,CAAA;AAED,EAAA,IAAMM,aAAa,GAAG,SAAhBA,aAAaA,CAAGnE,KAAK,EAAI;IAC7B,IAAMoE,aAAa,GAAGjE,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,QAAQ,GAAI+C,gBAAgB,CAAA;AAElDkB,IAAAA,aAAa,CAACN,QAAQ,CAAC9D,KAAK,CAAC,CAAC,CAAA;GAC/B,CAAA;AAED,EAAA,IAAMqE,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGxE,GAAG,EAAI;IAChCsD,cAAc,CAACmB,OAAO,GAAG,IAAI,CAAA;IAE7BH,aAAa,CAACtE,GAAG,CAAC,CAAA;GACnB,CAAA;AAED,EAAA,IAAM0E,MAAM,GAAG,SAATA,MAAMA,GAAS;AACnB;AACA,IAAA,IAAI,CAACpB,cAAc,CAACmB,OAAO,EAAE,OAAA;IAE7BnB,cAAc,CAACmB,OAAO,GAAG,KAAK,CAAA;IAC9BH,aAAa,CAACN,UAAU,CAAC,CAAA;GAC1B,CAAA;AAED,EAAA,IAAMW,SAAS,gBAAA,YAAA;IAAA,IAAAC,KAAA,GAAAC,iBAAA,eAAAC,mBAAA,CAAAC,IAAA,CAAG,SAAAC,OAAA,GAAA;MAAA,IAAAC,aAAA,EAAAjF,GAAA,CAAA;AAAA,MAAA,OAAA8E,mBAAA,CAAAI,IAAA,CAAA,SAAAC,SAAAC,QAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;AAAA,UAAA,KAAA,CAAA;AAAAF,YAAAA,QAAA,CAAAC,IAAA,GAAA,CAAA,CAAA;AAAAD,YAAAA,QAAA,CAAAE,IAAA,GAAA,CAAA,CAAA;AAAA,YAAA,OAEc3B,IAAI,EAAE,CAAA;AAAA,UAAA,KAAA,CAAA;YAA5BsB,aAAa,GAAAG,QAAA,CAAAG,IAAA,CAAA;YACbvF,GAAG,GAAGc,SAAS,CAACmE,aAAa,CAACO,OAAO,CAAC,CAACrB,WAAW,EAAE,CAAA;YAC1DG,aAAa,CAACtE,GAAG,CAAC,CAAA;AAACoF,YAAAA,QAAA,CAAAE,IAAA,GAAA,EAAA,CAAA;AAAA,YAAA,MAAA;AAAA,UAAA,KAAA,CAAA;AAAAF,YAAAA,QAAA,CAAAC,IAAA,GAAA,CAAA,CAAA;YAAAD,QAAA,CAAAK,EAAA,GAAAL,QAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,EAAA,CAAA;AAAA,UAAA,KAAA,KAAA;YAAA,OAAAA,QAAA,CAAAM,IAAA,EAAA,CAAA;AAAA,SAAA;AAAA,OAAA,EAAAV,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;KAMtB,CAAA,CAAA,CAAA;AAAA,IAAA,OAAA,SAVKL,SAASA,GAAA;AAAA,MAAA,OAAAC,KAAA,CAAAe,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA,CAAA;AAAA,KAAA,CAAA;GAUd,EAAA,CAAA;AAED,EAAA,IAAMC,MAAM,GAAG,SAATA,MAAMA,CAAAC,KAAA,EAAA;AAAA,IAAA,IAAM5D,IAAI,GAAA4D,KAAA,CAAJ5D,IAAI,CAAA;IAAA,oBACpB3B,cAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;AACE,MAAA,SAAA,EAAQ,qBAAqB;AAC7B,MAAA,aAAA,EAAY,oBAAoB;AAChCuF,MAAAA,IAAI,EAAC,QAAQ;AACbtF,MAAAA,SAAS,EAAEY,UAAU,CAAC,8BAA8B,EAAE;AACpD,QAAA,0CAA0C,EAAEa,IAAI,KAAKR,YAAY,CAACC,KAAK;AACvE,QAAA,2CAA2C,EACzCO,IAAI,KAAKR,YAAY,CAACE,MAAM;AAC9B,QAAA,0CAA0C,EAAEM,IAAI,KAAKR,YAAY,CAACG,KAAAA;OACnE,CAAA;AAAE,KAAA,EAEFY,YAAY,iBACXlC,cAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMC,MAAAA,SAAS,EAAC,mCAAA;AAAmC,KAAA,EAAEN,KAAK,CAC3D,eACDI,cAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMC,MAAAA,SAAS,EAAC,4CAAA;KACdF,eAAAA,cAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACEC,MAAAA,SAAS,EAAC,6DAA6D;AACvEe,MAAAA,KAAK,EAAE;AAAEC,QAAAA,eAAe,EAAEuC,UAAAA;AAAW,OAAA;KACrC,CAAA,eACFzD,cAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMC,MAAAA,SAAS,EAAC,mCAAA;AAAmC,KAAA,eACjDF,cAAA,CAAAC,aAAA,CAACwF,IAAI,EAAA;AAAC9D,MAAAA,IAAI,EAAE,EAAA;KAAM,CAAA,CACb,CACF,CACA,CAAA;GACV,CAAA;AAED,EAAA,oBACE3B,cAAA,CAAAC,aAAA,CAACyF,QAAQ,EAAAC,QAAA,CAAA;AACPzF,IAAAA,SAAS,EAAC,gCAAgC;AAC1C0F,IAAAA,aAAa,EAAE,KAAM;AACrBC,IAAAA,YAAY,eAAE7F,cAAA,CAAAC,aAAA,CAACqF,MAAM,EAAA;AAAO3D,MAAAA,IAAI,EAAJA,IAAAA;KAAW,CAAA;AACvCmE,IAAAA,KAAK,EAAErC,UAAW;AAClBsC,IAAAA,QAAQ,EAAC,cAAA;AAAc,GAAA,EACnBjE,aAAa,EAAA;AACjBA,IAAAA,aAAa,EAAAkE,aAAA,CAAAA,aAAA,CAAOlE,EAAAA,EAAAA,aAAa,KAAbA,IAAAA,IAAAA,aAAa,KAAbA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,aAAa,CAAEA,aAAa,GAAKS,WAAW,CAAA;GAEhEvC,CAAAA,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,+BAAA;AAA+B,GAAA,EAC3CoC,UAAU,iBACTtC,cAAA,CAAAC,aAAA,CAAAD,cAAA,CAAAiG,QAAA,EAAA,IAAA,eACEjG,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,+BAA+B;IACzC,aAAY,EAAA,4BAAA;AAA4B,GAAA,eAExCF,cAAA,CAAAC,aAAA,CAACqD,eAAe,EAAA;AAAC1D,IAAAA,KAAK,EAAE6D,UAAW;AAAC1D,IAAAA,QAAQ,EAAEgE,aAAAA;AAAc,GAAA,CAAG,CAC3D,eACN/D,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,0FAAA;GACZ8B,EAAAA,cAAc,IAAIqB,WAAW,EAAE,iBAC9BrD,cAAA,CAAAC,aAAA,CAACiG,MAAM,EAAA;AACLhG,IAAAA,SAAS,EAAC,sCAAsC;AAChDiG,IAAAA,IAAI,EAAEC,aAAgB;AACtBzE,IAAAA,IAAI,EAAC,OAAO;AACZV,IAAAA,KAAK,EAAC,MAAM;AACZuE,IAAAA,IAAI,EAAC,QAAQ;AACbxE,IAAAA,OAAO,EAAEoD,SAAAA;GAEZ,CAAA,eACDpE,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,yBAAA;GACbF,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,kEAAkE;IAC5E,SAAQ,EAAA,4BAAA;AAA4B,GAAA,eAEpCF,cAAA,CAAAC,aAAA,CAACoG,aAAa,EAAA;AACNlC,IAAAA,MAAM,EAANA,MAAM;IACZmC,QAAQ,EAAA,IAAA;IACRC,KAAK,EAAE,CAAC,CAACnE,uBAAwB;AACjCxC,IAAAA,KAAK,EAAE6D,UAAW;AAClB1D,IAAAA,QAAQ,EAAEkE,kBAAAA;AAAmB,GAAA,CAC7B,CACE,CACF,CACF,CAET,eACDjE,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,eAAe;AAC3BC,IAAAA,SAAS,EAAEY,UAAU,CAAC,uCAAuC,EAAE;MAC7D,sDAAsD,EAAE,CAACwB,UAAU;AACnE,MAAA,0DAA0D,EACxDA,UAAAA;KACH,CAAA;AAAE,GAAA,eAEHtC,cAAA,CAAAC,aAAA,CAACP,OAAO,EAAA;AACAE,IAAAA,KAAK,EAALA,KAAK;AACXE,IAAAA,SAAS,EAAE0C,YAAa;AACxBzC,IAAAA,QAAQ,EAAEgE,aAAAA;GACV,CAAA,CACE,CACF,CACG,CAAA;AAEf;;;;","x_google_ignoreList":[0,1]}
|
package/dist/MultiEmailInput.js
CHANGED
|
@@ -11,6 +11,7 @@ import { h as hyphenize, n as noop } from './index-qrY3Z55Q.js';
|
|
|
11
11
|
import _toArray from '@babel/runtime/helpers/toArray';
|
|
12
12
|
import { Close } from '@bigbinary/neeto-icons';
|
|
13
13
|
import Tag from './Tag.js';
|
|
14
|
+
import { isPresent } from '@bigbinary/neeto-cist';
|
|
14
15
|
import Label from './Label.js';
|
|
15
16
|
import '@babel/runtime/helpers/esm/extends';
|
|
16
17
|
import '@babel/runtime/helpers/esm/objectSpread2';
|
|
@@ -32,7 +33,6 @@ import '@babel/runtime/helpers/inherits';
|
|
|
32
33
|
import '@babel/runtime/helpers/createSuper';
|
|
33
34
|
import '@babel/runtime/helpers/taggedTemplateLiteral';
|
|
34
35
|
import '@babel/runtime/helpers/typeof';
|
|
35
|
-
import '@bigbinary/neeto-cist';
|
|
36
36
|
import 'qs';
|
|
37
37
|
import './en-CJac0MnO.js';
|
|
38
38
|
import 'dayjs';
|
|
@@ -184,16 +184,21 @@ var _excluded$1 = ["label", "value"];
|
|
|
184
184
|
function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
185
185
|
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
186
186
|
var getEmailsMap = function getEmailsMap() {
|
|
187
|
-
var
|
|
188
|
-
var
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
187
|
+
var inputEmails = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
188
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
189
|
+
var emails = [].concat(_toConsumableArray(inputEmails), _toConsumableArray(options));
|
|
190
|
+
var emailsMap = new Map();
|
|
191
|
+
emails.forEach(function (option) {
|
|
192
|
+
var _emailsMap$get;
|
|
193
|
+
var hasPersistedEntry = isPresent((_emailsMap$get = emailsMap.get(option.value)) === null || _emailsMap$get === void 0 ? void 0 : _emailsMap$get.id);
|
|
194
|
+
if (!hasPersistedEntry) emailsMap.set(option.value, option);
|
|
195
|
+
});
|
|
196
|
+
return emailsMap;
|
|
192
197
|
};
|
|
193
198
|
var processEmailOptions = function processEmailOptions() {
|
|
194
|
-
var
|
|
195
|
-
var
|
|
196
|
-
var emailsMap = getEmailsMap(
|
|
199
|
+
var inputEmails = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
200
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
201
|
+
var emailsMap = getEmailsMap(inputEmails, options);
|
|
197
202
|
return function (email) {
|
|
198
203
|
var emailDetails = emailsMap.get(email) || {
|
|
199
204
|
value: email
|
|
@@ -213,7 +218,7 @@ var formatEmailInputOption = function formatEmailInputOption(_ref) {
|
|
|
213
218
|
});
|
|
214
219
|
};
|
|
215
220
|
var pruneDuplicates = function pruneDuplicates(inputValues, options) {
|
|
216
|
-
var emailProcessor = processEmailOptions(
|
|
221
|
+
var emailProcessor = processEmailOptions(inputValues, options);
|
|
217
222
|
var emails = pluck("value", inputValues);
|
|
218
223
|
var uniqueValuesSet = new Set();
|
|
219
224
|
var duplicates = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiEmailInput.js","sources":["../src/components/MultiEmailInput/constants.jsx","../src/components/MultiEmailInput/utils.js","../src/components/MultiEmailInput/index.jsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\n\nimport { Close } from \"neetoicons\";\nimport { assoc } from \"ramda\";\nimport { components } from \"react-select\";\n\nimport Tag from \"components/Tag\";\nimport { hyphenize } from \"utils\";\n\nconst STYLES = {\n border: {\n default: \"1px solid rgb(var(--neeto-ui-gray-400))\",\n error: \"1px solid rgb(var(--neeto-ui-error-800)) !important\",\n },\n color: {\n default: \"rgb(var(--neeto-ui-gray-800))\",\n error: \"rgb(var(--neeto-ui-error-800)) !important\",\n },\n};\n\nconst CustomControl = ({ children, ...props }) => {\n const { getValue } = props;\n const { isFocused, prefix } = props.selectProps;\n\n const prevValue = useRef([]);\n const controlRef = useRef(null);\n\n const value = getValue();\n\n const scrollToBottom = () => {\n const scrollContainer = controlRef.current;\n if (!scrollContainer) return;\n\n const { scrollHeight, clientHeight } = scrollContainer;\n\n scrollContainer.scrollTo({ top: scrollHeight - clientHeight });\n };\n\n useEffect(() => {\n const isItemAdded = value.length > prevValue.current.length;\n const isItemDeleted = value.length < prevValue.current.length;\n\n if ((isFocused && !isItemDeleted) || isItemAdded) scrollToBottom();\n\n prevValue.current = value;\n }, [isFocused, value]);\n\n return (\n <components.Control\n {...props}\n innerProps={{ ...props.innerProps, ref: controlRef }}\n >\n {prefix && <div className=\"neeto-ui-email-input__prefix\">{prefix}</div>}\n {children}\n </components.Control>\n );\n};\n\nconst CustomDropdownIndicator = props => {\n const { suffix } = props.selectProps;\n\n return suffix ? (\n <components.DropdownIndicator {...props}>\n <div className=\"neeto-ui-email-input__suffix\">{suffix}</div>\n </components.DropdownIndicator>\n ) : null;\n};\n\nconst MultiValueRemove = props => (\n <components.MultiValueRemove\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: `${hyphenize(props.data.label)}-remove-icon`,\n }}\n >\n <Close size={16} />\n </components.MultiValueRemove>\n);\n\nconst CustomValueContainer = ({ children, ...props }) => {\n const {\n getValue,\n selectProps: { isFocused, visibleEmailsCount, isAlwaysExpanded },\n } = props;\n const value = getValue();\n const [firstChild, ...rest] = children;\n\n const shouldCollapse =\n !isAlwaysExpanded && !isFocused && value.length > visibleEmailsCount;\n\n return (\n <components.ValueContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-input-container\",\n }}\n >\n {shouldCollapse ? firstChild.slice(0, visibleEmailsCount) : firstChild}\n {shouldCollapse && (\n <Tag\n label={`${value.length - visibleEmailsCount} more`}\n style=\"secondary\"\n />\n )}\n {rest}\n </components.ValueContainer>\n );\n};\n\nconst CustomClearIndicator = props => (\n <components.ClearIndicator\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"clear-all-button\",\n }}\n >\n <Close className=\"cursor-pointer\" size={16} />\n </components.ClearIndicator>\n);\n\nconst SelectContainer = props => (\n <components.SelectContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-select-container\",\n }}\n />\n);\n\nconst Input = props => {\n const handlePaste = event => {\n const { handleEmailChange } = props.selectProps;\n\n const text = event.clipboardData.getData(\"Text\");\n if (!EMAIL_REGEX.test(text)) return;\n\n event?.preventDefault();\n setTimeout(() => handleEmailChange(text));\n };\n\n return (\n <components.Input\n {...props}\n data-cy=\"email-select-input-field\"\n onPaste={handlePaste}\n />\n );\n};\n\nexport const EMAIL_REGEX = new RegExp(\n \"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\",\n \"i\"\n);\n\nexport const UNSTRICT_EMAIL_REGEX =\n /(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))/g;\n\nexport const EMAIL_SEPARATION_REGEX = /[^\\s,]+/g;\n\nexport const CUSTOM_STYLES = {\n input: assoc(\"overflow\", \"hidden\"),\n multiValue: (styles, { data: { valid } }) => ({\n ...styles,\n border: valid ? STYLES.border.default : STYLES.border.error,\n color: valid ? STYLES.color.default : STYLES.color.error,\n }),\n};\n\nexport const CUSTOM_COMPONENTS = {\n DropdownIndicator: CustomDropdownIndicator,\n Control: CustomControl,\n MultiValueRemove,\n ValueContainer: CustomValueContainer,\n ClearIndicator: CustomClearIndicator,\n SelectContainer,\n Input,\n};\n","import { pluck } from \"ramda\";\n\nimport { EMAIL_REGEX } from \"./constants\";\n\nconst getEmailsMap = (options = [], inputEmails = []) =>\n new Map([...inputEmails, ...options].map(option => [option.value, option]));\n\nconst processEmailOptions = (options = [], inputEmails = []) => {\n const emailsMap = getEmailsMap(options, inputEmails);\n\n return email => {\n const emailDetails = emailsMap.get(email) || { value: email };\n\n return formatEmailInputOption(emailDetails);\n };\n};\n\nexport const formatEmailInputOption = ({ label, value, ...otherDetails }) => ({\n label: label ?? value,\n value,\n ...otherDetails,\n valid: EMAIL_REGEX.test(value),\n});\n\nexport const pruneDuplicates = (inputValues, options) => {\n const emailProcessor = processEmailOptions(options, inputValues);\n const emails = pluck(\"value\", inputValues);\n const uniqueValuesSet = new Set();\n const duplicates = [];\n\n emails.forEach(pristineEmail => {\n const email = pristineEmail.toLowerCase();\n if (uniqueValuesSet.has(email)) duplicates.push(pristineEmail);\n\n uniqueValuesSet.add(email);\n });\n\n const uniqueValues = Array.from(uniqueValuesSet);\n const uniqueEmails = uniqueValues.map(emailProcessor);\n\n return { uniqueEmails, duplicates };\n};\n\nexport const renderValidEmails = values =>\n values.filter(email => email.valid && email);\n\nexport const getValidEmailsCount = values => renderValidEmails(values).length;\n\nexport const renderDefaultText = count => (count === 1 ? \"email\" : \"emails\");\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft, isEmpty } from \"ramda\";\nimport CreatableSelect from \"react-select/creatable\";\n\nimport { noop, hyphenize } from \"utils\";\n\nimport {\n EMAIL_SEPARATION_REGEX,\n CUSTOM_STYLES,\n UNSTRICT_EMAIL_REGEX,\n CUSTOM_COMPONENTS,\n} from \"./constants\";\nimport {\n pruneDuplicates,\n renderValidEmails,\n renderDefaultText,\n getValidEmailsCount,\n} from \"./utils\";\n\nimport Label from \"../Label\";\n\nconst MultiEmailInput = forwardRef(\n (\n {\n label = \"Email(s)\",\n placeholder = \"\",\n helpText = \"\",\n value = [],\n onChange = noop,\n error = \"\",\n onBlur = noop,\n filterInvalidEmails,\n counter,\n disabled = false,\n maxHeight = 200,\n required = false,\n labelProps,\n visibleEmailsCount = 3,\n isCreateable = true,\n isAlwaysExpanded = false,\n ...otherProps\n },\n ref\n ) => {\n const [inputValue, setInputValue] = useState(\"\");\n const [isFocused, setIsFocused] = useState(false);\n const [duplicateEmails, setDuplicateEmails] = useState([]);\n const [isMenuOpen, setIsMenuOpen] = useState(false);\n\n const isCounterVisible =\n !!counter &&\n (!counter.startsFrom || getValidEmailsCount(value) >= counter.startsFrom);\n\n const isOptionsPresent = !!otherProps.options;\n\n const handleFilterEmails = () => onChange(renderValidEmails(value));\n\n const handleEmailChange = inputValue => {\n if (!isCreateable) return;\n\n const inputValues = inputValue.match(EMAIL_SEPARATION_REGEX);\n const emailMatches =\n inputValue.match(UNSTRICT_EMAIL_REGEX) || inputValues || [];\n\n const emails = emailMatches.map(email => ({ value: email }));\n\n const { uniqueEmails, duplicates } = pruneDuplicates(\n [...value, ...emails],\n otherProps.options\n );\n onChange(uniqueEmails);\n setDuplicateEmails(duplicates);\n setInputValue(\"\");\n setIsMenuOpen(false);\n };\n\n const handleKeyDown = event => {\n if (!inputValue) return;\n\n switch (event.key) {\n case \"Enter\": {\n handleEmailChange(inputValue);\n !isOptionsPresent && event.preventDefault();\n event.stopPropagation();\n\n return;\n }\n case \"Tab\":\n case \",\":\n case \" \": {\n handleEmailChange(inputValue);\n event.preventDefault();\n event.stopPropagation();\n }\n }\n };\n\n const onCreateOption = input => {\n const { uniqueEmails, duplicates } = pruneDuplicates(\n [...value, { value: input }],\n otherProps.options\n );\n onChange(uniqueEmails);\n setDuplicateEmails(duplicates);\n otherProps?.onCreateOption?.(input);\n };\n\n const handleBlur = event => {\n inputValue ? handleEmailChange(inputValue) : onBlur(event);\n setIsFocused(false);\n setDuplicateEmails([]);\n };\n\n let overrideProps = {};\n\n if (isOptionsPresent) {\n const isValidNewOption = (inputValue, _, selectOptions) => {\n if (!isCreateable) return false;\n\n const isInputEmpty = isEmpty(inputValue.trim());\n const doesInputContainSeparator =\n inputValue.includes(\",\") || inputValue.includes(\" \");\n\n const isInputPresentInOptions = selectOptions.find(\n option => option.value === inputValue.toLowerCase()\n );\n\n return !(\n isInputEmpty ||\n doesInputContainSeparator ||\n isInputPresentInOptions\n );\n };\n overrideProps = { onCreateOption, isValidNewOption };\n }\n\n const isFilterEmailsLinkVisible =\n !!filterInvalidEmails && value.length > getValidEmailsCount(value);\n\n return (\n <div className=\"neeto-ui-input__wrapper neeto-ui-email-input__wrapper\">\n <div className=\"neeto-ui-email-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n className=\"neeto-ui-email-input__label\"\n data-cy={`${hyphenize(label)}-input-label`}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCounterVisible && (\n <p\n className=\"neeto-ui-email-input__counter\"\n data-cy={`${hyphenize(label)}-email-counter`}\n >\n {getValidEmailsCount(value)}{\" \"}\n {counter.label\n ? counter.label\n : renderDefaultText(getValidEmailsCount(value))}\n </p>\n )}\n </div>\n <CreatableSelect\n isMulti\n required\n classNamePrefix=\"neeto-ui-react-select\"\n components={CUSTOM_COMPONENTS}\n isDisabled={disabled}\n menuIsOpen={isMenuOpen}\n className={classnames(\n \"neeto-ui-react-select__container neeto-ui-react-select__container--medium neeto-ui-email-input__select\",\n { \"neeto-ui-react-select__container--error\": !!error }\n )}\n styles={{\n ...CUSTOM_STYLES,\n control: mergeLeft({\n maxHeight: `${maxHeight}px`,\n overflowY: \"auto\",\n }),\n }}\n onBlur={handleBlur}\n onFocus={() => setIsFocused(true)}\n onKeyDown={handleKeyDown}\n onInputChange={inputValue => {\n setIsMenuOpen(Boolean(inputValue));\n setInputValue(inputValue);\n }}\n {...{\n handleEmailChange,\n inputValue,\n isAlwaysExpanded,\n isFocused,\n onChange,\n placeholder,\n ref,\n value,\n visibleEmailsCount,\n ...(!isOptionsPresent && { menuIsOpen: false }),\n ...otherProps,\n ...overrideProps,\n }}\n />\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n >\n {error}\n {isFilterEmailsLinkVisible && (\n <span\n className=\"neeto-ui-font-semibold cursor-pointer\"\n onClick={handleFilterEmails}\n >\n \n {filterInvalidEmails.label\n ? filterInvalidEmails.label\n : \"Click here to remove invalid emails.\"}\n </span>\n )}\n </p>\n )}\n {!!helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n >\n {helpText}\n </p>\n )}\n {!!duplicateEmails.length && (\n <p\n className=\"neeto-ui-input__warning\"\n data-cy={`${hyphenize(label)}-duplicate-emails-warning`}\n >\n Duplicate emails that were removed case insensitively:{\" \"}\n {duplicateEmails.join(\", \")}\n </p>\n )}\n </div>\n );\n }\n);\n\nMultiEmailInput.displayName = \"MultiEmailInput\";\n\nMultiEmailInput.propTypes = {\n /**\n * To specify the text to be displayed above the Input field.\n */\n label: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify the text to be displayed inside the Input field.\n */\n placeholder: PropTypes.string,\n /**\n * To specify the helper text message to be displayed below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify the value to be displayed inside the Input field.\n */\n value: PropTypes.array,\n /**\n * To specify the error message to be shown below the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify the message to be shown besides the error message to filter out the invalid emails.\n */\n filterInvalidEmails: PropTypes.shape({ label: PropTypes.string }),\n /**\n * To add an email counter next to the label.\n */\n counter: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.shape({\n label: PropTypes.string,\n startsFrom: PropTypes.number,\n }),\n ]),\n /**\n * To specify the action to be triggered on modifying the Input field.\n */\n onChange: PropTypes.func,\n /**\n * To specify the action to be triggered on changing focus from the Input field.\n */\n onBlur: PropTypes.func,\n /**\n * To specify the maximum height (in pixels) of the container before it becomes scrollable.\n */\n maxHeight: PropTypes.number,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify the number of email to be displayed in the input field when not in focus.\n */\n visibleEmailsCount: PropTypes.number,\n /**\n * To specify whether a new email option can be created or not.\n */\n isCreateable: PropTypes.bool,\n /**\n * To specify whether the input field should always be shown in an expanded state or not.\n */\n isAlwaysExpanded: PropTypes.bool,\n};\n\nexport default MultiEmailInput;\n"],"names":["STYLES","border","error","color","CustomControl","_ref","children","props","_objectWithoutProperties","_excluded","getValue","_props$selectProps","selectProps","isFocused","prefix","prevValue","useRef","controlRef","value","scrollToBottom","scrollContainer","current","scrollHeight","clientHeight","scrollTo","top","useEffect","isItemAdded","length","isItemDeleted","React","createElement","components","Control","_extends","innerProps","_objectSpread","ref","className","CustomDropdownIndicator","suffix","DropdownIndicator","MultiValueRemove","_defineProperty","concat","hyphenize","data","label","Close","size","CustomValueContainer","_ref2","_excluded2","_props$selectProps2","visibleEmailsCount","isAlwaysExpanded","_children","_toArray","firstChild","rest","slice","shouldCollapse","ValueContainer","Tag","style","CustomClearIndicator","ClearIndicator","SelectContainer","Input","handlePaste","event","handleEmailChange","text","clipboardData","getData","EMAIL_REGEX","test","preventDefault","setTimeout","onPaste","RegExp","UNSTRICT_EMAIL_REGEX","EMAIL_SEPARATION_REGEX","CUSTOM_STYLES","input","assoc","multiValue","styles","_ref3","valid","CUSTOM_COMPONENTS","getEmailsMap","options","arguments","undefined","inputEmails","Map","_toConsumableArray","map","option","processEmailOptions","emailsMap","email","emailDetails","get","formatEmailInputOption","otherDetails","pruneDuplicates","inputValues","emailProcessor","emails","pluck","uniqueValuesSet","Set","duplicates","forEach","pristineEmail","toLowerCase","has","push","add","uniqueValues","Array","from","uniqueEmails","renderValidEmails","values","filter","getValidEmailsCount","renderDefaultText","count","MultiEmailInput","forwardRef","_ref$label","_ref$placeholder","placeholder","_ref$helpText","helpText","_ref$value","_ref$onChange","onChange","noop","_ref$error","_ref$onBlur","onBlur","filterInvalidEmails","counter","_ref$disabled","disabled","_ref$maxHeight","maxHeight","_ref$required","required","labelProps","_ref$visibleEmailsCou","_ref$isCreateable","isCreateable","_ref$isAlwaysExpanded","otherProps","_useState","useState","_useState2","_slicedToArray","inputValue","setInputValue","_useState3","_useState4","setIsFocused","_useState5","_useState6","duplicateEmails","setDuplicateEmails","_useState7","_useState8","isMenuOpen","setIsMenuOpen","isCounterVisible","startsFrom","isOptionsPresent","handleFilterEmails","match","emailMatches","_pruneDuplicates","handleKeyDown","key","stopPropagation","onCreateOption","_otherProps$onCreateO","_pruneDuplicates2","call","handleBlur","overrideProps","isValidNewOption","_","selectOptions","isInputEmpty","isEmpty","trim","doesInputContainSeparator","includes","isInputPresentInOptions","find","isFilterEmailsLinkVisible","Label","CreatableSelect","isMulti","classNamePrefix","isDisabled","menuIsOpen","classnames","control","mergeLeft","overflowY","onFocus","onKeyDown","onInputChange","Boolean","onClick","join","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MultiEmailInput.js","sources":["../src/components/MultiEmailInput/constants.jsx","../src/components/MultiEmailInput/utils.js","../src/components/MultiEmailInput/index.jsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\n\nimport { Close } from \"neetoicons\";\nimport { assoc } from \"ramda\";\nimport { components } from \"react-select\";\n\nimport Tag from \"components/Tag\";\nimport { hyphenize } from \"utils\";\n\nconst STYLES = {\n border: {\n default: \"1px solid rgb(var(--neeto-ui-gray-400))\",\n error: \"1px solid rgb(var(--neeto-ui-error-800)) !important\",\n },\n color: {\n default: \"rgb(var(--neeto-ui-gray-800))\",\n error: \"rgb(var(--neeto-ui-error-800)) !important\",\n },\n};\n\nconst CustomControl = ({ children, ...props }) => {\n const { getValue } = props;\n const { isFocused, prefix } = props.selectProps;\n\n const prevValue = useRef([]);\n const controlRef = useRef(null);\n\n const value = getValue();\n\n const scrollToBottom = () => {\n const scrollContainer = controlRef.current;\n if (!scrollContainer) return;\n\n const { scrollHeight, clientHeight } = scrollContainer;\n\n scrollContainer.scrollTo({ top: scrollHeight - clientHeight });\n };\n\n useEffect(() => {\n const isItemAdded = value.length > prevValue.current.length;\n const isItemDeleted = value.length < prevValue.current.length;\n\n if ((isFocused && !isItemDeleted) || isItemAdded) scrollToBottom();\n\n prevValue.current = value;\n }, [isFocused, value]);\n\n return (\n <components.Control\n {...props}\n innerProps={{ ...props.innerProps, ref: controlRef }}\n >\n {prefix && <div className=\"neeto-ui-email-input__prefix\">{prefix}</div>}\n {children}\n </components.Control>\n );\n};\n\nconst CustomDropdownIndicator = props => {\n const { suffix } = props.selectProps;\n\n return suffix ? (\n <components.DropdownIndicator {...props}>\n <div className=\"neeto-ui-email-input__suffix\">{suffix}</div>\n </components.DropdownIndicator>\n ) : null;\n};\n\nconst MultiValueRemove = props => (\n <components.MultiValueRemove\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: `${hyphenize(props.data.label)}-remove-icon`,\n }}\n >\n <Close size={16} />\n </components.MultiValueRemove>\n);\n\nconst CustomValueContainer = ({ children, ...props }) => {\n const {\n getValue,\n selectProps: { isFocused, visibleEmailsCount, isAlwaysExpanded },\n } = props;\n const value = getValue();\n const [firstChild, ...rest] = children;\n\n const shouldCollapse =\n !isAlwaysExpanded && !isFocused && value.length > visibleEmailsCount;\n\n return (\n <components.ValueContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-input-container\",\n }}\n >\n {shouldCollapse ? firstChild.slice(0, visibleEmailsCount) : firstChild}\n {shouldCollapse && (\n <Tag\n label={`${value.length - visibleEmailsCount} more`}\n style=\"secondary\"\n />\n )}\n {rest}\n </components.ValueContainer>\n );\n};\n\nconst CustomClearIndicator = props => (\n <components.ClearIndicator\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"clear-all-button\",\n }}\n >\n <Close className=\"cursor-pointer\" size={16} />\n </components.ClearIndicator>\n);\n\nconst SelectContainer = props => (\n <components.SelectContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-select-container\",\n }}\n />\n);\n\nconst Input = props => {\n const handlePaste = event => {\n const { handleEmailChange } = props.selectProps;\n\n const text = event.clipboardData.getData(\"Text\");\n if (!EMAIL_REGEX.test(text)) return;\n\n event?.preventDefault();\n setTimeout(() => handleEmailChange(text));\n };\n\n return (\n <components.Input\n {...props}\n data-cy=\"email-select-input-field\"\n onPaste={handlePaste}\n />\n );\n};\n\nexport const EMAIL_REGEX = new RegExp(\n \"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\",\n \"i\"\n);\n\nexport const UNSTRICT_EMAIL_REGEX =\n /(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))/g;\n\nexport const EMAIL_SEPARATION_REGEX = /[^\\s,]+/g;\n\nexport const CUSTOM_STYLES = {\n input: assoc(\"overflow\", \"hidden\"),\n multiValue: (styles, { data: { valid } }) => ({\n ...styles,\n border: valid ? STYLES.border.default : STYLES.border.error,\n color: valid ? STYLES.color.default : STYLES.color.error,\n }),\n};\n\nexport const CUSTOM_COMPONENTS = {\n DropdownIndicator: CustomDropdownIndicator,\n Control: CustomControl,\n MultiValueRemove,\n ValueContainer: CustomValueContainer,\n ClearIndicator: CustomClearIndicator,\n SelectContainer,\n Input,\n};\n","import { isPresent } from \"neetocist\";\nimport { pluck } from \"ramda\";\n\nimport { EMAIL_REGEX } from \"./constants\";\n\nconst getEmailsMap = (inputEmails = [], options = []) => {\n const emails = [...inputEmails, ...options];\n const emailsMap = new Map();\n\n emails.forEach(option => {\n const hasPersistedEntry = isPresent(emailsMap.get(option.value)?.id);\n if (!hasPersistedEntry) emailsMap.set(option.value, option);\n });\n\n return emailsMap;\n};\n\nconst processEmailOptions = (inputEmails = [], options = []) => {\n const emailsMap = getEmailsMap(inputEmails, options);\n\n return email => {\n const emailDetails = emailsMap.get(email) || { value: email };\n\n return formatEmailInputOption(emailDetails);\n };\n};\n\nexport const formatEmailInputOption = ({ label, value, ...otherDetails }) => ({\n label: label ?? value,\n value,\n ...otherDetails,\n valid: EMAIL_REGEX.test(value),\n});\n\nexport const pruneDuplicates = (inputValues, options) => {\n const emailProcessor = processEmailOptions(inputValues, options);\n const emails = pluck(\"value\", inputValues);\n const uniqueValuesSet = new Set();\n const duplicates = [];\n\n emails.forEach(pristineEmail => {\n const email = pristineEmail.toLowerCase();\n if (uniqueValuesSet.has(email)) duplicates.push(pristineEmail);\n\n uniqueValuesSet.add(email);\n });\n\n const uniqueValues = Array.from(uniqueValuesSet);\n const uniqueEmails = uniqueValues.map(emailProcessor);\n\n return { uniqueEmails, duplicates };\n};\n\nexport const renderValidEmails = values =>\n values.filter(email => email.valid && email);\n\nexport const getValidEmailsCount = values => renderValidEmails(values).length;\n\nexport const renderDefaultText = count => (count === 1 ? \"email\" : \"emails\");\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft, isEmpty } from \"ramda\";\nimport CreatableSelect from \"react-select/creatable\";\n\nimport { noop, hyphenize } from \"utils\";\n\nimport {\n EMAIL_SEPARATION_REGEX,\n CUSTOM_STYLES,\n UNSTRICT_EMAIL_REGEX,\n CUSTOM_COMPONENTS,\n} from \"./constants\";\nimport {\n pruneDuplicates,\n renderValidEmails,\n renderDefaultText,\n getValidEmailsCount,\n} from \"./utils\";\n\nimport Label from \"../Label\";\n\nconst MultiEmailInput = forwardRef(\n (\n {\n label = \"Email(s)\",\n placeholder = \"\",\n helpText = \"\",\n value = [],\n onChange = noop,\n error = \"\",\n onBlur = noop,\n filterInvalidEmails,\n counter,\n disabled = false,\n maxHeight = 200,\n required = false,\n labelProps,\n visibleEmailsCount = 3,\n isCreateable = true,\n isAlwaysExpanded = false,\n ...otherProps\n },\n ref\n ) => {\n const [inputValue, setInputValue] = useState(\"\");\n const [isFocused, setIsFocused] = useState(false);\n const [duplicateEmails, setDuplicateEmails] = useState([]);\n const [isMenuOpen, setIsMenuOpen] = useState(false);\n\n const isCounterVisible =\n !!counter &&\n (!counter.startsFrom || getValidEmailsCount(value) >= counter.startsFrom);\n\n const isOptionsPresent = !!otherProps.options;\n\n const handleFilterEmails = () => onChange(renderValidEmails(value));\n\n const handleEmailChange = inputValue => {\n if (!isCreateable) return;\n\n const inputValues = inputValue.match(EMAIL_SEPARATION_REGEX);\n const emailMatches =\n inputValue.match(UNSTRICT_EMAIL_REGEX) || inputValues || [];\n\n const emails = emailMatches.map(email => ({ value: email }));\n\n const { uniqueEmails, duplicates } = pruneDuplicates(\n [...value, ...emails],\n otherProps.options\n );\n onChange(uniqueEmails);\n setDuplicateEmails(duplicates);\n setInputValue(\"\");\n setIsMenuOpen(false);\n };\n\n const handleKeyDown = event => {\n if (!inputValue) return;\n\n switch (event.key) {\n case \"Enter\": {\n handleEmailChange(inputValue);\n !isOptionsPresent && event.preventDefault();\n event.stopPropagation();\n\n return;\n }\n case \"Tab\":\n case \",\":\n case \" \": {\n handleEmailChange(inputValue);\n event.preventDefault();\n event.stopPropagation();\n }\n }\n };\n\n const onCreateOption = input => {\n const { uniqueEmails, duplicates } = pruneDuplicates(\n [...value, { value: input }],\n otherProps.options\n );\n onChange(uniqueEmails);\n setDuplicateEmails(duplicates);\n otherProps?.onCreateOption?.(input);\n };\n\n const handleBlur = event => {\n inputValue ? handleEmailChange(inputValue) : onBlur(event);\n setIsFocused(false);\n setDuplicateEmails([]);\n };\n\n let overrideProps = {};\n\n if (isOptionsPresent) {\n const isValidNewOption = (inputValue, _, selectOptions) => {\n if (!isCreateable) return false;\n\n const isInputEmpty = isEmpty(inputValue.trim());\n const doesInputContainSeparator =\n inputValue.includes(\",\") || inputValue.includes(\" \");\n\n const isInputPresentInOptions = selectOptions.find(\n option => option.value === inputValue.toLowerCase()\n );\n\n return !(\n isInputEmpty ||\n doesInputContainSeparator ||\n isInputPresentInOptions\n );\n };\n overrideProps = { onCreateOption, isValidNewOption };\n }\n\n const isFilterEmailsLinkVisible =\n !!filterInvalidEmails && value.length > getValidEmailsCount(value);\n\n return (\n <div className=\"neeto-ui-input__wrapper neeto-ui-email-input__wrapper\">\n <div className=\"neeto-ui-email-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n className=\"neeto-ui-email-input__label\"\n data-cy={`${hyphenize(label)}-input-label`}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCounterVisible && (\n <p\n className=\"neeto-ui-email-input__counter\"\n data-cy={`${hyphenize(label)}-email-counter`}\n >\n {getValidEmailsCount(value)}{\" \"}\n {counter.label\n ? counter.label\n : renderDefaultText(getValidEmailsCount(value))}\n </p>\n )}\n </div>\n <CreatableSelect\n isMulti\n required\n classNamePrefix=\"neeto-ui-react-select\"\n components={CUSTOM_COMPONENTS}\n isDisabled={disabled}\n menuIsOpen={isMenuOpen}\n className={classnames(\n \"neeto-ui-react-select__container neeto-ui-react-select__container--medium neeto-ui-email-input__select\",\n { \"neeto-ui-react-select__container--error\": !!error }\n )}\n styles={{\n ...CUSTOM_STYLES,\n control: mergeLeft({\n maxHeight: `${maxHeight}px`,\n overflowY: \"auto\",\n }),\n }}\n onBlur={handleBlur}\n onFocus={() => setIsFocused(true)}\n onKeyDown={handleKeyDown}\n onInputChange={inputValue => {\n setIsMenuOpen(Boolean(inputValue));\n setInputValue(inputValue);\n }}\n {...{\n handleEmailChange,\n inputValue,\n isAlwaysExpanded,\n isFocused,\n onChange,\n placeholder,\n ref,\n value,\n visibleEmailsCount,\n ...(!isOptionsPresent && { menuIsOpen: false }),\n ...otherProps,\n ...overrideProps,\n }}\n />\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n >\n {error}\n {isFilterEmailsLinkVisible && (\n <span\n className=\"neeto-ui-font-semibold cursor-pointer\"\n onClick={handleFilterEmails}\n >\n \n {filterInvalidEmails.label\n ? filterInvalidEmails.label\n : \"Click here to remove invalid emails.\"}\n </span>\n )}\n </p>\n )}\n {!!helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n >\n {helpText}\n </p>\n )}\n {!!duplicateEmails.length && (\n <p\n className=\"neeto-ui-input__warning\"\n data-cy={`${hyphenize(label)}-duplicate-emails-warning`}\n >\n Duplicate emails that were removed case insensitively:{\" \"}\n {duplicateEmails.join(\", \")}\n </p>\n )}\n </div>\n );\n }\n);\n\nMultiEmailInput.displayName = \"MultiEmailInput\";\n\nMultiEmailInput.propTypes = {\n /**\n * To specify the text to be displayed above the Input field.\n */\n label: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify the text to be displayed inside the Input field.\n */\n placeholder: PropTypes.string,\n /**\n * To specify the helper text message to be displayed below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify the value to be displayed inside the Input field.\n */\n value: PropTypes.array,\n /**\n * To specify the error message to be shown below the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify the message to be shown besides the error message to filter out the invalid emails.\n */\n filterInvalidEmails: PropTypes.shape({ label: PropTypes.string }),\n /**\n * To add an email counter next to the label.\n */\n counter: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.shape({\n label: PropTypes.string,\n startsFrom: PropTypes.number,\n }),\n ]),\n /**\n * To specify the action to be triggered on modifying the Input field.\n */\n onChange: PropTypes.func,\n /**\n * To specify the action to be triggered on changing focus from the Input field.\n */\n onBlur: PropTypes.func,\n /**\n * To specify the maximum height (in pixels) of the container before it becomes scrollable.\n */\n maxHeight: PropTypes.number,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify the number of email to be displayed in the input field when not in focus.\n */\n visibleEmailsCount: PropTypes.number,\n /**\n * To specify whether a new email option can be created or not.\n */\n isCreateable: PropTypes.bool,\n /**\n * To specify whether the input field should always be shown in an expanded state or not.\n */\n isAlwaysExpanded: PropTypes.bool,\n};\n\nexport default MultiEmailInput;\n"],"names":["STYLES","border","error","color","CustomControl","_ref","children","props","_objectWithoutProperties","_excluded","getValue","_props$selectProps","selectProps","isFocused","prefix","prevValue","useRef","controlRef","value","scrollToBottom","scrollContainer","current","scrollHeight","clientHeight","scrollTo","top","useEffect","isItemAdded","length","isItemDeleted","React","createElement","components","Control","_extends","innerProps","_objectSpread","ref","className","CustomDropdownIndicator","suffix","DropdownIndicator","MultiValueRemove","_defineProperty","concat","hyphenize","data","label","Close","size","CustomValueContainer","_ref2","_excluded2","_props$selectProps2","visibleEmailsCount","isAlwaysExpanded","_children","_toArray","firstChild","rest","slice","shouldCollapse","ValueContainer","Tag","style","CustomClearIndicator","ClearIndicator","SelectContainer","Input","handlePaste","event","handleEmailChange","text","clipboardData","getData","EMAIL_REGEX","test","preventDefault","setTimeout","onPaste","RegExp","UNSTRICT_EMAIL_REGEX","EMAIL_SEPARATION_REGEX","CUSTOM_STYLES","input","assoc","multiValue","styles","_ref3","valid","CUSTOM_COMPONENTS","getEmailsMap","inputEmails","arguments","undefined","options","emails","_toConsumableArray","emailsMap","Map","forEach","option","_emailsMap$get","hasPersistedEntry","isPresent","get","id","set","processEmailOptions","email","emailDetails","formatEmailInputOption","otherDetails","pruneDuplicates","inputValues","emailProcessor","pluck","uniqueValuesSet","Set","duplicates","pristineEmail","toLowerCase","has","push","add","uniqueValues","Array","from","uniqueEmails","map","renderValidEmails","values","filter","getValidEmailsCount","renderDefaultText","count","MultiEmailInput","forwardRef","_ref$label","_ref$placeholder","placeholder","_ref$helpText","helpText","_ref$value","_ref$onChange","onChange","noop","_ref$error","_ref$onBlur","onBlur","filterInvalidEmails","counter","_ref$disabled","disabled","_ref$maxHeight","maxHeight","_ref$required","required","labelProps","_ref$visibleEmailsCou","_ref$isCreateable","isCreateable","_ref$isAlwaysExpanded","otherProps","_useState","useState","_useState2","_slicedToArray","inputValue","setInputValue","_useState3","_useState4","setIsFocused","_useState5","_useState6","duplicateEmails","setDuplicateEmails","_useState7","_useState8","isMenuOpen","setIsMenuOpen","isCounterVisible","startsFrom","isOptionsPresent","handleFilterEmails","match","emailMatches","_pruneDuplicates","handleKeyDown","key","stopPropagation","onCreateOption","_otherProps$onCreateO","_pruneDuplicates2","call","handleBlur","overrideProps","isValidNewOption","_","selectOptions","isInputEmpty","isEmpty","trim","doesInputContainSeparator","includes","isInputPresentInOptions","find","isFilterEmailsLinkVisible","Label","CreatableSelect","isMulti","classNamePrefix","isDisabled","menuIsOpen","classnames","control","mergeLeft","overflowY","onFocus","onKeyDown","onInputChange","Boolean","onClick","join","displayName"],"mappings":"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"}
|
package/dist/cjs/ColorPicker.js
CHANGED
|
@@ -36,36 +36,94 @@ const s=()=>"undefined"!=typeof window&&"EyeDropper"in window,i=()=>Promise.reje
|
|
|
36
36
|
|
|
37
37
|
var useEyeDropper = p
|
|
38
38
|
|
|
39
|
-
var
|
|
39
|
+
var DEFAULT_PALETTE_COLORS = [{
|
|
40
|
+
hex: "#FFFFFF"
|
|
41
|
+
}, {
|
|
42
|
+
hex: "#D6D6D6"
|
|
43
|
+
}, {
|
|
44
|
+
hex: "#676767"
|
|
45
|
+
}, {
|
|
46
|
+
hex: "#0A0E13"
|
|
47
|
+
}, {
|
|
48
|
+
hex: "#91E5F6"
|
|
49
|
+
}, {
|
|
50
|
+
hex: "#2A79C4"
|
|
51
|
+
}, {
|
|
52
|
+
hex: "#095482"
|
|
53
|
+
}, {
|
|
54
|
+
hex: "#FFCDD2"
|
|
55
|
+
}, {
|
|
56
|
+
hex: "#E2EFAC"
|
|
57
|
+
}, {
|
|
58
|
+
hex: "#B3E5FC"
|
|
59
|
+
}, {
|
|
60
|
+
hex: "#C8E6C9"
|
|
61
|
+
}, {
|
|
62
|
+
hex: "#D7CCC8"
|
|
63
|
+
}, {
|
|
64
|
+
hex: "#F5DD90"
|
|
65
|
+
}, {
|
|
66
|
+
hex: "#C3C6F9"
|
|
67
|
+
}, {
|
|
68
|
+
hex: "#FFF7AE"
|
|
69
|
+
}, {
|
|
70
|
+
hex: "#FECE1E"
|
|
71
|
+
}, {
|
|
72
|
+
hex: "#FFD69D"
|
|
73
|
+
}, {
|
|
74
|
+
hex: "#FE871E"
|
|
75
|
+
}, {
|
|
76
|
+
hex: "#02C39A"
|
|
77
|
+
}, {
|
|
78
|
+
hex: "#00A896"
|
|
79
|
+
}, {
|
|
80
|
+
hex: "#028090"
|
|
81
|
+
}, {
|
|
82
|
+
hex: "#99B898"
|
|
83
|
+
}, {
|
|
84
|
+
hex: "#586BA4"
|
|
85
|
+
}, {
|
|
86
|
+
hex: "#324376"
|
|
87
|
+
}, {
|
|
88
|
+
hex: "#FF847C"
|
|
89
|
+
}, {
|
|
90
|
+
hex: "#F32E48"
|
|
91
|
+
}, {
|
|
92
|
+
hex: "#8064CE"
|
|
93
|
+
}, {
|
|
94
|
+
hex: "#4F329A"
|
|
95
|
+
}];
|
|
40
96
|
|
|
41
97
|
var Palette = function Palette(_ref) {
|
|
42
98
|
var color = _ref.color,
|
|
43
99
|
_ref$colorList = _ref.colorList,
|
|
44
|
-
colorList = _ref$colorList === void 0 ?
|
|
100
|
+
colorList = _ref$colorList === void 0 ? DEFAULT_PALETTE_COLORS : _ref$colorList,
|
|
45
101
|
onChange = _ref.onChange;
|
|
46
102
|
return /*#__PURE__*/React.createElement("div", {
|
|
47
103
|
className: "neeto-ui-flex neeto-ui-flex-row neeto-ui-flex-wrap neeto-ui-items-start neeto-ui-justify-start neeto-ui-color-palette neeto-ui-gap-1"
|
|
48
104
|
}, colorList.map(function (item) {
|
|
49
105
|
var hex = item.hex,
|
|
50
|
-
|
|
51
|
-
var
|
|
52
|
-
var
|
|
106
|
+
rgb = item.rgb;
|
|
107
|
+
var colorObject = tinycolor.tinycolor(hex !== null && hex !== void 0 ? hex : rgb);
|
|
108
|
+
var isTransparent = colorObject.getAlpha() === 0;
|
|
109
|
+
var isActive = Boolean(
|
|
110
|
+
// hex is case insensitive.
|
|
111
|
+
(color === null || color === void 0 ? void 0 : color.toLocaleLowerCase()) === (hex === null || hex === void 0 ? void 0 : hex.toLocaleLowerCase()) || color === rgb);
|
|
53
112
|
return /*#__PURE__*/React.createElement("div", {
|
|
54
113
|
"data-testid": "color-palette-item",
|
|
55
|
-
key: hex !== null && hex !== void 0 ? hex :
|
|
114
|
+
key: hex !== null && hex !== void 0 ? hex : rgb,
|
|
56
115
|
className: classnames("neeto-ui-color-palette__item neeto-ui-border", {
|
|
57
116
|
active: isActive
|
|
58
117
|
}),
|
|
59
118
|
onClick: function onClick() {
|
|
60
|
-
return onChange(
|
|
119
|
+
return onChange(hex !== null && hex !== void 0 ? hex : rgb);
|
|
61
120
|
}
|
|
62
121
|
}, /*#__PURE__*/React.createElement("div", {
|
|
63
122
|
style: {
|
|
64
|
-
backgroundColor: hex
|
|
123
|
+
backgroundColor: hex !== null && hex !== void 0 ? hex : rgb
|
|
65
124
|
},
|
|
66
125
|
className: classnames({
|
|
67
|
-
"transparent-bg-pattern": isTransparent
|
|
68
|
-
colorClassName: !isTransparent
|
|
126
|
+
"transparent-bg-pattern": isTransparent
|
|
69
127
|
})
|
|
70
128
|
}));
|
|
71
129
|
}));
|
|
@@ -86,7 +144,6 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
86
144
|
size = _ref$size === void 0 ? TARGET_SIZES.large : _ref$size,
|
|
87
145
|
_ref$onChange = _ref.onChange,
|
|
88
146
|
onChange = _ref$onChange === void 0 ? index.noop : _ref$onChange,
|
|
89
|
-
colorPaletteProps = _ref.colorPaletteProps,
|
|
90
147
|
dropdownProps = _ref.dropdownProps,
|
|
91
148
|
_ref$showEyeDropper = _ref.showEyeDropper,
|
|
92
149
|
showEyeDropper = _ref$showEyeDropper === void 0 ? true : _ref$showEyeDropper,
|
|
@@ -96,7 +153,8 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
96
153
|
showTransparencyControl = _ref$showTransparency === void 0 ? false : _ref$showTransparency,
|
|
97
154
|
_ref$showPicker = _ref.showPicker,
|
|
98
155
|
showPicker = _ref$showPicker === void 0 ? true : _ref$showPicker,
|
|
99
|
-
portalProps = _ref.portalProps
|
|
156
|
+
portalProps = _ref.portalProps,
|
|
157
|
+
colorPalette = _ref.colorPalette;
|
|
100
158
|
var _useState = React.useState(color),
|
|
101
159
|
_useState2 = _slicedToArray(_useState, 2),
|
|
102
160
|
colorInternal = _useState2[0],
|
|
@@ -109,35 +167,39 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
109
167
|
isSupported = _useEyeDropper.isSupported;
|
|
110
168
|
var PickerComponent = showTransparencyControl ? reactColorful.HexAlphaColorPicker : reactColorful.HexColorPicker;
|
|
111
169
|
var colorValue = (_ref2 = color !== null && color !== void 0 ? color : colorInternal) !== null && _ref2 !== void 0 ? _ref2 : "";
|
|
112
|
-
var onChangeInternal = onChange || setColorInternal;
|
|
113
170
|
var getColor = function getColor(colorValue) {
|
|
114
171
|
var color = tinycolor.tinycolor(colorValue);
|
|
172
|
+
if (color.isValid()) {
|
|
173
|
+
var hex = color.toHexString();
|
|
174
|
+
// return `transparent` for transparent colors.
|
|
175
|
+
if (color.getAlpha() === 0) hex = colorValue;else if (showTransparencyControl) hex = color.toHex8String();
|
|
176
|
+
return {
|
|
177
|
+
hex: hex,
|
|
178
|
+
rgb: color.toRgb()
|
|
179
|
+
};
|
|
180
|
+
}
|
|
115
181
|
return {
|
|
116
|
-
hex:
|
|
117
|
-
rgb:
|
|
182
|
+
hex: colorValue,
|
|
183
|
+
rgb: colorValue
|
|
118
184
|
};
|
|
119
185
|
};
|
|
186
|
+
var onColorChange = function onColorChange(color) {
|
|
187
|
+
var changeHandler = onChange !== null && onChange !== void 0 ? onChange : setColorInternal;
|
|
188
|
+
changeHandler(getColor(color));
|
|
189
|
+
};
|
|
120
190
|
var onColorInputChange = function onColorInputChange(hex) {
|
|
121
|
-
var color = tinycolor.tinycolor(hex);
|
|
122
|
-
var rgb = color.toRgb();
|
|
123
191
|
isInputChanged.current = true;
|
|
124
|
-
|
|
125
|
-
hex: hex,
|
|
126
|
-
rgb: rgb
|
|
127
|
-
});
|
|
128
|
-
};
|
|
129
|
-
var onPickerChange = function onPickerChange(hex) {
|
|
130
|
-
return onChangeInternal(getColor(hex));
|
|
192
|
+
onColorChange(hex);
|
|
131
193
|
};
|
|
132
194
|
var onBlur = function onBlur() {
|
|
133
195
|
// If input is not changed, don't call onChange on blur
|
|
134
196
|
if (!isInputChanged.current) return;
|
|
135
197
|
isInputChanged.current = false;
|
|
136
|
-
|
|
198
|
+
onColorChange(colorValue);
|
|
137
199
|
};
|
|
138
200
|
var pickColor = /*#__PURE__*/function () {
|
|
139
201
|
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
140
|
-
var colorResponse,
|
|
202
|
+
var colorResponse, hex;
|
|
141
203
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
142
204
|
while (1) switch (_context.prev = _context.next) {
|
|
143
205
|
case 0:
|
|
@@ -146,8 +208,8 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
146
208
|
return open();
|
|
147
209
|
case 3:
|
|
148
210
|
colorResponse = _context.sent;
|
|
149
|
-
|
|
150
|
-
|
|
211
|
+
hex = tinycolor.tinycolor(colorResponse.sRGBHex).toHexString();
|
|
212
|
+
onColorChange(hex);
|
|
151
213
|
_context.next = 10;
|
|
152
214
|
break;
|
|
153
215
|
case 8:
|
|
@@ -206,7 +268,7 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
206
268
|
"data-testid": "neeto-color-picker-section"
|
|
207
269
|
}, /*#__PURE__*/React.createElement(PickerComponent, {
|
|
208
270
|
color: colorValue,
|
|
209
|
-
onChange:
|
|
271
|
+
onChange: onColorChange
|
|
210
272
|
})), /*#__PURE__*/React.createElement("div", {
|
|
211
273
|
className: "neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-mt-3 neeto-ui-gap-2"
|
|
212
274
|
}, showEyeDropper && isSupported() && /*#__PURE__*/React.createElement(Button, {
|
|
@@ -227,13 +289,17 @@ var ColorPicker = function ColorPicker(_ref) {
|
|
|
227
289
|
alpha: !!showTransparencyControl,
|
|
228
290
|
color: colorValue,
|
|
229
291
|
onChange: onColorInputChange
|
|
230
|
-
}))))),
|
|
292
|
+
}))))), /*#__PURE__*/React.createElement("div", {
|
|
231
293
|
"data-testid": "color-palette",
|
|
232
294
|
className: classnames("neeto-ui-colorpicker__palette-wrapper", {
|
|
233
295
|
"neeto-ui-colorpicker__palette-wrapper--hidden-picker": !showPicker,
|
|
234
296
|
"neeto-ui-pt-3 neeto-ui-border-t neeto-ui-border-gray-200": showPicker
|
|
235
297
|
})
|
|
236
|
-
}, /*#__PURE__*/React.createElement(Palette,
|
|
298
|
+
}, /*#__PURE__*/React.createElement(Palette, {
|
|
299
|
+
color: color,
|
|
300
|
+
colorList: colorPalette,
|
|
301
|
+
onChange: onColorChange
|
|
302
|
+
}))));
|
|
237
303
|
};
|
|
238
304
|
|
|
239
305
|
module.exports = ColorPicker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColorPicker.js","sources":["../../node_modules/use-eye-dropper/lib/use-eye-dropper.module.js","../../node_modules/use-eye-dropper/lib/index.module.js","../../src/components/ColorPicker/constants.js","../../src/components/ColorPicker/Palette.jsx","../../src/components/ColorPicker/index.jsx"],"sourcesContent":["import{useMemo as r,useRef as o,useCallback as n,useEffect as t,useState as e}from\"react\";const s=()=>\"undefined\"!=typeof window&&\"EyeDropper\"in window,i=()=>Promise.reject(new Error(\"Unsupported browser.\")),c=()=>{const r=o(),[i,c]=e(!1);t(()=>(r.current=!0,c(s()),()=>{r.current=!1}),[]);const u=n(()=>i,[i]);return[r,u]},u=r=>{const o=(r=>s()&&new EyeDropper(r))(r);var n;return(n=o)?EyeDropper.prototype.open.bind(n):i},p=e=>{const s=r(()=>u(e),[e]),[i,p]=c(),a=o(),f=n(()=>{void 0!==a.current&&a.current.abort()},[a]),d=n(function(r){void 0===r&&(r={});try{f();const{signal:o,...n}=r,t=new AbortController;a.current=t;const e=void 0!==o?(r=>{const o=new AbortController,n=()=>{o.abort();for(const o of r)o.removeEventListener(\"abort\",n)};for(const o of r){if(o.aborted){n();break}o.addEventListener(\"abort\",n)}return o.signal})([o,t.signal]):t.signal;return Promise.resolve(function(r,o){try{var t=Promise.resolve(s({...n,signal:e}))}catch(r){return o(r)}return t&&t.then?t.then(void 0,o):t}(0,function(r){throw i.current||(r.canceled=!0),r}))}catch(r){return Promise.reject(r)}},[a,i,f,s]);return t(()=>f,[f]),{open:d,close:f,isSupported:p}};export{p as default};\n","import { default as DropperDev } from './use-eye-dropper.module.dev.js'\nimport { default as Dropper } from './use-eye-dropper.module.js'\n\nexport default process.env.NODE_ENV === 'production' ? Dropper : DropperDev\n","export const TRANSPARENT = \"transparent\";\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport { TRANSPARENT } from \"./constants\";\n\nconst Palette = ({ color, colorList = [], onChange }) => (\n <div className=\"neeto-ui-flex neeto-ui-flex-row neeto-ui-flex-wrap neeto-ui-items-start neeto-ui-justify-start neeto-ui-color-palette neeto-ui-gap-1\">\n {colorList.map(item => {\n const { hex, colorClassName } = item;\n const isTransparent = hex === TRANSPARENT;\n\n const isActive = Boolean(\n (color?.hex && color.hex === hex) ||\n (color?.colorClassName && color.colorClassName === colorClassName)\n );\n\n return (\n <div\n data-testid=\"color-palette-item\"\n key={hex ?? colorClassName}\n className={classnames(\n \"neeto-ui-color-palette__item neeto-ui-border\",\n { active: isActive }\n )}\n onClick={() => onChange(item)}\n >\n <div\n style={{ backgroundColor: hex }}\n className={classnames({\n \"transparent-bg-pattern\": isTransparent,\n colorClassName: !isTransparent,\n })}\n />\n </div>\n );\n })}\n </div>\n);\n\nPalette.propTypes = {\n color: PropTypes.shape({\n hex: PropTypes.string,\n colorClassName: PropTypes.string,\n }),\n colorList: PropTypes.arrayOf(\n PropTypes.shape({\n hex: PropTypes.string,\n colorClassName: PropTypes.string,\n })\n ),\n onChange: PropTypes.func,\n};\n\nexport default Palette;\n","import React, { useState, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Down, ColorPicker as ColorPickerIcon } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport {\n HexColorPicker,\n HexColorInput,\n HexAlphaColorPicker,\n} from \"react-colorful\";\nimport tinycolor from \"tinycolor2\";\nimport useEyeDropper from \"use-eye-dropper\";\n\nimport Button from \"components/Button\";\nimport Dropdown from \"components/Dropdown\";\nimport { noop } from \"utils\";\n\nimport Palette from \"./Palette\";\n\nconst TARGET_SIZES = {\n large: \"large\",\n medium: \"medium\",\n small: \"small\",\n};\n\nconst ColorPicker = ({\n color = \"\",\n size = TARGET_SIZES.large,\n onChange = noop,\n colorPaletteProps,\n dropdownProps,\n showEyeDropper = true,\n showHexValue = false,\n showTransparencyControl = false,\n showPicker = true,\n portalProps,\n}) => {\n const [colorInternal, setColorInternal] = useState(color);\n const isInputChanged = useRef(false);\n const { open, isSupported } = useEyeDropper({ pickRadius: 3 });\n\n const PickerComponent = showTransparencyControl\n ? HexAlphaColorPicker\n : HexColorPicker;\n\n const colorValue = color ?? colorInternal ?? \"\";\n\n const onChangeInternal = onChange || setColorInternal;\n\n const getColor = colorValue => {\n const color = tinycolor(colorValue);\n\n return {\n hex: showTransparencyControl ? color.toHex8String() : color.toHexString(),\n rgb: color.toRgb(),\n };\n };\n\n const onColorInputChange = hex => {\n const color = tinycolor(hex);\n const rgb = color.toRgb();\n isInputChanged.current = true;\n\n onChangeInternal({ hex, rgb });\n };\n\n const onPickerChange = hex => onChangeInternal(getColor(hex));\n\n const onBlur = () => {\n // If input is not changed, don't call onChange on blur\n if (!isInputChanged.current) return;\n isInputChanged.current = false;\n onChangeInternal(getColor(colorValue));\n };\n\n const pickColor = async () => {\n try {\n const colorResponse = await open();\n const colorHex = tinycolor(colorResponse.sRGBHex).toHexString();\n onPickerChange(colorHex);\n } catch {\n // Ensures component is still mounted\n // before calling setState\n // if (!e.canceled) setError(e);\n }\n };\n\n const Target = ({ size }) => (\n <button\n data-cy=\"color-picker-target\"\n data-testid=\"neeto-color-picker\"\n type=\"button\"\n className={classnames(\"neeto-ui-colorpicker__target\", {\n \"neeto-ui-colorpicker__target-size--large\": size === TARGET_SIZES.large,\n \"neeto-ui-colorpicker__target-size--medium\":\n size === TARGET_SIZES.medium,\n \"neeto-ui-colorpicker__target-size--small\": size === TARGET_SIZES.small,\n })}\n >\n {showHexValue && (\n <span className=\"neeto-ui-colorpicker-target__code\">{color}</span>\n )}\n <span className=\"neeto-ui-colorpicker-target__color-wrapper\">\n <span\n className=\"neeto-ui-colorpicker-target__color neeto-ui-border-gray-200\"\n style={{ backgroundColor: colorValue }}\n />\n <span className=\"neeto-ui-colorpicker-target__icon\">\n <Down size={16} />\n </span>\n </span>\n </button>\n );\n\n return (\n <Dropdown\n className=\"neeto-ui-colorpicker__dropdown\"\n closeOnSelect={false}\n customTarget={<Target {...{ size }} />}\n label={colorValue}\n position=\"bottom-start\"\n {...dropdownProps}\n dropdownProps={{ ...dropdownProps?.dropdownProps, ...portalProps }}\n >\n <div className=\"neeto-ui-colorpicker__popover\">\n {showPicker && (\n <>\n <div\n className=\"neeto-ui-colorpicker__pointer\"\n data-testid=\"neeto-color-picker-section\"\n >\n <PickerComponent color={colorValue} onChange={onPickerChange} />\n </div>\n <div className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-mt-3 neeto-ui-gap-2\">\n {showEyeDropper && isSupported() && (\n <Button\n className=\"neeto-ui-colorpicker__eyedropper-btn\"\n icon={ColorPickerIcon}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n onClick={pickColor}\n />\n )}\n <div className=\"neeto-ui-input__wrapper\">\n <div\n className=\"neeto-ui-colorpicker__input neeto-ui-input neeto-ui-input--small\"\n data-cy=\"colorpicker-editable-input\"\n >\n <HexColorInput\n {...{ onBlur }}\n prefixed\n alpha={!!showTransparencyControl}\n color={colorValue}\n onChange={onColorInputChange}\n />\n </div>\n </div>\n </div>\n </>\n )}\n {colorPaletteProps && (\n <div\n data-testid=\"color-palette\"\n className={classnames(\"neeto-ui-colorpicker__palette-wrapper\", {\n \"neeto-ui-colorpicker__palette-wrapper--hidden-picker\":\n !showPicker,\n \"neeto-ui-pt-3 neeto-ui-border-t neeto-ui-border-gray-200\":\n showPicker,\n })}\n >\n <Palette {...colorPaletteProps} />\n </div>\n )}\n </div>\n </Dropdown>\n );\n};\n\nColorPicker.propTypes = {\n /**\n * To specify the color value.\n */\n color: PropTypes.string,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To set the size of the target.\n */\n size: PropTypes.oneOf(Object.values(TARGET_SIZES)),\n /**\n * To specify the action to be triggered on changing the color.\n */\n onChange: PropTypes.func,\n /**\n * To specify the props to be passed to the Palette component.\n */\n colorPaletteProps: PropTypes.shape({\n color: PropTypes.shape({\n hex: PropTypes.string,\n colorClassName: PropTypes.string,\n }),\n colorList: PropTypes.arrayOf(\n PropTypes.shape({\n hex: PropTypes.string,\n colorClassName: PropTypes.string,\n })\n ),\n onChange: PropTypes.func,\n }),\n /**\n * Shows eye dropper to pick color.\n */\n showEyeDropper: PropTypes.bool,\n /**\n * To show hex value near to the color in the dropdown.\n * By default it will be enabled.\n */\n showHexValue: PropTypes.bool,\n /**\n * To show transparency control. By default it will be hidden.\n */\n showTransparencyControl: PropTypes.bool,\n /**\n * To show the color picker. Used to hide the picker in cases where only palette is required. By default it will be true.\n */\n showPicker: PropTypes.bool,\n /**\n * To specify the props to be passed to the dropdown portal.\n */\n portalProps: PropTypes.object,\n};\n\nexport default ColorPicker;\n"],"names":["o","e","t","n","r","Dropper","TRANSPARENT","Palette","_ref","color","_ref$colorList","colorList","onChange","React","createElement","className","map","item","hex","colorClassName","isTransparent","isActive","Boolean","key","classnames","active","onClick","style","backgroundColor","TARGET_SIZES","large","medium","small","ColorPicker","_ref2","_ref$color","_ref$size","size","_ref$onChange","noop","colorPaletteProps","dropdownProps","_ref$showEyeDropper","showEyeDropper","_ref$showHexValue","showHexValue","_ref$showTransparency","showTransparencyControl","_ref$showPicker","showPicker","portalProps","_useState","useState","_useState2","_slicedToArray","colorInternal","setColorInternal","isInputChanged","useRef","_useEyeDropper","useEyeDropper","pickRadius","open","isSupported","PickerComponent","HexAlphaColorPicker","HexColorPicker","colorValue","onChangeInternal","getColor","tinycolor","toHex8String","toHexString","rgb","toRgb","onColorInputChange","current","onPickerChange","onBlur","pickColor","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","colorResponse","colorHex","wrap","_callee$","_context","prev","next","sent","sRGBHex","t0","stop","apply","arguments","Target","_ref4","type","Down","Dropdown","_extends","closeOnSelect","customTarget","label","position","_objectSpread","Fragment","Button","icon","ColorPickerIcon","HexColorInput","prefixed","alpha"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"ColorPicker.js","sources":["../../node_modules/use-eye-dropper/lib/use-eye-dropper.module.js","../../node_modules/use-eye-dropper/lib/index.module.js","../../src/components/ColorPicker/constants.js","../../src/components/ColorPicker/Palette.jsx","../../src/components/ColorPicker/index.jsx"],"sourcesContent":["import{useMemo as r,useRef as o,useCallback as n,useEffect as t,useState as e}from\"react\";const s=()=>\"undefined\"!=typeof window&&\"EyeDropper\"in window,i=()=>Promise.reject(new Error(\"Unsupported browser.\")),c=()=>{const r=o(),[i,c]=e(!1);t(()=>(r.current=!0,c(s()),()=>{r.current=!1}),[]);const u=n(()=>i,[i]);return[r,u]},u=r=>{const o=(r=>s()&&new EyeDropper(r))(r);var n;return(n=o)?EyeDropper.prototype.open.bind(n):i},p=e=>{const s=r(()=>u(e),[e]),[i,p]=c(),a=o(),f=n(()=>{void 0!==a.current&&a.current.abort()},[a]),d=n(function(r){void 0===r&&(r={});try{f();const{signal:o,...n}=r,t=new AbortController;a.current=t;const e=void 0!==o?(r=>{const o=new AbortController,n=()=>{o.abort();for(const o of r)o.removeEventListener(\"abort\",n)};for(const o of r){if(o.aborted){n();break}o.addEventListener(\"abort\",n)}return o.signal})([o,t.signal]):t.signal;return Promise.resolve(function(r,o){try{var t=Promise.resolve(s({...n,signal:e}))}catch(r){return o(r)}return t&&t.then?t.then(void 0,o):t}(0,function(r){throw i.current||(r.canceled=!0),r}))}catch(r){return Promise.reject(r)}},[a,i,f,s]);return t(()=>f,[f]),{open:d,close:f,isSupported:p}};export{p as default};\n","import { default as DropperDev } from './use-eye-dropper.module.dev.js'\nimport { default as Dropper } from './use-eye-dropper.module.js'\n\nexport default process.env.NODE_ENV === 'production' ? Dropper : DropperDev\n","export const DEFAULT_PALETTE_COLORS = [\n { hex: \"#FFFFFF\" },\n { hex: \"#D6D6D6\" },\n { hex: \"#676767\" },\n { hex: \"#0A0E13\" },\n { hex: \"#91E5F6\" },\n { hex: \"#2A79C4\" },\n { hex: \"#095482\" },\n { hex: \"#FFCDD2\" },\n { hex: \"#E2EFAC\" },\n { hex: \"#B3E5FC\" },\n { hex: \"#C8E6C9\" },\n { hex: \"#D7CCC8\" },\n { hex: \"#F5DD90\" },\n { hex: \"#C3C6F9\" },\n { hex: \"#FFF7AE\" },\n { hex: \"#FECE1E\" },\n { hex: \"#FFD69D\" },\n { hex: \"#FE871E\" },\n { hex: \"#02C39A\" },\n { hex: \"#00A896\" },\n { hex: \"#028090\" },\n { hex: \"#99B898\" },\n { hex: \"#586BA4\" },\n { hex: \"#324376\" },\n { hex: \"#FF847C\" },\n { hex: \"#F32E48\" },\n { hex: \"#8064CE\" },\n { hex: \"#4F329A\" },\n];\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport tinycolor from \"tinycolor2\";\n\nimport { DEFAULT_PALETTE_COLORS } from \"./constants\";\n\nconst Palette = ({ color, colorList = DEFAULT_PALETTE_COLORS, onChange }) => (\n <div className=\"neeto-ui-flex neeto-ui-flex-row neeto-ui-flex-wrap neeto-ui-items-start neeto-ui-justify-start neeto-ui-color-palette neeto-ui-gap-1\">\n {colorList.map(item => {\n const { hex, rgb } = item;\n const colorObject = tinycolor(hex ?? rgb);\n const isTransparent = colorObject.getAlpha() === 0;\n const isActive = Boolean(\n // hex is case insensitive.\n color?.toLocaleLowerCase() === hex?.toLocaleLowerCase() || color === rgb\n );\n\n return (\n <div\n data-testid=\"color-palette-item\"\n key={hex ?? rgb}\n className={classnames(\n \"neeto-ui-color-palette__item neeto-ui-border\",\n { active: isActive }\n )}\n onClick={() => onChange(hex ?? rgb)}\n >\n <div\n style={{ backgroundColor: hex ?? rgb }}\n className={classnames({\n \"transparent-bg-pattern\": isTransparent,\n })}\n />\n </div>\n );\n })}\n </div>\n);\n\nPalette.propTypes = {\n color: PropTypes.string,\n colorList: PropTypes.arrayOf(\n PropTypes.shape({ hex: PropTypes.string, rgb: PropTypes.string })\n ),\n onChange: PropTypes.func,\n};\n\nexport default Palette;\n","import React, { useState, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Down, ColorPicker as ColorPickerIcon } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport {\n HexColorPicker,\n HexColorInput,\n HexAlphaColorPicker,\n} from \"react-colorful\";\nimport tinycolor from \"tinycolor2\";\nimport useEyeDropper from \"use-eye-dropper\";\n\nimport Button from \"components/Button\";\nimport Dropdown from \"components/Dropdown\";\nimport { noop } from \"utils\";\n\nimport Palette from \"./Palette\";\n\nconst TARGET_SIZES = {\n large: \"large\",\n medium: \"medium\",\n small: \"small\",\n};\n\nconst ColorPicker = ({\n color = \"\",\n size = TARGET_SIZES.large,\n onChange = noop,\n dropdownProps,\n showEyeDropper = true,\n showHexValue = false,\n showTransparencyControl = false,\n showPicker = true,\n portalProps,\n colorPalette,\n}) => {\n const [colorInternal, setColorInternal] = useState(color);\n const isInputChanged = useRef(false);\n const { open, isSupported } = useEyeDropper({ pickRadius: 3 });\n\n const PickerComponent = showTransparencyControl\n ? HexAlphaColorPicker\n : HexColorPicker;\n\n const colorValue = color ?? colorInternal ?? \"\";\n\n const getColor = colorValue => {\n const color = tinycolor(colorValue);\n\n if (color.isValid()) {\n let hex = color.toHexString();\n // return `transparent` for transparent colors.\n if (color.getAlpha() === 0) hex = colorValue;\n else if (showTransparencyControl) hex = color.toHex8String();\n\n return { hex, rgb: color.toRgb() };\n }\n\n return { hex: colorValue, rgb: colorValue };\n };\n\n const onColorChange = color => {\n const changeHandler = onChange ?? setColorInternal;\n\n changeHandler(getColor(color));\n };\n\n const onColorInputChange = hex => {\n isInputChanged.current = true;\n\n onColorChange(hex);\n };\n\n const onBlur = () => {\n // If input is not changed, don't call onChange on blur\n if (!isInputChanged.current) return;\n\n isInputChanged.current = false;\n onColorChange(colorValue);\n };\n\n const pickColor = async () => {\n try {\n const colorResponse = await open();\n const hex = tinycolor(colorResponse.sRGBHex).toHexString();\n onColorChange(hex);\n } catch {\n // Ensures component is still mounted\n // before calling setState\n // if (!e.canceled) setError(e);\n }\n };\n\n const Target = ({ size }) => (\n <button\n data-cy=\"color-picker-target\"\n data-testid=\"neeto-color-picker\"\n type=\"button\"\n className={classnames(\"neeto-ui-colorpicker__target\", {\n \"neeto-ui-colorpicker__target-size--large\": size === TARGET_SIZES.large,\n \"neeto-ui-colorpicker__target-size--medium\":\n size === TARGET_SIZES.medium,\n \"neeto-ui-colorpicker__target-size--small\": size === TARGET_SIZES.small,\n })}\n >\n {showHexValue && (\n <span className=\"neeto-ui-colorpicker-target__code\">{color}</span>\n )}\n <span className=\"neeto-ui-colorpicker-target__color-wrapper\">\n <span\n className=\"neeto-ui-colorpicker-target__color neeto-ui-border-gray-200\"\n style={{ backgroundColor: colorValue }}\n />\n <span className=\"neeto-ui-colorpicker-target__icon\">\n <Down size={16} />\n </span>\n </span>\n </button>\n );\n\n return (\n <Dropdown\n className=\"neeto-ui-colorpicker__dropdown\"\n closeOnSelect={false}\n customTarget={<Target {...{ size }} />}\n label={colorValue}\n position=\"bottom-start\"\n {...dropdownProps}\n dropdownProps={{ ...dropdownProps?.dropdownProps, ...portalProps }}\n >\n <div className=\"neeto-ui-colorpicker__popover\">\n {showPicker && (\n <>\n <div\n className=\"neeto-ui-colorpicker__pointer\"\n data-testid=\"neeto-color-picker-section\"\n >\n <PickerComponent color={colorValue} onChange={onColorChange} />\n </div>\n <div className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-mt-3 neeto-ui-gap-2\">\n {showEyeDropper && isSupported() && (\n <Button\n className=\"neeto-ui-colorpicker__eyedropper-btn\"\n icon={ColorPickerIcon}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n onClick={pickColor}\n />\n )}\n <div className=\"neeto-ui-input__wrapper\">\n <div\n className=\"neeto-ui-colorpicker__input neeto-ui-input neeto-ui-input--small\"\n data-cy=\"colorpicker-editable-input\"\n >\n <HexColorInput\n {...{ onBlur }}\n prefixed\n alpha={!!showTransparencyControl}\n color={colorValue}\n onChange={onColorInputChange}\n />\n </div>\n </div>\n </div>\n </>\n )}\n <div\n data-testid=\"color-palette\"\n className={classnames(\"neeto-ui-colorpicker__palette-wrapper\", {\n \"neeto-ui-colorpicker__palette-wrapper--hidden-picker\": !showPicker,\n \"neeto-ui-pt-3 neeto-ui-border-t neeto-ui-border-gray-200\":\n showPicker,\n })}\n >\n <Palette\n {...{ color }}\n colorList={colorPalette}\n onChange={onColorChange}\n />\n </div>\n </div>\n </Dropdown>\n );\n};\n\nColorPicker.propTypes = {\n /**\n * To specify the color value.\n */\n color: PropTypes.string,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To set the size of the target.\n */\n size: PropTypes.oneOf(Object.values(TARGET_SIZES)),\n /**\n * To specify the action to be triggered on changing the color.\n */\n onChange: PropTypes.func,\n /**\n * To specify the colors shown in the palette.\n */\n colorPalette: PropTypes.arrayOf(\n PropTypes.shape({ hex: PropTypes.string, rgb: PropTypes.string })\n ),\n /**\n * Shows eye dropper to pick color.\n */\n showEyeDropper: PropTypes.bool,\n /**\n * To show hex value near to the color in the dropdown.\n * By default it will be enabled.\n */\n showHexValue: PropTypes.bool,\n /**\n * To show transparency control. By default it will be hidden.\n */\n showTransparencyControl: PropTypes.bool,\n /**\n * To show the color picker. Used to hide the picker in cases where only palette is required. By default it will be true.\n */\n showPicker: PropTypes.bool,\n /**\n * To specify the props to be passed to the dropdown portal.\n */\n portalProps: PropTypes.object,\n};\n\nexport default ColorPicker;\n"],"names":["o","e","t","n","r","Dropper","DEFAULT_PALETTE_COLORS","hex","Palette","_ref","color","_ref$colorList","colorList","onChange","React","createElement","className","map","item","rgb","colorObject","tinycolor","isTransparent","getAlpha","isActive","Boolean","toLocaleLowerCase","key","classnames","active","onClick","style","backgroundColor","TARGET_SIZES","large","medium","small","ColorPicker","_ref2","_ref$color","_ref$size","size","_ref$onChange","noop","dropdownProps","_ref$showEyeDropper","showEyeDropper","_ref$showHexValue","showHexValue","_ref$showTransparency","showTransparencyControl","_ref$showPicker","showPicker","portalProps","colorPalette","_useState","useState","_useState2","_slicedToArray","colorInternal","setColorInternal","isInputChanged","useRef","_useEyeDropper","useEyeDropper","pickRadius","open","isSupported","PickerComponent","HexAlphaColorPicker","HexColorPicker","colorValue","getColor","isValid","toHexString","toHex8String","toRgb","onColorChange","changeHandler","onColorInputChange","current","onBlur","pickColor","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","colorResponse","wrap","_callee$","_context","prev","next","sent","sRGBHex","t0","stop","apply","arguments","Target","_ref4","type","Down","Dropdown","_extends","closeOnSelect","customTarget","label","position","_objectSpread","Fragment","Button","icon","ColorPickerIcon","HexColorInput","prefixed","alpha"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
@@ -13,6 +13,7 @@ var index = require('./index-CeDeXLYn.js');
|
|
|
13
13
|
var _toArray = require('@babel/runtime/helpers/toArray');
|
|
14
14
|
var neetoIcons = require('@bigbinary/neeto-icons');
|
|
15
15
|
var Tag = require('./Tag.js');
|
|
16
|
+
var neetoCist = require('@bigbinary/neeto-cist');
|
|
16
17
|
var Label = require('./Label.js');
|
|
17
18
|
require('@babel/runtime/helpers/esm/extends');
|
|
18
19
|
require('@babel/runtime/helpers/esm/objectSpread2');
|
|
@@ -34,7 +35,6 @@ require('@babel/runtime/helpers/inherits');
|
|
|
34
35
|
require('@babel/runtime/helpers/createSuper');
|
|
35
36
|
require('@babel/runtime/helpers/taggedTemplateLiteral');
|
|
36
37
|
require('@babel/runtime/helpers/typeof');
|
|
37
|
-
require('@bigbinary/neeto-cist');
|
|
38
38
|
require('qs');
|
|
39
39
|
require('./en-1dfvTYgC.js');
|
|
40
40
|
require('dayjs');
|
|
@@ -186,16 +186,21 @@ var _excluded$1 = ["label", "value"];
|
|
|
186
186
|
function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
187
187
|
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
188
188
|
var getEmailsMap = function getEmailsMap() {
|
|
189
|
-
var
|
|
190
|
-
var
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
189
|
+
var inputEmails = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
190
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
191
|
+
var emails = [].concat(_toConsumableArray(inputEmails), _toConsumableArray(options));
|
|
192
|
+
var emailsMap = new Map();
|
|
193
|
+
emails.forEach(function (option) {
|
|
194
|
+
var _emailsMap$get;
|
|
195
|
+
var hasPersistedEntry = neetoCist.isPresent((_emailsMap$get = emailsMap.get(option.value)) === null || _emailsMap$get === void 0 ? void 0 : _emailsMap$get.id);
|
|
196
|
+
if (!hasPersistedEntry) emailsMap.set(option.value, option);
|
|
197
|
+
});
|
|
198
|
+
return emailsMap;
|
|
194
199
|
};
|
|
195
200
|
var processEmailOptions = function processEmailOptions() {
|
|
196
|
-
var
|
|
197
|
-
var
|
|
198
|
-
var emailsMap = getEmailsMap(
|
|
201
|
+
var inputEmails = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
202
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
203
|
+
var emailsMap = getEmailsMap(inputEmails, options);
|
|
199
204
|
return function (email) {
|
|
200
205
|
var emailDetails = emailsMap.get(email) || {
|
|
201
206
|
value: email
|
|
@@ -215,7 +220,7 @@ var formatEmailInputOption = function formatEmailInputOption(_ref) {
|
|
|
215
220
|
});
|
|
216
221
|
};
|
|
217
222
|
var pruneDuplicates = function pruneDuplicates(inputValues, options) {
|
|
218
|
-
var emailProcessor = processEmailOptions(
|
|
223
|
+
var emailProcessor = processEmailOptions(inputValues, options);
|
|
219
224
|
var emails = ramda.pluck("value", inputValues);
|
|
220
225
|
var uniqueValuesSet = new Set();
|
|
221
226
|
var duplicates = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiEmailInput.js","sources":["../../src/components/MultiEmailInput/constants.jsx","../../src/components/MultiEmailInput/utils.js","../../src/components/MultiEmailInput/index.jsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\n\nimport { Close } from \"neetoicons\";\nimport { assoc } from \"ramda\";\nimport { components } from \"react-select\";\n\nimport Tag from \"components/Tag\";\nimport { hyphenize } from \"utils\";\n\nconst STYLES = {\n border: {\n default: \"1px solid rgb(var(--neeto-ui-gray-400))\",\n error: \"1px solid rgb(var(--neeto-ui-error-800)) !important\",\n },\n color: {\n default: \"rgb(var(--neeto-ui-gray-800))\",\n error: \"rgb(var(--neeto-ui-error-800)) !important\",\n },\n};\n\nconst CustomControl = ({ children, ...props }) => {\n const { getValue } = props;\n const { isFocused, prefix } = props.selectProps;\n\n const prevValue = useRef([]);\n const controlRef = useRef(null);\n\n const value = getValue();\n\n const scrollToBottom = () => {\n const scrollContainer = controlRef.current;\n if (!scrollContainer) return;\n\n const { scrollHeight, clientHeight } = scrollContainer;\n\n scrollContainer.scrollTo({ top: scrollHeight - clientHeight });\n };\n\n useEffect(() => {\n const isItemAdded = value.length > prevValue.current.length;\n const isItemDeleted = value.length < prevValue.current.length;\n\n if ((isFocused && !isItemDeleted) || isItemAdded) scrollToBottom();\n\n prevValue.current = value;\n }, [isFocused, value]);\n\n return (\n <components.Control\n {...props}\n innerProps={{ ...props.innerProps, ref: controlRef }}\n >\n {prefix && <div className=\"neeto-ui-email-input__prefix\">{prefix}</div>}\n {children}\n </components.Control>\n );\n};\n\nconst CustomDropdownIndicator = props => {\n const { suffix } = props.selectProps;\n\n return suffix ? (\n <components.DropdownIndicator {...props}>\n <div className=\"neeto-ui-email-input__suffix\">{suffix}</div>\n </components.DropdownIndicator>\n ) : null;\n};\n\nconst MultiValueRemove = props => (\n <components.MultiValueRemove\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: `${hyphenize(props.data.label)}-remove-icon`,\n }}\n >\n <Close size={16} />\n </components.MultiValueRemove>\n);\n\nconst CustomValueContainer = ({ children, ...props }) => {\n const {\n getValue,\n selectProps: { isFocused, visibleEmailsCount, isAlwaysExpanded },\n } = props;\n const value = getValue();\n const [firstChild, ...rest] = children;\n\n const shouldCollapse =\n !isAlwaysExpanded && !isFocused && value.length > visibleEmailsCount;\n\n return (\n <components.ValueContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-input-container\",\n }}\n >\n {shouldCollapse ? firstChild.slice(0, visibleEmailsCount) : firstChild}\n {shouldCollapse && (\n <Tag\n label={`${value.length - visibleEmailsCount} more`}\n style=\"secondary\"\n />\n )}\n {rest}\n </components.ValueContainer>\n );\n};\n\nconst CustomClearIndicator = props => (\n <components.ClearIndicator\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"clear-all-button\",\n }}\n >\n <Close className=\"cursor-pointer\" size={16} />\n </components.ClearIndicator>\n);\n\nconst SelectContainer = props => (\n <components.SelectContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-select-container\",\n }}\n />\n);\n\nconst Input = props => {\n const handlePaste = event => {\n const { handleEmailChange } = props.selectProps;\n\n const text = event.clipboardData.getData(\"Text\");\n if (!EMAIL_REGEX.test(text)) return;\n\n event?.preventDefault();\n setTimeout(() => handleEmailChange(text));\n };\n\n return (\n <components.Input\n {...props}\n data-cy=\"email-select-input-field\"\n onPaste={handlePaste}\n />\n );\n};\n\nexport const EMAIL_REGEX = new RegExp(\n \"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\",\n \"i\"\n);\n\nexport const UNSTRICT_EMAIL_REGEX =\n /(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))/g;\n\nexport const EMAIL_SEPARATION_REGEX = /[^\\s,]+/g;\n\nexport const CUSTOM_STYLES = {\n input: assoc(\"overflow\", \"hidden\"),\n multiValue: (styles, { data: { valid } }) => ({\n ...styles,\n border: valid ? STYLES.border.default : STYLES.border.error,\n color: valid ? STYLES.color.default : STYLES.color.error,\n }),\n};\n\nexport const CUSTOM_COMPONENTS = {\n DropdownIndicator: CustomDropdownIndicator,\n Control: CustomControl,\n MultiValueRemove,\n ValueContainer: CustomValueContainer,\n ClearIndicator: CustomClearIndicator,\n SelectContainer,\n Input,\n};\n","import { pluck } from \"ramda\";\n\nimport { EMAIL_REGEX } from \"./constants\";\n\nconst getEmailsMap = (options = [], inputEmails = []) =>\n new Map([...inputEmails, ...options].map(option => [option.value, option]));\n\nconst processEmailOptions = (options = [], inputEmails = []) => {\n const emailsMap = getEmailsMap(options, inputEmails);\n\n return email => {\n const emailDetails = emailsMap.get(email) || { value: email };\n\n return formatEmailInputOption(emailDetails);\n };\n};\n\nexport const formatEmailInputOption = ({ label, value, ...otherDetails }) => ({\n label: label ?? value,\n value,\n ...otherDetails,\n valid: EMAIL_REGEX.test(value),\n});\n\nexport const pruneDuplicates = (inputValues, options) => {\n const emailProcessor = processEmailOptions(options, inputValues);\n const emails = pluck(\"value\", inputValues);\n const uniqueValuesSet = new Set();\n const duplicates = [];\n\n emails.forEach(pristineEmail => {\n const email = pristineEmail.toLowerCase();\n if (uniqueValuesSet.has(email)) duplicates.push(pristineEmail);\n\n uniqueValuesSet.add(email);\n });\n\n const uniqueValues = Array.from(uniqueValuesSet);\n const uniqueEmails = uniqueValues.map(emailProcessor);\n\n return { uniqueEmails, duplicates };\n};\n\nexport const renderValidEmails = values =>\n values.filter(email => email.valid && email);\n\nexport const getValidEmailsCount = values => renderValidEmails(values).length;\n\nexport const renderDefaultText = count => (count === 1 ? \"email\" : \"emails\");\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft, isEmpty } from \"ramda\";\nimport CreatableSelect from \"react-select/creatable\";\n\nimport { noop, hyphenize } from \"utils\";\n\nimport {\n EMAIL_SEPARATION_REGEX,\n CUSTOM_STYLES,\n UNSTRICT_EMAIL_REGEX,\n CUSTOM_COMPONENTS,\n} from \"./constants\";\nimport {\n pruneDuplicates,\n renderValidEmails,\n renderDefaultText,\n getValidEmailsCount,\n} from \"./utils\";\n\nimport Label from \"../Label\";\n\nconst MultiEmailInput = forwardRef(\n (\n {\n label = \"Email(s)\",\n placeholder = \"\",\n helpText = \"\",\n value = [],\n onChange = noop,\n error = \"\",\n onBlur = noop,\n filterInvalidEmails,\n counter,\n disabled = false,\n maxHeight = 200,\n required = false,\n labelProps,\n visibleEmailsCount = 3,\n isCreateable = true,\n isAlwaysExpanded = false,\n ...otherProps\n },\n ref\n ) => {\n const [inputValue, setInputValue] = useState(\"\");\n const [isFocused, setIsFocused] = useState(false);\n const [duplicateEmails, setDuplicateEmails] = useState([]);\n const [isMenuOpen, setIsMenuOpen] = useState(false);\n\n const isCounterVisible =\n !!counter &&\n (!counter.startsFrom || getValidEmailsCount(value) >= counter.startsFrom);\n\n const isOptionsPresent = !!otherProps.options;\n\n const handleFilterEmails = () => onChange(renderValidEmails(value));\n\n const handleEmailChange = inputValue => {\n if (!isCreateable) return;\n\n const inputValues = inputValue.match(EMAIL_SEPARATION_REGEX);\n const emailMatches =\n inputValue.match(UNSTRICT_EMAIL_REGEX) || inputValues || [];\n\n const emails = emailMatches.map(email => ({ value: email }));\n\n const { uniqueEmails, duplicates } = pruneDuplicates(\n [...value, ...emails],\n otherProps.options\n );\n onChange(uniqueEmails);\n setDuplicateEmails(duplicates);\n setInputValue(\"\");\n setIsMenuOpen(false);\n };\n\n const handleKeyDown = event => {\n if (!inputValue) return;\n\n switch (event.key) {\n case \"Enter\": {\n handleEmailChange(inputValue);\n !isOptionsPresent && event.preventDefault();\n event.stopPropagation();\n\n return;\n }\n case \"Tab\":\n case \",\":\n case \" \": {\n handleEmailChange(inputValue);\n event.preventDefault();\n event.stopPropagation();\n }\n }\n };\n\n const onCreateOption = input => {\n const { uniqueEmails, duplicates } = pruneDuplicates(\n [...value, { value: input }],\n otherProps.options\n );\n onChange(uniqueEmails);\n setDuplicateEmails(duplicates);\n otherProps?.onCreateOption?.(input);\n };\n\n const handleBlur = event => {\n inputValue ? handleEmailChange(inputValue) : onBlur(event);\n setIsFocused(false);\n setDuplicateEmails([]);\n };\n\n let overrideProps = {};\n\n if (isOptionsPresent) {\n const isValidNewOption = (inputValue, _, selectOptions) => {\n if (!isCreateable) return false;\n\n const isInputEmpty = isEmpty(inputValue.trim());\n const doesInputContainSeparator =\n inputValue.includes(\",\") || inputValue.includes(\" \");\n\n const isInputPresentInOptions = selectOptions.find(\n option => option.value === inputValue.toLowerCase()\n );\n\n return !(\n isInputEmpty ||\n doesInputContainSeparator ||\n isInputPresentInOptions\n );\n };\n overrideProps = { onCreateOption, isValidNewOption };\n }\n\n const isFilterEmailsLinkVisible =\n !!filterInvalidEmails && value.length > getValidEmailsCount(value);\n\n return (\n <div className=\"neeto-ui-input__wrapper neeto-ui-email-input__wrapper\">\n <div className=\"neeto-ui-email-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n className=\"neeto-ui-email-input__label\"\n data-cy={`${hyphenize(label)}-input-label`}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCounterVisible && (\n <p\n className=\"neeto-ui-email-input__counter\"\n data-cy={`${hyphenize(label)}-email-counter`}\n >\n {getValidEmailsCount(value)}{\" \"}\n {counter.label\n ? counter.label\n : renderDefaultText(getValidEmailsCount(value))}\n </p>\n )}\n </div>\n <CreatableSelect\n isMulti\n required\n classNamePrefix=\"neeto-ui-react-select\"\n components={CUSTOM_COMPONENTS}\n isDisabled={disabled}\n menuIsOpen={isMenuOpen}\n className={classnames(\n \"neeto-ui-react-select__container neeto-ui-react-select__container--medium neeto-ui-email-input__select\",\n { \"neeto-ui-react-select__container--error\": !!error }\n )}\n styles={{\n ...CUSTOM_STYLES,\n control: mergeLeft({\n maxHeight: `${maxHeight}px`,\n overflowY: \"auto\",\n }),\n }}\n onBlur={handleBlur}\n onFocus={() => setIsFocused(true)}\n onKeyDown={handleKeyDown}\n onInputChange={inputValue => {\n setIsMenuOpen(Boolean(inputValue));\n setInputValue(inputValue);\n }}\n {...{\n handleEmailChange,\n inputValue,\n isAlwaysExpanded,\n isFocused,\n onChange,\n placeholder,\n ref,\n value,\n visibleEmailsCount,\n ...(!isOptionsPresent && { menuIsOpen: false }),\n ...otherProps,\n ...overrideProps,\n }}\n />\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n >\n {error}\n {isFilterEmailsLinkVisible && (\n <span\n className=\"neeto-ui-font-semibold cursor-pointer\"\n onClick={handleFilterEmails}\n >\n \n {filterInvalidEmails.label\n ? filterInvalidEmails.label\n : \"Click here to remove invalid emails.\"}\n </span>\n )}\n </p>\n )}\n {!!helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n >\n {helpText}\n </p>\n )}\n {!!duplicateEmails.length && (\n <p\n className=\"neeto-ui-input__warning\"\n data-cy={`${hyphenize(label)}-duplicate-emails-warning`}\n >\n Duplicate emails that were removed case insensitively:{\" \"}\n {duplicateEmails.join(\", \")}\n </p>\n )}\n </div>\n );\n }\n);\n\nMultiEmailInput.displayName = \"MultiEmailInput\";\n\nMultiEmailInput.propTypes = {\n /**\n * To specify the text to be displayed above the Input field.\n */\n label: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify the text to be displayed inside the Input field.\n */\n placeholder: PropTypes.string,\n /**\n * To specify the helper text message to be displayed below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify the value to be displayed inside the Input field.\n */\n value: PropTypes.array,\n /**\n * To specify the error message to be shown below the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify the message to be shown besides the error message to filter out the invalid emails.\n */\n filterInvalidEmails: PropTypes.shape({ label: PropTypes.string }),\n /**\n * To add an email counter next to the label.\n */\n counter: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.shape({\n label: PropTypes.string,\n startsFrom: PropTypes.number,\n }),\n ]),\n /**\n * To specify the action to be triggered on modifying the Input field.\n */\n onChange: PropTypes.func,\n /**\n * To specify the action to be triggered on changing focus from the Input field.\n */\n onBlur: PropTypes.func,\n /**\n * To specify the maximum height (in pixels) of the container before it becomes scrollable.\n */\n maxHeight: PropTypes.number,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify the number of email to be displayed in the input field when not in focus.\n */\n visibleEmailsCount: PropTypes.number,\n /**\n * To specify whether a new email option can be created or not.\n */\n isCreateable: PropTypes.bool,\n /**\n * To specify whether the input field should always be shown in an expanded state or not.\n */\n isAlwaysExpanded: PropTypes.bool,\n};\n\nexport default MultiEmailInput;\n"],"names":["STYLES","border","error","color","CustomControl","_ref","children","props","_objectWithoutProperties","_excluded","getValue","_props$selectProps","selectProps","isFocused","prefix","prevValue","useRef","controlRef","value","scrollToBottom","scrollContainer","current","scrollHeight","clientHeight","scrollTo","top","useEffect","isItemAdded","length","isItemDeleted","React","createElement","components","Control","_extends","innerProps","_objectSpread","ref","className","CustomDropdownIndicator","suffix","DropdownIndicator","MultiValueRemove","_defineProperty","concat","hyphenize","data","label","Close","size","CustomValueContainer","_ref2","_excluded2","_props$selectProps2","visibleEmailsCount","isAlwaysExpanded","_children","_toArray","firstChild","rest","slice","shouldCollapse","ValueContainer","Tag","style","CustomClearIndicator","ClearIndicator","SelectContainer","Input","handlePaste","event","handleEmailChange","text","clipboardData","getData","EMAIL_REGEX","test","preventDefault","setTimeout","onPaste","RegExp","UNSTRICT_EMAIL_REGEX","EMAIL_SEPARATION_REGEX","CUSTOM_STYLES","input","assoc","multiValue","styles","_ref3","valid","CUSTOM_COMPONENTS","getEmailsMap","options","arguments","undefined","inputEmails","Map","_toConsumableArray","map","option","processEmailOptions","emailsMap","email","emailDetails","get","formatEmailInputOption","otherDetails","pruneDuplicates","inputValues","emailProcessor","emails","pluck","uniqueValuesSet","Set","duplicates","forEach","pristineEmail","toLowerCase","has","push","add","uniqueValues","Array","from","uniqueEmails","renderValidEmails","values","filter","getValidEmailsCount","renderDefaultText","count","MultiEmailInput","forwardRef","_ref$label","_ref$placeholder","placeholder","_ref$helpText","helpText","_ref$value","_ref$onChange","onChange","noop","_ref$error","_ref$onBlur","onBlur","filterInvalidEmails","counter","_ref$disabled","disabled","_ref$maxHeight","maxHeight","_ref$required","required","labelProps","_ref$visibleEmailsCou","_ref$isCreateable","isCreateable","_ref$isAlwaysExpanded","otherProps","_useState","useState","_useState2","_slicedToArray","inputValue","setInputValue","_useState3","_useState4","setIsFocused","_useState5","_useState6","duplicateEmails","setDuplicateEmails","_useState7","_useState8","isMenuOpen","setIsMenuOpen","isCounterVisible","startsFrom","isOptionsPresent","handleFilterEmails","match","emailMatches","_pruneDuplicates","handleKeyDown","key","stopPropagation","onCreateOption","_otherProps$onCreateO","_pruneDuplicates2","call","handleBlur","overrideProps","isValidNewOption","_","selectOptions","isInputEmpty","isEmpty","trim","doesInputContainSeparator","includes","isInputPresentInOptions","find","isFilterEmailsLinkVisible","Label","CreatableSelect","isMulti","classNamePrefix","isDisabled","menuIsOpen","classnames","control","mergeLeft","overflowY","onFocus","onKeyDown","onInputChange","Boolean","onClick","join","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MultiEmailInput.js","sources":["../../src/components/MultiEmailInput/constants.jsx","../../src/components/MultiEmailInput/utils.js","../../src/components/MultiEmailInput/index.jsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\n\nimport { Close } from \"neetoicons\";\nimport { assoc } from \"ramda\";\nimport { components } from \"react-select\";\n\nimport Tag from \"components/Tag\";\nimport { hyphenize } from \"utils\";\n\nconst STYLES = {\n border: {\n default: \"1px solid rgb(var(--neeto-ui-gray-400))\",\n error: \"1px solid rgb(var(--neeto-ui-error-800)) !important\",\n },\n color: {\n default: \"rgb(var(--neeto-ui-gray-800))\",\n error: \"rgb(var(--neeto-ui-error-800)) !important\",\n },\n};\n\nconst CustomControl = ({ children, ...props }) => {\n const { getValue } = props;\n const { isFocused, prefix } = props.selectProps;\n\n const prevValue = useRef([]);\n const controlRef = useRef(null);\n\n const value = getValue();\n\n const scrollToBottom = () => {\n const scrollContainer = controlRef.current;\n if (!scrollContainer) return;\n\n const { scrollHeight, clientHeight } = scrollContainer;\n\n scrollContainer.scrollTo({ top: scrollHeight - clientHeight });\n };\n\n useEffect(() => {\n const isItemAdded = value.length > prevValue.current.length;\n const isItemDeleted = value.length < prevValue.current.length;\n\n if ((isFocused && !isItemDeleted) || isItemAdded) scrollToBottom();\n\n prevValue.current = value;\n }, [isFocused, value]);\n\n return (\n <components.Control\n {...props}\n innerProps={{ ...props.innerProps, ref: controlRef }}\n >\n {prefix && <div className=\"neeto-ui-email-input__prefix\">{prefix}</div>}\n {children}\n </components.Control>\n );\n};\n\nconst CustomDropdownIndicator = props => {\n const { suffix } = props.selectProps;\n\n return suffix ? (\n <components.DropdownIndicator {...props}>\n <div className=\"neeto-ui-email-input__suffix\">{suffix}</div>\n </components.DropdownIndicator>\n ) : null;\n};\n\nconst MultiValueRemove = props => (\n <components.MultiValueRemove\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: `${hyphenize(props.data.label)}-remove-icon`,\n }}\n >\n <Close size={16} />\n </components.MultiValueRemove>\n);\n\nconst CustomValueContainer = ({ children, ...props }) => {\n const {\n getValue,\n selectProps: { isFocused, visibleEmailsCount, isAlwaysExpanded },\n } = props;\n const value = getValue();\n const [firstChild, ...rest] = children;\n\n const shouldCollapse =\n !isAlwaysExpanded && !isFocused && value.length > visibleEmailsCount;\n\n return (\n <components.ValueContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-input-container\",\n }}\n >\n {shouldCollapse ? firstChild.slice(0, visibleEmailsCount) : firstChild}\n {shouldCollapse && (\n <Tag\n label={`${value.length - visibleEmailsCount} more`}\n style=\"secondary\"\n />\n )}\n {rest}\n </components.ValueContainer>\n );\n};\n\nconst CustomClearIndicator = props => (\n <components.ClearIndicator\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"clear-all-button\",\n }}\n >\n <Close className=\"cursor-pointer\" size={16} />\n </components.ClearIndicator>\n);\n\nconst SelectContainer = props => (\n <components.SelectContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-email-select-container\",\n }}\n />\n);\n\nconst Input = props => {\n const handlePaste = event => {\n const { handleEmailChange } = props.selectProps;\n\n const text = event.clipboardData.getData(\"Text\");\n if (!EMAIL_REGEX.test(text)) return;\n\n event?.preventDefault();\n setTimeout(() => handleEmailChange(text));\n };\n\n return (\n <components.Input\n {...props}\n data-cy=\"email-select-input-field\"\n onPaste={handlePaste}\n />\n );\n};\n\nexport const EMAIL_REGEX = new RegExp(\n \"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\",\n \"i\"\n);\n\nexport const UNSTRICT_EMAIL_REGEX =\n /(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))/g;\n\nexport const EMAIL_SEPARATION_REGEX = /[^\\s,]+/g;\n\nexport const CUSTOM_STYLES = {\n input: assoc(\"overflow\", \"hidden\"),\n multiValue: (styles, { data: { valid } }) => ({\n ...styles,\n border: valid ? STYLES.border.default : STYLES.border.error,\n color: valid ? STYLES.color.default : STYLES.color.error,\n }),\n};\n\nexport const CUSTOM_COMPONENTS = {\n DropdownIndicator: CustomDropdownIndicator,\n Control: CustomControl,\n MultiValueRemove,\n ValueContainer: CustomValueContainer,\n ClearIndicator: CustomClearIndicator,\n SelectContainer,\n Input,\n};\n","import { isPresent } from \"neetocist\";\nimport { pluck } from \"ramda\";\n\nimport { EMAIL_REGEX } from \"./constants\";\n\nconst getEmailsMap = (inputEmails = [], options = []) => {\n const emails = [...inputEmails, ...options];\n const emailsMap = new Map();\n\n emails.forEach(option => {\n const hasPersistedEntry = isPresent(emailsMap.get(option.value)?.id);\n if (!hasPersistedEntry) emailsMap.set(option.value, option);\n });\n\n return emailsMap;\n};\n\nconst processEmailOptions = (inputEmails = [], options = []) => {\n const emailsMap = getEmailsMap(inputEmails, options);\n\n return email => {\n const emailDetails = emailsMap.get(email) || { value: email };\n\n return formatEmailInputOption(emailDetails);\n };\n};\n\nexport const formatEmailInputOption = ({ label, value, ...otherDetails }) => ({\n label: label ?? value,\n value,\n ...otherDetails,\n valid: EMAIL_REGEX.test(value),\n});\n\nexport const pruneDuplicates = (inputValues, options) => {\n const emailProcessor = processEmailOptions(inputValues, options);\n const emails = pluck(\"value\", inputValues);\n const uniqueValuesSet = new Set();\n const duplicates = [];\n\n emails.forEach(pristineEmail => {\n const email = pristineEmail.toLowerCase();\n if (uniqueValuesSet.has(email)) duplicates.push(pristineEmail);\n\n uniqueValuesSet.add(email);\n });\n\n const uniqueValues = Array.from(uniqueValuesSet);\n const uniqueEmails = uniqueValues.map(emailProcessor);\n\n return { uniqueEmails, duplicates };\n};\n\nexport const renderValidEmails = values =>\n values.filter(email => email.valid && email);\n\nexport const getValidEmailsCount = values => renderValidEmails(values).length;\n\nexport const renderDefaultText = count => (count === 1 ? \"email\" : \"emails\");\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft, isEmpty } from \"ramda\";\nimport CreatableSelect from \"react-select/creatable\";\n\nimport { noop, hyphenize } from \"utils\";\n\nimport {\n EMAIL_SEPARATION_REGEX,\n CUSTOM_STYLES,\n UNSTRICT_EMAIL_REGEX,\n CUSTOM_COMPONENTS,\n} from \"./constants\";\nimport {\n pruneDuplicates,\n renderValidEmails,\n renderDefaultText,\n getValidEmailsCount,\n} from \"./utils\";\n\nimport Label from \"../Label\";\n\nconst MultiEmailInput = forwardRef(\n (\n {\n label = \"Email(s)\",\n placeholder = \"\",\n helpText = \"\",\n value = [],\n onChange = noop,\n error = \"\",\n onBlur = noop,\n filterInvalidEmails,\n counter,\n disabled = false,\n maxHeight = 200,\n required = false,\n labelProps,\n visibleEmailsCount = 3,\n isCreateable = true,\n isAlwaysExpanded = false,\n ...otherProps\n },\n ref\n ) => {\n const [inputValue, setInputValue] = useState(\"\");\n const [isFocused, setIsFocused] = useState(false);\n const [duplicateEmails, setDuplicateEmails] = useState([]);\n const [isMenuOpen, setIsMenuOpen] = useState(false);\n\n const isCounterVisible =\n !!counter &&\n (!counter.startsFrom || getValidEmailsCount(value) >= counter.startsFrom);\n\n const isOptionsPresent = !!otherProps.options;\n\n const handleFilterEmails = () => onChange(renderValidEmails(value));\n\n const handleEmailChange = inputValue => {\n if (!isCreateable) return;\n\n const inputValues = inputValue.match(EMAIL_SEPARATION_REGEX);\n const emailMatches =\n inputValue.match(UNSTRICT_EMAIL_REGEX) || inputValues || [];\n\n const emails = emailMatches.map(email => ({ value: email }));\n\n const { uniqueEmails, duplicates } = pruneDuplicates(\n [...value, ...emails],\n otherProps.options\n );\n onChange(uniqueEmails);\n setDuplicateEmails(duplicates);\n setInputValue(\"\");\n setIsMenuOpen(false);\n };\n\n const handleKeyDown = event => {\n if (!inputValue) return;\n\n switch (event.key) {\n case \"Enter\": {\n handleEmailChange(inputValue);\n !isOptionsPresent && event.preventDefault();\n event.stopPropagation();\n\n return;\n }\n case \"Tab\":\n case \",\":\n case \" \": {\n handleEmailChange(inputValue);\n event.preventDefault();\n event.stopPropagation();\n }\n }\n };\n\n const onCreateOption = input => {\n const { uniqueEmails, duplicates } = pruneDuplicates(\n [...value, { value: input }],\n otherProps.options\n );\n onChange(uniqueEmails);\n setDuplicateEmails(duplicates);\n otherProps?.onCreateOption?.(input);\n };\n\n const handleBlur = event => {\n inputValue ? handleEmailChange(inputValue) : onBlur(event);\n setIsFocused(false);\n setDuplicateEmails([]);\n };\n\n let overrideProps = {};\n\n if (isOptionsPresent) {\n const isValidNewOption = (inputValue, _, selectOptions) => {\n if (!isCreateable) return false;\n\n const isInputEmpty = isEmpty(inputValue.trim());\n const doesInputContainSeparator =\n inputValue.includes(\",\") || inputValue.includes(\" \");\n\n const isInputPresentInOptions = selectOptions.find(\n option => option.value === inputValue.toLowerCase()\n );\n\n return !(\n isInputEmpty ||\n doesInputContainSeparator ||\n isInputPresentInOptions\n );\n };\n overrideProps = { onCreateOption, isValidNewOption };\n }\n\n const isFilterEmailsLinkVisible =\n !!filterInvalidEmails && value.length > getValidEmailsCount(value);\n\n return (\n <div className=\"neeto-ui-input__wrapper neeto-ui-email-input__wrapper\">\n <div className=\"neeto-ui-email-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n className=\"neeto-ui-email-input__label\"\n data-cy={`${hyphenize(label)}-input-label`}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCounterVisible && (\n <p\n className=\"neeto-ui-email-input__counter\"\n data-cy={`${hyphenize(label)}-email-counter`}\n >\n {getValidEmailsCount(value)}{\" \"}\n {counter.label\n ? counter.label\n : renderDefaultText(getValidEmailsCount(value))}\n </p>\n )}\n </div>\n <CreatableSelect\n isMulti\n required\n classNamePrefix=\"neeto-ui-react-select\"\n components={CUSTOM_COMPONENTS}\n isDisabled={disabled}\n menuIsOpen={isMenuOpen}\n className={classnames(\n \"neeto-ui-react-select__container neeto-ui-react-select__container--medium neeto-ui-email-input__select\",\n { \"neeto-ui-react-select__container--error\": !!error }\n )}\n styles={{\n ...CUSTOM_STYLES,\n control: mergeLeft({\n maxHeight: `${maxHeight}px`,\n overflowY: \"auto\",\n }),\n }}\n onBlur={handleBlur}\n onFocus={() => setIsFocused(true)}\n onKeyDown={handleKeyDown}\n onInputChange={inputValue => {\n setIsMenuOpen(Boolean(inputValue));\n setInputValue(inputValue);\n }}\n {...{\n handleEmailChange,\n inputValue,\n isAlwaysExpanded,\n isFocused,\n onChange,\n placeholder,\n ref,\n value,\n visibleEmailsCount,\n ...(!isOptionsPresent && { menuIsOpen: false }),\n ...otherProps,\n ...overrideProps,\n }}\n />\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n >\n {error}\n {isFilterEmailsLinkVisible && (\n <span\n className=\"neeto-ui-font-semibold cursor-pointer\"\n onClick={handleFilterEmails}\n >\n \n {filterInvalidEmails.label\n ? filterInvalidEmails.label\n : \"Click here to remove invalid emails.\"}\n </span>\n )}\n </p>\n )}\n {!!helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n >\n {helpText}\n </p>\n )}\n {!!duplicateEmails.length && (\n <p\n className=\"neeto-ui-input__warning\"\n data-cy={`${hyphenize(label)}-duplicate-emails-warning`}\n >\n Duplicate emails that were removed case insensitively:{\" \"}\n {duplicateEmails.join(\", \")}\n </p>\n )}\n </div>\n );\n }\n);\n\nMultiEmailInput.displayName = \"MultiEmailInput\";\n\nMultiEmailInput.propTypes = {\n /**\n * To specify the text to be displayed above the Input field.\n */\n label: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify the text to be displayed inside the Input field.\n */\n placeholder: PropTypes.string,\n /**\n * To specify the helper text message to be displayed below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify the value to be displayed inside the Input field.\n */\n value: PropTypes.array,\n /**\n * To specify the error message to be shown below the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify the message to be shown besides the error message to filter out the invalid emails.\n */\n filterInvalidEmails: PropTypes.shape({ label: PropTypes.string }),\n /**\n * To add an email counter next to the label.\n */\n counter: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.shape({\n label: PropTypes.string,\n startsFrom: PropTypes.number,\n }),\n ]),\n /**\n * To specify the action to be triggered on modifying the Input field.\n */\n onChange: PropTypes.func,\n /**\n * To specify the action to be triggered on changing focus from the Input field.\n */\n onBlur: PropTypes.func,\n /**\n * To specify the maximum height (in pixels) of the container before it becomes scrollable.\n */\n maxHeight: PropTypes.number,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify the number of email to be displayed in the input field when not in focus.\n */\n visibleEmailsCount: PropTypes.number,\n /**\n * To specify whether a new email option can be created or not.\n */\n isCreateable: PropTypes.bool,\n /**\n * To specify whether the input field should always be shown in an expanded state or not.\n */\n isAlwaysExpanded: PropTypes.bool,\n};\n\nexport default MultiEmailInput;\n"],"names":["STYLES","border","error","color","CustomControl","_ref","children","props","_objectWithoutProperties","_excluded","getValue","_props$selectProps","selectProps","isFocused","prefix","prevValue","useRef","controlRef","value","scrollToBottom","scrollContainer","current","scrollHeight","clientHeight","scrollTo","top","useEffect","isItemAdded","length","isItemDeleted","React","createElement","components","Control","_extends","innerProps","_objectSpread","ref","className","CustomDropdownIndicator","suffix","DropdownIndicator","MultiValueRemove","_defineProperty","concat","hyphenize","data","label","Close","size","CustomValueContainer","_ref2","_excluded2","_props$selectProps2","visibleEmailsCount","isAlwaysExpanded","_children","_toArray","firstChild","rest","slice","shouldCollapse","ValueContainer","Tag","style","CustomClearIndicator","ClearIndicator","SelectContainer","Input","handlePaste","event","handleEmailChange","text","clipboardData","getData","EMAIL_REGEX","test","preventDefault","setTimeout","onPaste","RegExp","UNSTRICT_EMAIL_REGEX","EMAIL_SEPARATION_REGEX","CUSTOM_STYLES","input","assoc","multiValue","styles","_ref3","valid","CUSTOM_COMPONENTS","getEmailsMap","inputEmails","arguments","undefined","options","emails","_toConsumableArray","emailsMap","Map","forEach","option","_emailsMap$get","hasPersistedEntry","isPresent","get","id","set","processEmailOptions","email","emailDetails","formatEmailInputOption","otherDetails","pruneDuplicates","inputValues","emailProcessor","pluck","uniqueValuesSet","Set","duplicates","pristineEmail","toLowerCase","has","push","add","uniqueValues","Array","from","uniqueEmails","map","renderValidEmails","values","filter","getValidEmailsCount","renderDefaultText","count","MultiEmailInput","forwardRef","_ref$label","_ref$placeholder","placeholder","_ref$helpText","helpText","_ref$value","_ref$onChange","onChange","noop","_ref$error","_ref$onBlur","onBlur","filterInvalidEmails","counter","_ref$disabled","disabled","_ref$maxHeight","maxHeight","_ref$required","required","labelProps","_ref$visibleEmailsCou","_ref$isCreateable","isCreateable","_ref$isAlwaysExpanded","otherProps","_useState","useState","_useState2","_slicedToArray","inputValue","setInputValue","_useState3","_useState4","setIsFocused","_useState5","_useState6","duplicateEmails","setDuplicateEmails","_useState7","_useState8","isMenuOpen","setIsMenuOpen","isCounterVisible","startsFrom","isOptionsPresent","handleFilterEmails","match","emailMatches","_pruneDuplicates","handleKeyDown","key","stopPropagation","onCreateOption","_otherProps$onCreateO","_pruneDuplicates2","call","handleBlur","overrideProps","isValidNewOption","_","selectOptions","isInputEmpty","isEmpty","trim","doesInputContainSeparator","includes","isInputPresentInOptions","find","isFilterEmailsLinkVisible","Label","CreatableSelect","isMulti","classNamePrefix","isDisabled","menuIsOpen","classnames","control","mergeLeft","overflowY","onFocus","onKeyDown","onInputChange","Boolean","onClick","join","displayName"],"mappings":"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"}
|
package/package.json
CHANGED
package/types/ColorPicker.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { DropdownProps } from "./Dropdown";
|
|
|
3
3
|
|
|
4
4
|
type PaletteColor = {
|
|
5
5
|
hex?: string;
|
|
6
|
-
|
|
6
|
+
rgb?: string;
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
export interface ColorPickerProps {
|
|
@@ -13,11 +13,7 @@ export interface ColorPickerProps {
|
|
|
13
13
|
hex: string;
|
|
14
14
|
rgb: { r: number; g: number; b: number, a: number };
|
|
15
15
|
}) => void;
|
|
16
|
-
|
|
17
|
-
color: PaletteColor;
|
|
18
|
-
colorList: PaletteColor[];
|
|
19
|
-
onChange: (color: PaletteColor) => void;
|
|
20
|
-
};
|
|
16
|
+
colorPalette: PaletteColor[];
|
|
21
17
|
showEyeDropper?: boolean;
|
|
22
18
|
showHexValue?: boolean;
|
|
23
19
|
showTransparencyControl?: boolean;
|