@snabcentr/client-ui 3.17.12 → 3.19.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.
Files changed (32) hide show
  1. package/accordion/sc-accordion.component.d.ts +5 -1
  2. package/delivery-address/add-delivery-address-dialog/sc-add-delivery-address-dialog.component.d.ts +9 -1
  3. package/delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component.d.ts +9 -1
  4. package/delivery-address/sc-delivery-address.module.d.ts +2 -1
  5. package/esm2022/accordion/sc-accordion.component.mjs +8 -4
  6. package/esm2022/contacts/contacts-accordion/sc-contacts-accordion.component.mjs +1 -1
  7. package/esm2022/contragents/contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component.mjs +1 -1
  8. package/esm2022/contragents/contragents-accordion/sc-contragents-accordion.component.mjs +1 -1
  9. package/esm2022/delivery-address/add-delivery-address-dialog/sc-add-delivery-address-dialog.component.mjs +14 -3
  10. package/esm2022/delivery-address/delivery-address-accordion/delivery-address-accordion-item/sc-delivery-address-accordion-item.component.mjs +1 -1
  11. package/esm2022/delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component.mjs +17 -5
  12. package/esm2022/delivery-address/sc-delivery-address.module.mjs +12 -5
  13. package/esm2022/form-fields/addresses-selection-field/sc-addresses-selection-field.component.mjs +4 -4
  14. package/esm2022/icons/sc-client-ui-icons-name.mjs +2 -1
  15. package/esm2022/profile/sc-profile-accordions-content/sc-profile-accordions-content.component.mjs +42 -54
  16. package/esm2022/providers/index.mjs +2 -1
  17. package/esm2022/providers/sc-country-ids.mjs +6 -0
  18. package/esm2022/providers/sc-user-providers.mjs +24 -18
  19. package/esm2022/samples/sc-preview-samples-mosquito/sc-preview-samples-mosquito.component.mjs +7 -7
  20. package/esm2022/services/sc-help-notification.service.mjs +11 -3
  21. package/fesm2022/snabcentr-client-ui.mjs +125 -93
  22. package/fesm2022/snabcentr-client-ui.mjs.map +1 -1
  23. package/icons/svg-pack/img/phone.svg +25 -0
  24. package/package.json +2 -2
  25. package/profile/sc-profile-accordions-content/sc-profile-accordions-content.component.d.ts +21 -24
  26. package/providers/index.d.ts +1 -0
  27. package/providers/sc-country-ids.d.ts +5 -0
  28. package/providers/sc-user-providers.d.ts +10 -6
  29. package/release_notes.tmp +2 -2
  30. package/samples/sc-preview-samples-mosquito/sc-preview-samples-mosquito.component.d.ts +5 -5
  31. package/services/sc-help-notification.service.d.ts +8 -0
  32. package/styles/tailwind/tailwind.scss +4 -0
@@ -0,0 +1,25 @@
1
+ <svg width="2em" height="2em" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <rect width="32" height="32" rx="10" fill="white"/>
3
+ <path d="M18.347 6.00543C17.8667 5.95207 17.4341 6.29817 17.3807
4
+ 6.77847C17.3274 7.25876 17.6735 7.69137 18.1538 7.74473C19.7321 7.92007 21.2039 8.62686 22.3275 9.74907C23.4511
5
+ 10.8713 24.1598 12.3422 24.3371 13.9203C24.3911 14.4005 24.8241 14.7461 25.3043 14.6921C25.7846 14.6381 26.1301
6
+ 14.2051 26.0762 13.7249C25.8545 11.7522 24.9687 9.9136 23.5642 8.51085C22.1596 7.1081 20.3199 6.2246 18.347
7
+ 6.00543ZM18.4179 9.51627C17.9436 9.42373 17.4841 9.73321 17.3916 10.2075C17.299 10.6818 17.6085 11.1413 18.0828
8
+ 11.2339C18.7665 11.3673 19.3949 11.7017 19.8875 12.1942C20.38 12.6868 20.7144 13.3152 20.8478 13.9989C20.9404
9
+ 14.4732 21.3999 14.7827 21.8742 14.6901C22.3485 14.5976 22.658 14.1381 22.5654 13.6638C22.3653 12.6382 21.8638
10
+ 11.6957 21.1249 10.9568C20.386 10.2179 19.4435 9.71636 18.4179 9.51627ZM12.186 10.2495C12.1247 9.82713 11.7384 9.49584
11
+ 11.3115 9.50004L11.3029 9.50013L8.67832 9.50008C8.19027 9.50077 7.76687 9.95851 7.80756 10.4482C8.62301 18.0903 14.9055
12
+ 24.3536 22.5099 25.1843C22.8728 25.2147 23.2384 24.9962 23.3837 24.6635C23.5128 24.3678 23.5563 23.9503 23.5412
13
+ 23.3908C23.5344 23.1432 23.5176 22.893 23.4999 22.6298L23.4947 22.5523C23.4758 22.2699 23.4566 21.967 23.4566 21.6801C23.4566
14
+ 21.6728 23.4567 21.6656 23.4569 21.6584C23.4676 21.227 23.1351 20.8332 22.7084 20.7708C21.8041 20.6518 20.9158 20.4303
15
+ 20.0615 20.111L20.06 20.1104C19.754 19.9954 19.3713 20.0766 19.1383 20.3059L18.0291 21.4151C17.7506 21.6936 17.3203 21.7517
16
+ 16.9778 21.557C14.6503 20.2335 12.7232 18.3064 11.3997 15.9788C11.205 15.6364 11.2631 15.2061 11.5416 14.9276C11.6846 14.7846
17
+ 11.8186 14.6572 11.9437 14.5383C12.2379 14.2587 12.4825 14.0261 12.6786 13.7478C12.9087 13.4212 12.9549 13.1857 12.8463 12.8967L12.8457
18
+ 12.8952C12.5263 12.0404 12.3058 11.1525 12.186 10.2495ZM11.299 7.75008C12.6034 7.73964 13.7366 8.71561 13.9192 10.0076L13.9203
19
+ 10.0153C14.0229 10.7906 14.2117 11.5512 14.4849 12.2822C14.8602 13.2819 14.5531 14.1256 14.1092 14.7557C13.8722 15.0922 13.5551 15.4178
20
+ 13.2706 15.6933C14.2986 17.3022 15.6654 18.6675 17.2754 19.6938L17.9029 19.0664L17.9064 19.0629C18.6249 18.3524 19.7291 18.1168 20.6751
21
+ 18.472C21.4064 18.7453 22.1666 18.9347 22.9405 19.0363L22.9488 19.0374C24.2532 19.2214 25.233 20.3735 25.2066 21.6894C25.207 21.9073
22
+ 25.2218 22.1518 25.2408 22.4354L25.2462 22.5157C25.2636 22.7734 25.2828 23.0586 25.2905 23.3434C25.3072 23.9569 25.2777 24.6989 24.9875
23
+ 25.3637C24.5405 26.3876 23.4622 27.0287 22.3444 26.9264L22.3296 26.925C13.9028 26.0092 6.96595 19.095 6.0665 10.625L6.06515 10.6113C5.92748
24
+ 9.08782 7.16673 7.75151 8.67703 7.75008H11.299Z" fill="currentColor"/>
25
+ </svg>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@snabcentr/client-ui",
3
- "version": "3.17.12",
3
+ "version": "3.19.0",
4
4
  "author": "Snabcentr Ltd.",
5
5
  "repository": "https://gitlab.snabcentr.met/web/angular/snabcentr-client-ui-lib",
6
6
  "license": "Commercial",
@@ -15,7 +15,7 @@
15
15
  "@maskito/core": "^3.2.0",
16
16
  "@ng-web-apis/intersection-observer": "^4.11.1",
17
17
  "@ng-web-apis/common": "^4.11.1",
18
- "@snabcentr/client-core": "^2.24.3",
18
+ "@snabcentr/client-core": "^2.43.0",
19
19
  "@taiga-ui/addon-charts": "^4.24.0",
20
20
  "@taiga-ui/addon-commerce": "^4.24.0",
21
21
  "@taiga-ui/cdk": "^4.24.0",
@@ -1,20 +1,32 @@
1
1
  import { EventEmitter } from '@angular/core';
2
2
  import { FormControl } from '@angular/forms';
3
- import { ScContragent, ScIBankAccount, ScICity, ScIContact, ScIDeliveryAddress, ScLocationsService, ScUser, ScUserService, ScVerificationService } from '@snabcentr/client-core';
3
+ import { ScContragent, ScIBankAccount, ScICityWithRegionAndCountry, ScIContact, ScIDeliveryAddress, ScUser } from '@snabcentr/client-core';
4
4
  import { Observable, Subject } from 'rxjs';
5
5
  import * as i0 from "@angular/core";
6
6
  /**
7
7
  * Компонент контента профиля пользователя в виде раскрывающихся смысловых блоков.
8
8
  */
9
9
  export declare class ScProfileAccordionsContentComponent {
10
- readonly user$: Observable<ScUser>;
11
- private readonly locationsService;
10
+ /**
11
+ * Сервис данных о пользователе.
12
+ */
12
13
  private readonly userService;
14
+ /**
15
+ * Сервис верификации.
16
+ */
13
17
  private readonly verificationService;
18
+ /**
19
+ * Поток данных о текущем пользователе.
20
+ */
21
+ protected readonly user$: Observable<ScUser>;
22
+ /**
23
+ * Поток данных о текущем городе пользователя.
24
+ */
25
+ protected readonly userCity$: Observable<ScICityWithRegionAndCountry>;
14
26
  /**
15
27
  * {@link FormControl} переключателя 'Я хочу получать рассылку'.
16
28
  */
17
- getNewsControl: FormControl<boolean>;
29
+ protected getNewsControl: FormControl<boolean>;
18
30
  /**
19
31
  * {@link Observable} запроса изменения признака пользователя 'Я хочу получать рассылку'.
20
32
  */
@@ -22,11 +34,11 @@ export declare class ScProfileAccordionsContentComponent {
22
34
  /**
23
35
  * {@link Observable} изменения состояния загрузки данных изменения признака пользователя 'Я хочу получать рассылку'.
24
36
  */
25
- readonly getNewsLoading$: Observable<boolean>;
37
+ protected readonly getNewsLoading$: Observable<boolean>;
26
38
  /**
27
39
  * {@link Subject} события отправки сообщения для подтверждения адреса электронной почты.
28
40
  */
29
- readonly onSendApproveEmail: Subject<string>;
41
+ protected readonly onSendApproveEmail: Subject<string>;
30
42
  /**
31
43
  * {@link Observable} запроса данных аутентификации.
32
44
  */
@@ -34,15 +46,15 @@ export declare class ScProfileAccordionsContentComponent {
34
46
  /**
35
47
  * {@link Observable} изменения состояния загрузки данных отправки сообщения для подтверждения адреса электронной почты.
36
48
  */
37
- readonly approveEmailLoading$: Observable<boolean>;
49
+ protected readonly approveEmailLoading$: Observable<boolean>;
38
50
  /**
39
51
  * {@link Observable} изменения состояния признака, отправлено ли сообщение для подтверждения адреса электронной почты.
40
52
  */
41
- readonly isSendApproveEmail$: Observable<boolean>;
53
+ protected readonly isSendApproveEmail$: Observable<boolean>;
42
54
  /**
43
55
  * {@link Observable} изменения списка контактных лиц пользователя.
44
56
  */
45
- readonly userContacts$: Observable<ScIContact[] | null>;
57
+ protected readonly userContacts$: Observable<ScIContact[] | null>;
46
58
  /**
47
59
  * Событие нажатия на кнопку редактирование профиля пользователя.
48
60
  */
@@ -105,21 +117,6 @@ export declare class ScProfileAccordionsContentComponent {
105
117
  * Событие нажатия на кнопку удаления контактного лица у клиента.
106
118
  */
107
119
  deleteUserContactClick: EventEmitter<ScIContact>;
108
- /**
109
- * Инициализирует экземпляр класса {@link ScProfileComponent}.
110
- *
111
- * @param user$ Поток данных о текущем пользователе.
112
- * @param locationsService Сервис для получения списков стран, регионов, городов.
113
- * @param userService Сервис данных о пользователе.
114
- * @param verificationService Сервис верификации.
115
- */
116
- constructor(user$: Observable<ScUser>, locationsService: ScLocationsService, userService: ScUserService, verificationService: ScVerificationService);
117
- /**
118
- * Создает запрос получения данных о городе текущего пользователя по идентификатору города.
119
- *
120
- * @param cityId Идентификатор записи города.
121
- */
122
- getUserCity$(cityId: number): Observable<ScICity>;
123
120
  static ɵfac: i0.ɵɵFactoryDeclaration<ScProfileAccordionsContentComponent, never>;
124
121
  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, false, never>;
125
122
  }
@@ -4,4 +4,5 @@ export * from './sc-help-notification-limit';
4
4
  export * from './sc-help-notification-close';
5
5
  export * from './sc-max-files-in-form-input';
6
6
  export * from './sc-page-size-options';
7
+ export * from './sc-country-ids';
7
8
  export * from './sc-user-providers';
@@ -0,0 +1,5 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ /**
3
+ * Токен ID России.
4
+ */
5
+ export declare const CURRENT_COUNTRY_ID: InjectionToken<number>;
@@ -1,17 +1,21 @@
1
1
  import { InjectionToken, Provider } from '@angular/core';
2
- import { ScUser, ScUserService } from '@snabcentr/client-core';
2
+ import { ScICityWithRegionAndCountry, ScUser } from '@snabcentr/client-core';
3
3
  import { Observable } from 'rxjs';
4
4
  /**
5
5
  * Токен потока данных о текущем пользователе.
6
6
  */
7
- export declare const SC_USER_INFO: InjectionToken<Observable<ScUser | undefined>>;
7
+ export declare const SC_USER_INFO: InjectionToken<Observable<ScUser>>;
8
8
  /**
9
- * Фабрика создания потока данных о текущем пользователе.
10
- *
11
- * @param userService Сервис данных о пользователе.
9
+ * Токен потока данных о текущем городе пользователя с информацией о регионе и стране.
10
+ */
11
+ export declare const SC_USER_CITY_INFO: InjectionToken<Observable<ScICityWithRegionAndCountry>>;
12
+ /**
13
+ * Токен проверки, является ли текущая страна пользователя верной.
12
14
  */
13
- export declare function scUserFactory(userService: ScUserService): Observable<ScUser | undefined>;
15
+ export declare const IS_DEFAULT_COUNTRY: InjectionToken<Observable<boolean>>;
14
16
  /**
15
17
  * Провайдер потока данных о текущем пользователе.
18
+ *
19
+ * @deprecated
16
20
  */
17
21
  export declare const SC_USER_PROVIDERS: Provider[];
package/release_notes.tmp CHANGED
@@ -1,6 +1,6 @@
1
- ## 3.17.12 (2025-04-15)
1
+ ## 3.19.0 (2025-04-17)
2
2
 
3
3
  ### changed (1 change)
4
4
 
5
- - [#11370: Добавлено свойство ngSkipHydration в компонент формы входа для оптимизации гидратации.](web_soft/libs/angular/snabcentr-client-ui-lib@56fd556d89df47678b9361316b98b5df9340723b) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!263))
5
+ - [#11479: Отключена возможность добавить адрес доставки через форму в профиле....](web_soft/libs/angular/snabcentr-client-ui-lib@ffebe1944bc848bf2a8705bf6e39b92351091563) ([merge request](web_soft/libs/angular/snabcentr-client-ui-lib!265))
6
6
 
@@ -34,13 +34,13 @@ export declare class ScPreviewSamplesMosquitoComponent {
34
34
  */
35
35
  readonly openConsultationClick: OutputEmitterRef<void>;
36
36
  /**
37
- * Признак, что необходимо отображать переключатели на карусели.
37
+ * Интервал автоматического прочитывания списка товаров в миллисекундах.
38
38
  */
39
- protected readonly isShowCarouselSwitches: InputSignal<boolean>;
39
+ readonly autoSlideIntervale: InputSignal<number>;
40
40
  /**
41
- * Интервал автоматического прочитывания списка товаров в миллисекундах.
41
+ * Признак, что необходимо отображать переключатели на карусели.
42
42
  */
43
- protected readonly autoSlideIntervale: number;
43
+ protected readonly isShowCarouselSwitches: InputSignal<boolean>;
44
44
  static ɵfac: i0.ɵɵFactoryDeclaration<ScPreviewSamplesMosquitoComponent, never>;
45
- static ɵcmp: i0.ɵɵComponentDeclaration<ScPreviewSamplesMosquitoComponent, "sc-preview-samples-mosquito", never, { "config": { "alias": "config"; "required": true; "isSignal": true; }; "isShowCarouselSwitches": { "alias": "isShowCarouselSwitches"; "required": false; "isSignal": true; }; }, { "openConfiguratorClick": "openConfiguratorClick"; "openConsultationClick": "openConsultationClick"; }, never, never, true, never>;
45
+ static ɵcmp: i0.ɵɵComponentDeclaration<ScPreviewSamplesMosquitoComponent, "sc-preview-samples-mosquito", never, { "config": { "alias": "config"; "required": true; "isSignal": true; }; "autoSlideIntervale": { "alias": "autoSlideIntervale"; "required": false; "isSignal": true; }; "isShowCarouselSwitches": { "alias": "isShowCarouselSwitches"; "required": false; "isSignal": true; }; }, { "openConfiguratorClick": "openConfiguratorClick"; "openConsultationClick": "openConsultationClick"; }, never, never, true, never>;
46
46
  }
@@ -21,6 +21,14 @@ export declare class ScHelpNotificationService {
21
21
  * Поток для закрытия уведомлений.
22
22
  */
23
23
  private readonly close$;
24
+ /**
25
+ * Сервис для работы с пользователем.
26
+ */
27
+ private readonly userService;
28
+ /**
29
+ * Список контактов для показа в уведомлении.
30
+ */
31
+ readonly userHelpContacts: Observable<ScIOrgContact[]>;
24
32
  /**
25
33
  * Инициализирует экземпляр класса {@link ScHelpNotificationService}.
26
34
  */
@@ -708,6 +708,10 @@ video {
708
708
  margin: -0.5rem !important;
709
709
  }
710
710
 
711
+ .m-2 {
712
+ margin: 0.5rem;
713
+ }
714
+
711
715
  .mx-2 {
712
716
  margin-left: 0.5rem;
713
717
  margin-right: 0.5rem;