Skip to content

Commit 208a78b

Browse files
authored
Merge branch 'main' into aromanovv/PD-5144-improve-disable-authorize-access-button-logic
2 parents 6850960 + 1fe5ed2 commit 208a78b

146 files changed

Lines changed: 10666 additions & 4978 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

AGENTS.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ When a dialog or view needs data from an HTTP (or other async) call, opening the
2525

2626
## RUM / Observability
2727

28-
The app sends events to **New Relic** (and optionally logs them in the console) for analytics and debugging. The central service is **`RumJourneyEventService`** (`src/app/rum/service/customEvent.service.ts`).
28+
The app sends events to **New Relic** (and optionally logs them in the console) for analytics and debugging. The central service is **`RumJourneyEventService`** (`src/app/rum/service/customEvent.service.ts`). For a fuller overview (simple vs journey events, sign-in/OAuth naming), see **`src/app/rum/README.md`**.
2929

3030
### Two ways to record events
3131

@@ -34,5 +34,6 @@ The app sends events to **New Relic** (and optionally logs them in the console)
3434

3535
### Event names: use the enum
3636

37-
- **All event name strings** live in **`AppEventName`** in `src/app/register/app-event-names.ts`. Do not hardcode event names elsewhere.
37+
- **All event name strings** live in **`AppEventName`** in `src/app/rum/app-event-names.ts`. Do not hardcode event names elsewhere.
3838
- For **dynamic** names (e.g. `step-${step}-loaded`), add a small helper in the same file (e.g. `stepLoadedEvent(step)`) and use it when calling `recordEvent`.
39+
- **Terminal outcomes** (user leaves the flow, error screen, success that navigates away): add the event to **`src/app/rum/terminating-rum-events.ts`** so `RumJourneyEventService` triggers an immediate NR harvest after recording.

CHANGELOG.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,67 @@
1+
## v2.132.10 - 2026-04-06
2+
3+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.132.9...v2.132.10)
4+
5+
## v2.132.9 - 2026-04-06
6+
7+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.132.8...v2.132.9)
8+
9+
## v2.132.8 - 2026-04-06
10+
11+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.132.7...v2.132.8)
12+
13+
## v2.132.7 - 2026-04-06
14+
15+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.132.6...v2.132.7)
16+
17+
## v2.132.6 - 2026-04-06
18+
19+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.132.5...v2.132.6)
20+
21+
## v2.132.5 - 2026-04-06
22+
23+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.132.4...v2.132.5)
24+
25+
## v2.132.4 - 2026-04-06
26+
27+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.132.3...v2.132.4)
28+
29+
## v2.132.3 - 2026-04-06
30+
31+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.132.2...v2.132.3)
32+
33+
## v2.132.2 - 2026-04-06
34+
35+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.132.1...v2.132.2)
36+
37+
## v2.132.1 - 2026-04-06
38+
39+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.132.0...v2.132.1)
40+
41+
## v2.132.0 - 2026-04-06
42+
43+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.131.25...v2.132.0)
44+
45+
## v2.131.25 - 2026-04-06
46+
47+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.131.24...v2.131.25)
48+
49+
## v2.131.24 - 2026-03-26
50+
51+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.131.23...v2.131.24)
52+
53+
## v2.131.23 - 2026-03-25
54+
55+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.131.22...v2.131.23)
56+
57+
## v2.131.22 - 2026-03-25
58+
59+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.131.21...v2.131.22)
60+
61+
## v2.131.21 - 2026-03-25
62+
63+
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.131.20...v2.131.21)
64+
165
## v2.131.20 - 2026-03-24
266

367
[Full Changelog](https://github.com/ORCID/orcid-angular/compare/v2.131.19...v2.131.20)

angular.json

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,11 @@
120120
"ignore": ["fonts/**/*", "**/*.scss"],
121121
"output": "/assets/"
122122
},
123+
{
124+
"glob": "**/*",
125+
"input": "src/assets/print-view/",
126+
"output": "/print-view/"
127+
},
123128
{
124129
"glob": "src/favicon.ico",
125130
"input": "src/",
@@ -143,6 +148,11 @@
143148
},
144149
"configurations": {
145150
"local": {
151+
"scripts": [
152+
"/scripts/environment.runtime.js",
153+
"/scripts/onetrust.runtime.js",
154+
"/scripts/new-relic.runtime.js"
155+
],
146156
"budgets": [
147157
{
148158
"type": "anyComponentStyle",
@@ -164,6 +174,11 @@
164174
"outputPath": "dist"
165175
},
166176
"local-with-proxy": {
177+
"scripts": [
178+
"/scripts/environment.runtime.js",
179+
"/scripts/onetrust.runtime.js",
180+
"/scripts/new-relic.runtime.js"
181+
],
167182
"optimization": false,
168183
"outputHashing": "none",
169184
"sourceMap": true,
@@ -180,6 +195,11 @@
180195
]
181196
},
182197
"local-with-proxy-localize-en": {
198+
"scripts": [
199+
"/scripts/environment.runtime.js",
200+
"/scripts/onetrust.runtime.js",
201+
"/scripts/new-relic.runtime.js"
202+
],
183203
"localize": ["en"],
184204
"optimization": false,
185205
"outputHashing": "none",
@@ -197,12 +217,27 @@
197217
]
198218
},
199219
"local-with-proxy-localize-fr": {
220+
"scripts": [
221+
"/scripts/environment.runtime.js",
222+
"/scripts/onetrust.runtime.js",
223+
"/scripts/new-relic.runtime.js"
224+
],
200225
"localize": ["fr"]
201226
},
202227
"local-with-proxy-localize-ar": {
228+
"scripts": [
229+
"/scripts/environment.runtime.js",
230+
"/scripts/onetrust.runtime.js",
231+
"/scripts/new-relic.runtime.js"
232+
],
203233
"localize": ["ar"]
204234
},
205235
"local-with-proxy-localize-xx": {
236+
"scripts": [
237+
"/scripts/environment.runtime.js",
238+
"/scripts/onetrust.runtime.js",
239+
"/scripts/new-relic.runtime.js"
240+
],
206241
"localize": ["xx"]
207242
},
208243
"production": {

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
"@angular/animations": "^20.1.6",
4343
"@angular/cdk": "^20.1.5",
4444
"@angular/common": "^20.1.6",
45-
"@angular/compiler": "^20.1.6",
45+
"@angular/compiler": "^20.3.18",
4646
"@angular/core": "^20.3.16",
4747
"@angular/elements": "20.1.6",
4848
"@angular/forms": "^20.1.6",

projects/orcid-registry-ui/src/lib/components/auth-challenge/auth-challenge.component.html

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,11 @@
1212
>
1313
<mat-icon class="material-symbols-outlined">person_check</mat-icon>
1414
</div>
15-
<h1 class="orc-font-heading-small text-center font-normal" i18n>
15+
<h1
16+
class="orc-font-heading-small text-center font-normal"
17+
cdkFocusInitial
18+
i18n
19+
>
1620
Verify your ORCID account
1721
</h1>
1822
<p class="orc-font-body-small text-center mb-8">

scripts/new-relic.runtime.js

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,24 @@
11
window.NREUM || (NREUM = {})
22
NREUM.init = {
3-
performance: { capture_measures: true },
3+
performance: { capture_measures: false },
44
browser_consent_mode: { enabled: false },
55
privacy: { cookies_enabled: true },
6-
session_replay: { enabled: false },
7-
session_trace: { enabled: false },
8-
ajax: { capture_payloads: 'none', autoStart: false },
9-
page_view_event: { autoStart: false },
10-
page_view_timing: { autoStart: false },
11-
jserrors: { autoStart: false },
12-
metrics: { autoStart: false },
13-
generic_events: { autoStart: false },
14-
soft_navigations: { autoStart: false },
6+
// --- Temporarily disabled (noise / volume); re-enable in NREUM.init when ready ---
7+
session_replay: { enabled: false }, // Session replay
8+
session_trace: { enabled: false }, // Session traces / long tasks
9+
// XHR/fetch instrumentation (custom timings, Ajax events)
10+
ajax: { enabled: false, capture_payloads: 'none', autoStart: false },
11+
page_view_event: { enabled: false, autoStart: false }, // Initial page view beacon payload
12+
page_view_timing: { enabled: false, autoStart: false }, // Web vitals / timing harvest
13+
jserrors: { enabled: false, autoStart: false }, // Uncaught JS error reports
14+
// Custom metrics aggregate (separate from PageView timing)
15+
metrics: { enabled: false, autoStart: false },
16+
// UserAction / interaction events (click, blur, keydown, etc.)
17+
generic_events: { enabled: true, autoStart: false },
18+
page_action: { enabled: true }, // addPageAction API default collection
19+
user_actions: { enabled: false },
20+
// SPA soft-navigation / route-change instrumentation
21+
soft_navigations: { enabled: false, autoStart: false },
1522
}
1623

1724
NREUM.loader_config = {

src/app/account-settings/components/settings-security-alternate-sign-in/settings-security-alternate-sign-in.component.html

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,11 @@
3838
<div *ngFor="let account of accounts">
3939
<div class="mobile-elements-container">
4040
<div>
41-
<button (click)="delete(account)" mat-icon-button>
41+
<button
42+
(click)="delete(account)"
43+
[attr.aria-label]="labelDeleteButton + ' ' + account?.idpName"
44+
mat-icon-button
45+
>
4246
<mat-icon>delete</mat-icon>
4347
</button>
4448
</div>
@@ -96,7 +100,12 @@
96100
<ng-container matColumnDef="actions" stickyEnd>
97101
<th mat-header-cell *matHeaderCellDef></th>
98102
<td mat-cell *matCellDef="let element">
99-
<button (click)="delete(element)" mat-icon-button>
103+
<button
104+
[matTooltip]="labelDeleteButton"
105+
[attr.aria-label]="labelDeleteButton + ' ' + element?.idpName"
106+
(click)="delete(element)"
107+
mat-icon-button
108+
>
100109
<mat-icon>delete</mat-icon>
101110
</button>
102111
</td>

src/app/account-settings/components/settings-security-alternate-sign-in/settings-security-alternate-sign-in.component.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ export class SettingsSecurityAlternateSignInComponent
4343
isMobile: any
4444
refreshAccounts$ = new BehaviorSubject<void>(undefined)
4545
authChallengeLabel = $localize`:@@accountSettings.security.unlinkTheAlternateSignInAccount:unlink the alternate sign in account`
46+
labelDeleteButton = $localize`:@@shared.delete:Delete`
4647

4748
constructor(
4849
private _accountSettingAlternate: AccountSecurityAlternateSignInService,

src/app/account-settings/components/settings-security-two-factor-auth/settings-security-two-factor-auth.component.scss-theme.scss

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
}
1414

1515
.on {
16-
color: map-get($foreground, 'brand-primary-dark');
16+
color: map-get($foreground, 'brand-primary-darkest');
1717
}
1818
}
1919

src/app/app.module.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import { TitleService } from './core/title-service/title.service'
1313
import { HttpContentTypeHeaderInterceptor } from './core/http-content-type-header-interceptor/http-content-type-header-interceptor'
1414
import { XsrfFallbackInterceptor } from './core/xsrf/xsrf-fallback.interceptor'
1515
import { FirefoxXsrfPreloadInterceptor } from './core/lang-preload/firefox-xsrf-preload.interceptor'
16+
import { RetryTransientInterceptor } from './core/http/retry-transient.interceptor'
1617
import {
1718
HTTP_INTERCEPTORS,
1819
provideHttpClient,
@@ -52,6 +53,11 @@ import { FormsModule } from '@angular/forms'
5253
useClass: FirefoxXsrfPreloadInterceptor,
5354
multi: true,
5455
},
56+
{
57+
provide: HTTP_INTERCEPTORS,
58+
useClass: RetryTransientInterceptor,
59+
multi: true,
60+
},
5561
{
5662
provide: HTTP_INTERCEPTORS,
5763
useClass: HttpContentTypeHeaderInterceptor,

0 commit comments

Comments
 (0)