@snabcentr/client-ui 5.9.0 → 5.10.0

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.
package/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "@snabcentr/client-ui",
3
- "version": "5.9.0",
3
+ "version": "5.10.0",
4
4
  "author": "Snabcentr Ltd.",
5
5
  "repository": "https://gitlab.snabcentr.met/web/angular/snabcentr-client-ui-lib",
6
6
  "license": "Commercial",
7
7
  "description": "Snabcentr client UI package.",
8
8
  "peerDependencies": {
9
+ "@angular/cdk": "^21.2.14",
9
10
  "@angular/common": "^21.2.16",
10
11
  "@angular/compiler": "^21.2.16",
11
12
  "@angular/core": "^21.2.16",
@@ -15,7 +16,7 @@
15
16
  "@maskito/core": "^5.0.0",
16
17
  "@ng-web-apis/intersection-observer": "^5.0.0",
17
18
  "@ng-web-apis/common": "^5.0.0",
18
- "@snabcentr/client-core": "^4.16.0",
19
+ "@snabcentr/client-core": "^4.18.0",
19
20
  "@taiga-ui/addon-charts": "^5.9.0",
20
21
  "@taiga-ui/addon-commerce": "^5.9.0",
21
22
  "@taiga-ui/cdk": "^5.9.0",
package/release_notes.tmp CHANGED
@@ -1,10 +1,18 @@
1
- ## 5.9.0 (2026-08-21)
1
+ ## 5.10.0 (2026-09-22)
2
2
 
3
- ### removed (1 change)
3
+ ### fixed (5 changes)
4
4
 
5
- - [#13733: Удалены обертки блоков noindex из каталога и карточек товара](web_soft/libs/angular/snabcentr-client-ui-lib@16de171573e5e379fd3544600362f28e73d1fbb6) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!442))
5
+ - [#13914: Исправлено перелистывание баннеров](web_soft/libs/angular/snabcentr-client-ui-lib@0668675dd0558f6b0cf8918ff4ec5085c1ec7e96) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!450))
6
+ - [#13914: Исправлено перелистывание баннеров свайпом и возвращены кнопки навигации](web_soft/libs/angular/snabcentr-client-ui-lib@d6f87bc5ceafc183998f38947213c66fe729c1ef) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!449))
7
+ - [#13839: Исправлено раскрытие вопроса и прокрутка к нему при переходе по ссылке на вопрос FAQ](web_soft/libs/angular/snabcentr-client-ui-lib@c9bf51e6b0ed3490d1b7909b3f1e005ed7d604a7) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!447))
8
+ - [#13839: Исправлено копирование ссылки в диалоге "Поделиться" на сайтах без защищённого соединения](web_soft/libs/angular/snabcentr-client-ui-lib@b642d16f22480fad27c10a48c4447b77c5f1d5f1) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!446))
9
+ - [#13796: Исправлена ошибка вывода фильтров каталога](web_soft/libs/angular/snabcentr-client-ui-lib@12b7818ec676667463ac1f47d260a496294b225c) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!445))
6
10
 
7
- ### fixed (1 change)
11
+ ### changed (1 change)
8
12
 
9
- - [#13728: Доступные даты отгрузки выделены в календаре, листание месяцев ограничено ими](web_soft/libs/angular/snabcentr-client-ui-lib@572b1d6a1671942742bcfb4fce249c290700eb14) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!441))
13
+ - [#13636: Доработаны механизмы загрузки при SSR](web_soft/libs/angular/snabcentr-client-ui-lib@70085c2a20a5a5c5a7a6c2a587cd2f98b61c8c32) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!448))
14
+
15
+ ### added (1 change)
16
+
17
+ - [#13839: Добавлена реализация механизма "Поделиться". Добавлена возможность...](web_soft/libs/angular/snabcentr-client-ui-lib@0eceebf07230bc70927769b2f0038f6be8d83ac4) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!444))
10
18
 
@@ -650,6 +650,10 @@ video {
650
650
  margin: -0.5rem !important;
651
651
  }
652
652
 
653
+ .\!m-0 {
654
+ margin: 0px !important;
655
+ }
656
+
653
657
  .m-2 {
654
658
  margin: 0.5rem;
655
659
  }
@@ -825,6 +829,16 @@ video {
825
829
  height: 5rem !important;
826
830
  }
827
831
 
832
+ .\!size-6 {
833
+ width: 1.5rem !important;
834
+ height: 1.5rem !important;
835
+ }
836
+
837
+ .\!size-8 {
838
+ width: 2rem !important;
839
+ height: 2rem !important;
840
+ }
841
+
828
842
  .size-11 {
829
843
  width: 2.75rem;
830
844
  height: 2.75rem;
@@ -1090,6 +1104,10 @@ video {
1090
1104
  grid-template-columns: repeat(1, minmax(0, 1fr));
1091
1105
  }
1092
1106
 
1107
+ .grid-cols-2 {
1108
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1109
+ }
1110
+
1093
1111
  .grid-cols-3 {
1094
1112
  grid-template-columns: repeat(3, minmax(0, 1fr));
1095
1113
  }
@@ -6,7 +6,7 @@ import * as i0 from '@angular/core';
6
6
  import { OnInit, OnDestroy, Signal, OutputRef, OutputEmitterRef, EventEmitter, InputSignal, QueryList, TemplateRef, WritableSignal, PipeTransform, OnChanges, SimpleChanges, InjectionToken, AfterViewInit, ElementRef, ModelSignal, Provider, FactoryProvider } from '@angular/core';
7
7
  import { FormGroup, FormControl, FormArray, ControlValueAccessor, ValidatorFn, NgControl, FormGroupDirective } from '@angular/forms';
8
8
  import { PolymorpheusTemplate } from '@taiga-ui/polymorpheus';
9
- import { TuiSizeS, TuiCarouselComponent, TuiDialogContext, TuiSizeL, TuiMarkerHandler, TuiCommonIcons, TuiSizeM } from '@taiga-ui/core';
9
+ import { TuiSizeS, TuiCarouselComponent, TuiDialogContext, TuiSizeL, TuiMarkerHandler, TuiCommonIcons, TuiSizeM, TuiSizeXS } from '@taiga-ui/core';
10
10
  import { TuiAccordionDirective, TuiTreeLoader, TuiTreeService, TuiFileLike } from '@taiga-ui/kit';
11
11
  import { HttpErrorResponse, HttpClient } from '@angular/common/http';
12
12
  import { TuiStringHandler, TuiContext, TuiDayRange, TuiDay, TuiHandler } from '@taiga-ui/cdk';
@@ -14,7 +14,7 @@ import * as _maskito_core from '@maskito/core';
14
14
  import { MaskitoOptions } from '@maskito/core';
15
15
  import { TuiCountryIsoCode } from '@taiga-ui/i18n';
16
16
  import { YaReadyEvent } from 'angular8-yandex-maps';
17
- import { Params, ActivatedRoute } from '@angular/router';
17
+ import { UrlCreationOptions, Params, ActivatedRoute } from '@angular/router';
18
18
 
19
19
  /**
20
20
  * Модель данных изображения.
@@ -2025,6 +2025,13 @@ declare class ScCatalogFiltersComponent {
2025
2025
  * Инициализирует экземпляр класса {@link ScCatalogFiltersComponent}.
2026
2026
  */
2027
2027
  constructor();
2028
+ /**
2029
+ * Проверяет, что фильтр пригоден для вывода: у checkbox есть непустой список значений, у range заданы разные границы.
2030
+ * Некорректные фильтры из ответа API пропускаются, чтобы не ломать вывод остальных.
2031
+ *
2032
+ * @param item Фильтр каталога.
2033
+ */
2034
+ private isRenderableFilter;
2028
2035
  /**
2029
2036
  * Обновляет состав контролов формы на основе переданных фильтров.
2030
2037
  *
@@ -3649,6 +3656,10 @@ declare class ScErrorBlockStatusComponent {
3649
3656
  * Создает сигнал изменения строкового представления об ошибке.
3650
3657
  */
3651
3658
  protected readonly pageErrorChange: i0.OutputEmitterRef<IBlockError>;
3659
+ /**
3660
+ * Статус ответа, когда код ошибки не является HTTP-статусом (0 при обрыве соединения с API).
3661
+ */
3662
+ private readonly unavailableResponseStatus;
3652
3663
  /**
3653
3664
  * Признак, что текущий скрипт исполняется на сервере.
3654
3665
  */
@@ -3661,6 +3672,12 @@ declare class ScErrorBlockStatusComponent {
3661
3672
  * Инициализирует экземпляр класса {@link ErrorPageComponent}.
3662
3673
  */
3663
3674
  constructor();
3675
+ /**
3676
+ * Возвращает HTTP-статус ответа для кода ошибки; код вне 400-599 заменяется на {@link unavailableResponseStatus}.
3677
+ *
3678
+ * @param code Код ошибки.
3679
+ */
3680
+ protected getResponseStatus(code: number | null): number;
3664
3681
  /**
3665
3682
  * Возвращает описание ошибки.
3666
3683
  *
@@ -4870,6 +4887,23 @@ declare class ScPaymentStatusComponent {
4870
4887
  */
4871
4888
  declare const SC_FAQ_GROUP_QUERY_PARAM = "group";
4872
4889
 
4890
+ /**
4891
+ * Префикс якоря (fragment) ссылки на конкретный вопрос.
4892
+ */
4893
+ declare const SC_FAQ_QUESTION_ANCHOR_PREFIX = "question-";
4894
+ /**
4895
+ * Возвращает якорь (fragment) ссылки на вопрос.
4896
+ *
4897
+ * @param questionId Идентификатор вопроса.
4898
+ */
4899
+ declare const scGetFaqQuestionAnchor: (questionId: number) => string;
4900
+ /**
4901
+ * Возвращает идентификатор вопроса из якоря (fragment) ссылки или `null`, если якорь не ссылается на вопрос.
4902
+ *
4903
+ * @param fragment Якорь (fragment) адреса.
4904
+ */
4905
+ declare const scGetFaqQuestionIdFromAnchor: (fragment: string | null | undefined) => number | null;
4906
+
4873
4907
  /**
4874
4908
  * Компонент часто задаваемых вопросов.
4875
4909
  */
@@ -4882,12 +4916,73 @@ declare class ScFrequentlyAskedQuestionsComponent {
4882
4916
  * {@link InputSignal} отображения загрузки.
4883
4917
  */
4884
4918
  readonly showLoading: InputSignal<boolean>;
4919
+ /**
4920
+ * {@link InputSignal} параметров прокрутки к вопросу из якоря.
4921
+ */
4922
+ readonly scrollOptions: InputSignal<ScrollIntoViewOptions>;
4923
+ /**
4924
+ * {@link InputSignal} количества кадров удержания вопроса из якоря в поле зрения (около 5 секунд).
4925
+ */
4926
+ readonly scrollHoldFrames: InputSignal<number>;
4885
4927
  /**
4886
4928
  * Признак, что приложение запущено на сервере.
4887
4929
  */
4888
4930
  protected readonly isServer: Readonly<boolean>;
4931
+ /**
4932
+ * {@link WritableSignal} идентификаторов раскрытых вопросов.
4933
+ */
4934
+ protected readonly openedIds: WritableSignal<Set<number>>;
4935
+ /**
4936
+ * Возвращает якорь ссылки на вопрос.
4937
+ */
4938
+ protected readonly getAnchor: (questionId: number) => string;
4939
+ /**
4940
+ * Активный маршрут.
4941
+ */
4942
+ private readonly route;
4943
+ /**
4944
+ * Инжектор компонента.
4945
+ */
4946
+ private readonly injector;
4947
+ /**
4948
+ * Ссылка на уничтожение компонента.
4949
+ */
4950
+ private readonly destroyRef;
4951
+ /**
4952
+ * {@link Signal} ссылок на заголовки вопросов.
4953
+ */
4954
+ private readonly questionHeaders;
4955
+ /**
4956
+ * Инициализирует экземпляр класса {@link ScFrequentlyAskedQuestionsComponent}.
4957
+ */
4958
+ constructor();
4959
+ /**
4960
+ * Возвращает параметры формирования ссылки на вопрос: текущая страница с её query-параметрами и якорем вопроса.
4961
+ *
4962
+ * @param questionId Идентификатор вопроса.
4963
+ */
4964
+ protected getShareLinkOptions(questionId: number): UrlCreationOptions;
4965
+ /**
4966
+ * Обработчик изменения состояния раскрытия вопроса.
4967
+ *
4968
+ * @param questionId Идентификатор вопроса.
4969
+ * @param opened Признак, что вопрос раскрыт.
4970
+ */
4971
+ protected onOpenedChange(questionId: number, opened: boolean): void;
4972
+ /**
4973
+ * Возвращает элемент заголовка вопроса.
4974
+ *
4975
+ * @param questionId Идентификатор вопроса.
4976
+ */
4977
+ private getQuestionHeader;
4978
+ /**
4979
+ * Прокручивает страницу к заголовку вопроса и удерживает его в поле зрения.
4980
+ *
4981
+ * @param header Элемент заголовка вопроса.
4982
+ */
4983
+ private scrollToHeader;
4889
4984
  static ɵfac: i0.ɵɵFactoryDeclaration<ScFrequentlyAskedQuestionsComponent, never>;
4890
- 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>;
4985
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScFrequentlyAskedQuestionsComponent, "sc-frequently-asked-questions", never, { "items": { "alias": "items"; "required": true; "isSignal": true; }; "showLoading": { "alias": "showLoading"; "required": false; "isSignal": true; }; "scrollOptions": { "alias": "scrollOptions"; "required": false; "isSignal": true; }; "scrollHoldFrames": { "alias": "scrollHoldFrames"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
4891
4986
  }
4892
4987
 
4893
4988
  /**
@@ -5755,23 +5850,243 @@ declare class ScQRCodeDialogComponent {
5755
5850
  }
5756
5851
 
5757
5852
  /**
5758
- * Компонент кнопки "Поделиться".
5853
+ * Данные диалогового окна "Поделиться".
5854
+ */
5855
+ interface ScShareDialogData {
5856
+ /**
5857
+ * Заголовок ссылки, которой необходимо поделиться.
5858
+ */
5859
+ title: string;
5860
+ /**
5861
+ * Абсолютная ссылка, которой необходимо поделиться.
5862
+ */
5863
+ shareUrl: string;
5864
+ }
5865
+
5866
+ /**
5867
+ * Сервис открытия диалогового окна "Поделиться".
5868
+ */
5869
+ declare class ScShareService {
5870
+ /**
5871
+ * Сервис для работы с диалоговыми окнами.
5872
+ */
5873
+ private readonly dialog;
5874
+ /**
5875
+ * Открывает диалоговое окно "Поделиться".
5876
+ *
5877
+ * @param title Заголовок ссылки, которой необходимо поделиться.
5878
+ * @param shareUrl Абсолютная ссылка, которой необходимо поделиться.
5879
+ */
5880
+ openShareDialog(title: string, shareUrl: string): void;
5881
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScShareService, never>;
5882
+ static ɵprov: i0.ɵɵInjectableDeclaration<ScShareService>;
5883
+ }
5884
+
5885
+ /**
5886
+ * Кнопка "Поделиться": открывает диалоговое окно с вариантами, как поделиться ссылкой.
5887
+ *
5888
+ * Ссылка формируется из {@link routerPath} относительно маршрутизации приложения, либо берётся из {@link shareUrl},
5889
+ * а если не задано ни то, ни другое - используется адрес текущей страницы.
5759
5890
  */
5760
5891
  declare class ScShareButtonComponent {
5761
5892
  /**
5762
- * Формат внешнего вида кнопки.
5893
+ * {@link InputSignal} заголовка ссылки, которой необходимо поделиться.
5894
+ */
5895
+ readonly title: InputSignal<string>;
5896
+ /**
5897
+ * {@link InputSignal} ссылки, которой необходимо поделиться (абсолютной или относительно корня сайта).
5898
+ */
5899
+ readonly shareUrl: InputSignal<string | undefined>;
5900
+ /**
5901
+ * {@link InputSignal} команд маршрутизатора, из которых формируется ссылка относительно маршрутизации приложения.
5902
+ */
5903
+ readonly routerPath: InputSignal<any[] | undefined>;
5904
+ /**
5905
+ * {@link InputSignal} параметров формирования ссылки из {@link routerPath}.
5906
+ */
5907
+ readonly routerCreationOptions: InputSignal<UrlCreationOptions | undefined>;
5908
+ /**
5909
+ * {@link InputSignal} формата внешнего вида кнопки.
5910
+ */
5911
+ readonly appearance: InputSignal<'primary' | 'secondary' | 'outline' | 'flat'>;
5912
+ /**
5913
+ * {@link InputSignal} размера кнопки.
5914
+ */
5915
+ readonly size: InputSignal<TuiSizeL | TuiSizeM | TuiSizeS>;
5916
+ /**
5917
+ * {@link InputSignal} признака, что подпись "Поделиться" отображается постоянно.
5918
+ */
5919
+ readonly showLabel: InputSignal<boolean>;
5920
+ /**
5921
+ * {@link InputSignal} признака, что кнопка раскрывается с появлением подписи "Поделиться" при наведении.
5922
+ */
5923
+ readonly expandable: InputSignal<boolean>;
5924
+ /**
5925
+ * Ссылка на объект документа.
5926
+ */
5927
+ private readonly document;
5928
+ /**
5929
+ * Сервис маршрутизации.
5930
+ */
5931
+ private readonly router;
5932
+ /**
5933
+ * Сервис открытия диалогового окна "Поделиться".
5934
+ */
5935
+ private readonly shareService;
5936
+ /**
5937
+ * {@link Signal} ссылки, которой необходимо поделиться, заданной через входные параметры.
5763
5938
  */
5764
- appearance: 'primary' | 'secondary' | 'outline' | 'flat';
5939
+ protected readonly href: Signal<string | undefined>;
5765
5940
  /**
5766
- * Размер кнопки.
5941
+ * Возвращает адрес текущей страницы.
5767
5942
  */
5768
- size: TuiSizeL | TuiSizeM | TuiSizeS;
5943
+ protected get currentUrl(): string;
5769
5944
  /**
5770
- * Событие клика по кнопке "Поделиться".
5945
+ * Обработчик нажатия на кнопку: открывает диалоговое окно "Поделиться".
5946
+ *
5947
+ * @param event Событие нажатия.
5948
+ */
5949
+ protected openShareDialog(event: Event): void;
5950
+ /**
5951
+ * Возвращает абсолютную ссылку.
5952
+ *
5953
+ * @param url Абсолютная ссылка или ссылка относительно корня сайта.
5771
5954
  */
5772
- clickShareEvent: EventEmitter<void>;
5955
+ private getAbsoluteUrl;
5773
5956
  static ɵfac: i0.ɵɵFactoryDeclaration<ScShareButtonComponent, never>;
5774
- static ɵcmp: i0.ɵɵComponentDeclaration<ScShareButtonComponent, "sc-share-button", never, { "appearance": { "alias": "appearance"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "clickShareEvent": "clickShareEvent"; }, never, never, true, never>;
5957
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScShareButtonComponent, "sc-share-button", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "shareUrl": { "alias": "shareUrl"; "required": false; "isSignal": true; }; "routerPath": { "alias": "routerPath"; "required": false; "isSignal": true; }; "routerCreationOptions": { "alias": "routerCreationOptions"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "showLabel": { "alias": "showLabel"; "required": false; "isSignal": true; }; "expandable": { "alias": "expandable"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
5958
+ }
5959
+
5960
+ /**
5961
+ * Диалоговое окно "Поделиться": варианты, как поделиться ссылкой.
5962
+ *
5963
+ * На терминале вместо вариантов отображается только QR-код ссылки.
5964
+ */
5965
+ declare class ScShareDialogComponent implements OnInit {
5966
+ /**
5967
+ * Провайдер данных о терминале.
5968
+ */
5969
+ protected readonly terminal: ScITerminalProvider;
5970
+ /**
5971
+ * Контекст диалогового окна, в котором открыт компонент.
5972
+ */
5973
+ private readonly context;
5974
+ /**
5975
+ * Сервис копирования текста в буфер обмена.
5976
+ */
5977
+ private readonly clipboard;
5978
+ /**
5979
+ * Ссылка на объект окна браузера.
5980
+ */
5981
+ private readonly window;
5982
+ /**
5983
+ * Сервис уведомлений.
5984
+ */
5985
+ private readonly alerts;
5986
+ /**
5987
+ * Сервис для работы с диалоговыми окнами.
5988
+ */
5989
+ private readonly dialog;
5990
+ /**
5991
+ * Сервис для сбора метрик о действиях пользователей.
5992
+ */
5993
+ private readonly userMetrikaService;
5994
+ /**
5995
+ * {@link Signal} формата отображения вариантов: в строку на широких экранах, списком на узких.
5996
+ */
5997
+ protected readonly viewMode: Signal<'row' | 'list'>;
5998
+ /**
5999
+ * Заголовок ссылки, которой необходимо поделиться.
6000
+ */
6001
+ protected readonly title: string;
6002
+ /**
6003
+ * Ссылка, которой необходимо поделиться.
6004
+ */
6005
+ protected readonly shareUrl: string;
6006
+ /**
6007
+ * Ссылка отправки по Email.
6008
+ */
6009
+ protected readonly emailLink: string;
6010
+ /**
6011
+ * Ссылка отправки во ВКонтакте.
6012
+ */
6013
+ protected readonly vkLink: string;
6014
+ /**
6015
+ * Ссылка отправки в Telegram.
6016
+ */
6017
+ protected readonly telegramLink: string;
6018
+ /** @inheritDoc */
6019
+ ngOnInit(): void;
6020
+ /**
6021
+ * Открывает окно перехода в социальную сеть.
6022
+ *
6023
+ * @param shareLink Ссылка перехода в социальную сеть.
6024
+ * @param socialMedia Slug социальной сети.
6025
+ */
6026
+ protected openShareWindow(shareLink: string, socialMedia: string): void;
6027
+ /**
6028
+ * Копирует ссылку в буфер обмена.
6029
+ */
6030
+ protected copyShareLink(): void;
6031
+ /**
6032
+ * Открывает диалоговое окно с QR-кодом ссылки.
6033
+ */
6034
+ protected showQRCode(): void;
6035
+ /**
6036
+ * Отправляет метрику выбора варианта "Поделиться".
6037
+ *
6038
+ * @param shareLinkName Наименование варианта.
6039
+ */
6040
+ private emitShareClick;
6041
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScShareDialogComponent, never>;
6042
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScShareDialogComponent, "sc-share-dialog", never, {}, {}, never, never, true, never>;
6043
+ }
6044
+
6045
+ /**
6046
+ * Ссылки на мессенджеры контакта по номеру телефона.
6047
+ *
6048
+ * На терминале вместо перехода в мессенджер отображается QR-код ссылки.
6049
+ */
6050
+ declare class ScShareMessengersLinksComponent {
6051
+ /**
6052
+ * {@link InputSignal} телефона контакта.
6053
+ */
6054
+ readonly phone: InputSignal<string>;
6055
+ /**
6056
+ * {@link InputSignal} размера кнопок.
6057
+ */
6058
+ readonly size: InputSignal<TuiSizeXS>;
6059
+ /**
6060
+ * Сервис для сбора метрик о действиях пользователей.
6061
+ */
6062
+ private readonly userMetrikaService;
6063
+ /**
6064
+ * Ссылка на объект окна браузера.
6065
+ */
6066
+ private readonly window;
6067
+ /**
6068
+ * Провайдер данных о терминале.
6069
+ */
6070
+ private readonly terminal;
6071
+ /**
6072
+ * Сервис для работы с диалоговыми окнами.
6073
+ */
6074
+ private readonly dialog;
6075
+ /**
6076
+ * Открывает окно перехода в мессенджер.
6077
+ *
6078
+ * @param shareLink Ссылка перехода в мессенджер.
6079
+ * @param socialMedia Slug мессенджера.
6080
+ */
6081
+ protected openShareWindow(shareLink: string, socialMedia: string): void;
6082
+ /**
6083
+ * Проверяет, что номер телефона подходит для использования в мессенджерах.
6084
+ *
6085
+ * @param value Номер телефона.
6086
+ */
6087
+ protected isValidPhoneNumberForMessenger(value: string): boolean;
6088
+ static ɵfac: i0.ɵɵFactoryDeclaration<ScShareMessengersLinksComponent, never>;
6089
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScShareMessengersLinksComponent, "sc-share-messengers-links", never, { "phone": { "alias": "phone"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
5775
6090
  }
5776
6091
 
5777
6092
  /**
@@ -6232,5 +6547,5 @@ declare class ScProfileAccordionsContentComponent {
6232
6547
  static ɵcmp: i0.ɵɵComponentDeclaration<ScProfileAccordionsContentComponent, "sc-profile-accordions-content", never, {}, { "editProfileClick": "editProfileClick"; "approvePhoneClick": "approvePhoneClick"; "addContragentClick": "addContragentClick"; "deleteContragentClick": "deleteContragentClick"; "addContragentBankAccountClick": "addContragentBankAccountClick"; "deleteContragentBankAccountClick": "deleteContragentBankAccountClick"; "addContragentContactClick": "addContragentContactClick"; "deleteContragentContactClick": "deleteContragentContactClick"; "addDeliveryAddressClick": "addDeliveryAddressClick"; "deleteDeliveryAddressClick": "deleteDeliveryAddressClick"; "addDeliveryAddressContactClick": "addDeliveryAddressContactClick"; "deleteDeliveryAddressContactClick": "deleteDeliveryAddressContactClick"; "addUserContactClick": "addUserContactClick"; "deleteUserContactClick": "deleteUserContactClick"; }, never, never, true, never>;
6233
6548
  }
6234
6549
 
6235
- export { AbstractScPriceCard, AuthMethod, CURRENT_COUNTRY_ID, CostWithDiscountComponent, FilesAndDocumentsComponent, FinishDateTimeTransformerDirective, IDLE_ITEM_STATE, IS_DEFAULT_COUNTRY, MAX_FILES_IN_FORM_INPUT, SC_ALLOW_SELECT_TERMINATED, SC_BANNER_DURATION, SC_CATALOG_PRODUCTS_FILTERS, SC_CATALOG_SHOW_PRODUCTS_RECURSIVELY, SC_DATE_FORMATTER, SC_DEBOUNCE_TIME_DEFAULT, SC_DIALOG_SERVICE_TOKEN, SC_ERROR_CHANGE_HANDLER, SC_FAQ_GROUP_QUERY_PARAM, SC_HELP_NOTIFICATION_CLOSE, SC_HELP_NOTIFICATION_LIMIT, SC_HIDDEN_PRINT_ELEMENTS, SC_MANAGER_QR_HANDLER, SC_NOTIFY_WHEN_IN_STOCK_REQUIRED_FIELDS, SC_ORDER_FORM_CONFIG, SC_ORDER_OPTIONS, SC_PAGE_SIZE_OPTIONS, SC_SHOW_HELP_NOTIFICATION_IN_PHONE_INPUT, SC_USER_CITY_INFO, SC_USER_INFO, SC_USER_PROVIDERS, SC_VERIFICATION_CODE_TIMEOUT, ScAccordionComponent, ScAccordionContentDirective, ScAddContactDialogComponent, ScAddContragentBankAccountsDialogComponent, ScAddContragentDialogComponent, ScAddDeliveryAddressDialogComponent, ScAddOrEditingCartItemDialogComponent, ScAddOrEditingCartItemFormComponent, ScAddressesSelectionFieldComponent, ScBannerComponent, ScBrandsListComponent, ScCartAddProductsFromCsvDialogComponent, ScCatalogFilterCollapsibleComponent, ScCatalogFiltersComponent, ScCategoryCardComponent, ScContactsAccordionComponent, ScContragentsAccordionComponent, ScContragentsAccordionItemComponent, ScDeliveryAddressAccordionComponent, ScDeliveryAddressAccordionItemComponent, ScDownloadPriceListComponent, ScDraftComponent, ScEmailLinkDirective, ScErrorBlockStatusComponent, ScErrorHandlerComponent, ScFavoriteButtonComponent, ScFeedbackFormComponent, ScFocusFirstInvalidFieldDirective, ScFormatDatePipe, ScFrequentlyAskedQuestionsComponent, ScFrequentlyAskedQuestionsGroupSelectorComponent, ScFrequentlyAskedQuestionsWithGroupsComponent, ScGratitudeComponent, ScHelpNotificationService, ScHoverImageCarouselComponent, ScInputQuantityComponent, ScLinks, ScManagerCardComponent, ScManagerCardPushComponent, ScNewContactFormComponent, ScNewContragentBankAccountsFormComponent, ScNewContragentFormComponent, ScNewsCardComponent, ScNewsCardSkeletonComponent, ScNewsListComponent, ScNextInputFocusDirective, ScNoindexDirective, ScNoindexWrapperComponent, ScNotifyWhenInStockDialogComponent, ScOrderAccessorDirective, ScOrderDirectionItemsComponent, ScOrderFormComponent, ScOrderItemComponent, ScOrderItemsByDirection, ScOrderItemsListByDirectionsComponent, ScOrderItemsListByStockComponent, ScOrderItemsListComponent, ScPaginationLinksComponent, ScPaymentStatusComponent, ScPersonalDataProcessingPolicyComponent, ScPhoneFormatPipe, ScPreviewSampleComponent, ScPreviewSamplesMosquitoComponent, ScPriceCardComponent, ScPriceCardInlineComponent, ScPriceHistoryComponent, ScPriceListPaginationComponent, ScPriceWarehouseStockComponent, ScPrintDirective, ScPrintService, ScPrivacyPolicyComponent, ScProductInAllWarehousesPipe, ScProfileAccordionsContentComponent, ScPublicOfferComponent, ScQRCodeDialogComponent, ScResetUserPasswordComponent, ScResourcePreviewComponent, ScSandwichComponent, ScSandwichM2Component, ScSandwichM2SkeletonComponent, ScSandwichSkeletonComponent, ScSelectOnFocusinDirective, ScSeoTagsComponent, ScShareButtonComponent, ScSignInFormByEmailComponent, ScSignInFormByPhoneComponent, ScSignInFormComponent, ScSignUpFormComponent, ScSimpleSignUpFormComponent, ScSuggestionFieldComponent, ScTelLinkDirective, ScTerminalLinkDirective, ScUpdateUserInfoDialogComponent, ScUserManagersComponent, ScUserPhoneApproveDialogComponent, ScVerificationPhoneCheckFormComponent, TreeDirective, TreeIconService, TreeLoaderService, TreeTopDirective, cleanupRecaptchaArtifacts, phoneValidator, scAtLeastOneRequiredValidator, scBicValidator, scClientUiIconsName, scCorrespondentAccountValidator, scGetCurrentRoute, scGetFaqGroupQueryParams, scPasswordConfirmMatchingValidator, stepValidator, tuiDateValueTransformerDefaultProvider };
6236
- export type { ApiErrorResponse, IBlockError, INewOrderForm, IScDialogService, IScImage, ScBankAccountFormGroup, ScBrandListItem, ScContactFormGroup, ScFeedbackFormConfig, ScFeedbackFormFieldType, ScIConfiguratorSearchProductSandwich, ScILoader, ScINewCartItemSandwich, ScINewCartItemSandwichM2, ScIOrderFormConfig, ScIPreviewSample, ScISandwichM2Settings, ScISandwichSettings, ScLinkLocation, ScOrderOptions, ScPreviewMosquitoConfig, ScSandwichM2ItemSubmitState, TreeNode };
6550
+ export { AbstractScPriceCard, AuthMethod, CURRENT_COUNTRY_ID, CostWithDiscountComponent, FilesAndDocumentsComponent, FinishDateTimeTransformerDirective, IDLE_ITEM_STATE, IS_DEFAULT_COUNTRY, MAX_FILES_IN_FORM_INPUT, SC_ALLOW_SELECT_TERMINATED, SC_BANNER_DURATION, SC_CATALOG_PRODUCTS_FILTERS, SC_CATALOG_SHOW_PRODUCTS_RECURSIVELY, SC_DATE_FORMATTER, SC_DEBOUNCE_TIME_DEFAULT, SC_DIALOG_SERVICE_TOKEN, SC_ERROR_CHANGE_HANDLER, SC_FAQ_GROUP_QUERY_PARAM, SC_FAQ_QUESTION_ANCHOR_PREFIX, SC_HELP_NOTIFICATION_CLOSE, SC_HELP_NOTIFICATION_LIMIT, SC_HIDDEN_PRINT_ELEMENTS, SC_MANAGER_QR_HANDLER, SC_NOTIFY_WHEN_IN_STOCK_REQUIRED_FIELDS, SC_ORDER_FORM_CONFIG, SC_ORDER_OPTIONS, SC_PAGE_SIZE_OPTIONS, SC_SHOW_HELP_NOTIFICATION_IN_PHONE_INPUT, SC_USER_CITY_INFO, SC_USER_INFO, SC_USER_PROVIDERS, SC_VERIFICATION_CODE_TIMEOUT, ScAccordionComponent, ScAccordionContentDirective, ScAddContactDialogComponent, ScAddContragentBankAccountsDialogComponent, ScAddContragentDialogComponent, ScAddDeliveryAddressDialogComponent, ScAddOrEditingCartItemDialogComponent, ScAddOrEditingCartItemFormComponent, ScAddressesSelectionFieldComponent, ScBannerComponent, ScBrandsListComponent, ScCartAddProductsFromCsvDialogComponent, ScCatalogFilterCollapsibleComponent, ScCatalogFiltersComponent, ScCategoryCardComponent, ScContactsAccordionComponent, ScContragentsAccordionComponent, ScContragentsAccordionItemComponent, ScDeliveryAddressAccordionComponent, ScDeliveryAddressAccordionItemComponent, ScDownloadPriceListComponent, ScDraftComponent, ScEmailLinkDirective, ScErrorBlockStatusComponent, ScErrorHandlerComponent, ScFavoriteButtonComponent, ScFeedbackFormComponent, ScFocusFirstInvalidFieldDirective, ScFormatDatePipe, ScFrequentlyAskedQuestionsComponent, ScFrequentlyAskedQuestionsGroupSelectorComponent, ScFrequentlyAskedQuestionsWithGroupsComponent, ScGratitudeComponent, ScHelpNotificationService, ScHoverImageCarouselComponent, ScInputQuantityComponent, ScLinks, ScManagerCardComponent, ScManagerCardPushComponent, ScNewContactFormComponent, ScNewContragentBankAccountsFormComponent, ScNewContragentFormComponent, ScNewsCardComponent, ScNewsCardSkeletonComponent, ScNewsListComponent, ScNextInputFocusDirective, ScNoindexDirective, ScNoindexWrapperComponent, ScNotifyWhenInStockDialogComponent, ScOrderAccessorDirective, ScOrderDirectionItemsComponent, ScOrderFormComponent, ScOrderItemComponent, ScOrderItemsByDirection, ScOrderItemsListByDirectionsComponent, ScOrderItemsListByStockComponent, ScOrderItemsListComponent, ScPaginationLinksComponent, ScPaymentStatusComponent, ScPersonalDataProcessingPolicyComponent, ScPhoneFormatPipe, ScPreviewSampleComponent, ScPreviewSamplesMosquitoComponent, ScPriceCardComponent, ScPriceCardInlineComponent, ScPriceHistoryComponent, ScPriceListPaginationComponent, ScPriceWarehouseStockComponent, ScPrintDirective, ScPrintService, ScPrivacyPolicyComponent, ScProductInAllWarehousesPipe, ScProfileAccordionsContentComponent, ScPublicOfferComponent, ScQRCodeDialogComponent, ScResetUserPasswordComponent, ScResourcePreviewComponent, ScSandwichComponent, ScSandwichM2Component, ScSandwichM2SkeletonComponent, ScSandwichSkeletonComponent, ScSelectOnFocusinDirective, ScSeoTagsComponent, ScShareButtonComponent, ScShareDialogComponent, ScShareMessengersLinksComponent, ScShareService, ScSignInFormByEmailComponent, ScSignInFormByPhoneComponent, ScSignInFormComponent, ScSignUpFormComponent, ScSimpleSignUpFormComponent, ScSuggestionFieldComponent, ScTelLinkDirective, ScTerminalLinkDirective, ScUpdateUserInfoDialogComponent, ScUserManagersComponent, ScUserPhoneApproveDialogComponent, ScVerificationPhoneCheckFormComponent, TreeDirective, TreeIconService, TreeLoaderService, TreeTopDirective, cleanupRecaptchaArtifacts, phoneValidator, scAtLeastOneRequiredValidator, scBicValidator, scClientUiIconsName, scCorrespondentAccountValidator, scGetCurrentRoute, scGetFaqGroupQueryParams, scGetFaqQuestionAnchor, scGetFaqQuestionIdFromAnchor, scPasswordConfirmMatchingValidator, stepValidator, tuiDateValueTransformerDefaultProvider };
6551
+ export type { ApiErrorResponse, IBlockError, INewOrderForm, IScDialogService, IScImage, ScBankAccountFormGroup, ScBrandListItem, ScContactFormGroup, ScFeedbackFormConfig, ScFeedbackFormFieldType, ScIConfiguratorSearchProductSandwich, ScILoader, ScINewCartItemSandwich, ScINewCartItemSandwichM2, ScIOrderFormConfig, ScIPreviewSample, ScISandwichM2Settings, ScISandwichSettings, ScLinkLocation, ScOrderOptions, ScPreviewMosquitoConfig, ScSandwichM2ItemSubmitState, ScShareDialogData, TreeNode };