@portnet/ui 0.0.18

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 (62) hide show
  1. package/README.md +70 -0
  2. package/dist/components/buttons/PuiButton.js +133 -0
  3. package/dist/components/buttons/PuiIconButton.js +94 -0
  4. package/dist/components/common/PuiAlertContext.js +11 -0
  5. package/dist/components/common/StyledMuiButton.js +45 -0
  6. package/dist/components/common/StyledMuiTextField.js +109 -0
  7. package/dist/components/inputs/PuiAutocomplete.js +338 -0
  8. package/dist/components/inputs/PuiCheckbox.js +264 -0
  9. package/dist/components/inputs/PuiCheckboxGroup.js +216 -0
  10. package/dist/components/inputs/PuiCheckboxItem.js +158 -0
  11. package/dist/components/inputs/PuiDateField.js +259 -0
  12. package/dist/components/inputs/PuiFileField.js +244 -0
  13. package/dist/components/inputs/PuiSelect.js +349 -0
  14. package/dist/components/inputs/PuiTextField.js +256 -0
  15. package/dist/components/others/PuiBadge.js +57 -0
  16. package/dist/components/others/PuiChip.js +145 -0
  17. package/dist/components/others/PuiDialog.js +100 -0
  18. package/dist/components/others/PuiFormikForm.js +57 -0
  19. package/dist/components/others/PuiGrid.js +22 -0
  20. package/dist/components/others/PuiIcon.js +88 -0
  21. package/dist/components/others/PuiLoadingBackdrop.js +33 -0
  22. package/dist/components/others/PuiMainContainer.js +37 -0
  23. package/dist/components/others/PuiNavigation.js +64 -0
  24. package/dist/components/others/PuiSection.js +94 -0
  25. package/dist/components/others/PuiTooltip.js +85 -0
  26. package/dist/components/providers/PuiAlertProvider.js +117 -0
  27. package/dist/components/referentiel/common/ReferetielContext.js +11 -0
  28. package/dist/components/referentiel/components/PuiSimplePopupReferentielField.js +306 -0
  29. package/dist/components/referentiel/components/PuiSimpleReferentielField.js +190 -0
  30. package/dist/components/referentiel/components/PuiSpecificReferentielField.js +302 -0
  31. package/dist/components/referentiel/components/constants/specificReferentielsApis.js +17 -0
  32. package/dist/components/referentiel/components/constants/specificReferentielsBaseColumns.js +337 -0
  33. package/dist/components/referentiel/components/constants/specificReferentielsBaseFilters.js +325 -0
  34. package/dist/components/referentiel/components/constants/specificReferentielsInitialValues.js +48 -0
  35. package/dist/components/referentiel/components/constants/specificReferentielsKeys.js +18 -0
  36. package/dist/components/referentiel/components/constants/specificReferentielsTitles.js +17 -0
  37. package/dist/components/referentiel/components/constants/specificReferentielsValidationSchemas.js +53 -0
  38. package/dist/components/referentiel/components/general/PuiPopupReferentielBase.js +303 -0
  39. package/dist/components/referentiel/providers/PuiReferentielProvider.js +56 -0
  40. package/dist/components/tab/PuiTab.js +26 -0
  41. package/dist/components/tab/PuiTabs.js +137 -0
  42. package/dist/components/table/PuiTable.js +352 -0
  43. package/dist/components/table/PuiTableAction.js +63 -0
  44. package/dist/components/typography/PuiDefinition.js +43 -0
  45. package/dist/components/typography/PuiIndication.js +76 -0
  46. package/dist/components/typography/PuiMainTitle.js +82 -0
  47. package/dist/components/ui/dialogs/PuiSearchDialog.js +96 -0
  48. package/dist/components/ui/pages/errors/PuiErrorBasePage.js +70 -0
  49. package/dist/components/ui/pages/errors/PuiNetworkErrorPage.js +37 -0
  50. package/dist/components/ui/pages/errors/PuiNotFoundErrorPage.js +31 -0
  51. package/dist/components/ui/pages/errors/PuiServerErrorPage.js +38 -0
  52. package/dist/components/ui/pages/general/PuiDefaultPage.js +65 -0
  53. package/dist/components/ui/pages/general/PuiSearchPage.js +161 -0
  54. package/dist/config/apperance.js +26 -0
  55. package/dist/config/mapping.js +28 -0
  56. package/dist/config/referentiel.js +11 -0
  57. package/dist/general/yupValidationErrors.js +10 -0
  58. package/dist/hooks/useAlert.js +17 -0
  59. package/dist/hooks/useAxios.js +22 -0
  60. package/dist/hooks/useQuery.js +20 -0
  61. package/dist/index.js +293 -0
  62. package/package.json +93 -0
@@ -0,0 +1,303 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ require("core-js/modules/web.dom-collections.iterator.js");
8
+ var _formik = require("formik");
9
+ var _propTypes = _interopRequireDefault(require("prop-types"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _PuiTextField = _interopRequireDefault(require("../../../inputs/PuiTextField"));
12
+ var _PuiIcon = _interopRequireDefault(require("../../../others/PuiIcon"));
13
+ var _PuiTableAction = _interopRequireDefault(require("../../../table/PuiTableAction"));
14
+ var _PuiSearchDialog = _interopRequireDefault(require("../../../ui/dialogs/PuiSearchDialog"));
15
+ var _jsxRuntime = require("react/jsx-runtime");
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+ const CommunComponent = /*#__PURE__*/_react.default.forwardRef((_ref, ref) => {
18
+ let {
19
+ id,
20
+ className,
21
+ selectedRow,
22
+ sx,
23
+ dataState,
24
+ title,
25
+ label,
26
+ name,
27
+ value,
28
+ error,
29
+ disabled,
30
+ required,
31
+ focused,
32
+ fullWidth,
33
+ helperText,
34
+ tableColumns,
35
+ getRenderedValue,
36
+ onSelect,
37
+ onPageChange,
38
+ children
39
+ } = _ref;
40
+ const [isDialogOpen, setIsDialogOpen] = _react.default.useState(false);
41
+ const selectHandler = row => {
42
+ setIsDialogOpen(false);
43
+ onSelect(row);
44
+ };
45
+ const tableActions = [/*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiTableAction.default, {
46
+ title: "Choisir",
47
+ onClick: selectHandler,
48
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiIcon.default, {
49
+ type: "choisir"
50
+ })
51
+ })];
52
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
53
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiTextField.default, {
54
+ id: id,
55
+ ref: ref,
56
+ className: className,
57
+ sx: sx,
58
+ name: name,
59
+ focused: focused,
60
+ required: required,
61
+ disabled: disabled,
62
+ fullWidth: fullWidth,
63
+ value: Boolean(value) ? getRenderedValue(value) : Boolean(selectedRow) ? getRenderedValue(selectedRow) : "",
64
+ readOnly: true,
65
+ error: error || dataState.isFailed,
66
+ helperText: helperText || dataState.error,
67
+ label: label,
68
+ InputProps: {
69
+ endAdornment: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiIcon.default, {
70
+ type: "rechercher",
71
+ size: "small",
72
+ sx: {
73
+ marginRight: "-5px"
74
+ }
75
+ })
76
+ },
77
+ onClick: disabled ? () => {} : () => setIsDialogOpen(true)
78
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiSearchDialog.default, {
79
+ open: isDialogOpen,
80
+ title: title,
81
+ onClose: () => setIsDialogOpen(false),
82
+ tableProps: {
83
+ page: dataState.pageNumber,
84
+ pageSize: dataState.pageSize,
85
+ paginationMode: "server",
86
+ loading: dataState.isLoading,
87
+ rowCount: dataState.totalElements,
88
+ rows: dataState.data,
89
+ columns: tableColumns,
90
+ actions: tableActions,
91
+ oneActionOnly: true,
92
+ onPageChange: onPageChange
93
+ },
94
+ children: children
95
+ })]
96
+ });
97
+ });
98
+ const PuiStandardPopupReferentielBase = /*#__PURE__*/_react.default.forwardRef((_ref2, ref) => {
99
+ let {
100
+ id,
101
+ className,
102
+ sx,
103
+ dataState,
104
+ title,
105
+ label,
106
+ name,
107
+ value,
108
+ error,
109
+ disabled,
110
+ required,
111
+ focused,
112
+ fullWidth,
113
+ helperText,
114
+ tableColumns,
115
+ getReturnedValue = () => {},
116
+ getRenderedValue = () => {},
117
+ onChange = () => {},
118
+ onPageChange = () => {},
119
+ children
120
+ } = _ref2;
121
+ const [selectedRow, setSelectedRow] = _react.default.useState(null);
122
+ const selectHandler = row => {
123
+ setSelectedRow(row);
124
+ onChange(getReturnedValue(row));
125
+ };
126
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(CommunComponent, {
127
+ ref: ref,
128
+ id: id,
129
+ className: className,
130
+ sx: sx,
131
+ selectedRow: selectedRow,
132
+ dataState: dataState,
133
+ title: title,
134
+ label: label,
135
+ name: name,
136
+ value: value,
137
+ error: error,
138
+ disabled: disabled,
139
+ required: required,
140
+ focused: focused,
141
+ fullWidth: fullWidth,
142
+ helperText: helperText,
143
+ tableColumns: tableColumns,
144
+ getRenderedValue: getRenderedValue,
145
+ onSelect: selectHandler,
146
+ onPageChange: onPageChange,
147
+ children: children
148
+ });
149
+ });
150
+ const PuiFormikPopupReferentielBase = /*#__PURE__*/_react.default.forwardRef((_ref3, ref) => {
151
+ var _ref4, _dataState$error;
152
+ let {
153
+ id,
154
+ className,
155
+ sx,
156
+ dataState,
157
+ title,
158
+ label,
159
+ name,
160
+ value,
161
+ error,
162
+ disabled,
163
+ required,
164
+ focused,
165
+ fullWidth,
166
+ helperText,
167
+ tableColumns,
168
+ getReturnedValue = () => {},
169
+ getRenderedValue = () => {},
170
+ onChange = () => {},
171
+ onPageChange = () => {},
172
+ children
173
+ } = _ref3;
174
+ const [field, meta] = (0, _formik.useField)(name);
175
+ const formikContext = (0, _formik.useFormikContext)();
176
+ const [selectedRow, setSelectedRow] = _react.default.useState(null);
177
+ const [hasError, setHasError] = _react.default.useState(false);
178
+ const selectHandler = row => {
179
+ setSelectedRow(row);
180
+ formikContext.setFieldValue(name, getReturnedValue(row));
181
+ onChange(getReturnedValue(row));
182
+ };
183
+ _react.default.useEffect(() => {
184
+ setHasError(Boolean(meta) && Boolean(meta.touched) && Boolean(meta.error));
185
+ }, [meta]);
186
+ _react.default.useEffect(() => {
187
+ if (value !== undefined) {
188
+ formikContext.setFieldValue(name, getReturnedValue(value));
189
+ }
190
+ // eslint-disable-next-line react-hooks/exhaustive-deps
191
+ }, [value]);
192
+ _react.default.useEffect(() => {
193
+ if (field.value === formikContext.initialValues[name]) {
194
+ setSelectedRow(null);
195
+ }
196
+ // eslint-disable-next-line react-hooks/exhaustive-deps
197
+ }, [field.value]);
198
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(CommunComponent, {
199
+ ref: ref,
200
+ id: id,
201
+ className: className,
202
+ sx: sx,
203
+ selectedRow: selectedRow,
204
+ dataState: dataState,
205
+ title: title,
206
+ label: label,
207
+ name: name,
208
+ value: value,
209
+ error: error || hasError,
210
+ disabled: disabled,
211
+ required: required,
212
+ focused: focused,
213
+ fullWidth: fullWidth,
214
+ helperText: hasError && Boolean(meta.error) ? meta.error : (_ref4 = (_dataState$error = dataState.error) !== null && _dataState$error !== void 0 ? _dataState$error : helperText) !== null && _ref4 !== void 0 ? _ref4 : "",
215
+ tableColumns: tableColumns,
216
+ getRenderedValue: getRenderedValue,
217
+ onSelect: selectHandler,
218
+ onPageChange: onPageChange,
219
+ children: children
220
+ });
221
+ });
222
+ const PuiPopupReferentielBase = /*#__PURE__*/_react.default.forwardRef((_ref5, ref) => {
223
+ let {
224
+ id,
225
+ className,
226
+ sx,
227
+ formik,
228
+ dataState,
229
+ title,
230
+ label,
231
+ name,
232
+ value,
233
+ error,
234
+ disabled,
235
+ required,
236
+ focused,
237
+ fullWidth,
238
+ helperText,
239
+ tableColumns,
240
+ getReturnedValue = () => {},
241
+ getRenderedValue = () => {},
242
+ onChange = () => {},
243
+ onPageChange = () => {},
244
+ children
245
+ } = _ref5;
246
+ return /*#__PURE__*/_react.default.createElement(formik ? PuiFormikPopupReferentielBase : PuiStandardPopupReferentielBase, {
247
+ id,
248
+ ref,
249
+ className,
250
+ sx,
251
+ title,
252
+ label,
253
+ dataState,
254
+ name,
255
+ value,
256
+ error,
257
+ disabled,
258
+ required,
259
+ focused,
260
+ tableColumns,
261
+ fullWidth,
262
+ helperText,
263
+ onPageChange,
264
+ getRenderedValue,
265
+ getReturnedValue,
266
+ onChange,
267
+ children
268
+ });
269
+ });
270
+ PuiPopupReferentielBase.propTypes = {
271
+ id: _propTypes.default.string,
272
+ className: _propTypes.default.string,
273
+ sx: _propTypes.default.object,
274
+ title: _propTypes.default.string.isRequired,
275
+ label: _propTypes.default.string,
276
+ dataState: _propTypes.default.object.isRequired,
277
+ name: _propTypes.default.string,
278
+ formik: _propTypes.default.bool,
279
+ error: _propTypes.default.bool,
280
+ disabled: _propTypes.default.bool,
281
+ required: _propTypes.default.bool,
282
+ focused: _propTypes.default.bool,
283
+ fullWidth: _propTypes.default.bool,
284
+ tableColumns: _propTypes.default.array,
285
+ helperText: _propTypes.default.string,
286
+ getRenderedValue: _propTypes.default.func.isRequired,
287
+ getReturnedValue: _propTypes.default.func,
288
+ onChange: _propTypes.default.func,
289
+ onPageChange: _propTypes.default.func
290
+ };
291
+ PuiPopupReferentielBase.defaultProps = {
292
+ formik: false,
293
+ disabled: false,
294
+ required: false,
295
+ error: false,
296
+ fullWidth: false,
297
+ tableColumns: [],
298
+ getReturnedValue: value => value,
299
+ onChange: () => {},
300
+ onPageChange: () => {}
301
+ };
302
+ var _default = PuiPopupReferentielBase;
303
+ exports.default = _default;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ require("core-js/modules/web.dom-collections.iterator.js");
8
+ require("core-js/modules/es.symbol.description.js");
9
+ var _propTypes = _interopRequireDefault(require("prop-types"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _ReferetielContext = _interopRequireDefault(require("../common/ReferetielContext"));
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
16
+ 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; }
17
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
18
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
19
+ const simpleReferentielDataIntialState = {};
20
+ const simpleReferentielDataReducer = (state, _ref) => {
21
+ let {
22
+ type,
23
+ payload
24
+ } = _ref;
25
+ switch (type) {
26
+ case "ADD_DATA":
27
+ return _objectSpread(_objectSpread({}, state), {}, {
28
+ [payload.searchKey]: payload.data
29
+ });
30
+ default:
31
+ return _objectSpread({}, state);
32
+ }
33
+ };
34
+ const PuiReferentielProvider = _ref2 => {
35
+ let {
36
+ token,
37
+ baseURL,
38
+ children
39
+ } = _ref2;
40
+ const [simpleReferentielData, simpleReferentielDataDispatch] = _react.default.useReducer(simpleReferentielDataReducer, simpleReferentielDataIntialState);
41
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ReferetielContext.default.Provider, {
42
+ value: {
43
+ token,
44
+ baseURL,
45
+ simpleReferentielData,
46
+ simpleReferentielDataDispatch
47
+ },
48
+ children: children
49
+ });
50
+ };
51
+ PuiReferentielProvider.propTypes = {
52
+ token: _propTypes.default.string.isRequired,
53
+ baseURL: _propTypes.default.string.isRequired
54
+ };
55
+ var _default = PuiReferentielProvider;
56
+ exports.default = _default;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _propTypes = _interopRequireDefault(require("prop-types"));
8
+ var _jsxRuntime = require("react/jsx-runtime");
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ const PuiTab = () => {
11
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {});
12
+ };
13
+ PuiTab.propTypes = {
14
+ id: _propTypes.default.string,
15
+ className: _propTypes.default.string,
16
+ sx: _propTypes.default.object,
17
+ label: _propTypes.default.string.isRequired,
18
+ disabled: _propTypes.default.bool,
19
+ icon: _propTypes.default.element,
20
+ iconPosition: _propTypes.default.oneOf(["bottom", "end", "start", "top"])
21
+ };
22
+ PuiTab.defaultProps = {
23
+ disabled: false
24
+ };
25
+ var _default = PuiTab;
26
+ exports.default = _default;
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.description.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
+ var _material = require("@mui/material");
11
+ var _styles = require("@mui/material/styles");
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+ var React = _interopRequireWildcard(require("react"));
14
+ var _apperance = require("../../config/apperance");
15
+ var _jsxRuntime = require("react/jsx-runtime");
16
+ const _excluded = ["baseId", "children", "value", "index"],
17
+ _excluded2 = ["id", "className", "sx", "variant", "centered", "children"];
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
23
+ 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; }
24
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
25
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
26
+ 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; }
27
+ 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; }
28
+ const TabPanel = _ref => {
29
+ let {
30
+ baseId,
31
+ children,
32
+ value,
33
+ index
34
+ } = _ref,
35
+ rest = _objectWithoutProperties(_ref, _excluded);
36
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", _objectSpread(_objectSpread({
37
+ role: "tabpanel",
38
+ hidden: value !== index,
39
+ id: "".concat(baseId, "panel-").concat(index),
40
+ "aria-labelledby": "".concat(baseId, "-").concat(index)
41
+ }, rest), {}, {
42
+ children: value === index && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
43
+ sx: {
44
+ p: 3
45
+ },
46
+ children: children
47
+ })
48
+ }));
49
+ };
50
+ const getTabProps = (baseId, index) => {
51
+ return {
52
+ id: "".concat(baseId, "-").concat(index),
53
+ "aria-controls": "".concat(baseId, "panel-").concat(index)
54
+ };
55
+ };
56
+ const StyledTabs = (0, _styles.styled)( /*#__PURE__*/React.forwardRef((props, ref) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tabs, _objectSpread({
57
+ ref: ref
58
+ }, props))))(() => {
59
+ return {
60
+ "&.MuiTabs-root": {
61
+ "& .MuiTab-root": {
62
+ fontWeight: "600",
63
+ fontSize: ".8rem"
64
+ },
65
+ "& .Mui-selected": {
66
+ color: _apperance.palette.primary
67
+ },
68
+ "& .MuiTabs-indicator": {
69
+ backgroundColor: _apperance.palette.primary,
70
+ height: "3px"
71
+ }
72
+ }
73
+ };
74
+ });
75
+ const PuiTabs = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
76
+ let {
77
+ id,
78
+ className,
79
+ sx,
80
+ variant,
81
+ centered,
82
+ children
83
+ } = _ref2,
84
+ rest = _objectWithoutProperties(_ref2, _excluded2);
85
+ const baseId = React.useId();
86
+ const [value, setValue] = React.useState(0);
87
+ const handleChange = (event, newValue) => {
88
+ setValue(newValue);
89
+ };
90
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
91
+ id: id,
92
+ className: className,
93
+ sx: sx,
94
+ ref: ref,
95
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
96
+ sx: {
97
+ borderBottom: "2px solid ".concat(_apperance.palette.gray.dark)
98
+ },
99
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledTabs, _objectSpread(_objectSpread({
100
+ value: value,
101
+ variant: variant,
102
+ centered: centered,
103
+ onChange: handleChange
104
+ }, rest), {}, {
105
+ children: React.Children.toArray(children).map((child, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tab, _objectSpread(_objectSpread({
106
+ id: child.props.id,
107
+ className: child.props.className,
108
+ sx: child.props.sx,
109
+ label: child.props.label,
110
+ disabled: child.props.disabled,
111
+ icon: child.props.icon,
112
+ iconPosition: child.props.iconPosition
113
+ }, getTabProps(baseId, index)), {}, {
114
+ disableRipple: true
115
+ }), index))
116
+ }))
117
+ }), React.Children.toArray(children).map((child, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(TabPanel, {
118
+ baseId: baseId,
119
+ value: value,
120
+ index: index,
121
+ children: child.props.children
122
+ }, index))]
123
+ });
124
+ });
125
+ PuiTabs.propTypes = {
126
+ id: _propTypes.default.string,
127
+ className: _propTypes.default.string,
128
+ sx: _propTypes.default.object,
129
+ variant: _propTypes.default.oneOf(["fullWidth", "scrollable", "standard"]),
130
+ centered: _propTypes.default.bool
131
+ };
132
+ PuiTabs.defaultProps = {
133
+ variant: "standard",
134
+ centered: false
135
+ };
136
+ var _default = PuiTabs;
137
+ exports.default = _default;