chore(#1667): graceful handling of none type for backward compatibility

This commit is contained in:
Anoop M D 2024-02-27 01:29:10 +05:30
parent 7c416a99ef
commit 1cf8a2f3f1
3 changed files with 27 additions and 11 deletions

View File

@ -34,12 +34,13 @@ const Auth = ({ item, collection }) => {
}
case 'inherit': {
return (
<div className="flex flex-row w-full mt-2 gap-4">
<div className="flex flex-row w-full mt-2 gap-2">
<div>Auth inherited from the Collection: </div>
<div className="inherit-mode-text">{humanizeRequestAuthMode(collectionAuth?.mode)}</div>
</div>
);
}
}
};
return (
@ -51,4 +52,5 @@ const Auth = ({ item, collection }) => {
</StyledWrapper>
);
};
export default Auth;

View File

@ -31,12 +31,19 @@ const prepareRequest = (request, collectionRoot) => {
headers: headers
};
// Authentication
// A request can override the collection auth with another auth
// But it cannot override the collection auth with no auth
// We will provide support for disabling the auth via scripting in the future
/**
* 27 Feb 2024:
* ['inherit', 'none'].includes(request.auth.mode)
* We are mainitaining the old behavior where 'none' used to inherit the collection auth.
*
* Very soon, 'none' will be treated as no auth and 'inherit' will be the only way to inherit collection auth.
* We will request users to update their collection files to use 'inherit' instead of 'none'.
* Don't want to break ongoing CI pipelines.
*
* Hoping to remove this by 1 April 2024.
*/
const collectionAuth = get(collectionRoot, 'request.auth');
if (collectionAuth && request.auth.mode == 'inherit') {
if (collectionAuth && ['inherit', 'none'].includes(request.auth.mode)) {
if (collectionAuth.mode === 'basic') {
axiosRequest.auth = {
username: get(collectionAuth, 'basic.username'),

View File

@ -29,13 +29,20 @@ const parseFormData = (datas, collectionPath) => {
return form;
};
// Authentication
// A request can override the collection auth with another auth
// But it cannot override the collection auth with no auth
// We will provide support for disabling the auth via scripting in the future
/**
* 27 Feb 2024:
* ['inherit', 'none'].includes(request.auth.mode)
* We are mainitaining the old behavior where 'none' used to inherit the collection auth.
*
* Very soon, 'none' will be treated as no auth and 'inherit' will be the only way to inherit collection auth.
* We will request users to update their collection files to use 'inherit' instead of 'none'.
* Don't want to break ongoing CI pipelines.
*
* Hoping to remove this by 1 April 2024.
*/
const setAuthHeaders = (axiosRequest, request, collectionRoot) => {
const collectionAuth = get(collectionRoot, 'request.auth');
if (collectionAuth && request.auth.mode == 'inherit') {
if (collectionAuth && ['inherit', 'none'].includes(request.auth.mode)) {
switch (collectionAuth.mode) {
case 'awsv4':
axiosRequest.awsv4config = {