@snabcentr/client-ui 4.6.6 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (469) hide show
  1. package/fesm2022/snabcentr-client-ui.mjs +3362 -4046
  2. package/fesm2022/snabcentr-client-ui.mjs.map +1 -1
  3. package/package.json +35 -36
  4. package/release_notes.tmp +2 -14
  5. package/styles/taiga/variables.less +16 -17
  6. package/styles/tailwind/tailwind.scss +0 -8
  7. package/types/snabcentr-client-ui.d.ts +5704 -0
  8. package/accordion/index.d.ts +0 -3
  9. package/accordion/sc-accordion-content.directive.d.ts +0 -9
  10. package/accordion/sc-accordion.component.d.ts +0 -56
  11. package/accordion/sc-accordion.module.d.ts +0 -15
  12. package/auth/enums/auth-method.d.ts +0 -13
  13. package/auth/index.d.ts +0 -8
  14. package/auth/interfaces/index.d.ts +0 -2
  15. package/auth/interfaces/sc-bank-account-form-group.d.ts +0 -11
  16. package/auth/interfaces/sc-contact-form-group.d.ts +0 -10
  17. package/auth/sc-auth.module.d.ts +0 -27
  18. package/auth/sc-sign-in-form/sc-sign-in-form-by-email/sc-sign-in-form-by-email.component.d.ts +0 -55
  19. package/auth/sc-sign-in-form/sc-sign-in-form-by-phone/sc-sign-in-form-by-phone.component.d.ts +0 -45
  20. package/auth/sc-sign-in-form/sc-sign-in-form.component.d.ts +0 -53
  21. package/auth/sc-simple-sign-up-form/sc-simple-sign-up-form.component.d.ts +0 -113
  22. package/auth/sign-up-form/sc-sign-up-form.component.d.ts +0 -166
  23. package/banner/index.d.ts +0 -2
  24. package/banner/sc-banner.component.d.ts +0 -79
  25. package/banner/sc-banner.module.d.ts +0 -17
  26. package/brands-list/index.d.ts +0 -2
  27. package/brands-list/sc-brands-list.component.d.ts +0 -15
  28. package/brands-list/sc-brands-list.module.d.ts +0 -12
  29. package/cart/add-or-editing-cart-item-dialog/add-or-editing-cart-item-form/sc-add-or-editing-cart-item-form.component.d.ts +0 -98
  30. package/cart/add-or-editing-cart-item-dialog/index.d.ts +0 -2
  31. package/cart/add-or-editing-cart-item-dialog/sc-add-or-editing-cart-item-dialog.component.d.ts +0 -49
  32. package/cart/index.d.ts +0 -2
  33. package/cart/sc-cart-add-products-from-csv-dialog/sc-cart-add-products-from-csv-dialog.component.d.ts +0 -62
  34. package/catalog/catalog-filters/collapsible/sc-catalog-filter-collapsible.component.d.ts +0 -47
  35. package/catalog/catalog-filters/index.d.ts +0 -4
  36. package/catalog/catalog-filters/sc-catalog-filters.component.d.ts +0 -180
  37. package/catalog/catalog-filters/tokens/sc-catalog-products-filters.d.ts +0 -7
  38. package/catalog/catalog-filters/tokens/sc-catalog-show-products-recursively.d.ts +0 -5
  39. package/catalog/category-card/sc-category-card.component.d.ts +0 -76
  40. package/catalog/cost-with-discount/cost-with-discount.component.d.ts +0 -23
  41. package/catalog/download-price-list/sc-download-price-list.component.d.ts +0 -38
  42. package/catalog/hover-image-carousel/sc-hover-image-carousel.component.d.ts +0 -48
  43. package/catalog/index.d.ts +0 -15
  44. package/catalog/input-quantity/sc-input-quantity.component.d.ts +0 -82
  45. package/catalog/notify-when-in-stock-dialog/index.d.ts +0 -2
  46. package/catalog/notify-when-in-stock-dialog/sc-notify-when-in-stock-dialog.component.d.ts +0 -90
  47. package/catalog/notify-when-in-stock-dialog/sc-product-in-all-warehouses.pipe.d.ts +0 -22
  48. package/catalog/price-card/sc-price-card.component.d.ts +0 -18
  49. package/catalog/price-card-inline/sc-price-card-inline.component.d.ts +0 -10
  50. package/catalog/price-history/sc-price-history.component.d.ts +0 -88
  51. package/catalog/price-list-pagination/sc-price-list-pagination.component.d.ts +0 -40
  52. package/catalog/price-warehouse-stock/sc-price-warehouse-stock.component.d.ts +0 -47
  53. package/catalog/sc-catalog.module.d.ts +0 -29
  54. package/catalog/sc-favorite-button/sc-favorite-button.component.d.ts +0 -25
  55. package/catalog/seo-tags/sc-seo-tags.component.d.ts +0 -20
  56. package/configurators/index.d.ts +0 -3
  57. package/configurators/models/index.d.ts +0 -3
  58. package/configurators/models/sandwich/sc-i-configurator-search-product-sandwich.d.ts +0 -22
  59. package/configurators/models/sandwich/sc-i-sandwich-settings.d.ts +0 -18
  60. package/configurators/models/sandwich_m2/sc-i-sandwich-m2-settings.d.ts +0 -18
  61. package/configurators/sandwich/index.d.ts +0 -3
  62. package/configurators/sandwich/sandwich-skeleton/sc-sandwich-skeleton.component.d.ts +0 -8
  63. package/configurators/sandwich/sc-i-new-cart-item-sandwich.d.ts +0 -14
  64. package/configurators/sandwich/sc-sandwich.component.d.ts +0 -182
  65. package/configurators/sandwich_m2/index.d.ts +0 -4
  66. package/configurators/sandwich_m2/sandwich-m2-skeleton/sc-sandwich-m2-skeleton.component.d.ts +0 -8
  67. package/configurators/sandwich_m2/sc-i-new-cart-item-sandwich-m2.d.ts +0 -23
  68. package/configurators/sandwich_m2/sc-sandwich-m2-item-submit-state.d.ts +0 -13
  69. package/configurators/sandwich_m2/sc-sandwich-m2.component.d.ts +0 -267
  70. package/contacts/add-contact-dialog/sc-add-contact-dialog.component.d.ts +0 -49
  71. package/contacts/contacts-accordion/sc-contacts-accordion.component.d.ts +0 -23
  72. package/contacts/index.d.ts +0 -7
  73. package/contacts/manager-card/sc-manager-card.component.d.ts +0 -22
  74. package/contacts/manager-card-push/sc-manager-card-push.component.d.ts +0 -18
  75. package/contacts/new-contact-form/sc-new-contact-form.component.d.ts +0 -28
  76. package/contacts/sc-contacts.module.d.ts +0 -27
  77. package/contacts/tokens/index.d.ts +0 -2
  78. package/contacts/tokens/sc-manager-qr-handler.token.d.ts +0 -6
  79. package/contacts/tokens/sc-show-help-notification-in-phone-input.token.d.ts +0 -5
  80. package/contragents/add-contragent-bank-account-dialog/sc-add-contragent-bank-account-dialog.component.d.ts +0 -49
  81. package/contragents/add-contragent-dialog/sc-add-contragent-dialog.component.d.ts +0 -158
  82. package/contragents/contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component.d.ts +0 -62
  83. package/contragents/contragents-accordion/sc-contragents-accordion.component.d.ts +0 -49
  84. package/contragents/index.d.ts +0 -7
  85. package/contragents/new-contragent-bank-account-form/sc-new-contragent-bank-account-form.component.d.ts +0 -64
  86. package/contragents/new-contragent-form/sc-new-contragent-form.component.d.ts +0 -119
  87. package/contragents/sc-contragents.module.d.ts +0 -26
  88. package/delivery-address/add-delivery-address-dialog/sc-add-delivery-address-dialog.component.d.ts +0 -141
  89. package/delivery-address/delivery-address-accordion/delivery-address-accordion-item/sc-delivery-address-accordion-item.component.d.ts +0 -50
  90. package/delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component.d.ts +0 -49
  91. package/delivery-address/index.d.ts +0 -4
  92. package/delivery-address/sc-delivery-address.module.d.ts +0 -25
  93. package/dialogs/index.d.ts +0 -1
  94. package/dialogs/sc-resource-preview/sc-resource-preview.component.d.ts +0 -42
  95. package/directives/abstract-price-card/abstract-sc-price-card.directive.d.ts +0 -136
  96. package/directives/index.d.ts +0 -9
  97. package/directives/links/index.d.ts +0 -4
  98. package/directives/links/sc-email-link.directive.d.ts +0 -25
  99. package/directives/links/sc-link-location.d.ts +0 -5
  100. package/directives/links/sc-links.d.ts +0 -7
  101. package/directives/links/sc-tel-link.directive.d.ts +0 -40
  102. package/directives/next-input-focus/sc-next-input-focus.directive.d.ts +0 -27
  103. package/directives/next-input-focus/sc-next-input-focus.module.d.ts +0 -10
  104. package/directives/print/sc-print.directive.d.ts +0 -21
  105. package/directives/sc-date-value-transformer.directive.d.ts +0 -8
  106. package/directives/sc-focus-first-invalid-field.directive.d.ts +0 -30
  107. package/directives/select-on-focusin/sc-select-on-focusin.directive.d.ts +0 -14
  108. package/directives/terminal-link/sc-terminal-link.directive.d.ts +0 -34
  109. package/error-handler/consts/error-change-handler.providers.d.ts +0 -6
  110. package/error-handler/error-block-status/error-block-status.component.d.ts +0 -45
  111. package/error-handler/index.d.ts +0 -4
  112. package/error-handler/interfaces/i-block-error.d.ts +0 -17
  113. package/error-handler/sc-error-handler.component.d.ts +0 -40
  114. package/esm2022/accordion/index.mjs +0 -4
  115. package/esm2022/accordion/sc-accordion-content.directive.mjs +0 -17
  116. package/esm2022/accordion/sc-accordion.component.mjs +0 -92
  117. package/esm2022/accordion/sc-accordion.module.mjs +0 -26
  118. package/esm2022/auth/enums/auth-method.mjs +0 -15
  119. package/esm2022/auth/index.mjs +0 -9
  120. package/esm2022/auth/interfaces/index.mjs +0 -3
  121. package/esm2022/auth/interfaces/sc-bank-account-form-group.mjs +0 -2
  122. package/esm2022/auth/interfaces/sc-contact-form-group.mjs +0 -2
  123. package/esm2022/auth/sc-auth.module.mjs +0 -103
  124. package/esm2022/auth/sc-sign-in-form/sc-sign-in-form-by-email/sc-sign-in-form-by-email.component.mjs +0 -100
  125. package/esm2022/auth/sc-sign-in-form/sc-sign-in-form-by-phone/sc-sign-in-form-by-phone.component.mjs +0 -81
  126. package/esm2022/auth/sc-sign-in-form/sc-sign-in-form.component.mjs +0 -89
  127. package/esm2022/auth/sc-simple-sign-up-form/sc-simple-sign-up-form.component.mjs +0 -203
  128. package/esm2022/auth/sign-up-form/sc-sign-up-form.component.mjs +0 -334
  129. package/esm2022/banner/index.mjs +0 -3
  130. package/esm2022/banner/sc-banner.component.mjs +0 -131
  131. package/esm2022/banner/sc-banner.module.mjs +0 -29
  132. package/esm2022/brands-list/index.mjs +0 -3
  133. package/esm2022/brands-list/sc-brands-list.component.mjs +0 -24
  134. package/esm2022/brands-list/sc-brands-list.module.mjs +0 -22
  135. package/esm2022/cart/add-or-editing-cart-item-dialog/add-or-editing-cart-item-form/sc-add-or-editing-cart-item-form.component.mjs +0 -229
  136. package/esm2022/cart/add-or-editing-cart-item-dialog/index.mjs +0 -3
  137. package/esm2022/cart/add-or-editing-cart-item-dialog/sc-add-or-editing-cart-item-dialog.component.mjs +0 -75
  138. package/esm2022/cart/index.mjs +0 -3
  139. package/esm2022/cart/sc-cart-add-products-from-csv-dialog/sc-cart-add-products-from-csv-dialog.component.mjs +0 -110
  140. package/esm2022/catalog/catalog-filters/collapsible/sc-catalog-filter-collapsible.component.mjs +0 -59
  141. package/esm2022/catalog/catalog-filters/index.mjs +0 -5
  142. package/esm2022/catalog/catalog-filters/sc-catalog-filters.component.mjs +0 -402
  143. package/esm2022/catalog/catalog-filters/tokens/sc-catalog-products-filters.mjs +0 -10
  144. package/esm2022/catalog/catalog-filters/tokens/sc-catalog-show-products-recursively.mjs +0 -6
  145. package/esm2022/catalog/category-card/sc-category-card.component.mjs +0 -102
  146. package/esm2022/catalog/cost-with-discount/cost-with-discount.component.mjs +0 -39
  147. package/esm2022/catalog/download-price-list/sc-download-price-list.component.mjs +0 -56
  148. package/esm2022/catalog/hover-image-carousel/sc-hover-image-carousel.component.mjs +0 -76
  149. package/esm2022/catalog/index.mjs +0 -16
  150. package/esm2022/catalog/input-quantity/sc-input-quantity.component.mjs +0 -189
  151. package/esm2022/catalog/notify-when-in-stock-dialog/index.mjs +0 -3
  152. package/esm2022/catalog/notify-when-in-stock-dialog/sc-notify-when-in-stock-dialog.component.mjs +0 -173
  153. package/esm2022/catalog/notify-when-in-stock-dialog/sc-product-in-all-warehouses.pipe.mjs +0 -35
  154. package/esm2022/catalog/price-card/sc-price-card.component.mjs +0 -73
  155. package/esm2022/catalog/price-card-inline/sc-price-card-inline.component.mjs +0 -56
  156. package/esm2022/catalog/price-history/sc-price-history.component.mjs +0 -140
  157. package/esm2022/catalog/price-list-pagination/sc-price-list-pagination.component.mjs +0 -65
  158. package/esm2022/catalog/price-warehouse-stock/sc-price-warehouse-stock.component.mjs +0 -61
  159. package/esm2022/catalog/sc-catalog.module.mjs +0 -126
  160. package/esm2022/catalog/sc-favorite-button/sc-favorite-button.component.mjs +0 -42
  161. package/esm2022/catalog/seo-tags/sc-seo-tags.component.mjs +0 -25
  162. package/esm2022/configurators/index.mjs +0 -4
  163. package/esm2022/configurators/models/index.mjs +0 -4
  164. package/esm2022/configurators/models/sandwich/sc-i-configurator-search-product-sandwich.mjs +0 -2
  165. package/esm2022/configurators/models/sandwich/sc-i-sandwich-settings.mjs +0 -2
  166. package/esm2022/configurators/models/sandwich_m2/sc-i-sandwich-m2-settings.mjs +0 -2
  167. package/esm2022/configurators/sandwich/index.mjs +0 -4
  168. package/esm2022/configurators/sandwich/sandwich-skeleton/sc-sandwich-skeleton.component.mjs +0 -14
  169. package/esm2022/configurators/sandwich/sc-i-new-cart-item-sandwich.mjs +0 -2
  170. package/esm2022/configurators/sandwich/sc-sandwich.component.mjs +0 -382
  171. package/esm2022/configurators/sandwich_m2/index.mjs +0 -5
  172. package/esm2022/configurators/sandwich_m2/sandwich-m2-skeleton/sc-sandwich-m2-skeleton.component.mjs +0 -14
  173. package/esm2022/configurators/sandwich_m2/sc-i-new-cart-item-sandwich-m2.mjs +0 -2
  174. package/esm2022/configurators/sandwich_m2/sc-sandwich-m2-item-submit-state.mjs +0 -5
  175. package/esm2022/configurators/sandwich_m2/sc-sandwich-m2.component.mjs +0 -561
  176. package/esm2022/contacts/add-contact-dialog/sc-add-contact-dialog.component.mjs +0 -91
  177. package/esm2022/contacts/contacts-accordion/sc-contacts-accordion.component.mjs +0 -37
  178. package/esm2022/contacts/index.mjs +0 -8
  179. package/esm2022/contacts/manager-card/sc-manager-card.component.mjs +0 -58
  180. package/esm2022/contacts/manager-card-push/sc-manager-card-push.component.mjs +0 -28
  181. package/esm2022/contacts/new-contact-form/sc-new-contact-form.component.mjs +0 -37
  182. package/esm2022/contacts/sc-contacts.module.mjs +0 -89
  183. package/esm2022/contacts/tokens/index.mjs +0 -3
  184. package/esm2022/contacts/tokens/sc-manager-qr-handler.token.mjs +0 -25
  185. package/esm2022/contacts/tokens/sc-show-help-notification-in-phone-input.token.mjs +0 -9
  186. package/esm2022/contragents/add-contragent-bank-account-dialog/sc-add-contragent-bank-account-dialog.component.mjs +0 -81
  187. package/esm2022/contragents/add-contragent-dialog/sc-add-contragent-dialog.component.mjs +0 -266
  188. package/esm2022/contragents/contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component.mjs +0 -74
  189. package/esm2022/contragents/contragents-accordion/sc-contragents-accordion.component.mjs +0 -68
  190. package/esm2022/contragents/index.mjs +0 -8
  191. package/esm2022/contragents/new-contragent-bank-account-form/sc-new-contragent-bank-account-form.component.mjs +0 -72
  192. package/esm2022/contragents/new-contragent-form/sc-new-contragent-form.component.mjs +0 -224
  193. package/esm2022/contragents/sc-contragents.module.mjs +0 -115
  194. package/esm2022/delivery-address/add-delivery-address-dialog/sc-add-delivery-address-dialog.component.mjs +0 -248
  195. package/esm2022/delivery-address/delivery-address-accordion/delivery-address-accordion-item/sc-delivery-address-accordion-item.component.mjs +0 -60
  196. package/esm2022/delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component.mjs +0 -68
  197. package/esm2022/delivery-address/index.mjs +0 -5
  198. package/esm2022/delivery-address/sc-delivery-address.module.mjs +0 -96
  199. package/esm2022/dialogs/index.mjs +0 -2
  200. package/esm2022/dialogs/sc-resource-preview/sc-resource-preview.component.mjs +0 -73
  201. package/esm2022/directives/abstract-price-card/abstract-sc-price-card.directive.mjs +0 -170
  202. package/esm2022/directives/index.mjs +0 -10
  203. package/esm2022/directives/links/index.mjs +0 -5
  204. package/esm2022/directives/links/sc-email-link.directive.mjs +0 -49
  205. package/esm2022/directives/links/sc-link-location.mjs +0 -2
  206. package/esm2022/directives/links/sc-links.mjs +0 -8
  207. package/esm2022/directives/links/sc-tel-link.directive.mjs +0 -79
  208. package/esm2022/directives/next-input-focus/sc-next-input-focus.directive.mjs +0 -70
  209. package/esm2022/directives/next-input-focus/sc-next-input-focus.module.mjs +0 -19
  210. package/esm2022/directives/print/sc-print.directive.mjs +0 -36
  211. package/esm2022/directives/sc-date-value-transformer.directive.mjs +0 -30
  212. package/esm2022/directives/sc-focus-first-invalid-field.directive.mjs +0 -85
  213. package/esm2022/directives/select-on-focusin/sc-select-on-focusin.directive.mjs +0 -31
  214. package/esm2022/directives/terminal-link/sc-terminal-link.directive.mjs +0 -69
  215. package/esm2022/error-handler/consts/error-change-handler.providers.mjs +0 -10
  216. package/esm2022/error-handler/error-block-status/error-block-status.component.mjs +0 -88
  217. package/esm2022/error-handler/index.mjs +0 -5
  218. package/esm2022/error-handler/interfaces/i-block-error.mjs +0 -2
  219. package/esm2022/error-handler/sc-error-handler.component.mjs +0 -58
  220. package/esm2022/feedback/feedback-form/sc-feedback-form.component.mjs +0 -344
  221. package/esm2022/feedback/gratitude/sc-gratitude.component.mjs +0 -32
  222. package/esm2022/feedback/index.mjs +0 -4
  223. package/esm2022/feedback/interfaces/index.mjs +0 -2
  224. package/esm2022/feedback/interfaces/sc-feedback-form-config.mjs +0 -2
  225. package/esm2022/files/directives/index.mjs +0 -3
  226. package/esm2022/files/directives/tree-top.directive.mjs +0 -63
  227. package/esm2022/files/directives/tree.directive.mjs +0 -47
  228. package/esm2022/files/file-tree-item/file-tree-item.component.mjs +0 -18
  229. package/esm2022/files/files-and-documents/files-and-documents.component.mjs +0 -61
  230. package/esm2022/files/files-and-documents.module.mjs +0 -28
  231. package/esm2022/files/index.mjs +0 -6
  232. package/esm2022/files/interfaces/tree-node.mjs +0 -2
  233. package/esm2022/files/services/index.mjs +0 -3
  234. package/esm2022/files/services/tree-icon.service.mjs +0 -49
  235. package/esm2022/files/services/tree-loader.service.mjs +0 -62
  236. package/esm2022/form-fields/addresses-selection-field/sc-addresses-selection-field.component.mjs +0 -156
  237. package/esm2022/form-fields/form-fields.module.mjs +0 -66
  238. package/esm2022/form-fields/index.mjs +0 -4
  239. package/esm2022/form-fields/suggestion-field/sc-suggestion-field.component.mjs +0 -174
  240. package/esm2022/icons/index.mjs +0 -2
  241. package/esm2022/icons/sc-client-ui-icons-name.mjs +0 -99
  242. package/esm2022/loader/index.mjs +0 -2
  243. package/esm2022/loader/sc-i-loader.mjs +0 -2
  244. package/esm2022/masks/index.mjs +0 -8
  245. package/esm2022/masks/sc-account-number-mask.mjs +0 -7
  246. package/esm2022/masks/sc-bic-mask.mjs +0 -7
  247. package/esm2022/masks/sc-correspondent-account-mask.mjs +0 -7
  248. package/esm2022/masks/sc-inn-mask.mjs +0 -13
  249. package/esm2022/masks/sc-kpp-mask.mjs +0 -7
  250. package/esm2022/masks/sc-okpo-mask.mjs +0 -13
  251. package/esm2022/masks/sc-phone-verification-code-mask.mjs +0 -7
  252. package/esm2022/methods/index.mjs +0 -2
  253. package/esm2022/methods/sc-get-current-route.mjs +0 -14
  254. package/esm2022/models/i-sc-image.mjs +0 -2
  255. package/esm2022/models/index.mjs +0 -2
  256. package/esm2022/news/index.mjs +0 -4
  257. package/esm2022/news/news-card/sc-news-card.component.mjs +0 -34
  258. package/esm2022/news/news-card-skeleton/sc-news-card-skeleton.component.mjs +0 -31
  259. package/esm2022/news/sc-news.module.mjs +0 -26
  260. package/esm2022/noindex-wrapper/directives/index.mjs +0 -2
  261. package/esm2022/noindex-wrapper/directives/sc-noindex.directive.mjs +0 -58
  262. package/esm2022/noindex-wrapper/index.mjs +0 -3
  263. package/esm2022/noindex-wrapper/sc-noindex-wrapper.component.mjs +0 -18
  264. package/esm2022/order/directives/index.mjs +0 -3
  265. package/esm2022/order/directives/sc-order-accessor.directive.mjs +0 -28
  266. package/esm2022/order/directives/sc-order-options.mjs +0 -11
  267. package/esm2022/order/draft/sc-draft.component.mjs +0 -118
  268. package/esm2022/order/index.mjs +0 -10
  269. package/esm2022/order/models/sc-i-cart-items-by-direction.mjs +0 -22
  270. package/esm2022/order/order-item/sc-order-item.component.mjs +0 -108
  271. package/esm2022/order/order-items-list/sc-order-items-list.component.mjs +0 -208
  272. package/esm2022/order/order-items-list-by-directions/sc-order-items-list-by-directions.component.mjs +0 -75
  273. package/esm2022/order/order-items-list-by-stock/sc-order-items-list-by-stock.component.mjs +0 -75
  274. package/esm2022/order/sc-order.module.mjs +0 -52
  275. package/esm2022/order/sc-payment-status/sc-payment-status.component.mjs +0 -35
  276. package/esm2022/pages/frequently-asked-questions/sc-frequently-asked-questions.component.mjs +0 -49
  277. package/esm2022/pages/frequently-asked-questions/sc-page-size-options.mjs +0 -8
  278. package/esm2022/pages/frequently-asked-questions-group-selector/sc-frequently-asked-questions-group-selector.component.mjs +0 -59
  279. package/esm2022/pages/frequently-asked-questions-with-groups/sc-frequently-asked-questions-with-groups.component.mjs +0 -107
  280. package/esm2022/pages/index.mjs +0 -7
  281. package/esm2022/pages/personal-data-processing-policy/sc-personal-data-processing-policy.component.mjs +0 -46
  282. package/esm2022/pages/privacy-policy/sc-privacy-policy.component.mjs +0 -30
  283. package/esm2022/pages/public-offer/sc-public-offer.component.mjs +0 -50
  284. package/esm2022/pipes/index.mjs +0 -3
  285. package/esm2022/pipes/sc-format-date.mjs +0 -33
  286. package/esm2022/pipes/sc-phone-format.mjs +0 -44
  287. package/esm2022/profile/index.mjs +0 -3
  288. package/esm2022/profile/sc-profile-accordions-content/sc-profile-accordions-content.component.mjs +0 -174
  289. package/esm2022/profile/sc-profile.module.mjs +0 -73
  290. package/esm2022/providers/cleanup-recaptcha-artifacts.mjs +0 -30
  291. package/esm2022/providers/date-value-transformer/index.mjs +0 -4
  292. package/esm2022/providers/date-value-transformer/sc-date-value-transformer-types.mjs +0 -2
  293. package/esm2022/providers/date-value-transformer/sc-date-value-transformer-with-end-time.mjs +0 -26
  294. package/esm2022/providers/date-value-transformer/sc-date-value-transformer-with-start-time.mjs +0 -37
  295. package/esm2022/providers/index.mjs +0 -17
  296. package/esm2022/providers/sc-allow-select-terminated.mjs +0 -8
  297. package/esm2022/providers/sc-banner-duration.mjs +0 -8
  298. package/esm2022/providers/sc-country-ids.mjs +0 -8
  299. package/esm2022/providers/sc-date-formatter.mjs +0 -15
  300. package/esm2022/providers/sc-date-value-transformer.mjs +0 -12
  301. package/esm2022/providers/sc-debounce-time-default.mjs +0 -9
  302. package/esm2022/providers/sc-dialog-service.providers.mjs +0 -6
  303. package/esm2022/providers/sc-help-notification-close.mjs +0 -9
  304. package/esm2022/providers/sc-help-notification-limit.mjs +0 -8
  305. package/esm2022/providers/sc-hidden-print-elements.token.mjs +0 -10
  306. package/esm2022/providers/sc-max-files-in-form-input.mjs +0 -8
  307. package/esm2022/providers/sc-notify-when-in-stock-required-fields.mjs +0 -8
  308. package/esm2022/providers/sc-page-size-options.mjs +0 -8
  309. package/esm2022/providers/sc-user-providers.mjs +0 -38
  310. package/esm2022/providers/sc-verification-code-timeout.mjs +0 -8
  311. package/esm2022/public-api.mjs +0 -35
  312. package/esm2022/qrcode/index.mjs +0 -3
  313. package/esm2022/qrcode/qrcode-dialog/sc-qrcode-dialog.component.mjs +0 -58
  314. package/esm2022/qrcode/sc-qrcode.module.mjs +0 -25
  315. package/esm2022/samples/index.mjs +0 -5
  316. package/esm2022/samples/interfaces/index.mjs +0 -3
  317. package/esm2022/samples/interfaces/sc-i-preview-sample.mjs +0 -2
  318. package/esm2022/samples/interfaces/sc-preview-mosquito-config.mjs +0 -2
  319. package/esm2022/samples/preview-sample/sc-preview-sample.component.mjs +0 -42
  320. package/esm2022/samples/sc-preview-samples-mosquito/sc-preview-samples-mosquito.component.mjs +0 -63
  321. package/esm2022/samples/sc-sample.module.mjs +0 -66
  322. package/esm2022/services/index.mjs +0 -3
  323. package/esm2022/services/print.service.mjs +0 -49
  324. package/esm2022/services/sc-help-notification.service.mjs +0 -100
  325. package/esm2022/share-button/index.mjs +0 -3
  326. package/esm2022/share-button/sc-share-button.component.mjs +0 -35
  327. package/esm2022/share-button/sc-share-button.module.mjs +0 -22
  328. package/esm2022/snabcentr-client-ui.mjs +0 -5
  329. package/esm2022/user/index.mjs +0 -6
  330. package/esm2022/user/reset-user-password/sc-reset-user-password.component.mjs +0 -74
  331. package/esm2022/user/sc-user.module.mjs +0 -86
  332. package/esm2022/user/update-user-info-dialog/sc-update-user-info-dialog.component.mjs +0 -121
  333. package/esm2022/user/user-managers/sc-user-managers.component.mjs +0 -40
  334. package/esm2022/user/user-phone-approve-dialog/sc-user-phone-approve-dialog.component.mjs +0 -105
  335. package/esm2022/validators/index.mjs +0 -7
  336. package/esm2022/validators/sc-at-least-one-required-validator.mjs +0 -25
  337. package/esm2022/validators/sc-bic-validator.mjs +0 -10
  338. package/esm2022/validators/sc-correspondent-account-validator.mjs +0 -10
  339. package/esm2022/validators/sc-password-confirm-matching-validator.mjs +0 -17
  340. package/esm2022/validators/sc-phone-validator.mjs +0 -14
  341. package/esm2022/validators/step-validator.mjs +0 -18
  342. package/esm2022/verification/index.mjs +0 -3
  343. package/esm2022/verification/sc-verification.module.mjs +0 -86
  344. package/esm2022/verification/verification-phone-check-form/sc-verification-phone-check-form.component.mjs +0 -259
  345. package/feedback/feedback-form/sc-feedback-form.component.d.ts +0 -163
  346. package/feedback/gratitude/sc-gratitude.component.d.ts +0 -20
  347. package/feedback/index.d.ts +0 -3
  348. package/feedback/interfaces/index.d.ts +0 -1
  349. package/feedback/interfaces/sc-feedback-form-config.d.ts +0 -23
  350. package/files/directives/index.d.ts +0 -2
  351. package/files/directives/tree-top.directive.d.ts +0 -33
  352. package/files/directives/tree.directive.d.ts +0 -35
  353. package/files/file-tree-item/file-tree-item.component.d.ts +0 -9
  354. package/files/files-and-documents/files-and-documents.component.d.ts +0 -27
  355. package/files/files-and-documents.module.d.ts +0 -17
  356. package/files/index.d.ts +0 -5
  357. package/files/interfaces/tree-node.d.ts +0 -29
  358. package/files/services/index.d.ts +0 -2
  359. package/files/services/tree-icon.service.d.ts +0 -23
  360. package/files/services/tree-loader.service.d.ts +0 -43
  361. package/form-fields/addresses-selection-field/sc-addresses-selection-field.component.d.ts +0 -78
  362. package/form-fields/form-fields.module.d.ts +0 -18
  363. package/form-fields/index.d.ts +0 -3
  364. package/form-fields/suggestion-field/sc-suggestion-field.component.d.ts +0 -73
  365. package/icons/index.d.ts +0 -1
  366. package/icons/sc-client-ui-icons-name.d.ts +0 -4
  367. package/index.d.ts +0 -5
  368. package/loader/index.d.ts +0 -1
  369. package/loader/sc-i-loader.d.ts +0 -9
  370. package/masks/index.d.ts +0 -7
  371. package/masks/sc-account-number-mask.d.ts +0 -5
  372. package/masks/sc-bic-mask.d.ts +0 -5
  373. package/masks/sc-correspondent-account-mask.d.ts +0 -5
  374. package/masks/sc-inn-mask.d.ts +0 -9
  375. package/masks/sc-kpp-mask.d.ts +0 -5
  376. package/masks/sc-okpo-mask.d.ts +0 -9
  377. package/masks/sc-phone-verification-code-mask.d.ts +0 -5
  378. package/methods/index.d.ts +0 -1
  379. package/methods/sc-get-current-route.d.ts +0 -8
  380. package/models/i-sc-image.d.ts +0 -17
  381. package/models/index.d.ts +0 -1
  382. package/news/index.d.ts +0 -3
  383. package/news/news-card/sc-news-card.component.d.ts +0 -22
  384. package/news/news-card-skeleton/sc-news-card-skeleton.component.d.ts +0 -16
  385. package/news/sc-news.module.d.ts +0 -16
  386. package/noindex-wrapper/directives/index.d.ts +0 -1
  387. package/noindex-wrapper/directives/sc-noindex.directive.d.ts +0 -29
  388. package/noindex-wrapper/index.d.ts +0 -2
  389. package/noindex-wrapper/sc-noindex-wrapper.component.d.ts +0 -9
  390. package/order/directives/index.d.ts +0 -2
  391. package/order/directives/sc-order-accessor.directive.d.ts +0 -13
  392. package/order/directives/sc-order-options.d.ts +0 -14
  393. package/order/draft/sc-draft.component.d.ts +0 -63
  394. package/order/index.d.ts +0 -9
  395. package/order/models/sc-i-cart-items-by-direction.d.ts +0 -25
  396. package/order/order-item/sc-order-item.component.d.ts +0 -39
  397. package/order/order-items-list/sc-order-items-list.component.d.ts +0 -109
  398. package/order/order-items-list-by-directions/sc-order-items-list-by-directions.component.d.ts +0 -58
  399. package/order/order-items-list-by-stock/sc-order-items-list-by-stock.component.d.ts +0 -55
  400. package/order/sc-order.module.d.ts +0 -18
  401. package/order/sc-payment-status/sc-payment-status.component.d.ts +0 -25
  402. package/pages/frequently-asked-questions/sc-frequently-asked-questions.component.d.ts +0 -22
  403. package/pages/frequently-asked-questions/sc-page-size-options.d.ts +0 -5
  404. package/pages/frequently-asked-questions-group-selector/sc-frequently-asked-questions-group-selector.component.d.ts +0 -28
  405. package/pages/frequently-asked-questions-with-groups/sc-frequently-asked-questions-with-groups.component.d.ts +0 -79
  406. package/pages/index.d.ts +0 -6
  407. package/pages/personal-data-processing-policy/sc-personal-data-processing-policy.component.d.ts +0 -17
  408. package/pages/privacy-policy/sc-privacy-policy.component.d.ts +0 -17
  409. package/pages/public-offer/sc-public-offer.component.d.ts +0 -22
  410. package/pipes/index.d.ts +0 -2
  411. package/pipes/sc-format-date.d.ts +0 -20
  412. package/pipes/sc-phone-format.d.ts +0 -21
  413. package/profile/index.d.ts +0 -2
  414. package/profile/sc-profile-accordions-content/sc-profile-accordions-content.component.d.ts +0 -126
  415. package/profile/sc-profile.module.d.ts +0 -23
  416. package/providers/cleanup-recaptcha-artifacts.d.ts +0 -7
  417. package/providers/date-value-transformer/index.d.ts +0 -3
  418. package/providers/date-value-transformer/sc-date-value-transformer-types.d.ts +0 -9
  419. package/providers/date-value-transformer/sc-date-value-transformer-with-end-time.d.ts +0 -16
  420. package/providers/date-value-transformer/sc-date-value-transformer-with-start-time.d.ts +0 -22
  421. package/providers/index.d.ts +0 -16
  422. package/providers/sc-allow-select-terminated.d.ts +0 -5
  423. package/providers/sc-banner-duration.d.ts +0 -5
  424. package/providers/sc-country-ids.d.ts +0 -5
  425. package/providers/sc-date-formatter.d.ts +0 -6
  426. package/providers/sc-date-value-transformer.d.ts +0 -5
  427. package/providers/sc-debounce-time-default.d.ts +0 -5
  428. package/providers/sc-dialog-service.providers.d.ts +0 -45
  429. package/providers/sc-help-notification-close.d.ts +0 -6
  430. package/providers/sc-help-notification-limit.d.ts +0 -5
  431. package/providers/sc-hidden-print-elements.token.d.ts +0 -6
  432. package/providers/sc-max-files-in-form-input.d.ts +0 -5
  433. package/providers/sc-notify-when-in-stock-required-fields.d.ts +0 -5
  434. package/providers/sc-page-size-options.d.ts +0 -5
  435. package/providers/sc-user-providers.d.ts +0 -21
  436. package/providers/sc-verification-code-timeout.d.ts +0 -5
  437. package/public-api.d.ts +0 -34
  438. package/qrcode/index.d.ts +0 -2
  439. package/qrcode/qrcode-dialog/sc-qrcode-dialog.component.d.ts +0 -37
  440. package/qrcode/sc-qrcode.module.d.ts +0 -14
  441. package/samples/index.d.ts +0 -4
  442. package/samples/interfaces/index.d.ts +0 -2
  443. package/samples/interfaces/sc-i-preview-sample.d.ts +0 -56
  444. package/samples/interfaces/sc-preview-mosquito-config.d.ts +0 -62
  445. package/samples/preview-sample/sc-preview-sample.component.d.ts +0 -30
  446. package/samples/sc-preview-samples-mosquito/sc-preview-samples-mosquito.component.d.ts +0 -50
  447. package/samples/sc-sample.module.d.ts +0 -19
  448. package/services/index.d.ts +0 -2
  449. package/services/print.service.d.ts +0 -31
  450. package/services/sc-help-notification.service.d.ts +0 -70
  451. package/share-button/index.d.ts +0 -2
  452. package/share-button/sc-share-button.component.d.ts +0 -22
  453. package/share-button/sc-share-button.module.d.ts +0 -12
  454. package/user/index.d.ts +0 -5
  455. package/user/reset-user-password/sc-reset-user-password.component.d.ts +0 -46
  456. package/user/sc-user.module.d.ts +0 -24
  457. package/user/update-user-info-dialog/sc-update-user-info-dialog.component.d.ts +0 -63
  458. package/user/user-managers/sc-user-managers.component.d.ts +0 -23
  459. package/user/user-phone-approve-dialog/sc-user-phone-approve-dialog.component.d.ts +0 -53
  460. package/validators/index.d.ts +0 -6
  461. package/validators/sc-at-least-one-required-validator.d.ts +0 -10
  462. package/validators/sc-bic-validator.d.ts +0 -8
  463. package/validators/sc-correspondent-account-validator.d.ts +0 -8
  464. package/validators/sc-password-confirm-matching-validator.d.ts +0 -8
  465. package/validators/sc-phone-validator.d.ts +0 -5
  466. package/validators/step-validator.d.ts +0 -8
  467. package/verification/index.d.ts +0 -2
  468. package/verification/sc-verification.module.d.ts +0 -21
  469. package/verification/verification-phone-check-form/sc-verification-phone-check-form.component.d.ts +0 -145
@@ -1,208 +0,0 @@
1
- /* eslint-disable no-param-reassign */
2
- import { AsyncPipe } from '@angular/common';
3
- import { ChangeDetectionStrategy, Component, computed, DestroyRef, inject, Input, input, signal } from '@angular/core';
4
- import { outputFromObservable, takeUntilDestroyed, toObservable, toSignal } from '@angular/core/rxjs-interop';
5
- import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';
6
- import { SC_ORDER_LOADER, ScUnitsHelper } from '@snabcentr/client-core';
7
- import { TuiCurrencyPipe } from '@taiga-ui/addon-commerce';
8
- import { TuiButton, TuiFormatNumberPipe } from '@taiga-ui/core';
9
- import { TuiButtonLoading, TuiCheckbox } from '@taiga-ui/kit';
10
- import { catchError, finalize, map, of } from 'rxjs';
11
- import { ScPrintDirective } from '../../directives';
12
- import { SC_DIALOG_SERVICE_TOKEN } from '../../providers';
13
- import { SC_ORDER_OPTIONS } from '../directives/sc-order-options';
14
- import { ScOrderItemComponent } from '../order-item/sc-order-item.component';
15
- import * as i0 from "@angular/core";
16
- import * as i1 from "@angular/forms";
17
- /**
18
- * Компонент списка товаров корзины, заказа или черновика.
19
- * Позиции разбиты.
20
- */
21
- export class ScOrderItemsListComponent {
22
- constructor() {
23
- /**
24
- * Внутренний сигнал списка элементов корзины (товаров).
25
- */
26
- this.itemsSignal = signal([]);
27
- /**
28
- * Включить выбор позиций чекбоксами.
29
- */
30
- this.selectable = input(true);
31
- /**
32
- * Включить редактирование позиций.
33
- */
34
- this.editable = input(false);
35
- /**
36
- * Внутренняя группа формы для выбора позиций.
37
- */
38
- this.selectionFormGroup = new FormGroup({});
39
- /**
40
- * Опции заказа (черновика). Предоставляется директивой {@link ScOrderAccessorDirective} в контексте черновика.
41
- */
42
- this.orderOptions = inject(SC_ORDER_OPTIONS, { optional: true });
43
- /**
44
- * Идентификаторы выбранных позиций.
45
- */
46
- this.itemsIds = toSignal(this.selectionFormGroup.valueChanges.pipe(map((value) => Object.entries(value))), {
47
- initialValue: [],
48
- });
49
- /**
50
- * Сигнал идентификаторов выбранных позиций.
51
- */
52
- this.selectedItemsIds = computed(() => {
53
- const selectable = this.selectable();
54
- return this.itemsIds()
55
- .filter(([, checked]) => !selectable || checked)
56
- .map(([key]) => key);
57
- });
58
- /**
59
- * Выходные данные при изменении выбора позиций.
60
- */
61
- this.selectedItemsIdsChange = outputFromObservable(toObservable(this.selectedItemsIds));
62
- /**
63
- * Сумма стоимости выбранных позиций.
64
- */
65
- this.sumSelectedItems = computed(() => {
66
- const items = this.itemsSignal();
67
- const selectedItemsIds = this.selectedItemsIds();
68
- const selectable = this.selectable();
69
- return items.filter((item) => !selectable || selectedItemsIds.includes(item.id)).reduce((sum, item) => sum + item.costRub, 0);
70
- });
71
- /**
72
- * Сервис получения и редактирования списка товаров заказа (корзина / заказ / черновик = заказ).
73
- * Предоставляется родителем через токен {@link SC_ORDER_LOADER} (реализация {@link ScIOrderLoader}).
74
- */
75
- this.orderItemsListLoader = inject(SC_ORDER_LOADER);
76
- /**
77
- * Признак, что можно редактировать позиции.
78
- */
79
- this.canEdit = computed(() => this.editable() && 'updateProduct$' in this.orderItemsListLoader);
80
- /**
81
- * Ссылка для автоматического управления уничтожением зависимостей.
82
- */
83
- this.destroyRef = inject(DestroyRef);
84
- /**
85
- * Сервис для работы с диалоговыми окнами.
86
- * Предоставляется родителем через токен {@link SC_DIALOG_SERVICE_TOKEN}.
87
- */
88
- this.scDialogService = inject(SC_DIALOG_SERVICE_TOKEN);
89
- }
90
- /**
91
- * Список элементов корзины (товаров). При установке синхронно обновляет контролы выбора в форме.
92
- */
93
- set items(value) {
94
- this.itemsSignal.set(value);
95
- this.syncSelectionControls();
96
- }
97
- /**
98
- * Синхронизирует контролы формы выбора с текущим списком товаров: удаляет контролы для отсутствующих id, добавляет для новых.
99
- */
100
- syncSelectionControls() {
101
- if (!this.selectable()) {
102
- return;
103
- }
104
- const currentItems = this.itemsSignal();
105
- const currentIds = new Set(currentItems.map((item) => item.id));
106
- Object.keys(this.selectionFormGroup.controls).forEach((name) => {
107
- if (!currentIds.has(name)) {
108
- this.selectionFormGroup.removeControl(name);
109
- }
110
- });
111
- currentItems.forEach((item) => {
112
- if (!this.selectionFormGroup.contains(item.id)) {
113
- this.selectionFormGroup.addControl(item.id, new FormControl(true, { nonNullable: true }));
114
- }
115
- });
116
- }
117
- /**
118
- * Удаляет позицию.
119
- *
120
- * @param item Позиция товара для удаления.
121
- * @param priceCard Компонент карточки товара.
122
- */
123
- deleteItem(item, priceCard) {
124
- if (!this.canEdit()) {
125
- return;
126
- }
127
- priceCard.showLoader.set(true);
128
- this.orderItemsListLoader
129
- .deleteProduct$(item, this.orderOptions?.orderId())
130
- .pipe(catchError(() => {
131
- priceCard.quantityControl.patchValue(item.quantity, {
132
- emitEvent: false,
133
- });
134
- return of();
135
- }), finalize(() => {
136
- priceCard.showLoader.set(false);
137
- }), takeUntilDestroyed(this.destroyRef))
138
- .subscribe();
139
- }
140
- /**
141
- * Обновляет количество товара.
142
- *
143
- * @param newQuantity Новое значение количества товара.
144
- * @param priceCard Компонент карточки товара.
145
- */
146
- patchItem(newQuantity, priceCard) {
147
- if (!this.canEdit() || !priceCard.orderItem || !priceCard.product || !newQuantity) {
148
- return;
149
- }
150
- priceCard.showLoader.set(true);
151
- this.orderItemsListLoader
152
- .updateProduct$(priceCard.orderItem.id, { quantity: newQuantity }, this.orderOptions?.orderId())
153
- .pipe(catchError(() => {
154
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
155
- priceCard.quantityControl.patchValue(priceCard.orderItem.quantity, {
156
- emitEvent: false,
157
- });
158
- return of();
159
- }), finalize(() => {
160
- priceCard.showLoader.set(false);
161
- }), takeUntilDestroyed(this.destroyRef))
162
- .subscribe();
163
- }
164
- /**
165
- * Открывает модальное окно описания товара.
166
- *
167
- * @param product Товар/услуга, описание которой необходимо отобразить.
168
- * @param orderItem Единичная позиция товара/услуги в заказе, для которой необходимо открыть конфигуратор.
169
- * @param orderId Идентификатор заказа, в котором необходимо открыть конфигуратор.
170
- */
171
- openProductInfoDialog(product, orderItem, orderId) {
172
- if (this.scDialogService.openProductInfoDialog) {
173
- this.scDialogService.openProductInfoDialog(product, orderItem, orderId);
174
- }
175
- }
176
- /**
177
- * Открывает модальное окно изменения товара или его конфигуратора.
178
- *
179
- * @param item Позиция товара.
180
- */
181
- openSettingsDialog(item) {
182
- const isConfigurator = Boolean(item.configurator);
183
- if (isConfigurator) {
184
- this.scDialogService.openConfiguratorDialog(item.product, item, this.orderOptions?.orderId());
185
- }
186
- else if (ScUnitsHelper.productIsMeasurable(item.product)) {
187
- this.scDialogService.openAddOrEditingCartItemDialog(item.product, item, this.orderOptions?.orderId(), true);
188
- }
189
- }
190
- /**
191
- * Открывает диалоговое окно "График изменения стоимости" для товара.
192
- *
193
- * @param product Товар/услуга, для которого необходимо отобразить график изменения стоимости.
194
- */
195
- openPriceHistoryChartDialog(product) {
196
- this.scDialogService.openPriceHistoryChartDialog(product);
197
- }
198
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderItemsListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
199
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ScOrderItemsListComponent, isStandalone: true, selector: "sc-order-items-list", inputs: { selectable: { classPropertyName: "selectable", publicName: "selectable", isSignal: true, isRequired: false, transformFunction: null }, editable: { classPropertyName: "editable", publicName: "editable", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: false, isRequired: true, transformFunction: null } }, outputs: { selectedItemsIdsChange: "selectedItemsIdsChange" }, ngImport: i0, template: "<div\n [formGroup]=\"selectionFormGroup\"\n class=\"flex flex-col gap-5\"\n>\n <!-- \u0413\u0440\u0443\u043F\u043F\u044B \u0442\u043E\u0432\u0430\u0440\u043E\u0432 \u043F\u043E \u043D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u044F\u043C \u043F\u0440\u043E\u0434\u0430\u0436. -->\n\n @for (item of itemsSignal(); track item.id) {\n @if ($index !== 0) {\n <hr class=\"mt-auto h-px w-full bg-tui-clear\" />\n }\n\n <div class=\"flex items-center gap-4 relative\">\n @let isActive = !selectable() || selectionFormGroup.get(item.id)?.value;\n\n <!-- \u0427\u0435\u043A\u0431\u043E\u043A\u0441 \u0432\u044B\u0431\u043E\u0440\u0430 \u0442\u043E\u0432\u0430\u0440\u0430. -->\n @if (selectable()) {\n <input\n tuiCheckbox\n [disabled]=\"itemComponent.showLoader()\"\n type=\"checkbox\"\n size=\"m\"\n [formControlName]=\"item.id\"\n />\n }\n\n <!-- \u041A\u0430\u0440\u0442\u043E\u0447\u043A\u0430 \u0442\u043E\u0432\u0430\u0440\u0430. -->\n <sc-order-item\n #itemComponent\n [product]=\"item.product\"\n [orderItem]=\"item\"\n [showQuantityControl]=\"canEdit() && !item.configurator\"\n [isShowEditControls]=\"canEdit()\"\n class=\"w-full duration-200\"\n [class.opacity-60]=\"selectable() && !selectionFormGroup.get(item.id)?.value\"\n (clickCardEvent)=\"openProductInfoDialog(item.product, item, orderOptions?.orderId())\"\n (quantityValueChanges)=\"patchItem($event, itemComponent)\"\n (clickPriceHistoryEvent)=\"openPriceHistoryChartDialog(item.product)\"\n (clickSettings)=\"openSettingsDialog(item)\"\n [class.pointer-events-none]=\"!isActive\"\n />\n\n <!-- \u041A\u043D\u043E\u043F\u043A\u0430 \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u0442\u043E\u0432\u0430\u0440\u0430. -->\n @if (canEdit()) {\n <button\n tuiIconButton\n iconStart=\"@tui.trash\"\n (click)=\"deleteItem(item, itemComponent)\"\n [loading]=\"itemComponent.showLoader()\"\n size=\"s\"\n appearance=\"secondary\"\n class=\"!absolute left-1 top-1 lg:!relative lg:left-0 lg:top-0 lg:!self-center\"\n ></button>\n }\n </div>\n }\n\n <!-- \u0424\u0443\u0442\u0435\u0440 \u0433\u0440\u0443\u043F\u043F\u044B \u0442\u043E\u0432\u0430\u0440\u043E\u0432. -->\n <div\n scPrint=\"cost\"\n class=\"flex flex-col items-end gap-2.5\"\n >\n @let totalSum = sumSelectedItems();\n <!-- \u0418\u0442\u043E\u0433\u043E\u0432\u0430\u044F \u0441\u0443\u043C\u043C\u0430. -->\n <div class=\"text-base font-bold\">\u0418\u0442\u043E\u0433\u043E: {{ totalSum | tuiFormatNumber: { precision: 2, decimalSeparator: '.', rounding: 'ceil' } | async }} {{ 'RUB' | tuiCurrency }}</div>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: ScOrderItemComponent, selector: "sc-order-item", inputs: ["isShowEditControls"], outputs: ["clickSettings"] }, { kind: "directive", type: ScPrintDirective, selector: "[scPrint]", inputs: ["scPrint"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: TuiCheckbox, selector: "input[type=\"checkbox\"][tuiCheckbox]", inputs: ["size"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "component", type: TuiButtonLoading, selector: "[tuiButton][loading],[tuiIconButton][loading]", inputs: ["size", "loading"] }, { kind: "pipe", type: TuiCurrencyPipe, name: "tuiCurrency" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TuiFormatNumberPipe, name: "tuiFormatNumber" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
200
- }
201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderItemsListComponent, decorators: [{
202
- type: Component,
203
- args: [{ standalone: true, selector: 'sc-order-items-list', imports: [ScOrderItemComponent, ScPrintDirective, ReactiveFormsModule, TuiCheckbox, TuiButton, TuiButtonLoading, TuiCurrencyPipe, AsyncPipe, TuiFormatNumberPipe], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n [formGroup]=\"selectionFormGroup\"\n class=\"flex flex-col gap-5\"\n>\n <!-- \u0413\u0440\u0443\u043F\u043F\u044B \u0442\u043E\u0432\u0430\u0440\u043E\u0432 \u043F\u043E \u043D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u044F\u043C \u043F\u0440\u043E\u0434\u0430\u0436. -->\n\n @for (item of itemsSignal(); track item.id) {\n @if ($index !== 0) {\n <hr class=\"mt-auto h-px w-full bg-tui-clear\" />\n }\n\n <div class=\"flex items-center gap-4 relative\">\n @let isActive = !selectable() || selectionFormGroup.get(item.id)?.value;\n\n <!-- \u0427\u0435\u043A\u0431\u043E\u043A\u0441 \u0432\u044B\u0431\u043E\u0440\u0430 \u0442\u043E\u0432\u0430\u0440\u0430. -->\n @if (selectable()) {\n <input\n tuiCheckbox\n [disabled]=\"itemComponent.showLoader()\"\n type=\"checkbox\"\n size=\"m\"\n [formControlName]=\"item.id\"\n />\n }\n\n <!-- \u041A\u0430\u0440\u0442\u043E\u0447\u043A\u0430 \u0442\u043E\u0432\u0430\u0440\u0430. -->\n <sc-order-item\n #itemComponent\n [product]=\"item.product\"\n [orderItem]=\"item\"\n [showQuantityControl]=\"canEdit() && !item.configurator\"\n [isShowEditControls]=\"canEdit()\"\n class=\"w-full duration-200\"\n [class.opacity-60]=\"selectable() && !selectionFormGroup.get(item.id)?.value\"\n (clickCardEvent)=\"openProductInfoDialog(item.product, item, orderOptions?.orderId())\"\n (quantityValueChanges)=\"patchItem($event, itemComponent)\"\n (clickPriceHistoryEvent)=\"openPriceHistoryChartDialog(item.product)\"\n (clickSettings)=\"openSettingsDialog(item)\"\n [class.pointer-events-none]=\"!isActive\"\n />\n\n <!-- \u041A\u043D\u043E\u043F\u043A\u0430 \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u0442\u043E\u0432\u0430\u0440\u0430. -->\n @if (canEdit()) {\n <button\n tuiIconButton\n iconStart=\"@tui.trash\"\n (click)=\"deleteItem(item, itemComponent)\"\n [loading]=\"itemComponent.showLoader()\"\n size=\"s\"\n appearance=\"secondary\"\n class=\"!absolute left-1 top-1 lg:!relative lg:left-0 lg:top-0 lg:!self-center\"\n ></button>\n }\n </div>\n }\n\n <!-- \u0424\u0443\u0442\u0435\u0440 \u0433\u0440\u0443\u043F\u043F\u044B \u0442\u043E\u0432\u0430\u0440\u043E\u0432. -->\n <div\n scPrint=\"cost\"\n class=\"flex flex-col items-end gap-2.5\"\n >\n @let totalSum = sumSelectedItems();\n <!-- \u0418\u0442\u043E\u0433\u043E\u0432\u0430\u044F \u0441\u0443\u043C\u043C\u0430. -->\n <div class=\"text-base font-bold\">\u0418\u0442\u043E\u0433\u043E: {{ totalSum | tuiFormatNumber: { precision: 2, decimalSeparator: '.', rounding: 'ceil' } | async }} {{ 'RUB' | tuiCurrency }}</div>\n </div>\n</div>\n" }]
204
- }], propDecorators: { items: [{
205
- type: Input,
206
- args: [{ required: true }]
207
- }] } });
208
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtb3JkZXItaXRlbXMtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvb3JkZXIvb3JkZXItaXRlbXMtbGlzdC9zYy1vcmRlci1pdGVtcy1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9vcmRlci9vcmRlci1pdGVtcy1saXN0L3NjLW9yZGVyLWl0ZW1zLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0NBQXNDO0FBRXRDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZILE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZUFBZSxFQUFxRCxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMzSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVyRCxPQUFPLEVBQXVCLGdCQUFn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QUFDO1lBQ3pELElBQUksQ0FBQyxlQUFlLENBQUMsOEJBQThCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNoSCxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDTywyQkFBMkIsQ0FBQyxPQUErQjtRQUNqRSxJQUFJLENBQUMsZUFBZSxDQUFDLDJCQUEyQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzlELENBQUM7K0dBck5RLHlCQUF5QjttR0FBekIseUJBQXlCLDBoQkM1QnRDLDBxR0FrRUEsNENEekNjLG9CQUFvQixzSEFBRSxnQkFBZ0IsMEVBQUUsbUJBQW1CLHF3QkFBRSxXQUFXLG9HQUFFLFNBQVMsb0lBQUUsZ0JBQWdCLGtIQUFFLGVBQWUsK0NBQUUsU0FBUyx5Q0FBRSxtQkFBbUI7OzRGQUd2Six5QkFBeUI7a0JBUHJDLFNBQVM7aUNBQ00sSUFBSSxZQUNOLHFCQUFxQixXQUV0QixDQUFDLG9CQUFvQixFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxtQkFBbUIsQ0FBQyxtQkFDaEosdUJBQXVCLENBQUMsTUFBTTs4QkF3RjNDLEtBQUs7c0JBRFIsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1wYXJhbS1yZWFzc2lnbiAqL1xuXG5pbXBvcnQgeyBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIERlc3Ryb3lSZWYsIGluamVjdCwgSW5wdXQsIGlucHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG91dHB1dEZyb21PYnNlcnZhYmxlLCB0YWtlVW50aWxEZXN0cm95ZWQsIHRvT2JzZXJ2YWJsZSwgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU0NfT1JERVJfTE9BREVSLCBTY0lPcmRlckVkaXRvckxvYWRlciwgU2NJT3JkZXJMb2FkZXIsIFNjT3JkZXJJdGVtLCBTY1VuaXRzSGVscGVyIH0gZnJvbSAnQHNuYWJjZW50ci9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBUdWlDdXJyZW5jeVBpcGUgfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UnO1xuaW1wb3J0IHsgVHVpQnV0dG9uLCBUdWlGb3JtYXROdW1iZXJQaXBlIH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHsgVHVpQnV0dG9uTG9hZGluZywgVHVpQ2hlY2tib3ggfSBmcm9tICdAdGFpZ2EtdWkva2l0JztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGZpbmFsaXplLCBtYXAsIG9mIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEFic3RyYWN0U2NQcmljZUNhcmQsIFNjUHJpbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IElTY0RpYWxvZ1NlcnZpY2UsIFNDX0RJQUxPR19TRVJWSUNFX1RPS0VOIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzJztcbmltcG9ydCB7IFNDX09SREVSX09QVElPTlMsIFNjT3JkZXJPcHRpb25zIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9zYy1vcmRlci1vcHRpb25zJztcbmltcG9ydCB7IFNjT3JkZXJJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vb3JkZXItaXRlbS9zYy1vcmRlci1pdGVtLmNvbXBvbmVudCc7XG5cbi8qKlxuICog0JrQvtC80L/QvtC90LXQvdGCINGB0L/QuNGB0LrQsCDRgtC+0LLQsNGA0L7QsiDQutC+0YDQt9C40L3Riywg0LfQsNC60LDQt9CwINC40LvQuCDRh9C10YDQvdC+0LLQuNC60LAuXG4gKiDQn9C+0LfQuNGG0LjQuCDRgNCw0LfQsdC40YLRiy5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3NjLW9yZGVyLWl0ZW1zLWxpc3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zYy1vcmRlci1pdGVtcy1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgICBpbXBvcnRzOiBbU2NPcmRlckl0ZW1Db21wb25lbnQsIFNjUHJpbnREaXJlY3RpdmUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFR1aUNoZWNrYm94LCBUdWlCdXR0b24sIFR1aUJ1dHRvbkxvYWRpbmcsIFR1aUN1cnJlbmN5UGlwZSwgQXN5bmNQaXBlLCBUdWlGb3JtYXROdW1iZXJQaXBlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2NPcmRlckl0ZW1zTGlzdENvbXBvbmVudCB7XG4gICAgLyoqXG4gICAgICog0JLQvdGD0YLRgNC10L3QvdC40Lkg0YHQuNCz0L3QsNC7INGB0L/QuNGB0LrQsCDRjdC70LXQvNC10L3RgtC+0LIg0LrQvtGA0LfQuNC90YsgKNGC0L7QstCw0YDQvtCyKS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbXNTaWduYWwgPSBzaWduYWw8U2NPcmRlckl0ZW1bXT4oW10pO1xuXG4gICAgLyoqXG4gICAgICog0JLQutC70Y7Rh9C40YLRjCDQstGL0LHQvtGAINC/0L7Qt9C40YbQuNC5INGH0LXQutCx0L7QutGB0LDQvNC4LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBzZWxlY3RhYmxlID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XG5cbiAgICAvKipcbiAgICAgKiDQktC60LvRjtGH0LjRgtGMINGA0LXQtNCw0LrRgtC40YDQvtCy0LDQvdC40LUg0L/QvtC30LjRhtC40LkuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGVkaXRhYmxlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgLyoqXG4gICAgICog0JLQvdGD0YLRgNC10L3QvdGP0Y8g0LPRgNGD0L/Qv9CwINGE0L7RgNC80Ysg0LTQu9GPINCy0YvQsdC+0YDQsCDQv9C+0LfQuNGG0LjQuS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2VsZWN0aW9uRm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cDxSZWNvcmQ8c3RyaW5nLCBGb3JtQ29udHJvbDxib29sZWFuPj4+KHt9KTtcblxuICAgIC8qKlxuICAgICAqINCe0L/RhtC40Lgg0LfQsNC60LDQt9CwICjRh9C10YDQvdC+0LLQuNC60LApLiDQn9GA0LXQtNC+0YHRgtCw0LLQu9GP0LXRgtGB0Y8g0LTQuNGA0LXQutGC0LjQstC+0Lkge0BsaW5rIFNjT3JkZXJBY2Nlc3NvckRpcmVjdGl2ZX0g0LIg0LrQvtC90YLQtdC60YHRgtC1INGH0LXRgNC90L7QstC40LrQsC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3JkZXJPcHRpb25zID0gaW5qZWN0PFNjT3JkZXJPcHRpb25zPihTQ19PUkRFUl9PUFRJT05TLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gICAgLyoqXG4gICAgICog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRiyDQstGL0LHRgNCw0L3QvdGL0YUg0L/QvtC30LjRhtC40LkuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGl0ZW1zSWRzID0gdG9TaWduYWwodGhpcy5zZWxlY3Rpb25Gb3JtR3JvdXAudmFsdWVDaGFuZ2VzLnBpcGUobWFwKCh2YWx1ZSkgPT4gT2JqZWN0LmVudHJpZXM8Ym9vbGVhbj4odmFsdWUgYXMgUmVjb3JkPHN0cmluZywgYm9vbGVhbj4pKSksIHtcbiAgICAgICAgaW5pdGlhbFZhbHVlOiBbXSxcbiAgICB9KTtcblxuICAgIC8qKlxuICAgICAqINCh0LjQs9C90LDQuyDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNC+0LIg0LLRi9Cx0YDQsNC90L3Ri9GFINC/0L7Qt9C40YbQuNC5LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBzZWxlY3RlZEl0ZW1zSWRzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBzZWxlY3RhYmxlID0gdGhpcy5zZWxlY3RhYmxlKCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaXRlbXNJZHMoKVxuICAgICAgICAgICAgLmZpbHRlcigoWywgY2hlY2tlZF0pID0+ICFzZWxlY3RhYmxlIHx8IGNoZWNrZWQpXG4gICAgICAgICAgICAubWFwKChba2V5XSkgPT4ga2V5KTtcbiAgICB9KTtcblxuICAgIC8qKlxuICAgICAqINCS0YvRhdC+0LTQvdGL0LUg0LTQsNC90L3Ri9C1INC/0YDQuCDQuNC30LzQtdC90LXQvdC40Lgg0LLRi9Cx0L7RgNCwINC/0L7Qt9C40YbQuNC5LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBzZWxlY3RlZEl0ZW1zSWRzQ2hhbmdlID0gb3V0cHV0RnJvbU9ic2VydmFibGUodG9PYnNlcnZhYmxlKHRoaXMuc2VsZWN0ZWRJdGVtc0lkcykpO1xuXG4gICAgLyoqXG4gICAgICog0KHRg9C80LzQsCDRgdGC0L7QuNC80L7RgdGC0Lgg0LLRi9Cx0YDQsNC90L3Ri9GFINC/0L7Qt9C40YbQuNC5LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBzdW1TZWxlY3RlZEl0ZW1zID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMuaXRlbXNTaWduYWwoKTtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRJdGVtc0lkcyA9IHRoaXMuc2VsZWN0ZWRJdGVtc0lkcygpO1xuICAgICAgICBjb25zdCBzZWxlY3RhYmxlID0gdGhpcy5zZWxlY3RhYmxlKCk7XG5cbiAgICAgICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoaXRlbSkgPT4gIXNlbGVjdGFibGUgfHwgc2VsZWN0ZWRJdGVtc0lkcy5pbmNsdWRlcyhpdGVtLmlkKSkucmVkdWNlKChzdW06IG51bWJlciwgaXRlbTogU2NPcmRlckl0ZW0pID0+IHN1bSArIGl0ZW0uY29zdFJ1YiwgMCk7XG4gICAgfSk7XG5cbiAgICAvKipcbiAgICAgKiDQodC10YDQstC40YEg0L/QvtC70YPRh9C10L3QuNGPINC4INGA0LXQtNCw0LrRgtC40YDQvtCy0LDQvdC40Y8g0YHQv9C40YHQutCwINGC0L7QstCw0YDQvtCyINC30LDQutCw0LfQsCAo0LrQvtGA0LfQuNC90LAgLyDQt9Cw0LrQsNC3IC8g0YfQtdGA0L3QvtCy0LjQuiA9INC30LDQutCw0LcpLlxuICAgICAqINCf0YDQtdC00L7RgdGC0LDQstC70Y/QtdGC0YHRjyDRgNC+0LTQuNGC0LXQu9C10Lwg0YfQtdGA0LXQtyDRgtC+0LrQtdC9IHtAbGluayBTQ19PUkRFUl9MT0FERVJ9ICjRgNC10LDQu9C40LfQsNGG0LjRjyB7QGxpbmsgU2NJT3JkZXJMb2FkZXJ9KS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3JkZXJJdGVtc0xpc3RMb2FkZXIgPSBpbmplY3Q8U2NJT3JkZXJMb2FkZXIgfCBTY0lPcmRlckVkaXRvckxvYWRlcj4oU0NfT1JERVJfTE9BREVSKTtcblxuICAgIC8qKlxuICAgICAqINCf0YDQuNC30L3QsNC6LCDRh9GC0L4g0LzQvtC20L3QviDRgNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCDQv9C+0LfQuNGG0LjQuC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2FuRWRpdCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuZWRpdGFibGUoKSAmJiAndXBkYXRlUHJvZHVjdCQnIGluIHRoaXMub3JkZXJJdGVtc0xpc3RMb2FkZXIpO1xuXG4gICAgLyoqXG4gICAgICog0KHRgdGL0LvQutCwINC00LvRjyDQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQvtCz0L4g0YPQv9GA0LDQstC70LXQvdC40Y8g0YPQvdC40YfRgtC+0LbQtdC90LjQtdC8INC30LDQstC40YHQuNC80L7RgdGC0LXQuS5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICAvKipcbiAgICAgKiDQodC10YDQstC40YEg0LTQu9GPINGA0LDQsdC+0YLRiyDRgSDQtNC40LDQu9C+0LPQvtCy0YvQvNC4INC+0LrQvdCw0LzQuC5cbiAgICAgKiDQn9GA0LXQtNC+0YHRgtCw0LLQu9GP0LXRgtGB0Y8g0YDQvtC00LjRgtC10LvQtdC8INGH0LXRgNC10Lcg0YLQvtC60LXQvSB7QGxpbmsgU0NfRElBTE9HX1NFUlZJQ0VfVE9LRU59LlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc2NEaWFsb2dTZXJ2aWNlID0gaW5qZWN0PElTY0RpYWxvZ1NlcnZpY2U+KFNDX0RJQUxPR19TRVJWSUNFX1RPS0VOKTtcblxuICAgIC8qKlxuICAgICAqINCh0L/QuNGB0L7QuiDRjdC70LXQvNC10L3RgtC+0LIg0LrQvtGA0LfQuNC90YsgKNGC0L7QstCw0YDQvtCyKS4g0J/RgNC4INGD0YHRgtCw0L3QvtCy0LrQtSDRgdC40L3RhdGA0L7QvdC90L4g0L7QsdC90L7QstC70Y/QtdGCINC60L7QvdGC0YDQvtC70Ysg0LLRi9Cx0L7RgNCwINCyINGE0L7RgNC80LUuXG4gICAgICovXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICBzZXQgaXRlbXModmFsdWU6IFNjT3JkZXJJdGVtW10pIHtcbiAgICAgICAgdGhpcy5pdGVtc1NpZ25hbC5zZXQodmFsdWUpO1xuICAgICAgICB0aGlzLnN5bmNTZWxlY3Rpb25Db250cm9scygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCh0LjQvdGF0YDQvtC90LjQt9C40YDRg9C10YIg0LrQvtC90YLRgNC+0LvRiyDRhNC+0YDQvNGLINCy0YvQsdC+0YDQsCDRgSDRgtC10LrRg9GJ0LjQvCDRgdC/0LjRgdC60L7QvCDRgtC+0LLQsNGA0L7Qsjog0YPQtNCw0LvRj9C10YIg0LrQvtC90YLRgNC+0LvRiyDQtNC70Y8g0L7RgtGB0YPRgtGB0YLQstGD0Y7RidC40YUgaWQsINC00L7QsdCw0LLQu9GP0LXRgiDQtNC70Y8g0L3QvtCy0YvRhS5cbiAgICAgKi9cbiAgICBwcml2YXRlIHN5bmNTZWxlY3Rpb25Db250cm9scygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLnNlbGVjdGFibGUoKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY3VycmVudEl0ZW1zID0gdGhpcy5pdGVtc1NpZ25hbCgpO1xuICAgICAgICBjb25zdCBjdXJyZW50SWRzID0gbmV3IFNldChjdXJyZW50SXRlbXMubWFwKChpdGVtKSA9PiBpdGVtLmlkKSk7XG5cbiAgICAgICAgT2JqZWN0LmtleXModGhpcy5zZWxlY3Rpb25Gb3JtR3JvdXAuY29udHJvbHMpLmZvckVhY2goKG5hbWUpID0+IHtcbiAgICAgICAgICAgIGlmICghY3VycmVudElkcy5oYXMobmFtZSkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvbkZvcm1Hcm91cC5yZW1vdmVDb250cm9sKG5hbWUgYXMgbmV2ZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBjdXJyZW50SXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLnNlbGVjdGlvbkZvcm1Hcm91cC5jb250YWlucyhpdGVtLmlkKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uRm9ybUdyb3VwLmFkZENvbnRyb2woaXRlbS5pZCwgbmV3IEZvcm1Db250cm9sKHRydWUsIHsgbm9uTnVsbGFibGU6IHRydWUgfSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQo9C00LDQu9GP0LXRgiDQv9C+0LfQuNGG0LjRji5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBpdGVtINCf0L7Qt9C40YbQuNGPINGC0L7QstCw0YDQsCDQtNC70Y8g0YPQtNCw0LvQtdC90LjRjy5cbiAgICAgKiBAcGFyYW0gcHJpY2VDYXJkINCa0L7QvNC/0L7QvdC10L3RgiDQutCw0YDRgtC+0YfQutC4INGC0L7QstCw0YDQsC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZGVsZXRlSXRlbShpdGVtOiBTY09yZGVySXRlbSwgcHJpY2VDYXJkOiBBYnN0cmFjdFNjUHJpY2VDYXJkKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jYW5FZGl0KCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHByaWNlQ2FyZC5zaG93TG9hZGVyLnNldCh0cnVlKTtcblxuICAgICAgICAodGhpcy5vcmRlckl0ZW1zTGlzdExvYWRlciBhcyBTY0lPcmRlckVkaXRvckxvYWRlcilcbiAgICAgICAgICAgIC5kZWxldGVQcm9kdWN0JChpdGVtLCB0aGlzLm9yZGVyT3B0aW9ucz8ub3JkZXJJZCgpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHByaWNlQ2FyZC5xdWFudGl0eUNvbnRyb2wucGF0Y2hWYWx1ZShpdGVtLnF1YW50aXR5LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHByaWNlQ2FyZC5zaG93TG9hZGVyLnNldChmYWxzZSk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZilcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQntCx0L3QvtCy0LvRj9C10YIg0LrQvtC70LjRh9C10YHRgtCy0L4g0YLQvtCy0LDRgNCwLlxuICAgICAqXG4gICAgICogQHBhcmFtIG5ld1F1YW50aXR5INCd0L7QstC+0LUg0LfQvdCw0YfQtdC90LjQtSDQutC+0LvQuNGH0LXRgdGC0LLQsCDRgtC+0LLQsNGA0LAuXG4gICAgICogQHBhcmFtIHByaWNlQ2FyZCDQmtC+0LzQv9C+0L3QtdC90YIg0LrQsNGA0YLQvtGH0LrQuCDRgtC+0LLQsNGA0LAuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHBhdGNoSXRlbShuZXdRdWFudGl0eTogbnVtYmVyIHwgbnVsbCwgcHJpY2VDYXJkOiBBYnN0cmFjdFNjUHJpY2VDYXJkKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jYW5FZGl0KCkgfHwgIXByaWNlQ2FyZC5vcmRlckl0ZW0gfHwgIXByaWNlQ2FyZC5wcm9kdWN0IHx8ICFuZXdRdWFudGl0eSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgcHJpY2VDYXJkLnNob3dMb2FkZXIuc2V0KHRydWUpO1xuXG4gICAgICAgICh0aGlzLm9yZGVySXRlbXNMaXN0TG9hZGVyIGFzIFNjSU9yZGVyRWRpdG9yTG9hZGVyKVxuICAgICAgICAgICAgLnVwZGF0ZVByb2R1Y3QkKHByaWNlQ2FyZC5vcmRlckl0ZW0uaWQsIHsgcXVhbnRpdHk6IG5ld1F1YW50aXR5IH0sIHRoaXMub3JkZXJPcHRpb25zPy5vcmRlcklkKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cbiAgICAgICAgICAgICAgICAgICAgcHJpY2VDYXJkLnF1YW50aXR5Q29udHJvbC5wYXRjaFZhbHVlKHByaWNlQ2FyZC5vcmRlckl0ZW0hLnF1YW50aXR5LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHByaWNlQ2FyZC5zaG93TG9hZGVyLnNldChmYWxzZSk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZilcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQntGC0LrRgNGL0LLQsNC10YIg0LzQvtC00LDQu9GM0L3QvtC1INC+0LrQvdC+INC+0L/QuNGB0LDQvdC40Y8g0YLQvtCy0LDRgNCwLlxuICAgICAqXG4gICAgICogQHBhcmFtIHByb2R1Y3Qg0KLQvtCy0LDRgC/Rg9GB0LvRg9Cz0LAsINC+0L/QuNGB0LDQvdC40LUg0LrQvtGC0L7RgNC+0Lkg0L3QtdC+0LHRhdC+0LTQuNC80L4g0L7RgtC+0LHRgNCw0LfQuNGC0YwuXG4gICAgICogQHBhcmFtIG9yZGVySXRlbSDQldC00LjQvdC40YfQvdCw0Y8g0L/QvtC30LjRhtC40Y8g0YLQvtCy0LDRgNCwL9GD0YHQu9GD0LPQuCDQsiDQt9Cw0LrQsNC30LUsINC00LvRjyDQutC+0YLQvtGA0L7QuSDQvdC10L7QsdGF0L7QtNC40LzQviDQvtGC0LrRgNGL0YLRjCDQutC+0L3RhNC40LPRg9GA0LDRgtC+0YAuXG4gICAgICogQHBhcmFtIG9yZGVySWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LfQsNC60LDQt9CwLCDQsiDQutC+0YLQvtGA0L7QvCDQvdC10L7QsdGF0L7QtNC40LzQviDQvtGC0LrRgNGL0YLRjCDQutC+0L3RhNC40LPRg9GA0LDRgtC+0YAuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIG9wZW5Qcm9kdWN0SW5mb0RpYWxvZyhwcm9kdWN0OiBTY09yZGVySXRlbVsncHJvZHVjdCddLCBvcmRlckl0ZW0/OiBTY09yZGVySXRlbSwgb3JkZXJJZD86IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zY0RpYWxvZ1NlcnZpY2Uub3BlblByb2R1Y3RJbmZvRGlhbG9nKSB7XG4gICAgICAgICAgICB0aGlzLnNjRGlhbG9nU2VydmljZS5vcGVuUHJvZHVjdEluZm9EaWFsb2cocHJvZHVjdCwgb3JkZXJJdGVtLCBvcmRlcklkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCe0YLQutGA0YvQstCw0LXRgiDQvNC+0LTQsNC70YzQvdC+0LUg0L7QutC90L4g0LjQt9C80LXQvdC10L3QuNGPINGC0L7QstCw0YDQsCDQuNC70Lgg0LXQs9C+INC60L7QvdGE0LjQs9GD0YDQsNGC0L7RgNCwLlxuICAgICAqXG4gICAgICogQHBhcmFtIGl0ZW0g0J/QvtC30LjRhtC40Y8g0YLQvtCy0LDRgNCwLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBvcGVuU2V0dGluZ3NEaWFsb2coaXRlbTogU2NPcmRlckl0ZW0pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaXNDb25maWd1cmF0b3IgPSBCb29sZWFuKGl0ZW0uY29uZmlndXJhdG9yKTtcblxuICAgICAgICBpZiAoaXNDb25maWd1cmF0b3IpIHtcbiAgICAgICAgICAgIHRoaXMuc2NEaWFsb2dTZXJ2aWNlLm9wZW5Db25maWd1cmF0b3JEaWFsb2coaXRlbS5wcm9kdWN0LCBpdGVtLCB0aGlzLm9yZGVyT3B0aW9ucz8ub3JkZXJJZCgpKTtcbiAgICAgICAgfSBlbHNlIGlmIChTY1VuaXRzSGVscGVyLnByb2R1Y3RJc01lYXN1cmFibGUoaXRlbS5wcm9kdWN0KSkge1xuICAgICAgICAgICAgdGhpcy5zY0RpYWxvZ1NlcnZpY2Uub3BlbkFkZE9yRWRpdGluZ0NhcnRJdGVtRGlhbG9nKGl0ZW0ucHJvZHVjdCwgaXRlbSwgdGhpcy5vcmRlck9wdGlvbnM/Lm9yZGVySWQoKSwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQntGC0LrRgNGL0LLQsNC10YIg0LTQuNCw0LvQvtCz0L7QstC+0LUg0L7QutC90L4gXCLQk9GA0LDRhNC40Log0LjQt9C80LXQvdC10L3QuNGPINGB0YLQvtC40LzQvtGB0YLQuFwiINC00LvRjyDRgtC+0LLQsNGA0LAuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcHJvZHVjdCDQotC+0LLQsNGAL9GD0YHQu9GD0LPQsCwg0LTQu9GPINC60L7RgtC+0YDQvtCz0L4g0L3QtdC+0LHRhdC+0LTQuNC80L4g0L7RgtC+0LHRgNCw0LfQuNGC0Ywg0LPRgNCw0YTQuNC6INC40LfQvNC10L3QtdC90LjRjyDRgdGC0L7QuNC80L7RgdGC0LguXG4gICAgICovXG4gICAgcHJvdGVjdGVkIG9wZW5QcmljZUhpc3RvcnlDaGFydERpYWxvZyhwcm9kdWN0OiBTY09yZGVySXRlbVsncHJvZHVjdCddKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2NEaWFsb2dTZXJ2aWNlLm9wZW5QcmljZUhpc3RvcnlDaGFydERpYWxvZyhwcm9kdWN0KTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgW2Zvcm1Hcm91cF09XCJzZWxlY3Rpb25Gb3JtR3JvdXBcIlxuICAgIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtNVwiXG4+XG4gICAgPCEtLSDQk9GA0YPQv9C/0Ysg0YLQvtCy0LDRgNC+0LIg0L/QviDQvdCw0L/RgNCw0LLQu9C10L3QuNGP0Lwg0L/RgNC+0LTQsNC2LiAtLT5cblxuICAgIEBmb3IgKGl0ZW0gb2YgaXRlbXNTaWduYWwoKTsgdHJhY2sgaXRlbS5pZCkge1xuICAgICAgICBAaWYgKCRpbmRleCAhPT0gMCkge1xuICAgICAgICAgICAgPGhyIGNsYXNzPVwibXQtYXV0byBoLXB4IHctZnVsbCBiZy10dWktY2xlYXJcIiAvPlxuICAgICAgICB9XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGdhcC00IHJlbGF0aXZlXCI+XG4gICAgICAgICAgICBAbGV0IGlzQWN0aXZlID0gIXNlbGVjdGFibGUoKSB8fCBzZWxlY3Rpb25Gb3JtR3JvdXAuZ2V0KGl0ZW0uaWQpPy52YWx1ZTtcblxuICAgICAgICAgICAgPCEtLSDQp9C10LrQsdC+0LrRgSDQstGL0LHQvtGA0LAg0YLQvtCy0LDRgNCwLiAtLT5cbiAgICAgICAgICAgIEBpZiAoc2VsZWN0YWJsZSgpKSB7XG4gICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgIHR1aUNoZWNrYm94XG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpdGVtQ29tcG9uZW50LnNob3dMb2FkZXIoKVwiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJpdGVtLmlkXCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA8IS0tINCa0LDRgNGC0L7Rh9C60LAg0YLQvtCy0LDRgNCwLiAtLT5cbiAgICAgICAgICAgIDxzYy1vcmRlci1pdGVtXG4gICAgICAgICAgICAgICAgI2l0ZW1Db21wb25lbnRcbiAgICAgICAgICAgICAgICBbcHJvZHVjdF09XCJpdGVtLnByb2R1Y3RcIlxuICAgICAgICAgICAgICAgIFtvcmRlckl0ZW1dPVwiaXRlbVwiXG4gICAgICAgICAgICAgICAgW3Nob3dRdWFudGl0eUNvbnRyb2xdPVwiY2FuRWRpdCgpICYmICFpdGVtLmNvbmZpZ3VyYXRvclwiXG4gICAgICAgICAgICAgICAgW2lzU2hvd0VkaXRDb250cm9sc109XCJjYW5FZGl0KClcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidy1mdWxsIGR1cmF0aW9uLTIwMFwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLm9wYWNpdHktNjBdPVwic2VsZWN0YWJsZSgpICYmICFzZWxlY3Rpb25Gb3JtR3JvdXAuZ2V0KGl0ZW0uaWQpPy52YWx1ZVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrQ2FyZEV2ZW50KT1cIm9wZW5Qcm9kdWN0SW5mb0RpYWxvZyhpdGVtLnByb2R1Y3QsIGl0ZW0sIG9yZGVyT3B0aW9ucz8ub3JkZXJJZCgpKVwiXG4gICAgICAgICAgICAgICAgKHF1YW50aXR5VmFsdWVDaGFuZ2VzKT1cInBhdGNoSXRlbSgkZXZlbnQsIGl0ZW1Db21wb25lbnQpXCJcbiAgICAgICAgICAgICAgICAoY2xpY2tQcmljZUhpc3RvcnlFdmVudCk9XCJvcGVuUHJpY2VIaXN0b3J5Q2hhcnREaWFsb2coaXRlbS5wcm9kdWN0KVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrU2V0dGluZ3MpPVwib3BlblNldHRpbmdzRGlhbG9nKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MucG9pbnRlci1ldmVudHMtbm9uZV09XCIhaXNBY3RpdmVcIlxuICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgPCEtLSDQmtC90L7Qv9C60LAg0YPQtNCw0LvQtdC90LjRjyDRgtC+0LLQsNGA0LAuIC0tPlxuICAgICAgICAgICAgQGlmIChjYW5FZGl0KCkpIHtcbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIHR1aUljb25CdXR0b25cbiAgICAgICAgICAgICAgICAgICAgaWNvblN0YXJ0PVwiQHR1aS50cmFzaFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJkZWxldGVJdGVtKGl0ZW0sIGl0ZW1Db21wb25lbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgW2xvYWRpbmddPVwiaXRlbUNvbXBvbmVudC5zaG93TG9hZGVyKClcIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwic1wiXG4gICAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIiFhYnNvbHV0ZSBsZWZ0LTEgdG9wLTEgbGc6IXJlbGF0aXZlIGxnOmxlZnQtMCBsZzp0b3AtMCBsZzohc2VsZi1jZW50ZXJcIlxuICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgPCEtLSDQpNGD0YLQtdGAINCz0YDRg9C/0L/RiyDRgtC+0LLQsNGA0L7Qsi4gLS0+XG4gICAgPGRpdlxuICAgICAgICBzY1ByaW50PVwiY29zdFwiXG4gICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBpdGVtcy1lbmQgZ2FwLTIuNVwiXG4gICAgPlxuICAgICAgICBAbGV0IHRvdGFsU3VtID0gc3VtU2VsZWN0ZWRJdGVtcygpO1xuICAgICAgICA8IS0tINCY0YLQvtCz0L7QstCw0Y8g0YHRg9C80LzQsC4gLS0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWJhc2UgZm9udC1ib2xkXCI+0JjRgtC+0LPQvjoge3sgdG90YWxTdW0gfCB0dWlGb3JtYXROdW1iZXI6IHsgcHJlY2lzaW9uOiAyLCBkZWNpbWFsU2VwYXJhdG9yOiAnLicsIHJvdW5kaW5nOiAnY2VpbCcgfSB8IGFzeW5jIH19IHt7ICdSVUInIHwgdHVpQ3VycmVuY3kgfX08L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,75 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, computed, inject, input, model, output } from '@angular/core';
2
- import { toSignal } from '@angular/core/rxjs-interop';
3
- import { ScReferencesService } from '@snabcentr/client-core';
4
- import { TuiButton } from '@taiga-ui/core';
5
- import { ScOrderItemsByDirection } from '../models/sc-i-cart-items-by-direction';
6
- import { ScOrderItemsListComponent } from '../order-items-list/sc-order-items-list.component';
7
- import * as i0 from "@angular/core";
8
- export class ScOrderItemsListByDirectionsComponent {
9
- constructor() {
10
- /**
11
- * Внутренний сигнал списка элементов корзины (товаров).
12
- */
13
- this.items = input.required();
14
- /**
15
- * Включить выбор позиций чекбоксами.
16
- */
17
- this.selectable = input(true);
18
- /**
19
- * Включить редактирование позиций.
20
- */
21
- this.editable = input(false);
22
- /**
23
- * Включить отображение кнопки продолжения.
24
- */
25
- this.showContinueButton = input(true);
26
- /**
27
- * Текст кнопки продолжения.
28
- */
29
- this.continueButtonText = input({ title: 'Заказать', iconStart: '@tui.shopping-cart' });
30
- /**
31
- * Событие клика на кнопку продолжения.
32
- */
33
- this.continueClick = output();
34
- /**
35
- * Список направлений продаж из справочника.
36
- */
37
- this.directions = toSignal(inject(ScReferencesService).directions$, { initialValue: undefined });
38
- /**
39
- * Позиции корзины, сгруппированные по направлениям продаж.
40
- * Если передан cartDirections, используется он, иначе группировка выполняется автоматически.
41
- */
42
- this.itemsByDirections = computed(() => {
43
- const items = this.items().filter((item) => !item.product.isNull && !item.product.isHidden);
44
- const directions = this.directions();
45
- return directions?.map((direction) => new ScOrderItemsByDirection(direction, items)).filter((group) => group.items.length > 0) ?? [];
46
- });
47
- /**
48
- * Позиции корзины, которые больше не предоставляются.
49
- */
50
- this.nullItems = computed(() => this.items().filter((item) => item.product.isNull || item.product.isHidden));
51
- /**
52
- * Выходные данные при изменении выбора позиций.
53
- */
54
- this.selectedItemsIds = model([]);
55
- }
56
- /**
57
- * Обработчик изменения выбора позиций.
58
- *
59
- * @param itemsIds Идентификаторы выбранных позиций.
60
- * @param direction Направление продаж.
61
- */
62
- selectedItemsHandler(itemsIds, direction) {
63
- this.selectedItemsIds.update((previous) => [
64
- ...previous.filter((id) => !direction.items.some((item) => item.id === id) && this.items().some((item) => item.id === id)),
65
- ...itemsIds,
66
- ]);
67
- }
68
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderItemsListByDirectionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
69
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ScOrderItemsListByDirectionsComponent, isStandalone: true, selector: "sc-order-items-list-by-directions", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, selectable: { classPropertyName: "selectable", publicName: "selectable", isSignal: true, isRequired: false, transformFunction: null }, editable: { classPropertyName: "editable", publicName: "editable", isSignal: true, isRequired: false, transformFunction: null }, showContinueButton: { classPropertyName: "showContinueButton", publicName: "showContinueButton", isSignal: true, isRequired: false, transformFunction: null }, continueButtonText: { classPropertyName: "continueButtonText", publicName: "continueButtonText", isSignal: true, isRequired: false, transformFunction: null }, selectedItemsIds: { classPropertyName: "selectedItemsIds", publicName: "selectedItemsIds", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { continueClick: "continueClick", selectedItemsIds: "selectedItemsIdsChange" }, ngImport: i0, template: "<div class=\"flex flex-col gap-5\">\n <!-- \u0413\u0440\u0443\u043F\u043F\u044B \u0442\u043E\u0432\u0430\u0440\u043E\u0432 \u043F\u043E \u043D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u044F\u043C \u043F\u0440\u043E\u0434\u0430\u0436. -->\n @for (direction of itemsByDirections(); track direction.direction?.id; let groupIndex = $index) {\n <div class=\"flex flex-col gap-2.5\">\n @if (direction.direction && itemsByDirections().length > 1) {\n <div class=\"text-base font-bold\">\u041D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043F\u0440\u043E\u0434\u0430\u0436: {{ direction.direction.description }}</div>\n }\n\n <sc-order-items-list\n [items]=\"direction.items\"\n [selectable]=\"selectable()\"\n [editable]=\"editable()\"\n (selectedItemsIdsChange)=\"selectedItemsHandler($event, direction)\"\n />\n\n <!-- \u0424\u0443\u0442\u0435\u0440 \u0433\u0440\u0443\u043F\u043F\u044B \u0442\u043E\u0432\u0430\u0440\u043E\u0432. -->\n <div class=\"flex flex-col items-center sm:flex-row sm:items-start sm:flex-wrap-reverse grow gap-x-2.5 gap-y-4\">\n <ng-content select=\"[footerActions]\" />\n\n <!-- \u041A\u043D\u043E\u043F\u043A\u0430 \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u044F. -->\n @if (showContinueButton()) {\n <button\n tuiButton\n type=\"button\"\n [disabled]=\"direction.getItemsByIds(selectedItemsIds()).length === 0\"\n [iconStart]=\"continueButtonText().iconStart\"\n class=\"sm:ml-auto\"\n (click)=\"continueClick.emit(direction)\"\n >\n {{ continueButtonText().title }}\n </button>\n }\n </div>\n </div>\n }\n\n @if (nullItems().length) {\n <div class=\"flex flex-col gap-2.5\">\n <div class=\"text-base font-bold\">\u0422\u043E\u0432\u0430\u0440\u044B \u0438 \u0443\u0441\u043B\u0443\u0433\u0438, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u0431\u043E\u043B\u044C\u0448\u0435 \u043D\u0435 \u043F\u0440\u0435\u0434\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u044E\u0442\u0441\u044F.</div>\n\n <sc-order-items-list\n [items]=\"nullItems()\"\n [selectable]=\"false\"\n [editable]=\"editable()\"\n />\n </div>\n }\n</div>\n", dependencies: [{ kind: "component", type: ScOrderItemsListComponent, selector: "sc-order-items-list", inputs: ["selectable", "editable", "items"], outputs: ["selectedItemsIdsChange"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
70
- }
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderItemsListByDirectionsComponent, decorators: [{
72
- type: Component,
73
- args: [{ standalone: true, selector: 'sc-order-items-list-by-directions', imports: [ScOrderItemsListComponent, TuiButton], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col gap-5\">\n <!-- \u0413\u0440\u0443\u043F\u043F\u044B \u0442\u043E\u0432\u0430\u0440\u043E\u0432 \u043F\u043E \u043D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u044F\u043C \u043F\u0440\u043E\u0434\u0430\u0436. -->\n @for (direction of itemsByDirections(); track direction.direction?.id; let groupIndex = $index) {\n <div class=\"flex flex-col gap-2.5\">\n @if (direction.direction && itemsByDirections().length > 1) {\n <div class=\"text-base font-bold\">\u041D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043F\u0440\u043E\u0434\u0430\u0436: {{ direction.direction.description }}</div>\n }\n\n <sc-order-items-list\n [items]=\"direction.items\"\n [selectable]=\"selectable()\"\n [editable]=\"editable()\"\n (selectedItemsIdsChange)=\"selectedItemsHandler($event, direction)\"\n />\n\n <!-- \u0424\u0443\u0442\u0435\u0440 \u0433\u0440\u0443\u043F\u043F\u044B \u0442\u043E\u0432\u0430\u0440\u043E\u0432. -->\n <div class=\"flex flex-col items-center sm:flex-row sm:items-start sm:flex-wrap-reverse grow gap-x-2.5 gap-y-4\">\n <ng-content select=\"[footerActions]\" />\n\n <!-- \u041A\u043D\u043E\u043F\u043A\u0430 \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u044F. -->\n @if (showContinueButton()) {\n <button\n tuiButton\n type=\"button\"\n [disabled]=\"direction.getItemsByIds(selectedItemsIds()).length === 0\"\n [iconStart]=\"continueButtonText().iconStart\"\n class=\"sm:ml-auto\"\n (click)=\"continueClick.emit(direction)\"\n >\n {{ continueButtonText().title }}\n </button>\n }\n </div>\n </div>\n }\n\n @if (nullItems().length) {\n <div class=\"flex flex-col gap-2.5\">\n <div class=\"text-base font-bold\">\u0422\u043E\u0432\u0430\u0440\u044B \u0438 \u0443\u0441\u043B\u0443\u0433\u0438, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u0431\u043E\u043B\u044C\u0448\u0435 \u043D\u0435 \u043F\u0440\u0435\u0434\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u044E\u0442\u0441\u044F.</div>\n\n <sc-order-items-list\n [items]=\"nullItems()\"\n [selectable]=\"false\"\n [editable]=\"editable()\"\n />\n </div>\n }\n</div>\n" }]
74
- }] });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtb3JkZXItaXRlbXMtbGlzdC1ieS1kaXJlY3Rpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9vcmRlci9vcmRlci1pdGVtcy1saXN0LWJ5LWRpcmVjdGlvbnMvc2Mtb3JkZXItaXRlbXMtbGlzdC1ieS1kaXJlY3Rpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9vcmRlci9vcmRlci1pdGVtcy1saXN0LWJ5LWRpcmVjdGlvbnMvc2Mtb3JkZXItaXRlbXMtbGlzdC1ieS1kaXJlY3Rpb25zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFrQyxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNqRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQzs7QUFTOUYsTUFBTSxPQUFPLHFDQUFxQztJQVBsRDtRQVFJOztXQUVHO1FBQ2EsVUFBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQWlCLENBQUM7UUFFeEQ7O1dBRUc7UUFDYSxlQUFVLEdBQUcsS0FBSyxDQUFVLElBQUksQ0FBQyxDQUFDO1FBRWxEOztXQUVHO1FBQ2EsYUFBUSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUVqRDs7V0FFRztRQUNhLHVCQUFrQixHQUFHLEtBQUssQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUUxRDs7V0FFRztRQUNhLHVCQUFrQixHQUFHLEtBQUssQ0FBdUMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxvQkFBb0IsRUFBRSxDQUFDLENBQUM7UUFFekk7O1dBRUc7UUFDYSxrQkFBYSxHQUFHLE1BQU0sRUFBMkIsQ0FBQztRQUVsRTs7V0FFRztRQUNjLGVBQVUsR0FBRyxRQUFRLENBQWtDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRTlJOzs7V0FHRztRQUNnQixzQkFBaUIsR0FBRyxRQUFRLENBQTRCLEdBQUcsRUFBRTtZQUM1RSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM1RixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFFckMsT0FBTyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLHVCQUF1QixDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3pJLENBQUMsQ0FBQyxDQUFDO1FBRUg7O1dBRUc7UUFDZ0IsY0FBUyxHQUFHLFFBQVEsQ0FBZ0IsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBRTFJOztXQUVHO1FBQ2EscUJBQWdCLEdBQUcsS0FBSyxDQUFXLEVBQUUsQ0FBQyxDQUFDO0tBYzFEO0lBWkc7Ozs7O09BS0c7SUFDTyxvQkFBb0IsQ0FBQyxRQUFrQixFQUFFLFNBQWtDO1FBQ2pGLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO1lBQ3ZDLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQzFILEdBQUcsUUFBUTtTQUNkLENBQUMsQ0FBQztJQUNQLENBQUM7K0dBcEVRLHFDQUFxQzttR0FBckMscUNBQXFDLHdoQ0NmbEQsa2xGQWdEQSw0Q0RwQ2MseUJBQXlCLGtKQUFFLFNBQVM7OzRGQUdyQyxxQ0FBcUM7a0JBUGpELFNBQVM7aUNBQ00sSUFBSSxZQUNOLG1DQUFtQyxXQUVwQyxDQUFDLHlCQUF5QixFQUFFLFNBQVMsQ0FBQyxtQkFDOUIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbmplY3QsIGlucHV0LCBtb2RlbCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFNjSVNhbGVzRGlyZWN0aW9uLCBTY09yZGVySXRlbSwgU2NSZWZlcmVuY2VzU2VydmljZSB9IGZyb20gJ0BzbmFiY2VudHIvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgVHVpQnV0dG9uIH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG5pbXBvcnQgeyBTY09yZGVySXRlbXNCeURpcmVjdGlvbiB9IGZyb20gJy4uL21vZGVscy9zYy1pLWNhcnQtaXRlbXMtYnktZGlyZWN0aW9uJztcbmltcG9ydCB7IFNjT3JkZXJJdGVtc0xpc3RDb21wb25lbnQgfSBmcm9tICcuLi9vcmRlci1pdGVtcy1saXN0L3NjLW9yZGVyLWl0ZW1zLWxpc3QuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3NjLW9yZGVyLWl0ZW1zLWxpc3QtYnktZGlyZWN0aW9ucycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NjLW9yZGVyLWl0ZW1zLWxpc3QtYnktZGlyZWN0aW9ucy5jb21wb25lbnQuaHRtbCcsXG4gICAgaW1wb3J0czogW1NjT3JkZXJJdGVtc0xpc3RDb21wb25lbnQsIFR1aUJ1dHRvbl0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNjT3JkZXJJdGVtc0xpc3RCeURpcmVjdGlvbnNDb21wb25lbnQge1xuICAgIC8qKlxuICAgICAqINCS0L3Rg9GC0YDQtdC90L3QuNC5INGB0LjQs9C90LDQuyDRgdC/0LjRgdC60LAg0Y3Qu9C10LzQtdC90YLQvtCyINC60L7RgNC30LjQvdGLICjRgtC+0LLQsNGA0L7QsikuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGl0ZW1zID0gaW5wdXQucmVxdWlyZWQ8U2NPcmRlckl0ZW1bXT4oKTtcblxuICAgIC8qKlxuICAgICAqINCS0LrQu9GO0YfQuNGC0Ywg0LLRi9Cx0L7RgCDQv9C+0LfQuNGG0LjQuSDRh9C10LrQsdC+0LrRgdCw0LzQuC5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgc2VsZWN0YWJsZSA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuXG4gICAgLyoqXG4gICAgICog0JLQutC70Y7Rh9C40YLRjCDRgNC10LTQsNC60YLQuNGA0L7QstCw0L3QuNC1INC/0L7Qt9C40YbQuNC5LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBlZGl0YWJsZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcblxuICAgIC8qKlxuICAgICAqINCS0LrQu9GO0YfQuNGC0Ywg0L7RgtC+0LHRgNCw0LbQtdC90LjQtSDQutC90L7Qv9C60Lgg0L/RgNC+0LTQvtC70LbQtdC90LjRjy5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgc2hvd0NvbnRpbnVlQnV0dG9uID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XG5cbiAgICAvKipcbiAgICAgKiDQotC10LrRgdGCINC60L3QvtC/0LrQuCDQv9GA0L7QtNC+0LvQttC10L3QuNGPLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBjb250aW51ZUJ1dHRvblRleHQgPSBpbnB1dDx7IHRpdGxlOiBzdHJpbmc7IGljb25TdGFydDogc3RyaW5nIH0+KHsgdGl0bGU6ICfQl9Cw0LrQsNC30LDRgtGMJywgaWNvblN0YXJ0OiAnQHR1aS5zaG9wcGluZy1jYXJ0JyB9KTtcblxuICAgIC8qKlxuICAgICAqINCh0L7QsdGL0YLQuNC1INC60LvQuNC60LAg0L3QsCDQutC90L7Qv9C60YMg0L/RgNC+0LTQvtC70LbQtdC90LjRjy5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgY29udGludWVDbGljayA9IG91dHB1dDxTY09yZGVySXRlbXNCeURpcmVjdGlvbj4oKTtcblxuICAgIC8qKlxuICAgICAqINCh0L/QuNGB0L7QuiDQvdCw0L/RgNCw0LLQu9C10L3QuNC5INC/0YDQvtC00LDQtiDQuNC3INGB0L/RgNCw0LLQvtGH0L3QuNC60LAuXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBkaXJlY3Rpb25zID0gdG9TaWduYWw8U2NJU2FsZXNEaXJlY3Rpb25bXSB8IHVuZGVmaW5lZD4oaW5qZWN0KFNjUmVmZXJlbmNlc1NlcnZpY2UpLmRpcmVjdGlvbnMkLCB7IGluaXRpYWxWYWx1ZTogdW5kZWZpbmVkIH0pO1xuXG4gICAgLyoqXG4gICAgICog0J/QvtC30LjRhtC40Lgg0LrQvtGA0LfQuNC90YssINGB0LPRgNGD0L/Qv9C40YDQvtCy0LDQvdC90YvQtSDQv9C+INC90LDQv9GA0LDQstC70LXQvdC40Y/QvCDQv9GA0L7QtNCw0LYuXG4gICAgICog0JXRgdC70Lgg0L/QtdGA0LXQtNCw0L0gY2FydERpcmVjdGlvbnMsINC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQvtC9LCDQuNC90LDRh9C1INCz0YDRg9C/0L/QuNGA0L7QstC60LAg0LLRi9C/0L7Qu9C90Y/QtdGC0YHRjyDQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQuC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbXNCeURpcmVjdGlvbnMgPSBjb21wdXRlZDxTY09yZGVySXRlbXNCeURpcmVjdGlvbltdPigoKSA9PiB7XG4gICAgICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5pdGVtcygpLmZpbHRlcigoaXRlbSkgPT4gIWl0ZW0ucHJvZHVjdC5pc051bGwgJiYgIWl0ZW0ucHJvZHVjdC5pc0hpZGRlbik7XG4gICAgICAgIGNvbnN0IGRpcmVjdGlvbnMgPSB0aGlzLmRpcmVjdGlvbnMoKTtcblxuICAgICAgICByZXR1cm4gZGlyZWN0aW9ucz8ubWFwKChkaXJlY3Rpb24pID0+IG5ldyBTY09yZGVySXRlbXNCeURpcmVjdGlvbihkaXJlY3Rpb24sIGl0ZW1zKSkuZmlsdGVyKChncm91cCkgPT4gZ3JvdXAuaXRlbXMubGVuZ3RoID4gMCkgPz8gW107XG4gICAgfSk7XG5cbiAgICAvKipcbiAgICAgKiDQn9C+0LfQuNGG0LjQuCDQutC+0YDQt9C40L3Riywg0LrQvtGC0L7RgNGL0LUg0LHQvtC70YzRiNC1INC90LUg0L/RgNC10LTQvtGB0YLQsNCy0LvRj9GO0YLRgdGPLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBudWxsSXRlbXMgPSBjb21wdXRlZDxTY09yZGVySXRlbVtdPigoKSA9PiB0aGlzLml0ZW1zKCkuZmlsdGVyKChpdGVtKSA9PiBpdGVtLnByb2R1Y3QuaXNOdWxsIHx8IGl0ZW0ucHJvZHVjdC5pc0hpZGRlbikpO1xuXG4gICAgLyoqXG4gICAgICog0JLRi9GF0L7QtNC90YvQtSDQtNCw0L3QvdGL0LUg0L/RgNC4INC40LfQvNC10L3QtdC90LjQuCDQstGL0LHQvtGA0LAg0L/QvtC30LjRhtC40LkuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IHNlbGVjdGVkSXRlbXNJZHMgPSBtb2RlbDxzdHJpbmdbXT4oW10pO1xuXG4gICAgLyoqXG4gICAgICog0J7QsdGA0LDQsdC+0YLRh9C40Log0LjQt9C80LXQvdC10L3QuNGPINCy0YvQsdC+0YDQsCDQv9C+0LfQuNGG0LjQuS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBpdGVtc0lkcyDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGLINCy0YvQsdGA0LDQvdC90YvRhSDQv9C+0LfQuNGG0LjQuS5cbiAgICAgKiBAcGFyYW0gZGlyZWN0aW9uINCd0LDQv9GA0LDQstC70LXQvdC40LUg0L/RgNC+0LTQsNC2LlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBzZWxlY3RlZEl0ZW1zSGFuZGxlcihpdGVtc0lkczogc3RyaW5nW10sIGRpcmVjdGlvbjogU2NPcmRlckl0ZW1zQnlEaXJlY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zSWRzLnVwZGF0ZSgocHJldmlvdXMpID0+IFtcbiAgICAgICAgICAgIC4uLnByZXZpb3VzLmZpbHRlcigoaWQpID0+ICFkaXJlY3Rpb24uaXRlbXMuc29tZSgoaXRlbSkgPT4gaXRlbS5pZCA9PT0gaWQpICYmIHRoaXMuaXRlbXMoKS5zb21lKChpdGVtKSA9PiBpdGVtLmlkID09PSBpZCkpLFxuICAgICAgICAgICAgLi4uaXRlbXNJZHMsXG4gICAgICAgIF0pO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC01XCI+XG4gICAgPCEtLSDQk9GA0YPQv9C/0Ysg0YLQvtCy0LDRgNC+0LIg0L/QviDQvdCw0L/RgNCw0LLQu9C10L3QuNGP0Lwg0L/RgNC+0LTQsNC2LiAtLT5cbiAgICBAZm9yIChkaXJlY3Rpb24gb2YgaXRlbXNCeURpcmVjdGlvbnMoKTsgdHJhY2sgZGlyZWN0aW9uLmRpcmVjdGlvbj8uaWQ7IGxldCBncm91cEluZGV4ID0gJGluZGV4KSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0yLjVcIj5cbiAgICAgICAgICAgIEBpZiAoZGlyZWN0aW9uLmRpcmVjdGlvbiAmJiBpdGVtc0J5RGlyZWN0aW9ucygpLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1iYXNlIGZvbnQtYm9sZFwiPtCd0LDQv9GA0LDQstC70LXQvdC40LUg0L/RgNC+0LTQsNC2OiB7eyBkaXJlY3Rpb24uZGlyZWN0aW9uLmRlc2NyaXB0aW9uIH19PC9kaXY+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIDxzYy1vcmRlci1pdGVtcy1saXN0XG4gICAgICAgICAgICAgICAgW2l0ZW1zXT1cImRpcmVjdGlvbi5pdGVtc1wiXG4gICAgICAgICAgICAgICAgW3NlbGVjdGFibGVdPVwic2VsZWN0YWJsZSgpXCJcbiAgICAgICAgICAgICAgICBbZWRpdGFibGVdPVwiZWRpdGFibGUoKVwiXG4gICAgICAgICAgICAgICAgKHNlbGVjdGVkSXRlbXNJZHNDaGFuZ2UpPVwic2VsZWN0ZWRJdGVtc0hhbmRsZXIoJGV2ZW50LCBkaXJlY3Rpb24pXCJcbiAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgIDwhLS0g0KTRg9GC0LXRgCDQs9GA0YPQv9C/0Ysg0YLQvtCy0LDRgNC+0LIuIC0tPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgaXRlbXMtY2VudGVyIHNtOmZsZXgtcm93IHNtOml0ZW1zLXN0YXJ0IHNtOmZsZXgtd3JhcC1yZXZlcnNlIGdyb3cgZ2FwLXgtMi41IGdhcC15LTRcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZm9vdGVyQWN0aW9uc11cIiAvPlxuXG4gICAgICAgICAgICAgICAgPCEtLSDQmtC90L7Qv9C60LAg0L/RgNC+0LTQvtC70LbQtdC90LjRjy4gLS0+XG4gICAgICAgICAgICAgICAgQGlmIChzaG93Q29udGludWVCdXR0b24oKSkge1xuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICB0dWlCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpcmVjdGlvbi5nZXRJdGVtc0J5SWRzKHNlbGVjdGVkSXRlbXNJZHMoKSkubGVuZ3RoID09PSAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uU3RhcnRdPVwiY29udGludWVCdXR0b25UZXh0KCkuaWNvblN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic206bWwtYXV0b1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY29udGludWVDbGljay5lbWl0KGRpcmVjdGlvbilcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBjb250aW51ZUJ1dHRvblRleHQoKS50aXRsZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgQGlmIChudWxsSXRlbXMoKS5sZW5ndGgpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTIuNVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtYmFzZSBmb250LWJvbGRcIj7QotC+0LLQsNGA0Ysg0Lgg0YPRgdC70YPQs9C4LCDQutC+0YLQvtGA0YvQtSDQsdC+0LvRjNGI0LUg0L3QtSDQv9GA0LXQtNC+0YHRgtCw0LLQu9GP0Y7RgtGB0Y8uPC9kaXY+XG5cbiAgICAgICAgICAgIDxzYy1vcmRlci1pdGVtcy1saXN0XG4gICAgICAgICAgICAgICAgW2l0ZW1zXT1cIm51bGxJdGVtcygpXCJcbiAgICAgICAgICAgICAgICBbc2VsZWN0YWJsZV09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgW2VkaXRhYmxlXT1cImVkaXRhYmxlKClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuPC9kaXY+XG4iXX0=
@@ -1,75 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, computed, input, model } from '@angular/core';
2
- import { ScOrderItemsListComponent } from '../order-items-list/sc-order-items-list.component';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * Компонент списка товаров, разбитых по наличию на складе:
6
- * - в наличии на складе;
7
- * - под заказ;
8
- * - отсутствуют на складе.
9
- */
10
- export class ScOrderItemsListByStockComponent {
11
- constructor() {
12
- /**
13
- * Список элементов (товаров) для отображения.
14
- */
15
- this.items = input.required();
16
- /**
17
- * Идентификатор склада для проверки наличия.
18
- */
19
- this.warehouseId = input.required();
20
- /**
21
- * Включить выбор позиций чекбоксами.
22
- */
23
- this.selectable = input(false);
24
- /**
25
- * Включить редактирование позиций.
26
- */
27
- this.editable = input(false);
28
- /**
29
- * Заголовок для секций «под заказ» и «нет на складе». Если не указан — заголовок не выводится.
30
- */
31
- this.sectionHeader = input();
32
- /**
33
- * Выходные данные при изменении выбора позиций.
34
- */
35
- this.selectedItemsIds = model([]);
36
- /**
37
- * Позиции в наличии на выбранном складе (не под заказ).
38
- */
39
- this.itemsInWarehouseStock = computed(() => {
40
- const items = this.items();
41
- const warehouseId = this.warehouseId();
42
- return items.filter((item) => item.product.isWarehouseStockExist(warehouseId) && !item.product.onOrder);
43
- });
44
- /**
45
- * Позиции под заказ.
46
- */
47
- this.itemsOnOrder = computed(() => {
48
- return this.items().filter((item) => item.product.onOrder);
49
- });
50
- /**
51
- * Позиции, которых нет на выбранном складе (не под заказ).
52
- */
53
- this.itemsNotInWarehouseStock = computed(() => {
54
- const items = this.items();
55
- const warehouseId = this.warehouseId();
56
- return items.filter((item) => !item.product.isWarehouseStockExist(warehouseId) && !item.product.onOrder);
57
- });
58
- }
59
- /**
60
- * Обработчик изменения выбора позиций.
61
- *
62
- * @param itemsIds Идентификаторы выбранных позиций.
63
- * @param items Позиции.
64
- */
65
- selectedItemsHandler(itemsIds, items) {
66
- this.selectedItemsIds.update((previous) => [...previous.filter((id) => !items.some((item) => item.id === id) && this.items().some((item) => item.id === id)), ...itemsIds]);
67
- }
68
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderItemsListByStockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
69
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ScOrderItemsListByStockComponent, isStandalone: true, selector: "sc-order-items-list-by-stock", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, warehouseId: { classPropertyName: "warehouseId", publicName: "warehouseId", isSignal: true, isRequired: true, transformFunction: null }, selectable: { classPropertyName: "selectable", publicName: "selectable", isSignal: true, isRequired: false, transformFunction: null }, editable: { classPropertyName: "editable", publicName: "editable", isSignal: true, isRequired: false, transformFunction: null }, sectionHeader: { classPropertyName: "sectionHeader", publicName: "sectionHeader", isSignal: true, isRequired: false, transformFunction: null }, selectedItemsIds: { classPropertyName: "selectedItemsIds", publicName: "selectedItemsIds", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedItemsIds: "selectedItemsIdsChange" }, ngImport: i0, template: "<div class=\"flex flex-col gap-5\">\n @if (itemsInWarehouseStock().length > 0) {\n <sc-order-items-list\n [items]=\"itemsInWarehouseStock()\"\n [selectable]=\"selectable()\"\n [editable]=\"editable()\"\n (selectedItemsIdsChange)=\"selectedItemsHandler($event, itemsInWarehouseStock())\"\n />\n }\n\n @if (itemsOnOrder().length > 0) {\n <div class=\"flex flex-col gap-2.5\">\n @if (sectionHeader()) {\n <div class=\"text-base font-bold text-sc-dark-grey\">{{ sectionHeader() }}</div>\n }\n <sc-order-items-list\n [items]=\"itemsOnOrder()\"\n [selectable]=\"selectable()\"\n [editable]=\"editable()\"\n (selectedItemsIdsChange)=\"selectedItemsHandler($event, itemsOnOrder())\"\n />\n </div>\n }\n\n @if (itemsNotInWarehouseStock().length > 0) {\n <div class=\"flex flex-col gap-2.5\">\n @if (sectionHeader()) {\n <div class=\"text-base font-bold text-sc-dark-grey\">{{ sectionHeader() }}</div>\n }\n <sc-order-items-list\n [items]=\"itemsNotInWarehouseStock()\"\n [selectable]=\"selectable()\"\n [editable]=\"editable()\"\n (selectedItemsIdsChange)=\"selectedItemsHandler($event, itemsNotInWarehouseStock())\"\n />\n </div>\n }\n</div>\n", dependencies: [{ kind: "component", type: ScOrderItemsListComponent, selector: "sc-order-items-list", inputs: ["selectable", "editable", "items"], outputs: ["selectedItemsIdsChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
70
- }
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderItemsListByStockComponent, decorators: [{
72
- type: Component,
73
- args: [{ standalone: true, selector: 'sc-order-items-list-by-stock', imports: [ScOrderItemsListComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col gap-5\">\n @if (itemsInWarehouseStock().length > 0) {\n <sc-order-items-list\n [items]=\"itemsInWarehouseStock()\"\n [selectable]=\"selectable()\"\n [editable]=\"editable()\"\n (selectedItemsIdsChange)=\"selectedItemsHandler($event, itemsInWarehouseStock())\"\n />\n }\n\n @if (itemsOnOrder().length > 0) {\n <div class=\"flex flex-col gap-2.5\">\n @if (sectionHeader()) {\n <div class=\"text-base font-bold text-sc-dark-grey\">{{ sectionHeader() }}</div>\n }\n <sc-order-items-list\n [items]=\"itemsOnOrder()\"\n [selectable]=\"selectable()\"\n [editable]=\"editable()\"\n (selectedItemsIdsChange)=\"selectedItemsHandler($event, itemsOnOrder())\"\n />\n </div>\n }\n\n @if (itemsNotInWarehouseStock().length > 0) {\n <div class=\"flex flex-col gap-2.5\">\n @if (sectionHeader()) {\n <div class=\"text-base font-bold text-sc-dark-grey\">{{ sectionHeader() }}</div>\n }\n <sc-order-items-list\n [items]=\"itemsNotInWarehouseStock()\"\n [selectable]=\"selectable()\"\n [editable]=\"editable()\"\n (selectedItemsIdsChange)=\"selectedItemsHandler($event, itemsNotInWarehouseStock())\"\n />\n </div>\n }\n</div>\n" }]
74
- }] });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtb3JkZXItaXRlbXMtbGlzdC1ieS1zdG9jay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvb3JkZXIvb3JkZXItaXRlbXMtbGlzdC1ieS1zdG9jay9zYy1vcmRlci1pdGVtcy1saXN0LWJ5LXN0b2NrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9vcmRlci9vcmRlci1pdGVtcy1saXN0LWJ5LXN0b2NrL3NjLW9yZGVyLWl0ZW1zLWxpc3QtYnktc3RvY2suY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQzs7QUFFOUY7Ozs7O0dBS0c7QUFRSCxNQUFNLE9BQU8sZ0NBQWdDO0lBUDdDO1FBUUk7O1dBRUc7UUFDYSxVQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBaUIsQ0FBQztRQUV4RDs7V0FFRztRQUNhLGdCQUFXLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBVSxDQUFDO1FBRXZEOztXQUVHO1FBQ2EsZUFBVSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUVuRDs7V0FFRztRQUNhLGFBQVEsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFFakQ7O1dBRUc7UUFDYSxrQkFBYSxHQUFHLEtBQUssRUFBc0IsQ0FBQztRQUU1RDs7V0FFRztRQUNhLHFCQUFnQixHQUFHLEtBQUssQ0FBVyxFQUFFLENBQUMsQ0FBQztRQUV2RDs7V0FFRztRQUNnQiwwQkFBcUIsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3JELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMzQixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFFdkMsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1RyxDQUFDLENBQUMsQ0FBQztRQUVIOztXQUVHO1FBQ2dCLGlCQUFZLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM1QyxPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0QsQ0FBQyxDQUFDLENBQUM7UUFFSDs7V0FFRztRQUNnQiw2QkFBd0IsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3hELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMzQixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFFdkMsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdHLENBQUMsQ0FBQyxDQUFDO0tBV047SUFURzs7Ozs7T0FLRztJQUNPLG9CQUFvQixDQUFDLFFBQWtCLEVBQUUsS0FBb0I7UUFDbkUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ2hMLENBQUM7K0dBbEVRLGdDQUFnQzttR0FBaEMsZ0NBQWdDLDg4QkNsQjdDLHU4Q0FzQ0EsNENEdkJjLHlCQUF5Qjs7NEZBRzFCLGdDQUFnQztrQkFQNUMsU0FBUztpQ0FDTSxJQUFJLFlBQ04sOEJBQThCLFdBRS9CLENBQUMseUJBQXlCLENBQUMsbUJBQ25CLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQsIG1vZGVsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY09yZGVySXRlbSB9IGZyb20gJ0BzbmFiY2VudHIvY2xpZW50LWNvcmUnO1xuXG5pbXBvcnQgeyBTY09yZGVySXRlbXNMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vb3JkZXItaXRlbXMtbGlzdC9zYy1vcmRlci1pdGVtcy1saXN0LmNvbXBvbmVudCc7XG5cbi8qKlxuICog0JrQvtC80L/QvtC90LXQvdGCINGB0L/QuNGB0LrQsCDRgtC+0LLQsNGA0L7Qsiwg0YDQsNC30LHQuNGC0YvRhSDQv9C+INC90LDQu9C40YfQuNGOINC90LAg0YHQutC70LDQtNC1OlxuICogLSDQsiDQvdCw0LvQuNGH0LjQuCDQvdCwINGB0LrQu9Cw0LTQtTtcbiAqIC0g0L/QvtC0INC30LDQutCw0Lc7XG4gKiAtINC+0YLRgdGD0YLRgdGC0LLRg9GO0YIg0L3QsCDRgdC60LvQsNC00LUuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdzYy1vcmRlci1pdGVtcy1saXN0LWJ5LXN0b2NrJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2Mtb3JkZXItaXRlbXMtbGlzdC1ieS1zdG9jay5jb21wb25lbnQuaHRtbCcsXG4gICAgaW1wb3J0czogW1NjT3JkZXJJdGVtc0xpc3RDb21wb25lbnRdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTY09yZGVySXRlbXNMaXN0QnlTdG9ja0NvbXBvbmVudCB7XG4gICAgLyoqXG4gICAgICog0KHQv9C40YHQvtC6INGN0LvQtdC80LXQvdGC0L7QsiAo0YLQvtCy0LDRgNC+0LIpINC00LvRjyDQvtGC0L7QsdGA0LDQttC10L3QuNGPLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBpdGVtcyA9IGlucHV0LnJlcXVpcmVkPFNjT3JkZXJJdGVtW10+KCk7XG5cbiAgICAvKipcbiAgICAgKiDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDRgdC60LvQsNC00LAg0LTQu9GPINC/0YDQvtCy0LXRgNC60Lgg0L3QsNC70LjRh9C40Y8uXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IHdhcmVob3VzZUlkID0gaW5wdXQucmVxdWlyZWQ8bnVtYmVyPigpO1xuXG4gICAgLyoqXG4gICAgICog0JLQutC70Y7Rh9C40YLRjCDQstGL0LHQvtGAINC/0L7Qt9C40YbQuNC5INGH0LXQutCx0L7QutGB0LDQvNC4LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBzZWxlY3RhYmxlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgLyoqXG4gICAgICog0JLQutC70Y7Rh9C40YLRjCDRgNC10LTQsNC60YLQuNGA0L7QstCw0L3QuNC1INC/0L7Qt9C40YbQuNC5LlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBlZGl0YWJsZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcblxuICAgIC8qKlxuICAgICAqINCX0LDQs9C+0LvQvtCy0L7QuiDQtNC70Y8g0YHQtdC60YbQuNC5IMKr0L/QvtC0INC30LDQutCw0LfCuyDQuCDCq9C90LXRgiDQvdCwINGB0LrQu9Cw0LTQtcK7LiDQldGB0LvQuCDQvdC1INGD0LrQsNC30LDQvSDigJQg0LfQsNCz0L7Qu9C+0LLQvtC6INC90LUg0LLRi9Cy0L7QtNC40YLRgdGPLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBzZWN0aW9uSGVhZGVyID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gICAgLyoqXG4gICAgICog0JLRi9GF0L7QtNC90YvQtSDQtNCw0L3QvdGL0LUg0L/RgNC4INC40LfQvNC10L3QtdC90LjQuCDQstGL0LHQvtGA0LAg0L/QvtC30LjRhtC40LkuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IHNlbGVjdGVkSXRlbXNJZHMgPSBtb2RlbDxzdHJpbmdbXT4oW10pO1xuXG4gICAgLyoqXG4gICAgICog0J/QvtC30LjRhtC40Lgg0LIg0L3QsNC70LjRh9C40Lgg0L3QsCDQstGL0LHRgNCw0L3QvdC+0Lwg0YHQutC70LDQtNC1ICjQvdC1INC/0L7QtCDQt9Cw0LrQsNC3KS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbXNJbldhcmVob3VzZVN0b2NrID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMuaXRlbXMoKTtcbiAgICAgICAgY29uc3Qgd2FyZWhvdXNlSWQgPSB0aGlzLndhcmVob3VzZUlkKCk7XG5cbiAgICAgICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5wcm9kdWN0LmlzV2FyZWhvdXNlU3RvY2tFeGlzdCh3YXJlaG91c2VJZCkgJiYgIWl0ZW0ucHJvZHVjdC5vbk9yZGVyKTtcbiAgICB9KTtcblxuICAgIC8qKlxuICAgICAqINCf0L7Qt9C40YbQuNC4INC/0L7QtCDQt9Cw0LrQsNC3LlxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpdGVtc09uT3JkZXIgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zKCkuZmlsdGVyKChpdGVtKSA9PiBpdGVtLnByb2R1Y3Qub25PcmRlcik7XG4gICAgfSk7XG5cbiAgICAvKipcbiAgICAgKiDQn9C+0LfQuNGG0LjQuCwg0LrQvtGC0L7RgNGL0YUg0L3QtdGCINC90LAg0LLRi9Cx0YDQsNC90L3QvtC8INGB0LrQu9Cw0LTQtSAo0L3QtSDQv9C+0LQg0LfQsNC60LDQtykuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGl0ZW1zTm90SW5XYXJlaG91c2VTdG9jayA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgaXRlbXMgPSB0aGlzLml0ZW1zKCk7XG4gICAgICAgIGNvbnN0IHdhcmVob3VzZUlkID0gdGhpcy53YXJlaG91c2VJZCgpO1xuXG4gICAgICAgIHJldHVybiBpdGVtcy5maWx0ZXIoKGl0ZW0pID0+ICFpdGVtLnByb2R1Y3QuaXNXYXJlaG91c2VTdG9ja0V4aXN0KHdhcmVob3VzZUlkKSAmJiAhaXRlbS5wcm9kdWN0Lm9uT3JkZXIpO1xuICAgIH0pO1xuXG4gICAgLyoqXG4gICAgICog0J7QsdGA0LDQsdC+0YLRh9C40Log0LjQt9C80LXQvdC10L3QuNGPINCy0YvQsdC+0YDQsCDQv9C+0LfQuNGG0LjQuS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBpdGVtc0lkcyDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGLINCy0YvQsdGA0LDQvdC90YvRhSDQv9C+0LfQuNGG0LjQuS5cbiAgICAgKiBAcGFyYW0gaXRlbXMg0J/QvtC30LjRhtC40LguXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHNlbGVjdGVkSXRlbXNIYW5kbGVyKGl0ZW1zSWRzOiBzdHJpbmdbXSwgaXRlbXM6IFNjT3JkZXJJdGVtW10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zSWRzLnVwZGF0ZSgocHJldmlvdXMpID0+IFsuLi5wcmV2aW91cy5maWx0ZXIoKGlkKSA9PiAhaXRlbXMuc29tZSgoaXRlbSkgPT4gaXRlbS5pZCA9PT0gaWQpICYmIHRoaXMuaXRlbXMoKS5zb21lKChpdGVtKSA9PiBpdGVtLmlkID09PSBpZCkpLCAuLi5pdGVtc0lkc10pO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC01XCI+XG4gICAgQGlmIChpdGVtc0luV2FyZWhvdXNlU3RvY2soKS5sZW5ndGggPiAwKSB7XG4gICAgICAgIDxzYy1vcmRlci1pdGVtcy1saXN0XG4gICAgICAgICAgICBbaXRlbXNdPVwiaXRlbXNJbldhcmVob3VzZVN0b2NrKClcIlxuICAgICAgICAgICAgW3NlbGVjdGFibGVdPVwic2VsZWN0YWJsZSgpXCJcbiAgICAgICAgICAgIFtlZGl0YWJsZV09XCJlZGl0YWJsZSgpXCJcbiAgICAgICAgICAgIChzZWxlY3RlZEl0ZW1zSWRzQ2hhbmdlKT1cInNlbGVjdGVkSXRlbXNIYW5kbGVyKCRldmVudCwgaXRlbXNJbldhcmVob3VzZVN0b2NrKCkpXCJcbiAgICAgICAgLz5cbiAgICB9XG5cbiAgICBAaWYgKGl0ZW1zT25PcmRlcigpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTIuNVwiPlxuICAgICAgICAgICAgQGlmIChzZWN0aW9uSGVhZGVyKCkpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1iYXNlIGZvbnQtYm9sZCB0ZXh0LXNjLWRhcmstZ3JleVwiPnt7IHNlY3Rpb25IZWFkZXIoKSB9fTwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPHNjLW9yZGVyLWl0ZW1zLWxpc3RcbiAgICAgICAgICAgICAgICBbaXRlbXNdPVwiaXRlbXNPbk9yZGVyKClcIlxuICAgICAgICAgICAgICAgIFtzZWxlY3RhYmxlXT1cInNlbGVjdGFibGUoKVwiXG4gICAgICAgICAgICAgICAgW2VkaXRhYmxlXT1cImVkaXRhYmxlKClcIlxuICAgICAgICAgICAgICAgIChzZWxlY3RlZEl0ZW1zSWRzQ2hhbmdlKT1cInNlbGVjdGVkSXRlbXNIYW5kbGVyKCRldmVudCwgaXRlbXNPbk9yZGVyKCkpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cblxuICAgIEBpZiAoaXRlbXNOb3RJbldhcmVob3VzZVN0b2NrKCkubGVuZ3RoID4gMCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMi41XCI+XG4gICAgICAgICAgICBAaWYgKHNlY3Rpb25IZWFkZXIoKSkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWJhc2UgZm9udC1ib2xkIHRleHQtc2MtZGFyay1ncmV5XCI+e3sgc2VjdGlvbkhlYWRlcigpIH19PC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8c2Mtb3JkZXItaXRlbXMtbGlzdFxuICAgICAgICAgICAgICAgIFtpdGVtc109XCJpdGVtc05vdEluV2FyZWhvdXNlU3RvY2soKVwiXG4gICAgICAgICAgICAgICAgW3NlbGVjdGFibGVdPVwic2VsZWN0YWJsZSgpXCJcbiAgICAgICAgICAgICAgICBbZWRpdGFibGVdPVwiZWRpdGFibGUoKVwiXG4gICAgICAgICAgICAgICAgKHNlbGVjdGVkSXRlbXNJZHNDaGFuZ2UpPVwic2VsZWN0ZWRJdGVtc0hhbmRsZXIoJGV2ZW50LCBpdGVtc05vdEluV2FyZWhvdXNlU3RvY2soKSlcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuPC9kaXY+XG4iXX0=
@@ -1,52 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { NgModule } from '@angular/core';
3
- import { TuiButton, TuiIcon, TuiLink } from '@taiga-ui/core';
4
- import { TuiPreview } from '@taiga-ui/kit';
5
- import { TuiBlockStatus } from '@taiga-ui/layout';
6
- import { PolymorpheusOutlet, PolymorpheusTemplate } from '@taiga-ui/polymorpheus';
7
- import { ScCatalogModule } from '../catalog';
8
- import { CostWithDiscountComponent } from '../catalog/cost-with-discount/cost-with-discount.component';
9
- import { ScPriceWarehouseStockComponent } from '../catalog/price-warehouse-stock/sc-price-warehouse-stock.component';
10
- import { ScPaymentStatusComponent } from './sc-payment-status/sc-payment-status.component';
11
- import * as i0 from "@angular/core";
12
- import * as i1 from "@taiga-ui/layout";
13
- import * as i2 from "@taiga-ui/kit";
14
- /**
15
- * Модуль заказов.
16
- */
17
- export class ScOrderModule {
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
19
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: ScOrderModule, declarations: [ScPaymentStatusComponent], imports: [CommonModule,
20
- TuiLink,
21
- TuiButton,
22
- TuiIcon, i1.TuiBlockStatusComponent, i1.TuiBlockStatusDirective, i2.TuiPreviewComponent, i2.TuiPreviewTitle, i2.TuiPreviewPagination, i2.TuiPreviewAction, i2.TuiPreviewZoom, ScCatalogModule,
23
- PolymorpheusTemplate,
24
- PolymorpheusOutlet,
25
- ScPriceWarehouseStockComponent,
26
- CostWithDiscountComponent], exports: [ScPaymentStatusComponent] }); }
27
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderModule, imports: [CommonModule,
28
- TuiIcon, i1.TuiBlockStatusComponent, i2.TuiPreviewComponent, i2.TuiPreviewTitle, i2.TuiPreviewPagination, i2.TuiPreviewZoom, ScCatalogModule,
29
- ScPriceWarehouseStockComponent,
30
- CostWithDiscountComponent] }); }
31
- }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderModule, decorators: [{
33
- type: NgModule,
34
- args: [{
35
- declarations: [ScPaymentStatusComponent],
36
- exports: [ScPaymentStatusComponent],
37
- imports: [
38
- CommonModule,
39
- TuiLink,
40
- TuiButton,
41
- TuiIcon,
42
- ...TuiBlockStatus,
43
- ...TuiPreview,
44
- ScCatalogModule,
45
- PolymorpheusTemplate,
46
- PolymorpheusOutlet,
47
- ScPriceWarehouseStockComponent,
48
- CostWithDiscountComponent,
49
- ],
50
- }]
51
- }] });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtb3JkZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL29yZGVyL3NjLW9yZGVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVsRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzdDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3JILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOzs7O0FBRTNGOztHQUVHO0FBa0JILE1BQU0sT0FBTyxhQUFhOytHQUFiLGFBQWE7Z0hBQWIsYUFBYSxpQkFoQlAsd0JBQXdCLGFBR25DLFlBQVk7WUFDWixPQUFPO1lBQ1AsU0FBUztZQUNULE9BQU8sdUtBR1AsZUFBZTtZQUNmLG9CQUFvQjtZQUNwQixrQkFBa0I7WUFDbEIsOEJBQThCO1lBQzlCLHlCQUF5QixhQVpuQix3QkFBd0I7Z0hBZXpCLGFBQWEsWUFibEIsWUFBWTtZQUdaLE9BQU8sc0hBR1AsZUFBZTtZQUdmLDhCQUE4QjtZQUM5Qix5QkFBeUI7OzRGQUdwQixhQUFhO2tCQWpCekIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztvQkFDeEMsT0FBTyxFQUFFLENBQUMsd0JBQXdCLENBQUM7b0JBQ25DLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLE9BQU87d0JBQ1AsU0FBUzt3QkFDVCxPQUFPO3dCQUNQLEdBQUcsY0FBYzt3QkFDakIsR0FBRyxVQUFVO3dCQUNiLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixrQkFBa0I7d0JBQ2xCLDhCQUE4Qjt3QkFDOUIseUJBQXlCO3FCQUM1QjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHVpQnV0dG9uLCBUdWlJY29uLCBUdWlMaW5rIH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHsgVHVpUHJldmlldyB9IGZyb20gJ0B0YWlnYS11aS9raXQnO1xuaW1wb3J0IHsgVHVpQmxvY2tTdGF0dXMgfSBmcm9tICdAdGFpZ2EtdWkvbGF5b3V0JztcbmltcG9ydCB7IFBvbHltb3JwaGV1c091dGxldCwgUG9seW1vcnBoZXVzVGVtcGxhdGUgfSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHsgU2NDYXRhbG9nTW9kdWxlIH0gZnJvbSAnLi4vY2F0YWxvZyc7XG5pbXBvcnQgeyBDb3N0V2l0aERpc2NvdW50Q29tcG9uZW50IH0gZnJvbSAnLi4vY2F0YWxvZy9jb3N0LXdpdGgtZGlzY291bnQvY29zdC13aXRoLWRpc2NvdW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTY1ByaWNlV2FyZWhvdXNlU3RvY2tDb21wb25lbnQgfSBmcm9tICcuLi9jYXRhbG9nL3ByaWNlLXdhcmVob3VzZS1zdG9jay9zYy1wcmljZS13YXJlaG91c2Utc3RvY2suY29tcG9uZW50JztcbmltcG9ydCB7IFNjUGF5bWVudFN0YXR1c0NvbXBvbmVudCB9IGZyb20gJy4vc2MtcGF5bWVudC1zdGF0dXMvc2MtcGF5bWVudC1zdGF0dXMuY29tcG9uZW50JztcblxuLyoqXG4gKiDQnNC+0LTRg9C70Ywg0LfQsNC60LDQt9C+0LIuXG4gKi9cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbU2NQYXltZW50U3RhdHVzQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbU2NQYXltZW50U3RhdHVzQ29tcG9uZW50XSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgVHVpTGluayxcbiAgICAgICAgVHVpQnV0dG9uLFxuICAgICAgICBUdWlJY29uLFxuICAgICAgICAuLi5UdWlCbG9ja1N0YXR1cyxcbiAgICAgICAgLi4uVHVpUHJldmlldyxcbiAgICAgICAgU2NDYXRhbG9nTW9kdWxlLFxuICAgICAgICBQb2x5bW9ycGhldXNUZW1wbGF0ZSxcbiAgICAgICAgUG9seW1vcnBoZXVzT3V0bGV0LFxuICAgICAgICBTY1ByaWNlV2FyZWhvdXNlU3RvY2tDb21wb25lbnQsXG4gICAgICAgIENvc3RXaXRoRGlzY291bnRDb21wb25lbnQsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2NPcmRlck1vZHVsZSB7fVxuIl19