From d8c2ca9bdccb748a031939f8790c7412952fc592 Mon Sep 17 00:00:00 2001 From: Lorenz Hilpert Date: Mon, 16 Jun 2025 11:54:47 +0200 Subject: [PATCH] Migration Angular v19 -> v20 --- .browserslistrc | 3 - apps/isa-app/src/app/app.component.ts | 3 +- .../address-selection-modal.component.html | 10 +- .../availabilities.component.html | 40 +- .../src/modal/images/images.component.html | 8 +- .../kulturpass-order-item.component.html | 8 +- .../kulturpass-order-modal.component.html | 33 +- .../message/message-modal.component.html | 31 +- .../modal/message/message-modal.component.ts | 4 +- .../notifications-list-item.component.html | 8 +- ...ns-package-inspection-group.component.html | 4 +- ...tifications-remission-group.component.html | 4 +- ...fications-reservation-group.component.html | 4 +- ...cations-task-calendar-group.component.html | 4 +- .../notifications-update-group.component.html | 4 +- .../notifications.component.html | 63 +- .../printer/modal-printer.component.html | 8 +- ...urchase-options-list-header.component.html | 8 +- .../purchase-options-list-item.component.html | 274 +- .../purchase-options-modal.component.html | 51 +- ...ownload-purchase-options-tile.component.ts | 4 +- .../src/modal/reorder/reorder.component.html | 106 +- .../src/modal/reviews/reviews.component.html | 32 +- .../price-update-item.component.html | 65 +- .../price-update-list.component.html | 77 +- .../price-update/price-update.component.html | 41 +- .../article-details-text.component.html | 24 +- .../article-details-text.component.ts | 10 +- .../article-details.component.html | 1507 +++--- .../article-recommendations.component.html | 50 +- .../search-filter.component.html | 26 +- .../search-main/search-main.component.html | 71 +- .../added-to-cart-modal.component.html | 4 +- .../search-result-item-loading.component.html | 9 +- .../search-result-item.component.html | 117 +- .../search-results.component.html | 116 +- .../checkout-dummy.component.html | 162 +- .../checkout-review.component.html | 134 +- .../checkout-review-details.component.html | 91 +- .../shopping-cart-item.component.html | 165 +- .../special-comment.component.html | 12 +- .../checkout-summary.component.html | 277 +- .../checkout-summary.component.ts | 182 +- ...customer-order-details-item.component.html | 338 +- ...customer-order-details-tags.component.html | 23 +- .../customer-order-details-tags.component.ts | 4 +- .../customer-order-details.component.html | 69 +- .../customer-order-edit.component.html | 8 +- ...ustomer-order-search-filter.component.html | 28 +- .../customer-order-search-main.component.html | 86 +- .../customer-order-item.component.html | 166 +- ...stomer-order-search-results.component.html | 165 +- .../customer-menu.component.html | 78 +- .../customer-menu/customer-menu.component.ts | 4 +- .../customer-result-list.component.html | 107 +- .../customer-type-selector.component.html | 40 +- .../address/address-form-block.component.html | 104 +- ...eviating-address-form-block.component.html | 111 +- .../interests-form-block.component.html | 19 +- .../name/name-form-block.component.html | 10 +- .../organisation-form-block.component.html | 48 +- .../p4m-number-form-block.component.html | 14 +- .../kundenkarte/kundenkarte.component.html | 86 +- .../kundenkarte/kundenkarte.component.ts | 4 +- .../create-b2b-customer.component.html | 172 +- .../create-customer.component.ts | 4 +- .../create-guest-customer.component.html | 196 +- .../create-p4m-customer.component.html | 42 +- .../create-store-customer.component.html | 164 +- .../create-webshop-customer.component.html | 199 +- .../customer-create-side-view.component.ts | 4 +- ...update-p4m-webshop-customer.component.html | 230 +- ...d-billing-address-main-view.component.html | 31 +- ...add-billing-address-main-view.component.ts | 8 +- ...-shipping-address-main-view.component.html | 310 +- ...dd-shipping-address-main-view.component.ts | 8 +- ...main-view-billing-addresses.component.html | 134 +- ...s-main-view-billing-addresses.component.ts | 4 +- ...ain-view-delivery-addresses.component.html | 117 +- ...-main-view-delivery-addresses.component.ts | 4 +- .../details-main-view.component.html | 109 +- ...t-billing-address-main-view.component.html | 31 +- ...dit-billing-address-main-view.component.ts | 7 +- .../customer-data-edit-b2b.component.html | 187 +- .../customer-data-edit-b2c.component.html | 183 +- ...-shipping-address-main-view.component.html | 310 +- ...it-shipping-address-main-view.component.ts | 8 +- .../filter-main-view.component.html | 86 +- .../kundenkarte-main-view.component.html | 46 +- .../kundenkarte-main-view.component.ts | 4 +- .../main-side-view.component.html | 23 +- .../main-side-view.component.ts | 4 +- .../main-view/main-view.component.html | 50 +- .../main-view/main-view.component.ts | 4 +- ...r-details-history-main-view.component.html | 16 +- ...der-details-history-main-view.component.ts | 4 +- .../order-item-list-item.component.html | 177 +- .../order-item-list-item.component.ts | 7 +- .../order-details-side-view.component.html | 40 +- .../order-details-side-view.component.ts | 8 +- .../order-list-item.component.html | 93 +- .../order-list-item.component.ts | 7 +- .../orders-main-view.component.html | 14 +- .../orders-main-view.component.ts | 8 +- .../results-main-view.component.html | 46 +- .../results-side-view.component.html | 67 +- .../address-selection-modal.component.html | 10 +- .../cant-select-guest-modal.component.html | 21 +- ...stomer-already-exists-modal.component.html | 42 +- .../page/dashboard/dashboard.component.html | 16 +- .../info-card/info-card.component.html | 14 +- .../kpi-card/kpi-card.component.html | 4 +- .../products-card/product-card.component.html | 17 +- .../goods-in-cleanup-list.component.html | 120 +- .../goods-in-list-item.component.html | 218 +- .../goods-in-list.component.html | 118 +- .../goods-in-remission-preview.component.html | 104 +- .../goods-in-reservation.component.html | 116 +- .../package-details-list-item.component.html | 82 +- .../package-details-list.component.html | 4 +- .../package-details.component.html | 193 +- .../package-result.component.html | 49 +- .../pickup-shelf-in-details.component.html | 104 +- .../pickup-shelf-in-details.component.ts | 8 +- .../pickup-shelf-in-edit.component.html | 15 +- .../pickup-shelf-in-edit.component.ts | 4 +- .../pickup-shelf-in-list.component.html | 150 +- .../pickup-shelf-in-list.component.ts | 8 +- ...kup-shelf-in-main-side-view.component.html | 40 +- ...ickup-shelf-in-main-side-view.component.ts | 4 +- .../pickup-shelf-out-details.component.html | 73 +- .../pickup-shelf-out-details.component.ts | 8 +- .../pickup-shelf-out-edit.component.html | 11 +- .../pickup-shelf-out-edit.component.ts | 4 +- .../pickup-shelf-out-list.component.html | 187 +- .../pickup-shelf-out-list.component.ts | 8 +- ...up-shelf-out-main-side-view.component.html | 36 +- ...ckup-shelf-out-main-side-view.component.ts | 4 +- ...pickup-shelf-details-covers.component.html | 44 +- .../pickup-shelf-details-covers.component.ts | 8 +- ...elf-details-header-nav-menu.component.html | 52 +- ...shelf-details-header-nav-menu.component.ts | 4 +- .../pickup-shelf-details-item.component.html | 490 +- .../pickup-shelf-details-item.component.ts | 8 +- ...p-shelf-details-items-group.component.html | 176 +- ...kup-shelf-details-items-group.component.ts | 4 +- .../pickup-shelf-details-tags.component.html | 35 +- .../pickup-shelf-details-tags.component.ts | 4 +- .../pickup-shelf-filter.component.html | 26 +- .../pickup-shelf-filter.component.ts | 4 +- .../pickup-shelf-history.component.html | 17 +- .../pickup-shelf-history.component.ts | 4 +- .../pickup-shelf-list-item.component.html | 123 +- .../pickup-shelf-list-item.component.ts | 8 +- .../create-remission.component.html | 32 +- .../add-product-modal.component.html | 47 +- ...-to-shipping-document-modal.component.html | 11 +- .../remission-filter.component.html | 5 +- .../remission-list-item.component.html | 197 +- .../remission-list.component.html | 176 +- .../required-capacities.component.html | 5 +- ...pping-document-details-item.component.html | 27 +- .../shipping-document-details.component.html | 51 +- .../shipping-document-details.component.html | 46 +- ...shipping-document-list-item.component.html | 16 +- .../shipping-document-list.component.html | 8 +- .../task-info/task-info.component.html | 69 +- .../task-list/task-list-group.component.html | 4 +- .../task-list/task-list-item.component.html | 59 +- .../task-list/task-list.component.html | 44 +- .../task-searchbar.component.html | 22 +- .../task-calendar-filter.component.html | 21 +- .../article-list-modal.component.html | 34 +- .../modals/info/info-modal.component.html | 12 +- .../pdf-viewer-modal.component.html | 4 +- .../preinfo/preinfo-modal.component.html | 8 +- .../modals/task/task-modal.component.html | 82 +- .../page-task-calendar.component.html | 9 +- .../task-search/task-search.component.html | 33 +- .../branch-selector.component.html | 37 +- .../breadcrumb/breadcrumb.component.html | 38 +- .../checkbox/checkbox.component.html | 4 +- .../components/checkbox/checkbox.component.ts | 4 +- .../filter-filter-group-main.component.html | 4 +- .../filter-input-group-main.component.html | 20 +- .../components/filter/filter.component.html | 17 +- .../order-by-filter.component.html | 49 +- .../filter-input-chip.component.html | 44 +- .../filter-input-option-bool.component.html | 31 +- ...r-input-option-number-range.component.html | 54 +- ...lter-input-option-tri-state.component.html | 29 +- .../filter-input-options.component.html | 68 +- .../input-text/input-text.component.html | 4 +- ...in-out-order-details-covers.component.html | 44 +- ...s-in-out-order-details-item.component.html | 186 +- ...s-in-out-order-details-tags.component.html | 23 +- .../goods-in-out-order-details.component.html | 50 +- .../goods-in-out-order-edit.component.html | 612 ++- ...ods-in-out-order-group-item.component.html | 252 +- .../goods-in-out-order-group.component.html | 26 +- .../history/history-list.component.html | 15 +- .../history-log-entry.component.html | 77 +- .../components/loader/loader.component.html | 8 +- .../components/loader/loader.component.ts | 4 +- ...otification-channel-control.component.html | 122 +- .../package-list-item.component.html | 24 +- .../package-list/package-list.component.html | 16 +- .../searchbox/searchbox.component.html | 95 +- .../select/select-option.component.ts | 4 +- .../components/select/select.component.html | 4 +- .../components/select/select.component.ts | 4 +- .../splitscreen/splitscreen.component.html | 25 +- .../splitscreen/splitscreen.component.ts | 4 +- .../process-bar-item.component.html | 10 +- .../process-bar/process-bar.component.html | 57 +- .../isa-app/src/shared/shell/shell.service.ts | 4 +- .../shell/side-menu/side-menu.component.html | 283 +- .../shell/side-menu/side-menu.component.ts | 3 +- .../shared/shell/toaster/toast.component.html | 20 +- .../shared/shell/toaster/toast.component.ts | 4 +- .../toaster/toaster-outlet.component.html | 4 +- .../shell/toaster/toaster-outlet.component.ts | 4 +- .../shell/top-bar/top-bar.component.html | 27 +- .../autocomplete/autocomplete.component.html | 12 +- .../calendar-body.component.html | 33 +- .../calendar-header.component.html | 20 +- .../src/ui/checkbox/checkbox.component.html | 17 +- .../overlay-trigger.directive.ts | 3 +- .../ui/datepicker/body/body.component.html | 14 +- .../ui/datepicker/datepicker.component.html | 21 +- .../range-filter/range-filter.component.html | 12 +- .../select-filter-option.component.html | 44 +- .../filter-filter-group-main.component.html | 4 +- .../filter-input-group-main.component.html | 31 +- .../order-by-filter.component.html | 35 +- .../filter-input-chip.component.html | 52 +- .../filter-input-option-bool.component.html | 29 +- ...ter-input-option-date-range.component.html | 126 +- ...r-input-option-number-range.component.html | 100 +- ...lter-input-option-tri-state.component.html | 29 +- .../filter-input-options.component.html | 68 +- .../input-text/input-text.component.html | 4 +- .../ui/filter/next/ui-filter.component.html | 17 +- .../src/ui/filter/next/ui-filter.component.ts | 3 +- .../selected-filter-options.component.html | 52 +- .../ui-form-control.component.html | 41 +- .../src/ui/input/ui-radio-input.directive.ts | 3 +- .../src/ui/loader/loader.component.html | 8 +- .../modal/dialog/dialog-modal.component.html | 34 +- .../isa-app/src/ui/modal/modal.component.html | 28 +- .../src/ui/notes/ui-notes.component.html | 20 +- .../quantity-dropdown-content.component.html | 42 +- .../quantity-dropdown.component.html | 79 +- .../content-loader.component.html | 4 +- .../scroll-container.component.html | 35 +- .../skeleton-loader.component.html | 82 +- .../searchbox/next/searchbox.component.html | 42 +- .../ui-searchbox-autocomplete.component.html | 4 +- .../select-bullet.component.html | 4 +- .../src/ui/select/ui-select.component.html | 8 +- .../src/ui/slider/slider.component.html | 24 +- .../src/ui/spinner/ui-spinner.component.html | 4 +- .../isa-app/src/ui/stars/stars.component.html | 12 +- .../src/ui/tooltip/tooltip.component.html | 8 +- .../src/ui/tshirt/ui-tshirt.component.html | 8 +- apps/isa-app/tsconfig.json | 2 +- .../src/lib/stores/return-details.store.ts | 18 +- .../src/lib/return-details.component.ts | 7 +- .../scanner/src/lib/scanner.service.spec.ts | 4 +- .../calendar-body.component.html | 2 +- package-lock.json | 4251 ++++++++--------- package.json | 85 +- 272 files changed, 10560 insertions(+), 9792 deletions(-) diff --git a/.browserslistrc b/.browserslistrc index 1ea8fd84a..78770dff4 100644 --- a/.browserslistrc +++ b/.browserslistrc @@ -2,6 +2,3 @@ last 1 Chrome version last 1 Firefox version last 2 Edge major versions last 2 iOS major versions -safari > 11 -Firefox ESR -not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. \ No newline at end of file diff --git a/apps/isa-app/src/app/app.component.ts b/apps/isa-app/src/app/app.component.ts index 6006f3363..1a2abcdc7 100644 --- a/apps/isa-app/src/app/app.component.ts +++ b/apps/isa-app/src/app/app.component.ts @@ -1,4 +1,4 @@ -import { DOCUMENT } from '@angular/common'; + import { Component, effect, @@ -10,6 +10,7 @@ import { Renderer2, signal, untracked, + DOCUMENT } from '@angular/core'; import { Title } from '@angular/platform-browser'; import { SwUpdate } from '@angular/service-worker'; diff --git a/apps/isa-app/src/modal/address-selection/address-selection-modal.component.html b/apps/isa-app/src/modal/address-selection/address-selection-modal.component.html index 768ac275b..d18a088ae 100644 --- a/apps/isa-app/src/modal/address-selection/address-selection-modal.component.html +++ b/apps/isa-app/src/modal/address-selection/address-selection-modal.component.html @@ -3,10 +3,12 @@

Vorschläge:

diff --git a/apps/isa-app/src/modal/availabilities/availabilities.component.html b/apps/isa-app/src/modal/availabilities/availabilities.component.html index a1cd1f88d..9cd004a9c 100644 --- a/apps/isa-app/src/modal/availabilities/availabilities.component.html +++ b/apps/isa-app/src/modal/availabilities/availabilities.component.html @@ -6,13 +6,19 @@ uiSearchboxSearchButton (click)="filter(input.value)" [disabled]="branchesFetching$ | async" - > - - - - + @if (input.value) { + + }

@@ -25,7 +31,7 @@


- + @for (branch of filteredBranches$ | async; track branch) {
@@ -36,25 +42,23 @@ {{ branch.address.city }}
-
- - + @if ((branch.id | stockInfo: (inStock$ | async))?.availableQuantity > 0 && branch?.isShippingEnabled) { + + } - {{ branch.id | inStock: (inStock$ | async) }}x

-
+ }
diff --git a/apps/isa-app/src/modal/images/images.component.html b/apps/isa-app/src/modal/images/images.component.html index 3c4cae959..e01ec3089 100644 --- a/apps/isa-app/src/modal/images/images.component.html +++ b/apps/isa-app/src/modal/images/images.component.html @@ -3,9 +3,11 @@
- + @for (image of images; track image) { + + }
diff --git a/apps/isa-app/src/modal/kulturpass-order/kulturpass-order-item/kulturpass-order-item.component.html b/apps/isa-app/src/modal/kulturpass-order/kulturpass-order-item/kulturpass-order-item.component.html index 4f938adc1..202ade713 100644 --- a/apps/isa-app/src/modal/kulturpass-order/kulturpass-order-item/kulturpass-order-item.component.html +++ b/apps/isa-app/src/modal/kulturpass-order/kulturpass-order-item/kulturpass-order-item.component.html @@ -18,9 +18,11 @@
-
- Es befinden sich {{ availableQuantity$ | async }} Exemplare in der Filiale -
+ @if (stockWarning$ | async) { +
+ Es befinden sich {{ availableQuantity$ | async }} Exemplare in der Filiale +
+ }
diff --git a/apps/isa-app/src/modal/kulturpass-order/kulturpass-order-modal.component.html b/apps/isa-app/src/modal/kulturpass-order/kulturpass-order-modal.component.html index 01a1cc7c6..25cd289e8 100644 --- a/apps/isa-app/src/modal/kulturpass-order/kulturpass-order-modal.component.html +++ b/apps/isa-app/src/modal/kulturpass-order/kulturpass-order-modal.component.html @@ -20,18 +20,21 @@
-
-

- Warenkorb ist leer, bitte suchen oder scannen -
- Sie Artikel um den Warenkob zu füllen. -

-
- + @if (emptyShoppingCart$ | async) { +
+

+ Warenkorb ist leer, bitte suchen oder scannen +
+ Sie Artikel um den Warenkob zu füllen. +

+
+ } + @for (item of items$ | async; track trackItemById($index, item)) { + + }
@@ -49,13 +52,15 @@
-
Der Betrag übersteigt ihr Guthaben
+ @if (negativeBalance$ | async) { +
Der Betrag übersteigt ihr Guthaben
+ }
diff --git a/apps/isa-app/src/modal/message/message-modal.component.html b/apps/isa-app/src/modal/message/message-modal.component.html index 44df1b759..3110edb07 100644 --- a/apps/isa-app/src/modal/message/message-modal.component.html +++ b/apps/isa-app/src/modal/message/message-modal.component.html @@ -2,19 +2,20 @@ {{ message }}

- + @for (action of actions; track action) { + + }
diff --git a/apps/isa-app/src/modal/message/message-modal.component.ts b/apps/isa-app/src/modal/message/message-modal.component.ts index 5706d877e..65766ab90 100644 --- a/apps/isa-app/src/modal/message/message-modal.component.ts +++ b/apps/isa-app/src/modal/message/message-modal.component.ts @@ -1,4 +1,4 @@ -import { CommonModule } from '@angular/common'; + import { Component, ChangeDetectionStrategy } from '@angular/core'; import { UiModalRef } from '@ui/modal'; import { MessageModalData } from './message-modal.data'; @@ -10,7 +10,7 @@ import { MessageModalAction } from './message-modal.action'; styleUrls: ['message-modal.component.css'], changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'shared-message-modal' }, - imports: [CommonModule], + imports: [], }) export class MessageModalComponent { get message() { diff --git a/apps/isa-app/src/modal/notifications/notifications-list-item/notifications-list-item.component.html b/apps/isa-app/src/modal/notifications/notifications-list-item/notifications-list-item.component.html index 6b77e9133..7b40692a2 100644 --- a/apps/isa-app/src/modal/notifications/notifications-list-item/notifications-list-item.component.html +++ b/apps/isa-app/src/modal/notifications/notifications-list-item/notifications-list-item.component.html @@ -4,8 +4,10 @@
{{ item.text }}
- + @if (editButton) { + + }
diff --git a/apps/isa-app/src/modal/notifications/notifications-package-inspection-group/notifications-package-inspection-group.component.html b/apps/isa-app/src/modal/notifications/notifications-package-inspection-group/notifications-package-inspection-group.component.html index 0cdcdce4f..be446438c 100644 --- a/apps/isa-app/src/modal/notifications/notifications-package-inspection-group/notifications-package-inspection-group.component.html +++ b/apps/isa-app/src/modal/notifications/notifications-package-inspection-group/notifications-package-inspection-group.component.html @@ -1,5 +1,5 @@
- + @for (notification of notifications; track notification) {
-
+ }
diff --git a/apps/isa-app/src/modal/notifications/notifications-remission-group/notifications-remission-group.component.html b/apps/isa-app/src/modal/notifications/notifications-remission-group/notifications-remission-group.component.html index c270674aa..9c5c39a1d 100644 --- a/apps/isa-app/src/modal/notifications/notifications-remission-group/notifications-remission-group.component.html +++ b/apps/isa-app/src/modal/notifications/notifications-remission-group/notifications-remission-group.component.html @@ -1,8 +1,8 @@
- + @for (notification of notifications; track notification) {
-
+ }
diff --git a/apps/isa-app/src/modal/notifications/notifications-reservation-group/notifications-reservation-group.component.html b/apps/isa-app/src/modal/notifications/notifications-reservation-group/notifications-reservation-group.component.html index 0f2df8a6d..f06b277fb 100644 --- a/apps/isa-app/src/modal/notifications/notifications-reservation-group/notifications-reservation-group.component.html +++ b/apps/isa-app/src/modal/notifications/notifications-reservation-group/notifications-reservation-group.component.html @@ -1,8 +1,8 @@
- + @for (notification of notifications; track notification) {
-
+ }
diff --git a/apps/isa-app/src/modal/notifications/notifications-task-calendar-group/notifications-task-calendar-group.component.html b/apps/isa-app/src/modal/notifications/notifications-task-calendar-group/notifications-task-calendar-group.component.html index 255d51c4b..b797bcfc2 100644 --- a/apps/isa-app/src/modal/notifications/notifications-task-calendar-group/notifications-task-calendar-group.component.html +++ b/apps/isa-app/src/modal/notifications/notifications-task-calendar-group/notifications-task-calendar-group.component.html @@ -1,8 +1,8 @@
- + @for (notification of notifications; track notification) {
-
+ }
diff --git a/apps/isa-app/src/modal/notifications/notifications-update-group/notifications-update-group.component.html b/apps/isa-app/src/modal/notifications/notifications-update-group/notifications-update-group.component.html index 7f62780a1..e6c0e98e9 100644 --- a/apps/isa-app/src/modal/notifications/notifications-update-group/notifications-update-group.component.html +++ b/apps/isa-app/src/modal/notifications/notifications-update-group/notifications-update-group.component.html @@ -1,11 +1,11 @@
- + @for (notification of notifications; track notification) {

{{ notification.headline }}

{{ notification.text }}

-
+ }
diff --git a/apps/isa-app/src/modal/notifications/notifications.component.html b/apps/isa-app/src/modal/notifications/notifications.component.html index f6d1aa2ba..095fce9f6 100644 --- a/apps/isa-app/src/modal/notifications/notifications.component.html +++ b/apps/isa-app/src/modal/notifications/notifications.component.html @@ -1,6 +1,6 @@

Sie haben neue Nachrichten

- +@for (notification of notifications$ | async | keyvalue; track notification) {
- - - - - - - -
+ @if (notification.key === selectedArea) { + @switch (notification.value?.[0]?.category) { + @case ('ISA-Update') { + + } + @case ('Reservierungsanfragen') { + + } + @case ('Remission') { + + } + @case ('Tätigkeitskalender') { + + } + @case ('Wareneingang Lagerware') { + + } + } + } +} diff --git a/apps/isa-app/src/modal/printer/modal-printer.component.html b/apps/isa-app/src/modal/printer/modal-printer.component.html index 9391fd514..455e4ed11 100644 --- a/apps/isa-app/src/modal/printer/modal-printer.component.html +++ b/apps/isa-app/src/modal/printer/modal-printer.component.html @@ -2,13 +2,17 @@

Wählen Sie einen Drucker aus

- {{ errorMessage }} + @if (error) { + {{ errorMessage }} + }
- + @for (printer of printers$ | async; track printer) { + + }
diff --git a/apps/isa-app/src/modal/purchase-options/purchase-options-list-header/purchase-options-list-header.component.html b/apps/isa-app/src/modal/purchase-options/purchase-options-list-header/purchase-options-list-header.component.html index 122ccb342..c85157bba 100644 --- a/apps/isa-app/src/modal/purchase-options/purchase-options-list-header/purchase-options-list-header.component.html +++ b/apps/isa-app/src/modal/purchase-options/purchase-options-list-header/purchase-options-list-header.component.html @@ -1,5 +1,9 @@
- - + @if (selectButton$ | async) { + + } + @if (unselectButton$ | async) { + + } {{ selectedItemsCount$ | async }} von {{ itemsCount$ | async }} Artikel
diff --git a/apps/isa-app/src/modal/purchase-options/purchase-options-list-item/purchase-options-list-item.component.html b/apps/isa-app/src/modal/purchase-options/purchase-options-list-item/purchase-options-list-item.component.html index 7f82e1434..ee19a4520 100644 --- a/apps/isa-app/src/modal/purchase-options/purchase-options-list-item/purchase-options-list-item.component.html +++ b/apps/isa-app/src/modal/purchase-options/purchase-options-list-item/purchase-options-list-item.component.html @@ -15,147 +15,171 @@
{{ product?.manufacturer }} - | + @if (product?.manufacturer && product?.ean) { + | + } {{ product?.ean }}
{{ product?.volume }} - | + @if (product?.volume && product?.publicationDate) { + | + } {{ product?.publicationDate | date: 'dd. MMMM yyyy' }}
-
Verfügbar als
-
-
- - - {{ availability.data.estimatedDelivery?.start | date: 'EE dd.MM.' }} - - - {{ availability.data.estimatedDelivery?.stop | date: 'EE dd.MM.' }} - - - - {{ availability.data.estimatedDelivery?.start | date: 'EE dd.MM.' }} - - - {{ availability.data.estimatedDelivery?.stop | date: 'EE dd.MM.' }} - - - - {{ availability.data.estimatedShippingDate | date: 'dd. MMMM yyyy' }} - - - - {{ availability.data.estimatedShippingDate | date: 'dd. MMMM yyyy' }} - Verfügbar als
+ } + @for (availability of availabilities$ | async; track availability) { +
+
- {{ availability.data?.orderDeadline | orderDeadline }} - - - - - {{ availability.data.inStock }}x - ab {{ isEVT | date: 'dd. MMMM yyyy' }} - ab sofort - - - - Download - + @switch (availability.purchaseOption) { + @case ('delivery') { + + {{ availability.data.estimatedDelivery?.start | date: 'EE dd.MM.' }} + - + {{ availability.data.estimatedDelivery?.stop | date: 'EE dd.MM.' }} + } + @case ('dig-delivery') { + + {{ availability.data.estimatedDelivery?.start | date: 'EE dd.MM.' }} + - + {{ availability.data.estimatedDelivery?.stop | date: 'EE dd.MM.' }} + } + @case ('b2b-delivery') { + + {{ availability.data.estimatedShippingDate | date: 'dd. MMMM yyyy' }} + } + @case ('pickup') { + + {{ availability.data.estimatedShippingDate | date: 'dd. MMMM yyyy' }} + + {{ availability.data?.orderDeadline | orderDeadline }} + + } + @case ('in-store') { + + {{ availability.data.inStock }}x + @if (isEVT) { + ab {{ isEVT | date: 'dd. MMMM yyyy' }} + } @else { + ab sofort + } + } + @case ('download') { + + Download + } + } +
-
+ }
- - - - - - - - - EUR - Preis ist ungültig - Preis ist ungültig - Preis ist ungültig - Preis ist ungültig - + @if (canEditVat$ | async) { + + @for (vat of vats$ | async; track vat) { + + } + + } + @if (canEditPrice$ | async) { + + + @if (priceFormControl?.invalid && priceFormControl?.dirty) { + + } + + + EUR + Preis ist ungültig + Preis ist ungültig + Preis ist ungültig + Preis ist ungültig + + } @else { + {{ priceValue$ | async | currency: 'EUR' : 'code' }} + } - - Tragen Sie hier den -
- Gutscheinbetrag ein. -
+ + Tragen Sie hier den +
+ Gutscheinbetrag ein. +
+
+
+ +
+ @if ((canAddResult$ | async)?.canAdd) { + + }
- - {{ priceValue$ | async | currency: 'EUR' : 'code' }} - -
- -
- -
- - - {{ canAddResult.message }} - - + @if (canAddResult$ | async; as canAddResult) { + @if (!canAddResult.canAdd) { + + {{ canAddResult.message }} + + } + } - - {{ (availability$ | async)?.inStock }} Exemplare sofort lieferbar - - Derzeit nicht bestellbar + @if (showMaxAvailableQuantity$ | async) { + + {{ (availability$ | async)?.inStock }} Exemplare sofort lieferbar + + } + @if (showNotAvailable$ | async) { + Derzeit nicht bestellbar + } +
+
+
+
+
- -
-
-
-
diff --git a/apps/isa-app/src/modal/purchase-options/purchase-options-modal.component.html b/apps/isa-app/src/modal/purchase-options/purchase-options-modal.component.html index 89494aec2..610049ad7 100644 --- a/apps/isa-app/src/modal/purchase-options/purchase-options-modal.component.html +++ b/apps/isa-app/src/modal/purchase-options/purchase-options-modal.component.html @@ -1,28 +1,37 @@

Lieferung auswählen

Wie möchten Sie die Artikel erhalten?

- - - - - - - + @if (!(isDownloadOnly$ | async)) { + @if (!(isGiftCardOnly$ | async)) { + @if (showOption('in-store')) { + + } + @if (showOption('pickup')) { + + } + } + @if (showOption('delivery')) { + + } + } - - - + @if (hasDownload$ | async) { + @if (showOption('download')) { + + } + }
- + @for (item of items$ | async; track itemTrackBy($index, item)) { + + }
- + @if (type === 'add') { @@ -31,18 +40,18 @@ class="ml-4 isa-cta-button isa-button-primary" [disabled]="!(canContinue$ | async) || saving" (click)="save('continue')" - > + > Fortfahren - - + } + @if (type === 'update') { - + }
diff --git a/apps/isa-app/src/modal/purchase-options/purchase-options-tile/download-purchase-options-tile.component.ts b/apps/isa-app/src/modal/purchase-options/purchase-options-tile/download-purchase-options-tile.component.ts index ed14cf899..ed0b5622a 100644 --- a/apps/isa-app/src/modal/purchase-options/purchase-options-tile/download-purchase-options-tile.component.ts +++ b/apps/isa-app/src/modal/purchase-options/purchase-options-tile/download-purchase-options-tile.component.ts @@ -1,4 +1,4 @@ -import { CommonModule } from '@angular/common'; + import { Component, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core'; import { PurchaseOptionsStore } from '../store'; import { BasePurchaseOptionDirective } from './base-purchase-option.directive'; @@ -9,7 +9,7 @@ import { IconComponent } from '@shared/components/icon'; templateUrl: 'download-purchase-options-tile.component.html', styleUrls: ['purchase-options-tile.component.css'], changeDetection: ChangeDetectionStrategy.OnPush, - imports: [CommonModule, IconComponent], + imports: [IconComponent], }) export class DownloadPurchaseOptionTileComponent extends BasePurchaseOptionDirective { constructor( diff --git a/apps/isa-app/src/modal/reorder/reorder.component.html b/apps/isa-app/src/modal/reorder/reorder.component.html index cfc7e3128..638bb093d 100644 --- a/apps/isa-app/src/modal/reorder/reorder.component.html +++ b/apps/isa-app/src/modal/reorder/reorder.component.html @@ -2,30 +2,31 @@
- +@if (orderItem$ | async; as orderItem) {
- - + @if (orderItem?.product?.ean | productImage; as productImage) { + + }
{{ orderItem.product?.name }}
-
- format icon - {{ orderItem.product.formatDetail }} -
+ @if (orderItem.product?.format && orderItem.product.formatDetail) { +
+ format icon + {{ orderItem.product.formatDetail }} +
+ }
{{ orderItem.product?.ean }}
{{ orderItem.quantity }}x
- - + @if (availabilities$ | async; as availabilities) {
Bestand @@ -34,53 +35,56 @@ vsl. Lieferdatum Preis - - - + @for (availability of availabilities; track availability; let i = $index) { + @if (availability) { {{ availability.supplier | supplierName }} {{ availability.qty || 0 }} {{ availability.ssc }} - + @if (availability.supplier !== 'F') { + + } {{ availability.at | date: 'dd.MM.yy' }} {{ availability.price?.value?.value | currency: 'EUR' : 'code' }} - + @if (availability.supplier !== 'F' || availability.qty > 0) { + + } - - + } + }
- - + @if (storeAvailabilityError$ | async) {
Lieferantenbestand nicht verfügbar

-
- - + } + @if (takeAwayAvailabilityError$ | async) {
Filialbestand nicht verfügbar

-
- -
- - - - - - Bitte wählen Sie einen Grund für das nachbestellen -
- + + @for (reason of reorderReasons$ | async; track reason) { + + } + + @if (showReasonError$ | async) { + Bitte wählen Sie einen Grund für das nachbestellen + } + + }
-
- - + } @else { - -
+ } +} diff --git a/apps/isa-app/src/modal/reviews/reviews.component.html b/apps/isa-app/src/modal/reviews/reviews.component.html index 24772b6dc..c89279d72 100644 --- a/apps/isa-app/src/modal/reviews/reviews.component.html +++ b/apps/isa-app/src/modal/reviews/reviews.component.html @@ -5,7 +5,7 @@

- + @for (review of reviews; track review) {
@@ -16,21 +16,29 @@
- {{ review.text | substr: 150 }} - {{ review.text }} + @if (expandIds.indexOf(review.id) === -1) { + {{ review.text | substr: 150 }} + } + @if (expandIds.indexOf(review.id) > -1) { + {{ review.text }} + }
- - + @if (expandIds.indexOf(review.id) === -1) { + + } + @if (expandIds.indexOf(review.id) > -1) { + + }

-
+ }
diff --git a/apps/isa-app/src/page/assortment/price-update/price-update-list/price-update-item.component.html b/apps/isa-app/src/page/assortment/price-update/price-update-list/price-update-item.component.html index 57dd27ff0..ce7f6c260 100644 --- a/apps/isa-app/src/page/assortment/price-update/price-update-list/price-update-item.component.html +++ b/apps/isa-app/src/page/assortment/price-update/price-update-list/price-update-item.component.html @@ -1,6 +1,6 @@
+ >

{{ item?.task?.instruction }}

gültig ab @@ -10,13 +10,14 @@

- + @if (item?.product?.ean | productImage; as productImage) { + + }
@@ -31,28 +32,33 @@ [class.text-md]="item?.product?.name?.length >= 50" [class.text-p3]="item?.product?.name?.length >= 60" [class.text-xs]="item?.product?.name?.length >= 100" - > + > {{ item?.product?.name }}
-
- - {{ environment.isTablet() ? (item?.product?.formatDetail | substr: 25) : item?.product?.formatDetail }} -
+ @if (item?.product?.format && item?.product?.formatDetail) { +
+ @if (item?.product?.format !== '--') { + + } + {{ environment.isTablet() ? (item?.product?.formatDetail | substr: 25) : item?.product?.formatDetail }} +
+ }
{{ environment.isTablet() ? (item?.product?.manufacturer | substr: 18) : item?.product?.manufacturer }} | {{ item?.product?.ean }}
{{ item?.product?.volume }} - | + @if (item?.product?.volume && item?.product?.publicationDate) { + | + } {{ publicationDate }}
@@ -69,18 +75,21 @@
- + @if (isSelectable) { + + }
- - {{ stock?.inStock }} - + @if (inStock$ | async; as stock) { + + {{ stock?.inStock }} + + } x
diff --git a/apps/isa-app/src/page/assortment/price-update/price-update-list/price-update-list.component.html b/apps/isa-app/src/page/assortment/price-update/price-update-list/price-update-list.component.html index 2c81ceb5f..337dc4822 100644 --- a/apps/isa-app/src/page/assortment/price-update/price-update-list/price-update-list.component.html +++ b/apps/isa-app/src/page/assortment/price-update/price-update-list/price-update-list.component.html @@ -4,20 +4,26 @@ (click)="print()" type="button" class="page-price-update-list__print-cta text-lg font-bold text-[#F70400] pr-5 mb-3" - > + > Drucken
-
- - - - -
+ @if (getSelectableItems().length > 0) { +
+ @if (selectedItemUids$ | async; as selectedItems) { + @if (selectedItems?.length > 0) { + + } + @if (selectedItems?.length === 0) { + + } + } +
+ }
{{ items?.length ?? 0 }} Titel @@ -32,38 +38,41 @@
@for (item of items; track item.uId; let first = $first) { @defer (on viewport) { - + } @placeholder { - - } + } +} - -
+@if (fetching) { + +} +
- + @if (!fetching) { + + }
diff --git a/apps/isa-app/src/page/assortment/price-update/price-update.component.html b/apps/isa-app/src/page/assortment/price-update/price-update.component.html index b26859aff..c3527dc61 100644 --- a/apps/isa-app/src/page/assortment/price-update/price-update.component.html +++ b/apps/isa-app/src/page/assortment/price-update/price-update.component.html @@ -5,17 +5,20 @@ id="asortment-filter-button" class="absolute right-0 top-0 h-14 rounded px-5 text-lg bg-cadet-blue flex flex-row flex-nowrap items-center justify-center" type="button" - > + > Filter
- +@if (showList$ | async) { + +} @else { +
Keine Preisänderungen vorhanden.
+}
@@ -26,22 +29,23 @@

Filter

- + @if (filterOverlay.isOpen) { + + }
- -
Keine Preisänderungen vorhanden.
-
diff --git a/apps/isa-app/src/page/catalog/article-details/article-details-text/article-details-text.component.html b/apps/isa-app/src/page/catalog/article-details/article-details-text/article-details-text.component.html index fb0a5f9d0..88b5c46d7 100644 --- a/apps/isa-app/src/page/catalog/article-details/article-details-text/article-details-text.component.html +++ b/apps/isa-app/src/page/catalog/article-details/article-details-text/article-details-text.component.html @@ -1,14 +1,16 @@ - - - - - {{ reihe }} - +@for (line of lines; track line) { + @switch (line | lineType) { + @case ('reihe') { + @for (reihe of getReihen(line); track reihe) { + + {{ reihe }} + + }
-
- + } + @default { {{ line }}
-
-
-
+ } + } +} diff --git a/apps/isa-app/src/page/catalog/article-details/article-details-text/article-details-text.component.ts b/apps/isa-app/src/page/catalog/article-details/article-details-text/article-details-text.component.ts index afb293377..18b22d503 100644 --- a/apps/isa-app/src/page/catalog/article-details/article-details-text/article-details-text.component.ts +++ b/apps/isa-app/src/page/catalog/article-details/article-details-text/article-details-text.component.ts @@ -1,7 +1,7 @@ import { Component, ChangeDetectionStrategy, Input } from '@angular/core'; import { TextDTO } from '@generated/swagger/cat-search-api'; import { ArticleDetailsTextLinkComponent } from './article-details-text-link.component'; -import { NgFor, NgSwitch, NgSwitchCase, NgSwitchDefault } from '@angular/common'; + import { LineTypePipe } from './line-type.pipe'; import { ReiheRoutePipe } from './reihe-route.pipe'; @@ -13,13 +13,9 @@ import { ReiheRoutePipe } from './reihe-route.pipe'; host: { class: 'page-article-details-text' }, imports: [ ArticleDetailsTextLinkComponent, - NgFor, - NgSwitch, - NgSwitchCase, - NgSwitchDefault, LineTypePipe, - ReiheRoutePipe, - ], + ReiheRoutePipe +], }) export class ArticleDetailsTextComponent { @Input() diff --git a/apps/isa-app/src/page/catalog/article-details/article-details.component.html b/apps/isa-app/src/page/catalog/article-details/article-details.component.html index 49d0a8d70..c4abdca91 100644 --- a/apps/isa-app/src/page/catalog/article-details/article-details.component.html +++ b/apps/isa-app/src/page/catalog/article-details/article-details.component.html @@ -1,782 +1,799 @@
-
-
-
-
- -
-
- - - Artikel ist ein Fortsetzungsartikel, -
- Artikel muss über eine Aboabteilung -
- bestellt werden. -
-
-
- -
-
- -
-
- -
- - -
- -
- - {{ contributor }}{{ last ? '' : ';' }} - -
- -
- -
- -
- {{ item.product?.name }} -
- -
-
- - {{ item.product?.formatDetail }} -
- -
Band/Reihe {{ item?.product?.volume }}
- -
{{ publicationDate$ | async }}
-
- -
-
- {{ price?.value?.value | currency: price?.value?.currency : 'code' }} -
-
- {{ price?.vat?.vatType | vat: (priceMaintained$ | async) }} -
-
- {{ promotionPoints }} Lesepunkte -
-
- -
-
{{ item.product?.manufacturer }}
- -
- {{ item?.product?.locale }} -
-
- -
-
- - - {{ stockTooltipText$ | async }} - -
- -
-
{{ item.product?.ean }}
- -
- - {{ (item?.specs)[0]?.value }} - -
-
- -
-
- -
- -
-
- -
- -
- -
- - - {{ (store.pickUpAvailability$ | async)?.orderDeadline | orderDeadline }} - -
- -
- -
- -
-
- -
- -
- -
-
- - -
- -
-
-
- -
-
-
- -
- {{ sscText }} -
-
-
- -
- - - {{ (item?.stockInfos)[0]?.compartment }} - - / -
- - {{ (item?.shelfInfos)[0]?.label }} - -
- - - {{ (item?.stockInfos)[0]?.compartment }} - - - - - {{ (item?.shelfInfos)[0]?.label }} - - -
-
- - {{ (item?.stockInfos)[0]?.compartment }} - / -
- {{ (item?.shelfInfos)[0]?.label }} -
- - - {{ (item?.stockInfos)[0]?.compartment }} - - - - - {{ (item?.shelfInfos)[0]?.label }} - - -
-
-
-
-
- -
-
-
- -
- -
- -
- -

{{ text.label }}

- {{ text.value }} -
- - - - -
- -
-
-
- -
- -
-
- -
- - -
- -
- -
- - +
+ +
--> diff --git a/apps/isa-app/src/page/catalog/article-details/recommendations/article-recommendations.component.html b/apps/isa-app/src/page/catalog/article-details/recommendations/article-recommendations.component.html index 3bc98d415..1d30f896f 100644 --- a/apps/isa-app/src/page/catalog/article-details/recommendations/article-recommendations.component.html +++ b/apps/isa-app/src/page/catalog/article-details/recommendations/article-recommendations.component.html @@ -1,37 +1,39 @@ - +@if (store.item$ | async; as item) {

Empfehlungen für Sie

Neben dem Titel "{{ item.product?.name }}" gibt es noch andere Artikel, die Sie interessieren könnten.

-
Artikel - - - Keine Empfehlungen verfügbar - - - - product-image -
- {{ recommendation.product?.formatDetail }} - {{ recommendation.catalogAvailability?.price?.value?.value | currency: ' ' }} EUR -
-
-
-
+ @if (store.recommendations$ | async; as recommendations) { + @if (recommendations.length === 0) { + Keine Empfehlungen verfügbar + } + @if (recommendations.length > 0) { + + @for (recommendation of store.recommendations$ | async; track recommendation) { + + product-image +
+ {{ recommendation.product?.formatDetail }} + {{ recommendation.catalogAvailability?.price?.value?.value | currency: ' ' }} EUR +
+
+ } +
+ } + }
-
+} diff --git a/apps/isa-app/src/page/catalog/article-search/search-filter/search-filter.component.html b/apps/isa-app/src/page/catalog/article-search/search-filter/search-filter.component.html index d44f12117..154e4ac12 100644 --- a/apps/isa-app/src/page/catalog/article-search/search-filter/search-filter.component.html +++ b/apps/isa-app/src/page/catalog/article-search/search-filter/search-filter.component.html @@ -1,19 +1,19 @@
diff --git a/apps/isa-app/src/page/catalog/article-search/search-main/search-main.component.html b/apps/isa-app/src/page/catalog/article-search/search-main/search-main.component.html index 53f593d79..5562c87ee 100644 --- a/apps/isa-app/src/page/catalog/article-search/search-main/search-main.component.html +++ b/apps/isa-app/src/page/catalog/article-search/search-main/search-main.component.html @@ -1,12 +1,13 @@

Artikelsuche

Welchen Artikel suchen Sie?

- - + @if (filter$ | async; as filter) { + @if (!(isDesktop$ | async)) { + + }
- + @if (!(isDesktop$ | async)) { + + }
-

Deine letzten Suchanfragen

    -
  • - -
  • + @for (recentQuery of history$ | async; track recentQuery) { +
  • + +
  • + }
-
+ }
diff --git a/apps/isa-app/src/page/catalog/article-search/search-results/added-to-cart-modal/added-to-cart-modal.component.html b/apps/isa-app/src/page/catalog/article-search/search-results/added-to-cart-modal/added-to-cart-modal.component.html index f077d5804..5241f19f4 100644 --- a/apps/isa-app/src/page/catalog/article-search/search-results/added-to-cart-modal/added-to-cart-modal.component.html +++ b/apps/isa-app/src/page/catalog/article-search/search-results/added-to-cart-modal/added-to-cart-modal.component.html @@ -1,4 +1,6 @@ -

{{ ref.data.canAddMessage }}

+@if (ref.data.canAddMessage) { +

{{ ref.data.canAddMessage }}

+}
diff --git a/apps/isa-app/src/page/catalog/article-search/search-results/search-result-item-loading.component.html b/apps/isa-app/src/page/catalog/article-search/search-results/search-result-item-loading.component.html index fb52f4577..4f2c36d9e 100644 --- a/apps/isa-app/src/page/catalog/article-search/search-results/search-result-item-loading.component.html +++ b/apps/isa-app/src/page/catalog/article-search/search-results/search-result-item-loading.component.html @@ -1,4 +1,4 @@ - +@if (!primaryOutletActive) {
@@ -16,9 +16,7 @@
- - - +} @else {
@@ -35,4 +33,5 @@
-
+} + diff --git a/apps/isa-app/src/page/catalog/article-search/search-results/search-result-item.component.html b/apps/isa-app/src/page/catalog/article-search/search-results/search-result-item.component.html index 337047352..27abafcf6 100644 --- a/apps/isa-app/src/page/catalog/article-search/search-results/search-result-item.component.html +++ b/apps/isa-app/src/page/catalog/article-search/search-results/search-result-item.component.html @@ -2,32 +2,34 @@ class="page-search-result-item__item-card hover p-5 desktop-small:px-4 desktop-small:py-[0.625rem] h-[13.25rem] desktop-small:h-[11.3125rem] bg-white border border-solid border-transparent rounded" [class.page-search-result-item__item-card-primary]="primaryOutletActive" [class.active]="isActive" -> + >
- + @if (item?.imageId | thumbnailUrl; as thumbnailUrl) { + + }
+ >
- - {{ contributor }}{{ last ? '' : ';' }} - + @for (contributor of contributors; track contributor; let last = $last) { + + {{ contributor }}{{ last ? '' : ';' }} + + }
+ > {{ item?.product?.name }}
-
- - {{ item?.product?.formatDetail | substr: 30 }} -
+ @if (item?.product?.format && item?.product?.formatDetail) { +
+ @if (item?.product?.format !== '--') { + + } + {{ item?.product?.formatDetail | substr: 30 }} +
+ }
@@ -60,31 +65,34 @@
{{ item?.product?.volume }} - | + @if (item?.product?.volume && item?.product?.publicationDate) { + | + } {{ publicationDate }}
+ > {{ item?.catalogAvailability?.price?.value?.value | currency: 'EUR' : 'code' }}
- + class="isa-select-bullet" + type="checkbox" + matomoTracker + #tracker="matomo" + /> + }
@@ -117,14 +126,14 @@
- + > + @if (ssc$ | async; as ssc) { {{ ssc?.ssc }} - {{ ssc?.sscText }} - + }
diff --git a/apps/isa-app/src/page/catalog/article-search/search-results/search-results.component.html b/apps/isa-app/src/page/catalog/article-search/search-results/search-results.component.html index 12d0c3a6a..462665292 100644 --- a/apps/isa-app/src/page/catalog/article-search/search-results/search-results.component.html +++ b/apps/isa-app/src/page/catalog/article-search/search-results/search-results.component.html @@ -2,50 +2,53 @@ class="page-search-results__header bg-background-liste flex items-end justify-between" [class.pb-4]="!(primaryOutletActive$ | async)" [class.flex-col]="!(primaryOutletActive$ | async)" -> + >
- + @if (filter$ | async; as filter) { + + } + > Filter
-
- {{ hits ?? 0 }} - Titel -
+ @if (hits$ | async; as hits) { +
+ {{ hits ?? 0 }} + Titel +
+ }
- + @if (filter$ | async; as filter) { + + }
- +@if (primaryOutletActive$ | async) { + > - + @if (fetching$ | async) { + + } - - - +} @else { + > - + @if (fetching$ | async) { + + } - +} + diff --git a/apps/isa-app/src/page/checkout/checkout-dummy/checkout-dummy.component.html b/apps/isa-app/src/page/checkout/checkout-dummy/checkout-dummy.component.html index e3fba612f..d9703006d 100644 --- a/apps/isa-app/src/page/checkout/checkout-dummy/checkout-dummy.component.html +++ b/apps/isa-app/src/page/checkout/checkout-dummy/checkout-dummy.component.html @@ -9,87 +9,93 @@

-
- - - - - - -
- - + @if (control) { + + + - - - + + -
- - - - - - - - - - - -
- - +
+ + + + + + + +
+ + - - - + + + + + + @for (supplier of suppliers$ | async; track supplier) { + + } -
-
- - -
-
+
+ + + + + + @for (vat of vats$ | async; track vat) { + + } + + +
+
+ + +
+ + } diff --git a/apps/isa-app/src/page/checkout/checkout-review/checkout-review.component.html b/apps/isa-app/src/page/checkout/checkout-review/checkout-review.component.html index 22237ffdc..5ddca304d 100644 --- a/apps/isa-app/src/page/checkout/checkout-review/checkout-review.component.html +++ b/apps/isa-app/src/page/checkout/checkout-review/checkout-review.component.html @@ -1,10 +1,9 @@ - +@if ((groupedItems$ | async)?.length <= 0 && !(fetching$ | async)) {
-

Ihr Warenkorb ist leer.

Sie haben alle Artikel aus dem @@ -13,84 +12,75 @@
keinen Artikel hinzugefügt.

-
Artikel suchen
-
- -
- -
- - - +} @else { + @if (shoppingCart$ | async; as shoppingCart) {

Warenkorb

- - + @if (!(isDesktop$ | async)) { - - - - + } + @for (group of groupedItems$ | async; track trackByGroupedItems($index, group); let lastGroup = $last) { + @if (group?.orderType !== undefined) {
- - + @if (group.orderType !== 'Dummy') { + + }
{{ group.orderType !== 'Dummy' ? group.orderType : 'Manuelle Anlage / Dummy Bestellung' }} - + @if (group.orderType === 'Dummy') { + + }
-
-
- -
+ @if (group.orderType !== 'Download' && group.orderType !== 'Dummy') { +
+ +
+ }
-
-
- - - - + @if ( + group.orderType === 'Download' || + group.orderType === 'Versand' || + group.orderType === 'B2B-Versand' || + group.orderType === 'DIG-Versand' + ) { +
+ } + } + @for (item of group.items; track trackByItemId(i, item); let lastItem = $last; let i = $index) { + @if (group?.orderType !== undefined && (item.features?.orderType === 'Abholung' || item.features?.orderType === 'Rücklage')) { + @if (item?.destination?.data?.targetBranch?.data; as targetBranch) { + @if (i === 0 || checkIfMultipleDestinationsForOrderTypeExist(targetBranch, group, i)) {
+ > {{ targetBranch?.name }} | {{ targetBranch | branchAddress }}

-
-
-
- + } + } + } - -
-
-
+ @if (!lastItem) { +
+ } + } + }

Kundenkarte

-

- Alle Infos zu Ihrer Kundenkarte -
- und allen Partnerkarten. -

-

Keine Kundenkarte gefunden.

- +@if (!(noDataFound$ | async)) { +

+ Alle Infos zu Ihrer Kundenkarte +
+ und allen Partnerkarten. +

+} +@if (noDataFound$ | async) { +

Keine Kundenkarte gefunden.

+} +@for (karte of primaryKundenkarte$ | async; track karte) { + +} -

Partnerkarten

+@if ((partnerKundenkarte$ | async)?.length) { +

Partnerkarten

+} - +@for (karte of partnerKundenkarte$ | async; track karte) { + +} diff --git a/apps/isa-app/src/page/customer/customer-search/kundenkarte-main-view/kundenkarte-main-view.component.ts b/apps/isa-app/src/page/customer/customer-search/kundenkarte-main-view/kundenkarte-main-view.component.ts index 6d0f7d2b3..3f5b23d9c 100644 --- a/apps/isa-app/src/page/customer/customer-search/kundenkarte-main-view/kundenkarte-main-view.component.ts +++ b/apps/isa-app/src/page/customer/customer-search/kundenkarte-main-view/kundenkarte-main-view.component.ts @@ -5,7 +5,7 @@ import { Subject, combineLatest, of } from 'rxjs'; import { catchError, map, share, switchMap } from 'rxjs/operators'; import { CrmCustomerService } from '@domain/crm'; import { KundenkarteComponent } from '../../components/kundenkarte'; -import { AsyncPipe, NgFor, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { IconComponent } from '@shared/components/icon'; import { CustomerSearchNavigation } from '@shared/services/navigation'; import { BonusCardInfoDTO } from '@generated/swagger/crm-api'; @@ -17,7 +17,7 @@ import { CustomerMenuComponent } from '../../components/customer-menu'; styleUrls: ['kundenkarte-main-view.component.css'], changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'page-customer-kundenkarte-main-view' }, - imports: [CustomerMenuComponent, KundenkarteComponent, NgFor, AsyncPipe, NgIf, IconComponent, RouterLink], + imports: [CustomerMenuComponent, KundenkarteComponent, AsyncPipe, IconComponent, RouterLink], }) export class KundenkarteMainViewComponent implements OnInit, OnDestroy { private _store = inject(CustomerSearchStore); diff --git a/apps/isa-app/src/page/customer/customer-search/main-side-view/main-side-view.component.html b/apps/isa-app/src/page/customer/customer-search/main-side-view/main-side-view.component.html index 685f71cc7..e85a43823 100644 --- a/apps/isa-app/src/page/customer/customer-search/main-side-view/main-side-view.component.html +++ b/apps/isa-app/src/page/customer/customer-search/main-side-view/main-side-view.component.html @@ -1,17 +1,20 @@

Kundensuche

Haben Sie ein Konto bei uns?

- + @if (filter$ | async; as filter) { + + }

Kunde nicht gefunden? - - Neue Kundendaten erfassen - + @if (createRoute$ | async; as route) { + + Neue Kundendaten erfassen + + }

diff --git a/apps/isa-app/src/page/customer/customer-search/main-side-view/main-side-view.component.ts b/apps/isa-app/src/page/customer/customer-search/main-side-view/main-side-view.component.ts index c05c9b424..99c9ddadf 100644 --- a/apps/isa-app/src/page/customer/customer-search/main-side-view/main-side-view.component.ts +++ b/apps/isa-app/src/page/customer/customer-search/main-side-view/main-side-view.component.ts @@ -1,4 +1,4 @@ -import { AsyncPipe, CommonModule, NgIf } from '@angular/common'; +import { AsyncPipe, CommonModule } from '@angular/common'; import { Component, ChangeDetectionStrategy, inject } from '@angular/core'; import { RouterModule } from '@angular/router'; import { Filter, FilterModule } from '@shared/components/filter'; @@ -13,7 +13,7 @@ import { CustomerInfoDTO } from '@generated/swagger/crm-api'; templateUrl: 'main-side-view.component.html', styleUrls: ['main-side-view.component.css'], changeDetection: ChangeDetectionStrategy.OnPush, - imports: [CommonModule, RouterModule, FilterModule, AsyncPipe, NgIf], + imports: [CommonModule, RouterModule, FilterModule, AsyncPipe], }) export class MainSideViewComponent { private _store = inject(CustomerSearchStore); diff --git a/apps/isa-app/src/page/customer/customer-search/main-view/main-view.component.html b/apps/isa-app/src/page/customer/customer-search/main-view/main-view.component.html index 9aefddc64..5bf4fe5b2 100644 --- a/apps/isa-app/src/page/customer/customer-search/main-view/main-view.component.html +++ b/apps/isa-app/src/page/customer/customer-search/main-view/main-view.component.html @@ -3,32 +3,36 @@

Kundensuche

Haben Sie ein Konto bei uns?

- - - - Filter - + @if (filter$ | async; as filter) { + + } + @if (filterRoute$ | async; as filterRoute) { + + + Filter + + }

Kunde nicht gefunden? - - Neue Kundendaten erfassen - + @if (createRoute$ | async; as route) { + + Neue Kundendaten erfassen + + }

diff --git a/apps/isa-app/src/page/customer/customer-search/main-view/main-view.component.ts b/apps/isa-app/src/page/customer/customer-search/main-view/main-view.component.ts index c6e8573c1..8e9cc5d10 100644 --- a/apps/isa-app/src/page/customer/customer-search/main-view/main-view.component.ts +++ b/apps/isa-app/src/page/customer/customer-search/main-view/main-view.component.ts @@ -2,7 +2,7 @@ import { Component, ChangeDetectionStrategy, inject } from '@angular/core'; import { CustomerSearchStore } from '../store'; import { Filter, FilterModule } from '@shared/components/filter'; import { map } from 'rxjs/operators'; -import { AsyncPipe, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { Router, RouterLink } from '@angular/router'; import { IconComponent } from '@shared/components/icon'; import { combineLatest } from 'rxjs'; @@ -17,7 +17,7 @@ import { CustomerInfoDTO } from '@generated/swagger/crm-api'; styleUrls: ['main-view.component.css'], changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'page-customer-main-view' }, - imports: [AsyncPipe, RouterLink, FilterModule, NgIf, IconComponent, CustomerFilterMainViewModule], + imports: [AsyncPipe, RouterLink, FilterModule, IconComponent, CustomerFilterMainViewModule], }) export class CustomerMainViewComponent { private _searchNavigation = inject(CustomerSearchNavigation); diff --git a/apps/isa-app/src/page/customer/customer-search/order-details-history-main-view/order-details-history-main-view.component.html b/apps/isa-app/src/page/customer/customer-search/order-details-history-main-view/order-details-history-main-view.component.html index dac6987f9..c83c70ff5 100644 --- a/apps/isa-app/src/page/customer/customer-search/order-details-history-main-view/order-details-history-main-view.component.html +++ b/apps/isa-app/src/page/customer/customer-search/order-details-history-main-view/order-details-history-main-view.component.html @@ -1,12 +1,13 @@ - - - +@if (fetching$ | async) { +} @else {
- - - + @if (detailsRoute$ | async; as route) { + + + + }

Historie

@@ -26,4 +27,5 @@
- +} + diff --git a/apps/isa-app/src/page/customer/customer-search/order-details-history-main-view/order-details-history-main-view.component.ts b/apps/isa-app/src/page/customer/customer-search/order-details-history-main-view/order-details-history-main-view.component.ts index f05dffa59..293dec601 100644 --- a/apps/isa-app/src/page/customer/customer-search/order-details-history-main-view/order-details-history-main-view.component.ts +++ b/apps/isa-app/src/page/customer/customer-search/order-details-history-main-view/order-details-history-main-view.component.ts @@ -7,7 +7,7 @@ import { Observable, Subject, combineLatest } from 'rxjs'; import { map, switchMap, takeUntil, tap } from 'rxjs/operators'; import { CustomerSearchStore } from '../store'; import { CustomerSearchNavigation } from '@shared/services/navigation'; -import { AsyncPipe, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { IconModule } from '@shared/components/icon'; import { SharedHistoryListModule } from '@shared/components/history'; import { ActivatedRoute, RouterLink } from '@angular/router'; @@ -23,7 +23,7 @@ export interface CustomerHistoryViewMainState { templateUrl: 'order-details-history-main-view.component.html', styleUrls: ['order-details-history-main-view.component.css'], changeDetection: ChangeDetectionStrategy.OnPush, - imports: [AsyncPipe, RouterLink, NgIf, IconModule, SharedHistoryListModule], + imports: [AsyncPipe, RouterLink, IconModule, SharedHistoryListModule], }) export class CustomerOrderDetailsHistoryMainViewComponent extends ComponentStore diff --git a/apps/isa-app/src/page/customer/customer-search/order-details-main-view/order-item-list-item/order-item-list-item.component.html b/apps/isa-app/src/page/customer/customer-search/order-details-main-view/order-item-list-item/order-item-list-item.component.html index 36c340a74..f277b0a55 100644 --- a/apps/isa-app/src/page/customer/customer-search/order-details-main-view/order-item-list-item/order-item-list-item.component.html +++ b/apps/isa-app/src/page/customer/customer-search/order-details-main-view/order-item-list-item/order-item-list-item.component.html @@ -5,15 +5,16 @@
{{ orderItem.product?.contributors }} - - Historie - + @if (orderDetailsHistoryRoute$ | async; as orderDetailsHistoryRoute) { + + Historie + + }
{{ orderItem?.product?.name }} @@ -23,82 +24,90 @@ {{ processingStatus$ | async | orderItemProcessingStatus }}
-
-
-
Menge
-
{{ orderItem?.quantity?.quantity }}x
-
-
-
Format
-
- - {{ orderItem?.product?.formatDetail }} + @if (orderItemSubsetItem$ | async; as orderItemSubsetItem) { +
+
+
Menge
+
{{ orderItem?.quantity?.quantity }}x
+
+
+
Format
+
+ + {{ orderItem?.product?.formatDetail }} +
+
+
+
ISBN/EAN
+
{{ orderItem?.product?.ean }}
+
+
+
Preis
+
{{ orderItem?.unitPrice?.value?.value | currency: orderItem?.unitPrice?.value?.currency : 'code' }}
+
+
+
MwSt
+
{{ orderItem?.unitPrice?.vat?.inPercent }}%
+
+
+
+
Lieferant
+
+ {{ orderItemSubsetItem?.supplier?.data?.name }} +
+
+
+
Meldenummer
+
{{ orderItemSubsetItem?.ssc }} - {{ orderItemSubsetItem?.sscText }}
+
+
+
Vsl. Lieferdatum
+
+ {{ orderItemSubsetItem?.estimatedShippingDate | date: 'dd.MM.yyyy' }} +
+
+ @if (orderItemSubsetItem?.preferredPickUpDate) { +
+
Zurücklegen bis
+
+ {{ orderItemSubsetItem?.preferredPickUpDate | date: 'dd.MM.yyyy' }} +
+
+ } +
+ @if (orderItemSubsetItem?.compartmentCode) { +
+
Abholfachnummer
+
+ {{ orderItemSubsetItem?.compartmentCode }} + @if (orderItemSubsetItem?.compartmentInfo) { + _{{ orderItemSubsetItem?.compartmentInfo }} + } +
+
+ } +
+
Vormerker
+
{{ isPrebooked$ | async }}
+
+
+
+
Zahlungsweg
+
-
+
+
+
Zahlungsart
+
+ {{ orderPaymentType$ | async | paymentType }} +
+
+
+
Anmerkung
+
+ {{ orderItemSubsetItem?.specialComment || '-' }} +
-
-
ISBN/EAN
-
{{ orderItem?.product?.ean }}
-
-
-
Preis
-
{{ orderItem?.unitPrice?.value?.value | currency: orderItem?.unitPrice?.value?.currency : 'code' }}
-
-
-
MwSt
-
{{ orderItem?.unitPrice?.vat?.inPercent }}%
-
-
-
-
Lieferant
-
- {{ orderItemSubsetItem?.supplier?.data?.name }} -
-
-
-
Meldenummer
-
{{ orderItemSubsetItem?.ssc }} - {{ orderItemSubsetItem?.sscText }}
-
-
-
Vsl. Lieferdatum
-
- {{ orderItemSubsetItem?.estimatedShippingDate | date: 'dd.MM.yyyy' }} -
-
-
-
Zurücklegen bis
-
- {{ orderItemSubsetItem?.preferredPickUpDate | date: 'dd.MM.yyyy' }} -
-
-
-
-
Abholfachnummer
-
- {{ orderItemSubsetItem?.compartmentCode }} - _{{ orderItemSubsetItem?.compartmentInfo }} -
-
-
-
Vormerker
-
{{ isPrebooked$ | async }}
-
-
-
-
Zahlungsweg
-
-
-
-
-
Zahlungsart
-
- {{ orderPaymentType$ | async | paymentType }} -
-
-
-
Anmerkung
-
- {{ orderItemSubsetItem?.specialComment || '-' }} -
-
-
+ }
diff --git a/apps/isa-app/src/page/customer/customer-search/order-details-main-view/order-item-list-item/order-item-list-item.component.ts b/apps/isa-app/src/page/customer/customer-search/order-details-main-view/order-item-list-item/order-item-list-item.component.ts index 98f4923a3..4ba4a18c3 100644 --- a/apps/isa-app/src/page/customer/customer-search/order-details-main-view/order-item-list-item/order-item-list-item.component.ts +++ b/apps/isa-app/src/page/customer/customer-search/order-details-main-view/order-item-list-item/order-item-list-item.component.ts @@ -1,4 +1,4 @@ -import { AsyncPipe, CurrencyPipe, DatePipe, NgIf } from '@angular/common'; +import { AsyncPipe, CurrencyPipe, DatePipe } from '@angular/common'; import { Component, ChangeDetectionStrategy, Input, OnDestroy, OnInit, inject } from '@angular/core'; import { ActivatedRoute, RouterLink } from '@angular/router'; import { ProductImagePipe } from '@cdn/product-image'; @@ -19,7 +19,6 @@ import { PaymentTypePipe } from '@shared/pipes/customer'; changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'page-customer-order-item-list-item' }, imports: [ - NgIf, AsyncPipe, DatePipe, OrderProcessingStatusPipe, @@ -30,8 +29,8 @@ import { PaymentTypePipe } from '@shared/pipes/customer'; IconComponent, RouterLink, PaymentTypePipe, - OrderItemProcessingStatusPipe, - ], + OrderItemProcessingStatusPipe +], }) export class CustomerOrderItemListItemComponent implements OnInit, OnDestroy { private _activatedRoute = inject(ActivatedRoute); diff --git a/apps/isa-app/src/page/customer/customer-search/order-details-side-view/order-details-side-view.component.html b/apps/isa-app/src/page/customer/customer-search/order-details-side-view/order-details-side-view.component.html index 5446f9efb..8f63040b8 100644 --- a/apps/isa-app/src/page/customer/customer-search/order-details-side-view/order-details-side-view.component.html +++ b/apps/isa-app/src/page/customer/customer-search/order-details-side-view/order-details-side-view.component.html @@ -2,23 +2,25 @@ {{ customer$ | async | customerName }}
{{ (orderItems$ | async)?.length }} Artikel
-
- -
-
- +@if (selectedOrderItemId$ | async; as selectedOrderItemId) { +
+ @for (orderItem of orderItems$ | async; track orderItem) { +
+
+ +
+
+ {{ orderItem?.product?.contributors }} + {{ orderItem?.product?.name }} + + {{ orderItem?.subsetItems?.[0].data?.processingStatus | orderItemProcessingStatus }} + +
-
- {{ orderItem?.product?.contributors }} - {{ orderItem?.product?.name }} - - {{ orderItem?.subsetItems?.[0].data?.processingStatus | orderItemProcessingStatus }} - -
-
- -
+ } +
+} diff --git a/apps/isa-app/src/page/customer/customer-search/order-details-side-view/order-details-side-view.component.ts b/apps/isa-app/src/page/customer/customer-search/order-details-side-view/order-details-side-view.component.ts index a36369045..0da862ad2 100644 --- a/apps/isa-app/src/page/customer/customer-search/order-details-side-view/order-details-side-view.component.ts +++ b/apps/isa-app/src/page/customer/customer-search/order-details-side-view/order-details-side-view.component.ts @@ -2,7 +2,7 @@ import { Component, ChangeDetectionStrategy } from '@angular/core'; import { CustomerSearchStore } from '../store'; import { map } from 'rxjs/operators'; import { CustomerNamePipe } from '@shared/pipes/customer'; -import { AsyncPipe, NgFor, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { ProductImagePipe } from '@cdn/product-image'; import { CustomerSearchNavigation } from '@shared/services/navigation'; import { RouterLink, RouterLinkActive } from '@angular/router'; @@ -17,13 +17,11 @@ import { OrderItemProcessingStatusPipe } from '@shared/pipes/order'; imports: [ CustomerNamePipe, AsyncPipe, - NgFor, ProductImagePipe, RouterLink, - NgIf, RouterLinkActive, - OrderItemProcessingStatusPipe, - ], + OrderItemProcessingStatusPipe +], }) export class OrderDetailsSideViewComponent { customer$ = this._store.customer$; diff --git a/apps/isa-app/src/page/customer/customer-search/orders-main-view/order-list-item/order-list-item.component.html b/apps/isa-app/src/page/customer/customer-search/orders-main-view/order-list-item/order-list-item.component.html index e291c6a3f..d00d0374b 100644 --- a/apps/isa-app/src/page/customer/customer-search/orders-main-view/order-list-item/order-list-item.component.html +++ b/apps/isa-app/src/page/customer/customer-search/orders-main-view/order-list-item/order-list-item.component.html @@ -1,46 +1,51 @@ - -
-
-
Bestelldatum
-
-
-
- {{ orderListItem?.orderNumber }} -
-
- {{ orderListItem?.processingStatus | orderProcessingStatus }} -
-
- {{ orderListItem.orderValue | currency: orderListItem.currency : 'code' }} - | {{ orderListItem.itemsCount }} Artikel -
-
-
+ +} diff --git a/apps/isa-app/src/page/customer/customer-search/orders-main-view/order-list-item/order-list-item.component.ts b/apps/isa-app/src/page/customer/customer-search/orders-main-view/order-list-item/order-list-item.component.ts index 798837a42..a65cadcbd 100644 --- a/apps/isa-app/src/page/customer/customer-search/orders-main-view/order-list-item/order-list-item.component.ts +++ b/apps/isa-app/src/page/customer/customer-search/orders-main-view/order-list-item/order-list-item.component.ts @@ -1,4 +1,4 @@ -import { AsyncPipe, CurrencyPipe, DatePipe, NgIf } from '@angular/common'; +import { AsyncPipe, CurrencyPipe, DatePipe } from '@angular/common'; import { Component, ChangeDetectionStrategy, Input, inject } from '@angular/core'; import { OrderDestinationPipe, OrderProcessingStatusPipe } from '@shared/pipes/order'; import { AddressPipe } from '@shared/pipes/customer'; @@ -21,11 +21,10 @@ import { RouterLink } from '@angular/router'; OrderProcessingStatusPipe, OrderDestinationPipe, CurrencyPipe, - NgIf, AddressPipe, AsyncPipe, - RouterLink, - ], + RouterLink +], }) export class CustomerOrderListItemComponent { private _store = inject(CustomerSearchStore); diff --git a/apps/isa-app/src/page/customer/customer-search/orders-main-view/orders-main-view.component.html b/apps/isa-app/src/page/customer/customer-search/orders-main-view/orders-main-view.component.html index 08def054c..5f3dfcaea 100644 --- a/apps/isa-app/src/page/customer/customer-search/orders-main-view/orders-main-view.component.html +++ b/apps/isa-app/src/page/customer/customer-search/orders-main-view/orders-main-view.component.html @@ -17,11 +17,15 @@
- + > + @for (order of orders$ | async; track order) { + + }
-
-

Keine Bestellungen gefunden

-
+ @if (noResults$ | async) { +
+

Keine Bestellungen gefunden

+
+ }
diff --git a/apps/isa-app/src/page/customer/customer-search/orders-main-view/orders-main-view.component.ts b/apps/isa-app/src/page/customer/customer-search/orders-main-view/orders-main-view.component.ts index 04b224c43..f294f408e 100644 --- a/apps/isa-app/src/page/customer/customer-search/orders-main-view/orders-main-view.component.ts +++ b/apps/isa-app/src/page/customer/customer-search/orders-main-view/orders-main-view.component.ts @@ -2,7 +2,7 @@ import { Component, ChangeDetectionStrategy, OnInit, OnDestroy, inject } from '@ import { CustomerSearchStore } from '../store'; import { Subject, combineLatest } from 'rxjs'; import { distinctUntilChanged, map, takeUntil } from 'rxjs/operators'; -import { AsyncPipe, NgFor, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { CustomerSearchNavigation } from '@shared/services/navigation'; import { RouterLink } from '@angular/router'; import { IconComponent } from '@shared/components/icon'; @@ -19,13 +19,11 @@ import { CustomerMenuComponent } from '../../components/customer-menu'; imports: [ CustomerMenuComponent, AsyncPipe, - NgFor, - NgIf, RouterLink, IconComponent, LoaderComponent, - CustomerOrderListItemComponent, - ], + CustomerOrderListItemComponent +], }) export class CustomerOrdersMainViewComponent implements OnInit, OnDestroy { private _store = inject(CustomerSearchStore); diff --git a/apps/isa-app/src/page/customer/customer-search/results-main-view/results-main-view.component.html b/apps/isa-app/src/page/customer/customer-search/results-main-view/results-main-view.component.html index 860dc042a..b5568d9ac 100644 --- a/apps/isa-app/src/page/customer/customer-search/results-main-view/results-main-view.component.html +++ b/apps/isa-app/src/page/customer/customer-search/results-main-view/results-main-view.component.html @@ -1,27 +1,29 @@
- - - - Filter - + @if (filter$ | async; as filter) { + + } + @if (filterRoute$ | async; as route) { + + + Filter + + }
{{ hits$ | async }} Treffer diff --git a/apps/isa-app/src/page/customer/customer-search/results-side-view/results-side-view.component.html b/apps/isa-app/src/page/customer/customer-search/results-side-view/results-side-view.component.html index d0cbd9ca5..12426b704 100644 --- a/apps/isa-app/src/page/customer/customer-search/results-side-view/results-side-view.component.html +++ b/apps/isa-app/src/page/customer/customer-search/results-side-view/results-side-view.component.html @@ -1,37 +1,40 @@
- - - - Filter - - + @if (filter$ | async; as filter) { + + } + @if (filterRoute$ | async; as route) { + + + Filter + + } + @if (isFilterRouteActive) { + + }
{{ hits$ | async }} Treffer diff --git a/apps/isa-app/src/page/customer/modals/address-selection-modal/address-selection-modal.component.html b/apps/isa-app/src/page/customer/modals/address-selection-modal/address-selection-modal.component.html index 768ac275b..d18a088ae 100644 --- a/apps/isa-app/src/page/customer/modals/address-selection-modal/address-selection-modal.component.html +++ b/apps/isa-app/src/page/customer/modals/address-selection-modal/address-selection-modal.component.html @@ -3,10 +3,12 @@

Vorschläge:

    -
  • - {{ item.street }} {{ item.streetNumber }}, {{ item.zipCode }} {{ item.city }} - -
  • + @for (item of ref?.data; track item) { +
  • + {{ item.street }} {{ item.streetNumber }}, {{ item.zipCode }} {{ item.city }} + +
  • + }
diff --git a/apps/isa-app/src/page/customer/modals/cant-select-guest/cant-select-guest-modal.component.html b/apps/isa-app/src/page/customer/modals/cant-select-guest/cant-select-guest-modal.component.html index 91b38c1c6..f9d8d5760 100644 --- a/apps/isa-app/src/page/customer/modals/cant-select-guest/cant-select-guest-modal.component.html +++ b/apps/isa-app/src/page/customer/modals/cant-select-guest/cant-select-guest-modal.component.html @@ -12,15 +12,16 @@ Zur Kundensuche - - Kundendaten erfassen - + @if (customerCreatePath(); as nav) { + + Kundendaten erfassen + + }
diff --git a/apps/isa-app/src/page/customer/modals/webshop-customer-already-exists/webshop-customer-already-exists-modal.component.html b/apps/isa-app/src/page/customer/modals/webshop-customer-already-exists/webshop-customer-already-exists-modal.component.html index b98ec463f..ed46664ca 100644 --- a/apps/isa-app/src/page/customer/modals/webshop-customer-already-exists/webshop-customer-already-exists-modal.component.html +++ b/apps/isa-app/src/page/customer/modals/webshop-customer-already-exists/webshop-customer-already-exists-modal.component.html @@ -2,31 +2,37 @@ {{ customer?.communicationDetails?.email }}
- {{ customer?.organisation?.name }} + @if (customer?.organisation?.name) { + {{ customer?.organisation?.name }} + } {{ customer?.lastName }} {{ customer?.firstName }} - + @if (customer?.address; as address) { {{ address?.street }} {{ address?.streetNumber }} - {{ address?.info }} + @if (address?.info) { + {{ address?.info }} + } {{ address?.zipCode }} {{ address?.city }} - + }
- - + @if (!isWebshopWithP4M) { + + } + @if (isWebshopWithP4M) { + + }
diff --git a/apps/isa-app/src/page/dashboard/dashboard.component.html b/apps/isa-app/src/page/dashboard/dashboard.component.html index ce33f8cdb..903c68ead 100644 --- a/apps/isa-app/src/page/dashboard/dashboard.component.html +++ b/apps/isa-app/src/page/dashboard/dashboard.component.html @@ -1,5 +1,11 @@ - - - - - +@for (feed of feeds$ | async; track feed) { + @if (feed?.type === 'kpi') { + + } + @if (feed?.type === 'products') { + + } + @if (feed?.type === 'info') { + + } +} diff --git a/apps/isa-app/src/page/dashboard/info-card/info-card.component.html b/apps/isa-app/src/page/dashboard/info-card/info-card.component.html index b015c4a21..eef583216 100644 --- a/apps/isa-app/src/page/dashboard/info-card/info-card.component.html +++ b/apps/isa-app/src/page/dashboard/info-card/info-card.component.html @@ -4,9 +4,13 @@
-
-
{{ item?.heading }}
-
-
+@for (item of feed?.items; track item) { +
+
{{ item?.heading }}
+
+
+} - +@if (feed?.emphasize === 10) { + +} diff --git a/apps/isa-app/src/page/dashboard/kpi-card/kpi-card.component.html b/apps/isa-app/src/page/dashboard/kpi-card/kpi-card.component.html index c00a9964b..fc60c78bc 100644 --- a/apps/isa-app/src/page/dashboard/kpi-card/kpi-card.component.html +++ b/apps/isa-app/src/page/dashboard/kpi-card/kpi-card.component.html @@ -1,4 +1,4 @@ - +@for (item of feed?.items; track item) {
{{ feed?.label }}
@@ -7,4 +7,4 @@
{{ item.label }} von {{ item.target }} schon geschafft
- +} diff --git a/apps/isa-app/src/page/dashboard/products-card/product-card.component.html b/apps/isa-app/src/page/dashboard/products-card/product-card.component.html index 8e1bcdc7a..753dc5cc6 100644 --- a/apps/isa-app/src/page/dashboard/products-card/product-card.component.html +++ b/apps/isa-app/src/page/dashboard/products-card/product-card.component.html @@ -5,12 +5,15 @@
- + @for (item of feed?.items; track item) { + + } - +@if (feed?.emphasize === 10) { + +} diff --git a/apps/isa-app/src/page/goods-in/goods-in-cleanup-list/goods-in-cleanup-list.component.html b/apps/isa-app/src/page/goods-in/goods-in-cleanup-list/goods-in-cleanup-list.component.html index 58d820f43..de784fef6 100644 --- a/apps/isa-app/src/page/goods-in/goods-in-cleanup-list/goods-in-cleanup-list.component.html +++ b/apps/isa-app/src/page/goods-in/goods-in-cleanup-list/goods-in-cleanup-list.component.html @@ -10,72 +10,80 @@
{{ hits$ | async }} Titel
- - - - - - + @for (bueryNumberGroup of items$ | async | groupBy: byBuyerNumberFn; track bueryNumberGroup) { + + @for (orderNumberGroup of bueryNumberGroup.items | groupBy: byOrderNumberFn; track orderNumberGroup; let lastOrderNumber = $last) { + @for (processingStatusGroup of orderNumberGroup.items | groupBy: byProcessingStatusFn; track processingStatusGroup; let lastProcessingStatus = $last) { + @for (compartmentCodeGroup of processingStatusGroup.items | groupBy: byCompartmentCodeFn; track compartmentCodeGroup; let lastCompartmentCode = $last) { + @for (item of compartmentCodeGroup.items; track item; let firstItem = $first) { + -
-
-
-
-
-
-
-
- - + [selectable]="item | goodsInCleanupSelectable: selectionRules : selectedItems" + [selected]="item | goodsInCleanupSelected: selectedOrderItemSubsetIds" + (click)="navigateToDetails(item)" + [showSupplier]="true" + [quantityEditable]="item.overallQuantity > 1 && (selectedOrderItemSubsetIds$ | async)?.includes(item.orderItemSubsetId)" + matomoTracker + #tracker="matomo" + > + } + @if (!lastCompartmentCode) { +
+ } + } + @if (!lastProcessingStatus) { +
+ } + } + @if (!lastOrderNumber) { +
+ } + } + + } + +} @else {
Es sind im Moment keine Artikel vorhanden, die Sie in
den Filialbestand übernehmen können.
-
+} +
- - - + @if (actions$ | async; as actions) { + @for (action of actions; track action) { + + } + } - - Zur Bestellpostensuche - + @if (listEmpty$ | async) { + + Zur Bestellpostensuche + + }
diff --git a/apps/isa-app/src/page/goods-in/goods-in-list/goods-in-list-item/goods-in-list-item.component.html b/apps/isa-app/src/page/goods-in/goods-in-list/goods-in-list-item/goods-in-list-item.component.html index baf713bf4..13600b9a1 100644 --- a/apps/isa-app/src/page/goods-in/goods-in-list/goods-in-list-item/goods-in-list-item.component.html +++ b/apps/isa-app/src/page/goods-in/goods-in-list/goods-in-list-item/goods-in-list-item.component.html @@ -1,115 +1,123 @@ - +@if (item$ | async; as orderItem) {
- - {{ instruction }} - - + @if (instruction$ | async; as instruction) { + + {{ instruction }} + + }

- {{ orderItem.organisation }} - - - {{ orderItem.lastName }} {{ orderItem.firstName }} + @if (orderItem.organisation != null) { + {{ orderItem.organisation }} + } + @if (orderItem.organisation != null && orderItem.firstName != null && orderItem.lastName != null) { + - + } + @if (orderItem.firstName != null && orderItem.lastName != null) { + {{ orderItem.lastName }} {{ orderItem.firstName }} + }
{{ orderItem?.buyerNumber }}

- -

{{ orderItem.ssc }} - {{ orderItem.sscText }}

- - -
- - - - {{ sscText$ | async }} + @if (!(editSsc$ | async) && orderItem.ssc && orderItem.sscText) { +

{{ orderItem.ssc }} - {{ orderItem.sscText }}

+ } + @if (editSsc$ | async) { + @if (!(supplierIdError$ | async)) { +
+ + + {{ sscText$ | async }} +
+ } + @if (supplierIdError$ | async) { +
Kein Lieferant vorhanden
+ } + } +
+
+
+
+ @if (orderItem?.product?.ean | productImage; as productImage) { + + } +
+
+ {{ [orderItem.product.contributors, orderItem.product.name] | title }} +
+
+ {{ orderItem.specialComment }} +
+
+ @if (orderItem.product?.format && orderItem.product.formatDetail) { +
+ format icon + {{ orderItem.product.formatDetail }} +
+ } +
+ Lieferant + {{ orderItem.supplier }} +
+
+ {{ orderItem.product.ean }} +
+
+ Vorgangs-ID + {{ orderItem.orderNumber }} +
+
+ {{ orderItem.price | currency: 'EUR' : 'code' }} +
+
+ Status + + @if (orderItem.processingStatus | processingStatus: 'icon'; as icon) { + + } + {{ orderItem.processingStatus | processingStatus }} + +
+
+ {{ orderItem.quantity }}x +
+
+ Bestelldatum + {{ orderItem.orderDate | date: 'dd.MM.yy' }} +
+
+ vsl. Lieferdatum + {{ orderItem.estimatedShippingDate | date: 'dd.MM.yy' }}
- -
Kein Lieferant vorhanden
- -
-
- -
-
- -
-
- {{ [orderItem.product.contributors, orderItem.product.name] | title }} -
-
- {{ orderItem.specialComment }} -
- -
-
- format icon - {{ orderItem.product.formatDetail }} -
-
- Lieferant - {{ orderItem.supplier }} -
- -
- {{ orderItem.product.ean }} -
-
- Vorgangs-ID - {{ orderItem.orderNumber }} -
- -
- {{ orderItem.price | currency: 'EUR' : 'code' }} -
-
- Status - - - {{ orderItem.processingStatus | processingStatus }} - -
- -
- {{ orderItem.quantity }}x -
-
- Bestelldatum - {{ orderItem.orderDate | date: 'dd.MM.yy' }} -
-
- vsl. Lieferdatum - {{ orderItem.estimatedShippingDate | date: 'dd.MM.yy' }}
-
- - - + + } diff --git a/apps/isa-app/src/page/goods-in/goods-in-list/goods-in-list.component.html b/apps/isa-app/src/page/goods-in/goods-in-list/goods-in-list.component.html index 98420a2d9..3ff61f85a 100644 --- a/apps/isa-app/src/page/goods-in/goods-in-list/goods-in-list.component.html +++ b/apps/isa-app/src/page/goods-in/goods-in-list/goods-in-list.component.html @@ -8,73 +8,77 @@
-
{{ hits }} Titel
+ @if (hits$ | async; as hits) { +
{{ hits }} Titel
+ }
- - - -
-
-
- - +@if (!(listEmpty$ | async)) { + + @for (item of items$ | async; track item) { + +
+ } +
+} @else {
Momentan steht kein Bestellposten zur Nachbearbeitung aus.
Alle Bestellposten sind ordnungsgemäß bearbeitet.
-
+} -
- - - - - -
+@if (!(listEmpty$ | async)) { +
+ @if (!editSsc) { + + } + @if (editSsc) { + + + } +
+} diff --git a/apps/isa-app/src/page/goods-in/goods-in-remission-preview/goods-in-remission-preview.component.html b/apps/isa-app/src/page/goods-in/goods-in-remission-preview/goods-in-remission-preview.component.html index 0c3b943e1..15ac5acb2 100644 --- a/apps/isa-app/src/page/goods-in/goods-in-remission-preview/goods-in-remission-preview.component.html +++ b/apps/isa-app/src/page/goods-in/goods-in-remission-preview/goods-in-remission-preview.component.html @@ -10,56 +10,66 @@
{{ hits$ | async }} Titel
- - - - - - -
-
-
-
-
-
-
-
- - +@if (!(listEmpty$ | async)) { + + @for (bueryNumberGroup of items$ | async | groupBy: byBuyerNumberFn; track bueryNumberGroup) { + + @for (orderNumberGroup of bueryNumberGroup.items | groupBy: byOrderNumberFn; track orderNumberGroup; let lastOrderNumber = $last) { + @for (processingStatusGroup of orderNumberGroup.items | groupBy: byProcessingStatusFn; track processingStatusGroup; let lastProcessingStatus = $last) { + @for (compartmentCodeGroup of processingStatusGroup.items | groupBy: byCompartmentCodeFn; track compartmentCodeGroup; let lastCompartmentCode = $last) { + @for (item of compartmentCodeGroup.items; track item; let firstItem = $first) { + + } + @if (!lastCompartmentCode) { +
+ } + } + @if (!lastProcessingStatus) { +
+ } + } + @if (!lastOrderNumber) { +
+ } + } +
+ } +
+} @else {
Es sind im Moment keine Artikel vorhanden
-
+} +
- - - + @if (actions$ | async; as actions) { + @for (action of actions; track action) { + + } + } - - Zur Bestellpostensuche - + @if (listEmpty$ | async) { + + Zur Bestellpostensuche + + } - Zur Remission + @if (listEmpty$ | async) { + Zur Remission + }
diff --git a/apps/isa-app/src/page/goods-in/goods-in-reservation/goods-in-reservation.component.html b/apps/isa-app/src/page/goods-in/goods-in-reservation/goods-in-reservation.component.html index 2edda433d..3ac7492f4 100644 --- a/apps/isa-app/src/page/goods-in/goods-in-reservation/goods-in-reservation.component.html +++ b/apps/isa-app/src/page/goods-in/goods-in-reservation/goods-in-reservation.component.html @@ -10,63 +10,71 @@
{{ hits$ | async }} Titel
- - - - - - + @for (bueryNumberGroup of items$ | async | groupBy: byBuyerNumberFn; track bueryNumberGroup) { + + @for (orderNumberGroup of bueryNumberGroup.items | groupBy: byOrderNumberFn; track orderNumberGroup; let lastOrderNumber = $last) { + @for (processingStatusGroup of orderNumberGroup.items | groupBy: byProcessingStatusFn; track processingStatusGroup; let lastProcessingStatus = $last) { + @for (compartmentCodeGroup of processingStatusGroup.items | groupBy: byCompartmentCodeFn; track compartmentCodeGroup; let lastCompartmentCode = $last) { + @for (item of compartmentCodeGroup.items; track item; let firstItem = $first) { + -
-
-
-
-
-
-
-
- - + [selectable]="item | goodsInReservationSelectable: selectionRules : selectedItems" + [selected]="item | goodsInReservationSelected: selectedOrderItemSubsetIds" + [showInStock]="takeAwayAvailabilities$ | async" + (click)="navigateToDetails(item)" + [quantityEditable]="item.overallQuantity > 1 && (selectedOrderItemSubsetIds$ | async)?.includes(item.orderItemSubsetId)" + matomoTracker + #tracker="matomo" + > + } + @if (!lastCompartmentCode) { +
+ } + } + @if (!lastProcessingStatus) { +
+ } + } + @if (!lastOrderNumber) { +
+ } + } + + } + +} @else {
Es sind derzeit keine Reservierungen offen.
-
+} -
- -
+ +@if (actions$ | async; as actions) { +
+ @for (action of actions; track action) { + + } +
+} diff --git a/apps/isa-app/src/page/package-inspection/components/package-details-list/package-details-list-item.component.html b/apps/isa-app/src/page/package-inspection/components/package-details-list/package-details-list-item.component.html index 55f669577..a24e5c9a3 100644 --- a/apps/isa-app/src/page/package-inspection/components/package-details-list/package-details-list-item.component.html +++ b/apps/isa-app/src/page/package-inspection/components/package-details-list/package-details-list-item.component.html @@ -20,49 +20,55 @@ {{ item?.product?.ean }}
- Band/Serie {{ item?.product?.volume }} + @if (item?.product?.volume) { + Band/Serie {{ item?.product?.volume }} + }
-
-
-
- - - - Dieser Filialbestand ist exklusive der Packstück Liefermenge. - - - Filialbestand + @if (showStockInfos$ | async) { +
+
+
+ @if (showStockInfoTooltip$ | async) { + + + Dieser Filialbestand ist exklusive der Packstück Liefermenge. + + } + Filialbestand +
+
+ {{ inStock$ | async | max: 0 }} x +
-
- {{ inStock$ | async | max: 0 }} x +
+
Packstück Liefermenge
+
+ {{ item?.quantity }}x +
+ @if (item?.quantity == 0 && (sscText$ | async)) { +
MS: {{ sscText$ | async }}
+ }
-
-
Packstück Liefermenge
-
- {{ item?.quantity }}x -
-
-
MS: {{ sscText$ | async }}
-
+ }
diff --git a/apps/isa-app/src/page/package-inspection/components/package-details-list/package-details-list.component.html b/apps/isa-app/src/page/package-inspection/components/package-details-list/package-details-list.component.html index 127cb5d73..551ee9357 100644 --- a/apps/isa-app/src/page/package-inspection/components/package-details-list/package-details-list.component.html +++ b/apps/isa-app/src/page/package-inspection/components/package-details-list/package-details-list.component.html @@ -7,6 +7,8 @@ *cdkVirtualFor="let item of items$ | async; trackBy: trackByItemId; let first = first" [light]="!first || arrivalStatus == 8" > -
+ @if (hasActions) { +
+ }
diff --git a/apps/isa-app/src/page/package-inspection/package-details/package-details.component.html b/apps/isa-app/src/page/package-inspection/package-details/package-details.component.html index 83cb9dc0d..bd82c8a70 100644 --- a/apps/isa-app/src/page/package-inspection/package-details/package-details.component.html +++ b/apps/isa-app/src/page/package-inspection/package-details/package-details.component.html @@ -1,108 +1,115 @@

Packstück-Prüfung

- -
-
- -
-
-
- {{ packageDetails.package.packageNumber }} - | - {{ packageDetails.package.deliveryNoteNumber }} -
-
- - Filialstopp - - {{ packageDetails.package.area }} - - - - Filiale - - {{ packageDetails.package.misrouted | split: ':' | at: 1 }} - - -
-
- - - - Zur erneuten Prüfung 7 Tage nach Avisierung. - - -
- {{ packageDetails.package.arrivalStatus | arrivalStatus }} +@if (packageDetails$ | async; as packageDetails) { + +
+
+
+
+
+ {{ packageDetails.package.packageNumber }} + @if (packageDetails.package.packageNumber && packageDetails.package.deliveryNoteNumber) { + | + } + {{ packageDetails.package.deliveryNoteNumber }}
-
- -
- {{ packageDetails?.package?.features?.['annotation'] }} +
+ @if (packageDetails.package.arrivalStatus !== 8) { + Filialstopp + + {{ packageDetails.package.area }} + + } @else { + Filiale + + {{ packageDetails.package.misrouted | split: ':' | at: 1 }} + + }
- -
-
-
- Avisiert am - - {{ packageDetails.package.estimatedDeliveryDate | date }} - + @if (!packageDetails?.package?.features?.['annotation']) { +
+ @if ((packageDetails.package.arrivalStatus | arrivalStatus) === 'Fehlt') { + + + Zur erneuten Prüfung 7 Tage nach Avisierung. + + } +
+ {{ packageDetails.package.arrivalStatus | arrivalStatus }} +
+
+ } @else { +
+ {{ packageDetails?.package?.features?.['annotation'] }} +
+ }
-
- - Gescannt am - {{ packageDetails.package.arrivalChecked | date: 'dd.MM.YYYY | HH:mm' }} Uhr - -
-
- {{ packageDetails?.package?.items ?? '-' }} - Exemplare +
+
+ Avisiert am + + {{ packageDetails.package.estimatedDeliveryDate | date }} + +
+
+ @switch (packageDetails.package.arrivalStatus | arrivalStatus) { + @case ('Eingetroffen') { + Gescannt am + {{ packageDetails.package.arrivalChecked | date: 'dd.MM.YYYY | HH:mm' }} Uhr + } + } +
+
+ {{ packageDetails?.package?.items ?? '-' }} + Exemplare +
-
- - -
- -
- - - + + @if (displayActions$ | async; as displayActions) { +
+ @for (action of displayActions; track action) { + + } +
+ } + +} @else {
Daten werden geladen...
-
+} + diff --git a/apps/isa-app/src/page/package-inspection/package-result/package-result.component.html b/apps/isa-app/src/page/package-inspection/package-result/package-result.component.html index db6a655de..9e65fa752 100644 --- a/apps/isa-app/src/page/package-inspection/package-result/package-result.component.html +++ b/apps/isa-app/src/page/package-inspection/package-result/package-result.component.html @@ -5,20 +5,23 @@ class="absolute right-0 top-0 h-14 rounded px-5 text-lg bg-cadet-blue grid grid-flow-col gap-2 items-center" type="button" (click)="openFilter()" - > + > Filter
- +@if (showList$ | async; as packages) { + +} @else { +
Keine Packstücke zur Kontrolle.
+}
@@ -29,15 +32,16 @@

Filter

- + @if (filterOverlay.isOpen) { + + }
- -
Keine Packstücke zur Kontrolle.
-
diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-details/pickup-shelf-in-details.component.html b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-details/pickup-shelf-in-details.component.html index de53f9272..00e724444 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-details/pickup-shelf-in-details.component.html +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-details/pickup-shelf-in-details.component.html @@ -1,24 +1,23 @@
-
-

Posten wurde nicht gefunden

-
+ @if (noOrderItemsFound$ | async) { +
+

Posten wurde nicht gefunden

+
+ } - + @if (viewFetching$ | async) {
Daten werden geladen ...
-
- - + } @else {
- - + @if (selectedItem$ | async; as item) { - - - - - + } + @if (showTagsComponent$ | async) { + + } + @if (fetchingCoverItems$ | async) {
-
- - - - + } @else { + @if ((coverOrderItems$ | async)?.length > 0) { + + } + }
-
- - - + @for (action of mainActions$ | async; track action) { + } + @if (latestCompartmentInfos$ | async; as latestCompartmentInfos) { + @if (addToPreviousCompartmentAction$ | async; as action) { + - + > + + {{ latestDisplayedCompartmentInfos$ | async | addToPreviousCompartmentCodeLabelPipe }} zubuchen + + + } + }
-
+ } +
diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-details/pickup-shelf-in-details.component.ts b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-details/pickup-shelf-in-details.component.ts index 22050bef8..3b5532c7f 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-details/pickup-shelf-in-details.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-details/pickup-shelf-in-details.component.ts @@ -1,6 +1,6 @@ import { Component, ChangeDetectionStrategy, inject, OnInit, ViewChild, effect, untracked } from '@angular/core'; import { PickupShelfDetailsBaseComponent } from '../../pickup-shelf-details-base.component'; -import { AsyncPipe, NgFor, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { PickUpShelfDetailsHeaderComponent } from '../../shared/pickup-shelf-details-header/pickup-shelf-details-header.component'; import { PickUpShelfDetailsItemComponent } from '../../shared/pickup-shelf-details-item/pickup-shelf-details-item.component'; import { PickUpShelfDetailsTagsComponent } from '../../shared/pickup-shelf-details-tags/pickup-shelf-details-tags.component'; @@ -29,8 +29,6 @@ import { MatomoModule } from 'ngx-matomo-client'; host: { class: 'page-pickup-shelf-in-details' }, imports: [ AsyncPipe, - NgFor, - NgIf, PickUpShelfDetailsHeaderComponent, PickUpShelfDetailsItemComponent, PickUpShelfDetailsTagsComponent, @@ -40,8 +38,8 @@ import { MatomoModule } from 'ngx-matomo-client'; UiSpinnerModule, OnInitDirective, SkeletonLoaderComponent, - MatomoModule, - ], + MatomoModule +], }) export class PickupShelfInDetailsComponent extends PickupShelfDetailsBaseComponent implements OnInit { runCheckTrigger = inject(RunCheckTrigger); diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-edit/pickup-shelf-in-edit.component.html b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-edit/pickup-shelf-in-edit.component.html index 011cdf354..a6c61ce75 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-edit/pickup-shelf-in-edit.component.html +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-edit/pickup-shelf-in-edit.component.html @@ -1,7 +1,8 @@ - - - +@if (store.selectedOrderItem$ | async; as item) { + @if (item) { + + } +} diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-edit/pickup-shelf-in-edit.component.ts b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-edit/pickup-shelf-in-edit.component.ts index 3dc001f54..a297e60c0 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-edit/pickup-shelf-in-edit.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-edit/pickup-shelf-in-edit.component.ts @@ -2,7 +2,7 @@ import { Component, ChangeDetectionStrategy, inject } from '@angular/core'; import { PickupShelfDetailsBaseComponent } from '../../pickup-shelf-details-base.component'; import { SharedGoodsInOutOrderEditModule } from '@shared/components/goods-in-out'; import { first } from 'rxjs/operators'; -import { AsyncPipe, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { PickupShelfInNavigationService } from '@shared/services/navigation'; import { DBHOrderItemListItemDTO } from '@generated/swagger/oms-api'; @@ -12,7 +12,7 @@ import { DBHOrderItemListItemDTO } from '@generated/swagger/oms-api'; styleUrls: ['pickup-shelf-in-edit.component.css'], changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'page-pickup-shelf-in-edit' }, - imports: [SharedGoodsInOutOrderEditModule, AsyncPipe, NgIf], + imports: [SharedGoodsInOutOrderEditModule, AsyncPipe], }) export class PickupShelfInEditComponent extends PickupShelfDetailsBaseComponent { shelfInNavigation = inject(PickupShelfInNavigationService); diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-list/pickup-shelf-in-list.component.html b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-list/pickup-shelf-in-list.component.html index b6ab83f09..09dccf0bb 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-list/pickup-shelf-in-list.component.html +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-list/pickup-shelf-in-list.component.html @@ -2,81 +2,89 @@ class="page-pickup-shelf-in-list__header bg-background-liste flex items-end justify-between" [class.pb-4]="!(primaryOutletActive$ | async)" [class.flex-col]="!(primaryOutletActive$ | async)" -> - - -
- {{ hits ?? 0 }} - Titel +
+ @if (filter$ | async; as filter) { + + } + + @if (filterNavigation) { + + + Filter + + }
+ + @if (hits$ | async; as hits) { +
+ {{ hits ?? 0 }} + Titel +
+ }
-
- Es sind im Moment keine Bestellposten vorhanden, -
- die bearbeitet werden können. -
-
- -
+ Es sind im Moment keine Bestellposten vorhanden, +
+ die bearbeitet werden können. +
+ } + @for (bueryNumberGroup of list$ | async | groupBy: byBuyerNumberFn; track trackByGroupFn($index, bueryNumberGroup)) { +
-

- {{ firstItem?.organisation }} - - - {{ firstItem?.lastName }} - {{ firstItem?.firstName }} -

-
-
- - - - - - - - -
- + @if (bueryNumberGroup.items[0]; as firstItem) { +
+

+ {{ firstItem?.organisation }} + @if (!!firstItem?.organisation && (!!firstItem?.firstName || !!firstItem?.lastName)) { + - + } + {{ firstItem?.lastName }} + {{ firstItem?.firstName }} +

+
+ } + @for (orderNumberGroup of bueryNumberGroup.items | groupBy: byOrderNumberFn; track trackByGroupFn($index, orderNumberGroup)) { + @for (processingStatusGroup of orderNumberGroup.items | groupBy: byProcessingStatusFn; track trackByGroupFn($index, processingStatusGroup)) { + @for (compartmentCodeGroup of processingStatusGroup.items | groupBy: byCompartmentCodeFn; track trackByGroupFn($index, compartmentCodeGroup)) { + @for (item of compartmentCodeGroup.items; track trackByFn($index, item); let firstItem = $first) { + + } + } + } + } +
+ } + @if (fetching$ | async) { + + }
diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-list/pickup-shelf-in-list.component.ts b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-list/pickup-shelf-in-list.component.ts index d0a592388..9f3ad1615 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-list/pickup-shelf-in-list.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-list/pickup-shelf-in-list.component.ts @@ -1,4 +1,4 @@ -import { AsyncPipe, NgFor, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { AfterViewInit, ChangeDetectionStrategy, @@ -38,17 +38,15 @@ import { MatomoModule } from 'ngx-matomo-client'; host: { class: 'page-pickup-shelf-in-list' }, imports: [ AsyncPipe, - NgFor, RouterLink, - NgIf, IconModule, FilterModule, PickUpShelfListItemComponent, ScrollContainerDirective, GroupByPipe, UiSpinnerModule, - PickupShelfListItemLoaderComponent, - ], + PickupShelfListItemLoaderComponent +], }) export class PickUpShelfInListComponent implements OnInit, AfterViewInit { @ViewChildren(PickUpShelfListItemComponent) listItems: QueryList; diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-main-side-view/pickup-shelf-in-main-side-view.component.html b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-main-side-view/pickup-shelf-in-main-side-view.component.html index b3bf86790..7bcf5ece4 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-main-side-view/pickup-shelf-in-main-side-view.component.html +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-main-side-view/pickup-shelf-in-main-side-view.component.html @@ -5,12 +5,13 @@
oder suchen Sie nach Kundennamen.

- - + @if (filter$ | async; as filter) { + @if (!(isDesktop$ | async)) { + + }
- + @if (!(isDesktop$ | async)) { + + }
-
+ }
diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-main-side-view/pickup-shelf-in-main-side-view.component.ts b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-main-side-view/pickup-shelf-in-main-side-view.component.ts index 8513fcdb7..0bf83c993 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-main-side-view/pickup-shelf-in-main-side-view.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-in/pickup-shelf-in-main-side-view/pickup-shelf-in-main-side-view.component.ts @@ -1,4 +1,4 @@ -import { AsyncPipe, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { ChangeDetectionStrategy, Component, EventEmitter, OnInit, Output, ViewChild, inject } from '@angular/core'; import { EnvironmentService } from '@core/environment'; import { Filter, FilterInputGroupMainComponent, FilterModule } from '@shared/components/filter'; @@ -15,7 +15,7 @@ import { MatomoModule } from 'ngx-matomo-client'; styleUrls: ['pickup-shelf-in-main-side-view.component.css'], changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'page-pickup-shelf-in-main-side-view' }, - imports: [FilterModule, AsyncPipe, NgIf, IconModule, MatomoModule], + imports: [FilterModule, AsyncPipe, IconModule, MatomoModule], }) export class PickUpShelfInMainSideViewComponent implements OnInit { @Output() showFilter = new EventEmitter(); diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-details/pickup-shelf-out-details.component.html b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-details/pickup-shelf-out-details.component.html index 5eeff132d..81017d8bb 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-details/pickup-shelf-out-details.component.html +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-details/pickup-shelf-out-details.component.html @@ -1,12 +1,10 @@
- + @if (viewFetching$ | async) {
Daten werden geladen ...
-
- - + } @else {
- - + @for (group of groupedItems$ | async; track trackByFnGroupDBHOrderItemListItemDTO($index, group)) { - - - - + @for (item of group.items; track trackByFnDBHOrderItemListItemDTO($index, item)) { + + } + } + @if (showTagsComponent$ | async) { + + }
-
- + @for (action of mainActions$ | async; track action) { + + }
-
+ } +
diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-details/pickup-shelf-out-details.component.ts b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-details/pickup-shelf-out-details.component.ts index f78c50aaf..cf5bbb950 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-details/pickup-shelf-out-details.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-details/pickup-shelf-out-details.component.ts @@ -1,6 +1,6 @@ import { Component, ChangeDetectionStrategy, inject, ViewChild } from '@angular/core'; import { PickupShelfDetailsBaseComponent } from '../../pickup-shelf-details-base.component'; -import { AsyncPipe, NgFor, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { PickUpShelfDetailsHeaderComponent } from '../../shared/pickup-shelf-details-header/pickup-shelf-details-header.component'; import { PickUpShelfDetailsItemComponent } from '../../shared/pickup-shelf-details-item/pickup-shelf-details-item.component'; import { DBHOrderItemListItemDTO, KeyValueDTOOfStringAndString } from '@generated/swagger/oms-api'; @@ -24,8 +24,6 @@ import { MatomoModule } from 'ngx-matomo-client'; host: { class: 'page-pickup-shelf-out-details' }, imports: [ AsyncPipe, - NgFor, - NgIf, PickUpShelfDetailsHeaderComponent, PickUpShelfDetailsItemComponent, PickUpShelfDetailsTagsComponent, @@ -33,8 +31,8 @@ import { MatomoModule } from 'ngx-matomo-client'; UiSpinnerModule, OnInitDirective, FormsModule, - MatomoModule, - ], + MatomoModule +], providers: [], }) export class PickupShelfOutDetailsComponent extends PickupShelfDetailsBaseComponent { diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-edit/pickup-shelf-out-edit.component.html b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-edit/pickup-shelf-out-edit.component.html index 342ef5783..34aed5e24 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-edit/pickup-shelf-out-edit.component.html +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-edit/pickup-shelf-out-edit.component.html @@ -1,5 +1,6 @@ - +@if (store.orderItems$ | async; as items) { + +} diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-edit/pickup-shelf-out-edit.component.ts b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-edit/pickup-shelf-out-edit.component.ts index 48d6aa917..a5beb5b4d 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-edit/pickup-shelf-out-edit.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-edit/pickup-shelf-out-edit.component.ts @@ -3,7 +3,7 @@ import { PickupShelfDetailsBaseComponent } from '../../pickup-shelf-details-base import { SharedGoodsInOutOrderEditModule } from '@shared/components/goods-in-out'; import { first } from 'rxjs/operators'; import { PickUpShelfOutNavigationService } from '@shared/services/navigation'; -import { AsyncPipe, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { DBHOrderItemListItemDTO } from '@generated/swagger/oms-api'; @Component({ @@ -12,7 +12,7 @@ import { DBHOrderItemListItemDTO } from '@generated/swagger/oms-api'; styleUrls: ['pickup-shelf-out-edit.component.css'], changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'page-pickup-shelf-out-edit' }, - imports: [SharedGoodsInOutOrderEditModule, AsyncPipe, NgIf], + imports: [SharedGoodsInOutOrderEditModule, AsyncPipe], }) export class PickupShelfOutEditComponent extends PickupShelfDetailsBaseComponent { shelfOutNavigation = inject(PickUpShelfOutNavigationService); diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-list/pickup-shelf-out-list.component.html b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-list/pickup-shelf-out-list.component.html index c2f17ca2c..ad235c08f 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-list/pickup-shelf-out-list.component.html +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-list/pickup-shelf-out-list.component.html @@ -2,98 +2,109 @@ class="page-pickup-shelf-out-list__header bg-background-liste flex items-end justify-between" [class.pb-4]="!(primaryOutletActive$ | async)" [class.flex-col]="!(primaryOutletActive$ | async)" -> - - -
- {{ hits ?? 0 }} - Titel +
+ @if (filter$ | async; as filter) { + + } + + @if (filterPath$ | async; as filterPath) { + + + Filter + + }
+ + @if (hits$ | async; as hits) { +
+ {{ hits ?? 0 }} + Titel +
+ }
-
- Es sind im Moment keine Bestellposten vorhanden, -
- die bearbeitet werden können. -
-
- -
+ Es sind im Moment keine Bestellposten vorhanden, +
+ die bearbeitet werden können. +
+ } + @for (bueryNumberGroup of list$ | async | groupBy: byBuyerNumberFn; track trackByGroupFn($index, bueryNumberGroup)) { +
-

- {{ firstItem?.organisation }} - - - {{ firstItem?.lastName }} - {{ firstItem?.firstName }} -

-
-
- - - - - - - - -
- - + @if (bueryNumberGroup.items[0]; as firstItem) { +
+

+ {{ firstItem?.organisation }} + @if (!!firstItem?.organisation && (!!firstItem?.firstName || !!firstItem?.lastName)) { + - + } + {{ firstItem?.lastName }} + {{ firstItem?.firstName }} +

+
+ } + @for (orderNumberGroup of bueryNumberGroup.items | groupBy: byOrderNumberFn; track trackByGroupFn($index, orderNumberGroup)) { + @for (processingStatusGroup of orderNumberGroup.items | groupBy: byProcessingStatusFn; track trackByGroupFn($index, processingStatusGroup)) { + @for (compartmentCodeGroup of processingStatusGroup.items | groupBy: byCompartmentCodeFn; track trackByGroupFn($index, compartmentCodeGroup)) { + @for (item of compartmentCodeGroup.items; track trackByFn($index, item); let firstItem = $first) { + + } + } + } + } +
+ } + @if (fetching$ | async) { + + } + @if (actions$ | async; as actions) { + + }
diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-list/pickup-shelf-out-list.component.ts b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-list/pickup-shelf-out-list.component.ts index be56fc72b..9fa9091f8 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-list/pickup-shelf-out-list.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-list/pickup-shelf-out-list.component.ts @@ -11,7 +11,7 @@ import { DestroyRef, } from '@angular/core'; import { PickupShelfDetailsStore, PickupShelfStore } from '../../store'; -import { AsyncPipe, NgFor, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { debounceTime, map } from 'rxjs/operators'; import { PickUpShelfOutNavigationService } from '@shared/services/navigation'; import { ActivatedRoute, NavigationStart, Router, RouterLink } from '@angular/router'; @@ -45,17 +45,15 @@ import { MatomoModule } from 'ngx-matomo-client'; imports: [ ScrollContainerDirective, AsyncPipe, - NgFor, RouterLink, - NgIf, IconModule, FilterModule, PickUpShelfListItemComponent, GroupByPipe, UiSpinnerModule, PickupShelfListItemLoaderComponent, - MatomoModule, - ], + MatomoModule +], }) export class PickupShelfOutListComponent implements OnInit, AfterViewInit { @ViewChildren(PickUpShelfListItemComponent) listItems: QueryList; diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-main-side-view/pickup-shelf-out-main-side-view.component.html b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-main-side-view/pickup-shelf-out-main-side-view.component.html index 5317e6e5d..249f3e2cd 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-main-side-view/pickup-shelf-out-main-side-view.component.html +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-main-side-view/pickup-shelf-out-main-side-view.component.html @@ -11,12 +11,13 @@
Kundenkarte.

- - + @if (filter$ | async; as filter) { + @if (!(isDesktop$ | async)) { + + }
- + @if (!(isDesktop$ | async)) { + + }
-
+ }
diff --git a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-main-side-view/pickup-shelf-out-main-side-view.component.ts b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-main-side-view/pickup-shelf-out-main-side-view.component.ts index b27ac8a5d..81ce1d461 100644 --- a/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-main-side-view/pickup-shelf-out-main-side-view.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/pickup-shelf-out/pickup-shelf-out-main-side-view/pickup-shelf-out-main-side-view.component.ts @@ -1,7 +1,7 @@ import { ChangeDetectionStrategy, Component, EventEmitter, OnInit, Output, ViewChild, inject } from '@angular/core'; import { PickupShelfStore } from '../../store'; import { Filter, FilterInputGroupMainComponent, FilterModule } from '@shared/components/filter'; -import { AsyncPipe, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { IconModule } from '@shared/components/icon'; import { EnvironmentService } from '@core/environment'; import { Observable, combineLatest } from 'rxjs'; @@ -14,7 +14,7 @@ import { isEqual } from 'lodash'; styleUrls: ['pickup-shelf-out-main-side-view.component.css'], changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'page-pickup-shelf-out-main-side-view' }, - imports: [FilterModule, AsyncPipe, NgIf, IconModule], + imports: [FilterModule, AsyncPipe, IconModule], }) export class PickupShelfOutMainSideViewComponent implements OnInit { @Output() showFilter = new EventEmitter(); diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-covers/pickup-shelf-details-covers.component.html b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-covers/pickup-shelf-details-covers.component.html index 0fe1fd164..03ef2876d 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-covers/pickup-shelf-details-covers.component.html +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-covers/pickup-shelf-details-covers.component.html @@ -1,20 +1,26 @@ - -
-
{{ group.group }}
- -
-
- - +@if (!(fetching$ | async)) { + + @for (group of groupedItems; track group) { +
+
{{ group.group }}
+ +
+ } +
+} @else { -
+} + diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-covers/pickup-shelf-details-covers.component.ts b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-covers/pickup-shelf-details-covers.component.ts index 124d688b0..6ebc2aa37 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-covers/pickup-shelf-details-covers.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-covers/pickup-shelf-details-covers.component.ts @@ -1,7 +1,7 @@ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, inject } from '@angular/core'; import { PickupShelfDetailsStore } from '../../store'; import { Group, groupBy } from '@ui/common'; -import { AsyncPipe, NgFor, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { ProductImageModule } from '@cdn/product-image'; import { UiSliderModule } from '@ui/slider'; import { UiSpinnerModule } from '@ui/spinner'; @@ -17,16 +17,14 @@ import { PickupShelfShowCoverCompartmentCodePipe } from '../pipes/show-cover-com host: { class: 'page-pickup-shelf-details-covers' }, changeDetection: ChangeDetectionStrategy.OnPush, imports: [ - NgIf, - NgFor, AsyncPipe, ProductImageModule, UiSliderModule, UiSpinnerModule, PickupShelfProcessingStatusPipe, PickupShelfCoverCompartmentCodePipe, - PickupShelfShowCoverCompartmentCodePipe, - ], + PickupShelfShowCoverCompartmentCodePipe +], }) export class PickUpShelfDetailsCoversComponent { private _store = inject(PickupShelfDetailsStore); diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-header-nav-menu/pickup-shelf-details-header-nav-menu.component.html b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-header-nav-menu/pickup-shelf-details-header-nav-menu.component.html index 2102eeaf4..423be2cb5 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-header-nav-menu/pickup-shelf-details-header-nav-menu.component.html +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-header-nav-menu/pickup-shelf-details-header-nav-menu.component.html @@ -5,7 +5,7 @@ [cdkMenuTriggerFor]="navMenu" #menuTrigger="cdkMenuTriggerFor" [class.open]="menuTrigger.isOpen()" -> + > @@ -13,30 +13,32 @@
- - Kundendetails - - - Bestellungen - + @if (customerDetailsRoute$ | async; as customerDetailsRoute) { + + Kundendetails + + } + @if (ordersRoute$ | async; as ordersRoute) { + + Bestellungen + + }
diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-header-nav-menu/pickup-shelf-details-header-nav-menu.component.ts b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-header-nav-menu/pickup-shelf-details-header-nav-menu.component.ts index 1d66e98ad..9d87b7b86 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-header-nav-menu/pickup-shelf-details-header-nav-menu.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-header-nav-menu/pickup-shelf-details-header-nav-menu.component.ts @@ -1,6 +1,6 @@ import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion'; import { CdkMenuModule } from '@angular/cdk/menu'; -import { AsyncPipe, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { ChangeDetectionStrategy, Component, Input } from '@angular/core'; import { RouterLink } from '@angular/router'; import { ComponentStore } from '@ngrx/component-store'; @@ -23,7 +23,7 @@ export interface PickUpShelfDetailsHeaderNavMenuComponentState { styleUrls: ['pickup-shelf-details-header-nav-menu.component.scss'], host: { class: 'page-pickup-shelf-details-header-nav-menu' }, changeDetection: ChangeDetectionStrategy.OnPush, - imports: [CdkMenuModule, SharedMenuModule, IconComponent, RouterLink, NgIf, AsyncPipe, MatomoModule], + imports: [CdkMenuModule, SharedMenuModule, IconComponent, RouterLink, AsyncPipe, MatomoModule], }) export class PickUpShelfDetailsHeaderNavMenuComponent extends ComponentStore { @Input() set customer(value: CustomerInfoDTO) { diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-item/pickup-shelf-details-item.component.html b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-item/pickup-shelf-details-item.component.html index 4ca2f4db3..7074917f8 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-item/pickup-shelf-details-item.component.html +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-item/pickup-shelf-details-item.component.html @@ -1,38 +1,37 @@ - +@if (orderItem) {
- + @if (orderItem?.features?.prebooked) { Artikel wird für Sie vorgemerkt. - - - + } + @if (hasEmailNotification$ | async) { Per E-Mail benachrichtigt
- - + @for (notifications of emailNotificationDates$ | async; track notifications) { + @for (notificationDate of notifications.dates; track notificationDate) { {{ notifications.type | notificationType }} {{ notificationDate | date: 'dd.MM.yyyy | HH:mm' }} Uhr
-
-
+ } + }
-
- + } + @if (hasSmsNotification$ | async) { Per SMS benachrichtigt
- - + @for (notifications of smsNotificationDates$ | async; track notifications) { + @for (notificationDate of notifications.dates; track notificationDate) { {{ notificationDate | date: 'dd.MM.yyyy | HH:mm' }} Uhr
-
-
+ } + }
-
+ }
@@ -40,25 +39,24 @@ [productImageNavigation]="orderItem?.product?.ean" [src]="orderItem.product?.ean | productImage" [alt]="orderItem.product?.name" - /> -
-
-
-

-
{{ orderItem.product?.contributors }}
-
{{ orderItem.product?.name }}
-

-
- - - +
+
+
+

+
{{ orderItem.product?.contributors }}
+
{{ orderItem.product?.name }}
+

+
+ + @if (selectable$ | async) { + + class="isa-select-bullet mt-4" + type="checkbox" + matomoTracker + #tracker="matomo" + /> + } +
-
-
-
Menge
-
- {{ orderItem?.quantity }}x - +
Menge
+
+ @if (!(canChangeQuantity$ | async)) { + {{ orderItem?.quantity }}x + } + @if (canChangeQuantity$ | async) { + - (von {{ orderItem?.overallQuantity }}) + [showSpinner]="false" + matomoTracker + #tracker="matomo" + > + } + (von {{ orderItem?.overallQuantity }}) +
-
-
-
Format
-
- format icon - {{ orderItem.product?.formatDetail }} -
-
-
-
ISBN/EAN
-
{{ orderItem.product?.ean }}
-
-
-
Preis
-
{{ orderItem.price | currency: 'EUR' }}
-
-
-
MwSt
-
{{ orderItem.retailPrice?.vat?.inPercent }}%
-
- -
- -
-
Lieferant
-
{{ orderItem.supplier }}
- -
-
-
Meldenummer
-
{{ orderItem.ssc }} - {{ orderItem.sscText }}
-
- - -
-
Zielfiliale
-
{{ orderItem.targetBranch }}
-
-
-
- +
Format
+
+ @if (orderItem?.product?.format && orderItem?.product?.format !== 'UNKNOWN') { + format icon + } + {{ orderItem.product?.formatDetail }} +
+
+ } + @if (!!orderItem.product?.ean) { +
+
ISBN/EAN
+
{{ orderItem.product?.ean }}
+
+ } + @if (orderItem.price !== undefined) { +
+
Preis
+
{{ orderItem.price | currency: 'EUR' }}
+
+ } + @if (!!orderItem.retailPrice?.vat?.inPercent) { +
+
MwSt
+
{{ orderItem.retailPrice?.vat?.inPercent }}%
+
+ } +
+ @if (orderItem.supplier) { +
+
Lieferant
+
{{ orderItem.supplier }}
+ @if (!expanded) { + + } +
+ } + @if (!!orderItem.ssc || !!orderItem.sscText) { +
+
Meldenummer
+
{{ orderItem.ssc }} - {{ orderItem.sscText }}
+
+ } + @if (expanded) { + @if (!!orderItem.targetBranch) { +
+
Zielfiliale
+
{{ orderItem.targetBranch }}
+
+ } +
+
+ @if ( orderItemFeature(orderItem) === 'Versand' || orderItemFeature(orderItem) === 'B2B-Versand' || orderItemFeature(orderItem) === 'DIG-Versand' - " - > - {{ orderItem?.estimatedDelivery ? 'Lieferung zwischen' : 'Lieferung ab' }} - - - Abholung ab - -
- - -
- - {{ orderItem?.estimatedDelivery?.start | date: 'dd.MM.yy' }} und - {{ orderItem?.estimatedDelivery?.stop | date: 'dd.MM.yy' }} - + ) { + {{ orderItem?.estimatedDelivery ? 'Lieferung zwischen' : 'Lieferung ab' }} + } + @if (orderItemFeature(orderItem) === 'Abholung' || orderItemFeature(orderItem) === 'Rücklage') { + Abholung ab + }
-
- - - - {{ orderItem?.estimatedShippingDate | date: 'dd.MM.yy' }} - - -
- -
- -
-
Abholfachnr.
-
{{ orderItem?.compartmentCode }}
-
-
-
Vormerker
-
{{ orderItem.isPrebooked ? 'Ja' : 'Nein' }}
-
- -
- -
-
Zahlungsweg
-
{{ orderItem.paymentProcessing || '-' }}
-
-
-
Zahlungsart
-
{{ orderItem.paymentType | paymentType }}
-
- -

- {{ count > 1 ? 'Belege' : 'Beleg' }} -

- -
-
Belegnummer
-
{{ receipt?.receiptNumber }}
+ @if (!!orderItem?.estimatedDelivery || !!orderItem?.estimatedShippingDate) { +
+ @if (!!orderItem?.estimatedDelivery) { + {{ orderItem?.estimatedDelivery?.start | date: 'dd.MM.yy' }} und + {{ orderItem?.estimatedDelivery?.stop | date: 'dd.MM.yy' }} + } @else { + @if (!!orderItem?.estimatedShippingDate) { + {{ orderItem?.estimatedShippingDate | date: 'dd.MM.yy' }} + } + } +
+ }
-
-
Erstellt am
-
{{ receipt?.printedDate | date: 'dd.MM.yy | HH:mm' }} Uhr
-
-
-
Rechnungstext
-
{{ receipt?.receiptText || '-' }}
-
-
-
Belegart
-
- {{ receipt?.receiptType === 1 ? 'Lieferschein' : receipt?.receiptType === 64 ? 'Zahlungsbeleg' : '-' }} +
+ @if (!!orderItem?.compartmentCode) { +
+
Abholfachnr.
+
{{ orderItem?.compartmentCode }}
+ } +
+
Vormerker
+
{{ orderItem.isPrebooked ? 'Ja' : 'Nein' }}
- - -
- - - - -
-
Anmerkung
- -
- - -
+
+ @if (!!orderItem.paymentProcessing) { +
+
Zahlungsweg
+
{{ orderItem.paymentProcessing || '-' }}
+
+ } + @if (!!orderItem.paymentType) { +
+
Zahlungsart
+
{{ orderItem.paymentType | paymentType }}
+
+ } + @if (receiptCount$ | async; as count) { +

+ {{ count > 1 ? 'Belege' : 'Beleg' }} +

+ } + @for (receipt of receipts$ | async; track receipt) { + @if (!!receipt?.receiptNumber) { +
+
Belegnummer
+
{{ receipt?.receiptNumber }}
+
+ } + @if (!!receipt?.printedDate) { +
+
Erstellt am
+
{{ receipt?.printedDate | date: 'dd.MM.yy | HH:mm' }} Uhr
+
+ } + @if (!!receipt?.receiptText) { +
+
Rechnungstext
+
{{ receipt?.receiptText || '-' }}
+
+ } + @if (!!receipt?.receiptType) { +
+
Belegart
+
+ {{ receipt?.receiptType === 1 ? 'Lieferschein' : receipt?.receiptType === 64 ? 'Zahlungsbeleg' : '-' }} +
+
+ } + } + @if (!!orderItem.paymentProcessing || !!orderItem.paymentType || !!(receiptCount$ | async)) { +
+ } + @if (expanded) { - + } + } +
+
Anmerkung
+
+ +
+ @if (!!specialCommentControl.value?.length) { + + } + @if (specialCommentControl?.enabled && specialCommentControl.dirty) { + + } +
-
- + } diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-item/pickup-shelf-details-item.component.ts b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-item/pickup-shelf-details-item.component.ts index 44e98d8cf..4bf3bb62b 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-item/pickup-shelf-details-item.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-item/pickup-shelf-details-item.component.ts @@ -1,5 +1,5 @@ import { CdkTextareaAutosize, TextFieldModule } from '@angular/cdk/text-field'; -import { AsyncPipe, CurrencyPipe, DatePipe, NgFor, NgIf } from '@angular/common'; +import { AsyncPipe, CurrencyPipe, DatePipe } from '@angular/common'; import { ChangeDetectionStrategy, ChangeDetectorRef, @@ -42,13 +42,11 @@ export interface PickUpShelfDetailsItemComponentState { host: { class: 'page-pickup-shelf-details-item' }, changeDetection: ChangeDetectionStrategy.OnPush, imports: [ - NgIf, UiCommonModule, UiTooltipModule, FormsModule, ReactiveFormsModule, CurrencyPipe, - NgFor, DatePipe, AsyncPipe, ProductImageModule, @@ -58,8 +56,8 @@ export interface PickUpShelfDetailsItemComponentState { UiQuantityDropdownModule, NotificationTypePipe, NavigateOnClickDirective, - MatomoModule, - ], + MatomoModule +], }) export class PickUpShelfDetailsItemComponent extends ComponentStore diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-items-group/pickup-shelf-details-items-group.component.html b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-items-group/pickup-shelf-details-items-group.component.html index 87d50203e..ad3b06a5e 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-items-group/pickup-shelf-details-items-group.component.html +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-items-group/pickup-shelf-details-items-group.component.html @@ -1,89 +1,99 @@
-
- - -
- -
-

Versand

-
- -
- -
-

Versand

-
- -
- -
-

B2B-Versand

-
- -
- -
-

Abholung

- {{ targetBranches }} -
- -
- -
-

Rücklage

-
- -
- -
-

Download

-
-
-
- -
- - -
- - -
-
-

Lieferadresse

-
- -

{{ order.shipping?.data?.organisation?.name }}

-

{{ order.shipping?.data?.organisation?.department }}

-
-

{{ order.shipping?.data?.firstName }} {{ order.shipping?.data?.lastName }}

-

{{ order.shipping?.data?.address?.info }}

-

{{ order.shipping?.data?.address?.street }} {{ order.shipping?.data?.address?.streetNumber }}

-

{{ order.shipping?.data?.address?.zipCode }} {{ order.shipping?.data?.address?.city }}

+ @if (showFeature) { +
+ @switch (orderType) { + @case ('Versand') { +
+
-
-
-

Rechnungsadresse

-
- -

{{ order.billing?.data?.organisation?.name }}

-

{{ order.billing?.data?.organisation?.department }}

-
-

{{ order.billing?.data?.firstName }} {{ order.billing?.data?.lastName }}

-

{{ order.billing?.data?.address?.info }}

-

{{ order.billing?.data?.address?.street }} {{ order.billing?.data?.address?.streetNumber }}

-

{{ order.billing?.data?.address?.zipCode }} {{ order.billing?.data?.address?.city }}

+

Versand

+ } + @case ('DIG-Versand') { +
+
-
-
+

Versand

+ } + @case ('B2B-Versand') { +
+ +
+

B2B-Versand

+ } + @case ('Abholung') { +
+ +
+

Abholung

+ {{ targetBranches }} + } + @case ('Rücklage') { +
+ +
+

Rücklage

+ } + @case ('Download') { +
+ +
+

Download

+ } + }
-
+ } -
- - {{ selectedOrderItemCount$ | async }} von {{ groupedItems.length }} Titeln -
+ @if (showAddresses) { +
+ + @if (openAddresses) { +
+ +
+ @if (order.shipping) { +
+

Lieferadresse

+
+ @if (order.shipping?.data?.organisation) { +

{{ order.shipping?.data?.organisation?.name }}

+

{{ order.shipping?.data?.organisation?.department }}

+ } +

{{ order.shipping?.data?.firstName }} {{ order.shipping?.data?.lastName }}

+

{{ order.shipping?.data?.address?.info }}

+

{{ order.shipping?.data?.address?.street }} {{ order.shipping?.data?.address?.streetNumber }}

+

{{ order.shipping?.data?.address?.zipCode }} {{ order.shipping?.data?.address?.city }}

+
+
+ } + @if (order.billing) { +
+

Rechnungsadresse

+
+ @if (order.billing?.data?.organisation) { +

{{ order.billing?.data?.organisation?.name }}

+

{{ order.billing?.data?.organisation?.department }}

+ } +

{{ order.billing?.data?.firstName }} {{ order.billing?.data?.lastName }}

+

{{ order.billing?.data?.address?.info }}

+

{{ order.billing?.data?.address?.street }} {{ order.billing?.data?.address?.streetNumber }}

+

{{ order.billing?.data?.address?.zipCode }} {{ order.billing?.data?.address?.city }}

+
+
+ } +
+
+ } +
+ } + + @if (showMultiselect$ | async) { +
+ + {{ selectedOrderItemCount$ | async }} von {{ groupedItems.length }} Titeln +
+ }
diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-items-group/pickup-shelf-details-items-group.component.ts b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-items-group/pickup-shelf-details-items-group.component.ts index faede1eec..ca6866002 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-items-group/pickup-shelf-details-items-group.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-items-group/pickup-shelf-details-items-group.component.ts @@ -2,7 +2,7 @@ import { ChangeDetectionStrategy, Component, Input, OnInit, inject } from '@angu import { PickupShelfDetailsStore } from '../../store'; import { map } from 'rxjs/operators'; import { DBHOrderItemListItemDTO, OrderDTO } from '@generated/swagger/oms-api'; -import { AsyncPipe, NgFor, NgIf, NgSwitch, NgSwitchCase } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { IconModule } from '@shared/components/icon'; @Component({ @@ -11,7 +11,7 @@ import { IconModule } from '@shared/components/icon'; styleUrls: ['pickup-shelf-details-items-group.component.scss'], host: { class: 'page-pickup-shelf-details-items-group' }, changeDetection: ChangeDetectionStrategy.OnPush, - imports: [NgIf, NgFor, NgSwitch, NgSwitchCase, IconModule, AsyncPipe], + imports: [IconModule, AsyncPipe], }) export class PickUpShelfDetailsItemsGroupComponent implements OnInit { private _store = inject(PickupShelfDetailsStore); diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-tags/pickup-shelf-details-tags.component.html b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-tags/pickup-shelf-details-tags.component.html index 17bbf8327..8abe898e9 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-tags/pickup-shelf-details-tags.component.html +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-tags/pickup-shelf-details-tags.component.html @@ -1,23 +1,24 @@
- + @for (tag of defaultTags; track tag) { + + } -
+ /> + +
diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-tags/pickup-shelf-details-tags.component.ts b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-tags/pickup-shelf-details-tags.component.ts index 5f3e0e4c4..01975c9ed 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-tags/pickup-shelf-details-tags.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-details-tags/pickup-shelf-details-tags.component.ts @@ -1,4 +1,4 @@ -import { NgFor } from '@angular/common'; + import { ChangeDetectionStrategy, Component, computed, model } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { UiCommonModule } from '@ui/common'; @@ -10,7 +10,7 @@ import { MatomoModule } from 'ngx-matomo-client'; styleUrls: ['pickup-shelf-details-tags.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'page-pickup-shelf-details-tags' }, - imports: [NgFor, UiCommonModule, FormsModule, MatomoModule], + imports: [UiCommonModule, FormsModule, MatomoModule], }) export class PickUpShelfDetailsTagsComponent { $selected = model(undefined, { alias: 'selected' }); diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-filter/pickup-shelf-filter.component.html b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-filter/pickup-shelf-filter.component.html index a32de6a1c..8edae237e 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-filter/pickup-shelf-filter.component.html +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-filter/pickup-shelf-filter.component.html @@ -1,18 +1,18 @@ - +@if (filter$ | async; as filter) {
- - - + @if (showFilterClose$ | async) { + + + + }
-

Filter

-
-
-
+} diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-filter/pickup-shelf-filter.component.ts b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-filter/pickup-shelf-filter.component.ts index 6430136f2..5b75bc005 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-filter/pickup-shelf-filter.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-filter/pickup-shelf-filter.component.ts @@ -1,7 +1,7 @@ import { Component, ChangeDetectionStrategy, inject, Output, EventEmitter } from '@angular/core'; import { Filter, FilterModule } from '@shared/components/filter'; import { PickupShelfDetailsStore, PickupShelfStore } from '../../store'; -import { AsyncPipe, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { EnvironmentService } from '@core/environment'; import { map } from 'rxjs/operators'; import { ActivatedRoute, RouterLink } from '@angular/router'; @@ -16,7 +16,7 @@ import { Observable } from 'rxjs'; styleUrls: ['pickup-shelf-filter.component.css'], changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'page-pickup-shelf-filter' }, - imports: [FilterModule, AsyncPipe, NgIf, RouterLink, IconModule, UiSpinnerModule], + imports: [FilterModule, AsyncPipe, RouterLink, IconModule, UiSpinnerModule], }) export class PickupShelfFilterComponent { store = inject(PickupShelfStore); diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-history/pickup-shelf-history.component.html b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-history/pickup-shelf-history.component.html index 7b845f7b8..b799ccf8e 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-history/pickup-shelf-history.component.html +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-history/pickup-shelf-history.component.html @@ -1,13 +1,14 @@
- + @if (historyItem$ | async; as item) { + + }
diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-history/pickup-shelf-history.component.ts b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-history/pickup-shelf-history.component.ts index 239ec6ccb..2ed562839 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-history/pickup-shelf-history.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-history/pickup-shelf-history.component.ts @@ -1,4 +1,4 @@ -import { AsyncPipe, NgIf } from '@angular/common'; +import { AsyncPipe } from '@angular/common'; import { ChangeDetectionStrategy, Component } from '@angular/core'; import { ActivatedRoute, Router } from '@angular/router'; import { DomainOmsService } from '@domain/oms'; @@ -18,7 +18,7 @@ import { PickupShelfDetailsBaseComponent } from '../../pickup-shelf-details-base styleUrls: ['pickup-shelf-history.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'page-pickup-shelf-history' }, - imports: [AsyncPipe, NgIf, SharedHistoryListModule, IconModule], + imports: [AsyncPipe, SharedHistoryListModule, IconModule], }) export class PickUpShelfHistoryComponent extends PickupShelfDetailsBaseComponent { compartmentCode$: Observable = this._activatedRoute.params.pipe( diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-list-item/pickup-shelf-list-item.component.html b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-list-item/pickup-shelf-list-item.component.html index 190cddb3f..933f0fd8a 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-list-item/pickup-shelf-list-item.component.html +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-list-item/pickup-shelf-list-item.component.html @@ -4,37 +4,40 @@ [routerLinkActive]="!isTablet && !primaryOutletActive ? 'active' : ''" queryParamsHandling="preserve" (click)="onDetailsClick()" -> + >
+ >
- + @if (item?.product?.ean | productImage; as productImage) { + + }
+ >
- {{ contributor }}{{ last ? '' : ';' }} + > + @for (contributor of contributors; track contributor; let last = $last) { + {{ contributor }}{{ last ? '' : ';' }} + }
+ > {{ item?.product?.name }}
@@ -51,75 +54,79 @@
-
-
Geändert
-
{{ item?.processingStatusDate | date: 'dd.MM.yy | HH:mm' }} Uhr
-
- + @if (showChangeDate) { +
+
Geändert
+
{{ item?.processingStatusDate | date: 'dd.MM.yy | HH:mm' }} Uhr
+
+ } @else {
Bestelldatum
{{ item?.orderDate | date: 'dd.MM.yy | HH:mm' }} Uhr
-
+ }
-
- {{ item?.compartmentCode }}{{ item?.compartmentInfo && '_' + item?.compartmentInfo }} -
+ @if (showCompartmentCode) { +
+ {{ item?.compartmentCode }}{{ item?.compartmentInfo && '_' + item?.compartmentInfo }} +
+ }
+ > {{ item.processingStatus | processingStatus }}
-
- - {{ item.features?.paid }} -
+ @if (item.features?.paid && (isTablet || isDesktopSmall || primaryOutletActive)) { +
+ + {{ item.features?.paid }} +
+ }
-
- + -
+ class="isa-select-bullet" + type="checkbox" + matomoTracker + #tracker="matomo" + /> +
+ } -
- {{ item?.specialComment }} +
+ {{ item?.specialComment }} +
-
- + diff --git a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-list-item/pickup-shelf-list-item.component.ts b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-list-item/pickup-shelf-list-item.component.ts index ce501047e..84211fa72 100644 --- a/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-list-item/pickup-shelf-list-item.component.ts +++ b/apps/isa-app/src/page/pickup-shelf/shared/pickup-shelf-list-item/pickup-shelf-list-item.component.ts @@ -1,4 +1,4 @@ -import { CurrencyPipe, DatePipe, NgFor, NgIf } from '@angular/common'; +import { CurrencyPipe, DatePipe } from '@angular/common'; import { ChangeDetectionStrategy, Component, ElementRef, Input, inject } from '@angular/core'; import { RouterLink, RouterLinkActive } from '@angular/router'; import { NavigateOnClickDirective, ProductImageModule } from '@cdn/product-image'; @@ -20,8 +20,6 @@ import { MatomoModule } from 'ngx-matomo-client'; host: { class: 'page-pickup-shelf-list-item' }, changeDetection: ChangeDetectionStrategy.OnPush, imports: [ - NgIf, - NgFor, FormsModule, RouterLink, RouterLinkActive, @@ -32,8 +30,8 @@ import { MatomoModule } from 'ngx-matomo-client'; UiCommonModule, PickupShelfProcessingStatusPipe, NavigateOnClickDirective, - MatomoModule, - ], + MatomoModule +], providers: [PickupShelfProcessingStatusPipe], }) export class PickUpShelfListItemComponent { diff --git a/apps/isa-app/src/page/remission/create-remission/create-remission.component.html b/apps/isa-app/src/page/remission/create-remission/create-remission.component.html index 635773f34..3e5ed558b 100644 --- a/apps/isa-app/src/page/remission/create-remission/create-remission.component.html +++ b/apps/isa-app/src/page/remission/create-remission/create-remission.component.html @@ -5,31 +5,33 @@ Um einen Warenbegleitschein zu
eröffnen, - + @if (supplierId === 2) { scannen Sie die Packstück-ID
oder lassen Sie diese automatisch generieren. -
- lassen Sie diesen automatisch generieren. + } @else { + lassen Sie diesen automatisch generieren. + }

- + @if (supplierId === 2) { + + }
diff --git a/apps/isa-app/src/page/remission/modals/add-product-modal/add-product-modal.component.html b/apps/isa-app/src/page/remission/modals/add-product-modal/add-product-modal.component.html index b91896568..7af8367da 100644 --- a/apps/isa-app/src/page/remission/modals/add-product-modal/add-product-modal.component.html +++ b/apps/isa-app/src/page/remission/modals/add-product-modal/add-product-modal.component.html @@ -14,23 +14,26 @@
Format
-
- - {{ item.product.formatDetail }} -
+ @if (item?.product?.format && item?.product?.formatDetail) { +
+ + {{ item.product.formatDetail }} +
+ }
Kennzeichen
-
- - - - {{ assortment.label }} - -
+ @if (item.assortment | assortment; as assortment) { +
+ + + {{ assortment.label }} + +
+ }
Remigrund
@@ -40,16 +43,20 @@ - + @for (reason of returnReasons$ | async; track reason) { + + }
-
-
-
{{ message }}
-
+ @if (message$ | async; as message) { +
+
+
{{ message }}
+
+ }
diff --git a/apps/isa-app/src/page/remission/modals/add-product-to-shipping-document-modal/add-product-to-shipping-document-modal.component.html b/apps/isa-app/src/page/remission/modals/add-product-to-shipping-document-modal/add-product-to-shipping-document-modal.component.html index 3f483c2d1..ae0c2665e 100644 --- a/apps/isa-app/src/page/remission/modals/add-product-to-shipping-document-modal/add-product-to-shipping-document-modal.component.html +++ b/apps/isa-app/src/page/remission/modals/add-product-to-shipping-document-modal/add-product-to-shipping-document-modal.component.html @@ -2,11 +2,12 @@

Wählen Sie die korrekte Platzierung aus

- + @for (placementType of remissionPlacementTypes; track placementType) { + + }

Wieviele Exemplare können remittiert werden?

diff --git a/apps/isa-app/src/page/remission/remission-list/remission-filter/remission-filter.component.html b/apps/isa-app/src/page/remission/remission-list/remission-filter/remission-filter.component.html index 857baa2e9..0b9d2a3c9 100644 --- a/apps/isa-app/src/page/remission/remission-list/remission-filter/remission-filter.component.html +++ b/apps/isa-app/src/page/remission/remission-list/remission-filter/remission-filter.component.html @@ -5,17 +5,16 @@

Filter

- + @if (filter$ | async; as filter) { -
-
+ }
diff --git a/apps/isa-app/src/page/remission/remission-list/remission-list-item/remission-list-item.component.html b/apps/isa-app/src/page/remission/remission-list/remission-list-item/remission-list-item.component.html index f8eb52857..8279c35e1 100644 --- a/apps/isa-app/src/page/remission/remission-list/remission-list-item/remission-list-item.component.html +++ b/apps/isa-app/src/page/remission/remission-list/remission-list-item/remission-list-item.component.html @@ -1,6 +1,8 @@
- {{ last ? contributor : contributor + ';' }} + @for (contributor of contributors; track contributor; let last = $last) { + {{ last ? contributor : contributor + ';' }} + }

+ > {{ item.title }}

-
- - {{ item?.dto?.impediment?.comment ? item?.dto?.impediment?.comment : 'Restmenge' }} - ({{ item?.dto?.impediment?.attempts }}) - -
+@if (showImpediment) { +
+ + {{ item?.dto?.impediment?.comment ? item?.dto?.impediment?.comment : 'Restmenge' }} + @if (item?.dto?.impediment?.attempts) { + ({{ item?.dto?.impediment?.attempts }}) + } + +
+}
item.dto.product.name -
- -
-
- - {{ item.formatDetail }}
-
- {{ item.ean }} -
-
- {{ item.price.value.value | currency: item.price.value.currency : 'code' }} -
-
- - - {{ assortment.label }} - +
+ @if (formatAvailable) { +
+ @if (formatIconAvailable) { + + } + {{ item.formatDetail }} +
+ } +
+ {{ item.ean }} +
+
+ {{ item.price.value.value | currency: item.price.value.currency : 'code' }} +
+ @if (item.assortment | assortment; as assortment) { +
+ + + {{ assortment.label }} + +
+ } +
+ +
+
+
aktueller Bestand
+
{{ item.inStock }}x
+
+
+
Remi-Menge
+
{{ item.remissionQuantity }}x
+
+
+
übriger Bestand
+
{{ item.remainingQuantity }}x
+
+
+
Platz
+
{{ item.placementType }}
+
+ @if (item.remissionReason) { +
+
Remigrund
+
{{ item.remissionReason }}
+
+ }
-
-
-
aktueller Bestand
-
{{ item.inStock }}x
-
-
-
Remi-Menge
-
{{ item.remissionQuantity }}x
-
-
-
übriger Bestand
-
{{ item.remainingQuantity }}x
-
-
-
Platz
-
{{ item.placementType }}
-
-
-
Remigrund
-
{{ item.remissionReason }}
+
+
+ {{ item?.dto?.department }} + @if (item?.dto?.department && item?.dto?.shelfLabel) { + / + } + {{ item?.dto?.shelfLabel }}
+
{{ item.productGroup }}:{{ item.productGroup | productGroup }}
-
-
-
- {{ item?.dto?.department }} - / - {{ item?.dto?.shelfLabel }} -
-
{{ item.productGroup }}:{{ item.productGroup | productGroup }}
-
+ @if (!!returnDto) { +
+ @if (enableChangeRemissionQuantity) { + + } + @if (enableToRemit) { + + } +
+ } @else { + @if (item?.dto?.source === 'manually-added') { +
+ +
+ } + } - -
- - -
-
- - -
- -
-
diff --git a/apps/isa-app/src/page/remission/remission-list/remission-list.component.html b/apps/isa-app/src/page/remission/remission-list/remission-list.component.html index c667215ce..aeeee3c89 100644 --- a/apps/isa-app/src/page/remission/remission-list/remission-list.component.html +++ b/apps/isa-app/src/page/remission/remission-list/remission-list.component.html @@ -4,14 +4,16 @@ class="filter absolute right-0 top-0 h-14 rounded px-5 text-lg bg-cadet-blue grid grid-flow-col gap-2 items-center" type="button" (click)="shellFilterOverlay.open()" - > + > Filter
- + @if (shellFilterOverlay.isOpen) { + + } + >

@@ -31,68 +33,88 @@

- + @for (source of sources$ | async; track source) { + + }

-
+ @if ((filteredSuppliers$ | async).length > 1) { +
+ @for (supplier of filteredSuppliers$ | async; track supplier) { + + } +
+ } +
+ + @if (!(return$ | async)) { +

+ + Artikel hinzufügen + +

+ } + + @if (return$ | async) { +

Wanne befüllen

+ } + + @if ((selectedSource$ | async) === 'Abteilungsremission') { +
+
-
- -

- - Artikel hinzufügen - - -

- -

Wanne befüllen

- -
- -
+ }

{{ (hits$ | async) || 0 }} Titel

- -
- Wählen Sie die Abteilung, aus der Sie remittieren möchten. - Es sind im Moment keine Artikel vorhanden -
+ @if (fetching$ | async) { + + } + @if (listEmpty$ | async) { +
+ @switch (showSelectDepartmenttext$ | async) { + @case (true) { + Wählen Sie die Abteilung, aus der Sie remittieren möchten. + } + @case (false) { + Es sind im Moment keine Artikel vorhanden + } + } +
+ }
@@ -100,29 +122,33 @@
- - Remission starten - + @if (showStartRemissionAction$ | async) { + + Remission starten + + } - - Zum Warenbegleitschein - - + @if (return$ | async) { + + Zum Warenbegleitschein + + + }
- +@if (showScrollArrow$ | async) { + +} diff --git a/apps/isa-app/src/page/remission/required-capacities/required-capacities.component.html b/apps/isa-app/src/page/remission/required-capacities/required-capacities.component.html index 50e62416c..817964a8e 100644 --- a/apps/isa-app/src/page/remission/required-capacities/required-capacities.component.html +++ b/apps/isa-app/src/page/remission/required-capacities/required-capacities.component.html @@ -1,11 +1,10 @@ - +@if (requiredCapacities?.length > 1) {
Leistungsplätze: {{ leistung }} von {{ maxLeistung }} Exemplaren
-
Stapelplätze: {{ stapel }} von {{ maxStapel }} Titel
-
+} diff --git a/apps/isa-app/src/page/remission/shared/shipping-document-details/shipping-document-details-item/shipping-document-details-item.component.html b/apps/isa-app/src/page/remission/shared/shipping-document-details/shipping-document-details-item/shipping-document-details-item.component.html index 87204a093..e5c664f7d 100644 --- a/apps/isa-app/src/page/remission/shared/shipping-document-details/shipping-document-details-item/shipping-document-details-item.component.html +++ b/apps/isa-app/src/page/remission/shared/shipping-document-details/shipping-document-details-item/shipping-document-details-item.component.html @@ -1,12 +1,13 @@
- + @if (item?.product?.ean | productImage; as url) { + + }
@@ -20,10 +21,12 @@
Remi-Menge
{{ item.quantity }}x
-
- -
+ @if (canRemoveItem) { +
+ +
+ }
diff --git a/apps/isa-app/src/page/remission/shared/shipping-document-details/shipping-document-details.component.html b/apps/isa-app/src/page/remission/shared/shipping-document-details/shipping-document-details.component.html index 902f6c74a..b37fe079c 100644 --- a/apps/isa-app/src/page/remission/shared/shipping-document-details/shipping-document-details.component.html +++ b/apps/isa-app/src/page/remission/shared/shipping-document-details/shipping-document-details.component.html @@ -1,12 +1,13 @@
- + @if (!completed) { + + }

Warenbegleitschein @@ -35,30 +36,32 @@

-
-
Wannnennummer
-
- {{ firstReceiptPackageNumber }} + @if (firstReceiptPackageNumber) { +
+
Wannnennummer
+
+ {{ firstReceiptPackageNumber }} +
-
+ }
- +@if (itemsCount === 0 && showAddToRemiHint) {

Neue Artikel aus der Remi-Liste hinzufügen

-
+} @else { + @for (item of firstReceipt.items; track item) { + + } +} - - -
diff --git a/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-details/shipping-document-details.component.html b/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-details/shipping-document-details.component.html index bcd1d775b..cd147a2fe 100644 --- a/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-details/shipping-document-details.component.html +++ b/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-details/shipping-document-details.component.html @@ -1,34 +1,36 @@ - - - -

- Bitte prüfen Sie, ob die Artikel in der Wanne -
- mit den Titeln auf dem Warenbegleitschein -
- identisch sind. -

+@if (return$ | async; as return) { + +} +@if (notCompleted$ | async) { + @if (hasItems$ | async) { +

+ Bitte prüfen Sie, ob die Artikel in der Wanne +
+ mit den Titeln auf dem Warenbegleitschein +
+ identisch sind. +

+ }
-
+}
- + @if (remissionStarted$ | async) { @@ -36,8 +38,8 @@ [disabled]="finishShippingDocumentDisabled$ | async" (click)="complete()" class="bg-brand text-white font-bold text-lg px-6 py-3 rounded-full shadow-cta whitespace-nowrap" - > + > Wanne abschließen - + }
diff --git a/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-list-item/shipping-document-list-item.component.html b/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-list-item/shipping-document-list-item.component.html index f8045dbc3..5169c2739 100644 --- a/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-list-item/shipping-document-list-item.component.html +++ b/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-list-item/shipping-document-list-item.component.html @@ -1,6 +1,8 @@

-
+ @if (!completed) { +
+ } #{{ firstReceipt.receiptNumber | shortReceiptNumber }}

@@ -26,10 +28,12 @@
-
-
Wannennummer
-
- {{ firstReceiptPackageNumber }} + @if (firstReceiptPackageNumber) { +
+
Wannennummer
+
+ {{ firstReceiptPackageNumber }} +
-
+ }
diff --git a/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-list.component.html b/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-list.component.html index 6bedca10f..357472645 100644 --- a/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-list.component.html +++ b/apps/isa-app/src/page/remission/shipping-document-list/shipping-document-list.component.html @@ -1,7 +1,9 @@

Warenbegleitscheine

- - - + @for (return of returns$ | async; track return) { + + + + }
diff --git a/apps/isa-app/src/page/task-calendar/components/task-info/task-info.component.html b/apps/isa-app/src/page/task-calendar/components/task-info/task-info.component.html index 986aae95d..503b7f161 100644 --- a/apps/isa-app/src/page/task-calendar/components/task-info/task-info.component.html +++ b/apps/isa-app/src/page/task-calendar/components/task-info/task-info.component.html @@ -4,85 +4,96 @@ - {{ date | date: 'EEEE, dd. MMMM yyyy' }} - {{ date | date: 'dd. MMMM yyyy' }} + @if (checkSameDay()) { + {{ date | date: 'EEEE, dd. MMMM yyyy' }} + } @else { + {{ date | date: 'dd. MMMM yyyy' }} + }
{{ info?.category | replace: '##' : ' / ' }}
- +@if (showUpdateComment$ | async) {
Kommentar
-
{{ info.updateComment }}
-
+}
{{ timeSpan }}
-
-
 
- -
- + @if (type$ | async; as type) { +
+ @if (type === 'Task') { +
 
+ } + @if (type !== 'Task') { + + } +
+ } + @if (teaser$ | async; as teaser) { + + }
-
Zu erledigen {{ taskDate }}
+ @if (showTaskDate && !!taskDate) { +
Zu erledigen {{ taskDate }}
+ }
- +@if (info?.link) {
-
+} - +@if (info?.attachments > 0 || info?.articles?.length > 0) {
Dateianhang

- + @for (attachment of attachments$ | async; track attachment) {
{{ attachment.name }}
-

-
- + } + @if (info?.articles?.length > 0) {
Artikelliste
-
-
+ }
-
+} - +@if (showNotes$ | async) {
@@ -92,6 +103,8 @@
- +} -
+@if ((type$ | async) === 'Task') { +
+} diff --git a/apps/isa-app/src/page/task-calendar/components/task-list/task-list-group.component.html b/apps/isa-app/src/page/task-calendar/components/task-list/task-list-group.component.html index 4f7d98a13..e34f2f068 100644 --- a/apps/isa-app/src/page/task-calendar/components/task-list/task-list-group.component.html +++ b/apps/isa-app/src/page/task-calendar/components/task-list/task-list-group.component.html @@ -8,7 +8,7 @@

- +@for (item of items; track item) {
-
+} diff --git a/apps/isa-app/src/page/task-calendar/components/task-list/task-list-item.component.html b/apps/isa-app/src/page/task-calendar/components/task-list/task-list-item.component.html index 555b046af..5164dcc4c 100644 --- a/apps/isa-app/src/page/task-calendar/components/task-list/task-list-item.component.html +++ b/apps/isa-app/src/page/task-calendar/components/task-list/task-list-item.component.html @@ -5,37 +5,52 @@ [style.backgroundColor]="indicatorColor$ | async" >
- + @if (showDate) { {{ item?.taskDate || item?.publicationDate | date }} - - - - {{ item?.timeFrom | date: 'HH:mm' }} - {{ item?.timeTo | date: 'HH:mm' }} - Ganztägig - - + } + @if (!showDate) { + @switch (showTime$ | async) { + @case (true) { + {{ item?.timeFrom | date: 'HH:mm' }} - {{ item?.timeTo | date: 'HH:mm' }} + } + @case (false) { + Ganztägig + } + } + }
- + @if (itemType$ | async; as itemType) { - + }
{{ item?.title }} - - - + @if (item.requiresImageOnConfirmation) { + + } + @if (hasAttachments$ | async) { + + } + @if (showUpdateIcon$ | async) { + + }
{{ item?.category | replace: '##' : ' / ' }}
{{ item?.text | stripHtmlTags | substr: 70 }}
diff --git a/apps/isa-app/src/page/task-calendar/components/task-list/task-list.component.html b/apps/isa-app/src/page/task-calendar/components/task-list/task-list.component.html index 4255700af..0a9474258 100644 --- a/apps/isa-app/src/page/task-calendar/components/task-list/task-list.component.html +++ b/apps/isa-app/src/page/task-calendar/components/task-list/task-list.component.html @@ -1,23 +1,29 @@ - -
- -
-
+ @if (showOverdueItems$ | async) { + @if (overdueItems$ | async; as overdieItems) { +
+ +
+ } + } - -
- -
-
+ @if (selectedItems$ | async; as itemsForSelectedDate) { + @if (itemsForSelectedDate?.length) { +
+ +
+ } + } - -
- -
-
+ @if (showOngoingItems$ | async) { + @if (ongoingItems$ | async; as ongoingItems) { +
+ +
+ } + }
diff --git a/apps/isa-app/src/page/task-calendar/components/task-searchbar/task-searchbar.component.html b/apps/isa-app/src/page/task-calendar/components/task-searchbar/task-searchbar.component.html index ea96cbe86..dc45006e1 100644 --- a/apps/isa-app/src/page/task-calendar/components/task-searchbar/task-searchbar.component.html +++ b/apps/isa-app/src/page/task-calendar/components/task-searchbar/task-searchbar.component.html @@ -1,5 +1,5 @@
- + @if (option?.options && option?.options.length > 0) { + + }
- +@for (childOption of option?.options; track childOption; let index = $index) { + +} diff --git a/apps/isa-app/src/ui/filter/next/filter-group/filter-filter-group-main/filter-filter-group-main.component.html b/apps/isa-app/src/ui/filter/next/filter-group/filter-filter-group-main/filter-filter-group-main.component.html index ad1c7e527..66e52ed6e 100644 --- a/apps/isa-app/src/ui/filter/next/filter-group/filter-filter-group-main/filter-filter-group-main.component.html +++ b/apps/isa-app/src/ui/filter/next/filter-group/filter-filter-group-main/filter-filter-group-main.component.html @@ -1 +1,3 @@ - +@for (input of uiInputGroup?.input; track input) { + +} diff --git a/apps/isa-app/src/ui/filter/next/filter-group/filter-input-group-main/filter-input-group-main.component.html b/apps/isa-app/src/ui/filter/next/filter-group/filter-input-group-main/filter-input-group-main.component.html index afc636f3d..eaaa402c4 100644 --- a/apps/isa-app/src/ui/filter/next/filter-group/filter-input-group-main/filter-input-group-main.component.html +++ b/apps/isa-app/src/ui/filter/next/filter-group/filter-input-group-main/filter-input-group-main.component.html @@ -8,22 +8,25 @@ [loading]="loading" [hint]="hint" [scanner]="scanner" -> - - - + > + @if (autocompleteProvider) { + + @for (item of autocompleteResults$ | async; track item) { + + } + + } - +@if (showDescription && uiInput?.description) { {{ uiInput.description }} - +} diff --git a/apps/isa-app/src/ui/filter/next/order-by-filter/order-by-filter.component.html b/apps/isa-app/src/ui/filter/next/order-by-filter/order-by-filter.component.html index f50c6b6c1..a33011fdb 100644 --- a/apps/isa-app/src/ui/filter/next/order-by-filter/order-by-filter.component.html +++ b/apps/isa-app/src/ui/filter/next/order-by-filter/order-by-filter.component.html @@ -1,19 +1,20 @@
- + @for (label of orderByKeys; track label) { + + }
diff --git a/apps/isa-app/src/ui/filter/next/shared/filter-input-chip/filter-input-chip.component.html b/apps/isa-app/src/ui/filter/next/shared/filter-input-chip/filter-input-chip.component.html index 7ea7926fe..19128942f 100644 --- a/apps/isa-app/src/ui/filter/next/shared/filter-input-chip/filter-input-chip.component.html +++ b/apps/isa-app/src/ui/filter/next/shared/filter-input-chip/filter-input-chip.component.html @@ -1,28 +1,9 @@ - - +@if (!uiInput?.hasOptions()) { - +} +@if (uiInput?.hasOptions()) { + @for (option of uiInput?.options?.values; track option) { + + } +} diff --git a/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-bool/filter-input-option-bool.component.html b/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-bool/filter-input-option-bool.component.html index 4331a84c5..c3c9a2888 100644 --- a/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-bool/filter-input-option-bool.component.html +++ b/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-bool/filter-input-option-bool.component.html @@ -5,20 +5,23 @@ [attr.data-key]="uiOption?.key" [attr.data-selected]="uiOption?.selected" [attr.data-target]="uiOption?.expanded" -> + > {{ uiOption?.label }} - + @if (uiOption?.values?.length) { + + } - - - +@if (uiOption?.expanded) { + @for (subOption of uiOption?.values; track subOption) { + + } +} diff --git a/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-date-range/filter-input-option-date-range.component.html b/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-date-range/filter-input-option-date-range.component.html index ecc1a0a6e..b77806771 100644 --- a/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-date-range/filter-input-option-date-range.component.html +++ b/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-date-range/filter-input-option-date-range.component.html @@ -1,68 +1,70 @@
-
-
- {{ uiStartOption?.label }}: - +
+ {{ uiStartOption?.label }}: + +
+
- -
-
-
- {{ uiStopOption?.label }}: - +
+ {{ uiStopOption?.label }}: + +
+
- -
+ }
diff --git a/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-number-range/filter-input-option-number-range.component.html b/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-number-range/filter-input-option-number-range.component.html index 2f0c7a967..027f19d7d 100644 --- a/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-number-range/filter-input-option-number-range.component.html +++ b/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-number-range/filter-input-option-number-range.component.html @@ -1,51 +1,53 @@
-
-
- - - + @if (uiStartOption) { +
+
+ + + +
+
+ } + @if (uiStopOption) { +
+
+ + + +
+
+ }
-
-
-
- - - -
-
-
-

- {{ uiStartOption?.validate() || uiStopOption?.validate() }} -

+

+ {{ uiStartOption?.validate() || uiStopOption?.validate() }} +

diff --git a/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-tri-state/filter-input-option-tri-state.component.html b/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-tri-state/filter-input-option-tri-state.component.html index 2dd0e598d..580a9c8d6 100644 --- a/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-tri-state/filter-input-option-tri-state.component.html +++ b/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-option-tri-state/filter-input-option-tri-state.component.html @@ -4,21 +4,24 @@ [attr.data-value]="uiOption?.value" [attr.data-key]="uiOption?.key" [attr.data-selected]="uiOption?.selected" -> + >
{{ uiOption?.label }}
- + @if (uiOption?.values?.length) { + + } - - - +@if (uiOption?.expanded) { + @for (subOption of uiOption?.values; track subOption) { + + } +} diff --git a/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-options.component.html b/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-options.component.html index 091b2f7c7..6c4fcd23a 100644 --- a/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-options.component.html +++ b/apps/isa-app/src/ui/filter/next/shared/filter-input-options/filter-input-options.component.html @@ -2,43 +2,51 @@
- + @if (!uiInputOptions?.max && (uiInputOptions?.parent?.type === 2 || uiInputOptions?.parent?.type === 4)) { + + }

{{ uiInputOptions?.parent?.description }}

- + @if (uiInputOptions?.parent?.type === 2 || uiInputOptions?.parent?.type === 4) {
- - - - - - + @if (uiInputOptions?.parent?.type === 2) { + @for (option of uiInputOptions?.values; track option) { + + } + } + @if (uiInputOptions?.parent?.type === 4) { + @for (option of uiInputOptions?.values; track option) { + + } + }
- -
- - + @if (scrollable) { + + } + } + @if (uiInputOptions?.parent?.type === 128) { + + } + @if (uiInputOptions?.parent?.type === 4096) { + + }
diff --git a/apps/isa-app/src/ui/filter/next/shared/filter-input/input-text/input-text.component.html b/apps/isa-app/src/ui/filter/next/shared/filter-input/input-text/input-text.component.html index b8ffa374b..211a8dad3 100644 --- a/apps/isa-app/src/ui/filter/next/shared/filter-input/input-text/input-text.component.html +++ b/apps/isa-app/src/ui/filter/next/shared/filter-input/input-text/input-text.component.html @@ -1,4 +1,6 @@ -

Ungültige {{ input?.label }}

+@if (control.errors?.pattern) { +

Ungültige {{ input?.label }}

+} diff --git a/apps/isa-app/src/ui/filter/next/ui-filter.component.html b/apps/isa-app/src/ui/filter/next/ui-filter.component.html index 65244fa00..e07d5bccf 100644 --- a/apps/isa-app/src/ui/filter/next/ui-filter.component.html +++ b/apps/isa-app/src/ui/filter/next/ui-filter.component.html @@ -1,10 +1,11 @@ - +@if (uiFilter?.input | group: 'main'; as inputGroupMain) { + +} diff --git a/apps/isa-app/src/ui/filter/next/ui-filter.component.ts b/apps/isa-app/src/ui/filter/next/ui-filter.component.ts index e82cc4b4e..514860ed4 100644 --- a/apps/isa-app/src/ui/filter/next/ui-filter.component.ts +++ b/apps/isa-app/src/ui/filter/next/ui-filter.component.ts @@ -1,4 +1,4 @@ -import { DOCUMENT } from '@angular/common'; + import { Component, ChangeDetectionStrategy, @@ -15,6 +15,7 @@ import { ViewChild, ContentChildren, QueryList, + DOCUMENT } from '@angular/core'; import { UiFilterInputGroupMainComponent } from './filter-group/filter-input-group-main'; import { UiFilterCustomInputDirective } from './shared/filter-input'; diff --git a/apps/isa-app/src/ui/filter/selected-filter-options/components/selected-filter-options.component.html b/apps/isa-app/src/ui/filter/selected-filter-options/components/selected-filter-options.component.html index 1696e2d92..6c56731b3 100644 --- a/apps/isa-app/src/ui/filter/selected-filter-options/components/selected-filter-options.component.html +++ b/apps/isa-app/src/ui/filter/selected-filter-options/components/selected-filter-options.component.html @@ -1,24 +1,30 @@ -
- - -
- {{ option.name }} - +@if (value) { +
+ @if (compareFilter()) { + + } + @for (option of selectedOptions; track option; let optionIndex = $index) { +
+ {{ option.name }} + +
+ } + @if (collapsed && selectedOptions?.length > collapseAtIndex) { + + } + @if (!collapsed && selectedOptions?.length > collapseAtIndex) { + + }
- - - - -
+} diff --git a/apps/isa-app/src/ui/form-control/ui-form-control.component.html b/apps/isa-app/src/ui/form-control/ui-form-control.component.html index c53c70103..8516b95a2 100644 --- a/apps/isa-app/src/ui/form-control/ui-form-control.component.html +++ b/apps/isa-app/src/ui/form-control/ui-form-control.component.html @@ -3,21 +3,30 @@ {{ suffix }} {{ prefix }} - + @if (label) { + + }
- - {{ ngControl?.errors | uiFormControlFirstError: label }} - -Nicht Änderbar - +@if (showHint && ngControl?.touched && ngControl?.errors) { + + {{ ngControl?.errors | uiFormControlFirstError: label }} + +} +@if (showHint && isReadonly) { + Nicht Änderbar +} +@if ( + !isReadonly && clearable && ngControl?.value && !ngControl?.disabled && !(uiControl?.type === 'radio' || uiControl?.type === 'checkbox') + ) { + +} -{{ statusLabel }} +@if (!!statusLabel && !clearable) { + {{ statusLabel }} +} diff --git a/apps/isa-app/src/ui/input/ui-radio-input.directive.ts b/apps/isa-app/src/ui/input/ui-radio-input.directive.ts index a404b8e73..56835d148 100644 --- a/apps/isa-app/src/ui/input/ui-radio-input.directive.ts +++ b/apps/isa-app/src/ui/input/ui-radio-input.directive.ts @@ -13,11 +13,12 @@ import { Output, Renderer2, SimpleChanges, + DOCUMENT } from '@angular/core'; import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms'; import { UiFormControlDirective } from '@ui/form-control'; import { fromEvent, Subscription } from 'rxjs'; -import { DOCUMENT } from '@angular/common'; + @Directive({ selector: 'input[uiInput][type="checkbox"]', diff --git a/apps/isa-app/src/ui/loader/loader.component.html b/apps/isa-app/src/ui/loader/loader.component.html index dd68054bd..c2c160eb3 100644 --- a/apps/isa-app/src/ui/loader/loader.component.html +++ b/apps/isa-app/src/ui/loader/loader.component.html @@ -1,6 +1,8 @@ -
- -
+@if (loading) { +
+ +
+}
diff --git a/apps/isa-app/src/ui/modal/dialog/dialog-modal.component.html b/apps/isa-app/src/ui/modal/dialog/dialog-modal.component.html index 5ed351096..e8ef82bbd 100644 --- a/apps/isa-app/src/ui/modal/dialog/dialog-modal.component.html +++ b/apps/isa-app/src/ui/modal/dialog/dialog-modal.component.html @@ -1,14 +1,24 @@ -

{{ subtitle }}

-

- {{ content }} -

+@if (modalRef.data.subtitle; as subtitle) { +

{{ subtitle }}

+} +@if (modalRef.data.content; as content) { +

+ {{ content }} +

+} -
- -
+@if (modalRef.data.actions; as actions) { +
+ @for (action of actions; track action) { + + } +
+} -

- {{ description }} -

+@if (modalRef.data.description; as description) { +

+ {{ description }} +

+} diff --git a/apps/isa-app/src/ui/modal/modal.component.html b/apps/isa-app/src/ui/modal/modal.component.html index 941098d3c..7ae0286d1 100644 --- a/apps/isa-app/src/ui/modal/modal.component.html +++ b/apps/isa-app/src/ui/modal/modal.component.html @@ -1,19 +1,23 @@ - +@if (ref.config.canClose) { + +} -

{{ title }}

+@if (!!title) { +

{{ title }}

+} diff --git a/apps/isa-app/src/ui/notes/ui-notes.component.html b/apps/isa-app/src/ui/notes/ui-notes.component.html index b9fad9fcf..73f38f4b9 100644 --- a/apps/isa-app/src/ui/notes/ui-notes.component.html +++ b/apps/isa-app/src/ui/notes/ui-notes.component.html @@ -1,15 +1,19 @@
- + @if (control.dirty) { + + }
-
-
- {{ note.note }} + @for (note of notesToDisplay; track note) { +
+
+ {{ note.note }} +
+
+ {{ note.date | date: 'EEEE, dd. MMMM yyyy | HH:mm' }} +
-
- {{ note.date | date: 'EEEE, dd. MMMM yyyy | HH:mm' }} -
-
+ }
diff --git a/apps/isa-app/src/ui/quantity-dropdown/quantity-dropdown-content/quantity-dropdown-content.component.html b/apps/isa-app/src/ui/quantity-dropdown/quantity-dropdown-content/quantity-dropdown-content.component.html index 45994594d..f950c57ee 100644 --- a/apps/isa-app/src/ui/quantity-dropdown/quantity-dropdown-content/quantity-dropdown-content.component.html +++ b/apps/isa-app/src/ui/quantity-dropdown/quantity-dropdown-content/quantity-dropdown-content.component.html @@ -1,23 +1,29 @@
- - - - + } + @for (qty of rangeArray; track qty; let first = $first) { + + + } + @if (range > 9 || range === undefined) { + + }
diff --git a/apps/isa-app/src/ui/quantity-dropdown/quantity-dropdown.component.html b/apps/isa-app/src/ui/quantity-dropdown/quantity-dropdown.component.html index e6cf33fbb..5412be515 100644 --- a/apps/isa-app/src/ui/quantity-dropdown/quantity-dropdown.component.html +++ b/apps/isa-app/src/ui/quantity-dropdown/quantity-dropdown.component.html @@ -1,37 +1,42 @@ -
- - - - - - -
- +@if (quantity) { +
+ + @if (!customInput) { + + } + + @if (customInput) { + + } + +
+} +@if (!!customInput) { + +} diff --git a/apps/isa-app/src/ui/scroll-container/content-loader/content-loader.component.html b/apps/isa-app/src/ui/scroll-container/content-loader/content-loader.component.html index c2d28e2b9..b168bb8aa 100644 --- a/apps/isa-app/src/ui/scroll-container/content-loader/content-loader.component.html +++ b/apps/isa-app/src/ui/scroll-container/content-loader/content-loader.component.html @@ -1 +1,3 @@ -
Inhalte werden geladen
+@if (loading) { +
Inhalte werden geladen
+} diff --git a/apps/isa-app/src/ui/scroll-container/scroll-container.component.html b/apps/isa-app/src/ui/scroll-container/scroll-container.component.html index 9c80a2bfb..25090442d 100644 --- a/apps/isa-app/src/ui/scroll-container/scroll-container.component.html +++ b/apps/isa-app/src/ui/scroll-container/scroll-container.component.html @@ -8,22 +8,27 @@ (reachEnd)="reachedEnd()" (reachStart)="reachedStart()" [deltaEnd]="deltaEnd" -> - - - - + > + @if (!loading) { + + } @else { + @if (useLoadAnimation) { - - - - + @for (skeletons of createSkeletons(); track skeletons) { + + } + } @else { - - + } + } -
+ + @if (showSpacer && !loading) { +
+ }
- +@if (showScrollArrow && scrollPersantage > 0) { + +} diff --git a/apps/isa-app/src/ui/scroll-container/skeleton-loader/skeleton-loader.component.html b/apps/isa-app/src/ui/scroll-container/skeleton-loader/skeleton-loader.component.html index f8c6ad4e1..8abe25858 100644 --- a/apps/isa-app/src/ui/scroll-container/skeleton-loader/skeleton-loader.component.html +++ b/apps/isa-app/src/ui/scroll-container/skeleton-loader/skeleton-loader.component.html @@ -1,48 +1,50 @@ - -
-
-
-
-
-
-
-
-
-
-
-
+@switch (template) { + @case ('task-calendar') { +
+
+
+
-
-
- -
-
-
-
-
-
-
- -
-
-
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
- + } + @default { +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ } +} diff --git a/apps/isa-app/src/ui/searchbox/next/searchbox.component.html b/apps/isa-app/src/ui/searchbox/next/searchbox.component.html index 6998f01e0..0987f327e 100644 --- a/apps/isa-app/src/ui/searchbox/next/searchbox.component.html +++ b/apps/isa-app/src/ui/searchbox/next/searchbox.component.html @@ -12,24 +12,34 @@ (focus)="clearHint(); focused.emit(true)" (blur)="focused.emit(false)" (keyup)="onKeyup($event)" - /> -
{{ hint }}
+ /> + @if (showHint) { +
{{ hint }}
+ }
- - - - - - + } -
- -
+ @if (!loading) { + @if (!canScan) { + + } + @if (canScan) { + + } + } + + @if (loading) { +
+ +
+ }
diff --git a/apps/isa-app/src/ui/searchbox/ui-searchbox-autocomplete.component.html b/apps/isa-app/src/ui/searchbox/ui-searchbox-autocomplete.component.html index a48348f70..5c75a1886 100644 --- a/apps/isa-app/src/ui/searchbox/ui-searchbox-autocomplete.component.html +++ b/apps/isa-app/src/ui/searchbox/ui-searchbox-autocomplete.component.html @@ -1,3 +1,3 @@ - +@if (show) { - +} diff --git a/apps/isa-app/src/ui/select-bullet/select-bullet.component.html b/apps/isa-app/src/ui/select-bullet/select-bullet.component.html index a7b990052..07e37d34c 100644 --- a/apps/isa-app/src/ui/select-bullet/select-bullet.component.html +++ b/apps/isa-app/src/ui/select-bullet/select-bullet.component.html @@ -1,4 +1,6 @@
- + @if (checked) { + + }
diff --git a/apps/isa-app/src/ui/select/ui-select.component.html b/apps/isa-app/src/ui/select/ui-select.component.html index 2801899b0..0d71cd026 100644 --- a/apps/isa-app/src/ui/select/ui-select.component.html +++ b/apps/isa-app/src/ui/select/ui-select.component.html @@ -1,9 +1,11 @@
{{ label }}
- + @if (!readonly) { + + }
diff --git a/apps/isa-app/src/ui/slider/slider.component.html b/apps/isa-app/src/ui/slider/slider.component.html index a1b680b0a..c0538b940 100644 --- a/apps/isa-app/src/ui/slider/slider.component.html +++ b/apps/isa-app/src/ui/slider/slider.component.html @@ -1,13 +1,17 @@ -
- -
+@if (!isStartVisible) { +
+ +
+}
-
- -
+@if (!isEndVisible) { +
+ +
+} diff --git a/apps/isa-app/src/ui/spinner/ui-spinner.component.html b/apps/isa-app/src/ui/spinner/ui-spinner.component.html index 188a47a33..d9e7023c0 100644 --- a/apps/isa-app/src/ui/spinner/ui-spinner.component.html +++ b/apps/isa-app/src/ui/spinner/ui-spinner.component.html @@ -1,5 +1,7 @@ - +@if (show) { + +} diff --git a/apps/isa-app/src/ui/stars/stars.component.html b/apps/isa-app/src/ui/stars/stars.component.html index 4ba07e891..079e993a3 100644 --- a/apps/isa-app/src/ui/stars/stars.component.html +++ b/apps/isa-app/src/ui/stars/stars.component.html @@ -1,9 +1,9 @@ - +@for (star of fullStars; track star) { full star - - +} +@for (star of halfStars; track star) { half star - - +} +@for (star of emptyStars; track star) { empty star - +} diff --git a/apps/isa-app/src/ui/tooltip/tooltip.component.html b/apps/isa-app/src/ui/tooltip/tooltip.component.html index 998c8cc8b..6b8c30acd 100644 --- a/apps/isa-app/src/ui/tooltip/tooltip.component.html +++ b/apps/isa-app/src/ui/tooltip/tooltip.component.html @@ -5,9 +5,11 @@

- + @if (closeable) { + + }
diff --git a/apps/isa-app/src/ui/tshirt/ui-tshirt.component.html b/apps/isa-app/src/ui/tshirt/ui-tshirt.component.html index 7c02f0c0c..dd015d17d 100644 --- a/apps/isa-app/src/ui/tshirt/ui-tshirt.component.html +++ b/apps/isa-app/src/ui/tshirt/ui-tshirt.component.html @@ -1,3 +1,5 @@ -
- {{ size }} -
+@if (size !== '') { +
+ {{ size }} +
+} diff --git a/apps/isa-app/tsconfig.json b/apps/isa-app/tsconfig.json index a6cccc3f2..13c7e620c 100644 --- a/apps/isa-app/tsconfig.json +++ b/apps/isa-app/tsconfig.json @@ -32,6 +32,6 @@ "enableI18nLegacyMessageIdFormat": false, "strictInjectionParameters": true, "strictInputAccessModifiers": true, - "strictTemplates": true + "strictTemplates": false } } diff --git a/libs/oms/data-access/src/lib/stores/return-details.store.ts b/libs/oms/data-access/src/lib/stores/return-details.store.ts index 4b7bd43ce..7730dbd25 100644 --- a/libs/oms/data-access/src/lib/stores/return-details.store.ts +++ b/libs/oms/data-access/src/lib/stores/return-details.store.ts @@ -158,13 +158,13 @@ export const ReturnDetailsStore = signalStore( withMethods((store) => ({ receiptResource: (receiptId: () => number | undefined) => resource({ - request: receiptId, - loader: async ({ abortSignal, request }) => { - if (!request) { + params: receiptId, + loader: async ({ abortSignal, params }) => { + if (!params) { return undefined; } const receipt = await store._returnDetailsService.fetchReturnDetails( - { receiptId: request }, + { receiptId: params }, abortSignal, ); patchState(store, setEntity(receipt, receiptConfig)); @@ -175,7 +175,7 @@ export const ReturnDetailsStore = signalStore( canReturnResource: (receiptItem: () => ReceiptItem | undefined) => resource({ - request: () => { + params: () => { const item = receiptItem(); if (!item) { @@ -189,18 +189,18 @@ export const ReturnDetailsStore = signalStore( getReceiptItemProductCategory(item), }; }, - loader: async ({ request, abortSignal }) => { - if (request === undefined) { + loader: async ({ params, abortSignal }) => { + if (params === undefined) { return undefined; } - const key = `${request.item.id}:${request.category}`; + const key = `${params.item.id}:${params.category}`; if (store.canReturn()[key]) { return store.canReturn()[key]; } const res = await store._returnDetailsService.canReturn( - request, + params, abortSignal, ); patchState(store, { diff --git a/libs/oms/feature/return-details/src/lib/return-details.component.ts b/libs/oms/feature/return-details/src/lib/return-details.component.ts index fe5c2dc13..801cd7b73 100644 --- a/libs/oms/feature/return-details/src/lib/return-details.component.ts +++ b/libs/oms/feature/return-details/src/lib/return-details.component.ts @@ -78,10 +78,9 @@ export class ReturnDetailsComponent { receiptResource = this.#store.receiptResource(this.receiptId); customerReceiptsResource = resource({ - request: this.receiptResource.value, - loader: async ({ request, abortSignal }) => { - console.log('Fetching customer receipts for:', request); - const email = request?.buyer?.communicationDetails?.email; + params: this.receiptResource.value, + loader: async ({ params, abortSignal }) => { + const email = params.buyer?.communicationDetails?.email; if (!email) { return []; } diff --git a/libs/shared/scanner/src/lib/scanner.service.spec.ts b/libs/shared/scanner/src/lib/scanner.service.spec.ts index 84e836490..7f25c4e73 100644 --- a/libs/shared/scanner/src/lib/scanner.service.spec.ts +++ b/libs/shared/scanner/src/lib/scanner.service.spec.ts @@ -17,7 +17,9 @@ class MockConfig { } } -jest.mock('scandit-web-datacapture-core'); +jest.mock('scandit-web-datacapture-core', () => ({ + configure: jest.fn(), +})); jest.mock('scandit-web-datacapture-barcode', () => ({ barcodeCaptureLoader: jest.fn(() => 'mockedBarcodeLoader'), })); diff --git a/libs/ui/datepicker/src/lib/body/calendar-body/calendar-body.component.html b/libs/ui/datepicker/src/lib/body/calendar-body/calendar-body.component.html index f80378b2a..0128d02a7 100644 --- a/libs/ui/datepicker/src/lib/body/calendar-body/calendar-body.component.html +++ b/libs/ui/datepicker/src/lib/body/calendar-body/calendar-body.component.html @@ -7,7 +7,7 @@ class="flex flex-row items-center gap-2" > - {{ viewState.displayedDate() | date: 'MMMM YYYY' }} + {{ viewState.displayedDate() | date: 'MMMM yyyy' }} diff --git a/package-lock.json b/package-lock.json index abeec4bf5..e8aaa44d1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,29 +8,29 @@ "name": "hima", "version": "0.0.0", "dependencies": { - "@angular/animations": "19.1.7", - "@angular/cdk": "19.1.5", - "@angular/common": "19.1.7", - "@angular/compiler": "19.1.7", - "@angular/core": "19.1.7", - "@angular/forms": "19.1.7", - "@angular/localize": "19.1.7", - "@angular/platform-browser": "19.1.7", - "@angular/platform-browser-dynamic": "19.1.7", - "@angular/router": "19.1.7", - "@angular/service-worker": "19.1.7", + "@angular/animations": "20.0.3", + "@angular/cdk": "20.0.3", + "@angular/common": "20.0.3", + "@angular/compiler": "20.0.3", + "@angular/core": "20.0.3", + "@angular/forms": "20.0.3", + "@angular/localize": "20.0.3", + "@angular/platform-browser": "20.0.3", + "@angular/platform-browser-dynamic": "20.0.3", + "@angular/router": "20.0.3", + "@angular/service-worker": "20.0.3", "@microsoft/signalr": "^8.0.7", - "@ng-icons/core": "^29.5.1", - "@ng-icons/material-icons": "^29.5.1", - "@ngrx/component-store": "19.1.0", - "@ngrx/effects": "19.1.0", - "@ngrx/entity": "19.1.0", - "@ngrx/operators": "19.1.0", - "@ngrx/signals": "19.1.0", - "@ngrx/store": "19.1.0", - "@ngrx/store-devtools": "19.1.0", - "angular-oauth2-oidc": "^17.0.2", - "angular-oauth2-oidc-jwks": "^17.0.2", + "@ng-icons/core": "32.0.0", + "@ng-icons/material-icons": "32.0.0", + "@ngrx/component-store": "19.2.1", + "@ngrx/effects": "19.2.1", + "@ngrx/entity": "19.2.1", + "@ngrx/operators": "19.2.1", + "@ngrx/signals": "19.2.1", + "@ngrx/store": "19.2.1", + "@ngrx/store-devtools": "19.2.1", + "angular-oauth2-oidc": "20.0.0", + "angular-oauth2-oidc-jwks": "20.0.0", "date-fns": "^4.1.0", "lodash": "^4.17.21", "moment": "^2.30.1", @@ -46,15 +46,15 @@ "zone.js": "~0.15.0" }, "devDependencies": { - "@angular-devkit/build-angular": "^19.2.9", - "@angular-devkit/core": "19.2.6", - "@angular-devkit/schematics": "19.2.6", - "@angular/cli": "19.2.6", - "@angular/compiler-cli": "19.1.7", - "@angular/language-service": "19.1.7", - "@angular/pwa": "^19.2.0", + "@angular-devkit/build-angular": "20.0.2", + "@angular-devkit/core": "20.0.2", + "@angular-devkit/schematics": "20.0.2", + "@angular/cli": "20.0.2", + "@angular/compiler-cli": "20.0.3", + "@angular/language-service": "20.0.3", + "@angular/pwa": "20.0.2", "@eslint/js": "^9.8.0", - "@ngneat/spectator": "^19.0.0", + "@ngneat/spectator": "19.6.2", "@nx/angular": "21.2.0", "@nx/eslint": "21.2.0", "@nx/eslint-plugin": "21.2.0", @@ -63,17 +63,17 @@ "@nx/storybook": "21.2.0", "@nx/web": "21.2.0", "@nx/workspace": "21.2.0", - "@schematics/angular": "^19.1.8", + "@schematics/angular": "20.0.2", "@softarc/eslint-plugin-sheriff": "^0.18.0", - "@softarc/sheriff-core": "^0.18.0", - "@storybook/angular": "9.0.5", - "@storybook/core-server": "8.6.11", - "@storybook/jest": "^0.2.3", - "@storybook/test-runner": "0.22.0", - "@storybook/testing-library": "^0.2.2", - "@swc-node/register": "~1.9.1", - "@swc/core": "~1.5.7", - "@swc/helpers": "~0.5.11", + "@softarc/sheriff-core": "0.18.0", + "@storybook/angular": "9.0.9", + "@storybook/core-server": "8.6.14", + "@storybook/jest": "0.2.3", + "@storybook/test-runner": "0.23.0", + "@storybook/testing-library": "0.2.2", + "@swc-node/register": "1.10.10", + "@swc/core": "1.12.1", + "@swc/helpers": "0.5.17", "@types/jest": "^29.5.12", "@types/lodash": "^4.17.16", "@types/node": "18.16.9", @@ -90,17 +90,16 @@ "jest-environment-node": "^29.7.0", "jest-junit": "^16.0.0", "jest-preset-angular": "14.6.0", - "ng-mocks": "^14.13.4", + "ng-mocks": "14.13.5", "ng-swagger-gen": "^2.3.1", "nx": "21.2.0", "postcss": "^8.5.3", "prettier": "^3.5.2", "pretty-quick": "~4.0.0", - "storybook": "9.0.5", "tailwindcss": "^3.4.14", "ts-jest": "^29.1.0", "ts-node": "10.9.1", - "typescript": "~5.6.0", + "typescript": "5.8.3", "typescript-eslint": "^8.19.0" }, "engines": { @@ -147,7 +146,6 @@ "integrity": "sha512-adJYWJWuyXFtCOg2lZTV/7CImf4ifxd6c//VXuq5kx7AiSGTIH5Nf2xTQe8ZAZqytUmDgnoNMDhGRQ9b3C5TnA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@angular-devkit/core": "20.0.2", "rxjs": "7.8.2" @@ -158,126 +156,105 @@ "yarn": ">= 1.13.0" } }, - "node_modules/@angular-devkit/architect/node_modules/@angular-devkit/core": { + "node_modules/@angular-devkit/build-angular": { "version": "20.0.2", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.0.2.tgz", - "integrity": "sha512-qqTSpcIw+TqJ6u/tkQzqgpwVelHsHr8Jhws1Vlx6E0L6E+cRILBK48i9ttE+oYkQlcopQ3VZAmzcZodXJ1SQ9Q==", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-20.0.2.tgz", + "integrity": "sha512-IvIyWSat0W9ZlTn6Hd6xCoMal49JJmrml3oV2+dYFadt0wFcxZ5ygIF9pRymLWBHEjCUhuZzBCAD3gKgZXPMHA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "ajv": "8.17.1", - "ajv-formats": "3.0.1", + "@ampproject/remapping": "2.3.0", + "@angular-devkit/architect": "0.2000.2", + "@angular-devkit/build-webpack": "0.2000.2", + "@angular-devkit/core": "20.0.2", + "@angular/build": "20.0.2", + "@babel/core": "7.27.1", + "@babel/generator": "7.27.1", + "@babel/helper-annotate-as-pure": "7.27.1", + "@babel/helper-split-export-declaration": "7.24.7", + "@babel/plugin-transform-async-generator-functions": "7.27.1", + "@babel/plugin-transform-async-to-generator": "7.27.1", + "@babel/plugin-transform-runtime": "7.27.1", + "@babel/preset-env": "7.27.2", + "@babel/runtime": "7.27.1", + "@discoveryjs/json-ext": "0.6.3", + "@ngtools/webpack": "20.0.2", + "@vitejs/plugin-basic-ssl": "2.0.0", + "ansi-colors": "4.1.3", + "autoprefixer": "10.4.21", + "babel-loader": "10.0.0", + "browserslist": "^4.21.5", + "copy-webpack-plugin": "13.0.0", + "css-loader": "7.1.2", + "esbuild-wasm": "0.25.5", + "fast-glob": "3.3.3", + "http-proxy-middleware": "3.0.5", + "istanbul-lib-instrument": "6.0.3", "jsonc-parser": "3.3.1", + "karma-source-map-support": "1.4.0", + "less": "4.3.0", + "less-loader": "12.3.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.3.1", + "mini-css-extract-plugin": "2.9.2", + "open": "10.1.2", + "ora": "8.2.0", "picomatch": "4.0.2", + "piscina": "5.0.0", + "postcss": "8.5.3", + "postcss-loader": "8.1.1", + "resolve-url-loader": "5.0.0", "rxjs": "7.8.2", - "source-map": "0.7.4" + "sass": "1.88.0", + "sass-loader": "16.0.5", + "semver": "7.7.2", + "source-map-loader": "5.0.0", + "source-map-support": "0.5.21", + "terser": "5.39.1", + "tree-kill": "1.2.2", + "tslib": "2.8.1", + "webpack": "5.99.8", + "webpack-dev-middleware": "7.4.2", + "webpack-dev-server": "5.2.1", + "webpack-merge": "6.0.1", + "webpack-subresource-integrity": "5.1.0" }, "engines": { "node": "^20.19.0 || ^22.12.0 || >=24.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, - "peerDependencies": { - "chokidar": "^4.0.0" - }, - "peerDependenciesMeta": { - "chokidar": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/build-angular": { - "version": "19.2.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-19.2.15.tgz", - "integrity": "sha512-mqudAcyrSp/E7ZQdQoHfys0/nvQuwyJDaAzj3qL3HUStuUzb5ULNOj2f6sFBo+xYo+/WT8IzmzDN9DCqDgvFaA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@ampproject/remapping": "2.3.0", - "@angular-devkit/architect": "0.1902.15", - "@angular-devkit/build-webpack": "0.1902.15", - "@angular-devkit/core": "19.2.15", - "@angular/build": "19.2.15", - "@babel/core": "7.26.10", - "@babel/generator": "7.26.10", - "@babel/helper-annotate-as-pure": "7.25.9", - "@babel/helper-split-export-declaration": "7.24.7", - "@babel/plugin-transform-async-generator-functions": "7.26.8", - "@babel/plugin-transform-async-to-generator": "7.25.9", - "@babel/plugin-transform-runtime": "7.26.10", - "@babel/preset-env": "7.26.9", - "@babel/runtime": "7.26.10", - "@discoveryjs/json-ext": "0.6.3", - "@ngtools/webpack": "19.2.15", - "@vitejs/plugin-basic-ssl": "1.2.0", - "ansi-colors": "4.1.3", - "autoprefixer": "10.4.20", - "babel-loader": "9.2.1", - "browserslist": "^4.21.5", - "copy-webpack-plugin": "12.0.2", - "css-loader": "7.1.2", - "esbuild-wasm": "0.25.4", - "fast-glob": "3.3.3", - "http-proxy-middleware": "3.0.5", - "istanbul-lib-instrument": "6.0.3", - "jsonc-parser": "3.3.1", - "karma-source-map-support": "1.4.0", - "less": "4.2.2", - "less-loader": "12.2.0", - "license-webpack-plugin": "4.0.2", - "loader-utils": "3.3.1", - "mini-css-extract-plugin": "2.9.2", - "open": "10.1.0", - "ora": "5.4.1", - "picomatch": "4.0.2", - "piscina": "4.8.0", - "postcss": "8.5.2", - "postcss-loader": "8.1.1", - "resolve-url-loader": "5.0.0", - "rxjs": "7.8.1", - "sass": "1.85.0", - "sass-loader": "16.0.5", - "semver": "7.7.1", - "source-map-loader": "5.0.0", - "source-map-support": "0.5.21", - "terser": "5.39.0", - "tree-kill": "1.2.2", - "tslib": "2.8.1", - "webpack": "5.98.0", - "webpack-dev-middleware": "7.4.2", - "webpack-dev-server": "5.2.2", - "webpack-merge": "6.0.1", - "webpack-subresource-integrity": "5.1.0" - }, - "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, "optionalDependencies": { - "esbuild": "0.25.4" + "esbuild": "0.25.5" }, "peerDependencies": { - "@angular/compiler-cli": "^19.0.0 || ^19.2.0-next.0", - "@angular/localize": "^19.0.0 || ^19.2.0-next.0", - "@angular/platform-server": "^19.0.0 || ^19.2.0-next.0", - "@angular/service-worker": "^19.0.0 || ^19.2.0-next.0", - "@angular/ssr": "^19.2.15", + "@angular/compiler-cli": "^20.0.0", + "@angular/core": "^20.0.0", + "@angular/localize": "^20.0.0", + "@angular/platform-browser": "^20.0.0", + "@angular/platform-server": "^20.0.0", + "@angular/service-worker": "^20.0.0", + "@angular/ssr": "^20.0.2", "@web/test-runner": "^0.20.0", "browser-sync": "^3.0.2", "jest": "^29.5.0", "jest-environment-jsdom": "^29.5.0", "karma": "^6.3.0", - "ng-packagr": "^19.0.0 || ^19.2.0-next.0", + "ng-packagr": "^20.0.0", "protractor": "^7.0.0", "tailwindcss": "^2.0.0 || ^3.0.0 || ^4.0.0", - "typescript": ">=5.5 <5.9" + "typescript": ">=5.8 <5.9" }, "peerDependenciesMeta": { + "@angular/core": { + "optional": true + }, "@angular/localize": { "optional": true }, + "@angular/platform-browser": { + "optional": true + }, "@angular/platform-server": { "optional": true }, @@ -313,590 +290,194 @@ } } }, - "node_modules/@angular-devkit/build-angular/node_modules/@angular-devkit/architect": { - "version": "0.1902.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1902.15.tgz", - "integrity": "sha512-RbqhStc6ZoRv57ZqLB36VOkBkAdU3nNezCvIs0AJV5V4+vLPMrb0hpIB0sF+9yMlMjWsolnRsj0/Fil+zQG3bw==", + "node_modules/@angular-devkit/build-angular/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "dev": true, "license": "MIT", - "dependencies": { - "@angular-devkit/core": "19.2.15", - "rxjs": "7.8.1" - }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/@angular-devkit/core": { - "version": "19.2.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-19.2.15.tgz", - "integrity": "sha512-pU2RZYX6vhd7uLSdLwPnuBcr0mXJSjp3EgOXKsrlQFQZevc+Qs+2JdXgIElnOT/aDqtRtriDmLlSbtdE8n3ZbA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "8.17.1", - "ajv-formats": "3.0.1", - "jsonc-parser": "3.3.1", - "picomatch": "4.0.2", - "rxjs": "7.8.1", - "source-map": "0.7.4" - }, - "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "chokidar": "^4.0.0" - }, - "peerDependenciesMeta": { - "chokidar": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/@angular/build": { - "version": "19.2.15", - "resolved": "https://registry.npmjs.org/@angular/build/-/build-19.2.15.tgz", - "integrity": "sha512-iE4fp4d5ALu702uoL6/YkjM2JlGEXZ5G+RVzq3W2jg/Ft6ISAQnRKB6mymtetDD6oD7i87e8uSu9kFVNBauX2w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@ampproject/remapping": "2.3.0", - "@angular-devkit/architect": "0.1902.15", - "@babel/core": "7.26.10", - "@babel/helper-annotate-as-pure": "7.25.9", - "@babel/helper-split-export-declaration": "7.24.7", - "@babel/plugin-syntax-import-attributes": "7.26.0", - "@inquirer/confirm": "5.1.6", - "@vitejs/plugin-basic-ssl": "1.2.0", - "beasties": "0.3.2", - "browserslist": "^4.23.0", - "esbuild": "0.25.4", - "fast-glob": "3.3.3", - "https-proxy-agent": "7.0.6", - "istanbul-lib-instrument": "6.0.3", - "listr2": "8.2.5", - "magic-string": "0.30.17", - "mrmime": "2.0.1", - "parse5-html-rewriting-stream": "7.0.0", - "picomatch": "4.0.2", - "piscina": "4.8.0", - "rollup": "4.34.8", - "sass": "1.85.0", - "semver": "7.7.1", - "source-map-support": "0.5.21", - "vite": "6.2.7", - "watchpack": "2.4.2" - }, - "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "optionalDependencies": { - "lmdb": "3.2.6" - }, - "peerDependencies": { - "@angular/compiler": "^19.0.0 || ^19.2.0-next.0", - "@angular/compiler-cli": "^19.0.0 || ^19.2.0-next.0", - "@angular/localize": "^19.0.0 || ^19.2.0-next.0", - "@angular/platform-server": "^19.0.0 || ^19.2.0-next.0", - "@angular/service-worker": "^19.0.0 || ^19.2.0-next.0", - "@angular/ssr": "^19.2.15", - "karma": "^6.4.0", - "less": "^4.2.0", - "ng-packagr": "^19.0.0 || ^19.2.0-next.0", - "postcss": "^8.4.0", - "tailwindcss": "^2.0.0 || ^3.0.0 || ^4.0.0", - "typescript": ">=5.5 <5.9" - }, - "peerDependenciesMeta": { - "@angular/localize": { - "optional": true - }, - "@angular/platform-server": { - "optional": true - }, - "@angular/service-worker": { - "optional": true - }, - "@angular/ssr": { - "optional": true - }, - "karma": { - "optional": true - }, - "less": { - "optional": true - }, - "ng-packagr": { - "optional": true - }, - "postcss": { - "optional": true - }, - "tailwindcss": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/@angular/build/node_modules/vite": { - "version": "6.2.7", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.2.7.tgz", - "integrity": "sha512-qg3LkeuinTrZoJHHF94coSaTfIPyBYoywp+ys4qu20oSJFbKMYoIJo0FWJT9q6Vp49l6z9IsJRbHdcGtiKbGoQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "esbuild": "^0.25.0", - "postcss": "^8.5.3", - "rollup": "^4.30.1" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + "node": ">=12" }, "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/babel-loader": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-10.0.0.tgz", + "integrity": "sha512-z8jt+EdS61AMw22nSfoNJAZ0vrtmhPRVi6ghL3rCeRZI8cdNYFiV5xeV3HbE7rlZZNmGH8BVccwWt8/ED0QOHA==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^5.0.0" + }, + "engines": { + "node": "^18.20.0 || ^20.10.0 || >=22.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0", + "webpack": ">=5.61.0" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/chalk": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", + "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" }, "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", - "jiti": ">=1.21.0", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "sass-embedded": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.16.0", - "tsx": "^4.8.1", - "yaml": "^2.4.2" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "jiti": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - }, - "tsx": { - "optional": true - }, - "yaml": { - "optional": true - } + "fsevents": "~2.3.2" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@angular/build/node_modules/vite/node_modules/postcss": { - "version": "8.5.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.5.tgz", - "integrity": "sha512-d/jtm+rdNT8tpXuHY5MMtcbJFBkhXE6593XVR9UoGCH8jSFGci7jGvMGH5RYd5PBJW+00NZQt6gf7CbagJCrhg==", + "node_modules/@angular-devkit/build-angular/node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", "dependencies": { - "nanoid": "^3.3.11", - "picocolors": "^1.1.1", - "source-map-js": "^1.2.1" + "is-glob": "^4.0.1" }, "engines": { - "node": "^10 || ^12 || >=14" + "node": ">= 6" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@babel/plugin-syntax-import-attributes": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz", - "integrity": "sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==", + "node_modules/@angular-devkit/build-angular/node_modules/ipaddr.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.25.9" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@inquirer/confirm": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.1.6.tgz", - "integrity": "sha512-6ZXYK3M1XmaVBZX6FCfChgtponnL0R6I7k8Nu+kaoNkT828FVZTcca1MqmWQipaW2oNREQl5AaPCUOOCVNdRMw==", + "node_modules/@angular-devkit/build-angular/node_modules/is-interactive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz", + "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/is-unicode-supported": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz", + "integrity": "sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/log-symbols": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-6.0.0.tgz", + "integrity": "sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.1.7", - "@inquirer/type": "^3.0.4" + "chalk": "^5.3.0", + "is-unicode-supported": "^1.3.0" }, "engines": { "node": ">=18" }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.34.8.tgz", - "integrity": "sha512-q217OSE8DTp8AFHuNHXo0Y86e1wtlfVrXiAlwkIvGRQv9zbc6mE3sjIVfwI8sYUyNxwOg0j/Vm1RKM04JcWLJw==", - "cpu": [ - "arm" - ], + "node_modules/@angular-devkit/build-angular/node_modules/log-symbols/node_modules/is-unicode-supported": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "android" - ] + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-android-arm64": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.34.8.tgz", - "integrity": "sha512-Gigjz7mNWaOL9wCggvoK3jEIUUbGul656opstjaUSGC3eT0BM7PofdAJaBfPFWWkXNVAXbaQtC99OCg4sJv70Q==", - "cpu": [ - "arm64" - ], + "node_modules/@angular-devkit/build-angular/node_modules/ora": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-8.2.0.tgz", + "integrity": "sha512-weP+BZ8MVNnlCm8c0Qdc1WSWq4Qn7I+9CJGm7Qali6g44e/PUzbjNqJX5NJ9ljlNMosfJvg1fKEGILklK9cwnw==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.34.8.tgz", - "integrity": "sha512-02rVdZ5tgdUNRxIUrFdcMBZQoaPMrxtwSb+/hOfBdqkatYHR3lZ2A2EGyHq2sGOd0Owk80oV3snlDASC24He3Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-darwin-x64": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.34.8.tgz", - "integrity": "sha512-qIP/elwR/tq/dYRx3lgwK31jkZvMiD6qUtOycLhTzCvrjbZ3LjQnEM9rNhSGpbLXVJYQ3rq39A6Re0h9tU2ynw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.34.8.tgz", - "integrity": "sha512-IQNVXL9iY6NniYbTaOKdrlVP3XIqazBgJOVkddzJlqnCpRi/yAeSOa8PLcECFSQochzqApIOE1GHNu3pCz+BDA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.34.8.tgz", - "integrity": "sha512-TYXcHghgnCqYFiE3FT5QwXtOZqDj5GmaFNTNt3jNC+vh22dc/ukG2cG+pi75QO4kACohZzidsq7yKTKwq/Jq7Q==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.34.8.tgz", - "integrity": "sha512-A4iphFGNkWRd+5m3VIGuqHnG3MVnqKe7Al57u9mwgbyZ2/xF9Jio72MaY7xxh+Y87VAHmGQr73qoKL9HPbXj1g==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.34.8.tgz", - "integrity": "sha512-S0lqKLfTm5u+QTxlFiAnb2J/2dgQqRy/XvziPtDd1rKZFXHTyYLoVL58M/XFwDI01AQCDIevGLbQrMAtdyanpA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.34.8.tgz", - "integrity": "sha512-jpz9YOuPiSkL4G4pqKrus0pn9aYwpImGkosRKwNi+sJSkz+WU3anZe6hi73StLOQdfXYXC7hUfsQlTnjMd3s1A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.34.8.tgz", - "integrity": "sha512-KdSfaROOUJXgTVxJNAZ3KwkRc5nggDk+06P6lgi1HLv1hskgvxHUKZ4xtwHkVYJ1Rep4GNo+uEfycCRRxht7+Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-linux-loongarch64-gnu": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.34.8.tgz", - "integrity": "sha512-NyF4gcxwkMFRjgXBM6g2lkT58OWztZvw5KkV2K0qqSnUEqCVcqdh2jN4gQrTn/YUpAcNKyFHfoOZEer9nwo6uQ==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.34.8.tgz", - "integrity": "sha512-LMJc999GkhGvktHU85zNTDImZVUCJ1z/MbAJTnviiWmmjyckP5aQsHtcujMjpNdMZPT2rQEDBlJfubhs3jsMfw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.34.8.tgz", - "integrity": "sha512-xAQCAHPj8nJq1PI3z8CIZzXuXCstquz7cIOL73HHdXiRcKk8Ywwqtx2wrIy23EcTn4aZ2fLJNBB8d0tQENPCmw==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.34.8.tgz", - "integrity": "sha512-DdePVk1NDEuc3fOe3dPPTb+rjMtuFw89gw6gVWxQFAuEqqSdDKnrwzZHrUYdac7A7dXl9Q2Vflxpme15gUWQFA==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.34.8.tgz", - "integrity": "sha512-8y7ED8gjxITUltTUEJLQdgpbPh1sUQ0kMTmufRF/Ns5tI9TNMNlhWtmPKKHCU0SilX+3MJkZ0zERYYGIVBYHIA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.34.8.tgz", - "integrity": "sha512-SCXcP0ZpGFIe7Ge+McxY5zKxiEI5ra+GT3QRxL0pMMtxPfpyLAKleZODi1zdRHkz5/BhueUrYtYVgubqe9JBNQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.34.8.tgz", - "integrity": "sha512-YHYsgzZgFJzTRbth4h7Or0m5O74Yda+hLin0irAIobkLQFRQd1qWmnoVfwmKm9TXIZVAD0nZ+GEb2ICicLyCnQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.34.8.tgz", - "integrity": "sha512-r3NRQrXkHr4uWy5TOjTpTYojR9XmF0j/RYgKCef+Ag46FWUTltm5ziticv8LdNsDMehjJ543x/+TJAek/xBA2w==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.34.8.tgz", - "integrity": "sha512-U0FaE5O1BCpZSeE6gBl3c5ObhePQSfk9vDRToMmTkbhCOgW4jqvtS5LGyQ76L1fH8sM0keRp4uDTsbjiUyjk0g==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@angular-devkit/build-angular/node_modules/@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@angular-devkit/build-angular/node_modules/autoprefixer": { - "version": "10.4.20", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", - "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", "dependencies": { - "browserslist": "^4.23.3", - "caniuse-lite": "^1.0.30001646", - "fraction.js": "^4.3.7", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.1", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" + "chalk": "^5.3.0", + "cli-cursor": "^5.0.0", + "cli-spinners": "^2.9.2", + "is-interactive": "^2.0.0", + "is-unicode-supported": "^2.0.0", + "log-symbols": "^6.0.0", + "stdin-discarder": "^0.2.2", + "string-width": "^7.2.0", + "strip-ansi": "^7.1.0" }, "engines": { - "node": "^10 || ^12 || >=14" + "node": ">=18" }, - "peerDependencies": { - "postcss": "^8.1.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/@angular-devkit/build-angular/node_modules/postcss": { - "version": "8.5.2", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.2.tgz", - "integrity": "sha512-MjOadfU3Ys9KYoX0AdkBlFEF1Vx37uCCeN4ZHnmwm9FfpbsGWMZeBLMmmpY+6Ocqod7mkdZ0DT31OlbsFrLlkA==", + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", "dev": true, "funding": [ { @@ -922,81 +503,165 @@ "node": "^10 || ^12 || >=14" } }, - "node_modules/@angular-devkit/build-angular/node_modules/rollup": { - "version": "4.34.8", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.34.8.tgz", - "integrity": "sha512-489gTVMzAYdiZHFVA/ig/iYFllCcWFHMvUHI1rpFmkoUtRlQxqh6/yiNqnYibjMZ2b/+FUQwldG+aLsEt6bglQ==", + "node_modules/@angular-devkit/build-angular/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "license": "MIT", "dependencies": { - "@types/estree": "1.0.6" + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/readdirp/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/webpack-dev-server": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-5.2.1.tgz", + "integrity": "sha512-ml/0HIj9NLpVKOMq+SuBPLHcmbG+TGIjXRHsYfZwocUBIqEvws8NnS/V9AFQ5FKP+tgn5adwVwRrTEpGL33QFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/bonjour": "^3.5.13", + "@types/connect-history-api-fallback": "^1.5.4", + "@types/express": "^4.17.21", + "@types/express-serve-static-core": "^4.17.21", + "@types/serve-index": "^1.9.4", + "@types/serve-static": "^1.15.5", + "@types/sockjs": "^0.3.36", + "@types/ws": "^8.5.10", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.2.1", + "chokidar": "^3.6.0", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "express": "^4.21.2", + "graceful-fs": "^4.2.6", + "http-proxy-middleware": "^2.0.7", + "ipaddr.js": "^2.1.0", + "launch-editor": "^2.6.1", + "open": "^10.0.3", + "p-retry": "^6.2.0", + "schema-utils": "^4.2.0", + "selfsigned": "^2.4.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^7.4.2", + "ws": "^8.18.0" }, "bin": { - "rollup": "dist/bin/rollup" + "webpack-dev-server": "bin/webpack-dev-server.js" }, "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" + "node": ">= 18.12.0" }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.34.8", - "@rollup/rollup-android-arm64": "4.34.8", - "@rollup/rollup-darwin-arm64": "4.34.8", - "@rollup/rollup-darwin-x64": "4.34.8", - "@rollup/rollup-freebsd-arm64": "4.34.8", - "@rollup/rollup-freebsd-x64": "4.34.8", - "@rollup/rollup-linux-arm-gnueabihf": "4.34.8", - "@rollup/rollup-linux-arm-musleabihf": "4.34.8", - "@rollup/rollup-linux-arm64-gnu": "4.34.8", - "@rollup/rollup-linux-arm64-musl": "4.34.8", - "@rollup/rollup-linux-loongarch64-gnu": "4.34.8", - "@rollup/rollup-linux-powerpc64le-gnu": "4.34.8", - "@rollup/rollup-linux-riscv64-gnu": "4.34.8", - "@rollup/rollup-linux-s390x-gnu": "4.34.8", - "@rollup/rollup-linux-x64-gnu": "4.34.8", - "@rollup/rollup-linux-x64-musl": "4.34.8", - "@rollup/rollup-win32-arm64-msvc": "4.34.8", - "@rollup/rollup-win32-ia32-msvc": "4.34.8", - "@rollup/rollup-win32-x64-msvc": "4.34.8", - "fsevents": "~2.3.2" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-cli": { + "optional": true + } } }, - "node_modules/@angular-devkit/build-angular/node_modules/rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/watchpack": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", - "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "node_modules/@angular-devkit/build-angular/node_modules/webpack-dev-server/node_modules/http-proxy-middleware": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.9.tgz", + "integrity": "sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q==", "dev": true, "license": "MIT", "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" }, "engines": { - "node": ">=10.13.0" + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/ws": { + "version": "8.18.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.2.tgz", + "integrity": "sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, "node_modules/@angular-devkit/build-webpack": { - "version": "0.1902.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1902.15.tgz", - "integrity": "sha512-pIfZeizWsViXx8bsMoBLZw7Tl7uFf7bM7hAfmNwk0bb0QGzx5k1BiW6IKWyaG+Dg6U4UCrlNpIiut2b78HwQZw==", + "version": "0.2000.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.2000.2.tgz", + "integrity": "sha512-kFqvZNOcU1zwwMRG3Kh7V661HWgtt9G3+xId9A2VNXvW0ZfuVZmgfaR8TLEmtCSrQ4KHGGQmK0zn2lPHttY5HA==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/architect": "0.1902.15", - "rxjs": "7.8.1" + "@angular-devkit/architect": "0.2000.2", + "rxjs": "7.8.2" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "node": "^20.19.0 || ^22.12.0 || >=24.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, @@ -1005,64 +670,10 @@ "webpack-dev-server": "^5.0.2" } }, - "node_modules/@angular-devkit/build-webpack/node_modules/@angular-devkit/architect": { - "version": "0.1902.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1902.15.tgz", - "integrity": "sha512-RbqhStc6ZoRv57ZqLB36VOkBkAdU3nNezCvIs0AJV5V4+vLPMrb0hpIB0sF+9yMlMjWsolnRsj0/Fil+zQG3bw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@angular-devkit/core": "19.2.15", - "rxjs": "7.8.1" - }, - "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular-devkit/build-webpack/node_modules/@angular-devkit/core": { - "version": "19.2.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-19.2.15.tgz", - "integrity": "sha512-pU2RZYX6vhd7uLSdLwPnuBcr0mXJSjp3EgOXKsrlQFQZevc+Qs+2JdXgIElnOT/aDqtRtriDmLlSbtdE8n3ZbA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "8.17.1", - "ajv-formats": "3.0.1", - "jsonc-parser": "3.3.1", - "picomatch": "4.0.2", - "rxjs": "7.8.1", - "source-map": "0.7.4" - }, - "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "chokidar": "^4.0.0" - }, - "peerDependenciesMeta": { - "chokidar": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/build-webpack/node_modules/rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/@angular-devkit/core": { - "version": "19.2.6", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-19.2.6.tgz", - "integrity": "sha512-WFgiYhrDMq83UNaGRAneIM7CYYdBozD+yYA9BjoU8AgBLKtrvn6S8ZcjKAk5heoHtY/u8pEb0mwDTz9gxFmJZQ==", + "version": "20.0.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.0.2.tgz", + "integrity": "sha512-qqTSpcIw+TqJ6u/tkQzqgpwVelHsHr8Jhws1Vlx6E0L6E+cRILBK48i9ttE+oYkQlcopQ3VZAmzcZodXJ1SQ9Q==", "dev": true, "license": "MIT", "dependencies": { @@ -1070,11 +681,11 @@ "ajv-formats": "3.0.1", "jsonc-parser": "3.3.1", "picomatch": "4.0.2", - "rxjs": "7.8.1", + "rxjs": "7.8.2", "source-map": "0.7.4" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "node": "^20.19.0 || ^22.12.0 || >=24.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, @@ -1087,43 +698,158 @@ } } }, - "node_modules/@angular-devkit/core/node_modules/rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/@angular-devkit/schematics": { - "version": "19.2.6", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-19.2.6.tgz", - "integrity": "sha512-YTAxNnT++5eflx19OUHmOWu597/TbTel+QARiZCv1xQw99+X8DCKKOUXtqBRd53CAHlREDI33Rn/JLY3NYgMLQ==", + "version": "20.0.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-20.0.2.tgz", + "integrity": "sha512-r1aSZhcadLtUMhzUUfy+pkJdZW93z8WQtpGR24y88yFpPgDL5kY85VSlOzjGgo1vEs8Dd7ADcOcsVsUW8MxQ3A==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "19.2.6", + "@angular-devkit/core": "20.0.2", "jsonc-parser": "3.3.1", "magic-string": "0.30.17", - "ora": "5.4.1", - "rxjs": "7.8.1" + "ora": "8.2.0", + "rxjs": "7.8.2" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "node": "^20.19.0 || ^22.12.0 || >=24.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" } }, - "node_modules/@angular-devkit/schematics/node_modules/rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "node_modules/@angular-devkit/schematics/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "dev": true, - "license": "Apache-2.0", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/chalk": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", + "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/is-interactive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz", + "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/is-unicode-supported": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz", + "integrity": "sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/log-symbols": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-6.0.0.tgz", + "integrity": "sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==", + "dev": true, + "license": "MIT", "dependencies": { - "tslib": "^2.1.0" + "chalk": "^5.3.0", + "is-unicode-supported": "^1.3.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/log-symbols/node_modules/is-unicode-supported": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/ora": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-8.2.0.tgz", + "integrity": "sha512-weP+BZ8MVNnlCm8c0Qdc1WSWq4Qn7I+9CJGm7Qali6g44e/PUzbjNqJX5NJ9ljlNMosfJvg1fKEGILklK9cwnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^5.3.0", + "cli-cursor": "^5.0.0", + "cli-spinners": "^2.9.2", + "is-interactive": "^2.0.0", + "is-unicode-supported": "^2.0.0", + "log-symbols": "^6.0.0", + "stdin-discarder": "^0.2.2", + "string-width": "^7.2.0", + "strip-ansi": "^7.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, "node_modules/@angular-eslint/builder": { @@ -1264,6 +990,53 @@ "strip-json-comments": "3.1.1" } }, + "node_modules/@angular-eslint/schematics/node_modules/@angular-devkit/core": { + "version": "19.2.15", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-19.2.15.tgz", + "integrity": "sha512-pU2RZYX6vhd7uLSdLwPnuBcr0mXJSjp3EgOXKsrlQFQZevc+Qs+2JdXgIElnOT/aDqtRtriDmLlSbtdE8n3ZbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "8.17.1", + "ajv-formats": "3.0.1", + "jsonc-parser": "3.3.1", + "picomatch": "4.0.2", + "rxjs": "7.8.1", + "source-map": "0.7.4" + }, + "engines": { + "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^4.0.0" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-eslint/schematics/node_modules/@angular-devkit/schematics": { + "version": "19.2.15", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-19.2.15.tgz", + "integrity": "sha512-kNOJ+3vekJJCQKWihNmxBkarJzNW09kP5a9E1SRNiQVNOUEeSwcRR0qYotM65nx821gNzjjhJXnAZ8OazWldrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@angular-devkit/core": "19.2.15", + "jsonc-parser": "3.3.1", + "magic-string": "0.30.17", + "ora": "5.4.1", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, "node_modules/@angular-eslint/schematics/node_modules/ignore": { "version": "7.0.5", "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", @@ -1274,17 +1047,14 @@ "node": ">= 4" } }, - "node_modules/@angular-eslint/schematics/node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "node_modules/@angular-eslint/schematics/node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.1.0" } }, "node_modules/@angular-eslint/template-parser": { @@ -1318,194 +1088,299 @@ } }, "node_modules/@angular/animations": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-19.1.7.tgz", - "integrity": "sha512-EnyQTCNc1nWnjc5V3HPlClpJIS2R2XAfIEUCyI3lE4FLQxcXyhIsM9NmacAZT3Ai8RL+8JVCttPmBZXMpjP6Ug==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-20.0.3.tgz", + "integrity": "sha512-R6yv2RmrH49nW1ybgoOMw5pWzqaRYo8Kn3VtvrUDBty4TXjwc0addaw/t89n0smO3/lmBB4vnlRScePAEQZ/3w==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/core": "19.1.7" + "@angular/common": "20.0.3", + "@angular/core": "20.0.3" + } + }, + "node_modules/@angular/build": { + "version": "20.0.2", + "resolved": "https://registry.npmjs.org/@angular/build/-/build-20.0.2.tgz", + "integrity": "sha512-nxha/dncAwEbY0nkgDWeiWSi+MSCJBuQbFf5bjTZ+pu0fS+5SOQllZKzZE9H+dms/JsLHm2YmPiScIYVvUenDw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "2.3.0", + "@angular-devkit/architect": "0.2000.2", + "@babel/core": "7.27.1", + "@babel/helper-annotate-as-pure": "7.27.1", + "@babel/helper-split-export-declaration": "7.24.7", + "@inquirer/confirm": "5.1.10", + "@vitejs/plugin-basic-ssl": "2.0.0", + "beasties": "0.3.4", + "browserslist": "^4.23.0", + "esbuild": "0.25.5", + "https-proxy-agent": "7.0.6", + "istanbul-lib-instrument": "6.0.3", + "jsonc-parser": "3.3.1", + "listr2": "8.3.3", + "magic-string": "0.30.17", + "mrmime": "2.0.1", + "parse5-html-rewriting-stream": "7.1.0", + "picomatch": "4.0.2", + "piscina": "5.0.0", + "rollup": "4.40.2", + "sass": "1.88.0", + "semver": "7.7.2", + "source-map-support": "0.5.21", + "tinyglobby": "0.2.13", + "vite": "6.3.5", + "watchpack": "2.4.2" + }, + "engines": { + "node": "^20.19.0 || ^22.12.0 || >=24.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "optionalDependencies": { + "lmdb": "3.3.0" + }, + "peerDependencies": { + "@angular/compiler": "^20.0.0", + "@angular/compiler-cli": "^20.0.0", + "@angular/core": "^20.0.0", + "@angular/localize": "^20.0.0", + "@angular/platform-browser": "^20.0.0", + "@angular/platform-server": "^20.0.0", + "@angular/service-worker": "^20.0.0", + "@angular/ssr": "^20.0.2", + "karma": "^6.4.0", + "less": "^4.2.0", + "ng-packagr": "^20.0.0", + "postcss": "^8.4.0", + "tailwindcss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "tslib": "^2.3.0", + "typescript": ">=5.8 <5.9", + "vitest": "^3.1.1" + }, + "peerDependenciesMeta": { + "@angular/core": { + "optional": true + }, + "@angular/localize": { + "optional": true + }, + "@angular/platform-browser": { + "optional": true + }, + "@angular/platform-server": { + "optional": true + }, + "@angular/service-worker": { + "optional": true + }, + "@angular/ssr": { + "optional": true + }, + "karma": { + "optional": true + }, + "less": { + "optional": true + }, + "ng-packagr": { + "optional": true + }, + "postcss": { + "optional": true + }, + "tailwindcss": { + "optional": true + }, + "vitest": { + "optional": true + } + } + }, + "node_modules/@angular/build/node_modules/@inquirer/confirm": { + "version": "5.1.10", + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.1.10.tgz", + "integrity": "sha512-FxbQ9giWxUWKUk2O5XZ6PduVnH2CZ/fmMKMBkH71MHJvWr7WL5AHKevhzF1L5uYWB2P548o1RzVxrNd3dpmk6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@inquirer/core": "^10.1.11", + "@inquirer/type": "^3.0.6" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/@angular/build/node_modules/tinyglobby": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.13.tgz", + "integrity": "sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.4.4", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/@angular/build/node_modules/watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" } }, "node_modules/@angular/cdk": { - "version": "19.1.5", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-19.1.5.tgz", - "integrity": "sha512-+g20LIvYHThKBD6oXTYWVL6+ecaOWtPJu08R5xIfGrwXoj0l/9prLwuSW8GlIATI3mDkSesyhQsomb9jAUzKwQ==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-20.0.3.tgz", + "integrity": "sha512-70KG8GpK4aV9j5hUkpDZJQ6oMgCuaCRY6JX1axPxkNtQaiK6PAmTfQLiGqF2cYhbQneeq3uGvTorAjRfvp8NPQ==", "license": "MIT", "dependencies": { + "parse5": "^7.1.2", "tslib": "^2.3.0" }, - "optionalDependencies": { - "parse5": "^7.1.2" - }, "peerDependencies": { - "@angular/common": "^19.0.0 || ^20.0.0", - "@angular/core": "^19.0.0 || ^20.0.0", + "@angular/common": "^20.0.0 || ^21.0.0", + "@angular/core": "^20.0.0 || ^21.0.0", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/cli": { - "version": "19.2.6", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-19.2.6.tgz", - "integrity": "sha512-eZhFOSsDUHKaciwcWdU5C54ViAvPPdZJf42So93G2vZWDtEq6Uk47huocn1FY9cMhDvURfYLNrrLMpUDtUSsSA==", + "version": "20.0.2", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-20.0.2.tgz", + "integrity": "sha512-LzBONPETA1uCZuylgZRYe+vImf8i+rRrwAgOBHWbW2wxut9ZQ8ZFwQgNkjvDhE7DLmsFV+GskfAs5+Td/5LZwA==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/architect": "0.1902.6", - "@angular-devkit/core": "19.2.6", - "@angular-devkit/schematics": "19.2.6", - "@inquirer/prompts": "7.3.2", - "@listr2/prompt-adapter-inquirer": "2.0.18", - "@schematics/angular": "19.2.6", + "@angular-devkit/architect": "0.2000.2", + "@angular-devkit/core": "20.0.2", + "@angular-devkit/schematics": "20.0.2", + "@inquirer/prompts": "7.5.1", + "@listr2/prompt-adapter-inquirer": "2.0.22", + "@schematics/angular": "20.0.2", "@yarnpkg/lockfile": "1.1.0", "ini": "5.0.0", "jsonc-parser": "3.3.1", - "listr2": "8.2.5", + "listr2": "8.3.3", "npm-package-arg": "12.0.2", "npm-pick-manifest": "10.0.0", - "pacote": "20.0.0", + "pacote": "21.0.0", "resolve": "1.22.10", - "semver": "7.7.1", - "symbol-observable": "4.0.0", + "semver": "7.7.2", "yargs": "17.7.2" }, "bin": { "ng": "bin/ng.js" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "node": "^20.19.0 || ^22.12.0 || >=24.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" } }, - "node_modules/@angular/cli/node_modules/@angular-devkit/architect": { - "version": "0.1902.6", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1902.6.tgz", - "integrity": "sha512-Dx6yPxpaE5AhP6UtrVRDCc9Ihq9B65LAbmIh3dNOyeehratuaQS0TYNKjbpaevevJojW840DTg80N+CrlfYp9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@angular-devkit/core": "19.2.6", - "rxjs": "7.8.1" - }, - "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular/cli/node_modules/@schematics/angular": { - "version": "19.2.6", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-19.2.6.tgz", - "integrity": "sha512-fmbF9ONmEZqxHocCwOSWG2mHp4a22d1uW+DZUBUgZSBUFIrnFw42deOxDq8mkZOZ1Tc73UpLN2GKI7iJeUqS2A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@angular-devkit/core": "19.2.6", - "@angular-devkit/schematics": "19.2.6", - "jsonc-parser": "3.3.1" - }, - "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular/cli/node_modules/rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/@angular/common": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-19.1.7.tgz", - "integrity": "sha512-MXfUGfWeesTQ12HXgeoVIXsS+r1jZxT2FkLQtqS+NRsRD4T1vlyvD7kTI+Ku1NAjdt3mB8TJ0cZHubvmml8I+Q==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-20.0.3.tgz", + "integrity": "sha512-HqqVqaj+xzByWJOIrONVRkpvM6mRuGmC+m9wKixhc9f+xXsymVTBR6xg+G/RwyYP2NuC5chxIZbaJTz2Hj+6+g==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/core": "19.1.7", + "@angular/core": "20.0.3", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/compiler": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-19.1.7.tgz", - "integrity": "sha512-Q3eqqIhMEzrnmFJtUO0K+WPpCfP/JTl9lJXZKe0zgNPdRFUufjSUcPHGzd7OjN2gPpiAvS1yBvENvqs+g/MejQ==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-20.0.3.tgz", + "integrity": "sha512-CShPNvqqV5Cleyho8CKtcFlt7l2thHPUdXZPtKHH3Zf43KojvJbJksZLBz6ZbyoQdgxNMYSfbh4h0UbSGtPOzQ==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" - }, - "peerDependencies": { - "@angular/core": "19.1.7" - }, - "peerDependenciesMeta": { - "@angular/core": { - "optional": true - } + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" } }, "node_modules/@angular/compiler-cli": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-19.1.7.tgz", - "integrity": "sha512-Uu/TxfIcE1lStlCLmOPbghG1Y5o83odES89sr7bYNJz2mcG7TEonatf6GTOMzbJNil9FBJt6qnJkDkSjn4nUKw==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-20.0.3.tgz", + "integrity": "sha512-u+fYnx1sRrwL0fd8kaAD2LqJjfe/Zj7zyOv0A3Ue7r8jzdNsPU8MWr/QyBaWlqSpPEpR+kD3xmDvRT9ra9RTBA==", + "dev": true, "license": "MIT", "dependencies": { - "@babel/core": "7.26.0", + "@babel/core": "7.27.4", "@jridgewell/sourcemap-codec": "^1.4.14", "chokidar": "^4.0.0", "convert-source-map": "^1.5.1", "reflect-metadata": "^0.2.0", "semver": "^7.0.0", "tslib": "^2.3.0", - "yargs": "^17.2.1" + "yargs": "^18.0.0" }, "bin": { "ng-xi18n": "bundles/src/bin/ng_xi18n.js", - "ngc": "bundles/src/bin/ngc.js", - "ngcc": "bundles/ngcc/index.js" + "ngc": "bundles/src/bin/ngc.js" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/compiler": "19.1.7", - "typescript": ">=5.5 <5.8" + "@angular/compiler": "20.0.3", + "typescript": ">=5.8 <5.9" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "node_modules/@angular/compiler-cli/node_modules/@babel/core": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.0.tgz", - "integrity": "sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==", + "version": "7.27.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.4.tgz", + "integrity": "sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==", + "dev": true, "license": "MIT", "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.26.0", - "@babel/generator": "^7.26.0", - "@babel/helper-compilation-targets": "^7.25.9", - "@babel/helper-module-transforms": "^7.26.0", - "@babel/helpers": "^7.26.0", - "@babel/parser": "^7.26.0", - "@babel/template": "^7.25.9", - "@babel/traverse": "^7.25.9", - "@babel/types": "^7.26.0", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.3", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-module-transforms": "^7.27.3", + "@babel/helpers": "^7.27.4", + "@babel/parser": "^7.27.4", + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.27.4", + "@babel/types": "^7.27.3", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -1524,71 +1399,202 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, "license": "MIT" }, "node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, "license": "ISC", "bin": { "semver": "bin/semver.js" } }, + "node_modules/@angular/compiler-cli/node_modules/@babel/generator": { + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.5.tgz", + "integrity": "sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.27.5", + "@babel/types": "^7.27.3", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@angular/compiler-cli/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@angular/compiler-cli/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@angular/compiler-cli/node_modules/cliui": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-9.0.1.tgz", + "integrity": "sha512-k7ndgKhwoQveBL+/1tqGJYNz097I7WOvwbmmU2AR5+magtbjPWQTS1C5vzGkBC8Ym8UWRzfKUzUUqFLypY4Q+w==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^7.2.0", + "strip-ansi": "^7.1.0", + "wrap-ansi": "^9.0.0" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@angular/compiler-cli/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@angular/compiler-cli/node_modules/wrap-ansi": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.0.tgz", + "integrity": "sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.2.1", + "string-width": "^7.0.0", + "strip-ansi": "^7.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@angular/compiler-cli/node_modules/yargs": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-18.0.0.tgz", + "integrity": "sha512-4UEqdc2RYGHZc7Doyqkrqiln3p9X2DZVxaGbwhn2pi7MrRagKaOcIKe8L3OxYcbhXLgLFUS3zAYuQjKBQgmuNg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^9.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "string-width": "^7.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^22.0.0" + }, + "engines": { + "node": "^20.19.0 || ^22.12.0 || >=23" + } + }, + "node_modules/@angular/compiler-cli/node_modules/yargs-parser": { + "version": "22.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-22.0.0.tgz", + "integrity": "sha512-rwu/ClNdSMpkSrUb+d6BRsSkLUq1fmfsY6TOpYzTwvwkg1/NRG85KBy3kq++A8LKQwX6lsu+aWad+2khvuXrqw==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^20.19.0 || ^22.12.0 || >=23" + } + }, "node_modules/@angular/core": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-19.1.7.tgz", - "integrity": "sha512-P+e4ekJYWMFhWSzJav0R51bFAfUhIOmnqmG9mlI/ZONu2qcTTmyIG9AW5x1qhrMHEH42RaeK60RkKyqgcHaGDg==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-20.0.3.tgz", + "integrity": "sha512-kB6w1bQgClfmkTbWJeD3vSLqX0e3uSaJD6KJ7XXT1IEaqUs4J+mKRKHQyxpJlpdUb7R+jDaHSM/vrVF15/L2rA==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { + "@angular/compiler": "20.0.3", "rxjs": "^6.5.3 || ^7.4.0", "zone.js": "~0.15.0" + }, + "peerDependenciesMeta": { + "@angular/compiler": { + "optional": true + }, + "zone.js": { + "optional": true + } } }, "node_modules/@angular/forms": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-19.1.7.tgz", - "integrity": "sha512-GVOCwqIXTpZt+bE3cqkasqpEs5n/aVq04yXLgM+mvVEbmAMibZYpzfg8NARlXCH3zveqhOSTJgsllfbbb7sdDw==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-20.0.3.tgz", + "integrity": "sha512-tb4M+c+/JnmPmtTb3+Si/DWGttnCEW5rvi4u55q+EFxYGQO0GeHa53yQTl1e2ngQLT9/kgmDAsJ2mt1Ql9N6xg==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/common": "19.1.7", - "@angular/core": "19.1.7", - "@angular/platform-browser": "19.1.7", + "@angular/common": "20.0.3", + "@angular/core": "20.0.3", + "@angular/platform-browser": "20.0.3", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/language-service": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-19.1.7.tgz", - "integrity": "sha512-V2QSihzZhkFaTxiw79PM+YP6LilQbx4IBFANTILNCmsGJxwnFQwMdmAptX6vWXiF/1o7YZ5IX4x8arRZ83YzFQ==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-20.0.3.tgz", + "integrity": "sha512-BP1fMO2/fC13KJiHo62uB+EeLCjqG4aoBLySBDG8lWkm6jXJPOOz+XPrMfTc0GhgORx+Dec1Qi39nJfDINWZ0g==", "dev": true, "license": "MIT", "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" } }, "node_modules/@angular/localize": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/localize/-/localize-19.1.7.tgz", - "integrity": "sha512-+blBPU93l/Oj9WxFuqX14Zg8ei462FIZW1r9QDnH91TJPdg1bOnGD4mMq8rYsNU7pHlo/Vu53fbiYTk/herEVA==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/localize/-/localize-20.0.3.tgz", + "integrity": "sha512-1vcIvXQqrWGFyLcLlmANdfv66DrJ44ZHxGITZYfGoy062Ffa8nvGSyEMe41LLU729Ygy+caLYzr5G5GAOqs/yg==", "license": "MIT", "dependencies": { - "@babel/core": "7.26.0", + "@babel/core": "7.27.4", "@types/babel__core": "7.20.5", - "fast-glob": "3.3.3", - "yargs": "^17.2.1" + "tinyglobby": "^0.2.12", + "yargs": "^18.0.0" }, "bin": { "localize-extract": "tools/bundles/src/extract/cli.js", @@ -1596,29 +1602,29 @@ "localize-translate": "tools/bundles/src/translate/cli.js" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/compiler": "19.1.7", - "@angular/compiler-cli": "19.1.7" + "@angular/compiler": "20.0.3", + "@angular/compiler-cli": "20.0.3" } }, "node_modules/@angular/localize/node_modules/@babel/core": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.0.tgz", - "integrity": "sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==", + "version": "7.27.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.4.tgz", + "integrity": "sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==", "license": "MIT", "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.26.0", - "@babel/generator": "^7.26.0", - "@babel/helper-compilation-targets": "^7.25.9", - "@babel/helper-module-transforms": "^7.26.0", - "@babel/helpers": "^7.26.0", - "@babel/parser": "^7.26.0", - "@babel/template": "^7.25.9", - "@babel/traverse": "^7.25.9", - "@babel/types": "^7.26.0", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.3", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-module-transforms": "^7.27.3", + "@babel/helpers": "^7.27.4", + "@babel/parser": "^7.27.4", + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.27.4", + "@babel/types": "^7.27.3", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -1633,6 +1639,60 @@ "url": "https://opencollective.com/babel" } }, + "node_modules/@angular/localize/node_modules/@babel/generator": { + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.5.tgz", + "integrity": "sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.27.5", + "@babel/types": "^7.27.3", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@angular/localize/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@angular/localize/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@angular/localize/node_modules/cliui": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-9.0.1.tgz", + "integrity": "sha512-k7ndgKhwoQveBL+/1tqGJYNz097I7WOvwbmmU2AR5+magtbjPWQTS1C5vzGkBC8Ym8UWRzfKUzUUqFLypY4Q+w==", + "license": "ISC", + "dependencies": { + "string-width": "^7.2.0", + "strip-ansi": "^7.1.0", + "wrap-ansi": "^9.0.0" + }, + "engines": { + "node": ">=20" + } + }, "node_modules/@angular/localize/node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -1648,21 +1708,79 @@ "semver": "bin/semver.js" } }, + "node_modules/@angular/localize/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@angular/localize/node_modules/wrap-ansi": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.0.tgz", + "integrity": "sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.2.1", + "string-width": "^7.0.0", + "strip-ansi": "^7.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@angular/localize/node_modules/yargs": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-18.0.0.tgz", + "integrity": "sha512-4UEqdc2RYGHZc7Doyqkrqiln3p9X2DZVxaGbwhn2pi7MrRagKaOcIKe8L3OxYcbhXLgLFUS3zAYuQjKBQgmuNg==", + "license": "MIT", + "dependencies": { + "cliui": "^9.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "string-width": "^7.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^22.0.0" + }, + "engines": { + "node": "^20.19.0 || ^22.12.0 || >=23" + } + }, + "node_modules/@angular/localize/node_modules/yargs-parser": { + "version": "22.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-22.0.0.tgz", + "integrity": "sha512-rwu/ClNdSMpkSrUb+d6BRsSkLUq1fmfsY6TOpYzTwvwkg1/NRG85KBy3kq++A8LKQwX6lsu+aWad+2khvuXrqw==", + "license": "ISC", + "engines": { + "node": "^20.19.0 || ^22.12.0 || >=23" + } + }, "node_modules/@angular/platform-browser": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-19.1.7.tgz", - "integrity": "sha512-QKakWl+CeVVwn22yjRHBXm6BvDsHoo+9u1pJGGk2smKSYjHW6qAly28+P7FUfVXUQI7rg++M66JwzNOFfYMDQA==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-20.0.3.tgz", + "integrity": "sha512-cba0bibw9dJ8b+a2a8mwkiq5/HPiakY9P5OiJEVefN+2V/K9CND/pW+KIbW0/P6KhSSDQ29xgcGRseVtkjYLmg==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/animations": "19.1.7", - "@angular/common": "19.1.7", - "@angular/core": "19.1.7" + "@angular/animations": "20.0.3", + "@angular/common": "20.0.3", + "@angular/core": "20.0.3" }, "peerDependenciesMeta": { "@angular/animations": { @@ -1671,41 +1789,41 @@ } }, "node_modules/@angular/platform-browser-dynamic": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-19.1.7.tgz", - "integrity": "sha512-rp7IXun1fHeScpIni0l2VRxBW5LzokHYfZ69K4BRhE7FpVA6hP2c9fhCJeo7681c/Q882Kom0tmsedOcF/zwMQ==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-20.0.3.tgz", + "integrity": "sha512-EUC0q9/L7nBQOJkOi7aKz0cKXym7XIZtZJjZ+K7hCZaE92wb+Uk5YdBfBaq6hJ3aEp896GUs3FVFI6Rxklrm2A==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/common": "19.1.7", - "@angular/compiler": "19.1.7", - "@angular/core": "19.1.7", - "@angular/platform-browser": "19.1.7" + "@angular/common": "20.0.3", + "@angular/compiler": "20.0.3", + "@angular/core": "20.0.3", + "@angular/platform-browser": "20.0.3" } }, "node_modules/@angular/pwa": { - "version": "19.2.15", - "resolved": "https://registry.npmjs.org/@angular/pwa/-/pwa-19.2.15.tgz", - "integrity": "sha512-Kcn8KyD+arSLSUBllIMiIXOWqT6MIxyUFo3Dap6pQymxnni/8WrHY4hvbnAcT9+qT0chMTEeTw9/EXOXg48gZg==", + "version": "20.0.2", + "resolved": "https://registry.npmjs.org/@angular/pwa/-/pwa-20.0.2.tgz", + "integrity": "sha512-52RDMpxymefyMmPNCI+vzLJKqUYmsejZz7qcFiXD5krfbCbj/zSLfJFcaGoGZZ30UN4cZaACjhRi3JyHh010Rg==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/schematics": "19.2.15", - "@schematics/angular": "19.2.15", - "parse5-html-rewriting-stream": "7.0.0" + "@angular-devkit/schematics": "20.0.2", + "@schematics/angular": "20.0.2", + "parse5-html-rewriting-stream": "7.1.0" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "node": "^20.19.0 || ^22.12.0 || >=24.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, "peerDependencies": { - "@angular/cli": "^19.2.15" + "@angular/cli": "^20.0.2" }, "peerDependenciesMeta": { "@angular/cli": { @@ -1713,85 +1831,28 @@ } } }, - "node_modules/@angular/pwa/node_modules/@angular-devkit/core": { - "version": "19.2.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-19.2.15.tgz", - "integrity": "sha512-pU2RZYX6vhd7uLSdLwPnuBcr0mXJSjp3EgOXKsrlQFQZevc+Qs+2JdXgIElnOT/aDqtRtriDmLlSbtdE8n3ZbA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "8.17.1", - "ajv-formats": "3.0.1", - "jsonc-parser": "3.3.1", - "picomatch": "4.0.2", - "rxjs": "7.8.1", - "source-map": "0.7.4" - }, - "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "chokidar": "^4.0.0" - }, - "peerDependenciesMeta": { - "chokidar": { - "optional": true - } - } - }, - "node_modules/@angular/pwa/node_modules/@angular-devkit/schematics": { - "version": "19.2.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-19.2.15.tgz", - "integrity": "sha512-kNOJ+3vekJJCQKWihNmxBkarJzNW09kP5a9E1SRNiQVNOUEeSwcRR0qYotM65nx821gNzjjhJXnAZ8OazWldrg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@angular-devkit/core": "19.2.15", - "jsonc-parser": "3.3.1", - "magic-string": "0.30.17", - "ora": "5.4.1", - "rxjs": "7.8.1" - }, - "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular/pwa/node_modules/rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/@angular/router": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-19.1.7.tgz", - "integrity": "sha512-4wqfHxVvMmnpRyRhOClo0qX7li1MnWaQ8U1ZMd8gsZgE3SKkOxXdHg/jO4tcbLMLD4QAZ82uB8MBvHl1vVMhKg==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-20.0.3.tgz", + "integrity": "sha512-FY2kMZjLh7NUKjSaZ1K26azl67T4aVnOD8PE/w1Ih3eQmSIlHniNP1NmCGMUy6t1O/ZV6sCSKkA5AZFv18wzIQ==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/common": "19.1.7", - "@angular/core": "19.1.7", - "@angular/platform-browser": "19.1.7", + "@angular/common": "20.0.3", + "@angular/core": "20.0.3", + "@angular/platform-browser": "20.0.3", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/service-worker": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@angular/service-worker/-/service-worker-19.1.7.tgz", - "integrity": "sha512-7zQcRhWaLR49wcvu5CcfUu6O2l6DigpdT5a0gExhV5XAKKwSz4t1I3C+pcG3yF9yNG3RTYkbUcfCH6rstVyBfg==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/@angular/service-worker/-/service-worker-20.0.3.tgz", + "integrity": "sha512-10auvyoPHFIKZLfrCt5HLl8pD8YEwIibN/GlBpZf+ZPiEbvll0mhETfR3/uqCjV4W48bwSEooeLwJdLxuK6V2Q==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -1800,10 +1861,10 @@ "ngsw-config": "ngsw-config.js" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0" + "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/core": "19.1.7", + "@angular/core": "20.0.3", "rxjs": "^6.5.3 || ^7.4.0" } }, @@ -1852,21 +1913,22 @@ } }, "node_modules/@babel/core": { - "version": "7.26.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.10.tgz", - "integrity": "sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.1.tgz", + "integrity": "sha512-IaaGWsQqfsQWVLqMn9OB92MNN7zukfVA4s7KKAI0KfrrDsZ0yhi5uV4baBuLuN7n3vsZpwP8asPPcVwApxvjBQ==", + "dev": true, "license": "MIT", "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.26.10", - "@babel/helper-compilation-targets": "^7.26.5", - "@babel/helper-module-transforms": "^7.26.0", - "@babel/helpers": "^7.26.10", - "@babel/parser": "^7.26.10", - "@babel/template": "^7.26.9", - "@babel/traverse": "^7.26.10", - "@babel/types": "^7.26.10", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.1", + "@babel/helper-compilation-targets": "^7.27.1", + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helpers": "^7.27.1", + "@babel/parser": "^7.27.1", + "@babel/template": "^7.27.1", + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -1885,25 +1947,28 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, "license": "MIT" }, "node_modules/@babel/core/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, "license": "ISC", "bin": { "semver": "bin/semver.js" } }, "node_modules/@babel/generator": { - "version": "7.26.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.10.tgz", - "integrity": "sha512-rRHT8siFIXQrAYOYqZQVsAr8vJ+cBNqcVAY6m5V8/4QqzaPl+zDBe6cLEPRDuNOUf3ww8RfJVlOyQMoSI+5Ang==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.1.tgz", + "integrity": "sha512-UnJfnIpc/+JO0/+KRVQNGU+y5taA5vCbwN8+azkX6beii/ZF+enZJSOKo11ZSzGJjlNfJHfQtmQT8H+9TXPG2w==", + "dev": true, "license": "MIT", "dependencies": { - "@babel/parser": "^7.26.10", - "@babel/types": "^7.26.10", + "@babel/parser": "^7.27.1", + "@babel/types": "^7.27.1", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -1913,13 +1978,13 @@ } }, "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", - "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.1.tgz", + "integrity": "sha512-WnuuDILl9oOBbKnb4L+DyODx7iC47XfzmNCpTttFsSp6hTG7XZxu60+4IO+2/hPfcGOoKbFiwoI/+zwARbNQow==", "dev": true, "license": "MIT", "dependencies": { - "@babel/types": "^7.25.9" + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -2686,15 +2751,15 @@ } }, "node_modules/@babel/plugin-transform-async-generator-functions": { - "version": "7.26.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.26.8.tgz", - "integrity": "sha512-He9Ej2X7tNf2zdKMAGOsmg2MrFc+hfoAhd3po4cWfo/NWjzEAKa0oQruj1ROVUdl0e6fb6/kE/G3SSxE0lRJOg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.27.1.tgz", + "integrity": "sha512-eST9RrwlpaoJBDHShc+DS2SG4ATTi2MYNb4OxYkf3n+7eb49LWpnS+HSpVfW4x927qQwgk8A2hGNVaajAEw0EA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.26.5", - "@babel/helper-remap-async-to-generator": "^7.25.9", - "@babel/traverse": "^7.26.8" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-remap-async-to-generator": "^7.27.1", + "@babel/traverse": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -2704,15 +2769,15 @@ } }, "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.9.tgz", - "integrity": "sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.27.1.tgz", + "integrity": "sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.25.9", - "@babel/helper-plugin-utils": "^7.25.9", - "@babel/helper-remap-async-to-generator": "^7.25.9" + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-remap-async-to-generator": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -3385,14 +3450,14 @@ } }, "node_modules/@babel/plugin-transform-runtime": { - "version": "7.26.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.26.10.tgz", - "integrity": "sha512-NWaL2qG6HRpONTnj4JvDU6th4jYeZOJgu3QhmFTCihib0ermtOJqktA5BduGm3suhhVe9EMP9c9+mfJ/I9slqw==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.27.1.tgz", + "integrity": "sha512-TqGF3desVsTcp3WrJGj4HfKokfCXCLcHpt4PJF0D8/iT6LPd9RS82Upw3KPeyr6B22Lfd3DO8MVrmp0oRkUDdw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.25.9", - "@babel/helper-plugin-utils": "^7.26.5", + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", "babel-plugin-polyfill-corejs2": "^0.4.10", "babel-plugin-polyfill-corejs3": "^0.11.0", "babel-plugin-polyfill-regenerator": "^0.6.1", @@ -3597,75 +3662,75 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.26.9", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.26.9.tgz", - "integrity": "sha512-vX3qPGE8sEKEAZCWk05k3cpTAE3/nOYca++JA+Rd0z2NCNzabmYvEiSShKzm10zdquOIAVXsy2Ei/DTW34KlKQ==", + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.27.2.tgz", + "integrity": "sha512-Ma4zSuYSlGNRlCLO+EAzLnCmJK2vdstgv+n7aUP+/IKZrOfWHOJVdSJtuub8RzHTj3ahD37k5OKJWvzf16TQyQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.26.8", - "@babel/helper-compilation-targets": "^7.26.5", - "@babel/helper-plugin-utils": "^7.26.5", - "@babel/helper-validator-option": "^7.25.9", - "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.25.9", - "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.25.9", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.25.9", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.25.9", - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.25.9", + "@babel/compat-data": "^7.27.2", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-option": "^7.27.1", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.27.1", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.27.1", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.27.1", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.27.1", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.27.1", "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", - "@babel/plugin-syntax-import-assertions": "^7.26.0", - "@babel/plugin-syntax-import-attributes": "^7.26.0", + "@babel/plugin-syntax-import-assertions": "^7.27.1", + "@babel/plugin-syntax-import-attributes": "^7.27.1", "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", - "@babel/plugin-transform-arrow-functions": "^7.25.9", - "@babel/plugin-transform-async-generator-functions": "^7.26.8", - "@babel/plugin-transform-async-to-generator": "^7.25.9", - "@babel/plugin-transform-block-scoped-functions": "^7.26.5", - "@babel/plugin-transform-block-scoping": "^7.25.9", - "@babel/plugin-transform-class-properties": "^7.25.9", - "@babel/plugin-transform-class-static-block": "^7.26.0", - "@babel/plugin-transform-classes": "^7.25.9", - "@babel/plugin-transform-computed-properties": "^7.25.9", - "@babel/plugin-transform-destructuring": "^7.25.9", - "@babel/plugin-transform-dotall-regex": "^7.25.9", - "@babel/plugin-transform-duplicate-keys": "^7.25.9", - "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.25.9", - "@babel/plugin-transform-dynamic-import": "^7.25.9", - "@babel/plugin-transform-exponentiation-operator": "^7.26.3", - "@babel/plugin-transform-export-namespace-from": "^7.25.9", - "@babel/plugin-transform-for-of": "^7.26.9", - "@babel/plugin-transform-function-name": "^7.25.9", - "@babel/plugin-transform-json-strings": "^7.25.9", - "@babel/plugin-transform-literals": "^7.25.9", - "@babel/plugin-transform-logical-assignment-operators": "^7.25.9", - "@babel/plugin-transform-member-expression-literals": "^7.25.9", - "@babel/plugin-transform-modules-amd": "^7.25.9", - "@babel/plugin-transform-modules-commonjs": "^7.26.3", - "@babel/plugin-transform-modules-systemjs": "^7.25.9", - "@babel/plugin-transform-modules-umd": "^7.25.9", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.25.9", - "@babel/plugin-transform-new-target": "^7.25.9", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.26.6", - "@babel/plugin-transform-numeric-separator": "^7.25.9", - "@babel/plugin-transform-object-rest-spread": "^7.25.9", - "@babel/plugin-transform-object-super": "^7.25.9", - "@babel/plugin-transform-optional-catch-binding": "^7.25.9", - "@babel/plugin-transform-optional-chaining": "^7.25.9", - "@babel/plugin-transform-parameters": "^7.25.9", - "@babel/plugin-transform-private-methods": "^7.25.9", - "@babel/plugin-transform-private-property-in-object": "^7.25.9", - "@babel/plugin-transform-property-literals": "^7.25.9", - "@babel/plugin-transform-regenerator": "^7.25.9", - "@babel/plugin-transform-regexp-modifiers": "^7.26.0", - "@babel/plugin-transform-reserved-words": "^7.25.9", - "@babel/plugin-transform-shorthand-properties": "^7.25.9", - "@babel/plugin-transform-spread": "^7.25.9", - "@babel/plugin-transform-sticky-regex": "^7.25.9", - "@babel/plugin-transform-template-literals": "^7.26.8", - "@babel/plugin-transform-typeof-symbol": "^7.26.7", - "@babel/plugin-transform-unicode-escapes": "^7.25.9", - "@babel/plugin-transform-unicode-property-regex": "^7.25.9", - "@babel/plugin-transform-unicode-regex": "^7.25.9", - "@babel/plugin-transform-unicode-sets-regex": "^7.25.9", + "@babel/plugin-transform-arrow-functions": "^7.27.1", + "@babel/plugin-transform-async-generator-functions": "^7.27.1", + "@babel/plugin-transform-async-to-generator": "^7.27.1", + "@babel/plugin-transform-block-scoped-functions": "^7.27.1", + "@babel/plugin-transform-block-scoping": "^7.27.1", + "@babel/plugin-transform-class-properties": "^7.27.1", + "@babel/plugin-transform-class-static-block": "^7.27.1", + "@babel/plugin-transform-classes": "^7.27.1", + "@babel/plugin-transform-computed-properties": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.27.1", + "@babel/plugin-transform-dotall-regex": "^7.27.1", + "@babel/plugin-transform-duplicate-keys": "^7.27.1", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-dynamic-import": "^7.27.1", + "@babel/plugin-transform-exponentiation-operator": "^7.27.1", + "@babel/plugin-transform-export-namespace-from": "^7.27.1", + "@babel/plugin-transform-for-of": "^7.27.1", + "@babel/plugin-transform-function-name": "^7.27.1", + "@babel/plugin-transform-json-strings": "^7.27.1", + "@babel/plugin-transform-literals": "^7.27.1", + "@babel/plugin-transform-logical-assignment-operators": "^7.27.1", + "@babel/plugin-transform-member-expression-literals": "^7.27.1", + "@babel/plugin-transform-modules-amd": "^7.27.1", + "@babel/plugin-transform-modules-commonjs": "^7.27.1", + "@babel/plugin-transform-modules-systemjs": "^7.27.1", + "@babel/plugin-transform-modules-umd": "^7.27.1", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-new-target": "^7.27.1", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.27.1", + "@babel/plugin-transform-numeric-separator": "^7.27.1", + "@babel/plugin-transform-object-rest-spread": "^7.27.2", + "@babel/plugin-transform-object-super": "^7.27.1", + "@babel/plugin-transform-optional-catch-binding": "^7.27.1", + "@babel/plugin-transform-optional-chaining": "^7.27.1", + "@babel/plugin-transform-parameters": "^7.27.1", + "@babel/plugin-transform-private-methods": "^7.27.1", + "@babel/plugin-transform-private-property-in-object": "^7.27.1", + "@babel/plugin-transform-property-literals": "^7.27.1", + "@babel/plugin-transform-regenerator": "^7.27.1", + "@babel/plugin-transform-regexp-modifiers": "^7.27.1", + "@babel/plugin-transform-reserved-words": "^7.27.1", + "@babel/plugin-transform-shorthand-properties": "^7.27.1", + "@babel/plugin-transform-spread": "^7.27.1", + "@babel/plugin-transform-sticky-regex": "^7.27.1", + "@babel/plugin-transform-template-literals": "^7.27.1", + "@babel/plugin-transform-typeof-symbol": "^7.27.1", + "@babel/plugin-transform-unicode-escapes": "^7.27.1", + "@babel/plugin-transform-unicode-property-regex": "^7.27.1", + "@babel/plugin-transform-unicode-regex": "^7.27.1", + "@babel/plugin-transform-unicode-sets-regex": "^7.27.1", "@babel/preset-modules": "0.1.6-no-external-plugins", "babel-plugin-polyfill-corejs2": "^0.4.10", "babel-plugin-polyfill-corejs3": "^0.11.0", @@ -3726,14 +3791,11 @@ } }, "node_modules/@babel/runtime": { - "version": "7.26.10", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.10.tgz", - "integrity": "sha512-2WJMeRQPHKSPemqk/awGrAiuFfzBmOIPXKizAsVhWH9YJqLZ0H+HS4c8loHGgW6utJ3E/ejXQUsiGaQy2NZ9Fw==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.1.tgz", + "integrity": "sha512-1x3D2xEk2fRo3PAhwQwu5UubzgiVWSXTBfWpVd2Mx2AzRqJuDJCsgaDVZ7HB5iGzDW1Hl1sWN2mFyKjmR9uAog==", "dev": true, "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, "engines": { "node": ">=6.9.0" } @@ -3994,9 +4056,9 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.4.tgz", - "integrity": "sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.5.tgz", + "integrity": "sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==", "cpu": [ "ppc64" ], @@ -4011,9 +4073,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.4.tgz", - "integrity": "sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.5.tgz", + "integrity": "sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==", "cpu": [ "arm" ], @@ -4028,9 +4090,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.4.tgz", - "integrity": "sha512-bBy69pgfhMGtCnwpC/x5QhfxAz/cBgQ9enbtwjf6V9lnPI/hMyT9iWpR1arm0l3kttTr4L0KSLpKmLp/ilKS9A==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.5.tgz", + "integrity": "sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==", "cpu": [ "arm64" ], @@ -4045,9 +4107,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.4.tgz", - "integrity": "sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.5.tgz", + "integrity": "sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==", "cpu": [ "x64" ], @@ -4062,9 +4124,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.4.tgz", - "integrity": "sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.5.tgz", + "integrity": "sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==", "cpu": [ "arm64" ], @@ -4079,9 +4141,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.4.tgz", - "integrity": "sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.5.tgz", + "integrity": "sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==", "cpu": [ "x64" ], @@ -4096,9 +4158,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.4.tgz", - "integrity": "sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.5.tgz", + "integrity": "sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==", "cpu": [ "arm64" ], @@ -4113,9 +4175,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.4.tgz", - "integrity": "sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.5.tgz", + "integrity": "sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==", "cpu": [ "x64" ], @@ -4130,9 +4192,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.4.tgz", - "integrity": "sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.5.tgz", + "integrity": "sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==", "cpu": [ "arm" ], @@ -4147,9 +4209,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.4.tgz", - "integrity": "sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.5.tgz", + "integrity": "sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==", "cpu": [ "arm64" ], @@ -4164,9 +4226,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.4.tgz", - "integrity": "sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.5.tgz", + "integrity": "sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==", "cpu": [ "ia32" ], @@ -4181,9 +4243,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.4.tgz", - "integrity": "sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.5.tgz", + "integrity": "sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==", "cpu": [ "loong64" ], @@ -4198,9 +4260,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.4.tgz", - "integrity": "sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.5.tgz", + "integrity": "sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==", "cpu": [ "mips64el" ], @@ -4215,9 +4277,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.4.tgz", - "integrity": "sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.5.tgz", + "integrity": "sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==", "cpu": [ "ppc64" ], @@ -4232,9 +4294,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.4.tgz", - "integrity": "sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.5.tgz", + "integrity": "sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==", "cpu": [ "riscv64" ], @@ -4249,9 +4311,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.4.tgz", - "integrity": "sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.5.tgz", + "integrity": "sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==", "cpu": [ "s390x" ], @@ -4266,9 +4328,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.4.tgz", - "integrity": "sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.5.tgz", + "integrity": "sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==", "cpu": [ "x64" ], @@ -4283,9 +4345,9 @@ } }, "node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.4.tgz", - "integrity": "sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.5.tgz", + "integrity": "sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==", "cpu": [ "arm64" ], @@ -4300,9 +4362,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.4.tgz", - "integrity": "sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.5.tgz", + "integrity": "sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==", "cpu": [ "x64" ], @@ -4317,9 +4379,9 @@ } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.4.tgz", - "integrity": "sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.5.tgz", + "integrity": "sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==", "cpu": [ "arm64" ], @@ -4334,9 +4396,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.4.tgz", - "integrity": "sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.5.tgz", + "integrity": "sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==", "cpu": [ "x64" ], @@ -4351,9 +4413,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.4.tgz", - "integrity": "sha512-Mw+tzy4pp6wZEK0+Lwr76pWLjrtjmJyUB23tHKqEDP74R3q95luY/bXqXZeYl4NYlvwOqoRKlInQialgCKy67Q==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.5.tgz", + "integrity": "sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==", "cpu": [ "x64" ], @@ -4368,9 +4430,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.4.tgz", - "integrity": "sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.5.tgz", + "integrity": "sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==", "cpu": [ "arm64" ], @@ -4385,9 +4447,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.4.tgz", - "integrity": "sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.5.tgz", + "integrity": "sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==", "cpu": [ "ia32" ], @@ -4402,9 +4464,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.4.tgz", - "integrity": "sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.5.tgz", + "integrity": "sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==", "cpu": [ "x64" ], @@ -4939,22 +5001,22 @@ } }, "node_modules/@inquirer/prompts": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-7.3.2.tgz", - "integrity": "sha512-G1ytyOoHh5BphmEBxSwALin3n1KGNYB6yImbICcRQdzXfOGbuJ9Jske/Of5Sebk339NSGGNfUshnzK8YWkTPsQ==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-7.5.1.tgz", + "integrity": "sha512-5AOrZPf2/GxZ+SDRZ5WFplCA2TAQgK3OYrXCYmJL5NaTu4ECcoWFlfUZuw7Es++6Njv7iu/8vpYJhuzxUH76Vg==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/checkbox": "^4.1.2", - "@inquirer/confirm": "^5.1.6", - "@inquirer/editor": "^4.2.7", - "@inquirer/expand": "^4.0.9", - "@inquirer/input": "^4.1.6", - "@inquirer/number": "^3.0.9", - "@inquirer/password": "^4.0.9", - "@inquirer/rawlist": "^4.0.9", - "@inquirer/search": "^3.0.9", - "@inquirer/select": "^4.0.9" + "@inquirer/checkbox": "^4.1.6", + "@inquirer/confirm": "^5.1.10", + "@inquirer/editor": "^4.2.11", + "@inquirer/expand": "^4.0.13", + "@inquirer/input": "^4.1.10", + "@inquirer/number": "^3.0.13", + "@inquirer/password": "^4.0.13", + "@inquirer/rawlist": "^4.1.1", + "@inquirer/search": "^3.0.13", + "@inquirer/select": "^4.2.1" }, "engines": { "node": ">=18" @@ -5858,9 +5920,9 @@ "license": "MIT" }, "node_modules/@listr2/prompt-adapter-inquirer": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/@listr2/prompt-adapter-inquirer/-/prompt-adapter-inquirer-2.0.18.tgz", - "integrity": "sha512-0hz44rAcrphyXcA8IS7EJ2SCoaBZD2u5goE8S/e+q/DL+dOGpqpcLidVOFeLG3VgML62SXmfRLAhWt0zL1oW4Q==", + "version": "2.0.22", + "resolved": "https://registry.npmjs.org/@listr2/prompt-adapter-inquirer/-/prompt-adapter-inquirer-2.0.22.tgz", + "integrity": "sha512-hV36ZoY+xKL6pYOt1nPNnkciFkn89KZwqLhAFzJvYysAvL5uBQdiADZx/8bIDXIukzzwG0QlPYolgMzQUtKgpQ==", "dev": true, "license": "MIT", "dependencies": { @@ -5897,9 +5959,9 @@ } }, "node_modules/@lmdb/lmdb-darwin-arm64": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-3.2.6.tgz", - "integrity": "sha512-yF/ih9EJJZc72psFQbwnn8mExIWfTnzWJg+N02hnpXtDPETYLmQswIMBn7+V88lfCaFrMozJsUvcEQIkEPU0Gg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-3.3.0.tgz", + "integrity": "sha512-LipbQobyEfQtu8WixasaFUZZ+JCGlho4OWwWIQ5ol0rB1RKkcZvypu7sS1CBvofBGVAa3vbOh8IOGQMrbmL5dg==", "cpu": [ "arm64" ], @@ -5911,9 +5973,9 @@ ] }, "node_modules/@lmdb/lmdb-darwin-x64": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-3.2.6.tgz", - "integrity": "sha512-5BbCumsFLbCi586Bb1lTWQFkekdQUw8/t8cy++Uq251cl3hbDIGEwD9HAwh8H6IS2F6QA9KdKmO136LmipRNkg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-3.3.0.tgz", + "integrity": "sha512-yA+9P+ZeA3vg76BLXWeUomIAjxfmSmR2eg8fueHXDg5Xe1Xmkl9JCKuHXUhtJ+mMVcH12d5k4kJBLbyXTadfGQ==", "cpu": [ "x64" ], @@ -5925,9 +5987,9 @@ ] }, "node_modules/@lmdb/lmdb-linux-arm": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-3.2.6.tgz", - "integrity": "sha512-+6XgLpMb7HBoWxXj+bLbiiB4s0mRRcDPElnRS3LpWRzdYSe+gFk5MT/4RrVNqd2MESUDmb53NUXw1+BP69bjiQ==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-3.3.0.tgz", + "integrity": "sha512-EDYrW9kle+8wI19JCj/PhRnGoCN9bked5cdOPdo1wdgH/HzjgoLPFTn9DHlZccgTEVhp3O+bpWXdN/rWySVvjw==", "cpu": [ "arm" ], @@ -5939,9 +6001,9 @@ ] }, "node_modules/@lmdb/lmdb-linux-arm64": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-3.2.6.tgz", - "integrity": "sha512-l5VmJamJ3nyMmeD1ANBQCQqy7do1ESaJQfKPSm2IG9/ADZryptTyCj8N6QaYgIWewqNUrcbdMkJajRQAt5Qjfg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-3.3.0.tgz", + "integrity": "sha512-OeWvSgjXXZ/zmtLqqL78I3910F6UYpUubmsUU+iBHo6nTtjkpXms95rJtGrjkWQqwswKBD7xSMplbYC4LEsiPA==", "cpu": [ "arm64" ], @@ -5953,9 +6015,9 @@ ] }, "node_modules/@lmdb/lmdb-linux-x64": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-3.2.6.tgz", - "integrity": "sha512-nDYT8qN9si5+onHYYaI4DiauDMx24OAiuZAUsEqrDy+ja/3EbpXPX/VAkMV8AEaQhy3xc4dRC+KcYIvOFefJ4Q==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-3.3.0.tgz", + "integrity": "sha512-wDd02mt5ScX4+xd6g78zKBr6ojpgCJCTrllCAabjgap5FzuETqOqaQfKhO+tJuGWv/J5q+GIds6uY7rNFueOxg==", "cpu": [ "x64" ], @@ -5966,10 +6028,24 @@ "linux" ] }, + "node_modules/@lmdb/lmdb-win32-arm64": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-arm64/-/lmdb-win32-arm64-3.3.0.tgz", + "integrity": "sha512-COotWhHJgzXULLiEjOgWQwqig6PoA+6ji6W+sDl6M1HhMXWIymEVHGs0edsVSNtsNSCAWMxJgR3asv6FNX/2EA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, "node_modules/@lmdb/lmdb-win32-x64": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-3.2.6.tgz", - "integrity": "sha512-XlqVtILonQnG+9fH2N3Aytria7P/1fwDgDhl29rde96uH2sLB8CHORIf2PfuLVzFQJ7Uqp8py9AYwr3ZUCFfWg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-3.3.0.tgz", + "integrity": "sha512-kqUgQH+l8HDbkAapx+aoko7Ez4X4DqkIraOqY/k0QY5EN/iialVlFpBUXh4wFXzirdmEVjbIUMrceUh0Kh8LeA==", "cpu": [ "x64" ], @@ -7751,23 +7827,23 @@ } }, "node_modules/@ng-icons/core": { - "version": "29.10.0", - "resolved": "https://registry.npmjs.org/@ng-icons/core/-/core-29.10.0.tgz", - "integrity": "sha512-PR6SO00yvFhwDhh37BWhtAgRfzxuXpJQBsAQ44Pg3gjc83fOAwOtMSXizYwtN0uUFIkAYZHZCEuV7Sb8eosK+w==", + "version": "32.0.0", + "resolved": "https://registry.npmjs.org/@ng-icons/core/-/core-32.0.0.tgz", + "integrity": "sha512-Wq6m+z5IkhWh9BI7P6HJUkOrI8Vqj2u5iot88OyUj3vi0Ei2yeVewVGE51Wwhy3J0+4EplRNLxEu+TZHkve0Fg==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "peerDependencies": { - "@angular/common": ">=18.0.0", - "@angular/core": ">=18.0.0", + "@angular/common": ">=20.0.0", + "@angular/core": ">=20.0.0", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@ng-icons/material-icons": { - "version": "29.10.0", - "resolved": "https://registry.npmjs.org/@ng-icons/material-icons/-/material-icons-29.10.0.tgz", - "integrity": "sha512-zmOJQeDpCoISxmmlzYbBMwHrmMz4RnT0UNOxWbfSSlgU8+XTHUUbVomS72ltFkkgY/rt5VF8rnp2ILmmDeZZWA==", + "version": "32.0.0", + "resolved": "https://registry.npmjs.org/@ng-icons/material-icons/-/material-icons-32.0.0.tgz", + "integrity": "sha512-AfJP1vLPS52ygaNV+LZ6u+aQBdLKQ8UAStcUByQGlPwoExzZCCst/PnThCbaQ0JVoRgdoUe4BiyJhXqcoKBHig==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -7792,9 +7868,9 @@ } }, "node_modules/@ngrx/component-store": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/component-store/-/component-store-19.1.0.tgz", - "integrity": "sha512-CYgmYlSWrNEUiP+5LHA05RhEpqkomFv+C3w0GhpcFcK4dYzipZY7BSJLaYdMCM+Q1Ce3FwBkEMgSSUycL0B5zw==", + "version": "19.2.1", + "resolved": "https://registry.npmjs.org/@ngrx/component-store/-/component-store-19.2.1.tgz", + "integrity": "sha512-a1ghKdR1O2YNQSQfbwC472u+SFK41PDJZuvRIJ8k6B0MKoUWD6LyD4owyrPCUMxtMz9PLoAkch7FUD5qxgY23Q==", "license": "MIT", "dependencies": { "tslib": "^2.0.0" @@ -7805,37 +7881,37 @@ } }, "node_modules/@ngrx/effects": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/effects/-/effects-19.1.0.tgz", - "integrity": "sha512-rGRN0ZnzAPmQdUPvmoqZsK7Da/AoCfQcfody+h6PfHTwXNm+M2MRc8tXO6C+fznMRww8ZgNror2dfFmoOSOvNg==", + "version": "19.2.1", + "resolved": "https://registry.npmjs.org/@ngrx/effects/-/effects-19.2.1.tgz", + "integrity": "sha512-RZmTPOIC/h4JtySxh4Oa0ReQomxv4/+2er9vJ2IiuPDgUo7oE83iKZvB8uZUW/8y9dcu+MB6u0VjWM6rcbpCcA==", "license": "MIT", "dependencies": { "tslib": "^2.0.0" }, "peerDependencies": { "@angular/core": "^19.0.0", - "@ngrx/store": "19.1.0", + "@ngrx/store": "19.2.1", "rxjs": "^6.5.3 || ^7.5.0" } }, "node_modules/@ngrx/entity": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/entity/-/entity-19.1.0.tgz", - "integrity": "sha512-Cy+uT5Lzs0fSaqcAtsK6ECac2ETma7UFnSnqLXSKPQmiBMNMMvP2On1c+zxaPgySG2R5kxgA0yDuHGsRiLAprA==", + "version": "19.2.1", + "resolved": "https://registry.npmjs.org/@ngrx/entity/-/entity-19.2.1.tgz", + "integrity": "sha512-AnIe+EUy2WYP4qTgEtGpD/W0+nzHlhzjcCVHolIjodD2iyR1s6UwywziZXORVTV9TEdjHPADggyGXtsJd/1FCg==", "license": "MIT", "dependencies": { "tslib": "^2.0.0" }, "peerDependencies": { "@angular/core": "^19.0.0", - "@ngrx/store": "19.1.0", + "@ngrx/store": "19.2.1", "rxjs": "^6.5.3 || ^7.5.0" } }, "node_modules/@ngrx/operators": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/operators/-/operators-19.1.0.tgz", - "integrity": "sha512-gpo69FnoAF69X68pk9eWFHB630xqerBYkF68wOFMciLOV2im3b/fAf+0sRvnQJmVtG/8jO0IPVdvLqa1TbWmPA==", + "version": "19.2.1", + "resolved": "https://registry.npmjs.org/@ngrx/operators/-/operators-19.2.1.tgz", + "integrity": "sha512-umjSny5nWe7+a3XPeyMfE8vjhXD4ec6nA/KSV7bQA43Yt3eW8cQQr5ng7UZOkC0rbqcBGpSsJPt5thTeXiMXQg==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -7845,9 +7921,9 @@ } }, "node_modules/@ngrx/signals": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/signals/-/signals-19.1.0.tgz", - "integrity": "sha512-v8sbb+Iox9kdIaKbFgt4Z1W+NxzIU4+g+6qQU6/c27UmtQXv0s1zUKKofPRK0qwkaZzNWkxNToxyoE285ukqcQ==", + "version": "19.2.1", + "resolved": "https://registry.npmjs.org/@ngrx/signals/-/signals-19.2.1.tgz", + "integrity": "sha512-Tajd2TVjkxxyFMhnMSWLa5pAWfynjP0VM0B/BCMaLiBrwBBxybxRVENoUDU5tGyiKSax/2tBJC3+sOglmxm27A==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -7863,9 +7939,9 @@ } }, "node_modules/@ngrx/store": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/store/-/store-19.1.0.tgz", - "integrity": "sha512-8kKCSFahTpRTx3f/wwcDjItdFnk2IMoorWRjTI2U/MGWuEi4flqLNWcX99s759e7TI6PctiGsaS8jnJXIUS8Jg==", + "version": "19.2.1", + "resolved": "https://registry.npmjs.org/@ngrx/store/-/store-19.2.1.tgz", + "integrity": "sha512-c5vQId7YoAhM0y4HASrz9mtLju+28vJspd6OBlhPbBlSae8GN8m9S/oav+8LaSY19yh95cZ5B/nMcLNNWgL/jA==", "license": "MIT", "dependencies": { "tslib": "^2.0.0" @@ -7876,33 +7952,33 @@ } }, "node_modules/@ngrx/store-devtools": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/store-devtools/-/store-devtools-19.1.0.tgz", - "integrity": "sha512-c8sV5FQofqm7lF6HTJ4Bb7L/69TaIYHAwEFMbgqbsNoWDx+pilw/It6X9J3LnU8bXjQK4xg6qsgJ7fJIH5X2NA==", + "version": "19.2.1", + "resolved": "https://registry.npmjs.org/@ngrx/store-devtools/-/store-devtools-19.2.1.tgz", + "integrity": "sha512-gj1YO+4yl6D0l9vzLWdw07TQSu5UPKgsSLsNJfDLXraaLCUcB8voAp4J7zohN8qR5ixDuHeMoiSSVuklQ75u2w==", "license": "MIT", "dependencies": { "tslib": "^2.0.0" }, "peerDependencies": { "@angular/core": "^19.0.0", - "@ngrx/store": "19.1.0", + "@ngrx/store": "19.2.1", "rxjs": "^6.5.3 || ^7.5.0" } }, "node_modules/@ngtools/webpack": { - "version": "19.2.15", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-19.2.15.tgz", - "integrity": "sha512-H37nop/wWMkSgoU2VvrMzanHePdLRRrX52nC5tT2ZhH3qP25+PrnMyw11PoLDLv3iWXC68uB1AiKNIT+jiQbuQ==", + "version": "20.0.2", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-20.0.2.tgz", + "integrity": "sha512-Thpk7LR4cpM90sjGXdvrM+HnUFvHzNJn2h0U6/Ow5ez+OipQDYKoFm1bisk2K/B6zGI7sGavXUlZagoTOXucUw==", "dev": true, "license": "MIT", "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "node": "^20.19.0 || ^22.12.0 || >=24.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, "peerDependencies": { - "@angular/compiler-cli": "^19.0.0 || ^19.2.0-next.0", - "typescript": ">=5.5 <5.9", + "@angular/compiler-cli": "^20.0.0", + "typescript": ">=5.8 <5.9", "webpack": "^5.54.0" } }, @@ -7910,6 +7986,7 @@ "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, "license": "MIT", "dependencies": { "@nodelib/fs.stat": "2.0.5", @@ -7923,6 +8000,7 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, "license": "MIT", "engines": { "node": ">= 8" @@ -7932,6 +8010,7 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, "license": "MIT", "dependencies": { "@nodelib/fs.scandir": "2.1.5", @@ -8411,20 +8490,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@nx/eslint/node_modules/typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, "node_modules/@nx/jest": { "version": "21.2.0", "resolved": "https://registry.npmjs.org/@nx/jest/-/jest-21.2.0.tgz", @@ -9387,6 +9452,204 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/@oxc-resolver/binding-darwin-arm64": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-darwin-arm64/-/binding-darwin-arm64-5.3.0.tgz", + "integrity": "sha512-hXem5ZAguS7IlSiHg/LK0tEfLj4eUo+9U6DaFwwBEGd0L0VIF9LmuiHydRyOrdnnmi9iAAFMAn/wl2cUoiuruA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@oxc-resolver/binding-darwin-x64": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-darwin-x64/-/binding-darwin-x64-5.3.0.tgz", + "integrity": "sha512-wgSwfsZkRbuYCIBLxeg1bYrtKnirAy+IJF0lwfz4z08clgdNBDbfGECJe/cd0csIZPpRcvPFe8317yf31sWhtA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@oxc-resolver/binding-freebsd-x64": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-freebsd-x64/-/binding-freebsd-x64-5.3.0.tgz", + "integrity": "sha512-kzeE2WHgcRMmWjB071RdwEV5Pwke4o0WWslCKoh8if1puvxIxfzu3o7g6P2+v77BP5qop4cri+uvLABSO0WZjg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@oxc-resolver/binding-linux-arm-gnueabihf": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-5.3.0.tgz", + "integrity": "sha512-I8np34yZP/XfIkZNDbw3rweqVgfjmHYpNX3xnJZWg+f4mgO9/UNWBwetSaqXeDZqvIch/aHak+q4HVrQhQKCqg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-arm64-gnu": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-5.3.0.tgz", + "integrity": "sha512-u2ndfeEUrW898eXM+qPxIN8TvTPjI90NDQBRgaxxkOfNw3xaotloeiZGz5+Yzlfxgvxr9DY9FdYkqhUhSnGhOw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-arm64-musl": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-arm64-musl/-/binding-linux-arm64-musl-5.3.0.tgz", + "integrity": "sha512-TzbjmFkcnESGuVItQ2diKacX8vu5G0bH3BHmIlmY4OSRLyoAlrJFwGKAHmh6C9+Amfcjo2rx8vdm7swzmsGC6Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-riscv64-gnu": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-5.3.0.tgz", + "integrity": "sha512-NH3pjAqh8nuN29iRuRfTY42Vn03ctoR9VE8llfoUKUfhHUjFHYOXK5VSkhjj1usG8AeuesvqrQnLptCRQVTi/Q==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-s390x-gnu": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-5.3.0.tgz", + "integrity": "sha512-tuZtkK9sJYh2MC2uhol1M/8IMTB6ZQ5jmqP2+k5XNXnOb/im94Y5uV/u2lXwVyIuKHZZHtr+0d1HrOiNahoKpw==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-x64-gnu": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-x64-gnu/-/binding-linux-x64-gnu-5.3.0.tgz", + "integrity": "sha512-VzhPYmZCtoES/ThcPdGSmMop7JlwgqtSvlgtKCW15ByV2JKyl8kHAHnPSBfpIooXb0ehFnRdxFtL9qtAEWy01g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-linux-x64-musl": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-linux-x64-musl/-/binding-linux-x64-musl-5.3.0.tgz", + "integrity": "sha512-Hi39cWzul24rGljN4Vf1lxjXzQdCrdxO5oCT7KJP4ndSlqIUODJnfnMAP1YhcnIRvNvk+5E6sZtnEmFUd/4d8Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oxc-resolver/binding-wasm32-wasi": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-wasm32-wasi/-/binding-wasm32-wasi-5.3.0.tgz", + "integrity": "sha512-ddujvHhP3chmHnSXRlkPVUeYj4/B7eLZwL4yUid+df3WCbVh6DgoT9RmllZn21AhxgKtMdekDdyVJYKFd8tl4A==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^0.2.9" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@oxc-resolver/binding-wasm32-wasi/node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.11", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.11.tgz", + "integrity": "sha512-9DPkXtvHydrcOsopiYpUgPHpmj0HWZKMUnL2dZqpvC42lsratuBG06V5ipyno0fUek5VlFsNQ+AcFATSrJXgMA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@tybys/wasm-util": "^0.9.0" + } + }, + "node_modules/@oxc-resolver/binding-win32-arm64-msvc": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-5.3.0.tgz", + "integrity": "sha512-j1YYPLvUkMVNKmIFQZZJ7q6Do4cI3htUnyxNLwDSBVhSohvPIK2VG+IdtOAlWZGa7v+phEZsHfNbXVwB0oPYFQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@oxc-resolver/binding-win32-x64-msvc": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@oxc-resolver/binding-win32-x64-msvc/-/binding-win32-x64-msvc-5.3.0.tgz", + "integrity": "sha512-LT9eOPPUqfZscQRd5mc08RBeDWOQf+dnOrKnanMallTGPe6g7+rcAlFTA8SWoJbcD45PV8yArFtCmSQSpzHZmg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, "node_modules/@parcel/watcher": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz", @@ -9749,9 +10012,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.43.0.tgz", - "integrity": "sha512-Krjy9awJl6rKbruhQDgivNbD1WuLb8xAclM4IR4cN5pHGAs2oIMMQJEiC3IC/9TZJ+QZkmZhlMO/6MBGxPidpw==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.40.2.tgz", + "integrity": "sha512-JkdNEq+DFxZfUwxvB58tHMHBHVgX23ew41g1OQinthJ+ryhdRk67O31S7sYw8u2lTjHUPFxwar07BBt1KHp/hg==", "cpu": [ "arm" ], @@ -9760,13 +10023,12 @@ "optional": true, "os": [ "android" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.43.0.tgz", - "integrity": "sha512-ss4YJwRt5I63454Rpj+mXCXicakdFmKnUNxr1dLK+5rv5FJgAxnN7s31a5VchRYxCFWdmnDWKd0wbAdTr0J5EA==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.40.2.tgz", + "integrity": "sha512-13unNoZ8NzUmnndhPTkWPWbX3vtHodYmy+I9kuLxN+F+l+x3LdVF7UCu8TWVMt1POHLh6oDHhnOA04n8oJZhBw==", "cpu": [ "arm64" ], @@ -9775,13 +10037,12 @@ "optional": true, "os": [ "android" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.43.0.tgz", - "integrity": "sha512-eKoL8ykZ7zz8MjgBenEF2OoTNFAPFz1/lyJ5UmmFSz5jW+7XbH1+MAgCVHy72aG59rbuQLcJeiMrP8qP5d/N0A==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.40.2.tgz", + "integrity": "sha512-Gzf1Hn2Aoe8VZzevHostPX23U7N5+4D36WJNHK88NZHCJr7aVMG4fadqkIf72eqVPGjGc0HJHNuUaUcxiR+N/w==", "cpu": [ "arm64" ], @@ -9790,13 +10051,12 @@ "optional": true, "os": [ "darwin" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.43.0.tgz", - "integrity": "sha512-SYwXJgaBYW33Wi/q4ubN+ldWC4DzQY62S4Ll2dgfr/dbPoF50dlQwEaEHSKrQdSjC6oIe1WgzosoaNoHCdNuMg==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.40.2.tgz", + "integrity": "sha512-47N4hxa01a4x6XnJoskMKTS8XZ0CZMd8YTbINbi+w03A2w4j1RTlnGHOz/P0+Bg1LaVL6ufZyNprSg+fW5nYQQ==", "cpu": [ "x64" ], @@ -9805,13 +10065,12 @@ "optional": true, "os": [ "darwin" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.43.0.tgz", - "integrity": "sha512-SV+U5sSo0yujrjzBF7/YidieK2iF6E7MdF6EbYxNz94lA+R0wKl3SiixGyG/9Klab6uNBIqsN7j4Y/Fya7wAjQ==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.40.2.tgz", + "integrity": "sha512-8t6aL4MD+rXSHHZUR1z19+9OFJ2rl1wGKvckN47XFRVO+QL/dUSpKA2SLRo4vMg7ELA8pzGpC+W9OEd1Z/ZqoQ==", "cpu": [ "arm64" ], @@ -9820,13 +10079,12 @@ "optional": true, "os": [ "freebsd" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.43.0.tgz", - "integrity": "sha512-J7uCsiV13L/VOeHJBo5SjasKiGxJ0g+nQTrBkAsmQBIdil3KhPnSE9GnRon4ejX1XDdsmK/l30IYLiAaQEO0Cg==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.40.2.tgz", + "integrity": "sha512-C+AyHBzfpsOEYRFjztcYUFsH4S7UsE9cDtHCtma5BK8+ydOZYgMmWg1d/4KBytQspJCld8ZIujFMAdKG1xyr4Q==", "cpu": [ "x64" ], @@ -9835,13 +10093,12 @@ "optional": true, "os": [ "freebsd" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.43.0.tgz", - "integrity": "sha512-gTJ/JnnjCMc15uwB10TTATBEhK9meBIY+gXP4s0sHD1zHOaIh4Dmy1X9wup18IiY9tTNk5gJc4yx9ctj/fjrIw==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.40.2.tgz", + "integrity": "sha512-de6TFZYIvJwRNjmW3+gaXiZ2DaWL5D5yGmSYzkdzjBDS3W+B9JQ48oZEsmMvemqjtAFzE16DIBLqd6IQQRuG9Q==", "cpu": [ "arm" ], @@ -9850,13 +10107,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.43.0.tgz", - "integrity": "sha512-ZJ3gZynL1LDSIvRfz0qXtTNs56n5DI2Mq+WACWZ7yGHFUEirHBRt7fyIk0NsCKhmRhn7WAcjgSkSVVxKlPNFFw==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.40.2.tgz", + "integrity": "sha512-urjaEZubdIkacKc930hUDOfQPysezKla/O9qV+O89enqsqUmQm8Xj8O/vh0gHg4LYfv7Y7UsE3QjzLQzDYN1qg==", "cpu": [ "arm" ], @@ -9865,13 +10121,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.43.0.tgz", - "integrity": "sha512-8FnkipasmOOSSlfucGYEu58U8cxEdhziKjPD2FIa0ONVMxvl/hmONtX/7y4vGjdUhjcTHlKlDhw3H9t98fPvyA==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.40.2.tgz", + "integrity": "sha512-KlE8IC0HFOC33taNt1zR8qNlBYHj31qGT1UqWqtvR/+NuCVhfufAq9fxO8BMFC22Wu0rxOwGVWxtCMvZVLmhQg==", "cpu": [ "arm64" ], @@ -9880,13 +10135,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.43.0.tgz", - "integrity": "sha512-KPPyAdlcIZ6S9C3S2cndXDkV0Bb1OSMsX0Eelr2Bay4EsF9yi9u9uzc9RniK3mcUGCLhWY9oLr6er80P5DE6XA==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.40.2.tgz", + "integrity": "sha512-j8CgxvfM0kbnhu4XgjnCWJQyyBOeBI1Zq91Z850aUddUmPeQvuAy6OiMdPS46gNFgy8gN1xkYyLgwLYZG3rBOg==", "cpu": [ "arm64" ], @@ -9895,13 +10149,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-linux-loongarch64-gnu": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.43.0.tgz", - "integrity": "sha512-HPGDIH0/ZzAZjvtlXj6g+KDQ9ZMHfSP553za7o2Odegb/BEfwJcR0Sw0RLNpQ9nC6Gy8s+3mSS9xjZ0n3rhcYg==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.40.2.tgz", + "integrity": "sha512-Ybc/1qUampKuRF4tQXc7G7QY9YRyeVSykfK36Y5Qc5dmrIxwFhrOzqaVTNoZygqZ1ZieSWTibfFhQ5qK8jpWxw==", "cpu": [ "loong64" ], @@ -9910,13 +10163,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.43.0.tgz", - "integrity": "sha512-gEmwbOws4U4GLAJDhhtSPWPXUzDfMRedT3hFMyRAvM9Mrnj+dJIFIeL7otsv2WF3D7GrV0GIewW0y28dOYWkmw==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.40.2.tgz", + "integrity": "sha512-3FCIrnrt03CCsZqSYAOW/k9n625pjpuMzVfeI+ZBUSDT3MVIFDSPfSUgIl9FqUftxcUXInvFah79hE1c9abD+Q==", "cpu": [ "ppc64" ], @@ -9925,13 +10177,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.43.0.tgz", - "integrity": "sha512-XXKvo2e+wFtXZF/9xoWohHg+MuRnvO29TI5Hqe9xwN5uN8NKUYy7tXUG3EZAlfchufNCTHNGjEx7uN78KsBo0g==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.40.2.tgz", + "integrity": "sha512-QNU7BFHEvHMp2ESSY3SozIkBPaPBDTsfVNGx3Xhv+TdvWXFGOSH2NJvhD1zKAT6AyuuErJgbdvaJhYVhVqrWTg==", "cpu": [ "riscv64" ], @@ -9940,13 +10191,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.43.0.tgz", - "integrity": "sha512-ruf3hPWhjw6uDFsOAzmbNIvlXFXlBQ4nk57Sec8E8rUxs/AI4HD6xmiiasOOx/3QxS2f5eQMKTAwk7KHwpzr/Q==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.40.2.tgz", + "integrity": "sha512-5W6vNYkhgfh7URiXTO1E9a0cy4fSgfE4+Hl5agb/U1sa0kjOLMLC1wObxwKxecE17j0URxuTrYZZME4/VH57Hg==", "cpu": [ "riscv64" ], @@ -9955,13 +10205,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.43.0.tgz", - "integrity": "sha512-QmNIAqDiEMEvFV15rsSnjoSmO0+eJLoKRD9EAa9rrYNwO/XRCtOGM3A5A0X+wmG+XRrw9Fxdsw+LnyYiZWWcVw==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.40.2.tgz", + "integrity": "sha512-B7LKIz+0+p348JoAL4X/YxGx9zOx3sR+o6Hj15Y3aaApNfAshK8+mWZEf759DXfRLeL2vg5LYJBB7DdcleYCoQ==", "cpu": [ "s390x" ], @@ -9970,13 +10219,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.43.0.tgz", - "integrity": "sha512-jAHr/S0iiBtFyzjhOkAics/2SrXE092qyqEg96e90L3t9Op8OTzS6+IX0Fy5wCt2+KqeHAkti+eitV0wvblEoQ==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.40.2.tgz", + "integrity": "sha512-lG7Xa+BmBNwpjmVUbmyKxdQJ3Q6whHjMjzQplOs5Z+Gj7mxPtWakGHqzMqNER68G67kmCX9qX57aRsW5V0VOng==", "cpu": [ "x64" ], @@ -9985,13 +10233,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.43.0.tgz", - "integrity": "sha512-3yATWgdeXyuHtBhrLt98w+5fKurdqvs8B53LaoKD7P7H7FKOONLsBVMNl9ghPQZQuYcceV5CDyPfyfGpMWD9mQ==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.40.2.tgz", + "integrity": "sha512-tD46wKHd+KJvsmije4bUskNuvWKFcTOIM9tZ/RrmIvcXnbi0YK/cKS9FzFtAm7Oxi2EhV5N2OpfFB348vSQRXA==", "cpu": [ "x64" ], @@ -10000,13 +10247,12 @@ "optional": true, "os": [ "linux" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.43.0.tgz", - "integrity": "sha512-wVzXp2qDSCOpcBCT5WRWLmpJRIzv23valvcTwMHEobkjippNf+C3ys/+wf07poPkeNix0paTNemB2XrHr2TnGw==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.40.2.tgz", + "integrity": "sha512-Bjv/HG8RRWLNkXwQQemdsWw4Mg+IJ29LK+bJPW2SCzPKOUaMmPEppQlu/Fqk1d7+DX3V7JbFdbkh/NMmurT6Pg==", "cpu": [ "arm64" ], @@ -10015,13 +10261,12 @@ "optional": true, "os": [ "win32" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.43.0.tgz", - "integrity": "sha512-fYCTEyzf8d+7diCw8b+asvWDCLMjsCEA8alvtAutqJOJp/wL5hs1rWSqJ1vkjgW0L2NB4bsYJrpKkiIPRR9dvw==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.40.2.tgz", + "integrity": "sha512-dt1llVSGEsGKvzeIO76HToiYPNPYPkmjhMHhP00T9S4rDern8P2ZWvWAQUEJ+R1UdMWJ/42i/QqJ2WV765GZcA==", "cpu": [ "ia32" ], @@ -10030,13 +10275,12 @@ "optional": true, "os": [ "win32" - ], - "peer": true + ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.43.0.tgz", - "integrity": "sha512-SnGhLiE5rlK0ofq8kzuDkM0g7FN1s5VYY+YSMTibP7CqShxCQvqtNxTARS4xX4PFJfHjG0ZQYX9iGzI3FQh5Aw==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.40.2.tgz", + "integrity": "sha512-bwspbWB04XJpeElvsp+DCylKfF4trJDa2Y9Go8O6A7YLX2LIKGcNK/CYImJN6ZP4DcuOHB4Utl3iCbnR62DudA==", "cpu": [ "x64" ], @@ -10045,8 +10289,7 @@ "optional": true, "os": [ "win32" - ], - "peer": true + ] }, "node_modules/@rspack/binding": { "version": "1.3.15", @@ -10436,79 +10679,22 @@ } }, "node_modules/@schematics/angular": { - "version": "19.2.15", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-19.2.15.tgz", - "integrity": "sha512-dz/eoFQKG09POSygpEDdlCehFIMo35HUM2rVV8lx9PfQEibpbGwl1NNQYEbqwVjTyCyD/ILyIXCWPE+EfTnG4g==", + "version": "20.0.2", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-20.0.2.tgz", + "integrity": "sha512-TyF+/hV+8flAa/Vu8xOQF241Syg9rdbZD1dARdm6edbLo8nwxmHdRsIulRektb7oD5CpTnxpvrcNJjX77nhv6A==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "19.2.15", - "@angular-devkit/schematics": "19.2.15", + "@angular-devkit/core": "20.0.2", + "@angular-devkit/schematics": "20.0.2", "jsonc-parser": "3.3.1" }, "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "node": "^20.19.0 || ^22.12.0 || >=24.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" } }, - "node_modules/@schematics/angular/node_modules/@angular-devkit/core": { - "version": "19.2.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-19.2.15.tgz", - "integrity": "sha512-pU2RZYX6vhd7uLSdLwPnuBcr0mXJSjp3EgOXKsrlQFQZevc+Qs+2JdXgIElnOT/aDqtRtriDmLlSbtdE8n3ZbA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "8.17.1", - "ajv-formats": "3.0.1", - "jsonc-parser": "3.3.1", - "picomatch": "4.0.2", - "rxjs": "7.8.1", - "source-map": "0.7.4" - }, - "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "chokidar": "^4.0.0" - }, - "peerDependenciesMeta": { - "chokidar": { - "optional": true - } - } - }, - "node_modules/@schematics/angular/node_modules/@angular-devkit/schematics": { - "version": "19.2.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-19.2.15.tgz", - "integrity": "sha512-kNOJ+3vekJJCQKWihNmxBkarJzNW09kP5a9E1SRNiQVNOUEeSwcRR0qYotM65nx821gNzjjhJXnAZ8OazWldrg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@angular-devkit/core": "19.2.15", - "jsonc-parser": "3.3.1", - "magic-string": "0.30.17", - "ora": "5.4.1", - "rxjs": "7.8.1" - }, - "engines": { - "node": "^18.19.1 || ^20.11.1 || >=22.0.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@schematics/angular/node_modules/rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/@sideway/address": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz", @@ -10620,19 +10806,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@sindresorhus/merge-streams": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", - "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@sinonjs/commons": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", @@ -10679,14 +10852,14 @@ } }, "node_modules/@storybook/angular": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/@storybook/angular/-/angular-9.0.5.tgz", - "integrity": "sha512-a+FWBRrgncYF43IBhShJ7zMFXDO7gOdJzyspvU/4IzWdubFiOf/W6C8I5zGYD7LVtIyikoQ7U9th3rshU97pnw==", + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/@storybook/angular/-/angular-9.0.9.tgz", + "integrity": "sha512-0WYwG77293dbeXT6aMI6b+CMLnhvYFE9qPOfvOl+i+aATIf6/OyKjx7iEGnc+xg7vU781EyEJU3uSlID25M+RQ==", "dev": true, "license": "MIT", "dependencies": { - "@storybook/builder-webpack5": "9.0.5", - "@storybook/core-webpack": "9.0.5", + "@storybook/builder-webpack5": "9.0.9", + "@storybook/core-webpack": "9.0.9", "@storybook/global": "^5.0.0", "@types/webpack-env": "^1.18.0", "fd-package-json": "^1.2.0", @@ -10717,7 +10890,7 @@ "@angular/platform-browser": ">=18.0.0 < 21.0.0", "@angular/platform-browser-dynamic": ">=18.0.0 < 21.0.0", "rxjs": "^6.5.3 || ^7.4.0", - "storybook": "^9.0.5", + "storybook": "^9.0.9", "typescript": "^4.9.0 || ^5.0.0", "zone.js": ">=0.14.0" }, @@ -10767,13 +10940,13 @@ } }, "node_modules/@storybook/builder-webpack5": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/@storybook/builder-webpack5/-/builder-webpack5-9.0.5.tgz", - "integrity": "sha512-khGGNFwqauhME2Ev5qUcandhQuYh4DnP9QZ/6jUcuz4NgpoEMNf8ucFqAsDnKvuE4o9IEDP7JXM7bAm+IWoOHA==", + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/@storybook/builder-webpack5/-/builder-webpack5-9.0.9.tgz", + "integrity": "sha512-xg77Mv63qInOlmbNMZcHRQ/nvY00u2rMVg2yMx85S7jg10/HswUIo+SMdPlagHvCVrElgnlkr7NPnJfu7LdItQ==", "dev": true, "license": "MIT", "dependencies": { - "@storybook/core-webpack": "9.0.5", + "@storybook/core-webpack": "9.0.9", "case-sensitive-paths-webpack-plugin": "^2.4.0", "cjs-module-lexer": "^1.2.3", "css-loader": "^6.7.1", @@ -10794,7 +10967,7 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^9.0.5" + "storybook": "^9.0.9" }, "peerDependenciesMeta": { "typescript": { @@ -11070,9 +11243,9 @@ } }, "node_modules/@storybook/core-server": { - "version": "8.6.11", - "resolved": "https://registry.npmjs.org/@storybook/core-server/-/core-server-8.6.11.tgz", - "integrity": "sha512-mGfumTdmLtXmdSQBe0dfqN1EDqXRrpJK9qvfalNAIo9XVqtQpUH4kIddyf/k/ANT7TSqoyVy6xuIKLEZXYlb2A==", + "version": "8.6.14", + "resolved": "https://registry.npmjs.org/@storybook/core-server/-/core-server-8.6.14.tgz", + "integrity": "sha512-kLFyabFAXnbW2NPBE+tIvSXKWydu6e7bnjcWAEGXdMA5bieoiHeU/9sGp69GhYz9S1Wt3/smZJ9tzsiJv1WXsA==", "dev": true, "license": "MIT", "funding": { @@ -11084,9 +11257,9 @@ } }, "node_modules/@storybook/core-webpack": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/@storybook/core-webpack/-/core-webpack-9.0.5.tgz", - "integrity": "sha512-EALkOazEIGjcek3osj/laVxETeDpMyWfVJ+GOaHWNAHobJ/nOeURWwbEctIn0O6/ZCjzKT97ThgKUaR18K/QFg==", + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/@storybook/core-webpack/-/core-webpack-9.0.9.tgz", + "integrity": "sha512-6aDu2rY7CFl6Erkyku7OrC8N4xkndncmwZjb7oGzrlwUnxehFNjQlZiJa96XwSef8oXdTCpU5HCToIOicJAvnw==", "dev": true, "license": "MIT", "dependencies": { @@ -11097,17 +11270,7 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^9.0.5" - } - }, - "node_modules/@storybook/csf": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/@storybook/csf/-/csf-0.1.13.tgz", - "integrity": "sha512-7xOOwCLGB3ebM87eemep89MYRFTko+D8qE7EdAAq74lgdqRR5cOUtYWJLjO2dLtP94nqoOdHJo6MdLLKzg412Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^2.19.0" + "storybook": "^9.0.9" } }, "node_modules/@storybook/expect": { @@ -11415,9 +11578,9 @@ "license": "MIT" }, "node_modules/@storybook/test-runner": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/@storybook/test-runner/-/test-runner-0.22.0.tgz", - "integrity": "sha512-fKY6MTE/bcvMaulKXy+z0fPmRXJx1REkYMOMcGn8zn6uffyBigGgaVf/sZ+AZfibwvjzg/StWhJ9HvAM8pc14g==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@storybook/test-runner/-/test-runner-0.23.0.tgz", + "integrity": "sha512-AVA6mSotfHAqsKjvWMNR7wcXIoCNQidU9P5GIGEdn+gArzkzTsLXZr6qNjH4XQRg8pSR+IUOuB1MMWZIHxhgoQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11426,7 +11589,6 @@ "@babel/template": "^7.22.5", "@babel/types": "^7.22.5", "@jest/types": "^29.6.3", - "@storybook/csf": "^0.1.11", "@swc/core": "^1.5.22", "@swc/jest": "^0.2.23", "expect-playwright": "^0.8.0", @@ -11445,10 +11607,10 @@ "test-storybook": "dist/test-storybook.js" }, "engines": { - "node": "^16.10.0 || ^18.0.0 || >=20.0.0" + "node": ">=20.0.0" }, "peerDependencies": { - "storybook": "^0.0.0-0 || ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 || ^9.0.0-0" + "storybook": "^0.0.0-0 || ^8.2.0 || ^9.0.0 || ^9.1.0-0" } }, "node_modules/@storybook/testing-library": { @@ -11520,18 +11682,19 @@ } }, "node_modules/@swc-node/register": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@swc-node/register/-/register-1.9.2.tgz", - "integrity": "sha512-BBjg0QNuEEmJSoU/++JOXhrjWdu3PTyYeJWsvchsI0Aqtj8ICkz/DqlwtXbmZVZ5vuDPpTfFlwDBZe81zgShMA==", + "version": "1.10.10", + "resolved": "https://registry.npmjs.org/@swc-node/register/-/register-1.10.10.tgz", + "integrity": "sha512-jYWaI2WNEKz8KZL3sExd2KVL1JMma1/J7z+9iTpv0+fRN7LGMF8VTGGuHI2bug/ztpdZU1G44FG/Kk6ElXL9CQ==", "dev": true, "license": "MIT", "dependencies": { - "@swc-node/core": "^1.13.1", - "@swc-node/sourcemap-support": "^0.5.0", + "@swc-node/core": "^1.13.3", + "@swc-node/sourcemap-support": "^0.5.1", "colorette": "^2.0.20", - "debug": "^4.3.4", + "debug": "^4.3.5", + "oxc-resolver": "^5.0.0", "pirates": "^4.0.6", - "tslib": "^2.6.2" + "tslib": "^2.6.3" }, "funding": { "type": "github", @@ -11554,15 +11717,15 @@ } }, "node_modules/@swc/core": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.5.29.tgz", - "integrity": "sha512-nvTtHJI43DUSOAf3h9XsqYg8YXKc0/N4il9y4j0xAkO0ekgDNo+3+jbw6MInawjKJF9uulyr+f5bAutTsOKVlw==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.12.1.tgz", + "integrity": "sha512-aKXdDTqxTVFl/bKQZ3EQUjEMBEoF6JBv29moMZq0kbVO43na6u/u+3Vcbhbrh+A2N0X5OL4RaveuWfAjEgOmeA==", "dev": true, "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { "@swc/counter": "^0.1.3", - "@swc/types": "^0.1.8" + "@swc/types": "^0.1.23" }, "engines": { "node": ">=10" @@ -11572,19 +11735,19 @@ "url": "https://opencollective.com/swc" }, "optionalDependencies": { - "@swc/core-darwin-arm64": "1.5.29", - "@swc/core-darwin-x64": "1.5.29", - "@swc/core-linux-arm-gnueabihf": "1.5.29", - "@swc/core-linux-arm64-gnu": "1.5.29", - "@swc/core-linux-arm64-musl": "1.5.29", - "@swc/core-linux-x64-gnu": "1.5.29", - "@swc/core-linux-x64-musl": "1.5.29", - "@swc/core-win32-arm64-msvc": "1.5.29", - "@swc/core-win32-ia32-msvc": "1.5.29", - "@swc/core-win32-x64-msvc": "1.5.29" + "@swc/core-darwin-arm64": "1.12.1", + "@swc/core-darwin-x64": "1.12.1", + "@swc/core-linux-arm-gnueabihf": "1.12.1", + "@swc/core-linux-arm64-gnu": "1.12.1", + "@swc/core-linux-arm64-musl": "1.12.1", + "@swc/core-linux-x64-gnu": "1.12.1", + "@swc/core-linux-x64-musl": "1.12.1", + "@swc/core-win32-arm64-msvc": "1.12.1", + "@swc/core-win32-ia32-msvc": "1.12.1", + "@swc/core-win32-x64-msvc": "1.12.1" }, "peerDependencies": { - "@swc/helpers": "*" + "@swc/helpers": ">=0.5.17" }, "peerDependenciesMeta": { "@swc/helpers": { @@ -11593,9 +11756,9 @@ } }, "node_modules/@swc/core-darwin-arm64": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.5.29.tgz", - "integrity": "sha512-6F/sSxpHaq3nzg2ADv9FHLi4Fu2A8w8vP8Ich8gIl16D2htStlwnaPmCLjRswO+cFkzgVqy/l01gzNGWd4DFqA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.12.1.tgz", + "integrity": "sha512-nUjWVcJ3YS2N40ZbKwYO2RJ4+o2tWYRzNOcIQp05FqW0+aoUCVMdAUUzQinPDynfgwVshDAXCKemY8X7nN5MaA==", "cpu": [ "arm64" ], @@ -11610,9 +11773,9 @@ } }, "node_modules/@swc/core-darwin-x64": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.5.29.tgz", - "integrity": "sha512-rF/rXkvUOTdTIfoYbmszbSUGsCyvqACqy1VeP3nXONS+LxFl4bRmRcUTRrblL7IE5RTMCKUuPbqbQSE2hK7bqg==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.12.1.tgz", + "integrity": "sha512-OGm4a4d3OeJn+tRt8H/eiHgTFrJbS6r8mi/Ob65tAEXZGHN900T2kR7c5ALr0V2hBOQ8BfhexwPoQlGQP/B95w==", "cpu": [ "x64" ], @@ -11627,9 +11790,9 @@ } }, "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.5.29.tgz", - "integrity": "sha512-2OAPL8iWBsmmwkjGXqvuUhbmmoLxS1xNXiMq87EsnCNMAKohGc7wJkdAOUL6J/YFpean/vwMWg64rJD4pycBeg==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.12.1.tgz", + "integrity": "sha512-76YeeQKyK0EtNkQiNBZ0nbVGooPf9IucY0WqVXVpaU4wuG7ZyLEE2ZAIgXafIuzODGQoLfetue7I8boMxh1/MA==", "cpu": [ "arm" ], @@ -11644,9 +11807,9 @@ } }, "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.5.29.tgz", - "integrity": "sha512-eH/Q9+8O5qhSxMestZnhuS1xqQMr6M7SolZYxiXJqxArXYILLCF+nq2R9SxuMl0CfjHSpb6+hHPk/HXy54eIRA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.12.1.tgz", + "integrity": "sha512-BxJDIJPq1+aCh9UsaSAN6wo3tuln8UhNXruOrzTI8/ElIig/3sAueDM6Eq7GvZSGGSA7ljhNATMJ0elD7lFatQ==", "cpu": [ "arm64" ], @@ -11661,9 +11824,9 @@ } }, "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.5.29.tgz", - "integrity": "sha512-TERh2OICAJz+SdDIK9+0GyTUwF6r4xDlFmpoiHKHrrD/Hh3u+6Zue0d7jQ/he/i80GDn4tJQkHlZys+RZL5UZg==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.12.1.tgz", + "integrity": "sha512-NhLdbffSXvY0/FwUSAl4hKBlpe5GHQGXK8DxTo3HHjLsD9sCPYieo3vG0NQoUYAy4ZUY1WeGjyxeq4qZddJzEQ==", "cpu": [ "arm64" ], @@ -11678,9 +11841,9 @@ } }, "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.5.29.tgz", - "integrity": "sha512-WMDPqU7Ji9dJpA+Llek2p9t7pcy7Bob8ggPUvgsIlv3R/eesF9DIzSbrgl6j3EAEPB9LFdSafsgf6kT/qnvqFg==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.12.1.tgz", + "integrity": "sha512-CrYnV8SZIgArQ9LKH0xEF95PKXzX9WkRSc5j55arOSBeDCeDUQk1Bg/iKdnDiuj5HC1hZpvzwMzSBJjv+Z70jA==", "cpu": [ "x64" ], @@ -11695,9 +11858,9 @@ } }, "node_modules/@swc/core-linux-x64-musl": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.5.29.tgz", - "integrity": "sha512-DO14glwpdKY4POSN0201OnGg1+ziaSVr6/RFzuSLggshwXeeyVORiHv3baj7NENhJhWhUy3NZlDsXLnRFkmhHQ==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.12.1.tgz", + "integrity": "sha512-BQMl3d0HaGB0/h2xcKlGtjk/cGRn2tnbsaChAKcjFdCepblKBCz1pgO/mL7w5iXq3s57wMDUn++71/a5RAkZOA==", "cpu": [ "x64" ], @@ -11712,9 +11875,9 @@ } }, "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.5.29.tgz", - "integrity": "sha512-V3Y1+a1zG1zpYXUMqPIHEMEOd+rHoVnIpO/KTyFwAmKVu8v+/xPEVx/AGoYE67x4vDAAvPQrKI3Aokilqa5yVg==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.12.1.tgz", + "integrity": "sha512-b7NeGnpqTfmIGtUqXBl0KqoSmOnH64nRZoT5l4BAGdvwY7nxitWR94CqZuwyLPty/bLywmyDA9uO12Kvgb3+gg==", "cpu": [ "arm64" ], @@ -11729,9 +11892,9 @@ } }, "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.5.29.tgz", - "integrity": "sha512-OrM6yfXw4wXhnVFosOJzarw0Fdz5Y0okgHfn9oFbTPJhoqxV5Rdmd6kXxWu2RiVKs6kGSJFZXHDeUq2w5rTIMg==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.12.1.tgz", + "integrity": "sha512-iU/29X2D7cHBp1to62cUg/5Xk8K+lyOJiKIGGW5rdzTW/c2zz3d/ehgpzVP/rqC4NVr88MXspqHU4il5gmDajw==", "cpu": [ "ia32" ], @@ -11746,9 +11909,9 @@ } }, "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.5.29", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.5.29.tgz", - "integrity": "sha512-eD/gnxqKyZQQR0hR7TMkIlJ+nCF9dzYmVVNbYZWuA1Xy94aBPUsEk3Uw3oG7q6R3ErrEUPP0FNf2ztEnv+I+dw==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.12.1.tgz", + "integrity": "sha512-+Zh+JKDwiFqV5N9yAd2DhYVGPORGh9cfenu1ptr9yge+eHAf7vZJcC3rnj6QMR1QJh0Y5VC9+YBjRFjZVA7XDw==", "cpu": [ "x64" ], @@ -12710,73 +12873,16 @@ } }, "node_modules/@vitejs/plugin-basic-ssl": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.2.0.tgz", - "integrity": "sha512-mkQnxTkcldAzIsomk1UuLfAu9n+kpQ3JbHcpCp7d2Oo6ITtji8pHS3QToOWjhPFvNQSnhlkAjmGbhv2QvwO/7Q==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-2.0.0.tgz", + "integrity": "sha512-gc9Tjg8bUxBVSTzeWT3Njc0Cl3PakHFKdNfABnZWiUgbxqmHDEn7uECv3fHVylxoYgNzAcmU7ZrILz+BwSo3sA==", "dev": true, "license": "MIT", "engines": { - "node": ">=14.21.3" + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" }, "peerDependencies": { - "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0" - } - }, - "node_modules/@vitest/expect": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.0.9.tgz", - "integrity": "sha512-5eCqRItYgIML7NNVgJj6TVCmdzE7ZVgJhruW0ziSQV4V7PvLkDL1bBkBdcTs/VuIz0IxPb5da1IDSqc1TR9eig==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/spy": "3.0.9", - "@vitest/utils": "3.0.9", - "chai": "^5.2.0", - "tinyrainbow": "^2.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/pretty-format": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.0.9.tgz", - "integrity": "sha512-OW9F8t2J3AwFEwENg3yMyKWweF7oRJlMyHOMIhO5F3n0+cgQAJZBjNgrF8dLwFTEXl5jUqBLXd9QyyKv8zEcmA==", - "dev": true, - "license": "MIT", - "dependencies": { - "tinyrainbow": "^2.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/spy": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.0.9.tgz", - "integrity": "sha512-/CcK2UDl0aQ2wtkp3YVWldrpLRNCfVcIOFGlVGKO4R5eajsH393Z1yiXLVQ7vWsj26JOEjeZI0x5sm5P4OGUNQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "tinyspy": "^3.0.2" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/utils": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.0.9.tgz", - "integrity": "sha512-ilHM5fHhZ89MCp5aAaM9uhfl1c2JdxVxl3McqsdVyVNN6JffnEen8UMCdRTzOhGXNQGo5GNL9QugHrz727Wnng==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/pretty-format": "3.0.9", - "loupe": "^3.1.3", - "tinyrainbow": "^2.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" + "vite": "^6.0.0" } }, "node_modules/@webassemblyjs/ast": { @@ -13204,23 +13310,80 @@ "typescript-eslint": "^8.0.0" } }, + "node_modules/angular-eslint/node_modules/@angular-devkit/core": { + "version": "19.2.15", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-19.2.15.tgz", + "integrity": "sha512-pU2RZYX6vhd7uLSdLwPnuBcr0mXJSjp3EgOXKsrlQFQZevc+Qs+2JdXgIElnOT/aDqtRtriDmLlSbtdE8n3ZbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "8.17.1", + "ajv-formats": "3.0.1", + "jsonc-parser": "3.3.1", + "picomatch": "4.0.2", + "rxjs": "7.8.1", + "source-map": "0.7.4" + }, + "engines": { + "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^4.0.0" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/angular-eslint/node_modules/@angular-devkit/schematics": { + "version": "19.2.15", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-19.2.15.tgz", + "integrity": "sha512-kNOJ+3vekJJCQKWihNmxBkarJzNW09kP5a9E1SRNiQVNOUEeSwcRR0qYotM65nx821gNzjjhJXnAZ8OazWldrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@angular-devkit/core": "19.2.15", + "jsonc-parser": "3.3.1", + "magic-string": "0.30.17", + "ora": "5.4.1", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^18.19.1 || ^20.11.1 || >=22.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/angular-eslint/node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.1.0" + } + }, "node_modules/angular-oauth2-oidc": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/angular-oauth2-oidc/-/angular-oauth2-oidc-17.0.2.tgz", - "integrity": "sha512-zYgeLmAnu1g8XAYZK+csAsCQBDhgp9ffBv/eArEnujGxNPTeK00bREHWObtehflpQdSn+k9rY2D15ChCSydyVw==", + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/angular-oauth2-oidc/-/angular-oauth2-oidc-20.0.0.tgz", + "integrity": "sha512-7ehRolQFZgrpnWZlYpu4zWsWMavnB3nZZeGg3s1G5khLXXGw46qCV85QINHuYTxzFo+sjKjuqfqrb6dHjrgJdA==", "license": "MIT", "dependencies": { "tslib": "^2.5.2" }, "peerDependencies": { - "@angular/common": ">=14.0.0", - "@angular/core": ">=14.0.0" + "@angular/common": ">=20.0.0", + "@angular/core": ">=20.0.0" } }, "node_modules/angular-oauth2-oidc-jwks": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/angular-oauth2-oidc-jwks/-/angular-oauth2-oidc-jwks-17.0.2.tgz", - "integrity": "sha512-zG0udq9VihQdCKfGjhUfrIg35TbxU34tGfOG/pddxKwJkodMAFI34cNoZoVyZ53hPgeZSDPra2rYyixkH7bkKw==", + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/angular-oauth2-oidc-jwks/-/angular-oauth2-oidc-jwks-20.0.0.tgz", + "integrity": "sha512-5ZMpFdahcidzebPYQOLX40AjRf+LYwx3RuBVIyPWRMzsD7iiccTs0dpoz5E2ygoRKQjzZUWdyXLmSdeU92ORVw==", "license": "MIT", "dependencies": { "jsrsasign": "^11.0.0", @@ -13283,6 +13446,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -13292,6 +13456,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "license": "MIT", "dependencies": { "color-convert": "^2.0.1" @@ -13418,29 +13583,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/assertion-error": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", - "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - } - }, - "node_modules/ast-types": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.16.1.tgz", - "integrity": "sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==", - "dev": true, - "license": "MIT", - "dependencies": { - "tslib": "^2.0.1" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/async": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", @@ -13851,9 +13993,9 @@ "license": "MIT" }, "node_modules/beasties": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/beasties/-/beasties-0.3.2.tgz", - "integrity": "sha512-p4AF8uYzm9Fwu8m/hSVTCPXrRBPmB34hQpHsec2KOaR9CZmgoU8IOv4Cvwq4hgz2p4hLMNbsdNl5XeA6XbAQwA==", + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/beasties/-/beasties-0.3.4.tgz", + "integrity": "sha512-NmzN1zN1cvGccXFyZ73335+ASXwBlVWcUPssiUDIlFdfyatHPRRufjCd5w8oPaQPvVnf9ELklaCGb1gi9FBwIw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -13992,76 +14134,6 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/better-opn": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/better-opn/-/better-opn-3.0.2.tgz", - "integrity": "sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "open": "^8.0.4" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/better-opn/node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/better-opn/node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "license": "MIT", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/better-opn/node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/better-opn/node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/big.js": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", @@ -14192,6 +14264,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, "license": "MIT", "dependencies": { "fill-range": "^7.1.1" @@ -14717,23 +14790,6 @@ "node": ">=4" } }, - "node_modules/chai": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-5.2.0.tgz", - "integrity": "sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==", - "dev": true, - "license": "MIT", - "dependencies": { - "assertion-error": "^2.0.1", - "check-error": "^2.1.1", - "deep-eql": "^5.0.1", - "loupe": "^3.1.0", - "pathval": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/chalk": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", @@ -14765,20 +14821,11 @@ "dev": true, "license": "MIT" }, - "node_modules/check-error": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz", - "integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 16" - } - }, "node_modules/chokidar": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dev": true, "license": "MIT", "dependencies": { "readdirp": "^4.0.1" @@ -14926,6 +14973,7 @@ "version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, "license": "ISC", "dependencies": { "string-width": "^4.2.0", @@ -14940,12 +14988,14 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, "license": "MIT" }, "node_modules/cliui/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -14955,6 +15005,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", @@ -14969,6 +15020,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", @@ -15042,6 +15094,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "license": "MIT", "dependencies": { "color-name": "~1.1.4" @@ -15054,6 +15107,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, "license": "MIT" }, "node_modules/colord": { @@ -15256,6 +15310,7 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true, "license": "MIT" }, "node_modules/cookie": { @@ -15303,18 +15358,17 @@ } }, "node_modules/copy-webpack-plugin": { - "version": "12.0.2", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-12.0.2.tgz", - "integrity": "sha512-SNwdBeHyII+rWvee/bTnAYyO8vfVdcSTud4EIb6jcZ8inLeWucJE0DnxXQBjlQ5zlteuuvooGQy3LIyGxhvlOA==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-13.0.0.tgz", + "integrity": "sha512-FgR/h5a6hzJqATDGd9YG41SeDViH+0bkHn6WNXCi5zKAZkeESeSxLySSsFLHqLEVCh0E+rITmCf0dusXWYukeQ==", "dev": true, "license": "MIT", "dependencies": { - "fast-glob": "^3.3.2", "glob-parent": "^6.0.1", - "globby": "^14.0.0", "normalize-path": "^3.0.0", "schema-utils": "^4.2.0", - "serialize-javascript": "^6.0.2" + "serialize-javascript": "^6.0.2", + "tinyglobby": "^0.2.12" }, "engines": { "node": ">= 18.12.0" @@ -16060,16 +16114,6 @@ } } }, - "node_modules/deep-eql": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", - "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/deep-equal": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", @@ -16578,7 +16622,6 @@ "version": "10.4.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz", "integrity": "sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==", - "dev": true, "license": "MIT" }, "node_modules/emojis-list": { @@ -16605,7 +16648,7 @@ "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "devOptional": true, + "dev": true, "license": "MIT", "dependencies": { "iconv-lite": "^0.6.2" @@ -16804,9 +16847,9 @@ "license": "MIT" }, "node_modules/esbuild": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.4.tgz", - "integrity": "sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.5.tgz", + "integrity": "sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -16817,50 +16860,37 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.25.4", - "@esbuild/android-arm": "0.25.4", - "@esbuild/android-arm64": "0.25.4", - "@esbuild/android-x64": "0.25.4", - "@esbuild/darwin-arm64": "0.25.4", - "@esbuild/darwin-x64": "0.25.4", - "@esbuild/freebsd-arm64": "0.25.4", - "@esbuild/freebsd-x64": "0.25.4", - "@esbuild/linux-arm": "0.25.4", - "@esbuild/linux-arm64": "0.25.4", - "@esbuild/linux-ia32": "0.25.4", - "@esbuild/linux-loong64": "0.25.4", - "@esbuild/linux-mips64el": "0.25.4", - "@esbuild/linux-ppc64": "0.25.4", - "@esbuild/linux-riscv64": "0.25.4", - "@esbuild/linux-s390x": "0.25.4", - "@esbuild/linux-x64": "0.25.4", - "@esbuild/netbsd-arm64": "0.25.4", - "@esbuild/netbsd-x64": "0.25.4", - "@esbuild/openbsd-arm64": "0.25.4", - "@esbuild/openbsd-x64": "0.25.4", - "@esbuild/sunos-x64": "0.25.4", - "@esbuild/win32-arm64": "0.25.4", - "@esbuild/win32-ia32": "0.25.4", - "@esbuild/win32-x64": "0.25.4" - } - }, - "node_modules/esbuild-register": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/esbuild-register/-/esbuild-register-3.6.0.tgz", - "integrity": "sha512-H2/S7Pm8a9CL1uhp9OvjwrBh5Pvx0H8qVOxNu8Wed9Y7qv56MPtq+GGM8RJpq6glYJn9Wspr8uw7l55uyinNeg==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.3.4" - }, - "peerDependencies": { - "esbuild": ">=0.12 <1" + "@esbuild/aix-ppc64": "0.25.5", + "@esbuild/android-arm": "0.25.5", + "@esbuild/android-arm64": "0.25.5", + "@esbuild/android-x64": "0.25.5", + "@esbuild/darwin-arm64": "0.25.5", + "@esbuild/darwin-x64": "0.25.5", + "@esbuild/freebsd-arm64": "0.25.5", + "@esbuild/freebsd-x64": "0.25.5", + "@esbuild/linux-arm": "0.25.5", + "@esbuild/linux-arm64": "0.25.5", + "@esbuild/linux-ia32": "0.25.5", + "@esbuild/linux-loong64": "0.25.5", + "@esbuild/linux-mips64el": "0.25.5", + "@esbuild/linux-ppc64": "0.25.5", + "@esbuild/linux-riscv64": "0.25.5", + "@esbuild/linux-s390x": "0.25.5", + "@esbuild/linux-x64": "0.25.5", + "@esbuild/netbsd-arm64": "0.25.5", + "@esbuild/netbsd-x64": "0.25.5", + "@esbuild/openbsd-arm64": "0.25.5", + "@esbuild/openbsd-x64": "0.25.5", + "@esbuild/sunos-x64": "0.25.5", + "@esbuild/win32-arm64": "0.25.5", + "@esbuild/win32-ia32": "0.25.5", + "@esbuild/win32-x64": "0.25.5" } }, "node_modules/esbuild-wasm": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.25.4.tgz", - "integrity": "sha512-2HlCS6rNvKWaSKhWaG/YIyRsTsL3gUrMP2ToZMBIjw9LM7vVcIs+rz8kE2vExvTJgvM8OKPqNpcHawY/BQc/qQ==", + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.25.5.tgz", + "integrity": "sha512-V/rbdOws2gDcnCAECfPrajhuafI0WY4WumUgc8ZHwOLnvmM0doLQ+dqvVFI2qkVxQsvo6880aC9IjpyDqcwwTw==", "dev": true, "license": "MIT", "bin": { @@ -17468,6 +17498,7 @@ "version": "3.3.3", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, "license": "MIT", "dependencies": { "@nodelib/fs.stat": "^2.0.2", @@ -17484,6 +17515,7 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, "license": "ISC", "dependencies": { "is-glob": "^4.0.1" @@ -17527,6 +17559,7 @@ "version": "1.19.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dev": true, "license": "ISC", "dependencies": { "reusify": "^1.0.4" @@ -17569,7 +17602,6 @@ "version": "6.4.6", "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.6.tgz", "integrity": "sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==", - "dev": true, "license": "MIT", "peerDependencies": { "picomatch": "^3 || ^4" @@ -17656,6 +17688,7 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" @@ -18305,7 +18338,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.3.0.tgz", "integrity": "sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=18" @@ -18572,63 +18604,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/globby": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-14.1.0.tgz", - "integrity": "sha512-0Ia46fDOaT7k4og1PDW4YbodWWr3scS2vAr2lTbsplOt2WkKp0vQbkI9wKis/T5LV/dqPjO3bpS/z6GTJB82LA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@sindresorhus/merge-streams": "^2.1.0", - "fast-glob": "^3.3.3", - "ignore": "^7.0.3", - "path-type": "^6.0.0", - "slash": "^5.1.0", - "unicorn-magic": "^0.3.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globby/node_modules/ignore": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", - "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/globby/node_modules/path-type": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-6.0.0.tgz", - "integrity": "sha512-Vj7sf++t5pBD637NSfkxpHSMfWaeig5+DKWLhcqIYx6mWQz5hdJTGDVMQiJcw1ZYkhs7AazKDGpRVji1LJCZUQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globby/node_modules/slash": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", - "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/gopd": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", @@ -19226,7 +19201,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "devOptional": true, + "dev": true, "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" @@ -19684,6 +19659,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -19735,6 +19711,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" @@ -19802,6 +19779,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, "license": "MIT", "engines": { "node": ">=0.12.0" @@ -22340,9 +22318,9 @@ } }, "node_modules/less": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/less/-/less-4.2.2.tgz", - "integrity": "sha512-tkuLHQlvWUTeQ3doAqnHbNn8T6WX1KA8yvbKG9x4VtKtIjHsVKQZCH11zRgAfbDAXC2UNIg/K9BYAAcEzUIrNg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/less/-/less-4.3.0.tgz", + "integrity": "sha512-X9RyH9fvemArzfdP8Pi3irr7lor2Ok4rOttDXBhlwDg+wKQsXOXgHWduAJE1EsF7JJx0w0bcO6BC6tCKKYnXKA==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -22354,7 +22332,7 @@ "lessc": "bin/lessc" }, "engines": { - "node": ">=6" + "node": ">=14" }, "optionalDependencies": { "errno": "^0.1.1", @@ -22367,9 +22345,9 @@ } }, "node_modules/less-loader": { - "version": "12.2.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-12.2.0.tgz", - "integrity": "sha512-MYUxjSQSBUQmowc0l5nPieOYwMzGPUaTzB6inNW/bdPEG9zOL3eAAD1Qw5ZxSPk7we5dMojHwNODYMV1hq4EVg==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-12.3.0.tgz", + "integrity": "sha512-0M6+uYulvYIWs52y0LqN4+QM9TqWAohYSNTo4htE8Z7Cn3G/qQMEmktfHmyJT23k+20kU9zHH2wrfFXkxNLtVw==", "dev": true, "license": "MIT", "engines": { @@ -22507,9 +22485,9 @@ } }, "node_modules/listr2": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.2.5.tgz", - "integrity": "sha512-iyAZCeyD+c1gPyE9qpFu8af0Y+MRtmKOncdGoA2S5EY8iFq99dmmvkNnHiWo+pj0s7yH7l3KPIgee77tKpXPWQ==", + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.3.3.tgz", + "integrity": "sha512-LWzX2KsqcB1wqQ4AHgYb4RsDXauQiqhjLk+6hjbaeHG4zpjjVAB6wC/gz6X0l+Du1cN3pUB5ZlrvTbhGSNnUQQ==", "dev": true, "license": "MIT", "dependencies": { @@ -22592,9 +22570,9 @@ } }, "node_modules/lmdb": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/lmdb/-/lmdb-3.2.6.tgz", - "integrity": "sha512-SuHqzPl7mYStna8WRotY8XX/EUZBjjv3QyKIByeCLFfC9uXT/OIHByEcA07PzbMfQAM0KYJtLgtpMRlIe5dErQ==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lmdb/-/lmdb-3.3.0.tgz", + "integrity": "sha512-MgJocUI6QEiSXQBFWLeyo1R7eQj8Rke5dlPxX0KFwli8/bsCxpM/KbXO5y0qmV/5llQ3wpneDWcTYxa+4vn8iQ==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -22610,12 +22588,13 @@ "download-lmdb-prebuilds": "bin/download-prebuilds.js" }, "optionalDependencies": { - "@lmdb/lmdb-darwin-arm64": "3.2.6", - "@lmdb/lmdb-darwin-x64": "3.2.6", - "@lmdb/lmdb-linux-arm": "3.2.6", - "@lmdb/lmdb-linux-arm64": "3.2.6", - "@lmdb/lmdb-linux-x64": "3.2.6", - "@lmdb/lmdb-win32-x64": "3.2.6" + "@lmdb/lmdb-darwin-arm64": "3.3.0", + "@lmdb/lmdb-darwin-x64": "3.3.0", + "@lmdb/lmdb-linux-arm": "3.3.0", + "@lmdb/lmdb-linux-arm64": "3.3.0", + "@lmdb/lmdb-linux-x64": "3.3.0", + "@lmdb/lmdb-win32-arm64": "3.3.0", + "@lmdb/lmdb-win32-x64": "3.3.0" } }, "node_modules/lmdb/node_modules/node-addon-api": { @@ -22911,13 +22890,6 @@ "dev": true, "license": "MIT" }, - "node_modules/loupe": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.3.tgz", - "integrity": "sha512-kkIp7XSkP78ZxJEsSxW3712C6teJVoeHHwgo9zJ380de7IYyJ2ISlxojcH2pC5OFLewESmnRi/+XCDIEEVyoug==", - "dev": true, - "license": "MIT" - }, "node_modules/lower-case": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", @@ -23107,6 +23079,7 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 8" @@ -23126,6 +23099,7 @@ "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, "license": "MIT", "dependencies": { "braces": "^3.0.3", @@ -23139,6 +23113,7 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, "license": "MIT", "engines": { "node": ">=8.6" @@ -24082,16 +24057,16 @@ } }, "node_modules/npm-packlist": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-9.0.0.tgz", - "integrity": "sha512-8qSayfmHJQTx3nJWYbbUmflpyarbLMBc6LCAjYsiGtXxDB68HaZpb8re6zeaLGxZzDuMdhsg70jryJe+RrItVQ==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-10.0.0.tgz", + "integrity": "sha512-rht9U6nS8WOBDc53eipZNPo5qkAV4X2rhKE2Oj1DYUQ3DieXfj0mKkVmjnf3iuNdtMd8WfLdi2L6ASkD/8a+Kg==", "dev": true, "license": "ISC", "dependencies": { "ignore-walk": "^7.0.0" }, "engines": { - "node": "^18.17.0 || >=20.5.0" + "node": "^20.17.0 || >=22.9.0" } }, "node_modules/npm-pick-manifest": { @@ -24826,9 +24801,9 @@ } }, "node_modules/open": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-10.1.0.tgz", - "integrity": "sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==", + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/open/-/open-10.1.2.tgz", + "integrity": "sha512-cxN6aIDPz6rm8hbebcP7vrQNhvRcveZoJU72Y7vskh4oIm+BZwBECnx5nTmrlres1Qapvx27Qo1Auukpf8PKXw==", "dev": true, "license": "MIT", "dependencies": { @@ -24975,6 +24950,31 @@ "node": ">=0.10.0" } }, + "node_modules/oxc-resolver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/oxc-resolver/-/oxc-resolver-5.3.0.tgz", + "integrity": "sha512-FHqtZx0idP5QRPSNcI5g2ItmADg7fhR3XIeWg5eRMGfp44xqRpfkdvo+EX4ZceqV9bxvl0Z8vaqMqY0gYaNYNA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Boshen" + }, + "optionalDependencies": { + "@oxc-resolver/binding-darwin-arm64": "5.3.0", + "@oxc-resolver/binding-darwin-x64": "5.3.0", + "@oxc-resolver/binding-freebsd-x64": "5.3.0", + "@oxc-resolver/binding-linux-arm-gnueabihf": "5.3.0", + "@oxc-resolver/binding-linux-arm64-gnu": "5.3.0", + "@oxc-resolver/binding-linux-arm64-musl": "5.3.0", + "@oxc-resolver/binding-linux-riscv64-gnu": "5.3.0", + "@oxc-resolver/binding-linux-s390x-gnu": "5.3.0", + "@oxc-resolver/binding-linux-x64-gnu": "5.3.0", + "@oxc-resolver/binding-linux-x64-musl": "5.3.0", + "@oxc-resolver/binding-wasm32-wasi": "5.3.0", + "@oxc-resolver/binding-win32-arm64-msvc": "5.3.0", + "@oxc-resolver/binding-win32-x64-msvc": "5.3.0" + } + }, "node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -25072,9 +25072,9 @@ "license": "BlueOak-1.0.0" }, "node_modules/pacote": { - "version": "20.0.0", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-20.0.0.tgz", - "integrity": "sha512-pRjC5UFwZCgx9kUFDVM9YEahv4guZ1nSLqwmWiLUnDbGsjs+U5w7z6Uc8HNR1a6x8qnu5y9xtGE6D1uAuYz+0A==", + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-21.0.0.tgz", + "integrity": "sha512-lcqexq73AMv6QNLo7SOpz0JJoaGdS3rBFgF122NZVl1bApo2mfu+XzUBU/X/XsiJu+iUmKpekRayqQYAs+PhkA==", "dev": true, "license": "ISC", "dependencies": { @@ -25087,7 +25087,7 @@ "fs-minipass": "^3.0.0", "minipass": "^7.0.2", "npm-package-arg": "^12.0.0", - "npm-packlist": "^9.0.0", + "npm-packlist": "^10.0.0", "npm-pick-manifest": "^10.0.0", "npm-registry-fetch": "^18.0.0", "proc-log": "^5.0.0", @@ -25100,7 +25100,7 @@ "pacote": "bin/index.js" }, "engines": { - "node": "^18.17.0 || >=20.5.0" + "node": "^20.17.0 || >=22.9.0" } }, "node_modules/param-case": { @@ -25190,7 +25190,6 @@ "version": "7.3.0", "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", - "devOptional": true, "license": "MIT", "dependencies": { "entities": "^6.0.0" @@ -25200,13 +25199,13 @@ } }, "node_modules/parse5-html-rewriting-stream": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-7.0.0.tgz", - "integrity": "sha512-mazCyGWkmCRWDI15Zp+UiCqMp/0dgEmkZRvhlsqqKYr4SsVm/TvnSpD9fCvqCA2zoWJcfRym846ejWBBHRiYEg==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-7.1.0.tgz", + "integrity": "sha512-2ifK6Jb+ONoqOy5f+cYHsqvx1obHQdvIk13Jmt/5ezxP0U9p+fqd+R6O73KblGswyuzBYfetmsfK9ThMgnuPPg==", "dev": true, "license": "MIT", "dependencies": { - "entities": "^4.3.0", + "entities": "^6.0.0", "parse5": "^7.0.0", "parse5-sax-parser": "^7.0.0" }, @@ -25215,9 +25214,9 @@ } }, "node_modules/parse5-html-rewriting-stream/node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -25244,7 +25243,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", - "devOptional": true, "license": "BSD-2-Clause", "engines": { "node": ">=0.12" @@ -25362,16 +25360,6 @@ "node": ">=6" } }, - "node_modules/pathval": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz", - "integrity": "sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 14.16" - } - }, "node_modules/pdfjs-dist": { "version": "4.8.69", "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.8.69.tgz", @@ -25395,7 +25383,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", - "dev": true, "license": "MIT", "engines": { "node": ">=12" @@ -25425,11 +25412,14 @@ } }, "node_modules/piscina": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.8.0.tgz", - "integrity": "sha512-EZJb+ZxDrQf3dihsUL7p42pjNyrNIFJCrRHPMgxu/svsj+P3xS3fuEWp7k2+rfsavfl1N0G29b1HGs7J0m8rZA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-5.0.0.tgz", + "integrity": "sha512-R+arufwL7sZvGjAhSMK3TfH55YdGOqhpKXkcwQJr432AAnJX/xxX19PA4QisrmJ+BTTfZVggaz6HexbkQq1l1Q==", "dev": true, "license": "MIT", + "engines": { + "node": ">=18.x" + }, "optionalDependencies": { "@napi-rs/nice": "^1.0.1" } @@ -26685,6 +26675,7 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, "funding": [ { "type": "github", @@ -26790,31 +26781,6 @@ "node": ">=0.10.0" } }, - "node_modules/react": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/react/-/react-19.1.0.tgz", - "integrity": "sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dom": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.1.0.tgz", - "integrity": "sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "scheduler": "^0.26.0" - }, - "peerDependencies": { - "react": "^19.1.0" - } - }, "node_modules/react-is": { "version": "17.0.2", "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", @@ -26822,17 +26788,6 @@ "dev": true, "license": "MIT" }, - "node_modules/react-refresh": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", - "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", @@ -26872,6 +26827,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 14.18.0" @@ -26881,33 +26837,6 @@ "url": "https://paulmillr.com/funding/" } }, - "node_modules/recast": { - "version": "0.23.11", - "resolved": "https://registry.npmjs.org/recast/-/recast-0.23.11.tgz", - "integrity": "sha512-YTUo+Flmw4ZXiWfQKGcwwc11KnoRAYgzAE2E7mXKCjSviTKShtxBsN6YUUBB2gtaBzKzeKunxhUwNHQuRryhWA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ast-types": "^0.16.1", - "esprima": "~4.0.0", - "source-map": "~0.6.1", - "tiny-invariant": "^1.3.3", - "tslib": "^2.0.1" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/recast/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/redent": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", @@ -26926,6 +26855,7 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.2.2.tgz", "integrity": "sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==", + "dev": true, "license": "Apache-2.0" }, "node_modules/regenerate": { @@ -26948,13 +26878,6 @@ "node": ">=4" } }, - "node_modules/regenerator-runtime": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", - "dev": true, - "license": "MIT" - }, "node_modules/regex-parser": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.3.1.tgz", @@ -27290,6 +27213,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -27475,6 +27399,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, "license": "MIT", "engines": { "iojs": ">=1.0.0", @@ -27524,12 +27449,11 @@ } }, "node_modules/rollup": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.43.0.tgz", - "integrity": "sha512-wdN2Kd3Twh8MAEOEJZsuxuLKCsBEo4PVNLK6tQWAn10VhsVewQLzcucMgLolRlhFybGxfclbPeEYBaP6RvUFGg==", + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.40.2.tgz", + "integrity": "sha512-tfUOg6DTP4rhQ3VjOO6B4wyrJnGOX85requAXvqYTHsOgb2TFJdZ3aWpT8W2kPoypSGP7dZUyzxJ9ee4buM5Fg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@types/estree": "1.0.7" }, @@ -27541,26 +27465,26 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.43.0", - "@rollup/rollup-android-arm64": "4.43.0", - "@rollup/rollup-darwin-arm64": "4.43.0", - "@rollup/rollup-darwin-x64": "4.43.0", - "@rollup/rollup-freebsd-arm64": "4.43.0", - "@rollup/rollup-freebsd-x64": "4.43.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.43.0", - "@rollup/rollup-linux-arm-musleabihf": "4.43.0", - "@rollup/rollup-linux-arm64-gnu": "4.43.0", - "@rollup/rollup-linux-arm64-musl": "4.43.0", - "@rollup/rollup-linux-loongarch64-gnu": "4.43.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.43.0", - "@rollup/rollup-linux-riscv64-gnu": "4.43.0", - "@rollup/rollup-linux-riscv64-musl": "4.43.0", - "@rollup/rollup-linux-s390x-gnu": "4.43.0", - "@rollup/rollup-linux-x64-gnu": "4.43.0", - "@rollup/rollup-linux-x64-musl": "4.43.0", - "@rollup/rollup-win32-arm64-msvc": "4.43.0", - "@rollup/rollup-win32-ia32-msvc": "4.43.0", - "@rollup/rollup-win32-x64-msvc": "4.43.0", + "@rollup/rollup-android-arm-eabi": "4.40.2", + "@rollup/rollup-android-arm64": "4.40.2", + "@rollup/rollup-darwin-arm64": "4.40.2", + "@rollup/rollup-darwin-x64": "4.40.2", + "@rollup/rollup-freebsd-arm64": "4.40.2", + "@rollup/rollup-freebsd-x64": "4.40.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.40.2", + "@rollup/rollup-linux-arm-musleabihf": "4.40.2", + "@rollup/rollup-linux-arm64-gnu": "4.40.2", + "@rollup/rollup-linux-arm64-musl": "4.40.2", + "@rollup/rollup-linux-loongarch64-gnu": "4.40.2", + "@rollup/rollup-linux-powerpc64le-gnu": "4.40.2", + "@rollup/rollup-linux-riscv64-gnu": "4.40.2", + "@rollup/rollup-linux-riscv64-musl": "4.40.2", + "@rollup/rollup-linux-s390x-gnu": "4.40.2", + "@rollup/rollup-linux-x64-gnu": "4.40.2", + "@rollup/rollup-linux-x64-musl": "4.40.2", + "@rollup/rollup-win32-arm64-msvc": "4.40.2", + "@rollup/rollup-win32-ia32-msvc": "4.40.2", + "@rollup/rollup-win32-x64-msvc": "4.40.2", "fsevents": "~2.3.2" } }, @@ -27569,8 +27493,7 @@ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/rrweb-cssom": { "version": "0.8.0", @@ -27605,6 +27528,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, "funding": [ { "type": "github", @@ -27676,13 +27600,13 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "devOptional": true, + "dev": true, "license": "MIT" }, "node_modules/sass": { - "version": "1.85.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.85.0.tgz", - "integrity": "sha512-3ToiC1xZ1Y8aU7+CkgCI/tqyuPXEmYGJXO7H4uqp0xkLXUqp88rQQ4j1HmP37xSJLbCJPaIiv+cT1y+grssrww==", + "version": "1.88.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.88.0.tgz", + "integrity": "sha512-sF6TWQqjFvr4JILXzG4ucGOLELkESHL+I5QJhh7CNaE+Yge0SI+ehCatsXhJ7ymU1hAFcIS3/PBpjdIbXoyVbg==", "dev": true, "license": "MIT", "dependencies": { @@ -28137,14 +28061,6 @@ } } }, - "node_modules/scheduler": { - "version": "0.26.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz", - "integrity": "sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/schema-utils": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.2.tgz", @@ -28212,9 +28128,10 @@ } }, "node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "devOptional": true, "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -29048,6 +28965,19 @@ "node": ">= 0.8" } }, + "node_modules/stdin-discarder": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/stdin-discarder/-/stdin-discarder-0.2.2.tgz", + "integrity": "sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/stop-iteration-iterator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", @@ -29062,63 +28992,6 @@ "node": ">= 0.4" } }, - "node_modules/storybook": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/storybook/-/storybook-9.0.5.tgz", - "integrity": "sha512-4RIyN7P6R6umcgAB6jv3GSIDA0qw9iRcm3KnIR6VhLKLKlbbmDsUs/JmjLobxL5W+LB4zbCbrBcFsW7AL2MSyA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@storybook/global": "^5.0.0", - "@testing-library/jest-dom": "^6.6.3", - "@testing-library/user-event": "^14.6.1", - "@vitest/expect": "3.0.9", - "@vitest/spy": "3.0.9", - "better-opn": "^3.0.2", - "esbuild": "^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 || ^0.25.0", - "esbuild-register": "^3.5.0", - "recast": "^0.23.5", - "semver": "^7.6.2", - "ws": "^8.18.0" - }, - "bin": { - "storybook": "bin/index.cjs" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/storybook" - }, - "peerDependencies": { - "prettier": "^2 || ^3" - }, - "peerDependenciesMeta": { - "prettier": { - "optional": true - } - } - }, - "node_modules/storybook/node_modules/ws": { - "version": "8.18.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.2.tgz", - "integrity": "sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "node_modules/streamroller": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz", @@ -29197,7 +29070,6 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", - "dev": true, "license": "MIT", "dependencies": { "emoji-regex": "^10.3.0", @@ -29248,7 +29120,6 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", - "dev": true, "license": "MIT", "engines": { "node": ">=12" @@ -29261,7 +29132,6 @@ "version": "7.1.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^6.0.1" @@ -29277,6 +29147,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" @@ -29730,16 +29601,6 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/symbol-observable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", - "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10" - } - }, "node_modules/symbol-tree": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", @@ -30049,9 +29910,9 @@ "license": "MIT" }, "node_modules/terser": { - "version": "5.39.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.39.0.tgz", - "integrity": "sha512-LBAhFyLho16harJoWMg/nZsQYgTrg5jXOn2nCYjRUcZZEdE3qa2zb8QEDRUGVZBW4rlazf2fxkg8tztybTaqWw==", + "version": "5.39.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.39.1.tgz", + "integrity": "sha512-Mm6+uad0ZuDtcV8/4uOZQDQ8RuiC5Pu+iZRedJtF7yA/27sPL7d++In/AJKpWZlU3SYMPPkVfwetn6sgZ66pUA==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -30222,18 +30083,10 @@ "dev": true, "license": "MIT" }, - "node_modules/tiny-invariant": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", - "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==", - "dev": true, - "license": "MIT" - }, "node_modules/tinyglobby": { "version": "0.2.14", "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz", "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==", - "dev": true, "license": "MIT", "dependencies": { "fdir": "^6.4.4", @@ -30246,26 +30099,6 @@ "url": "https://github.com/sponsors/SuperchupuDev" } }, - "node_modules/tinyrainbow": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-2.0.0.tgz", - "integrity": "sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/tinyspy": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz", - "integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/tldts": { "version": "6.1.86", "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.86.tgz", @@ -30307,6 +30140,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, "license": "MIT", "dependencies": { "is-number": "^7.0.0" @@ -30600,19 +30434,6 @@ } } }, - "node_modules/ts-jest/node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/ts-jest/node_modules/type-fest": { "version": "4.41.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", @@ -30849,19 +30670,6 @@ "node": ">=4" } }, - "node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/type-is": { "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", @@ -30894,9 +30702,10 @@ } }, "node_modules/typescript": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", - "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "dev": true, "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -30999,19 +30808,6 @@ "node": ">=4" } }, - "node_modules/unicorn-magic": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz", - "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/union": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/union/-/union-0.5.0.tgz", @@ -31244,7 +31040,6 @@ "integrity": "sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "esbuild": "^0.25.0", "fdir": "^6.4.4", @@ -31526,14 +31321,15 @@ } }, "node_modules/webpack": { - "version": "5.98.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.98.0.tgz", - "integrity": "sha512-UFynvx+gM44Gv9qFgj0acCQK2VE1CtdfwFdimkapco3hlPCJ/zeq73n2yVKimVbtm+TnApIugGhLJnkU6gjYXA==", + "version": "5.99.8", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.99.8.tgz", + "integrity": "sha512-lQ3CPiSTpfOnrEGeXDwoq5hIGzSjmwD72GdfVzF7CQAI7t47rJG9eDWvcEkEn3CUQymAElVvDg3YNTlCYj+qUQ==", "dev": true, "license": "MIT", "dependencies": { "@types/eslint-scope": "^3.7.7", "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", "@webassemblyjs/ast": "^1.14.1", "@webassemblyjs/wasm-edit": "^1.14.1", "@webassemblyjs/wasm-parser": "^1.14.1", @@ -31550,7 +31346,7 @@ "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", - "schema-utils": "^4.3.0", + "schema-utils": "^4.3.2", "tapable": "^2.1.1", "terser-webpack-plugin": "^5.3.11", "watchpack": "^2.4.1", @@ -32274,6 +32070,7 @@ "version": "17.7.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, "license": "MIT", "dependencies": { "cliui": "^8.0.1", @@ -32292,6 +32089,7 @@ "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, "license": "ISC", "engines": { "node": ">=12" @@ -32301,12 +32099,14 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, "license": "MIT" }, "node_modules/yargs/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -32316,6 +32116,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", diff --git a/package.json b/package.json index 8d1e846d1..0a26f80db 100644 --- a/package.json +++ b/package.json @@ -20,29 +20,29 @@ }, "private": true, "dependencies": { - "@angular/animations": "19.1.7", - "@angular/cdk": "19.1.5", - "@angular/common": "19.1.7", - "@angular/compiler": "19.1.7", - "@angular/core": "19.1.7", - "@angular/forms": "19.1.7", - "@angular/localize": "19.1.7", - "@angular/platform-browser": "19.1.7", - "@angular/platform-browser-dynamic": "19.1.7", - "@angular/router": "19.1.7", - "@angular/service-worker": "19.1.7", + "@angular/animations": "20.0.3", + "@angular/cdk": "20.0.3", + "@angular/common": "20.0.3", + "@angular/compiler": "20.0.3", + "@angular/core": "20.0.3", + "@angular/forms": "20.0.3", + "@angular/localize": "20.0.3", + "@angular/platform-browser": "20.0.3", + "@angular/platform-browser-dynamic": "20.0.3", + "@angular/router": "20.0.3", + "@angular/service-worker": "20.0.3", "@microsoft/signalr": "^8.0.7", - "@ng-icons/core": "^29.5.1", - "@ng-icons/material-icons": "^29.5.1", - "@ngrx/component-store": "19.1.0", - "@ngrx/effects": "19.1.0", - "@ngrx/entity": "19.1.0", - "@ngrx/operators": "19.1.0", - "@ngrx/signals": "19.1.0", - "@ngrx/store": "19.1.0", - "@ngrx/store-devtools": "19.1.0", - "angular-oauth2-oidc": "^17.0.2", - "angular-oauth2-oidc-jwks": "^17.0.2", + "@ng-icons/core": "32.0.0", + "@ng-icons/material-icons": "32.0.0", + "@ngrx/component-store": "19.2.1", + "@ngrx/effects": "19.2.1", + "@ngrx/entity": "19.2.1", + "@ngrx/operators": "19.2.1", + "@ngrx/signals": "19.2.1", + "@ngrx/store": "19.2.1", + "@ngrx/store-devtools": "19.2.1", + "angular-oauth2-oidc": "20.0.0", + "angular-oauth2-oidc-jwks": "20.0.0", "date-fns": "^4.1.0", "lodash": "^4.17.21", "moment": "^2.30.1", @@ -58,15 +58,15 @@ "zone.js": "~0.15.0" }, "devDependencies": { - "@angular-devkit/build-angular": "^19.2.9", - "@angular-devkit/core": "19.2.6", - "@angular-devkit/schematics": "19.2.6", - "@angular/cli": "19.2.6", - "@angular/compiler-cli": "19.1.7", - "@angular/language-service": "19.1.7", - "@angular/pwa": "^19.2.0", + "@angular-devkit/build-angular": "20.0.2", + "@angular-devkit/core": "20.0.2", + "@angular-devkit/schematics": "20.0.2", + "@angular/cli": "20.0.2", + "@angular/compiler-cli": "20.0.3", + "@angular/language-service": "20.0.3", + "@angular/pwa": "20.0.2", "@eslint/js": "^9.8.0", - "@ngneat/spectator": "^19.0.0", + "@ngneat/spectator": "19.6.2", "@nx/angular": "21.2.0", "@nx/eslint": "21.2.0", "@nx/eslint-plugin": "21.2.0", @@ -75,17 +75,17 @@ "@nx/storybook": "21.2.0", "@nx/web": "21.2.0", "@nx/workspace": "21.2.0", - "@schematics/angular": "^19.1.8", + "@schematics/angular": "20.0.2", "@softarc/eslint-plugin-sheriff": "^0.18.0", - "@softarc/sheriff-core": "^0.18.0", - "@storybook/angular": "9.0.5", - "@storybook/core-server": "8.6.11", - "@storybook/jest": "^0.2.3", - "@storybook/test-runner": "0.22.0", - "@storybook/testing-library": "^0.2.2", - "@swc-node/register": "~1.9.1", - "@swc/core": "~1.5.7", - "@swc/helpers": "~0.5.11", + "@softarc/sheriff-core": "0.18.0", + "@storybook/angular": "9.0.9", + "@storybook/core-server": "8.6.14", + "@storybook/jest": "0.2.3", + "@storybook/test-runner": "0.23.0", + "@storybook/testing-library": "0.2.2", + "@swc-node/register": "1.10.10", + "@swc/core": "1.12.1", + "@swc/helpers": "0.5.17", "@types/jest": "^29.5.12", "@types/lodash": "^4.17.16", "@types/node": "18.16.9", @@ -102,17 +102,16 @@ "jest-environment-node": "^29.7.0", "jest-junit": "^16.0.0", "jest-preset-angular": "14.6.0", - "ng-mocks": "^14.13.4", + "ng-mocks": "14.13.5", "ng-swagger-gen": "^2.3.1", "nx": "21.2.0", "postcss": "^8.5.3", "prettier": "^3.5.2", "pretty-quick": "~4.0.0", - "storybook": "9.0.5", "tailwindcss": "^3.4.14", "ts-jest": "^29.1.0", "ts-node": "10.9.1", - "typescript": "~5.6.0", + "typescript": "5.8.3", "typescript-eslint": "^8.19.0" }, "engines": {