@bigbinary/neeto-fields-frontend 2.3.2 → 2.3.4
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/{DeleteAlert-6da0e8f8.js → DeleteAlert-CJO7QTRI.js} +10 -6
- package/dist/{DeleteAlert-6da0e8f8.js.map → DeleteAlert-CJO7QTRI.js.map} +1 -1
- package/dist/{DeleteAlert-fbc41b31.js → DeleteAlert-eLnhk6_S.js} +19 -24
- package/dist/{DeleteAlert-fbc41b31.js.map → DeleteAlert-eLnhk6_S.js.map} +1 -1
- package/dist/FieldDeleteAlert.js +8 -6
- package/dist/FieldDeleteAlert.js.map +1 -1
- package/dist/FieldInputs.js +9 -5
- package/dist/FieldInputs.js.map +1 -1
- package/dist/{FieldValueInputWrapper-4ab341a7.js → FieldValueInputWrapper-DjK-3R-D.js} +14 -13
- package/dist/FieldValueInputWrapper-DjK-3R-D.js.map +1 -0
- package/dist/{FieldValueInputWrapper-adbbc915.js → FieldValueInputWrapper-ue-Ncf4z.js} +23 -28
- package/dist/FieldValueInputWrapper-ue-Ncf4z.js.map +1 -0
- package/dist/FieldValuesContainer.js +12 -8
- package/dist/FieldValuesContainer.js.map +1 -1
- package/dist/FieldsDashboard.js +14 -12
- package/dist/FieldsDashboard.js.map +1 -1
- package/dist/FieldsPane.js +72 -6
- package/dist/FieldsPane.js.map +1 -1
- package/dist/InlineFieldValueInput.js +14 -10
- package/dist/InlineFieldValueInput.js.map +1 -1
- package/dist/cjs/FieldDeleteAlert.js +8 -6
- package/dist/cjs/FieldDeleteAlert.js.map +1 -1
- package/dist/cjs/FieldInputs.js +11 -11
- package/dist/cjs/FieldInputs.js.map +1 -1
- package/dist/cjs/FieldValuesContainer.js +19 -22
- package/dist/cjs/FieldValuesContainer.js.map +1 -1
- package/dist/cjs/FieldsDashboard.js +69 -86
- package/dist/cjs/FieldsDashboard.js.map +1 -1
- package/dist/cjs/FieldsPane.js +108 -56
- package/dist/cjs/FieldsPane.js.map +1 -1
- package/dist/cjs/InlineFieldValueInput.js +18 -19
- package/dist/cjs/InlineFieldValueInput.js.map +1 -1
- package/dist/cjs/hooks.js +6 -5
- package/dist/cjs/hooks.js.map +1 -1
- package/dist/cjs/index.js +35 -33
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils.js +9 -7
- package/dist/cjs/utils.js.map +1 -1
- package/dist/{constants-c71008a3.js → constants-CNocslTu.js} +1 -1
- package/dist/{constants-c71008a3.js.map → constants-CNocslTu.js.map} +1 -1
- package/dist/{constants-0e6017ea.js → constants-DAiy8JQK.js} +2 -2
- package/dist/{constants-0e6017ea.js.map → constants-DAiy8JQK.js.map} +1 -1
- package/dist/hooks.js +6 -3
- package/dist/hooks.js.map +1 -1
- package/dist/index-BCXsyMdx.js +16 -0
- package/dist/index-BCXsyMdx.js.map +1 -0
- package/dist/index-D9idRDgn.js +25 -0
- package/dist/index-D9idRDgn.js.map +1 -0
- package/dist/index.js +35 -31
- package/dist/index.js.map +1 -1
- package/dist/{query-1a62b3ac.js → query-DWn563ij.js} +1 -1
- package/dist/{query-1a62b3ac.js.map → query-DWn563ij.js.map} +1 -1
- package/dist/{query-0df5b2dd.js → query-DXkir3SS.js} +1 -1
- package/dist/{query-0df5b2dd.js.map → query-DXkir3SS.js.map} +1 -1
- package/dist/{useFieldsApi-ff7ecf00.js → useFieldsApi-CNM4-TGd.js} +7 -4
- package/dist/useFieldsApi-CNM4-TGd.js.map +1 -0
- package/dist/{useFieldsApi-14928ecf.js → useFieldsApi-CPPFCDrd.js} +17 -18
- package/dist/useFieldsApi-CPPFCDrd.js.map +1 -0
- package/dist/{utils-85ed1903.js → utils-DhYh-OB8.js} +56 -445
- package/dist/utils-DhYh-OB8.js.map +1 -0
- package/dist/{utils-ac2eff7a.js → utils-Ft00NQnd.js} +15 -390
- package/dist/utils-Ft00NQnd.js.map +1 -0
- package/dist/utils.js +9 -5
- package/dist/utils.js.map +1 -1
- package/package.json +100 -84
- package/dist/FieldValueInputWrapper-4ab341a7.js.map +0 -1
- package/dist/FieldValueInputWrapper-adbbc915.js.map +0 -1
- package/dist/_commonjsHelpers-1789f0cf.js +0 -8
- package/dist/_commonjsHelpers-1789f0cf.js.map +0 -1
- package/dist/_commonjsHelpers-b3309d7b.js +0 -11
- package/dist/_commonjsHelpers-b3309d7b.js.map +0 -1
- package/dist/index-27e54c2c.js +0 -130
- package/dist/index-27e54c2c.js.map +0 -1
- package/dist/index-a8c08067.js +0 -117
- package/dist/index-a8c08067.js.map +0 -1
- package/dist/slicedToArray-151ed900.js +0 -44
- package/dist/slicedToArray-151ed900.js.map +0 -1
- package/dist/slicedToArray-50f7cc19.js +0 -46
- package/dist/slicedToArray-50f7cc19.js.map +0 -1
- package/dist/useFieldsApi-14928ecf.js.map +0 -1
- package/dist/useFieldsApi-ff7ecf00.js.map +0 -1
- package/dist/utils-85ed1903.js.map +0 -1
- package/dist/utils-ac2eff7a.js.map +0 -1
package/dist/cjs/FieldsPane.js
CHANGED
|
@@ -1,25 +1,26 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
4
|
+
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
4
5
|
var React = require('react');
|
|
5
6
|
var Pane = require('@bigbinary/neetoui/Pane');
|
|
6
7
|
var ramda = require('ramda');
|
|
7
8
|
var Typography = require('@bigbinary/neetoui/Typography');
|
|
8
9
|
var Form = require('@bigbinary/neetoui/formik/Form');
|
|
9
10
|
var reactI18next = require('react-i18next');
|
|
10
|
-
var constants = require('../constants-
|
|
11
|
-
var useFieldsApi = require('../useFieldsApi-
|
|
11
|
+
var constants = require('../constants-CNocslTu.js');
|
|
12
|
+
var useFieldsApi = require('../useFieldsApi-CPPFCDrd.js');
|
|
12
13
|
var i18next = require('i18next');
|
|
13
14
|
var yup = require('yup');
|
|
14
15
|
var neetoCist = require('@bigbinary/neeto-cist');
|
|
15
16
|
var ActionBlock = require('@bigbinary/neetoui/formik/ActionBlock');
|
|
16
|
-
var uuid = require('uuid');
|
|
17
17
|
var jsxRuntime = require('react/jsx-runtime');
|
|
18
18
|
var formik = require('formik');
|
|
19
19
|
var Label = require('@bigbinary/neetoui/Label');
|
|
20
20
|
var Input = require('@bigbinary/neetoui/formik/Input');
|
|
21
21
|
var Select = require('@bigbinary/neetoui/formik/Select');
|
|
22
22
|
var Switch = require('@bigbinary/neetoui/formik/Switch');
|
|
23
|
+
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
23
24
|
var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
24
25
|
var Delete = require('@bigbinary/neeto-icons/Delete');
|
|
25
26
|
var Button = require('@bigbinary/neetoui/Button');
|
|
@@ -27,12 +28,10 @@ var Spinner = require('@bigbinary/neetoui/Spinner');
|
|
|
27
28
|
require('@tanstack/react-query');
|
|
28
29
|
require('axios');
|
|
29
30
|
require('@bigbinary/neeto-commons-frontend/utils');
|
|
30
|
-
require('../
|
|
31
|
+
require('../index-D9idRDgn.js');
|
|
32
|
+
require('../query-DXkir3SS.js');
|
|
31
33
|
|
|
32
|
-
function
|
|
33
|
-
|
|
34
|
-
function _interopNamespace(e) {
|
|
35
|
-
if (e && e.__esModule) return e;
|
|
34
|
+
function _interopNamespaceDefault(e) {
|
|
36
35
|
var n = Object.create(null);
|
|
37
36
|
if (e) {
|
|
38
37
|
Object.keys(e).forEach(function (k) {
|
|
@@ -45,25 +44,78 @@ function _interopNamespace(e) {
|
|
|
45
44
|
}
|
|
46
45
|
});
|
|
47
46
|
}
|
|
48
|
-
n
|
|
47
|
+
n.default = e;
|
|
49
48
|
return Object.freeze(n);
|
|
50
49
|
}
|
|
51
50
|
|
|
52
|
-
var
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
var
|
|
58
|
-
var
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
51
|
+
var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
|
|
52
|
+
|
|
53
|
+
// Unique ID creation requires a high quality random # generator. In the browser we therefore
|
|
54
|
+
// require the crypto API and do not support built-in fallback to lower quality random number
|
|
55
|
+
// generators (like Math.random()).
|
|
56
|
+
var getRandomValues;
|
|
57
|
+
var rnds8 = new Uint8Array(16);
|
|
58
|
+
function rng() {
|
|
59
|
+
// lazy load so that environments that need to polyfill have a chance to do so
|
|
60
|
+
if (!getRandomValues) {
|
|
61
|
+
// getRandomValues needs to be invoked in a context where "this" is a Crypto implementation. Also,
|
|
62
|
+
// find the complete implementation of crypto (msCrypto) on IE11.
|
|
63
|
+
getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);
|
|
64
|
+
|
|
65
|
+
if (!getRandomValues) {
|
|
66
|
+
throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
return getRandomValues(rnds8);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
var REGEX = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
|
|
74
|
+
|
|
75
|
+
function validate(uuid) {
|
|
76
|
+
return typeof uuid === 'string' && REGEX.test(uuid);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Convert array of 16 byte values to UUID string format of the form:
|
|
81
|
+
* XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
|
|
82
|
+
*/
|
|
83
|
+
|
|
84
|
+
var byteToHex = [];
|
|
85
|
+
|
|
86
|
+
for (var i = 0; i < 256; ++i) {
|
|
87
|
+
byteToHex.push((i + 0x100).toString(16).substr(1));
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
function stringify(arr) {
|
|
91
|
+
var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
92
|
+
// Note: Be careful editing this code! It's been tuned for performance
|
|
93
|
+
// and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
|
|
94
|
+
var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one
|
|
95
|
+
// of the following:
|
|
96
|
+
// - One or more input array values don't map to a hex octet (leading to
|
|
97
|
+
// "undefined" in the uuid)
|
|
98
|
+
// - Invalid input values for the RFC `version` or `variant` fields
|
|
99
|
+
|
|
100
|
+
if (!validate(uuid)) {
|
|
101
|
+
throw TypeError('Stringified UUID is invalid');
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
return uuid;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
function v4(options, buf, offset) {
|
|
108
|
+
options = options || {};
|
|
109
|
+
var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
|
|
110
|
+
|
|
111
|
+
rnds[6] = rnds[6] & 0x0f | 0x40;
|
|
112
|
+
rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided
|
|
113
|
+
|
|
114
|
+
return stringify(rnds);
|
|
115
|
+
}
|
|
64
116
|
|
|
65
117
|
function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
66
|
-
function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) {
|
|
118
|
+
function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
67
119
|
var arrangeOptionsDisplayOrder = function arrangeOptionsDisplayOrder(options) {
|
|
68
120
|
return options.map(function (option, index) {
|
|
69
121
|
return _objectSpread$3(_objectSpread$3({}, option), {}, {
|
|
@@ -121,8 +173,8 @@ var generateValidationSchema = function generateValidationSchema(additionalValid
|
|
|
121
173
|
var renderFormFooter = function renderFormFooter(_ref3) {
|
|
122
174
|
var onClose = _ref3.onClose,
|
|
123
175
|
loading = _ref3.loading;
|
|
124
|
-
return /*#__PURE__*/jsxRuntime.jsx(
|
|
125
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
176
|
+
return /*#__PURE__*/jsxRuntime.jsx(Pane.Footer, {
|
|
177
|
+
children: /*#__PURE__*/jsxRuntime.jsx(ActionBlock, {
|
|
126
178
|
cancelButtonProps: {
|
|
127
179
|
onClick: onClose
|
|
128
180
|
},
|
|
@@ -132,7 +184,7 @@ var renderFormFooter = function renderFormFooter(_ref3) {
|
|
|
132
184
|
};
|
|
133
185
|
var getDefaultOption = function getDefaultOption() {
|
|
134
186
|
return {
|
|
135
|
-
id:
|
|
187
|
+
id: v4(),
|
|
136
188
|
label: "",
|
|
137
189
|
displayOrder: 0
|
|
138
190
|
};
|
|
@@ -299,7 +351,7 @@ var AdditionalInputs = function AdditionalInputs() {
|
|
|
299
351
|
var _inputs;
|
|
300
352
|
if (event.key !== "Enter" || reactUtils.isMetaKeyPressed(event)) return;
|
|
301
353
|
var form = event.target.form;
|
|
302
|
-
var inputs =
|
|
354
|
+
var inputs = _toConsumableArray(form.querySelectorAll("#neeto-fields-dropdown-options-wrapper input"));
|
|
303
355
|
var currentIndex = inputs.indexOf(event.target);
|
|
304
356
|
currentIndex >= inputs.length - 1 ? addOption(arrayHelpers) : (_inputs = inputs[currentIndex + 1]) === null || _inputs === void 0 ? void 0 : _inputs.focus();
|
|
305
357
|
event.preventDefault();
|
|
@@ -312,7 +364,7 @@ var AdditionalInputs = function AdditionalInputs() {
|
|
|
312
364
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
313
365
|
className: "flex w-full flex-col gap-y-4",
|
|
314
366
|
id: "neeto-fields-dropdown-options-wrapper",
|
|
315
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(
|
|
367
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(Label, {
|
|
316
368
|
required: true,
|
|
317
369
|
children: t("neetoFields.titles.dropdownOptions")
|
|
318
370
|
}), neetoCist.isNotEmpty(options) && Array.isArray(options) && options.map(function (_, index) {
|
|
@@ -320,15 +372,15 @@ var AdditionalInputs = function AdditionalInputs() {
|
|
|
320
372
|
className: "flex w-full space-x-3",
|
|
321
373
|
children: /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
322
374
|
className: "w-full",
|
|
323
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
375
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Input, {
|
|
324
376
|
autoFocus: dirty,
|
|
325
377
|
"data-cy": "neeto-fields-dropdown-option-".concat(index),
|
|
326
378
|
disabled: isSystem,
|
|
327
379
|
name: "data.".concat(index, ".label"),
|
|
328
380
|
placeholder: t("neetoFields.placeholders.enterAnOption"),
|
|
329
|
-
suffix: options.length > 1 && /*#__PURE__*/jsxRuntime.jsx(
|
|
381
|
+
suffix: options.length > 1 && /*#__PURE__*/jsxRuntime.jsx(Button, {
|
|
330
382
|
"data-cy": "neeto-fields-dropdown-option-delete-".concat(index),
|
|
331
|
-
icon:
|
|
383
|
+
icon: Delete,
|
|
332
384
|
style: "text",
|
|
333
385
|
onClick: function onClick() {
|
|
334
386
|
return removeOption(arrayHelpers, index);
|
|
@@ -340,7 +392,7 @@ var AdditionalInputs = function AdditionalInputs() {
|
|
|
340
392
|
})
|
|
341
393
|
})
|
|
342
394
|
}, index);
|
|
343
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
395
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Button, {
|
|
344
396
|
fullWidth: true,
|
|
345
397
|
className: "mb-6 border-dashed text-xs uppercase",
|
|
346
398
|
"data-cy": "neeto-fields-add-more-option-button",
|
|
@@ -356,15 +408,15 @@ var AdditionalInputs = function AdditionalInputs() {
|
|
|
356
408
|
} else if (isRegex(kind.value)) {
|
|
357
409
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
358
410
|
className: "flex w-full flex-col gap-y-4",
|
|
359
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(
|
|
411
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(Label, {
|
|
360
412
|
required: true,
|
|
361
413
|
children: t("neetoFields.titles.regexOptions")
|
|
362
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
414
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Input, {
|
|
363
415
|
disabled: isSystem,
|
|
364
416
|
label: t("neetoFields.labels.regexCondition"),
|
|
365
417
|
name: "data.condition",
|
|
366
418
|
placeholder: t("neetoFields.placeholders.regexExample")
|
|
367
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
419
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Input, {
|
|
368
420
|
disabled: isSystem,
|
|
369
421
|
label: t("neetoFields.labels.helpMessage"),
|
|
370
422
|
name: "data.helpMessage",
|
|
@@ -398,10 +450,10 @@ var FieldForm = function FieldForm(_ref) {
|
|
|
398
450
|
setFieldValue("data", options !== null && options !== void 0 ? options : DEFAULT_REGEX_DATA);
|
|
399
451
|
}
|
|
400
452
|
};
|
|
401
|
-
return /*#__PURE__*/jsxRuntime.jsx(
|
|
453
|
+
return /*#__PURE__*/jsxRuntime.jsx(Pane.Body, {
|
|
402
454
|
children: /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
403
455
|
className: "w-full space-y-4",
|
|
404
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(
|
|
456
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(Input, {
|
|
405
457
|
required: true,
|
|
406
458
|
"data-cy": "name-text-field",
|
|
407
459
|
disabled: isSystem,
|
|
@@ -409,7 +461,7 @@ var FieldForm = function FieldForm(_ref) {
|
|
|
409
461
|
name: "name",
|
|
410
462
|
placeholder: t("neetoFields.placeholders.enterFieldName"),
|
|
411
463
|
ref: initialFocusField
|
|
412
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
464
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Select, {
|
|
413
465
|
isSearchable: true,
|
|
414
466
|
required: true,
|
|
415
467
|
isDisabled: isSystem,
|
|
@@ -417,13 +469,13 @@ var FieldForm = function FieldForm(_ref) {
|
|
|
417
469
|
name: "kind",
|
|
418
470
|
options: kindSelectOptions,
|
|
419
471
|
onChange: handleKindChange
|
|
420
|
-
}), isAdditionalDataNeeded(chosenKind) && /*#__PURE__*/jsxRuntime.jsx(AdditionalInputs, {}), !hideRequiredSwitch && /*#__PURE__*/jsxRuntime.jsxs(
|
|
472
|
+
}), isAdditionalDataNeeded(chosenKind) && /*#__PURE__*/jsxRuntime.jsx(AdditionalInputs, {}), !hideRequiredSwitch && /*#__PURE__*/jsxRuntime.jsxs(Label, {
|
|
421
473
|
className: "flex items-center gap-2",
|
|
422
474
|
"data-cy": "is-required-switch-container",
|
|
423
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(
|
|
475
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(Switch, {
|
|
424
476
|
"data-cy": "is-required-switch",
|
|
425
477
|
name: "isRequired"
|
|
426
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
478
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
427
479
|
className: "leading-4",
|
|
428
480
|
component: "span",
|
|
429
481
|
"data-cy": "is-required-switch-label",
|
|
@@ -437,7 +489,7 @@ var FieldForm = function FieldForm(_ref) {
|
|
|
437
489
|
|
|
438
490
|
var _excluded$2 = ["resourceType", "allowedKinds", "ownerId", "additionalValidations", "initialValues", "onClose", "onMutationSuccess"];
|
|
439
491
|
function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
440
|
-
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) {
|
|
492
|
+
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
441
493
|
var Add = function Add(_ref) {
|
|
442
494
|
var _filteredKinds$;
|
|
443
495
|
var resourceType = _ref.resourceType,
|
|
@@ -448,7 +500,7 @@ var Add = function Add(_ref) {
|
|
|
448
500
|
initialValues = _ref.initialValues,
|
|
449
501
|
onClose = _ref.onClose,
|
|
450
502
|
onMutationSuccess = _ref.onMutationSuccess,
|
|
451
|
-
props =
|
|
503
|
+
props = _objectWithoutProperties(_ref, _excluded$2);
|
|
452
504
|
var _useTranslation = reactI18next.useTranslation(),
|
|
453
505
|
t = _useTranslation.t;
|
|
454
506
|
var _useCreateField = useFieldsApi.useCreateField({
|
|
@@ -468,13 +520,13 @@ var Add = function Add(_ref) {
|
|
|
468
520
|
});
|
|
469
521
|
};
|
|
470
522
|
return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
471
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(
|
|
472
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
523
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(Pane.Header, {
|
|
524
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
473
525
|
"data-cy": "add-pane-header",
|
|
474
526
|
style: "h2",
|
|
475
527
|
children: t("neetoFields.titles.addField")
|
|
476
528
|
})
|
|
477
|
-
}), /*#__PURE__*/jsxRuntime.jsx(
|
|
529
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Form, {
|
|
478
530
|
formikProps: {
|
|
479
531
|
initialValues: _objectSpread$2(_objectSpread$2({}, initialValues), initialFields((_filteredKinds$ = filteredKinds[0]) === null || _filteredKinds$ === void 0 ? void 0 : _filteredKinds$.value)),
|
|
480
532
|
validationSchema: generateValidationSchema(additionalValidations),
|
|
@@ -498,7 +550,7 @@ var Add = function Add(_ref) {
|
|
|
498
550
|
|
|
499
551
|
var _excluded$1 = ["fieldId", "allowedKinds", "ownerId", "additionalValidations", "initialValues", "onClose", "onMutationSuccess"];
|
|
500
552
|
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
501
|
-
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) {
|
|
553
|
+
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
502
554
|
var Edit = function Edit(_ref) {
|
|
503
555
|
var fieldId = _ref.fieldId,
|
|
504
556
|
_ref$allowedKinds = _ref.allowedKinds,
|
|
@@ -510,7 +562,7 @@ var Edit = function Edit(_ref) {
|
|
|
510
562
|
initialValues = _ref$initialValues === void 0 ? {} : _ref$initialValues,
|
|
511
563
|
onClose = _ref.onClose,
|
|
512
564
|
onMutationSuccess = _ref.onMutationSuccess,
|
|
513
|
-
props =
|
|
565
|
+
props = _objectWithoutProperties(_ref, _excluded$1);
|
|
514
566
|
var _useTranslation = reactI18next.useTranslation(),
|
|
515
567
|
t = _useTranslation.t;
|
|
516
568
|
var _useShowField = useFieldsApi.useShowField({
|
|
@@ -527,7 +579,7 @@ var Edit = function Edit(_ref) {
|
|
|
527
579
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
528
580
|
args[_key] = arguments[_key];
|
|
529
581
|
}
|
|
530
|
-
onMutationSuccess === null || onMutationSuccess === void 0
|
|
582
|
+
onMutationSuccess === null || onMutationSuccess === void 0 ? void 0 : onMutationSuccess.apply(void 0, args);
|
|
531
583
|
onClose();
|
|
532
584
|
}
|
|
533
585
|
}),
|
|
@@ -544,16 +596,16 @@ var Edit = function Edit(_ref) {
|
|
|
544
596
|
});
|
|
545
597
|
};
|
|
546
598
|
return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
547
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(
|
|
548
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
599
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(Pane.Header, {
|
|
600
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
549
601
|
"data-cy": "edit-pane-header",
|
|
550
602
|
style: "h2",
|
|
551
603
|
children: t("neetoFields.titles.editField")
|
|
552
604
|
})
|
|
553
605
|
}), isLoading ? /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
554
606
|
className: "flex h-full w-full items-center justify-center",
|
|
555
|
-
children: /*#__PURE__*/jsxRuntime.jsx(
|
|
556
|
-
}) : /*#__PURE__*/jsxRuntime.jsx(
|
|
607
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Spinner, {})
|
|
608
|
+
}) : /*#__PURE__*/jsxRuntime.jsx(Form, {
|
|
557
609
|
formikProps: {
|
|
558
610
|
initialValues: _objectSpread$1(_objectSpread$1({}, initialValues), ramda.assoc("kind", FIELD_KINDS[field.kind], field)),
|
|
559
611
|
validationSchema: generateValidationSchema(additionalValidations),
|
|
@@ -583,14 +635,14 @@ var Edit = function Edit(_ref) {
|
|
|
583
635
|
|
|
584
636
|
var _excluded = ["isOpen", "selectedField"];
|
|
585
637
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
586
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {
|
|
638
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
587
639
|
var FieldsPane = function FieldsPane(_ref) {
|
|
588
640
|
var isOpen = _ref.isOpen,
|
|
589
641
|
_ref$selectedField = _ref.selectedField,
|
|
590
642
|
selectedField = _ref$selectedField === void 0 ? {} : _ref$selectedField,
|
|
591
|
-
props =
|
|
643
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
592
644
|
var initialFocusField = React.useRef(null);
|
|
593
|
-
return /*#__PURE__*/jsxRuntime.jsx(
|
|
645
|
+
return /*#__PURE__*/jsxRuntime.jsx(Pane, {
|
|
594
646
|
isOpen: isOpen,
|
|
595
647
|
initialFocusRef: initialFocusField,
|
|
596
648
|
onClose: props.onClose,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldsPane.js","sources":["../../app/javascript/src/components/FieldsPane/utils.jsx","../../app/javascript/src/components/FieldsPane/constants.js","../../app/javascript/src/components/FieldsPane/AdditionalInputs.jsx","../../app/javascript/src/components/FieldsPane/FieldForm.jsx","../../app/javascript/src/components/FieldsPane/Add.jsx","../../app/javascript/src/components/FieldsPane/Edit.jsx","../../app/javascript/src/components/FieldsPane/index.jsx"],"sourcesContent":["import { filterBy, toLabelAndValue } from \"neetocist\";\nimport { Pane } from \"neetoui\";\nimport { ActionBlock } from \"neetoui/formik\";\nimport { isEmpty, omit, pick, values } from \"ramda\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport * as yup from \"yup\";\n\nimport {\n ADDITIONAL_DATA_NEEDED_FIELD_KINDS,\n FIELD_KINDS,\n BASIC_FIELD_FORM_VALIDATIONS,\n} from \"./constants\";\n\nconst arrangeOptionsDisplayOrder = options =>\n options.map((option, index) => ({ ...option, displayOrder: index }));\n\nexport const buildPayload = ({\n formValues,\n resourceType = \"\",\n ownerId = \"\",\n}) => {\n const kind = formValues.kind.value;\n const name = formValues.name.trim();\n\n return {\n ownerId: isEmpty(ownerId) ? undefined : ownerId,\n field: {\n ...omit(\n [\"createdAt\", \"id\", \"ownerId\", \"ownerType\", \"updatedAt\"],\n formValues\n ),\n kind,\n name,\n resourceType: isEmpty(resourceType) ? undefined : resourceType,\n data: isDropdown(kind)\n ? arrangeOptionsDisplayOrder(formValues.data)\n : formValues.data,\n },\n };\n};\n\nexport const isDropdown = kind =>\n [\"single_option\", \"multi_option\"].includes(kind);\n\nexport const isRegex = kind => kind === \"regex\";\n\nexport const isAdditionalDataNeeded = kind =>\n ADDITIONAL_DATA_NEEDED_FIELD_KINDS.includes(kind);\n\nexport const getPermittedKinds = ({ allowedKinds, selectedKind }) => {\n const filteredKinds = pick(allowedKinds, FIELD_KINDS);\n\n return filterBy({ group: selectedKind?.group }, values(filteredKinds));\n};\n\nexport const initialFields = (kind = \"text\") => ({\n name: \"\",\n kind: toLabelAndValue(kind),\n isRequired: false,\n data: isDropdown(kind) ? [getDefaultOption()] : undefined,\n});\n\nexport const generateValidationSchema = additionalValidations =>\n yup\n .object()\n .shape({ ...BASIC_FIELD_FORM_VALIDATIONS, ...additionalValidations });\n\nexport const renderFormFooter = ({ onClose, loading }) => (\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n isSubmitting={loading}\n />\n </Pane.Footer>\n);\n\nexport const getDefaultOption = () => ({\n id: uuidv4(),\n label: \"\",\n displayOrder: 0,\n});\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nimport { isDropdown, isRegex } from \"./utils\";\n\nconst PERMITTED_REGEX_PATTERN = /^\\/.*\\/[igmsyu]*$/;\nconst ADVANCED_REGEX_ASSERTION_PATTERN =\n /\\(\\?=[^)]*\\)|\\(\\?![^)]*\\)|\\(\\?<=[^)]*\\)|\\(\\?<![^)]*\\)/;\n\nconst regexValidationSchema = yup.object().shape({\n condition: yup\n .string()\n .required(t(\"neetoFields.validations.regexConditionIsRequired\"))\n .matches(\n PERMITTED_REGEX_PATTERN,\n t(\"neetoFields.validations.invalidRegexPattern\")\n )\n .test({\n name: \"test-regex-is-advanced\",\n message:\n t(\"neetoFields.validations.advancedRegexAssertionsNotSupported\") || \"\",\n test: value => !ADVANCED_REGEX_ASSERTION_PATTERN.test(value),\n })\n .test({\n name: \"test-regex-condition-pattern\",\n message: t(\"neetoFields.validations.invalidRegexPattern\") || \"\",\n test: value => {\n try {\n const lastIndex = value.lastIndexOf(\"/\");\n const condition = value.substring(1, lastIndex);\n // Evaluating the regex to check if it is valid\n new RegExp(condition);\n \"\".search(condition);\n\n return true;\n } catch {\n return false;\n }\n },\n }),\n helpMessage: yup\n .string()\n .required(t(\"neetoFields.validations.regexHelpMessageIsRequired\")),\n});\n\nconst dropDownOptionsValidationSchema = yup\n .array()\n .of(\n yup.object().shape({\n label: yup\n .string()\n .trim()\n .required(t(\"neetoFields.validations.fieldOptionIsRequired\")),\n displayOrder: yup.number(),\n })\n )\n .min(1, t(\"neetoFields.validations.atLeastFieldOptionIsRequired\"));\n\nexport const FIELD_KINDS = {\n text: { value: \"text\", label: t(\"neetoFields.fields.kinds.text\"), group: 1 },\n number: {\n value: \"number\",\n label: t(\"neetoFields.fields.kinds.number\"),\n group: 2,\n },\n monetary: {\n value: \"monetary\",\n label: t(\"neetoFields.fields.kinds.monetary\"),\n group: 2,\n },\n single_option: {\n value: \"single_option\",\n label: t(\"neetoFields.fields.kinds.singleOption\"),\n group: 12,\n },\n multi_option: {\n value: \"multi_option\",\n label: t(\"neetoFields.fields.kinds.multiOption\"),\n group: 3,\n },\n date: { value: \"date\", label: t(\"neetoFields.fields.kinds.date\"), group: 4 },\n time: { value: \"time\", label: t(\"neetoFields.fields.kinds.time\"), group: 5 },\n date_range: {\n value: \"date_range\",\n label: t(\"neetoFields.fields.kinds.dateRange\"),\n group: 6,\n },\n time_range: {\n value: \"time_range\",\n label: t(\"neetoFields.fields.kinds.timeRange\"),\n group: 7,\n },\n text_area: {\n value: \"text_area\",\n label: t(\"neetoFields.fields.kinds.textArea\"),\n group: 1,\n },\n textarea: {\n value: \"textarea\",\n label: t(\"neetoFields.fields.kinds.textarea\"),\n group: 1,\n },\n person: {\n value: \"person\",\n label: t(\"neetoFields.fields.kinds.person\"),\n group: 8,\n },\n checkbox: {\n value: \"checkbox\",\n label: t(\"neetoFields.fields.kinds.checkbox\"),\n group: 9,\n },\n regex: {\n value: \"regex\",\n label: t(\"neetoFields.fields.kinds.regex\"),\n group: 10,\n },\n integer: {\n value: \"integer\",\n label: t(\"neetoFields.fields.kinds.integer\"),\n group: 2,\n },\n decimal: {\n value: \"decimal\",\n label: t(\"neetoFields.fields.kinds.decimal\"),\n group: 2,\n },\n datetime: {\n value: \"datetime\",\n label: t(\"neetoFields.fields.kinds.datetime\"),\n group: 11,\n },\n};\n\nexport const ADDITIONAL_DATA_NEEDED_FIELD_KINDS = [\n \"single_option\",\n \"multi_option\",\n \"regex\",\n];\n\nexport const DEFAULT_REGEX_DATA = { condition: \"\", helpMessage: \"\" };\n\nexport const BASIC_FIELD_FORM_VALIDATIONS = {\n name: yup\n .string()\n .trim()\n .required(t(\"neetoFields.validations.fieldNameIsRequired\")),\n isRequired: yup.boolean(),\n kind: yup\n .object()\n .shape({ value: yup.string().required() })\n .required(t(\"neetoFields.validations.kindIsRequired\")),\n data: yup\n .mixed()\n .when(\"kind\", {\n is: kind => isRegex(kind?.value),\n then: regexValidationSchema,\n })\n .when(\"kind\", {\n is: kind => isDropdown(kind?.value),\n then: dropDownOptionsValidationSchema,\n }),\n};\n","import { FieldArray, useFormikContext } from \"formik\";\nimport { isNotEmpty } from \"neetocist\";\nimport { isMetaKeyPressed } from \"neetocommons/react-utils\";\nimport { Delete } from \"neetoicons\";\nimport { Label, Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getDefaultOption, isDropdown, isRegex } from \"./utils\";\n\nconst AdditionalInputs = () => {\n const { t } = useTranslation();\n\n const {\n values: { kind, data: options, isSystem },\n dirty,\n } = useFormikContext();\n\n const removeOption = (arrayHelpers, index) => arrayHelpers.remove(index);\n\n const addOption = arrayHelpers => arrayHelpers.push(getDefaultOption());\n\n const handleKeyDown = (event, arrayHelpers) => {\n if (event.key !== \"Enter\" || isMetaKeyPressed(event)) return;\n\n const form = event.target.form;\n const inputs = [\n ...form.querySelectorAll(\"#neeto-fields-dropdown-options-wrapper input\"),\n ];\n\n const currentIndex = inputs.indexOf(event.target);\n\n currentIndex >= inputs.length - 1\n ? addOption(arrayHelpers)\n : inputs[currentIndex + 1]?.focus();\n\n event.preventDefault();\n event.stopPropagation();\n };\n\n if (isDropdown(kind.value)) {\n return (\n <FieldArray name=\"data\">\n {arrayHelpers => (\n <div\n className=\"flex w-full flex-col gap-y-4\"\n id=\"neeto-fields-dropdown-options-wrapper\"\n >\n <Label required>{t(\"neetoFields.titles.dropdownOptions\")}</Label>\n {isNotEmpty(options) &&\n Array.isArray(options) &&\n options.map((_, index) => (\n <div className=\"flex w-full space-x-3\" key={index}>\n <div className=\"w-full\">\n <Input\n autoFocus={dirty}\n data-cy={`neeto-fields-dropdown-option-${index}`}\n disabled={isSystem}\n name={`data.${index}.label`}\n placeholder={t(\"neetoFields.placeholders.enterAnOption\")}\n suffix={\n options.length > 1 && (\n <Button\n data-cy={`neeto-fields-dropdown-option-delete-${index}`}\n icon={Delete}\n style=\"text\"\n onClick={() => removeOption(arrayHelpers, index)}\n />\n )\n }\n onKeyDown={event => handleKeyDown(event, arrayHelpers)}\n />\n </div>\n </div>\n ))}\n <Button\n fullWidth\n className=\"mb-6 border-dashed text-xs uppercase\"\n data-cy=\"neeto-fields-add-more-option-button\"\n label={t(\"neetoFields.labels.addAnotherOption\")}\n style=\"secondary\"\n onClick={() => addOption(arrayHelpers)}\n />\n </div>\n )}\n </FieldArray>\n );\n } else if (isRegex(kind.value)) {\n return (\n <div className=\"flex w-full flex-col gap-y-4\">\n <Label required>{t(\"neetoFields.titles.regexOptions\")}</Label>\n <Input\n disabled={isSystem}\n label={t(\"neetoFields.labels.regexCondition\")}\n name=\"data.condition\"\n placeholder={t(\"neetoFields.placeholders.regexExample\")}\n />\n <Input\n disabled={isSystem}\n label={t(\"neetoFields.labels.helpMessage\")}\n name=\"data.helpMessage\"\n placeholder={t(\"neetoFields.placeholders.enterErrorMessage\")}\n />\n </div>\n );\n }\n\n return null;\n};\n\nexport default AdditionalInputs;\n","import { useFormikContext } from \"formik\";\nimport { Label, Pane, Typography } from \"neetoui\";\nimport { Input, Select, Switch } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport AdditionalInputs from \"./AdditionalInputs\";\nimport { DEFAULT_REGEX_DATA } from \"./constants\";\nimport {\n getDefaultOption,\n isAdditionalDataNeeded,\n isDropdown,\n isRegex,\n} from \"./utils\";\n\n/** @type {React.FC<import(\"types\").FieldFormProps>} */\n\nconst FieldForm = ({\n chosenKind,\n kindSelectOptions = [],\n isSystem = false,\n hideRequiredSwitch = false,\n children,\n initialFocusField,\n}) => {\n const { t } = useTranslation();\n\n const {\n values: { data: options },\n setFieldValue,\n } = useFormikContext();\n\n const handleKindChange = kind => {\n setFieldValue(\"kind\", kind);\n if (isDropdown(kind.value)) {\n setFieldValue(\"data\", options ?? [getDefaultOption()]);\n } else if (isRegex(kind.value)) {\n setFieldValue(\"data\", options ?? DEFAULT_REGEX_DATA);\n }\n };\n\n return (\n <Pane.Body>\n <div className=\"w-full space-y-4\">\n <Input\n required\n data-cy=\"name-text-field\"\n disabled={isSystem}\n label={t(\"neetoFields.labels.fieldName\")}\n name=\"name\"\n placeholder={t(\"neetoFields.placeholders.enterFieldName\")}\n ref={initialFocusField}\n />\n <Select\n isSearchable\n required\n isDisabled={isSystem}\n label={t(\"neetoFields.labels.fieldKind\")}\n name=\"kind\"\n options={kindSelectOptions}\n onChange={handleKindChange}\n />\n {isAdditionalDataNeeded(chosenKind) && <AdditionalInputs />}\n {!hideRequiredSwitch && (\n <Label\n className=\"flex items-center gap-2\"\n data-cy=\"is-required-switch-container\"\n >\n <Switch data-cy=\"is-required-switch\" name=\"isRequired\" />\n <Typography\n className=\"leading-4\"\n component=\"span\"\n data-cy=\"is-required-switch-label\"\n style=\"body2\"\n >\n {t(\"neetoFields.labels.isRequired\")}\n </Typography>\n </Label>\n )}\n {children}\n </div>\n </Pane.Body>\n );\n};\n\nexport default FieldForm;\n","import { Pane, Typography } from \"neetoui\";\nimport { Form } from \"neetoui/formik\";\nimport { pick, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ALL_KINDS } from \"components/FieldsDashBoard/constants\";\nimport { useCreateField } from \"hooks/reactQuery/useFieldsApi\";\n\nimport { FIELD_KINDS } from \"./constants\";\nimport FieldForm from \"./FieldForm\";\nimport {\n buildPayload,\n generateValidationSchema,\n renderFormFooter,\n initialFields,\n} from \"./utils\";\n\n/** @type {React.FC<import(\"types\").AddProps>} */\n\nconst Add = ({\n resourceType,\n allowedKinds = ALL_KINDS,\n ownerId,\n additionalValidations,\n initialValues,\n onClose,\n onMutationSuccess,\n ...props\n}) => {\n const { t } = useTranslation();\n\n const { mutate: createField, isPending: isSubmitting } = useCreateField({\n onSuccess: onMutationSuccess,\n });\n\n const filteredKinds = values(pick(allowedKinds, FIELD_KINDS));\n\n const handleSubmit = formValues => {\n const payload = buildPayload({ formValues, resourceType, ownerId });\n createField(payload, { onSuccess: onClose });\n };\n\n return (\n <>\n <Pane.Header>\n <Typography data-cy=\"add-pane-header\" style=\"h2\">\n {t(\"neetoFields.titles.addField\")}\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues: {\n ...initialValues,\n ...initialFields(filteredKinds[0]?.value),\n },\n validationSchema: generateValidationSchema(additionalValidations),\n onSubmit: handleSubmit,\n }}\n >\n {({ values: { kind } }) => (\n <>\n <FieldForm\n chosenKind={kind.value}\n kindSelectOptions={filteredKinds}\n {...props}\n />\n {renderFormFooter({ onClose, loading: isSubmitting })}\n </>\n )}\n </Form>\n </>\n );\n};\n\nexport default Add;\n","import { Pane, Spinner, Typography } from \"neetoui\";\nimport { Form } from \"neetoui/formik\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ALL_KINDS } from \"components/FieldsDashBoard/constants\";\nimport { useShowField, useUpdateField } from \"hooks/reactQuery/useFieldsApi\";\n\nimport { FIELD_KINDS } from \"./constants\";\nimport FieldForm from \"./FieldForm\";\nimport {\n buildPayload,\n generateValidationSchema,\n getPermittedKinds,\n renderFormFooter,\n} from \"./utils\";\n\n/** @type {React.FC<import(\"types\").EditProps>} */\n\nconst Edit = ({\n fieldId,\n allowedKinds = ALL_KINDS,\n ownerId,\n additionalValidations = {},\n initialValues = {},\n onClose,\n onMutationSuccess,\n ...props\n}) => {\n const { t } = useTranslation();\n\n const { data: { field = {} } = {}, isLoading } = useShowField({\n fieldId,\n ownerId,\n });\n\n const { mutate: updateField, isPending: isSubmitting } = useUpdateField({\n onSuccess: (...args) => {\n onMutationSuccess?.(...args);\n onClose();\n },\n });\n\n const handleSubmit = formValues => {\n const payload = buildPayload({ formValues, ownerId });\n updateField({ fieldId, payload });\n };\n\n return (\n <>\n <Pane.Header>\n <Typography data-cy=\"edit-pane-header\" style=\"h2\">\n {t(\"neetoFields.titles.editField\")}\n </Typography>\n </Pane.Header>\n {isLoading ? (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n <Form\n formikProps={{\n initialValues: {\n ...initialValues,\n ...assoc(\"kind\", FIELD_KINDS[field.kind], field),\n },\n validationSchema: generateValidationSchema(additionalValidations),\n enableReinitialize: true,\n onSubmit: handleSubmit,\n }}\n >\n {({ values: { kind } }) => {\n const permittedKinds = getPermittedKinds({\n allowedKinds,\n selectedKind: kind,\n });\n\n return (\n <>\n <FieldForm\n chosenKind={kind?.value}\n isSystem={field.isSystem}\n kindSelectOptions={permittedKinds}\n {...props}\n />\n {renderFormFooter({ onClose, loading: isSubmitting })}\n </>\n );\n }}\n </Form>\n )}\n </>\n );\n};\n\nexport default Edit;\n","import { useRef } from \"react\";\n\nimport { Pane } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\n\nimport Add from \"./Add\";\nimport Edit from \"./Edit\";\n\n/** @type {React.FC<import(\"types\").FieldsPaneProps>} */\n\nconst FieldsPane = ({ isOpen, selectedField = {}, ...props }) => {\n const initialFocusField = useRef(null);\n\n return (\n <Pane\n {...{ isOpen }}\n initialFocusRef={initialFocusField}\n onClose={props.onClose}\n >\n {isEmpty(selectedField) ? (\n <Add {...{ ...props, initialFocusField }} />\n ) : (\n <Edit\n fieldId={selectedField?.id}\n {...{ ...props, initialFocusField }}\n />\n )}\n </Pane>\n );\n};\n\nexport default FieldsPane;\n"],"names":["arrangeOptionsDisplayOrder","options","map","option","index","_objectSpread","displayOrder","buildPayload","_ref","formValues","_ref$resourceType","resourceType","_ref$ownerId","ownerId","kind","value","name","trim","isEmpty","undefined","field","omit","data","isDropdown","includes","isRegex","isAdditionalDataNeeded","ADDITIONAL_DATA_NEEDED_FIELD_KINDS","getPermittedKinds","_ref2","allowedKinds","selectedKind","filteredKinds","pick","FIELD_KINDS","filterBy","group","values","initialFields","arguments","length","toLabelAndValue","isRequired","getDefaultOption","generateValidationSchema","additionalValidations","yup","object","shape","BASIC_FIELD_FORM_VALIDATIONS","renderFormFooter","_ref3","onClose","loading","_jsx","Pane","Footer","children","ActionBlock","cancelButtonProps","onClick","isSubmitting","id","uuidv4","label","PERMITTED_REGEX_PATTERN","ADVANCED_REGEX_ASSERTION_PATTERN","regexValidationSchema","condition","string","required","t","matches","test","message","lastIndex","lastIndexOf","substring","RegExp","search","_unused","helpMessage","dropDownOptionsValidationSchema","array","of","number","min","text","monetary","single_option","multi_option","date","time","date_range","time_range","text_area","textarea","person","checkbox","regex","integer","decimal","datetime","DEFAULT_REGEX_DATA","mixed","when","is","then","AdditionalInputs","_useTranslation","useTranslation","_useFormikContext","useFormikContext","_useFormikContext$val","isSystem","dirty","removeOption","arrayHelpers","remove","addOption","push","handleKeyDown","event","_inputs","key","isMetaKeyPressed","form","target","inputs","_toConsumableArray","querySelectorAll","currentIndex","indexOf","focus","preventDefault","stopPropagation","FieldArray","_jsxs","className","Label","isNotEmpty","Array","isArray","_","Input","autoFocus","concat","disabled","placeholder","suffix","Button","icon","Delete","style","onKeyDown","fullWidth","FieldForm","chosenKind","_ref$kindSelectOption","kindSelectOptions","_ref$isSystem","_ref$hideRequiredSwit","hideRequiredSwitch","initialFocusField","setFieldValue","handleKindChange","Body","ref","Select","isSearchable","isDisabled","onChange","Switch","Typography","component","Add","_filteredKinds$","_ref$allowedKinds","ALL_KINDS","initialValues","onMutationSuccess","props","_objectWithoutProperties","_excluded","_useCreateField","useCreateField","onSuccess","createField","mutate","isPending","handleSubmit","payload","_Fragment","Header","Form","formikProps","validationSchema","onSubmit","Edit","fieldId","_ref$additionalValida","_ref$initialValues","_useShowField","useShowField","_useShowField$data","_useShowField$data2","_useShowField$data2$f","isLoading","_useUpdateField","useUpdateField","_len","args","_key","apply","updateField","Spinner","assoc","enableReinitialize","permittedKinds","FieldsPane","isOpen","_ref$selectedField","selectedField","useRef","initialFocusRef"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FieldsPane.js","sources":["../../node_modules/uuid/dist/esm-browser/rng.js","../../node_modules/uuid/dist/esm-browser/regex.js","../../node_modules/uuid/dist/esm-browser/validate.js","../../node_modules/uuid/dist/esm-browser/stringify.js","../../node_modules/uuid/dist/esm-browser/v4.js","../../app/javascript/src/components/FieldsPane/utils.jsx","../../app/javascript/src/components/FieldsPane/constants.js","../../app/javascript/src/components/FieldsPane/AdditionalInputs.jsx","../../app/javascript/src/components/FieldsPane/FieldForm.jsx","../../app/javascript/src/components/FieldsPane/Add.jsx","../../app/javascript/src/components/FieldsPane/Edit.jsx","../../app/javascript/src/components/FieldsPane/index.jsx"],"sourcesContent":["// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nvar getRandomValues;\nvar rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation. Also,\n // find the complete implementation of crypto (msCrypto) on IE11.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nvar byteToHex = [];\n\nfor (var i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n options = options || {};\n var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (var i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return stringify(rnds);\n}\n\nexport default v4;","import { filterBy, toLabelAndValue } from \"neetocist\";\nimport { Pane } from \"neetoui\";\nimport { ActionBlock } from \"neetoui/formik\";\nimport { isEmpty, omit, pick, values } from \"ramda\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport * as yup from \"yup\";\n\nimport {\n ADDITIONAL_DATA_NEEDED_FIELD_KINDS,\n FIELD_KINDS,\n BASIC_FIELD_FORM_VALIDATIONS,\n} from \"./constants\";\n\nconst arrangeOptionsDisplayOrder = options =>\n options.map((option, index) => ({ ...option, displayOrder: index }));\n\nexport const buildPayload = ({\n formValues,\n resourceType = \"\",\n ownerId = \"\",\n}) => {\n const kind = formValues.kind.value;\n const name = formValues.name.trim();\n\n return {\n ownerId: isEmpty(ownerId) ? undefined : ownerId,\n field: {\n ...omit(\n [\"createdAt\", \"id\", \"ownerId\", \"ownerType\", \"updatedAt\"],\n formValues\n ),\n kind,\n name,\n resourceType: isEmpty(resourceType) ? undefined : resourceType,\n data: isDropdown(kind)\n ? arrangeOptionsDisplayOrder(formValues.data)\n : formValues.data,\n },\n };\n};\n\nexport const isDropdown = kind =>\n [\"single_option\", \"multi_option\"].includes(kind);\n\nexport const isRegex = kind => kind === \"regex\";\n\nexport const isAdditionalDataNeeded = kind =>\n ADDITIONAL_DATA_NEEDED_FIELD_KINDS.includes(kind);\n\nexport const getPermittedKinds = ({ allowedKinds, selectedKind }) => {\n const filteredKinds = pick(allowedKinds, FIELD_KINDS);\n\n return filterBy({ group: selectedKind?.group }, values(filteredKinds));\n};\n\nexport const initialFields = (kind = \"text\") => ({\n name: \"\",\n kind: toLabelAndValue(kind),\n isRequired: false,\n data: isDropdown(kind) ? [getDefaultOption()] : undefined,\n});\n\nexport const generateValidationSchema = additionalValidations =>\n yup\n .object()\n .shape({ ...BASIC_FIELD_FORM_VALIDATIONS, ...additionalValidations });\n\nexport const renderFormFooter = ({ onClose, loading }) => (\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n isSubmitting={loading}\n />\n </Pane.Footer>\n);\n\nexport const getDefaultOption = () => ({\n id: uuidv4(),\n label: \"\",\n displayOrder: 0,\n});\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nimport { isDropdown, isRegex } from \"./utils\";\n\nconst PERMITTED_REGEX_PATTERN = /^\\/.*\\/[igmsyu]*$/;\nconst ADVANCED_REGEX_ASSERTION_PATTERN =\n /\\(\\?=[^)]*\\)|\\(\\?![^)]*\\)|\\(\\?<=[^)]*\\)|\\(\\?<![^)]*\\)/;\n\nconst regexValidationSchema = yup.object().shape({\n condition: yup\n .string()\n .required(t(\"neetoFields.validations.regexConditionIsRequired\"))\n .matches(\n PERMITTED_REGEX_PATTERN,\n t(\"neetoFields.validations.invalidRegexPattern\")\n )\n .test({\n name: \"test-regex-is-advanced\",\n message:\n t(\"neetoFields.validations.advancedRegexAssertionsNotSupported\") || \"\",\n test: value => !ADVANCED_REGEX_ASSERTION_PATTERN.test(value),\n })\n .test({\n name: \"test-regex-condition-pattern\",\n message: t(\"neetoFields.validations.invalidRegexPattern\") || \"\",\n test: value => {\n try {\n const lastIndex = value.lastIndexOf(\"/\");\n const condition = value.substring(1, lastIndex);\n // Evaluating the regex to check if it is valid\n new RegExp(condition);\n \"\".search(condition);\n\n return true;\n } catch {\n return false;\n }\n },\n }),\n helpMessage: yup\n .string()\n .required(t(\"neetoFields.validations.regexHelpMessageIsRequired\")),\n});\n\nconst dropDownOptionsValidationSchema = yup\n .array()\n .of(\n yup.object().shape({\n label: yup\n .string()\n .trim()\n .required(t(\"neetoFields.validations.fieldOptionIsRequired\")),\n displayOrder: yup.number(),\n })\n )\n .min(1, t(\"neetoFields.validations.atLeastFieldOptionIsRequired\"));\n\nexport const FIELD_KINDS = {\n text: { value: \"text\", label: t(\"neetoFields.fields.kinds.text\"), group: 1 },\n number: {\n value: \"number\",\n label: t(\"neetoFields.fields.kinds.number\"),\n group: 2,\n },\n monetary: {\n value: \"monetary\",\n label: t(\"neetoFields.fields.kinds.monetary\"),\n group: 2,\n },\n single_option: {\n value: \"single_option\",\n label: t(\"neetoFields.fields.kinds.singleOption\"),\n group: 12,\n },\n multi_option: {\n value: \"multi_option\",\n label: t(\"neetoFields.fields.kinds.multiOption\"),\n group: 3,\n },\n date: { value: \"date\", label: t(\"neetoFields.fields.kinds.date\"), group: 4 },\n time: { value: \"time\", label: t(\"neetoFields.fields.kinds.time\"), group: 5 },\n date_range: {\n value: \"date_range\",\n label: t(\"neetoFields.fields.kinds.dateRange\"),\n group: 6,\n },\n time_range: {\n value: \"time_range\",\n label: t(\"neetoFields.fields.kinds.timeRange\"),\n group: 7,\n },\n text_area: {\n value: \"text_area\",\n label: t(\"neetoFields.fields.kinds.textArea\"),\n group: 1,\n },\n textarea: {\n value: \"textarea\",\n label: t(\"neetoFields.fields.kinds.textarea\"),\n group: 1,\n },\n person: {\n value: \"person\",\n label: t(\"neetoFields.fields.kinds.person\"),\n group: 8,\n },\n checkbox: {\n value: \"checkbox\",\n label: t(\"neetoFields.fields.kinds.checkbox\"),\n group: 9,\n },\n regex: {\n value: \"regex\",\n label: t(\"neetoFields.fields.kinds.regex\"),\n group: 10,\n },\n integer: {\n value: \"integer\",\n label: t(\"neetoFields.fields.kinds.integer\"),\n group: 2,\n },\n decimal: {\n value: \"decimal\",\n label: t(\"neetoFields.fields.kinds.decimal\"),\n group: 2,\n },\n datetime: {\n value: \"datetime\",\n label: t(\"neetoFields.fields.kinds.datetime\"),\n group: 11,\n },\n};\n\nexport const ADDITIONAL_DATA_NEEDED_FIELD_KINDS = [\n \"single_option\",\n \"multi_option\",\n \"regex\",\n];\n\nexport const DEFAULT_REGEX_DATA = { condition: \"\", helpMessage: \"\" };\n\nexport const BASIC_FIELD_FORM_VALIDATIONS = {\n name: yup\n .string()\n .trim()\n .required(t(\"neetoFields.validations.fieldNameIsRequired\")),\n isRequired: yup.boolean(),\n kind: yup\n .object()\n .shape({ value: yup.string().required() })\n .required(t(\"neetoFields.validations.kindIsRequired\")),\n data: yup\n .mixed()\n .when(\"kind\", {\n is: kind => isRegex(kind?.value),\n then: regexValidationSchema,\n })\n .when(\"kind\", {\n is: kind => isDropdown(kind?.value),\n then: dropDownOptionsValidationSchema,\n }),\n};\n","import { FieldArray, useFormikContext } from \"formik\";\nimport { isNotEmpty } from \"neetocist\";\nimport { isMetaKeyPressed } from \"neetocommons/react-utils\";\nimport { Delete } from \"neetoicons\";\nimport { Label, Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getDefaultOption, isDropdown, isRegex } from \"./utils\";\n\nconst AdditionalInputs = () => {\n const { t } = useTranslation();\n\n const {\n values: { kind, data: options, isSystem },\n dirty,\n } = useFormikContext();\n\n const removeOption = (arrayHelpers, index) => arrayHelpers.remove(index);\n\n const addOption = arrayHelpers => arrayHelpers.push(getDefaultOption());\n\n const handleKeyDown = (event, arrayHelpers) => {\n if (event.key !== \"Enter\" || isMetaKeyPressed(event)) return;\n\n const form = event.target.form;\n const inputs = [\n ...form.querySelectorAll(\"#neeto-fields-dropdown-options-wrapper input\"),\n ];\n\n const currentIndex = inputs.indexOf(event.target);\n\n currentIndex >= inputs.length - 1\n ? addOption(arrayHelpers)\n : inputs[currentIndex + 1]?.focus();\n\n event.preventDefault();\n event.stopPropagation();\n };\n\n if (isDropdown(kind.value)) {\n return (\n <FieldArray name=\"data\">\n {arrayHelpers => (\n <div\n className=\"flex w-full flex-col gap-y-4\"\n id=\"neeto-fields-dropdown-options-wrapper\"\n >\n <Label required>{t(\"neetoFields.titles.dropdownOptions\")}</Label>\n {isNotEmpty(options) &&\n Array.isArray(options) &&\n options.map((_, index) => (\n <div className=\"flex w-full space-x-3\" key={index}>\n <div className=\"w-full\">\n <Input\n autoFocus={dirty}\n data-cy={`neeto-fields-dropdown-option-${index}`}\n disabled={isSystem}\n name={`data.${index}.label`}\n placeholder={t(\"neetoFields.placeholders.enterAnOption\")}\n suffix={\n options.length > 1 && (\n <Button\n data-cy={`neeto-fields-dropdown-option-delete-${index}`}\n icon={Delete}\n style=\"text\"\n onClick={() => removeOption(arrayHelpers, index)}\n />\n )\n }\n onKeyDown={event => handleKeyDown(event, arrayHelpers)}\n />\n </div>\n </div>\n ))}\n <Button\n fullWidth\n className=\"mb-6 border-dashed text-xs uppercase\"\n data-cy=\"neeto-fields-add-more-option-button\"\n label={t(\"neetoFields.labels.addAnotherOption\")}\n style=\"secondary\"\n onClick={() => addOption(arrayHelpers)}\n />\n </div>\n )}\n </FieldArray>\n );\n } else if (isRegex(kind.value)) {\n return (\n <div className=\"flex w-full flex-col gap-y-4\">\n <Label required>{t(\"neetoFields.titles.regexOptions\")}</Label>\n <Input\n disabled={isSystem}\n label={t(\"neetoFields.labels.regexCondition\")}\n name=\"data.condition\"\n placeholder={t(\"neetoFields.placeholders.regexExample\")}\n />\n <Input\n disabled={isSystem}\n label={t(\"neetoFields.labels.helpMessage\")}\n name=\"data.helpMessage\"\n placeholder={t(\"neetoFields.placeholders.enterErrorMessage\")}\n />\n </div>\n );\n }\n\n return null;\n};\n\nexport default AdditionalInputs;\n","import { useFormikContext } from \"formik\";\nimport { Label, Pane, Typography } from \"neetoui\";\nimport { Input, Select, Switch } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport AdditionalInputs from \"./AdditionalInputs\";\nimport { DEFAULT_REGEX_DATA } from \"./constants\";\nimport {\n getDefaultOption,\n isAdditionalDataNeeded,\n isDropdown,\n isRegex,\n} from \"./utils\";\n\n/** @type {React.FC<import(\"types\").FieldFormProps>} */\n\nconst FieldForm = ({\n chosenKind,\n kindSelectOptions = [],\n isSystem = false,\n hideRequiredSwitch = false,\n children,\n initialFocusField,\n}) => {\n const { t } = useTranslation();\n\n const {\n values: { data: options },\n setFieldValue,\n } = useFormikContext();\n\n const handleKindChange = kind => {\n setFieldValue(\"kind\", kind);\n if (isDropdown(kind.value)) {\n setFieldValue(\"data\", options ?? [getDefaultOption()]);\n } else if (isRegex(kind.value)) {\n setFieldValue(\"data\", options ?? DEFAULT_REGEX_DATA);\n }\n };\n\n return (\n <Pane.Body>\n <div className=\"w-full space-y-4\">\n <Input\n required\n data-cy=\"name-text-field\"\n disabled={isSystem}\n label={t(\"neetoFields.labels.fieldName\")}\n name=\"name\"\n placeholder={t(\"neetoFields.placeholders.enterFieldName\")}\n ref={initialFocusField}\n />\n <Select\n isSearchable\n required\n isDisabled={isSystem}\n label={t(\"neetoFields.labels.fieldKind\")}\n name=\"kind\"\n options={kindSelectOptions}\n onChange={handleKindChange}\n />\n {isAdditionalDataNeeded(chosenKind) && <AdditionalInputs />}\n {!hideRequiredSwitch && (\n <Label\n className=\"flex items-center gap-2\"\n data-cy=\"is-required-switch-container\"\n >\n <Switch data-cy=\"is-required-switch\" name=\"isRequired\" />\n <Typography\n className=\"leading-4\"\n component=\"span\"\n data-cy=\"is-required-switch-label\"\n style=\"body2\"\n >\n {t(\"neetoFields.labels.isRequired\")}\n </Typography>\n </Label>\n )}\n {children}\n </div>\n </Pane.Body>\n );\n};\n\nexport default FieldForm;\n","import { Pane, Typography } from \"neetoui\";\nimport { Form } from \"neetoui/formik\";\nimport { pick, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ALL_KINDS } from \"components/FieldsDashBoard/constants\";\nimport { useCreateField } from \"hooks/reactQuery/useFieldsApi\";\n\nimport { FIELD_KINDS } from \"./constants\";\nimport FieldForm from \"./FieldForm\";\nimport {\n buildPayload,\n generateValidationSchema,\n renderFormFooter,\n initialFields,\n} from \"./utils\";\n\n/** @type {React.FC<import(\"types\").AddProps>} */\n\nconst Add = ({\n resourceType,\n allowedKinds = ALL_KINDS,\n ownerId,\n additionalValidations,\n initialValues,\n onClose,\n onMutationSuccess,\n ...props\n}) => {\n const { t } = useTranslation();\n\n const { mutate: createField, isPending: isSubmitting } = useCreateField({\n onSuccess: onMutationSuccess,\n });\n\n const filteredKinds = values(pick(allowedKinds, FIELD_KINDS));\n\n const handleSubmit = formValues => {\n const payload = buildPayload({ formValues, resourceType, ownerId });\n createField(payload, { onSuccess: onClose });\n };\n\n return (\n <>\n <Pane.Header>\n <Typography data-cy=\"add-pane-header\" style=\"h2\">\n {t(\"neetoFields.titles.addField\")}\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues: {\n ...initialValues,\n ...initialFields(filteredKinds[0]?.value),\n },\n validationSchema: generateValidationSchema(additionalValidations),\n onSubmit: handleSubmit,\n }}\n >\n {({ values: { kind } }) => (\n <>\n <FieldForm\n chosenKind={kind.value}\n kindSelectOptions={filteredKinds}\n {...props}\n />\n {renderFormFooter({ onClose, loading: isSubmitting })}\n </>\n )}\n </Form>\n </>\n );\n};\n\nexport default Add;\n","import { Pane, Spinner, Typography } from \"neetoui\";\nimport { Form } from \"neetoui/formik\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ALL_KINDS } from \"components/FieldsDashBoard/constants\";\nimport { useShowField, useUpdateField } from \"hooks/reactQuery/useFieldsApi\";\n\nimport { FIELD_KINDS } from \"./constants\";\nimport FieldForm from \"./FieldForm\";\nimport {\n buildPayload,\n generateValidationSchema,\n getPermittedKinds,\n renderFormFooter,\n} from \"./utils\";\n\n/** @type {React.FC<import(\"types\").EditProps>} */\n\nconst Edit = ({\n fieldId,\n allowedKinds = ALL_KINDS,\n ownerId,\n additionalValidations = {},\n initialValues = {},\n onClose,\n onMutationSuccess,\n ...props\n}) => {\n const { t } = useTranslation();\n\n const { data: { field = {} } = {}, isLoading } = useShowField({\n fieldId,\n ownerId,\n });\n\n const { mutate: updateField, isPending: isSubmitting } = useUpdateField({\n onSuccess: (...args) => {\n onMutationSuccess?.(...args);\n onClose();\n },\n });\n\n const handleSubmit = formValues => {\n const payload = buildPayload({ formValues, ownerId });\n updateField({ fieldId, payload });\n };\n\n return (\n <>\n <Pane.Header>\n <Typography data-cy=\"edit-pane-header\" style=\"h2\">\n {t(\"neetoFields.titles.editField\")}\n </Typography>\n </Pane.Header>\n {isLoading ? (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n <Form\n formikProps={{\n initialValues: {\n ...initialValues,\n ...assoc(\"kind\", FIELD_KINDS[field.kind], field),\n },\n validationSchema: generateValidationSchema(additionalValidations),\n enableReinitialize: true,\n onSubmit: handleSubmit,\n }}\n >\n {({ values: { kind } }) => {\n const permittedKinds = getPermittedKinds({\n allowedKinds,\n selectedKind: kind,\n });\n\n return (\n <>\n <FieldForm\n chosenKind={kind?.value}\n isSystem={field.isSystem}\n kindSelectOptions={permittedKinds}\n {...props}\n />\n {renderFormFooter({ onClose, loading: isSubmitting })}\n </>\n );\n }}\n </Form>\n )}\n </>\n );\n};\n\nexport default Edit;\n","import { useRef } from \"react\";\n\nimport { Pane } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\n\nimport Add from \"./Add\";\nimport Edit from \"./Edit\";\n\n/** @type {React.FC<import(\"types\").FieldsPaneProps>} */\n\nconst FieldsPane = ({ isOpen, selectedField = {}, ...props }) => {\n const initialFocusField = useRef(null);\n\n return (\n <Pane\n {...{ isOpen }}\n initialFocusRef={initialFocusField}\n onClose={props.onClose}\n >\n {isEmpty(selectedField) ? (\n <Add {...{ ...props, initialFocusField }} />\n ) : (\n <Edit\n fieldId={selectedField?.id}\n {...{ ...props, initialFocusField }}\n />\n )}\n </Pane>\n );\n};\n\nexport default FieldsPane;\n"],"names":["arrangeOptionsDisplayOrder","options","map","option","index","_objectSpread","displayOrder","buildPayload","_ref","formValues","_ref$resourceType","resourceType","_ref$ownerId","ownerId","kind","value","name","trim","isEmpty","undefined","field","omit","data","isDropdown","includes","isRegex","isAdditionalDataNeeded","ADDITIONAL_DATA_NEEDED_FIELD_KINDS","getPermittedKinds","_ref2","allowedKinds","selectedKind","filteredKinds","pick","FIELD_KINDS","filterBy","group","values","initialFields","arguments","length","toLabelAndValue","isRequired","getDefaultOption","generateValidationSchema","additionalValidations","yup","object","shape","BASIC_FIELD_FORM_VALIDATIONS","renderFormFooter","_ref3","onClose","loading","_jsx","Pane","Footer","children","ActionBlock","cancelButtonProps","onClick","isSubmitting","id","uuidv4","label","PERMITTED_REGEX_PATTERN","ADVANCED_REGEX_ASSERTION_PATTERN","regexValidationSchema","condition","string","required","t","matches","test","message","lastIndex","lastIndexOf","substring","RegExp","search","_unused","helpMessage","dropDownOptionsValidationSchema","array","of","number","min","text","monetary","single_option","multi_option","date","time","date_range","time_range","text_area","textarea","person","checkbox","regex","integer","decimal","datetime","DEFAULT_REGEX_DATA","mixed","when","is","then","AdditionalInputs","_useTranslation","useTranslation","_useFormikContext","useFormikContext","_useFormikContext$val","isSystem","dirty","removeOption","arrayHelpers","remove","addOption","push","handleKeyDown","event","_inputs","key","isMetaKeyPressed","form","target","inputs","_toConsumableArray","querySelectorAll","currentIndex","indexOf","focus","preventDefault","stopPropagation","FieldArray","_jsxs","className","Label","isNotEmpty","Array","isArray","_","Input","autoFocus","concat","disabled","placeholder","suffix","Button","icon","Delete","style","onKeyDown","fullWidth","FieldForm","chosenKind","_ref$kindSelectOption","kindSelectOptions","_ref$isSystem","_ref$hideRequiredSwit","hideRequiredSwitch","initialFocusField","setFieldValue","handleKindChange","Body","ref","Select","isSearchable","isDisabled","onChange","Switch","Typography","component","Add","_filteredKinds$","_ref$allowedKinds","ALL_KINDS","initialValues","onMutationSuccess","props","_objectWithoutProperties","_excluded","_useCreateField","useCreateField","onSuccess","createField","mutate","isPending","handleSubmit","payload","_Fragment","Header","Form","formikProps","validationSchema","onSubmit","Edit","fieldId","_ref$additionalValida","_ref$initialValues","_useShowField","useShowField","_useShowField$data","_useShowField$data2","_useShowField$data2$f","isLoading","_useUpdateField","useUpdateField","_len","args","_key","apply","updateField","Spinner","assoc","enableReinitialize","permittedKinds","FieldsPane","isOpen","_ref$selectedField","selectedField","useRef","initialFocusRef"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4]}
|