@snabcentr/client-ui 4.4.3 → 4.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/auth/sc-sign-in-form/sc-sign-in-form-by-phone/sc-sign-in-form-by-phone.component.d.ts +4 -0
  2. package/error-handler/error-block-status/error-block-status.component.d.ts +8 -0
  3. package/esm2022/accordion/sc-accordion.component.mjs +2 -2
  4. package/esm2022/auth/sc-sign-in-form/sc-sign-in-form-by-email/sc-sign-in-form-by-email.component.mjs +8 -2
  5. package/esm2022/auth/sc-sign-in-form/sc-sign-in-form-by-phone/sc-sign-in-form-by-phone.component.mjs +13 -4
  6. package/esm2022/banner/sc-banner.component.mjs +4 -3
  7. package/esm2022/error-handler/error-block-status/error-block-status.component.mjs +13 -1
  8. package/esm2022/pages/frequently-asked-questions/sc-frequently-asked-questions.component.mjs +29 -8
  9. package/esm2022/pages/personal-data-processing-policy/sc-personal-data-processing-policy.component.mjs +3 -3
  10. package/esm2022/pages/privacy-policy/sc-privacy-policy.component.mjs +3 -3
  11. package/esm2022/pages/public-offer/sc-public-offer.component.mjs +3 -3
  12. package/esm2022/providers/index.mjs +2 -1
  13. package/esm2022/providers/sc-banner-duration.mjs +6 -0
  14. package/esm2022/public-api.mjs +2 -1
  15. package/esm2022/schemas/breadcrumb-list.interface.mjs +2 -0
  16. package/esm2022/schemas/index.mjs +3 -0
  17. package/esm2022/schemas/sc-json-ld-category/sc-json-ld-category.component.mjs +192 -0
  18. package/esm2022/user/user-managers/sc-user-managers.component.mjs +2 -2
  19. package/fesm2022/snabcentr-client-ui.mjs +319 -81
  20. package/fesm2022/snabcentr-client-ui.mjs.map +1 -1
  21. package/package.json +1 -1
  22. package/pages/frequently-asked-questions/sc-frequently-asked-questions.component.d.ts +4 -0
  23. package/providers/index.d.ts +1 -0
  24. package/providers/sc-banner-duration.d.ts +5 -0
  25. package/public-api.d.ts +1 -0
  26. package/release_notes.tmp +1 -10
  27. package/schemas/breadcrumb-list.interface.d.ts +38 -0
  28. package/schemas/index.d.ts +2 -0
  29. package/schemas/sc-json-ld-category/sc-json-ld-category.component.d.ts +63 -0
  30. package/styles/tailwind/tailwind.scss +4 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@snabcentr/client-ui",
3
- "version": "4.4.3",
3
+ "version": "4.10.2",
4
4
  "author": "Snabcentr Ltd.",
5
5
  "repository": "https://gitlab.snabcentr.met/web/angular/snabcentr-client-ui-lib",
6
6
  "license": "Commercial",
@@ -13,6 +13,10 @@ export declare class ScFrequentlyAskedQuestionsComponent {
13
13
  * {@link InputSignal} отображения загрузки.
14
14
  */
15
15
  readonly showLoading: InputSignal<boolean>;
16
+ /**
17
+ * Признак что приложение запущено на сервере.
18
+ */
19
+ protected readonly isServer: Readonly<boolean>;
16
20
  static ɵfac: i0.ɵɵFactoryDeclaration<ScFrequentlyAskedQuestionsComponent, never>;
17
21
  static ɵcmp: i0.ɵɵComponentDeclaration<ScFrequentlyAskedQuestionsComponent, "sc-frequently-asked-questions", never, { "items": { "alias": "items"; "required": true; "isSignal": true; }; "showLoading": { "alias": "showLoading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
18
22
  }
@@ -9,3 +9,4 @@ export * from './sc-user-providers';
9
9
  export * from './sc-date-formatter';
10
10
  export * from './sc-date-value-transformer';
11
11
  export * from './sc-notify-when-in-stock-required-fields';
12
+ export * from './sc-banner-duration';
@@ -0,0 +1,5 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ /**
3
+ * Токен интервала автоматической смены слайдов в миллисекундах (используйте 0, чтобы отключить автоматическую смену слайда).
4
+ */
5
+ export declare const SC_BANNER_DURATION: InjectionToken<number>;
package/public-api.d.ts CHANGED
@@ -29,3 +29,4 @@ export * from './user';
29
29
  export * from './validators';
30
30
  export * from './verification';
31
31
  export * from './profile';
32
+ export * from './schemas';
package/release_notes.tmp CHANGED
@@ -1,10 +1 @@
1
- ## 4.4.3 (2025-09-19)
2
-
3
- ### fixed (1 change)
4
-
5
- - [#12183: Исправлены тесты](web_soft/libs/angular/snabcentr-client-ui-lib@2b99ec4bdd24026058f7c8e98cb2c16d764635c3) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!320))
6
-
7
- ### changed (1 change)
8
-
9
- - [#12183: Обновлены компоненты, зависимости и настройки проектов до Angular 20](web_soft/libs/angular/snabcentr-client-ui-lib@f5e0dfe567fb0bc8c3233d6df20df6f385c4157e) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!318))
10
-
1
+ null
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Интерфейс для структурированных данных хлебных крошек согласно Schema.org.
3
+ *
4
+ * @see https://schema.org/BreadcrumbList
5
+ *
6
+ * Локальный интерфейс для BreadcrumbList, чтобы избежать ошибки TS4029 с экспортом типов.
7
+ * Используется для создания JSON-LD разметки навигационных хлебных крошек
8
+ * на страницах каталога товаров.
9
+ */
10
+ export interface BreadcrumbList {
11
+ /**
12
+ * Тип схемы Schema.org для хлебных крошек.
13
+ */
14
+ '@type': 'BreadcrumbList';
15
+ /**
16
+ * Список элементов навигации (хлебных крошек).
17
+ * Каждый элемент представляет один уровень навигации.
18
+ */
19
+ itemListElement: Array<{
20
+ /**
21
+ * Тип элемента списка согласно Schema.org.
22
+ */
23
+ '@type': 'ListItem';
24
+ /**
25
+ * Позиция элемента в списке навигации (начиная с 1).
26
+ */
27
+ position: number;
28
+ /**
29
+ * Отображаемое название элемента навигации.
30
+ */
31
+ name: string;
32
+ /**
33
+ * URL-адрес страницы (опционально).
34
+ * Если не указан, элемент считается неактивным.
35
+ */
36
+ item?: string;
37
+ }>;
38
+ }
@@ -0,0 +1,2 @@
1
+ export * from './breadcrumb-list.interface';
2
+ export * from './sc-json-ld-category/sc-json-ld-category.component';
@@ -0,0 +1,63 @@
1
+ import { Signal } from '@angular/core';
2
+ import { ScCategory, ScICompanyBaseInfo, ScIUrls, ScProduct, ScVirtualCategory } from '@snabcentr/client-core';
3
+ import { CollectionPage, WithContext } from 'schema-dts';
4
+ import { BreadcrumbList } from '../breadcrumb-list.interface';
5
+ import * as i0 from "@angular/core";
6
+ /**
7
+ * Компонент для отображения структурированных данных @see [Schema.org](https://schema.org) для страниц каталога.
8
+ */
9
+ export declare class ScJsonLdCategoryComponent {
10
+ /**
11
+ * Категория товаров (обычная или виртуальная).
12
+ */
13
+ readonly category: import("@angular/core").InputSignal<ScCategory | ScVirtualCategory>;
14
+ /**
15
+ * Список товаров.
16
+ */
17
+ readonly products: import("@angular/core").InputSignal<ScProduct[] | undefined>;
18
+ /**
19
+ * Хлебные крошки.
20
+ */
21
+ readonly breadcrumbs: import("@angular/core").InputSignal<BreadcrumbList | undefined>;
22
+ /**
23
+ * Пайп для формирования полного URI изображения на media сервере.
24
+ */
25
+ private readonly mediaImageTransformerPipe;
26
+ /**
27
+ * Пайп для преобразования идентификатора или slug в идентификатор.
28
+ */
29
+ private readonly idOrSlugPipe;
30
+ /**
31
+ * Данные о компании.
32
+ */
33
+ protected readonly companyInfo: Readonly<ScICompanyBaseInfo>;
34
+ /**
35
+ * Список ссылок приложения.
36
+ */
37
+ protected readonly urls: ScIUrls;
38
+ /**
39
+ * Схема структурированных данных для CollectionPage.
40
+ */
41
+ readonly schema: Signal<WithContext<CollectionPage>>;
42
+ /**
43
+ * Проверяет, является ли категория виртуальной.
44
+ *
45
+ * @param category Категория для проверки.
46
+ */
47
+ private isVirtualCategory;
48
+ /**
49
+ * Получает URL для категории.
50
+ *
51
+ * @param category Категория для получения URL.
52
+ */
53
+ private getCategoryUrl;
54
+ /**
55
+ * Создает mainEntity для схемы.
56
+ *
57
+ * @param category Категория.
58
+ * @param products Список товаров.
59
+ */
60
+ private createMainEntity;
61
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScJsonLdCategoryComponent, never>;
62
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScJsonLdCategoryComponent, "sc-json-ld-category", never, { "category": { "alias": "category"; "required": true; "isSignal": true; }; "products": { "alias": "products"; "required": false; "isSignal": true; }; "breadcrumbs": { "alias": "breadcrumbs"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
63
+ }
@@ -771,6 +771,10 @@ video {
771
771
  margin-left: 1rem;
772
772
  }
773
773
 
774
+ .ml-5 {
775
+ margin-left: 1.25rem;
776
+ }
777
+
774
778
  .mr-2 {
775
779
  margin-right: 0.5rem;
776
780
  }