iguazio.dashboard-react-controls 3.1.10 → 3.2.0
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/components/FormChipCell/FormChipCell.d.ts +4 -2
- package/dist/components/FormChipCell/FormChipCell.d.ts.map +1 -1
- package/dist/components/FormChipCell/FormChipCell.mjs +107 -105
- package/dist/components/FormChipCell/FormChipCell.mjs.map +1 -1
- package/dist/components/TabsSlider/TabsSlider.d.ts.map +1 -1
- package/dist/components/TabsSlider/TabsSlider.mjs +59 -61
- package/dist/components/TabsSlider/TabsSlider.mjs.map +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts +3 -1
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/Tooltip/Tooltip.mjs +54 -52
- package/dist/components/Tooltip/Tooltip.mjs.map +1 -1
- package/dist/hooks/useChipCell.hook.d.ts +1 -1
- package/dist/hooks/useChipCell.hook.d.ts.map +1 -1
- package/dist/hooks/useChipCell.hook.mjs +50 -43
- package/dist/hooks/useChipCell.hook.mjs.map +1 -1
- package/dist/hooks/useDetails.hook.d.ts +4 -4
- package/dist/hooks/useDetailsHeader.hook.d.ts +3 -3
- package/dist/images/connections-icon.svg +4 -0
- package/dist/images/monitoring-icon.svg +4 -0
- package/dist/images/no-data-metric-image.png +0 -0
- package/dist/reducers/commonDetailsReducer.d.ts +23 -11
- package/dist/reducers/notificationReducer.d.ts +6 -2
- package/dist/utils/notification.util.d.ts.map +1 -1
- package/dist/utils/notification.util.mjs +11 -11
- package/dist/utils/notification.util.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/images/no-data-metric-icon.svg +0 -119
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export default FormChipCell;
|
|
2
|
-
declare function FormChipCell({ chipOptions, className, delimiter, formState, initialValues, isEditable, label, name, onClick, shortChips, validationRules, validator,
|
|
2
|
+
declare function FormChipCell({ chipOptions, className, delimiter, formState, initialValues, isEditable, label, name, onClick, onExitEditModeCallback, shortChips, validationRules, validator, visibleChipsMaxLength, withInitialParentWidth }: {
|
|
3
3
|
chipOptions?: {
|
|
4
4
|
background: string;
|
|
5
5
|
boldValue: boolean;
|
|
@@ -16,11 +16,12 @@ declare function FormChipCell({ chipOptions, className, delimiter, formState, in
|
|
|
16
16
|
label?: any;
|
|
17
17
|
name: any;
|
|
18
18
|
onClick?: () => void;
|
|
19
|
+
onExitEditModeCallback?: any;
|
|
19
20
|
shortChips?: boolean;
|
|
20
21
|
validationRules?: {};
|
|
21
22
|
validator?: any;
|
|
22
|
-
onExitEditModeCallback?: any;
|
|
23
23
|
visibleChipsMaxLength?: any;
|
|
24
|
+
withInitialParentWidth?: boolean;
|
|
24
25
|
}): JSX.Element;
|
|
25
26
|
declare namespace FormChipCell {
|
|
26
27
|
namespace propTypes {
|
|
@@ -38,6 +39,7 @@ declare namespace FormChipCell {
|
|
|
38
39
|
export let validationRules: any;
|
|
39
40
|
export let validator: any;
|
|
40
41
|
export let visibleChipsMaxLength: any;
|
|
42
|
+
export let withInitialParentWidth: any;
|
|
41
43
|
}
|
|
42
44
|
}
|
|
43
45
|
import { CHIP_OPTIONS } from '../../types';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormChipCell.d.ts","sourceRoot":"","sources":["../../../src/lib/components/FormChipCell/FormChipCell.jsx"],"names":[],"mappings":";AAiCA
|
|
1
|
+
{"version":3,"file":"FormChipCell.d.ts","sourceRoot":"","sources":["../../../src/lib/components/FormChipCell/FormChipCell.jsx"],"names":[],"mappings":";AAiCA;;;;;;;;;;;;;;;;;;;;;;;gBAyWC;;;;;;;;;;;;;;;;;;;;6BAnX4B,aAAa"}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import { CHIP_OPTIONS as
|
|
8
|
-
import { CLICK as
|
|
9
|
-
import { areArraysEqual as
|
|
10
|
-
import { checkPatternsValidity as
|
|
11
|
-
import { generateChipsList as
|
|
12
|
-
import { uniquenessError as
|
|
1
|
+
import { jsxs as pe, jsx as T } from "react/jsx-runtime";
|
|
2
|
+
import ce, { useState as k, useMemo as he, useCallback as y } from "react";
|
|
3
|
+
import ae, { get as F, set as O, isEmpty as D, isNil as de } from "lodash";
|
|
4
|
+
import fe from "classnames";
|
|
5
|
+
import r from "prop-types";
|
|
6
|
+
import me from "./FormChipCellView.mjs";
|
|
7
|
+
import { CHIP_OPTIONS as Ce } from "../../types.mjs";
|
|
8
|
+
import { CLICK as Ie, TAB as H, TAB_SHIFT as U } from "../../constants.mjs";
|
|
9
|
+
import { areArraysEqual as ge } from "../../utils/common.util.mjs";
|
|
10
|
+
import { checkPatternsValidity as ye } from "../../utils/validation.util.mjs";
|
|
11
|
+
import { generateChipsList as Fe } from "../../utils/generateChipsList.util.mjs";
|
|
12
|
+
import { uniquenessError as b } from "./formChipCell.util.mjs";
|
|
13
13
|
import "../../hooks/index.mjs";
|
|
14
14
|
/* empty css */
|
|
15
|
-
import { useChipCell as
|
|
16
|
-
let
|
|
17
|
-
chipOptions:
|
|
15
|
+
import { useChipCell as Ne } from "../../hooks/useChipCell.hook.mjs";
|
|
16
|
+
let w = ({
|
|
17
|
+
chipOptions: z = {
|
|
18
18
|
background: "purple",
|
|
19
19
|
boldValue: !1,
|
|
20
20
|
borderRadius: "primary",
|
|
@@ -22,61 +22,62 @@ let R = ({
|
|
|
22
22
|
density: "dense",
|
|
23
23
|
font: "purple"
|
|
24
24
|
},
|
|
25
|
-
className:
|
|
25
|
+
className: B = "",
|
|
26
26
|
delimiter: _ = null,
|
|
27
27
|
formState: n,
|
|
28
28
|
initialValues: q,
|
|
29
29
|
isEditable: m = !1,
|
|
30
|
-
label:
|
|
31
|
-
name:
|
|
32
|
-
onClick:
|
|
30
|
+
label: R = null,
|
|
31
|
+
name: o,
|
|
32
|
+
onClick: V = () => {
|
|
33
33
|
},
|
|
34
|
-
shortChips: $ = !1,
|
|
35
|
-
validationRules: v = {},
|
|
36
|
-
validator: x = null,
|
|
37
34
|
onExitEditModeCallback: d = null,
|
|
38
|
-
|
|
35
|
+
shortChips: W = !1,
|
|
36
|
+
validationRules: P = {},
|
|
37
|
+
validator: x = null,
|
|
38
|
+
visibleChipsMaxLength: I = null,
|
|
39
|
+
withInitialParentWidth: $ = !1
|
|
39
40
|
}) => {
|
|
40
|
-
const
|
|
41
|
-
chipsCellRef:
|
|
42
|
-
chipsWrapperRef:
|
|
43
|
-
handleShowElements:
|
|
44
|
-
hiddenChipsCounterRef:
|
|
45
|
-
hiddenChipsPopUpRef:
|
|
46
|
-
setChipsSizes:
|
|
41
|
+
const X = fe("chips", B), [Y, A] = k(!1), {
|
|
42
|
+
chipsCellRef: G,
|
|
43
|
+
chipsWrapperRef: J,
|
|
44
|
+
handleShowElements: L,
|
|
45
|
+
hiddenChipsCounterRef: Q,
|
|
46
|
+
hiddenChipsPopUpRef: Z,
|
|
47
|
+
setChipsSizes: S,
|
|
47
48
|
setShowHiddenChips: K,
|
|
48
|
-
showChips:
|
|
49
|
-
showHiddenChips:
|
|
49
|
+
showChips: E,
|
|
50
|
+
showHiddenChips: v,
|
|
50
51
|
visibleChipsCount: j
|
|
51
|
-
} =
|
|
52
|
+
} = Ne(m, I, $), [p, C] = k({
|
|
52
53
|
chipIndex: null,
|
|
53
54
|
isEdit: !1,
|
|
54
55
|
isKeyFocused: !1,
|
|
55
56
|
isValueFocused: !1,
|
|
56
57
|
isNewChip: !1
|
|
57
58
|
});
|
|
58
|
-
let
|
|
59
|
-
visibleChips: F(n.values,
|
|
59
|
+
let M = he(() => m || I === "all" ? {
|
|
60
|
+
visibleChips: F(n.values, o),
|
|
60
61
|
hiddenChips: []
|
|
61
|
-
} :
|
|
62
|
-
F(n.values,
|
|
62
|
+
} : Fe(
|
|
63
|
+
F(n.values, o),
|
|
63
64
|
I || j
|
|
64
|
-
), [I, m, j, n.values,
|
|
65
|
+
), [I, m, j, n.values, o]);
|
|
65
66
|
const N = y(
|
|
66
67
|
(e) => {
|
|
67
|
-
|
|
68
|
+
ge(F(q, o), e, ["id"]) && O(n.initialValues, o, e), n.form.mutators.setFieldState(o, { modified: !0 }), n.form.mutators.setFieldState(o, { touched: !0 });
|
|
68
69
|
},
|
|
69
|
-
[q,
|
|
70
|
-
),
|
|
70
|
+
[q, o, n]
|
|
71
|
+
), ee = y(
|
|
71
72
|
(e, i) => {
|
|
72
73
|
var t;
|
|
73
74
|
const u = ((t = i.value) == null ? void 0 : t.length) || 0;
|
|
74
|
-
!p.isEdit && !p.chipIndex && n.form.mutators.push(
|
|
75
|
+
!p.isEdit && !p.chipIndex && n.form.mutators.push(o, {
|
|
75
76
|
id: u + /* @__PURE__ */ new Date(),
|
|
76
77
|
key: "",
|
|
77
78
|
value: "",
|
|
78
79
|
delimiter: _
|
|
79
|
-
}),
|
|
80
|
+
}), v && K(!1), C({
|
|
80
81
|
chipIndex: u,
|
|
81
82
|
isEdit: !0,
|
|
82
83
|
isKeyFocused: !0,
|
|
@@ -87,23 +88,23 @@ let R = ({
|
|
|
87
88
|
[
|
|
88
89
|
p.isEdit,
|
|
89
90
|
p.chipIndex,
|
|
90
|
-
|
|
91
|
+
v,
|
|
91
92
|
n.form.mutators,
|
|
92
|
-
|
|
93
|
+
o,
|
|
93
94
|
_,
|
|
94
95
|
K
|
|
95
96
|
]
|
|
96
97
|
), g = y(
|
|
97
98
|
(e, i, u, t = !1) => {
|
|
98
99
|
N(
|
|
99
|
-
|
|
100
|
-
), i.length === 1 ? n.form.change(
|
|
100
|
+
ae.chain(n).get(["values", o]).filter((s, l) => l !== u).value()
|
|
101
|
+
), i.length === 1 ? n.form.change(o, []) : i.remove(u), d && d(), e && !t && e.stopPropagation();
|
|
101
102
|
},
|
|
102
|
-
[N, n,
|
|
103
|
-
),
|
|
103
|
+
[N, n, o, d]
|
|
104
|
+
), ie = y(
|
|
104
105
|
(e, i, u, t) => {
|
|
105
106
|
const { key: s, value: l } = i.value[p.chipIndex], h = !!(s != null && s.trim() && (l != null && l.trim()));
|
|
106
|
-
u ===
|
|
107
|
+
u === Ie ? (h || g(e, i, p.chipIndex, t), C({
|
|
107
108
|
chipIndex: null,
|
|
108
109
|
isEdit: !1,
|
|
109
110
|
isKeyFocused: !1,
|
|
@@ -127,17 +128,17 @@ let R = ({
|
|
|
127
128
|
isValueFocused: !c,
|
|
128
129
|
isNewChip: !1
|
|
129
130
|
};
|
|
130
|
-
})), N(F(n.values,
|
|
131
|
+
})), N(F(n.values, o)), (p.chipIndex > 0 && p.chipIndex < i.value.length - 1 || i.value.length > 1 && p.chipIndex === 0 && u !== U || i.value.length > 1 && p.chipIndex === i.value.length - 1 && u !== H) && e && e.preventDefault();
|
|
131
132
|
},
|
|
132
133
|
[
|
|
133
134
|
p.chipIndex,
|
|
134
135
|
N,
|
|
135
136
|
n.values,
|
|
136
|
-
|
|
137
|
+
o,
|
|
137
138
|
d,
|
|
138
139
|
g
|
|
139
140
|
]
|
|
140
|
-
),
|
|
141
|
+
), se = y(
|
|
141
142
|
(e, i, u) => {
|
|
142
143
|
if (m) {
|
|
143
144
|
const { clientX: t, clientY: s } = e;
|
|
@@ -145,12 +146,12 @@ let R = ({
|
|
|
145
146
|
const h = (a, c, f) => {
|
|
146
147
|
if (f) {
|
|
147
148
|
const {
|
|
148
|
-
top:
|
|
149
|
-
left:
|
|
149
|
+
top: re,
|
|
150
|
+
left: oe,
|
|
150
151
|
right: ue,
|
|
151
|
-
bottom:
|
|
152
|
+
bottom: ne
|
|
152
153
|
} = f.getBoundingClientRect();
|
|
153
|
-
return !(a > ue || a <
|
|
154
|
+
return !(a > ue || a < oe || c > ne || c < re);
|
|
154
155
|
}
|
|
155
156
|
};
|
|
156
157
|
e.stopPropagation(), e.target.nodeName !== "INPUT" ? e.target.firstElementChild && (l = h(
|
|
@@ -165,78 +166,79 @@ let R = ({
|
|
|
165
166
|
isValueFocused: !l
|
|
166
167
|
}));
|
|
167
168
|
}
|
|
168
|
-
|
|
169
|
+
V && V();
|
|
169
170
|
},
|
|
170
|
-
[m,
|
|
171
|
-
),
|
|
171
|
+
[m, V]
|
|
172
|
+
), le = (e) => {
|
|
172
173
|
if (!e) return null;
|
|
173
174
|
let i = [];
|
|
174
175
|
const u = (t, s) => !e.some(({ key: l }, h) => t === l && h !== s);
|
|
175
|
-
return D(
|
|
176
|
-
const [s, l] =
|
|
176
|
+
return D(P) || (i = e.map((t) => {
|
|
177
|
+
const [s, l] = te(t);
|
|
177
178
|
return s && l ? { key: s, value: l } : s ? { key: s } : l ? { value: l } : null;
|
|
178
179
|
})), e.forEach((t, s) => {
|
|
179
|
-
u(t.key, s) || (F(i, [s, "key"], !1) ? i.at(s).key.push(
|
|
180
|
-
}), D(i) && x && (i = x(e)), i.every((t) =>
|
|
181
|
-
},
|
|
180
|
+
u(t.key, s) || (F(i, [s, "key"], !1) ? i.at(s).key.push(b) : O(i, [s, "key"], [b]));
|
|
181
|
+
}), D(i) && x && (i = x(e)), i.every((t) => de(t)) ? null : i;
|
|
182
|
+
}, te = ({ key: e, value: i, disabled: u }) => {
|
|
182
183
|
const t = (s, l) => {
|
|
183
|
-
const [h, a] =
|
|
184
|
-
|
|
184
|
+
const [h, a] = ye(
|
|
185
|
+
P[l].filter((f) => f.pattern),
|
|
185
186
|
s
|
|
186
187
|
);
|
|
187
188
|
return a ? null : h.filter((f) => !f.isValid).map((f) => ({ name: f.name, label: f.label }));
|
|
188
189
|
};
|
|
189
190
|
return u ? [null, null] : [t(e, "key"), t(i, "value")];
|
|
190
191
|
};
|
|
191
|
-
return /* @__PURE__ */
|
|
192
|
-
|
|
193
|
-
/* @__PURE__ */ T("div", { className:
|
|
194
|
-
|
|
192
|
+
return /* @__PURE__ */ pe("div", { className: X, "data-testid": `${o}-chips`, children: [
|
|
193
|
+
R && /* @__PURE__ */ T("div", { className: "chips__label", children: R }),
|
|
194
|
+
/* @__PURE__ */ T("div", { className: R ? "chips__wrapper" : "", children: /* @__PURE__ */ T(
|
|
195
|
+
me,
|
|
195
196
|
{
|
|
196
|
-
chipOptions:
|
|
197
|
-
chipSizeIsRecalculated:
|
|
198
|
-
chips:
|
|
197
|
+
chipOptions: z,
|
|
198
|
+
chipSizeIsRecalculated: Y,
|
|
199
|
+
chips: M,
|
|
199
200
|
editConfig: p,
|
|
200
201
|
formState: n,
|
|
201
|
-
handleAddNewChip:
|
|
202
|
-
handleEditChip:
|
|
202
|
+
handleAddNewChip: ee,
|
|
203
|
+
handleEditChip: ie,
|
|
203
204
|
handleRemoveChip: g,
|
|
204
|
-
handleShowElements:
|
|
205
|
-
handleToEditMode:
|
|
205
|
+
handleShowElements: L,
|
|
206
|
+
handleToEditMode: se,
|
|
206
207
|
isEditable: m,
|
|
207
|
-
name:
|
|
208
|
-
ref: { chipsCellRef:
|
|
209
|
-
setChipSizeIsRecalculated:
|
|
210
|
-
setChipsSizes:
|
|
208
|
+
name: o,
|
|
209
|
+
ref: { chipsCellRef: G, chipsWrapperRef: J, hiddenChipsCounterRef: Q, hiddenChipsPopUpRef: Z },
|
|
210
|
+
setChipSizeIsRecalculated: A,
|
|
211
|
+
setChipsSizes: S,
|
|
211
212
|
setEditConfig: C,
|
|
212
|
-
shortChips:
|
|
213
|
-
showChips:
|
|
214
|
-
showHiddenChips:
|
|
215
|
-
validateFields:
|
|
216
|
-
validationRules:
|
|
213
|
+
shortChips: W,
|
|
214
|
+
showChips: E,
|
|
215
|
+
showHiddenChips: v,
|
|
216
|
+
validateFields: le,
|
|
217
|
+
validationRules: P
|
|
217
218
|
}
|
|
218
219
|
) })
|
|
219
220
|
] });
|
|
220
221
|
};
|
|
221
|
-
|
|
222
|
-
chipOptions:
|
|
223
|
-
className:
|
|
224
|
-
delimiter:
|
|
225
|
-
formState:
|
|
226
|
-
initialValues:
|
|
227
|
-
isEditable:
|
|
228
|
-
label:
|
|
229
|
-
name:
|
|
230
|
-
onClick:
|
|
231
|
-
onExitEditModeCallback:
|
|
232
|
-
shortChips:
|
|
233
|
-
validationRules:
|
|
234
|
-
validator:
|
|
235
|
-
visibleChipsMaxLength:
|
|
222
|
+
w.propTypes = {
|
|
223
|
+
chipOptions: Ce,
|
|
224
|
+
className: r.string,
|
|
225
|
+
delimiter: r.oneOfType([r.string, r.element]),
|
|
226
|
+
formState: r.object.isRequired,
|
|
227
|
+
initialValues: r.object.isRequired,
|
|
228
|
+
isEditable: r.bool,
|
|
229
|
+
label: r.string,
|
|
230
|
+
name: r.string.isRequired,
|
|
231
|
+
onClick: r.func,
|
|
232
|
+
onExitEditModeCallback: r.func,
|
|
233
|
+
shortChips: r.bool,
|
|
234
|
+
validationRules: r.object,
|
|
235
|
+
validator: r.func,
|
|
236
|
+
visibleChipsMaxLength: r.oneOfType([r.string, r.number]),
|
|
237
|
+
withInitialParentWidth: r.bool
|
|
236
238
|
};
|
|
237
|
-
|
|
238
|
-
const
|
|
239
|
+
w = ce.memo(w);
|
|
240
|
+
const Ue = w;
|
|
239
241
|
export {
|
|
240
|
-
|
|
242
|
+
Ue as default
|
|
241
243
|
};
|
|
242
244
|
//# sourceMappingURL=FormChipCell.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormChipCell.mjs","sources":["../../../src/lib/components/FormChipCell/FormChipCell.jsx"],"sourcesContent":["/*\nCopyright 2022 Iguazio Systems Ltd.\nLicensed under the Apache License, Version 2.0 (the \"License\") with\nan addition restriction as set forth herein. You may not use this\nfile except in compliance with the License. You may obtain a copy of\nthe License at http://www.apache.org/licenses/LICENSE-2.0.\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied. See the License for the specific language governing\npermissions and limitations under the License.\nIn addition, you may not use the software for any purposes that are\nillegal under applicable law, and the grant of the foregoing license\nunder the Apache 2.0 license is conditioned upon your compliance with\nsuch restriction.\n*/\nimport React, { useState, useCallback, useMemo } from 'react'\nimport lodash, { get, isEmpty, set, isNil } from 'lodash'\nimport classnames from 'classnames'\nimport PropTypes from 'prop-types'\n\nimport FormChipCellView from './FormChipCellView'\n\nimport { CHIP_OPTIONS } from '../../types'\nimport { CLICK, TAB, TAB_SHIFT } from '../../constants'\nimport { areArraysEqual } from '../../utils/common.util'\nimport { checkPatternsValidity } from '../../utils/validation.util'\nimport { generateChipsList } from '../../utils/generateChipsList.util'\nimport { uniquenessError } from './formChipCell.util'\nimport { useChipCell } from '../../hooks'\n\nimport './formChipCell.scss'\n\nlet FormChipCell = ({\n chipOptions = {\n background: 'purple',\n boldValue: false,\n borderRadius: 'primary',\n borderColor: 'transparent',\n density: 'dense',\n font: 'purple'\n },\n className = '',\n delimiter = null,\n formState,\n initialValues,\n isEditable = false,\n label = null,\n name,\n onClick = () => {},\n shortChips = false,\n validationRules = {},\n validator = null,\n onExitEditModeCallback = null,\n visibleChipsMaxLength = null\n}) => {\n const chipsClassName = classnames('chips', className)\n const [chipSizeIsRecalculated, setChipSizeIsRecalculated] = useState(false)\n const {\n chipsCellRef,\n chipsWrapperRef,\n handleShowElements,\n hiddenChipsCounterRef,\n hiddenChipsPopUpRef,\n setChipsSizes,\n setShowHiddenChips,\n showChips,\n showHiddenChips,\n visibleChipsCount\n } = useChipCell(isEditable, visibleChipsMaxLength)\n\n const [editConfig, setEditConfig] = useState({\n chipIndex: null,\n isEdit: false,\n isKeyFocused: false,\n isValueFocused: false,\n isNewChip: false\n })\n\n let chips = useMemo(() => {\n return isEditable || visibleChipsMaxLength === 'all'\n ? {\n visibleChips: get(formState.values, name),\n hiddenChips: []\n }\n : generateChipsList(\n get(formState.values, name),\n visibleChipsMaxLength ? visibleChipsMaxLength : visibleChipsCount\n )\n }, [visibleChipsMaxLength, isEditable, visibleChipsCount, formState.values, name])\n\n const checkChipsList = useCallback(\n currentChipsList => {\n if (areArraysEqual(get(initialValues, name), currentChipsList, ['id'])) {\n set(formState.initialValues, name, currentChipsList)\n }\n\n formState.form.mutators.setFieldState(name, { modified: true })\n formState.form.mutators.setFieldState(name, { touched: true })\n },\n [initialValues, name, formState]\n )\n\n const handleAddNewChip = useCallback(\n (event, fields) => {\n const fieldsLength = fields.value?.length || 0\n\n if (!editConfig.isEdit && !editConfig.chipIndex) {\n formState.form.mutators.push(name, {\n id: fieldsLength + new Date(),\n key: '',\n value: '',\n delimiter: delimiter\n })\n }\n\n if (showHiddenChips) {\n setShowHiddenChips(false)\n }\n\n setEditConfig({\n chipIndex: fieldsLength,\n isEdit: true,\n isKeyFocused: true,\n isValueFocused: false,\n isNewChip: true\n })\n\n event && event.preventDefault()\n },\n [\n editConfig.isEdit,\n editConfig.chipIndex,\n showHiddenChips,\n formState.form.mutators,\n name,\n delimiter,\n setShowHiddenChips\n ]\n )\n\n const handleRemoveChip = useCallback(\n (event, fields, chipIndex, isOutsideClick = false) => {\n checkChipsList(\n lodash\n .chain(formState)\n .get(['values', name])\n .filter((_, index) => index !== chipIndex)\n .value()\n )\n\n if (fields.length === 1) {\n formState.form.change(name, [])\n } else {\n fields.remove(chipIndex)\n }\n\n onExitEditModeCallback && onExitEditModeCallback()\n event && !isOutsideClick && event.stopPropagation()\n },\n [checkChipsList, formState, name, onExitEditModeCallback]\n )\n\n const handleEditChip = useCallback(\n (event, fields, nameEvent, isOutsideClick) => {\n const { key, value } = fields.value[editConfig.chipIndex]\n const isChipNotEmpty = !!(key?.trim() && value?.trim())\n\n if (nameEvent === CLICK) {\n if (!isChipNotEmpty) {\n handleRemoveChip(event, fields, editConfig.chipIndex, isOutsideClick)\n }\n\n setEditConfig({\n chipIndex: null,\n isEdit: false,\n isKeyFocused: false,\n isValueFocused: false,\n isNewChip: false\n })\n isChipNotEmpty && onExitEditModeCallback && onExitEditModeCallback()\n } else if (nameEvent === TAB) {\n if (!isChipNotEmpty) {\n handleRemoveChip(event, fields, editConfig.chipIndex)\n }\n\n setEditConfig(prevState => {\n const lastChipSelected = prevState.chipIndex + 1 > fields.value.length - 1\n\n isChipNotEmpty && lastChipSelected && onExitEditModeCallback && onExitEditModeCallback()\n\n return {\n chipIndex: lastChipSelected ? null : prevState.chipIndex + 1,\n isEdit: !lastChipSelected,\n isKeyFocused: !lastChipSelected,\n isValueFocused: false,\n isNewChip: false\n }\n })\n } else if (nameEvent === TAB_SHIFT) {\n if (!isChipNotEmpty) {\n handleRemoveChip(event, fields, editConfig.chipIndex)\n }\n\n setEditConfig(prevState => {\n const firstChipIsSelected = prevState.chipIndex === 0\n\n isChipNotEmpty &&\n firstChipIsSelected &&\n onExitEditModeCallback &&\n onExitEditModeCallback()\n\n return {\n chipIndex: firstChipIsSelected ? null : prevState.chipIndex - 1,\n isEdit: !firstChipIsSelected,\n isKeyFocused: false,\n isValueFocused: !firstChipIsSelected,\n isNewChip: false\n }\n })\n }\n\n checkChipsList(get(formState.values, name))\n\n if (\n (editConfig.chipIndex > 0 && editConfig.chipIndex < fields.value.length - 1) ||\n (fields.value.length > 1 && editConfig.chipIndex === 0 && nameEvent !== TAB_SHIFT) ||\n (fields.value.length > 1 &&\n editConfig.chipIndex === fields.value.length - 1 &&\n nameEvent !== TAB)\n ) {\n event && event.preventDefault()\n }\n },\n [\n editConfig.chipIndex,\n checkChipsList,\n formState.values,\n name,\n onExitEditModeCallback,\n handleRemoveChip\n ]\n )\n\n const handleToEditMode = useCallback(\n (event, chipIndex, keyName) => {\n if (isEditable) {\n const { clientX: pointerCoordinateX, clientY: pointerCoordinateY } = event\n let isKeyClicked = false\n const isClickedInsideInputElement = (\n pointerCoordinateX,\n pointerCoordinateY,\n inputElement\n ) => {\n if (inputElement) {\n const {\n top: topPosition,\n left: leftPosition,\n right: rightPosition,\n bottom: bottomPosition\n } = inputElement.getBoundingClientRect()\n if (pointerCoordinateX > rightPosition || pointerCoordinateX < leftPosition)\n return false\n if (pointerCoordinateY > bottomPosition || pointerCoordinateY < topPosition)\n return false\n\n return true\n }\n }\n event.stopPropagation()\n\n if (event.target.nodeName !== 'INPUT') {\n if (event.target.firstElementChild) {\n isKeyClicked = isClickedInsideInputElement(\n pointerCoordinateX,\n pointerCoordinateY,\n event.target.firstElementChild\n )\n }\n } else {\n isKeyClicked = event.target.name === keyName\n }\n\n setEditConfig(preState => ({\n ...preState,\n chipIndex,\n isEdit: true,\n isKeyFocused: isKeyClicked,\n isValueFocused: !isKeyClicked\n }))\n }\n\n onClick && onClick()\n },\n [isEditable, onClick]\n )\n\n const validateFields = fieldsArray => {\n if (!fieldsArray) return null\n\n let errorData = []\n\n const uniquenessValidator = (newValue, idx) => {\n return !fieldsArray.some(({ key }, index) => {\n return newValue === key && index !== idx\n })\n }\n\n if (!isEmpty(validationRules)) {\n errorData = fieldsArray.map(chip => {\n const [keyValidation, valueValidation] = validateChip(chip)\n\n if (keyValidation && valueValidation) return { key: keyValidation, value: valueValidation }\n\n if (keyValidation) return { key: keyValidation }\n\n if (valueValidation) return { value: valueValidation }\n\n return null\n })\n }\n\n // uniqueness\n fieldsArray.forEach((chip, index) => {\n const isUnique = uniquenessValidator(chip.key, index)\n\n if (!isUnique) {\n if (get(errorData, [index, 'key'], false)) {\n errorData.at(index).key.push(uniquenessError)\n } else {\n set(errorData, [index, 'key'], [uniquenessError])\n }\n }\n })\n\n if (isEmpty(errorData) && validator) {\n errorData = validator(fieldsArray)\n }\n\n if (errorData.every(label => isNil(label))) {\n return null\n }\n\n return errorData\n }\n\n const validateChip = ({ key, value, disabled }) => {\n const validateField = (value, field) => {\n const [newRules, isValidField] = checkPatternsValidity(\n validationRules[field].filter(rule => rule.pattern),\n value\n )\n\n if (isValidField) return null\n\n const invalidRules = newRules.filter(rule => !rule.isValid)\n\n return invalidRules.map(rule => ({ name: rule.name, label: rule.label }))\n }\n\n return disabled ? [null, null] : [validateField(key, 'key'), validateField(value, 'value')]\n }\n\n return (\n <div className={chipsClassName} data-testid={`${name}-chips`}>\n {label && <div className=\"chips__label\">{label}</div>}\n <div className={label ? 'chips__wrapper' : ''}>\n <FormChipCellView\n chipOptions={chipOptions}\n chipSizeIsRecalculated={chipSizeIsRecalculated}\n chips={chips}\n editConfig={editConfig}\n formState={formState}\n handleAddNewChip={handleAddNewChip}\n handleEditChip={handleEditChip}\n handleRemoveChip={handleRemoveChip}\n handleShowElements={handleShowElements}\n handleToEditMode={handleToEditMode}\n isEditable={isEditable}\n name={name}\n ref={{ chipsCellRef, chipsWrapperRef, hiddenChipsCounterRef, hiddenChipsPopUpRef }}\n setChipSizeIsRecalculated={setChipSizeIsRecalculated}\n setChipsSizes={setChipsSizes}\n setEditConfig={setEditConfig}\n shortChips={shortChips}\n showChips={showChips}\n showHiddenChips={showHiddenChips}\n validateFields={validateFields}\n validationRules={validationRules}\n />\n </div>\n </div>\n )\n}\n\nFormChipCell.propTypes = {\n chipOptions: CHIP_OPTIONS,\n className: PropTypes.string,\n delimiter: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n formState: PropTypes.object.isRequired,\n initialValues: PropTypes.object.isRequired,\n isEditable: PropTypes.bool,\n label: PropTypes.string,\n name: PropTypes.string.isRequired,\n onClick: PropTypes.func,\n onExitEditModeCallback: PropTypes.func,\n shortChips: PropTypes.bool,\n validationRules: PropTypes.object,\n validator: PropTypes.func,\n visibleChipsMaxLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number])\n}\n\nFormChipCell = React.memo(FormChipCell)\n\nexport default FormChipCell\n"],"names":["FormChipCell","chipOptions","className","delimiter","formState","initialValues","isEditable","label","name","onClick","shortChips","validationRules","validator","onExitEditModeCallback","visibleChipsMaxLength","chipsClassName","classnames","chipSizeIsRecalculated","setChipSizeIsRecalculated","useState","chipsCellRef","chipsWrapperRef","handleShowElements","hiddenChipsCounterRef","hiddenChipsPopUpRef","setChipsSizes","setShowHiddenChips","showChips","showHiddenChips","visibleChipsCount","useChipCell","editConfig","setEditConfig","chips","useMemo","get","generateChipsList","checkChipsList","useCallback","currentChipsList","areArraysEqual","set","handleAddNewChip","event","fields","fieldsLength","_a","handleRemoveChip","chipIndex","isOutsideClick","lodash","_","index","handleEditChip","nameEvent","key","value","isChipNotEmpty","CLICK","TAB","prevState","lastChipSelected","TAB_SHIFT","firstChipIsSelected","handleToEditMode","keyName","pointerCoordinateX","pointerCoordinateY","isKeyClicked","isClickedInsideInputElement","inputElement","topPosition","leftPosition","rightPosition","bottomPosition","preState","validateFields","fieldsArray","errorData","uniquenessValidator","newValue","idx","isEmpty","chip","keyValidation","valueValidation","validateChip","uniquenessError","isNil","disabled","validateField","field","newRules","isValidField","checkPatternsValidity","rule","jsx","FormChipCellView","CHIP_OPTIONS","PropTypes","React","FormChipCell$1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FormChipCell.mjs","sources":["../../../src/lib/components/FormChipCell/FormChipCell.jsx"],"sourcesContent":["/*\nCopyright 2022 Iguazio Systems Ltd.\nLicensed under the Apache License, Version 2.0 (the \"License\") with\nan addition restriction as set forth herein. You may not use this\nfile except in compliance with the License. You may obtain a copy of\nthe License at http://www.apache.org/licenses/LICENSE-2.0.\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied. See the License for the specific language governing\npermissions and limitations under the License.\nIn addition, you may not use the software for any purposes that are\nillegal under applicable law, and the grant of the foregoing license\nunder the Apache 2.0 license is conditioned upon your compliance with\nsuch restriction.\n*/\nimport React, { useState, useCallback, useMemo } from 'react'\nimport lodash, { get, isEmpty, set, isNil } from 'lodash'\nimport classnames from 'classnames'\nimport PropTypes from 'prop-types'\n\nimport FormChipCellView from './FormChipCellView'\n\nimport { CHIP_OPTIONS } from '../../types'\nimport { CLICK, TAB, TAB_SHIFT } from '../../constants'\nimport { areArraysEqual } from '../../utils/common.util'\nimport { checkPatternsValidity } from '../../utils/validation.util'\nimport { generateChipsList } from '../../utils/generateChipsList.util'\nimport { uniquenessError } from './formChipCell.util'\nimport { useChipCell } from '../../hooks'\n\nimport './formChipCell.scss'\n\nlet FormChipCell = ({\n chipOptions = {\n background: 'purple',\n boldValue: false,\n borderRadius: 'primary',\n borderColor: 'transparent',\n density: 'dense',\n font: 'purple'\n },\n className = '',\n delimiter = null,\n formState,\n initialValues,\n isEditable = false,\n label = null,\n name,\n onClick = () => {},\n onExitEditModeCallback = null,\n shortChips = false,\n validationRules = {},\n validator = null,\n visibleChipsMaxLength = null,\n withInitialParentWidth = false\n}) => {\n const chipsClassName = classnames('chips', className)\n const [chipSizeIsRecalculated, setChipSizeIsRecalculated] = useState(false)\n const {\n chipsCellRef,\n chipsWrapperRef,\n handleShowElements,\n hiddenChipsCounterRef,\n hiddenChipsPopUpRef,\n setChipsSizes,\n setShowHiddenChips,\n showChips,\n showHiddenChips,\n visibleChipsCount\n } = useChipCell(isEditable, visibleChipsMaxLength, withInitialParentWidth)\n\n const [editConfig, setEditConfig] = useState({\n chipIndex: null,\n isEdit: false,\n isKeyFocused: false,\n isValueFocused: false,\n isNewChip: false\n })\n\n let chips = useMemo(() => {\n return isEditable || visibleChipsMaxLength === 'all'\n ? {\n visibleChips: get(formState.values, name),\n hiddenChips: []\n }\n : generateChipsList(\n get(formState.values, name),\n visibleChipsMaxLength ? visibleChipsMaxLength : visibleChipsCount\n )\n }, [visibleChipsMaxLength, isEditable, visibleChipsCount, formState.values, name])\n\n const checkChipsList = useCallback(\n currentChipsList => {\n if (areArraysEqual(get(initialValues, name), currentChipsList, ['id'])) {\n set(formState.initialValues, name, currentChipsList)\n }\n\n formState.form.mutators.setFieldState(name, { modified: true })\n formState.form.mutators.setFieldState(name, { touched: true })\n },\n [initialValues, name, formState]\n )\n\n const handleAddNewChip = useCallback(\n (event, fields) => {\n const fieldsLength = fields.value?.length || 0\n\n if (!editConfig.isEdit && !editConfig.chipIndex) {\n formState.form.mutators.push(name, {\n id: fieldsLength + new Date(),\n key: '',\n value: '',\n delimiter: delimiter\n })\n }\n\n if (showHiddenChips) {\n setShowHiddenChips(false)\n }\n\n setEditConfig({\n chipIndex: fieldsLength,\n isEdit: true,\n isKeyFocused: true,\n isValueFocused: false,\n isNewChip: true\n })\n\n event && event.preventDefault()\n },\n [\n editConfig.isEdit,\n editConfig.chipIndex,\n showHiddenChips,\n formState.form.mutators,\n name,\n delimiter,\n setShowHiddenChips\n ]\n )\n\n const handleRemoveChip = useCallback(\n (event, fields, chipIndex, isOutsideClick = false) => {\n checkChipsList(\n lodash\n .chain(formState)\n .get(['values', name])\n .filter((_, index) => index !== chipIndex)\n .value()\n )\n\n if (fields.length === 1) {\n formState.form.change(name, [])\n } else {\n fields.remove(chipIndex)\n }\n\n onExitEditModeCallback && onExitEditModeCallback()\n event && !isOutsideClick && event.stopPropagation()\n },\n [checkChipsList, formState, name, onExitEditModeCallback]\n )\n\n const handleEditChip = useCallback(\n (event, fields, nameEvent, isOutsideClick) => {\n const { key, value } = fields.value[editConfig.chipIndex]\n const isChipNotEmpty = !!(key?.trim() && value?.trim())\n\n if (nameEvent === CLICK) {\n if (!isChipNotEmpty) {\n handleRemoveChip(event, fields, editConfig.chipIndex, isOutsideClick)\n }\n\n setEditConfig({\n chipIndex: null,\n isEdit: false,\n isKeyFocused: false,\n isValueFocused: false,\n isNewChip: false\n })\n isChipNotEmpty && onExitEditModeCallback && onExitEditModeCallback()\n } else if (nameEvent === TAB) {\n if (!isChipNotEmpty) {\n handleRemoveChip(event, fields, editConfig.chipIndex)\n }\n\n setEditConfig(prevState => {\n const lastChipSelected = prevState.chipIndex + 1 > fields.value.length - 1\n\n isChipNotEmpty && lastChipSelected && onExitEditModeCallback && onExitEditModeCallback()\n\n return {\n chipIndex: lastChipSelected ? null : prevState.chipIndex + 1,\n isEdit: !lastChipSelected,\n isKeyFocused: !lastChipSelected,\n isValueFocused: false,\n isNewChip: false\n }\n })\n } else if (nameEvent === TAB_SHIFT) {\n if (!isChipNotEmpty) {\n handleRemoveChip(event, fields, editConfig.chipIndex)\n }\n\n setEditConfig(prevState => {\n const firstChipIsSelected = prevState.chipIndex === 0\n\n isChipNotEmpty &&\n firstChipIsSelected &&\n onExitEditModeCallback &&\n onExitEditModeCallback()\n\n return {\n chipIndex: firstChipIsSelected ? null : prevState.chipIndex - 1,\n isEdit: !firstChipIsSelected,\n isKeyFocused: false,\n isValueFocused: !firstChipIsSelected,\n isNewChip: false\n }\n })\n }\n\n checkChipsList(get(formState.values, name))\n\n if (\n (editConfig.chipIndex > 0 && editConfig.chipIndex < fields.value.length - 1) ||\n (fields.value.length > 1 && editConfig.chipIndex === 0 && nameEvent !== TAB_SHIFT) ||\n (fields.value.length > 1 &&\n editConfig.chipIndex === fields.value.length - 1 &&\n nameEvent !== TAB)\n ) {\n event && event.preventDefault()\n }\n },\n [\n editConfig.chipIndex,\n checkChipsList,\n formState.values,\n name,\n onExitEditModeCallback,\n handleRemoveChip\n ]\n )\n\n const handleToEditMode = useCallback(\n (event, chipIndex, keyName) => {\n if (isEditable) {\n const { clientX: pointerCoordinateX, clientY: pointerCoordinateY } = event\n let isKeyClicked = false\n const isClickedInsideInputElement = (\n pointerCoordinateX,\n pointerCoordinateY,\n inputElement\n ) => {\n if (inputElement) {\n const {\n top: topPosition,\n left: leftPosition,\n right: rightPosition,\n bottom: bottomPosition\n } = inputElement.getBoundingClientRect()\n if (pointerCoordinateX > rightPosition || pointerCoordinateX < leftPosition)\n return false\n if (pointerCoordinateY > bottomPosition || pointerCoordinateY < topPosition)\n return false\n\n return true\n }\n }\n event.stopPropagation()\n\n if (event.target.nodeName !== 'INPUT') {\n if (event.target.firstElementChild) {\n isKeyClicked = isClickedInsideInputElement(\n pointerCoordinateX,\n pointerCoordinateY,\n event.target.firstElementChild\n )\n }\n } else {\n isKeyClicked = event.target.name === keyName\n }\n\n setEditConfig(preState => ({\n ...preState,\n chipIndex,\n isEdit: true,\n isKeyFocused: isKeyClicked,\n isValueFocused: !isKeyClicked\n }))\n }\n\n onClick && onClick()\n },\n [isEditable, onClick]\n )\n\n const validateFields = fieldsArray => {\n if (!fieldsArray) return null\n\n let errorData = []\n\n const uniquenessValidator = (newValue, idx) => {\n return !fieldsArray.some(({ key }, index) => {\n return newValue === key && index !== idx\n })\n }\n\n if (!isEmpty(validationRules)) {\n errorData = fieldsArray.map(chip => {\n const [keyValidation, valueValidation] = validateChip(chip)\n\n if (keyValidation && valueValidation) return { key: keyValidation, value: valueValidation }\n\n if (keyValidation) return { key: keyValidation }\n\n if (valueValidation) return { value: valueValidation }\n\n return null\n })\n }\n\n // uniqueness\n fieldsArray.forEach((chip, index) => {\n const isUnique = uniquenessValidator(chip.key, index)\n\n if (!isUnique) {\n if (get(errorData, [index, 'key'], false)) {\n errorData.at(index).key.push(uniquenessError)\n } else {\n set(errorData, [index, 'key'], [uniquenessError])\n }\n }\n })\n\n if (isEmpty(errorData) && validator) {\n errorData = validator(fieldsArray)\n }\n\n if (errorData.every(label => isNil(label))) {\n return null\n }\n\n return errorData\n }\n\n const validateChip = ({ key, value, disabled }) => {\n const validateField = (value, field) => {\n const [newRules, isValidField] = checkPatternsValidity(\n validationRules[field].filter(rule => rule.pattern),\n value\n )\n\n if (isValidField) return null\n\n const invalidRules = newRules.filter(rule => !rule.isValid)\n\n return invalidRules.map(rule => ({ name: rule.name, label: rule.label }))\n }\n\n return disabled ? [null, null] : [validateField(key, 'key'), validateField(value, 'value')]\n }\n\n return (\n <div className={chipsClassName} data-testid={`${name}-chips`}>\n {label && <div className=\"chips__label\">{label}</div>}\n <div className={label ? 'chips__wrapper' : ''}>\n <FormChipCellView\n chipOptions={chipOptions}\n chipSizeIsRecalculated={chipSizeIsRecalculated}\n chips={chips}\n editConfig={editConfig}\n formState={formState}\n handleAddNewChip={handleAddNewChip}\n handleEditChip={handleEditChip}\n handleRemoveChip={handleRemoveChip}\n handleShowElements={handleShowElements}\n handleToEditMode={handleToEditMode}\n isEditable={isEditable}\n name={name}\n ref={{ chipsCellRef, chipsWrapperRef, hiddenChipsCounterRef, hiddenChipsPopUpRef }}\n setChipSizeIsRecalculated={setChipSizeIsRecalculated}\n setChipsSizes={setChipsSizes}\n setEditConfig={setEditConfig}\n shortChips={shortChips}\n showChips={showChips}\n showHiddenChips={showHiddenChips}\n validateFields={validateFields}\n validationRules={validationRules}\n />\n </div>\n </div>\n )\n}\n\nFormChipCell.propTypes = {\n chipOptions: CHIP_OPTIONS,\n className: PropTypes.string,\n delimiter: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n formState: PropTypes.object.isRequired,\n initialValues: PropTypes.object.isRequired,\n isEditable: PropTypes.bool,\n label: PropTypes.string,\n name: PropTypes.string.isRequired,\n onClick: PropTypes.func,\n onExitEditModeCallback: PropTypes.func,\n shortChips: PropTypes.bool,\n validationRules: PropTypes.object,\n validator: PropTypes.func,\n visibleChipsMaxLength: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n withInitialParentWidth: PropTypes.bool\n}\n\nFormChipCell = React.memo(FormChipCell)\n\nexport default FormChipCell\n"],"names":["FormChipCell","chipOptions","className","delimiter","formState","initialValues","isEditable","label","name","onClick","onExitEditModeCallback","shortChips","validationRules","validator","visibleChipsMaxLength","withInitialParentWidth","chipsClassName","classnames","chipSizeIsRecalculated","setChipSizeIsRecalculated","useState","chipsCellRef","chipsWrapperRef","handleShowElements","hiddenChipsCounterRef","hiddenChipsPopUpRef","setChipsSizes","setShowHiddenChips","showChips","showHiddenChips","visibleChipsCount","useChipCell","editConfig","setEditConfig","chips","useMemo","get","generateChipsList","checkChipsList","useCallback","currentChipsList","areArraysEqual","set","handleAddNewChip","event","fields","fieldsLength","_a","handleRemoveChip","chipIndex","isOutsideClick","lodash","_","index","handleEditChip","nameEvent","key","value","isChipNotEmpty","CLICK","TAB","prevState","lastChipSelected","TAB_SHIFT","firstChipIsSelected","handleToEditMode","keyName","pointerCoordinateX","pointerCoordinateY","isKeyClicked","isClickedInsideInputElement","inputElement","topPosition","leftPosition","rightPosition","bottomPosition","preState","validateFields","fieldsArray","errorData","uniquenessValidator","newValue","idx","isEmpty","chip","keyValidation","valueValidation","validateChip","uniquenessError","isNil","disabled","validateField","field","newRules","isValidField","checkPatternsValidity","rule","jsx","FormChipCellView","CHIP_OPTIONS","PropTypes","React","FormChipCell$1"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabsSlider.d.ts","sourceRoot":"","sources":["../../../src/lib/components/TabsSlider/TabsSlider.jsx"],"names":[],"mappings":";AA+BA;;;;;;;
|
|
1
|
+
{"version":3,"file":"TabsSlider.d.ts","sourceRoot":"","sources":["../../../src/lib/components/TabsSlider/TabsSlider.jsx"],"names":[],"mappings":";AA+BA;;;;;;;gBAsMC"}
|