@snabcentr/client-ui 4.6.1 → 5.1.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/fesm2022/snabcentr-client-ui.mjs +4349 -4761
- package/fesm2022/snabcentr-client-ui.mjs.map +1 -1
- package/package.json +35 -36
- package/release_notes.tmp +2 -4
- package/styles/taiga/variables.less +16 -17
- package/styles/tailwind/tailwind.scss +17 -12
- package/types/snabcentr-client-ui.d.ts +5704 -0
- package/accordion/index.d.ts +0 -3
- package/accordion/sc-accordion-content.directive.d.ts +0 -9
- package/accordion/sc-accordion.component.d.ts +0 -56
- package/accordion/sc-accordion.module.d.ts +0 -15
- package/auth/enums/auth-method.d.ts +0 -13
- package/auth/index.d.ts +0 -8
- package/auth/interfaces/index.d.ts +0 -2
- package/auth/interfaces/sc-bank-account-form-group.d.ts +0 -11
- package/auth/interfaces/sc-contact-form-group.d.ts +0 -10
- package/auth/sc-auth.module.d.ts +0 -27
- package/auth/sc-sign-in-form/sc-sign-in-form-by-email/sc-sign-in-form-by-email.component.d.ts +0 -55
- package/auth/sc-sign-in-form/sc-sign-in-form-by-phone/sc-sign-in-form-by-phone.component.d.ts +0 -45
- package/auth/sc-sign-in-form/sc-sign-in-form.component.d.ts +0 -53
- package/auth/sc-simple-sign-up-form/sc-simple-sign-up-form.component.d.ts +0 -113
- package/auth/sign-up-form/sc-sign-up-form.component.d.ts +0 -166
- package/banner/index.d.ts +0 -2
- package/banner/sc-banner.component.d.ts +0 -79
- package/banner/sc-banner.module.d.ts +0 -17
- package/brands-list/index.d.ts +0 -2
- package/brands-list/sc-brands-list.component.d.ts +0 -15
- package/brands-list/sc-brands-list.module.d.ts +0 -12
- package/cart/add-or-editing-cart-item-dialog/add-or-editing-cart-item-form/sc-add-or-editing-cart-item-form.component.d.ts +0 -102
- package/cart/add-or-editing-cart-item-dialog/index.d.ts +0 -2
- package/cart/add-or-editing-cart-item-dialog/sc-add-or-editing-cart-item-dialog.component.d.ts +0 -49
- package/cart/index.d.ts +0 -2
- package/cart/sc-cart-add-products-from-csv-dialog/sc-cart-add-products-from-csv-dialog.component.d.ts +0 -62
- package/catalog/catalog-filters/index.d.ts +0 -3
- package/catalog/catalog-filters/sc-catalog-filters.component.d.ts +0 -102
- package/catalog/catalog-filters/tokens/sc-catalog-products-filters.d.ts +0 -7
- package/catalog/catalog-filters/tokens/sc-catalog-show-products-recursively.d.ts +0 -5
- package/catalog/category-card/sc-category-card.component.d.ts +0 -76
- package/catalog/cost-with-discount/cost-with-discount.component.d.ts +0 -23
- package/catalog/download-price-list/sc-download-price-list.component.d.ts +0 -38
- package/catalog/hover-image-carousel/sc-hover-image-carousel.component.d.ts +0 -48
- package/catalog/index.d.ts +0 -15
- package/catalog/input-quantity/sc-input-quantity.component.d.ts +0 -82
- package/catalog/notify-when-in-stock-dialog/index.d.ts +0 -2
- package/catalog/notify-when-in-stock-dialog/sc-notify-when-in-stock-dialog.component.d.ts +0 -90
- package/catalog/notify-when-in-stock-dialog/sc-product-in-all-warehouses.pipe.d.ts +0 -22
- package/catalog/price-card/sc-price-card.component.d.ts +0 -18
- package/catalog/price-card-inline/sc-price-card-inline.component.d.ts +0 -10
- package/catalog/price-history/sc-price-history.component.d.ts +0 -88
- package/catalog/price-list-pagination/sc-price-list-pagination.component.d.ts +0 -40
- package/catalog/price-warehouse-stock/sc-price-warehouse-stock.component.d.ts +0 -47
- package/catalog/sc-catalog.module.d.ts +0 -29
- package/catalog/sc-favorite-button/sc-favorite-button.component.d.ts +0 -25
- package/catalog/seo-tags/sc-seo-tags.component.d.ts +0 -20
- package/configurators/index.d.ts +0 -3
- package/configurators/models/index.d.ts +0 -3
- package/configurators/models/sandwich/sc-i-configurator-search-product-sandwich.d.ts +0 -22
- package/configurators/models/sandwich/sc-i-sandwich-settings.d.ts +0 -18
- package/configurators/models/sandwich_m2/sc-i-sandwich-m2-settings.d.ts +0 -18
- package/configurators/sandwich/index.d.ts +0 -3
- package/configurators/sandwich/sandwich-skeleton/sc-sandwich-skeleton.component.d.ts +0 -8
- package/configurators/sandwich/sc-i-new-cart-item-sandwich.d.ts +0 -14
- package/configurators/sandwich/sc-sandwich.component.d.ts +0 -182
- package/configurators/sandwich_m2/index.d.ts +0 -4
- package/configurators/sandwich_m2/sandwich-m2-skeleton/sc-sandwich-m2-skeleton.component.d.ts +0 -8
- package/configurators/sandwich_m2/sc-i-new-cart-item-sandwich-m2.d.ts +0 -23
- package/configurators/sandwich_m2/sc-sandwich-m2-item-submit-state.d.ts +0 -13
- package/configurators/sandwich_m2/sc-sandwich-m2.component.d.ts +0 -267
- package/contacts/add-contact-dialog/sc-add-contact-dialog.component.d.ts +0 -49
- package/contacts/contacts-accordion/sc-contacts-accordion.component.d.ts +0 -23
- package/contacts/index.d.ts +0 -7
- package/contacts/manager-card/sc-manager-card.component.d.ts +0 -22
- package/contacts/manager-card-push/sc-manager-card-push.component.d.ts +0 -18
- package/contacts/new-contact-form/sc-new-contact-form.component.d.ts +0 -28
- package/contacts/sc-contacts.module.d.ts +0 -27
- package/contacts/tokens/index.d.ts +0 -2
- package/contacts/tokens/sc-manager-qr-handler.token.d.ts +0 -6
- package/contacts/tokens/sc-show-help-notification-in-phone-input.token.d.ts +0 -5
- package/contragents/add-contragent-bank-account-dialog/sc-add-contragent-bank-account-dialog.component.d.ts +0 -49
- package/contragents/add-contragent-dialog/sc-add-contragent-dialog.component.d.ts +0 -158
- package/contragents/contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component.d.ts +0 -62
- package/contragents/contragents-accordion/sc-contragents-accordion.component.d.ts +0 -49
- package/contragents/index.d.ts +0 -7
- package/contragents/new-contragent-bank-account-form/sc-new-contragent-bank-account-form.component.d.ts +0 -64
- package/contragents/new-contragent-form/sc-new-contragent-form.component.d.ts +0 -119
- package/contragents/sc-contragents.module.d.ts +0 -26
- package/delivery-address/add-delivery-address-dialog/sc-add-delivery-address-dialog.component.d.ts +0 -141
- package/delivery-address/delivery-address-accordion/delivery-address-accordion-item/sc-delivery-address-accordion-item.component.d.ts +0 -50
- package/delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component.d.ts +0 -49
- package/delivery-address/index.d.ts +0 -4
- package/delivery-address/sc-delivery-address.module.d.ts +0 -25
- package/dialogs/index.d.ts +0 -1
- package/dialogs/sc-resource-preview/sc-resource-preview.component.d.ts +0 -42
- package/directives/abstract-price-card/abstract-sc-price-card.directive.d.ts +0 -136
- package/directives/index.d.ts +0 -9
- package/directives/links/index.d.ts +0 -4
- package/directives/links/sc-email-link.directive.d.ts +0 -25
- package/directives/links/sc-link-location.d.ts +0 -5
- package/directives/links/sc-links.d.ts +0 -7
- package/directives/links/sc-tel-link.directive.d.ts +0 -40
- package/directives/next-input-focus/sc-next-input-focus.directive.d.ts +0 -27
- package/directives/next-input-focus/sc-next-input-focus.module.d.ts +0 -10
- package/directives/print/sc-print.directive.d.ts +0 -21
- package/directives/sc-date-value-transformer.directive.d.ts +0 -8
- package/directives/sc-focus-first-invalid-field.directive.d.ts +0 -30
- package/directives/select-on-focusin/sc-select-on-focusin.directive.d.ts +0 -14
- package/directives/terminal-link/sc-terminal-link.directive.d.ts +0 -34
- package/error-handler/consts/error-change-handler.providers.d.ts +0 -6
- package/error-handler/error-block-status/error-block-status.component.d.ts +0 -45
- package/error-handler/index.d.ts +0 -4
- package/error-handler/interfaces/i-block-error.d.ts +0 -17
- package/error-handler/sc-error-handler.component.d.ts +0 -40
- package/esm2022/accordion/index.mjs +0 -4
- package/esm2022/accordion/sc-accordion-content.directive.mjs +0 -17
- package/esm2022/accordion/sc-accordion.component.mjs +0 -92
- package/esm2022/accordion/sc-accordion.module.mjs +0 -26
- package/esm2022/auth/enums/auth-method.mjs +0 -15
- package/esm2022/auth/index.mjs +0 -9
- package/esm2022/auth/interfaces/index.mjs +0 -3
- package/esm2022/auth/interfaces/sc-bank-account-form-group.mjs +0 -2
- package/esm2022/auth/interfaces/sc-contact-form-group.mjs +0 -2
- package/esm2022/auth/sc-auth.module.mjs +0 -103
- package/esm2022/auth/sc-sign-in-form/sc-sign-in-form-by-email/sc-sign-in-form-by-email.component.mjs +0 -100
- package/esm2022/auth/sc-sign-in-form/sc-sign-in-form-by-phone/sc-sign-in-form-by-phone.component.mjs +0 -81
- package/esm2022/auth/sc-sign-in-form/sc-sign-in-form.component.mjs +0 -89
- package/esm2022/auth/sc-simple-sign-up-form/sc-simple-sign-up-form.component.mjs +0 -203
- package/esm2022/auth/sign-up-form/sc-sign-up-form.component.mjs +0 -334
- package/esm2022/banner/index.mjs +0 -3
- package/esm2022/banner/sc-banner.component.mjs +0 -131
- package/esm2022/banner/sc-banner.module.mjs +0 -29
- package/esm2022/brands-list/index.mjs +0 -3
- package/esm2022/brands-list/sc-brands-list.component.mjs +0 -24
- package/esm2022/brands-list/sc-brands-list.module.mjs +0 -22
- package/esm2022/cart/add-or-editing-cart-item-dialog/add-or-editing-cart-item-form/sc-add-or-editing-cart-item-form.component.mjs +0 -233
- package/esm2022/cart/add-or-editing-cart-item-dialog/index.mjs +0 -3
- package/esm2022/cart/add-or-editing-cart-item-dialog/sc-add-or-editing-cart-item-dialog.component.mjs +0 -76
- package/esm2022/cart/index.mjs +0 -3
- package/esm2022/cart/sc-cart-add-products-from-csv-dialog/sc-cart-add-products-from-csv-dialog.component.mjs +0 -110
- package/esm2022/catalog/catalog-filters/index.mjs +0 -4
- package/esm2022/catalog/catalog-filters/sc-catalog-filters.component.mjs +0 -213
- package/esm2022/catalog/catalog-filters/tokens/sc-catalog-products-filters.mjs +0 -10
- package/esm2022/catalog/catalog-filters/tokens/sc-catalog-show-products-recursively.mjs +0 -6
- package/esm2022/catalog/category-card/sc-category-card.component.mjs +0 -102
- package/esm2022/catalog/cost-with-discount/cost-with-discount.component.mjs +0 -39
- package/esm2022/catalog/download-price-list/sc-download-price-list.component.mjs +0 -56
- package/esm2022/catalog/hover-image-carousel/sc-hover-image-carousel.component.mjs +0 -76
- package/esm2022/catalog/index.mjs +0 -16
- package/esm2022/catalog/input-quantity/sc-input-quantity.component.mjs +0 -189
- package/esm2022/catalog/notify-when-in-stock-dialog/index.mjs +0 -3
- package/esm2022/catalog/notify-when-in-stock-dialog/sc-notify-when-in-stock-dialog.component.mjs +0 -173
- package/esm2022/catalog/notify-when-in-stock-dialog/sc-product-in-all-warehouses.pipe.mjs +0 -35
- package/esm2022/catalog/price-card/sc-price-card.component.mjs +0 -73
- package/esm2022/catalog/price-card-inline/sc-price-card-inline.component.mjs +0 -56
- package/esm2022/catalog/price-history/sc-price-history.component.mjs +0 -140
- package/esm2022/catalog/price-list-pagination/sc-price-list-pagination.component.mjs +0 -65
- package/esm2022/catalog/price-warehouse-stock/sc-price-warehouse-stock.component.mjs +0 -61
- package/esm2022/catalog/sc-catalog.module.mjs +0 -126
- package/esm2022/catalog/sc-favorite-button/sc-favorite-button.component.mjs +0 -42
- package/esm2022/catalog/seo-tags/sc-seo-tags.component.mjs +0 -25
- package/esm2022/configurators/index.mjs +0 -4
- package/esm2022/configurators/models/index.mjs +0 -4
- package/esm2022/configurators/models/sandwich/sc-i-configurator-search-product-sandwich.mjs +0 -2
- package/esm2022/configurators/models/sandwich/sc-i-sandwich-settings.mjs +0 -2
- package/esm2022/configurators/models/sandwich_m2/sc-i-sandwich-m2-settings.mjs +0 -2
- package/esm2022/configurators/sandwich/index.mjs +0 -4
- package/esm2022/configurators/sandwich/sandwich-skeleton/sc-sandwich-skeleton.component.mjs +0 -14
- package/esm2022/configurators/sandwich/sc-i-new-cart-item-sandwich.mjs +0 -2
- package/esm2022/configurators/sandwich/sc-sandwich.component.mjs +0 -382
- package/esm2022/configurators/sandwich_m2/index.mjs +0 -5
- package/esm2022/configurators/sandwich_m2/sandwich-m2-skeleton/sc-sandwich-m2-skeleton.component.mjs +0 -14
- package/esm2022/configurators/sandwich_m2/sc-i-new-cart-item-sandwich-m2.mjs +0 -2
- package/esm2022/configurators/sandwich_m2/sc-sandwich-m2-item-submit-state.mjs +0 -5
- package/esm2022/configurators/sandwich_m2/sc-sandwich-m2.component.mjs +0 -561
- package/esm2022/contacts/add-contact-dialog/sc-add-contact-dialog.component.mjs +0 -91
- package/esm2022/contacts/contacts-accordion/sc-contacts-accordion.component.mjs +0 -37
- package/esm2022/contacts/index.mjs +0 -8
- package/esm2022/contacts/manager-card/sc-manager-card.component.mjs +0 -58
- package/esm2022/contacts/manager-card-push/sc-manager-card-push.component.mjs +0 -28
- package/esm2022/contacts/new-contact-form/sc-new-contact-form.component.mjs +0 -37
- package/esm2022/contacts/sc-contacts.module.mjs +0 -89
- package/esm2022/contacts/tokens/index.mjs +0 -3
- package/esm2022/contacts/tokens/sc-manager-qr-handler.token.mjs +0 -25
- package/esm2022/contacts/tokens/sc-show-help-notification-in-phone-input.token.mjs +0 -9
- package/esm2022/contragents/add-contragent-bank-account-dialog/sc-add-contragent-bank-account-dialog.component.mjs +0 -81
- package/esm2022/contragents/add-contragent-dialog/sc-add-contragent-dialog.component.mjs +0 -266
- package/esm2022/contragents/contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component.mjs +0 -74
- package/esm2022/contragents/contragents-accordion/sc-contragents-accordion.component.mjs +0 -68
- package/esm2022/contragents/index.mjs +0 -8
- package/esm2022/contragents/new-contragent-bank-account-form/sc-new-contragent-bank-account-form.component.mjs +0 -72
- package/esm2022/contragents/new-contragent-form/sc-new-contragent-form.component.mjs +0 -224
- package/esm2022/contragents/sc-contragents.module.mjs +0 -115
- package/esm2022/delivery-address/add-delivery-address-dialog/sc-add-delivery-address-dialog.component.mjs +0 -248
- package/esm2022/delivery-address/delivery-address-accordion/delivery-address-accordion-item/sc-delivery-address-accordion-item.component.mjs +0 -60
- package/esm2022/delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component.mjs +0 -68
- package/esm2022/delivery-address/index.mjs +0 -5
- package/esm2022/delivery-address/sc-delivery-address.module.mjs +0 -96
- package/esm2022/dialogs/index.mjs +0 -2
- package/esm2022/dialogs/sc-resource-preview/sc-resource-preview.component.mjs +0 -68
- package/esm2022/directives/abstract-price-card/abstract-sc-price-card.directive.mjs +0 -170
- package/esm2022/directives/index.mjs +0 -10
- package/esm2022/directives/links/index.mjs +0 -5
- package/esm2022/directives/links/sc-email-link.directive.mjs +0 -49
- package/esm2022/directives/links/sc-link-location.mjs +0 -2
- package/esm2022/directives/links/sc-links.mjs +0 -8
- package/esm2022/directives/links/sc-tel-link.directive.mjs +0 -79
- package/esm2022/directives/next-input-focus/sc-next-input-focus.directive.mjs +0 -70
- package/esm2022/directives/next-input-focus/sc-next-input-focus.module.mjs +0 -19
- package/esm2022/directives/print/sc-print.directive.mjs +0 -36
- package/esm2022/directives/sc-date-value-transformer.directive.mjs +0 -30
- package/esm2022/directives/sc-focus-first-invalid-field.directive.mjs +0 -85
- package/esm2022/directives/select-on-focusin/sc-select-on-focusin.directive.mjs +0 -31
- package/esm2022/directives/terminal-link/sc-terminal-link.directive.mjs +0 -69
- package/esm2022/error-handler/consts/error-change-handler.providers.mjs +0 -10
- package/esm2022/error-handler/error-block-status/error-block-status.component.mjs +0 -88
- package/esm2022/error-handler/index.mjs +0 -5
- package/esm2022/error-handler/interfaces/i-block-error.mjs +0 -2
- package/esm2022/error-handler/sc-error-handler.component.mjs +0 -58
- package/esm2022/feedback/feedback-form/sc-feedback-form.component.mjs +0 -344
- package/esm2022/feedback/gratitude/sc-gratitude.component.mjs +0 -32
- package/esm2022/feedback/index.mjs +0 -4
- package/esm2022/feedback/interfaces/index.mjs +0 -2
- package/esm2022/feedback/interfaces/sc-feedback-form-config.mjs +0 -2
- package/esm2022/files/directives/index.mjs +0 -3
- package/esm2022/files/directives/tree-top.directive.mjs +0 -63
- package/esm2022/files/directives/tree.directive.mjs +0 -47
- package/esm2022/files/file-tree-item/file-tree-item.component.mjs +0 -18
- package/esm2022/files/files-and-documents/files-and-documents.component.mjs +0 -61
- package/esm2022/files/files-and-documents.module.mjs +0 -28
- package/esm2022/files/index.mjs +0 -6
- package/esm2022/files/interfaces/tree-node.mjs +0 -2
- package/esm2022/files/services/index.mjs +0 -3
- package/esm2022/files/services/tree-icon.service.mjs +0 -49
- package/esm2022/files/services/tree-loader.service.mjs +0 -62
- package/esm2022/form-fields/addresses-selection-field/sc-addresses-selection-field.component.mjs +0 -156
- package/esm2022/form-fields/form-fields.module.mjs +0 -66
- package/esm2022/form-fields/index.mjs +0 -4
- package/esm2022/form-fields/suggestion-field/sc-suggestion-field.component.mjs +0 -174
- package/esm2022/icons/index.mjs +0 -2
- package/esm2022/icons/sc-client-ui-icons-name.mjs +0 -99
- package/esm2022/loader/index.mjs +0 -2
- package/esm2022/loader/sc-i-loader.mjs +0 -2
- package/esm2022/masks/index.mjs +0 -8
- package/esm2022/masks/sc-account-number-mask.mjs +0 -7
- package/esm2022/masks/sc-bic-mask.mjs +0 -7
- package/esm2022/masks/sc-correspondent-account-mask.mjs +0 -7
- package/esm2022/masks/sc-inn-mask.mjs +0 -13
- package/esm2022/masks/sc-kpp-mask.mjs +0 -7
- package/esm2022/masks/sc-okpo-mask.mjs +0 -13
- package/esm2022/masks/sc-phone-verification-code-mask.mjs +0 -7
- package/esm2022/methods/index.mjs +0 -2
- package/esm2022/methods/sc-get-current-route.mjs +0 -14
- package/esm2022/models/i-sc-image.mjs +0 -2
- package/esm2022/models/index.mjs +0 -2
- package/esm2022/news/index.mjs +0 -4
- package/esm2022/news/news-card/sc-news-card.component.mjs +0 -34
- package/esm2022/news/news-card-skeleton/sc-news-card-skeleton.component.mjs +0 -31
- package/esm2022/news/sc-news.module.mjs +0 -26
- package/esm2022/noindex-wrapper/directives/index.mjs +0 -2
- package/esm2022/noindex-wrapper/directives/sc-noindex.directive.mjs +0 -58
- package/esm2022/noindex-wrapper/index.mjs +0 -3
- package/esm2022/noindex-wrapper/sc-noindex-wrapper.component.mjs +0 -18
- package/esm2022/order/directives/index.mjs +0 -3
- package/esm2022/order/directives/sc-order-accessor.directive.mjs +0 -28
- package/esm2022/order/directives/sc-order-options.mjs +0 -11
- package/esm2022/order/draft/sc-draft.component.mjs +0 -118
- package/esm2022/order/index.mjs +0 -10
- package/esm2022/order/models/sc-i-cart-items-by-direction.mjs +0 -22
- package/esm2022/order/order-item/sc-order-item.component.mjs +0 -108
- package/esm2022/order/order-items-list/sc-order-items-list.component.mjs +0 -209
- package/esm2022/order/order-items-list-by-directions/sc-order-items-list-by-directions.component.mjs +0 -75
- package/esm2022/order/order-items-list-by-stock/sc-order-items-list-by-stock.component.mjs +0 -75
- package/esm2022/order/sc-order.module.mjs +0 -52
- package/esm2022/order/sc-payment-status/sc-payment-status.component.mjs +0 -35
- package/esm2022/pages/frequently-asked-questions/sc-frequently-asked-questions.component.mjs +0 -49
- package/esm2022/pages/frequently-asked-questions/sc-page-size-options.mjs +0 -8
- package/esm2022/pages/frequently-asked-questions-group-selector/sc-frequently-asked-questions-group-selector.component.mjs +0 -59
- package/esm2022/pages/frequently-asked-questions-with-groups/sc-frequently-asked-questions-with-groups.component.mjs +0 -107
- package/esm2022/pages/index.mjs +0 -7
- package/esm2022/pages/personal-data-processing-policy/sc-personal-data-processing-policy.component.mjs +0 -46
- package/esm2022/pages/privacy-policy/sc-privacy-policy.component.mjs +0 -30
- package/esm2022/pages/public-offer/sc-public-offer.component.mjs +0 -50
- package/esm2022/pipes/index.mjs +0 -3
- package/esm2022/pipes/sc-format-date.mjs +0 -33
- package/esm2022/pipes/sc-phone-format.mjs +0 -44
- package/esm2022/profile/index.mjs +0 -3
- package/esm2022/profile/sc-profile-accordions-content/sc-profile-accordions-content.component.mjs +0 -174
- package/esm2022/profile/sc-profile.module.mjs +0 -73
- package/esm2022/providers/date-value-transformer/index.mjs +0 -4
- package/esm2022/providers/date-value-transformer/sc-date-value-transformer-types.mjs +0 -2
- package/esm2022/providers/date-value-transformer/sc-date-value-transformer-with-end-time.mjs +0 -26
- package/esm2022/providers/date-value-transformer/sc-date-value-transformer-with-start-time.mjs +0 -37
- package/esm2022/providers/index.mjs +0 -16
- package/esm2022/providers/sc-allow-select-terminated.mjs +0 -8
- package/esm2022/providers/sc-banner-duration.mjs +0 -8
- package/esm2022/providers/sc-country-ids.mjs +0 -8
- package/esm2022/providers/sc-date-formatter.mjs +0 -15
- package/esm2022/providers/sc-date-value-transformer.mjs +0 -12
- package/esm2022/providers/sc-debounce-time-default.mjs +0 -9
- package/esm2022/providers/sc-dialog-service.providers.mjs +0 -6
- package/esm2022/providers/sc-help-notification-close.mjs +0 -9
- package/esm2022/providers/sc-help-notification-limit.mjs +0 -8
- package/esm2022/providers/sc-hidden-print-elements.token.mjs +0 -10
- package/esm2022/providers/sc-max-files-in-form-input.mjs +0 -8
- package/esm2022/providers/sc-notify-when-in-stock-required-fields.mjs +0 -8
- package/esm2022/providers/sc-page-size-options.mjs +0 -8
- package/esm2022/providers/sc-user-providers.mjs +0 -38
- package/esm2022/providers/sc-verification-code-timeout.mjs +0 -8
- package/esm2022/public-api.mjs +0 -35
- package/esm2022/qrcode/index.mjs +0 -3
- package/esm2022/qrcode/qrcode-dialog/sc-qrcode-dialog.component.mjs +0 -58
- package/esm2022/qrcode/sc-qrcode.module.mjs +0 -25
- package/esm2022/samples/index.mjs +0 -5
- package/esm2022/samples/interfaces/index.mjs +0 -3
- package/esm2022/samples/interfaces/sc-i-preview-sample.mjs +0 -2
- package/esm2022/samples/interfaces/sc-preview-mosquito-config.mjs +0 -2
- package/esm2022/samples/preview-sample/sc-preview-sample.component.mjs +0 -42
- package/esm2022/samples/sc-preview-samples-mosquito/sc-preview-samples-mosquito.component.mjs +0 -63
- package/esm2022/samples/sc-sample.module.mjs +0 -66
- package/esm2022/services/index.mjs +0 -3
- package/esm2022/services/print.service.mjs +0 -49
- package/esm2022/services/sc-help-notification.service.mjs +0 -100
- package/esm2022/share-button/index.mjs +0 -3
- package/esm2022/share-button/sc-share-button.component.mjs +0 -35
- package/esm2022/share-button/sc-share-button.module.mjs +0 -22
- package/esm2022/snabcentr-client-ui.mjs +0 -5
- package/esm2022/user/index.mjs +0 -6
- package/esm2022/user/reset-user-password/sc-reset-user-password.component.mjs +0 -74
- package/esm2022/user/sc-user.module.mjs +0 -86
- package/esm2022/user/update-user-info-dialog/sc-update-user-info-dialog.component.mjs +0 -121
- package/esm2022/user/user-managers/sc-user-managers.component.mjs +0 -40
- package/esm2022/user/user-phone-approve-dialog/sc-user-phone-approve-dialog.component.mjs +0 -105
- package/esm2022/validators/index.mjs +0 -7
- package/esm2022/validators/sc-at-least-one-required-validator.mjs +0 -25
- package/esm2022/validators/sc-bic-validator.mjs +0 -10
- package/esm2022/validators/sc-correspondent-account-validator.mjs +0 -10
- package/esm2022/validators/sc-password-confirm-matching-validator.mjs +0 -17
- package/esm2022/validators/sc-phone-validator.mjs +0 -14
- package/esm2022/validators/step-validator.mjs +0 -18
- package/esm2022/verification/index.mjs +0 -3
- package/esm2022/verification/sc-verification.module.mjs +0 -86
- package/esm2022/verification/verification-phone-check-form/sc-verification-phone-check-form.component.mjs +0 -259
- package/feedback/feedback-form/sc-feedback-form.component.d.ts +0 -163
- package/feedback/gratitude/sc-gratitude.component.d.ts +0 -20
- package/feedback/index.d.ts +0 -3
- package/feedback/interfaces/index.d.ts +0 -1
- package/feedback/interfaces/sc-feedback-form-config.d.ts +0 -23
- package/files/directives/index.d.ts +0 -2
- package/files/directives/tree-top.directive.d.ts +0 -33
- package/files/directives/tree.directive.d.ts +0 -35
- package/files/file-tree-item/file-tree-item.component.d.ts +0 -9
- package/files/files-and-documents/files-and-documents.component.d.ts +0 -27
- package/files/files-and-documents.module.d.ts +0 -17
- package/files/index.d.ts +0 -5
- package/files/interfaces/tree-node.d.ts +0 -29
- package/files/services/index.d.ts +0 -2
- package/files/services/tree-icon.service.d.ts +0 -23
- package/files/services/tree-loader.service.d.ts +0 -43
- package/form-fields/addresses-selection-field/sc-addresses-selection-field.component.d.ts +0 -78
- package/form-fields/form-fields.module.d.ts +0 -18
- package/form-fields/index.d.ts +0 -3
- package/form-fields/suggestion-field/sc-suggestion-field.component.d.ts +0 -73
- package/icons/index.d.ts +0 -1
- package/icons/sc-client-ui-icons-name.d.ts +0 -4
- package/index.d.ts +0 -5
- package/loader/index.d.ts +0 -1
- package/loader/sc-i-loader.d.ts +0 -9
- package/masks/index.d.ts +0 -7
- package/masks/sc-account-number-mask.d.ts +0 -5
- package/masks/sc-bic-mask.d.ts +0 -5
- package/masks/sc-correspondent-account-mask.d.ts +0 -5
- package/masks/sc-inn-mask.d.ts +0 -9
- package/masks/sc-kpp-mask.d.ts +0 -5
- package/masks/sc-okpo-mask.d.ts +0 -9
- package/masks/sc-phone-verification-code-mask.d.ts +0 -5
- package/methods/index.d.ts +0 -1
- package/methods/sc-get-current-route.d.ts +0 -8
- package/models/i-sc-image.d.ts +0 -17
- package/models/index.d.ts +0 -1
- package/news/index.d.ts +0 -3
- package/news/news-card/sc-news-card.component.d.ts +0 -22
- package/news/news-card-skeleton/sc-news-card-skeleton.component.d.ts +0 -16
- package/news/sc-news.module.d.ts +0 -16
- package/noindex-wrapper/directives/index.d.ts +0 -1
- package/noindex-wrapper/directives/sc-noindex.directive.d.ts +0 -29
- package/noindex-wrapper/index.d.ts +0 -2
- package/noindex-wrapper/sc-noindex-wrapper.component.d.ts +0 -9
- package/order/directives/index.d.ts +0 -2
- package/order/directives/sc-order-accessor.directive.d.ts +0 -13
- package/order/directives/sc-order-options.d.ts +0 -14
- package/order/draft/sc-draft.component.d.ts +0 -63
- package/order/index.d.ts +0 -9
- package/order/models/sc-i-cart-items-by-direction.d.ts +0 -25
- package/order/order-item/sc-order-item.component.d.ts +0 -39
- package/order/order-items-list/sc-order-items-list.component.d.ts +0 -109
- package/order/order-items-list-by-directions/sc-order-items-list-by-directions.component.d.ts +0 -58
- package/order/order-items-list-by-stock/sc-order-items-list-by-stock.component.d.ts +0 -55
- package/order/sc-order.module.d.ts +0 -18
- package/order/sc-payment-status/sc-payment-status.component.d.ts +0 -25
- package/pages/frequently-asked-questions/sc-frequently-asked-questions.component.d.ts +0 -22
- package/pages/frequently-asked-questions/sc-page-size-options.d.ts +0 -5
- package/pages/frequently-asked-questions-group-selector/sc-frequently-asked-questions-group-selector.component.d.ts +0 -28
- package/pages/frequently-asked-questions-with-groups/sc-frequently-asked-questions-with-groups.component.d.ts +0 -79
- package/pages/index.d.ts +0 -6
- package/pages/personal-data-processing-policy/sc-personal-data-processing-policy.component.d.ts +0 -17
- package/pages/privacy-policy/sc-privacy-policy.component.d.ts +0 -17
- package/pages/public-offer/sc-public-offer.component.d.ts +0 -22
- package/pipes/index.d.ts +0 -2
- package/pipes/sc-format-date.d.ts +0 -20
- package/pipes/sc-phone-format.d.ts +0 -21
- package/profile/index.d.ts +0 -2
- package/profile/sc-profile-accordions-content/sc-profile-accordions-content.component.d.ts +0 -126
- package/profile/sc-profile.module.d.ts +0 -23
- package/providers/date-value-transformer/index.d.ts +0 -3
- package/providers/date-value-transformer/sc-date-value-transformer-types.d.ts +0 -9
- package/providers/date-value-transformer/sc-date-value-transformer-with-end-time.d.ts +0 -16
- package/providers/date-value-transformer/sc-date-value-transformer-with-start-time.d.ts +0 -22
- package/providers/index.d.ts +0 -15
- package/providers/sc-allow-select-terminated.d.ts +0 -5
- package/providers/sc-banner-duration.d.ts +0 -5
- package/providers/sc-country-ids.d.ts +0 -5
- package/providers/sc-date-formatter.d.ts +0 -6
- package/providers/sc-date-value-transformer.d.ts +0 -5
- package/providers/sc-debounce-time-default.d.ts +0 -5
- package/providers/sc-dialog-service.providers.d.ts +0 -45
- package/providers/sc-help-notification-close.d.ts +0 -6
- package/providers/sc-help-notification-limit.d.ts +0 -5
- package/providers/sc-hidden-print-elements.token.d.ts +0 -6
- package/providers/sc-max-files-in-form-input.d.ts +0 -5
- package/providers/sc-notify-when-in-stock-required-fields.d.ts +0 -5
- package/providers/sc-page-size-options.d.ts +0 -5
- package/providers/sc-user-providers.d.ts +0 -21
- package/providers/sc-verification-code-timeout.d.ts +0 -5
- package/public-api.d.ts +0 -34
- package/qrcode/index.d.ts +0 -2
- package/qrcode/qrcode-dialog/sc-qrcode-dialog.component.d.ts +0 -37
- package/qrcode/sc-qrcode.module.d.ts +0 -14
- package/samples/index.d.ts +0 -4
- package/samples/interfaces/index.d.ts +0 -2
- package/samples/interfaces/sc-i-preview-sample.d.ts +0 -56
- package/samples/interfaces/sc-preview-mosquito-config.d.ts +0 -62
- package/samples/preview-sample/sc-preview-sample.component.d.ts +0 -30
- package/samples/sc-preview-samples-mosquito/sc-preview-samples-mosquito.component.d.ts +0 -50
- package/samples/sc-sample.module.d.ts +0 -19
- package/services/index.d.ts +0 -2
- package/services/print.service.d.ts +0 -31
- package/services/sc-help-notification.service.d.ts +0 -70
- package/share-button/index.d.ts +0 -2
- package/share-button/sc-share-button.component.d.ts +0 -22
- package/share-button/sc-share-button.module.d.ts +0 -12
- package/user/index.d.ts +0 -5
- package/user/reset-user-password/sc-reset-user-password.component.d.ts +0 -46
- package/user/sc-user.module.d.ts +0 -24
- package/user/update-user-info-dialog/sc-update-user-info-dialog.component.d.ts +0 -63
- package/user/user-managers/sc-user-managers.component.d.ts +0 -23
- package/user/user-phone-approve-dialog/sc-user-phone-approve-dialog.component.d.ts +0 -53
- package/validators/index.d.ts +0 -6
- package/validators/sc-at-least-one-required-validator.d.ts +0 -10
- package/validators/sc-bic-validator.d.ts +0 -8
- package/validators/sc-correspondent-account-validator.d.ts +0 -8
- package/validators/sc-password-confirm-matching-validator.d.ts +0 -8
- package/validators/sc-phone-validator.d.ts +0 -5
- package/validators/step-validator.d.ts +0 -8
- package/verification/index.d.ts +0 -2
- package/verification/sc-verification.module.d.ts +0 -21
- package/verification/verification-phone-check-form/sc-verification-phone-check-form.component.d.ts +0 -145
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef, HostListener, inject, Input, Renderer2 } from '@angular/core';
|
|
2
|
-
import { ScPhoneService, ScUserMetrikaGoalsEnum, ScUserMetrikaService } from '@snabcentr/client-core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* Директива, которая управляет свойствами ссылки номера телефона для валидации значения номера телефона.
|
|
6
|
-
*/
|
|
7
|
-
export class ScTelLinkDirective {
|
|
8
|
-
constructor() {
|
|
9
|
-
/**
|
|
10
|
-
* Экземпляр базового класса для реализации пользовательского рендеринга.
|
|
11
|
-
*/
|
|
12
|
-
this.renderer = inject(Renderer2);
|
|
13
|
-
/**
|
|
14
|
-
* Ссылка на HTML элемент тега `<a>`.
|
|
15
|
-
*/
|
|
16
|
-
this.elementReference = inject(ElementRef);
|
|
17
|
-
/**
|
|
18
|
-
* Сервис для сбора метрик о действиях пользователей.
|
|
19
|
-
*/
|
|
20
|
-
this.userMetrikaService = inject(ScUserMetrikaService);
|
|
21
|
-
}
|
|
22
|
-
/** @inheritDoc */
|
|
23
|
-
ngOnChanges(changes) {
|
|
24
|
-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
25
|
-
if (changes['tel']) {
|
|
26
|
-
this.updateLinkState();
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Обработчик клика по ссылке.
|
|
31
|
-
*/
|
|
32
|
-
click() {
|
|
33
|
-
if (ScPhoneService.isValidPhoneNumber(this.tel)) {
|
|
34
|
-
this.userMetrikaService.emitUserMetrikaEvent({
|
|
35
|
-
target: ScUserMetrikaGoalsEnum.phoneClick,
|
|
36
|
-
params: {
|
|
37
|
-
phoneLocation: this.linkLocation,
|
|
38
|
-
phone: this.tel,
|
|
39
|
-
},
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Обновляет состояние ссылки на основе валидности номера телефона.
|
|
45
|
-
*/
|
|
46
|
-
updateLinkState() {
|
|
47
|
-
if (ScPhoneService.isValidPhoneNumber(this.tel)) {
|
|
48
|
-
// Если номер валиден, активируем ссылку.
|
|
49
|
-
this.renderer.removeAttribute(this.elementReference.nativeElement, 'aria-disabled');
|
|
50
|
-
this.renderer.removeClass(this.elementReference.nativeElement, 'disabled');
|
|
51
|
-
this.renderer.setAttribute(this.elementReference.nativeElement, 'href', `tel:${ScPhoneService.formatPhoneNumber(this.tel)}`);
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
// Если номер невалиден, отключаем ссылку.
|
|
55
|
-
this.renderer.setAttribute(this.elementReference.nativeElement, 'aria-disabled', 'true');
|
|
56
|
-
this.renderer.addClass(this.elementReference.nativeElement, 'disabled');
|
|
57
|
-
this.renderer.removeAttribute(this.elementReference.nativeElement, 'href');
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScTelLinkDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
61
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ScTelLinkDirective, isStandalone: true, selector: "a[scTelLink]", inputs: { tel: ["scTelLink", "tel"], linkLocation: "linkLocation" }, host: { listeners: { "click": "click()" } }, usesOnChanges: true, ngImport: i0 }); }
|
|
62
|
-
}
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScTelLinkDirective, decorators: [{
|
|
64
|
-
type: Directive,
|
|
65
|
-
args: [{
|
|
66
|
-
standalone: true,
|
|
67
|
-
selector: 'a[scTelLink]',
|
|
68
|
-
}]
|
|
69
|
-
}], propDecorators: { tel: [{
|
|
70
|
-
type: Input,
|
|
71
|
-
args: [{ alias: 'scTelLink', required: true }]
|
|
72
|
-
}], linkLocation: [{
|
|
73
|
-
type: Input,
|
|
74
|
-
args: [{ required: true }]
|
|
75
|
-
}], click: [{
|
|
76
|
-
type: HostListener,
|
|
77
|
-
args: ['click']
|
|
78
|
-
}] } });
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtdGVsLWxpbmsuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2RpcmVjdGl2ZXMvbGlua3Mvc2MtdGVsLWxpbmsuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFhLFNBQVMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLGNBQWMsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUl0Rzs7R0FFRztBQUtILE1BQU0sT0FBTyxrQkFBa0I7SUFKL0I7UUFLSTs7V0FFRztRQUNjLGFBQVEsR0FBYyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFekQ7O1dBRUc7UUFDSyxxQkFBZ0IsR0FBa0MsTUFBTSxDQUFnQyxVQUFVLENBQUMsQ0FBQztRQWM1Rzs7V0FFRztRQUNjLHVCQUFrQixHQUF5QixNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztLQTBDNUY7SUF4Q0csa0JBQWtCO0lBQ1gsV0FBVyxDQUFDLE9BQXNCO1FBQ3JDLHVFQUF1RTtRQUN2RSxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMzQixDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBRUssS0FBSztRQUNULElBQUksY0FBYyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzlDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQztnQkFDekMsTUFBTSxFQUFFLHNCQUFzQixDQUFDLFVBQVU7Z0JBQ3pDLE1BQU0sRUFBRTtvQkFDSixhQUFhLEVBQUUsSUFBSSxDQUFDLFlBQVk7b0JBQ2hDLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRztpQkFDbEI7YUFDSixDQUFDLENBQUM7UUFDUCxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ssZUFBZTtRQUNuQixJQUFJLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM5Qyx5Q0FBeUM7WUFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxlQUFlLENBQUMsQ0FBQztZQUNwRixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQzNFLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLE9BQU8sY0FBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDakksQ0FBQzthQUFNLENBQUM7WUFDSiwwQ0FBMEM7WUFDMUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxlQUFlLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDekYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUMsQ0FBQztZQUN4RSxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQy9FLENBQUM7SUFDTCxDQUFDOytHQW5FUSxrQkFBa0I7bUdBQWxCLGtCQUFrQjs7NEZBQWxCLGtCQUFrQjtrQkFKOUIsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGNBQWM7aUJBQzNCOzhCQWdCVSxHQUFHO3NCQURULEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBT3RDLFlBQVk7c0JBRGxCLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQW9CakIsS0FBSztzQkFEWixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBJbnB1dCwgT25DaGFuZ2VzLCBSZW5kZXJlcjIsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNjUGhvbmVTZXJ2aWNlLCBTY1VzZXJNZXRyaWthR29hbHNFbnVtLCBTY1VzZXJNZXRyaWthU2VydmljZSB9IGZyb20gJ0BzbmFiY2VudHIvY2xpZW50LWNvcmUnO1xuXG5pbXBvcnQgeyBTY0xpbmtMb2NhdGlvbiB9IGZyb20gJy4vc2MtbGluay1sb2NhdGlvbic7XG5cbi8qKlxuICog0JTQuNGA0LXQutGC0LjQstCwLCDQutC+0YLQvtGA0LDRjyDRg9C/0YDQsNCy0LvRj9C10YIg0YHQstC+0LnRgdGC0LLQsNC80Lgg0YHRgdGL0LvQutC4INC90L7QvNC10YDQsCDRgtC10LvQtdGE0L7QvdCwINC00LvRjyDQstCw0LvQuNC00LDRhtC40Lgg0LfQvdCw0YfQtdC90LjRjyDQvdC+0LzQtdGA0LAg0YLQtdC70LXRhNC+0L3QsC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ2Fbc2NUZWxMaW5rXScsXG59KVxuZXhwb3J0IGNsYXNzIFNjVGVsTGlua0RpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgLyoqXG4gICAgICog0K3QutC30LXQvNC/0LvRj9GAINCx0LDQt9C+0LLQvtCz0L4g0LrQu9Cw0YHRgdCwINC00LvRjyDRgNC10LDQu9C40LfQsNGG0LjQuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70YzRgdC60L7Qs9C+INGA0LXQvdC00LXRgNC40L3Qs9CwLlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMiA9IGluamVjdChSZW5kZXJlcjIpO1xuXG4gICAgLyoqXG4gICAgICog0KHRgdGL0LvQutCwINC90LAgSFRNTCDRjdC70LXQvNC10L3RgiDRgtC10LPQsCBgPGE+YC5cbiAgICAgKi9cbiAgICBwcml2YXRlIGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8SFRNTEFuY2hvckVsZW1lbnQ+ID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEFuY2hvckVsZW1lbnQ+PihFbGVtZW50UmVmKTtcblxuICAgIC8qKlxuICAgICAqINCd0L7QvNC10YAg0YLQtdC70LXRhNC+0L3QsCwg0LrQvtGC0L7RgNGL0Lkg0LHRg9C00LXRgiDQv9GA0L7QstC10YDQtdC9INC90LAg0LLQsNC70LjQtNC90L7RgdGC0YwuXG4gICAgICovXG4gICAgQElucHV0KHsgYWxpYXM6ICdzY1RlbExpbmsnLCByZXF1aXJlZDogdHJ1ZSB9KVxuICAgIHB1YmxpYyB0ZWwhOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDQo9GB0LvQvtCy0L3QvtC1INC90LDQt9Cy0LDQvdC40LUg0LHQu9C+0LrQsCDQs9C00LUg0YDQsNGB0L/QvtC70L7QttC10L3QsCDRgdGB0YvQu9C60LAuXG4gICAgICovXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICBwdWJsaWMgbGlua0xvY2F0aW9uITogU2NMaW5rTG9jYXRpb247XG5cbiAgICAvKipcbiAgICAgKiDQodC10YDQstC40YEg0LTQu9GPINGB0LHQvtGA0LAg0LzQtdGC0YDQuNC6INC+INC00LXQudGB0YLQstC40Y/RhSDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQuS5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJNZXRyaWthU2VydmljZTogU2NVc2VyTWV0cmlrYVNlcnZpY2UgPSBpbmplY3QoU2NVc2VyTWV0cmlrYVNlcnZpY2UpO1xuXG4gICAgLyoqIEBpbmhlcml0RG9jICovXG4gICAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bm5lY2Vzc2FyeS1jb25kaXRpb25cbiAgICAgICAgaWYgKGNoYW5nZXNbJ3RlbCddKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUxpbmtTdGF0ZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0J7QsdGA0LDQsdC+0YLRh9C40Log0LrQu9C40LrQsCDQv9C+INGB0YHRi9C70LrQtS5cbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgcHJpdmF0ZSBjbGljaygpOiB2b2lkIHtcbiAgICAgICAgaWYgKFNjUGhvbmVTZXJ2aWNlLmlzVmFsaWRQaG9uZU51bWJlcih0aGlzLnRlbCkpIHtcbiAgICAgICAgICAgIHRoaXMudXNlck1ldHJpa2FTZXJ2aWNlLmVtaXRVc2VyTWV0cmlrYUV2ZW50KHtcbiAgICAgICAgICAgICAgICB0YXJnZXQ6IFNjVXNlck1ldHJpa2FHb2Fsc0VudW0ucGhvbmVDbGljayxcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgcGhvbmVMb2NhdGlvbjogdGhpcy5saW5rTG9jYXRpb24sXG4gICAgICAgICAgICAgICAgICAgIHBob25lOiB0aGlzLnRlbCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQntCx0L3QvtCy0LvRj9C10YIg0YHQvtGB0YLQvtGP0L3QuNC1INGB0YHRi9C70LrQuCDQvdCwINC+0YHQvdC+0LLQtSDQstCw0LvQuNC00L3QvtGB0YLQuCDQvdC+0LzQtdGA0LAg0YLQtdC70LXRhNC+0L3QsC5cbiAgICAgKi9cbiAgICBwcml2YXRlIHVwZGF0ZUxpbmtTdGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKFNjUGhvbmVTZXJ2aWNlLmlzVmFsaWRQaG9uZU51bWJlcih0aGlzLnRlbCkpIHtcbiAgICAgICAgICAgIC8vINCV0YHQu9C4INC90L7QvNC10YAg0LLQsNC70LjQtNC10L0sINCw0LrRgtC40LLQuNGA0YPQtdC8INGB0YHRi9C70LrRgy5cbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50LCAnYXJpYS1kaXNhYmxlZCcpO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJyk7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudCwgJ2hyZWYnLCBgdGVsOiR7U2NQaG9uZVNlcnZpY2UuZm9ybWF0UGhvbmVOdW1iZXIodGhpcy50ZWwpfWApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8g0JXRgdC70Lgg0L3QvtC80LXRgCDQvdC10LLQsNC70LjQtNC10L0sINC+0YLQutC70Y7Rh9Cw0LXQvCDRgdGB0YvQu9C60YMuXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudCwgJ2FyaWEtZGlzYWJsZWQnLCAndHJ1ZScpO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJyk7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudCwgJ2hyZWYnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
/* eslint-disable lodash/prefer-lodash-method */
|
|
2
|
-
import { ContentChildren, Directive, ElementRef, HostListener, inject } from '@angular/core';
|
|
3
|
-
import { AbstractTuiControl } from '@taiga-ui/legacy';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Директива для перехода по нажатию клавиши enter на следующее поле ввода формы.
|
|
7
|
-
* Поддерживает как legacy Taiga UI v3 контролы (AbstractTuiControl), так и новые v4
|
|
8
|
-
* (tui-textfield + нативные input) — через DOM-fallback.
|
|
9
|
-
*/
|
|
10
|
-
export class ScNextInputFocusDirective {
|
|
11
|
-
constructor() {
|
|
12
|
-
/**
|
|
13
|
-
* Элемент формы.
|
|
14
|
-
*/
|
|
15
|
-
this.el = inject(ElementRef);
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* По Enter — переход на следующее редактируемое поле формы.
|
|
19
|
-
* Сначала пробует legacy Taiga UI v3 контролы, затем DOM fallback для v4.
|
|
20
|
-
*
|
|
21
|
-
* @param event Событие нажатия клавиши.
|
|
22
|
-
*/
|
|
23
|
-
onFormKeyDownEnter(event) {
|
|
24
|
-
if (event.code !== 'Enter' && event.key !== 'Enter') {
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
event.preventDefault();
|
|
28
|
-
// Taiga UI v3: переход через AbstractTuiControl (legacy-обёртки tui-input, tui-input-number и др.).
|
|
29
|
-
const legacy = this.legacyControls.toArray();
|
|
30
|
-
const legacyIndex = legacy.findIndex((control) => control.focused);
|
|
31
|
-
if (legacyIndex !== -1) {
|
|
32
|
-
const next = legacy[legacyIndex + 1]?.nativeFocusableElement;
|
|
33
|
-
if (next) {
|
|
34
|
-
next.focus();
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
// Taiga UI v4: переход через DOM — ищем нативные input внутри формы (tui-textfield + директивы).
|
|
39
|
-
const { target } = event;
|
|
40
|
-
if (!(target instanceof HTMLInputElement) || target.type === 'range') {
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
// eslint-disable-next-line unicorn/prefer-spread
|
|
44
|
-
const inputs = Array.from(this.el.nativeElement.querySelectorAll('input')).filter((element) => element.type !== 'range' && !element.readOnly && !element.disabled);
|
|
45
|
-
const currentIndex = inputs.indexOf(target);
|
|
46
|
-
if (currentIndex === -1) {
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
const nextInput = inputs.at(currentIndex + 1);
|
|
50
|
-
if (nextInput) {
|
|
51
|
-
nextInput.focus();
|
|
52
|
-
nextInput.select();
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScNextInputFocusDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
56
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ScNextInputFocusDirective, selector: "form[ScNextInputFocus]", host: { listeners: { "keydown": "onFormKeyDownEnter($event)" } }, queries: [{ propertyName: "legacyControls", predicate: AbstractTuiControl, descendants: true }], ngImport: i0 }); }
|
|
57
|
-
}
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScNextInputFocusDirective, decorators: [{
|
|
59
|
-
type: Directive,
|
|
60
|
-
args: [{
|
|
61
|
-
selector: 'form[ScNextInputFocus]',
|
|
62
|
-
}]
|
|
63
|
-
}], propDecorators: { legacyControls: [{
|
|
64
|
-
type: ContentChildren,
|
|
65
|
-
args: [AbstractTuiControl, { descendants: true }]
|
|
66
|
-
}], onFormKeyDownEnter: [{
|
|
67
|
-
type: HostListener,
|
|
68
|
-
args: ['keydown', ['$event']]
|
|
69
|
-
}] } });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtbmV4dC1pbnB1dC1mb2N1cy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZGlyZWN0aXZlcy9uZXh0LWlucHV0LWZvY3VzL3NjLW5leHQtaW5wdXQtZm9jdXMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdEQUFnRDtBQUVoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsa0JBQWtCLEVBQStCLE1BQU0sa0JBQWtCLENBQUM7O0FBRW5GOzs7O0dBSUc7QUFJSCxNQUFNLE9BQU8seUJBQXlCO0lBSHRDO1FBWUk7O1dBRUc7UUFDYyxPQUFFLEdBQWdDLE1BQU0sQ0FBOEIsVUFBVSxDQUFDLENBQUM7S0FzRHRHO0lBcERHOzs7OztPQUtHO0lBRUksa0JBQWtCLENBQUMsS0FBb0I7UUFDMUMsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ2xELE9BQU87UUFDWCxDQUFDO1FBRUQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXZCLG9HQUFvRztRQUNwRyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzdDLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVuRSxJQUFJLFdBQVcsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3JCLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLEVBQUUsc0JBQXNCLENBQUM7WUFFN0QsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDUCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBRWIsT0FBTztZQUNYLENBQUM7UUFDTCxDQUFDO1FBRUQsaUdBQWlHO1FBQ2pHLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFFekIsSUFBSSxDQUFDLENBQUMsTUFBTSxZQUFZLGdCQUFnQixDQUFDLElBQUksTUFBTSxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUNuRSxPQUFPO1FBQ1gsQ0FBQztRQUVELGlEQUFpRDtRQUNqRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFtQixPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FDL0YsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEtBQUssT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQ2xGLENBQUM7UUFDRixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTVDLElBQUksWUFBWSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdEIsT0FBTztRQUNYLENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsQ0FBQztRQUU5QyxJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ1osU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xCLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN2QixDQUFDO0lBQ0wsQ0FBQzsrR0FqRVEseUJBQXlCO21HQUF6Qix5QkFBeUIsK0pBTWpCLGtCQUFrQjs7NEZBTjFCLHlCQUF5QjtrQkFIckMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsd0JBQXdCO2lCQUNyQzs4QkFRb0IsY0FBYztzQkFEOUIsZUFBZTt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBZW5ELGtCQUFrQjtzQkFEeEIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBsb2Rhc2gvcHJlZmVyLWxvZGFzaC1tZXRob2QgKi9cblxuaW1wb3J0IHsgQ29udGVudENoaWxkcmVuLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0VHVpQ29udHJvbCwgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yIH0gZnJvbSAnQHRhaWdhLXVpL2xlZ2FjeSc7XG5cbi8qKlxuICog0JTQuNGA0LXQutGC0LjQstCwINC00LvRjyDQv9C10YDQtdGF0L7QtNCwINC/0L4g0L3QsNC20LDRgtC40Y4g0LrQu9Cw0LLQuNGI0LggZW50ZXIg0L3QsCDRgdC70LXQtNGD0Y7RidC10LUg0L/QvtC70LUg0LLQstC+0LTQsCDRhNC+0YDQvNGLLlxuICog0J/QvtC00LTQtdGA0LbQuNCy0LDQtdGCINC60LDQuiBsZWdhY3kgVGFpZ2EgVUkgdjMg0LrQvtC90YLRgNC+0LvRiyAoQWJzdHJhY3RUdWlDb250cm9sKSwg0YLQsNC6INC4INC90L7QstGL0LUgdjRcbiAqICh0dWktdGV4dGZpZWxkICsg0L3QsNGC0LjQstC90YvQtSBpbnB1dCkg4oCUINGH0LXRgNC10LcgRE9NLWZhbGxiYWNrLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2Zvcm1bU2NOZXh0SW5wdXRGb2N1c10nLFxufSlcbmV4cG9ydCBjbGFzcyBTY05leHRJbnB1dEZvY3VzRGlyZWN0aXZlIHtcbiAgICAvKipcbiAgICAgKiBMZWdhY3kgVGFpZ2EgVUkgdjMg0LrQvtC90YLRgNC+0LvRiyAodHVpLWlucHV0LCB0dWktaW5wdXQtbnVtYmVyINC4INGCLtC0LikuXG4gICAgICpcbiAgICAgKiBAZGVwcmVjYXRlZCDQkdGD0LTQtdGCINGD0LTQsNC70LXQvdC+INC/0L7RgdC70LUg0L/QtdGA0LXRhdC+0LTQsCDQvdCwIFRhaWdhIFVJIHY1LlxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oQWJzdHJhY3RUdWlDb250cm9sLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBsZWdhY3lDb250cm9sczogUXVlcnlMaXN0PFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3Nvcj47XG5cbiAgICAvKipcbiAgICAgKiDQrdC70LXQvNC10L3RgiDRhNC+0YDQvNGLLlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8SFRNTEZvcm1FbGVtZW50PiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxGb3JtRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuXG4gICAgLyoqXG4gICAgICog0J/QviBFbnRlciDigJQg0L/QtdGA0LXRhdC+0LQg0L3QsCDRgdC70LXQtNGD0Y7RidC10LUg0YDQtdC00LDQutGC0LjRgNGD0LXQvNC+0LUg0L/QvtC70LUg0YTQvtGA0LzRiy5cbiAgICAgKiDQodC90LDRh9Cw0LvQsCDQv9GA0L7QsdGD0LXRgiBsZWdhY3kgVGFpZ2EgVUkgdjMg0LrQvtC90YLRgNC+0LvRiywg0LfQsNGC0LXQvCBET00gZmFsbGJhY2sg0LTQu9GPIHY0LlxuICAgICAqXG4gICAgICogQHBhcmFtIGV2ZW50INCh0L7QsdGL0YLQuNC1INC90LDQttCw0YLQuNGPINC60LvQsNCy0LjRiNC4LlxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbkZvcm1LZXlEb3duRW50ZXIoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKGV2ZW50LmNvZGUgIT09ICdFbnRlcicgJiYgZXZlbnQua2V5ICE9PSAnRW50ZXInKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIC8vIFRhaWdhIFVJIHYzOiDQv9C10YDQtdGF0L7QtCDRh9C10YDQtdC3IEFic3RyYWN0VHVpQ29udHJvbCAobGVnYWN5LdC+0LHRkdGA0YLQutC4IHR1aS1pbnB1dCwgdHVpLWlucHV0LW51bWJlciDQuCDQtNGALikuXG4gICAgICAgIGNvbnN0IGxlZ2FjeSA9IHRoaXMubGVnYWN5Q29udHJvbHMudG9BcnJheSgpO1xuICAgICAgICBjb25zdCBsZWdhY3lJbmRleCA9IGxlZ2FjeS5maW5kSW5kZXgoKGNvbnRyb2wpID0+IGNvbnRyb2wuZm9jdXNlZCk7XG5cbiAgICAgICAgaWYgKGxlZ2FjeUluZGV4ICE9PSAtMSkge1xuICAgICAgICAgICAgY29uc3QgbmV4dCA9IGxlZ2FjeVtsZWdhY3lJbmRleCArIDFdPy5uYXRpdmVGb2N1c2FibGVFbGVtZW50O1xuXG4gICAgICAgICAgICBpZiAobmV4dCkge1xuICAgICAgICAgICAgICAgIG5leHQuZm9jdXMoKTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRhaWdhIFVJIHY0OiDQv9C10YDQtdGF0L7QtCDRh9C10YDQtdC3IERPTSDigJQg0LjRidC10Lwg0L3QsNGC0LjQstC90YvQtSBpbnB1dCDQstC90YPRgtGA0Lgg0YTQvtGA0LzRiyAodHVpLXRleHRmaWVsZCArINC00LjRgNC10LrRgtC40LLRiykuXG4gICAgICAgIGNvbnN0IHsgdGFyZ2V0IH0gPSBldmVudDtcblxuICAgICAgICBpZiAoISh0YXJnZXQgaW5zdGFuY2VvZiBIVE1MSW5wdXRFbGVtZW50KSB8fCB0YXJnZXQudHlwZSA9PT0gJ3JhbmdlJykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHVuaWNvcm4vcHJlZmVyLXNwcmVhZFxuICAgICAgICBjb25zdCBpbnB1dHMgPSBBcnJheS5mcm9tKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsPEhUTUxJbnB1dEVsZW1lbnQ+KCdpbnB1dCcpKS5maWx0ZXIoXG4gICAgICAgICAgICAoZWxlbWVudCkgPT4gZWxlbWVudC50eXBlICE9PSAncmFuZ2UnICYmICFlbGVtZW50LnJlYWRPbmx5ICYmICFlbGVtZW50LmRpc2FibGVkXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRJbmRleCA9IGlucHV0cy5pbmRleE9mKHRhcmdldCk7XG5cbiAgICAgICAgaWYgKGN1cnJlbnRJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5leHRJbnB1dCA9IGlucHV0cy5hdChjdXJyZW50SW5kZXggKyAxKTtcblxuICAgICAgICBpZiAobmV4dElucHV0KSB7XG4gICAgICAgICAgICBuZXh0SW5wdXQuZm9jdXMoKTtcbiAgICAgICAgICAgIG5leHRJbnB1dC5zZWxlY3QoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { ScNextInputFocusDirective } from './sc-next-input-focus.directive';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* Модуль директивы для перехода по нажатию клавиши enter на следующее поле ввода формы.
|
|
6
|
-
*/
|
|
7
|
-
export class ScNextInputFocusModule {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScNextInputFocusModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: ScNextInputFocusModule, declarations: [ScNextInputFocusDirective], exports: [ScNextInputFocusDirective] }); }
|
|
10
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScNextInputFocusModule }); }
|
|
11
|
-
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScNextInputFocusModule, decorators: [{
|
|
13
|
-
type: NgModule,
|
|
14
|
-
args: [{
|
|
15
|
-
declarations: [ScNextInputFocusDirective],
|
|
16
|
-
exports: [ScNextInputFocusDirective],
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtbmV4dC1pbnB1dC1mb2N1cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZGlyZWN0aXZlcy9uZXh0LWlucHV0LWZvY3VzL3NjLW5leHQtaW5wdXQtZm9jdXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBRTVFOztHQUVHO0FBS0gsTUFBTSxPQUFPLHNCQUFzQjsrR0FBdEIsc0JBQXNCO2dIQUF0QixzQkFBc0IsaUJBSGhCLHlCQUF5QixhQUM5Qix5QkFBeUI7Z0hBRTFCLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFKbEMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztvQkFDekMsT0FBTyxFQUFFLENBQUMseUJBQXlCLENBQUM7aUJBQ3ZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2NOZXh0SW5wdXRGb2N1c0RpcmVjdGl2ZSB9IGZyb20gJy4vc2MtbmV4dC1pbnB1dC1mb2N1cy5kaXJlY3RpdmUnO1xuXG4vKipcbiAqINCc0L7QtNGD0LvRjCDQtNC40YDQtdC60YLQuNCy0Ysg0LTQu9GPINC/0LXRgNC10YXQvtC00LAg0L/QviDQvdCw0LbQsNGC0LjRjiDQutC70LDQstC40YjQuCBlbnRlciDQvdCwINGB0LvQtdC00YPRjtGJ0LXQtSDQv9C+0LvQtSDQstCy0L7QtNCwINGE0L7RgNC80YsuXG4gKi9cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbU2NOZXh0SW5wdXRGb2N1c0RpcmVjdGl2ZV0sXG4gICAgZXhwb3J0czogW1NjTmV4dElucHV0Rm9jdXNEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBTY05leHRJbnB1dEZvY3VzTW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { computed, Directive, inject, input } from '@angular/core';
|
|
2
|
-
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
-
import { SC_HIDDEN_PRINT_ELEMENTS } from '../../providers/sc-hidden-print-elements.token';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Директива печати страницы.
|
|
7
|
-
*/
|
|
8
|
-
export class ScPrintDirective {
|
|
9
|
-
constructor() {
|
|
10
|
-
/**
|
|
11
|
-
* Идентификатор элемента.
|
|
12
|
-
*/
|
|
13
|
-
this.elementId = input.required({ alias: 'scPrint' });
|
|
14
|
-
/**
|
|
15
|
-
* {@link BehaviorSubject} данных скрытых элементов.
|
|
16
|
-
*/
|
|
17
|
-
this.hiddenElements = toSignal(inject(SC_HIDDEN_PRINT_ELEMENTS), { requireSync: true });
|
|
18
|
-
/**
|
|
19
|
-
* Признак, что элемент скрыт при печати.
|
|
20
|
-
*/
|
|
21
|
-
this.isHidden = computed(() => this.hiddenElements().includes(this.elementId()) || this.elementId() === 'defaultNoPrint');
|
|
22
|
-
}
|
|
23
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPrintDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
24
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.14", type: ScPrintDirective, isStandalone: true, selector: "[scPrint]", inputs: { elementId: { classPropertyName: "elementId", publicName: "scPrint", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "class.no-print": "isHidden()" } }, ngImport: i0 }); }
|
|
25
|
-
}
|
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPrintDirective, decorators: [{
|
|
27
|
-
type: Directive,
|
|
28
|
-
args: [{
|
|
29
|
-
standalone: true,
|
|
30
|
-
selector: '[scPrint]',
|
|
31
|
-
host: {
|
|
32
|
-
'[class.no-print]': 'isHidden()',
|
|
33
|
-
},
|
|
34
|
-
}]
|
|
35
|
-
}] });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtcHJpbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2RpcmVjdGl2ZXMvcHJpbnQvc2MtcHJpbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXRELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDOztBQUUxRjs7R0FFRztBQVFILE1BQU0sT0FBTyxnQkFBZ0I7SUFQN0I7UUFRSTs7V0FFRztRQUNhLGNBQVMsR0FBd0IsS0FBSyxDQUFDLFFBQVEsQ0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRTlGOztXQUVHO1FBQ2MsbUJBQWMsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLHdCQUF3QixDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVwRzs7V0FFRztRQUNnQixhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLGdCQUFnQixDQUFDLENBQUM7S0FDM0k7K0dBZlksZ0JBQWdCO21HQUFoQixnQkFBZ0I7OzRGQUFoQixnQkFBZ0I7a0JBUDVCLFNBQVM7bUJBQUM7b0JBQ1AsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxXQUFXO29CQUNyQixJQUFJLEVBQUU7d0JBQ0Ysa0JBQWtCLEVBQUUsWUFBWTtxQkFDbkM7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgRGlyZWN0aXZlLCBpbmplY3QsIGlucHV0LCBJbnB1dFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbmltcG9ydCB7IFNDX0hJRERFTl9QUklOVF9FTEVNRU5UUyB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9zYy1oaWRkZW4tcHJpbnQtZWxlbWVudHMudG9rZW4nO1xuXG4vKipcbiAqINCU0LjRgNC10LrRgtC40LLQsCDQv9C10YfQsNGC0Lgg0YHRgtGA0LDQvdC40YbRiy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ1tzY1ByaW50XScsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLm5vLXByaW50XSc6ICdpc0hpZGRlbigpJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBTY1ByaW50RGlyZWN0aXZlIHtcbiAgICAvKipcbiAgICAgKiDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDRjdC70LXQvNC10L3RgtCwLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBlbGVtZW50SWQ6IElucHV0U2lnbmFsPHN0cmluZz4gPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KHsgYWxpYXM6ICdzY1ByaW50JyB9KTtcblxuICAgIC8qKlxuICAgICAqIHtAbGluayBCZWhhdmlvclN1YmplY3R9INC00LDQvdC90YvRhSDRgdC60YDRi9GC0YvRhSDRjdC70LXQvNC10L3RgtC+0LIuXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBoaWRkZW5FbGVtZW50cyA9IHRvU2lnbmFsKGluamVjdChTQ19ISURERU5fUFJJTlRfRUxFTUVOVFMpLCB7IHJlcXVpcmVTeW5jOiB0cnVlIH0pO1xuXG4gICAgLyoqXG4gICAgICog0J/RgNC40LfQvdCw0LosINGH0YLQviDRjdC70LXQvNC10L3RgiDRgdC60YDRi9GCINC/0YDQuCDQv9C10YfQsNGC0LguXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGlzSGlkZGVuID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5oaWRkZW5FbGVtZW50cygpLmluY2x1ZGVzKHRoaXMuZWxlbWVudElkKCkpIHx8IHRoaXMuZWxlbWVudElkKCkgPT09ICdkZWZhdWx0Tm9QcmludCcpO1xufVxuIl19
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Directive } from '@angular/core';
|
|
2
|
-
import { TUI_DATE_VALUE_TRANSFORMER } from '@taiga-ui/kit';
|
|
3
|
-
import { DateValueTransformerWithEndTime } from '../providers/date-value-transformer';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Директива для преобразования даты в формат "YYYY-MM-DD 23:59:59".
|
|
7
|
-
*/
|
|
8
|
-
export class FinishDateTimeTransformerDirective {
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FinishDateTimeTransformerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
10
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: FinishDateTimeTransformerDirective, isStandalone: true, selector: "tui-input-date[toFinishDateTime]", providers: [
|
|
11
|
-
{
|
|
12
|
-
provide: TUI_DATE_VALUE_TRANSFORMER,
|
|
13
|
-
useClass: DateValueTransformerWithEndTime,
|
|
14
|
-
},
|
|
15
|
-
], ngImport: i0 }); }
|
|
16
|
-
}
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FinishDateTimeTransformerDirective, decorators: [{
|
|
18
|
-
type: Directive,
|
|
19
|
-
args: [{
|
|
20
|
-
standalone: true,
|
|
21
|
-
selector: 'tui-input-date[toFinishDateTime]',
|
|
22
|
-
providers: [
|
|
23
|
-
{
|
|
24
|
-
provide: TUI_DATE_VALUE_TRANSFORMER,
|
|
25
|
-
useClass: DateValueTransformerWithEndTime,
|
|
26
|
-
},
|
|
27
|
-
],
|
|
28
|
-
}]
|
|
29
|
-
}] });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtZGF0ZS12YWx1ZS10cmFuc2Zvcm1lci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZGlyZWN0aXZlcy9zYy1kYXRlLXZhbHVlLXRyYW5zZm9ybWVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7QUFFdEY7O0dBRUc7QUFXSCxNQUFNLE9BQU8sa0NBQWtDOytHQUFsQyxrQ0FBa0M7bUdBQWxDLGtDQUFrQywrRUFQaEM7WUFDUDtnQkFDSSxPQUFPLEVBQUUsMEJBQTBCO2dCQUNuQyxRQUFRLEVBQUUsK0JBQStCO2FBQzVDO1NBQ0o7OzRGQUVRLGtDQUFrQztrQkFWOUMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGtDQUFrQztvQkFDNUMsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSwwQkFBMEI7NEJBQ25DLFFBQVEsRUFBRSwrQkFBK0I7eUJBQzVDO3FCQUNKO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUVUlfREFURV9WQUxVRV9UUkFOU0ZPUk1FUiB9IGZyb20gJ0B0YWlnYS11aS9raXQnO1xuXG5pbXBvcnQgeyBEYXRlVmFsdWVUcmFuc2Zvcm1lcldpdGhFbmRUaW1lIH0gZnJvbSAnLi4vcHJvdmlkZXJzL2RhdGUtdmFsdWUtdHJhbnNmb3JtZXInO1xuXG4vKipcbiAqINCU0LjRgNC10LrRgtC40LLQsCDQtNC70Y8g0L/RgNC10L7QsdGA0LDQt9C+0LLQsNC90LjRjyDQtNCw0YLRiyDQsiDRhNC+0YDQvNCw0YIgXCJZWVlZLU1NLUREIDIzOjU5OjU5XCIuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtZGF0ZVt0b0ZpbmlzaERhdGVUaW1lXScsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9EQVRFX1ZBTFVFX1RSQU5TRk9STUVSLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IERhdGVWYWx1ZVRyYW5zZm9ybWVyV2l0aEVuZFRpbWUsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRmluaXNoRGF0ZVRpbWVUcmFuc2Zvcm1lckRpcmVjdGl2ZSB7fVxuIl19
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { DOCUMENT } from '@angular/common';
|
|
2
|
-
import { Directive, inject, input } from '@angular/core';
|
|
3
|
-
import { FormGroupDirective } from '@angular/forms';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Директива для автоматической установки фокуса на первое невалидное поле формы при submit.
|
|
7
|
-
*/
|
|
8
|
-
export class ScFocusFirstInvalidFieldDirective {
|
|
9
|
-
constructor() {
|
|
10
|
-
/**
|
|
11
|
-
* Порядок проверки полей формы.
|
|
12
|
-
*/
|
|
13
|
-
this.fieldOrder = input([]);
|
|
14
|
-
/**
|
|
15
|
-
* Объект {@link Document}, предоставляющий доступ к DOM страницы.
|
|
16
|
-
*/
|
|
17
|
-
this.document = inject(DOCUMENT);
|
|
18
|
-
/**
|
|
19
|
-
* Директива формы.
|
|
20
|
-
*/
|
|
21
|
-
this.formGroupDirective = inject(FormGroupDirective);
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Обработчик события submit формы.
|
|
25
|
-
*/
|
|
26
|
-
onSubmit() {
|
|
27
|
-
const { form } = this.formGroupDirective;
|
|
28
|
-
if (this.fieldOrder().length === 0) {
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
31
|
-
if (form.valid) {
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
const firstInvalidFieldName = this.fieldOrder().find((fieldName) => {
|
|
35
|
-
const control = form.get(fieldName);
|
|
36
|
-
return control && control.invalid && !control.disabled;
|
|
37
|
-
});
|
|
38
|
-
const firstInvalidField = firstInvalidFieldName ? form.get(firstInvalidFieldName) : null;
|
|
39
|
-
if (firstInvalidField) {
|
|
40
|
-
firstInvalidField.markAsTouched();
|
|
41
|
-
firstInvalidField.updateValueAndValidity();
|
|
42
|
-
}
|
|
43
|
-
setTimeout(() => {
|
|
44
|
-
this.focusFirstInvalidField(form);
|
|
45
|
-
}, 0);
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Устанавливает фокус на первое поле формы с ошибкой.
|
|
49
|
-
*
|
|
50
|
-
* @param form Форма для проверки.
|
|
51
|
-
*/
|
|
52
|
-
focusFirstInvalidField(form) {
|
|
53
|
-
const firstInvalidField = this.fieldOrder().find((fieldName) => {
|
|
54
|
-
const control = form.get(fieldName);
|
|
55
|
-
return control && control.invalid && control.touched && !control.disabled;
|
|
56
|
-
});
|
|
57
|
-
if (!firstInvalidField) {
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
const element = this.document.querySelector(`[formControlName="${firstInvalidField}"]`);
|
|
61
|
-
if (!element) {
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
|
|
65
|
-
const queryResult = element.querySelector('input, select, textarea');
|
|
66
|
-
const nativeElement = element.nativeFocusableElement ?? (queryResult ? queryResult : null) ?? element;
|
|
67
|
-
if (nativeElement instanceof HTMLElement) {
|
|
68
|
-
nativeElement.focus();
|
|
69
|
-
nativeElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFocusFirstInvalidFieldDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
73
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.14", type: ScFocusFirstInvalidFieldDirective, isStandalone: true, selector: "form[formGroup][scFocusFirstInvalidField]", inputs: { fieldOrder: { classPropertyName: "fieldOrder", publicName: "fieldOrder", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "ngSubmit": "onSubmit()" } }, ngImport: i0 }); }
|
|
74
|
-
}
|
|
75
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFocusFirstInvalidFieldDirective, decorators: [{
|
|
76
|
-
type: Directive,
|
|
77
|
-
args: [{
|
|
78
|
-
standalone: true,
|
|
79
|
-
selector: 'form[formGroup][scFocusFirstInvalidField]',
|
|
80
|
-
host: {
|
|
81
|
-
'(ngSubmit)': 'onSubmit()',
|
|
82
|
-
},
|
|
83
|
-
}]
|
|
84
|
-
}] });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtZm9jdXMtZmlyc3QtaW52YWxpZC1maWVsZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZGlyZWN0aXZlcy9zYy1mb2N1cy1maXJzdC1pbnZhbGlkLWZpZWxkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBYSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUUvRDs7R0FFRztBQVFILE1BQU0sT0FBTyxpQ0FBaUM7SUFQOUM7UUFRSTs7V0FFRztRQUNhLGVBQVUsR0FBRyxLQUFLLENBQVcsRUFBRSxDQUFDLENBQUM7UUFFakQ7O1dBRUc7UUFDYyxhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTdDOztXQUVHO1FBQ2MsdUJBQWtCLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7S0FrRXBFO0lBaEVHOztPQUVHO0lBQ0ssUUFBUTtRQUNaLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUM7UUFFekMsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2pDLE9BQU87UUFDWCxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDYixPQUFPO1FBQ1gsQ0FBQztRQUVELE1BQU0scUJBQXFCLEdBQXVCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNuRixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBRXBDLE9BQU8sT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQzNELENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxpQkFBaUIsR0FBRyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFFekYsSUFBSSxpQkFBaUIsRUFBRSxDQUFDO1lBQ3BCLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ2xDLGlCQUFpQixDQUFDLHNCQUFzQixFQUFFLENBQUM7UUFDL0MsQ0FBQztRQUVELFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxzQkFBc0IsQ0FBQyxJQUFlO1FBQzFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQzNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFcEMsT0FBTyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztRQUM5RSxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3JCLE9BQU87UUFDWCxDQUFDO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMscUJBQXFCLGlCQUFpQixJQUFJLENBQUMsQ0FBQztRQUV4RixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDWCxPQUFPO1FBQ1gsQ0FBQztRQUVELCtHQUErRztRQUMvRyxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDckUsTUFBTSxhQUFhLEdBQ2QsT0FBb0QsQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUUsV0FBMkIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUssT0FBdUIsQ0FBQztRQUVwSyxJQUFJLGFBQWEsWUFBWSxXQUFXLEVBQUUsQ0FBQztZQUN2QyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDdEIsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDMUUsQ0FBQztJQUNMLENBQUM7K0dBL0VRLGlDQUFpQzttR0FBakMsaUNBQWlDOzs0RkFBakMsaUNBQWlDO2tCQVA3QyxTQUFTO21CQUFDO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsMkNBQTJDO29CQUNyRCxJQUFJLEVBQUU7d0JBQ0YsWUFBWSxFQUFFLFlBQVk7cUJBQzdCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1Hcm91cERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuLyoqXG4gKiDQlNC40YDQtdC60YLQuNCy0LAg0LTQu9GPINCw0LLRgtC+0LzQsNGC0LjRh9C10YHQutC+0Lkg0YPRgdGC0LDQvdC+0LLQutC4INGE0L7QutGD0YHQsCDQvdCwINC/0LXRgNCy0L7QtSDQvdC10LLQsNC70LjQtNC90L7QtSDQv9C+0LvQtSDRhNC+0YDQvNGLINC/0YDQuCBzdWJtaXQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdmb3JtW2Zvcm1Hcm91cF1bc2NGb2N1c0ZpcnN0SW52YWxpZEZpZWxkXScsXG4gICAgaG9zdDoge1xuICAgICAgICAnKG5nU3VibWl0KSc6ICdvblN1Ym1pdCgpJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBTY0ZvY3VzRmlyc3RJbnZhbGlkRmllbGREaXJlY3RpdmUge1xuICAgIC8qKlxuICAgICAqINCf0L7RgNGP0LTQvtC6INC/0YDQvtCy0LXRgNC60Lgg0L/QvtC70LXQuSDRhNC+0YDQvNGLLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBmaWVsZE9yZGVyID0gaW5wdXQ8c3RyaW5nW10+KFtdKTtcblxuICAgIC8qKlxuICAgICAqINCe0LHRitC10LrRgiB7QGxpbmsgRG9jdW1lbnR9LCDQv9GA0LXQtNC+0YHRgtCw0LLQu9GP0Y7RidC40Lkg0LTQvtGB0YLRg9C/INC6IERPTSDRgdGC0YDQsNC90LjRhtGLLlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuXG4gICAgLyoqXG4gICAgICog0JTQuNGA0LXQutGC0LjQstCwINGE0L7RgNC80YsuXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb3JtR3JvdXBEaXJlY3RpdmUgPSBpbmplY3QoRm9ybUdyb3VwRGlyZWN0aXZlKTtcblxuICAgIC8qKlxuICAgICAqINCe0LHRgNCw0LHQvtGC0YfQuNC6INGB0L7QsdGL0YLQuNGPIHN1Ym1pdCDRhNC+0YDQvNGLLlxuICAgICAqL1xuICAgIHByaXZhdGUgb25TdWJtaXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgZm9ybSB9ID0gdGhpcy5mb3JtR3JvdXBEaXJlY3RpdmU7XG5cbiAgICAgICAgaWYgKHRoaXMuZmllbGRPcmRlcigpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGZvcm0udmFsaWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZpcnN0SW52YWxpZEZpZWxkTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gdGhpcy5maWVsZE9yZGVyKCkuZmluZCgoZmllbGROYW1lKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb250cm9sID0gZm9ybS5nZXQoZmllbGROYW1lKTtcblxuICAgICAgICAgICAgcmV0dXJuIGNvbnRyb2wgJiYgY29udHJvbC5pbnZhbGlkICYmICFjb250cm9sLmRpc2FibGVkO1xuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBmaXJzdEludmFsaWRGaWVsZCA9IGZpcnN0SW52YWxpZEZpZWxkTmFtZSA/IGZvcm0uZ2V0KGZpcnN0SW52YWxpZEZpZWxkTmFtZSkgOiBudWxsO1xuXG4gICAgICAgIGlmIChmaXJzdEludmFsaWRGaWVsZCkge1xuICAgICAgICAgICAgZmlyc3RJbnZhbGlkRmllbGQubWFya0FzVG91Y2hlZCgpO1xuICAgICAgICAgICAgZmlyc3RJbnZhbGlkRmllbGQudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzRmlyc3RJbnZhbGlkRmllbGQoZm9ybSk7XG4gICAgICAgIH0sIDApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCj0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdGCINGE0L7QutGD0YEg0L3QsCDQv9C10YDQstC+0LUg0L/QvtC70LUg0YTQvtGA0LzRiyDRgSDQvtGI0LjQsdC60L7QuS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBmb3JtINCk0L7RgNC80LAg0LTQu9GPINC/0YDQvtCy0LXRgNC60LguXG4gICAgICovXG4gICAgcHJpdmF0ZSBmb2N1c0ZpcnN0SW52YWxpZEZpZWxkKGZvcm06IEZvcm1Hcm91cCk6IHZvaWQge1xuICAgICAgICBjb25zdCBmaXJzdEludmFsaWRGaWVsZCA9IHRoaXMuZmllbGRPcmRlcigpLmZpbmQoKGZpZWxkTmFtZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IGZvcm0uZ2V0KGZpZWxkTmFtZSk7XG5cbiAgICAgICAgICAgIHJldHVybiBjb250cm9sICYmIGNvbnRyb2wuaW52YWxpZCAmJiBjb250cm9sLnRvdWNoZWQgJiYgIWNvbnRyb2wuZGlzYWJsZWQ7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICghZmlyc3RJbnZhbGlkRmllbGQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYFtmb3JtQ29udHJvbE5hbWU9XCIke2ZpcnN0SW52YWxpZEZpZWxkfVwiXWApO1xuXG4gICAgICAgIGlmICghZWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtYXNzaWdubWVudCwgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1tZW1iZXItYWNjZXNzXG4gICAgICAgIGNvbnN0IHF1ZXJ5UmVzdWx0ID0gZWxlbWVudC5xdWVyeVNlbGVjdG9yKCdpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYScpO1xuICAgICAgICBjb25zdCBuYXRpdmVFbGVtZW50ID1cbiAgICAgICAgICAgIChlbGVtZW50IGFzIHsgbmF0aXZlRm9jdXNhYmxlRWxlbWVudD86IEhUTUxFbGVtZW50IH0pLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgPz8gKHF1ZXJ5UmVzdWx0ID8gKHF1ZXJ5UmVzdWx0IGFzIEhUTUxFbGVtZW50KSA6IG51bGwpID8/IChlbGVtZW50IGFzIEhUTUxFbGVtZW50KTtcblxuICAgICAgICBpZiAobmF0aXZlRWxlbWVudCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSB7XG4gICAgICAgICAgICBuYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgICAgICBuYXRpdmVFbGVtZW50LnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdzbW9vdGgnLCBibG9jazogJ2NlbnRlcicgfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { Directive } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Директива для обработки события фокуса поля ввода, для последующего выделения содержимого поля ввода.
|
|
5
|
-
*/
|
|
6
|
-
export class ScSelectOnFocusinDirective {
|
|
7
|
-
/**
|
|
8
|
-
* Слушатель и обработчик события `focusin`.
|
|
9
|
-
*
|
|
10
|
-
* @param target Целевой объект события `focusin`.
|
|
11
|
-
*/
|
|
12
|
-
// eslint-disable-next-line class-methods-use-this
|
|
13
|
-
onFocusIn(target) {
|
|
14
|
-
if (target instanceof HTMLInputElement) {
|
|
15
|
-
target.select();
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScSelectOnFocusinDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
19
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ScSelectOnFocusinDirective, isStandalone: true, selector: "tui-input-number, tui-input, tui-input-phone, tui-input-date, tui-input-password, input[tuiInputNumber], input[tuiTextfield], input[tuiInputSlider]", host: { listeners: { "focusin": "onFocusIn($event.target)" } }, ngImport: i0 }); }
|
|
20
|
-
}
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScSelectOnFocusinDirective, decorators: [{
|
|
22
|
-
type: Directive,
|
|
23
|
-
args: [{
|
|
24
|
-
standalone: true,
|
|
25
|
-
selector: 'tui-input-number, tui-input, tui-input-phone, tui-input-date, tui-input-password, input[tuiInputNumber], input[tuiTextfield], input[tuiInputSlider]',
|
|
26
|
-
host: {
|
|
27
|
-
'(focusin)': 'onFocusIn($event.target)',
|
|
28
|
-
},
|
|
29
|
-
}]
|
|
30
|
-
}] });
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtc2VsZWN0LW9uLWZvY3VzaW4uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2RpcmVjdGl2ZXMvc2VsZWN0LW9uLWZvY3VzaW4vc2Mtc2VsZWN0LW9uLWZvY3VzaW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTFDOztHQUVHO0FBUUgsTUFBTSxPQUFPLDBCQUEwQjtJQUNuQzs7OztPQUlHO0lBQ0gsa0RBQWtEO0lBQ3hDLFNBQVMsQ0FBQyxNQUFtQjtRQUNuQyxJQUFJLE1BQU0sWUFBWSxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3JDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0wsQ0FBQzsrR0FYUSwwQkFBMEI7bUdBQTFCLDBCQUEwQjs7NEZBQTFCLDBCQUEwQjtrQkFQdEMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHFKQUFxSjtvQkFDL0osSUFBSSxFQUFFO3dCQUNGLFdBQVcsRUFBRSwwQkFBMEI7cUJBQzFDO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICog0JTQuNGA0LXQutGC0LjQstCwINC00LvRjyDQvtCx0YDQsNCx0L7RgtC60Lgg0YHQvtCx0YvRgtC40Y8g0YTQvtC60YPRgdCwINC/0L7Qu9GPINCy0LLQvtC00LAsINC00LvRjyDQv9C+0YHQu9C10LTRg9GO0YnQtdCz0L4g0LLRi9C00LXQu9C10L3QuNGPINGB0L7QtNC10YDQttC40LzQvtCz0L4g0L/QvtC70Y8g0LLQstC+0LTQsC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1pbnB1dC1udW1iZXIsIHR1aS1pbnB1dCwgdHVpLWlucHV0LXBob25lLCB0dWktaW5wdXQtZGF0ZSwgdHVpLWlucHV0LXBhc3N3b3JkLCBpbnB1dFt0dWlJbnB1dE51bWJlcl0sIGlucHV0W3R1aVRleHRmaWVsZF0sIGlucHV0W3R1aUlucHV0U2xpZGVyXScsXG4gICAgaG9zdDoge1xuICAgICAgICAnKGZvY3VzaW4pJzogJ29uRm9jdXNJbigkZXZlbnQudGFyZ2V0KScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgU2NTZWxlY3RPbkZvY3VzaW5EaXJlY3RpdmUge1xuICAgIC8qKlxuICAgICAqINCh0LvRg9GI0LDRgtC10LvRjCDQuCDQvtCx0YDQsNCx0L7RgtGH0LjQuiDRgdC+0LHRi9GC0LjRjyBgZm9jdXNpbmAuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdGFyZ2V0INCm0LXQu9C10LLQvtC5INC+0LHRitC10LrRgiDRgdC+0LHRi9GC0LjRjyBgZm9jdXNpbmAuXG4gICAgICovXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNsYXNzLW1ldGhvZHMtdXNlLXRoaXNcbiAgICBwcm90ZWN0ZWQgb25Gb2N1c0luKHRhcmdldDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRhcmdldCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRhcmdldC5zZWxlY3QoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
/* eslint-disable lodash/prefer-lodash-method */
|
|
2
|
-
import { Directive, ElementRef, HostListener, inject } from '@angular/core';
|
|
3
|
-
import { IS_RUNNING_ON_TERMINAL } from '@snabcentr/client-core';
|
|
4
|
-
import { TuiDialogService } from '@taiga-ui/core';
|
|
5
|
-
import { PolymorpheusComponent } from '@taiga-ui/polymorpheus';
|
|
6
|
-
import { ScQRCodeDialogComponent } from '../../qrcode';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Директива открытия диалогового окна с QRCode для ссылок `tel:` и `mailto:` на терминале.
|
|
10
|
-
*/
|
|
11
|
-
export class ScTerminalLinkDirective {
|
|
12
|
-
constructor() {
|
|
13
|
-
/**
|
|
14
|
-
* Ссылка на HTML элемент тега `<a>`.
|
|
15
|
-
*/
|
|
16
|
-
this.elementReference = inject(ElementRef);
|
|
17
|
-
/**
|
|
18
|
-
* Сервис для работы с диалоговыми окнами TuiDialog.
|
|
19
|
-
*/
|
|
20
|
-
this.dialog = inject(TuiDialogService);
|
|
21
|
-
/**
|
|
22
|
-
* Провайдер данных о терминале.
|
|
23
|
-
*/
|
|
24
|
-
this.terminal = inject(IS_RUNNING_ON_TERMINAL);
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Обработчик клика по ссылке.
|
|
28
|
-
*
|
|
29
|
-
* @param event Событие клика.
|
|
30
|
-
*/
|
|
31
|
-
onClick(event) {
|
|
32
|
-
if (this.terminal.isRunningOnTerminal && this.isLinkTelOrMail()) {
|
|
33
|
-
// Отключение базового события для терминала.
|
|
34
|
-
event.preventDefault();
|
|
35
|
-
this.openQRCodeDialog();
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Открывает диалоговое окно с QR-кодом.
|
|
40
|
-
*/
|
|
41
|
-
openQRCodeDialog() {
|
|
42
|
-
this.dialog
|
|
43
|
-
.open(new PolymorpheusComponent(ScQRCodeDialogComponent), {
|
|
44
|
-
size: 's',
|
|
45
|
-
// Передаём ссылку формата `mailto:example@example.com` `tel:+70000000000` вместо vCard, так как для vCard данных недостаточно.
|
|
46
|
-
data: { qrdata: this.elementReference.nativeElement.href },
|
|
47
|
-
})
|
|
48
|
-
.subscribe();
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Проверяет ведёт ли ссылка на телефон или адрес электронной почты.
|
|
52
|
-
*/
|
|
53
|
-
isLinkTelOrMail() {
|
|
54
|
-
return this.elementReference.nativeElement.href.startsWith('tel:') || this.elementReference.nativeElement.href.startsWith('mailto:');
|
|
55
|
-
}
|
|
56
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScTerminalLinkDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
57
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ScTerminalLinkDirective, isStandalone: true, selector: "a[href]", host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 }); }
|
|
58
|
-
}
|
|
59
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScTerminalLinkDirective, decorators: [{
|
|
60
|
-
type: Directive,
|
|
61
|
-
args: [{
|
|
62
|
-
standalone: true,
|
|
63
|
-
selector: 'a[href]',
|
|
64
|
-
}]
|
|
65
|
-
}], propDecorators: { onClick: [{
|
|
66
|
-
type: HostListener,
|
|
67
|
-
args: ['click', ['$event']]
|
|
68
|
-
}] } });
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtdGVybWluYWwtbGluay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZGlyZWN0aXZlcy90ZXJtaW5hbC1saW5rL3NjLXRlcm1pbmFsLWxpbmsuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdEQUFnRDtBQUVoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBdUIsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUUvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBRXZEOztHQUVHO0FBS0gsTUFBTSxPQUFPLHVCQUF1QjtJQUpwQztRQUtJOztXQUVHO1FBQ0sscUJBQWdCLEdBQWtDLE1BQU0sQ0FBZ0MsVUFBVSxDQUFDLENBQUM7UUFFNUc7O1dBRUc7UUFDSyxXQUFNLEdBQXFCLE1BQU0sQ0FBbUIsZ0JBQWdCLENBQUMsQ0FBQztRQUU5RTs7V0FFRztRQUNLLGFBQVEsR0FBd0IsTUFBTSxDQUFzQixzQkFBc0IsQ0FBQyxDQUFDO0tBbUMvRjtJQWpDRzs7OztPQUlHO0lBRUksT0FBTyxDQUFDLEtBQVk7UUFDdkIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLG1CQUFtQixJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDO1lBQzlELDZDQUE2QztZQUM3QyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDNUIsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNJLGdCQUFnQjtRQUNuQixJQUFJLENBQUMsTUFBTTthQUNOLElBQUksQ0FBQyxJQUFJLHFCQUFxQixDQUFDLHVCQUF1QixDQUFDLEVBQUU7WUFDdEQsSUFBSSxFQUFFLEdBQUc7WUFDVCwrSEFBK0g7WUFDL0gsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFO1NBQzdELENBQUM7YUFDRCxTQUFTLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQ7O09BRUc7SUFDSyxlQUFlO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6SSxDQUFDOytHQWhEUSx1QkFBdUI7bUdBQXZCLHVCQUF1Qjs7NEZBQXZCLHVCQUF1QjtrQkFKbkMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLFNBQVM7aUJBQ3RCOzhCQXVCVSxPQUFPO3NCQURiLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbG9kYXNoL3ByZWZlci1sb2Rhc2gtbWV0aG9kICovXG5cbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElTX1JVTk5JTkdfT05fVEVSTUlOQUwsIFNjSVRlcm1pbmFsUHJvdmlkZXIgfSBmcm9tICdAc25hYmNlbnRyL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IFR1aURpYWxvZ1NlcnZpY2UgfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQgeyBQb2x5bW9ycGhldXNDb21wb25lbnQgfSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHsgU2NRUkNvZGVEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi9xcmNvZGUnO1xuXG4vKipcbiAqINCU0LjRgNC10LrRgtC40LLQsCDQvtGC0LrRgNGL0YLQuNGPINC00LjQsNC70L7Qs9C+0LLQvtCz0L4g0L7QutC90LAg0YEgUVJDb2RlINC00LvRjyDRgdGB0YvQu9C+0LogYHRlbDpgINC4IGBtYWlsdG86YCDQvdCwINGC0LXRgNC80LjQvdCw0LvQtS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ2FbaHJlZl0nLFxufSlcbmV4cG9ydCBjbGFzcyBTY1Rlcm1pbmFsTGlua0RpcmVjdGl2ZSB7XG4gICAgLyoqXG4gICAgICog0KHRgdGL0LvQutCwINC90LAgSFRNTCDRjdC70LXQvNC10L3RgiDRgtC10LPQsCBgPGE+YC5cbiAgICAgKi9cbiAgICBwcml2YXRlIGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8SFRNTEFuY2hvckVsZW1lbnQ+ID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEFuY2hvckVsZW1lbnQ+PihFbGVtZW50UmVmKTtcblxuICAgIC8qKlxuICAgICAqINCh0LXRgNCy0LjRgSDQtNC70Y8g0YDQsNCx0L7RgtGLINGBINC00LjQsNC70L7Qs9C+0LLRi9C80Lgg0L7QutC90LDQvNC4IFR1aURpYWxvZy5cbiAgICAgKi9cbiAgICBwcml2YXRlIGRpYWxvZzogVHVpRGlhbG9nU2VydmljZSA9IGluamVjdDxUdWlEaWFsb2dTZXJ2aWNlPihUdWlEaWFsb2dTZXJ2aWNlKTtcblxuICAgIC8qKlxuICAgICAqINCf0YDQvtCy0LDQudC00LXRgCDQtNCw0L3QvdGL0YUg0L4g0YLQtdGA0LzQuNC90LDQu9C1LlxuICAgICAqL1xuICAgIHByaXZhdGUgdGVybWluYWw6IFNjSVRlcm1pbmFsUHJvdmlkZXIgPSBpbmplY3Q8U2NJVGVybWluYWxQcm92aWRlcj4oSVNfUlVOTklOR19PTl9URVJNSU5BTCk7XG5cbiAgICAvKipcbiAgICAgKiDQntCx0YDQsNCx0L7RgtGH0LjQuiDQutC70LjQutCwINC/0L4g0YHRgdGL0LvQutC1LlxuICAgICAqXG4gICAgICogQHBhcmFtIGV2ZW50INCh0L7QsdGL0YLQuNC1INC60LvQuNC60LAuXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbkNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy50ZXJtaW5hbC5pc1J1bm5pbmdPblRlcm1pbmFsICYmIHRoaXMuaXNMaW5rVGVsT3JNYWlsKCkpIHtcbiAgICAgICAgICAgIC8vINCe0YLQutC70Y7Rh9C10L3QuNC1INCx0LDQt9C+0LLQvtCz0L4g0YHQvtCx0YvRgtC40Y8g0LTQu9GPINGC0LXRgNC80LjQvdCw0LvQsC5cbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLm9wZW5RUkNvZGVEaWFsb2coKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCe0YLQutGA0YvQstCw0LXRgiDQtNC40LDQu9C+0LPQvtCy0L7QtSDQvtC60L3QviDRgSBRUi3QutC+0LTQvtC8LlxuICAgICAqL1xuICAgIHB1YmxpYyBvcGVuUVJDb2RlRGlhbG9nKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRpYWxvZ1xuICAgICAgICAgICAgLm9wZW4obmV3IFBvbHltb3JwaGV1c0NvbXBvbmVudChTY1FSQ29kZURpYWxvZ0NvbXBvbmVudCksIHtcbiAgICAgICAgICAgICAgICBzaXplOiAncycsXG4gICAgICAgICAgICAgICAgLy8g0J/QtdGA0LXQtNCw0ZHQvCDRgdGB0YvQu9C60YMg0YTQvtGA0LzQsNGC0LAgYG1haWx0bzpleGFtcGxlQGV4YW1wbGUuY29tYCBgdGVsOis3MDAwMDAwMDAwMGAg0LLQvNC10YHRgtC+IHZDYXJkLCDRgtCw0Log0LrQsNC6INC00LvRjyB2Q2FyZCDQtNCw0L3QvdGL0YUg0L3QtdC00L7RgdGC0LDRgtC+0YfQvdC+LlxuICAgICAgICAgICAgICAgIGRhdGE6IHsgcXJkYXRhOiB0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudC5ocmVmIH0sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCf0YDQvtCy0LXRgNGP0LXRgiDQstC10LTRkdGCINC70Lgg0YHRgdGL0LvQutCwINC90LAg0YLQtdC70LXRhNC+0L0g0LjQu9C4INCw0LTRgNC10YEg0Y3Qu9C10LrRgtGA0L7QvdC90L7QuSDQv9C+0YfRgtGLLlxuICAgICAqL1xuICAgIHByaXZhdGUgaXNMaW5rVGVsT3JNYWlsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQuaHJlZi5zdGFydHNXaXRoKCd0ZWw6JykgfHwgdGhpcy5lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQuaHJlZi5zdGFydHNXaXRoKCdtYWlsdG86Jyk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
import { noop } from 'rxjs';
|
|
3
|
-
/**
|
|
4
|
-
* Токен обработчика смены ошибки.
|
|
5
|
-
*/
|
|
6
|
-
// eslint-disable-next-line unicorn/consistent-function-scoping
|
|
7
|
-
export const SC_ERROR_CHANGE_HANDLER = new InjectionToken('SC_ERROR_CHANGE_HANDLER', {
|
|
8
|
-
factory: () => () => noop,
|
|
9
|
-
});
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItY2hhbmdlLWhhbmRsZXIucHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2Vycm9yLWhhbmRsZXIvY29uc3RzL2Vycm9yLWNoYW5nZS1oYW5kbGVyLnByb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJNUI7O0dBRUc7QUFDSCwrREFBK0Q7QUFDL0QsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxjQUFjLENBQStCLHlCQUF5QixFQUFFO0lBQy9HLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJO0NBQzVCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBub29wIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IElCbG9ja0Vycm9yIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9pLWJsb2NrLWVycm9yJztcblxuLyoqXG4gKiDQotC+0LrQtdC9INC+0LHRgNCw0LHQvtGC0YfQuNC60LAg0YHQvNC10L3RiyDQvtGI0LjQsdC60LguXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL2NvbnNpc3RlbnQtZnVuY3Rpb24tc2NvcGluZ1xuZXhwb3J0IGNvbnN0IFNDX0VSUk9SX0NIQU5HRV9IQU5ETEVSID0gbmV3IEluamVjdGlvblRva2VuPChlcnJvcjogSUJsb2NrRXJyb3IpID0+IHZvaWQ+KCdTQ19FUlJPUl9DSEFOR0VfSEFORExFUicsIHtcbiAgICBmYWN0b3J5OiAoKSA9PiAoKSA9PiBub29wLFxufSk7XG4iXX0=
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, effect, inject, output } from '@angular/core';
|
|
2
|
-
import { ActivatedRoute, RouterLink } from '@angular/router';
|
|
3
|
-
import { IS_SERVER, RESPONSE } from '@snabcentr/client-core';
|
|
4
|
-
import { TuiAppearance, TuiButton, TuiIcons, TuiWithAppearance, TuiWithIcons } from '@taiga-ui/core';
|
|
5
|
-
import { ScErrorHandlerComponent } from '../sc-error-handler.component';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
/**
|
|
8
|
-
* Компонент представления данных об ошибке.
|
|
9
|
-
*/
|
|
10
|
-
export class ScErrorBlockStatusComponent {
|
|
11
|
-
/**
|
|
12
|
-
* Инициализирует экземпляр класса {@link ErrorPageComponent}.
|
|
13
|
-
*/
|
|
14
|
-
constructor() {
|
|
15
|
-
/**
|
|
16
|
-
* Компонент управляющий кодом ошибки отображаемой на странице.
|
|
17
|
-
*/
|
|
18
|
-
this.errorHandlerComponent = inject(ScErrorHandlerComponent, { skipSelf: true });
|
|
19
|
-
/**
|
|
20
|
-
* Сигнал кода ошибки.
|
|
21
|
-
*/
|
|
22
|
-
this.code = this.errorHandlerComponent.getErrorCode();
|
|
23
|
-
/**
|
|
24
|
-
* Данные об ошибке.
|
|
25
|
-
*/
|
|
26
|
-
// eslint-disable-next-line unicorn/consistent-function-scoping
|
|
27
|
-
this.error = computed(() => this.getErrorMessage(this.code()));
|
|
28
|
-
/**
|
|
29
|
-
* Создает сигнал изменения строкового представления об ошибке.
|
|
30
|
-
*/
|
|
31
|
-
this.pageErrorChange = output();
|
|
32
|
-
/**
|
|
33
|
-
* Признак, что текущий скрипт исполняется на сервере.
|
|
34
|
-
*/
|
|
35
|
-
this.isServer = inject(IS_SERVER);
|
|
36
|
-
/**
|
|
37
|
-
* Данные об ответе на запрос.
|
|
38
|
-
*/
|
|
39
|
-
this.response = inject(RESPONSE, { optional: true });
|
|
40
|
-
// Если компонент отображён маршрутизацией из-за перехода по неизвестному маршруту, то устанавливаем код 404.
|
|
41
|
-
if (inject(ActivatedRoute).snapshot.data['routes_key'] === 'error') {
|
|
42
|
-
this.errorHandlerComponent.setErrorCode(404);
|
|
43
|
-
}
|
|
44
|
-
effect(() => {
|
|
45
|
-
if (this.code() !== null) {
|
|
46
|
-
this.pageErrorChange.emit(this.error());
|
|
47
|
-
if (this.isServer) {
|
|
48
|
-
this.response?.status(this.code() ?? 0);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Возвращает описание ошибки.
|
|
55
|
-
*
|
|
56
|
-
* @param code Код ошибки.
|
|
57
|
-
*/
|
|
58
|
-
// eslint-disable-next-line class-methods-use-this
|
|
59
|
-
getErrorMessage(code) {
|
|
60
|
-
switch (code) {
|
|
61
|
-
case 403:
|
|
62
|
-
return {
|
|
63
|
-
message: 'К сожалению, у вас нет доступа к этому ресурсу',
|
|
64
|
-
description: 'Воспользуйтесь навигацией в шапке или подвале сайта, чтобы перейти в интересующий вас раздел',
|
|
65
|
-
code,
|
|
66
|
-
};
|
|
67
|
-
case 404:
|
|
68
|
-
return {
|
|
69
|
-
message: 'К сожалению, такой страницы нет',
|
|
70
|
-
description: 'Воспользуйтесь навигацией в шапке или подвале сайта, чтобы перейти в интересующий вас раздел',
|
|
71
|
-
code,
|
|
72
|
-
};
|
|
73
|
-
default:
|
|
74
|
-
return {
|
|
75
|
-
message: 'Неизвестная ошибка',
|
|
76
|
-
description: 'Пожалуйста обновите страницу или обратитесь к менеджеру',
|
|
77
|
-
code: 0,
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScErrorBlockStatusComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
82
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ScErrorBlockStatusComponent, isStandalone: true, selector: "sc-error-block-status", outputs: { pageErrorChange: "pageErrorChange" }, ngImport: i0, 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", dependencies: [{ kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
83
|
-
}
|
|
84
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScErrorBlockStatusComponent, decorators: [{
|
|
85
|
-
type: Component,
|
|
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" }]
|
|
87
|
-
}], ctorParameters: () => [] });
|
|
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,5 +0,0 @@
|
|
|
1
|
-
export * from './interfaces/i-block-error';
|
|
2
|
-
export * from './consts/error-change-handler.providers';
|
|
3
|
-
export * from './sc-error-handler.component';
|
|
4
|
-
export * from './error-block-status/error-block-status.component';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZXJyb3ItaGFuZGxlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLG1EQUFtRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL2ktYmxvY2stZXJyb3InO1xuZXhwb3J0ICogZnJvbSAnLi9jb25zdHMvZXJyb3ItY2hhbmdlLWhhbmRsZXIucHJvdmlkZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vc2MtZXJyb3ItaGFuZGxlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9lcnJvci1ibG9jay1zdGF0dXMvZXJyb3ItYmxvY2stc3RhdHVzLmNvbXBvbmVudCc7XG4iXX0=
|