@bigbinary/neeto-fields-frontend 2.0.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/DeleteAlert-b92f7c05.js +763 -0
  2. package/dist/DeleteAlert-b92f7c05.js.map +1 -0
  3. package/dist/DeleteAlert-fbc41b31.js +780 -0
  4. package/dist/DeleteAlert-fbc41b31.js.map +1 -0
  5. package/dist/FieldDeleteAlert.js +22 -0
  6. package/dist/FieldDeleteAlert.js.map +1 -0
  7. package/dist/FieldInputs.js +58 -0
  8. package/dist/FieldInputs.js.map +1 -0
  9. package/dist/FieldValueInputWrapper-adbbc915.js +198 -0
  10. package/dist/FieldValueInputWrapper-adbbc915.js.map +1 -0
  11. package/dist/FieldValueInputWrapper-f1f2e095.js +189 -0
  12. package/dist/FieldValueInputWrapper-f1f2e095.js.map +1 -0
  13. package/dist/FieldValuesContainer.js +223 -0
  14. package/dist/FieldValuesContainer.js.map +1 -0
  15. package/dist/FieldsDashboard.js +5000 -0
  16. package/dist/FieldsDashboard.js.map +1 -0
  17. package/dist/FieldsPane.js +563 -0
  18. package/dist/FieldsPane.js.map +1 -0
  19. package/dist/InlineFieldValueInput.js +157 -0
  20. package/dist/InlineFieldValueInput.js.map +1 -0
  21. package/dist/_commonjsHelpers-1789f0cf.js +8 -0
  22. package/dist/_commonjsHelpers-1789f0cf.js.map +1 -0
  23. package/dist/_commonjsHelpers-b3309d7b.js +11 -0
  24. package/dist/_commonjsHelpers-b3309d7b.js.map +1 -0
  25. package/dist/cjs/FieldDeleteAlert.js +28 -0
  26. package/dist/cjs/FieldDeleteAlert.js.map +1 -0
  27. package/dist/cjs/FieldInputs.js +64 -0
  28. package/dist/cjs/FieldInputs.js.map +1 -0
  29. package/dist/cjs/FieldValuesContainer.js +232 -0
  30. package/dist/cjs/FieldValuesContainer.js.map +1 -0
  31. package/dist/{index.cjs.js → cjs/FieldsDashboard.js} +120 -3427
  32. package/dist/cjs/FieldsDashboard.js.map +1 -0
  33. package/dist/cjs/FieldsPane.js +598 -0
  34. package/dist/cjs/FieldsPane.js.map +1 -0
  35. package/dist/cjs/InlineFieldValueInput.js +164 -0
  36. package/dist/cjs/InlineFieldValueInput.js.map +1 -0
  37. package/dist/cjs/hooks.js +20 -0
  38. package/dist/cjs/hooks.js.map +1 -0
  39. package/dist/cjs/index.js +84 -0
  40. package/dist/cjs/index.js.map +1 -0
  41. package/dist/cjs/utils.js +34 -0
  42. package/dist/cjs/utils.js.map +1 -0
  43. package/dist/constants-0e6017ea.js +57 -0
  44. package/dist/constants-0e6017ea.js.map +1 -0
  45. package/dist/constants-c71008a3.js +64 -0
  46. package/dist/constants-c71008a3.js.map +1 -0
  47. package/dist/hooks.js +8 -0
  48. package/dist/hooks.js.map +1 -0
  49. package/dist/index-265f7913.js +117 -0
  50. package/dist/index-265f7913.js.map +1 -0
  51. package/dist/index-27e54c2c.js +130 -0
  52. package/dist/index-27e54c2c.js.map +1 -0
  53. package/dist/index.js +64 -8255
  54. package/dist/index.js.map +1 -1
  55. package/dist/query-0df5b2dd.js +13 -0
  56. package/dist/query-0df5b2dd.js.map +1 -0
  57. package/dist/query-1a62b3ac.js +10 -0
  58. package/dist/query-1a62b3ac.js.map +1 -0
  59. package/dist/slicedToArray-50f7cc19.js +46 -0
  60. package/dist/slicedToArray-50f7cc19.js.map +1 -0
  61. package/dist/slicedToArray-6198349b.js +44 -0
  62. package/dist/slicedToArray-6198349b.js.map +1 -0
  63. package/dist/useFieldsApi-14928ecf.js +161 -0
  64. package/dist/useFieldsApi-14928ecf.js.map +1 -0
  65. package/dist/useFieldsApi-5c114bac.js +149 -0
  66. package/dist/useFieldsApi-5c114bac.js.map +1 -0
  67. package/dist/utils-4812fc6c.js +1140 -0
  68. package/dist/utils-4812fc6c.js.map +1 -0
  69. package/dist/utils-85ed1903.js +1180 -0
  70. package/dist/utils-85ed1903.js.map +1 -0
  71. package/dist/utils.js +26 -0
  72. package/dist/utils.js.map +1 -0
  73. package/package.json +27 -13
  74. package/dist/index.cjs.js.map +0 -1
@@ -0,0 +1,157 @@
1
+ import { _ as _defineProperty } from './index-265f7913.js';
2
+ import { _ as _slicedToArray } from './slicedToArray-6198349b.js';
3
+ import { useState } from 'react';
4
+ import classnames from 'classnames';
5
+ import { findBy, isNotEmpty, noop } from '@bigbinary/neeto-cist';
6
+ import { dateFormat, hyphenize } from '@bigbinary/neeto-commons-frontend/utils';
7
+ import Typography from '@bigbinary/neetoui/Typography';
8
+ import { u as useFieldValues, F as FieldValueInputWrapper } from './FieldValueInputWrapper-f1f2e095.js';
9
+ import { c as getValueFromBool, a as getFieldInput, D as DIRECT_EDIT_INPUT_FIELDS } from './utils-4812fc6c.js';
10
+ import { K as KINDS } from './constants-0e6017ea.js';
11
+ import { jsx } from 'react/jsx-runtime';
12
+ import 'ramda';
13
+ import '@tanstack/react-query';
14
+ import '@bigbinary/neeto-commons-frontend/react-utils';
15
+ import 'axios';
16
+ import './query-1a62b3ac.js';
17
+ import '@bigbinary/neetoui/formik/Form';
18
+ import '@bigbinary/neetoui/Checkbox';
19
+ import './_commonjsHelpers-1789f0cf.js';
20
+ import 'formik';
21
+ import '@bigbinary/neetoui/DatePicker';
22
+ import '@bigbinary/neetoui/TimePicker';
23
+ import 'dayjs';
24
+ import 'i18next';
25
+ import 'yup';
26
+ import '@bigbinary/neeto-commons-frontend/utils/general';
27
+ import '@bigbinary/neeto-icons/Check';
28
+ import '@bigbinary/neetoui/Label';
29
+ import '@bigbinary/neetoui/Spinner';
30
+ import '@bigbinary/neetoui/formik/Select';
31
+ import '@bigbinary/neetoui/Input';
32
+ import '@bigbinary/neetoui/Select';
33
+ import '@bigbinary/neetoui/Textarea';
34
+
35
+ var renderDataAsText = function renderDataAsText(field, fieldValues) {
36
+ var _findBy, _findBy2, _findBy3;
37
+ var fieldValueData = (_findBy = findBy({
38
+ fieldId: field.id
39
+ }, fieldValues)) === null || _findBy === void 0 || (_findBy = _findBy.data) === null || _findBy === void 0 ? void 0 : _findBy.value;
40
+ switch (field.kind) {
41
+ case KINDS.date:
42
+ return fieldValueData && dateFormat.date(fieldValueData);
43
+ case KINDS.time:
44
+ return fieldValueData && dateFormat.time(fieldValueData);
45
+ case KINDS.datetime:
46
+ return fieldValueData && dateFormat.dateTime(fieldValueData);
47
+ case KINDS.dateRange:
48
+ return fieldValueData && isNotEmpty(fieldValueData) && "".concat(dateFormat.date(fieldValueData[0]), " - ").concat(dateFormat.date(fieldValueData[1]));
49
+ case KINDS.timeRange:
50
+ return fieldValueData && "".concat(dateFormat.time(fieldValueData[0]), " - ").concat(dateFormat.time(fieldValueData[1]));
51
+ case KINDS.singleOption:
52
+ return (_findBy2 = findBy({
53
+ id: fieldValueData
54
+ }, field.data)) === null || _findBy2 === void 0 ? void 0 : _findBy2.label;
55
+ case KINDS.multiOption:
56
+ fieldValueData = (_findBy3 = findBy({
57
+ fieldId: field.id
58
+ }, fieldValues)) === null || _findBy3 === void 0 || (_findBy3 = _findBy3.data) === null || _findBy3 === void 0 ? void 0 : _findBy3.values;
59
+ return fieldValueData && fieldValueData.map(function (optionId) {
60
+ var _findBy4;
61
+ return (_findBy4 = findBy({
62
+ id: optionId
63
+ }, field.data)) === null || _findBy4 === void 0 ? void 0 : _findBy4.label;
64
+ }).join(", ");
65
+ case KINDS.checkbox:
66
+ return getValueFromBool(fieldValueData);
67
+ default:
68
+ return fieldValueData;
69
+ }
70
+ };
71
+
72
+ 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; }
73
+ 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; }
74
+ var DefaultDisplayComponent = function DefaultDisplayComponent(_ref) {
75
+ var value = _ref.value;
76
+ return /*#__PURE__*/jsx(Typography, {
77
+ className: "text-wrap",
78
+ children: value
79
+ });
80
+ };
81
+ var InlineFieldValueInput = function InlineFieldValueInput(_ref2) {
82
+ var field = _ref2.field,
83
+ fieldValues = _ref2.fieldValues,
84
+ resourceType = _ref2.resourceType,
85
+ resourceId = _ref2.resourceId,
86
+ _ref2$ownerId = _ref2.ownerId,
87
+ ownerId = _ref2$ownerId === void 0 ? "" : _ref2$ownerId,
88
+ _ref2$onMutationSucce = _ref2.onMutationSuccess,
89
+ onMutationSuccess = _ref2$onMutationSucce === void 0 ? noop : _ref2$onMutationSucce,
90
+ _ref2$onMutate = _ref2.onMutate,
91
+ _onMutate = _ref2$onMutate === void 0 ? noop : _ref2$onMutate,
92
+ _ref2$customDisplayCo = _ref2.customDisplayComponents,
93
+ customDisplayComponents = _ref2$customDisplayCo === void 0 ? {} : _ref2$customDisplayCo;
94
+ var _useState = useState(false),
95
+ _useState2 = _slicedToArray(_useState, 2),
96
+ editMode = _useState2[0],
97
+ setEditMode = _useState2[1];
98
+ var queryOptions = {
99
+ onMutate: function onMutate(variables) {
100
+ return _onMutate(variables.payload || variables);
101
+ },
102
+ onSuccess: function onSuccess() {
103
+ setEditMode(false);
104
+ onMutationSuccess.apply(void 0, arguments);
105
+ }
106
+ };
107
+ var _useFieldValues = useFieldValues({
108
+ resourceId: resourceId,
109
+ resourceType: resourceType,
110
+ ownerId: ownerId,
111
+ queryOptions: queryOptions
112
+ }),
113
+ handleSubmit = _useFieldValues.handleSubmit;
114
+ var Field = getFieldInput({
115
+ field: field
116
+ });
117
+ var fieldKind = field.kind;
118
+ var isEditable = !field.isSystem && (editMode || DIRECT_EDIT_INPUT_FIELDS.includes(fieldKind));
119
+ var displayValue = renderDataAsText(field, fieldValues) || "-";
120
+ var _ref3 = customDisplayComponents[fieldKind] || {},
121
+ _ref3$props = _ref3.props,
122
+ customDisplayComponentProps = _ref3$props === void 0 ? {} : _ref3$props,
123
+ _ref3$component = _ref3.component,
124
+ CustomDisplayComponent = _ref3$component === void 0 ? null : _ref3$component;
125
+ var DisplayComponent = CustomDisplayComponent || DefaultDisplayComponent;
126
+ return isEditable ? /*#__PURE__*/jsx("div", {
127
+ "data-cy": "inline-field-value-input-".concat(hyphenize(field.name)),
128
+ children: /*#__PURE__*/jsx(FieldValueInputWrapper, {
129
+ field: field,
130
+ fieldValues: fieldValues,
131
+ onSubmit: function onSubmit(values) {
132
+ return handleSubmit(field, values);
133
+ },
134
+ children: /*#__PURE__*/jsx(Field, _objectSpread(_objectSpread({}, _objectSpread({}, field)), {}, {
135
+ individualSubmit: true,
136
+ isInline: true,
137
+ onBlur: function onBlur() {
138
+ return setEditMode(false);
139
+ }
140
+ }))
141
+ })
142
+ }) : /*#__PURE__*/jsx("div", {
143
+ className: classnames({
144
+ "cursor-pointer": !field.isSystem
145
+ }),
146
+ onClick: function onClick() {
147
+ return setEditMode(true);
148
+ },
149
+ children: /*#__PURE__*/jsx(DisplayComponent, _objectSpread({
150
+ resourceId: resourceId,
151
+ value: displayValue
152
+ }, customDisplayComponentProps))
153
+ });
154
+ };
155
+
156
+ export { InlineFieldValueInput as default };
157
+ //# sourceMappingURL=InlineFieldValueInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InlineFieldValueInput.js","sources":["../app/javascript/src/components/InlineFieldValueInput/utils.js","../app/javascript/src/components/InlineFieldValueInput/index.jsx"],"sourcesContent":["import { findBy, isNotEmpty } from \"neetocist\";\nimport { dateFormat } from \"neetocommons/utils\";\n\nimport { KINDS } from \"components/FieldsDashBoard/constants\";\n\nimport { getValueFromBool } from \"../commons/FieldInputs/utils\";\n\nexport const renderDataAsText = (field, fieldValues) => {\n let fieldValueData = findBy({ fieldId: field.id }, fieldValues)?.data?.value;\n\n switch (field.kind) {\n case KINDS.date:\n return fieldValueData && dateFormat.date(fieldValueData);\n case KINDS.time:\n return fieldValueData && dateFormat.time(fieldValueData);\n case KINDS.datetime:\n return fieldValueData && dateFormat.dateTime(fieldValueData);\n case KINDS.dateRange:\n return (\n fieldValueData &&\n isNotEmpty(fieldValueData) &&\n `${dateFormat.date(fieldValueData[0])} - ${dateFormat.date(\n fieldValueData[1]\n )}`\n );\n case KINDS.timeRange:\n return (\n fieldValueData &&\n `${dateFormat.time(fieldValueData[0])} - ${dateFormat.time(\n fieldValueData[1]\n )}`\n );\n case KINDS.singleOption:\n return findBy({ id: fieldValueData }, field.data)?.label;\n case KINDS.multiOption:\n fieldValueData = findBy({ fieldId: field.id }, fieldValues)?.data?.values;\n\n return (\n fieldValueData &&\n fieldValueData\n .map(optionId => findBy({ id: optionId }, field.data)?.label)\n .join(\", \")\n );\n\n case KINDS.checkbox:\n return getValueFromBool(fieldValueData);\n\n default:\n return fieldValueData;\n }\n};\n","import { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { hyphenize } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\n\nimport FieldValueInputWrapper from \"components/FieldValuesContainer/FieldValueInputWrapper\";\nimport { getFieldInput } from \"components/utils\";\nimport useFieldValues from \"hooks/useFieldValues\";\n\nimport { DIRECT_EDIT_INPUT_FIELDS } from \"./constants\";\nimport { renderDataAsText } from \"./utils\";\n\nconst DefaultDisplayComponent = ({ value }) => (\n <Typography className=\"text-wrap\">{value}</Typography>\n);\n\nconst InlineFieldValueInput = ({\n field,\n fieldValues,\n resourceType,\n resourceId,\n ownerId = \"\",\n onMutationSuccess = noop,\n onMutate = noop,\n customDisplayComponents = {},\n}) => {\n const [editMode, setEditMode] = useState(false);\n\n const queryOptions = {\n onMutate: variables => onMutate(variables.payload || variables),\n onSuccess: (...params) => {\n setEditMode(false);\n onMutationSuccess(...params);\n },\n };\n\n const { handleSubmit } = useFieldValues({\n resourceId,\n resourceType,\n ownerId,\n queryOptions,\n });\n\n const Field = getFieldInput({ field });\n\n const fieldKind = field.kind;\n const isEditable =\n !field.isSystem &&\n (editMode || DIRECT_EDIT_INPUT_FIELDS.includes(fieldKind));\n\n const displayValue = renderDataAsText(field, fieldValues) || \"-\";\n const {\n props: customDisplayComponentProps = {},\n component: CustomDisplayComponent = null,\n } = customDisplayComponents[fieldKind] || {};\n\n const DisplayComponent = CustomDisplayComponent || DefaultDisplayComponent;\n\n return isEditable ? (\n <div data-cy={`inline-field-value-input-${hyphenize(field.name)}`}>\n <FieldValueInputWrapper\n {...{ field, fieldValues }}\n onSubmit={values => handleSubmit(field, values)}\n >\n <Field\n {...{ ...field }}\n individualSubmit\n isInline\n onBlur={() => setEditMode(false)}\n />\n </FieldValueInputWrapper>\n </div>\n ) : (\n <div\n className={classnames({ \"cursor-pointer\": !field.isSystem })}\n onClick={() => setEditMode(true)}\n >\n <DisplayComponent\n {...{ resourceId }}\n value={displayValue}\n {...customDisplayComponentProps}\n />\n </div>\n );\n};\n\nexport default InlineFieldValueInput;\n"],"names":["renderDataAsText","field","fieldValues","_findBy","_findBy2","_findBy3","fieldValueData","findBy","fieldId","id","data","value","kind","KINDS","date","dateFormat","time","datetime","dateTime","dateRange","isNotEmpty","concat","timeRange","singleOption","label","multiOption","values","map","optionId","_findBy4","join","checkbox","getValueFromBool","DefaultDisplayComponent","_ref","_jsx","Typography","className","children","InlineFieldValueInput","_ref2","resourceType","resourceId","_ref2$ownerId","ownerId","_ref2$onMutationSucce","onMutationSuccess","noop","_ref2$onMutate","onMutate","_ref2$customDisplayCo","customDisplayComponents","_useState","useState","_useState2","_slicedToArray","editMode","setEditMode","queryOptions","variables","payload","onSuccess","apply","arguments","_useFieldValues","useFieldValues","handleSubmit","Field","getFieldInput","fieldKind","isEditable","isSystem","DIRECT_EDIT_INPUT_FIELDS","includes","displayValue","_ref3","_ref3$props","props","customDisplayComponentProps","_ref3$component","component","CustomDisplayComponent","DisplayComponent","hyphenize","name","FieldValueInputWrapper","onSubmit","_objectSpread","individualSubmit","isInline","onBlur","classnames","onClick"],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
2
+
3
+ function getDefaultExportFromCjs (x) {
4
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
5
+ }
6
+
7
+ export { commonjsGlobal as c, getDefaultExportFromCjs as g };
8
+ //# sourceMappingURL=_commonjsHelpers-1789f0cf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_commonjsHelpers-1789f0cf.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
4
+
5
+ function getDefaultExportFromCjs (x) {
6
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
7
+ }
8
+
9
+ exports.commonjsGlobal = commonjsGlobal;
10
+ exports.getDefaultExportFromCjs = getDefaultExportFromCjs;
11
+ //# sourceMappingURL=_commonjsHelpers-b3309d7b.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_commonjsHelpers-b3309d7b.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ require('@bigbinary/neeto-cist');
4
+ require('@bigbinary/neetoui/Alert');
5
+ require('react-i18next');
6
+ require('../useFieldsApi-14928ecf.js');
7
+ var FieldDeleteAlert = require('../DeleteAlert-fbc41b31.js');
8
+ require('react/jsx-runtime');
9
+ require('../index-27e54c2c.js');
10
+ require('@tanstack/react-query');
11
+ require('@bigbinary/neeto-commons-frontend/react-utils');
12
+ require('axios');
13
+ require('@bigbinary/neeto-commons-frontend/utils');
14
+ require('../query-0df5b2dd.js');
15
+ require('i18next');
16
+ require('@bigbinary/neeto-molecules/MenuBar');
17
+ require('@bigbinary/neeto-molecules/MoreDropdown');
18
+ require('@bigbinary/neetoui/Tab');
19
+ require('@bigbinary/neetoui/Typography');
20
+ require('@bigbinary/neetoui/Button');
21
+ require('../_commonjsHelpers-b3309d7b.js');
22
+ require('ramda');
23
+ require('../constants-c71008a3.js');
24
+
25
+
26
+
27
+ module.exports = FieldDeleteAlert.DeleteAlert;
28
+ //# sourceMappingURL=FieldDeleteAlert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldDeleteAlert.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,64 @@
1
+ 'use strict';
2
+
3
+ var index = require('../index-27e54c2c.js');
4
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
5
+ var Typography = require('@bigbinary/neetoui/Typography');
6
+ var utils = require('../utils-85ed1903.js');
7
+ var jsxRuntime = require('react/jsx-runtime');
8
+ require('@bigbinary/neeto-cist');
9
+ require('ramda');
10
+ require('@bigbinary/neetoui/Checkbox');
11
+ require('../slicedToArray-50f7cc19.js');
12
+ require('../_commonjsHelpers-b3309d7b.js');
13
+ require('react');
14
+ require('formik');
15
+ require('../constants-c71008a3.js');
16
+ require('i18next');
17
+ require('@bigbinary/neetoui/DatePicker');
18
+ require('@bigbinary/neetoui/TimePicker');
19
+ require('dayjs');
20
+ require('yup');
21
+ require('@bigbinary/neeto-commons-frontend/utils/general');
22
+ require('@bigbinary/neeto-icons/Check');
23
+ require('@bigbinary/neetoui/Label');
24
+ require('@bigbinary/neetoui/Spinner');
25
+ require('@bigbinary/neetoui/formik/Select');
26
+ require('@bigbinary/neetoui/Input');
27
+ require('@bigbinary/neetoui/Select');
28
+ require('@bigbinary/neetoui/Textarea');
29
+
30
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
31
+
32
+ var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
33
+
34
+ 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; }
35
+ 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) { index._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; }
36
+ var FieldInputs = reactUtils.withT(function (_ref) {
37
+ var t = _ref.t,
38
+ _ref$customComponents = _ref.customComponents,
39
+ customComponents = _ref$customComponents === void 0 ? {} : _ref$customComponents,
40
+ fields = _ref.fields,
41
+ formRef = _ref.formRef,
42
+ disabled = _ref.disabled,
43
+ isRequiredColumnName = _ref.isRequiredColumnName;
44
+ return utils.getNonSystemFields(fields).map(function (field) {
45
+ var Field = utils.getFieldInput({
46
+ field: field,
47
+ customComponents: customComponents
48
+ });
49
+ if (Field) {
50
+ return /*#__PURE__*/jsxRuntime.jsx(Field, _objectSpread({}, _objectSpread(_objectSpread({}, field), {}, {
51
+ disabled: disabled,
52
+ formRef: formRef,
53
+ isRequiredColumnName: isRequiredColumnName
54
+ })), field.id);
55
+ }
56
+ return /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
57
+ style: "body2",
58
+ children: t("neetoFields.messages.invalidKind")
59
+ }, field.id);
60
+ });
61
+ });
62
+
63
+ module.exports = FieldInputs;
64
+ //# sourceMappingURL=FieldInputs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldInputs.js","sources":["../../app/javascript/src/components/FieldInputs.jsx"],"sourcesContent":["import { withT } from \"neetocommons/react-utils\";\nimport { Typography } from \"neetoui\";\n\nimport { getFieldInput, getNonSystemFields } from \"./utils\";\n\nconst FieldInputs = withT(\n ({\n t,\n customComponents = {},\n fields,\n formRef,\n disabled,\n isRequiredColumnName,\n }) =>\n getNonSystemFields(fields).map(field => {\n const Field = getFieldInput({ field, customComponents });\n\n if (Field) {\n return (\n <Field\n key={field.id}\n {...{ ...field, disabled, formRef, isRequiredColumnName }}\n />\n );\n }\n\n return (\n <Typography key={field.id} style=\"body2\">\n {t(\"neetoFields.messages.invalidKind\")}\n </Typography>\n );\n })\n);\nexport default FieldInputs;\n"],"names":["FieldInputs","withT","_ref","t","_ref$customComponents","customComponents","fields","formRef","disabled","isRequiredColumnName","getNonSystemFields","map","field","Field","getFieldInput","_jsx","_objectSpread","id","Typography","style","children"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,WAAW,GAAGC,gBAAK,CACvB,UAAAC,IAAA,EAAA;AAAA,EAAA,IACEC,CAAC,GAAAD,IAAA,CAADC,CAAC;IAAAC,qBAAA,GAAAF,IAAA,CACDG,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,qBAAA;IACrBE,MAAM,GAAAJ,IAAA,CAANI,MAAM;IACNC,OAAO,GAAAL,IAAA,CAAPK,OAAO;IACPC,QAAQ,GAAAN,IAAA,CAARM,QAAQ;IACRC,oBAAoB,GAAAP,IAAA,CAApBO,oBAAoB,CAAA;EAAA,OAEpBC,wBAAkB,CAACJ,MAAM,CAAC,CAACK,GAAG,CAAC,UAAAC,KAAK,EAAI;IACtC,IAAMC,KAAK,GAAGC,mBAAa,CAAC;AAAEF,MAAAA,KAAK,EAALA,KAAK;AAAEP,MAAAA,gBAAgB,EAAhBA,gBAAAA;AAAiB,KAAC,CAAC,CAAA;AAExD,IAAA,IAAIQ,KAAK,EAAE;MACT,oBACEE,cAAA,CAACF,KAAK,EAAAG,aAAA,KAAAA,aAAA,CAAAA,aAAA,CAAA,EAAA,EAEKJ,KAAK,CAAA,EAAA,EAAA,EAAA;AAAEJ,QAAAA,QAAQ,EAARA,QAAQ;AAAED,QAAAA,OAAO,EAAPA,OAAO;AAAEE,QAAAA,oBAAoB,EAApBA,oBAAAA;OAD9BG,CAAAA,CAAAA,EAAAA,KAAK,CAACK,EAEZ,CAAC,CAAA;AAEN,KAAA;IAEA,oBACEF,cAAA,CAACG,8BAAU,EAAA;AAAgBC,MAAAA,KAAK,EAAC,OAAO;MAAAC,QAAA,EACrCjB,CAAC,CAAC,kCAAkC,CAAA;KADtBS,EAAAA,KAAK,CAACK,EAEX,CAAC,CAAA;AAEjB,GAAC,CAAC,CAAA;AAAA,CACN;;;;"}
@@ -0,0 +1,232 @@
1
+ 'use strict';
2
+
3
+ var index = require('../index-27e54c2c.js');
4
+ var classnames = require('classnames');
5
+ var neetoCist = require('@bigbinary/neeto-cist');
6
+ var Spinner = require('@bigbinary/neetoui/Spinner');
7
+ var Typography = require('@bigbinary/neetoui/Typography');
8
+ var ramda = require('ramda');
9
+ var reactI18next = require('react-i18next');
10
+ var utils = require('../utils-85ed1903.js');
11
+ var FieldValueInputWrapper = require('../FieldValueInputWrapper-adbbc915.js');
12
+ var useFieldsApi = require('../useFieldsApi-14928ecf.js');
13
+ var formik = require('formik');
14
+ var Alert = require('@bigbinary/neetoui/Alert');
15
+ var React = require('react');
16
+ var reactRouterDom = require('react-router-dom');
17
+ var i18next = require('i18next');
18
+ var jsxRuntime = require('react/jsx-runtime');
19
+ require('@bigbinary/neetoui/Checkbox');
20
+ require('../slicedToArray-50f7cc19.js');
21
+ require('../_commonjsHelpers-b3309d7b.js');
22
+ require('@bigbinary/neeto-commons-frontend/react-utils');
23
+ require('../constants-c71008a3.js');
24
+ require('@bigbinary/neetoui/DatePicker');
25
+ require('@bigbinary/neetoui/TimePicker');
26
+ require('dayjs');
27
+ require('yup');
28
+ require('@bigbinary/neeto-commons-frontend/utils/general');
29
+ require('@bigbinary/neeto-icons/Check');
30
+ require('@bigbinary/neetoui/Label');
31
+ require('@bigbinary/neetoui/formik/Select');
32
+ require('@bigbinary/neetoui/Input');
33
+ require('@bigbinary/neetoui/Select');
34
+ require('@bigbinary/neetoui/Textarea');
35
+ require('@tanstack/react-query');
36
+ require('axios');
37
+ require('@bigbinary/neeto-commons-frontend/utils');
38
+ require('../query-0df5b2dd.js');
39
+ require('@bigbinary/neetoui/formik/Form');
40
+
41
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
42
+
43
+ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
44
+ var Spinner__default = /*#__PURE__*/_interopDefaultLegacy(Spinner);
45
+ var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
46
+ var Alert__default = /*#__PURE__*/_interopDefaultLegacy(Alert);
47
+
48
+ const useNavPrompt = ({
49
+ shouldBlock
50
+ }) => {
51
+ const history = reactRouterDom.useHistory();
52
+
53
+ const _unblock = React.useRef(null);
54
+
55
+ const _navPath = React.useRef(null);
56
+
57
+ const [blocked, setBlocked] = React.useState(false);
58
+ React.useEffect(() => {
59
+ if (shouldBlock) {
60
+ _unblock.current = history.block(location => {
61
+ // need to use ref?
62
+ setBlocked(true);
63
+ _navPath.current = location.pathname + location.search; // $FlowFixMe - See https://github.com/ReactTraining/history/issues/728
64
+
65
+ return false;
66
+ });
67
+ return () => {
68
+ if (_unblock.current) {
69
+ _unblock.current();
70
+ }
71
+ };
72
+ }
73
+ }, [shouldBlock]);
74
+
75
+ const navigate = () => {
76
+ if (_unblock.current) {
77
+ _unblock.current();
78
+
79
+ setBlocked(false);
80
+
81
+ if (_navPath.current) {
82
+ history.push(_navPath.current);
83
+ }
84
+ }
85
+ };
86
+
87
+ const hidePrompt = () => {
88
+ setBlocked(false);
89
+ };
90
+
91
+ return {
92
+ blocked,
93
+ navigate,
94
+ hidePrompt
95
+ };
96
+ };
97
+
98
+ var DEAFULT_BLOCK_NAVIGATION_ALERT_PROPS = {
99
+ title: i18next.t("neetoFields.messages.blockNavigationAlert.title"),
100
+ message: i18next.t("neetoFields.messages.blockNavigationAlert.message"),
101
+ submitButtonLabel: i18next.t("neetoFields.messages.blockNavigationAlert.submitButtonLabel"),
102
+ cancelButtonLabel: i18next.t("neetoFields.messages.blockNavigationAlert.cancelButtonLabel")
103
+ };
104
+
105
+ 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; }
106
+ 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) { index._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; }
107
+ var BlockNavigation = function BlockNavigation(_ref) {
108
+ var blockNavigation = _ref.blockNavigation,
109
+ blockNavigationAlertProps = _ref.blockNavigationAlertProps;
110
+ var _useFormikContext = formik.useFormikContext(),
111
+ dirty = _useFormikContext.dirty;
112
+ var _useNavPrompt = useNavPrompt({
113
+ shouldBlock: blockNavigation && dirty
114
+ }),
115
+ blocked = _useNavPrompt.blocked,
116
+ hidePrompt = _useNavPrompt.hidePrompt,
117
+ navigate = _useNavPrompt.navigate;
118
+ var alertProps = _objectSpread$1(_objectSpread$1({}, DEAFULT_BLOCK_NAVIGATION_ALERT_PROPS), blockNavigationAlertProps);
119
+ return /*#__PURE__*/jsxRuntime.jsx(Alert__default["default"], {
120
+ cancelButtonLabel: alertProps["cancelButtonLabel"],
121
+ isOpen: blocked,
122
+ message: alertProps["message"],
123
+ submitButtonLabel: alertProps["submitButtonLabel"],
124
+ title: alertProps["title"],
125
+ onClose: hidePrompt,
126
+ onSubmit: navigate
127
+ });
128
+ };
129
+
130
+ 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; }
131
+ 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) { index._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; }
132
+ var FieldValuesContainer = function FieldValuesContainer(_ref) {
133
+ var _ref$resourceType = _ref.resourceType,
134
+ resourceType = _ref$resourceType === void 0 ? "" : _ref$resourceType,
135
+ fieldValues = _ref.fieldValues,
136
+ propFields = _ref.fields,
137
+ _ref$ownerId = _ref.ownerId,
138
+ ownerId = _ref$ownerId === void 0 ? "" : _ref$ownerId,
139
+ resourceId = _ref.resourceId,
140
+ _ref$customComponents = _ref.customComponents,
141
+ customComponents = _ref$customComponents === void 0 ? {} : _ref$customComponents,
142
+ _ref$className = _ref.className,
143
+ className = _ref$className === void 0 ? "" : _ref$className,
144
+ _ref$showBorder = _ref.showBorder,
145
+ showBorder = _ref$showBorder === void 0 ? true : _ref$showBorder,
146
+ formRefs = _ref.formRefs,
147
+ _ref$disabled = _ref.disabled,
148
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
149
+ isRequiredColumnName = _ref.isRequiredColumnName,
150
+ fieldClassName = _ref.fieldClassName,
151
+ _ref$onMutationSucces = _ref.onMutationSuccess,
152
+ onMutationSuccess = _ref$onMutationSucces === void 0 ? neetoCist.noop : _ref$onMutationSucces,
153
+ _ref$blockNavigation = _ref.blockNavigation,
154
+ blockNavigation = _ref$blockNavigation === void 0 ? false : _ref$blockNavigation,
155
+ _ref$blockNavigationA = _ref.blockNavigationAlertProps,
156
+ blockNavigationAlertProps = _ref$blockNavigationA === void 0 ? {} : _ref$blockNavigationA;
157
+ var _useTranslation = reactI18next.useTranslation(),
158
+ t = _useTranslation.t;
159
+ var queryOptions = {
160
+ onSuccess: onMutationSuccess
161
+ };
162
+ var _useFetchFields = useFieldsApi.useFetchFields({
163
+ resourceType: ramda.isEmpty(resourceType) ? undefined : resourceType,
164
+ ownerId: ramda.isEmpty(ownerId) ? undefined : ownerId,
165
+ state: "active"
166
+ }, {
167
+ enabled: ramda.isNil(propFields)
168
+ }),
169
+ _useFetchFields$data = _useFetchFields.data,
170
+ _useFetchFields$data2 = _useFetchFields$data === void 0 ? {} : _useFetchFields$data,
171
+ _useFetchFields$data3 = _useFetchFields$data2.fields,
172
+ fetchedFields = _useFetchFields$data3 === void 0 ? [] : _useFetchFields$data3,
173
+ isFieldsLoading = _useFetchFields.isLoading;
174
+ var _useFieldValues = FieldValueInputWrapper.useFieldValues({
175
+ resourceId: resourceId,
176
+ resourceType: resourceType,
177
+ ownerId: ownerId,
178
+ queryOptions: queryOptions
179
+ }),
180
+ handleSubmit = _useFieldValues.handleSubmit,
181
+ submittingFieldDetails = _useFieldValues.submittingFieldDetails;
182
+ var fields = propFields || fetchedFields;
183
+ return /*#__PURE__*/jsxRuntime.jsx("div", {
184
+ className: classnames__default["default"]("space-y-3 py-3", {
185
+ "neeto-ui-border-gray-300 neeto-ui-rounded-lg neeto-ui-bg-white border px-4 py-2": showBorder
186
+ }, className),
187
+ children: isFieldsLoading ? /*#__PURE__*/jsxRuntime.jsx("div", {
188
+ className: "flex items-center justify-center",
189
+ children: /*#__PURE__*/jsxRuntime.jsx(Spinner__default["default"], {})
190
+ }) : utils.getNonSystemFields(fields).map(function (field) {
191
+ var Field = utils.getFieldInput({
192
+ field: field,
193
+ customComponents: customComponents
194
+ });
195
+ if (Field) {
196
+ var _submittingFieldDetai;
197
+ return /*#__PURE__*/jsxRuntime.jsx("div", {
198
+ className: classnames__default["default"](fieldClassName, "space-y-1"),
199
+ children: /*#__PURE__*/jsxRuntime.jsx(FieldValueInputWrapper.FieldValueInputWrapper, {
200
+ field: field,
201
+ fieldValues: fieldValues,
202
+ className: fieldClassName,
203
+ onSubmit: function onSubmit(values) {
204
+ return handleSubmit(field, values);
205
+ },
206
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
207
+ className: "w-full",
208
+ children: [/*#__PURE__*/jsxRuntime.jsx(Field, _objectSpread(_objectSpread({}, _objectSpread(_objectSpread({}, field), {}, {
209
+ disabled: disabled,
210
+ formRefs: formRefs,
211
+ isRequiredColumnName: isRequiredColumnName
212
+ })), {}, {
213
+ individualSubmit: true,
214
+ submissionStatus: (_submittingFieldDetai = submittingFieldDetails[field.id]) === null || _submittingFieldDetai === void 0 ? void 0 : _submittingFieldDetai.status
215
+ })), /*#__PURE__*/jsxRuntime.jsx(BlockNavigation, {
216
+ blockNavigation: blockNavigation,
217
+ blockNavigationAlertProps: blockNavigationAlertProps
218
+ })]
219
+ })
220
+ })
221
+ }, field.id);
222
+ }
223
+ return /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
224
+ style: "body2",
225
+ children: t("neetoFields.messages.invalidKind")
226
+ }, field.id);
227
+ })
228
+ });
229
+ };
230
+
231
+ module.exports = FieldValuesContainer;
232
+ //# sourceMappingURL=FieldValuesContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldValuesContainer.js","sources":["../../node_modules/react-router-nav-prompt/dist/useNavPrompt.js","../../app/javascript/src/components/FieldValuesContainer/constants.js","../../app/javascript/src/components/FieldValuesContainer/BlockNavigation.jsx","../../app/javascript/src/components/FieldValuesContainer/index.jsx"],"sourcesContent":["import { useState, useRef, useEffect } from 'react';\nimport { useHistory } from 'react-router-dom';\n\nconst useNavPrompt = ({\n shouldBlock\n}) => {\n const history = useHistory();\n\n const _unblock = useRef(null);\n\n const _navPath = useRef(null);\n\n const [blocked, setBlocked] = useState(false);\n useEffect(() => {\n if (shouldBlock) {\n _unblock.current = history.block(location => {\n // need to use ref?\n setBlocked(true);\n _navPath.current = location.pathname + location.search; // $FlowFixMe - See https://github.com/ReactTraining/history/issues/728\n\n return false;\n });\n return () => {\n if (_unblock.current) {\n _unblock.current();\n }\n };\n }\n }, [shouldBlock]);\n\n const navigate = () => {\n if (_unblock.current) {\n _unblock.current();\n\n setBlocked(false);\n\n if (_navPath.current) {\n history.push(_navPath.current);\n }\n }\n };\n\n const hidePrompt = () => {\n setBlocked(false);\n };\n\n return {\n blocked,\n navigate,\n hidePrompt\n };\n};\n\nexport default useNavPrompt;","import { t } from \"i18next\";\n\nexport const DEAFULT_BLOCK_NAVIGATION_ALERT_PROPS = {\n title: t(\"neetoFields.messages.blockNavigationAlert.title\"),\n message: t(\"neetoFields.messages.blockNavigationAlert.message\"),\n submitButtonLabel: t(\n \"neetoFields.messages.blockNavigationAlert.submitButtonLabel\"\n ),\n cancelButtonLabel: t(\n \"neetoFields.messages.blockNavigationAlert.cancelButtonLabel\"\n ),\n};\n","import { useFormikContext } from \"formik\";\nimport { Alert } from \"neetoui\";\nimport { useNavPrompt } from \"react-router-nav-prompt\";\n\nimport { DEAFULT_BLOCK_NAVIGATION_ALERT_PROPS } from \"./constants\";\n\nconst BlockNavigation = ({ blockNavigation, blockNavigationAlertProps }) => {\n const { dirty } = useFormikContext();\n const { blocked, hidePrompt, navigate } = useNavPrompt({\n shouldBlock: blockNavigation && dirty,\n });\n\n const alertProps = {\n ...DEAFULT_BLOCK_NAVIGATION_ALERT_PROPS,\n ...blockNavigationAlertProps,\n };\n\n return (\n <Alert\n cancelButtonLabel={alertProps[\"cancelButtonLabel\"]}\n isOpen={blocked}\n message={alertProps[\"message\"]}\n submitButtonLabel={alertProps[\"submitButtonLabel\"]}\n title={alertProps[\"title\"]}\n onClose={hidePrompt}\n onSubmit={navigate}\n />\n );\n};\n\nexport default BlockNavigation;\n","import classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { Spinner, Typography } from \"neetoui\";\nimport { isEmpty, isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getFieldInput, getNonSystemFields } from \"components/utils\";\nimport useFieldValues from \"hooks/useFieldValues\";\nimport { useFetchFields } from \"src/hooks/reactQuery/useFieldsApi\";\n\nimport BlockNavigationAlert from \"./BlockNavigation\";\nimport FieldValueInputWrapper from \"./FieldValueInputWrapper\";\n\nconst FieldValuesContainer = ({\n resourceType = \"\",\n fieldValues,\n fields: propFields,\n ownerId = \"\",\n resourceId,\n customComponents = {},\n className = \"\",\n showBorder = true,\n formRefs,\n disabled = false,\n isRequiredColumnName,\n fieldClassName,\n onMutationSuccess = noop,\n blockNavigation = false,\n blockNavigationAlertProps = {},\n}) => {\n const { t } = useTranslation();\n\n const queryOptions = { onSuccess: onMutationSuccess };\n\n const {\n data: { fields: fetchedFields = [] } = {},\n isLoading: isFieldsLoading,\n } = useFetchFields(\n {\n resourceType: isEmpty(resourceType) ? undefined : resourceType,\n ownerId: isEmpty(ownerId) ? undefined : ownerId,\n state: \"active\",\n },\n { enabled: isNil(propFields) }\n );\n\n const { handleSubmit, submittingFieldDetails } = useFieldValues({\n resourceId,\n resourceType,\n ownerId,\n queryOptions,\n });\n\n const fields = propFields || fetchedFields;\n\n return (\n <div\n className={classnames(\n \"space-y-3 py-3\",\n {\n \"neeto-ui-border-gray-300 neeto-ui-rounded-lg neeto-ui-bg-white border px-4 py-2\":\n showBorder,\n },\n className\n )}\n >\n {isFieldsLoading ? (\n <div className=\"flex items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n getNonSystemFields(fields).map(field => {\n const Field = getFieldInput({ field, customComponents });\n\n if (Field) {\n return (\n <div\n className={classnames(fieldClassName, \"space-y-1\")}\n key={field.id}\n >\n <FieldValueInputWrapper\n {...{ field, fieldValues }}\n className={fieldClassName}\n onSubmit={values => handleSubmit(field, values)}\n >\n <div className=\"w-full\">\n <Field\n {...{\n ...field,\n disabled,\n formRefs,\n isRequiredColumnName,\n }}\n individualSubmit\n submissionStatus={\n submittingFieldDetails[field.id]?.status\n }\n />\n <BlockNavigationAlert\n {...{ blockNavigation, blockNavigationAlertProps }}\n />\n </div>\n </FieldValueInputWrapper>\n </div>\n );\n }\n\n return (\n <Typography key={field.id} style=\"body2\">\n {t(\"neetoFields.messages.invalidKind\")}\n </Typography>\n );\n })\n )}\n </div>\n );\n};\n\nexport default FieldValuesContainer;\n"],"names":["useHistory","useRef","useState","useEffect","DEAFULT_BLOCK_NAVIGATION_ALERT_PROPS","title","t","message","submitButtonLabel","cancelButtonLabel","BlockNavigation","_ref","blockNavigation","blockNavigationAlertProps","_useFormikContext","useFormikContext","dirty","_useNavPrompt","useNavPrompt","shouldBlock","blocked","hidePrompt","navigate","alertProps","_objectSpread","_jsx","Alert","isOpen","onClose","onSubmit","FieldValuesContainer","_ref$resourceType","resourceType","fieldValues","propFields","fields","_ref$ownerId","ownerId","resourceId","_ref$customComponents","customComponents","_ref$className","className","_ref$showBorder","showBorder","formRefs","_ref$disabled","disabled","isRequiredColumnName","fieldClassName","_ref$onMutationSucces","onMutationSuccess","noop","_ref$blockNavigation","_ref$blockNavigationA","_useTranslation","useTranslation","queryOptions","onSuccess","_useFetchFields","useFetchFields","isEmpty","undefined","state","enabled","isNil","_useFetchFields$data","data","_useFetchFields$data2","_useFetchFields$data3","fetchedFields","isFieldsLoading","isLoading","_useFieldValues","useFieldValues","handleSubmit","submittingFieldDetails","classnames","children","Spinner","getNonSystemFields","map","field","Field","getFieldInput","_submittingFieldDetai","FieldValueInputWrapper","values","_jsxs","individualSubmit","submissionStatus","id","status","BlockNavigationAlert","Typography","style"],"mappings":"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"}