diff --git a/src/app/components/empty-cart-icon/empty-cart-icon.component.html b/src/app/components/empty-cart-icon/empty-cart-icon.component.html deleted file mode 100644 index 18d41ef..0000000 --- a/src/app/components/empty-cart-icon/empty-cart-icon.component.html +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/app/components/empty-cart-icon/empty-cart-icon.component.scss b/src/app/components/empty-cart-icon/empty-cart-icon.component.scss deleted file mode 100644 index 6cbbc40..0000000 --- a/src/app/components/empty-cart-icon/empty-cart-icon.component.scss +++ /dev/null @@ -1,7 +0,0 @@ -:host { - display: block; - - svg { - color: var(--primary-color); - } -} diff --git a/src/app/components/empty-cart-icon/empty-cart-icon.component.ts b/src/app/components/empty-cart-icon/empty-cart-icon.component.ts deleted file mode 100644 index 0490eb1..0000000 --- a/src/app/components/empty-cart-icon/empty-cart-icon.component.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { Component, ChangeDetectionStrategy } from '@angular/core'; - -@Component({ - selector: 'app-empty-cart-icon', - templateUrl: './empty-cart-icon.component.html', - styleUrls: ['./empty-cart-icon.component.scss'], - changeDetection: ChangeDetectionStrategy.OnPush -}) -export class EmptyCartIconComponent {} diff --git a/src/app/components/items-carousel/items-carousel.component.html b/src/app/components/items-carousel/items-carousel.component.html index b5cd63c..b3a33d7 100644 --- a/src/app/components/items-carousel/items-carousel.component.html +++ b/src/app/components/items-carousel/items-carousel.component.html @@ -36,9 +36,7 @@ @if (product.rating) {
- - - + {{ product.rating }} ({{ product.callbacks?.length || 0 }})
@@ -54,11 +52,7 @@ } diff --git a/src/app/components/items-carousel/items-carousel.component.ts b/src/app/components/items-carousel/items-carousel.component.ts index 6a63bb7..192e635 100644 --- a/src/app/components/items-carousel/items-carousel.component.ts +++ b/src/app/components/items-carousel/items-carousel.component.ts @@ -11,11 +11,12 @@ import { LanguageService } from '../../services/language.service'; import { LangRoutePipe } from '../../pipes/lang-route.pipe'; import { TranslatePipe } from '../../i18n/translate.pipe'; import { ProductFacade } from '../../facades/platform/product.facade'; +import { IconComponent } from '../../shared/ui/icon/icon.component'; @Component({ selector: 'app-items-carousel', templateUrl: './items-carousel.component.html', - imports: [DecimalPipe, RouterLink, CarouselModule, ButtonModule, TagModule, LangRoutePipe, TranslatePipe], + imports: [DecimalPipe, RouterLink, CarouselModule, ButtonModule, TagModule, LangRoutePipe, TranslatePipe, IconComponent], styleUrls: ['./items-carousel.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush }) diff --git a/src/app/components/language-selector/language-selector.component.html b/src/app/components/language-selector/language-selector.component.html index f0fa815..6190a1a 100644 --- a/src/app/components/language-selector/language-selector.component.html +++ b/src/app/components/language-selector/language-selector.component.html @@ -4,9 +4,7 @@ [alt]="languageService.getCurrentLanguage()?.name" class="language-flag"> {{ languageService.getCurrentLanguage()?.code?.toUpperCase() }} - - - +
diff --git a/src/app/components/language-selector/language-selector.component.ts b/src/app/components/language-selector/language-selector.component.ts index 23cfe7f..5a8e656 100644 --- a/src/app/components/language-selector/language-selector.component.ts +++ b/src/app/components/language-selector/language-selector.component.ts @@ -1,9 +1,10 @@ import { Component, HostListener, ElementRef, ChangeDetectionStrategy } from '@angular/core'; import { LanguageService, Language, Currency } from '../../services/language.service'; +import { IconComponent } from '../../shared/ui/icon/icon.component'; @Component({ selector: 'app-language-selector', - imports: [], + imports: [IconComponent], templateUrl: './language-selector.component.html', styleUrls: ['./language-selector.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush diff --git a/src/app/components/region-selector/region-selector.component.html b/src/app/components/region-selector/region-selector.component.html index 38bef6f..8364eb3 100644 --- a/src/app/components/region-selector/region-selector.component.html +++ b/src/app/components/region-selector/region-selector.component.html @@ -1,9 +1,6 @@
@if (dropdownOpen()) { @@ -25,20 +19,14 @@ {{ 'location.chooseRegion' | translate }} @if (!detecting()) { }
diff --git a/src/app/components/region-selector/region-selector.component.ts b/src/app/components/region-selector/region-selector.component.ts index 622e0ed..c3913ad 100644 --- a/src/app/components/region-selector/region-selector.component.ts +++ b/src/app/components/region-selector/region-selector.component.ts @@ -2,10 +2,11 @@ import { Component, ChangeDetectionStrategy, inject, signal, HostListener } from import { LocationService } from '../../services/location.service'; import { Region } from '../../models/location.model'; import { TranslatePipe } from '../../i18n/translate.pipe'; +import { IconComponent } from '../../shared/ui/icon/icon.component'; @Component({ selector: 'app-region-selector', - imports: [TranslatePipe], + imports: [TranslatePipe, IconComponent], templateUrl: './region-selector.component.html', styleUrls: ['./region-selector.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush diff --git a/src/app/pages/cart/cart.component.html b/src/app/pages/cart/cart.component.html index 11d276c..60ca347 100644 --- a/src/app/pages/cart/cart.component.html +++ b/src/app/pages/cart/cart.component.html @@ -3,9 +3,7 @@

{{ 'cart.title' | translate }}

@if (itemCount() > 0) { } @@ -14,7 +12,7 @@ @if (itemCount() === 0) {
- +

{{ 'cart.empty' | translate }}

{{ 'cart.emptyDesc' | translate }}

@@ -38,9 +36,7 @@ @@ -82,15 +78,11 @@
{{ item.quantity }}
@@ -105,9 +97,7 @@
} @@ -181,9 +171,7 @@ @if (!isAuthenticated()) {
@@ -206,9 +194,7 @@
@if (paymentStatus() === 'creating') {
@@ -343,9 +329,7 @@
diff --git a/src/app/pages/cart/cart.component.ts b/src/app/pages/cart/cart.component.ts index fe83723..a9f971b 100644 --- a/src/app/pages/cart/cart.component.ts +++ b/src/app/pages/cart/cart.component.ts @@ -8,19 +8,19 @@ import { Item, CartItem, DeliveryOption } from '../../models'; import { EMPTY, interval, of, Subscription } from 'rxjs'; import { catchError, exhaustMap, take, timeout } from 'rxjs/operators'; import { DeliverySelectorComponent } from '../../components/delivery-selector/delivery-selector.component'; -import { EmptyCartIconComponent } from '../../components/empty-cart-icon/empty-cart-icon.component'; import { TelegramLoginComponent } from '../../components/telegram-login/telegram-login.component'; import { getDiscountedPrice, getMainImage, trackByItemId, getBadgeClass, getTranslatedField } from '../../utils/item.utils'; import { LangRoutePipe } from '../../pipes/lang-route.pipe'; import { TranslatePipe } from '../../i18n/translate.pipe'; import { TranslateService } from '../../i18n/translate.service'; import { PAYMENT_POLL_INTERVAL_MS, PAYMENT_MAX_CHECKS, PAYMENT_TIMEOUT_CLOSE_MS, LINK_COPIED_DURATION_MS } from '../../config/constants'; +import { IconComponent } from '../../shared/ui/icon/icon.component'; type PaymentMethod = 'qr' | 'card'; @Component({ selector: 'app-cart', - imports: [DecimalPipe, RouterLink, FormsModule, EmptyCartIconComponent, DeliverySelectorComponent, TelegramLoginComponent, LangRoutePipe, TranslatePipe], + imports: [DecimalPipe, RouterLink, FormsModule, DeliverySelectorComponent, TelegramLoginComponent, LangRoutePipe, TranslatePipe, IconComponent], templateUrl: './cart.component.html', styleUrls: ['./cart.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush diff --git a/src/app/shared/ui/icon/icon-registry.ts b/src/app/shared/ui/icon/icon-registry.ts index 7cf69c4..1e5b96b 100644 --- a/src/app/shared/ui/icon/icon-registry.ts +++ b/src/app/shared/ui/icon/icon-registry.ts @@ -42,8 +42,10 @@ import { LucideLink as Link, LucideList as List, LucideLoader2 as Loader2, + LucideLocate as Locate, LucideLock as Lock, LucideLogOut as LogOut, + LucideMapPin as MapPin, LucideMegaphone as Megaphone, LucideMenu as Menu, LucideMinus as Minus, @@ -149,6 +151,8 @@ export const APP_ICONS = { history: History, link: Link, list: List, + locate: Locate, + mapPin: MapPin, megaphone: Megaphone, logOut: LogOut, network: Network,