@portnet/ui 3.0.4 → 3.0.6
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.
|
@@ -14,6 +14,7 @@ var _formik = require("formik");
|
|
|
14
14
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
15
|
var React = _interopRequireWildcard(require("react"));
|
|
16
16
|
var _useAxios = _interopRequireDefault(require("../../../hooks/useAxios"));
|
|
17
|
+
var _useCustomAxios = _interopRequireDefault(require("../../../hooks/useCustomAxios"));
|
|
17
18
|
var _PuiButton = _interopRequireDefault(require("../../buttons/PuiButton"));
|
|
18
19
|
var _PuiFormikForm = _interopRequireDefault(require("../../others/PuiFormikForm"));
|
|
19
20
|
var _PuiGrid = _interopRequireDefault(require("../../others/PuiGrid"));
|
|
@@ -105,7 +106,8 @@ const PuiSpecificReferentielField = _ref2 => {
|
|
|
105
106
|
getRenderedValue,
|
|
106
107
|
onChange,
|
|
107
108
|
onError,
|
|
108
|
-
searchApi
|
|
109
|
+
searchApi,
|
|
110
|
+
customUrl
|
|
109
111
|
} = _ref2;
|
|
110
112
|
const {
|
|
111
113
|
token,
|
|
@@ -113,6 +115,7 @@ const PuiSpecificReferentielField = _ref2 => {
|
|
|
113
115
|
baseURL
|
|
114
116
|
} = React.useContext(_ReferetielContext.default);
|
|
115
117
|
const axios = (0, _useAxios.default)(token, secret, baseURL);
|
|
118
|
+
const customAxios = (0, _useCustomAxios.default)(token, secret, customUrl);
|
|
116
119
|
const [dataFetchingState, dataFetchingDispatch] = React.useReducer(dataFetchingReducer, dataFetchingInitalState);
|
|
117
120
|
const [filtreredFilters, setFiltreredFilters] = React.useState([..._specificReferentielsBaseFilters.default[searchKey]]);
|
|
118
121
|
const formRef = React.useRef();
|
|
@@ -128,15 +131,24 @@ const PuiSpecificReferentielField = _ref2 => {
|
|
|
128
131
|
dataFetchingDispatch({
|
|
129
132
|
type: "GET_DATA"
|
|
130
133
|
});
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
+
let response;
|
|
135
|
+
if (customUrl) {
|
|
136
|
+
// Si customUrl est fourni, utiliser useCustomAxios
|
|
137
|
+
response = await customAxios.post("/getPage", _objectSpread(_objectSpread({}, specifications), {}, {
|
|
138
|
+
pageNumber: dataFetchingState.pageNumber,
|
|
139
|
+
pageSize: dataFetchingState.pageSize
|
|
140
|
+
}, values));
|
|
141
|
+
} else {
|
|
142
|
+
// Sinon, utiliser useAxios avec l'URL relative
|
|
143
|
+
const apiEndpoint = searchApi || _specificReferentielsApis.default[searchKey];
|
|
144
|
+
response = await axios.post("/api/".concat(apiEndpoint, "/getPage"), _objectSpread(_objectSpread({}, specifications), {}, {
|
|
145
|
+
pageNumber: dataFetchingState.pageNumber,
|
|
146
|
+
pageSize: dataFetchingState.pageSize
|
|
147
|
+
}, values));
|
|
148
|
+
}
|
|
134
149
|
const {
|
|
135
150
|
data
|
|
136
|
-
} =
|
|
137
|
-
pageNumber: dataFetchingState.pageNumber,
|
|
138
|
-
pageSize: dataFetchingState.pageSize
|
|
139
|
-
}, values));
|
|
151
|
+
} = response;
|
|
140
152
|
if (data.succes) {
|
|
141
153
|
dataFetchingDispatch({
|
|
142
154
|
type: "SUCCESSED",
|
|
@@ -312,7 +324,8 @@ PuiSpecificReferentielField.propTypes = {
|
|
|
312
324
|
getReturnedValue: _propTypes.default.func,
|
|
313
325
|
onChange: _propTypes.default.func,
|
|
314
326
|
onError: _propTypes.default.func,
|
|
315
|
-
searchApi: _propTypes.default.string
|
|
327
|
+
searchApi: _propTypes.default.string,
|
|
328
|
+
customUrl: _propTypes.default.string // URL de base personnalisée (ex: "https://api.example.com/preneur")
|
|
316
329
|
};
|
|
317
330
|
PuiSpecificReferentielField.defaultProps = {
|
|
318
331
|
disabled: false,
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
require("core-js/modules/es.promise.js");
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
var _axios = _interopRequireDefault(require("axios"));
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
const useCustomAxios = (token, secret, customUrl) => {
|
|
12
|
+
const axiosInstance = (0, _react.useMemo)(() => {
|
|
13
|
+
const instance = _axios.default.create({
|
|
14
|
+
baseURL: customUrl || "",
|
|
15
|
+
headers: {
|
|
16
|
+
"Content-Type": "application/json"
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
// Intercepteur pour ajouter l'authentification
|
|
21
|
+
instance.interceptors.request.use(config => {
|
|
22
|
+
if (token) {
|
|
23
|
+
config.headers.Authorization = secret ? token : "Bearer ".concat(token);
|
|
24
|
+
}
|
|
25
|
+
if (secret) {
|
|
26
|
+
config.headers["X-Secret"] = secret;
|
|
27
|
+
}
|
|
28
|
+
return config;
|
|
29
|
+
}, error => {
|
|
30
|
+
return Promise.reject(error);
|
|
31
|
+
});
|
|
32
|
+
return instance;
|
|
33
|
+
}, [token, secret, customUrl]);
|
|
34
|
+
return axiosInstance;
|
|
35
|
+
};
|
|
36
|
+
var _default = exports.default = useCustomAxios;
|