@portnet/ui 3.0.3 → 3.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/dist/components/buttons/PuiButton.js +136 -0
  2. package/dist/components/buttons/PuiIconButton.js +97 -0
  3. package/dist/components/common/PuiAlertContext.js +13 -0
  4. package/dist/components/common/StyledMuiButton.js +47 -0
  5. package/dist/components/common/StyledMuiTextField.js +120 -0
  6. package/dist/components/inputs/PuiAutocomplete.js +350 -0
  7. package/dist/components/inputs/PuiCheckbox.js +307 -0
  8. package/dist/components/inputs/PuiCheckboxGroup.js +213 -0
  9. package/dist/components/inputs/PuiCheckboxItem.js +161 -0
  10. package/dist/components/inputs/PuiDateField.js +279 -0
  11. package/dist/components/inputs/PuiDateTimeField.js +395 -0
  12. package/dist/components/inputs/PuiFileField.js +264 -0
  13. package/dist/components/inputs/PuiRadioGroup.js +196 -0
  14. package/dist/components/inputs/PuiRadioItem.js +99 -0
  15. package/dist/components/inputs/PuiSelect.js +357 -0
  16. package/dist/components/inputs/PuiTextField.js +262 -0
  17. package/dist/components/others/PuiBadge.js +56 -0
  18. package/dist/components/others/PuiChip.js +149 -0
  19. package/dist/components/others/PuiDialog.js +101 -0
  20. package/dist/components/others/PuiFormikForm.js +71 -0
  21. package/dist/components/others/PuiGrid.js +21 -0
  22. package/dist/components/others/PuiIcon.js +91 -0
  23. package/dist/components/others/PuiLoadingBackdrop.js +32 -0
  24. package/dist/components/others/PuiMainContainer.js +40 -0
  25. package/dist/components/others/PuiNavigation.js +67 -0
  26. package/dist/components/others/PuiSection.js +97 -0
  27. package/dist/components/others/PuiTooltip.js +85 -0
  28. package/dist/components/providers/PuiAlertProvider.js +132 -0
  29. package/dist/components/providers/PuiLocalizationProvider.js +32 -0
  30. package/dist/components/referentiel/common/ReferetielContext.js +13 -0
  31. package/dist/components/referentiel/common/constants/specificReferentielsApis.js +22 -0
  32. package/dist/components/referentiel/common/constants/specificReferentielsBaseColumns.js +691 -0
  33. package/dist/components/referentiel/common/constants/specificReferentielsBaseFilters.js +598 -0
  34. package/dist/components/referentiel/common/constants/specificReferentielsInitialValues.js +80 -0
  35. package/dist/components/referentiel/common/constants/specificReferentielsKeys.js +18 -0
  36. package/dist/components/referentiel/common/constants/specificReferentielsTitles.js +22 -0
  37. package/dist/components/referentiel/common/constants/specificReferentielsValidationSchemas.js +86 -0
  38. package/dist/components/referentiel/components/PuiBasePopupReferentielField.js +355 -0
  39. package/dist/components/referentiel/components/PuiCustomPopupReferentielField.js +180 -0
  40. package/dist/components/referentiel/components/PuiSimplePopupReferentielField.js +323 -0
  41. package/dist/components/referentiel/components/PuiSimpleReferentielField.js +201 -0
  42. package/dist/components/referentiel/components/PuiSpecificReferentielField.js +330 -0
  43. package/dist/components/referentiel/providers/PuiReferentielProvider.js +65 -0
  44. package/dist/components/tab/PuiTab.js +25 -0
  45. package/dist/components/tab/PuiTabs.js +145 -0
  46. package/dist/components/table/ActionPopover.js +54 -0
  47. package/dist/components/table/PuiTable.js +446 -0
  48. package/dist/components/table/PuiTableAction.js +63 -0
  49. package/dist/components/typography/PuiDefinition.js +42 -0
  50. package/dist/components/typography/PuiIndication.js +79 -0
  51. package/dist/components/typography/PuiMainTitle.js +85 -0
  52. package/dist/components/ui/dialogs/PuiSearchDialog.js +105 -0
  53. package/dist/components/ui/pages/errors/PuiErrorBasePage.js +73 -0
  54. package/dist/components/ui/pages/errors/PuiForbiddenErrorPage.js +36 -0
  55. package/dist/components/ui/pages/errors/PuiNetworkErrorPage.js +36 -0
  56. package/dist/components/ui/pages/errors/PuiNotFoundErrorPage.js +30 -0
  57. package/dist/components/ui/pages/errors/PuiServerErrorPage.js +37 -0
  58. package/dist/components/ui/pages/general/PuiDefaultPage.js +68 -0
  59. package/dist/components/ui/pages/general/PuiSearchPage.js +201 -0
  60. package/dist/config/apperance.js +26 -0
  61. package/dist/config/mapping.js +26 -0
  62. package/dist/config/referentiel.js +10 -0
  63. package/dist/general/yupValidationErrors.js +8 -0
  64. package/dist/hooks/useAlert.js +20 -0
  65. package/dist/hooks/useAxios.js +23 -0
  66. package/dist/hooks/useQuery.js +19 -0
  67. package/dist/index.js +335 -0
  68. package/package.json +1 -1
@@ -0,0 +1,323 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.weak-map.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ require("core-js/modules/es.symbol.description.js");
9
+ require("core-js/modules/web.dom-collections.iterator.js");
10
+ require("core-js/modules/es.promise.js");
11
+ require("core-js/modules/es.string.trim.js");
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+ var React = _interopRequireWildcard(require("react"));
14
+ var _useAxios = _interopRequireDefault(require("../../../hooks/useAxios"));
15
+ var _PuiButton = _interopRequireDefault(require("../../buttons/PuiButton"));
16
+ var _PuiTextField = _interopRequireDefault(require("../../inputs/PuiTextField"));
17
+ var _PuiGrid = _interopRequireDefault(require("../../others/PuiGrid"));
18
+ var _PuiIcon = _interopRequireDefault(require("../../others/PuiIcon"));
19
+ var _ReferetielContext = _interopRequireDefault(require("../common/ReferetielContext"));
20
+ var _PuiBasePopupReferentielField = _interopRequireDefault(require("./PuiBasePopupReferentielField"));
21
+ var _jsxRuntime = require("react/jsx-runtime");
22
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
23
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
+ 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; }
26
+ 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; }
27
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
28
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
29
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
30
+ const dataFetchingInitalState = {
31
+ data: [],
32
+ totalElements: 0,
33
+ isLoading: false,
34
+ isSuccessed: false,
35
+ isFailed: false,
36
+ error: null,
37
+ code: "",
38
+ description: "",
39
+ pageSize: 5,
40
+ pageNumber: 0
41
+ };
42
+ const dataFetchingReducer = (state, _ref) => {
43
+ let {
44
+ type,
45
+ payload
46
+ } = _ref;
47
+ switch (type) {
48
+ case "SET_PAGE":
49
+ return _objectSpread(_objectSpread({}, state), {}, {
50
+ pageNumber: payload
51
+ });
52
+ case "RESET_FILTERS":
53
+ return _objectSpread(_objectSpread({}, state), {}, {
54
+ code: dataFetchingInitalState.code,
55
+ description: dataFetchingInitalState.description
56
+ });
57
+ case "SET_CODE":
58
+ return _objectSpread(_objectSpread({}, state), {}, {
59
+ code: payload
60
+ });
61
+ case "SET_DESCRIPTION":
62
+ return _objectSpread(_objectSpread({}, state), {}, {
63
+ description: payload
64
+ });
65
+ case "GET_DATA":
66
+ return _objectSpread(_objectSpread({}, state), {}, {
67
+ isSuccessed: false,
68
+ isFailed: false,
69
+ isLoading: true
70
+ });
71
+ case "SUCCESSED":
72
+ return _objectSpread(_objectSpread({}, state), {}, {
73
+ data: payload.data,
74
+ totalElements: payload.totalElements,
75
+ isSuccessed: true,
76
+ isLoading: false
77
+ });
78
+ case "FAILED":
79
+ return _objectSpread(_objectSpread({}, state), {}, {
80
+ data: [],
81
+ isFailed: true,
82
+ isLoading: false,
83
+ error: payload
84
+ });
85
+ default:
86
+ break;
87
+ }
88
+ };
89
+ const PuiSimplePopupReferentielField = _ref2 => {
90
+ var _dataFetchingState$er;
91
+ let {
92
+ id,
93
+ className,
94
+ sx,
95
+ title,
96
+ label,
97
+ codeLabel,
98
+ descriptionLabel,
99
+ searchKey,
100
+ specifications,
101
+ name,
102
+ value,
103
+ langue,
104
+ formik,
105
+ error,
106
+ disabled,
107
+ required,
108
+ focused,
109
+ fullWidth,
110
+ helperText,
111
+ tableProps,
112
+ getReturnedValue,
113
+ getRenderedValue,
114
+ onChange,
115
+ onError
116
+ } = _ref2;
117
+ const {
118
+ token,
119
+ secret,
120
+ baseURL
121
+ } = React.useContext(_ReferetielContext.default);
122
+ const axios = (0, _useAxios.default)(token, secret, baseURL);
123
+ const [dataFetchingState, dataFetchingDispatch] = React.useReducer(dataFetchingReducer, dataFetchingInitalState);
124
+ const columns = [{
125
+ field: "code",
126
+ headerName: codeLabel,
127
+ flex: 1,
128
+ sortable: false
129
+ }, {
130
+ field: "description",
131
+ headerName: descriptionLabel,
132
+ flex: 2,
133
+ sortable: false
134
+ }];
135
+ const codeChangeHandler = event => {
136
+ dataFetchingDispatch({
137
+ type: "SET_CODE",
138
+ payload: event.target.value
139
+ });
140
+ };
141
+ const descriptionChangeHandler = event => {
142
+ dataFetchingDispatch({
143
+ type: "SET_DESCRIPTION",
144
+ payload: event.target.value
145
+ });
146
+ };
147
+ const resetHandler = () => {
148
+ dataFetchingDispatch({
149
+ type: "RESET_FILTERS"
150
+ });
151
+ };
152
+ const fetchHandler = async (event, pageNumber) => {
153
+ try {
154
+ dataFetchingDispatch({
155
+ type: "GET_DATA"
156
+ });
157
+ const {
158
+ data
159
+ } = await axios.post("/api/referentiel/getPage", _objectSpread(_objectSpread({}, specifications), {}, {
160
+ langue,
161
+ cleReferentiel: searchKey,
162
+ code: dataFetchingState.code.trim(),
163
+ description: dataFetchingState.description.trim(),
164
+ pageNumber: pageNumber !== null && pageNumber !== void 0 ? pageNumber : 0,
165
+ pageSize: dataFetchingState.pageSize
166
+ }));
167
+ if (data.succes) {
168
+ dataFetchingDispatch({
169
+ type: "SUCCESSED",
170
+ payload: {
171
+ data: data.results,
172
+ totalElements: data.totalElements
173
+ }
174
+ });
175
+ } else {
176
+ throw new Error(data.message);
177
+ }
178
+ } catch (error) {
179
+ dataFetchingDispatch({
180
+ type: "FAILED",
181
+ payload: error.message
182
+ });
183
+ onError(error);
184
+ }
185
+ };
186
+ const pageChangeHandler = pageNumber => {
187
+ dataFetchingDispatch({
188
+ type: "SET_PAGE",
189
+ payload: pageNumber
190
+ });
191
+ fetchHandler(null, pageNumber);
192
+ };
193
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiBasePopupReferentielField.default, {
194
+ id: id,
195
+ className: className,
196
+ sx: sx,
197
+ name: name,
198
+ loading: dataFetchingState.isLoading,
199
+ rowCount: dataFetchingState.totalElements,
200
+ rows: dataFetchingState.data,
201
+ page: dataFetchingState.pageNumber,
202
+ pageSize: dataFetchingState.pageSize,
203
+ columns: columns,
204
+ focused: focused,
205
+ required: required,
206
+ disabled: disabled,
207
+ fullWidth: fullWidth,
208
+ formik: formik,
209
+ value: value,
210
+ readOnly: true,
211
+ error: error || dataFetchingState.isFailed,
212
+ helperText: (_dataFetchingState$er = dataFetchingState.error) !== null && _dataFetchingState$er !== void 0 ? _dataFetchingState$er : helperText,
213
+ label: label,
214
+ title: title,
215
+ tableProps: tableProps,
216
+ getReturnedValue: getReturnedValue,
217
+ getRenderedValue: getRenderedValue,
218
+ onChange: onChange,
219
+ onPageChange: pageChangeHandler,
220
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_PuiGrid.default, {
221
+ container: true,
222
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
223
+ item: true,
224
+ xs: 12,
225
+ sm: 6,
226
+ md: 6,
227
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiTextField.default, {
228
+ label: codeLabel,
229
+ fullWidth: true,
230
+ value: dataFetchingState.code,
231
+ formik: false,
232
+ onChange: codeChangeHandler
233
+ })
234
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
235
+ item: true,
236
+ xs: 12,
237
+ sm: 6,
238
+ md: 6,
239
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiTextField.default, {
240
+ label: descriptionLabel,
241
+ fullWidth: true,
242
+ value: dataFetchingState.description,
243
+ formik: false,
244
+ onChange: descriptionChangeHandler
245
+ })
246
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
247
+ item: true,
248
+ xs: 12,
249
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_PuiGrid.default, {
250
+ container: true,
251
+ justifyContent: "end",
252
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
253
+ item: true,
254
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
255
+ startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiIcon.default, {
256
+ type: "effacer",
257
+ size: "small"
258
+ }),
259
+ onClick: resetHandler,
260
+ color: "tertiary",
261
+ children: "Effacer"
262
+ })
263
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
264
+ item: true,
265
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
266
+ startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiIcon.default, {
267
+ type: "rechercher",
268
+ size: "small"
269
+ }),
270
+ onClick: fetchHandler,
271
+ loading: dataFetchingState.isLoading,
272
+ loadingPosition: "start",
273
+ children: "Rechercher"
274
+ })
275
+ })]
276
+ })
277
+ })]
278
+ })
279
+ });
280
+ };
281
+ PuiSimplePopupReferentielField.propTypes = {
282
+ id: _propTypes.default.string,
283
+ className: _propTypes.default.string,
284
+ sx: _propTypes.default.object,
285
+ title: _propTypes.default.string.isRequired,
286
+ label: _propTypes.default.string,
287
+ langue: _propTypes.default.string,
288
+ codeLabel: _propTypes.default.string,
289
+ descriptionLabel: _propTypes.default.string,
290
+ searchKey: _propTypes.default.string.isRequired,
291
+ specifications: _propTypes.default.object,
292
+ name: _propTypes.default.string,
293
+ helperText: _propTypes.default.string,
294
+ formik: _propTypes.default.bool,
295
+ disabled: _propTypes.default.bool,
296
+ required: _propTypes.default.bool,
297
+ error: _propTypes.default.bool,
298
+ focused: _propTypes.default.bool,
299
+ fullWidth: _propTypes.default.bool,
300
+ tableProps: _propTypes.default.object,
301
+ getRenderedValue: _propTypes.default.func,
302
+ getReturnedValue: _propTypes.default.func,
303
+ onChange: _propTypes.default.func,
304
+ onError: _propTypes.default.func
305
+ };
306
+ PuiSimplePopupReferentielField.defaultProps = {
307
+ langue: "fr",
308
+ codeLabel: "Code",
309
+ descriptionLabel: "Description",
310
+ disabled: false,
311
+ required: false,
312
+ error: false,
313
+ formik: true,
314
+ fullWidth: true,
315
+ specifications: {},
316
+ options: [],
317
+ tableProps: {},
318
+ getRenderedValue: row => row.description,
319
+ getReturnedValue: row => row,
320
+ onError: () => {},
321
+ onChange: () => {}
322
+ };
323
+ var _default = exports.default = PuiSimplePopupReferentielField;
@@ -0,0 +1,201 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.weak-map.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ require("core-js/modules/web.dom-collections.iterator.js");
9
+ require("core-js/modules/es.promise.js");
10
+ require("core-js/modules/es.symbol.description.js");
11
+ var _propTypes = _interopRequireDefault(require("prop-types"));
12
+ var React = _interopRequireWildcard(require("react"));
13
+ var _useAxios = _interopRequireDefault(require("../../../hooks/useAxios"));
14
+ var _PuiAutocomplete = _interopRequireDefault(require("../../inputs/PuiAutocomplete"));
15
+ var _PuiSelect = _interopRequireDefault(require("../../inputs/PuiSelect"));
16
+ var _ReferetielContext = _interopRequireDefault(require("../common/ReferetielContext"));
17
+ const _excluded = ["id", "className", "sx", "label", "searchKey", "name", "value", "error", "disabled", "specifications", "autocomplete", "required", "focused", "formik", "langue", "fullWidth", "helperText", "readOnly", "onError", "onChange", "isOptionEqualToValue", "getOptionKey", "getOptionValue", "getOptionLabel", "filterFunc"];
18
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
19
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
20
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
22
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
23
+ 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; }
24
+ 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; }
25
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
26
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
27
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
28
+ const dataFetchingInitialState = {
29
+ isLoading: true,
30
+ isSuccessed: false,
31
+ isFailed: false,
32
+ error: null
33
+ };
34
+ const dataFetchingReducer = (state, _ref) => {
35
+ let {
36
+ type,
37
+ payload
38
+ } = _ref;
39
+ switch (type) {
40
+ case "SUCCESSED":
41
+ return _objectSpread(_objectSpread({}, dataFetchingInitialState), {}, {
42
+ isLoading: false,
43
+ isSuccessed: true
44
+ });
45
+ case "FAILED":
46
+ return _objectSpread(_objectSpread({}, dataFetchingInitialState), {}, {
47
+ isLoading: false,
48
+ isFailed: true,
49
+ error: payload
50
+ });
51
+ default:
52
+ return _objectSpread({}, state);
53
+ }
54
+ };
55
+ const PuiSimpleReferentielField = _ref2 => {
56
+ var _simpleReferentielDat;
57
+ let {
58
+ id,
59
+ className,
60
+ sx,
61
+ label,
62
+ searchKey,
63
+ name,
64
+ value,
65
+ error,
66
+ disabled,
67
+ specifications,
68
+ autocomplete,
69
+ required,
70
+ focused,
71
+ formik,
72
+ langue,
73
+ fullWidth,
74
+ helperText,
75
+ readOnly,
76
+ onError,
77
+ onChange,
78
+ isOptionEqualToValue,
79
+ getOptionKey,
80
+ getOptionValue,
81
+ getOptionLabel,
82
+ filterFunc
83
+ } = _ref2,
84
+ rest = _objectWithoutProperties(_ref2, _excluded);
85
+ const {
86
+ token,
87
+ secret,
88
+ baseURL,
89
+ simpleReferentielData,
90
+ simpleReferentielDataDispatch
91
+ } = React.useContext(_ReferetielContext.default);
92
+ const [dataFetchingState, dataFetchingDispatch] = React.useReducer(dataFetchingReducer, dataFetchingInitialState);
93
+ const axios = (0, _useAxios.default)(token, secret, baseURL);
94
+ React.useEffect(() => {
95
+ if (!Boolean(simpleReferentielData[searchKey])) {
96
+ const getData = async () => {
97
+ try {
98
+ const {
99
+ data
100
+ } = await axios.post("/api/referentiel/getAll", _objectSpread(_objectSpread({}, specifications), {}, {
101
+ langue: langue,
102
+ cleReferentiel: searchKey
103
+ }));
104
+ if (data.succes) {
105
+ simpleReferentielDataDispatch({
106
+ type: "ADD_DATA",
107
+ payload: {
108
+ searchKey,
109
+ data: data.results
110
+ }
111
+ });
112
+ dataFetchingDispatch({
113
+ type: "SUCCESSED"
114
+ });
115
+ } else {
116
+ throw new Error(data.message);
117
+ }
118
+ } catch (error) {
119
+ dataFetchingDispatch({
120
+ type: "FAILED",
121
+ payload: error.message
122
+ });
123
+ onError(error);
124
+ }
125
+ };
126
+ getData();
127
+ } else {
128
+ dataFetchingDispatch({
129
+ type: "SUCCESSED"
130
+ });
131
+ }
132
+ // eslint-disable-next-line react-hooks/exhaustive-deps
133
+ }, [searchKey]);
134
+ return /*#__PURE__*/React.createElement(autocomplete ? _PuiAutocomplete.default : _PuiSelect.default, _objectSpread({
135
+ id,
136
+ className,
137
+ sx,
138
+ label,
139
+ name,
140
+ value,
141
+ error: error || dataFetchingState.isFailed,
142
+ disabled,
143
+ required,
144
+ focused,
145
+ fullWidth,
146
+ formik,
147
+ helperText: helperText || dataFetchingState.error,
148
+ readOnly: readOnly || dataFetchingState.isFailed,
149
+ loading: dataFetchingState.isLoading,
150
+ options: (_simpleReferentielDat = simpleReferentielData[searchKey]) === null || _simpleReferentielDat === void 0 ? void 0 : _simpleReferentielDat.filter(filterFunc),
151
+ onChange,
152
+ isOptionEqualToValue,
153
+ getOptionKey,
154
+ getOptionValue,
155
+ getOptionLabel
156
+ }, rest));
157
+ };
158
+ PuiSimpleReferentielField.propTypes = {
159
+ id: _propTypes.default.string,
160
+ className: _propTypes.default.string,
161
+ sx: _propTypes.default.object,
162
+ label: _propTypes.default.string,
163
+ searchKey: _propTypes.default.string.isRequired,
164
+ name: _propTypes.default.string,
165
+ helperText: _propTypes.default.string,
166
+ specifications: _propTypes.default.object,
167
+ disabled: _propTypes.default.bool,
168
+ required: _propTypes.default.bool,
169
+ error: _propTypes.default.bool,
170
+ autocomplete: _propTypes.default.bool,
171
+ focused: _propTypes.default.bool,
172
+ formik: _propTypes.default.bool,
173
+ readOnly: _propTypes.default.bool,
174
+ fullWidth: _propTypes.default.bool,
175
+ options: _propTypes.default.array,
176
+ filterFunc: _propTypes.default.func,
177
+ onChange: _propTypes.default.func,
178
+ onError: _propTypes.default.func,
179
+ isOptionEqualToValue: _propTypes.default.func,
180
+ getOptionKey: _propTypes.default.func,
181
+ getOptionValue: _propTypes.default.func,
182
+ getOptionLabel: _propTypes.default.func,
183
+ langue: _propTypes.default.string
184
+ };
185
+ PuiSimpleReferentielField.defaultProps = {
186
+ langue: "fr",
187
+ formik: true,
188
+ disabled: false,
189
+ required: false,
190
+ error: false,
191
+ fullWidth: true,
192
+ readOnly: false,
193
+ autocomplete: false,
194
+ specifications: {},
195
+ filterFunc: value => true,
196
+ onChange: () => {},
197
+ onError: () => {},
198
+ getOptionLabel: option => option.description,
199
+ getOptionValue: option => option
200
+ };
201
+ var _default = exports.default = PuiSimpleReferentielField;