@bigbinary/neeto-fields-frontend 2.3.3 → 2.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/dist/{DeleteAlert-19876639.js → DeleteAlert-CJO7QTRI.js} +4 -5
  2. package/dist/{DeleteAlert-19876639.js.map → DeleteAlert-CJO7QTRI.js.map} +1 -1
  3. package/dist/{DeleteAlert-3ac1424d.js → DeleteAlert-eLnhk6_S.js} +13 -23
  4. package/dist/{DeleteAlert-3ac1424d.js.map → DeleteAlert-eLnhk6_S.js.map} +1 -1
  5. package/dist/FieldDeleteAlert.js +5 -5
  6. package/dist/FieldInputs.js +3 -3
  7. package/dist/FieldInputs.js.map +1 -1
  8. package/dist/{FieldValueInputWrapper-49352a3a.js → FieldValueInputWrapper-BIn3Jjiy.js} +21 -29
  9. package/dist/FieldValueInputWrapper-BIn3Jjiy.js.map +1 -0
  10. package/dist/{FieldValueInputWrapper-8403d6c0.js → FieldValueInputWrapper-CfSB73DA.js} +12 -12
  11. package/dist/FieldValueInputWrapper-CfSB73DA.js.map +1 -0
  12. package/dist/FieldValuesContainer.js +6 -6
  13. package/dist/FieldValuesContainer.js.map +1 -1
  14. package/dist/FieldsDashboard.js +7 -7
  15. package/dist/FieldsDashboard.js.map +1 -1
  16. package/dist/FieldsPane.js +34 -35
  17. package/dist/FieldsPane.js.map +1 -1
  18. package/dist/InlineFieldValueInput.js +8 -8
  19. package/dist/InlineFieldValueInput.js.map +1 -1
  20. package/dist/cjs/FieldDeleteAlert.js +5 -5
  21. package/dist/cjs/FieldInputs.js +5 -10
  22. package/dist/cjs/FieldInputs.js.map +1 -1
  23. package/dist/cjs/FieldValuesContainer.js +13 -21
  24. package/dist/cjs/FieldValuesContainer.js.map +1 -1
  25. package/dist/cjs/FieldsDashboard.js +57 -79
  26. package/dist/cjs/FieldsDashboard.js.map +1 -1
  27. package/dist/cjs/FieldsPane.js +69 -87
  28. package/dist/cjs/FieldsPane.js.map +1 -1
  29. package/dist/cjs/InlineFieldValueInput.js +12 -19
  30. package/dist/cjs/InlineFieldValueInput.js.map +1 -1
  31. package/dist/cjs/hooks.js +3 -5
  32. package/dist/cjs/hooks.js.map +1 -1
  33. package/dist/cjs/index.js +32 -34
  34. package/dist/cjs/index.js.map +1 -1
  35. package/dist/cjs/utils.js +3 -5
  36. package/dist/cjs/utils.js.map +1 -1
  37. package/dist/{constants-c71008a3.js → constants-CNocslTu.js} +1 -1
  38. package/dist/{constants-c71008a3.js.map → constants-CNocslTu.js.map} +1 -1
  39. package/dist/{constants-0e6017ea.js → constants-DAiy8JQK.js} +2 -2
  40. package/dist/{constants-0e6017ea.js.map → constants-DAiy8JQK.js.map} +1 -1
  41. package/dist/hooks.js +3 -3
  42. package/dist/{index-e6e554d7.js → index-BCXsyMdx.js} +1 -1
  43. package/dist/{index-e6e554d7.js.map → index-BCXsyMdx.js.map} +1 -1
  44. package/dist/{index-428f286f.js → index-D9idRDgn.js} +1 -1
  45. package/dist/{index-428f286f.js.map → index-D9idRDgn.js.map} +1 -1
  46. package/dist/index.js +32 -32
  47. package/dist/{query-1a62b3ac.js → query-DWn563ij.js} +1 -1
  48. package/dist/{query-1a62b3ac.js.map → query-DWn563ij.js.map} +1 -1
  49. package/dist/{query-0df5b2dd.js → query-DXkir3SS.js} +1 -1
  50. package/dist/{query-0df5b2dd.js.map → query-DXkir3SS.js.map} +1 -1
  51. package/dist/{useFieldsApi-5e5aa412.js → useFieldsApi-CNM4-TGd.js} +4 -4
  52. package/dist/useFieldsApi-CNM4-TGd.js.map +1 -0
  53. package/dist/{useFieldsApi-02aeee16.js → useFieldsApi-CPPFCDrd.js} +14 -21
  54. package/dist/useFieldsApi-CPPFCDrd.js.map +1 -0
  55. package/dist/{utils-36c459ce.js → utils-BWHDG-Sn.js} +6 -6
  56. package/dist/{utils-36c459ce.js.map → utils-BWHDG-Sn.js.map} +1 -1
  57. package/dist/{utils-6f56aa82.js → utils-fss5EIdx.js} +53 -73
  58. package/dist/utils-fss5EIdx.js.map +1 -0
  59. package/dist/utils.js +3 -3
  60. package/package.json +55 -51
  61. package/dist/FieldValueInputWrapper-49352a3a.js.map +0 -1
  62. package/dist/FieldValueInputWrapper-8403d6c0.js.map +0 -1
  63. package/dist/useFieldsApi-02aeee16.js.map +0 -1
  64. package/dist/useFieldsApi-5e5aa412.js.map +0 -1
  65. package/dist/utils-6f56aa82.js.map +0 -1
@@ -8,8 +8,8 @@ var ramda = require('ramda');
8
8
  var Typography = require('@bigbinary/neetoui/Typography');
9
9
  var Form = require('@bigbinary/neetoui/formik/Form');
10
10
  var reactI18next = require('react-i18next');
11
- var constants = require('../constants-c71008a3.js');
12
- var useFieldsApi = require('../useFieldsApi-02aeee16.js');
11
+ var constants = require('../constants-CNocslTu.js');
12
+ var useFieldsApi = require('../useFieldsApi-CPPFCDrd.js');
13
13
  var i18next = require('i18next');
14
14
  var yup = require('yup');
15
15
  var neetoCist = require('@bigbinary/neeto-cist');
@@ -28,13 +28,10 @@ var Spinner = require('@bigbinary/neetoui/Spinner');
28
28
  require('@tanstack/react-query');
29
29
  require('axios');
30
30
  require('@bigbinary/neeto-commons-frontend/utils');
31
- require('../index-428f286f.js');
32
- require('../query-0df5b2dd.js');
31
+ require('../index-D9idRDgn.js');
32
+ require('../query-DXkir3SS.js');
33
33
 
34
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
35
-
36
- function _interopNamespace(e) {
37
- if (e && e.__esModule) return e;
34
+ function _interopNamespaceDefault(e) {
38
35
  var n = Object.create(null);
39
36
  if (e) {
40
37
  Object.keys(e).forEach(function (k) {
@@ -47,36 +44,23 @@ function _interopNamespace(e) {
47
44
  }
48
45
  });
49
46
  }
50
- n["default"] = e;
47
+ n.default = e;
51
48
  return Object.freeze(n);
52
49
  }
53
50
 
54
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
55
- var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
56
- var Pane__default = /*#__PURE__*/_interopDefaultLegacy(Pane);
57
- var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
58
- var Form__default = /*#__PURE__*/_interopDefaultLegacy(Form);
59
- var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
60
- var ActionBlock__default = /*#__PURE__*/_interopDefaultLegacy(ActionBlock);
61
- var Label__default = /*#__PURE__*/_interopDefaultLegacy(Label);
62
- var Input__default = /*#__PURE__*/_interopDefaultLegacy(Input);
63
- var Select__default = /*#__PURE__*/_interopDefaultLegacy(Select);
64
- var Switch__default = /*#__PURE__*/_interopDefaultLegacy(Switch);
65
- var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
66
- var Delete__default = /*#__PURE__*/_interopDefaultLegacy(Delete);
67
- var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
68
- var Spinner__default = /*#__PURE__*/_interopDefaultLegacy(Spinner);
51
+ var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
69
52
 
70
53
  // Unique ID creation requires a high quality random # generator. In the browser we therefore
71
54
  // require the crypto API and do not support built-in fallback to lower quality random number
72
55
  // generators (like Math.random()).
73
- let getRandomValues;
74
- const rnds8 = new Uint8Array(16);
56
+ var getRandomValues;
57
+ var rnds8 = new Uint8Array(16);
75
58
  function rng() {
76
59
  // lazy load so that environments that need to polyfill have a chance to do so
77
60
  if (!getRandomValues) {
78
- // getRandomValues needs to be invoked in a context where "this" is a Crypto implementation.
79
- getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);
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);
80
64
 
81
65
  if (!getRandomValues) {
82
66
  throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
@@ -86,54 +70,52 @@ function rng() {
86
70
  return getRandomValues(rnds8);
87
71
  }
88
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
+
89
79
  /**
90
80
  * Convert array of 16 byte values to UUID string format of the form:
91
81
  * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
92
82
  */
93
83
 
94
- const byteToHex = [];
84
+ var byteToHex = [];
95
85
 
96
- for (let i = 0; i < 256; ++i) {
97
- byteToHex.push((i + 0x100).toString(16).slice(1));
86
+ for (var i = 0; i < 256; ++i) {
87
+ byteToHex.push((i + 0x100).toString(16).substr(1));
98
88
  }
99
89
 
100
- function unsafeStringify(arr, offset = 0) {
90
+ function stringify(arr) {
91
+ var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
101
92
  // Note: Be careful editing this code! It's been tuned for performance
102
93
  // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
103
- return 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]];
104
- }
105
-
106
- const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);
107
- var native = {
108
- randomUUID
109
- };
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
110
99
 
111
- function v4(options, buf, offset) {
112
- if (native.randomUUID && !buf && !options) {
113
- return native.randomUUID();
100
+ if (!validate(uuid)) {
101
+ throw TypeError('Stringified UUID is invalid');
114
102
  }
115
103
 
104
+ return uuid;
105
+ }
106
+
107
+ function v4(options, buf, offset) {
116
108
  options = options || {};
117
- const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
109
+ var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
118
110
 
119
111
  rnds[6] = rnds[6] & 0x0f | 0x40;
120
112
  rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided
121
113
 
122
- if (buf) {
123
- offset = offset || 0;
124
-
125
- for (let i = 0; i < 16; ++i) {
126
- buf[offset + i] = rnds[i];
127
- }
128
-
129
- return buf;
130
- }
131
-
132
- return unsafeStringify(rnds);
114
+ return stringify(rnds);
133
115
  }
134
116
 
135
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; }
136
- 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__default["default"](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; }
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; }
137
119
  var arrangeOptionsDisplayOrder = function arrangeOptionsDisplayOrder(options) {
138
120
  return options.map(function (option, index) {
139
121
  return _objectSpread$3(_objectSpread$3({}, option), {}, {
@@ -191,8 +173,8 @@ var generateValidationSchema = function generateValidationSchema(additionalValid
191
173
  var renderFormFooter = function renderFormFooter(_ref3) {
192
174
  var onClose = _ref3.onClose,
193
175
  loading = _ref3.loading;
194
- return /*#__PURE__*/jsxRuntime.jsx(Pane__default["default"].Footer, {
195
- children: /*#__PURE__*/jsxRuntime.jsx(ActionBlock__default["default"], {
176
+ return /*#__PURE__*/jsxRuntime.jsx(Pane.Footer, {
177
+ children: /*#__PURE__*/jsxRuntime.jsx(ActionBlock, {
196
178
  cancelButtonProps: {
197
179
  onClick: onClose
198
180
  },
@@ -369,7 +351,7 @@ var AdditionalInputs = function AdditionalInputs() {
369
351
  var _inputs;
370
352
  if (event.key !== "Enter" || reactUtils.isMetaKeyPressed(event)) return;
371
353
  var form = event.target.form;
372
- var inputs = _toConsumableArray__default["default"](form.querySelectorAll("#neeto-fields-dropdown-options-wrapper input"));
354
+ var inputs = _toConsumableArray(form.querySelectorAll("#neeto-fields-dropdown-options-wrapper input"));
373
355
  var currentIndex = inputs.indexOf(event.target);
374
356
  currentIndex >= inputs.length - 1 ? addOption(arrayHelpers) : (_inputs = inputs[currentIndex + 1]) === null || _inputs === void 0 ? void 0 : _inputs.focus();
375
357
  event.preventDefault();
@@ -382,7 +364,7 @@ var AdditionalInputs = function AdditionalInputs() {
382
364
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
383
365
  className: "flex w-full flex-col gap-y-4",
384
366
  id: "neeto-fields-dropdown-options-wrapper",
385
- children: [/*#__PURE__*/jsxRuntime.jsx(Label__default["default"], {
367
+ children: [/*#__PURE__*/jsxRuntime.jsx(Label, {
386
368
  required: true,
387
369
  children: t("neetoFields.titles.dropdownOptions")
388
370
  }), neetoCist.isNotEmpty(options) && Array.isArray(options) && options.map(function (_, index) {
@@ -390,15 +372,15 @@ var AdditionalInputs = function AdditionalInputs() {
390
372
  className: "flex w-full space-x-3",
391
373
  children: /*#__PURE__*/jsxRuntime.jsx("div", {
392
374
  className: "w-full",
393
- children: /*#__PURE__*/jsxRuntime.jsx(Input__default["default"], {
375
+ children: /*#__PURE__*/jsxRuntime.jsx(Input, {
394
376
  autoFocus: dirty,
395
377
  "data-cy": "neeto-fields-dropdown-option-".concat(index),
396
378
  disabled: isSystem,
397
379
  name: "data.".concat(index, ".label"),
398
380
  placeholder: t("neetoFields.placeholders.enterAnOption"),
399
- suffix: options.length > 1 && /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
381
+ suffix: options.length > 1 && /*#__PURE__*/jsxRuntime.jsx(Button, {
400
382
  "data-cy": "neeto-fields-dropdown-option-delete-".concat(index),
401
- icon: Delete__default["default"],
383
+ icon: Delete,
402
384
  style: "text",
403
385
  onClick: function onClick() {
404
386
  return removeOption(arrayHelpers, index);
@@ -410,7 +392,7 @@ var AdditionalInputs = function AdditionalInputs() {
410
392
  })
411
393
  })
412
394
  }, index);
413
- }), /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
395
+ }), /*#__PURE__*/jsxRuntime.jsx(Button, {
414
396
  fullWidth: true,
415
397
  className: "mb-6 border-dashed text-xs uppercase",
416
398
  "data-cy": "neeto-fields-add-more-option-button",
@@ -426,15 +408,15 @@ var AdditionalInputs = function AdditionalInputs() {
426
408
  } else if (isRegex(kind.value)) {
427
409
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
428
410
  className: "flex w-full flex-col gap-y-4",
429
- children: [/*#__PURE__*/jsxRuntime.jsx(Label__default["default"], {
411
+ children: [/*#__PURE__*/jsxRuntime.jsx(Label, {
430
412
  required: true,
431
413
  children: t("neetoFields.titles.regexOptions")
432
- }), /*#__PURE__*/jsxRuntime.jsx(Input__default["default"], {
414
+ }), /*#__PURE__*/jsxRuntime.jsx(Input, {
433
415
  disabled: isSystem,
434
416
  label: t("neetoFields.labels.regexCondition"),
435
417
  name: "data.condition",
436
418
  placeholder: t("neetoFields.placeholders.regexExample")
437
- }), /*#__PURE__*/jsxRuntime.jsx(Input__default["default"], {
419
+ }), /*#__PURE__*/jsxRuntime.jsx(Input, {
438
420
  disabled: isSystem,
439
421
  label: t("neetoFields.labels.helpMessage"),
440
422
  name: "data.helpMessage",
@@ -468,10 +450,10 @@ var FieldForm = function FieldForm(_ref) {
468
450
  setFieldValue("data", options !== null && options !== void 0 ? options : DEFAULT_REGEX_DATA);
469
451
  }
470
452
  };
471
- return /*#__PURE__*/jsxRuntime.jsx(Pane__default["default"].Body, {
453
+ return /*#__PURE__*/jsxRuntime.jsx(Pane.Body, {
472
454
  children: /*#__PURE__*/jsxRuntime.jsxs("div", {
473
455
  className: "w-full space-y-4",
474
- children: [/*#__PURE__*/jsxRuntime.jsx(Input__default["default"], {
456
+ children: [/*#__PURE__*/jsxRuntime.jsx(Input, {
475
457
  required: true,
476
458
  "data-cy": "name-text-field",
477
459
  disabled: isSystem,
@@ -479,7 +461,7 @@ var FieldForm = function FieldForm(_ref) {
479
461
  name: "name",
480
462
  placeholder: t("neetoFields.placeholders.enterFieldName"),
481
463
  ref: initialFocusField
482
- }), /*#__PURE__*/jsxRuntime.jsx(Select__default["default"], {
464
+ }), /*#__PURE__*/jsxRuntime.jsx(Select, {
483
465
  isSearchable: true,
484
466
  required: true,
485
467
  isDisabled: isSystem,
@@ -487,13 +469,13 @@ var FieldForm = function FieldForm(_ref) {
487
469
  name: "kind",
488
470
  options: kindSelectOptions,
489
471
  onChange: handleKindChange
490
- }), isAdditionalDataNeeded(chosenKind) && /*#__PURE__*/jsxRuntime.jsx(AdditionalInputs, {}), !hideRequiredSwitch && /*#__PURE__*/jsxRuntime.jsxs(Label__default["default"], {
472
+ }), isAdditionalDataNeeded(chosenKind) && /*#__PURE__*/jsxRuntime.jsx(AdditionalInputs, {}), !hideRequiredSwitch && /*#__PURE__*/jsxRuntime.jsxs(Label, {
491
473
  className: "flex items-center gap-2",
492
474
  "data-cy": "is-required-switch-container",
493
- children: [/*#__PURE__*/jsxRuntime.jsx(Switch__default["default"], {
475
+ children: [/*#__PURE__*/jsxRuntime.jsx(Switch, {
494
476
  "data-cy": "is-required-switch",
495
477
  name: "isRequired"
496
- }), /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
478
+ }), /*#__PURE__*/jsxRuntime.jsx(Typography, {
497
479
  className: "leading-4",
498
480
  component: "span",
499
481
  "data-cy": "is-required-switch-label",
@@ -507,7 +489,7 @@ var FieldForm = function FieldForm(_ref) {
507
489
 
508
490
  var _excluded$2 = ["resourceType", "allowedKinds", "ownerId", "additionalValidations", "initialValues", "onClose", "onMutationSuccess"];
509
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; }
510
- 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__default["default"](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; }
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; }
511
493
  var Add = function Add(_ref) {
512
494
  var _filteredKinds$;
513
495
  var resourceType = _ref.resourceType,
@@ -518,7 +500,7 @@ var Add = function Add(_ref) {
518
500
  initialValues = _ref.initialValues,
519
501
  onClose = _ref.onClose,
520
502
  onMutationSuccess = _ref.onMutationSuccess,
521
- props = _objectWithoutProperties__default["default"](_ref, _excluded$2);
503
+ props = _objectWithoutProperties(_ref, _excluded$2);
522
504
  var _useTranslation = reactI18next.useTranslation(),
523
505
  t = _useTranslation.t;
524
506
  var _useCreateField = useFieldsApi.useCreateField({
@@ -538,13 +520,13 @@ var Add = function Add(_ref) {
538
520
  });
539
521
  };
540
522
  return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
541
- children: [/*#__PURE__*/jsxRuntime.jsx(Pane__default["default"].Header, {
542
- children: /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
523
+ children: [/*#__PURE__*/jsxRuntime.jsx(Pane.Header, {
524
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
543
525
  "data-cy": "add-pane-header",
544
526
  style: "h2",
545
527
  children: t("neetoFields.titles.addField")
546
528
  })
547
- }), /*#__PURE__*/jsxRuntime.jsx(Form__default["default"], {
529
+ }), /*#__PURE__*/jsxRuntime.jsx(Form, {
548
530
  formikProps: {
549
531
  initialValues: _objectSpread$2(_objectSpread$2({}, initialValues), initialFields((_filteredKinds$ = filteredKinds[0]) === null || _filteredKinds$ === void 0 ? void 0 : _filteredKinds$.value)),
550
532
  validationSchema: generateValidationSchema(additionalValidations),
@@ -568,7 +550,7 @@ var Add = function Add(_ref) {
568
550
 
569
551
  var _excluded$1 = ["fieldId", "allowedKinds", "ownerId", "additionalValidations", "initialValues", "onClose", "onMutationSuccess"];
570
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; }
571
- 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__default["default"](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; }
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; }
572
554
  var Edit = function Edit(_ref) {
573
555
  var fieldId = _ref.fieldId,
574
556
  _ref$allowedKinds = _ref.allowedKinds,
@@ -580,7 +562,7 @@ var Edit = function Edit(_ref) {
580
562
  initialValues = _ref$initialValues === void 0 ? {} : _ref$initialValues,
581
563
  onClose = _ref.onClose,
582
564
  onMutationSuccess = _ref.onMutationSuccess,
583
- props = _objectWithoutProperties__default["default"](_ref, _excluded$1);
565
+ props = _objectWithoutProperties(_ref, _excluded$1);
584
566
  var _useTranslation = reactI18next.useTranslation(),
585
567
  t = _useTranslation.t;
586
568
  var _useShowField = useFieldsApi.useShowField({
@@ -597,7 +579,7 @@ var Edit = function Edit(_ref) {
597
579
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
598
580
  args[_key] = arguments[_key];
599
581
  }
600
- onMutationSuccess === null || onMutationSuccess === void 0 ? void 0 : onMutationSuccess.apply(void 0, args);
582
+ onMutationSuccess === null || onMutationSuccess === void 0 || onMutationSuccess.apply(void 0, args);
601
583
  onClose();
602
584
  }
603
585
  }),
@@ -614,16 +596,16 @@ var Edit = function Edit(_ref) {
614
596
  });
615
597
  };
616
598
  return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
617
- children: [/*#__PURE__*/jsxRuntime.jsx(Pane__default["default"].Header, {
618
- children: /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
599
+ children: [/*#__PURE__*/jsxRuntime.jsx(Pane.Header, {
600
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
619
601
  "data-cy": "edit-pane-header",
620
602
  style: "h2",
621
603
  children: t("neetoFields.titles.editField")
622
604
  })
623
605
  }), isLoading ? /*#__PURE__*/jsxRuntime.jsx("div", {
624
606
  className: "flex h-full w-full items-center justify-center",
625
- children: /*#__PURE__*/jsxRuntime.jsx(Spinner__default["default"], {})
626
- }) : /*#__PURE__*/jsxRuntime.jsx(Form__default["default"], {
607
+ children: /*#__PURE__*/jsxRuntime.jsx(Spinner, {})
608
+ }) : /*#__PURE__*/jsxRuntime.jsx(Form, {
627
609
  formikProps: {
628
610
  initialValues: _objectSpread$1(_objectSpread$1({}, initialValues), ramda.assoc("kind", FIELD_KINDS[field.kind], field)),
629
611
  validationSchema: generateValidationSchema(additionalValidations),
@@ -653,14 +635,14 @@ var Edit = function Edit(_ref) {
653
635
 
654
636
  var _excluded = ["isOpen", "selectedField"];
655
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; }
656
- 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__default["default"](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; }
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; }
657
639
  var FieldsPane = function FieldsPane(_ref) {
658
640
  var isOpen = _ref.isOpen,
659
641
  _ref$selectedField = _ref.selectedField,
660
642
  selectedField = _ref$selectedField === void 0 ? {} : _ref$selectedField,
661
- props = _objectWithoutProperties__default["default"](_ref, _excluded);
643
+ props = _objectWithoutProperties(_ref, _excluded);
662
644
  var initialFocusField = React.useRef(null);
663
- return /*#__PURE__*/jsxRuntime.jsx(Pane__default["default"], {
645
+ return /*#__PURE__*/jsxRuntime.jsx(Pane, {
664
646
  isOpen: isOpen,
665
647
  initialFocusRef: initialFocusField,
666
648
  onClose: props.onClose,
@@ -1 +1 @@
1
- {"version":3,"file":"FieldsPane.js","sources":["../../node_modules/uuid/dist/esm-browser/rng.js","../../node_modules/uuid/dist/esm-browser/stringify.js","../../node_modules/uuid/dist/esm-browser/native.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()).\nlet getRandomValues;\nconst 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.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);\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}","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\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nexport function unsafeStringify(arr, offset = 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 return 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]];\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // 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;","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default {\n randomUUID\n};","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\n\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n\n options = options || {};\n const 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 (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return unsafeStringify(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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"}
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]}