improve image list view

This commit is contained in:
rubikscraft 2022-05-08 21:50:53 +02:00
parent 241f300a54
commit 0677358386
No known key found for this signature in database
GPG key ID: 1463EBE9200A5CD4
16 changed files with 355 additions and 154 deletions

View file

@ -24,12 +24,14 @@
"@angular/platform-browser": "^14.0.0-next.15",
"@angular/platform-browser-dynamic": "^14.0.0-next.15",
"@angular/router": "^14.0.0-next.15",
"@ngui/common": "^1.0.0",
"bootstrap": "^5.1.3",
"fuse.js": "^6.5.3",
"jwt-decode": "^3.1.2",
"moment": "^2.29.3",
"ngx-auto-unsubscribe-decorator": "^1.1.0",
"ngx-dropzone": "^3.1.0",
"ngx-moment": "^6.0.2",
"picsur-shared": "*",
"reflect-metadata": "^0.1.13",
"rxjs": "~7.5.5",

View file

@ -5,6 +5,12 @@
width="0"
#targetcanvas
></canvas>
<img *ngIf="state === 'image'" [src]="imageURL" />
<mat-spinner *ngIf="state === 'loading'" color="accent"></mat-spinner>
<img *ngIf="state === 'image'" [src]="imageURL" loading="lazy" />
<mat-icon *ngIf="state === 'error'">broken_image</mat-icon>
<mat-spinner
(nguiInview)="onInview($event)"
(nguiOutview)="onOutview($event)"
*ngIf="state === 'loading'"
color="accent"
></mat-spinner>

View file

@ -1,19 +1,23 @@
:host {
display: block;
display: inline-block;
// Clip contents
overflow: hidden;
width: fit-content;
margin-left: auto;
margin-right: auto;
// width: fit-content;
// margin-left: auto;
// margin-right: auto;
}
mat-spinner {
margin: auto;
}
canvas, img {
display: block;
canvas,
img {
width: 100%;
height: 100%;
}
ngui-inview {
min-height: 1px;
}

View file

@ -29,7 +29,9 @@ enum PicsurImgState {
export class PicsurImgComponent implements OnChanges {
private readonly logger = new Logger('ZodImgComponent');
@ViewChild('targetcanvas') canvas: ElementRef<HTMLCanvasElement>;
@ViewChild('targetcanvas') private canvas: ElementRef<HTMLCanvasElement>;
private isInView = false;
@Input('src') imageURL: string | undefined;
@ -41,6 +43,10 @@ export class PicsurImgComponent implements OnChanges {
) {}
ngOnChanges(changes: SimpleChanges): void {
if (this.isInView) this.reload();
}
private reload() {
let url = this.imageURL ?? '';
if (!URLRegex.test(url)) {
this.state = PicsurImgState.Loading;
@ -88,4 +94,16 @@ export class PicsurImgComponent implements OnChanges {
const fullMime = ParseMime(mime);
return fullMime;
}
onInview(e: any) {
this.isInView = true;
if (this.state === PicsurImgState.Loading) {
this.reload();
}
}
onOutview(e: any) {
this.isInView = false;
}
}

View file

@ -2,11 +2,17 @@ import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { MatIconModule } from '@angular/material/icon';
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
import { NguiInviewModule } from '@ngui/common';
import { PicsurImgComponent } from './picsur-img.component';
@NgModule({
declarations: [PicsurImgComponent],
imports: [CommonModule, MatProgressSpinnerModule, MatIconModule],
imports: [
CommonModule,
MatProgressSpinnerModule,
MatIconModule,
NguiInviewModule,
],
exports: [PicsurImgComponent],
})
export class PicsurImgModule {}

View file

@ -1 +1,27 @@
hello
<div class="column-wrapper" *ngIf="images !== null">
<div
*ngFor="let dummy of [].constructor(columns); let i = index"
class="column"
>
<div *ngFor="let image of images | masonry : columns : i" class="m-2">
<mat-card>
<mat-card-header>
<mat-card-title>Image by you</mat-card-title>
<mat-card-subtitle>
Uploaded {{ image.created | amTimeAgo }}
</mat-card-subtitle>
</mat-card-header>
<picsur-img
mat-card-image
[src]="getThumbnailUrl(image)"
alt="Image uploaded by you"
>
</picsur-img>
<mat-card-actions>
<button mat-stroked-button (click)="viewImage(image)">View</button>
<button mat-button color="warn">Delete</button>
</mat-card-actions>
</mat-card>
</div>
</div>
</div>

View file

@ -0,0 +1,11 @@
.column-wrapper {
display: flex;
flex-direction: row;
}
.column {
display: flex;
flex-grow: 1;
flex-basis: 0;
flex-direction: column;
}

View file

@ -1,12 +1,48 @@
import { Component, OnInit } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { SupportedMime } from 'picsur-shared/dist/dto/mimes.dto';
import { EImage } from 'picsur-shared/dist/entities/image.entity';
import { HasFailed } from 'picsur-shared/dist/types/failable';
import { ImageService } from 'src/app/services/api/image.service';
import { Logger } from 'src/app/services/logger/logger.service';
@Component({
templateUrl: './images.component.html',
styleUrls: ['./images.component.scss'],
})
export class ImagesComponent implements OnInit {
private readonly logger: Logger = new Logger('ImagesComponent');
constructor() {}
images: EImage[] | null = null;
columns = 3;
ngOnInit(): void {}
constructor(
private readonly route: ActivatedRoute,
private readonly router: Router,
private readonly imageService: ImageService
) {}
async ngOnInit() {
const params = this.route.snapshot.paramMap;
let page = Number(params.get('id') ?? '');
if (isNaN(page)) page = 0;
const result = await this.imageService.ListImages(24, page);
if (HasFailed(result)) {
return this.logger.error(result.getReason());
}
this.images = result.images;
}
getThumbnailUrl(image: EImage) {
return (
this.imageService.GetImageURL(image.id, SupportedMime.QOI) + '?height=480'
);
}
viewImage(image: EImage) {
this.router.navigate(['/view', image.id]);
}
}

View file

@ -1,10 +1,22 @@
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { MatButtonModule } from '@angular/material/button';
import { MatCardModule } from '@angular/material/card';
import { PicsurImgModule } from 'src/app/components/picsur-img/picsur-img.module';
import { ImagesComponent } from './images.component';
import { ImagesRoutingModule } from './images.routing.module';
import { MasonryPipe } from './masonry.pipe';
import { MomentModule } from 'ngx-moment';
@NgModule({
declarations: [ImagesComponent],
imports: [CommonModule, ImagesRoutingModule],
declarations: [ImagesComponent, MasonryPipe],
imports: [
CommonModule,
ImagesRoutingModule,
MatCardModule,
MatButtonModule,
PicsurImgModule,
MomentModule,
],
})
export class ImagesRouteModule {}

View file

@ -0,0 +1,24 @@
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'masonry',
})
export class MasonryPipe<T> implements PipeTransform {
transform(value: T[], numColumns: number, colNum: number): T[] {
if (value.length === 0) return value;
if (
numColumns < 1 ||
colNum < 0 ||
isNaN(numColumns) ||
isNaN(colNum) ||
colNum > numColumns
) {
throw new Error('Invalid column configuration');
}
return value.filter((val, index) => {
return index % numColumns === colNum;
});
}
}

View file

@ -5,7 +5,7 @@
</div>
<div class="col-12" *ngIf="image !== null">
<h3>{{(timeAgo | async)}}</h3>
<h3>Uploaded {{(image.created | amTimeAgo)}}</h3>
</div>
<div class="col-12 py-3">

View file

@ -1,6 +1,5 @@
import { Component, OnInit } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import moment from 'moment';
import { ImageLinks } from 'picsur-shared/dist/dto/image-links.dto';
import {
AnimMime,
@ -17,7 +16,6 @@ import { HasFailed, HasSuccess } from 'picsur-shared/dist/types';
import { UUIDRegex } from 'picsur-shared/dist/util/common-regex';
import { ParseMime } from 'picsur-shared/dist/util/parse-mime';
import { ImageService } from 'src/app/services/api/image.service';
import { rxjs_poll } from 'src/app/util/poll';
import { UtilService } from 'src/app/util/util-module/util.service';
@Component({
@ -52,11 +50,6 @@ export class ViewComponent implements OnInit {
public image: EImage | null = null;
public imageUser: EUser | null = null;
public timeAgo = rxjs_poll(
10000,
(() => moment(this.image?.created).fromNow()).bind(this)
);
async ngOnInit() {
const params = this.route.snapshot.paramMap;

View file

@ -4,6 +4,7 @@ import { MatButtonModule } from '@angular/material/button';
import { MatDividerModule } from '@angular/material/divider';
import { MatIconModule } from '@angular/material/icon';
import { MatSelectModule } from '@angular/material/select';
import { MomentModule } from 'ngx-moment';
import { CopyFieldModule } from 'src/app/components/copy-field/copy-field.module';
import { FabModule } from 'src/app/components/fab/fab.module';
import { PicsurImgModule } from 'src/app/components/picsur-img/picsur-img.module';
@ -21,6 +22,7 @@ import { ViewRoutingModule } from './view.routing.module';
MatIconModule,
PicsurImgModule,
MatIconModule,
MomentModule,
FabModule,
],
})

View file

@ -39,8 +39,8 @@ export class ImageService {
count: number,
page: number,
userID?: string
): AsyncFailable<EImage[]> {
const result = await this.api.post(
): AsyncFailable<ImageListResponse> {
return await this.api.post(
ImageListRequest,
ImageListResponse,
'/api/image/list',
@ -50,8 +50,6 @@ export class ImageService {
user_id: userID,
}
);
return Open(result, 'images');
}
public async DeleteImages(

View file

@ -1,5 +0,0 @@
import { map, Observable, timer } from 'rxjs';
export function rxjs_poll<T>(period: number, action: () => T): Observable<T> {
return timer(0, 1000).pipe(map(() => action()));
}

312
yarn.lock
View file

@ -25,6 +25,14 @@
"@angular-devkit/core" "14.0.0-next.12"
rxjs "6.6.7"
"@angular-devkit/architect@0.1400.0-next.13":
version "0.1400.0-next.13"
resolved "https://registry.yarnpkg.com/@angular-devkit/architect/-/architect-0.1400.0-next.13.tgz#012cf9d7b9a4addc9b297d2d6c3e755d23acc016"
integrity sha512-pwdg1iLBdWO1M/Kr29UX4hcy1Mm3rOG4kfprsIsoT7PCW3eYVcwMzHWJxS26wjAwXBH+dCs4drYx+P9xvXmXuQ==
dependencies:
"@angular-devkit/core" "14.0.0-next.13"
rxjs "6.6.7"
"@angular-devkit/build-angular@14.0.0-next.12":
version "14.0.0-next.12"
resolved "https://registry.yarnpkg.com/@angular-devkit/build-angular/-/build-angular-14.0.0-next.12.tgz#28270cc0dca559481d36ef55d5133558a3831f44"
@ -115,6 +123,18 @@
rxjs "6.6.7"
source-map "0.7.3"
"@angular-devkit/core@13.3.5":
version "13.3.5"
resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-13.3.5.tgz#c5f32f4f99b5cad8df9cf3cf4da9c4b1335c1155"
integrity sha512-w7vzK4VoYP9rLgxJ2SwEfrkpKybdD+QgQZlsDBzT0C6Ebp7b4gkNcNVFo8EiZvfDl6Yplw2IAP7g7fs3STn0hQ==
dependencies:
ajv "8.9.0"
ajv-formats "2.1.1"
fast-json-stable-stringify "2.1.0"
magic-string "0.25.7"
rxjs "6.6.7"
source-map "0.7.3"
"@angular-devkit/core@14.0.0-next.12":
version "14.0.0-next.12"
resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-14.0.0-next.12.tgz#3e6a8c565b69d1324f8f0a4d35e49221aca348b8"
@ -126,6 +146,17 @@
rxjs "6.6.7"
source-map "0.7.3"
"@angular-devkit/core@14.0.0-next.13":
version "14.0.0-next.13"
resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-14.0.0-next.13.tgz#e193d0267eb9a666ef0e02bf32634b14285b3437"
integrity sha512-xqRXYpB1hW7yER9RWAy8mDqC5dXaZwzZw5GyN2fe6Qj4eHonmFf5Xw/2u8rGKdyLmRm9fgsK/oxVKw6iXkOGZA==
dependencies:
ajv "8.11.0"
ajv-formats "2.1.1"
jsonc-parser "3.0.0"
rxjs "6.6.7"
source-map "0.7.3"
"@angular-devkit/schematics-cli@13.3.2":
version "13.3.2"
resolved "https://registry.yarnpkg.com/@angular-devkit/schematics-cli/-/schematics-cli-13.3.2.tgz#50607314ee19828d9bd3fb7cb1e3ab2b480ae934"
@ -149,47 +180,58 @@
ora "5.4.1"
rxjs "6.6.7"
"@angular-devkit/schematics@14.0.0-next.12":
version "14.0.0-next.12"
resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-14.0.0-next.12.tgz#25ad4e0875e6bcafeb30b3ec5d74551a4fa93511"
integrity sha512-m+QDR9C825+7uak9Qsa9WtQJA4O6agvdUF/Wu+T8ifGc2POthvseqUQUbZFqKU2qL0lRmT2O/l4dQZaKr8M+AA==
"@angular-devkit/schematics@13.3.5":
version "13.3.5"
resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-13.3.5.tgz#9cb03ac99ee14173a6fa00fd7ca94fa42600c163"
integrity sha512-0N/kL/Vfx0yVAEwa3HYxNx9wYb+G9r1JrLjJQQzDp+z9LtcojNf7j3oey6NXrDUs1WjVZOa/AIdRl3/DuaoG5w==
dependencies:
"@angular-devkit/core" "14.0.0-next.12"
"@angular-devkit/core" "13.3.5"
jsonc-parser "3.0.0"
magic-string "0.25.7"
ora "5.4.1"
rxjs "6.6.7"
"@angular-devkit/schematics@14.0.0-next.13":
version "14.0.0-next.13"
resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-14.0.0-next.13.tgz#93e38f3e50b7fb701abff9d328bcaff7de9e6106"
integrity sha512-FEjV2nOcbZAxVEEmOee6GW57TN9U1CCU/+3Tshjd1R2qlRCbBWWlNlDohkq7k27DhozeN5GFglFEJkXj+4vpdA==
dependencies:
"@angular-devkit/core" "14.0.0-next.13"
jsonc-parser "3.0.0"
magic-string "0.26.1"
ora "5.4.1"
rxjs "6.6.7"
"@angular/animations@^14.0.0-next.15":
version "14.0.0-next.15"
resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-14.0.0-next.15.tgz#8418f07878e2e1016bde17191d305200cc648a00"
integrity sha512-qXCCAQ9SMLF/1ny9lUvCCSTdMNczcr+f1QkvyrzSgr/yW4rmnj1GA+7DcyqPbA55QFeUXFQKkKosLeOZfgPlKg==
version "14.0.0-next.16"
resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-14.0.0-next.16.tgz#82570474c43bea6fdc2becd339fe6dd10343db28"
integrity sha512-T5+3FBmbYJcSQpIK2Qu6hHYLDK7WBGGQU4HpZDYf2hfl1VMJCsvqStlBD4fRdzFiAa5DgGI1NLXj27zQMhhY7A==
dependencies:
tslib "^2.3.0"
"@angular/cdk@^14.0.0-next.12":
version "14.0.0-next.12"
resolved "https://registry.yarnpkg.com/@angular/cdk/-/cdk-14.0.0-next.12.tgz#7236aa4ec270c15a70fd2ab5201f45bca7317a0b"
integrity sha512-cFR3JeZGGKGdSIkG9IjnmWd3+hJbj/oDXSetGuAU5TgL1FaMVnt+TbKQXvvNgF8e7ki4BczZqeAw28a3uWLgSA==
version "14.0.0-next.13"
resolved "https://registry.yarnpkg.com/@angular/cdk/-/cdk-14.0.0-next.13.tgz#bddf68cdf7961ee4b49953caaf4233d916b4d656"
integrity sha512-izgo2gGCAPOii/fYdsUmAPoWX8dGihADCIsTBW7A8aMQlUxNb/DYuL2ruTI5ryxo+W2c2AjtNSOJ4xJrlf2ULA==
dependencies:
tslib "^2.3.0"
optionalDependencies:
parse5 "^5.0.0"
"@angular/cli@^14.0.0-next.12":
version "14.0.0-next.12"
resolved "https://registry.yarnpkg.com/@angular/cli/-/cli-14.0.0-next.12.tgz#c16286e826628f3f6a89b5e1d57a2a282389c689"
integrity sha512-HUvXvAz5TUOl0EbE1aIIyk4sR6Dp/HbczNcSqL+V9cg4mp3Obx5EHAUt+dbDNx3/5PoG9yDduU1Q3IuNEKd1KA==
version "14.0.0-next.13"
resolved "https://registry.yarnpkg.com/@angular/cli/-/cli-14.0.0-next.13.tgz#0e8a009426f944daf3654b2c6ed68d8757a8574d"
integrity sha512-YKNQRonHpoXdfLCHpUwdeCmBVW5830gAyPv9IaDw8bPR1xd/j6PSIUuB/pP1KCaZk0wjX10HrMVmTmVM1oJXZg==
dependencies:
"@angular-devkit/architect" "0.1400.0-next.12"
"@angular-devkit/core" "14.0.0-next.12"
"@angular-devkit/schematics" "14.0.0-next.12"
"@schematics/angular" "14.0.0-next.12"
"@angular-devkit/architect" "0.1400.0-next.13"
"@angular-devkit/core" "14.0.0-next.13"
"@angular-devkit/schematics" "14.0.0-next.13"
"@schematics/angular" "14.0.0-next.13"
"@yarnpkg/lockfile" "1.1.0"
ansi-colors "4.1.1"
debug "4.3.4"
ini "3.0.0"
inquirer "8.2.2"
inquirer "8.2.4"
jsonc-parser "3.0.0"
npm-package-arg "9.0.2"
npm-pick-manifest "7.0.1"
@ -203,16 +245,16 @@
yargs "17.4.1"
"@angular/common@^14.0.0-next.15":
version "14.0.0-next.15"
resolved "https://registry.yarnpkg.com/@angular/common/-/common-14.0.0-next.15.tgz#2240b102b0c8db485b01bca41bc99c3ddfcdfa22"
integrity sha512-wnZmv2ErUTTRmFc9A22viXoGadQcOFiZz4u7Cw8V3/Hmyx3I+OLmfMDG89mSB1WESxoMD/JEcikgG8T4yXSO7A==
version "14.0.0-next.16"
resolved "https://registry.yarnpkg.com/@angular/common/-/common-14.0.0-next.16.tgz#94f870ff19ba74c9139e585f16cc5c588dbc5a73"
integrity sha512-2ZFTCvr+EH1LpBd5b/M2RuhOi3PhQpyfjLFGYLd5Wm6qrX1EGBa8mU3ISzgOW8wpHJ+3FHYPPH+wy8LHWf/9pg==
dependencies:
tslib "^2.3.0"
"@angular/compiler-cli@^14.0.0-next.15":
version "14.0.0-next.15"
resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-14.0.0-next.15.tgz#810397f5f4b73d25200a141d631fc18705322672"
integrity sha512-X5M18nEuxsD06fg+RUGqhJxZYabg5Re6kEI3bB7Te/3a7/efJ7ObrGMfqVt1PJLrUw1FrmBaLEAOhp3fqcE61A==
version "14.0.0-next.16"
resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-14.0.0-next.16.tgz#109a16bf2308d12a1a5e61dc4e57bee8639197a5"
integrity sha512-L5+l1lPYvf2/Mh73pOxpR4NV0HiqojXzdbGxm1aIrSg2gaLOjyLAaxDA8nz5SYRMQoS5zXu3mHEqeM559SpDqg==
dependencies:
"@babel/core" "^7.17.2"
chokidar "^3.0.0"
@ -226,51 +268,51 @@
yargs "^17.2.1"
"@angular/compiler@^14.0.0-next.15":
version "14.0.0-next.15"
resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-14.0.0-next.15.tgz#810b98605c11be68877d14a35c6f9e7aa568316e"
integrity sha512-P0V98X5nkdwlv6/OXHsFUp39ESHSkn5vyHdwKEg3BnvvYGZSFM8tEaIFyuKvr9c30idiVBa7Gta83HodMwXuNg==
version "14.0.0-next.16"
resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-14.0.0-next.16.tgz#8b43801a27ee678f3d626ce14638386291bbde65"
integrity sha512-4V3E4tvO649mi3AWODAJMNBqyeA6C5xwINPirWiyic8vraO4TtW1U2O6MEsopYURFKk1yw8SPStfZDTvB/eRHQ==
dependencies:
tslib "^2.3.0"
"@angular/core@^14.0.0-next.15":
version "14.0.0-next.15"
resolved "https://registry.yarnpkg.com/@angular/core/-/core-14.0.0-next.15.tgz#78fd19f4b84bed67f95e373ccd77e8e1c566d45d"
integrity sha512-sHowm2FhhaOBYQG7m9v8Xq6pAjvt1WCv+njKrOhsrcs2wjYqVs0IbcdIfu1RpIasrwLPn+nwi3hjMohxt0abPw==
version "14.0.0-next.16"
resolved "https://registry.yarnpkg.com/@angular/core/-/core-14.0.0-next.16.tgz#546171d322621ae8c4180b2418c6a97fcfd6defb"
integrity sha512-ORZhyVXIzJXwYq2YKoh5oC2NMOap2YCESBsxx13IYPdI2HAmlpMiwlW2hg1jVQzpGaAyNTxNjh1DePD61P3HgQ==
dependencies:
tslib "^2.3.0"
"@angular/forms@^14.0.0-next.15":
version "14.0.0-next.15"
resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-14.0.0-next.15.tgz#6528cbc8185ea37687d1e85f7686ef375331b883"
integrity sha512-/JzHLE9BvpY7F5mHFvsGo/0bPFO/VE9YYM9PaYFm91AapzlZ8e8DIvfl5zsqULiMjJLX0n/mRUN5PjpIHyBmMQ==
version "14.0.0-next.16"
resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-14.0.0-next.16.tgz#dc71dab27baa6bcab810e74ad88f5b3dd7d521b4"
integrity sha512-R3dgXFBiNmMHGHhjlZ6GJHfEJx8loZ1ReAynhS5lPdY/i8q8V3BPikb3gWthGGoJBBPsUapwJ/st0ur2Gwce0w==
dependencies:
tslib "^2.3.0"
"@angular/material@^14.0.0-next.12":
version "14.0.0-next.12"
resolved "https://registry.yarnpkg.com/@angular/material/-/material-14.0.0-next.12.tgz#4ee31763101245f8933856e6259b7c8fc79605d7"
integrity sha512-e6k3CoNASHbMeCgW7n5528UKmkQFa6VBCNL7yPsHT5Cnu/6w/tOeSn3QzjH26EOndAv7l5q0OsKZ14gARLFLlg==
version "14.0.0-next.13"
resolved "https://registry.yarnpkg.com/@angular/material/-/material-14.0.0-next.13.tgz#2fb94a297ccf39dfdf933cf331b3628174bf10ec"
integrity sha512-N74gQE+lmwCsCcYz7E1rn4fPOQBM2MlU7pfwZBbQXK4Dr5cUUOfnB225NtP3m16BB2C5tyFzCzFog8XqpCeZMw==
dependencies:
tslib "^2.3.0"
"@angular/platform-browser-dynamic@^14.0.0-next.15":
version "14.0.0-next.15"
resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.0.0-next.15.tgz#12c438d5c195bf178ee98f4d0ed0f5c7e682e732"
integrity sha512-meEn9qTeWi+fsmiDHTlaMpPqxnXheV9m3dvuUdGxj7FzdxCxdt2ioSx6vDY7ClFNiKlvMZo+kodcTmS0LS4CgA==
version "14.0.0-next.16"
resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.0.0-next.16.tgz#a0ffc1aa120453703789afd4e503d5ef1f4ce862"
integrity sha512-OsUDQG9/zyQPohnAceydb50G61CBXXM0QdqPd+7Ut1PS7EQii0ty7C7geTDNyqTjPlfy3y4Uhr8r9dwc3kUb8A==
dependencies:
tslib "^2.3.0"
"@angular/platform-browser@^14.0.0-next.15":
version "14.0.0-next.15"
resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-14.0.0-next.15.tgz#5d0ad1d723b58ae0d261549b0c5d95f7ddb06494"
integrity sha512-Gq+EDfAIWhHnK+rX+OD6b6CmCwzcnRE4KXUvfyX7ng2G2M4wN3kwFAzF1fMePnfwUzOseqOkZzZs8swPLgDPqQ==
version "14.0.0-next.16"
resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-14.0.0-next.16.tgz#d0aa4f56c2dd91a63840cd055ae03b9339b6dd3e"
integrity sha512-WiqS/ZTs1KdrVTvyNKGoyvclydF0BK3q53mgLc12shBKmtsSUgM94QJxikQs1J70IV6rMjTqVrw6QfuMjn66+A==
dependencies:
tslib "^2.3.0"
"@angular/router@^14.0.0-next.15":
version "14.0.0-next.15"
resolved "https://registry.yarnpkg.com/@angular/router/-/router-14.0.0-next.15.tgz#a9407aa1705d0738d0b88eef09dd42b3c78dac71"
integrity sha512-4tXaEV/WD0pJ1RoPNDJjhrpZBPn1RJIQ5qDYDxvryOw7G+x6wOyL4dUtLO2g8jM5KRnJhfuf76liQFeo+phFkA==
version "14.0.0-next.16"
resolved "https://registry.yarnpkg.com/@angular/router/-/router-14.0.0-next.16.tgz#a5ca219bc3638043842e42269aba6f4646a3dea4"
integrity sha512-PbvxsNo41WsKtWNo4O+abxowbitk91gp2JdbSnLnb+8ISSSJf4gTlLTQftzVT31z3mOhmv+iOS7f1AdipvdPTg==
dependencies:
tslib "^2.3.0"
@ -1275,19 +1317,19 @@
resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70"
integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==
"@eslint/eslintrc@^1.2.2":
version "1.2.2"
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.2.2.tgz#4989b9e8c0216747ee7cca314ae73791bb281aae"
integrity sha512-lTVWHs7O2hjBFZunXTZYnYqtB9GakA1lnxIf+gKq2nY5gxkkNi/lQvveW6t8gFdOHTg6nG50Xs95PrLqVpcaLg==
"@eslint/eslintrc@^1.2.3":
version "1.2.3"
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.2.3.tgz#fcaa2bcef39e13d6e9e7f6271f4cc7cae1174886"
integrity sha512-uGo44hIwoLGNyduRpjdEpovcbMdd+Nv7amtmJxnKmI8xj6yd5LncmSwDa5NgX/41lIFJtkjD6YdVfgEzPfJ5UA==
dependencies:
ajv "^6.12.4"
debug "^4.3.2"
espree "^9.3.1"
espree "^9.3.2"
globals "^13.9.0"
ignore "^5.2.0"
import-fresh "^3.2.1"
js-yaml "^4.1.0"
minimatch "^3.0.4"
minimatch "^3.1.2"
strip-json-comments "^3.1.1"
"@fastify/ajv-compiler@^1.0.0":
@ -1403,24 +1445,24 @@
"@jridgewell/sourcemap-codec" "^1.4.10"
"@jridgewell/resolve-uri@^3.0.3":
version "3.0.6"
resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.6.tgz#4ac237f4dabc8dd93330386907b97591801f7352"
integrity sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw==
version "3.0.7"
resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz#30cd49820a962aff48c8fffc5cd760151fca61fe"
integrity sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==
"@jridgewell/set-array@^1.0.0":
version "1.1.0"
resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.0.tgz#1179863356ac8fbea64a5a4bcde93a4871012c01"
integrity sha512-SfJxIxNVYLTsKwzB3MoOQ1yxf4w/E6MdkvTgrgAt1bfxjSrLUoHMKrDOykwN14q65waezZIdqDneUIPh4/sKxg==
version "1.1.1"
resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.1.tgz#36a6acc93987adcf0ba50c66908bd0b70de8afea"
integrity sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==
"@jridgewell/sourcemap-codec@^1.4.10":
version "1.4.12"
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.12.tgz#7ed98f6fa525ffb7c56a2cbecb5f7bb91abd2baf"
integrity sha512-az/NhpIwP3K33ILr0T2bso+k2E/SLf8Yidd8mHl0n6sCQ4YdyC8qDhZA6kOPDNDBA56ZnIjngVl0U3jREA0BUA==
version "1.4.13"
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c"
integrity sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==
"@jridgewell/trace-mapping@^0.3.0", "@jridgewell/trace-mapping@^0.3.9":
version "0.3.9"
resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9"
integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==
version "0.3.10"
resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.10.tgz#db436f0917d655393851bc258918c00226c9b183"
integrity sha512-Q0YbBd6OTsXm8Y21+YUSDXupHnodNC2M4O18jtd3iwJ3+vMZNdKGols0a9G6JOK0dcJ3IdUUHoh908ZI6qhk8Q==
dependencies:
"@jridgewell/resolve-uri" "^3.0.3"
"@jridgewell/sourcemap-codec" "^1.4.10"
@ -1533,13 +1575,13 @@
tslib "2.3.1"
"@nestjs/schematics@^8.0.10", "@nestjs/schematics@^8.0.3":
version "8.0.10"
resolved "https://registry.yarnpkg.com/@nestjs/schematics/-/schematics-8.0.10.tgz#4f951ea1ac94721ba6a6ccfae6461f8b22949573"
integrity sha512-gQq/8TYjtgum+5+QuPfHHKgKxDgNLGh8mH+EJ1skOKX+GTxgt5jmg1GFmwEfiOXZUcF9thT6GsOVNKWrdO3YMg==
version "8.0.11"
resolved "https://registry.yarnpkg.com/@nestjs/schematics/-/schematics-8.0.11.tgz#5d0c56184826660a2c01b1c326dbdbb12880e864"
integrity sha512-W/WzaxgH5aE01AiIErE9QrQJ73VR/M/8p8pq0LZmjmNcjZqU5kQyOWUxZg13WYfSpJdOa62t6TZRtFDmgZPoIg==
dependencies:
"@angular-devkit/core" "13.3.2"
"@angular-devkit/schematics" "13.3.2"
fs-extra "10.0.1"
"@angular-devkit/core" "13.3.5"
"@angular-devkit/schematics" "13.3.5"
fs-extra "10.1.0"
jsonc-parser "3.0.0"
pluralize "8.0.0"
@ -1570,6 +1612,13 @@
resolved "https://registry.yarnpkg.com/@ngtools/webpack/-/webpack-14.0.0-next.12.tgz#6920a8a54abd2a5bc41f671ed4e18d8b3be0502b"
integrity sha512-i2+IT0i9IicplJaesp4ELUbbtKvH0skQeQvpQ9Md9HHj4miKaGnj1eMIbVxQrY2PCPyz2Mxva2iHXSfVCE1N4w==
"@ngui/common@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@ngui/common/-/common-1.0.0.tgz#b7883be7e34a2b38af2111604ac09c5cf59d6404"
integrity sha512-T0vX6jFLR+19iUVqM0J6lQkcDo6Iaq8pptzMJDEjLG3HkpgeM9SYxiTFV3+yHuP4QzQQ6/VP8gJ+1f4M7iZv5Q==
dependencies:
tslib "^2.0.0"
"@nodelib/fs.scandir@2.1.5":
version "2.1.5"
resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
@ -1661,13 +1710,13 @@
consola "^2.15.0"
node-fetch "^2.6.1"
"@schematics/angular@14.0.0-next.12":
version "14.0.0-next.12"
resolved "https://registry.yarnpkg.com/@schematics/angular/-/angular-14.0.0-next.12.tgz#bc53e55ffd5d4bf8ca378dde691b4472d485003c"
integrity sha512-SuwFJTNLH0kaBZ5NBrcBVmo0P4MoSjsXQa/9Tr1FHxbW+Orz1DGGZm+SP7MM/ynKhUSrL/t26OzCEEmMkomS9Q==
"@schematics/angular@14.0.0-next.13":
version "14.0.0-next.13"
resolved "https://registry.yarnpkg.com/@schematics/angular/-/angular-14.0.0-next.13.tgz#d53cdd9bb375171dfd4ff041b90c31150ebd1239"
integrity sha512-YejA7u8JmhvaYAp4mF/hZjhcQb8VYDUaaRliTk0fi0gtJqQxUpel/iw1xJ7FsPogX67oqfKp/1bOaTVhlHrpDg==
dependencies:
"@angular-devkit/core" "14.0.0-next.12"
"@angular-devkit/schematics" "14.0.0-next.12"
"@angular-devkit/core" "14.0.0-next.13"
"@angular-devkit/schematics" "14.0.0-next.13"
jsonc-parser "3.0.0"
"@sqltools/formatter@^1.2.2":
@ -2198,7 +2247,7 @@ acorn-import-assertions@^1.7.6:
resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9"
integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==
acorn-jsx@^5.3.1:
acorn-jsx@^5.3.2:
version "5.3.2"
resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
@ -2208,7 +2257,7 @@ acorn-walk@^8.1.1:
resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1"
integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==
acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.0:
acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.1:
version "8.7.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.1.tgz#0197122c843d1bf6d0a5e83220a788f278f63c30"
integrity sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==
@ -2769,9 +2818,9 @@ camelcase@^5.3.1:
integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
caniuse-lite@^1.0.30001332, caniuse-lite@^1.0.30001335:
version "1.0.30001335"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001335.tgz#899254a0b70579e5a957c32dced79f0727c61f2a"
integrity sha512-ddP1Tgm7z2iIxu6QTtbZUv6HJxSaV/PZeSrWFZtbY4JZ69tOeNhBCl3HyRQgeNZKE5AOn1kpV7fhljigy0Ty3w==
version "1.0.30001338"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001338.tgz#b5dd7a7941a51a16480bdf6ff82bded1628eec0d"
integrity sha512-1gLHWyfVoRDsHieO+CaeYe7jSo/MT7D7lhaXUiwwbuR5BwQxORs0f1tAwUSQr3YbxRXJvxHM/PA5FfPQRnsPeQ==
chalk@3.0.0:
version "3.0.0"
@ -3402,9 +3451,9 @@ ee-first@1.1.1:
integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
electron-to-chromium@^1.4.118:
version "1.4.132"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.132.tgz#b64599eb018221e52e2e4129de103b03a413c55d"
integrity sha512-JYdZUw/1068NWN+SwXQ7w6Ue0bWYGihvSUNNQwurvcDV/SM7vSiGZ3NuFvFgoEiCs4kB8xs3cX2an3wB7d4TBw==
version "1.4.137"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.137.tgz#186180a45617283f1c012284458510cd99d6787f"
integrity sha512-0Rcpald12O11BUogJagX3HsCN3FE83DSqWjgXoHo5a72KUKMSfI39XBgJpgNNxS9fuGzytaFjE06kZkiVFy2qA==
emoji-regex@^8.0.0:
version "8.0.0"
@ -3679,11 +3728,11 @@ eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.3.0:
integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==
eslint@^8.14.0:
version "8.14.0"
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.14.0.tgz#62741f159d9eb4a79695b28ec4989fcdec623239"
integrity sha512-3/CE4aJX7LNEiE3i6FeodHmI/38GZtWCsAtsymScmzYapx8q1nVVb+eLcLSzATmCPXw5pT4TqVs1E0OmxAd9tw==
version "8.15.0"
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.15.0.tgz#fea1d55a7062da48d82600d2e0974c55612a11e9"
integrity sha512-GG5USZ1jhCu8HJkzGgeK8/+RGnHaNYZGrGDzUtigK3BsGESW/rs2az23XqE0WVwDxy1VRvvjSSGu5nB0Bu+6SA==
dependencies:
"@eslint/eslintrc" "^1.2.2"
"@eslint/eslintrc" "^1.2.3"
"@humanwhocodes/config-array" "^0.9.2"
ajv "^6.10.0"
chalk "^4.0.0"
@ -3694,7 +3743,7 @@ eslint@^8.14.0:
eslint-scope "^7.1.1"
eslint-utils "^3.0.0"
eslint-visitor-keys "^3.3.0"
espree "^9.3.1"
espree "^9.3.2"
esquery "^1.4.0"
esutils "^2.0.2"
fast-deep-equal "^3.1.3"
@ -3710,7 +3759,7 @@ eslint@^8.14.0:
json-stable-stringify-without-jsonify "^1.0.1"
levn "^0.4.1"
lodash.merge "^4.6.2"
minimatch "^3.0.4"
minimatch "^3.1.2"
natural-compare "^1.4.0"
optionator "^0.9.1"
regexpp "^3.2.0"
@ -3719,13 +3768,13 @@ eslint@^8.14.0:
text-table "^0.2.0"
v8-compile-cache "^2.0.3"
espree@^9.3.1:
version "9.3.1"
resolved "https://registry.yarnpkg.com/espree/-/espree-9.3.1.tgz#8793b4bc27ea4c778c19908e0719e7b8f4115bcd"
integrity sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==
espree@^9.3.2:
version "9.3.2"
resolved "https://registry.yarnpkg.com/espree/-/espree-9.3.2.tgz#f58f77bd334731182801ced3380a8cc859091596"
integrity sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==
dependencies:
acorn "^8.7.0"
acorn-jsx "^5.3.1"
acorn "^8.7.1"
acorn-jsx "^5.3.2"
eslint-visitor-keys "^3.3.0"
esprima@^4.0.0:
@ -4132,16 +4181,7 @@ fs-constants@^1.0.0:
resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==
fs-extra@10.0.1:
version "10.0.1"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.1.tgz#27de43b4320e833f6867cc044bfce29fdf0ef3b8"
integrity sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==
dependencies:
graceful-fs "^4.2.0"
jsonfile "^6.0.1"
universalify "^2.0.0"
fs-extra@^10.0.0:
fs-extra@10.1.0, fs-extra@^10.0.0:
version "10.1.0"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf"
integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==
@ -4183,9 +4223,9 @@ functional-red-black-tree@^1.0.1:
integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=
fuse.js@^6.5.3:
version "6.6.0"
resolved "https://registry.yarnpkg.com/fuse.js/-/fuse.js-6.6.0.tgz#9c0dd9337731ebc6541abf44aa3aa9bb6cb5acb6"
integrity sha512-4CvUk6GBo1b00xIcCLEoHQX3xwaYIwUX0lD8hDaYUavvSgE8aaySe9Z+fb4bdvzXXbYUfrllwN34U3wwUsG+oA==
version "6.6.1"
resolved "https://registry.yarnpkg.com/fuse.js/-/fuse.js-6.6.1.tgz#6b94cb80eb064f1b9c31bbe651f6e5857702c0a8"
integrity sha512-3PXxXYsdKm68JHY6o2I9gIY+z9LcPs/ROITSzwFZyo0McjShwPFJU2i81Iu4h4si5X7JrrgXtOLDkeiTjdnWFQ==
gauge@^3.0.0:
version "3.0.2"
@ -4320,9 +4360,9 @@ globals@^11.1.0:
integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
globals@^13.6.0, globals@^13.9.0:
version "13.13.0"
resolved "https://registry.yarnpkg.com/globals/-/globals-13.13.0.tgz#ac32261060d8070e2719dd6998406e27d2b5727b"
integrity sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==
version "13.14.0"
resolved "https://registry.yarnpkg.com/globals/-/globals-13.14.0.tgz#daf3ff9b4336527cf56e98330b6f64bea9aff9df"
integrity sha512-ERO68sOYwm5UuLvSJTY7w7NP2c8S4UcXs3X1GBX8cwOr+ShOcDBbCY5mH4zxz0jsYCdJ8ve8Mv9n2YGJMB1aeg==
dependencies:
type-fest "^0.20.2"
@ -4702,6 +4742,27 @@ inquirer@8.2.2:
strip-ansi "^6.0.0"
through "^2.3.6"
inquirer@8.2.4:
version "8.2.4"
resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.2.4.tgz#ddbfe86ca2f67649a67daa6f1051c128f684f0b4"
integrity sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==
dependencies:
ansi-escapes "^4.2.1"
chalk "^4.1.1"
cli-cursor "^3.1.0"
cli-width "^3.0.0"
external-editor "^3.0.3"
figures "^3.0.0"
lodash "^4.17.21"
mute-stream "0.0.8"
ora "^5.4.1"
run-async "^2.4.0"
rxjs "^7.5.5"
string-width "^4.1.0"
strip-ansi "^6.0.0"
through "^2.3.6"
wrap-ansi "^7.0.0"
interpret@^1.0.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e"
@ -5336,7 +5397,7 @@ minimatch@5.0.1, minimatch@^5.0.1:
dependencies:
brace-expansion "^2.0.1"
minimatch@^3.0.4:
minimatch@^3.0.4, minimatch@^3.1.2:
version "3.1.2"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
@ -5522,6 +5583,13 @@ ngx-dropzone@^3.1.0:
dependencies:
tslib "^2.0.0"
ngx-moment@^6.0.2:
version "6.0.2"
resolved "https://registry.yarnpkg.com/ngx-moment/-/ngx-moment-6.0.2.tgz#7acba9830746e9c2862d261150f2c8adb20eb4f6"
integrity sha512-HUvDyoJPZKLA3tc+GMQqDpVyCVT2SPfEiV7/CGj2Dwwsn//JhhQ8eTr+RzKqBzLysrXkCwlzulVVJaJ5A0FJEA==
dependencies:
tslib "^2.3.0"
nice-napi@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/nice-napi/-/nice-napi-1.0.2.tgz#dc0ab5a1eac20ce548802fc5686eaa6bc654927b"
@ -6057,9 +6125,9 @@ path-to-regexp@3.2.0:
integrity sha512-jczvQbCUS7XmS7o+y1aEO9OBVFeZBQ1MDSEqmO7xSoPgOPoowY/SxLpZ6Vh97/8qHZOteiCKb7gkG9gA2ZUxJA==
path-to-regexp@^6.1.0:
version "6.2.0"
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.2.0.tgz#f7b3803336104c346889adece614669230645f38"
integrity sha512-f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg==
version "6.2.1"
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.2.1.tgz#d54934d6798eb9e5ef14e7af7962c945906918e5"
integrity sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==
path-type@^4.0.0:
version "4.0.0"
@ -6466,9 +6534,9 @@ postcss-preset-env@7.4.3:
postcss-value-parser "^4.2.0"
postcss-pseudo-class-any-link@^7.1.1:
version "7.1.2"
resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.2.tgz#81ec491aa43f97f9015e998b7a14263b4630bdf0"
integrity sha512-76XzEQv3g+Vgnz3tmqh3pqQyRojkcJ+pjaePsyhcyf164p9aZsu3t+NWxkZYbcHLK1ju5Qmalti2jPI5IWCe5w==
version "7.1.3"
resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.3.tgz#0e4753518b9f6caa8b649c75b56e69e391d0c12f"
integrity sha512-I9Yp1VV2r8xFwg/JrnAlPCcKmutv6f6Ig6/CHFPqGJiDgYXM9C+0kgLfK4KOXbKNw+63QYl4agRUB0Wi9ftUIg==
dependencies:
postcss-selector-parser "^6.0.10"
@ -8303,9 +8371,9 @@ yocto-queue@^0.1.0:
integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==
zod@^3.14.4:
version "3.14.4"
resolved "https://registry.yarnpkg.com/zod/-/zod-3.14.4.tgz#e678fe9e5469f4663165a5c35c8f3dc66334a5d6"
integrity sha512-U9BFLb2GO34Sfo9IUYp0w3wJLlmcyGoMd75qU9yf+DrdGA4kEx6e+l9KOkAlyUO0PSQzZCa3TR4qVlcmwqSDuw==
version "3.15.1"
resolved "https://registry.yarnpkg.com/zod/-/zod-3.15.1.tgz#9e404cd8002ccffb03baa94cff2e1638ed49d82f"
integrity sha512-WAdjcoOxa4S9oc/u7fTbC3CC7uVqptLLU0LKqS8RDBOrCXp2t5avM8BUfgNVZJymGWAx6SEUYxWPPoYuQ5rgwQ==
zone.js@~0.11.5:
version "0.11.5"