@snabcentr/client-ui 3.41.4 → 3.41.5
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/error-handler/error-block-status/error-block-status.component.d.ts +8 -0
 - package/esm2022/error-handler/error-block-status/error-block-status.component.mjs +13 -1
 - package/fesm2022/snabcentr-client-ui.mjs +12 -1
 - package/fesm2022/snabcentr-client-ui.mjs.map +1 -1
 - package/package.json +1 -1
 - package/release_notes.tmp +1 -1
 
| 
         @@ -22,6 +22,14 @@ export declare class ScErrorBlockStatusComponent { 
     | 
|
| 
       22 
22 
     | 
    
         
             
                 * Создает сигнал изменения строкового представления об ошибке.
         
     | 
| 
       23 
23 
     | 
    
         
             
                 */
         
     | 
| 
       24 
24 
     | 
    
         
             
                protected readonly pageErrorChange: import("@angular/core").OutputEmitterRef<IBlockError>;
         
     | 
| 
      
 25 
     | 
    
         
            +
                /**
         
     | 
| 
      
 26 
     | 
    
         
            +
                 * Признак, что текущий скрипт исполняется на сервере.
         
     | 
| 
      
 27 
     | 
    
         
            +
                 */
         
     | 
| 
      
 28 
     | 
    
         
            +
                private readonly isServer;
         
     | 
| 
      
 29 
     | 
    
         
            +
                /**
         
     | 
| 
      
 30 
     | 
    
         
            +
                 * Данные об ответе на запрос.
         
     | 
| 
      
 31 
     | 
    
         
            +
                 */
         
     | 
| 
      
 32 
     | 
    
         
            +
                private readonly response;
         
     | 
| 
       25 
33 
     | 
    
         
             
                /**
         
     | 
| 
       26 
34 
     | 
    
         
             
                 * Инициализирует экземпляр класса {@link ErrorPageComponent}.
         
     | 
| 
       27 
35 
     | 
    
         
             
                 */
         
     | 
| 
         @@ -1,5 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            import { ChangeDetectionStrategy, Component, computed, effect, inject, output } from '@angular/core';
         
     | 
| 
       2 
2 
     | 
    
         
             
            import { ActivatedRoute, RouterLink } from '@angular/router';
         
     | 
| 
      
 3 
     | 
    
         
            +
            import { IS_SERVER, RESPONSE } from '@snabcentr/client-core';
         
     | 
| 
       3 
4 
     | 
    
         
             
            import { TuiAppearance, TuiButton, TuiIcons, TuiWithAppearance, TuiWithIcons } from '@taiga-ui/core';
         
     | 
| 
       4 
5 
     | 
    
         
             
            import { ScErrorHandlerComponent } from '../sc-error-handler.component';
         
     | 
| 
       5 
6 
     | 
    
         
             
            import * as i0 from "@angular/core";
         
     | 
| 
         @@ -28,6 +29,14 @@ export class ScErrorBlockStatusComponent { 
     | 
|
| 
       28 
29 
     | 
    
         
             
                     * Создает сигнал изменения строкового представления об ошибке.
         
     | 
| 
       29 
30 
     | 
    
         
             
                     */
         
     | 
| 
       30 
31 
     | 
    
         
             
                    this.pageErrorChange = output();
         
     | 
| 
      
 32 
     | 
    
         
            +
                    /**
         
     | 
| 
      
 33 
     | 
    
         
            +
                     * Признак, что текущий скрипт исполняется на сервере.
         
     | 
| 
      
 34 
     | 
    
         
            +
                     */
         
     | 
| 
      
 35 
     | 
    
         
            +
                    this.isServer = inject(IS_SERVER);
         
     | 
| 
      
 36 
     | 
    
         
            +
                    /**
         
     | 
| 
      
 37 
     | 
    
         
            +
                     * Данные об ответе на запрос.
         
     | 
| 
      
 38 
     | 
    
         
            +
                     */
         
     | 
| 
      
 39 
     | 
    
         
            +
                    this.response = inject(RESPONSE, { optional: true });
         
     | 
| 
       31 
40 
     | 
    
         
             
                    // Если компонент отображён маршрутизацией из-за перехода по неизвестному маршруту, то устанавливаем код 404.
         
     | 
| 
       32 
41 
     | 
    
         
             
                    if (inject(ActivatedRoute).snapshot.data['routes_key'] === 'error') {
         
     | 
| 
       33 
42 
     | 
    
         
             
                        this.errorHandlerComponent.setErrorCode(404);
         
     | 
| 
         @@ -35,6 +44,9 @@ export class ScErrorBlockStatusComponent { 
     | 
|
| 
       35 
44 
     | 
    
         
             
                    effect(() => {
         
     | 
| 
       36 
45 
     | 
    
         
             
                        if (this.code() !== null) {
         
     | 
| 
       37 
46 
     | 
    
         
             
                            this.pageErrorChange.emit(this.error());
         
     | 
| 
      
 47 
     | 
    
         
            +
                            if (this.isServer) {
         
     | 
| 
      
 48 
     | 
    
         
            +
                                this.response?.status(this.code() ?? 0);
         
     | 
| 
      
 49 
     | 
    
         
            +
                            }
         
     | 
| 
       38 
50 
     | 
    
         
             
                        }
         
     | 
| 
       39 
51 
     | 
    
         
             
                    });
         
     | 
| 
       40 
52 
     | 
    
         
             
                }
         
     | 
| 
         @@ -73,4 +85,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo 
     | 
|
| 
       73 
85 
     | 
    
         
             
                        type: Component,
         
     | 
| 
       74 
86 
     | 
    
         
             
                        args: [{ standalone: true, selector: 'sc-error-block-status', imports: [TuiAppearance, TuiWithAppearance, TuiIcons, TuiWithIcons, TuiButton, RouterLink], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col items-center gap-8\">\n    <div class=\"border-20 border-solid border-tui-primary text-center sm:border-32\">\n        <div class=\"text-8xl leading-1.15 text-black sm:text-44\">\n            {{ error().code }}\n        </div>\n        <div class=\"text-6xl leading-1.15 text-tui-primary sm:text-8xl\">ERROR</div>\n    </div>\n    <div class=\"flex flex-col gap-2 text-center\">\n        <div class=\"text-h5 sm:text-h4\">{{ error().message }}</div>\n        <div class=\"text-body-m-bold sm:text-h6\">{{ error().description }}</div>\n    </div>\n    <button\n        tuiButton\n        appearance=\"primary\"\n        routerLink=\"/\"\n    >\n        \u0412\u0435\u0440\u043D\u0443\u0442\u044C\u0441\u044F \u043D\u0430 \u0433\u043B\u0430\u0432\u043D\u0443\u044E\n    </button>\n</div>\n" }]
         
     | 
| 
       75 
87 
     | 
    
         
             
                    }], ctorParameters: () => [] });
         
     | 
| 
       76 
     | 
    
         
            -
            //# sourceMappingURL=data:application/json;base64, 
     | 
| 
      
 88 
     | 
    
         
            +
            //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItYmxvY2stc3RhdHVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9lcnJvci1oYW5kbGVyL2Vycm9yLWJsb2NrLXN0YXR1cy9lcnJvci1ibG9jay1zdGF0dXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2Vycm9yLWhhbmRsZXIvZXJyb3ItYmxvY2stc3RhdHVzL2Vycm9yLWJsb2NrLXN0YXR1cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3JHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQUV4RTs7R0FFRztBQVFILE1BQU0sT0FBTywyQkFBMkI7SUFnQ3BDOztPQUVHO0lBQ0g7UUFsQ0E7O1dBRUc7UUFDZ0IsMEJBQXFCLEdBQTRCLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRXhIOztXQUVHO1FBQ2dCLFNBQUksR0FBMEIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBRTNGOztXQUVHO1FBQ0gsK0RBQStEO1FBQzVDLFVBQUssR0FBd0IsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVsRzs7V0FFRztRQUNnQixvQkFBZSxHQUFHLE1BQU0sRUFBZSxDQUFDO1FBRTNEOztXQUVHO1FBQ2MsYUFBUSxHQUFZLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV2RDs7V0FFRztRQUNjLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFNN0QsNkdBQTZHO1FBQzdHLElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDakUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqRCxDQUFDO1FBRUQsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNSLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLElBQUksRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFFeEMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQ2hCLElBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDNUMsQ0FBQztZQUNMLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsa0RBQWtEO0lBQ3hDLGVBQWUsQ0FBQyxJQUFtQjtRQUN6QyxRQUFRLElBQUksRUFBRSxDQUFDO1lBQ1gsS0FBSyxHQUFHO2dCQUNKLE9BQU87b0JBQ0gsT0FBTyxFQUFFLGdEQUFnRDtvQkFDekQsV0FBVyxFQUFFLDhGQUE4RjtvQkFDM0csSUFBSTtpQkFDUCxDQUFDO1lBRU4sS0FBSyxHQUFHO2dCQUNKLE9BQU87b0JBQ0gsT0FBTyxFQUFFLGlDQUFpQztvQkFDMUMsV0FBVyxFQUFFLDhGQUE4RjtvQkFDM0csSUFBSTtpQkFDUCxDQUFDO1lBRU47Z0JBQ0ksT0FBTztvQkFDSCxPQUFPLEVBQUUsb0JBQW9CO29CQUM3QixXQUFXLEVBQUUseURBQXlEO29CQUN0RSxJQUFJLEVBQUUsQ0FBQztpQkFDVixDQUFDO1FBQ1YsQ0FBQztJQUNMLENBQUM7K0dBakZRLDJCQUEyQjttR0FBM0IsMkJBQTJCLGtJQ2xCeEMsZ3pCQW1CQSw0Q0RKd0UsU0FBUyxvSUFBRSxVQUFVOzs0RkFHaEYsMkJBQTJCO2tCQVB2QyxTQUFTO2lDQUNNLElBQUksWUFDTix1QkFBdUIsV0FFeEIsQ0FBQyxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLG1CQUN6RSx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGVmZmVjdCwgaW5qZWN0LCBvdXRwdXQsIFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgSVNfU0VSVkVSLCBSRVNQT05TRSB9IGZyb20gJ0BzbmFiY2VudHIvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgVHVpQXBwZWFyYW5jZSwgVHVpQnV0dG9uLCBUdWlJY29ucywgVHVpV2l0aEFwcGVhcmFuY2UsIFR1aVdpdGhJY29ucyB9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcblxuaW1wb3J0IHsgSUJsb2NrRXJyb3IgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ktYmxvY2stZXJyb3InO1xuaW1wb3J0IHsgU2NFcnJvckhhbmRsZXJDb21wb25lbnQgfSBmcm9tICcuLi9zYy1lcnJvci1oYW5kbGVyLmNvbXBvbmVudCc7XG5cbi8qKlxuICog0JrQvtC80L/QvtC90LXQvdGCINC/0YDQtdC00YHRgtCw0LLQu9C10L3QuNGPINC00LDQvdC90YvRhSDQvtCxINC+0YjQuNCx0LrQtS5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3NjLWVycm9yLWJsb2NrLXN0YXR1cycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Vycm9yLWJsb2NrLXN0YXR1cy5jb21wb25lbnQuaHRtbCcsXG4gICAgaW1wb3J0czogW1R1aUFwcGVhcmFuY2UsIFR1aVdpdGhBcHBlYXJhbmNlLCBUdWlJY29ucywgVHVpV2l0aEljb25zLCBUdWlCdXR0b24sIFJvdXRlckxpbmtdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTY0Vycm9yQmxvY2tTdGF0dXNDb21wb25lbnQge1xuICAgIC8qKlxuICAgICAqINCa0L7QvNC/0L7QvdC10L3RgiDRg9C/0YDQsNCy0LvRj9GO0YnQuNC5INC60L7QtNC+0Lwg0L7RiNC40LHQutC4INC+0YLQvtCx0YDQsNC20LDQtdC80L7QuSDQvdCwINGB0YLRgNCw0L3QuNGG0LUuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGVycm9ySGFuZGxlckNvbXBvbmVudDogU2NFcnJvckhhbmRsZXJDb21wb25lbnQgPSBpbmplY3QoU2NFcnJvckhhbmRsZXJDb21wb25lbnQsIHsgc2tpcFNlbGY6IHRydWUgfSk7XG5cbiAgICAvKipcbiAgICAgKiDQodC40LPQvdCw0Lsg0LrQvtC00LAg0L7RiNC40LHQutC4LlxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjb2RlOiBTaWduYWw8bnVtYmVyIHwgbnVsbD4gPSB0aGlzLmVycm9ySGFuZGxlckNvbXBvbmVudC5nZXRFcnJvckNvZGUoKTtcblxuICAgIC8qKlxuICAgICAqINCU0LDQvdC90YvQtSDQvtCxINC+0YjQuNCx0LrQtS5cbiAgICAgKi9cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdW5pY29ybi9jb25zaXN0ZW50LWZ1bmN0aW9uLXNjb3BpbmdcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZXJyb3I6IFNpZ25hbDxJQmxvY2tFcnJvcj4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLmdldEVycm9yTWVzc2FnZSh0aGlzLmNvZGUoKSkpO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNC10YIg0YHQuNCz0L3QsNC7INC40LfQvNC10L3QtdC90LjRjyDRgdGC0YDQvtC60L7QstC+0LPQviDQv9GA0LXQtNGB0YLQsNCy0LvQtdC90LjRjyDQvtCxINC+0YjQuNCx0LrQtS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcGFnZUVycm9yQ2hhbmdlID0gb3V0cHV0PElCbG9ja0Vycm9yPigpO1xuXG4gICAgLyoqXG4gICAgICog0J/RgNC40LfQvdCw0LosINGH0YLQviDRgtC10LrRg9GJ0LjQuSDRgdC60YDQuNC/0YIg0LjRgdC/0L7Qu9C90Y/QtdGC0YHRjyDQvdCwINGB0LXRgNCy0LXRgNC1LlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaXNTZXJ2ZXI6IGJvb2xlYW4gPSBpbmplY3QoSVNfU0VSVkVSKTtcblxuICAgIC8qKlxuICAgICAqINCU0LDQvdC90YvQtSDQvtCxINC+0YLQstC10YLQtSDQvdCwINC30LDQv9GA0L7RgS5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc3BvbnNlID0gaW5qZWN0KFJFU1BPTlNFLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gICAgLyoqXG4gICAgICog0JjQvdC40YbQuNCw0LvQuNC30LjRgNGD0LXRgiDRjdC60LfQtdC80L/Qu9GP0YAg0LrQu9Cw0YHRgdCwIHtAbGluayBFcnJvclBhZ2VDb21wb25lbnR9LlxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgLy8g0JXRgdC70Lgg0LrQvtC80L/QvtC90LXQvdGCINC+0YLQvtCx0YDQsNC20ZHQvSDQvNCw0YDRiNGA0YPRgtC40LfQsNGG0LjQtdC5INC40Lct0LfQsCDQv9C10YDQtdGF0L7QtNCwINC/0L4g0L3QtdC40LfQstC10YHRgtC90L7QvNGDINC80LDRgNGI0YDRg9GC0YMsINGC0L4g0YPRgdGC0LDQvdCw0LLQu9C40LLQsNC10Lwg0LrQvtC0IDQwNC5cbiAgICAgICAgaWYgKGluamVjdChBY3RpdmF0ZWRSb3V0ZSkuc25hcHNob3QuZGF0YVsncm91dGVzX2tleSddID09PSAnZXJyb3InKSB7XG4gICAgICAgICAgICB0aGlzLmVycm9ySGFuZGxlckNvbXBvbmVudC5zZXRFcnJvckNvZGUoNDA0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5jb2RlKCkgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnBhZ2VFcnJvckNoYW5nZS5lbWl0KHRoaXMuZXJyb3IoKSk7XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc1NlcnZlcikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc3BvbnNlPy5zdGF0dXModGhpcy5jb2RlKCkgPz8gMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQvtC/0LjRgdCw0L3QuNC1INC+0YjQuNCx0LrQuC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb2RlINCa0L7QtCDQvtGI0LjQsdC60LguXG4gICAgICovXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNsYXNzLW1ldGhvZHMtdXNlLXRoaXNcbiAgICBwcm90ZWN0ZWQgZ2V0RXJyb3JNZXNzYWdlKGNvZGU6IG51bWJlciB8IG51bGwpOiBJQmxvY2tFcnJvciB7XG4gICAgICAgIHN3aXRjaCAoY29kZSkge1xuICAgICAgICAgICAgY2FzZSA0MDM6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgbWVzc2FnZTogJ9CaINGB0L7QttCw0LvQtdC90LjRjiwg0YMg0LLQsNGBINC90LXRgiDQtNC+0YHRgtGD0L/QsCDQuiDRjdGC0L7QvNGDINGA0LXRgdGD0YDRgdGDJyxcbiAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICfQktC+0YHQv9C+0LvRjNC30YPQudGC0LXRgdGMINC90LDQstC40LPQsNGG0LjQtdC5INCyINGI0LDQv9C60LUg0LjQu9C4INC/0L7QtNCy0LDQu9C1INGB0LDQudGC0LAsINGH0YLQvtCx0Ysg0L/QtdGA0LXQudGC0Lgg0LIg0LjQvdGC0LXRgNC10YHRg9GO0YnQuNC5INCy0LDRgSDRgNCw0LfQtNC10LsnLFxuICAgICAgICAgICAgICAgICAgICBjb2RlLFxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNhc2UgNDA0OlxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICfQmiDRgdC+0LbQsNC70LXQvdC40Y4sINGC0LDQutC+0Lkg0YHRgtGA0LDQvdC40YbRiyDQvdC10YInLFxuICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ9CS0L7RgdC/0L7Qu9GM0LfRg9C50YLQtdGB0Ywg0L3QsNCy0LjQs9Cw0YbQuNC10Lkg0LIg0YjQsNC/0LrQtSDQuNC70Lgg0L/QvtC00LLQsNC70LUg0YHQsNC50YLQsCwg0YfRgtC+0LHRiyDQv9C10YDQtdC50YLQuCDQsiDQuNC90YLQtdGA0LXRgdGD0Y7RidC40Lkg0LLQsNGBINGA0LDQt9C00LXQuycsXG4gICAgICAgICAgICAgICAgICAgIGNvZGUsXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiAn0J3QtdC40LfQstC10YHRgtC90LDRjyDQvtGI0LjQsdC60LAnLFxuICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ9Cf0L7QttCw0LvRg9C50YHRgtCwINC+0LHQvdC+0LLQuNGC0LUg0YHRgtGA0LDQvdC40YbRgyDQuNC70Lgg0L7QsdGA0LDRgtC40YLQtdGB0Ywg0Log0LzQtdC90LXQtNC20LXRgNGDJyxcbiAgICAgICAgICAgICAgICAgICAgY29kZTogMCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgaXRlbXMtY2VudGVyIGdhcC04XCI+XG4gICAgPGRpdiBjbGFzcz1cImJvcmRlci0yMCBib3JkZXItc29saWQgYm9yZGVyLXR1aS1wcmltYXJ5IHRleHQtY2VudGVyIHNtOmJvcmRlci0zMlwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC04eGwgbGVhZGluZy0xLjE1IHRleHQtYmxhY2sgc206dGV4dC00NFwiPlxuICAgICAgICAgICAge3sgZXJyb3IoKS5jb2RlIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC02eGwgbGVhZGluZy0xLjE1IHRleHQtdHVpLXByaW1hcnkgc206dGV4dC04eGxcIj5FUlJPUjwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0yIHRleHQtY2VudGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWg1IHNtOnRleHQtaDRcIj57eyBlcnJvcigpLm1lc3NhZ2UgfX08L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtYm9keS1tLWJvbGQgc206dGV4dC1oNlwiPnt7IGVycm9yKCkuZGVzY3JpcHRpb24gfX08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8YnV0dG9uXG4gICAgICAgIHR1aUJ1dHRvblxuICAgICAgICBhcHBlYXJhbmNlPVwicHJpbWFyeVwiXG4gICAgICAgIHJvdXRlckxpbms9XCIvXCJcbiAgICA+XG4gICAgICAgINCS0LXRgNC90YPRgtGM0YHRjyDQvdCwINCz0LvQsNCy0L3Rg9GOXG4gICAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
         
     | 
| 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            import * as i0 from '@angular/core';
         
     | 
| 
       2 
2 
     | 
    
         
             
            import { inject, Injectable, Directive, ContentChildren, HostListener, NgModule, EventEmitter, signal, ChangeDetectorRef, Input, Output, Component, ChangeDetectionStrategy, Inject, HostBinding, ElementRef, Pipe, Renderer2, input, model, output, SkipSelf, DestroyRef, effect, ContentChild, ViewChild, Optional, computed, viewChild, forwardRef } from '@angular/core';
         
     | 
| 
       3 
3 
     | 
    
         
             
            import * as i1 from '@snabcentr/client-core';
         
     | 
| 
       4 
     | 
    
         
            -
            import { ScContactsService, ScUserService, ScAuthService, SEARCH_TERM, ScUnitsHelper, ScImageHelper, SC_PATH_IMAGE_NOT_FOUND, ScImage, IS_RUNNING_ON_TERMINAL, ScPhoneService, ScUserMetrikaService, ScUserMetrikaGoalsEnum, ScVCardService, ScVerificationService, ScISuggestionType, SC_MIN_LENGTH_SEARCH_TERM, ScConvertersService, ScOpfList, ScMediaImageTransformerPipe, ScLocationsService, ScWarehouseService, SEARCH_TERM_PROVIDERS, ScCartService, ScUploadedFile, ScMimeTypes, ScCatalogService, SC_URLS, ScPaginationService, SC_NEXT_PAGE_PAGINATION_CLICK, SC_PRODUCT_PAGINATION_OPTIONS, ScIconTypesEnum, ScDocumentInfoTypesEnum,  
     | 
| 
      
 4 
     | 
    
         
            +
            import { ScContactsService, ScUserService, ScAuthService, SEARCH_TERM, ScUnitsHelper, ScImageHelper, SC_PATH_IMAGE_NOT_FOUND, ScImage, IS_RUNNING_ON_TERMINAL, ScPhoneService, ScUserMetrikaService, ScUserMetrikaGoalsEnum, ScVCardService, ScVerificationService, ScISuggestionType, SC_MIN_LENGTH_SEARCH_TERM, ScConvertersService, ScOpfList, ScMediaImageTransformerPipe, ScLocationsService, ScWarehouseService, SEARCH_TERM_PROVIDERS, ScCartService, ScUploadedFile, ScMimeTypes, ScCatalogService, SC_URLS, ScPaginationService, SC_NEXT_PAGE_PAGINATION_CLICK, SC_PRODUCT_PAGINATION_OPTIONS, IS_SERVER, RESPONSE, ScIconTypesEnum, ScDocumentInfoTypesEnum, ScFrequentlyAskedQuestionsService, SC_COMPANY_INFO, ScFeedbackService, ScIdOrSlugPipe, ScJsonLdModule } from '@snabcentr/client-core';
         
     | 
| 
       5 
5 
     | 
    
         
             
            import * as i6 from 'rxjs';
         
     | 
| 
       6 
6 
     | 
    
         
             
            import { EMPTY, BehaviorSubject, switchMap, of, shareReplay, Subject, map, filter, tap, catchError, finalize, startWith, share, timer, scan, takeWhile, endWith, distinctUntilChanged, debounceTime, throwError, combineLatest, Observable, pairwise, noop, first, merge, skip } from 'rxjs';
         
     | 
| 
       7 
7 
     | 
    
         
             
            import * as i7 from '@taiga-ui/cdk';
         
     | 
| 
         @@ -5823,6 +5823,14 @@ class ScErrorBlockStatusComponent { 
     | 
|
| 
       5823 
5823 
     | 
    
         
             
                     * Создает сигнал изменения строкового представления об ошибке.
         
     | 
| 
       5824 
5824 
     | 
    
         
             
                     */
         
     | 
| 
       5825 
5825 
     | 
    
         
             
                    this.pageErrorChange = output();
         
     | 
| 
      
 5826 
     | 
    
         
            +
                    /**
         
     | 
| 
      
 5827 
     | 
    
         
            +
                     * Признак, что текущий скрипт исполняется на сервере.
         
     | 
| 
      
 5828 
     | 
    
         
            +
                     */
         
     | 
| 
      
 5829 
     | 
    
         
            +
                    this.isServer = inject(IS_SERVER);
         
     | 
| 
      
 5830 
     | 
    
         
            +
                    /**
         
     | 
| 
      
 5831 
     | 
    
         
            +
                     * Данные об ответе на запрос.
         
     | 
| 
      
 5832 
     | 
    
         
            +
                     */
         
     | 
| 
      
 5833 
     | 
    
         
            +
                    this.response = inject(RESPONSE, { optional: true });
         
     | 
| 
       5826 
5834 
     | 
    
         
             
                    // Если компонент отображён маршрутизацией из-за перехода по неизвестному маршруту, то устанавливаем код 404.
         
     | 
| 
       5827 
5835 
     | 
    
         
             
                    if (inject(ActivatedRoute).snapshot.data['routes_key'] === 'error') {
         
     | 
| 
       5828 
5836 
     | 
    
         
             
                        this.errorHandlerComponent.setErrorCode(404);
         
     | 
| 
         @@ -5830,6 +5838,9 @@ class ScErrorBlockStatusComponent { 
     | 
|
| 
       5830 
5838 
     | 
    
         
             
                    effect(() => {
         
     | 
| 
       5831 
5839 
     | 
    
         
             
                        if (this.code() !== null) {
         
     | 
| 
       5832 
5840 
     | 
    
         
             
                            this.pageErrorChange.emit(this.error());
         
     | 
| 
      
 5841 
     | 
    
         
            +
                            if (this.isServer) {
         
     | 
| 
      
 5842 
     | 
    
         
            +
                                this.response?.status(this.code() ?? 0);
         
     | 
| 
      
 5843 
     | 
    
         
            +
                            }
         
     | 
| 
       5833 
5844 
     | 
    
         
             
                        }
         
     | 
| 
       5834 
5845 
     | 
    
         
             
                    });
         
     | 
| 
       5835 
5846 
     | 
    
         
             
                }
         
     |