mirror of
https://github.com/andwati/zitadel.git
synced 2026-10-18 05:52:51 +00:00
# Which Problems Are Solved This pr updates major and minor dependencies and is the first step on getting our dependabot alerts cut down. # How the Problems Are Solved Depedency updates across the board eg: - Upgrade Angular to v21 - Upgrade next.js to v16.2 - Upgrade tailwind to v4 in the login - Upgrade vitest to v4 in the login This is an uncompleted list refer to the changed files for a full overview of all the updates. # Additional Changes Migrated all control flow in the console to the modern control flow syntax. Fixed the dependsOn setting for the @zitadel/login:test-unit nx target. # Additional Context - Closes https://github.com/zitadel/zitadel/issues/11274 --------- Co-authored-by: Max Peintner <[email protected]>
140 lines
4.9 KiB
HTML
140 lines
4.9 KiB
HTML
<h2>{{ 'DESCRIPTIONS.SETTINGS.LANGUAGES.TITLE' | translate }}</h2>
|
|
<p class="cnsl-secondary-text">{{ 'DESCRIPTIONS.SETTINGS.LANGUAGES.DESCRIPTION' | translate }}</p>
|
|
|
|
<div class="spinner-wr">
|
|
@if (loading) {
|
|
<mat-spinner diameter="30" color="primary"></mat-spinner>
|
|
}
|
|
</div>
|
|
|
|
<div>
|
|
<form class="languages-container-wrapper">
|
|
<div class="languages-container">
|
|
<div
|
|
class="languages-list"
|
|
cdkDropList
|
|
id="allowed"
|
|
[cdkDropListConnectedTo]="['notallowed']"
|
|
(cdkDropListDropped)="drop($event)"
|
|
[cdkDropListData]="(localState$ | async)!.allowed"
|
|
>
|
|
<div class="languages-top-row">
|
|
<span class="label">{{ 'SETTING.LANGUAGES.ALLOWED' | translate }}</span>
|
|
<button
|
|
class="list-button"
|
|
[disabled]="(canWriteRestrictions$ | async) === false"
|
|
(click)="allowAll()"
|
|
mat-stroked-button
|
|
>
|
|
<div class="cnsl-action-button">
|
|
<i class="las la-object-group"></i><span>{{ 'SETTING.LANGUAGES.ALLOW_ALL' | translate }}</span>
|
|
</div>
|
|
</button>
|
|
</div>
|
|
<div class="languages-drop-target">
|
|
@for (lang of (localState$ | async)!.allowed; track lang; let i = $index) {
|
|
<div
|
|
class="card languages-box"
|
|
[cdkDragData]="lang"
|
|
cdkDrag
|
|
[cdkDragDisabled]="(canWriteRestrictions$ | async) === false"
|
|
mat-list-item
|
|
>
|
|
<span class="index">{{ i + 1 }}</span>
|
|
<span class="locale">{{ lang }}</span>
|
|
<span class="lang">{{ 'SETTING.LANGUAGES.OPTIONS.' + lang | translate }} </span>
|
|
@if (lang === (defaultLang$ | async)) {
|
|
<span class="state orgdefaultlabel">{{ 'SETTING.LANGUAGES.DEFAULT' | translate }}</span>
|
|
}
|
|
@if (lang !== (defaultLang$ | async) && (isRemotelyAllowed$(lang) | async) === true) {
|
|
<button
|
|
(click)="$event.stopPropagation()"
|
|
mat-icon-button
|
|
class="more-button"
|
|
[matMenuTriggerFor]="actions"
|
|
data-e2e="table-actions-button"
|
|
>
|
|
<mat-icon>more_vert</mat-icon>
|
|
</button>
|
|
}
|
|
<mat-menu #actions="matMenu" xPosition="before" class="language-actions-menu">
|
|
<button
|
|
menuActions
|
|
mat-menu-item
|
|
(click)="setDefaultLang(lang)"
|
|
[disabled]="(canWriteDefaultLanguage$ | async) === false"
|
|
>
|
|
{{ 'SETTING.LANGUAGES.SETASDEFAULT' | translate }}
|
|
</button>
|
|
</mat-menu>
|
|
</div>
|
|
}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="languages-container">
|
|
<div
|
|
class="languages-list"
|
|
cdkDropList
|
|
id="notallowed"
|
|
[cdkDropListConnectedTo]="['allowed']"
|
|
(cdkDropListDropped)="drop($event)"
|
|
[cdkDropListData]="(localState$ | async)!.notAllowed"
|
|
[cdkDropListEnterPredicate]="defaultLangPredicate"
|
|
cdkDropListSortingDisabled
|
|
>
|
|
<div class="languages-top-row">
|
|
<span class="label">{{ 'SETTING.LANGUAGES.NOT_ALLOWED' | translate }}</span>
|
|
<button
|
|
class="list-button"
|
|
[disabled]="(canWriteRestrictions$ | async) === false"
|
|
(click)="disallowAll()"
|
|
mat-stroked-button
|
|
>
|
|
<div class="cnsl-action-button">
|
|
<i class="las la-object-group"></i><span>{{ 'SETTING.LANGUAGES.DISALLOW_ALL' | translate }}</span>
|
|
</div>
|
|
</button>
|
|
</div>
|
|
<div class="languages-drop-target">
|
|
@for (lang of (localState$ | async)!.notAllowed; track lang) {
|
|
<div
|
|
class="card languages-box"
|
|
[cdkDragData]="lang"
|
|
cdkDrag
|
|
[cdkDragDisabled]="(canWriteRestrictions$ | async) === false"
|
|
mat-list-item
|
|
>
|
|
<span class="locale">{{ lang }}</span>
|
|
<span class="lang">{{ 'SETTING.LANGUAGES.OPTIONS.' + lang | translate }} </span>
|
|
</div>
|
|
}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="general-btn-container">
|
|
<button
|
|
class="reset-button"
|
|
[disabled]="(canWriteRestrictions$ | async) === false"
|
|
(click)="discard()"
|
|
color="message-text-warn"
|
|
mat-stroked-button
|
|
>
|
|
<div class="cnsl-action-button">
|
|
<i class="las la-history"></i><span>{{ 'ACTIONS.UNSAVED.DIALOG.DISCARD' | translate }}</span>
|
|
</div>
|
|
</button>
|
|
<button
|
|
class="save-button"
|
|
color="primary"
|
|
type="submit"
|
|
(click)="submit()"
|
|
mat-raised-button
|
|
[disabled]="(canWriteRestrictions$ | async) === false"
|
|
>
|
|
{{ 'ACTIONS.SAVE' | translate }}
|
|
</button>
|
|
</div>
|
|
</form>
|
|
</div>
|