@portaidentity/cli 1.7.3 → 1.9.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/CHANGELOG.md +18 -0
- package/README.md +125 -105
- package/dist/admin/admin-date-time.d.ts +6 -0
- package/dist/admin/admin-date-time.d.ts.map +1 -0
- package/dist/admin/admin-date-time.js +33 -0
- package/dist/admin/admin-date-time.js.map +1 -0
- package/dist/admin/application-client-features.d.ts +38 -0
- package/dist/admin/application-client-features.d.ts.map +1 -0
- package/dist/admin/application-client-features.js +545 -0
- package/dist/admin/application-client-features.js.map +1 -0
- package/dist/admin/application-controller.d.ts +58 -0
- package/dist/admin/application-controller.d.ts.map +1 -0
- package/dist/admin/application-controller.js +286 -0
- package/dist/admin/application-controller.js.map +1 -0
- package/dist/admin/application-dialogs.d.ts +91 -0
- package/dist/admin/application-dialogs.d.ts.map +1 -0
- package/dist/admin/application-dialogs.js +250 -0
- package/dist/admin/application-dialogs.js.map +1 -0
- package/dist/admin/application-rbac-controller.d.ts +56 -0
- package/dist/admin/application-rbac-controller.d.ts.map +1 -0
- package/dist/admin/application-rbac-controller.js +280 -0
- package/dist/admin/application-rbac-controller.js.map +1 -0
- package/dist/admin/application-rbac-features.d.ts +51 -0
- package/dist/admin/application-rbac-features.d.ts.map +1 -0
- package/dist/admin/application-rbac-features.js +175 -0
- package/dist/admin/application-rbac-features.js.map +1 -0
- package/dist/admin/application-rbac-workspace.d.ts +62 -0
- package/dist/admin/application-rbac-workspace.d.ts.map +1 -0
- package/dist/admin/application-rbac-workspace.js +344 -0
- package/dist/admin/application-rbac-workspace.js.map +1 -0
- package/dist/admin/application-runtime.d.ts +44 -0
- package/dist/admin/application-runtime.d.ts.map +1 -0
- package/dist/admin/application-runtime.js +183 -0
- package/dist/admin/application-runtime.js.map +1 -0
- package/dist/admin/application-service.d.ts +39 -0
- package/dist/admin/application-service.d.ts.map +1 -0
- package/dist/admin/application-service.js +248 -0
- package/dist/admin/application-service.js.map +1 -0
- package/dist/admin/application-state.d.ts +109 -0
- package/dist/admin/application-state.d.ts.map +1 -0
- package/dist/admin/application-state.js +3 -0
- package/dist/admin/application-state.js.map +1 -0
- package/dist/admin/application-workspace.d.ts +77 -0
- package/dist/admin/application-workspace.d.ts.map +1 -0
- package/dist/admin/application-workspace.js +302 -0
- package/dist/admin/application-workspace.js.map +1 -0
- package/dist/admin/application.d.ts +88 -0
- package/dist/admin/application.d.ts.map +1 -0
- package/dist/admin/application.js +932 -0
- package/dist/admin/application.js.map +1 -0
- package/dist/admin/client-authentication-dialog.d.ts +77 -0
- package/dist/admin/client-authentication-dialog.d.ts.map +1 -0
- package/dist/admin/client-authentication-dialog.js +217 -0
- package/dist/admin/client-authentication-dialog.js.map +1 -0
- package/dist/admin/client-controller.d.ts +58 -0
- package/dist/admin/client-controller.d.ts.map +1 -0
- package/dist/admin/client-controller.js +462 -0
- package/dist/admin/client-controller.js.map +1 -0
- package/dist/admin/client-credential-dialogs.d.ts +36 -0
- package/dist/admin/client-credential-dialogs.d.ts.map +1 -0
- package/dist/admin/client-credential-dialogs.js +145 -0
- package/dist/admin/client-credential-dialogs.js.map +1 -0
- package/dist/admin/client-dialogs.d.ts +64 -0
- package/dist/admin/client-dialogs.d.ts.map +1 -0
- package/dist/admin/client-dialogs.js +110 -0
- package/dist/admin/client-dialogs.js.map +1 -0
- package/dist/admin/client-form-scroller.d.ts +17 -0
- package/dist/admin/client-form-scroller.d.ts.map +1 -0
- package/dist/admin/client-form-scroller.js +67 -0
- package/dist/admin/client-form-scroller.js.map +1 -0
- package/dist/admin/client-registration-dialog.d.ts +27 -0
- package/dist/admin/client-registration-dialog.d.ts.map +1 -0
- package/dist/admin/client-registration-dialog.js +195 -0
- package/dist/admin/client-registration-dialog.js.map +1 -0
- package/dist/admin/client-service.d.ts +41 -0
- package/dist/admin/client-service.d.ts.map +1 -0
- package/dist/admin/client-service.js +486 -0
- package/dist/admin/client-service.js.map +1 -0
- package/dist/admin/client-state.d.ts +159 -0
- package/dist/admin/client-state.d.ts.map +1 -0
- package/dist/admin/client-state.js +3 -0
- package/dist/admin/client-state.js.map +1 -0
- package/dist/admin/client-workspace.d.ts +88 -0
- package/dist/admin/client-workspace.d.ts.map +1 -0
- package/dist/admin/client-workspace.js +491 -0
- package/dist/admin/client-workspace.js.map +1 -0
- package/dist/admin/delete-confirmation-layout.d.ts +38 -0
- package/dist/admin/delete-confirmation-layout.d.ts.map +1 -0
- package/dist/admin/delete-confirmation-layout.js +52 -0
- package/dist/admin/delete-confirmation-layout.js.map +1 -0
- package/dist/admin/index.d.ts +64 -0
- package/dist/admin/index.d.ts.map +1 -0
- package/dist/admin/index.js +31 -0
- package/dist/admin/index.js.map +1 -0
- package/dist/admin/organization-controller.d.ts +77 -0
- package/dist/admin/organization-controller.d.ts.map +1 -0
- package/dist/admin/organization-controller.js +472 -0
- package/dist/admin/organization-controller.js.map +1 -0
- package/dist/admin/organization-dialogs.d.ts +63 -0
- package/dist/admin/organization-dialogs.d.ts.map +1 -0
- package/dist/admin/organization-dialogs.js +303 -0
- package/dist/admin/organization-dialogs.js.map +1 -0
- package/dist/admin/organization-service.d.ts +110 -0
- package/dist/admin/organization-service.d.ts.map +1 -0
- package/dist/admin/organization-service.js +548 -0
- package/dist/admin/organization-service.js.map +1 -0
- package/dist/admin/organization-workspace.d.ts +29 -0
- package/dist/admin/organization-workspace.d.ts.map +1 -0
- package/dist/admin/organization-workspace.js +421 -0
- package/dist/admin/organization-workspace.js.map +1 -0
- package/dist/admin/portability-controller.d.ts +83 -0
- package/dist/admin/portability-controller.d.ts.map +1 -0
- package/dist/admin/portability-controller.js +466 -0
- package/dist/admin/portability-controller.js.map +1 -0
- package/dist/admin/portability-service.d.ts +31 -0
- package/dist/admin/portability-service.d.ts.map +1 -0
- package/dist/admin/portability-service.js +51 -0
- package/dist/admin/portability-service.js.map +1 -0
- package/dist/admin/portability-state.d.ts +88 -0
- package/dist/admin/portability-state.d.ts.map +1 -0
- package/dist/admin/portability-state.js +3 -0
- package/dist/admin/portability-state.js.map +1 -0
- package/dist/admin/portability-workspace.d.ts +78 -0
- package/dist/admin/portability-workspace.d.ts.map +1 -0
- package/dist/admin/portability-workspace.js +337 -0
- package/dist/admin/portability-workspace.js.map +1 -0
- package/dist/admin/presentation.d.ts +46 -0
- package/dist/admin/presentation.d.ts.map +1 -0
- package/dist/admin/presentation.js +271 -0
- package/dist/admin/presentation.js.map +1 -0
- package/dist/admin/rbac-dialogs.d.ts +73 -0
- package/dist/admin/rbac-dialogs.d.ts.map +1 -0
- package/dist/admin/rbac-dialogs.js +345 -0
- package/dist/admin/rbac-dialogs.js.map +1 -0
- package/dist/admin/rbac-service.d.ts +47 -0
- package/dist/admin/rbac-service.d.ts.map +1 -0
- package/dist/admin/rbac-service.js +258 -0
- package/dist/admin/rbac-service.js.map +1 -0
- package/dist/admin/rbac-state.d.ts +129 -0
- package/dist/admin/rbac-state.d.ts.map +1 -0
- package/dist/admin/rbac-state.js +136 -0
- package/dist/admin/rbac-state.js.map +1 -0
- package/dist/admin/selectable-read-only-input.d.ts +18 -0
- package/dist/admin/selectable-read-only-input.d.ts.map +1 -0
- package/dist/admin/selectable-read-only-input.js +24 -0
- package/dist/admin/selectable-read-only-input.js.map +1 -0
- package/dist/admin/session-service.d.ts +169 -0
- package/dist/admin/session-service.d.ts.map +1 -0
- package/dist/admin/session-service.js +353 -0
- package/dist/admin/session-service.js.map +1 -0
- package/dist/admin/state.d.ts +301 -0
- package/dist/admin/state.d.ts.map +1 -0
- package/dist/admin/state.js +10 -0
- package/dist/admin/state.js.map +1 -0
- package/dist/admin/system-config-controller.d.ts +58 -0
- package/dist/admin/system-config-controller.d.ts.map +1 -0
- package/dist/admin/system-config-controller.js +218 -0
- package/dist/admin/system-config-controller.js.map +1 -0
- package/dist/admin/system-config-service.d.ts +54 -0
- package/dist/admin/system-config-service.d.ts.map +1 -0
- package/dist/admin/system-config-service.js +180 -0
- package/dist/admin/system-config-service.js.map +1 -0
- package/dist/admin/system-config-state.d.ts +77 -0
- package/dist/admin/system-config-state.d.ts.map +1 -0
- package/dist/admin/system-config-state.js +78 -0
- package/dist/admin/system-config-state.js.map +1 -0
- package/dist/admin/system-config-workspace.d.ts +47 -0
- package/dist/admin/system-config-workspace.d.ts.map +1 -0
- package/dist/admin/system-config-workspace.js +217 -0
- package/dist/admin/system-config-workspace.js.map +1 -0
- package/dist/admin/user-controller-types.d.ts +67 -0
- package/dist/admin/user-controller-types.d.ts.map +1 -0
- package/dist/admin/user-controller-types.js +3 -0
- package/dist/admin/user-controller-types.js.map +1 -0
- package/dist/admin/user-controller.d.ts +6 -0
- package/dist/admin/user-controller.d.ts.map +1 -0
- package/dist/admin/user-controller.js +674 -0
- package/dist/admin/user-controller.js.map +1 -0
- package/dist/admin/user-dialog-fields.d.ts +44 -0
- package/dist/admin/user-dialog-fields.d.ts.map +1 -0
- package/dist/admin/user-dialog-fields.js +130 -0
- package/dist/admin/user-dialog-fields.js.map +1 -0
- package/dist/admin/user-dialogs.d.ts +66 -0
- package/dist/admin/user-dialogs.d.ts.map +1 -0
- package/dist/admin/user-dialogs.js +374 -0
- package/dist/admin/user-dialogs.js.map +1 -0
- package/dist/admin/user-role-controller.d.ts +82 -0
- package/dist/admin/user-role-controller.d.ts.map +1 -0
- package/dist/admin/user-role-controller.js +337 -0
- package/dist/admin/user-role-controller.js.map +1 -0
- package/dist/admin/user-role-dialog.d.ts +94 -0
- package/dist/admin/user-role-dialog.d.ts.map +1 -0
- package/dist/admin/user-role-dialog.js +265 -0
- package/dist/admin/user-role-dialog.js.map +1 -0
- package/dist/admin/user-service-types.d.ts +100 -0
- package/dist/admin/user-service-types.d.ts.map +1 -0
- package/dist/admin/user-service-types.js +3 -0
- package/dist/admin/user-service-types.js.map +1 -0
- package/dist/admin/user-service.d.ts +14 -0
- package/dist/admin/user-service.d.ts.map +1 -0
- package/dist/admin/user-service.js +612 -0
- package/dist/admin/user-service.js.map +1 -0
- package/dist/admin/user-state.d.ts +158 -0
- package/dist/admin/user-state.d.ts.map +1 -0
- package/dist/admin/user-state.js +3 -0
- package/dist/admin/user-state.js.map +1 -0
- package/dist/admin/user-workspace.d.ts +65 -0
- package/dist/admin/user-workspace.d.ts.map +1 -0
- package/dist/admin/user-workspace.js +366 -0
- package/dist/admin/user-workspace.js.map +1 -0
- package/dist/auth/browser-flow.d.ts +27 -1
- package/dist/auth/browser-flow.d.ts.map +1 -1
- package/dist/auth/browser-flow.js +55 -33
- package/dist/auth/browser-flow.js.map +1 -1
- package/dist/auth/callback-server.d.ts.map +1 -1
- package/dist/auth/callback-server.js +5 -9
- package/dist/auth/callback-server.js.map +1 -1
- package/dist/auth/id-token-verifier.d.ts +39 -0
- package/dist/auth/id-token-verifier.d.ts.map +1 -0
- package/dist/auth/id-token-verifier.js +104 -0
- package/dist/auth/id-token-verifier.js.map +1 -0
- package/dist/auth/login-coordinator.d.ts +72 -0
- package/dist/auth/login-coordinator.d.ts.map +1 -0
- package/dist/auth/login-coordinator.js +190 -0
- package/dist/auth/login-coordinator.js.map +1 -0
- package/dist/auth/metadata.d.ts +2 -1
- package/dist/auth/metadata.d.ts.map +1 -1
- package/dist/auth/metadata.js +67 -6
- package/dist/auth/metadata.js.map +1 -1
- package/dist/auth/types.d.ts +14 -0
- package/dist/auth/types.d.ts.map +1 -1
- package/dist/client-factory.d.ts.map +1 -1
- package/dist/client-factory.js +15 -2
- package/dist/client-factory.js.map +1 -1
- package/dist/commands/admin.d.ts +22 -0
- package/dist/commands/admin.d.ts.map +1 -0
- package/dist/commands/admin.js +112 -0
- package/dist/commands/admin.js.map +1 -0
- package/dist/commands/app-claim.d.ts.map +1 -1
- package/dist/commands/app-claim.js +11 -4
- package/dist/commands/app-claim.js.map +1 -1
- package/dist/commands/app-module.d.ts.map +1 -1
- package/dist/commands/app-module.js +61 -12
- package/dist/commands/app-module.js.map +1 -1
- package/dist/commands/app-permission.d.ts.map +1 -1
- package/dist/commands/app-permission.js +66 -24
- package/dist/commands/app-permission.js.map +1 -1
- package/dist/commands/app-role.d.ts.map +1 -1
- package/dist/commands/app-role.js +48 -27
- package/dist/commands/app-role.js.map +1 -1
- package/dist/commands/app.d.ts.map +1 -1
- package/dist/commands/app.js +37 -25
- package/dist/commands/app.js.map +1 -1
- package/dist/commands/bulk.d.ts.map +1 -1
- package/dist/commands/bulk.js +9 -2
- package/dist/commands/bulk.js.map +1 -1
- package/dist/commands/client-secret.d.ts.map +1 -1
- package/dist/commands/client-secret.js +12 -6
- package/dist/commands/client-secret.js.map +1 -1
- package/dist/commands/client.d.ts +3 -2
- package/dist/commands/client.d.ts.map +1 -1
- package/dist/commands/client.js +102 -43
- package/dist/commands/client.js.map +1 -1
- package/dist/commands/config.d.ts +4 -0
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +68 -7
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/export.d.ts +6 -0
- package/dist/commands/export.d.ts.map +1 -0
- package/dist/commands/export.js +182 -0
- package/dist/commands/export.js.map +1 -0
- package/dist/commands/import.d.ts +6 -0
- package/dist/commands/import.d.ts.map +1 -0
- package/dist/commands/import.js +142 -0
- package/dist/commands/import.js.map +1 -0
- package/dist/commands/keys.d.ts.map +1 -1
- package/dist/commands/keys.js +11 -4
- package/dist/commands/keys.js.map +1 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +24 -10
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/org.d.ts +2 -4
- package/dist/commands/org.d.ts.map +1 -1
- package/dist/commands/org.js +16 -76
- package/dist/commands/org.js.map +1 -1
- package/dist/commands/user-role.d.ts.map +1 -1
- package/dist/commands/user-role.js +19 -14
- package/dist/commands/user-role.js.map +1 -1
- package/dist/commands/user.d.ts +3 -2
- package/dist/commands/user.d.ts.map +1 -1
- package/dist/commands/user.js +47 -71
- package/dist/commands/user.js.map +1 -1
- package/dist/commands/version.d.ts +1 -1
- package/dist/commands/version.js +1 -1
- package/dist/credential-lock.d.ts +20 -0
- package/dist/credential-lock.d.ts.map +1 -0
- package/dist/credential-lock.js +130 -0
- package/dist/credential-lock.js.map +1 -0
- package/dist/credential-store.d.ts +14 -0
- package/dist/credential-store.d.ts.map +1 -1
- package/dist/credential-store.js +114 -3
- package/dist/credential-store.js.map +1 -1
- package/dist/error-handler.d.ts.map +1 -1
- package/dist/error-handler.js +2 -0
- package/dist/error-handler.js.map +1 -1
- package/dist/global-options.d.ts +8 -0
- package/dist/global-options.d.ts.map +1 -1
- package/dist/global-options.js +19 -8
- package/dist/global-options.js.map +1 -1
- package/dist/index.js +7 -5
- package/dist/index.js.map +1 -1
- package/dist/output.d.ts +11 -0
- package/dist/output.d.ts.map +1 -1
- package/dist/output.js +25 -6
- package/dist/output.js.map +1 -1
- package/dist/prompt.d.ts +2 -2
- package/dist/prompt.d.ts.map +1 -1
- package/dist/prompt.js +27 -7
- package/dist/prompt.js.map +1 -1
- package/package.json +7 -3
- package/dist/commands/gui.d.ts +0 -21
- package/dist/commands/gui.d.ts.map +0 -1
- package/dist/commands/gui.js +0 -67
- package/dist/commands/gui.js.map +0 -1
- package/dist/commands/provision.d.ts +0 -47
- package/dist/commands/provision.d.ts.map +0 -1
- package/dist/commands/provision.js +0 -444
- package/dist/commands/provision.js.map +0 -1
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/** Immutable selected-organization OIDC client values retained by the terminal application. */
|
|
2
|
+
/** Supported OIDC client lifecycle values. */
|
|
3
|
+
export type AdminClientStatus = 'active' | 'inactive';
|
|
4
|
+
/** Allowlisted OIDC client projection safe for terminal presentation. */
|
|
5
|
+
export interface AdminClient {
|
|
6
|
+
/** Stable internal client UUID used by Admin routes. */
|
|
7
|
+
readonly id: string;
|
|
8
|
+
/** Internal UUID of the owning organization. */
|
|
9
|
+
readonly organizationId: string;
|
|
10
|
+
/** Internal UUID of the global application definition. */
|
|
11
|
+
readonly applicationId: string;
|
|
12
|
+
/** Generated OIDC client identifier. */
|
|
13
|
+
readonly clientId: string;
|
|
14
|
+
/** Administrative display name. */
|
|
15
|
+
readonly clientName: string;
|
|
16
|
+
/** Whether the client holds secrets. */
|
|
17
|
+
readonly clientType: 'public' | 'confidential';
|
|
18
|
+
/** Deployment model used for protocol defaults. */
|
|
19
|
+
readonly applicationType: 'web' | 'native' | 'spa';
|
|
20
|
+
/** Registered authorization redirect URIs. */
|
|
21
|
+
readonly redirectUris: readonly string[];
|
|
22
|
+
/** Registered post-logout redirect URIs. */
|
|
23
|
+
readonly postLogoutRedirectUris: readonly string[];
|
|
24
|
+
/** Enabled OAuth grant types. */
|
|
25
|
+
readonly grantTypes: readonly ('authorization_code' | 'client_credentials' | 'refresh_token')[];
|
|
26
|
+
/** Enabled OIDC response types. */
|
|
27
|
+
readonly responseTypes: readonly 'code'[];
|
|
28
|
+
/** Space-delimited scope allowlist. */
|
|
29
|
+
readonly scope: string;
|
|
30
|
+
/** Token endpoint authentication method. */
|
|
31
|
+
readonly tokenEndpointAuthMethod: 'client_secret_basic' | 'client_secret_post' | 'none';
|
|
32
|
+
/** Exact browser origins permitted by the server. */
|
|
33
|
+
readonly allowedOrigins: readonly string[];
|
|
34
|
+
/** Whether authorization-code requests require PKCE. */
|
|
35
|
+
readonly requirePkce: boolean;
|
|
36
|
+
/** Whether the authorization server shows the OIDC consent page for this client. */
|
|
37
|
+
readonly requireConsent: boolean;
|
|
38
|
+
/** Per-client login-method override, or null to inherit. */
|
|
39
|
+
readonly loginMethods: readonly ('password' | 'magic_link')[] | null;
|
|
40
|
+
/** Effective login methods after organization inheritance. */
|
|
41
|
+
readonly effectiveLoginMethods: readonly ('password' | 'magic_link')[];
|
|
42
|
+
/** Current lifecycle state. */
|
|
43
|
+
readonly status: AdminClientStatus;
|
|
44
|
+
/** Creation timestamp. */
|
|
45
|
+
readonly createdAt: string;
|
|
46
|
+
/** Most recent update timestamp. */
|
|
47
|
+
readonly updatedAt: string;
|
|
48
|
+
}
|
|
49
|
+
/** Allowlisted client-secret metadata that never contains plaintext. */
|
|
50
|
+
export interface AdminClientSecret {
|
|
51
|
+
/** Stable internal secret UUID. */
|
|
52
|
+
readonly id: string;
|
|
53
|
+
/** Internal UUID of the owning client. */
|
|
54
|
+
readonly clientId: string;
|
|
55
|
+
/** Optional administrative label. */
|
|
56
|
+
readonly label: string | null;
|
|
57
|
+
/** Stored lifecycle state. */
|
|
58
|
+
readonly status: 'active' | 'revoked';
|
|
59
|
+
/** Most recent successful-use timestamp. */
|
|
60
|
+
readonly lastUsedAt: string | null;
|
|
61
|
+
/** Optional expiry timestamp. */
|
|
62
|
+
readonly expiresAt: string | null;
|
|
63
|
+
/** Creation timestamp. */
|
|
64
|
+
readonly createdAt: string;
|
|
65
|
+
}
|
|
66
|
+
/** One-time secret returned only through a synchronous controller continuation. */
|
|
67
|
+
export interface AdminGeneratedClientSecret {
|
|
68
|
+
/** Stable internal secret UUID. */
|
|
69
|
+
readonly id: string;
|
|
70
|
+
/** Internal UUID of the owning client. */
|
|
71
|
+
readonly clientId: string;
|
|
72
|
+
/** Optional administrative label. */
|
|
73
|
+
readonly label: string | null;
|
|
74
|
+
/** One-time plaintext that must never enter application state. */
|
|
75
|
+
readonly plaintext: string;
|
|
76
|
+
/** Optional expiry timestamp. */
|
|
77
|
+
readonly expiresAt: string | null;
|
|
78
|
+
/** Creation timestamp. */
|
|
79
|
+
readonly createdAt: string;
|
|
80
|
+
}
|
|
81
|
+
/** Transient secret presentation value enriched with safe client display identity. */
|
|
82
|
+
export interface AdminClientSecretPresentation extends AdminGeneratedClientSecret {
|
|
83
|
+
/** Administrative client name returned by the same authoritative workflow. */
|
|
84
|
+
readonly clientName: string;
|
|
85
|
+
/** Generated OIDC client identifier shown to the operator. */
|
|
86
|
+
readonly oidcClientId: string;
|
|
87
|
+
}
|
|
88
|
+
/** Fixed client failure categories safe to display. */
|
|
89
|
+
export type AdminClientFailureKind = 'validation' | 'unauthorized' | 'conflict' | 'unavailable' | 'invalid-response';
|
|
90
|
+
/** Sanitized client read result. */
|
|
91
|
+
export type AdminClientReadResult<T> = {
|
|
92
|
+
readonly kind: 'success';
|
|
93
|
+
readonly value: T;
|
|
94
|
+
} | {
|
|
95
|
+
readonly kind: 'session-invalid';
|
|
96
|
+
} | {
|
|
97
|
+
readonly kind: 'failure';
|
|
98
|
+
readonly failure: AdminClientFailureKind;
|
|
99
|
+
};
|
|
100
|
+
/** Sanitized client mutation result. */
|
|
101
|
+
export type AdminClientMutationResult<T = void> = ({
|
|
102
|
+
readonly kind: 'success';
|
|
103
|
+
} & (T extends void ? object : {
|
|
104
|
+
readonly value: T;
|
|
105
|
+
})) | {
|
|
106
|
+
readonly kind: 'session-invalid';
|
|
107
|
+
} | {
|
|
108
|
+
readonly kind: 'cancelled';
|
|
109
|
+
} | {
|
|
110
|
+
readonly kind: 'outcome-unknown';
|
|
111
|
+
} | {
|
|
112
|
+
readonly kind: 'failure';
|
|
113
|
+
readonly failure: AdminClientFailureKind;
|
|
114
|
+
};
|
|
115
|
+
/** Validated complete catalog for one selected organization. */
|
|
116
|
+
export interface AdminClientListProjection {
|
|
117
|
+
/** Internal UUID of the selected organization. */
|
|
118
|
+
readonly organizationId: string;
|
|
119
|
+
/** Complete validated organization-owned client catalog. */
|
|
120
|
+
readonly clients: readonly AdminClient[];
|
|
121
|
+
}
|
|
122
|
+
/** Validated selected-client detail retained with its catalog. */
|
|
123
|
+
export interface AdminClientDetailProjection extends AdminClientListProjection {
|
|
124
|
+
/** Selected organization-owned client. */
|
|
125
|
+
readonly client: AdminClient;
|
|
126
|
+
/** Resolved global application name when application read is available. */
|
|
127
|
+
readonly applicationName?: string;
|
|
128
|
+
/** Update precondition returned with the selected client. */
|
|
129
|
+
readonly etag?: string | null;
|
|
130
|
+
/** Metadata-only secrets already loaded for the selected client. */
|
|
131
|
+
readonly secrets: readonly AdminClientSecret[];
|
|
132
|
+
}
|
|
133
|
+
/** Safe client projection that may remain visible while an operation is pending or fails. */
|
|
134
|
+
export type AdminClientProjection = ({
|
|
135
|
+
readonly kind: 'list';
|
|
136
|
+
} & AdminClientListProjection) | ({
|
|
137
|
+
readonly kind: 'detail';
|
|
138
|
+
} & AdminClientDetailProjection) | ({
|
|
139
|
+
readonly kind: 'secrets';
|
|
140
|
+
readonly legacyOnly?: boolean;
|
|
141
|
+
} & AdminClientDetailProjection);
|
|
142
|
+
/** Complete selected-organization client controller state. */
|
|
143
|
+
export type AdminClientViewState = {
|
|
144
|
+
readonly kind: 'closed';
|
|
145
|
+
} | {
|
|
146
|
+
readonly kind: 'loading';
|
|
147
|
+
readonly organizationId: string;
|
|
148
|
+
readonly previous?: AdminClientProjection | readonly AdminClient[];
|
|
149
|
+
} | AdminClientProjection | {
|
|
150
|
+
readonly kind: 'indeterminate';
|
|
151
|
+
readonly organizationId: string;
|
|
152
|
+
readonly previous?: AdminClientProjection | readonly AdminClient[];
|
|
153
|
+
} | {
|
|
154
|
+
readonly kind: 'failure';
|
|
155
|
+
readonly organizationId: string;
|
|
156
|
+
readonly failure: AdminClientFailureKind;
|
|
157
|
+
readonly previous?: AdminClientProjection | readonly AdminClient[];
|
|
158
|
+
};
|
|
159
|
+
//# sourceMappingURL=client-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-state.d.ts","sourceRoot":"","sources":["../../src/admin/client-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-state.js","sourceRoot":"","sources":["../../src/admin/client-state.ts"],"names":[],"mappings":"AAAA,+FAA+F"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/** Direct JSVision workspace for clients owned by the selected organization. */
|
|
2
|
+
import type { UpdateClientInput } from '@portaidentity/sdk';
|
|
3
|
+
import { View } from '@jsvision/ui';
|
|
4
|
+
import type { AdminApplication } from './application-state.js';
|
|
5
|
+
import type { AdminAuthenticationUrlRow } from './client-authentication-dialog.js';
|
|
6
|
+
import type { AdminClientViewState } from './client-state.js';
|
|
7
|
+
import type { AdminCapabilities, AdminOrganizationContext } from './state.js';
|
|
8
|
+
/** Closed set of intents emitted by the organization client workspace. */
|
|
9
|
+
export type AdminClientIntent = {
|
|
10
|
+
readonly kind: 'create';
|
|
11
|
+
} | {
|
|
12
|
+
readonly kind: 'select';
|
|
13
|
+
readonly clientId: string;
|
|
14
|
+
} | {
|
|
15
|
+
readonly kind: 'retry';
|
|
16
|
+
} | {
|
|
17
|
+
readonly kind: 'back';
|
|
18
|
+
} | {
|
|
19
|
+
readonly kind: 'edit-name';
|
|
20
|
+
readonly clientId: string;
|
|
21
|
+
} | {
|
|
22
|
+
readonly kind: 'add-authentication-url';
|
|
23
|
+
readonly clientId: string;
|
|
24
|
+
} | {
|
|
25
|
+
readonly kind: 'edit-authentication-url';
|
|
26
|
+
readonly clientId: string;
|
|
27
|
+
readonly row: AdminAuthenticationUrlRow;
|
|
28
|
+
} | {
|
|
29
|
+
readonly kind: 'delete-authentication-url';
|
|
30
|
+
readonly clientId: string;
|
|
31
|
+
readonly row: AdminAuthenticationUrlRow;
|
|
32
|
+
} | {
|
|
33
|
+
readonly kind: 'save-protocol';
|
|
34
|
+
readonly clientId: string;
|
|
35
|
+
readonly input: UpdateClientInput;
|
|
36
|
+
} | {
|
|
37
|
+
readonly kind: 'save-login';
|
|
38
|
+
readonly clientId: string;
|
|
39
|
+
readonly input: UpdateClientInput;
|
|
40
|
+
} | {
|
|
41
|
+
readonly kind: 'activate';
|
|
42
|
+
readonly clientId: string;
|
|
43
|
+
} | {
|
|
44
|
+
readonly kind: 'deactivate';
|
|
45
|
+
readonly clientId: string;
|
|
46
|
+
} | {
|
|
47
|
+
readonly kind: 'delete';
|
|
48
|
+
readonly clientId: string;
|
|
49
|
+
} | {
|
|
50
|
+
readonly kind: 'secrets';
|
|
51
|
+
readonly clientId: string;
|
|
52
|
+
} | {
|
|
53
|
+
readonly kind: 'generate-secret';
|
|
54
|
+
readonly clientId: string;
|
|
55
|
+
} | {
|
|
56
|
+
readonly kind: 'delete-secret';
|
|
57
|
+
readonly clientId: string;
|
|
58
|
+
readonly secretId: string;
|
|
59
|
+
};
|
|
60
|
+
/** Inputs for one selected-organization client workspace. */
|
|
61
|
+
export interface AdminClientWorkspaceOptions {
|
|
62
|
+
/** Active organization, or absent when organization navigation is disabled. */
|
|
63
|
+
readonly organization?: AdminOrganizationContext;
|
|
64
|
+
/** Validated global applications available for name resolution and create selection. */
|
|
65
|
+
readonly applications: readonly AdminApplication[];
|
|
66
|
+
/** Capabilities from the currently verified session. */
|
|
67
|
+
readonly capabilities: AdminCapabilities;
|
|
68
|
+
/** Receives feature-local actions while controllers retain network ownership. */
|
|
69
|
+
readonly onIntent: (intent: AdminClientIntent) => void;
|
|
70
|
+
/** Focuses a mounted leaf view through the application loop. */
|
|
71
|
+
readonly focusView?: (view: View) => void;
|
|
72
|
+
}
|
|
73
|
+
/** Mounted organization client workspace controlled by validated state. */
|
|
74
|
+
export interface AdminClientWorkspace {
|
|
75
|
+
/** Content mounted inside the administration shell. */
|
|
76
|
+
readonly content: View;
|
|
77
|
+
/** Replaces the complete validated workspace state. */
|
|
78
|
+
readonly setState: (state: AdminClientViewState) => void;
|
|
79
|
+
/** Restores focus to the current primary control. */
|
|
80
|
+
readonly focusCurrent: () => void;
|
|
81
|
+
/** Removes retained client data. */
|
|
82
|
+
readonly clear: () => void;
|
|
83
|
+
/** Permanently disposes this workspace. */
|
|
84
|
+
readonly dispose: () => void;
|
|
85
|
+
}
|
|
86
|
+
/** Creates the feature-specific client workspace with ordinary Layout DSL primitives. */
|
|
87
|
+
export declare function createAdminClientWorkspace(options: AdminClientWorkspaceOptions): AdminClientWorkspace;
|
|
88
|
+
//# sourceMappingURL=client-workspace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-workspace.d.ts","sourceRoot":"","sources":["../../src/admin/client-workspace.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAEhF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAoBL,IAAI,EACL,MAAM,cAAc,CAAC;AAItB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AACnF,OAAO,KAAK,EAIV,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAG9E,0EAA0E;AAC1E,MAAM,MAAM,iBAAiB,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACzD;IAAE,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACtE;IACE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC;IACzC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,yBAAyB,CAAC;CACzC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,2BAA2B,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,yBAAyB,CAAC;CACzC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;CACnC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;CACnC,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACxD;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC/D;IAAE,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7F,6DAA6D;AAC7D,MAAM,WAAW,2BAA2B;IAC1C,+EAA+E;IAC/E,QAAQ,CAAC,YAAY,CAAC,EAAE,wBAAwB,CAAC;IACjD,wFAAwF;IACxF,QAAQ,CAAC,YAAY,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACnD,wDAAwD;IACxD,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACzC,iFAAiF;IACjF,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACvD,gEAAgE;IAChE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CAC3C;AAED,2EAA2E;AAC3E,MAAM,WAAW,oBAAoB;IACnC,uDAAuD;IACvD,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IACvB,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACzD,qDAAqD;IACrD,QAAQ,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC;IAClC,oCAAoC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;IAC3B,2CAA2C;IAC3C,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;CAC9B;AA8FD,yFAAyF;AACzF,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,2BAA2B,GACnC,oBAAoB,CAopBtB"}
|