Commit graph inspector/client/src/lib/oauth-state-machine.ts
Author SHA1 Message Date
Stanislav Deviatykh
c2dbff738e fix: set user specified scope in DCR 2025-10-16 00:50:42 +03:00
Max Gerber
71583caf3b
fix: correct authState.authorizationUrl type to URL 2025-09-05 18:40:48 -07:00
cliffhall
94f44c7b57 Prettier 2025-08-15 17:19:27 -04:00
cliffhall
0831e812bb Align Quick OAuth Flow with Guided OAuth Flow behavior
- In oauth-state-machine.ts
  - in token_request transition
    - ensure resource is URL type, not string
    - this fixes Quick flow which was sending string, while guided was using proper URL type and working
2025-08-15 14:44:51 -04:00
Bobby Tiernay
74900fca5d
feat: unify OAuth scope discovery between automatic and manual flows
- Add shared discoverScopes function in auth.ts with resource metadata preference
- Update automatic flow (handleAuthError) to use dynamic scope discovery
- Update manual flow (OAuth state machine) to use shared scope discovery logic
- Add comprehensive test suite for discoverScopes function (11 test cases)
- Fix empty array handling to return undefined instead of empty string
- Maintain backward compatibility with existing oauthScope parameter
- All quality gates pass: TypeScript, linting, formatting, and tests

Resolves OAuth scope discovery inconsistency where automatic flow used static
scopes while manual flow used metadata scopes. Both flows now use identical
shared logic with proper resource metadata preference.
2025-08-14 14:02:29 -04:00
Ola Hungerford
ddd06c207c
Merge branch 'main' into dcr-fallback-fix 2025-08-13 05:34:14 -07:00
Ola Hungerford
e604321024
Merge branch 'main' into debugger-auth-svr-metadata 2025-08-12 06:44:32 -07:00
2underscores
9ef2a6c22d Use new auth svr discovery method from latest auth SDK 2025-08-12 14:13:31 +10:00
2underscores
0b123acdac Static client attempt before DCR 2025-08-12 09:20:28 +10:00
Konstantin Konstantinov
929b930618
reusable generateOAuthState helper, introduce in InspectorOAuthClientProvider and in oauth-state-machine, add test 2025-08-11 21:24:26 +03:00
2underscores
37f634d651 rm console.log 2025-08-11 14:43:04 +10:00
2underscores
6a95056731 Refactor 2025-08-06 08:47:21 +10:00
2underscores
b99b3d29d9 Using static client data as DCR fallback 2025-08-06 08:34:34 +10:00
Konstantin Konstantinov
4ef85f744c
generate random state parameter in oauth state machine 2025-07-13 08:44:57 +03:00
Konstantin Konstantinov
1c8bf36ea2
generate random state parameter in oauth state machine 2025-07-13 08:42:46 +03:00
Paul Carleton
5db64265ce
[auth] Add resource compatibility to debugger (RFC 8707) (#526)
* pass resource in auth debugger, reusing server url

* throw error on resource url mismatch to match regular auth flow

* lint & tests

* add test

* make authserver url make more sense

* use latest typescript sdk

* more lenient resource checking

* pick resource, and store in state

* fixing tests and types

* [auth] use sdk function for selecting resource (#537)

* use sdk function

* bump typescript sdk

* fix some tests
2025-06-23 16:39:07 +01:00
Paul Carleton
e2d3989bb2
use scopes from PRM if available 2025-06-03 11:05:45 +01:00
Paul Carleton
9371006838
less noisy errors 2025-06-03 11:02:34 +01:00
Paul Carleton
cc49358f5a
add test + prettier 2025-05-29 13:42:54 +01:00
Paul Carleton
82858bed30
show proper authserverurl 2025-05-29 11:17:21 +01:00
Paul Carleton
73fde03aa4
working metadata fetch 2025-05-29 10:56:09 +01:00
Paul Carleton
c6ddcf4c90
fix 2025-05-29 10:11:44 +01:00
Paul Carleton
00893afc0b
wip new metadata 2025-05-29 10:11:44 +01:00
Paul Carleton
befadc0042
very wip draft auth spec support 2025-05-29 10:11:44 +01:00
Paul Carleton
5e8e78c31d
Add Auth debugger tab (#355)
* wip auth debugger

* cleanup types and validation

* more cleanup

* draft test

* wip clean up some

* rm toasts

* consolidate state management

* prettier

* hoist state up to App

* working with quick and guided

* sort out displaying debugger

* prettier

* cleanup types

* fix tests

* cleanup comment

* prettier

* fixup types in tests

* prettier

* refactor debug to avoid toasting

* callback shuffling

* linting

* types

* rm toast in test

* bump typescript sdk version to 0.11.2 for scope parameter passing

* use proper scope handling

* test scope parameter passing

* move functions and s/sseUrl/serverUrl/

* extract status message into component

* refactor progress and steps into components

* fix test

* rename quick handler

* one less click

* last step complete

* add state machine

* test and types
2025-05-13 19:37:09 +01:00