@portnet/ui 0.2.1 → 1.1.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 (61) hide show
  1. package/dist/components/buttons/PuiButton.js +13 -11
  2. package/dist/components/buttons/PuiIconButton.js +9 -7
  3. package/dist/components/common/PuiAlertContext.js +1 -1
  4. package/dist/components/common/StyledMuiButton.js +9 -7
  5. package/dist/components/common/StyledMuiTextField.js +10 -8
  6. package/dist/components/inputs/PuiAutocomplete.js +11 -8
  7. package/dist/components/inputs/PuiCheckbox.js +15 -11
  8. package/dist/components/inputs/PuiCheckboxGroup.js +8 -6
  9. package/dist/components/inputs/PuiCheckboxItem.js +9 -7
  10. package/dist/components/inputs/PuiDateField.js +10 -8
  11. package/dist/components/inputs/PuiDateTimeField.js +30 -36
  12. package/dist/components/inputs/PuiFileField.js +11 -9
  13. package/dist/components/inputs/PuiRadioGroup.js +9 -7
  14. package/dist/components/inputs/PuiRadioItem.js +8 -6
  15. package/dist/components/inputs/PuiSelect.js +12 -9
  16. package/dist/components/inputs/PuiTextField.js +9 -7
  17. package/dist/components/others/PuiBadge.js +6 -4
  18. package/dist/components/others/PuiChip.js +16 -14
  19. package/dist/components/others/PuiDialog.js +9 -7
  20. package/dist/components/others/PuiFormikForm.js +1 -1
  21. package/dist/components/others/PuiGrid.js +5 -3
  22. package/dist/components/others/PuiIcon.js +9 -7
  23. package/dist/components/others/PuiLoadingBackdrop.js +1 -1
  24. package/dist/components/others/PuiMainContainer.js +8 -6
  25. package/dist/components/others/PuiNavigation.js +7 -5
  26. package/dist/components/others/PuiSection.js +8 -6
  27. package/dist/components/others/PuiTooltip.js +10 -8
  28. package/dist/components/providers/PuiAlertProvider.js +10 -7
  29. package/dist/components/providers/PuiLocalizationProvider.js +7 -5
  30. package/dist/components/referentiel/common/ReferetielContext.js +1 -1
  31. package/dist/components/referentiel/common/constants/specificReferentielsBaseFilters.js +1 -1
  32. package/dist/components/referentiel/common/constants/specificReferentielsValidationSchemas.js +1 -1
  33. package/dist/components/referentiel/components/PuiBasePopupReferentielField.js +7 -5
  34. package/dist/components/referentiel/components/PuiCustomPopupReferentielField.js +7 -5
  35. package/dist/components/referentiel/components/PuiSimplePopupReferentielField.js +8 -5
  36. package/dist/components/referentiel/components/PuiSimpleReferentielField.js +11 -8
  37. package/dist/components/referentiel/components/PuiSpecificReferentielField.js +10 -7
  38. package/dist/components/referentiel/providers/PuiReferentielProvider.js +7 -5
  39. package/dist/components/tab/PuiTab.js +1 -1
  40. package/dist/components/tab/PuiTabs.js +13 -9
  41. package/dist/components/table/ActionPopover.js +3 -1
  42. package/dist/components/table/PuiTable.js +11 -8
  43. package/dist/components/table/PuiTableAction.js +6 -4
  44. package/dist/components/typography/PuiDefinition.js +1 -1
  45. package/dist/components/typography/PuiIndication.js +7 -5
  46. package/dist/components/typography/PuiMainTitle.js +8 -5
  47. package/dist/components/ui/dialogs/PuiSearchDialog.js +9 -7
  48. package/dist/components/ui/pages/errors/PuiErrorBasePage.js +1 -1
  49. package/dist/components/ui/pages/errors/PuiForbiddenErrorPage.js +1 -1
  50. package/dist/components/ui/pages/errors/PuiNetworkErrorPage.js +1 -1
  51. package/dist/components/ui/pages/errors/PuiNotFoundErrorPage.js +1 -1
  52. package/dist/components/ui/pages/errors/PuiServerErrorPage.js +1 -1
  53. package/dist/components/ui/pages/general/PuiDefaultPage.js +1 -1
  54. package/dist/components/ui/pages/general/PuiSearchPage.js +116 -39
  55. package/dist/config/mapping.js +1 -1
  56. package/dist/hooks/useAlert.js +2 -2
  57. package/dist/hooks/useAxios.js +1 -1
  58. package/dist/hooks/useQuery.js +4 -2
  59. package/dist/index.js +1 -1
  60. package/package.json +3 -1
  61. package/dist/components/referentiel/components/PuiGenericReferentielField.js +0 -331
@@ -1,15 +1,18 @@
1
1
  "use strict";
2
2
 
3
3
  require("core-js/modules/es.weak-map.js");
4
- require("core-js/modules/web.dom-collections.iterator.js");
4
+ require("core-js/modules/esnext.iterator.filter.js");
5
+ require("core-js/modules/esnext.iterator.for-each.js");
5
6
  Object.defineProperty(exports, "__esModule", {
6
7
  value: true
7
8
  });
8
9
  exports.default = void 0;
9
- require("core-js/modules/es.symbol.description.js");
10
- var _formik = require("formik");
10
+ require("core-js/modules/esnext.iterator.constructor.js");
11
+ require("core-js/modules/esnext.iterator.map.js");
12
+ require("core-js/modules/web.dom-collections.iterator.js");
13
+ var _react = _interopRequireWildcard(require("react"));
11
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
- var React = _interopRequireWildcard(require("react"));
15
+ var _formik = require("formik");
13
16
  var _PuiButton = _interopRequireDefault(require("../../../buttons/PuiButton"));
14
17
  var _PuiFormikForm = _interopRequireDefault(require("../../../others/PuiFormikForm"));
15
18
  var _PuiGrid = _interopRequireDefault(require("../../../others/PuiGrid"));
@@ -17,15 +20,17 @@ var _PuiIcon = _interopRequireDefault(require("../../../others/PuiIcon"));
17
20
  var _PuiSection = _interopRequireDefault(require("../../../others/PuiSection"));
18
21
  var _PuiTable = _interopRequireDefault(require("../../../table/PuiTable"));
19
22
  var _PuiDefaultPage = _interopRequireDefault(require("./PuiDefaultPage"));
23
+ var _ExpandMore = _interopRequireDefault(require("@mui/icons-material/ExpandMore"));
24
+ var _ExpandLess = _interopRequireDefault(require("@mui/icons-material/ExpandLess"));
20
25
  var _jsxRuntime = require("react/jsx-runtime");
26
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
21
27
  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); }
22
- 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; }
23
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
28
+ 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 && {}.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
29
  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; }
25
30
  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; }
26
- 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; }
27
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
28
- 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); }
31
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
32
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
33
+ 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); } // Container for search form and actions
29
34
  const PuiStandardSearchPageContainer = _ref => {
30
35
  let {
31
36
  actions,
@@ -60,9 +65,46 @@ const PuiSearchPage = _ref2 => {
60
65
  onRetour,
61
66
  onReset,
62
67
  onSubmit,
63
- children: _children,
64
- additionalActions
68
+ children,
69
+ additionalActions,
70
+ collapsibleSearchSection = true,
71
+ // Collapsible by default
72
+ alwaysVisibleFields = null,
73
+ // Champs toujours visibles
74
+ collapsibleFields = null // Champs collapsibles
65
75
  } = _ref2;
76
+ const [isSearchSectionExpanded, setSearchSectionExpanded] = (0, _react.useState)(false);
77
+
78
+ // Si des champs spécifiques sont définis comme collapsibles
79
+ const hasCollapsibleFields = collapsibleFields !== null;
80
+ // Si des champs sont toujours visibles
81
+ const hasAlwaysVisibleFields = alwaysVisibleFields !== null;
82
+
83
+ // Fonction qui détermine si la section de recherche a des champs à afficher même si collapsée
84
+ const shouldRenderSearchContent = () => {
85
+ if (!collapsibleSearchSection) return true; // Si non collapsible, toujours afficher
86
+ if (isSearchSectionExpanded) return true; // Si section étendue, toujours afficher
87
+ return hasAlwaysVisibleFields; // Si section collapsée, afficher seulement s'il y a des champs toujours visibles
88
+ };
89
+ const toggleSearchSection = () => {
90
+ setSearchSectionExpanded(prev => !prev);
91
+ };
92
+
93
+ // Fonction pour rendre le contenu des champs en fonction de leur visibilité
94
+ const renderSearchFields = () => {
95
+ // Si pas de champs collapsibles spécifiés, on affiche tous les enfants
96
+ if (!hasCollapsibleFields || !hasAlwaysVisibleFields) {
97
+ return children;
98
+ }
99
+
100
+ // Si la section est étendue, on affiche tous les enfants
101
+ if (isSearchSectionExpanded) {
102
+ return children;
103
+ }
104
+
105
+ // Si la section est collapsée, on n'affiche que les champs toujours visibles
106
+ return alwaysVisibleFields;
107
+ };
66
108
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_PuiDefaultPage.default, {
67
109
  title: title,
68
110
  titleIcon: titleIcon,
@@ -74,11 +116,24 @@ const PuiSearchPage = _ref2 => {
74
116
  retour: retour,
75
117
  onRetour: onRetour,
76
118
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiSection.default, {
77
- title: "Param\xE8tres de recherche",
119
+ title: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
120
+ onClick: toggleSearchSection,
121
+ style: {
122
+ display: "flex",
123
+ alignItems: "center",
124
+ cursor: collapsibleSearchSection ? "pointer" : "default"
125
+ },
126
+ children: [collapsibleSearchSection && hasCollapsibleFields && (isSearchSectionExpanded ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandLess.default, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {})), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
127
+ style: {
128
+ marginLeft: collapsibleSearchSection ? "8px" : "0px"
129
+ },
130
+ children: "Param\xE8tres de recherche"
131
+ })]
132
+ }),
78
133
  sx: {
79
134
  marginBottom: 2
80
135
  },
81
- children: formik ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_formik.Formik, _objectSpread(_objectSpread({
136
+ children: shouldRenderSearchContent() && (formik ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_formik.Formik, _objectSpread(_objectSpread({
82
137
  initialValues: {}
83
138
  }, formikProps), {}, {
84
139
  children: _ref3 => {
@@ -113,18 +168,24 @@ const PuiSearchPage = _ref2 => {
113
168
  loadingPosition: "start",
114
169
  children: "Rechercher"
115
170
  })
116
- }), additionalActions && additionalActions.map((actionItem, index) => {
117
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
118
- item: true,
119
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
120
- startIcon: actionItem.icon,
121
- onClick: actionItem.action,
122
- children: actionItem.name
123
- })
124
- }, index);
171
+ }), additionalActions && additionalActions.map((actionItem, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
172
+ item: true,
173
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
174
+ startIcon: actionItem.icon,
175
+ onClick: actionItem.action,
176
+ children: actionItem.name
177
+ })
178
+ }, index)), hasCollapsibleFields && !isSearchSectionExpanded && /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
179
+ item: true,
180
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
181
+ startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {}),
182
+ onClick: toggleSearchSection,
183
+ color: "tertiary",
184
+ children: "Plus d'options"
185
+ })
125
186
  })]
126
187
  }),
127
- children: _children
188
+ children: renderSearchFields()
128
189
  })
129
190
  });
130
191
  }
@@ -154,22 +215,30 @@ const PuiSearchPage = _ref2 => {
154
215
  loadingPosition: "start",
155
216
  children: "Rechercher"
156
217
  })
157
- }), additionalActions && additionalActions.map((actionItem, index) => {
158
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
159
- item: true,
160
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
161
- startIcon: actionItem.icon,
162
- onClick: actionItem.action,
163
- children: actionItem.name
164
- })
165
- }, index);
218
+ }), additionalActions && additionalActions.map((actionItem, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
219
+ item: true,
220
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
221
+ startIcon: actionItem.icon,
222
+ onClick: actionItem.action,
223
+ children: actionItem.name
224
+ })
225
+ }, index)), hasCollapsibleFields && !isSearchSectionExpanded && /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
226
+ item: true,
227
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
228
+ startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {}),
229
+ onClick: toggleSearchSection,
230
+ color: "tertiary",
231
+ children: "Plus d'options"
232
+ })
166
233
  })]
167
234
  }),
168
- children: _children
169
- })
170
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiTable.default, _objectSpread({
235
+ children: renderSearchFields()
236
+ }))
237
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiTable.default, _objectSpread(_objectSpread({
171
238
  paginationMode: "server"
172
- }, tableProps))]
239
+ }, tableProps), {}, {
240
+ pinnedColumns: tableProps.pinnedColumns // Added pinnedColumns
241
+ }))]
173
242
  });
174
243
  };
175
244
  PuiSearchPage.propTypes = {
@@ -182,7 +251,9 @@ PuiSearchPage.propTypes = {
182
251
  topNav: _propTypes.default.bool,
183
252
  bottomNav: _propTypes.default.bool,
184
253
  loading: _propTypes.default.bool,
185
- tableProps: _propTypes.default.object,
254
+ tableProps: _propTypes.default.shape({
255
+ pinnedColumns: _propTypes.default.object // Added pinnedColumns prop type
256
+ }),
186
257
  retour: _propTypes.default.bool,
187
258
  onRetour: _propTypes.default.func,
188
259
  onReset: _propTypes.default.func,
@@ -191,11 +262,17 @@ PuiSearchPage.propTypes = {
191
262
  name: _propTypes.default.string.isRequired,
192
263
  action: _propTypes.default.func.isRequired,
193
264
  icon: _propTypes.default.element
194
- }))
265
+ })),
266
+ collapsibleSearchSection: _propTypes.default.bool,
267
+ alwaysVisibleFields: _propTypes.default.node,
268
+ collapsibleFields: _propTypes.default.node
195
269
  };
196
270
  PuiSearchPage.defaultProps = {
197
271
  formik: true,
198
272
  loading: false,
199
- additionalActions: []
273
+ additionalActions: [],
274
+ collapsibleSearchSection: true,
275
+ alwaysVisibleFields: null,
276
+ collapsibleFields: null
200
277
  };
201
278
  var _default = exports.default = PuiSearchPage;
@@ -12,7 +12,7 @@ var _MoreVert = _interopRequireDefault(require("@mui/icons-material/MoreVert"));
12
12
  var _Report = _interopRequireDefault(require("@mui/icons-material/Report"));
13
13
  var _Search = _interopRequireDefault(require("@mui/icons-material/Search"));
14
14
  var _Visibility = _interopRequireDefault(require("@mui/icons-material/Visibility"));
15
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
16
  const iconsMapping = exports.iconsMapping = {
17
17
  recherche: _Search.default,
18
18
  supprimer: _Delete.default,
@@ -8,9 +8,9 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.default = void 0;
9
9
  var React = _interopRequireWildcard(require("react"));
10
10
  var _PuiAlertContext = _interopRequireDefault(require("../components/common/PuiAlertContext"));
11
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
12
  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); }
13
- 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; }
13
+ 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 && {}.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; }
14
14
  const useAlert = () => {
15
15
  const {
16
16
  dispatchAlert
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _axios = _interopRequireDefault(require("axios"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
9
  const useAxios = function useAxios(token) {
10
10
  let secret = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
11
11
  let baseURL = arguments.length > 2 ? arguments[2] : undefined;
@@ -4,10 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- require("core-js/modules/web.dom-collections.iterator.js");
8
- require("core-js/modules/web.url-search-params.js");
9
7
  require("core-js/modules/es.regexp.exec.js");
10
8
  require("core-js/modules/es.string.search.js");
9
+ require("core-js/modules/esnext.iterator.constructor.js");
10
+ require("core-js/modules/esnext.iterator.for-each.js");
11
+ require("core-js/modules/web.dom-collections.iterator.js");
12
+ require("core-js/modules/web.url-search-params.js");
11
13
  const useQuery = () => {
12
14
  const queryParams = new URLSearchParams(window.location.search);
13
15
  const queryObject = {};
package/dist/index.js CHANGED
@@ -332,4 +332,4 @@ var _PuiDefaultPage = _interopRequireDefault(require("./components/ui/pages/gene
332
332
  var _PuiSearchPage = _interopRequireDefault(require("./components/ui/pages/general/PuiSearchPage"));
333
333
  var _useAlert = _interopRequireDefault(require("./hooks/useAlert"));
334
334
  var _useQuery = _interopRequireDefault(require("./hooks/useQuery"));
335
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
335
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@portnet/ui",
3
- "version": "0.2.1",
3
+ "version": "1.1.0",
4
4
  "description": "Portnet UI",
5
5
  "keywords": [
6
6
  "react",
@@ -25,6 +25,8 @@
25
25
  "@testing-library/jest-dom": "^5.16.5",
26
26
  "@testing-library/react": "^13.4.0",
27
27
  "@testing-library/user-event": "^13.5.0",
28
+ "ajv": "^6.12.6",
29
+ "ajv-keywords": "^3.5.2",
28
30
  "axios": "^0.27.2",
29
31
  "formik": "^2.2.9",
30
32
  "lodash": "^4.17.21",
@@ -1,331 +0,0 @@
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.array.includes.js");
11
- require("core-js/modules/es.string.includes.js");
12
- require("core-js/modules/es.symbol.description.js");
13
- var _formik = require("formik");
14
- var _propTypes = _interopRequireDefault(require("prop-types"));
15
- var React = _interopRequireWildcard(require("react"));
16
- var _useAxios = _interopRequireDefault(require("../../../hooks/useAxios"));
17
- var _PuiButton = _interopRequireDefault(require("../../buttons/PuiButton"));
18
- var _PuiFormikForm = _interopRequireDefault(require("../../others/PuiFormikForm"));
19
- var _PuiGrid = _interopRequireDefault(require("../../others/PuiGrid"));
20
- var _PuiIcon = _interopRequireDefault(require("../../others/PuiIcon"));
21
- var _specificReferentielsApis = _interopRequireDefault(require("../common/constants/specificReferentielsApis"));
22
- var _specificReferentielsBaseColumns = _interopRequireDefault(require("../common/constants/specificReferentielsBaseColumns"));
23
- var _specificReferentielsBaseFilters = _interopRequireDefault(require("../common/constants/specificReferentielsBaseFilters"));
24
- var _specificReferentielsInitialValues = _interopRequireDefault(require("../common/constants/specificReferentielsInitialValues"));
25
- var _specificReferentielsTitles = _interopRequireDefault(require("../common/constants/specificReferentielsTitles"));
26
- var _specificReferentielsValidationSchemas = _interopRequireDefault(require("../common/constants/specificReferentielsValidationSchemas"));
27
- var _ReferetielContext = _interopRequireDefault(require("../common/ReferetielContext"));
28
- var _PuiBasePopupReferentielField = _interopRequireDefault(require("./PuiBasePopupReferentielField"));
29
- var _jsxRuntime = require("react/jsx-runtime");
30
- 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); }
31
- 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; }
32
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
- 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; }
34
- 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; }
35
- 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; }
36
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
37
- 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); }
38
- const dataFetchingInitalState = {
39
- data: [],
40
- totalElements: 0,
41
- isLoading: false,
42
- isSuccessed: false,
43
- isFailed: false,
44
- error: null,
45
- pageSize: 5,
46
- pageNumber: 0
47
- };
48
- const dataFetchingReducer = (state, _ref) => {
49
- let {
50
- type,
51
- payload
52
- } = _ref;
53
- switch (type) {
54
- case "SET_PAGE":
55
- return _objectSpread(_objectSpread({}, state), {}, {
56
- pageNumber: payload
57
- });
58
- case "GET_DATA":
59
- return _objectSpread(_objectSpread({}, state), {}, {
60
- isSuccessed: false,
61
- isFailed: false,
62
- isLoading: true
63
- });
64
- case "SUCCESSED":
65
- return _objectSpread(_objectSpread({}, state), {}, {
66
- data: payload.data,
67
- totalElements: payload.totalElements,
68
- isSuccessed: true,
69
- isLoading: false
70
- });
71
- case "FAILED":
72
- return _objectSpread(_objectSpread({}, state), {}, {
73
- data: [],
74
- isFailed: true,
75
- isLoading: false,
76
- error: payload
77
- });
78
- default:
79
- break;
80
- }
81
- };
82
- const PuiSpecificReferentielField = _ref2 => {
83
- let {
84
- id,
85
- className,
86
- sx,
87
- title,
88
- label,
89
- searchKey,
90
- specifications,
91
- filters,
92
- filtersProps,
93
- columns,
94
- name,
95
- value,
96
- formik,
97
- error,
98
- disabled,
99
- required,
100
- focused,
101
- fullWidth,
102
- helperText,
103
- tableProps,
104
- getReturnedValue,
105
- getRenderedValue,
106
- onChange,
107
- onError
108
- } = _ref2;
109
- const {
110
- token,
111
- secret,
112
- baseURL
113
- } = React.useContext(_ReferetielContext.default);
114
- const axios = (0, _useAxios.default)(token, secret, baseURL);
115
- const [dataFetchingState, dataFetchingDispatch] = React.useReducer(dataFetchingReducer, dataFetchingInitalState);
116
- const [filtreredFilters, setFiltreredFilters] = React.useState([..._specificReferentielsBaseFilters.default[searchKey]]);
117
- const formRef = React.useRef();
118
- const [isMounted, setIsMounted] = React.useState(false);
119
- const pageChangeHandler = pageNumber => {
120
- dataFetchingDispatch({
121
- type: "SET_PAGE",
122
- payload: pageNumber
123
- });
124
- };
125
- const submitHandler = async values => {
126
- try {
127
- dataFetchingDispatch({
128
- type: "GET_DATA"
129
- });
130
- const {
131
- data
132
- } = await axios.post("/api/".concat(_specificReferentielsApis.default[searchKey], "/getPage"), _objectSpread(_objectSpread({}, specifications), {}, {
133
- pageNumber: dataFetchingState.pageNumber,
134
- pageSize: dataFetchingState.pageSize
135
- }, values));
136
- if (data.succes) {
137
- dataFetchingDispatch({
138
- type: "SUCCESSED",
139
- payload: {
140
- data: data.results,
141
- totalElements: data.totalElements
142
- }
143
- });
144
- } else {
145
- throw new Error(data.message);
146
- }
147
- } catch (error) {
148
- dataFetchingDispatch({
149
- type: "FAILED",
150
- payload: error.message
151
- });
152
- onError(error);
153
- }
154
- };
155
- React.useEffect(() => {
156
- if (isMounted) {
157
- var _formRef$current;
158
- (_formRef$current = formRef.current) === null || _formRef$current === void 0 || _formRef$current.submitForm();
159
- }
160
- // eslint-disable-next-line react-hooks/exhaustive-deps
161
- }, [dataFetchingState.pageNumber]);
162
- React.useEffect(() => {
163
- setFiltreredFilters(_specificReferentielsBaseFilters.default[searchKey].filter(innerFilter => !Boolean(filters) || !Boolean(filters.length) || filters.includes(innerFilter.name)));
164
- // eslint-disable-next-line react-hooks/exhaustive-deps
165
- }, [filters]);
166
- React.useEffect(() => {
167
- setIsMounted(true);
168
- }, []);
169
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiBasePopupReferentielField.default, {
170
- id: id,
171
- className: className,
172
- sx: sx,
173
- name: name,
174
- formik: formik,
175
- loading: dataFetchingState.isLoading,
176
- rowCount: dataFetchingState.totalElements,
177
- rows: dataFetchingState.data,
178
- page: dataFetchingState.pageNumber,
179
- pageSize: dataFetchingState.pageSize,
180
- columns: Array.isArray(columns) && Boolean(columns.length) ? columns : _specificReferentielsBaseColumns.default[searchKey],
181
- focused: focused,
182
- required: required,
183
- disabled: disabled,
184
- fullWidth: fullWidth,
185
- value: value,
186
- readOnly: true,
187
- error: error,
188
- helperText: helperText,
189
- label: label,
190
- title: title !== null && title !== void 0 ? title : _specificReferentielsTitles.default[[searchKey]],
191
- tableProps: tableProps,
192
- getReturnedValue: getReturnedValue,
193
- getRenderedValue: getRenderedValue,
194
- onChange: onChange,
195
- onPageChange: pageChangeHandler,
196
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_formik.Formik, {
197
- initialValues: _specificReferentielsInitialValues.default[searchKey],
198
- validationSchema: _specificReferentielsValidationSchemas.default[searchKey],
199
- innerRef: formRef,
200
- validateOnBlur: false,
201
- onSubmit: submitHandler,
202
- children: _ref3 => {
203
- let {
204
- resetForm,
205
- submitForm
206
- } = _ref3;
207
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiFormikForm.default, {
208
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_PuiGrid.default, {
209
- container: true,
210
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
211
- item: true,
212
- xs: 12,
213
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
214
- container: true,
215
- children: filtreredFilters.map(filtreredFilter => {
216
- var _filtersProps$filtrer, _filtersProps$filtrer2, _filtersProps$filtrer3, _filtersProps$filtrer4;
217
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
218
- item: true,
219
- xs: Boolean(filtersProps) && Boolean((_filtersProps$filtrer = filtersProps[filtreredFilter.name]) === null || _filtersProps$filtrer === void 0 || (_filtersProps$filtrer = _filtersProps$filtrer.size) === null || _filtersProps$filtrer === void 0 ? void 0 : _filtersProps$filtrer.xs) ? filtersProps[filtreredFilter.name].size.xs : filtreredFilter.size.xs,
220
- sm: Boolean(filtersProps) && Boolean((_filtersProps$filtrer2 = filtersProps[filtreredFilter.name]) === null || _filtersProps$filtrer2 === void 0 || (_filtersProps$filtrer2 = _filtersProps$filtrer2.size) === null || _filtersProps$filtrer2 === void 0 ? void 0 : _filtersProps$filtrer2.sm) ? filtersProps[filtreredFilter.name].size.sm : filtreredFilter.size.sm,
221
- md: Boolean(filtersProps) && Boolean((_filtersProps$filtrer3 = filtersProps[filtreredFilter.name]) === null || _filtersProps$filtrer3 === void 0 || (_filtersProps$filtrer3 = _filtersProps$filtrer3.size) === null || _filtersProps$filtrer3 === void 0 ? void 0 : _filtersProps$filtrer3.md) ? filtersProps[filtreredFilter.name].size.md : filtreredFilter.size.md,
222
- sx: {
223
- order: Boolean(filtersProps) && Boolean((_filtersProps$filtrer4 = filtersProps[filtreredFilter.name]) === null || _filtersProps$filtrer4 === void 0 ? void 0 : _filtersProps$filtrer4.order) ? filtersProps[filtreredFilter.name].order : "initial"
224
- },
225
- children: Boolean(filtreredFilter.isSpecific) ? /*#__PURE__*/React.createElement(PuiSpecificReferentielField, Boolean(filtersProps) && Boolean(filtersProps[filtreredFilter.name]) ? _objectSpread(_objectSpread(_objectSpread({}, filtreredFilter.inputProps), {}, {
226
- label: filtreredFilter.label
227
- }, filtersProps[filtreredFilter.name]), {}, {
228
- getReturnedValue: filtreredFilter.inputProps.getReturnedValue,
229
- searchKey: filtreredFilter.inputProps.searchKey,
230
- size: undefined,
231
- order: undefined,
232
- name: filtreredFilter.name
233
- }) : _objectSpread(_objectSpread({}, filtreredFilter.inputProps), {}, {
234
- label: filtreredFilter.label,
235
- name: filtreredFilter.name
236
- })) : /*#__PURE__*/React.cloneElement(filtreredFilter.input, Boolean(filtersProps) && Boolean(filtersProps[filtreredFilter.name]) ? _objectSpread(_objectSpread({
237
- label: filtreredFilter.label
238
- }, filtersProps[filtreredFilter.name]), {}, {
239
- size: undefined,
240
- order: undefined,
241
- name: filtreredFilter.name
242
- }) : {
243
- name: filtreredFilter.name,
244
- label: filtreredFilter.label
245
- })
246
- }, filtreredFilter.name);
247
- })
248
- })
249
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
250
- item: true,
251
- xs: 12,
252
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_PuiGrid.default, {
253
- container: true,
254
- justifyContent: "end",
255
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
256
- item: true,
257
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
258
- startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiIcon.default, {
259
- type: "effacer",
260
- size: "small"
261
- }),
262
- onClick: resetForm,
263
- color: "tertiary",
264
- children: "Effacer"
265
- })
266
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiGrid.default, {
267
- item: true,
268
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
269
- startIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiIcon.default, {
270
- type: "rechercher",
271
- size: "small"
272
- }),
273
- onClick: submitForm,
274
- loading: dataFetchingState.isLoading,
275
- loadingPosition: "start",
276
- children: "Rechercher"
277
- })
278
- })]
279
- })
280
- })]
281
- })
282
- });
283
- }
284
- })
285
- });
286
- };
287
- PuiSpecificReferentielField.propTypes = {
288
- id: _propTypes.default.string,
289
- className: _propTypes.default.string,
290
- sx: _propTypes.default.object,
291
- title: _propTypes.default.string,
292
- label: _propTypes.default.string,
293
- searchKey: _propTypes.default.string.isRequired,
294
- specifications: _propTypes.default.object,
295
- filters: _propTypes.default.arrayOf(_propTypes.default.string),
296
- filtersProps: _propTypes.default.object,
297
- columns: _propTypes.default.array,
298
- name: _propTypes.default.string,
299
- helperText: _propTypes.default.string,
300
- formik: _propTypes.default.bool,
301
- disabled: _propTypes.default.bool,
302
- required: _propTypes.default.bool,
303
- error: _propTypes.default.bool,
304
- focused: _propTypes.default.bool,
305
- fullWidth: _propTypes.default.bool,
306
- tableProps: _propTypes.default.object,
307
- getRenderedValue: _propTypes.default.func.isRequired,
308
- getReturnedValue: _propTypes.default.func,
309
- onChange: _propTypes.default.func,
310
- onError: _propTypes.default.func,
311
- dataFetchingState: _propTypes.default.shape({
312
- data: _propTypes.default.array.isRequired,
313
- totalElements: _propTypes.default.number.isRequired,
314
- isLoading: _propTypes.default.bool.isRequired
315
- })
316
- };
317
- PuiSpecificReferentielField.defaultProps = {
318
- disabled: false,
319
- required: false,
320
- error: false,
321
- formik: true,
322
- fullWidth: true,
323
- specifications: {},
324
- columns: [],
325
- data: null,
326
- tableProps: {},
327
- getReturnedValue: row => row,
328
- onError: () => {},
329
- onChange: () => {}
330
- };
331
- var _default = exports.default = PuiSpecificReferentielField;