@idp.global/catalog 8.0.0 → 8.1.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 +28 -0
- package/dist_ts_web/00_commitinfo_data.js +1 -1
- package/dist_ts_web/elements/idp-admin-shell.d.ts +51 -1
- package/dist_ts_web/elements/idp-admin-shell.js +343 -98
- package/package.json +6 -8
- package/readme.md +3 -0
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/elements/idp-admin-shell.ts +273 -28
package/changelog.md
CHANGED
|
@@ -1,5 +1,33 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2026-11-12 - 8.1.0
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
- create a confidential global app from the Platform Apps page (admin)
|
|
8
|
+
- In the global-admin console, a "New app" action on the Platform Apps page opens a "Create global app" dialog
|
|
9
|
+
with name, description, app URL, logo URL, a free-text category (at most 256 characters) and the callback,
|
|
10
|
+
post-logout, scope, grant-type and token-lifetime fields of the configure dialog, validated by the same rules.
|
|
11
|
+
It always creates a confidential client and has no client-type control.
|
|
12
|
+
- The dialog says up front that creating a confidential client requires a passkey sign-in within the last
|
|
13
|
+
5 minutes.
|
|
14
|
+
- Submitting dispatches `idp-admin-ga-app-create` with an `IIdpAdminGaAppCreateEventDetail`. The first submit
|
|
15
|
+
freezes the payload: the dialog reopens locked, and a retry dispatches exactly the same values. "Discard and
|
|
16
|
+
edit" drops the frozen draft, dispatches `idp-admin-ga-app-create-discard` and unlocks the values. After a
|
|
17
|
+
successful creation the host calls `completeGaAppCreate()` and shows the secret through `oidcClientSecret`,
|
|
18
|
+
the existing one-time secret notice. A create is refused while a client secret is still displayed.
|
|
19
|
+
- The admin shell gains a second demo that shows the global-admin Platform Apps page with the action.
|
|
20
|
+
|
|
21
|
+
### Maintenance
|
|
22
|
+
|
|
23
|
+
- release tooling currency (tooling)
|
|
24
|
+
- Replaces the deprecated `@git.zone/tsbuild`, `@git.zone/tsbundle` and `@git.zone/tswatch` with
|
|
25
|
+
`@git.zone/tsrepo` `^2.1.0`. The scripts run `tsrepo build`, `tsrepo bundle`, `tsrepo watch` and `tsrepo docs`
|
|
26
|
+
(formerly a global `tsdoc`), and `.smartconfig.json` moves the `@git.zone/tsbundle` and `@git.zone/tswatch`
|
|
27
|
+
sections to `"@git.zone/tsrepo".bundle` and `.watch`. The build now compiles with the TypeScript 7 native
|
|
28
|
+
compiler.
|
|
29
|
+
- `packageManager` pnpm@12.18.0 and `@types/node` `^26.6.6`.
|
|
30
|
+
|
|
3
31
|
## 2026-09-29 - 8.0.0
|
|
4
32
|
|
|
5
33
|
### Breaking Changes
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@idp.global/catalog',
|
|
6
|
-
version: '8.
|
|
6
|
+
version: '8.1.0',
|
|
7
7
|
description: 'Web component catalog for idp.global, based on the v5 Apple-system design language.'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHNfd2ViLzAwX2NvbW1pdGluZm9fZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixJQUFJLEVBQUUscUJBQXFCO0lBQzNCLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLFdBQVcsRUFBRSxxRkFBcUY7Q0FDbkcsQ0FBQSJ9
|
|
@@ -105,6 +105,28 @@ export interface IIdpAdminGaAppConfigureEventDetail {
|
|
|
105
105
|
refreshTokenLifetime: number;
|
|
106
106
|
};
|
|
107
107
|
}
|
|
108
|
+
/**
|
|
109
|
+
* Detail of `idp-admin-ga-app-create`: one confidential global OIDC client to create.
|
|
110
|
+
* The shell freezes these fields at the first submit; every retry dispatches the same
|
|
111
|
+
* values until the host calls `completeGaAppCreate()` or the admin discards the draft,
|
|
112
|
+
* which dispatches `idp-admin-ga-app-create-discard`.
|
|
113
|
+
*/
|
|
114
|
+
export interface IIdpAdminGaAppCreateEventDetail {
|
|
115
|
+
name: string;
|
|
116
|
+
description: string;
|
|
117
|
+
logoUrl: string;
|
|
118
|
+
appUrl: string;
|
|
119
|
+
category: string;
|
|
120
|
+
redirectUris: string[];
|
|
121
|
+
postLogoutRedirectUris: string[];
|
|
122
|
+
allowedScopes: string[];
|
|
123
|
+
grantTypes: Array<'authorization_code' | 'refresh_token'>;
|
|
124
|
+
oidcSettings: {
|
|
125
|
+
accessTokenLifetime: number;
|
|
126
|
+
idTokenLifetime: number;
|
|
127
|
+
refreshTokenLifetime: number;
|
|
128
|
+
};
|
|
129
|
+
}
|
|
108
130
|
export interface IIdpAdminGaAppRotateSecretEventDetail {
|
|
109
131
|
appId: string;
|
|
110
132
|
gracePeriodSeconds: number;
|
|
@@ -327,7 +349,7 @@ export interface IIdpAdminPasskeyEventDetail {
|
|
|
327
349
|
passkeyId: string;
|
|
328
350
|
}
|
|
329
351
|
export declare class IdpAdminShell extends DeesElement {
|
|
330
|
-
static demo: () => TemplateResult<1
|
|
352
|
+
static demo: (() => TemplateResult<1>)[];
|
|
331
353
|
static demoGroups: string[];
|
|
332
354
|
static styles: import("@design.estate/dees-element").CSSResult[];
|
|
333
355
|
accessor page: TIdpAdminPage;
|
|
@@ -420,6 +442,13 @@ export declare class IdpAdminShell extends DeesElement {
|
|
|
420
442
|
private accessor dialogIdTokenLifetime;
|
|
421
443
|
private accessor dialogRefreshTokenLifetime;
|
|
422
444
|
private accessor dialogSecretGracePeriod;
|
|
445
|
+
private accessor dialogAppName;
|
|
446
|
+
private accessor dialogAppDescription;
|
|
447
|
+
private accessor dialogAppLogoUrl;
|
|
448
|
+
private accessor dialogAppUrl;
|
|
449
|
+
private accessor dialogAppCategory;
|
|
450
|
+
/** the create payload frozen at its first submit; it outlives the dialog until resolved or discarded */
|
|
451
|
+
private accessor gaAppCreateSubmission;
|
|
423
452
|
private get safeOrgs();
|
|
424
453
|
private get currentOrg();
|
|
425
454
|
private get userInitials();
|
|
@@ -465,11 +494,28 @@ export declare class IdpAdminShell extends DeesElement {
|
|
|
465
494
|
private openMemberRolesDialog;
|
|
466
495
|
private openAppRoleMappingsDialog;
|
|
467
496
|
private openOidcAppConfigDialog;
|
|
497
|
+
private openOidcAppCreateDialog;
|
|
468
498
|
private openOidcSecretRotateDialog;
|
|
469
499
|
private parseLines;
|
|
470
500
|
private isValidExactUri;
|
|
471
501
|
private setDialogNumber;
|
|
502
|
+
/** validates the OIDC client fields the configure and create dialogs share; sets dialogError and returns null when invalid */
|
|
503
|
+
private validateOidcClientDialogFields;
|
|
472
504
|
private submitOidcAppConfigDialog;
|
|
505
|
+
/** an HTTPS URL without credentials, as the app stores registered app and logo URLs */
|
|
506
|
+
private isValidHttpsUrl;
|
|
507
|
+
/** the app metadata limits idp.global stores: lengths in UTF-16 code units, no control characters */
|
|
508
|
+
private validateGaAppCreateMetadata;
|
|
509
|
+
/** only one one-time secret is on screen at a time */
|
|
510
|
+
private ensureNoDisplayedClientSecret;
|
|
511
|
+
private submitOidcAppCreateDialog;
|
|
512
|
+
/** drops the frozen draft and unlocks its values for editing; the next submit is a new creation */
|
|
513
|
+
private discardOidcAppCreate;
|
|
514
|
+
/**
|
|
515
|
+
* The host calls this once `idp-admin-ga-app-create` has created the app (after it set
|
|
516
|
+
* `oidcClientSecret`): the frozen draft is cleared and an open create dialog closes.
|
|
517
|
+
*/
|
|
518
|
+
completeGaAppCreate(): void;
|
|
473
519
|
private submitOidcSecretRotateDialog;
|
|
474
520
|
private setDialogRoleField;
|
|
475
521
|
private toggleDialogMemberRole;
|
|
@@ -485,6 +531,10 @@ export declare class IdpAdminShell extends DeesElement {
|
|
|
485
531
|
private renderMemberRolesDialog;
|
|
486
532
|
private renderAppRoleMappingsDialog;
|
|
487
533
|
private renderOidcAppConfigDialog;
|
|
534
|
+
/** the OIDC client rows the configure and create dialogs share */
|
|
535
|
+
private renderOidcClientFieldRows;
|
|
536
|
+
private setDialogAppField;
|
|
537
|
+
private renderOidcAppCreateDialog;
|
|
488
538
|
private renderOidcSecretRotateDialog;
|
|
489
539
|
private renderCreateOrgDialog;
|
|
490
540
|
private renderLogoutConfirmDialog;
|