@snabcentr/client-ui 4.14.9 → 4.14.20
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/accordion/index.d.ts +3 -0
- package/accordion/sc-accordion-content.directive.d.ts +9 -0
- package/accordion/sc-accordion.component.d.ts +56 -0
- package/accordion/sc-accordion.module.d.ts +15 -0
- package/auth/enums/auth-method.d.ts +13 -0
- package/auth/index.d.ts +8 -0
- package/auth/interfaces/index.d.ts +2 -0
- package/auth/interfaces/sc-bank-account-form-group.d.ts +11 -0
- package/auth/interfaces/sc-contact-form-group.d.ts +10 -0
- package/auth/sc-auth.module.d.ts +27 -0
- package/auth/sc-sign-in-form/sc-sign-in-form-by-email/sc-sign-in-form-by-email.component.d.ts +55 -0
- package/auth/sc-sign-in-form/sc-sign-in-form-by-phone/sc-sign-in-form-by-phone.component.d.ts +45 -0
- package/auth/sc-sign-in-form/sc-sign-in-form.component.d.ts +53 -0
- package/auth/sc-simple-sign-up-form/sc-simple-sign-up-form.component.d.ts +113 -0
- package/auth/sign-up-form/sc-sign-up-form.component.d.ts +172 -0
- package/banner/index.d.ts +2 -0
- package/banner/sc-banner.component.d.ts +108 -0
- package/banner/sc-banner.module.d.ts +17 -0
- package/brands-list/index.d.ts +3 -0
- package/brands-list/sc-brand-list-item.d.ts +25 -0
- package/brands-list/sc-brands-list.component.d.ts +13 -0
- package/brands-list/sc-brands-list.module.d.ts +12 -0
- package/cart/add-or-editing-cart-item-dialog/add-or-editing-cart-item-form/sc-add-or-editing-cart-item-form.component.d.ts +106 -0
- package/cart/add-or-editing-cart-item-dialog/index.d.ts +2 -0
- package/cart/add-or-editing-cart-item-dialog/sc-add-or-editing-cart-item-dialog.component.d.ts +49 -0
- package/cart/index.d.ts +2 -0
- package/cart/sc-cart-add-products-from-csv-dialog/sc-cart-add-products-from-csv-dialog.component.d.ts +62 -0
- package/catalog/catalog-filters/collapsible/sc-catalog-filter-collapsible.component.d.ts +47 -0
- package/catalog/catalog-filters/index.d.ts +4 -0
- package/catalog/catalog-filters/sc-catalog-filters.component.d.ts +199 -0
- package/catalog/catalog-filters/tokens/sc-catalog-products-filters.d.ts +7 -0
- package/catalog/catalog-filters/tokens/sc-catalog-show-products-recursively.d.ts +5 -0
- package/catalog/category-card/sc-category-card.component.d.ts +76 -0
- package/catalog/cost-with-discount/cost-with-discount.component.d.ts +23 -0
- package/catalog/download-price-list/sc-download-price-list.component.d.ts +38 -0
- package/catalog/hover-image-carousel/sc-hover-image-carousel.component.d.ts +48 -0
- package/catalog/index.d.ts +15 -0
- package/catalog/input-quantity/sc-input-quantity.component.d.ts +82 -0
- package/catalog/notify-when-in-stock-dialog/index.d.ts +2 -0
- package/catalog/notify-when-in-stock-dialog/sc-notify-when-in-stock-dialog.component.d.ts +90 -0
- package/catalog/notify-when-in-stock-dialog/sc-product-in-all-warehouses.pipe.d.ts +22 -0
- package/catalog/price-card/sc-price-card.component.d.ts +18 -0
- package/catalog/price-card-inline/sc-price-card-inline.component.d.ts +10 -0
- package/catalog/price-history/sc-price-history.component.d.ts +92 -0
- package/catalog/price-list-pagination/sc-price-list-pagination.component.d.ts +40 -0
- package/catalog/price-warehouse-stock/sc-price-warehouse-stock.component.d.ts +47 -0
- package/catalog/sc-catalog.module.d.ts +29 -0
- package/catalog/sc-favorite-button/sc-favorite-button.component.d.ts +25 -0
- package/catalog/seo-tags/sc-seo-tags.component.d.ts +20 -0
- package/configurators/index.d.ts +3 -0
- package/configurators/models/index.d.ts +3 -0
- package/configurators/models/sandwich/sc-i-configurator-search-product-sandwich.d.ts +22 -0
- package/configurators/models/sandwich/sc-i-sandwich-settings.d.ts +18 -0
- package/configurators/models/sandwich_m2/sc-i-sandwich-m2-settings.d.ts +18 -0
- package/configurators/sandwich/index.d.ts +3 -0
- package/configurators/sandwich/sandwich-skeleton/sc-sandwich-skeleton.component.d.ts +8 -0
- package/configurators/sandwich/sc-i-new-cart-item-sandwich.d.ts +14 -0
- package/configurators/sandwich/sc-sandwich.component.d.ts +186 -0
- package/configurators/sandwich_m2/index.d.ts +4 -0
- package/configurators/sandwich_m2/sandwich-m2-skeleton/sc-sandwich-m2-skeleton.component.d.ts +8 -0
- package/configurators/sandwich_m2/sc-i-new-cart-item-sandwich-m2.d.ts +23 -0
- package/configurators/sandwich_m2/sc-sandwich-m2-item-submit-state.d.ts +13 -0
- package/configurators/sandwich_m2/sc-sandwich-m2.component.d.ts +275 -0
- package/contacts/add-contact-dialog/sc-add-contact-dialog.component.d.ts +49 -0
- package/contacts/contacts-accordion/sc-contacts-accordion.component.d.ts +23 -0
- package/contacts/index.d.ts +7 -0
- package/contacts/manager-card/sc-manager-card.component.d.ts +22 -0
- package/contacts/manager-card-push/sc-manager-card-push.component.d.ts +18 -0
- package/contacts/new-contact-form/sc-new-contact-form.component.d.ts +28 -0
- package/contacts/sc-contacts.module.d.ts +27 -0
- package/contacts/tokens/index.d.ts +2 -0
- package/contacts/tokens/sc-manager-qr-handler.token.d.ts +6 -0
- package/contacts/tokens/sc-show-help-notification-in-phone-input.token.d.ts +5 -0
- package/contragents/add-contragent-bank-account-dialog/sc-add-contragent-bank-account-dialog.component.d.ts +49 -0
- package/contragents/add-contragent-dialog/sc-add-contragent-dialog.component.d.ts +158 -0
- package/contragents/contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component.d.ts +62 -0
- package/contragents/contragents-accordion/sc-contragents-accordion.component.d.ts +49 -0
- package/contragents/index.d.ts +7 -0
- package/contragents/new-contragent-bank-account-form/sc-new-contragent-bank-account-form.component.d.ts +64 -0
- package/contragents/new-contragent-form/sc-new-contragent-form.component.d.ts +123 -0
- package/contragents/sc-contragents.module.d.ts +27 -0
- package/delivery-address/add-delivery-address-dialog/sc-add-delivery-address-dialog.component.d.ts +148 -0
- package/delivery-address/delivery-address-accordion/delivery-address-accordion-item/sc-delivery-address-accordion-item.component.d.ts +50 -0
- package/delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component.d.ts +49 -0
- package/delivery-address/index.d.ts +4 -0
- package/delivery-address/sc-delivery-address.module.d.ts +25 -0
- package/dialogs/index.d.ts +1 -0
- package/dialogs/sc-resource-preview/sc-resource-preview.component.d.ts +42 -0
- package/directives/abstract-price-card/abstract-sc-price-card.directive.d.ts +136 -0
- package/directives/address-quality/sc-address-quality.directive.d.ts +23 -0
- package/directives/address-quality/sc-address-quality.service.d.ts +122 -0
- package/directives/address-quality/sc-i-address-quality-state.d.ts +14 -0
- package/directives/index.d.ts +11 -0
- package/directives/links/index.d.ts +4 -0
- package/directives/links/sc-email-link.directive.d.ts +25 -0
- package/directives/links/sc-link-location.d.ts +5 -0
- package/directives/links/sc-links.d.ts +7 -0
- package/directives/links/sc-tel-link.directive.d.ts +40 -0
- package/directives/next-input-focus/sc-next-input-focus.directive.d.ts +27 -0
- package/directives/next-input-focus/sc-next-input-focus.module.d.ts +10 -0
- package/directives/print/sc-print.directive.d.ts +21 -0
- package/directives/sc-date-value-transformer.directive.d.ts +8 -0
- package/directives/sc-focus-first-invalid-field.directive.d.ts +30 -0
- package/directives/select-on-focusin/sc-select-on-focusin.directive.d.ts +14 -0
- package/directives/terminal-link/sc-terminal-link.directive.d.ts +34 -0
- package/error-handler/consts/error-change-handler.providers.d.ts +6 -0
- package/error-handler/error-block-status/error-block-status.component.d.ts +55 -0
- package/error-handler/index.d.ts +4 -0
- package/error-handler/interfaces/i-block-error.d.ts +17 -0
- package/error-handler/sc-error-handler.component.d.ts +40 -0
- package/esm2022/accordion/index.mjs +4 -0
- package/esm2022/accordion/sc-accordion-content.directive.mjs +17 -0
- package/esm2022/accordion/sc-accordion.component.mjs +92 -0
- package/esm2022/accordion/sc-accordion.module.mjs +26 -0
- package/esm2022/auth/enums/auth-method.mjs +15 -0
- package/esm2022/auth/index.mjs +9 -0
- package/esm2022/auth/interfaces/index.mjs +3 -0
- package/esm2022/auth/interfaces/sc-bank-account-form-group.mjs +2 -0
- package/esm2022/auth/interfaces/sc-contact-form-group.mjs +2 -0
- package/esm2022/auth/sc-auth.module.mjs +103 -0
- package/esm2022/auth/sc-sign-in-form/sc-sign-in-form-by-email/sc-sign-in-form-by-email.component.mjs +100 -0
- package/esm2022/auth/sc-sign-in-form/sc-sign-in-form-by-phone/sc-sign-in-form-by-phone.component.mjs +81 -0
- package/esm2022/auth/sc-sign-in-form/sc-sign-in-form.component.mjs +89 -0
- package/esm2022/auth/sc-simple-sign-up-form/sc-simple-sign-up-form.component.mjs +203 -0
- package/esm2022/auth/sign-up-form/sc-sign-up-form.component.mjs +344 -0
- package/esm2022/banner/index.mjs +3 -0
- package/esm2022/banner/sc-banner.component.mjs +176 -0
- package/esm2022/banner/sc-banner.module.mjs +29 -0
- package/esm2022/brands-list/index.mjs +4 -0
- package/esm2022/brands-list/sc-brand-list-item.mjs +2 -0
- package/esm2022/brands-list/sc-brands-list.component.mjs +24 -0
- package/esm2022/brands-list/sc-brands-list.module.mjs +22 -0
- package/esm2022/cart/add-or-editing-cart-item-dialog/add-or-editing-cart-item-form/sc-add-or-editing-cart-item-form.component.mjs +233 -0
- package/esm2022/cart/add-or-editing-cart-item-dialog/index.mjs +3 -0
- package/esm2022/cart/add-or-editing-cart-item-dialog/sc-add-or-editing-cart-item-dialog.component.mjs +75 -0
- package/esm2022/cart/index.mjs +3 -0
- package/esm2022/cart/sc-cart-add-products-from-csv-dialog/sc-cart-add-products-from-csv-dialog.component.mjs +110 -0
- package/esm2022/catalog/catalog-filters/collapsible/sc-catalog-filter-collapsible.component.mjs +59 -0
- package/esm2022/catalog/catalog-filters/index.mjs +5 -0
- package/esm2022/catalog/catalog-filters/sc-catalog-filters.component.mjs +451 -0
- package/esm2022/catalog/catalog-filters/tokens/sc-catalog-products-filters.mjs +10 -0
- package/esm2022/catalog/catalog-filters/tokens/sc-catalog-show-products-recursively.mjs +6 -0
- package/esm2022/catalog/category-card/sc-category-card.component.mjs +102 -0
- package/esm2022/catalog/cost-with-discount/cost-with-discount.component.mjs +38 -0
- package/esm2022/catalog/download-price-list/sc-download-price-list.component.mjs +56 -0
- package/esm2022/catalog/hover-image-carousel/sc-hover-image-carousel.component.mjs +76 -0
- package/esm2022/catalog/index.mjs +16 -0
- package/esm2022/catalog/input-quantity/sc-input-quantity.component.mjs +190 -0
- package/esm2022/catalog/notify-when-in-stock-dialog/index.mjs +3 -0
- package/esm2022/catalog/notify-when-in-stock-dialog/sc-notify-when-in-stock-dialog.component.mjs +173 -0
- package/esm2022/catalog/notify-when-in-stock-dialog/sc-product-in-all-warehouses.pipe.mjs +35 -0
- package/esm2022/catalog/price-card/sc-price-card.component.mjs +71 -0
- package/esm2022/catalog/price-card-inline/sc-price-card-inline.component.mjs +54 -0
- package/esm2022/catalog/price-history/sc-price-history.component.mjs +144 -0
- package/esm2022/catalog/price-list-pagination/sc-price-list-pagination.component.mjs +65 -0
- package/esm2022/catalog/price-warehouse-stock/sc-price-warehouse-stock.component.mjs +61 -0
- package/esm2022/catalog/sc-catalog.module.mjs +128 -0
- package/esm2022/catalog/sc-favorite-button/sc-favorite-button.component.mjs +42 -0
- package/esm2022/catalog/seo-tags/sc-seo-tags.component.mjs +25 -0
- package/esm2022/configurators/index.mjs +4 -0
- package/esm2022/configurators/models/index.mjs +4 -0
- package/esm2022/configurators/models/sandwich/sc-i-configurator-search-product-sandwich.mjs +2 -0
- package/esm2022/configurators/models/sandwich/sc-i-sandwich-settings.mjs +2 -0
- package/esm2022/configurators/models/sandwich_m2/sc-i-sandwich-m2-settings.mjs +2 -0
- package/esm2022/configurators/sandwich/index.mjs +4 -0
- package/esm2022/configurators/sandwich/sandwich-skeleton/sc-sandwich-skeleton.component.mjs +14 -0
- package/esm2022/configurators/sandwich/sc-i-new-cart-item-sandwich.mjs +2 -0
- package/esm2022/configurators/sandwich/sc-sandwich.component.mjs +387 -0
- package/esm2022/configurators/sandwich_m2/index.mjs +5 -0
- package/esm2022/configurators/sandwich_m2/sandwich-m2-skeleton/sc-sandwich-m2-skeleton.component.mjs +14 -0
- package/esm2022/configurators/sandwich_m2/sc-i-new-cart-item-sandwich-m2.mjs +2 -0
- package/esm2022/configurators/sandwich_m2/sc-sandwich-m2-item-submit-state.mjs +5 -0
- package/esm2022/configurators/sandwich_m2/sc-sandwich-m2.component.mjs +569 -0
- package/esm2022/contacts/add-contact-dialog/sc-add-contact-dialog.component.mjs +91 -0
- package/esm2022/contacts/contacts-accordion/sc-contacts-accordion.component.mjs +37 -0
- package/esm2022/contacts/index.mjs +8 -0
- package/esm2022/contacts/manager-card/sc-manager-card.component.mjs +58 -0
- package/esm2022/contacts/manager-card-push/sc-manager-card-push.component.mjs +28 -0
- package/esm2022/contacts/new-contact-form/sc-new-contact-form.component.mjs +37 -0
- package/esm2022/contacts/sc-contacts.module.mjs +89 -0
- package/esm2022/contacts/tokens/index.mjs +3 -0
- package/esm2022/contacts/tokens/sc-manager-qr-handler.token.mjs +25 -0
- package/esm2022/contacts/tokens/sc-show-help-notification-in-phone-input.token.mjs +9 -0
- package/esm2022/contragents/add-contragent-bank-account-dialog/sc-add-contragent-bank-account-dialog.component.mjs +81 -0
- package/esm2022/contragents/add-contragent-dialog/sc-add-contragent-dialog.component.mjs +266 -0
- package/esm2022/contragents/contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component.mjs +74 -0
- package/esm2022/contragents/contragents-accordion/sc-contragents-accordion.component.mjs +68 -0
- package/esm2022/contragents/index.mjs +8 -0
- package/esm2022/contragents/new-contragent-bank-account-form/sc-new-contragent-bank-account-form.component.mjs +72 -0
- package/esm2022/contragents/new-contragent-form/sc-new-contragent-form.component.mjs +230 -0
- package/esm2022/contragents/sc-contragents.module.mjs +118 -0
- package/esm2022/delivery-address/add-delivery-address-dialog/sc-add-delivery-address-dialog.component.mjs +261 -0
- package/esm2022/delivery-address/delivery-address-accordion/delivery-address-accordion-item/sc-delivery-address-accordion-item.component.mjs +60 -0
- package/esm2022/delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component.mjs +68 -0
- package/esm2022/delivery-address/index.mjs +5 -0
- package/esm2022/delivery-address/sc-delivery-address.module.mjs +96 -0
- package/esm2022/dialogs/index.mjs +2 -0
- package/esm2022/dialogs/sc-resource-preview/sc-resource-preview.component.mjs +73 -0
- package/esm2022/directives/abstract-price-card/abstract-sc-price-card.directive.mjs +170 -0
- package/esm2022/directives/address-quality/sc-address-quality.directive.mjs +40 -0
- package/esm2022/directives/address-quality/sc-address-quality.service.mjs +214 -0
- package/esm2022/directives/address-quality/sc-i-address-quality-state.mjs +2 -0
- package/esm2022/directives/index.mjs +12 -0
- package/esm2022/directives/links/index.mjs +5 -0
- package/esm2022/directives/links/sc-email-link.directive.mjs +49 -0
- package/esm2022/directives/links/sc-link-location.mjs +2 -0
- package/esm2022/directives/links/sc-links.mjs +8 -0
- package/esm2022/directives/links/sc-tel-link.directive.mjs +79 -0
- package/esm2022/directives/next-input-focus/sc-next-input-focus.directive.mjs +70 -0
- package/esm2022/directives/next-input-focus/sc-next-input-focus.module.mjs +19 -0
- package/esm2022/directives/print/sc-print.directive.mjs +36 -0
- package/esm2022/directives/sc-date-value-transformer.directive.mjs +30 -0
- package/esm2022/directives/sc-focus-first-invalid-field.directive.mjs +85 -0
- package/esm2022/directives/select-on-focusin/sc-select-on-focusin.directive.mjs +36 -0
- package/esm2022/directives/terminal-link/sc-terminal-link.directive.mjs +69 -0
- package/esm2022/error-handler/consts/error-change-handler.providers.mjs +10 -0
- package/esm2022/error-handler/error-block-status/error-block-status.component.mjs +101 -0
- package/esm2022/error-handler/index.mjs +5 -0
- package/esm2022/error-handler/interfaces/i-block-error.mjs +2 -0
- package/esm2022/error-handler/sc-error-handler.component.mjs +58 -0
- package/esm2022/feedback/feedback-form/sc-feedback-form.component.mjs +344 -0
- package/esm2022/feedback/gratitude/sc-gratitude.component.mjs +32 -0
- package/esm2022/feedback/index.mjs +4 -0
- package/esm2022/feedback/interfaces/index.mjs +2 -0
- package/esm2022/feedback/interfaces/sc-feedback-form-config.mjs +2 -0
- package/esm2022/files/directives/index.mjs +3 -0
- package/esm2022/files/directives/tree-top.directive.mjs +63 -0
- package/esm2022/files/directives/tree.directive.mjs +47 -0
- package/esm2022/files/file-tree-item/file-tree-item.component.mjs +18 -0
- package/esm2022/files/files-and-documents/files-and-documents.component.mjs +61 -0
- package/esm2022/files/files-and-documents.module.mjs +28 -0
- package/esm2022/files/index.mjs +6 -0
- package/esm2022/files/interfaces/tree-node.mjs +2 -0
- package/esm2022/files/services/index.mjs +3 -0
- package/esm2022/files/services/tree-icon.service.mjs +49 -0
- package/esm2022/files/services/tree-loader.service.mjs +62 -0
- package/esm2022/form-fields/addresses-selection-field/sc-addresses-selection-field.component.mjs +155 -0
- package/esm2022/form-fields/form-fields.module.mjs +66 -0
- package/esm2022/form-fields/index.mjs +4 -0
- package/esm2022/form-fields/suggestion-field/sc-suggestion-field.component.mjs +234 -0
- package/esm2022/icons/index.mjs +2 -0
- package/esm2022/icons/sc-client-ui-icons-name.mjs +99 -0
- package/esm2022/loader/index.mjs +2 -0
- package/esm2022/loader/sc-i-loader.mjs +2 -0
- package/esm2022/masks/index.mjs +8 -0
- package/esm2022/masks/sc-account-number-mask.mjs +7 -0
- package/esm2022/masks/sc-bic-mask.mjs +7 -0
- package/esm2022/masks/sc-correspondent-account-mask.mjs +7 -0
- package/esm2022/masks/sc-inn-mask.mjs +13 -0
- package/esm2022/masks/sc-kpp-mask.mjs +7 -0
- package/esm2022/masks/sc-okpo-mask.mjs +13 -0
- package/esm2022/masks/sc-phone-verification-code-mask.mjs +7 -0
- package/esm2022/methods/index.mjs +2 -0
- package/esm2022/methods/sc-get-current-route.mjs +14 -0
- package/esm2022/models/i-sc-image.mjs +2 -0
- package/esm2022/models/index.mjs +2 -0
- package/esm2022/news/index.mjs +4 -0
- package/esm2022/news/news-card/sc-news-card.component.mjs +34 -0
- package/esm2022/news/news-card-skeleton/sc-news-card-skeleton.component.mjs +31 -0
- package/esm2022/news/sc-news.module.mjs +25 -0
- package/esm2022/noindex-wrapper/directives/index.mjs +2 -0
- package/esm2022/noindex-wrapper/directives/sc-noindex.directive.mjs +58 -0
- package/esm2022/noindex-wrapper/index.mjs +3 -0
- package/esm2022/noindex-wrapper/sc-noindex-wrapper.component.mjs +18 -0
- package/esm2022/order/directives/index.mjs +3 -0
- package/esm2022/order/directives/sc-order-accessor.directive.mjs +28 -0
- package/esm2022/order/directives/sc-order-options.mjs +11 -0
- package/esm2022/order/draft/sc-draft.component.mjs +118 -0
- package/esm2022/order/index.mjs +14 -0
- package/esm2022/order/models/i-new-order-form.mjs +2 -0
- package/esm2022/order/models/sc-i-cart-items-by-direction.mjs +22 -0
- package/esm2022/order/order-direction-items/sc-order-direction-items.component.mjs +39 -0
- package/esm2022/order/order-form/sc-order-form.component.mjs +565 -0
- package/esm2022/order/order-form/sc-order-form.config.mjs +7 -0
- package/esm2022/order/order-item/sc-order-item.component.mjs +112 -0
- package/esm2022/order/order-items-list/sc-order-items-list.component.mjs +212 -0
- package/esm2022/order/order-items-list-by-directions/sc-order-items-list-by-directions.component.mjs +75 -0
- package/esm2022/order/order-items-list-by-stock/sc-order-items-list-by-stock.component.mjs +75 -0
- package/esm2022/order/sc-order.module.mjs +52 -0
- package/esm2022/order/sc-payment-status/sc-payment-status.component.mjs +35 -0
- package/esm2022/pages/frequently-asked-questions/sc-faq-query-params.mjs +5 -0
- package/esm2022/pages/frequently-asked-questions/sc-faq-question-anchor.mjs +23 -0
- package/esm2022/pages/frequently-asked-questions/sc-frequently-asked-questions.component.mjs +167 -0
- package/esm2022/pages/frequently-asked-questions/sc-get-faq-group-query-params.mjs +14 -0
- package/esm2022/pages/frequently-asked-questions/sc-page-size-options.mjs +8 -0
- package/esm2022/pages/frequently-asked-questions-group-selector/sc-frequently-asked-questions-group-selector.component.mjs +88 -0
- package/esm2022/pages/frequently-asked-questions-with-groups/sc-frequently-asked-questions-with-groups.component.mjs +123 -0
- package/esm2022/pages/index.mjs +11 -0
- package/esm2022/pages/news-list/sc-news-list.component.mjs +90 -0
- package/esm2022/pages/personal-data-processing-policy/sc-personal-data-processing-policy.component.mjs +46 -0
- package/esm2022/pages/privacy-policy/sc-privacy-policy.component.mjs +30 -0
- package/esm2022/pages/public-offer/sc-public-offer.component.mjs +50 -0
- package/esm2022/pagination/index.mjs +2 -0
- package/esm2022/pagination/sc-pagination-links/sc-pagination-links.component.mjs +99 -0
- package/esm2022/pipes/index.mjs +3 -0
- package/esm2022/pipes/sc-format-date.mjs +33 -0
- package/esm2022/pipes/sc-phone-format.mjs +44 -0
- package/esm2022/profile/index.mjs +3 -0
- package/esm2022/profile/sc-profile-accordions-content/sc-profile-accordions-content.component.mjs +174 -0
- package/esm2022/profile/sc-profile.module.mjs +73 -0
- package/esm2022/providers/cleanup-recaptcha-artifacts.mjs +30 -0
- package/esm2022/providers/date-value-transformer/index.mjs +4 -0
- package/esm2022/providers/date-value-transformer/sc-date-value-transformer-types.mjs +2 -0
- package/esm2022/providers/date-value-transformer/sc-date-value-transformer-with-end-time.mjs +26 -0
- package/esm2022/providers/date-value-transformer/sc-date-value-transformer-with-start-time.mjs +37 -0
- package/esm2022/providers/index.mjs +18 -0
- package/esm2022/providers/sc-allow-select-terminated.mjs +8 -0
- package/esm2022/providers/sc-banner-duration.mjs +8 -0
- package/esm2022/providers/sc-block-incomplete-address.mjs +8 -0
- package/esm2022/providers/sc-country-ids.mjs +8 -0
- package/esm2022/providers/sc-date-formatter.mjs +15 -0
- package/esm2022/providers/sc-date-value-transformer.mjs +12 -0
- package/esm2022/providers/sc-debounce-time-default.mjs +9 -0
- package/esm2022/providers/sc-dialog-service.providers.mjs +6 -0
- package/esm2022/providers/sc-help-notification-close.mjs +9 -0
- package/esm2022/providers/sc-help-notification-limit.mjs +8 -0
- package/esm2022/providers/sc-hidden-print-elements.token.mjs +10 -0
- package/esm2022/providers/sc-max-files-in-form-input.mjs +8 -0
- package/esm2022/providers/sc-notify-when-in-stock-required-fields.mjs +8 -0
- package/esm2022/providers/sc-page-size-options.mjs +8 -0
- package/esm2022/providers/sc-user-providers.mjs +38 -0
- package/esm2022/providers/sc-verification-code-timeout.mjs +8 -0
- package/esm2022/public-api.mjs +36 -0
- package/esm2022/qrcode/index.mjs +3 -0
- package/esm2022/qrcode/qrcode-dialog/sc-qrcode-dialog.component.mjs +58 -0
- package/esm2022/qrcode/sc-qrcode.module.mjs +25 -0
- package/esm2022/samples/index.mjs +5 -0
- package/esm2022/samples/interfaces/index.mjs +3 -0
- package/esm2022/samples/interfaces/sc-i-preview-sample.mjs +2 -0
- package/esm2022/samples/interfaces/sc-preview-mosquito-config.mjs +2 -0
- package/esm2022/samples/preview-sample/sc-preview-sample.component.mjs +42 -0
- package/esm2022/samples/sc-preview-samples-mosquito/sc-preview-samples-mosquito.component.mjs +63 -0
- package/esm2022/samples/sc-sample.module.mjs +66 -0
- package/esm2022/services/index.mjs +3 -0
- package/esm2022/services/print.service.mjs +49 -0
- package/esm2022/services/sc-help-notification.service.mjs +100 -0
- package/esm2022/share/index.mjs +6 -0
- package/esm2022/share/sc-share-dialog-data.mjs +2 -0
- package/esm2022/share/sc-share.service.mjs +40 -0
- package/esm2022/share/share-button/sc-share-button.component.mjs +99 -0
- package/esm2022/share/share-dialog/sc-share-dialog.component.mjs +139 -0
- package/esm2022/share/share-messengers-links/sc-share-messengers-links.component.mjs +84 -0
- package/esm2022/snabcentr-client-ui.mjs +5 -0
- package/esm2022/user/index.mjs +6 -0
- package/esm2022/user/reset-user-password/sc-reset-user-password.component.mjs +74 -0
- package/esm2022/user/sc-user.module.mjs +86 -0
- package/esm2022/user/update-user-info-dialog/sc-update-user-info-dialog.component.mjs +121 -0
- package/esm2022/user/user-managers/sc-user-managers.component.mjs +40 -0
- package/esm2022/user/user-phone-approve-dialog/sc-user-phone-approve-dialog.component.mjs +105 -0
- package/esm2022/validators/index.mjs +7 -0
- package/esm2022/validators/sc-at-least-one-required-validator.mjs +25 -0
- package/esm2022/validators/sc-bic-validator.mjs +10 -0
- package/esm2022/validators/sc-correspondent-account-validator.mjs +10 -0
- package/esm2022/validators/sc-password-confirm-matching-validator.mjs +17 -0
- package/esm2022/validators/sc-phone-validator.mjs +14 -0
- package/esm2022/validators/step-validator.mjs +18 -0
- package/esm2022/verification/index.mjs +3 -0
- package/esm2022/verification/sc-verification.module.mjs +86 -0
- package/esm2022/verification/verification-phone-check-form/sc-verification-phone-check-form.component.mjs +259 -0
- package/feedback/feedback-form/sc-feedback-form.component.d.ts +163 -0
- package/feedback/gratitude/sc-gratitude.component.d.ts +20 -0
- package/feedback/index.d.ts +3 -0
- package/feedback/interfaces/index.d.ts +1 -0
- package/feedback/interfaces/sc-feedback-form-config.d.ts +23 -0
- package/fesm2022/snabcentr-client-ui.mjs +5634 -4837
- package/fesm2022/snabcentr-client-ui.mjs.map +1 -1
- package/files/directives/index.d.ts +2 -0
- package/files/directives/tree-top.directive.d.ts +33 -0
- package/files/directives/tree.directive.d.ts +35 -0
- package/files/file-tree-item/file-tree-item.component.d.ts +9 -0
- package/files/files-and-documents/files-and-documents.component.d.ts +27 -0
- package/files/files-and-documents.module.d.ts +17 -0
- package/files/index.d.ts +5 -0
- package/files/interfaces/tree-node.d.ts +29 -0
- package/files/services/index.d.ts +2 -0
- package/files/services/tree-icon.service.d.ts +23 -0
- package/files/services/tree-loader.service.d.ts +43 -0
- package/form-fields/addresses-selection-field/sc-addresses-selection-field.component.d.ts +80 -0
- package/form-fields/form-fields.module.d.ts +18 -0
- package/form-fields/index.d.ts +3 -0
- package/form-fields/suggestion-field/sc-suggestion-field.component.d.ts +107 -0
- package/icons/index.d.ts +1 -0
- package/icons/sc-client-ui-icons-name.d.ts +4 -0
- package/icons/svg-pack/application.svg +1 -1
- package/icons/svg-pack/back.svg +1 -1
- package/icons/svg-pack/bag.svg +1 -1
- package/icons/svg-pack/banknote-arrow-in-top.svg +1 -1
- package/icons/svg-pack/catalog/aluminum-systems.svg +1 -1
- package/icons/svg-pack/catalog/arm-profile.svg +1 -1
- package/icons/svg-pack/catalog/batten.svg +1 -1
- package/icons/svg-pack/catalog/brusbox.svg +1 -1
- package/icons/svg-pack/catalog/canopy.svg +1 -1
- package/icons/svg-pack/catalog/configurator.svg +1 -1
- package/icons/svg-pack/catalog/covering-material.svg +1 -1
- package/icons/svg-pack/catalog/door-accessories.svg +1 -1
- package/icons/svg-pack/catalog/drainage-system.svg +1 -1
- package/icons/svg-pack/catalog/fastener.svg +1 -1
- package/icons/svg-pack/catalog/finishing-materials.svg +1 -1
- package/icons/svg-pack/catalog/fixing-impost.svg +1 -1
- package/icons/svg-pack/catalog/flask.svg +1 -1
- package/icons/svg-pack/catalog/foam-balloon.svg +1 -1
- package/icons/svg-pack/catalog/foam.svg +1 -1
- package/icons/svg-pack/catalog/glue.svg +1 -1
- package/icons/svg-pack/catalog/handle.svg +1 -1
- package/icons/svg-pack/catalog/instrument.svg +1 -1
- package/icons/svg-pack/catalog/kve-profile.svg +1 -1
- package/icons/svg-pack/catalog/lubricants.svg +1 -1
- package/icons/svg-pack/catalog/mosquito-net.svg +1 -1
- package/icons/svg-pack/catalog/mounting-accessories.svg +1 -1
- package/icons/svg-pack/catalog/net-order.svg +1 -1
- package/icons/svg-pack/catalog/panel-1.svg +1 -1
- package/icons/svg-pack/catalog/panel.svg +1 -1
- package/icons/svg-pack/catalog/polyethylene-film.svg +1 -1
- package/icons/svg-pack/catalog/profile-plastic.svg +1 -1
- package/icons/svg-pack/catalog/promo-materials.svg +1 -1
- package/icons/svg-pack/catalog/psul.svg +1 -1
- package/icons/svg-pack/catalog/rehau-profile.svg +1 -1
- package/icons/svg-pack/catalog/sandwich-plastic.svg +1 -1
- package/icons/svg-pack/catalog/sealer.svg +1 -1
- package/icons/svg-pack/catalog/siding-2.svg +1 -1
- package/icons/svg-pack/catalog/siding.svg +1 -1
- package/icons/svg-pack/catalog/start-finish-profile.svg +1 -1
- package/icons/svg-pack/catalog/steam-waterproofing.svg +1 -1
- package/icons/svg-pack/catalog/stiz.svg +1 -1
- package/icons/svg-pack/catalog/thermometer.svg +1 -1
- package/icons/svg-pack/catalog/windowsill.svg +1 -1
- package/icons/svg-pack/chart-column-plus.svg +1 -1
- package/icons/svg-pack/circle-arrow-in-right.svg +1 -1
- package/icons/svg-pack/contacts.svg +1 -1
- package/icons/svg-pack/deadline.svg +1 -1
- package/icons/svg-pack/file-p.svg +1 -1
- package/icons/svg-pack/file-search.svg +1 -1
- package/icons/svg-pack/file-w.svg +1 -1
- package/icons/svg-pack/file-x.svg +1 -1
- package/icons/svg-pack/grid-height-arrow.svg +1 -1
- package/icons/svg-pack/grid-width-arrow.svg +1 -1
- package/icons/svg-pack/layout-list-tree.svg +1 -1
- package/icons/svg-pack/list.svg +1 -1
- package/icons/svg-pack/puzzle.svg +1 -1
- package/icons/svg-pack/reclamation.svg +1 -1
- package/icons/svg-pack/retail-store.svg +1 -1
- package/icons/svg-pack/send.svg +1 -1
- package/index.d.ts +5 -0
- package/loader/index.d.ts +1 -0
- package/loader/sc-i-loader.d.ts +9 -0
- package/masks/index.d.ts +7 -0
- package/masks/sc-account-number-mask.d.ts +5 -0
- package/masks/sc-bic-mask.d.ts +5 -0
- package/masks/sc-correspondent-account-mask.d.ts +5 -0
- package/masks/sc-inn-mask.d.ts +9 -0
- package/masks/sc-kpp-mask.d.ts +5 -0
- package/masks/sc-okpo-mask.d.ts +9 -0
- package/masks/sc-phone-verification-code-mask.d.ts +5 -0
- package/methods/index.d.ts +1 -0
- package/methods/sc-get-current-route.d.ts +8 -0
- package/models/i-sc-image.d.ts +17 -0
- package/models/index.d.ts +1 -0
- package/news/index.d.ts +3 -0
- package/news/news-card/sc-news-card.component.d.ts +22 -0
- package/news/news-card-skeleton/sc-news-card-skeleton.component.d.ts +16 -0
- package/news/sc-news.module.d.ts +15 -0
- package/noindex-wrapper/directives/index.d.ts +1 -0
- package/noindex-wrapper/directives/sc-noindex.directive.d.ts +29 -0
- package/noindex-wrapper/index.d.ts +2 -0
- package/noindex-wrapper/sc-noindex-wrapper.component.d.ts +9 -0
- package/order/directives/index.d.ts +2 -0
- package/order/directives/sc-order-accessor.directive.d.ts +13 -0
- package/order/directives/sc-order-options.d.ts +14 -0
- package/order/draft/sc-draft.component.d.ts +63 -0
- package/order/index.d.ts +13 -0
- package/order/models/i-new-order-form.d.ts +39 -0
- package/order/models/sc-i-cart-items-by-direction.d.ts +25 -0
- package/order/order-direction-items/sc-order-direction-items.component.d.ts +29 -0
- package/order/order-form/sc-order-form.component.d.ts +283 -0
- package/order/order-form/sc-order-form.config.d.ts +20 -0
- package/order/order-item/sc-order-item.component.d.ts +43 -0
- package/order/order-items-list/sc-order-items-list.component.d.ts +113 -0
- package/order/order-items-list-by-directions/sc-order-items-list-by-directions.component.d.ts +58 -0
- package/order/order-items-list-by-stock/sc-order-items-list-by-stock.component.d.ts +55 -0
- package/order/sc-order.module.d.ts +18 -0
- package/order/sc-payment-status/sc-payment-status.component.d.ts +25 -0
- package/package.json +37 -35
- package/pages/frequently-asked-questions/sc-faq-query-params.d.ts +4 -0
- package/pages/frequently-asked-questions/sc-faq-question-anchor.d.ts +16 -0
- package/pages/frequently-asked-questions/sc-frequently-asked-questions.component.d.ts +84 -0
- package/pages/frequently-asked-questions/sc-get-faq-group-query-params.d.ts +10 -0
- package/pages/frequently-asked-questions/sc-page-size-options.d.ts +5 -0
- package/pages/frequently-asked-questions-group-selector/sc-frequently-asked-questions-group-selector.component.d.ts +47 -0
- package/pages/frequently-asked-questions-with-groups/sc-frequently-asked-questions-with-groups.component.d.ts +89 -0
- package/pages/index.d.ts +10 -0
- package/pages/news-list/sc-news-list.component.d.ts +57 -0
- package/pages/personal-data-processing-policy/sc-personal-data-processing-policy.component.d.ts +17 -0
- package/pages/privacy-policy/sc-privacy-policy.component.d.ts +17 -0
- package/pages/public-offer/sc-public-offer.component.d.ts +22 -0
- package/pagination/index.d.ts +1 -0
- package/pagination/sc-pagination-links/sc-pagination-links.component.d.ts +60 -0
- package/pipes/index.d.ts +2 -0
- package/pipes/sc-format-date.d.ts +20 -0
- package/pipes/sc-phone-format.d.ts +21 -0
- package/profile/index.d.ts +2 -0
- package/profile/sc-profile-accordions-content/sc-profile-accordions-content.component.d.ts +126 -0
- package/profile/sc-profile.module.d.ts +23 -0
- package/providers/cleanup-recaptcha-artifacts.d.ts +7 -0
- package/providers/date-value-transformer/index.d.ts +3 -0
- package/providers/date-value-transformer/sc-date-value-transformer-types.d.ts +9 -0
- package/providers/date-value-transformer/sc-date-value-transformer-with-end-time.d.ts +16 -0
- package/providers/date-value-transformer/sc-date-value-transformer-with-start-time.d.ts +22 -0
- package/providers/index.d.ts +17 -0
- package/providers/sc-allow-select-terminated.d.ts +5 -0
- package/providers/sc-banner-duration.d.ts +5 -0
- package/providers/sc-block-incomplete-address.d.ts +5 -0
- package/providers/sc-country-ids.d.ts +5 -0
- package/providers/sc-date-formatter.d.ts +6 -0
- package/providers/sc-date-value-transformer.d.ts +5 -0
- package/providers/sc-debounce-time-default.d.ts +5 -0
- package/providers/sc-dialog-service.providers.d.ts +45 -0
- package/providers/sc-help-notification-close.d.ts +6 -0
- package/providers/sc-help-notification-limit.d.ts +5 -0
- package/providers/sc-hidden-print-elements.token.d.ts +6 -0
- package/providers/sc-max-files-in-form-input.d.ts +5 -0
- package/providers/sc-notify-when-in-stock-required-fields.d.ts +5 -0
- package/providers/sc-page-size-options.d.ts +5 -0
- package/providers/sc-user-providers.d.ts +21 -0
- package/providers/sc-verification-code-timeout.d.ts +5 -0
- package/public-api.d.ts +35 -0
- package/qrcode/index.d.ts +2 -0
- package/qrcode/qrcode-dialog/sc-qrcode-dialog.component.d.ts +37 -0
- package/qrcode/sc-qrcode.module.d.ts +14 -0
- package/release_notes.tmp +2 -16
- package/samples/index.d.ts +4 -0
- package/samples/interfaces/index.d.ts +2 -0
- package/samples/interfaces/sc-i-preview-sample.d.ts +56 -0
- package/samples/interfaces/sc-preview-mosquito-config.d.ts +62 -0
- package/samples/preview-sample/sc-preview-sample.component.d.ts +30 -0
- package/samples/sc-preview-samples-mosquito/sc-preview-samples-mosquito.component.d.ts +50 -0
- package/samples/sc-sample.module.d.ts +19 -0
- package/services/index.d.ts +2 -0
- package/services/print.service.d.ts +31 -0
- package/services/sc-help-notification.service.d.ts +70 -0
- package/share/index.d.ts +5 -0
- package/share/sc-share-dialog-data.d.ts +13 -0
- package/share/sc-share.service.d.ts +19 -0
- package/share/share-button/sc-share-button.component.d.ts +78 -0
- package/share/share-dialog/sc-share-dialog.component.d.ts +87 -0
- package/share/share-messengers-links/sc-share-messengers-links.component.d.ts +49 -0
- package/styles/taiga/variables.less +17 -35
- package/styles/tailwind/tailwind.scss +14 -56
- package/user/index.d.ts +5 -0
- package/user/reset-user-password/sc-reset-user-password.component.d.ts +46 -0
- package/user/sc-user.module.d.ts +24 -0
- package/user/update-user-info-dialog/sc-update-user-info-dialog.component.d.ts +63 -0
- package/user/user-managers/sc-user-managers.component.d.ts +23 -0
- package/user/user-phone-approve-dialog/sc-user-phone-approve-dialog.component.d.ts +53 -0
- package/validators/index.d.ts +6 -0
- package/validators/sc-at-least-one-required-validator.d.ts +10 -0
- package/validators/sc-bic-validator.d.ts +8 -0
- package/validators/sc-correspondent-account-validator.d.ts +8 -0
- package/validators/sc-password-confirm-matching-validator.d.ts +8 -0
- package/validators/sc-phone-validator.d.ts +5 -0
- package/validators/step-validator.d.ts +7 -0
- package/verification/index.d.ts +2 -0
- package/verification/sc-verification.module.d.ts +21 -0
- package/verification/verification-phone-check-form/sc-verification-phone-check-form.component.d.ts +145 -0
- package/types/snabcentr-client-ui.d.ts +0 -6787
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, inject, input, model } from '@angular/core';
|
|
2
|
+
import { TUI_IS_MOBILE } from '@taiga-ui/cdk';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@taiga-ui/cdk/directives/item";
|
|
6
|
+
import * as i3 from "@taiga-ui/kit";
|
|
7
|
+
import * as i4 from "@taiga-ui/cdk";
|
|
8
|
+
import * as i5 from "@taiga-ui/core";
|
|
9
|
+
/**
|
|
10
|
+
* Компонент представления образцов товара.
|
|
11
|
+
*/
|
|
12
|
+
export class ScPreviewSampleComponent {
|
|
13
|
+
constructor() {
|
|
14
|
+
/**
|
|
15
|
+
* Индекс элемента в галерее.
|
|
16
|
+
*/
|
|
17
|
+
this.index = model(0);
|
|
18
|
+
/**
|
|
19
|
+
* Длительность переключения карусели.
|
|
20
|
+
*/
|
|
21
|
+
this.duration = input(5000);
|
|
22
|
+
/**
|
|
23
|
+
* Объект данных товара.
|
|
24
|
+
*/
|
|
25
|
+
this.sample = input.required();
|
|
26
|
+
/**
|
|
27
|
+
* Признак, что необходимо отображать переключатели на карусели.
|
|
28
|
+
*/
|
|
29
|
+
this.isShowCarouselSwitches = input(!inject(TUI_IS_MOBILE));
|
|
30
|
+
/**
|
|
31
|
+
* Признак, что при горизонтальном отображении компонент должен быть развёрнут.
|
|
32
|
+
*/
|
|
33
|
+
this.isReverse = input(false);
|
|
34
|
+
}
|
|
35
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPreviewSampleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
36
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: ScPreviewSampleComponent, selector: "sc-preview-sample", inputs: { index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: false, transformFunction: null }, duration: { classPropertyName: "duration", publicName: "duration", isSignal: true, isRequired: false, transformFunction: null }, sample: { classPropertyName: "sample", publicName: "sample", isSignal: true, isRequired: true, transformFunction: null }, isShowCarouselSwitches: { classPropertyName: "isShowCarouselSwitches", publicName: "isShowCarouselSwitches", isSignal: true, isRequired: false, transformFunction: null }, isReverse: { classPropertyName: "isReverse", publicName: "isReverse", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { index: "indexChange" }, host: { attributes: { "ngSkipHydration": "true" } }, ngImport: i0, template: "<div\n *ngIf=\"sample() as sample\"\n class=\"mb-4 flex flex-col-reverse gap-4 md:mb-0 md:flex-row md:gap-8\"\n [class.md:!flex-row-reverse]=\"isReverse()\"\n>\n @let isShownSwitches = sample.items && sample.items.length > 1;\n\n <div class=\"flex max-w-96 flex-1 flex-col justify-center self-center md:max-w-none md:gap-4\">\n <div class=\"flex w-full flex-col gap-3 md:gap-4 md:px-8\">\n <div class=\"text-body-l-bold\">{{ sample.title }}</div>\n <div\n *ngIf=\"isShownSwitches\"\n class=\"flex gap-4\"\n >\n <tui-avatar\n [round]=\"false\"\n *ngFor=\"let item of sample.items; let itemIndex = index\"\n (tuiHoveredChange)=\"index.set(itemIndex)\"\n [class.active]=\"index() === itemIndex\"\n >\n <picture>\n <source\n type=\"image/webp\"\n [srcset]=\"item.buttonImageUrl.webp\"\n />\n <img\n [src]=\"item.buttonImageUrl.defaultFormat\"\n [alt]=\"item.buttonImageUrl.alt ?? '\u041A\u043D\u043E\u043F\u043A\u0430 \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0430\u0442\u0435\u043B\u044F \u0446\u0432\u0435\u0442\u0430 ' + item.color\"\n />\n </picture>\n </tui-avatar>\n </div>\n <div\n *ngIf=\"sample.items as items\"\n class=\"text-body-m-bold\"\n >\n {{ items[index()].color }}\n </div>\n <div>{{ sample.description }}</div>\n <img\n *ngIf=\"sample.descriptionImageUrl\"\n [src]=\"sample.descriptionImageUrl\"\n alt=\"{{ sample.title }}\"\n class=\"w-fit\"\n />\n <div\n *ngIf=\"sample.items && sample.items[index()].actions?.length\"\n class=\"flex flex-wrap gap-3 md:gap-4\"\n >\n <a\n *ngFor=\"let action of sample.items[index()].actions\"\n tuiButton\n [attr.href]=\"action.href\"\n (click)=\"action.handler ? $event.preventDefault() : {}; action.handler?.()\"\n [iconStart]=\"action.icon\"\n appearance=\"secondary\"\n >\n {{ action.label }}\n </a>\n </div>\n </div>\n </div>\n\n <div class=\"relative h-[19em] flex-1 overflow-hidden rounded-xl shadow-tui-shadow md:h-96 lg:h-[28rem]\">\n <button\n *ngIf=\"isShownSwitches && isShowCarouselSwitches()\"\n tuiIconButton\n (click)=\"carousel.prev()\"\n iconStart=\"@tui.chevron-left\"\n appearance=\"icon\"\n class=\"!absolute left-0 top-1/2 z-10 ml-2 -translate-y-1/2\"\n ></button>\n\n <tui-carousel\n #carousel\n [(index)]=\"index\"\n [duration]=\"duration()\"\n class=\"h-[19em] w-full md:h-96 lg:h-[28rem]\"\n >\n <ng-container *ngFor=\"let item of sample.items; let itemIndex = index\">\n <picture *tuiItem>\n <source\n type=\"image/webp\"\n [srcset]=\"item.carouselItemImage.webp\"\n />\n <img\n [src]=\"item.carouselItemImage.defaultFormat\"\n [alt]=\"item.carouselItemImage.alt ?? sample.title + ' \u0432 \u0446\u0432\u0435\u0442\u0435 ' + item.color + itemIndex\"\n class=\"h-[19em] w-full object-cover object-right md:h-96 lg:h-[28rem]\"\n />\n </picture>\n </ng-container>\n </tui-carousel>\n <button\n *ngIf=\"isShownSwitches && isShowCarouselSwitches()\"\n tuiIconButton\n (click)=\"carousel.next()\"\n iconStart=\"@tui.chevron-right\"\n appearance=\"icon\"\n class=\"!absolute right-0 top-1/2 z-10 mr-2 -translate-y-1/2\"\n ></button>\n </div>\n</div>\n", styles: [":host{--tui-carousel-padding: 0}tui-avatar.active{--tw-ring-color: var(--tui-background-accent-1);--tw-ring-offset-width: 2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 rgba(0, 0, 0, 0))}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.TuiItem, selector: "[tuiItem]" }, { kind: "component", type: i3.TuiCarouselComponent, selector: "tui-carousel", inputs: ["draggable", "itemsCount", "index"], outputs: ["indexChange", "shift"] }, { kind: "component", type: i3.TuiAvatar, selector: "tui-avatar,button[tuiAvatar],a[tuiAvatar]", inputs: ["size", "round", "src"] }, { kind: "directive", type: i4.TuiHovered, selector: "[tuiHoveredChange]", outputs: ["tuiHoveredChange"] }, { kind: "directive", type: i5.TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
37
|
+
}
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPreviewSampleComponent, decorators: [{
|
|
39
|
+
type: Component,
|
|
40
|
+
args: [{ selector: 'sc-preview-sample', host: { ngSkipHydration: 'true' }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"sample() as sample\"\n class=\"mb-4 flex flex-col-reverse gap-4 md:mb-0 md:flex-row md:gap-8\"\n [class.md:!flex-row-reverse]=\"isReverse()\"\n>\n @let isShownSwitches = sample.items && sample.items.length > 1;\n\n <div class=\"flex max-w-96 flex-1 flex-col justify-center self-center md:max-w-none md:gap-4\">\n <div class=\"flex w-full flex-col gap-3 md:gap-4 md:px-8\">\n <div class=\"text-body-l-bold\">{{ sample.title }}</div>\n <div\n *ngIf=\"isShownSwitches\"\n class=\"flex gap-4\"\n >\n <tui-avatar\n [round]=\"false\"\n *ngFor=\"let item of sample.items; let itemIndex = index\"\n (tuiHoveredChange)=\"index.set(itemIndex)\"\n [class.active]=\"index() === itemIndex\"\n >\n <picture>\n <source\n type=\"image/webp\"\n [srcset]=\"item.buttonImageUrl.webp\"\n />\n <img\n [src]=\"item.buttonImageUrl.defaultFormat\"\n [alt]=\"item.buttonImageUrl.alt ?? '\u041A\u043D\u043E\u043F\u043A\u0430 \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0430\u0442\u0435\u043B\u044F \u0446\u0432\u0435\u0442\u0430 ' + item.color\"\n />\n </picture>\n </tui-avatar>\n </div>\n <div\n *ngIf=\"sample.items as items\"\n class=\"text-body-m-bold\"\n >\n {{ items[index()].color }}\n </div>\n <div>{{ sample.description }}</div>\n <img\n *ngIf=\"sample.descriptionImageUrl\"\n [src]=\"sample.descriptionImageUrl\"\n alt=\"{{ sample.title }}\"\n class=\"w-fit\"\n />\n <div\n *ngIf=\"sample.items && sample.items[index()].actions?.length\"\n class=\"flex flex-wrap gap-3 md:gap-4\"\n >\n <a\n *ngFor=\"let action of sample.items[index()].actions\"\n tuiButton\n [attr.href]=\"action.href\"\n (click)=\"action.handler ? $event.preventDefault() : {}; action.handler?.()\"\n [iconStart]=\"action.icon\"\n appearance=\"secondary\"\n >\n {{ action.label }}\n </a>\n </div>\n </div>\n </div>\n\n <div class=\"relative h-[19em] flex-1 overflow-hidden rounded-xl shadow-tui-shadow md:h-96 lg:h-[28rem]\">\n <button\n *ngIf=\"isShownSwitches && isShowCarouselSwitches()\"\n tuiIconButton\n (click)=\"carousel.prev()\"\n iconStart=\"@tui.chevron-left\"\n appearance=\"icon\"\n class=\"!absolute left-0 top-1/2 z-10 ml-2 -translate-y-1/2\"\n ></button>\n\n <tui-carousel\n #carousel\n [(index)]=\"index\"\n [duration]=\"duration()\"\n class=\"h-[19em] w-full md:h-96 lg:h-[28rem]\"\n >\n <ng-container *ngFor=\"let item of sample.items; let itemIndex = index\">\n <picture *tuiItem>\n <source\n type=\"image/webp\"\n [srcset]=\"item.carouselItemImage.webp\"\n />\n <img\n [src]=\"item.carouselItemImage.defaultFormat\"\n [alt]=\"item.carouselItemImage.alt ?? sample.title + ' \u0432 \u0446\u0432\u0435\u0442\u0435 ' + item.color + itemIndex\"\n class=\"h-[19em] w-full object-cover object-right md:h-96 lg:h-[28rem]\"\n />\n </picture>\n </ng-container>\n </tui-carousel>\n <button\n *ngIf=\"isShownSwitches && isShowCarouselSwitches()\"\n tuiIconButton\n (click)=\"carousel.next()\"\n iconStart=\"@tui.chevron-right\"\n appearance=\"icon\"\n class=\"!absolute right-0 top-1/2 z-10 mr-2 -translate-y-1/2\"\n ></button>\n </div>\n</div>\n", styles: [":host{--tui-carousel-padding: 0}tui-avatar.active{--tw-ring-color: var(--tui-background-accent-1);--tw-ring-offset-width: 2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 rgba(0, 0, 0, 0))}\n"] }]
|
|
41
|
+
}] });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtcHJldmlldy1zYW1wbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL3NhbXBsZXMvcHJldmlldy1zYW1wbGUvc2MtcHJldmlldy1zYW1wbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL3NhbXBsZXMvcHJldmlldy1zYW1wbGUvc2MtcHJldmlldy1zYW1wbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFlLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBSTlDOztHQUVHO0FBUUgsTUFBTSxPQUFPLHdCQUF3QjtJQVByQztRQVFJOztXQUVHO1FBQ2EsVUFBSyxHQUF3QixLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFFOUQ7O1dBRUc7UUFDSSxhQUFRLEdBQXdCLEtBQUssQ0FBUyxJQUFJLENBQUMsQ0FBQztRQUUzRDs7V0FFRztRQUNJLFdBQU0sR0FBa0MsS0FBSyxDQUFDLFFBQVEsRUFBb0IsQ0FBQztRQUVsRjs7V0FFRztRQUNJLDJCQUFzQixHQUF5QixLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUVwRjs7V0FFRztRQUNJLGNBQVMsR0FBeUIsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQ3pEOytHQXpCWSx3QkFBd0I7bUdBQXhCLHdCQUF3QiwrekJDZnJDLCt4SUF1R0E7OzRGRHhGYSx3QkFBd0I7a0JBUHBDLFNBQVM7K0JBQ0ksbUJBQW1CLFFBR3ZCLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxtQkFDaEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgaW5wdXQsIElucHV0U2lnbmFsLCBtb2RlbCwgTW9kZWxTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRVSV9JU19NT0JJTEUgfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuaW1wb3J0IHsgU2NJUHJldmlld1NhbXBsZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvc2MtaS1wcmV2aWV3LXNhbXBsZSc7XG5cbi8qKlxuICog0JrQvtC80L/QvtC90LXQvdGCINC/0YDQtdC00YHRgtCw0LLQu9C10L3QuNGPINC+0LHRgNCw0LfRhtC+0LIg0YLQvtCy0LDRgNCwLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjLXByZXZpZXctc2FtcGxlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2MtcHJldmlldy1zYW1wbGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NjLXByZXZpZXctc2FtcGxlLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgaG9zdDogeyBuZ1NraXBIeWRyYXRpb246ICd0cnVlJyB9LFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTY1ByZXZpZXdTYW1wbGVDb21wb25lbnQge1xuICAgIC8qKlxuICAgICAqINCY0L3QtNC10LrRgSDRjdC70LXQvNC10L3RgtCwINCyINCz0LDQu9C10YDQtdC1LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBpbmRleDogTW9kZWxTaWduYWw8bnVtYmVyPiA9IG1vZGVsPG51bWJlcj4oMCk7XG5cbiAgICAvKipcbiAgICAgKiDQlNC70LjRgtC10LvRjNC90L7RgdGC0Ywg0L/QtdGA0LXQutC70Y7Rh9C10L3QuNGPINC60LDRgNGD0YHQtdC70LguXG4gICAgICovXG4gICAgcHVibGljIGR1cmF0aW9uOiBJbnB1dFNpZ25hbDxudW1iZXI+ID0gaW5wdXQ8bnVtYmVyPig1MDAwKTtcblxuICAgIC8qKlxuICAgICAqINCe0LHRitC10LrRgiDQtNCw0L3QvdGL0YUg0YLQvtCy0LDRgNCwLlxuICAgICAqL1xuICAgIHB1YmxpYyBzYW1wbGU6IElucHV0U2lnbmFsPFNjSVByZXZpZXdTYW1wbGU+ID0gaW5wdXQucmVxdWlyZWQ8U2NJUHJldmlld1NhbXBsZT4oKTtcblxuICAgIC8qKlxuICAgICAqINCf0YDQuNC30L3QsNC6LCDRh9GC0L4g0L3QtdC+0LHRhdC+0LTQuNC80L4g0L7RgtC+0LHRgNCw0LbQsNGC0Ywg0L/QtdGA0LXQutC70Y7Rh9Cw0YLQtdC70Lgg0L3QsCDQutCw0YDRg9GB0LXQu9C4LlxuICAgICAqL1xuICAgIHB1YmxpYyBpc1Nob3dDYXJvdXNlbFN3aXRjaGVzOiBJbnB1dFNpZ25hbDxib29sZWFuPiA9IGlucHV0KCFpbmplY3QoVFVJX0lTX01PQklMRSkpO1xuXG4gICAgLyoqXG4gICAgICog0J/RgNC40LfQvdCw0LosINGH0YLQviDQv9GA0Lgg0LPQvtGA0LjQt9C+0L3RgtCw0LvRjNC90L7QvCDQvtGC0L7QsdGA0LDQttC10L3QuNC4INC60L7QvNC/0L7QvdC10L3RgiDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0YDQsNC30LLRkdGA0L3Rg9GCLlxuICAgICAqL1xuICAgIHB1YmxpYyBpc1JldmVyc2U6IElucHV0U2lnbmFsPGJvb2xlYW4+ID0gaW5wdXQoZmFsc2UpO1xufVxuIiwiPGRpdlxuICAgICpuZ0lmPVwic2FtcGxlKCkgYXMgc2FtcGxlXCJcbiAgICBjbGFzcz1cIm1iLTQgZmxleCBmbGV4LWNvbC1yZXZlcnNlIGdhcC00IG1kOm1iLTAgbWQ6ZmxleC1yb3cgbWQ6Z2FwLThcIlxuICAgIFtjbGFzcy5tZDohZmxleC1yb3ctcmV2ZXJzZV09XCJpc1JldmVyc2UoKVwiXG4+XG4gICAgQGxldCBpc1Nob3duU3dpdGNoZXMgPSBzYW1wbGUuaXRlbXMgJiYgc2FtcGxlLml0ZW1zLmxlbmd0aCA+IDE7XG5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBtYXgtdy05NiBmbGV4LTEgZmxleC1jb2wganVzdGlmeS1jZW50ZXIgc2VsZi1jZW50ZXIgbWQ6bWF4LXctbm9uZSBtZDpnYXAtNFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCB3LWZ1bGwgZmxleC1jb2wgZ2FwLTMgbWQ6Z2FwLTQgbWQ6cHgtOFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtYm9keS1sLWJvbGRcIj57eyBzYW1wbGUudGl0bGUgfX08L2Rpdj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdJZj1cImlzU2hvd25Td2l0Y2hlc1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGdhcC00XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHVpLWF2YXRhclxuICAgICAgICAgICAgICAgICAgICBbcm91bmRdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBzYW1wbGUuaXRlbXM7IGxldCBpdGVtSW5kZXggPSBpbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICh0dWlIb3ZlcmVkQ2hhbmdlKT1cImluZGV4LnNldChpdGVtSW5kZXgpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpbmRleCgpID09PSBpdGVtSW5kZXhcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHBpY3R1cmU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImltYWdlL3dlYnBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNzZXRdPVwiaXRlbS5idXR0b25JbWFnZVVybC53ZWJwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJpdGVtLmJ1dHRvbkltYWdlVXJsLmRlZmF1bHRGb3JtYXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwiaXRlbS5idXR0b25JbWFnZVVybC5hbHQgPz8gJ9Ca0L3QvtC/0LrQsCDQv9C10YDQtdC60LvRjtGH0LDRgtC10LvRjyDRhtCy0LXRgtCwICcgKyBpdGVtLmNvbG9yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvcGljdHVyZT5cbiAgICAgICAgICAgICAgICA8L3R1aS1hdmF0YXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdJZj1cInNhbXBsZS5pdGVtcyBhcyBpdGVtc1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LWJvZHktbS1ib2xkXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBpdGVtc1tpbmRleCgpXS5jb2xvciB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2Pnt7IHNhbXBsZS5kZXNjcmlwdGlvbiB9fTwvZGl2PlxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICpuZ0lmPVwic2FtcGxlLmRlc2NyaXB0aW9uSW1hZ2VVcmxcIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwic2FtcGxlLmRlc2NyaXB0aW9uSW1hZ2VVcmxcIlxuICAgICAgICAgICAgICAgIGFsdD1cInt7IHNhbXBsZS50aXRsZSB9fVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ3LWZpdFwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICpuZ0lmPVwic2FtcGxlLml0ZW1zICYmIHNhbXBsZS5pdGVtc1tpbmRleCgpXS5hY3Rpb25zPy5sZW5ndGhcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgZ2FwLTMgbWQ6Z2FwLTRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhY3Rpb24gb2Ygc2FtcGxlLml0ZW1zW2luZGV4KCldLmFjdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgICB0dWlCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuaHJlZl09XCJhY3Rpb24uaHJlZlwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb24uaGFuZGxlciA/ICRldmVudC5wcmV2ZW50RGVmYXVsdCgpIDoge307IGFjdGlvbi5oYW5kbGVyPy4oKVwiXG4gICAgICAgICAgICAgICAgICAgIFtpY29uU3RhcnRdPVwiYWN0aW9uLmljb25cIlxuICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHt7IGFjdGlvbi5sYWJlbCB9fVxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSBoLVsxOWVtXSBmbGV4LTEgb3ZlcmZsb3ctaGlkZGVuIHJvdW5kZWQteGwgc2hhZG93LXR1aS1zaGFkb3cgbWQ6aC05NiBsZzpoLVsyOHJlbV1cIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCJpc1Nob3duU3dpdGNoZXMgJiYgaXNTaG93Q2Fyb3VzZWxTd2l0Y2hlcygpXCJcbiAgICAgICAgICAgIHR1aUljb25CdXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJjYXJvdXNlbC5wcmV2KClcIlxuICAgICAgICAgICAgaWNvblN0YXJ0PVwiQHR1aS5jaGV2cm9uLWxlZnRcIlxuICAgICAgICAgICAgYXBwZWFyYW5jZT1cImljb25cIlxuICAgICAgICAgICAgY2xhc3M9XCIhYWJzb2x1dGUgbGVmdC0wIHRvcC0xLzIgei0xMCBtbC0yIC10cmFuc2xhdGUteS0xLzJcIlxuICAgICAgICA+PC9idXR0b24+XG5cbiAgICAgICAgPHR1aS1jYXJvdXNlbFxuICAgICAgICAgICAgI2Nhcm91c2VsXG4gICAgICAgICAgICBbKGluZGV4KV09XCJpbmRleFwiXG4gICAgICAgICAgICBbZHVyYXRpb25dPVwiZHVyYXRpb24oKVwiXG4gICAgICAgICAgICBjbGFzcz1cImgtWzE5ZW1dIHctZnVsbCBtZDpoLTk2IGxnOmgtWzI4cmVtXVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygc2FtcGxlLml0ZW1zOyBsZXQgaXRlbUluZGV4ID0gaW5kZXhcIj5cbiAgICAgICAgICAgICAgICA8cGljdHVyZSAqdHVpSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgPHNvdXJjZVxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImltYWdlL3dlYnBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3NyY3NldF09XCJpdGVtLmNhcm91c2VsSXRlbUltYWdlLndlYnBcIlxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cIml0ZW0uY2Fyb3VzZWxJdGVtSW1hZ2UuZGVmYXVsdEZvcm1hdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cIml0ZW0uY2Fyb3VzZWxJdGVtSW1hZ2UuYWx0ID8/IHNhbXBsZS50aXRsZSArICcg0LIg0YbQstC10YLQtSAnICsgaXRlbS5jb2xvciArIGl0ZW1JbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImgtWzE5ZW1dIHctZnVsbCBvYmplY3QtY292ZXIgb2JqZWN0LXJpZ2h0IG1kOmgtOTYgbGc6aC1bMjhyZW1dXCJcbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L3BpY3R1cmU+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC90dWktY2Fyb3VzZWw+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICpuZ0lmPVwiaXNTaG93blN3aXRjaGVzICYmIGlzU2hvd0Nhcm91c2VsU3dpdGNoZXMoKVwiXG4gICAgICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgICAgICAoY2xpY2spPVwiY2Fyb3VzZWwubmV4dCgpXCJcbiAgICAgICAgICAgIGljb25TdGFydD1cIkB0dWkuY2hldnJvbi1yaWdodFwiXG4gICAgICAgICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgICAgICBjbGFzcz1cIiFhYnNvbHV0ZSByaWdodC0wIHRvcC0xLzIgei0xMCBtci0yIC10cmFuc2xhdGUteS0xLzJcIlxuICAgICAgICA+PC9idXR0b24+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { NgFor } from '@angular/common';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, computed, inject, input, output, signal } from '@angular/core';
|
|
3
|
+
import { TUI_IS_MOBILE, TuiHovered } from '@taiga-ui/cdk';
|
|
4
|
+
import { TuiAppearance, TuiButton, TuiIcon, TuiSurface } from '@taiga-ui/core';
|
|
5
|
+
import { TuiBadge, TuiCarousel, TuiChip } from '@taiga-ui/kit';
|
|
6
|
+
import { TuiCardLarge, TuiHeader } from '@taiga-ui/layout';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@taiga-ui/cdk/directives/item";
|
|
9
|
+
import * as i2 from "@taiga-ui/kit";
|
|
10
|
+
/**
|
|
11
|
+
* Компонент представления москитной сетки.
|
|
12
|
+
*/
|
|
13
|
+
export class ScPreviewSamplesMosquitoComponent {
|
|
14
|
+
constructor() {
|
|
15
|
+
/**
|
|
16
|
+
* Выбранный индекс цвета профиля.
|
|
17
|
+
*/
|
|
18
|
+
this.colorIndex = signal(0);
|
|
19
|
+
/**
|
|
20
|
+
* Выбранный индекс типа сетки.
|
|
21
|
+
*/
|
|
22
|
+
this.netTypeIndex = signal(0);
|
|
23
|
+
/**
|
|
24
|
+
* Выбранный тип сетки.
|
|
25
|
+
*/
|
|
26
|
+
this.netTypeIndexSelected = computed(() => this.config().netType[this.netTypeIndex()]);
|
|
27
|
+
/**
|
|
28
|
+
* Выбранный цвет профиля.
|
|
29
|
+
*/
|
|
30
|
+
this.colorIndexSelected = computed(() => this.config().color[this.colorIndex()]);
|
|
31
|
+
/**
|
|
32
|
+
* Конфигурация для отображения образца москитной сетки.
|
|
33
|
+
*/
|
|
34
|
+
this.config = input.required();
|
|
35
|
+
/**
|
|
36
|
+
* Событие, которое происходит при нажатии на кнопку "Назад в Конфигуратор".
|
|
37
|
+
*/
|
|
38
|
+
this.openConfiguratorClick = output();
|
|
39
|
+
/**
|
|
40
|
+
* Ссылка на страницу конфигуратора.
|
|
41
|
+
*/
|
|
42
|
+
this.configuratorPageUrl = input();
|
|
43
|
+
/**
|
|
44
|
+
* Событие, которое происходит при нажатии на кнопку "Консультация".
|
|
45
|
+
*/
|
|
46
|
+
this.openConsultationClick = output();
|
|
47
|
+
/**
|
|
48
|
+
* Интервал автоматического прочитывания списка товаров в миллисекундах.
|
|
49
|
+
*/
|
|
50
|
+
this.autoSlideIntervale = input(0);
|
|
51
|
+
/**
|
|
52
|
+
* Признак, что необходимо отображать переключатели на карусели.
|
|
53
|
+
*/
|
|
54
|
+
this.isShowCarouselSwitches = input(!inject(TUI_IS_MOBILE));
|
|
55
|
+
}
|
|
56
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPreviewSamplesMosquitoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
57
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ScPreviewSamplesMosquitoComponent, isStandalone: true, selector: "sc-preview-samples-mosquito", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, configuratorPageUrl: { classPropertyName: "configuratorPageUrl", publicName: "configuratorPageUrl", isSignal: true, isRequired: false, transformFunction: null }, autoSlideIntervale: { classPropertyName: "autoSlideIntervale", publicName: "autoSlideIntervale", isSignal: true, isRequired: false, transformFunction: null }, isShowCarouselSwitches: { classPropertyName: "isShowCarouselSwitches", publicName: "isShowCarouselSwitches", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { openConfiguratorClick: "openConfiguratorClick", openConsultationClick: "openConsultationClick" }, ngImport: i0, template: "@let descriptions = config().descriptions;\n@let colors = config().color;\n@let netTypes = config().netType;\n\n<!-- \u041E\u0441\u043D\u043E\u0432\u043D\u043E\u0439 \u043A\u043E\u043D\u0442\u0435\u0439\u043D\u0435\u0440 \u0441 \u0441\u0435\u0442\u043A\u043E\u0439. -->\n<div class=\"grid grid-cols-1 gap-4 lg:grid-cols-2\">\n <!-- \u041B\u0435\u0432\u0430\u044F \u043A\u043E\u043B\u043E\u043D\u043A\u0430 \u0441 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u0435\u0439. -->\n <div class=\"flex flex-col gap-4\">\n <!-- \u041A\u043D\u043E\u043F\u043A\u0438 \u0432\u044B\u0431\u043E\u0440\u0430 \u0442\u0438\u043F\u0430 \u0441\u0435\u0442\u043A\u0438. -->\n <div class=\"flex flex-wrap gap-4\">\n <button\n *ngFor=\"let item of netTypes; let itemIndex = index\"\n tuiCardLarge\n tuiHeader\n tuiSurface=\"floating\"\n type=\"button\"\n (click)=\"netTypeIndex.set(itemIndex)\"\n [class.active]=\"netTypeIndex() === itemIndex\"\n class=\"h-12 !items-center gap-2 !rounded-xl !px-4 !py-0\"\n >\n <img\n [src]=\"config().icons[item]\"\n [alt]=\"'\u041A\u043D\u043E\u043F\u043A\u0430 \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0430\u0442\u0435\u043B\u044F \u0442\u0438\u043F\u0430 \u0441\u0435\u0442\u043A\u0438 ' + descriptions['netType'][item]\"\n class=\"size-8\"\n />\n <div>{{ descriptions['netType'][item] }}</div>\n </button>\n </div>\n\n <!-- \u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435 \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u043E\u0433\u043E \u0442\u0438\u043F\u0430 \u0441\u0435\u0442\u043A\u0438. -->\n <div class=\"text-body-l-bold\">\u0421\u0435\u0442\u043A\u0430 {{ descriptions['netType'][netTypeIndexSelected()] }}</div>\n {{ config().subtitles[netTypeIndexSelected()] }}\n\n <!-- \u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0435 \u0431\u0435\u0439\u0434\u0436\u0438. -->\n <div class=\"flex flex-wrap items-center gap-1 text-body-m\">\n <tui-badge\n appearance=\"custom\"\n class=\"rounded-full border-2 border-solid border-tui-text-primary bg-white !p-[0.4rem] font-bold text-tui-text-primary\"\n >\n {{ colors.length }}\n </tui-badge>\n - \u043A\u043E\u043B\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0446\u0432\u0435\u0442\u043E\u0432 \u043F\u0440\u043E\u0444\u0438\u043B\u044F\n </div>\n <div class=\"flex flex-wrap items-center gap-1 text-body-m\">\n <tui-badge\n appearance=\"custom\"\n class=\"rounded-full border-2 border-solid border-tui-text-primary bg-white !p-[0.4rem] font-bold text-tui-text-primary\"\n >\n {{ netTypes.length }}\n </tui-badge>\n - \u043A\u043E\u043B\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0442\u0438\u043F\u043E\u0432 \u0441\u0435\u0442\u043E\u043A\n </div>\n\n <!-- \u0420\u0430\u0437\u043C\u0435\u0440\u044B \u0441\u0435\u0442\u043E\u043A. -->\n <div class=\"text-body-m\">\n <tui-icon icon=\"@tui.sc.grid-height-arrow\" />\n \u0412\u044B\u0441\u043E\u0442\u0430 \u0441\u0435\u0442\u043E\u043A \u043E\u0442 {{ config().minHeight }} \u0434\u043E {{ config().maxHeights[netTypeIndexSelected()] }} \u043C\u043C\n </div>\n <div class=\"text-body-m\">\n <tui-icon icon=\"@tui.sc.grid-width-arrow\" />\n \u0428\u0438\u0440\u0438\u043D\u0430 \u0441\u0435\u0442\u043E\u043A \u043E\u0442 {{ config().minWidth }} \u0434\u043E {{ config().maxWidths[netTypeIndexSelected()] }} \u043C\u043C\n </div>\n\n <!-- \u0422\u0435\u0433\u0438 \u0445\u0430\u0440\u0430\u043A\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043A. -->\n <div class=\"flex flex-wrap gap-2\">\n <button\n *ngFor=\"let tag of config().tags[netTypeIndexSelected()]\"\n tuiChip\n appearance=\"neutral\"\n >\n {{ tag }}\n </button>\n </div>\n\n <!-- \u0412\u044B\u0431\u043E\u0440 \u0446\u0432\u0435\u0442\u0430 \u043F\u0440\u043E\u0444\u0438\u043B\u044F. -->\n <div class=\"flex gap-4\">\n <picture\n *ngFor=\"let image of config().color; let itemIndex = index\"\n class=\"size-11 rounded-xl\"\n (tuiHoveredChange)=\"colorIndex.set(itemIndex)\"\n >\n @let color = config().color[colorIndex()];\n <source\n type=\"image/webp\"\n [srcset]=\"config().colorsIcons[image].webp\"\n />\n <img\n [class.active]=\"colorIndex() === itemIndex\"\n [src]=\"config().colorsIcons[image].defaultFormat\"\n [alt]=\"config().colorsIcons[image].alt ?? '\u041A\u043D\u043E\u043F\u043A\u0430 \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0430\u0442\u0435\u043B\u044F \u0446\u0432\u0435\u0442\u0430 ' + descriptions['color'][color]\"\n class=\"size-11 rounded-xl\"\n />\n </picture>\n </div>\n\n <!-- \u041A\u043D\u043E\u043F\u043A\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439. -->\n <div class=\"flex gap-2\">\n <a\n tuiButton\n [attr.href]=\"configuratorPageUrl()\"\n (click)=\"$event.preventDefault(); openConfiguratorClick.emit()\"\n iconStart=\"@tui.sliders-horizontal\"\n >\n \u0421\u0434\u0435\u043B\u0430\u0442\u044C \u0440\u0430\u0441\u0447\u0435\u0442\n </a>\n\n <button\n tuiButton\n (click)=\"openConsultationClick.emit()\"\n iconStart=\"@tui.messages-square\"\n >\n \u041A\u043E\u043D\u0441\u0443\u043B\u044C\u0442\u0430\u0446\u0438\u044F\n </button>\n </div>\n </div>\n\n <!-- \u041F\u0440\u0430\u0432\u0430\u044F \u043A\u043E\u043B\u043E\u043D\u043A\u0430 \u0441 \u043A\u0430\u0440\u0443\u0441\u0435\u043B\u044C\u044E \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0439. -->\n <div class=\"relative -order-1 h-[19em] flex-1 overflow-hidden rounded-xl shadow-tui-shadow md:h-96 lg:order-2 lg:h-[28rem]\">\n <button\n tuiIconButton\n iconStart=\"@tui.chevron-left\"\n (click)=\"carousel.prev()\"\n appearance=\"icon\"\n class=\"!absolute left-0 top-1/2 z-10 ml-2 -translate-y-1/2\"\n ></button>\n\n @let imagePreviews = config().imagePreviewsByColor[colorIndexSelected()];\n\n <tui-carousel\n #carousel\n [duration]=\"autoSlideIntervale()\"\n class=\"h-[19em] w-full md:h-96 lg:h-[28rem]\"\n >\n @for (item of imagePreviews; track $index) {\n <picture *tuiItem>\n <source\n type=\"image/webp\"\n [srcset]=\"item.webp\"\n />\n <img\n [alt]=\"item.alt ?? '\u041C\u043E\u0441\u043A\u0438\u0442\u043D\u0430\u044F \u0441\u0435\u0442\u043A\u0430 \u0432 \u0446\u0432\u0435\u0442\u0435 ' + descriptions['color'][colorIndexSelected()] + $index\"\n [src]=\"item.defaultFormat\"\n class=\"h-[19em] w-full object-cover object-center md:h-96 lg:h-[28rem]\"\n />\n </picture>\n }\n </tui-carousel>\n <button\n tuiIconButton\n iconStart=\"@tui.chevron-right\"\n (click)=\"carousel.next()\"\n appearance=\"icon\"\n class=\"!absolute right-0 top-1/2 z-10 mr-2 -translate-y-1/2\"\n ></button>\n </div>\n</div>\n", styles: [":host{--tui-carousel-padding: 0}img.active{--tw-ring-color: var(--tui-background-accent-1);--tw-ring-offset-width: 2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 rgba(0, 0, 0, 0))}button[tuicardlarge]{border:solid 2px white}button[tuicardlarge].active{border-color:var(--tui-background-accent-1)}\n"], dependencies: [{ kind: "directive", type: i1.TuiItem, selector: "[tuiItem]" }, { kind: "component", type: i2.TuiCarouselComponent, selector: "tui-carousel", inputs: ["draggable", "itemsCount", "index"], outputs: ["indexChange", "shift"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "component", type: TuiIcon, selector: "tui-icon", inputs: ["icon", "background"] }, { kind: "directive", type: TuiChip, selector: "tui-chip,[tuiChip]", inputs: ["size"] }, { kind: "directive", type: TuiBadge, selector: "tui-badge,[tuiBadge]", inputs: ["size"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: TuiHovered, selector: "[tuiHoveredChange]", outputs: ["tuiHoveredChange"] }, { kind: "directive", type: TuiCardLarge, selector: "[tuiCardLarge]", inputs: ["tuiCardLarge"] }, { kind: "directive", type: TuiHeader, selector: "[tuiHeader]", inputs: ["tuiHeader"] }, { kind: "directive", type: TuiSurface, selector: "[tuiSurface]", inputs: ["tuiSurface"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
58
|
+
}
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPreviewSamplesMosquitoComponent, decorators: [{
|
|
60
|
+
type: Component,
|
|
61
|
+
args: [{ standalone: true, selector: 'sc-preview-samples-mosquito', imports: [TuiCarousel, TuiButton, TuiIcon, TuiChip, TuiBadge, NgFor, TuiAppearance, TuiHovered, TuiCardLarge, TuiHeader, TuiIcon, TuiSurface], changeDetection: ChangeDetectionStrategy.OnPush, template: "@let descriptions = config().descriptions;\n@let colors = config().color;\n@let netTypes = config().netType;\n\n<!-- \u041E\u0441\u043D\u043E\u0432\u043D\u043E\u0439 \u043A\u043E\u043D\u0442\u0435\u0439\u043D\u0435\u0440 \u0441 \u0441\u0435\u0442\u043A\u043E\u0439. -->\n<div class=\"grid grid-cols-1 gap-4 lg:grid-cols-2\">\n <!-- \u041B\u0435\u0432\u0430\u044F \u043A\u043E\u043B\u043E\u043D\u043A\u0430 \u0441 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u0435\u0439. -->\n <div class=\"flex flex-col gap-4\">\n <!-- \u041A\u043D\u043E\u043F\u043A\u0438 \u0432\u044B\u0431\u043E\u0440\u0430 \u0442\u0438\u043F\u0430 \u0441\u0435\u0442\u043A\u0438. -->\n <div class=\"flex flex-wrap gap-4\">\n <button\n *ngFor=\"let item of netTypes; let itemIndex = index\"\n tuiCardLarge\n tuiHeader\n tuiSurface=\"floating\"\n type=\"button\"\n (click)=\"netTypeIndex.set(itemIndex)\"\n [class.active]=\"netTypeIndex() === itemIndex\"\n class=\"h-12 !items-center gap-2 !rounded-xl !px-4 !py-0\"\n >\n <img\n [src]=\"config().icons[item]\"\n [alt]=\"'\u041A\u043D\u043E\u043F\u043A\u0430 \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0430\u0442\u0435\u043B\u044F \u0442\u0438\u043F\u0430 \u0441\u0435\u0442\u043A\u0438 ' + descriptions['netType'][item]\"\n class=\"size-8\"\n />\n <div>{{ descriptions['netType'][item] }}</div>\n </button>\n </div>\n\n <!-- \u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435 \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u043E\u0433\u043E \u0442\u0438\u043F\u0430 \u0441\u0435\u0442\u043A\u0438. -->\n <div class=\"text-body-l-bold\">\u0421\u0435\u0442\u043A\u0430 {{ descriptions['netType'][netTypeIndexSelected()] }}</div>\n {{ config().subtitles[netTypeIndexSelected()] }}\n\n <!-- \u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0435 \u0431\u0435\u0439\u0434\u0436\u0438. -->\n <div class=\"flex flex-wrap items-center gap-1 text-body-m\">\n <tui-badge\n appearance=\"custom\"\n class=\"rounded-full border-2 border-solid border-tui-text-primary bg-white !p-[0.4rem] font-bold text-tui-text-primary\"\n >\n {{ colors.length }}\n </tui-badge>\n - \u043A\u043E\u043B\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0446\u0432\u0435\u0442\u043E\u0432 \u043F\u0440\u043E\u0444\u0438\u043B\u044F\n </div>\n <div class=\"flex flex-wrap items-center gap-1 text-body-m\">\n <tui-badge\n appearance=\"custom\"\n class=\"rounded-full border-2 border-solid border-tui-text-primary bg-white !p-[0.4rem] font-bold text-tui-text-primary\"\n >\n {{ netTypes.length }}\n </tui-badge>\n - \u043A\u043E\u043B\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0442\u0438\u043F\u043E\u0432 \u0441\u0435\u0442\u043E\u043A\n </div>\n\n <!-- \u0420\u0430\u0437\u043C\u0435\u0440\u044B \u0441\u0435\u0442\u043E\u043A. -->\n <div class=\"text-body-m\">\n <tui-icon icon=\"@tui.sc.grid-height-arrow\" />\n \u0412\u044B\u0441\u043E\u0442\u0430 \u0441\u0435\u0442\u043E\u043A \u043E\u0442 {{ config().minHeight }} \u0434\u043E {{ config().maxHeights[netTypeIndexSelected()] }} \u043C\u043C\n </div>\n <div class=\"text-body-m\">\n <tui-icon icon=\"@tui.sc.grid-width-arrow\" />\n \u0428\u0438\u0440\u0438\u043D\u0430 \u0441\u0435\u0442\u043E\u043A \u043E\u0442 {{ config().minWidth }} \u0434\u043E {{ config().maxWidths[netTypeIndexSelected()] }} \u043C\u043C\n </div>\n\n <!-- \u0422\u0435\u0433\u0438 \u0445\u0430\u0440\u0430\u043A\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043A. -->\n <div class=\"flex flex-wrap gap-2\">\n <button\n *ngFor=\"let tag of config().tags[netTypeIndexSelected()]\"\n tuiChip\n appearance=\"neutral\"\n >\n {{ tag }}\n </button>\n </div>\n\n <!-- \u0412\u044B\u0431\u043E\u0440 \u0446\u0432\u0435\u0442\u0430 \u043F\u0440\u043E\u0444\u0438\u043B\u044F. -->\n <div class=\"flex gap-4\">\n <picture\n *ngFor=\"let image of config().color; let itemIndex = index\"\n class=\"size-11 rounded-xl\"\n (tuiHoveredChange)=\"colorIndex.set(itemIndex)\"\n >\n @let color = config().color[colorIndex()];\n <source\n type=\"image/webp\"\n [srcset]=\"config().colorsIcons[image].webp\"\n />\n <img\n [class.active]=\"colorIndex() === itemIndex\"\n [src]=\"config().colorsIcons[image].defaultFormat\"\n [alt]=\"config().colorsIcons[image].alt ?? '\u041A\u043D\u043E\u043F\u043A\u0430 \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0430\u0442\u0435\u043B\u044F \u0446\u0432\u0435\u0442\u0430 ' + descriptions['color'][color]\"\n class=\"size-11 rounded-xl\"\n />\n </picture>\n </div>\n\n <!-- \u041A\u043D\u043E\u043F\u043A\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439. -->\n <div class=\"flex gap-2\">\n <a\n tuiButton\n [attr.href]=\"configuratorPageUrl()\"\n (click)=\"$event.preventDefault(); openConfiguratorClick.emit()\"\n iconStart=\"@tui.sliders-horizontal\"\n >\n \u0421\u0434\u0435\u043B\u0430\u0442\u044C \u0440\u0430\u0441\u0447\u0435\u0442\n </a>\n\n <button\n tuiButton\n (click)=\"openConsultationClick.emit()\"\n iconStart=\"@tui.messages-square\"\n >\n \u041A\u043E\u043D\u0441\u0443\u043B\u044C\u0442\u0430\u0446\u0438\u044F\n </button>\n </div>\n </div>\n\n <!-- \u041F\u0440\u0430\u0432\u0430\u044F \u043A\u043E\u043B\u043E\u043D\u043A\u0430 \u0441 \u043A\u0430\u0440\u0443\u0441\u0435\u043B\u044C\u044E \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0439. -->\n <div class=\"relative -order-1 h-[19em] flex-1 overflow-hidden rounded-xl shadow-tui-shadow md:h-96 lg:order-2 lg:h-[28rem]\">\n <button\n tuiIconButton\n iconStart=\"@tui.chevron-left\"\n (click)=\"carousel.prev()\"\n appearance=\"icon\"\n class=\"!absolute left-0 top-1/2 z-10 ml-2 -translate-y-1/2\"\n ></button>\n\n @let imagePreviews = config().imagePreviewsByColor[colorIndexSelected()];\n\n <tui-carousel\n #carousel\n [duration]=\"autoSlideIntervale()\"\n class=\"h-[19em] w-full md:h-96 lg:h-[28rem]\"\n >\n @for (item of imagePreviews; track $index) {\n <picture *tuiItem>\n <source\n type=\"image/webp\"\n [srcset]=\"item.webp\"\n />\n <img\n [alt]=\"item.alt ?? '\u041C\u043E\u0441\u043A\u0438\u0442\u043D\u0430\u044F \u0441\u0435\u0442\u043A\u0430 \u0432 \u0446\u0432\u0435\u0442\u0435 ' + descriptions['color'][colorIndexSelected()] + $index\"\n [src]=\"item.defaultFormat\"\n class=\"h-[19em] w-full object-cover object-center md:h-96 lg:h-[28rem]\"\n />\n </picture>\n }\n </tui-carousel>\n <button\n tuiIconButton\n iconStart=\"@tui.chevron-right\"\n (click)=\"carousel.next()\"\n appearance=\"icon\"\n class=\"!absolute right-0 top-1/2 z-10 mr-2 -translate-y-1/2\"\n ></button>\n </div>\n</div>\n", styles: [":host{--tui-carousel-padding: 0}img.active{--tw-ring-color: var(--tui-background-accent-1);--tw-ring-offset-width: 2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 rgba(0, 0, 0, 0))}button[tuicardlarge]{border:solid 2px white}button[tuicardlarge].active{border-color:var(--tui-background-accent-1)}\n"] }]
|
|
62
|
+
}] });
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtcHJldmlldy1zYW1wbGVzLW1vc3F1aXRvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zYW1wbGVzL3NjLXByZXZpZXctc2FtcGxlcy1tb3NxdWl0by9zYy1wcmV2aWV3LXNhbXBsZXMtbW9zcXVpdG8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL3NhbXBsZXMvc2MtcHJldmlldy1zYW1wbGVzLW1vc3F1aXRvL3NjLXByZXZpZXctc2FtcGxlcy1tb3NxdWl0by5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBZSxNQUFNLEVBQTRCLE1BQU0sRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDbkssT0FBTyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9FLE9BQU8sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7O0FBSTNEOztHQUVHO0FBU0gsTUFBTSxPQUFPLGlDQUFpQztJQVI5QztRQVNJOztXQUVHO1FBQ2EsZUFBVSxHQUEyQixNQUFNLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFFdkU7O1dBRUc7UUFDYSxpQkFBWSxHQUEyQixNQUFNLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFFekU7O1dBRUc7UUFDYSx5QkFBb0IsR0FBbUIsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVsSDs7V0FFRztRQUNhLHVCQUFrQixHQUFtQixRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTVHOztXQUVHO1FBQ2EsV0FBTSxHQUF5QyxLQUFLLENBQUMsUUFBUSxFQUEyQixDQUFDO1FBRXpHOztXQUVHO1FBQ2EsMEJBQXFCLEdBQTJCLE1BQU0sRUFBRSxDQUFDO1FBRXpFOztXQUVHO1FBQ2Esd0JBQW1CLEdBQW9DLEtBQUssRUFBc0IsQ0FBQztRQUVuRzs7V0FFRztRQUNhLDBCQUFxQixHQUEyQixNQUFNLEVBQUUsQ0FBQztRQUV6RTs7V0FFRztRQUNhLHVCQUFrQixHQUF3QixLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFFM0U7O1dBRUc7UUFDZ0IsMkJBQXNCLEdBQXlCLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0tBQ25HOytHQWxEWSxpQ0FBaUM7bUdBQWpDLGlDQUFpQyxzekJDcEI5QyxnK1BBNEpBLG0wQkQzSTJCLFNBQVMsb0lBQUUsT0FBTyxxRkFBRSxPQUFPLGlGQUFFLFFBQVEsbUZBQUUsS0FBSyxtSEFBaUIsVUFBVSw4RkFBRSxZQUFZLHFGQUFFLFNBQVMsK0VBQVcsVUFBVTs7NEZBR25JLGlDQUFpQztrQkFSN0MsU0FBUztpQ0FDTSxJQUFJLFlBQ04sNkJBQTZCLFdBRzlCLENBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxVQUFVLENBQUMsbUJBQzVILHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0ZvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5qZWN0LCBpbnB1dCwgSW5wdXRTaWduYWwsIG91dHB1dCwgT3V0cHV0RW1pdHRlclJlZiwgU2lnbmFsLCBzaWduYWwsIFdyaXRhYmxlU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUVUlfSVNfTU9CSUxFLCBUdWlIb3ZlcmVkIH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQgeyBUdWlBcHBlYXJhbmNlLCBUdWlCdXR0b24sIFR1aUljb24sIFR1aVN1cmZhY2UgfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQgeyBUdWlCYWRnZSwgVHVpQ2Fyb3VzZWwsIFR1aUNoaXAgfSBmcm9tICdAdGFpZ2EtdWkva2l0JztcbmltcG9ydCB7IFR1aUNhcmRMYXJnZSwgVHVpSGVhZGVyIH0gZnJvbSAnQHRhaWdhLXVpL2xheW91dCc7XG5cbmltcG9ydCB7IFNjUHJldmlld01vc3F1aXRvQ29uZmlnIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5cbi8qKlxuICog0JrQvtC80L/QvtC90LXQvdGCINC/0YDQtdC00YHRgtCw0LLQu9C10L3QuNGPINC80L7RgdC60LjRgtC90L7QuSDRgdC10YLQutC4LlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnc2MtcHJldmlldy1zYW1wbGVzLW1vc3F1aXRvJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2MtcHJldmlldy1zYW1wbGVzLW1vc3F1aXRvLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vc2MtcHJldmlldy1zYW1wbGVzLW1vc3F1aXRvLmNvbXBvbmVudC5zY3NzJyxcbiAgICBpbXBvcnRzOiBbVHVpQ2Fyb3VzZWwsIFR1aUJ1dHRvbiwgVHVpSWNvbiwgVHVpQ2hpcCwgVHVpQmFkZ2UsIE5nRm9yLCBUdWlBcHBlYXJhbmNlLCBUdWlIb3ZlcmVkLCBUdWlDYXJkTGFyZ2UsIFR1aUhlYWRlciwgVHVpSWNvbiwgVHVpU3VyZmFjZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNjUHJldmlld1NhbXBsZXNNb3NxdWl0b0NvbXBvbmVudCB7XG4gICAgLyoqXG4gICAgICog0JLRi9Cx0YDQsNC90L3Ri9C5INC40L3QtNC10LrRgSDRhtCy0LXRgtCwINC/0YDQvtGE0LjQu9GPLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBjb2xvckluZGV4OiBXcml0YWJsZVNpZ25hbDxudW1iZXI+ID0gc2lnbmFsPG51bWJlcj4oMCk7XG5cbiAgICAvKipcbiAgICAgKiDQktGL0LHRgNCw0L3QvdGL0Lkg0LjQvdC00LXQutGBINGC0LjQv9CwINGB0LXRgtC60LguXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IG5ldFR5cGVJbmRleDogV3JpdGFibGVTaWduYWw8bnVtYmVyPiA9IHNpZ25hbDxudW1iZXI+KDApO1xuXG4gICAgLyoqXG4gICAgICog0JLRi9Cx0YDQsNC90L3Ri9C5INGC0LjQvyDRgdC10YLQutC4LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBuZXRUeXBlSW5kZXhTZWxlY3RlZDogU2lnbmFsPHN0cmluZz4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLmNvbmZpZygpLm5ldFR5cGVbdGhpcy5uZXRUeXBlSW5kZXgoKV0pO1xuXG4gICAgLyoqXG4gICAgICog0JLRi9Cx0YDQsNC90L3Ri9C5INGG0LLQtdGCINC/0YDQvtGE0LjQu9GPLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBjb2xvckluZGV4U2VsZWN0ZWQ6IFNpZ25hbDxzdHJpbmc+ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5jb25maWcoKS5jb2xvclt0aGlzLmNvbG9ySW5kZXgoKV0pO1xuXG4gICAgLyoqXG4gICAgICog0JrQvtC90YTQuNCz0YPRgNCw0YbQuNGPINC00LvRjyDQvtGC0L7QsdGA0LDQttC10L3QuNGPINC+0LHRgNCw0LfRhtCwINC80L7RgdC60LjRgtC90L7QuSDRgdC10YLQutC4LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBjb25maWc6IElucHV0U2lnbmFsPFNjUHJldmlld01vc3F1aXRvQ29uZmlnPiA9IGlucHV0LnJlcXVpcmVkPFNjUHJldmlld01vc3F1aXRvQ29uZmlnPigpO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtCx0YvRgtC40LUsINC60L7RgtC+0YDQvtC1INC/0YDQvtC40YHRhdC+0LTQuNGCINC/0YDQuCDQvdCw0LbQsNGC0LjQuCDQvdCwINC60L3QvtC/0LrRgyBcItCd0LDQt9Cw0LQg0LIg0JrQvtC90YTQuNCz0YPRgNCw0YLQvtGAXCIuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IG9wZW5Db25maWd1cmF0b3JDbGljazogT3V0cHV0RW1pdHRlclJlZjx2b2lkPiA9IG91dHB1dCgpO1xuXG4gICAgLyoqXG4gICAgICog0KHRgdGL0LvQutCwINC90LAg0YHRgtGA0LDQvdC40YbRgyDQutC+0L3RhNC40LPRg9GA0LDRgtC+0YDQsC5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgY29uZmlndXJhdG9yUGFnZVVybDogSW5wdXRTaWduYWw8c3RyaW5nIHwgdW5kZWZpbmVkPiA9IGlucHV0PHN0cmluZyB8IHVuZGVmaW5lZD4oKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7QsdGL0YLQuNC1LCDQutC+0YLQvtGA0L7QtSDQv9GA0L7QuNGB0YXQvtC00LjRgiDQv9GA0Lgg0L3QsNC20LDRgtC40Lgg0L3QsCDQutC90L7Qv9C60YMgXCLQmtC+0L3RgdGD0LvRjNGC0LDRhtC40Y9cIi5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgb3BlbkNvbnN1bHRhdGlvbkNsaWNrOiBPdXRwdXRFbWl0dGVyUmVmPHZvaWQ+ID0gb3V0cHV0KCk7XG5cbiAgICAvKipcbiAgICAgKiDQmNC90YLQtdGA0LLQsNC7INCw0LLRgtC+0LzQsNGC0LjRh9C10YHQutC+0LPQviDQv9GA0L7Rh9C40YLRi9Cy0LDQvdC40Y8g0YHQv9C40YHQutCwINGC0L7QstCw0YDQvtCyINCyINC80LjQu9C70LjRgdC10LrRg9C90LTQsNGFLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdXRvU2xpZGVJbnRlcnZhbGU6IElucHV0U2lnbmFsPG51bWJlcj4gPSBpbnB1dDxudW1iZXI+KDApO1xuXG4gICAgLyoqXG4gICAgICog0J/RgNC40LfQvdCw0LosINGH0YLQviDQvdC10L7QsdGF0L7QtNC40LzQviDQvtGC0L7QsdGA0LDQttCw0YLRjCDQv9C10YDQtdC60LvRjtGH0LDRgtC10LvQuCDQvdCwINC60LDRgNGD0YHQtdC70LguXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGlzU2hvd0Nhcm91c2VsU3dpdGNoZXM6IElucHV0U2lnbmFsPGJvb2xlYW4+ID0gaW5wdXQoIWluamVjdChUVUlfSVNfTU9CSUxFKSk7XG59XG4iLCJAbGV0IGRlc2NyaXB0aW9ucyA9IGNvbmZpZygpLmRlc2NyaXB0aW9ucztcbkBsZXQgY29sb3JzID0gY29uZmlnKCkuY29sb3I7XG5AbGV0IG5ldFR5cGVzID0gY29uZmlnKCkubmV0VHlwZTtcblxuPCEtLSDQntGB0L3QvtCy0L3QvtC5INC60L7QvdGC0LXQudC90LXRgCDRgSDRgdC10YLQutC+0LkuIC0tPlxuPGRpdiBjbGFzcz1cImdyaWQgZ3JpZC1jb2xzLTEgZ2FwLTQgbGc6Z3JpZC1jb2xzLTJcIj5cbiAgICA8IS0tINCb0LXQstCw0Y8g0LrQvtC70L7QvdC60LAg0YEg0LjQvdGE0L7RgNC80LDRhtC40LXQuS4gLS0+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTRcIj5cbiAgICAgICAgPCEtLSDQmtC90L7Qv9C60Lgg0LLRi9Cx0L7RgNCwINGC0LjQv9CwINGB0LXRgtC60LguIC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgZ2FwLTRcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBuZXRUeXBlczsgbGV0IGl0ZW1JbmRleCA9IGluZGV4XCJcbiAgICAgICAgICAgICAgICB0dWlDYXJkTGFyZ2VcbiAgICAgICAgICAgICAgICB0dWlIZWFkZXJcbiAgICAgICAgICAgICAgICB0dWlTdXJmYWNlPVwiZmxvYXRpbmdcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJuZXRUeXBlSW5kZXguc2V0KGl0ZW1JbmRleClcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwibmV0VHlwZUluZGV4KCkgPT09IGl0ZW1JbmRleFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJoLTEyICFpdGVtcy1jZW50ZXIgZ2FwLTIgIXJvdW5kZWQteGwgIXB4LTQgIXB5LTBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgW3NyY109XCJjb25maWcoKS5pY29uc1tpdGVtXVwiXG4gICAgICAgICAgICAgICAgICAgIFthbHRdPVwiJ9Ca0L3QvtC/0LrQsCDQv9C10YDQtdC60LvRjtGH0LDRgtC10LvRjyDRgtC40L/QsCDRgdC10YLQutC4ICcgKyBkZXNjcmlwdGlvbnNbJ25ldFR5cGUnXVtpdGVtXVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2l6ZS04XCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxkaXY+e3sgZGVzY3JpcHRpb25zWyduZXRUeXBlJ11baXRlbV0gfX08L2Rpdj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8IS0tINCe0L/QuNGB0LDQvdC40LUg0LLRi9Cx0YDQsNC90L3QvtCz0L4g0YLQuNC/0LAg0YHQtdGC0LrQuC4gLS0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWJvZHktbC1ib2xkXCI+0KHQtdGC0LrQsCB7eyBkZXNjcmlwdGlvbnNbJ25ldFR5cGUnXVtuZXRUeXBlSW5kZXhTZWxlY3RlZCgpXSB9fTwvZGl2PlxuICAgICAgICB7eyBjb25maWcoKS5zdWJ0aXRsZXNbbmV0VHlwZUluZGV4U2VsZWN0ZWQoKV0gfX1cblxuICAgICAgICA8IS0tINCY0L3RhNC+0YDQvNCw0YbQuNC+0L3QvdGL0LUg0LHQtdC50LTQttC4LiAtLT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBnYXAtMSB0ZXh0LWJvZHktbVwiPlxuICAgICAgICAgICAgPHR1aS1iYWRnZVxuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJjdXN0b21cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwicm91bmRlZC1mdWxsIGJvcmRlci0yIGJvcmRlci1zb2xpZCBib3JkZXItdHVpLXRleHQtcHJpbWFyeSBiZy13aGl0ZSAhcC1bMC40cmVtXSBmb250LWJvbGQgdGV4dC10dWktdGV4dC1wcmltYXJ5XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBjb2xvcnMubGVuZ3RoIH19XG4gICAgICAgICAgICA8L3R1aS1iYWRnZT5cbiAgICAgICAgICAgIC0g0LrQvtC70LvQuNGH0LXRgdGC0LLQviDRhtCy0LXRgtC+0LIg0L/RgNC+0YTQuNC70Y9cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcCBpdGVtcy1jZW50ZXIgZ2FwLTEgdGV4dC1ib2R5LW1cIj5cbiAgICAgICAgICAgIDx0dWktYmFkZ2VcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwiY3VzdG9tXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInJvdW5kZWQtZnVsbCBib3JkZXItMiBib3JkZXItc29saWQgYm9yZGVyLXR1aS10ZXh0LXByaW1hcnkgYmctd2hpdGUgIXAtWzAuNHJlbV0gZm9udC1ib2xkIHRleHQtdHVpLXRleHQtcHJpbWFyeVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgbmV0VHlwZXMubGVuZ3RoIH19XG4gICAgICAgICAgICA8L3R1aS1iYWRnZT5cbiAgICAgICAgICAgIC0g0LrQvtC70LvQuNGH0LXRgdGC0LLQviDRgtC40L/QvtCyINGB0LXRgtC+0LpcbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPCEtLSDQoNCw0LfQvNC10YDRiyDRgdC10YLQvtC6LiAtLT5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtYm9keS1tXCI+XG4gICAgICAgICAgICA8dHVpLWljb24gaWNvbj1cIkB0dWkuc2MuZ3JpZC1oZWlnaHQtYXJyb3dcIiAvPlxuICAgICAgICAgICAg0JLRi9GB0L7RgtCwINGB0LXRgtC+0Log0L7RgiB7eyBjb25maWcoKS5taW5IZWlnaHQgfX0g0LTQviB7eyBjb25maWcoKS5tYXhIZWlnaHRzW25ldFR5cGVJbmRleFNlbGVjdGVkKCldIH19INC80LxcbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWJvZHktbVwiPlxuICAgICAgICAgICAgPHR1aS1pY29uIGljb249XCJAdHVpLnNjLmdyaWQtd2lkdGgtYXJyb3dcIiAvPlxuICAgICAgICAgICAg0KjQuNGA0LjQvdCwINGB0LXRgtC+0Log0L7RgiB7eyBjb25maWcoKS5taW5XaWR0aCB9fSDQtNC+IHt7IGNvbmZpZygpLm1heFdpZHRoc1tuZXRUeXBlSW5kZXhTZWxlY3RlZCgpXSB9fSDQvNC8XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS0g0KLQtdCz0Lgg0YXQsNGA0LDQutGC0LXRgNC40YHRgtC40LouIC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgZ2FwLTJcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgdGFnIG9mIGNvbmZpZygpLnRhZ3NbbmV0VHlwZUluZGV4U2VsZWN0ZWQoKV1cIlxuICAgICAgICAgICAgICAgIHR1aUNoaXBcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwibmV1dHJhbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgdGFnIH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPCEtLSDQktGL0LHQvtGAINGG0LLQtdGC0LAg0L/RgNC+0YTQuNC70Y8uIC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBnYXAtNFwiPlxuICAgICAgICAgICAgPHBpY3R1cmVcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaW1hZ2Ugb2YgY29uZmlnKCkuY29sb3I7IGxldCBpdGVtSW5kZXggPSBpbmRleFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzaXplLTExIHJvdW5kZWQteGxcIlxuICAgICAgICAgICAgICAgICh0dWlIb3ZlcmVkQ2hhbmdlKT1cImNvbG9ySW5kZXguc2V0KGl0ZW1JbmRleClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIEBsZXQgY29sb3IgPSBjb25maWcoKS5jb2xvcltjb2xvckluZGV4KCldO1xuICAgICAgICAgICAgICAgIDxzb3VyY2VcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImltYWdlL3dlYnBcIlxuICAgICAgICAgICAgICAgICAgICBbc3Jjc2V0XT1cImNvbmZpZygpLmNvbG9yc0ljb25zW2ltYWdlXS53ZWJwXCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJjb2xvckluZGV4KCkgPT09IGl0ZW1JbmRleFwiXG4gICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiY29uZmlnKCkuY29sb3JzSWNvbnNbaW1hZ2VdLmRlZmF1bHRGb3JtYXRcIlxuICAgICAgICAgICAgICAgICAgICBbYWx0XT1cImNvbmZpZygpLmNvbG9yc0ljb25zW2ltYWdlXS5hbHQgPz8gJ9Ca0L3QvtC/0LrQsCDQv9C10YDQtdC60LvRjtGH0LDRgtC10LvRjyDRhtCy0LXRgtCwICcgKyBkZXNjcmlwdGlvbnNbJ2NvbG9yJ11bY29sb3JdXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzaXplLTExIHJvdW5kZWQteGxcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L3BpY3R1cmU+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS0g0JrQvdC+0L/QutC4INC00LXQudGB0YLQstC40LkuIC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBnYXAtMlwiPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICB0dWlCdXR0b25cbiAgICAgICAgICAgICAgICBbYXR0ci5ocmVmXT1cImNvbmZpZ3VyYXRvclBhZ2VVcmwoKVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5wcmV2ZW50RGVmYXVsdCgpOyBvcGVuQ29uZmlndXJhdG9yQ2xpY2suZW1pdCgpXCJcbiAgICAgICAgICAgICAgICBpY29uU3RhcnQ9XCJAdHVpLnNsaWRlcnMtaG9yaXpvbnRhbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAg0KHQtNC10LvQsNGC0Ywg0YDQsNGB0YfQtdGCXG4gICAgICAgICAgICA8L2E+XG5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICB0dWlCdXR0b25cbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib3BlbkNvbnN1bHRhdGlvbkNsaWNrLmVtaXQoKVwiXG4gICAgICAgICAgICAgICAgaWNvblN0YXJ0PVwiQHR1aS5tZXNzYWdlcy1zcXVhcmVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgINCa0L7QvdGB0YPQu9GM0YLQsNGG0LjRj1xuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSDQn9GA0LDQstCw0Y8g0LrQvtC70L7QvdC60LAg0YEg0LrQsNGA0YPRgdC10LvRjNGOINC40LfQvtCx0YDQsNC20LXQvdC40LkuIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSAtb3JkZXItMSBoLVsxOWVtXSBmbGV4LTEgb3ZlcmZsb3ctaGlkZGVuIHJvdW5kZWQteGwgc2hhZG93LXR1aS1zaGFkb3cgbWQ6aC05NiBsZzpvcmRlci0yIGxnOmgtWzI4cmVtXVwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgICAgICBpY29uU3RhcnQ9XCJAdHVpLmNoZXZyb24tbGVmdFwiXG4gICAgICAgICAgICAoY2xpY2spPVwiY2Fyb3VzZWwucHJldigpXCJcbiAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJpY29uXCJcbiAgICAgICAgICAgIGNsYXNzPVwiIWFic29sdXRlIGxlZnQtMCB0b3AtMS8yIHotMTAgbWwtMiAtdHJhbnNsYXRlLXktMS8yXCJcbiAgICAgICAgPjwvYnV0dG9uPlxuXG4gICAgICAgIEBsZXQgaW1hZ2VQcmV2aWV3cyA9IGNvbmZpZygpLmltYWdlUHJldmlld3NCeUNvbG9yW2NvbG9ySW5kZXhTZWxlY3RlZCgpXTtcblxuICAgICAgICA8dHVpLWNhcm91c2VsXG4gICAgICAgICAgICAjY2Fyb3VzZWxcbiAgICAgICAgICAgIFtkdXJhdGlvbl09XCJhdXRvU2xpZGVJbnRlcnZhbGUoKVwiXG4gICAgICAgICAgICBjbGFzcz1cImgtWzE5ZW1dIHctZnVsbCBtZDpoLTk2IGxnOmgtWzI4cmVtXVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgaW1hZ2VQcmV2aWV3czsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgPHBpY3R1cmUgKnR1aUl0ZW0+XG4gICAgICAgICAgICAgICAgICAgIDxzb3VyY2VcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJpbWFnZS93ZWJwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNzZXRdPVwiaXRlbS53ZWJwXCJcbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJpdGVtLmFsdCA/PyAn0JzQvtGB0LrQuNGC0L3QsNGPINGB0LXRgtC60LAg0LIg0YbQstC10YLQtSAnICsgZGVzY3JpcHRpb25zWydjb2xvciddW2NvbG9ySW5kZXhTZWxlY3RlZCgpXSArICRpbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cIml0ZW0uZGVmYXVsdEZvcm1hdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImgtWzE5ZW1dIHctZnVsbCBvYmplY3QtY292ZXIgb2JqZWN0LWNlbnRlciBtZDpoLTk2IGxnOmgtWzI4cmVtXVwiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9waWN0dXJlPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L3R1aS1jYXJvdXNlbD5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgaWNvblN0YXJ0PVwiQHR1aS5jaGV2cm9uLXJpZ2h0XCJcbiAgICAgICAgICAgIChjbGljayk9XCJjYXJvdXNlbC5uZXh0KClcIlxuICAgICAgICAgICAgYXBwZWFyYW5jZT1cImljb25cIlxuICAgICAgICAgICAgY2xhc3M9XCIhYWJzb2x1dGUgcmlnaHQtMCB0b3AtMS8yIHotMTAgbXItMiAtdHJhbnNsYXRlLXktMS8yXCJcbiAgICAgICAgPjwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { TuiHovered } from '@taiga-ui/cdk';
|
|
5
|
+
import { TuiButton, TuiError, TuiLabel } from '@taiga-ui/core';
|
|
6
|
+
import { TuiAvatar, TuiButtonLoading, TuiCarousel, TuiFieldErrorPipe } from '@taiga-ui/kit';
|
|
7
|
+
import { TuiInputModule, TuiInputPhoneModule } from '@taiga-ui/legacy';
|
|
8
|
+
import { RecaptchaFormsModule, RecaptchaModule } from 'ng-recaptcha-2';
|
|
9
|
+
import { ScFormFieldsModule } from '../form-fields';
|
|
10
|
+
import { ScPreviewSampleComponent } from './preview-sample/sc-preview-sample.component';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@taiga-ui/cdk/directives/item";
|
|
13
|
+
import * as i2 from "@taiga-ui/kit";
|
|
14
|
+
/**
|
|
15
|
+
* Модуль представления образцов товара.
|
|
16
|
+
*/
|
|
17
|
+
export class ScPreviewSampleModule {
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPreviewSampleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
19
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: ScPreviewSampleModule, declarations: [ScPreviewSampleComponent], imports: [CommonModule,
|
|
20
|
+
ReactiveFormsModule,
|
|
21
|
+
TuiError,
|
|
22
|
+
TuiFieldErrorPipe,
|
|
23
|
+
ScFormFieldsModule,
|
|
24
|
+
TuiInputModule,
|
|
25
|
+
TuiInputPhoneModule, i1.TuiItem, i2.TuiCarouselComponent, i2.TuiCarouselDirective, i2.TuiCarouselAutoscroll, i2.TuiCarouselButtons, i2.TuiCarouselScroll, TuiAvatar,
|
|
26
|
+
TuiHovered,
|
|
27
|
+
TuiButton,
|
|
28
|
+
TuiButtonLoading,
|
|
29
|
+
TuiLabel,
|
|
30
|
+
RecaptchaFormsModule,
|
|
31
|
+
RecaptchaModule], exports: [ScPreviewSampleComponent] }); }
|
|
32
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPreviewSampleModule, imports: [CommonModule,
|
|
33
|
+
ReactiveFormsModule,
|
|
34
|
+
TuiError,
|
|
35
|
+
ScFormFieldsModule,
|
|
36
|
+
TuiInputModule,
|
|
37
|
+
TuiInputPhoneModule, i2.TuiCarouselComponent, TuiAvatar,
|
|
38
|
+
TuiButtonLoading,
|
|
39
|
+
RecaptchaFormsModule,
|
|
40
|
+
RecaptchaModule] }); }
|
|
41
|
+
}
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPreviewSampleModule, decorators: [{
|
|
43
|
+
type: NgModule,
|
|
44
|
+
args: [{
|
|
45
|
+
declarations: [ScPreviewSampleComponent],
|
|
46
|
+
imports: [
|
|
47
|
+
CommonModule,
|
|
48
|
+
ReactiveFormsModule,
|
|
49
|
+
TuiError,
|
|
50
|
+
TuiFieldErrorPipe,
|
|
51
|
+
ScFormFieldsModule,
|
|
52
|
+
TuiInputModule,
|
|
53
|
+
TuiInputPhoneModule,
|
|
54
|
+
...TuiCarousel,
|
|
55
|
+
TuiAvatar,
|
|
56
|
+
TuiHovered,
|
|
57
|
+
TuiButton,
|
|
58
|
+
TuiButtonLoading,
|
|
59
|
+
TuiLabel,
|
|
60
|
+
RecaptchaFormsModule,
|
|
61
|
+
RecaptchaModule,
|
|
62
|
+
],
|
|
63
|
+
exports: [ScPreviewSampleComponent],
|
|
64
|
+
}]
|
|
65
|
+
}] });
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtc2FtcGxlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zYW1wbGVzL3NjLXNhbXBsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RixPQUFPLEVBQUUsY0FBYyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDdkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXZFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOzs7O0FBRXhGOztHQUVHO0FBc0JILE1BQU0sT0FBTyxxQkFBcUI7K0dBQXJCLHFCQUFxQjtnSEFBckIscUJBQXFCLGlCQXBCZix3QkFBd0IsYUFFbkMsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixRQUFRO1lBQ1IsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsbUJBQW1CLHVJQUVuQixTQUFTO1lBQ1QsVUFBVTtZQUNWLFNBQVM7WUFDVCxnQkFBZ0I7WUFDaEIsUUFBUTtZQUNSLG9CQUFvQjtZQUNwQixlQUFlLGFBRVQsd0JBQXdCO2dIQUV6QixxQkFBcUIsWUFsQjFCLFlBQVk7WUFDWixtQkFBbUI7WUFDbkIsUUFBUTtZQUVSLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsbUJBQW1CLDJCQUVuQixTQUFTO1lBR1QsZ0JBQWdCO1lBRWhCLG9CQUFvQjtZQUNwQixlQUFlOzs0RkFJVixxQkFBcUI7a0JBckJqQyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLHdCQUF3QixDQUFDO29CQUN4QyxPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLFFBQVE7d0JBQ1IsaUJBQWlCO3dCQUNqQixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixHQUFHLFdBQVc7d0JBQ2QsU0FBUzt3QkFDVCxVQUFVO3dCQUNWLFNBQVM7d0JBQ1QsZ0JBQWdCO3dCQUNoQixRQUFRO3dCQUNSLG9CQUFvQjt3QkFDcEIsZUFBZTtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsd0JBQXdCLENBQUM7aUJBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVHVpSG92ZXJlZCB9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHsgVHVpQnV0dG9uLCBUdWlFcnJvciwgVHVpTGFiZWwgfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQgeyBUdWlBdmF0YXIsIFR1aUJ1dHRvbkxvYWRpbmcsIFR1aUNhcm91c2VsLCBUdWlGaWVsZEVycm9yUGlwZSB9IGZyb20gJ0B0YWlnYS11aS9raXQnO1xuaW1wb3J0IHsgVHVpSW5wdXRNb2R1bGUsIFR1aUlucHV0UGhvbmVNb2R1bGUgfSBmcm9tICdAdGFpZ2EtdWkvbGVnYWN5JztcbmltcG9ydCB7IFJlY2FwdGNoYUZvcm1zTW9kdWxlLCBSZWNhcHRjaGFNb2R1bGUgfSBmcm9tICduZy1yZWNhcHRjaGEtMic7XG5cbmltcG9ydCB7IFNjRm9ybUZpZWxkc01vZHVsZSB9IGZyb20gJy4uL2Zvcm0tZmllbGRzJztcbmltcG9ydCB7IFNjUHJldmlld1NhbXBsZUNvbXBvbmVudCB9IGZyb20gJy4vcHJldmlldy1zYW1wbGUvc2MtcHJldmlldy1zYW1wbGUuY29tcG9uZW50JztcblxuLyoqXG4gKiDQnNC+0LTRg9C70Ywg0L/RgNC10LTRgdGC0LDQstC70LXQvdC40Y8g0L7QsdGA0LDQt9GG0L7QsiDRgtC+0LLQsNGA0LAuXG4gKi9cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbU2NQcmV2aWV3U2FtcGxlQ29tcG9uZW50XSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgVHVpRXJyb3IsXG4gICAgICAgIFR1aUZpZWxkRXJyb3JQaXBlLFxuICAgICAgICBTY0Zvcm1GaWVsZHNNb2R1bGUsXG4gICAgICAgIFR1aUlucHV0TW9kdWxlLFxuICAgICAgICBUdWlJbnB1dFBob25lTW9kdWxlLFxuICAgICAgICAuLi5UdWlDYXJvdXNlbCxcbiAgICAgICAgVHVpQXZhdGFyLFxuICAgICAgICBUdWlIb3ZlcmVkLFxuICAgICAgICBUdWlCdXR0b24sXG4gICAgICAgIFR1aUJ1dHRvbkxvYWRpbmcsXG4gICAgICAgIFR1aUxhYmVsLFxuICAgICAgICBSZWNhcHRjaGFGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVjYXB0Y2hhTW9kdWxlLFxuICAgIF0sXG4gICAgZXhwb3J0czogW1NjUHJldmlld1NhbXBsZUNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFNjUHJldmlld1NhbXBsZU1vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './sc-help-notification.service';
|
|
2
|
+
export * from './print.service';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zYy1oZWxwLW5vdGlmaWNhdGlvbi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcHJpbnQuc2VydmljZSc7XG4iXX0=
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { inject, Injectable, NgZone } from '@angular/core';
|
|
2
|
+
import { WA_WINDOW } from '@ng-web-apis/common';
|
|
3
|
+
import { SC_HIDDEN_PRINT_ELEMENTS } from '../providers';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
/**
|
|
6
|
+
* Сервис по работе с печатью страницы.
|
|
7
|
+
*/
|
|
8
|
+
export class ScPrintService {
|
|
9
|
+
constructor() {
|
|
10
|
+
/**
|
|
11
|
+
* {@link BehaviorSubject} данных скрытых элементов.
|
|
12
|
+
*/
|
|
13
|
+
this.hiddenElements = inject(SC_HIDDEN_PRINT_ELEMENTS);
|
|
14
|
+
/**
|
|
15
|
+
* {@link Observable} скрытых элементов.
|
|
16
|
+
*/
|
|
17
|
+
this.hiddenites$ = this.hiddenElements.asObservable();
|
|
18
|
+
/**
|
|
19
|
+
* Объект окна.
|
|
20
|
+
*/
|
|
21
|
+
this.window = inject(WA_WINDOW);
|
|
22
|
+
/**
|
|
23
|
+
* {@link NgZone} для выполнения кода в контексте зоны.
|
|
24
|
+
*/
|
|
25
|
+
this.ngZone = inject(NgZone);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Производит печать страницы заказов без шапки, подвала, цены и элементов которые обычно не входят в печать.
|
|
29
|
+
*
|
|
30
|
+
* @param hiddenElements Массив идентификаторов элементов, которые будут скрыты при печати.
|
|
31
|
+
*/
|
|
32
|
+
printPage(hiddenElements) {
|
|
33
|
+
this.hiddenElements.next(hiddenElements);
|
|
34
|
+
this.ngZone.runOutsideAngular(() => {
|
|
35
|
+
setTimeout(() => {
|
|
36
|
+
this.window.print();
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPrintService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
41
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPrintService, providedIn: 'root' }); }
|
|
42
|
+
}
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPrintService, decorators: [{
|
|
44
|
+
type: Injectable,
|
|
45
|
+
args: [{
|
|
46
|
+
providedIn: 'root',
|
|
47
|
+
}]
|
|
48
|
+
}] });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zZXJ2aWNlcy9wcmludC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHaEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUV4RDs7R0FFRztBQUlILE1BQU0sT0FBTyxjQUFjO0lBSDNCO1FBSUk7O1dBRUc7UUFDYyxtQkFBYyxHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBRW5FOztXQUVHO1FBQ0ksZ0JBQVcsR0FBeUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUU5RTs7V0FFRztRQUNjLFdBQU0sR0FBVyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFcEQ7O1dBRUc7UUFDYyxXQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBZ0I1QztJQWRHOzs7O09BSUc7SUFDSSxTQUFTLENBQUMsY0FBd0I7UUFDckMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDL0IsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDWixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOytHQWxDUSxjQUFjO21IQUFkLGNBQWMsY0FGWCxNQUFNOzs0RkFFVCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXQV9XSU5ET1cgfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU0NfSElEREVOX1BSSU5UX0VMRU1FTlRTIH0gZnJvbSAnLi4vcHJvdmlkZXJzJztcblxuLyoqXG4gKiDQodC10YDQstC40YEg0L/QviDRgNCw0LHQvtGC0LUg0YEg0L/QtdGH0LDRgtGM0Y4g0YHRgtGA0LDQvdC40YbRiy5cbiAqL1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2NQcmludFNlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqIHtAbGluayBCZWhhdmlvclN1YmplY3R9INC00LDQvdC90YvRhSDRgdC60YDRi9GC0YvRhSDRjdC70LXQvNC10L3RgtC+0LIuXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBoaWRkZW5FbGVtZW50cyA9IGluamVjdChTQ19ISURERU5fUFJJTlRfRUxFTUVOVFMpO1xuXG4gICAgLyoqXG4gICAgICoge0BsaW5rIE9ic2VydmFibGV9INGB0LrRgNGL0YLRi9GFINGN0LvQtdC80LXQvdGC0L7Qsi5cbiAgICAgKi9cbiAgICBwdWJsaWMgaGlkZGVuaXRlcyQ6IE9ic2VydmFibGU8c3RyaW5nW10+ID0gdGhpcy5oaWRkZW5FbGVtZW50cy5hc09ic2VydmFibGUoKTtcblxuICAgIC8qKlxuICAgICAqINCe0LHRitC10LrRgiDQvtC60L3QsC5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogV2luZG93ID0gaW5qZWN0KFdBX1dJTkRPVyk7XG5cbiAgICAvKipcbiAgICAgKiB7QGxpbmsgTmdab25lfSDQtNC70Y8g0LLRi9C/0L7Qu9C90LXQvdC40Y8g0LrQvtC00LAg0LIg0LrQvtC90YLQtdC60YHRgtC1INC30L7QvdGLLlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbmdab25lID0gaW5qZWN0KE5nWm9uZSk7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0L7QuNC30LLQvtC00LjRgiDQv9C10YfQsNGC0Ywg0YHRgtGA0LDQvdC40YbRiyDQt9Cw0LrQsNC30L7QsiDQsdC10Lcg0YjQsNC/0LrQuCwg0L/QvtC00LLQsNC70LAsINGG0LXQvdGLINC4INGN0LvQtdC80LXQvdGC0L7QsiDQutC+0YLQvtGA0YvQtSDQvtCx0YvRh9C90L4g0L3QtSDQstGF0L7QtNGP0YIg0LIg0L/QtdGH0LDRgtGMLlxuICAgICAqXG4gICAgICogQHBhcmFtIGhpZGRlbkVsZW1lbnRzINCc0LDRgdGB0LjQsiDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNC+0LIg0Y3Qu9C10LzQtdC90YLQvtCyLCDQutC+0YLQvtGA0YvQtSDQsdGD0LTRg9GCINGB0LrRgNGL0YLRiyDQv9GA0Lgg0L/QtdGH0LDRgtC4LlxuICAgICAqL1xuICAgIHB1YmxpYyBwcmludFBhZ2UoaGlkZGVuRWxlbWVudHM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGlkZGVuRWxlbWVudHMubmV4dChoaWRkZW5FbGVtZW50cyk7XG5cbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy53aW5kb3cucHJpbnQoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { inject, Injectable } from '@angular/core';
|
|
2
|
+
import { ScContactsService, ScUserService } from '@snabcentr/client-core';
|
|
3
|
+
import { BehaviorSubject, of, shareReplay, switchMap } from 'rxjs';
|
|
4
|
+
import { SC_HELP_NOTIFICATION_CLOSE } from '../providers/sc-help-notification-close';
|
|
5
|
+
import { SC_HELP_NOTIFICATION_LIMIT } from '../providers/sc-help-notification-limit';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
/**
|
|
8
|
+
* Сервис для отображения Push-уведомлений с контактами для помощи клиенту.
|
|
9
|
+
*/
|
|
10
|
+
export class ScHelpNotificationService {
|
|
11
|
+
/**
|
|
12
|
+
* Инициализирует экземпляр класса {@link ScHelpNotificationService}.
|
|
13
|
+
*/
|
|
14
|
+
constructor() {
|
|
15
|
+
/**
|
|
16
|
+
* Список контактов для показа в уведомлении.
|
|
17
|
+
*/
|
|
18
|
+
this.contactsShow = new BehaviorSubject([]);
|
|
19
|
+
/**
|
|
20
|
+
* Сервис для работы с контактными лицами.
|
|
21
|
+
*/
|
|
22
|
+
this.contactsService = inject(ScContactsService);
|
|
23
|
+
/**
|
|
24
|
+
* Максимальное количество отображаемых уведомлений.
|
|
25
|
+
*/
|
|
26
|
+
this.notificationLimit = inject(SC_HELP_NOTIFICATION_LIMIT);
|
|
27
|
+
/**
|
|
28
|
+
* Поток для закрытия уведомлений.
|
|
29
|
+
*/
|
|
30
|
+
this.close$ = inject(SC_HELP_NOTIFICATION_CLOSE);
|
|
31
|
+
/**
|
|
32
|
+
* Сервис для работы с пользователем.
|
|
33
|
+
*/
|
|
34
|
+
this.userService = inject(ScUserService);
|
|
35
|
+
/**
|
|
36
|
+
* Список контактов для показа в уведомлении.
|
|
37
|
+
*/
|
|
38
|
+
this.userHelpContacts = this.userService.getUserChange$().pipe(switchMap((user) => (user.isGuest ? of([]) : this.contactsService.getHelpContacts$({ phone: user.contacts.phone.value }))), shareReplay(1));
|
|
39
|
+
this.close$.subscribe(() => {
|
|
40
|
+
this.closeAllHelpNotification();
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Установить список контактов для показа в уведомлении.
|
|
45
|
+
*
|
|
46
|
+
* @param contacts Данные контактов.
|
|
47
|
+
*/
|
|
48
|
+
setShowContacts(...contacts) {
|
|
49
|
+
this.contactsShow.next(contacts.slice(0, this.notificationLimit));
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Возвращает список менеджеров для показа в уведомлении.
|
|
53
|
+
*/
|
|
54
|
+
getContactsShow$() {
|
|
55
|
+
return this.contactsShow.asObservable();
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Закрывает уведомление по номеру телефона.
|
|
59
|
+
*
|
|
60
|
+
* @param contact Контакт.
|
|
61
|
+
*/
|
|
62
|
+
closeHelpNotification(contact) {
|
|
63
|
+
this.contactsShow.next(this.contactsShow.getValue().filter((c) => c.id !== contact.id));
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Закрывает все уведомления.
|
|
67
|
+
*/
|
|
68
|
+
closeAllHelpNotification() {
|
|
69
|
+
this.contactsShow.next([]);
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Показать уведомление по номеру телефона.
|
|
73
|
+
*
|
|
74
|
+
* @param phone Номер телефона.
|
|
75
|
+
*/
|
|
76
|
+
helpNotificationByPhone(phone) {
|
|
77
|
+
this.contactsService.getHelpContacts$({ phone }).subscribe((contacts) => {
|
|
78
|
+
this.setShowContacts(...contacts);
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Показать уведомление по адресу электронной почты.
|
|
83
|
+
*
|
|
84
|
+
* @param email Адрес электронной почты.
|
|
85
|
+
*/
|
|
86
|
+
helpNotificationByEmail(email) {
|
|
87
|
+
this.contactsService.getHelpContacts$({ email }).subscribe((contacts) => {
|
|
88
|
+
this.setShowContacts(...contacts);
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScHelpNotificationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
92
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScHelpNotificationService, providedIn: 'root' }); }
|
|
93
|
+
}
|
|
94
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScHelpNotificationService, decorators: [{
|
|
95
|
+
type: Injectable,
|
|
96
|
+
args: [{
|
|
97
|
+
providedIn: 'root',
|
|
98
|
+
}]
|
|
99
|
+
}], ctorParameters: () => [] });
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtaGVscC1ub3RpZmljYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zZXJ2aWNlcy9zYy1oZWxwLW5vdGlmaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxpQkFBaUIsRUFBaUIsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBYyxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7QUFFckY7O0dBRUc7QUFJSCxNQUFNLE9BQU8seUJBQXlCO0lBa0NsQzs7T0FFRztJQUNIO1FBcENBOztXQUVHO1FBQ2MsaUJBQVksR0FBcUMsSUFBSSxlQUFlLENBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBRTNHOztXQUVHO1FBQ2Msb0JBQWUsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUU3RDs7V0FFRztRQUNjLHNCQUFpQixHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBRXhFOztXQUVHO1FBQ2MsV0FBTSxHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBRTdEOztXQUVHO1FBQ2MsZ0JBQVcsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFckQ7O1dBRUc7UUFDYSxxQkFBZ0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDLElBQUksQ0FDckUsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFDMUgsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNqQixDQUFDO1FBTUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxlQUFlLENBQUMsR0FBRyxRQUF5QjtRQUMvQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRDs7T0FFRztJQUNJLGdCQUFnQjtRQUNuQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxxQkFBcUIsQ0FBQyxPQUFzQjtRQUMvQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBRUQ7O09BRUc7SUFDSSx3QkFBd0I7UUFDM0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSx1QkFBdUIsQ0FBQyxLQUFhO1FBQ3hDLElBQUksQ0FBQyxlQUFlLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3BFLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksdUJBQXVCLENBQUMsS0FBYTtRQUN4QyxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNwRSxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOytHQS9GUSx5QkFBeUI7bUhBQXpCLHlCQUF5QixjQUZ0QixNQUFNOzs0RkFFVCx5QkFBeUI7a0JBSHJDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY0NvbnRhY3RzU2VydmljZSwgU2NJT3JnQ29udGFjdCwgU2NVc2VyU2VydmljZSB9IGZyb20gJ0BzbmFiY2VudHIvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZiwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBTQ19IRUxQX05PVElGSUNBVElPTl9DTE9TRSB9IGZyb20gJy4uL3Byb3ZpZGVycy9zYy1oZWxwLW5vdGlmaWNhdGlvbi1jbG9zZSc7XG5pbXBvcnQgeyBTQ19IRUxQX05PVElGSUNBVElPTl9MSU1JVCB9IGZyb20gJy4uL3Byb3ZpZGVycy9zYy1oZWxwLW5vdGlmaWNhdGlvbi1saW1pdCc7XG5cbi8qKlxuICog0KHQtdGA0LLQuNGBINC00LvRjyDQvtGC0L7QsdGA0LDQttC10L3QuNGPIFB1c2gt0YPQstC10LTQvtC80LvQtdC90LjQuSDRgSDQutC+0L3RgtCw0LrRgtCw0LzQuCDQtNC70Y8g0L/QvtC80L7RidC4INC60LvQuNC10L3RgtGDLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTY0hlbHBOb3RpZmljYXRpb25TZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiDQodC/0LjRgdC+0Log0LrQvtC90YLQsNC60YLQvtCyINC00LvRjyDQv9C+0LrQsNC30LAg0LIg0YPQstC10LTQvtC80LvQtdC90LjQuC5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRhY3RzU2hvdzogQmVoYXZpb3JTdWJqZWN0PFNjSU9yZ0NvbnRhY3RbXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNjSU9yZ0NvbnRhY3RbXT4oW10pO1xuXG4gICAgLyoqXG4gICAgICog0KHQtdGA0LLQuNGBINC00LvRjyDRgNCw0LHQvtGC0Ysg0YEg0LrQvtC90YLQsNC60YLQvdGL0LzQuCDQu9C40YbQsNC80LguXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb250YWN0c1NlcnZpY2UgPSBpbmplY3QoU2NDb250YWN0c1NlcnZpY2UpO1xuXG4gICAgLyoqXG4gICAgICog0JzQsNC60YHQuNC80LDQu9GM0L3QvtC1INC60L7Qu9C40YfQtdGB0YLQstC+INC+0YLQvtCx0YDQsNC20LDQtdC80YvRhSDRg9Cy0LXQtNC+0LzQu9C10L3QuNC5LlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbm90aWZpY2F0aW9uTGltaXQgPSBpbmplY3QoU0NfSEVMUF9OT1RJRklDQVRJT05fTElNSVQpO1xuXG4gICAgLyoqXG4gICAgICog0J/QvtGC0L7QuiDQtNC70Y8g0LfQsNC60YDRi9GC0LjRjyDRg9Cy0LXQtNC+0LzQu9C10L3QuNC5LlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2xvc2UkID0gaW5qZWN0KFNDX0hFTFBfTk9USUZJQ0FUSU9OX0NMT1NFKTtcblxuICAgIC8qKlxuICAgICAqINCh0LXRgNCy0LjRgSDQtNC70Y8g0YDQsNCx0L7RgtGLINGBINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC8LlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlclNlcnZpY2UgPSBpbmplY3QoU2NVc2VyU2VydmljZSk7XG5cbiAgICAvKipcbiAgICAgKiDQodC/0LjRgdC+0Log0LrQvtC90YLQsNC60YLQvtCyINC00LvRjyDQv9C+0LrQsNC30LAg0LIg0YPQstC10LTQvtC80LvQtdC90LjQuC5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgdXNlckhlbHBDb250YWN0cyA9IHRoaXMudXNlclNlcnZpY2UuZ2V0VXNlckNoYW5nZSQoKS5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKHVzZXIpID0+ICh1c2VyLmlzR3Vlc3QgPyBvZihbXSkgOiB0aGlzLmNvbnRhY3RzU2VydmljZS5nZXRIZWxwQ29udGFjdHMkKHsgcGhvbmU6IHVzZXIuY29udGFjdHMucGhvbmUudmFsdWUgfSkpKSxcbiAgICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICog0JjQvdC40YbQuNCw0LvQuNC30LjRgNGD0LXRgiDRjdC60LfQtdC80L/Qu9GP0YAg0LrQu9Cw0YHRgdCwIHtAbGluayBTY0hlbHBOb3RpZmljYXRpb25TZXJ2aWNlfS5cbiAgICAgKi9cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMuY2xvc2UkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlQWxsSGVscE5vdGlmaWNhdGlvbigpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQo9GB0YLQsNC90L7QstC40YLRjCDRgdC/0LjRgdC+0Log0LrQvtC90YLQsNC60YLQvtCyINC00LvRjyDQv9C+0LrQsNC30LAg0LIg0YPQstC10LTQvtC80LvQtdC90LjQuC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb250YWN0cyDQlNCw0L3QvdGL0LUg0LrQvtC90YLQsNC60YLQvtCyLlxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRTaG93Q29udGFjdHMoLi4uY29udGFjdHM6IFNjSU9yZ0NvbnRhY3RbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRhY3RzU2hvdy5uZXh0KGNvbnRhY3RzLnNsaWNlKDAsIHRoaXMubm90aWZpY2F0aW9uTGltaXQpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC+0Log0LzQtdC90LXQtNC20LXRgNC+0LIg0LTQu9GPINC/0L7QutCw0LfQsCDQsiDRg9Cy0LXQtNC+0LzQu9C10L3QuNC4LlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRDb250YWN0c1Nob3ckKCk6IE9ic2VydmFibGU8U2NJT3JnQ29udGFjdFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRhY3RzU2hvdy5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQl9Cw0LrRgNGL0LLQsNC10YIg0YPQstC10LTQvtC80LvQtdC90LjQtSDQv9C+INC90L7QvNC10YDRgyDRgtC10LvQtdGE0L7QvdCwLlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvbnRhY3Qg0JrQvtC90YLQsNC60YIuXG4gICAgICovXG4gICAgcHVibGljIGNsb3NlSGVscE5vdGlmaWNhdGlvbihjb250YWN0OiBTY0lPcmdDb250YWN0KTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGFjdHNTaG93Lm5leHQodGhpcy5jb250YWN0c1Nob3cuZ2V0VmFsdWUoKS5maWx0ZXIoKGMpID0+IGMuaWQgIT09IGNvbnRhY3QuaWQpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQl9Cw0LrRgNGL0LLQsNC10YIg0LLRgdC1INGD0LLQtdC00L7QvNC70LXQvdC40Y8uXG4gICAgICovXG4gICAgcHVibGljIGNsb3NlQWxsSGVscE5vdGlmaWNhdGlvbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250YWN0c1Nob3cubmV4dChbXSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0J/QvtC60LDQt9Cw0YLRjCDRg9Cy0LXQtNC+0LzQu9C10L3QuNC1INC/0L4g0L3QvtC80LXRgNGDINGC0LXQu9C10YTQvtC90LAuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcGhvbmUg0J3QvtC80LXRgCDRgtC10LvQtdGE0L7QvdCwLlxuICAgICAqL1xuICAgIHB1YmxpYyBoZWxwTm90aWZpY2F0aW9uQnlQaG9uZShwaG9uZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGFjdHNTZXJ2aWNlLmdldEhlbHBDb250YWN0cyQoeyBwaG9uZSB9KS5zdWJzY3JpYmUoKGNvbnRhY3RzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldFNob3dDb250YWN0cyguLi5jb250YWN0cyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCf0L7QutCw0LfQsNGC0Ywg0YPQstC10LTQvtC80LvQtdC90LjQtSDQv9C+INCw0LTRgNC10YHRgyDRjdC70LXQutGC0YDQvtC90L3QvtC5INC/0L7Rh9GC0YsuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZW1haWwg0JDQtNGA0LXRgSDRjdC70LXQutGC0YDQvtC90L3QvtC5INC/0L7Rh9GC0YsuXG4gICAgICovXG4gICAgcHVibGljIGhlbHBOb3RpZmljYXRpb25CeUVtYWlsKGVtYWlsOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250YWN0c1NlcnZpY2UuZ2V0SGVscENvbnRhY3RzJCh7IGVtYWlsIH0pLnN1YnNjcmliZSgoY29udGFjdHMpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0U2hvd0NvbnRhY3RzKC4uLmNvbnRhY3RzKTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './sc-share-dialog-data';
|
|
2
|
+
export * from './sc-share.service';
|
|
3
|
+
export * from './share-button/sc-share-button.component';
|
|
4
|
+
export * from './share-dialog/sc-share-dialog.component';
|
|
5
|
+
export * from './share-messengers-links/sc-share-messengers-links.component';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvc2hhcmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDhEQUE4RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zYy1zaGFyZS1kaWFsb2ctZGF0YSc7XG5leHBvcnQgKiBmcm9tICcuL3NjLXNoYXJlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZS1idXR0b24vc2Mtc2hhcmUtYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlLWRpYWxvZy9zYy1zaGFyZS1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmUtbWVzc2VuZ2Vycy1saW5rcy9zYy1zaGFyZS1tZXNzZW5nZXJzLWxpbmtzLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtc2hhcmUtZGlhbG9nLWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvc2hhcmUvc2Mtc2hhcmUtZGlhbG9nLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICog0JTQsNC90L3Ri9C1INC00LjQsNC70L7Qs9C+0LLQvtCz0L4g0L7QutC90LAgXCLQn9C+0LTQtdC70LjRgtGM0YHRj1wiLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNjU2hhcmVEaWFsb2dEYXRhIHtcbiAgICAvKipcbiAgICAgKiDQl9Cw0LPQvtC70L7QstC+0Log0YHRgdGL0LvQutC4LCDQutC+0YLQvtGA0L7QuSDQvdC10L7QsdGF0L7QtNC40LzQviDQv9C+0LTQtdC70LjRgtGM0YHRjy5cbiAgICAgKi9cbiAgICB0aXRsZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog0JDQsdGB0L7Qu9GO0YLQvdCw0Y8g0YHRgdGL0LvQutCwLCDQutC+0YLQvtGA0L7QuSDQvdC10L7QsdGF0L7QtNC40LzQviDQv9C+0LTQtdC70LjRgtGM0YHRjy5cbiAgICAgKi9cbiAgICBzaGFyZVVybDogc3RyaW5nO1xufVxuIl19
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { inject, Injectable } from '@angular/core';
|
|
2
|
+
import { TuiDialogService } from '@taiga-ui/core';
|
|
3
|
+
import { PolymorpheusComponent } from '@taiga-ui/polymorpheus';
|
|
4
|
+
import { ScShareDialogComponent } from './share-dialog/sc-share-dialog.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* Сервис открытия диалогового окна "Поделиться".
|
|
8
|
+
*/
|
|
9
|
+
export class ScShareService {
|
|
10
|
+
constructor() {
|
|
11
|
+
/**
|
|
12
|
+
* Сервис для работы с диалоговыми окнами.
|
|
13
|
+
*/
|
|
14
|
+
this.dialog = inject(TuiDialogService);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Открывает диалоговое окно "Поделиться".
|
|
18
|
+
*
|
|
19
|
+
* @param title Заголовок ссылки, которой необходимо поделиться.
|
|
20
|
+
* @param shareUrl Абсолютная ссылка, которой необходимо поделиться.
|
|
21
|
+
*/
|
|
22
|
+
openShareDialog(title, shareUrl) {
|
|
23
|
+
this.dialog
|
|
24
|
+
.open(new PolymorpheusComponent(ScShareDialogComponent), {
|
|
25
|
+
size: 'auto',
|
|
26
|
+
label: 'Поделиться',
|
|
27
|
+
data: { title, shareUrl },
|
|
28
|
+
})
|
|
29
|
+
.subscribe();
|
|
30
|
+
}
|
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScShareService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
32
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScShareService, providedIn: 'root' }); }
|
|
33
|
+
}
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScShareService, decorators: [{
|
|
35
|
+
type: Injectable,
|
|
36
|
+
args: [{
|
|
37
|
+
providedIn: 'root',
|
|
38
|
+
}]
|
|
39
|
+
}] });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtc2hhcmUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zaGFyZS9zYy1zaGFyZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRy9ELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOztBQUVsRjs7R0FFRztBQUlILE1BQU0sT0FBTyxjQUFjO0lBSDNCO1FBSUk7O1dBRUc7UUFDYyxXQUFNLEdBQXFCLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0tBaUJ4RTtJQWZHOzs7OztPQUtHO0lBQ0ksZUFBZSxDQUFDLEtBQWEsRUFBRSxRQUFnQjtRQUNsRCxJQUFJLENBQUMsTUFBTTthQUNOLElBQUksQ0FBQyxJQUFJLHFCQUFxQixDQUFDLHNCQUFzQixDQUFDLEVBQUU7WUFDckQsSUFBSSxFQUFFLE1BQU07WUFDWixLQUFLLEVBQUUsWUFBWTtZQUNuQixJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUE4QjtTQUN4RCxDQUFDO2FBQ0QsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQzsrR0FwQlEsY0FBYzttSEFBZCxjQUFjLGNBRlgsTUFBTTs7NEZBRVQsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFR1aURpYWxvZ1NlcnZpY2UgfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQgeyBQb2x5bW9ycGhldXNDb21wb25lbnQgfSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHsgU2NTaGFyZURpYWxvZ0RhdGEgfSBmcm9tICcuL3NjLXNoYXJlLWRpYWxvZy1kYXRhJztcbmltcG9ydCB7IFNjU2hhcmVEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL3NoYXJlLWRpYWxvZy9zYy1zaGFyZS1kaWFsb2cuY29tcG9uZW50JztcblxuLyoqXG4gKiDQodC10YDQstC40YEg0L7RgtC60YDRi9GC0LjRjyDQtNC40LDQu9C+0LPQvtCy0L7Qs9C+INC+0LrQvdCwIFwi0J/QvtC00LXQu9C40YLRjNGB0Y9cIi5cbiAqL1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2NTaGFyZVNlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqINCh0LXRgNCy0LjRgSDQtNC70Y8g0YDQsNCx0L7RgtGLINGBINC00LjQsNC70L7Qs9C+0LLRi9C80Lgg0L7QutC90LDQvNC4LlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nOiBUdWlEaWFsb2dTZXJ2aWNlID0gaW5qZWN0KFR1aURpYWxvZ1NlcnZpY2UpO1xuXG4gICAgLyoqXG4gICAgICog0J7RgtC60YDRi9Cy0LDQtdGCINC00LjQsNC70L7Qs9C+0LLQvtC1INC+0LrQvdC+IFwi0J/QvtC00LXQu9C40YLRjNGB0Y9cIi5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB0aXRsZSDQl9Cw0LPQvtC70L7QstC+0Log0YHRgdGL0LvQutC4LCDQutC+0YLQvtGA0L7QuSDQvdC10L7QsdGF0L7QtNC40LzQviDQv9C+0LTQtdC70LjRgtGM0YHRjy5cbiAgICAgKiBAcGFyYW0gc2hhcmVVcmwg0JDQsdGB0L7Qu9GO0YLQvdCw0Y8g0YHRgdGL0LvQutCwLCDQutC+0YLQvtGA0L7QuSDQvdC10L7QsdGF0L7QtNC40LzQviDQv9C+0LTQtdC70LjRgtGM0YHRjy5cbiAgICAgKi9cbiAgICBwdWJsaWMgb3BlblNoYXJlRGlhbG9nKHRpdGxlOiBzdHJpbmcsIHNoYXJlVXJsOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaWFsb2dcbiAgICAgICAgICAgIC5vcGVuKG5ldyBQb2x5bW9ycGhldXNDb21wb25lbnQoU2NTaGFyZURpYWxvZ0NvbXBvbmVudCksIHtcbiAgICAgICAgICAgICAgICBzaXplOiAnYXV0bycsXG4gICAgICAgICAgICAgICAgbGFiZWw6ICfQn9C+0LTQtdC70LjRgtGM0YHRjycsXG4gICAgICAgICAgICAgICAgZGF0YTogeyB0aXRsZSwgc2hhcmVVcmwgfSBzYXRpc2ZpZXMgU2NTaGFyZURpYWxvZ0RhdGEsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgIH1cbn1cbiJdfQ==
|