diff --git a/README.md b/README.md
index a125da8db..c27261def 100644
--- a/README.md
+++ b/README.md
@@ -89,8 +89,7 @@ _Customized themes are synced with local session storage_
🔌 **WebSocket**: Establish full-duplex communication channels over a single TCP connection.
- Send and receive data
- - Basic authentication using username and password
- - Token based authentication
+ - Basic and Bearer Token authentication
📡 **Server Sent Events**: Receive a stream of updates from a server over a HTTP connection without resorting to polling.
@@ -106,8 +105,10 @@ _Customized themes are synced with local session storage_
**Types:**
- None
- - Basic authentication using username and password
- - Token based authentication
+ - Basic
+ - Bearer Token
+ - OAuth 2.0
+ - OIDC Access Token/PKCE (Proof Key for Code Exchange)
📢 **Headers**: Describes the format the body of your request is being sent as.
diff --git a/components/modal.vue b/components/modal.vue
index 24a79dd23..c80b24be9 100644
--- a/components/modal.vue
+++ b/components/modal.vue
@@ -44,12 +44,17 @@
display: flex;
flex-grow: 1;
flex-direction: column;
- margin: 8px;
+ margin: 16px;
padding: 16px;
transition: all 0.2s ease;
background-color: var(--bg-color);
border-radius: 16px;
box-shadow: 0px 16px 70px rgba(0, 0, 0, 0.5);
+ max-height: calc(100vh - 32px);
+}
+
+.modal-body {
+ overflow: auto;
}
/*
diff --git a/layouts/default.vue b/layouts/default.vue
index 62bee0068..7587f416b 100644
--- a/layouts/default.vue
+++ b/layouts/default.vue
@@ -418,27 +418,22 @@
-
⌘ G
-
⌘ S
-
⌘ K
-
⌘ L
-
@@ -458,11 +453,19 @@
+
+ If you have enjoyed the productivity of using Postwoman, consider
+ donating as a sign of appreciation.
+
+
+ You can support Postwoman development via the following methods:
+
@@ -959,7 +967,7 @@
-
+
-
+
-
@@ -1041,27 +1055,30 @@
>
input
-
delete
-
@@ -1069,12 +1086,14 @@
-
-
+
-
@@ -1540,7 +1558,10 @@ export default {
return this.$store.state.oauth2.accessTokenName;
},
set(value) {
- this.$store.commit("setOAuth2", { value, attribute: "accessTokenName" });
+ this.$store.commit("setOAuth2", {
+ value,
+ attribute: "accessTokenName"
+ });
}
},
oidcDiscoveryUrl: {
@@ -1548,7 +1569,10 @@ export default {
return this.$store.state.oauth2.oidcDiscoveryUrl;
},
set(value) {
- this.$store.commit("setOAuth2", { value, attribute: "oidcDiscoveryUrl" });
+ this.$store.commit("setOAuth2", {
+ value,
+ attribute: "oidcDiscoveryUrl"
+ });
}
},
authUrl: {
@@ -2572,7 +2596,10 @@ export default {
}
},
async handleAccessTokenRequest() {
- if (this.oidcDiscoveryUrl === "" && (this.authUrl === "" || this.accessTokenUrl === "")) {
+ if (
+ this.oidcDiscoveryUrl === "" &&
+ (this.authUrl === "" || this.accessTokenUrl === "")
+ ) {
this.$toast.error("Please complete configuration urls.", {
icon: "error"
});
@@ -2596,15 +2623,15 @@ export default {
},
async oauthRedirectReq() {
let tokenInfo = await oauthRedirect();
- if(tokenInfo.hasOwnProperty('access_token')) {
+ if (tokenInfo.hasOwnProperty("access_token")) {
this.bearerToken = tokenInfo.access_token;
- this.addOAuthToken({
- name: this.accessTokenName,
- value: tokenInfo.access_token
+ this.addOAuthToken({
+ name: this.accessTokenName,
+ value: tokenInfo.access_token
});
}
},
- addOAuthToken({name, value}) {
+ addOAuthToken({ name, value }) {
this.$store.commit("addOAuthToken", {
name,
value
@@ -2647,7 +2674,9 @@ export default {
},
removeOAuthTokenReq(index) {
const oldTokenReqs = this.tokenReqs.slice();
- let targetReqIndex = this.tokenReqs.findIndex(tokenReq => tokenReq.name === this.tokenReqName);
+ let targetReqIndex = this.tokenReqs.findIndex(
+ tokenReq => tokenReq.name === this.tokenReqName
+ );
if (targetReqIndex < 0) return;
this.$store.commit("removeOAuthTokenReq", targetReqIndex);
this.$toast.error("Deleted", {
@@ -2662,12 +2691,14 @@ export default {
});
},
tokenReqChange(event) {
- let targetReq = this.tokenReqs.find(tokenReq => tokenReq.name === event.target.value);
- let {
- oidcDiscoveryUrl,
- authUrl,
- accessTokenUrl,
- clientId,
+ let targetReq = this.tokenReqs.find(
+ tokenReq => tokenReq.name === event.target.value
+ );
+ let {
+ oidcDiscoveryUrl,
+ authUrl,
+ accessTokenUrl,
+ clientId,
scope
} = targetReq.details;
this.tokenReqName = targetReq.name;