chore(console): npm dependencies (#6626)

* chore(deps-dev): bump eslint from 8.46.0 to 8.50.0 in /console (#6618)

Bumps [eslint](https://github.com/eslint/eslint) from 8.46.0 to 8.50.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.46.0...v8.50.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps-dev): bump @types/node from 18.16.10 to 20.6.5 in /console (#6617)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.16.10 to 20.6.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump protobufjs from 7.2.3 to 7.2.5 in /console (#6584)

Bumps [protobufjs](https://github.com/protobufjs/protobuf.js) from 7.2.3 to 7.2.5.
- [Release notes](https://github.com/protobufjs/protobuf.js/releases)
- [Changelog](https://github.com/protobufjs/protobuf.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/protobufjs/protobuf.js/compare/protobufjs-v7.2.3...protobufjs-v7.2.5)

---
updated-dependencies:
- dependency-name: protobufjs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Max Peintner <max@caos.ch>

* chore(deps-dev): bump @types/jasmine from 4.3.5 to 4.3.6 in /console (#6581)

Bumps [@types/jasmine](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jasmine) from 4.3.5 to 4.3.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jasmine)

---
updated-dependencies:
- dependency-name: "@types/jasmine"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump @grpc/grpc-js from 1.8.14 to 1.9.3 in /console (#6578)

Bumps [@grpc/grpc-js](https://github.com/grpc/grpc-node) from 1.8.14 to 1.9.3.
- [Release notes](https://github.com/grpc/grpc-node/releases)
- [Commits](https://github.com/grpc/grpc-node/compare/@grpc/grpc-js@1.8.14...@grpc/grpc-js@1.9.3)

---
updated-dependencies:
- dependency-name: "@grpc/grpc-js"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps-dev): bump @types/qrcode from 1.5.0 to 1.5.2 in /console (#6477)

Bumps [@types/qrcode](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/qrcode) from 1.5.0 to 1.5.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/qrcode)

---
updated-dependencies:
- dependency-name: "@types/qrcode"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps-dev): bump prettier from 2.8.8 to 3.0.3 in /console (#6476)

Bumps [prettier](https://github.com/prettier/prettier) from 2.8.8 to 3.0.3.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.8.8...3.0.3)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump socket.io-parser from 4.2.2 to 4.2.4 in /console (#6376)

Bumps [socket.io-parser](https://github.com/socketio/socket.io-parser) from 4.2.2 to 4.2.4.
- [Release notes](https://github.com/socketio/socket.io-parser/releases)
- [Changelog](https://github.com/socketio/socket.io-parser/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io-parser/compare/4.2.2...4.2.4)

---
updated-dependencies:
- dependency-name: socket.io-parser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump semver from 5.7.1 to 5.7.2 in /console (#6375)

Bumps [semver](https://github.com/npm/node-semver) from 5.7.1 to 5.7.2.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/v5.7.2/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v5.7.1...v5.7.2)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* lint

* node types

* use node 20

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This commit is contained in:
Max Peintner 2023-09-28 14:59:58 +02:00 committed by GitHub
parent e9148e96c7
commit 0a2e6dcfb3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
116 changed files with 527 additions and 296 deletions

View File

@ -11,31 +11,30 @@ permissions:
pull-requests: write
jobs:
core:
uses: ./.github/workflows/core.yml
with:
node_version: '18'
buf_version: 'latest'
go_version: '1.21'
node_version: "20"
buf_version: "latest"
go_version: "1.21"
console:
uses: ./.github/workflows/console.yml
with:
node_version: '18'
buf_version: 'latest'
node_version: "20"
buf_version: "latest"
version:
uses: ./.github/workflows/version.yml
with:
semantic_version: '19.0.2'
semantic_version: "19.0.2"
dry_run: true
compile:
needs: [core, console, version]
uses: ./.github/workflows/compile.yml
with:
go_version: '1.21'
go_version: "1.21"
core_cache_key: ${{ needs.core.outputs.cache_key }}
console_cache_key: ${{ needs.console.outputs.cache_key }}
core_cache_path: ${{ needs.core.outputs.cache_path }}
@ -46,7 +45,7 @@ jobs:
needs: core
uses: ./.github/workflows/core-unit-test.yml
with:
go_version: '1.21'
go_version: "1.21"
core_cache_key: ${{ needs.core.outputs.cache_key }}
core_cache_path: ${{ needs.core.outputs.cache_path }}
@ -54,7 +53,7 @@ jobs:
needs: core
uses: ./.github/workflows/core-integration-test.yml
with:
go_version: '1.21'
go_version: "1.21"
core_cache_key: ${{ needs.core.outputs.cache_key }}
core_cache_path: ${{ needs.core.outputs.cache_path }}
@ -62,10 +61,10 @@ jobs:
needs: [core, console]
uses: ./.github/workflows/lint.yml
with:
go_version: '1.21'
node_version: '18'
buf_version: 'latest'
go_lint_version: 'v1.53.2'
go_version: "1.21"
node_version: "18"
buf_version: "latest"
go_lint_version: "v1.53.2"
core_cache_key: ${{ needs.core.outputs.cache_key }}
core_cache_path: ${{ needs.core.outputs.cache_path }}
@ -77,7 +76,7 @@ jobs:
packages: write
if: ${{ github.event_name == 'workflow_dispatch' }}
with:
build_image_name: 'ghcr.io/zitadel/zitadel-build'
build_image_name: "ghcr.io/zitadel/zitadel-build"
e2e:
uses: ./.github/workflows/e2e.yml
@ -90,12 +89,13 @@ jobs:
contents: write
issues: write
pull-requests: write
needs: [version, core-unit-test, core-integration-test, lint, container, e2e]
needs:
[version, core-unit-test, core-integration-test, lint, container, e2e]
if: ${{ needs.version.outputs.published == 'true' && github.event_name == 'workflow_dispatch' }}
secrets:
GCR_JSON_KEY_BASE64: ${{ secrets.GCR_JSON_KEY_BASE64 }}
with:
build_image_name: ${{ needs.container.outputs.build_image }}
semantic_version: '19.0.2'
image_name: 'ghcr.io/zitadel/zitadel'
semantic_version: "19.0.2"
image_name: "ghcr.io/zitadel/zitadel"
google_image_name: "europe-docker.pkg.dev/zitadel-common/zitadel-repo/zitadel"

View File

@ -25,7 +25,7 @@
"@angular/router": "^16.2.0",
"@angular/service-worker": "^16.2.0",
"@ctrl/ngx-codemirror": "^6.1.0",
"@grpc/grpc-js": "^1.8.14",
"@grpc/grpc-js": "^1.9.3",
"@ngx-translate/core": "^14.0.0",
"angular-oauth2-oidc": "^15.0.1",
"angularx-qrcode": "^16.0.0",
@ -41,8 +41,8 @@
"libphonenumber-js": "^1.10.30",
"material-design-icons-iconfont": "^6.1.1",
"moment": "^2.29.4",
"opentype.js": "^1.3.4",
"ngx-color": "^9.0.0",
"opentype.js": "^1.3.4",
"rxjs": "~7.8.0",
"tinycolor2": "^1.6.0",
"tslib": "^2.4.1",
@ -62,17 +62,17 @@
"@bufbuild/buf": "^1.23.1",
"@types/file-saver": "^2.0.2",
"@types/google-protobuf": "^3.15.3",
"@types/jasmine": "~4.3.3",
"@types/jasmine": "~4.3.6",
"@types/jasminewd2": "~2.0.10",
"@types/jsonwebtoken": "^9.0.1",
"@types/node": "^18.15.11",
"@types/node": "^20.7.0",
"@types/opentype.js": "^1.3.4",
"@types/qrcode": "^1.5.0",
"@types/qrcode": "^1.5.2",
"@types/uuid": "^9.0.2",
"@typescript-eslint/eslint-plugin": "^5.59.11",
"@typescript-eslint/parser": "^5.60.1",
"codelyzer": "^6.0.2",
"eslint": "^8.44.0",
"eslint": "^8.50.0",
"jasmine-core": "~4.6.0",
"jasmine-spec-reporter": "~7.0.0",
"karma": "^6.4.2",
@ -80,7 +80,7 @@
"karma-coverage-istanbul-reporter": "^3.0.3",
"karma-jasmine": "^5.1.0",
"karma-jasmine-html-reporter": "^2.1.0",
"prettier": "^2.8.7",
"prettier": "^3.0.3",
"prettier-plugin-organize-imports": "^3.2.2",
"protractor": "~7.0.0",
"typescript": "^4.9.5"

View File

@ -9,7 +9,10 @@ import { GrpcAuthService } from '../services/grpc-auth.service';
providedIn: 'root',
})
export class UserGuard {
constructor(private authService: GrpcAuthService, private router: Router) {}
constructor(
private authService: GrpcAuthService,
private router: Router,
) {}
public canActivate(
route: ActivatedRouteSnapshot,

View File

@ -18,7 +18,11 @@ export class AccountsCardComponent implements OnInit {
public sessions: Session.AsObject[] = [];
public loadingUsers: boolean = false;
public UserState: any = UserState;
constructor(public authService: AuthenticationService, private router: Router, private userService: GrpcAuthService) {
constructor(
public authService: AuthenticationService,
private router: Router,
private userService: GrpcAuthService,
) {
this.userService
.listMyUserSessions()
.then((sessions) => {

View File

@ -22,7 +22,10 @@ export class AddKeyDialogComponent {
public type!: KeyType;
public dateControl: UntypedFormControl = new UntypedFormControl('', []);
constructor(public dialogRef: MatDialogRef<AddKeyDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {
constructor(
public dialogRef: MatDialogRef<AddKeyDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {
this.types = [KeyType.KEY_TYPE_JSON];
this.type = KeyType.KEY_TYPE_JSON;
const today = new Date();

View File

@ -14,7 +14,10 @@ export class AddMemberRolesDialogComponent {
public allRoles: string[] = [];
public selectedRoles: string[] = [];
constructor(public dialogRef: MatDialogRef<AddMemberRolesDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {
constructor(
public dialogRef: MatDialogRef<AddMemberRolesDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {
this.allRoles = Object.assign([], data.allRoles);
this.selectedRoles = Object.assign([], data.selectedRoles);
}

View File

@ -14,7 +14,10 @@ export class AddTokenDialogComponent {
public startDate: Date = new Date();
public dateControl: UntypedFormControl = new UntypedFormControl('', []);
constructor(public dialogRef: MatDialogRef<AddTokenDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {
constructor(
public dialogRef: MatDialogRef<AddTokenDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {
const today = new Date();
this.startDate.setDate(today.getDate() + 1);
}

View File

@ -17,7 +17,11 @@
outline: none;
color: white;
font-weight: bold;
font-family: 'Lato', -apple-system, BlinkMacSystemFont, sans-serif;
font-family:
'Lato',
-apple-system,
BlinkMacSystemFont,
sans-serif;
// box-shadow: 0 0 3px #0000001a;
img {

View File

@ -70,7 +70,10 @@ export class ChangesComponent implements OnInit, OnDestroy {
);
public changes!: ListChanges;
private destroyed$: Subject<void> = new Subject();
constructor(private mgmtUserService: ManagementService, private authUserService: GrpcAuthService) {}
constructor(
private mgmtUserService: ManagementService,
private authUserService: GrpcAuthService,
) {}
ngOnInit(): void {
this.init();

View File

@ -16,7 +16,10 @@ export class DisplayJsonDialogComponent {
public payload: any = '';
public opened$ = this.dialogRef.afterOpened().pipe(mapTo(true));
constructor(public dialogRef: MatDialogRef<DisplayJsonDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {
constructor(
public dialogRef: MatDialogRef<DisplayJsonDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {
this.event = data.event;
if ((data.event as Event) && data.event.payload) {
}

View File

@ -24,7 +24,10 @@ export class FilterOrgComponent extends FilterComponent implements OnInit {
public states: OrgState[] = [OrgState.ORG_STATE_ACTIVE, OrgState.ORG_STATE_INACTIVE, OrgState.ORG_STATE_REMOVED];
constructor(router: Router, protected override route: ActivatedRoute) {
constructor(
router: Router,
protected override route: ActivatedRoute,
) {
super(router, route);
}

View File

@ -64,7 +64,10 @@ export class FilterComponent implements OnDestroy {
this.destroy$.complete();
}
constructor(private router: Router, protected route: ActivatedRoute) {
constructor(
private router: Router,
protected route: ActivatedRoute,
) {
const changes$ = this.filterChanged.asObservable();
changes$.pipe(takeUntil(this.destroy$)).subscribe((queries) => {
const filters: Array<FilterSearchQueryAsObject | {}> | undefined = queries

View File

@ -14,7 +14,10 @@ import { InfoSectionType } from '../info-section/info-section.component';
export class InfoDialogComponent {
public confirm: string = '';
InfoSectionType: any = InfoSectionType;
constructor(public dialogRef: MatDialogRef<InfoDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {}
constructor(
public dialogRef: MatDialogRef<InfoDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {}
public closeDialog(): void {
this.dialogRef.close(false);

View File

@ -9,5 +9,8 @@ export const OVERLAY_DATA = new InjectionToken<any>('OVERLAY_DATA');
styleUrls: ['./info-overlay.component.scss'],
})
export class InfoOverlayComponent {
constructor(public workflowService: OverlayWorkflowService, @Inject(OVERLAY_DATA) public data: any) {}
constructor(
public workflowService: OverlayWorkflowService,
@Inject(OVERLAY_DATA) public data: any,
) {}
}

View File

@ -13,7 +13,10 @@ export class MembershipsDataSource extends DataSource<Membership.AsObject> {
private loadingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);
public loading$: Observable<boolean> = this.loadingSubject.asObservable();
constructor(private auth: GrpcAuthService, private service: ManagementService) {
constructor(
private auth: GrpcAuthService,
private service: ManagementService,
) {
super();
}

View File

@ -11,7 +11,10 @@ import {
})
export class NameDialogComponent {
public name: string = '';
constructor(public dialogRef: MatDialogRef<NameDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {
constructor(
public dialogRef: MatDialogRef<NameDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {
this.name = data.name ?? '';
}

View File

@ -30,7 +30,11 @@
position: relative;
background: none;
cursor: pointer;
font-family: 'Lato', -apple-system, BlinkMacSystemFont, sans-serif;
font-family:
'Lato',
-apple-system,
BlinkMacSystemFont,
sans-serif;
box-sizing: border-box;
height: 27px;

View File

@ -11,7 +11,10 @@ import { ONBOARDING_EVENTS } from 'src/app/utils/onboarding';
export class OnboardingComponent {
public actions = this.adminService.progressEvents;
constructor(public adminService: AdminService, public themeService: ThemeService) {
constructor(
public adminService: AdminService,
public themeService: ThemeService,
) {
this.adminService.loadEvents.next(ONBOARDING_EVENTS);
}
}

View File

@ -23,7 +23,10 @@ export class OrgContextComponent implements OnInit {
@Output() public closedCard: EventEmitter<void> = new EventEmitter();
@Output() public setOrg: EventEmitter<Org.AsObject> = new EventEmitter();
constructor(public authService: AuthenticationService, private auth: GrpcAuthService) {
constructor(
public authService: AuthenticationService,
private auth: GrpcAuthService,
) {
this.filterControl.valueChanges.pipe(debounceTime(500)).subscribe((value) => {
this.loadOrgs(value.trim().toLowerCase());
});

View File

@ -13,7 +13,10 @@ export class GeneralSettingsComponent implements OnInit {
public defaultLanguageOptions: string[] = [];
public loading: boolean = false;
constructor(private service: AdminService, private toast: ToastService) {}
constructor(
private service: AdminService,
private toast: ToastService,
) {}
ngOnInit(): void {
this.fetchData();

View File

@ -20,7 +20,10 @@ export class DialogAddTypeComponent {
public availableMfaTypes: Array<MultiFactorType | SecondFactorType> = [];
public newMfaType!: MultiFactorType | SecondFactorType;
constructor(public dialogRef: MatDialogRef<DialogAddTypeComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {
constructor(
public dialogRef: MatDialogRef<DialogAddTypeComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {
this.availableMfaTypes = data.types;
this.newMfaType = data.types && data.types[0] ? data.types[0] : undefined;
}

View File

@ -51,7 +51,11 @@ export class FactorTableComponent {
public PolicyComponentServiceType: any = PolicyComponentServiceType;
constructor(public translate: TranslateService, private toast: ToastService, private dialog: MatDialog) {}
constructor(
public translate: TranslateService,
private toast: ToastService,
private dialog: MatDialog,
) {}
public removeMfa(type: MultiFactorType | SecondFactorType): void {
const dialogRef = this.dialog.open(WarnDialogComponent, {

View File

@ -36,7 +36,11 @@ export class NotificationPolicyComponent implements OnInit {
public isDefault: boolean = false;
private hasNotificationPolicy: boolean = false;
constructor(private toast: ToastService, private injector: Injector, private dialog: MatDialog) {}
constructor(
private toast: ToastService,
private injector: Injector,
private dialog: MatDialog,
) {}
public ngOnInit(): void {
switch (this.serviceType) {

View File

@ -11,7 +11,10 @@ import {
})
export class PasswordDialogComponent {
public password: string = '';
constructor(public dialogRef: MatDialogRef<PasswordDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {}
constructor(
public dialogRef: MatDialogRef<PasswordDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {}
closeDialog(password: string = ''): void {
this.dialogRef.close(password);

View File

@ -27,7 +27,11 @@ export class PasswordComplexityPolicyComponent implements OnInit {
public loading: boolean = false;
public InfoSectionType: any = InfoSectionType;
constructor(private toast: ToastService, private injector: Injector, private dialog: MatDialog) {}
constructor(
private toast: ToastService,
private injector: Injector,
private dialog: MatDialog,
) {}
public ngOnInit(): void {
switch (this.serviceType) {

View File

@ -26,7 +26,11 @@ export class PasswordLockoutPolicyComponent implements OnInit {
public PolicyComponentServiceType: any = PolicyComponentServiceType;
public InfoSectionType: any = InfoSectionType;
constructor(private toast: ToastService, private injector: Injector, private dialog: MatDialog) {}
constructor(
private toast: ToastService,
private injector: Injector,
private dialog: MatDialog,
) {}
public ngOnInit(): void {
switch (this.serviceType) {

View File

@ -54,7 +54,9 @@
::ng-deep .chrome-picker {
border-radius: 0.5rem !important;
box-shadow: 0 0 1px #00000020, 0 1px 3px #00000020 !important;
box-shadow:
0 0 1px #00000020,
0 1px 3px #00000020 !important;
}
::ng-deep .saturation {

View File

@ -29,7 +29,11 @@ export class SecretGeneratorComponent implements OnInit {
SecretGeneratorType.SECRET_GENERATOR_TYPE_OTP_EMAIL,
];
constructor(private service: AdminService, private toast: ToastService, private dialog: MatDialog) {}
constructor(
private service: AdminService,
private toast: ToastService,
private dialog: MatDialog,
) {}
ngOnInit(): void {
this.fetchData();

View File

@ -20,7 +20,10 @@ export class SecurityPolicyComponent implements OnInit {
@Input() public originsControl: UntypedFormControl = new UntypedFormControl({ value: [], disabled: true });
constructor(private service: AdminService, private toast: ToastService) {}
constructor(
private service: AdminService,
private toast: ToastService,
) {}
ngOnInit(): void {
this.fetchData();

View File

@ -22,7 +22,10 @@ export class SearchOrgAutocompleteComponent implements OnInit, OnDestroy {
@Output() public selectionChanged: EventEmitter<Org.AsObject> = new EventEmitter();
private unsubscribed$: Subject<void> = new Subject();
constructor(public authService: AuthenticationService, private auth: GrpcAuthService) {
constructor(
public authService: AuthenticationService,
private auth: GrpcAuthService,
) {
this.myControl.valueChanges
.pipe(
takeUntil(this.unsubscribed$),

View File

@ -57,7 +57,11 @@ export class SearchUserAutocompleteComponent implements OnInit, AfterContentChec
@Input() public singleOutput: boolean = false;
private unsubscribed$: Subject<void> = new Subject();
constructor(private userService: ManagementService, private toast: ToastService, private cdref: ChangeDetectorRef) {}
constructor(
private userService: ManagementService,
private toast: ToastService,
private cdref: ChangeDetectorRef,
) {}
public ngOnInit(): void {
if (this.target === UserTarget.EXTERNAL) {

View File

@ -240,7 +240,10 @@
box-sizing: border-box;
border-radius: 1rem;
border: 1px solid $border-color;
box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);
box-shadow:
0 5px 5px -3px rgba(0, 0, 0, 0.2),
0 8px 10px 1px rgba(0, 0, 0, 0.14),
0 3px 14px 2px rgba(0, 0, 0, 0.12);
}
.cdk-drag-placeholder {

View File

@ -16,7 +16,10 @@ export class ShowKeyDialogComponent {
public keyResponse!: AddMachineKeyResponse.AsObject | AddAppKeyResponse.AsObject;
public InfoSectionType: any = InfoSectionType;
constructor(public dialogRef: MatDialogRef<ShowKeyDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {
constructor(
public dialogRef: MatDialogRef<ShowKeyDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {
this.keyResponse = data.key;
}

View File

@ -17,7 +17,10 @@ export class ShowTokenDialogComponent {
public copied: string = '';
InfoSectionType: any = InfoSectionType;
constructor(public dialogRef: MatDialogRef<ShowTokenDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {
constructor(
public dialogRef: MatDialogRef<ShowTokenDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {
this.tokenResponse = data.token;
}

View File

@ -30,7 +30,10 @@ export class SidenavComponent implements ControlValueAccessor, OnInit {
@Input() public queryParam: string = '';
public PolicyComponentServiceType: any = PolicyComponentServiceType;
constructor(private router: Router, private route: ActivatedRoute) {}
constructor(
private router: Router,
private route: ActivatedRoute,
) {}
ngOnInit(): void {
if (!this.value) {

View File

@ -16,7 +16,10 @@ export class UserGrantRoleDialogComponent {
public selectedRoleKeys: string[] = [];
constructor(public dialogRef: MatDialogRef<UserGrantRoleDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {
constructor(
public dialogRef: MatDialogRef<UserGrantRoleDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {
this.projectId = data.projectId;
this.grantId = data.grantId;
this.selectedRoleKeysList = data.selectedRoleKeysList;

View File

@ -31,7 +31,10 @@ export class UserGrantsDataSource extends DataSource<UserGrantAsObject> {
private loadingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);
public loading$: Observable<boolean> = this.loadingSubject.asObservable();
constructor(private authService: GrpcAuthService, private userService: ManagementService) {
constructor(
private authService: GrpcAuthService,
private userService: ManagementService,
) {
super();
}

View File

@ -14,7 +14,10 @@ import { InfoSectionType } from '../info-section/info-section.component';
export class WarnDialogComponent {
public confirm: string = '';
InfoSectionType: any = InfoSectionType;
constructor(public dialogRef: MatDialogRef<WarnDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {}
constructor(
public dialogRef: MatDialogRef<WarnDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {}
public closeDialog(): void {
this.dialogRef.close(false);

View File

@ -150,7 +150,10 @@
border-radius: 0.5rem;
padding: 0 0.5rem;
background-color: $primary-color;
box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);
box-shadow:
0 5px 5px -3px rgba(0, 0, 0, 0.2),
0 8px 10px 1px rgba(0, 0, 0, 0.14),
0 3px 14px 2px rgba(0, 0, 0, 0.12);
i {
margin-right: 0.5rem;

View File

@ -13,7 +13,10 @@ export class AppCreateComponent {
public projectId: string = '';
public ProjectAutocompleteType: any = ProjectAutocompleteType;
constructor(private router: Router, breadcrumbService: BreadcrumbService) {
constructor(
private router: Router,
breadcrumbService: BreadcrumbService,
) {
const bread: Breadcrumb = {
type: BreadcrumbType.ORG,
routerLink: ['/org'],

View File

@ -11,7 +11,10 @@ import {
})
export class AddDomainDialogComponent {
public newdomain: string = '';
constructor(public dialogRef: MatDialogRef<AddDomainDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {}
constructor(
public dialogRef: MatDialogRef<AddDomainDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {}
public closeDialog(): void {
this.dialogRef.close(false);

View File

@ -21,7 +21,11 @@ export class HomeComponent {
public dark: boolean = true;
constructor(public authService: GrpcAuthService, breadcrumbService: BreadcrumbService, public themeService: ThemeService) {
constructor(
public authService: GrpcAuthService,
breadcrumbService: BreadcrumbService,
public themeService: ThemeService,
) {
const bread: Breadcrumb = {
type: BreadcrumbType.ORG,
routerLink: ['/org'],

View File

@ -23,7 +23,10 @@ export class IamViewsComponent implements AfterViewInit {
private loadingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);
public loading$: Observable<boolean> = this.loadingSubject.asObservable();
constructor(private adminService: AdminService, private breadcrumbService: BreadcrumbService) {
constructor(
private adminService: AdminService,
private breadcrumbService: BreadcrumbService,
) {
this.loadViews();
const breadcrumbs = [

View File

@ -58,7 +58,11 @@ export class InstanceSettingsComponent implements OnInit, OnDestroy {
public settingsList: SidenavSetting[] = [];
private destroy$: Subject<void> = new Subject();
constructor(breadcrumbService: BreadcrumbService, activatedRoute: ActivatedRoute, public authService: GrpcAuthService) {
constructor(
breadcrumbService: BreadcrumbService,
activatedRoute: ActivatedRoute,
public authService: GrpcAuthService,
) {
const breadcrumbs = [
new Breadcrumb({
type: BreadcrumbType.INSTANCE,

View File

@ -43,7 +43,11 @@ export class OrgSettingsComponent implements OnInit {
public settingsList: SidenavSetting[] = [];
constructor(breadcrumbService: BreadcrumbService, activatedRoute: ActivatedRoute, public authService: GrpcAuthService) {
constructor(
breadcrumbService: BreadcrumbService,
activatedRoute: ActivatedRoute,
public authService: GrpcAuthService,
) {
const breadcrumbs = [
new Breadcrumb({
type: BreadcrumbType.ORG,

View File

@ -11,7 +11,10 @@ import {
})
export class AuthMethodDialogComponent {
public authmethod: string = '';
constructor(public dialogRef: MatDialogRef<AuthMethodDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {
constructor(
public dialogRef: MatDialogRef<AuthMethodDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {
this.authmethod = data.initialAuthMethod;
}

View File

@ -11,7 +11,10 @@ import {
})
export class AppSecretDialogComponent {
public copied: string = '';
constructor(public dialogRef: MatDialogRef<AppSecretDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {}
constructor(
public dialogRef: MatDialogRef<AppSecretDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {}
public closeDialog(): void {
this.dialogRef.close(false);

View File

@ -17,7 +17,10 @@ export class ProjectGrantsDataSource extends DataSource<GrantedProject.AsObject>
private loadingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);
public loading$: Observable<boolean> = this.loadingSubject.asObservable();
constructor(private mgmtService: ManagementService, private toast: ToastService) {
constructor(
private mgmtService: ManagementService,
private toast: ToastService,
) {
super();
}

View File

@ -39,7 +39,11 @@ export class AuthPasswordlessComponent implements OnInit, OnDestroy {
public AuthFactorState: any = AuthFactorState;
public error: string = '';
constructor(private service: GrpcAuthService, private toast: ToastService, private dialog: MatDialog) {}
constructor(
private service: GrpcAuthService,
private toast: ToastService,
private dialog: MatDialog,
) {}
public ngOnInit(): void {
this.getPasswordless();

View File

@ -42,7 +42,11 @@ export class AuthUserMfaComponent implements OnInit, OnDestroy {
public otpSmsDisabled$ = new BehaviorSubject<boolean>(true);
public otpEmailDisabled$ = new BehaviorSubject<boolean>(true);
constructor(private service: GrpcAuthService, private toast: ToastService, private dialog: MatDialog) {}
constructor(
private service: GrpcAuthService,
private toast: ToastService,
private dialog: MatDialog,
) {}
public ngOnInit(): void {
this.getMFAs();

View File

@ -11,7 +11,10 @@ import {
})
export class CodeDialogComponent {
public code: string = '';
constructor(public dialogRef: MatDialogRef<CodeDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {}
constructor(
public dialogRef: MatDialogRef<CodeDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {}
closeDialog(code: string = ''): void {
this.dialogRef.close(code);

View File

@ -11,7 +11,10 @@ import {
})
export class ResendEmailDialogComponent {
public email: string = '';
constructor(public dialogRef: MatDialogRef<ResendEmailDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {
constructor(
public dialogRef: MatDialogRef<ResendEmailDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {
if (data.email) {
this.email = data.email;
}

View File

@ -26,7 +26,10 @@ export class ContactComponent {
public UserState: any = UserState;
public EditDialogType: any = EditDialogType;
constructor(private dialog: MatDialog, private authService: GrpcAuthService) {}
constructor(
private dialog: MatDialog,
private authService: GrpcAuthService,
) {}
async emitDeletePhone(): Promise<void> {
const { resultList } = await this.authService.listMyMultiFactors();

View File

@ -29,7 +29,10 @@ export class DetailFormComponent implements OnDestroy, OnChanges {
private sub: Subscription = new Subscription();
constructor(private fb: UntypedFormBuilder, private dialog: MatDialog) {
constructor(
private fb: UntypedFormBuilder,
private dialog: MatDialog,
) {
this.profileForm = this.fb.group({
userName: [{ value: '', disabled: true }, [requiredValidator]],
firstName: [{ value: '', disabled: this.disabled }, requiredValidator],

View File

@ -35,7 +35,10 @@ export class ExternalIdpsComponent implements OnInit, OnDestroy {
'actions',
];
constructor(private toast: ToastService, private dialog: MatDialog) {}
constructor(
private toast: ToastService,
private dialog: MatDialog,
) {}
ngOnInit(): void {
this.getData(10, 0);

View File

@ -11,7 +11,10 @@ import {
})
export class MachineSecretDialogComponent {
public copied: string = '';
constructor(public dialogRef: MatDialogRef<MachineSecretDialogComponent>, @Inject(MAT_DIALOG_DATA) public data: any) {}
constructor(
public dialogRef: MatDialogRef<MachineSecretDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any,
) {}
public closeDialog(): void {
this.dialogRef.close(false);

View File

@ -37,7 +37,11 @@ export class PasswordlessComponent implements OnInit, OnDestroy {
public AuthFactorState: any = AuthFactorState;
public error: string = '';
constructor(private service: ManagementService, private toast: ToastService, private dialog: MatDialog) {}
constructor(
private service: ManagementService,
private toast: ToastService,
private dialog: MatDialog,
) {}
public ngOnInit(): void {
this.getPasswordless();

View File

@ -32,7 +32,11 @@ export class UserMfaComponent implements OnInit, OnDestroy {
public AuthFactorState: any = AuthFactorState;
public error: string = '';
constructor(private mgmtUserService: ManagementService, private dialog: MatDialog, private toast: ToastService) {}
constructor(
private mgmtUserService: ManagementService,
private dialog: MatDialog,
private toast: ToastService,
) {}
public ngOnInit(): void {
this.getMFAs();

View File

@ -14,7 +14,11 @@ export class UserListComponent {
public Type: any = Type;
public type: Type = Type.TYPE_HUMAN;
constructor(public translate: TranslateService, activatedRoute: ActivatedRoute, breadcrumbService: BreadcrumbService) {
constructor(
public translate: TranslateService,
activatedRoute: ActivatedRoute,
breadcrumbService: BreadcrumbService,
) {
activatedRoute.queryParams.pipe(take(1)).subscribe((params: Params) => {
const { type } = params;
if (type && type === 'human') {

View File

@ -390,7 +390,10 @@ export class AdminService {
public progressTotal: BehaviorSubject<number> = new BehaviorSubject(0);
public progressAllDone: BehaviorSubject<boolean> = new BehaviorSubject(true);
constructor(private readonly grpcService: GrpcService, private storageService: StorageService) {
constructor(
private readonly grpcService: GrpcService,
private storageService: StorageService,
) {
this.progressEvents$.subscribe(this.progressEvents);
this.hideOnboarding =

View File

@ -71,7 +71,11 @@ export const ENDPOINT = {
})
export class AssetService {
private accessToken: string = '';
constructor(private envService: EnvironmentService, private http: HttpClient, private storageService: StorageService) {
constructor(
private envService: EnvironmentService,
private http: HttpClient,
private storageService: StorageService,
) {
const aT = this.storageService.getItem(accessTokenStorageKey);
if (aT) {
this.accessToken = aT;

View File

@ -12,7 +12,10 @@ export class AuthenticationService {
private _authenticated: boolean = false;
private readonly _authenticationChanged: BehaviorSubject<boolean> = new BehaviorSubject(this.authenticated);
constructor(private oauthService: OAuthService, private statehandler: StatehandlerService) {}
constructor(
private oauthService: OAuthService,
private statehandler: StatehandlerService,
) {}
public initConfig(data: AuthConfig): void {
this.authConfig = data;

View File

@ -36,7 +36,10 @@ export class EnvironmentService {
private environment$: Observable<Environment>;
private wellKnown$: Observable<WellKnown>;
constructor(private http: HttpClient, private exhaustedSvc: ExhaustedService) {
constructor(
private http: HttpClient,
private exhaustedSvc: ExhaustedService,
) {
this.environment$ = this.createEnvironment();
this.wellKnown$ = this.createWellKnown(this.environment$);
}

View File

@ -8,7 +8,10 @@ import { ExhaustedService } from '../exhausted.service';
*/
@Injectable({ providedIn: 'root' })
export class ExhaustedGrpcInterceptor<TReq = unknown, TResp = unknown> implements UnaryInterceptor<TReq, TResp> {
constructor(private exhaustedSvc: ExhaustedService, private envSvc: EnvironmentService) {}
constructor(
private exhaustedSvc: ExhaustedService,
private envSvc: EnvironmentService,
) {}
public async intercept(
request: Request<TReq, TResp>,

View File

@ -9,7 +9,10 @@ import { ExhaustedService } from '../exhausted.service';
*/
@Injectable()
export class ExhaustedHttpInterceptor implements HttpInterceptor {
constructor(private exhaustedSvc: ExhaustedService, private envSvc: EnvironmentService) {}
constructor(
private exhaustedSvc: ExhaustedService,
private envSvc: EnvironmentService,
) {}
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
return next.handle(req).pipe(

View File

@ -8,7 +8,10 @@ import { NavigationEnd, Router } from '@angular/router';
export class NavigationService {
private history: string[] = [];
constructor(private router: Router, private location: Location) {
constructor(
private router: Router,
private location: Location,
) {
this.router.events.subscribe((event) => {
if (event instanceof NavigationEnd) {
this.history.push(event.urlAfterRedirects);

View File

@ -39,7 +39,11 @@ export class OverlayWorkflowService implements OnDestroy {
public openRef: CnslOverlayRef | null = null;
public highlightedIds: { [id: string]: number } = {};
public callback: Function | null = null;
constructor(private mediaMatcher: MediaMatcher, overlayService: OverlayService, private authService: GrpcAuthService) {
constructor(
private mediaMatcher: MediaMatcher,
overlayService: OverlayService,
private authService: GrpcAuthService,
) {
this.currentWorkflow$.pipe(takeUntil(this.destroy$)).subscribe((workflow) => {
if (this.openRef) {
this.openRef.close();

View File

@ -20,7 +20,10 @@ const DEFAULT_CONFIG: Partial<InfoOverlayConfig> = {
providedIn: 'root',
})
export class OverlayService {
constructor(private overlay: Overlay, private injector: Injector) {}
constructor(
private overlay: Overlay,
private injector: Injector,
) {}
public open(overlay: CnslOverlay) {
const dialogConfig: InfoOverlayConfig = { ...DEFAULT_CONFIG, ...overlay };

View File

@ -10,7 +10,10 @@ export abstract class StatehandlerProcessorService {
@Injectable()
export class StatehandlerProcessorServiceImpl implements StatehandlerProcessorService {
constructor(private location: Location, private router: Router) {}
constructor(
private location: Location,
private router: Router,
) {}
public createState(url: string): string {
const externalUrl = url;

View File

@ -16,7 +16,11 @@ export class StatehandlerServiceImpl implements StatehandlerService, OnDestroy {
private events?: Observable<string>;
private unsubscribe$: Subject<void> = new Subject();
constructor(oauthService: OAuthService, private injector: Injector, private processor: StatehandlerProcessorService) {
constructor(
oauthService: OAuthService,
private injector: Injector,
private processor: StatehandlerProcessorService,
) {
oauthService.events
.pipe(
filter((event) => event.type === 'token_received'),

View File

@ -15,7 +15,10 @@ export class ToastService {
horizontalPosition: MatSnackBarHorizontalPosition = 'end';
verticalPosition: MatSnackBarVerticalPosition = 'top';
constructor(private snackBar: MatSnackBar, private translate: TranslateService) {}
constructor(
private snackBar: MatSnackBar,
private translate: TranslateService,
) {}
public showInfo(message: string, i18nkey: boolean = false): void {
if (i18nkey) {

View File

@ -6,7 +6,10 @@ import { SwUpdate } from '@angular/service-worker';
providedIn: 'root',
})
export class UpdateService {
constructor(private swUpdate: SwUpdate, snackbar: MatSnackBar) {
constructor(
private swUpdate: SwUpdate,
snackbar: MatSnackBar,
) {
this.swUpdate.available.subscribe((evt) => {
const snack = snackbar.open('Update Available', 'Reload');

View File

@ -5831,9 +5831,12 @@ readers do not read off random characters that represent icons */
font-weight: normal;
font-display: auto;
src: url('../fonts/la-brands-400.eot');
src: url('../fonts/la-brands-400.eot?#iefix') format('embedded-opentype'),
url('../fonts/la-brands-400.woff2') format('woff2'), url('../fonts/la-brands-400.woff') format('woff'),
url('../fonts/la-brands-400.ttf') format('truetype'), url('../fonts/la-brands-400.svg#lineawesome') format('svg');
src:
url('../fonts/la-brands-400.eot?#iefix') format('embedded-opentype'),
url('../fonts/la-brands-400.woff2') format('woff2'),
url('../fonts/la-brands-400.woff') format('woff'),
url('../fonts/la-brands-400.ttf') format('truetype'),
url('../fonts/la-brands-400.svg#lineawesome') format('svg');
}
.lab {
@ -5845,9 +5848,12 @@ readers do not read off random characters that represent icons */
font-weight: 400;
font-display: auto;
src: url('../fonts/la-regular-400.eot');
src: url('../fonts/la-regular-400.eot?#iefix') format('embedded-opentype'),
url('../fonts/la-regular-400.woff2') format('woff2'), url('../fonts/la-regular-400.woff') format('woff'),
url('../fonts/la-regular-400.ttf') format('truetype'), url('../fonts/la-regular-400.svg#lineawesome') format('svg');
src:
url('../fonts/la-regular-400.eot?#iefix') format('embedded-opentype'),
url('../fonts/la-regular-400.woff2') format('woff2'),
url('../fonts/la-regular-400.woff') format('woff'),
url('../fonts/la-regular-400.ttf') format('truetype'),
url('../fonts/la-regular-400.svg#lineawesome') format('svg');
}
.lar {
@ -5860,9 +5866,12 @@ readers do not read off random characters that represent icons */
font-weight: 900;
font-display: auto;
src: url('../fonts/la-solid-900.eot');
src: url('../fonts/la-solid-900.eot?#iefix') format('embedded-opentype'),
url('../fonts/la-solid-900.woff2') format('woff2'), url('../fonts/la-solid-900.woff') format('woff'),
url('../fonts/la-solid-900.ttf') format('truetype'), url('../fonts/la-solid-900.svg#lineawesome') format('svg');
src:
url('../fonts/la-solid-900.eot?#iefix') format('embedded-opentype'),
url('../fonts/la-solid-900.woff2') format('woff2'),
url('../fonts/la-solid-900.woff') format('woff'),
url('../fonts/la-solid-900.ttf') format('truetype'),
url('../fonts/la-solid-900.svg#lineawesome') format('svg');
}
.la,

View File

@ -4390,8 +4390,11 @@
font-weight: 400;
font-display: auto;
src: url(../fonts/la-brands-400.eot);
src: url(../fonts/la-brands-400.eot?#iefix) format('embedded-opentype'), url(../fonts/la-brands-400.woff2) format('woff2'),
url(../fonts/la-brands-400.woff) format('woff'), url(../fonts/la-brands-400.ttf) format('truetype'),
src:
url(../fonts/la-brands-400.eot?#iefix) format('embedded-opentype'),
url(../fonts/la-brands-400.woff2) format('woff2'),
url(../fonts/la-brands-400.woff) format('woff'),
url(../fonts/la-brands-400.ttf) format('truetype'),
url(../fonts/la-brands-400.svg#lineawesome) format('svg');
}
.lab {
@ -4403,9 +4406,12 @@
font-weight: 400;
font-display: auto;
src: url(../fonts/la-regular-400.eot);
src: url(../fonts/la-regular-400.eot?#iefix) format('embedded-opentype'),
url(../fonts/la-regular-400.woff2) format('woff2'), url(../fonts/la-regular-400.woff) format('woff'),
url(../fonts/la-regular-400.ttf) format('truetype'), url(../fonts/la-regular-400.svg#lineawesome) format('svg');
src:
url(../fonts/la-regular-400.eot?#iefix) format('embedded-opentype'),
url(../fonts/la-regular-400.woff2) format('woff2'),
url(../fonts/la-regular-400.woff) format('woff'),
url(../fonts/la-regular-400.ttf) format('truetype'),
url(../fonts/la-regular-400.svg#lineawesome) format('svg');
}
.lar {
font-family: 'Line Awesome Free';
@ -4417,8 +4423,11 @@
font-weight: 900;
font-display: auto;
src: url(../fonts/la-solid-900.eot);
src: url(../fonts/la-solid-900.eot?#iefix) format('embedded-opentype'), url(../fonts/la-solid-900.woff2) format('woff2'),
url(../fonts/la-solid-900.woff) format('woff'), url(../fonts/la-solid-900.ttf) format('truetype'),
src:
url(../fonts/la-solid-900.eot?#iefix) format('embedded-opentype'),
url(../fonts/la-solid-900.woff2) format('woff2'),
url(../fonts/la-solid-900.woff) format('woff'),
url(../fonts/la-solid-900.ttf) format('truetype'),
url(../fonts/la-solid-900.svg#lineawesome) format('svg');
}
.la,

View File

@ -1,4 +1,4 @@
<!DOCTYPE html>
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />

View File

@ -569,8 +569,19 @@ body {
body {
margin: 0;
font-family: 'Lato', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans',
'Droid Sans', 'Helvetica Neue', sans-serif;
font-family:
'Lato',
-apple-system,
BlinkMacSystemFont,
'Segoe UI',
'Roboto',
'Oxygen',
'Ubuntu',
'Cantarell',
'Fira Sans',
'Droid Sans',
'Helvetica Neue',
sans-serif;
}
h1 {

View File

@ -25,7 +25,9 @@
border-radius: 4px;
height: 40px;
padding: 10px;
transition: border-color 0.15s ease-in-out, background-color 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),
transition:
border-color 0.15s ease-in-out,
background-color 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),
color 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
width: 100%;
color: mat.get-color-from-palette($foreground, text);

View File

@ -2026,10 +2026,10 @@
resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz"
integrity sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==
"@eslint/eslintrc@^2.1.1":
version "2.1.1"
resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz"
integrity sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==
"@eslint/eslintrc@^2.1.2":
version "2.1.2"
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.2.tgz#c6936b4b328c64496692f76944e755738be62396"
integrity sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==
dependencies:
ajv "^6.12.4"
debug "^4.3.2"
@ -2041,39 +2041,38 @@
minimatch "^3.1.2"
strip-json-comments "^3.1.1"
"@eslint/js@^8.46.0":
version "8.46.0"
resolved "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz"
integrity sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==
"@eslint/js@8.50.0":
version "8.50.0"
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.50.0.tgz#9e93b850f0f3fa35f5fa59adfd03adae8488e484"
integrity sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==
"@gar/promisify@^1.1.3":
version "1.1.3"
resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz"
integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==
"@grpc/grpc-js@^1.8.14":
version "1.8.14"
resolved "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.8.14.tgz"
integrity sha512-w84maJ6CKl5aApCMzFll0hxtFNT6or9WwMslobKaqWUEf1K+zhlL43bSQhFreyYWIWR+Z0xnVFC1KtLm4ZpM/A==
"@grpc/grpc-js@^1.9.3":
version "1.9.3"
resolved "https://registry.yarnpkg.com/@grpc/grpc-js/-/grpc-js-1.9.3.tgz#811cc49966ab7ed96efa31d213e80d671fd13839"
integrity sha512-b8iWtdrYIeT5fdZdS4Br/6h/kuk0PW5EVBUGk1amSbrpL8DlktJD43CdcCWwRdd6+jgwHhADSbL9CsNnm6EUPA==
dependencies:
"@grpc/proto-loader" "^0.7.0"
"@grpc/proto-loader" "^0.7.8"
"@types/node" ">=12.12.47"
"@grpc/proto-loader@^0.7.0":
version "0.7.7"
resolved "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.7.tgz"
integrity sha512-1TIeXOi8TuSCQprPItwoMymZXxWT0CPxUhkrkeCUH+D8U7QDwQ6b7SUz2MaLuWM2llT+J/TVFLmQI5KtML3BhQ==
"@grpc/proto-loader@^0.7.8":
version "0.7.10"
resolved "https://registry.yarnpkg.com/@grpc/proto-loader/-/proto-loader-0.7.10.tgz#6bf26742b1b54d0a473067743da5d3189d06d720"
integrity sha512-CAqDfoaQ8ykFd9zqBDn4k6iWT9loLAlc2ETmDFS9JCD70gDcnA4L3AFEo2iV7KyAtAAHFW9ftq1Fz+Vsgq80RQ==
dependencies:
"@types/long" "^4.0.1"
lodash.camelcase "^4.3.0"
long "^4.0.0"
protobufjs "^7.0.0"
long "^5.0.0"
protobufjs "^7.2.4"
yargs "^17.7.2"
"@humanwhocodes/config-array@^0.11.10":
version "0.11.10"
resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz"
integrity sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==
"@humanwhocodes/config-array@^0.11.11":
version "0.11.11"
resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.11.tgz#88a04c570dbbc7dd943e4712429c3df09bc32844"
integrity sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==
dependencies:
"@humanwhocodes/object-schema" "^1.2.1"
debug "^4.1.1"
@ -3274,15 +3273,10 @@
dependencies:
"@types/node" "*"
"@types/jasmine@*":
version "4.3.1"
resolved "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.3.1.tgz"
integrity sha512-Vu8l+UGcshYmV1VWwULgnV/2RDbBaO6i2Ptx7nd//oJPIZGhoI1YLST4VKagD2Pq/Bc2/7zvtvhM7F3p4SN7kQ==
"@types/jasmine@~4.3.3":
version "4.3.5"
resolved "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.3.5.tgz"
integrity sha512-9YHUdvuNDDRJYXZwHqSsO72Ok0vmqoJbNn73ttyITQp/VA60SarnZ+MPLD37rJAhVoKp+9BWOvJP5tHIRfZylQ==
"@types/jasmine@*", "@types/jasmine@~4.3.6":
version "4.3.6"
resolved "https://registry.yarnpkg.com/@types/jasmine/-/jasmine-4.3.6.tgz#d9855fa9f808138488784610f888046bb9a59aff"
integrity sha512-3N0FpQTeiWjm+Oo1WUYWguUS7E6JLceiGTriFrG8k5PU7zRLJCzLcWURU3wjMbZGS//a2/LgjsnO3QxIlwxt9g==
"@types/jasminewd2@~2.0.10":
version "2.0.10"
@ -3303,11 +3297,6 @@
dependencies:
"@types/node" "*"
"@types/long@^4.0.1":
version "4.0.2"
resolved "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz"
integrity sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==
"@types/mime@*":
version "3.0.1"
resolved "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz"
@ -3319,14 +3308,14 @@
integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==
"@types/node@*", "@types/node@>=10.0.0", "@types/node@>=12.12.47", "@types/node@>=13.7.0":
version "20.1.5"
resolved "https://registry.npmjs.org/@types/node/-/node-20.1.5.tgz"
integrity sha512-IvGD1CD/nego63ySR7vrAKEX3AJTcmrAN2kn+/sDNLi1Ff5kBzDeEdqWDplK+0HAEoLYej137Sk0cUU8OLOlMg==
version "20.6.5"
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.6.5.tgz#4c6a79adf59a8e8193ac87a0e522605b16587258"
integrity sha512-2qGq5LAOTh9izcc0+F+dToFigBWiK1phKPt7rNhOqJSr35y8rlIBjDwGtFSgAI6MGIhjwOVNSQZVdJsZJ2uR1w==
"@types/node@^18.15.11":
version "18.16.10"
resolved "https://registry.npmjs.org/@types/node/-/node-18.16.10.tgz"
integrity sha512-sMo3EngB6QkMBlB9rBe1lFdKSLqljyWPPWv6/FzSxh/IDlyVWSzE9RiF4eAuerQHybrWdqBgAGb03PM89qOasA==
"@types/node@^20.7.0":
version "20.7.0"
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.7.0.tgz#c03de4572f114a940bc2ca909a33ddb2b925e470"
integrity sha512-zI22/pJW2wUZOVyguFaUL1HABdmSVxpXrzIqkjsHmyUjNhPoWM1CKfvVuXfetHhIok4RY573cqS0mZ1SJEnoTg==
"@types/opentype.js@^1.3.4":
version "1.3.4"
@ -3338,13 +3327,20 @@
resolved "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz"
integrity sha512-qYi3YV9inU/REEfxwVcGZzbS3KG/Xs90lv0Pr+lDtuVjBPGd1A+eciXzVSaRvLify132BfcvhvEjeVahrUl0Ug==
"@types/qrcode@1.5.0", "@types/qrcode@^1.5.0":
"@types/qrcode@1.5.0":
version "1.5.0"
resolved "https://registry.npmjs.org/@types/qrcode/-/qrcode-1.5.0.tgz"
integrity sha512-x5ilHXRxUPIMfjtM+1vf/GPTRWZ81nqscursm5gMznJeK9M0YnZ1c3bEvRLQ0zSSgedLx1J6MGL231ObQGGhaA==
dependencies:
"@types/node" "*"
"@types/qrcode@^1.5.2":
version "1.5.2"
resolved "https://registry.yarnpkg.com/@types/qrcode/-/qrcode-1.5.2.tgz#27633439b7fbe88cc3043b29c8e7612a8a789e15"
integrity sha512-W4KDz75m7rJjFbyCctzCtRzZUj+PrUHV+YjqDp50sSRezTbrtEAIq2iTzC6lISARl3qw+8IlcCyljdcVJE0Wug==
dependencies:
"@types/node" "*"
"@types/qs@*":
version "6.9.7"
resolved "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz"
@ -5384,15 +5380,7 @@ eslint-scope@5.1.1, eslint-scope@^5.1.1:
esrecurse "^4.3.0"
estraverse "^4.1.1"
eslint-scope@^7.0.0:
version "7.2.0"
resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz"
integrity sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==
dependencies:
esrecurse "^4.3.0"
estraverse "^5.2.0"
eslint-scope@^7.2.2:
eslint-scope@^7.0.0, eslint-scope@^7.2.2:
version "7.2.2"
resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz"
integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==
@ -5400,21 +5388,21 @@ eslint-scope@^7.2.2:
esrecurse "^4.3.0"
estraverse "^5.2.0"
eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.2:
version "3.4.2"
resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz"
integrity sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==
eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3:
version "3.4.3"
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800"
integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
eslint@^8.44.0:
version "8.46.0"
resolved "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz"
integrity sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==
eslint@^8.50.0:
version "8.50.0"
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.50.0.tgz#2ae6015fee0240fcd3f83e1e25df0287f487d6b2"
integrity sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==
dependencies:
"@eslint-community/eslint-utils" "^4.2.0"
"@eslint-community/regexpp" "^4.6.1"
"@eslint/eslintrc" "^2.1.1"
"@eslint/js" "^8.46.0"
"@humanwhocodes/config-array" "^0.11.10"
"@eslint/eslintrc" "^2.1.2"
"@eslint/js" "8.50.0"
"@humanwhocodes/config-array" "^0.11.11"
"@humanwhocodes/module-importer" "^1.0.1"
"@nodelib/fs.walk" "^1.2.8"
ajv "^6.12.4"
@ -5424,7 +5412,7 @@ eslint@^8.44.0:
doctrine "^3.0.0"
escape-string-regexp "^4.0.0"
eslint-scope "^7.2.2"
eslint-visitor-keys "^3.4.2"
eslint-visitor-keys "^3.4.3"
espree "^9.6.1"
esquery "^1.4.2"
esutils "^2.0.2"
@ -7266,11 +7254,6 @@ log4js@^6.4.1:
rfdc "^1.3.0"
streamroller "^3.1.5"
long@^4.0.0:
version "4.0.0"
resolved "https://registry.npmjs.org/long/-/long-4.0.0.tgz"
integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==
long@^5.0.0:
version "5.2.3"
resolved "https://registry.npmjs.org/long/-/long-5.2.3.tgz"
@ -8349,10 +8332,10 @@ prettier-plugin-organize-imports@^3.2.2:
resolved "https://registry.npmjs.org/prettier-plugin-organize-imports/-/prettier-plugin-organize-imports-3.2.2.tgz"
integrity sha512-e97lE6odGSiHonHJMTYC0q0iLXQyw0u5z/PJpvP/3vRy6/Zi9kLBwFAbEGjDzIowpjQv8b+J04PDamoUSQbzGA==
prettier@^2.8.7:
version "2.8.8"
resolved "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz"
integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==
prettier@^3.0.3:
version "3.0.3"
resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.0.3.tgz#432a51f7ba422d1469096c0fdc28e235db8f9643"
integrity sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==
pretty-bytes@^5.3.0:
version "5.6.0"
@ -8382,10 +8365,10 @@ promise-retry@^2.0.1:
err-code "^2.0.2"
retry "^0.12.0"
protobufjs@^7.0.0:
version "7.2.3"
resolved "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.3.tgz"
integrity sha512-TtpvOqwB5Gdz/PQmOjgsrGH1nHjAQVCN7JG4A6r1sXRWESL5rNMAiRcBQlCAdKxZcAbstExQePYG8xof/JVRgg==
protobufjs@^7.0.0, protobufjs@^7.2.4:
version "7.2.5"
resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-7.2.5.tgz#45d5c57387a6d29a17aab6846dcc283f9b8e7f2d"
integrity sha512-gGXRSXvxQ7UiPgfw8gevrfRWcTlSbOFg+p/N+JVJEK5VhueL2miT6qTymqAmjr1Q5WbOCyJbyrk6JfWKwlFn6A==
dependencies:
"@protobufjs/aspromise" "^1.1.2"
"@protobufjs/base64" "^1.1.2"
@ -8907,7 +8890,7 @@ semver@7.5.3:
dependencies:
lru-cache "^6.0.0"
semver@7.5.4:
semver@7.5.4, semver@^7.0.0, semver@^7.1.1, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8:
version "7.5.4"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
@ -8915,27 +8898,15 @@ semver@7.5.4:
lru-cache "^6.0.0"
semver@^5.3.0, semver@^5.6.0:
version "5.7.1"
resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz"
integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
version "5.7.2"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8"
integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==
semver@^6.0.0, semver@^6.3.0:
version "6.3.0"
resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz"
integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
semver@^6.3.1:
semver@^6.0.0, semver@^6.3.0, semver@^6.3.1:
version "6.3.1"
resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4"
integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==
semver@^7.0.0, semver@^7.1.1, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8:
version "7.5.1"
resolved "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz"
integrity sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==
dependencies:
lru-cache "^6.0.0"
send@0.18.0:
version "0.18.0"
resolved "https://registry.npmjs.org/send/-/send-0.18.0.tgz"
@ -9080,9 +9051,9 @@ socket.io-adapter@~2.5.2:
ws "~8.11.0"
socket.io-parser@~4.2.1:
version "4.2.2"
resolved "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.2.tgz"
integrity sha512-DJtziuKypFkMMHCm2uIshOYC7QaylbtzQwiMYDuCKy3OPkjLzu4B2vAhTlqipRHHzrI0NJeBAizTK7X+6m1jVw==
version "4.2.4"
resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-4.2.4.tgz#c806966cf7270601e47469ddeec30fbdfda44c83"
integrity sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==
dependencies:
"@socket.io/component-emitter" "~3.1.0"
debug "~4.3.1"