@matdata/yasqe 5.6.0 → 5.8.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.
- package/README.md +157 -3
- package/build/ts/src/__tests__/oauth2-test.d.ts +1 -0
- package/build/ts/src/__tests__/oauth2-test.js +247 -0
- package/build/ts/src/__tests__/oauth2-test.js.map +1 -0
- package/build/ts/src/defaults.d.ts +6 -6
- package/build/ts/src/defaults.js +1 -0
- package/build/ts/src/defaults.js.map +1 -1
- package/build/ts/src/index.d.ts +14 -8
- package/build/ts/src/index.js +209 -94
- package/build/ts/src/index.js.map +1 -1
- package/build/ts/src/sparql.js +12 -0
- package/build/ts/src/sparql.js.map +1 -1
- package/build/yasqe.min.css +1 -1
- package/build/yasqe.min.css.map +3 -3
- package/build/yasqe.min.js +66 -66
- package/build/yasqe.min.js.map +3 -3
- package/package.json +1 -1
- package/src/__tests__/oauth2-test.ts +320 -0
- package/src/defaults.ts +1 -0
- package/src/index.ts +274 -111
- package/src/scss/buttons.scss +43 -2
- package/src/scss/yasqe.scss +28 -20
- package/src/sparql.ts +21 -0
package/README.md
CHANGED
|
@@ -64,13 +64,33 @@ YASGUI provides a complete SPARQL development environment with powerful features
|
|
|
64
64
|
### 🔧 Expert Features
|
|
65
65
|
- **[Multiple Tabs](./docs/user-guide.md#query-tabs)** - Work on multiple queries simultaneously
|
|
66
66
|
- **[Endpoint Management](./docs/user-guide.md#endpoint-quick-switch)** - Quick-switch between SPARQL endpoints
|
|
67
|
+
- **[Authentication Support](./docs/developer-guide.md#authentication)** - Basic Auth, Bearer Token, API Key, OAuth2
|
|
67
68
|
- **[Persistent Storage](./docs/user-guide.md#query-history-and-persistence)** - Auto-save queries and preferences
|
|
68
69
|
- **[URL Sharing](./docs/user-guide.md#share-queries)** - Share queries via URL parameters
|
|
69
70
|
- **[Fullscreen Mode](./docs/user-guide.md#fullscreen-mode)** - Maximize editor or results viewer
|
|
70
71
|
- **[Export Results](./docs/developer-guide.md#yasr-class)** - Download results in various formats
|
|
72
|
+
- **[Configuration Import/Export](./docs/user-guide.md#configuration-importexport)** - Backup and restore settings
|
|
71
73
|
|
|
72
74
|
For detailed feature documentation, see the **[User Guide](./docs/user-guide.md)**.
|
|
73
75
|
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## Browser Support
|
|
79
|
+
|
|
80
|
+
YASGUI works on all modern browsers:
|
|
81
|
+
|
|
82
|
+
- ✅ Chrome / Edge (latest)
|
|
83
|
+
- ✅ Firefox (latest)
|
|
84
|
+
- ✅ Safari (latest)
|
|
85
|
+
- ✅ Opera (latest)
|
|
86
|
+
|
|
87
|
+
**Requirements:**
|
|
88
|
+
- JavaScript enabled
|
|
89
|
+
- Cookies/LocalStorage enabled (for query persistence)
|
|
90
|
+
- Modern ES6+ support
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
74
94
|
## Installation
|
|
75
95
|
|
|
76
96
|
### npm
|
|
@@ -94,17 +114,22 @@ yarn add @matdata/yasgui
|
|
|
94
114
|
|
|
95
115
|
### Docker
|
|
96
116
|
|
|
117
|
+
**Run with default endpoint:**
|
|
97
118
|
```bash
|
|
98
119
|
docker pull mathiasvda/yasgui:latest
|
|
99
120
|
docker run -p 8080:8080 mathiasvda/yasgui:latest
|
|
100
121
|
```
|
|
101
122
|
|
|
123
|
+
Access at: `http://localhost:8080`
|
|
124
|
+
|
|
102
125
|
**Custom endpoint:**
|
|
103
126
|
```bash
|
|
104
|
-
docker run -p 8080:8080
|
|
127
|
+
docker run -p 8080:8080 \
|
|
128
|
+
-e YASGUI_DEFAULT_ENDPOINT=https://your-endpoint.com/sparql \
|
|
129
|
+
mathiasvda/yasgui:latest
|
|
105
130
|
```
|
|
106
131
|
|
|
107
|
-
For detailed installation instructions and usage examples, see the **[Developer Guide](./docs/developer-guide.md#installation)**.
|
|
132
|
+
For detailed installation instructions and usage examples, see the **[Developer Guide](./docs/developer-guide.md#installation)** and **[User Guide - Docker](./docs/user-guide.md#running-yasgui-with-docker)**.
|
|
108
133
|
|
|
109
134
|
## Quick Start
|
|
110
135
|
|
|
@@ -146,10 +171,115 @@ const yasgui = new Yasgui(document.getElementById('yasgui'), {
|
|
|
146
171
|
});
|
|
147
172
|
```
|
|
148
173
|
|
|
174
|
+
### Authentication
|
|
175
|
+
|
|
176
|
+
YASGUI supports multiple authentication methods for secure SPARQL endpoints:
|
|
177
|
+
|
|
178
|
+
**Basic Authentication:**
|
|
179
|
+
```javascript
|
|
180
|
+
const yasgui = new Yasgui(document.getElementById('yasgui'), {
|
|
181
|
+
requestConfig: {
|
|
182
|
+
endpoint: 'https://secure-endpoint.com/sparql',
|
|
183
|
+
basicAuth: {
|
|
184
|
+
username: 'myuser',
|
|
185
|
+
password: 'mypassword'
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
});
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
**Bearer Token (OAuth2/JWT):**
|
|
192
|
+
```javascript
|
|
193
|
+
const yasgui = new Yasgui(document.getElementById('yasgui'), {
|
|
194
|
+
requestConfig: {
|
|
195
|
+
endpoint: 'https://api.example.com/sparql',
|
|
196
|
+
bearerAuth: {
|
|
197
|
+
token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...'
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
});
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
**API Key (Custom Headers):**
|
|
204
|
+
```javascript
|
|
205
|
+
const yasgui = new Yasgui(document.getElementById('yasgui'), {
|
|
206
|
+
requestConfig: {
|
|
207
|
+
endpoint: 'https://api.example.com/sparql',
|
|
208
|
+
apiKeyAuth: {
|
|
209
|
+
headerName: 'X-API-Key',
|
|
210
|
+
apiKey: 'your-api-key-here'
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
});
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
Authentication can also be configured through the UI via the Settings modal (gear icon). For detailed authentication documentation including dynamic auth and OAuth2, see the **[Developer Guide - Authentication](./docs/developer-guide.md#authentication)**.
|
|
217
|
+
|
|
149
218
|
For framework-specific examples and advanced usage, see the **[Developer Guide](./docs/developer-guide.md#usage-examples)**.
|
|
150
219
|
|
|
151
220
|
---
|
|
152
221
|
|
|
222
|
+
## Configuration Options
|
|
223
|
+
|
|
224
|
+
YASGUI is highly configurable. Here are some common configuration options:
|
|
225
|
+
|
|
226
|
+
```javascript
|
|
227
|
+
const yasgui = new Yasgui(document.getElementById('yasgui'), {
|
|
228
|
+
// Request configuration
|
|
229
|
+
requestConfig: {
|
|
230
|
+
endpoint: 'https://dbpedia.org/sparql',
|
|
231
|
+
method: 'POST', // GET or POST
|
|
232
|
+
headers: { 'Custom-Header': 'value' }, // Custom HTTP headers
|
|
233
|
+
args: [{ name: 'param', value: 'val' }] // URL parameters
|
|
234
|
+
},
|
|
235
|
+
|
|
236
|
+
// UI configuration
|
|
237
|
+
theme: 'dark', // 'light' or 'dark'
|
|
238
|
+
orientation: 'horizontal', // 'horizontal' or 'vertical'
|
|
239
|
+
showSnippetsBar: true, // Show code snippets
|
|
240
|
+
|
|
241
|
+
// Persistence
|
|
242
|
+
persistenceId: 'my-yasgui-instance', // Custom storage ID
|
|
243
|
+
persistencyExpire: 7 * 24 * 60 * 60, // Storage expiration (7 days)
|
|
244
|
+
|
|
245
|
+
// Default query
|
|
246
|
+
yasqe: {
|
|
247
|
+
value: 'SELECT * WHERE { ?s ?p ?o } LIMIT 10'
|
|
248
|
+
}
|
|
249
|
+
});
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
For complete configuration options, see the **[Developer Guide - Configuration](./docs/developer-guide.md#configuration)**.
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
## Troubleshooting
|
|
257
|
+
|
|
258
|
+
### CORS Issues
|
|
259
|
+
|
|
260
|
+
If you encounter CORS errors when querying remote endpoints:
|
|
261
|
+
|
|
262
|
+
1. **Use a CORS proxy** - Set up a proxy server that adds CORS headers
|
|
263
|
+
2. **Configure the endpoint** - Some endpoints support CORS with proper configuration
|
|
264
|
+
3. **Server-side queries** - Execute queries server-side and display results client-side
|
|
265
|
+
|
|
266
|
+
See the **[User Guide - CORS Errors](./docs/user-guide.md#cors-errors)** for detailed solutions.
|
|
267
|
+
|
|
268
|
+
### Local Endpoint Access
|
|
269
|
+
|
|
270
|
+
To query local SPARQL endpoints from YASGUI:
|
|
271
|
+
|
|
272
|
+
```bash
|
|
273
|
+
# Example: Running a local endpoint accessible to YASGUI
|
|
274
|
+
docker run -p 3030:3030 stain/jena-fuseki
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
Access at: `http://localhost:3030/dataset/sparql`
|
|
278
|
+
|
|
279
|
+
For more details, see **[User Guide - Querying Local Endpoints](./docs/user-guide.md#querying-local-endpoints)**.
|
|
280
|
+
|
|
281
|
+
---
|
|
282
|
+
|
|
153
283
|
## Contributing
|
|
154
284
|
|
|
155
285
|
We welcome contributions! To get started:
|
|
@@ -165,16 +295,40 @@ For detailed contribution guidelines, see the **[Developer Guide](./docs/develop
|
|
|
165
295
|
|
|
166
296
|
---
|
|
167
297
|
|
|
298
|
+
## Support & Community
|
|
299
|
+
|
|
300
|
+
### Getting Help
|
|
301
|
+
|
|
302
|
+
- 📖 **[User Guide](./docs/user-guide.md)** - Comprehensive usage documentation
|
|
303
|
+
- 🛠️ **[Developer Guide](./docs/developer-guide.md)** - API reference and integration
|
|
304
|
+
- 🐛 **[Issue Tracker](https://github.com/Matdata-eu/Yasgui/issues)** - Report bugs or request features
|
|
305
|
+
- 💬 **[Discussions](https://github.com/Matdata-eu/Yasgui/discussions)** - Ask questions and share ideas
|
|
306
|
+
|
|
307
|
+
### Reporting Issues
|
|
308
|
+
|
|
309
|
+
When reporting issues, please include:
|
|
310
|
+
- Browser version and operating system
|
|
311
|
+
- Steps to reproduce the problem
|
|
312
|
+
- Expected vs. actual behavior
|
|
313
|
+
- Console errors (if any)
|
|
314
|
+
- Minimal example query demonstrating the issue
|
|
315
|
+
|
|
316
|
+
---
|
|
317
|
+
|
|
168
318
|
## License
|
|
169
319
|
|
|
170
320
|
MIT License - see [LICENSE](./LICENSE) file for details.
|
|
171
321
|
|
|
322
|
+
### Credits
|
|
323
|
+
|
|
172
324
|
This is a fork from [Zazuko](https://github.com/zazuko/Yasgui) who forked it from [Triply](https://github.com/TriplyDB/Yasgui).
|
|
173
325
|
|
|
326
|
+
**Maintained by:** [Matdata](https://matdata.eu)
|
|
327
|
+
|
|
174
328
|
---
|
|
175
329
|
|
|
176
330
|
## Release Notes & Changelog
|
|
177
331
|
|
|
178
332
|
Release notes and changelog are available in the [Releases](https://github.com/Matdata-eu/Yasgui/releases) section.
|
|
179
333
|
|
|
180
|
-
For instructions on writing release notes, see [
|
|
334
|
+
For instructions on writing release notes, see [release-note-instructions.md](./docs/release-note-instructions.md).
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
import { describe, it } from "mocha";
|
|
2
|
+
import { expect } from "chai";
|
|
3
|
+
describe("OAuth 2.0 Authentication", () => {
|
|
4
|
+
describe("Token Expiration", () => {
|
|
5
|
+
it("should detect expired token", () => {
|
|
6
|
+
const pastTimestamp = Date.now() - 60 * 60 * 1000;
|
|
7
|
+
const isExpired = pastTimestamp <= Date.now();
|
|
8
|
+
expect(isExpired).to.be.true;
|
|
9
|
+
});
|
|
10
|
+
it("should detect valid token", () => {
|
|
11
|
+
const futureTimestamp = Date.now() + 60 * 60 * 1000;
|
|
12
|
+
const isExpired = futureTimestamp <= Date.now();
|
|
13
|
+
expect(isExpired).to.be.false;
|
|
14
|
+
});
|
|
15
|
+
it("should handle undefined expiry", () => {
|
|
16
|
+
const tokenExpiry = undefined;
|
|
17
|
+
const isExpired = !tokenExpiry || tokenExpiry <= Date.now();
|
|
18
|
+
expect(isExpired).to.be.true;
|
|
19
|
+
});
|
|
20
|
+
it("should add buffer time to expiration check", () => {
|
|
21
|
+
const soonToExpire = Date.now() + 30 * 1000;
|
|
22
|
+
const buffer = 60 * 1000;
|
|
23
|
+
const isExpiredWithBuffer = soonToExpire <= Date.now() + buffer;
|
|
24
|
+
expect(isExpiredWithBuffer).to.be.true;
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
describe("Authorization Header Format", () => {
|
|
28
|
+
it("should create proper OAuth 2.0 Bearer header", () => {
|
|
29
|
+
const accessToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c";
|
|
30
|
+
const header = `Bearer ${accessToken}`;
|
|
31
|
+
expect(header).to.equal(`Bearer ${accessToken}`);
|
|
32
|
+
expect(header).to.match(/^Bearer .+$/);
|
|
33
|
+
});
|
|
34
|
+
it("should handle various access token formats", () => {
|
|
35
|
+
const tokens = [
|
|
36
|
+
"short-token",
|
|
37
|
+
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.payload.signature",
|
|
38
|
+
"opaque-token-12345678",
|
|
39
|
+
"token_with_underscores",
|
|
40
|
+
"token-with-dashes",
|
|
41
|
+
];
|
|
42
|
+
tokens.forEach((token) => {
|
|
43
|
+
const header = `Bearer ${token}`;
|
|
44
|
+
expect(header).to.match(/^Bearer .+$/);
|
|
45
|
+
expect(header).to.equal(`Bearer ${token}`);
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
describe("Token Storage and Retrieval", () => {
|
|
50
|
+
it("should store access token", () => {
|
|
51
|
+
const tokenData = {
|
|
52
|
+
accessToken: "test-access-token",
|
|
53
|
+
refreshToken: "test-refresh-token",
|
|
54
|
+
tokenExpiry: Date.now() + 3600 * 1000,
|
|
55
|
+
};
|
|
56
|
+
expect(tokenData.accessToken).to.be.a("string");
|
|
57
|
+
expect(tokenData.refreshToken).to.be.a("string");
|
|
58
|
+
expect(tokenData.tokenExpiry).to.be.a("number");
|
|
59
|
+
});
|
|
60
|
+
it("should handle missing refresh token", () => {
|
|
61
|
+
const tokenData = {
|
|
62
|
+
accessToken: "test-access-token",
|
|
63
|
+
refreshToken: undefined,
|
|
64
|
+
tokenExpiry: Date.now() + 3600 * 1000,
|
|
65
|
+
};
|
|
66
|
+
expect(tokenData.accessToken).to.be.a("string");
|
|
67
|
+
expect(tokenData.refreshToken).to.be.undefined;
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
describe("Token Expiry Calculation", () => {
|
|
71
|
+
it("should calculate correct expiry timestamp", () => {
|
|
72
|
+
const expiresIn = 3600;
|
|
73
|
+
const now = Date.now();
|
|
74
|
+
const expectedExpiry = now + expiresIn * 1000;
|
|
75
|
+
const calculatedExpiry = now + expiresIn * 1000;
|
|
76
|
+
expect(calculatedExpiry).to.be.closeTo(expectedExpiry, 1000);
|
|
77
|
+
});
|
|
78
|
+
it("should handle undefined expires_in", () => {
|
|
79
|
+
const expiresIn = undefined;
|
|
80
|
+
const expiry = expiresIn ? Date.now() + expiresIn * 1000 : undefined;
|
|
81
|
+
expect(expiry).to.be.undefined;
|
|
82
|
+
});
|
|
83
|
+
it("should convert seconds to milliseconds", () => {
|
|
84
|
+
const expiresInSeconds = 3600;
|
|
85
|
+
const expiresInMs = expiresInSeconds * 1000;
|
|
86
|
+
expect(expiresInMs).to.equal(3600000);
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
describe("OAuth 2.0 Configuration Validation", () => {
|
|
90
|
+
it("should validate required OAuth 2.0 parameters", () => {
|
|
91
|
+
const config = {
|
|
92
|
+
clientId: "my-client-id",
|
|
93
|
+
authorizationEndpoint: "https://provider.com/oauth/authorize",
|
|
94
|
+
tokenEndpoint: "https://provider.com/oauth/token",
|
|
95
|
+
redirectUri: "https://myapp.com/callback",
|
|
96
|
+
};
|
|
97
|
+
expect(config.clientId).to.be.a("string").and.to.have.length.greaterThan(0);
|
|
98
|
+
expect(config.authorizationEndpoint).to.be.a("string").and.to.include("http");
|
|
99
|
+
expect(config.tokenEndpoint).to.be.a("string").and.to.include("http");
|
|
100
|
+
expect(config.redirectUri).to.be.a("string").and.to.include("http");
|
|
101
|
+
});
|
|
102
|
+
it("should handle optional scope parameter", () => {
|
|
103
|
+
const config = {
|
|
104
|
+
clientId: "my-client-id",
|
|
105
|
+
authorizationEndpoint: "https://provider.com/oauth/authorize",
|
|
106
|
+
tokenEndpoint: "https://provider.com/oauth/token",
|
|
107
|
+
redirectUri: "https://myapp.com/callback",
|
|
108
|
+
scope: "read write",
|
|
109
|
+
};
|
|
110
|
+
expect(config.scope).to.be.a("string");
|
|
111
|
+
});
|
|
112
|
+
it("should handle missing scope parameter", () => {
|
|
113
|
+
const config = {
|
|
114
|
+
clientId: "my-client-id",
|
|
115
|
+
authorizationEndpoint: "https://provider.com/oauth/authorize",
|
|
116
|
+
tokenEndpoint: "https://provider.com/oauth/token",
|
|
117
|
+
redirectUri: "https://myapp.com/callback",
|
|
118
|
+
scope: undefined,
|
|
119
|
+
};
|
|
120
|
+
expect(config.scope).to.be.undefined;
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
describe("PKCE Code Challenge Generation", () => {
|
|
124
|
+
it("should generate code verifier of correct length", () => {
|
|
125
|
+
const length = 128;
|
|
126
|
+
const possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";
|
|
127
|
+
const codeVerifier = Array.from({ length }, () => possible[Math.floor(Math.random() * possible.length)]).join("");
|
|
128
|
+
expect(codeVerifier).to.have.length(length);
|
|
129
|
+
expect(codeVerifier).to.match(/^[A-Za-z0-9\-._~]+$/);
|
|
130
|
+
});
|
|
131
|
+
it("should validate PKCE characters", () => {
|
|
132
|
+
const validChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";
|
|
133
|
+
const testString = "abc123-._~ABC";
|
|
134
|
+
const allValid = testString.split("").every((char) => validChars.includes(char));
|
|
135
|
+
expect(allValid).to.be.true;
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
describe("URL Parameter Encoding", () => {
|
|
139
|
+
it("should properly encode URL parameters", () => {
|
|
140
|
+
const params = {
|
|
141
|
+
client_id: "my-client-id",
|
|
142
|
+
response_type: "code",
|
|
143
|
+
redirect_uri: "https://myapp.com/callback",
|
|
144
|
+
state: "random-state-string",
|
|
145
|
+
code_challenge: "challenge-string",
|
|
146
|
+
code_challenge_method: "S256",
|
|
147
|
+
};
|
|
148
|
+
const searchParams = new URLSearchParams(params);
|
|
149
|
+
expect(searchParams.get("client_id")).to.equal("my-client-id");
|
|
150
|
+
expect(searchParams.get("response_type")).to.equal("code");
|
|
151
|
+
expect(searchParams.get("code_challenge_method")).to.equal("S256");
|
|
152
|
+
});
|
|
153
|
+
it("should handle optional scope in URL", () => {
|
|
154
|
+
const params = {
|
|
155
|
+
client_id: "my-client-id",
|
|
156
|
+
scope: "read write",
|
|
157
|
+
};
|
|
158
|
+
const searchParams = new URLSearchParams(params);
|
|
159
|
+
expect(searchParams.get("scope")).to.equal("read write");
|
|
160
|
+
});
|
|
161
|
+
});
|
|
162
|
+
describe("Token Response Parsing", () => {
|
|
163
|
+
it("should parse token response correctly", () => {
|
|
164
|
+
const tokenResponse = {
|
|
165
|
+
access_token: "new-access-token",
|
|
166
|
+
refresh_token: "new-refresh-token",
|
|
167
|
+
expires_in: 3600,
|
|
168
|
+
token_type: "Bearer",
|
|
169
|
+
};
|
|
170
|
+
expect(tokenResponse.access_token).to.be.a("string");
|
|
171
|
+
expect(tokenResponse.refresh_token).to.be.a("string");
|
|
172
|
+
expect(tokenResponse.expires_in).to.be.a("number");
|
|
173
|
+
expect(tokenResponse.token_type).to.equal("Bearer");
|
|
174
|
+
});
|
|
175
|
+
it("should handle response without refresh token", () => {
|
|
176
|
+
const tokenResponse = {
|
|
177
|
+
access_token: "new-access-token",
|
|
178
|
+
expires_in: 3600,
|
|
179
|
+
token_type: "Bearer",
|
|
180
|
+
};
|
|
181
|
+
expect(tokenResponse.access_token).to.be.a("string");
|
|
182
|
+
expect(tokenResponse).to.not.have.property("refresh_token");
|
|
183
|
+
});
|
|
184
|
+
});
|
|
185
|
+
describe("Authentication Priority with OAuth 2.0", () => {
|
|
186
|
+
it("should prioritize OAuth 2.0 over Basic auth", () => {
|
|
187
|
+
const oauth2Header = "Bearer oauth2-token";
|
|
188
|
+
const basicHeader = "Basic " + btoa("user:pass");
|
|
189
|
+
expect(oauth2Header).to.not.equal(basicHeader);
|
|
190
|
+
expect(oauth2Header).to.include("Bearer");
|
|
191
|
+
expect(basicHeader).to.include("Basic");
|
|
192
|
+
});
|
|
193
|
+
it("should allow API Key to coexist with OAuth 2.0", () => {
|
|
194
|
+
const authorizationHeader = "Authorization";
|
|
195
|
+
const apiKeyHeader = "X-API-Key";
|
|
196
|
+
expect(authorizationHeader).to.not.equal(apiKeyHeader);
|
|
197
|
+
});
|
|
198
|
+
});
|
|
199
|
+
describe("Error Handling", () => {
|
|
200
|
+
it("should handle undefined authentication config", () => {
|
|
201
|
+
const oauth2Auth = undefined;
|
|
202
|
+
expect(oauth2Auth).to.be.undefined;
|
|
203
|
+
});
|
|
204
|
+
it("should handle null access token", () => {
|
|
205
|
+
const accessToken = null;
|
|
206
|
+
const isValid = !!(accessToken && typeof accessToken === "string" && accessToken.trim().length > 0);
|
|
207
|
+
expect(isValid).to.be.false;
|
|
208
|
+
});
|
|
209
|
+
it("should validate empty access token", () => {
|
|
210
|
+
const accessToken = "";
|
|
211
|
+
const isValid = accessToken.trim().length > 0;
|
|
212
|
+
expect(isValid).to.be.false;
|
|
213
|
+
});
|
|
214
|
+
it("should validate whitespace-only access token", () => {
|
|
215
|
+
const accessToken = " ";
|
|
216
|
+
const isValid = accessToken.trim().length > 0;
|
|
217
|
+
expect(isValid).to.be.false;
|
|
218
|
+
});
|
|
219
|
+
it("should validate non-empty access token", () => {
|
|
220
|
+
const accessToken = "valid-token";
|
|
221
|
+
const isValid = accessToken.trim().length > 0;
|
|
222
|
+
expect(isValid).to.be.true;
|
|
223
|
+
});
|
|
224
|
+
});
|
|
225
|
+
describe("Trimming Behavior", () => {
|
|
226
|
+
it("should use trimmed access token in header", () => {
|
|
227
|
+
const originalToken = " token-with-spaces ";
|
|
228
|
+
const trimmedToken = originalToken.trim();
|
|
229
|
+
const header = `Bearer ${trimmedToken}`;
|
|
230
|
+
expect(header).to.equal("Bearer token-with-spaces");
|
|
231
|
+
expect(header).to.not.include(" ");
|
|
232
|
+
});
|
|
233
|
+
it("should verify trimmed values are used not originals", () => {
|
|
234
|
+
const originalConfig = {
|
|
235
|
+
clientId: " client-id ",
|
|
236
|
+
scope: " read write ",
|
|
237
|
+
};
|
|
238
|
+
const trimmedConfig = {
|
|
239
|
+
clientId: originalConfig.clientId.trim(),
|
|
240
|
+
scope: originalConfig.scope.trim(),
|
|
241
|
+
};
|
|
242
|
+
expect(trimmedConfig.clientId).to.equal("client-id");
|
|
243
|
+
expect(trimmedConfig.scope).to.equal("read write");
|
|
244
|
+
});
|
|
245
|
+
});
|
|
246
|
+
});
|
|
247
|
+
//# sourceMappingURL=oauth2-test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oauth2-test.js","sourceRoot":"","sources":["../../../../../../packages/yasqe/src/__tests__/oauth2-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,16 +3,11 @@ import CodeMirror from "codemirror";
|
|
|
3
3
|
export default function get(): {
|
|
4
4
|
requestConfig: PlainRequestConfig;
|
|
5
5
|
value?: any;
|
|
6
|
-
autocapitalize?: boolean;
|
|
7
|
-
autocorrect?: boolean;
|
|
8
|
-
spellcheck?: boolean;
|
|
9
|
-
autofocus?: boolean;
|
|
10
6
|
mode: string;
|
|
11
|
-
tabSize?: number;
|
|
12
|
-
readOnly?: any;
|
|
13
7
|
theme?: string;
|
|
14
8
|
indentUnit?: number;
|
|
15
9
|
smartIndent?: boolean;
|
|
10
|
+
tabSize?: number;
|
|
16
11
|
indentWithTabs?: boolean;
|
|
17
12
|
electricChars?: boolean;
|
|
18
13
|
rtlMoveVisually?: boolean;
|
|
@@ -28,6 +23,7 @@ export default function get(): {
|
|
|
28
23
|
scrollbarStyle?: string;
|
|
29
24
|
coverGutterNextToScrollbar?: boolean;
|
|
30
25
|
inputStyle?: CodeMirror.InputStyle;
|
|
26
|
+
readOnly?: any;
|
|
31
27
|
screenReaderLabel?: string;
|
|
32
28
|
showCursorWhenSelecting?: boolean;
|
|
33
29
|
lineWiseCopyCut?: boolean;
|
|
@@ -36,6 +32,7 @@ export default function get(): {
|
|
|
36
32
|
undoDepth?: number;
|
|
37
33
|
historyEventDelay?: number;
|
|
38
34
|
tabindex?: number;
|
|
35
|
+
autofocus?: boolean;
|
|
39
36
|
dragDrop?: boolean;
|
|
40
37
|
allowDropFileTypes?: Array<string>;
|
|
41
38
|
onDragEvent?: (instance: CodeMirror.Editor, event: DragEvent) => boolean;
|
|
@@ -51,6 +48,9 @@ export default function get(): {
|
|
|
51
48
|
addModeClass?: boolean;
|
|
52
49
|
maxHighlightLength?: number;
|
|
53
50
|
viewportMargin?: number;
|
|
51
|
+
spellcheck?: boolean;
|
|
52
|
+
autocorrect?: boolean;
|
|
53
|
+
autocapitalize?: boolean;
|
|
54
54
|
lint?: boolean | CodeMirror.LintStateOptions | CodeMirror.Linter | CodeMirror.AsyncLinter;
|
|
55
55
|
matchBrackets: boolean;
|
|
56
56
|
showHint?: boolean;
|
package/build/ts/src/defaults.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../../../packages/yasqe/src/defaults.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../../../packages/yasqe/src/defaults.ts"],"names":[],"mappings":"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"}
|
package/build/ts/src/index.d.ts
CHANGED
|
@@ -46,9 +46,10 @@ export declare class Yasqe extends CodeMirror {
|
|
|
46
46
|
private queryBtn;
|
|
47
47
|
private fullscreenBtn;
|
|
48
48
|
private isFullscreen;
|
|
49
|
-
private
|
|
49
|
+
private horizontalResizeWrapper?;
|
|
50
50
|
private snippetsBar?;
|
|
51
51
|
private snippetsClickHandler?;
|
|
52
|
+
private snippetsResizeHandler?;
|
|
52
53
|
rootEl: HTMLDivElement;
|
|
53
54
|
storage: YStorage;
|
|
54
55
|
config: Config;
|
|
@@ -134,16 +135,11 @@ export declare class Yasqe extends CodeMirror {
|
|
|
134
135
|
static defaults: {
|
|
135
136
|
requestConfig: PlainRequestConfig;
|
|
136
137
|
value?: any;
|
|
137
|
-
autocapitalize?: boolean;
|
|
138
|
-
autocorrect?: boolean;
|
|
139
|
-
spellcheck?: boolean;
|
|
140
|
-
autofocus?: boolean;
|
|
141
138
|
mode: string;
|
|
142
|
-
tabSize?: number;
|
|
143
|
-
readOnly?: any;
|
|
144
139
|
theme?: string;
|
|
145
140
|
indentUnit?: number;
|
|
146
141
|
smartIndent?: boolean;
|
|
142
|
+
tabSize?: number;
|
|
147
143
|
indentWithTabs?: boolean;
|
|
148
144
|
electricChars?: boolean;
|
|
149
145
|
rtlMoveVisually?: boolean;
|
|
@@ -159,6 +155,7 @@ export declare class Yasqe extends CodeMirror {
|
|
|
159
155
|
scrollbarStyle?: string;
|
|
160
156
|
coverGutterNextToScrollbar?: boolean;
|
|
161
157
|
inputStyle?: import("codemirror").InputStyle;
|
|
158
|
+
readOnly?: any;
|
|
162
159
|
screenReaderLabel?: string;
|
|
163
160
|
showCursorWhenSelecting?: boolean;
|
|
164
161
|
lineWiseCopyCut?: boolean;
|
|
@@ -167,6 +164,7 @@ export declare class Yasqe extends CodeMirror {
|
|
|
167
164
|
undoDepth?: number;
|
|
168
165
|
historyEventDelay?: number;
|
|
169
166
|
tabindex?: number;
|
|
167
|
+
autofocus?: boolean;
|
|
170
168
|
dragDrop?: boolean;
|
|
171
169
|
allowDropFileTypes?: Array<string>;
|
|
172
170
|
onDragEvent?: (instance: import("codemirror").Editor, event: DragEvent) => boolean;
|
|
@@ -182,6 +180,9 @@ export declare class Yasqe extends CodeMirror {
|
|
|
182
180
|
addModeClass?: boolean;
|
|
183
181
|
maxHighlightLength?: number;
|
|
184
182
|
viewportMargin?: number;
|
|
183
|
+
spellcheck?: boolean;
|
|
184
|
+
autocorrect?: boolean;
|
|
185
|
+
autocapitalize?: boolean;
|
|
185
186
|
lint?: boolean | import("codemirror").LintStateOptions | import("codemirror").Linter | import("codemirror").AsyncLinter;
|
|
186
187
|
matchBrackets: boolean;
|
|
187
188
|
showHint?: boolean;
|
|
@@ -270,7 +271,11 @@ export interface ApiKeyAuthConfig {
|
|
|
270
271
|
headerName: string;
|
|
271
272
|
apiKey: string;
|
|
272
273
|
}
|
|
273
|
-
export
|
|
274
|
+
export interface OAuth2AuthConfig {
|
|
275
|
+
accessToken: string;
|
|
276
|
+
idToken?: string;
|
|
277
|
+
}
|
|
278
|
+
export type AuthConfig = BasicAuthConfig | BearerAuthConfig | ApiKeyAuthConfig | OAuth2AuthConfig;
|
|
274
279
|
export interface RequestConfig<Y> {
|
|
275
280
|
queryArgument: string | ((yasqe: Y) => string) | undefined;
|
|
276
281
|
endpoint: string | ((yasqe: Y) => string);
|
|
@@ -297,6 +302,7 @@ export interface RequestConfig<Y> {
|
|
|
297
302
|
basicAuth: BasicAuthConfig | ((yasqe: Y) => BasicAuthConfig | undefined) | undefined;
|
|
298
303
|
bearerAuth: BearerAuthConfig | ((yasqe: Y) => BearerAuthConfig | undefined) | undefined;
|
|
299
304
|
apiKeyAuth: ApiKeyAuthConfig | ((yasqe: Y) => ApiKeyAuthConfig | undefined) | undefined;
|
|
305
|
+
oauth2Auth: OAuth2AuthConfig | ((yasqe: Y) => OAuth2AuthConfig | undefined) | undefined;
|
|
300
306
|
}
|
|
301
307
|
export type PlainRequestConfig = {
|
|
302
308
|
[K in keyof RequestConfig<any>]: Exclude<RequestConfig<any>[K], Function>;
|