@snabcentr/client-core 3.5.6 → 4.0.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 (897) hide show
  1. package/fesm2022/snabcentr-client-core.mjs +540 -503
  2. package/fesm2022/snabcentr-client-core.mjs.map +1 -1
  3. package/package.json +23 -24
  4. package/release_notes.tmp +0 -6
  5. package/types/snabcentr-client-core.d.ts +10138 -0
  6. package/auth/index.d.ts +0 -3
  7. package/auth/interfaces/index.d.ts +0 -5
  8. package/auth/interfaces/sc-i-api-error-response.d.ts +0 -13
  9. package/auth/interfaces/sc-i-auth-token.d.ts +0 -14
  10. package/auth/interfaces/sc-i-login.d.ts +0 -13
  11. package/auth/interfaces/sc-i-phone-login.d.ts +0 -13
  12. package/auth/interfaces/sc-i-token.d.ts +0 -13
  13. package/auth/services/index.d.ts +0 -2
  14. package/auth/services/sc-auth.service.d.ts +0 -78
  15. package/auth/services/sc-token.service.d.ts +0 -79
  16. package/auth/tokens/index.d.ts +0 -3
  17. package/auth/tokens/sc-access-auth-token-storage-key.d.ts +0 -5
  18. package/auth/tokens/sc-guest-token-storage-key.d.ts +0 -5
  19. package/auth/tokens/sc-refresh-auth-token-storage-key.d.ts +0 -5
  20. package/banners/dto/index.d.ts +0 -2
  21. package/banners/dto/sc-banner.d.ts +0 -56
  22. package/banners/dto/sc-i-banner.d.ts +0 -41
  23. package/banners/index.d.ts +0 -2
  24. package/banners/services/sc-banner.service.d.ts +0 -22
  25. package/cart/classes/index.d.ts +0 -2
  26. package/cart/classes/sc-cart.d.ts +0 -26
  27. package/cart/classes/sc-sum.d.ts +0 -12
  28. package/cart/constants/index.d.ts +0 -1
  29. package/cart/constants/sc-empty-cart.d.ts +0 -7
  30. package/cart/index.d.ts +0 -4
  31. package/cart/internal/index.d.ts +0 -1
  32. package/cart/internal/sc-i-cart.d.ts +0 -19
  33. package/cart/services/index.d.ts +0 -1
  34. package/cart/services/sc-cart.service.d.ts +0 -113
  35. package/catalog/classes/index.d.ts +0 -3
  36. package/catalog/classes/sc-cached-data.d.ts +0 -25
  37. package/catalog/classes/sc-cached-item.d.ts +0 -53
  38. package/catalog/classes/sc-catalog-item.d.ts +0 -31
  39. package/catalog/dto/index.d.ts +0 -7
  40. package/catalog/dto/sc-category.d.ts +0 -133
  41. package/catalog/dto/sc-i-discount.d.ts +0 -21
  42. package/catalog/dto/sc-i-product-images.d.ts +0 -25
  43. package/catalog/dto/sc-i-product-notify-when-in-stock.d.ts +0 -21
  44. package/catalog/dto/sc-i-properties.d.ts +0 -88
  45. package/catalog/dto/sc-product.d.ts +0 -177
  46. package/catalog/dto/sc-virtual-category.d.ts +0 -27
  47. package/catalog/enums/index.d.ts +0 -3
  48. package/catalog/enums/sc-catalog-format.d.ts +0 -13
  49. package/catalog/enums/sc-mime-types.d.ts +0 -77
  50. package/catalog/enums/sc-product-tile-type.d.ts +0 -13
  51. package/catalog/index.d.ts +0 -8
  52. package/catalog/interfaces/index.d.ts +0 -13
  53. package/catalog/interfaces/sc-catalog-filter.d.ts +0 -7
  54. package/catalog/interfaces/sc-i-base-catalog-filter.d.ts +0 -17
  55. package/catalog/interfaces/sc-i-catalog-item.d.ts +0 -16
  56. package/catalog/interfaces/sc-i-category-product-params.d.ts +0 -45
  57. package/catalog/interfaces/sc-i-category-products-pagination-params.d.ts +0 -19
  58. package/catalog/interfaces/sc-i-category.d.ts +0 -29
  59. package/catalog/interfaces/sc-i-checkbox-filter.d.ts +0 -31
  60. package/catalog/interfaces/sc-i-product.d.ts +0 -78
  61. package/catalog/interfaces/sc-i-range-filter.d.ts +0 -26
  62. package/catalog/interfaces/sc-i-toggle-filter.d.ts +0 -14
  63. package/catalog/interfaces/sc-i-virtual-category.d.ts +0 -20
  64. package/catalog/interfaces/sc-property-filters.d.ts +0 -5
  65. package/catalog/interfaces/sc-t-product-sort-field.d.ts +0 -4
  66. package/catalog/internal/index.d.ts +0 -1
  67. package/catalog/internal/sc-i-filter-tree-category.d.ts +0 -15
  68. package/catalog/services/index.d.ts +0 -4
  69. package/catalog/services/sc-catalog-filter.service.d.ts +0 -33
  70. package/catalog/services/sc-catalog.service.d.ts +0 -191
  71. package/catalog/services/sc-favorite.service.d.ts +0 -62
  72. package/catalog/services/sc-recommendation.service.d.ts +0 -60
  73. package/catalog/tokens/index.d.ts +0 -1
  74. package/catalog/tokens/sc-count-first-discounted-products.d.ts +0 -5
  75. package/catalog/types/index.d.ts +0 -2
  76. package/catalog/types/sc-filters-tree-catalog.d.ts +0 -5
  77. package/catalog/types/sc-price-history.d.ts +0 -13
  78. package/common/classes/index.d.ts +0 -10
  79. package/common/classes/sc-catalogable-item.d.ts +0 -17
  80. package/common/classes/sc-coded-identity.d.ts +0 -17
  81. package/common/classes/sc-deletable-named-identity.d.ts +0 -17
  82. package/common/classes/sc-hidden-catalogable-item.d.ts +0 -17
  83. package/common/classes/sc-identity.d.ts +0 -25
  84. package/common/classes/sc-image.d.ts +0 -24
  85. package/common/classes/sc-named-identity.d.ts +0 -17
  86. package/common/classes/sc-primary-catalogable-item.d.ts +0 -17
  87. package/common/classes/sc-reference.d.ts +0 -21
  88. package/common/classes/sc-updatable-named-identity.d.ts +0 -17
  89. package/common/enums/index.d.ts +0 -1
  90. package/common/enums/request-state-status-enum.d.ts +0 -17
  91. package/common/index.d.ts +0 -3
  92. package/common/interfaces/index.d.ts +0 -18
  93. package/common/interfaces/sc-i-catalogable-item.d.ts +0 -10
  94. package/common/interfaces/sc-i-coded-identity.d.ts +0 -10
  95. package/common/interfaces/sc-i-created-at.d.ts +0 -9
  96. package/common/interfaces/sc-i-date-period.d.ts +0 -6
  97. package/common/interfaces/sc-i-deletable-named-identity.d.ts +0 -7
  98. package/common/interfaces/sc-i-deleted-at.d.ts +0 -9
  99. package/common/interfaces/sc-i-file.d.ts +0 -13
  100. package/common/interfaces/sc-i-hidden-catalogable-item.d.ts +0 -10
  101. package/common/interfaces/sc-i-identity.d.ts +0 -13
  102. package/common/interfaces/sc-i-image.d.ts +0 -17
  103. package/common/interfaces/sc-i-named-identity.d.ts +0 -7
  104. package/common/interfaces/sc-i-named.d.ts +0 -9
  105. package/common/interfaces/sc-i-primary-catalogable-item.d.ts +0 -10
  106. package/common/interfaces/sc-i-reference.d.ts +0 -14
  107. package/common/interfaces/sc-i-request-state.d.ts +0 -35
  108. package/common/interfaces/sc-i-typed-nullable-range.d.ts +0 -13
  109. package/common/interfaces/sc-i-updatable-named-identity.d.ts +0 -7
  110. package/common/interfaces/sc-i-updated-at.d.ts +0 -9
  111. package/config/index.d.ts +0 -11
  112. package/config/sc-i-api-keys.d.ts +0 -13
  113. package/config/sc-i-app-release.d.ts +0 -17
  114. package/config/sc-i-cache-lifetime.d.ts +0 -27
  115. package/config/sc-i-company-base-info.d.ts +0 -54
  116. package/config/sc-i-date-format.d.ts +0 -17
  117. package/config/sc-i-feedback-api.d.ts +0 -17
  118. package/config/sc-i-maps-default-options.d.ts +0 -13
  119. package/config/sc-i-update-interval.d.ts +0 -13
  120. package/config/sc-i-urls.d.ts +0 -44
  121. package/config/sc-i-user-configs.d.ts +0 -9
  122. package/config/sc-route-keys.d.ts +0 -153
  123. package/configurator/dto/index.d.ts +0 -7
  124. package/configurator/dto/sc-i-configurator-base.d.ts +0 -5
  125. package/configurator/dto/sc-i-configurator-calculate-result.d.ts +0 -18
  126. package/configurator/dto/sc-i-configurator-calculate-sheet.d.ts +0 -9
  127. package/configurator/dto/sc-i-configurator-search-product-base.d.ts +0 -5
  128. package/configurator/dto/sc-i-configurator-settings-base.d.ts +0 -5
  129. package/configurator/dto/sc-i-sandwich-calculate-item.d.ts +0 -17
  130. package/configurator/dto/sc-i-sandwich-calculate.d.ts +0 -14
  131. package/configurator/index.d.ts +0 -3
  132. package/configurator/services/index.d.ts +0 -1
  133. package/configurator/services/sc-configurator.service.d.ts +0 -81
  134. package/configurator/types/index.d.ts +0 -1
  135. package/configurator/types/sc-type-by-key.d.ts +0 -5
  136. package/contacts/dto/index.d.ts +0 -9
  137. package/contacts/dto/sc-i-contact-and-media.d.ts +0 -23
  138. package/contacts/dto/sc-i-direction-manager-contact.d.ts +0 -42
  139. package/contacts/dto/sc-i-feedback-message.d.ts +0 -35
  140. package/contacts/dto/sc-i-org-contact.d.ts +0 -46
  141. package/contacts/dto/sc-i-requisites-with-label.d.ts +0 -13
  142. package/contacts/dto/sc-i-requisites.d.ts +0 -58
  143. package/contacts/dto/sc-i-retail-contact.d.ts +0 -47
  144. package/contacts/dto/sc-i-social-media.d.ts +0 -18
  145. package/contacts/dto/sc-uploaded-file.d.ts +0 -14
  146. package/contacts/enums/index.d.ts +0 -2
  147. package/contacts/enums/sc-feedback-forms.d.ts +0 -29
  148. package/contacts/enums/sc-social-type.d.ts +0 -21
  149. package/contacts/index.d.ts +0 -3
  150. package/contacts/services/index.d.ts +0 -3
  151. package/contacts/services/sc-contacts.service.d.ts +0 -79
  152. package/contacts/services/sc-feedback.service.d.ts +0 -41
  153. package/contacts/services/sc-requisites.service.d.ts +0 -90
  154. package/contragent/dto/index.d.ts +0 -13
  155. package/contragent/dto/sc-contragent-on-data-create.d.ts +0 -8
  156. package/contragent/dto/sc-contragent.d.ts +0 -8
  157. package/contragent/dto/sc-i-bank-account-on-data-create.d.ts +0 -25
  158. package/contragent/dto/sc-i-bank-account.d.ts +0 -15
  159. package/contragent/dto/sc-i-contragent-entrepreneur-on-data-create.d.ts +0 -43
  160. package/contragent/dto/sc-i-contragent-entrepreneur.d.ts +0 -38
  161. package/contragent/dto/sc-i-contragent-individual-on-data-create.d.ts +0 -23
  162. package/contragent/dto/sc-i-contragent-individual.d.ts +0 -18
  163. package/contragent/dto/sc-i-contragent-legal-on-data-create.d.ts +0 -10
  164. package/contragent/dto/sc-i-contragent-legal.d.ts +0 -10
  165. package/contragent/dto/sc-i-contragent-non-resident-legal-on-data-create.d.ts +0 -18
  166. package/contragent/dto/sc-i-contragent-non-resident-legal.d.ts +0 -19
  167. package/contragent/dto/sc-i-opf.d.ts +0 -21
  168. package/contragent/index.d.ts +0 -2
  169. package/contragent/services/index.d.ts +0 -1
  170. package/contragent/services/sc-contragent.service.d.ts +0 -105
  171. package/converters/index.d.ts +0 -2
  172. package/converters/services/sc-converters.service.d.ts +0 -61
  173. package/converters/types/index.d.ts +0 -1
  174. package/converters/types/sc-date-to-string.d.ts +0 -6
  175. package/delivery-address/dto/index.d.ts +0 -2
  176. package/delivery-address/dto/sc-i-delivery-addresses-on-data-create.d.ts +0 -44
  177. package/delivery-address/dto/sc-i-delivery-addresses.d.ts +0 -10
  178. package/delivery-address/index.d.ts +0 -2
  179. package/delivery-address/services/index.d.ts +0 -1
  180. package/delivery-address/services/sc-delivery-address.service.d.ts +0 -73
  181. package/esm2022/auth/index.mjs +0 -4
  182. package/esm2022/auth/interfaces/index.mjs +0 -6
  183. package/esm2022/auth/interfaces/sc-i-api-error-response.mjs +0 -2
  184. package/esm2022/auth/interfaces/sc-i-auth-token.mjs +0 -2
  185. package/esm2022/auth/interfaces/sc-i-login.mjs +0 -2
  186. package/esm2022/auth/interfaces/sc-i-phone-login.mjs +0 -2
  187. package/esm2022/auth/interfaces/sc-i-token.mjs +0 -2
  188. package/esm2022/auth/services/index.mjs +0 -3
  189. package/esm2022/auth/services/sc-auth.service.mjs +0 -162
  190. package/esm2022/auth/services/sc-token.service.mjs +0 -158
  191. package/esm2022/auth/tokens/index.mjs +0 -4
  192. package/esm2022/auth/tokens/sc-access-auth-token-storage-key.mjs +0 -9
  193. package/esm2022/auth/tokens/sc-guest-token-storage-key.mjs +0 -9
  194. package/esm2022/auth/tokens/sc-refresh-auth-token-storage-key.mjs +0 -9
  195. package/esm2022/banners/dto/index.mjs +0 -3
  196. package/esm2022/banners/dto/sc-banner.mjs +0 -34
  197. package/esm2022/banners/dto/sc-i-banner.mjs +0 -2
  198. package/esm2022/banners/index.mjs +0 -3
  199. package/esm2022/banners/services/sc-banner.service.mjs +0 -35
  200. package/esm2022/cart/classes/index.mjs +0 -3
  201. package/esm2022/cart/classes/sc-cart.mjs +0 -18
  202. package/esm2022/cart/classes/sc-sum.mjs +0 -14
  203. package/esm2022/cart/constants/index.mjs +0 -2
  204. package/esm2022/cart/constants/sc-empty-cart.mjs +0 -2
  205. package/esm2022/cart/index.mjs +0 -5
  206. package/esm2022/cart/internal/index.mjs +0 -2
  207. package/esm2022/cart/internal/sc-i-cart.mjs +0 -2
  208. package/esm2022/cart/services/index.mjs +0 -2
  209. package/esm2022/cart/services/sc-cart.service.mjs +0 -203
  210. package/esm2022/catalog/classes/index.mjs +0 -4
  211. package/esm2022/catalog/classes/sc-cached-data.mjs +0 -23
  212. package/esm2022/catalog/classes/sc-cached-item.mjs +0 -60
  213. package/esm2022/catalog/classes/sc-catalog-item.mjs +0 -19
  214. package/esm2022/catalog/dto/index.mjs +0 -8
  215. package/esm2022/catalog/dto/sc-category.mjs +0 -180
  216. package/esm2022/catalog/dto/sc-i-discount.mjs +0 -2
  217. package/esm2022/catalog/dto/sc-i-product-images.mjs +0 -2
  218. package/esm2022/catalog/dto/sc-i-product-notify-when-in-stock.mjs +0 -2
  219. package/esm2022/catalog/dto/sc-i-properties.mjs +0 -2
  220. package/esm2022/catalog/dto/sc-product.mjs +0 -159
  221. package/esm2022/catalog/dto/sc-virtual-category.mjs +0 -22
  222. package/esm2022/catalog/enums/index.mjs +0 -4
  223. package/esm2022/catalog/enums/sc-catalog-format.mjs +0 -16
  224. package/esm2022/catalog/enums/sc-mime-types.mjs +0 -81
  225. package/esm2022/catalog/enums/sc-product-tile-type.mjs +0 -16
  226. package/esm2022/catalog/index.mjs +0 -9
  227. package/esm2022/catalog/interfaces/index.mjs +0 -14
  228. package/esm2022/catalog/interfaces/sc-catalog-filter.mjs +0 -2
  229. package/esm2022/catalog/interfaces/sc-i-base-catalog-filter.mjs +0 -2
  230. package/esm2022/catalog/interfaces/sc-i-catalog-item.mjs +0 -2
  231. package/esm2022/catalog/interfaces/sc-i-category-product-params.mjs +0 -2
  232. package/esm2022/catalog/interfaces/sc-i-category-products-pagination-params.mjs +0 -2
  233. package/esm2022/catalog/interfaces/sc-i-category.mjs +0 -3
  234. package/esm2022/catalog/interfaces/sc-i-checkbox-filter.mjs +0 -2
  235. package/esm2022/catalog/interfaces/sc-i-product.mjs +0 -3
  236. package/esm2022/catalog/interfaces/sc-i-range-filter.mjs +0 -2
  237. package/esm2022/catalog/interfaces/sc-i-toggle-filter.mjs +0 -2
  238. package/esm2022/catalog/interfaces/sc-i-virtual-category.mjs +0 -2
  239. package/esm2022/catalog/interfaces/sc-property-filters.mjs +0 -2
  240. package/esm2022/catalog/interfaces/sc-t-product-sort-field.mjs +0 -2
  241. package/esm2022/catalog/internal/index.mjs +0 -2
  242. package/esm2022/catalog/internal/sc-i-filter-tree-category.mjs +0 -2
  243. package/esm2022/catalog/services/index.mjs +0 -5
  244. package/esm2022/catalog/services/sc-catalog-filter.service.mjs +0 -62
  245. package/esm2022/catalog/services/sc-catalog.service.mjs +0 -341
  246. package/esm2022/catalog/services/sc-favorite.service.mjs +0 -91
  247. package/esm2022/catalog/services/sc-recommendation.service.mjs +0 -126
  248. package/esm2022/catalog/tokens/index.mjs +0 -2
  249. package/esm2022/catalog/tokens/sc-count-first-discounted-products.mjs +0 -8
  250. package/esm2022/catalog/types/index.mjs +0 -3
  251. package/esm2022/catalog/types/sc-filters-tree-catalog.mjs +0 -2
  252. package/esm2022/catalog/types/sc-price-history.mjs +0 -2
  253. package/esm2022/common/classes/index.mjs +0 -11
  254. package/esm2022/common/classes/sc-catalogable-item.mjs +0 -16
  255. package/esm2022/common/classes/sc-coded-identity.mjs +0 -21
  256. package/esm2022/common/classes/sc-deletable-named-identity.mjs +0 -18
  257. package/esm2022/common/classes/sc-hidden-catalogable-item.mjs +0 -16
  258. package/esm2022/common/classes/sc-identity.mjs +0 -23
  259. package/esm2022/common/classes/sc-image.mjs +0 -16
  260. package/esm2022/common/classes/sc-named-identity.mjs +0 -21
  261. package/esm2022/common/classes/sc-primary-catalogable-item.mjs +0 -16
  262. package/esm2022/common/classes/sc-reference.mjs +0 -17
  263. package/esm2022/common/classes/sc-updatable-named-identity.mjs +0 -18
  264. package/esm2022/common/enums/index.mjs +0 -2
  265. package/esm2022/common/enums/request-state-status-enum.mjs +0 -19
  266. package/esm2022/common/index.mjs +0 -4
  267. package/esm2022/common/interfaces/index.mjs +0 -19
  268. package/esm2022/common/interfaces/sc-i-catalogable-item.mjs +0 -2
  269. package/esm2022/common/interfaces/sc-i-coded-identity.mjs +0 -2
  270. package/esm2022/common/interfaces/sc-i-created-at.mjs +0 -2
  271. package/esm2022/common/interfaces/sc-i-date-period.mjs +0 -2
  272. package/esm2022/common/interfaces/sc-i-deletable-named-identity.mjs +0 -2
  273. package/esm2022/common/interfaces/sc-i-deleted-at.mjs +0 -2
  274. package/esm2022/common/interfaces/sc-i-file.mjs +0 -2
  275. package/esm2022/common/interfaces/sc-i-hidden-catalogable-item.mjs +0 -2
  276. package/esm2022/common/interfaces/sc-i-identity.mjs +0 -2
  277. package/esm2022/common/interfaces/sc-i-image.mjs +0 -2
  278. package/esm2022/common/interfaces/sc-i-named-identity.mjs +0 -2
  279. package/esm2022/common/interfaces/sc-i-named.mjs +0 -2
  280. package/esm2022/common/interfaces/sc-i-primary-catalogable-item.mjs +0 -2
  281. package/esm2022/common/interfaces/sc-i-reference.mjs +0 -2
  282. package/esm2022/common/interfaces/sc-i-request-state.mjs +0 -26
  283. package/esm2022/common/interfaces/sc-i-typed-nullable-range.mjs +0 -2
  284. package/esm2022/common/interfaces/sc-i-updatable-named-identity.mjs +0 -2
  285. package/esm2022/common/interfaces/sc-i-updated-at.mjs +0 -2
  286. package/esm2022/config/index.mjs +0 -12
  287. package/esm2022/config/sc-i-api-keys.mjs +0 -2
  288. package/esm2022/config/sc-i-app-release.mjs +0 -2
  289. package/esm2022/config/sc-i-cache-lifetime.mjs +0 -2
  290. package/esm2022/config/sc-i-company-base-info.mjs +0 -2
  291. package/esm2022/config/sc-i-date-format.mjs +0 -2
  292. package/esm2022/config/sc-i-feedback-api.mjs +0 -2
  293. package/esm2022/config/sc-i-maps-default-options.mjs +0 -2
  294. package/esm2022/config/sc-i-update-interval.mjs +0 -2
  295. package/esm2022/config/sc-i-urls.mjs +0 -2
  296. package/esm2022/config/sc-i-user-configs.mjs +0 -2
  297. package/esm2022/config/sc-route-keys.mjs +0 -155
  298. package/esm2022/configurator/dto/index.mjs +0 -8
  299. package/esm2022/configurator/dto/sc-i-configurator-base.mjs +0 -2
  300. package/esm2022/configurator/dto/sc-i-configurator-calculate-result.mjs +0 -2
  301. package/esm2022/configurator/dto/sc-i-configurator-calculate-sheet.mjs +0 -2
  302. package/esm2022/configurator/dto/sc-i-configurator-search-product-base.mjs +0 -2
  303. package/esm2022/configurator/dto/sc-i-configurator-settings-base.mjs +0 -2
  304. package/esm2022/configurator/dto/sc-i-sandwich-calculate-item.mjs +0 -2
  305. package/esm2022/configurator/dto/sc-i-sandwich-calculate.mjs +0 -2
  306. package/esm2022/configurator/index.mjs +0 -4
  307. package/esm2022/configurator/services/index.mjs +0 -2
  308. package/esm2022/configurator/services/sc-configurator.service.mjs +0 -119
  309. package/esm2022/configurator/types/index.mjs +0 -2
  310. package/esm2022/configurator/types/sc-type-by-key.mjs +0 -2
  311. package/esm2022/contacts/dto/index.mjs +0 -10
  312. package/esm2022/contacts/dto/sc-i-contact-and-media.mjs +0 -2
  313. package/esm2022/contacts/dto/sc-i-direction-manager-contact.mjs +0 -2
  314. package/esm2022/contacts/dto/sc-i-feedback-message.mjs +0 -2
  315. package/esm2022/contacts/dto/sc-i-org-contact.mjs +0 -2
  316. package/esm2022/contacts/dto/sc-i-requisites-with-label.mjs +0 -2
  317. package/esm2022/contacts/dto/sc-i-requisites.mjs +0 -2
  318. package/esm2022/contacts/dto/sc-i-retail-contact.mjs +0 -2
  319. package/esm2022/contacts/dto/sc-i-social-media.mjs +0 -2
  320. package/esm2022/contacts/dto/sc-uploaded-file.mjs +0 -16
  321. package/esm2022/contacts/enums/index.mjs +0 -3
  322. package/esm2022/contacts/enums/sc-feedback-forms.mjs +0 -31
  323. package/esm2022/contacts/enums/sc-social-type.mjs +0 -24
  324. package/esm2022/contacts/index.mjs +0 -4
  325. package/esm2022/contacts/services/index.mjs +0 -4
  326. package/esm2022/contacts/services/sc-contacts.service.mjs +0 -110
  327. package/esm2022/contacts/services/sc-feedback.service.mjs +0 -73
  328. package/esm2022/contacts/services/sc-requisites.service.mjs +0 -141
  329. package/esm2022/contragent/dto/index.mjs +0 -14
  330. package/esm2022/contragent/dto/sc-contragent-on-data-create.mjs +0 -2
  331. package/esm2022/contragent/dto/sc-contragent.mjs +0 -2
  332. package/esm2022/contragent/dto/sc-i-bank-account-on-data-create.mjs +0 -2
  333. package/esm2022/contragent/dto/sc-i-bank-account.mjs +0 -2
  334. package/esm2022/contragent/dto/sc-i-contragent-entrepreneur-on-data-create.mjs +0 -2
  335. package/esm2022/contragent/dto/sc-i-contragent-entrepreneur.mjs +0 -2
  336. package/esm2022/contragent/dto/sc-i-contragent-individual-on-data-create.mjs +0 -2
  337. package/esm2022/contragent/dto/sc-i-contragent-individual.mjs +0 -2
  338. package/esm2022/contragent/dto/sc-i-contragent-legal-on-data-create.mjs +0 -2
  339. package/esm2022/contragent/dto/sc-i-contragent-legal.mjs +0 -2
  340. package/esm2022/contragent/dto/sc-i-contragent-non-resident-legal-on-data-create.mjs +0 -2
  341. package/esm2022/contragent/dto/sc-i-contragent-non-resident-legal.mjs +0 -2
  342. package/esm2022/contragent/dto/sc-i-opf.mjs +0 -2
  343. package/esm2022/contragent/index.mjs +0 -3
  344. package/esm2022/contragent/services/index.mjs +0 -2
  345. package/esm2022/contragent/services/sc-contragent.service.mjs +0 -166
  346. package/esm2022/converters/index.mjs +0 -3
  347. package/esm2022/converters/services/sc-converters.service.mjs +0 -136
  348. package/esm2022/converters/types/index.mjs +0 -2
  349. package/esm2022/converters/types/sc-date-to-string.mjs +0 -2
  350. package/esm2022/delivery-address/dto/index.mjs +0 -3
  351. package/esm2022/delivery-address/dto/sc-i-delivery-addresses-on-data-create.mjs +0 -2
  352. package/esm2022/delivery-address/dto/sc-i-delivery-addresses.mjs +0 -2
  353. package/esm2022/delivery-address/index.mjs +0 -3
  354. package/esm2022/delivery-address/services/index.mjs +0 -2
  355. package/esm2022/delivery-address/services/sc-delivery-address.service.mjs +0 -120
  356. package/esm2022/files/classes/sc-document-info-node.mjs +0 -16
  357. package/esm2022/files/classes/sc-document-info.mjs +0 -2
  358. package/esm2022/files/enums/sc-document-info-types-enum.mjs +0 -21
  359. package/esm2022/files/enums/sc-icon-types-enum.mjs +0 -36
  360. package/esm2022/files/index.mjs +0 -6
  361. package/esm2022/files/services/sc-files.service.mjs +0 -92
  362. package/esm2022/frequently-asked-questions/index.mjs +0 -3
  363. package/esm2022/frequently-asked-questions/interfaces/index.mjs +0 -4
  364. package/esm2022/frequently-asked-questions/interfaces/sc-i-faq-group.mjs +0 -2
  365. package/esm2022/frequently-asked-questions/interfaces/sc-i-faq-item.mjs +0 -2
  366. package/esm2022/frequently-asked-questions/interfaces/sc-i-frequently-asked-questions-pagination-params.mjs +0 -2
  367. package/esm2022/frequently-asked-questions/services/index.mjs +0 -2
  368. package/esm2022/frequently-asked-questions/services/sc-frequently-asked-questions.service.mjs +0 -50
  369. package/esm2022/guards/index.mjs +0 -3
  370. package/esm2022/guards/sc-auth-as-client.guard.mjs +0 -56
  371. package/esm2022/guards/sc-id-or-slug.guard.mjs +0 -35
  372. package/esm2022/helpers/index.mjs +0 -4
  373. package/esm2022/helpers/sc-get-current-route.mjs +0 -14
  374. package/esm2022/helpers/sc-image-helper.mjs +0 -91
  375. package/esm2022/helpers/sc-units-helper.mjs +0 -33
  376. package/esm2022/httpInterceptors/classes/index.mjs +0 -2
  377. package/esm2022/httpInterceptors/classes/sc-cache-settings.mjs +0 -16
  378. package/esm2022/httpInterceptors/index.mjs +0 -10
  379. package/esm2022/httpInterceptors/internal/classes/sc-cached-response.mjs +0 -17
  380. package/esm2022/httpInterceptors/sc-auth.interceptor.mjs +0 -31
  381. package/esm2022/httpInterceptors/sc-cache.interceptor.mjs +0 -40
  382. package/esm2022/httpInterceptors/sc-convert.interceptor.mjs +0 -64
  383. package/esm2022/httpInterceptors/sc-date-format.interceptor.mjs +0 -80
  384. package/esm2022/httpInterceptors/sc-errors.interceptor.mjs +0 -89
  385. package/esm2022/httpInterceptors/sc-guest.interceptor.mjs +0 -38
  386. package/esm2022/httpInterceptors/sc-options.interceptor.mjs +0 -42
  387. package/esm2022/httpInterceptors/tokens/index.mjs +0 -8
  388. package/esm2022/httpInterceptors/tokens/sc-auth-add-header-required.mjs +0 -10
  389. package/esm2022/httpInterceptors/tokens/sc-cache-settings.mjs +0 -7
  390. package/esm2022/httpInterceptors/tokens/sc-guest-endpoints.mjs +0 -8
  391. package/esm2022/httpInterceptors/tokens/sc-guest-parameter-name.mjs +0 -8
  392. package/esm2022/httpInterceptors/tokens/sc-is-header-required.mjs +0 -6
  393. package/esm2022/httpInterceptors/tokens/sc-is-logout-request.mjs +0 -6
  394. package/esm2022/httpInterceptors/tokens/sc-is-refresh-token-required.mjs +0 -6
  395. package/esm2022/locations/dto/index.mjs +0 -4
  396. package/esm2022/locations/dto/sc-i-city.mjs +0 -2
  397. package/esm2022/locations/dto/sc-i-country.mjs +0 -2
  398. package/esm2022/locations/dto/sc-i-region.mjs +0 -2
  399. package/esm2022/locations/index.mjs +0 -3
  400. package/esm2022/locations/services/sc-location.service.mjs +0 -116
  401. package/esm2022/news/classes/index.mjs +0 -2
  402. package/esm2022/news/classes/sc-news.mjs +0 -22
  403. package/esm2022/news/index.mjs +0 -5
  404. package/esm2022/news/interfaces/index.mjs +0 -3
  405. package/esm2022/news/interfaces/sc-i-news-tile.mjs +0 -2
  406. package/esm2022/news/interfaces/sc-i-news.mjs +0 -2
  407. package/esm2022/news/services/index.mjs +0 -2
  408. package/esm2022/news/services/sc-news.service.mjs +0 -68
  409. package/esm2022/news/tokens/index.mjs +0 -2
  410. package/esm2022/news/tokens/sc-count-last-news.mjs +0 -9
  411. package/esm2022/notifications/dto/index.mjs +0 -3
  412. package/esm2022/notifications/dto/sc-i-notifications-count.mjs +0 -2
  413. package/esm2022/notifications/dto/sc-i-user-notification.mjs +0 -2
  414. package/esm2022/notifications/enums/index.mjs +0 -3
  415. package/esm2022/notifications/enums/sc-notification-action-types.mjs +0 -28
  416. package/esm2022/notifications/enums/sc-notification-level-names.mjs +0 -20
  417. package/esm2022/notifications/index.mjs +0 -4
  418. package/esm2022/notifications/services/sc-notifications.service.mjs +0 -163
  419. package/esm2022/order/classes/index.mjs +0 -12
  420. package/esm2022/order/classes/sc-delivery-cost.mjs +0 -19
  421. package/esm2022/order/classes/sc-i-order-history.mjs +0 -2
  422. package/esm2022/order/classes/sc-order-base.mjs +0 -28
  423. package/esm2022/order/classes/sc-order-delivery.mjs +0 -2
  424. package/esm2022/order/classes/sc-order-draft-short.mjs +0 -17
  425. package/esm2022/order/classes/sc-order-draft.mjs +0 -59
  426. package/esm2022/order/classes/sc-order-history-user.mjs +0 -2
  427. package/esm2022/order/classes/sc-order-item.mjs +0 -60
  428. package/esm2022/order/classes/sc-order-payment.mjs +0 -2
  429. package/esm2022/order/classes/sc-order-short.mjs +0 -31
  430. package/esm2022/order/classes/sc-order.mjs +0 -102
  431. package/esm2022/order/enums/index.mjs +0 -4
  432. package/esm2022/order/enums/sc-delivery-type.mjs +0 -16
  433. package/esm2022/order/enums/sc-order-draft-type.mjs +0 -16
  434. package/esm2022/order/enums/sc-payment-type.mjs +0 -32
  435. package/esm2022/order/index.mjs +0 -6
  436. package/esm2022/order/internal/index.mjs +0 -15
  437. package/esm2022/order/internal/sc-i-delivery-cost-dto.mjs +0 -2
  438. package/esm2022/order/internal/sc-i-new-order-draft-request.mjs +0 -2
  439. package/esm2022/order/internal/sc-i-new-order-item-base.mjs +0 -2
  440. package/esm2022/order/internal/sc-i-new-order-item-measured.mjs +0 -2
  441. package/esm2022/order/internal/sc-i-new-order.mjs +0 -2
  442. package/esm2022/order/internal/sc-i-order-base.mjs +0 -2
  443. package/esm2022/order/internal/sc-i-order-draft-list-params.mjs +0 -2
  444. package/esm2022/order/internal/sc-i-order-draft-short.mjs +0 -2
  445. package/esm2022/order/internal/sc-i-order-draft.mjs +0 -2
  446. package/esm2022/order/internal/sc-i-order-item.mjs +0 -2
  447. package/esm2022/order/internal/sc-i-order-loader.mjs +0 -2
  448. package/esm2022/order/internal/sc-i-order-short.mjs +0 -2
  449. package/esm2022/order/internal/sc-i-order.mjs +0 -2
  450. package/esm2022/order/internal/sc-i-update-order-order-request.mjs +0 -2
  451. package/esm2022/order/services/index.mjs +0 -3
  452. package/esm2022/order/services/sc-order-drafts.service.mjs +0 -202
  453. package/esm2022/order/services/sc-orders.service.mjs +0 -219
  454. package/esm2022/order/tokens/index.mjs +0 -2
  455. package/esm2022/order/tokens/sc-order-loader.token.mjs +0 -25
  456. package/esm2022/pagination/dto/index.mjs +0 -7
  457. package/esm2022/pagination/dto/sc-i-paginate.mjs +0 -2
  458. package/esm2022/pagination/dto/sc-i-pagination-links.mjs +0 -2
  459. package/esm2022/pagination/dto/sc-i-pagination-meta.mjs +0 -2
  460. package/esm2022/pagination/dto/sc-i-pagination-params.mjs +0 -2
  461. package/esm2022/pagination/dto/sc-i-range-filter.mjs +0 -2
  462. package/esm2022/pagination/dto/sc-i-sort-order.mjs +0 -2
  463. package/esm2022/pagination/index.mjs +0 -3
  464. package/esm2022/pagination/services/sc-pagination.service.mjs +0 -157
  465. package/esm2022/pipes/index.mjs +0 -3
  466. package/esm2022/pipes/sc-id-or-slug.pipe.mjs +0 -41
  467. package/esm2022/pipes/sc-media-image-transformer.pipe.mjs +0 -34
  468. package/esm2022/providers/index.mjs +0 -8
  469. package/esm2022/providers/interfaces/index.mjs +0 -4
  470. package/esm2022/providers/interfaces/sc-i-terminal-provider.mjs +0 -2
  471. package/esm2022/providers/interfaces/sc-i-typed-class-provider.mjs +0 -2
  472. package/esm2022/providers/interfaces/sc-i-typed-value-provider.mjs +0 -2
  473. package/esm2022/providers/sc-category.providers.mjs +0 -37
  474. package/esm2022/providers/search-term.providers.mjs +0 -38
  475. package/esm2022/providers/ssr.providers.mjs +0 -19
  476. package/esm2022/providers/terminal.providers.mjs +0 -43
  477. package/esm2022/providers/types/sc-provider.mjs +0 -2
  478. package/esm2022/providers/virtual-category.providers.mjs +0 -33
  479. package/esm2022/public-api.mjs +0 -40
  480. package/esm2022/questionnaire/dto/index.mjs +0 -5
  481. package/esm2022/questionnaire/dto/sc-i-question-answer.mjs +0 -2
  482. package/esm2022/questionnaire/dto/sc-i-questionnaire.mjs +0 -2
  483. package/esm2022/questionnaire/dto/sc-question-possible-answer.mjs +0 -2
  484. package/esm2022/questionnaire/dto/sc-questionnaire-question.mjs +0 -2
  485. package/esm2022/questionnaire/enums/sc-questionnaire-status-enum.mjs +0 -24
  486. package/esm2022/questionnaire/index.mjs +0 -4
  487. package/esm2022/questionnaire/services/sc-questionnaire.service.mjs +0 -81
  488. package/esm2022/reclamation/dto/index.mjs +0 -6
  489. package/esm2022/reclamation/dto/sc-i-reclamation-on-data-create-item.mjs +0 -2
  490. package/esm2022/reclamation/dto/sc-i-reclamation-on-data-create.mjs +0 -2
  491. package/esm2022/reclamation/dto/sc-i-reclamation.mjs +0 -2
  492. package/esm2022/reclamation/dto/sc-reclamation-item.mjs +0 -2
  493. package/esm2022/reclamation/dto/sc-reclamation-short.mjs +0 -2
  494. package/esm2022/reclamation/index.mjs +0 -4
  495. package/esm2022/reclamation/interfaces/sc-i-pagination-params.mjs +0 -2
  496. package/esm2022/reclamation/services/sc-reclamation.service.mjs +0 -83
  497. package/esm2022/references/dto/index.mjs +0 -5
  498. package/esm2022/references/dto/sc-i-currency.mjs +0 -2
  499. package/esm2022/references/dto/sc-i-product-unit.mjs +0 -2
  500. package/esm2022/references/dto/sc-i-references-types.mjs +0 -2
  501. package/esm2022/references/dto/sc-i-sales-direction.mjs +0 -2
  502. package/esm2022/references/enums/index.mjs +0 -6
  503. package/esm2022/references/enums/sc-opf-list.mjs +0 -24
  504. package/esm2022/references/enums/sc-order-state-status.mjs +0 -45
  505. package/esm2022/references/enums/sc-payment-status.mjs +0 -65
  506. package/esm2022/references/enums/sc-reclamation-status.mjs +0 -25
  507. package/esm2022/references/enums/sc-reference-name.mjs +0 -76
  508. package/esm2022/references/index.mjs +0 -4
  509. package/esm2022/references/services/index.mjs +0 -2
  510. package/esm2022/references/services/sc-references.service.mjs +0 -188
  511. package/esm2022/search/dto/sc-i-simple-search.mjs +0 -2
  512. package/esm2022/search/index.mjs +0 -3
  513. package/esm2022/search/services/sc-search.service.mjs +0 -122
  514. package/esm2022/seo/classes/index.mjs +0 -2
  515. package/esm2022/seo/classes/schema-org-factory.mjs +0 -308
  516. package/esm2022/seo/index.mjs +0 -5
  517. package/esm2022/seo/interfaces/index.mjs +0 -5
  518. package/esm2022/seo/interfaces/sc-i-breadcrumb-item.mjs +0 -12
  519. package/esm2022/seo/interfaces/sc-i-default-page-meta.mjs +0 -2
  520. package/esm2022/seo/interfaces/sc-i-seo-resource.mjs +0 -2
  521. package/esm2022/seo/interfaces/sc-i-seo.mjs +0 -2
  522. package/esm2022/seo/services/index.mjs +0 -2
  523. package/esm2022/seo/services/sc-seo.service.mjs +0 -230
  524. package/esm2022/seo/types/index.mjs +0 -2
  525. package/esm2022/seo/types/robots-tag-type.mjs +0 -2
  526. package/esm2022/snabcentr-client-core.mjs +0 -5
  527. package/esm2022/suggestion/dto/index.mjs +0 -7
  528. package/esm2022/suggestion/dto/sc-i-suggestion-address.mjs +0 -2
  529. package/esm2022/suggestion/dto/sc-i-suggestion-bank.mjs +0 -2
  530. package/esm2022/suggestion/dto/sc-i-suggestion-email.mjs +0 -2
  531. package/esm2022/suggestion/dto/sc-i-suggestion-fio.mjs +0 -2
  532. package/esm2022/suggestion/dto/sc-i-suggestion-organization.mjs +0 -2
  533. package/esm2022/suggestion/dto/sc-suggestion.mjs +0 -2
  534. package/esm2022/suggestion/enums/sc-i-suggestion-type.mjs +0 -28
  535. package/esm2022/suggestion/index.mjs +0 -4
  536. package/esm2022/suggestion/services/sc-suggestion.service.mjs +0 -42
  537. package/esm2022/tokens/index.mjs +0 -19
  538. package/esm2022/tokens/notification-options.mjs +0 -15
  539. package/esm2022/tokens/sc-api-keys.mjs +0 -6
  540. package/esm2022/tokens/sc-cache-lifetime.mjs +0 -6
  541. package/esm2022/tokens/sc-company-info.mjs +0 -6
  542. package/esm2022/tokens/sc-company-name.mjs +0 -6
  543. package/esm2022/tokens/sc-configurator-components.mjs +0 -6
  544. package/esm2022/tokens/sc-configurator-settings.mjs +0 -6
  545. package/esm2022/tokens/sc-date-format.mjs +0 -6
  546. package/esm2022/tokens/sc-default-page-meta.mjs +0 -14
  547. package/esm2022/tokens/sc-feedback-api.mjs +0 -6
  548. package/esm2022/tokens/sc-id-or-slug-in-route.mjs +0 -8
  549. package/esm2022/tokens/sc-is-hidden-error-alert.mjs +0 -10
  550. package/esm2022/tokens/sc-linear-values-token.mjs +0 -12
  551. package/esm2022/tokens/sc-path-image-not-found.mjs +0 -6
  552. package/esm2022/tokens/sc-product-pagination-options.mjs +0 -22
  553. package/esm2022/tokens/sc-release.mjs +0 -6
  554. package/esm2022/tokens/sc-update-interval.mjs +0 -6
  555. package/esm2022/tokens/sc-urls.mjs +0 -6
  556. package/esm2022/ui/index.mjs +0 -3
  557. package/esm2022/ui/services/sc-ui.service.mjs +0 -195
  558. package/esm2022/ui/utils/filter-changed-by-key.mjs +0 -12
  559. package/esm2022/user/dto/index.mjs +0 -18
  560. package/esm2022/user/dto/sc-approved-data.mjs +0 -2
  561. package/esm2022/user/dto/sc-i-bank.mjs +0 -2
  562. package/esm2022/user/dto/sc-i-change-password.mjs +0 -2
  563. package/esm2022/user/dto/sc-i-contact-base.mjs +0 -2
  564. package/esm2022/user/dto/sc-i-contact-on-data-create.mjs +0 -2
  565. package/esm2022/user/dto/sc-i-contact-relation-on-data-create.mjs +0 -2
  566. package/esm2022/user/dto/sc-i-contact-relation.mjs +0 -2
  567. package/esm2022/user/dto/sc-i-contact-with-relations.mjs +0 -2
  568. package/esm2022/user/dto/sc-i-contact.mjs +0 -2
  569. package/esm2022/user/dto/sc-i-manager.mjs +0 -2
  570. package/esm2022/user/dto/sc-i-password-on-data-create.mjs +0 -2
  571. package/esm2022/user/dto/sc-i-phone-on-data-approve.mjs +0 -2
  572. package/esm2022/user/dto/sc-i-simple-user-on-data-create.mjs +0 -2
  573. package/esm2022/user/dto/sc-i-user-on-data-create.mjs +0 -2
  574. package/esm2022/user/dto/sc-i-user-on-data-update.mjs +0 -2
  575. package/esm2022/user/dto/sc-user-metadata.mjs +0 -32
  576. package/esm2022/user/dto/sc-user.mjs +0 -58
  577. package/esm2022/user/enums/index.mjs +0 -3
  578. package/esm2022/user/enums/sc-client-type.mjs +0 -20
  579. package/esm2022/user/enums/sc-user-type.mjs +0 -16
  580. package/esm2022/user/index.mjs +0 -6
  581. package/esm2022/user/internal/dto/index.mjs +0 -2
  582. package/esm2022/user/internal/dto/sc-i-user-dto.mjs +0 -2
  583. package/esm2022/user/services/sc-user.service.mjs +0 -184
  584. package/esm2022/user/tokens/index.mjs +0 -2
  585. package/esm2022/user/tokens/sc-user-providers.mjs +0 -13
  586. package/esm2022/user-metrika/dto/index.mjs +0 -2
  587. package/esm2022/user-metrika/dto/sc-i-user-metrika-event.mjs +0 -2
  588. package/esm2022/user-metrika/enums/index.mjs +0 -2
  589. package/esm2022/user-metrika/enums/sc-user-metrika-goals-enum.mjs +0 -337
  590. package/esm2022/user-metrika/index.mjs +0 -4
  591. package/esm2022/user-metrika/services/index.mjs +0 -2
  592. package/esm2022/user-metrika/services/sc-user-metrika.service.mjs +0 -72
  593. package/esm2022/utils/phone-fotmatter/index.mjs +0 -2
  594. package/esm2022/utils/phone-fotmatter/sc-phone.service.mjs +0 -63
  595. package/esm2022/utm/index.mjs +0 -3
  596. package/esm2022/utm/interfaces/index.mjs +0 -3
  597. package/esm2022/utm/interfaces/sc-utm-params.mjs +0 -2
  598. package/esm2022/utm/interfaces/sc-utm.mjs +0 -2
  599. package/esm2022/utm/services/index.mjs +0 -2
  600. package/esm2022/utm/services/sc-utm.service.mjs +0 -157
  601. package/esm2022/vCard/index.mjs +0 -2
  602. package/esm2022/vCard/sc-v-card.service.mjs +0 -103
  603. package/esm2022/vacancies/classes/index.mjs +0 -3
  604. package/esm2022/vacancies/classes/sc-vacancies-list.mjs +0 -18
  605. package/esm2022/vacancies/classes/sc-vacancy.mjs +0 -19
  606. package/esm2022/vacancies/index.mjs +0 -5
  607. package/esm2022/vacancies/interfaces/index.mjs +0 -5
  608. package/esm2022/vacancies/interfaces/sc-i-employment.mjs +0 -2
  609. package/esm2022/vacancies/interfaces/sc-i-experience.mjs +0 -2
  610. package/esm2022/vacancies/interfaces/sc-i-salary.mjs +0 -2
  611. package/esm2022/vacancies/interfaces/sc-i-vacancies-data-source.mjs +0 -2
  612. package/esm2022/vacancies/internal/dto/index.mjs +0 -3
  613. package/esm2022/vacancies/internal/dto/sc-i-vacancies-list.mjs +0 -2
  614. package/esm2022/vacancies/internal/dto/sc-i-vacancy.mjs +0 -2
  615. package/esm2022/vacancies/services/index.mjs +0 -2
  616. package/esm2022/vacancies/services/sc-vacancies.service.mjs +0 -55
  617. package/esm2022/vacancies/tokens/index.mjs +0 -2
  618. package/esm2022/vacancies/tokens/sc-vacancies-datasource.mjs +0 -6
  619. package/esm2022/verification/index.mjs +0 -3
  620. package/esm2022/verification/interfaces/sc-i-phone-check.mjs +0 -2
  621. package/esm2022/verification/services/sc-verification.service.mjs +0 -68
  622. package/esm2022/warehouse/dto/index.mjs +0 -3
  623. package/esm2022/warehouse/dto/sc-i-warehouse-stock-count.mjs +0 -2
  624. package/esm2022/warehouse/dto/sc-warehouse.mjs +0 -2
  625. package/esm2022/warehouse/index.mjs +0 -3
  626. package/esm2022/warehouse/services/sc-warehouse.service.mjs +0 -119
  627. package/files/classes/sc-document-info-node.d.ts +0 -24
  628. package/files/classes/sc-document-info.d.ts +0 -42
  629. package/files/enums/sc-document-info-types-enum.d.ts +0 -17
  630. package/files/enums/sc-icon-types-enum.d.ts +0 -33
  631. package/files/index.d.ts +0 -5
  632. package/files/services/sc-files.service.d.ts +0 -34
  633. package/frequently-asked-questions/index.d.ts +0 -2
  634. package/frequently-asked-questions/interfaces/index.d.ts +0 -3
  635. package/frequently-asked-questions/interfaces/sc-i-faq-group.d.ts +0 -13
  636. package/frequently-asked-questions/interfaces/sc-i-faq-item.d.ts +0 -22
  637. package/frequently-asked-questions/interfaces/sc-i-frequently-asked-questions-pagination-params.d.ts +0 -10
  638. package/frequently-asked-questions/services/index.d.ts +0 -1
  639. package/frequently-asked-questions/services/sc-frequently-asked-questions.service.d.ts +0 -33
  640. package/guards/index.d.ts +0 -2
  641. package/guards/sc-auth-as-client.guard.d.ts +0 -29
  642. package/guards/sc-id-or-slug.guard.d.ts +0 -7
  643. package/helpers/index.d.ts +0 -3
  644. package/helpers/sc-get-current-route.d.ts +0 -8
  645. package/helpers/sc-image-helper.d.ts +0 -52
  646. package/helpers/sc-units-helper.d.ts +0 -24
  647. package/httpInterceptors/classes/index.d.ts +0 -1
  648. package/httpInterceptors/classes/sc-cache-settings.d.ts +0 -20
  649. package/httpInterceptors/index.d.ts +0 -9
  650. package/httpInterceptors/internal/classes/sc-cached-response.d.ts +0 -22
  651. package/httpInterceptors/sc-auth.interceptor.d.ts +0 -20
  652. package/httpInterceptors/sc-cache.interceptor.d.ts +0 -16
  653. package/httpInterceptors/sc-convert.interceptor.d.ts +0 -21
  654. package/httpInterceptors/sc-date-format.interceptor.d.ts +0 -28
  655. package/httpInterceptors/sc-errors.interceptor.d.ts +0 -36
  656. package/httpInterceptors/sc-guest.interceptor.d.ts +0 -24
  657. package/httpInterceptors/sc-options.interceptor.d.ts +0 -24
  658. package/httpInterceptors/tokens/index.d.ts +0 -7
  659. package/httpInterceptors/tokens/sc-auth-add-header-required.d.ts +0 -8
  660. package/httpInterceptors/tokens/sc-cache-settings.d.ts +0 -6
  661. package/httpInterceptors/tokens/sc-guest-endpoints.d.ts +0 -5
  662. package/httpInterceptors/tokens/sc-guest-parameter-name.d.ts +0 -5
  663. package/httpInterceptors/tokens/sc-is-header-required.d.ts +0 -5
  664. package/httpInterceptors/tokens/sc-is-logout-request.d.ts +0 -5
  665. package/httpInterceptors/tokens/sc-is-refresh-token-required.d.ts +0 -5
  666. package/index.d.ts +0 -5
  667. package/locations/dto/index.d.ts +0 -3
  668. package/locations/dto/sc-i-city.d.ts +0 -32
  669. package/locations/dto/sc-i-country.d.ts +0 -13
  670. package/locations/dto/sc-i-region.d.ts +0 -33
  671. package/locations/index.d.ts +0 -2
  672. package/locations/services/sc-location.service.d.ts +0 -65
  673. package/news/classes/index.d.ts +0 -1
  674. package/news/classes/sc-news.d.ts +0 -38
  675. package/news/index.d.ts +0 -4
  676. package/news/interfaces/index.d.ts +0 -2
  677. package/news/interfaces/sc-i-news-tile.d.ts +0 -22
  678. package/news/interfaces/sc-i-news.d.ts +0 -11
  679. package/news/services/index.d.ts +0 -1
  680. package/news/services/sc-news.service.d.ts +0 -48
  681. package/news/tokens/index.d.ts +0 -1
  682. package/news/tokens/sc-count-last-news.d.ts +0 -5
  683. package/notifications/dto/index.d.ts +0 -2
  684. package/notifications/dto/sc-i-notifications-count.d.ts +0 -17
  685. package/notifications/dto/sc-i-user-notification.d.ts +0 -68
  686. package/notifications/enums/index.d.ts +0 -2
  687. package/notifications/enums/sc-notification-action-types.d.ts +0 -25
  688. package/notifications/enums/sc-notification-level-names.d.ts +0 -17
  689. package/notifications/index.d.ts +0 -3
  690. package/notifications/services/sc-notifications.service.d.ts +0 -100
  691. package/order/classes/index.d.ts +0 -11
  692. package/order/classes/sc-delivery-cost.d.ts +0 -34
  693. package/order/classes/sc-i-order-history.d.ts +0 -23
  694. package/order/classes/sc-order-base.d.ts +0 -32
  695. package/order/classes/sc-order-delivery.d.ts +0 -24
  696. package/order/classes/sc-order-draft-short.d.ts +0 -22
  697. package/order/classes/sc-order-draft.d.ts +0 -63
  698. package/order/classes/sc-order-history-user.d.ts +0 -21
  699. package/order/classes/sc-order-item.d.ts +0 -98
  700. package/order/classes/sc-order-payment.d.ts +0 -19
  701. package/order/classes/sc-order-short.d.ts +0 -48
  702. package/order/classes/sc-order.d.ts +0 -112
  703. package/order/enums/index.d.ts +0 -3
  704. package/order/enums/sc-delivery-type.d.ts +0 -13
  705. package/order/enums/sc-order-draft-type.d.ts +0 -13
  706. package/order/enums/sc-payment-type.d.ts +0 -29
  707. package/order/index.d.ts +0 -5
  708. package/order/internal/index.d.ts +0 -14
  709. package/order/internal/sc-i-delivery-cost-dto.d.ts +0 -20
  710. package/order/internal/sc-i-new-order-draft-request.d.ts +0 -13
  711. package/order/internal/sc-i-new-order-item-base.d.ts +0 -21
  712. package/order/internal/sc-i-new-order-item-measured.d.ts +0 -10
  713. package/order/internal/sc-i-new-order.d.ts +0 -48
  714. package/order/internal/sc-i-order-base.d.ts +0 -25
  715. package/order/internal/sc-i-order-draft-list-params.d.ts +0 -32
  716. package/order/internal/sc-i-order-draft-short.d.ts +0 -15
  717. package/order/internal/sc-i-order-draft.d.ts +0 -43
  718. package/order/internal/sc-i-order-item.d.ts +0 -91
  719. package/order/internal/sc-i-order-loader.d.ts +0 -51
  720. package/order/internal/sc-i-order-short.d.ts +0 -48
  721. package/order/internal/sc-i-order.d.ts +0 -112
  722. package/order/internal/sc-i-update-order-order-request.d.ts +0 -9
  723. package/order/services/index.d.ts +0 -2
  724. package/order/services/sc-order-drafts.service.d.ts +0 -118
  725. package/order/services/sc-orders.service.d.ts +0 -134
  726. package/order/tokens/index.d.ts +0 -1
  727. package/order/tokens/sc-order-loader.token.d.ts +0 -26
  728. package/pagination/dto/index.d.ts +0 -6
  729. package/pagination/dto/sc-i-paginate.d.ts +0 -19
  730. package/pagination/dto/sc-i-pagination-links.d.ts +0 -21
  731. package/pagination/dto/sc-i-pagination-meta.d.ts +0 -33
  732. package/pagination/dto/sc-i-pagination-params.d.ts +0 -17
  733. package/pagination/dto/sc-i-range-filter.d.ts +0 -15
  734. package/pagination/dto/sc-i-sort-order.d.ts +0 -15
  735. package/pagination/index.d.ts +0 -2
  736. package/pagination/services/sc-pagination.service.d.ts +0 -83
  737. package/pipes/index.d.ts +0 -2
  738. package/pipes/sc-id-or-slug.pipe.d.ts +0 -25
  739. package/pipes/sc-media-image-transformer.pipe.d.ts +0 -26
  740. package/providers/index.d.ts +0 -7
  741. package/providers/interfaces/index.d.ts +0 -3
  742. package/providers/interfaces/sc-i-terminal-provider.d.ts +0 -13
  743. package/providers/interfaces/sc-i-typed-class-provider.d.ts +0 -10
  744. package/providers/interfaces/sc-i-typed-value-provider.d.ts +0 -10
  745. package/providers/sc-category.providers.d.ts +0 -11
  746. package/providers/search-term.providers.d.ts +0 -27
  747. package/providers/ssr.providers.d.ts +0 -14
  748. package/providers/terminal.providers.d.ts +0 -23
  749. package/providers/types/sc-provider.d.ts +0 -8
  750. package/providers/virtual-category.providers.d.ts +0 -11
  751. package/public-api.d.ts +0 -39
  752. package/questionnaire/dto/index.d.ts +0 -4
  753. package/questionnaire/dto/sc-i-question-answer.d.ts +0 -13
  754. package/questionnaire/dto/sc-i-questionnaire.d.ts +0 -22
  755. package/questionnaire/dto/sc-question-possible-answer.d.ts +0 -17
  756. package/questionnaire/dto/sc-questionnaire-question.d.ts +0 -26
  757. package/questionnaire/enums/sc-questionnaire-status-enum.d.ts +0 -21
  758. package/questionnaire/index.d.ts +0 -3
  759. package/questionnaire/services/sc-questionnaire.service.d.ts +0 -51
  760. package/reclamation/dto/index.d.ts +0 -5
  761. package/reclamation/dto/sc-i-reclamation-on-data-create-item.d.ts +0 -17
  762. package/reclamation/dto/sc-i-reclamation-on-data-create.d.ts +0 -39
  763. package/reclamation/dto/sc-i-reclamation.d.ts +0 -34
  764. package/reclamation/dto/sc-reclamation-item.d.ts +0 -34
  765. package/reclamation/dto/sc-reclamation-short.d.ts +0 -29
  766. package/reclamation/index.d.ts +0 -3
  767. package/reclamation/interfaces/sc-i-pagination-params.d.ts +0 -23
  768. package/reclamation/services/sc-reclamation.service.d.ts +0 -59
  769. package/references/dto/index.d.ts +0 -4
  770. package/references/dto/sc-i-currency.d.ts +0 -29
  771. package/references/dto/sc-i-product-unit.d.ts +0 -29
  772. package/references/dto/sc-i-references-types.d.ts +0 -21
  773. package/references/dto/sc-i-sales-direction.d.ts +0 -21
  774. package/references/enums/index.d.ts +0 -5
  775. package/references/enums/sc-opf-list.d.ts +0 -21
  776. package/references/enums/sc-order-state-status.d.ts +0 -42
  777. package/references/enums/sc-payment-status.d.ts +0 -62
  778. package/references/enums/sc-reclamation-status.d.ts +0 -22
  779. package/references/enums/sc-reference-name.d.ts +0 -73
  780. package/references/index.d.ts +0 -3
  781. package/references/services/index.d.ts +0 -1
  782. package/references/services/sc-references.service.d.ts +0 -152
  783. package/search/dto/sc-i-simple-search.d.ts +0 -56
  784. package/search/index.d.ts +0 -2
  785. package/search/services/sc-search.service.d.ts +0 -61
  786. package/seo/classes/index.d.ts +0 -1
  787. package/seo/classes/schema-org-factory.d.ts +0 -95
  788. package/seo/index.d.ts +0 -4
  789. package/seo/interfaces/index.d.ts +0 -4
  790. package/seo/interfaces/sc-i-breadcrumb-item.d.ts +0 -25
  791. package/seo/interfaces/sc-i-default-page-meta.d.ts +0 -17
  792. package/seo/interfaces/sc-i-seo-resource.d.ts +0 -14
  793. package/seo/interfaces/sc-i-seo.d.ts +0 -40
  794. package/seo/services/index.d.ts +0 -1
  795. package/seo/services/sc-seo.service.d.ts +0 -129
  796. package/seo/types/index.d.ts +0 -1
  797. package/seo/types/robots-tag-type.d.ts +0 -4
  798. package/suggestion/dto/index.d.ts +0 -6
  799. package/suggestion/dto/sc-i-suggestion-address.d.ts +0 -98
  800. package/suggestion/dto/sc-i-suggestion-bank.d.ts +0 -33
  801. package/suggestion/dto/sc-i-suggestion-email.d.ts +0 -17
  802. package/suggestion/dto/sc-i-suggestion-fio.d.ts +0 -25
  803. package/suggestion/dto/sc-i-suggestion-organization.d.ts +0 -50
  804. package/suggestion/dto/sc-suggestion.d.ts +0 -9
  805. package/suggestion/enums/sc-i-suggestion-type.d.ts +0 -25
  806. package/suggestion/index.d.ts +0 -3
  807. package/suggestion/services/sc-suggestion.service.d.ts +0 -28
  808. package/tokens/index.d.ts +0 -18
  809. package/tokens/notification-options.d.ts +0 -22
  810. package/tokens/sc-api-keys.d.ts +0 -6
  811. package/tokens/sc-cache-lifetime.d.ts +0 -6
  812. package/tokens/sc-company-info.d.ts +0 -6
  813. package/tokens/sc-company-name.d.ts +0 -5
  814. package/tokens/sc-configurator-components.d.ts +0 -7
  815. package/tokens/sc-configurator-settings.d.ts +0 -7
  816. package/tokens/sc-date-format.d.ts +0 -6
  817. package/tokens/sc-default-page-meta.d.ts +0 -14
  818. package/tokens/sc-feedback-api.d.ts +0 -6
  819. package/tokens/sc-id-or-slug-in-route.d.ts +0 -5
  820. package/tokens/sc-is-hidden-error-alert.d.ts +0 -9
  821. package/tokens/sc-linear-values-token.d.ts +0 -9
  822. package/tokens/sc-path-image-not-found.d.ts +0 -5
  823. package/tokens/sc-product-pagination-options.d.ts +0 -14
  824. package/tokens/sc-release.d.ts +0 -6
  825. package/tokens/sc-update-interval.d.ts +0 -6
  826. package/tokens/sc-urls.d.ts +0 -6
  827. package/ui/index.d.ts +0 -2
  828. package/ui/services/sc-ui.service.d.ts +0 -122
  829. package/ui/utils/filter-changed-by-key.d.ts +0 -9
  830. package/user/dto/index.d.ts +0 -17
  831. package/user/dto/sc-approved-data.d.ts +0 -13
  832. package/user/dto/sc-i-bank.d.ts +0 -21
  833. package/user/dto/sc-i-change-password.d.ts +0 -13
  834. package/user/dto/sc-i-contact-base.d.ts +0 -21
  835. package/user/dto/sc-i-contact-on-data-create.d.ts +0 -19
  836. package/user/dto/sc-i-contact-relation-on-data-create.d.ts +0 -5
  837. package/user/dto/sc-i-contact-relation.d.ts +0 -13
  838. package/user/dto/sc-i-contact-with-relations.d.ts +0 -28
  839. package/user/dto/sc-i-contact.d.ts +0 -14
  840. package/user/dto/sc-i-manager.d.ts +0 -38
  841. package/user/dto/sc-i-password-on-data-create.d.ts +0 -17
  842. package/user/dto/sc-i-phone-on-data-approve.d.ts +0 -13
  843. package/user/dto/sc-i-simple-user-on-data-create.d.ts +0 -42
  844. package/user/dto/sc-i-user-on-data-create.d.ts +0 -46
  845. package/user/dto/sc-i-user-on-data-update.d.ts +0 -39
  846. package/user/dto/sc-user-metadata.d.ts +0 -46
  847. package/user/dto/sc-user.d.ts +0 -97
  848. package/user/enums/index.d.ts +0 -2
  849. package/user/enums/sc-client-type.d.ts +0 -17
  850. package/user/enums/sc-user-type.d.ts +0 -13
  851. package/user/index.d.ts +0 -5
  852. package/user/internal/dto/index.d.ts +0 -1
  853. package/user/internal/dto/sc-i-user-dto.d.ts +0 -80
  854. package/user/services/sc-user.service.d.ts +0 -118
  855. package/user/tokens/index.d.ts +0 -1
  856. package/user/tokens/sc-user-providers.d.ts +0 -7
  857. package/user-metrika/dto/index.d.ts +0 -1
  858. package/user-metrika/dto/sc-i-user-metrika-event.d.ts +0 -14
  859. package/user-metrika/enums/index.d.ts +0 -1
  860. package/user-metrika/enums/sc-user-metrika-goals-enum.d.ts +0 -334
  861. package/user-metrika/index.d.ts +0 -3
  862. package/user-metrika/services/index.d.ts +0 -1
  863. package/user-metrika/services/sc-user-metrika.service.d.ts +0 -43
  864. package/utils/phone-fotmatter/index.d.ts +0 -1
  865. package/utils/phone-fotmatter/sc-phone.service.d.ts +0 -36
  866. package/utm/index.d.ts +0 -2
  867. package/utm/interfaces/index.d.ts +0 -2
  868. package/utm/interfaces/sc-utm-params.d.ts +0 -25
  869. package/utm/interfaces/sc-utm.d.ts +0 -25
  870. package/utm/services/index.d.ts +0 -1
  871. package/utm/services/sc-utm.service.d.ts +0 -96
  872. package/vCard/index.d.ts +0 -1
  873. package/vCard/sc-v-card.service.d.ts +0 -51
  874. package/vacancies/classes/index.d.ts +0 -2
  875. package/vacancies/classes/sc-vacancies-list.d.ts +0 -29
  876. package/vacancies/classes/sc-vacancy.d.ts +0 -37
  877. package/vacancies/index.d.ts +0 -4
  878. package/vacancies/interfaces/index.d.ts +0 -4
  879. package/vacancies/interfaces/sc-i-employment.d.ts +0 -13
  880. package/vacancies/interfaces/sc-i-experience.d.ts +0 -13
  881. package/vacancies/interfaces/sc-i-salary.d.ts +0 -21
  882. package/vacancies/interfaces/sc-i-vacancies-data-source.d.ts +0 -13
  883. package/vacancies/internal/dto/index.d.ts +0 -2
  884. package/vacancies/internal/dto/sc-i-vacancies-list.d.ts +0 -24
  885. package/vacancies/internal/dto/sc-i-vacancy.d.ts +0 -32
  886. package/vacancies/services/index.d.ts +0 -1
  887. package/vacancies/services/sc-vacancies.service.d.ts +0 -31
  888. package/vacancies/tokens/index.d.ts +0 -1
  889. package/vacancies/tokens/sc-vacancies-datasource.d.ts +0 -6
  890. package/verification/index.d.ts +0 -2
  891. package/verification/interfaces/sc-i-phone-check.d.ts +0 -13
  892. package/verification/services/sc-verification.service.d.ts +0 -49
  893. package/warehouse/dto/index.d.ts +0 -2
  894. package/warehouse/dto/sc-i-warehouse-stock-count.d.ts +0 -17
  895. package/warehouse/dto/sc-warehouse.d.ts +0 -42
  896. package/warehouse/index.d.ts +0 -2
  897. package/warehouse/services/sc-warehouse.service.d.ts +0 -63
@@ -4,19 +4,18 @@ import { map, startWith, catchError } from 'rxjs/operators';
4
4
  import { parseISO, parse, isValid, format } from 'date-fns';
5
5
  import { isString, isNil, isMatch, isArray, get } from 'lodash-es';
6
6
  import * as i0 from '@angular/core';
7
- import { InjectionToken, inject, PLATFORM_ID, Injectable, Inject, Optional, EventEmitter, DestroyRef, LOCALE_ID, Pipe, RendererFactory2 } from '@angular/core';
7
+ import { InjectionToken, inject, PLATFORM_ID, Inject, Optional, Injectable, EventEmitter, DestroyRef, LOCALE_ID, Pipe, RendererFactory2 } from '@angular/core';
8
8
  import { WA_LOCAL_STORAGE, WA_USER_AGENT, WA_WINDOW } from '@ng-web-apis/common';
9
- import { filterByKey, toValue, WA_STORAGE_EVENT, StorageService } from '@ng-web-apis/storage';
9
+ import { filterByKey, toValue, WA_STORAGE_EVENT, WaStorageService } from '@ng-web-apis/storage';
10
10
  import { isPlatformBrowser, isPlatformServer, DOCUMENT, formatDate } from '@angular/common';
11
11
  import * as i1$1 from '@angular/common/http';
12
12
  import { HttpContextToken, HttpContext, HttpHeaders, HttpClient, HttpParams, HttpErrorResponse, HttpResponse } from '@angular/common/http';
13
13
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
14
- import { tuiIsPresent, TuiDay, tuiPure, TUI_TRUE_HANDLER } from '@taiga-ui/cdk';
14
+ import { tuiIsPresent, TuiDay, TUI_TRUE_HANDLER } from '@taiga-ui/cdk';
15
15
  import { tuiCleanObject } from '@taiga-ui/addon-doc/utils';
16
- import { __decorate } from 'tslib';
17
16
  import * as i2 from '@angular/router';
18
17
  import { NavigationEnd, Router, ActivatedRoute } from '@angular/router';
19
- import { objectToSnake, objectToCamel, toSnake } from 'ts-case-convert';
18
+ import { toSnake, objectToSnake, objectToCamel } from 'ts-case-convert';
20
19
  import { Meta, Title } from '@angular/platform-browser';
21
20
 
22
21
  /**
@@ -388,10 +387,10 @@ class ScTokenService {
388
387
  }
389
388
  return request.clone();
390
389
  }
391
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScTokenService, deps: [{ token: WA_STORAGE_EVENT }, { token: SC_API_KEYS, optional: true }, { token: StorageService }, { token: SC_GUEST_TOKEN_STORAGE_KEY }, { token: SC_ACCESS_AUTH_TOKEN_STORAGE_KEY }, { token: SC_REFRESH_AUTH_TOKEN_STORAGE_KEY }, { token: IS_BROWSER }, { token: WA_LOCAL_STORAGE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
392
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScTokenService, providedIn: 'root' }); }
390
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScTokenService, deps: [{ token: WA_STORAGE_EVENT }, { token: SC_API_KEYS, optional: true }, { token: WaStorageService }, { token: SC_GUEST_TOKEN_STORAGE_KEY }, { token: SC_ACCESS_AUTH_TOKEN_STORAGE_KEY }, { token: SC_REFRESH_AUTH_TOKEN_STORAGE_KEY }, { token: IS_BROWSER }, { token: WA_LOCAL_STORAGE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
391
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScTokenService, providedIn: 'root' }); }
393
392
  }
394
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScTokenService, decorators: [{
393
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScTokenService, decorators: [{
395
394
  type: Injectable,
396
395
  args: [{
397
396
  providedIn: 'root',
@@ -406,7 +405,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
406
405
  args: [SC_API_KEYS]
407
406
  }] }, { type: Storage, decorators: [{
408
407
  type: Inject,
409
- args: [StorageService]
408
+ args: [WaStorageService]
410
409
  }] }, { type: undefined, decorators: [{
411
410
  type: Inject,
412
411
  args: [SC_GUEST_TOKEN_STORAGE_KEY]
@@ -986,10 +985,10 @@ class ScUserMetrikaService {
986
985
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment,security/detect-object-injection
987
986
  this.additionalParams[name] = value;
988
987
  }
989
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUserMetrikaService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
990
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUserMetrikaService, providedIn: 'root' }); }
988
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUserMetrikaService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
989
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUserMetrikaService, providedIn: 'root' }); }
991
990
  }
992
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUserMetrikaService, decorators: [{
991
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUserMetrikaService, decorators: [{
993
992
  type: Injectable,
994
993
  args: [{
995
994
  providedIn: 'root',
@@ -1126,10 +1125,10 @@ class ScAuthService {
1126
1125
  this.tokenService.setGuestToken(token);
1127
1126
  }));
1128
1127
  }
1129
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScAuthService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }, { token: SC_API_KEYS }, { token: ScTokenService }, { token: ScUserMetrikaService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1130
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScAuthService, providedIn: 'root' }); }
1128
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScAuthService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }, { token: SC_API_KEYS }, { token: ScTokenService }, { token: ScUserMetrikaService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1129
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScAuthService, providedIn: 'root' }); }
1131
1130
  }
1132
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScAuthService, decorators: [{
1131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScAuthService, decorators: [{
1133
1132
  type: Injectable,
1134
1133
  args: [{
1135
1134
  providedIn: 'root',
@@ -1265,7 +1264,7 @@ class ScUserService {
1265
1264
  /**
1266
1265
  * Сервис для работы с {@link Storage}.
1267
1266
  */
1268
- this.storageService = inject(StorageService);
1267
+ this.storageService = inject(WaStorageService);
1269
1268
  /**
1270
1269
  * {@link Storage}.
1271
1270
  */
@@ -1413,10 +1412,10 @@ class ScUserService {
1413
1412
  getGuestInfo$() {
1414
1413
  return this.http.get(`${this.urls.apiUrl}/guest`).pipe(map$1((user) => new ScUser(user)));
1415
1414
  }
1416
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1417
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUserService, providedIn: 'root' }); }
1415
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1416
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUserService, providedIn: 'root' }); }
1418
1417
  }
1419
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUserService, decorators: [{
1418
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUserService, decorators: [{
1420
1419
  type: Injectable,
1421
1420
  args: [{
1422
1421
  providedIn: 'root',
@@ -1450,10 +1449,10 @@ class ScBannerService {
1450
1449
  */
1451
1450
  this.banners$ = inject(SC_USER_INFO).pipe(switchMap(() => this.http.get(`${this.urls.apiUrl}/banners`)), map$1((banners) => banners.map((banner) => new ScBanner(banner))), shareReplay(1));
1452
1451
  }
1453
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScBannerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1454
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScBannerService, providedIn: 'root' }); }
1452
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScBannerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1453
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScBannerService, providedIn: 'root' }); }
1455
1454
  }
1456
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScBannerService, decorators: [{
1455
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScBannerService, decorators: [{
1457
1456
  type: Injectable,
1458
1457
  args: [{
1459
1458
  providedIn: 'root',
@@ -1815,7 +1814,7 @@ class ScProduct extends ScCatalogItem {
1815
1814
  return 'Раскупили';
1816
1815
  }
1817
1816
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call
1818
- const daysDiff = TuiDay.lengthBetween(TuiDay.currentLocal(), TuiDay.normalizeParse(planingDate, 'DMY'));
1817
+ const daysDiff = TuiDay.lengthBetween(TuiDay.currentLocal(), TuiDay.normalizeParse(planingDate, 'dd/mm/yyyy'));
1819
1818
  switch (daysDiff) {
1820
1819
  case 0:
1821
1820
  return 'Будет сегодня';
@@ -2238,10 +2237,10 @@ class ScUIService {
2238
2237
  setSelectedWarehouseId(selectedWarehouseId) {
2239
2238
  this.setMetadataByKey('selectedWarehouseId', selectedWarehouseId);
2240
2239
  }
2241
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUIService, deps: [{ token: ScUserService }], target: i0.ɵɵFactoryTarget.Injectable }); }
2242
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUIService, providedIn: 'root' }); }
2240
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUIService, deps: [{ token: ScUserService }], target: i0.ɵɵFactoryTarget.Injectable }); }
2241
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUIService, providedIn: 'root' }); }
2243
2242
  }
2244
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUIService, decorators: [{
2243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUIService, decorators: [{
2245
2244
  type: Injectable,
2246
2245
  args: [{
2247
2246
  providedIn: 'root',
@@ -2484,10 +2483,10 @@ class ScConvertersService {
2484
2483
  }
2485
2484
  return resultObject;
2486
2485
  }
2487
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScConvertersService, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
2488
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScConvertersService, providedIn: 'root' }); }
2486
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScConvertersService, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
2487
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScConvertersService, providedIn: 'root' }); }
2489
2488
  }
2490
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScConvertersService, decorators: [{
2489
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScConvertersService, decorators: [{
2491
2490
  type: Injectable,
2492
2491
  args: [{
2493
2492
  providedIn: 'root',
@@ -2667,10 +2666,10 @@ class ScReferencesService {
2667
2666
  getCurrencyById$(currencyId) {
2668
2667
  return this.currencies$.pipe(map$1((types) => types.find((type) => type.id === currencyId)));
2669
2668
  }
2670
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScReferencesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2671
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScReferencesService, providedIn: 'root' }); }
2669
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScReferencesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2670
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScReferencesService, providedIn: 'root' }); }
2672
2671
  }
2673
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScReferencesService, decorators: [{
2672
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScReferencesService, decorators: [{
2674
2673
  type: Injectable,
2675
2674
  args: [{
2676
2675
  providedIn: 'root',
@@ -2778,10 +2777,10 @@ class ScWarehouseService {
2778
2777
  getCurrentWarehouseIdSelect() {
2779
2778
  return this.warehouseIdSelectSubject.getValue();
2780
2779
  }
2781
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScWarehouseService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2782
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScWarehouseService, providedIn: 'root' }); }
2780
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScWarehouseService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2781
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScWarehouseService, providedIn: 'root' }); }
2783
2782
  }
2784
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScWarehouseService, decorators: [{
2783
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScWarehouseService, decorators: [{
2785
2784
  type: Injectable,
2786
2785
  args: [{
2787
2786
  providedIn: 'root',
@@ -2966,10 +2965,10 @@ class ScCartService {
2966
2965
  });
2967
2966
  }));
2968
2967
  }
2969
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCartService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2970
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCartService, providedIn: 'root' }); }
2968
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScCartService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2969
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScCartService, providedIn: 'root' }); }
2971
2970
  }
2972
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCartService, decorators: [{
2971
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScCartService, decorators: [{
2973
2972
  type: Injectable,
2974
2973
  args: [{
2975
2974
  providedIn: 'root',
@@ -3132,6 +3131,16 @@ class ScCatalogFilterService {
3132
3131
  */
3133
3132
  this.filterMap = new Map();
3134
3133
  }
3134
+ /**
3135
+ * Удаляет просроченные записи кэша, чтобы карта не удерживала фильтры неиспользуемых категорий.
3136
+ */
3137
+ deleteExpiredCacheItems() {
3138
+ this.filterMap.forEach((cachedItem, key) => {
3139
+ if (!cachedItem.cachedDataIsActual()) {
3140
+ this.filterMap.delete(key);
3141
+ }
3142
+ });
3143
+ }
3135
3144
  /**
3136
3145
  * Возвращает список доступных фильтров продуктов в категории.
3137
3146
  *
@@ -3140,6 +3149,7 @@ class ScCatalogFilterService {
3140
3149
  */
3141
3150
  getFilters$(categoryIdOrSlug, recursively) {
3142
3151
  const key = `${categoryIdOrSlug}:${recursively ?? ''}`;
3152
+ this.deleteExpiredCacheItems();
3143
3153
  let cachedItem = this.filterMap.get(key);
3144
3154
  if (!cachedItem) {
3145
3155
  let params = new HttpParams();
@@ -3157,10 +3167,10 @@ class ScCatalogFilterService {
3157
3167
  }
3158
3168
  return cachedItem.item$;
3159
3169
  }
3160
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCatalogFilterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3161
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCatalogFilterService, providedIn: 'root' }); }
3170
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScCatalogFilterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3171
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScCatalogFilterService, providedIn: 'root' }); }
3162
3172
  }
3163
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCatalogFilterService, decorators: [{
3173
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScCatalogFilterService, decorators: [{
3164
3174
  type: Injectable,
3165
3175
  args: [{
3166
3176
  providedIn: 'root',
@@ -3188,11 +3198,11 @@ class ScIdOrSlugPipe {
3188
3198
  transform(value) {
3189
3199
  return this.idOrSlug === 'id' ? value.id : value.slug;
3190
3200
  }
3191
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScIdOrSlugPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
3192
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: ScIdOrSlugPipe, isStandalone: true, name: "scIdOrSlug" }); }
3193
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScIdOrSlugPipe, providedIn: 'root' }); }
3201
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScIdOrSlugPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
3202
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.16", ngImport: i0, type: ScIdOrSlugPipe, isStandalone: true, name: "scIdOrSlug" }); }
3203
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScIdOrSlugPipe, providedIn: 'root' }); }
3194
3204
  }
3195
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScIdOrSlugPipe, decorators: [{
3205
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScIdOrSlugPipe, decorators: [{
3196
3206
  type: Pipe,
3197
3207
  args: [{
3198
3208
  name: 'scIdOrSlug',
@@ -3273,10 +3283,14 @@ class ScCatalogService {
3273
3283
  * Сервис информации о пользователе.
3274
3284
  */
3275
3285
  this.userService = inject(ScUserService);
3286
+ /**
3287
+ * Ссылка на жизненный цикл сервиса.
3288
+ */
3289
+ this.destroyRef = inject(DestroyRef);
3276
3290
  /**
3277
3291
  * {@link Observable} изменения списка товаров со скидкой.
3278
3292
  */
3279
- this.firstDiscounted$ = inject(SC_USER_INFO).pipe(switchMap((user) => user.isGuest ? of(null) : this.getProducts$({ filters: { onlyDiscounted: true }, paginate: true, page: 1, perPage: this.countFirstDiscountedProducts })), shareReplay(1));
3293
+ this.firstDiscounted$ = inject(SC_USER_INFO).pipe(switchMap((user) => user.isGuest ? of(null) : this.getProducts$({ filters: { onlyDiscounted: true }, paginate: true, page: 1, perPage: this.countFirstDiscountedProducts })), shareReplay({ refCount: true, bufferSize: 1 }));
3280
3294
  /**
3281
3295
  * {@link Observable} изменения списка из первых товаров со скидкой.
3282
3296
  */
@@ -3287,16 +3301,24 @@ class ScCatalogService {
3287
3301
  this.countDiscountedProducts$ = this.firstDiscounted$.pipe(map$1((data) => data?.meta.total ?? 0));
3288
3302
  this.userService
3289
3303
  .getUserChange$()
3290
- .pipe(skip(1))
3304
+ .pipe(skip(1), takeUntilDestroyed(this.destroyRef))
3291
3305
  .subscribe(() => {
3292
- this.idCategoryMap.clear();
3293
- this.categoryMap.clear();
3294
- this.productHistoryMap.clear();
3295
- this.productMap.clear();
3296
- this.categoryProductsMap.clear();
3297
- this.virtualCategoryMap.clear();
3306
+ this.clearCache();
3298
3307
  });
3299
3308
  }
3309
+ /**
3310
+ * Очищает данные каталога, привязанные к текущему пользователю.
3311
+ */
3312
+ clearCache() {
3313
+ this.idCategoryMap.clear();
3314
+ this.categoryMap.clear();
3315
+ this.productHistoryMap.clear();
3316
+ this.productMap.clear();
3317
+ this.categoryProductsMap.clear();
3318
+ this.virtualCategoryMap.clear();
3319
+ this.categoryIdOrSlugMap.clear();
3320
+ this.productIdOrSlugMap.clear();
3321
+ }
3300
3322
  /**
3301
3323
  * Возвращает категорию из коллекции каталога, если её срок жизни не истёк.
3302
3324
  *
@@ -3407,6 +3429,9 @@ class ScCatalogService {
3407
3429
  .pipe(catchError$1(() => of({}))), null);
3408
3430
  this.productHistoryMap.set(product.id.toString(), cachedItem);
3409
3431
  }
3432
+ if (!cachedItem.cachedDataIsActual()) {
3433
+ cachedItem.update();
3434
+ }
3410
3435
  return cachedItem.item$;
3411
3436
  }
3412
3437
  // eslint-disable-next-line @typescript-eslint/no-redundant-type-constituents
@@ -3509,10 +3534,10 @@ class ScCatalogService {
3509
3534
  getProductNotifyWhenInStock$(productIdOrSlug, data) {
3510
3535
  return this.http.post(`${this.urls.apiUrl}/catalog/products/${productIdOrSlug}/stock-notify`, data);
3511
3536
  }
3512
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCatalogService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }, { token: ScUIService }, { token: ScConvertersService }, { token: SC_CACHE_LIFETIME }, { token: ScUserMetrikaService }], target: i0.ɵɵFactoryTarget.Injectable }); }
3513
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCatalogService, providedIn: 'root' }); }
3537
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScCatalogService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }, { token: ScUIService }, { token: ScConvertersService }, { token: SC_CACHE_LIFETIME }, { token: ScUserMetrikaService }], target: i0.ɵɵFactoryTarget.Injectable }); }
3538
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScCatalogService, providedIn: 'root' }); }
3514
3539
  }
3515
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCatalogService, decorators: [{
3540
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScCatalogService, decorators: [{
3516
3541
  type: Injectable,
3517
3542
  args: [{
3518
3543
  providedIn: 'root',
@@ -3550,7 +3575,7 @@ class ScFavoriteService {
3550
3575
  /**
3551
3576
  * {@link Observable} списка избранных категорий.
3552
3577
  */
3553
- this.categories$ = this.categoriesUpdateSubject.pipe(switchMap(() => this.user$), switchMap((user) => (user.isGuest ? of([]) : this.getFavoriteCategories$())), shareReplay(1) // Подогреваем запрос во избежание повторения запросов получения списка избранных категорий для новых подписчиков.
3578
+ this.categories$ = this.categoriesUpdateSubject.pipe(switchMap(() => this.user$), switchMap((user) => (user.isGuest ? of([]) : this.getFavoriteCategories$())), shareReplay({ refCount: true, bufferSize: 1 }) // Подогреваем запрос во избежание повторения запросов получения списка избранных категорий для новых подписчиков.
3554
3579
  );
3555
3580
  }
3556
3581
  /**
@@ -3599,10 +3624,10 @@ class ScFavoriteService {
3599
3624
  deleteProduct$(productId) {
3600
3625
  return this.http.delete(`${this.urls.apiUrl}/favorites/products/${productId}`);
3601
3626
  }
3602
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFavoriteService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3603
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFavoriteService, providedIn: 'root' }); }
3627
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFavoriteService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3628
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFavoriteService, providedIn: 'root' }); }
3604
3629
  }
3605
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFavoriteService, decorators: [{
3630
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFavoriteService, decorators: [{
3606
3631
  type: Injectable,
3607
3632
  args: [{
3608
3633
  providedIn: 'root',
@@ -3641,11 +3666,48 @@ class ScRecommendationService {
3641
3666
  * Сервис для работы с корзиной.
3642
3667
  */
3643
3668
  this.cartService = inject(ScCartService);
3669
+ /**
3670
+ * Ссылка на жизненный цикл сервиса.
3671
+ */
3672
+ this.destroyRef = inject(DestroyRef);
3673
+ /**
3674
+ * Кэшированный поток рекомендуемых товаров для корзины клиента.
3675
+ */
3676
+ this.productsByCart$ = this.cartService.get$().pipe(map$1((cart) => (cart !== loadingPlaceholder && 'items' in cart ? cart.items.map((item) => item.product.id) : [])),
3677
+ // Отфильтровываем повторения. Они возникнут если было изменено количество товара без удаления\добавления новых товаров.
3678
+ // eslint-disable-next-line sonarjs/no-misleading-array-reverse
3679
+ distinctUntilChanged((previous, current) => JSON.stringify([...previous].sort((a, b) => a - b)) === JSON.stringify([...current].sort((a, b) => a - b))), switchMap((productIds) => this.getProductsByProductIds$(productIds).pipe(startWith$1(null))), shareReplay({ refCount: false, bufferSize: 1 }));
3644
3680
  inject(SC_USER_INFO)
3645
- .pipe(skip(1))
3681
+ .pipe(skip(1), takeUntilDestroyed(this.destroyRef))
3646
3682
  .subscribe(() => {
3647
- this.productsByCategoryMap.clear();
3648
- this.productsByProductMap.clear();
3683
+ this.clearCache();
3684
+ });
3685
+ }
3686
+ /**
3687
+ * Очищает кэшированные рекомендации.
3688
+ */
3689
+ clearCache() {
3690
+ this.productsByCategoryMap.clear();
3691
+ this.productsByProductMap.clear();
3692
+ }
3693
+ /**
3694
+ * Удаляет просроченные записи кэша, чтобы карты не росли бесконечно при смене ключей.
3695
+ */
3696
+ deleteExpiredCategoryCacheItems() {
3697
+ this.productsByCategoryMap.forEach((cachedItem, key) => {
3698
+ if (!cachedItem.cachedDataIsActual()) {
3699
+ this.productsByCategoryMap.delete(key);
3700
+ }
3701
+ });
3702
+ }
3703
+ /**
3704
+ * Удаляет просроченные записи кэша товаров, чтобы карты не росли бесконечно при смене ключей.
3705
+ */
3706
+ deleteExpiredProductCacheItems() {
3707
+ this.productsByProductMap.forEach((cachedItem, key) => {
3708
+ if (!cachedItem.cachedDataIsActual()) {
3709
+ this.productsByProductMap.delete(key);
3710
+ }
3649
3711
  });
3650
3712
  }
3651
3713
  /**
@@ -3654,6 +3716,7 @@ class ScRecommendationService {
3654
3716
  * @param categoryIdOrSlug Идентификатор или slug категории товаров.
3655
3717
  */
3656
3718
  getProductsByCategory$(categoryIdOrSlug) {
3719
+ this.deleteExpiredCategoryCacheItems();
3657
3720
  let cachedItem = this.productsByCategoryMap.get(categoryIdOrSlug.toString());
3658
3721
  if (!cachedItem) {
3659
3722
  // Устанавливаем время жизни cachedItem равное, потому что нам не важно время жизни. Нам нужен функционал update().
@@ -3665,6 +3728,9 @@ class ScRecommendationService {
3665
3728
  .pipe(startWith$1(null)), null);
3666
3729
  this.productsByCategoryMap.set(categoryIdOrSlug.toString(), cachedItem);
3667
3730
  }
3731
+ if (!cachedItem.cachedDataIsActual()) {
3732
+ cachedItem.update();
3733
+ }
3668
3734
  return cachedItem.item$;
3669
3735
  }
3670
3736
  /**
@@ -3673,6 +3739,7 @@ class ScRecommendationService {
3673
3739
  * @param productIdOrSlug Идентификатор или slug товара/услуги.
3674
3740
  */
3675
3741
  getProductsByProduct$(productIdOrSlug) {
3742
+ this.deleteExpiredProductCacheItems();
3676
3743
  let cachedItem = this.productsByProductMap.get(productIdOrSlug.toString());
3677
3744
  if (!cachedItem) {
3678
3745
  // Устанавливаем время жизни cachedItem равное, потому что нам не важно время жизни. Нам нужен функционал update().
@@ -3684,6 +3751,9 @@ class ScRecommendationService {
3684
3751
  .pipe(startWith$1(null)), null);
3685
3752
  this.productsByProductMap.set(productIdOrSlug.toString(), cachedItem);
3686
3753
  }
3754
+ if (!cachedItem.cachedDataIsActual()) {
3755
+ cachedItem.update();
3756
+ }
3687
3757
  return cachedItem.item$;
3688
3758
  }
3689
3759
  /**
@@ -3699,27 +3769,15 @@ class ScRecommendationService {
3699
3769
  })
3700
3770
  .pipe(catchError$1(() => of([])), map$1((productsDTO) => productsDTO.map((product) => new ScProduct(product))));
3701
3771
  }
3702
- /**
3703
- * Создает запрос на получение списка рекомендованных товаров для корзины клиента.
3704
- */
3705
- getProductsByCart$() {
3706
- return this.cartService.get$().pipe(map$1((cart) => (cart !== loadingPlaceholder && 'items' in cart ? cart.items.map((item) => item.product.id) : [])),
3707
- // Отфильтровываем повторения. Они возникнут если было изменено количество товара без удаления\добавления новых товаров.
3708
- // eslint-disable-next-line sonarjs/no-misleading-array-reverse
3709
- distinctUntilChanged((previous, current) => JSON.stringify([...previous].sort((a, b) => a - b)) === JSON.stringify([...current].sort((a, b) => a - b))), switchMap((productIds) => this.getProductsByProductIds$(productIds).pipe(startWith$1(null))));
3710
- }
3711
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScRecommendationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3712
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScRecommendationService, providedIn: 'root' }); }
3772
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScRecommendationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3773
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScRecommendationService, providedIn: 'root' }); }
3713
3774
  }
3714
- __decorate([
3715
- tuiPure
3716
- ], ScRecommendationService.prototype, "getProductsByCart$", null);
3717
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScRecommendationService, decorators: [{
3775
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScRecommendationService, decorators: [{
3718
3776
  type: Injectable,
3719
3777
  args: [{
3720
3778
  providedIn: 'root',
3721
3779
  }]
3722
- }], ctorParameters: () => [], propDecorators: { getProductsByCart$: [] } });
3780
+ }], ctorParameters: () => [] });
3723
3781
 
3724
3782
  /**
3725
3783
  * Перечисление ключей маршрутов.
@@ -3978,10 +4036,10 @@ class ScConfiguratorService {
3978
4036
  params: this.convertersService.toHttpParams({ ...params }, { nonNullable: true }),
3979
4037
  });
3980
4038
  }
3981
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScConfiguratorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3982
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScConfiguratorService, providedIn: 'root' }); }
4039
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScConfiguratorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4040
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScConfiguratorService, providedIn: 'root' }); }
3983
4041
  }
3984
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScConfiguratorService, decorators: [{
4042
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScConfiguratorService, decorators: [{
3985
4043
  type: Injectable,
3986
4044
  args: [{
3987
4045
  providedIn: 'root',
@@ -4152,10 +4210,10 @@ class ScContactsService {
4152
4210
  params: params,
4153
4211
  });
4154
4212
  }
4155
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScContactsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4156
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScContactsService, providedIn: 'root' }); }
4213
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScContactsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4214
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScContactsService, providedIn: 'root' }); }
4157
4215
  }
4158
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScContactsService, decorators: [{
4216
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScContactsService, decorators: [{
4159
4217
  type: Injectable,
4160
4218
  args: [{
4161
4219
  providedIn: 'root',
@@ -4187,10 +4245,10 @@ class ScMediaImageTransformerPipe {
4187
4245
  }
4188
4246
  return image.startsWith('/') ? `${this.urls.imgServerUrl}${image}` : `${this.urls.imgServerUrl}/${image}`;
4189
4247
  }
4190
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScMediaImageTransformerPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
4191
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: ScMediaImageTransformerPipe, isStandalone: true, name: "scMediaImageTransformer" }); }
4248
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScMediaImageTransformerPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
4249
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.16", ngImport: i0, type: ScMediaImageTransformerPipe, isStandalone: true, name: "scMediaImageTransformer" }); }
4192
4250
  }
4193
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScMediaImageTransformerPipe, decorators: [{
4251
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScMediaImageTransformerPipe, decorators: [{
4194
4252
  type: Pipe,
4195
4253
  args: [{
4196
4254
  name: 'scMediaImageTransformer',
@@ -4275,10 +4333,10 @@ class ScImageHelper {
4275
4333
  isImg(format) {
4276
4334
  return ['jpeg', 'jpg', 'png', 'gif', 'bmp', 'tiff', 'webp'].includes(format);
4277
4335
  }
4278
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScImageHelper, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4279
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScImageHelper, providedIn: 'root' }); }
4336
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScImageHelper, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4337
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScImageHelper, providedIn: 'root' }); }
4280
4338
  }
4281
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScImageHelper, decorators: [{
4339
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScImageHelper, decorators: [{
4282
4340
  type: Injectable,
4283
4341
  args: [{
4284
4342
  providedIn: 'root',
@@ -4464,10 +4522,10 @@ class ScSearchService {
4464
4522
  getSearchTermChange$() {
4465
4523
  return this.searchTerm$.asObservable();
4466
4524
  }
4467
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScSearchService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }, { token: ScUserMetrikaService }], target: i0.ɵɵFactoryTarget.Injectable }); }
4468
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScSearchService, providedIn: 'root' }); }
4525
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScSearchService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }, { token: ScUserMetrikaService }], target: i0.ɵɵFactoryTarget.Injectable }); }
4526
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScSearchService, providedIn: 'root' }); }
4469
4527
  }
4470
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScSearchService, decorators: [{
4528
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScSearchService, decorators: [{
4471
4529
  type: Injectable,
4472
4530
  args: [{
4473
4531
  providedIn: 'root',
@@ -4566,7 +4624,7 @@ class ScUTMService {
4566
4624
  /**
4567
4625
  * Сервис для работы с {@link Storage} и внедрению его через DI.
4568
4626
  */
4569
- this.storageService = inject(StorageService);
4627
+ this.storageService = inject(WaStorageService);
4570
4628
  /**
4571
4629
  * Признак, что скрипт выполняется в браузере.
4572
4630
  */
@@ -4675,10 +4733,10 @@ class ScUTMService {
4675
4733
  this.storageService.setItem('utmTimestamp', JSON.stringify(Date.now()));
4676
4734
  }
4677
4735
  }
4678
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUTMService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4679
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUTMService, providedIn: 'root' }); }
4736
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUTMService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4737
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUTMService, providedIn: 'root' }); }
4680
4738
  }
4681
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScUTMService, decorators: [{
4739
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScUTMService, decorators: [{
4682
4740
  type: Injectable,
4683
4741
  args: [{
4684
4742
  providedIn: 'root',
@@ -4734,10 +4792,10 @@ class ScFeedbackService {
4734
4792
  });
4735
4793
  }));
4736
4794
  }
4737
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFeedbackService, deps: [{ token: i1$1.HttpClient }, { token: ScUserMetrikaService }, { token: SC_FEEDBACK_API }], target: i0.ɵɵFactoryTarget.Injectable }); }
4738
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFeedbackService, providedIn: 'root' }); }
4795
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFeedbackService, deps: [{ token: i1$1.HttpClient }, { token: ScUserMetrikaService }, { token: SC_FEEDBACK_API }], target: i0.ɵɵFactoryTarget.Injectable }); }
4796
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFeedbackService, providedIn: 'root' }); }
4739
4797
  }
4740
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFeedbackService, decorators: [{
4798
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFeedbackService, decorators: [{
4741
4799
  type: Injectable,
4742
4800
  args: [{
4743
4801
  providedIn: 'root',
@@ -4868,10 +4926,10 @@ class ScRequisitesService {
4868
4926
  getManagerById(managerId) {
4869
4927
  return this.idManagerMap.get(managerId);
4870
4928
  }
4871
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScRequisitesService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }, { token: ScAuthService }], target: i0.ɵɵFactoryTarget.Injectable }); }
4872
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScRequisitesService, providedIn: 'root' }); }
4929
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScRequisitesService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }, { token: ScAuthService }], target: i0.ɵɵFactoryTarget.Injectable }); }
4930
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScRequisitesService, providedIn: 'root' }); }
4873
4931
  }
4874
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScRequisitesService, decorators: [{
4932
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScRequisitesService, decorators: [{
4875
4933
  type: Injectable,
4876
4934
  args: [{
4877
4935
  providedIn: 'root',
@@ -5027,10 +5085,10 @@ class ScContragentService {
5027
5085
  .delete(`${this.urls.apiUrl}/user/contragents/${contragentId}/bank-accounts/${bankAccountId}`)
5028
5086
  .pipe(tap(() => this.contragentBankAccountsMap.get(contragentId)?.update()));
5029
5087
  }
5030
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScContragentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5031
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScContragentService, providedIn: 'root' }); }
5088
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScContragentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5089
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScContragentService, providedIn: 'root' }); }
5032
5090
  }
5033
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScContragentService, decorators: [{
5091
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScContragentService, decorators: [{
5034
5092
  type: Injectable,
5035
5093
  args: [{
5036
5094
  providedIn: 'root',
@@ -5137,10 +5195,10 @@ class ScDeliveryAddressService {
5137
5195
  deleteDeliveryAddressContact$(addressId, contactId) {
5138
5196
  return this.contactsService.deleteContact$(contactId).pipe(tap(() => this.contactsService.deliveryAddressContactsMap.get(addressId)?.update()));
5139
5197
  }
5140
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScDeliveryAddressService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5141
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScDeliveryAddressService, providedIn: 'root' }); }
5198
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScDeliveryAddressService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5199
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScDeliveryAddressService, providedIn: 'root' }); }
5142
5200
  }
5143
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScDeliveryAddressService, decorators: [{
5201
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScDeliveryAddressService, decorators: [{
5144
5202
  type: Injectable,
5145
5203
  args: [{
5146
5204
  providedIn: 'root',
@@ -5180,10 +5238,10 @@ class ScFrequentlyAskedQuestionsService {
5180
5238
  context: SC_IS_HIDDEN_ERROR_ALERT_HTTP_CONTEXT,
5181
5239
  });
5182
5240
  }
5183
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFrequentlyAskedQuestionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5184
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFrequentlyAskedQuestionsService, providedIn: 'root' }); }
5241
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFrequentlyAskedQuestionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5242
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFrequentlyAskedQuestionsService, providedIn: 'root' }); }
5185
5243
  }
5186
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFrequentlyAskedQuestionsService, decorators: [{
5244
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFrequentlyAskedQuestionsService, decorators: [{
5187
5245
  type: Injectable,
5188
5246
  args: [{
5189
5247
  providedIn: 'root',
@@ -5335,10 +5393,10 @@ class ScFilesService {
5335
5393
  break;
5336
5394
  }
5337
5395
  }
5338
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFilesService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }], target: i0.ɵɵFactoryTarget.Injectable }); }
5339
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFilesService, providedIn: 'root' }); }
5396
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFilesService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }], target: i0.ɵɵFactoryTarget.Injectable }); }
5397
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFilesService, providedIn: 'root' }); }
5340
5398
  }
5341
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScFilesService, decorators: [{
5399
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScFilesService, decorators: [{
5342
5400
  type: Injectable,
5343
5401
  args: [{
5344
5402
  providedIn: 'root',
@@ -5388,10 +5446,10 @@ class ScAuthAsClientGuard {
5388
5446
  },
5389
5447
  })), take(1), defaultIfEmpty(null), map$1(() => this.router.createUrlTree(this.options.urlTree)));
5390
5448
  }
5391
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScAuthAsClientGuard, deps: [{ token: ScAuthService }, { token: i2.Router }, { token: SC_AUTH_AS_CLIENT_OPTIONS }], target: i0.ɵɵFactoryTarget.Injectable }); }
5392
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScAuthAsClientGuard }); }
5449
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScAuthAsClientGuard, deps: [{ token: ScAuthService }, { token: i2.Router }, { token: SC_AUTH_AS_CLIENT_OPTIONS }], target: i0.ɵɵFactoryTarget.Injectable }); }
5450
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScAuthAsClientGuard }); }
5393
5451
  }
5394
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScAuthAsClientGuard, decorators: [{
5452
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScAuthAsClientGuard, decorators: [{
5395
5453
  type: Injectable
5396
5454
  }], ctorParameters: () => [{ type: ScAuthService }, { type: i2.Router }, { type: undefined, decorators: [{
5397
5455
  type: Inject,
@@ -5464,30 +5522,17 @@ const SC_GUEST_PARAMETER_NAME_TOKEN = new InjectionToken('SC_GUEST_PARAMETER_NAM
5464
5522
 
5465
5523
  /**
5466
5524
  * Перехватчик запросов для реализации аутентификации.
5525
+ *
5526
+ * @param request HTTP запрос.
5527
+ * @param next Следующий обработчик в цепочке.
5467
5528
  */
5468
- class ScAuthInterceptor {
5469
- /**
5470
- * Инициализирует экземпляр класса {@link ScAuthInterceptor}.
5471
- *
5472
- * @param tokenService Сервис ключей аутентификации.
5473
- */
5474
- constructor(tokenService) {
5475
- this.tokenService = tokenService;
5476
- }
5477
- /** @inheritDoc */
5478
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
5479
- intercept(request, next) {
5480
- if (request.context.get(SC_IS_HEADER_REQUIRED) && request.context.get(SC_AUTH_ADD_HEADER_REQUIRED)) {
5481
- return next.handle(request.clone(this.tokenService.addAuthHeader(request)));
5482
- }
5483
- return next.handle(request);
5529
+ function ScAuthInterceptor(request, next) {
5530
+ const tokenService = inject(ScTokenService);
5531
+ if (request.context.get(SC_IS_HEADER_REQUIRED) && request.context.get(SC_AUTH_ADD_HEADER_REQUIRED)) {
5532
+ return next(request.clone(tokenService.addAuthHeader(request)));
5484
5533
  }
5485
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScAuthInterceptor, deps: [{ token: ScTokenService }], target: i0.ɵɵFactoryTarget.Injectable }); }
5486
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScAuthInterceptor }); }
5534
+ return next(request);
5487
5535
  }
5488
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScAuthInterceptor, decorators: [{
5489
- type: Injectable
5490
- }], ctorParameters: () => [{ type: ScTokenService }] });
5491
5536
 
5492
5537
  /**
5493
5538
  * Модель данных закэшированного {@link HttpResponse}.
@@ -5507,324 +5552,263 @@ class ScCachedResponse {
5507
5552
  }
5508
5553
 
5509
5554
  /**
5510
- * Перехватчик запросов для кэширования результатов.
5555
+ * Коллекция пар ключ-значение для результатов запросов по строке запроса.
5511
5556
  */
5512
- class ScCacheInterceptor {
5513
- constructor() {
5514
- /**
5515
- * Коллекция пар ключ-значение для результатов запросов по строке запроса.
5516
- */
5517
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
5518
- this.cache = new Map();
5519
- }
5520
- /** @inheritDoc */
5521
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
5522
- intercept(request, next) {
5523
- if (request.context.get(SC_CACHE_SETTINGS).isCached) {
5524
- const cachedResponse = this.cache.get(request.url);
5525
- if (cachedResponse && cachedResponse.loadedAt.getTime() > Date.now() - request.context.get(SC_CACHE_SETTINGS).cacheLifeTime) {
5526
- return of(cachedResponse.response);
5527
- }
5528
- return next.handle(request).pipe(tap((response) => {
5529
- if (response instanceof HttpResponse) {
5530
- this.cache.set(request.url, new ScCachedResponse(response));
5531
- }
5532
- }));
5557
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
5558
+ const cache = new Map();
5559
+ /**
5560
+ * Перехватчик запросов для кэширования результатов.
5561
+ *
5562
+ * @param request HTTP запрос.
5563
+ * @param next Следующий обработчик в цепочке.
5564
+ */
5565
+ function ScCacheInterceptor(request, next) {
5566
+ if (request.context.get(SC_CACHE_SETTINGS).isCached) {
5567
+ const cachedResponse = cache.get(request.url);
5568
+ if (cachedResponse && cachedResponse.loadedAt.getTime() > Date.now() - request.context.get(SC_CACHE_SETTINGS).cacheLifeTime) {
5569
+ return of(cachedResponse.response);
5533
5570
  }
5534
- return next.handle(request);
5571
+ return next(request).pipe(tap((response) => {
5572
+ if (response instanceof HttpResponse) {
5573
+ cache.set(request.url, new ScCachedResponse(response));
5574
+ }
5575
+ }));
5535
5576
  }
5536
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCacheInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5537
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCacheInterceptor }); }
5577
+ return next(request);
5538
5578
  }
5539
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScCacheInterceptor, decorators: [{
5540
- type: Injectable
5541
- }] });
5542
5579
 
5543
5580
  /* eslint-disable security/detect-object-injection */
5544
5581
  /**
5545
- * Перехватчик для конвертации данных.
5582
+ * Конвертирует параметры HTTP запроса в snake_case.
5583
+ *
5584
+ * @param params HTTP параметры для конвертации.
5546
5585
  */
5547
- class ScConvertInterceptor {
5548
- /**
5549
- * Инициализирует экземпляр класса {@link ScConvertInterceptor}.
5550
- *
5551
- * @param urls Список ссылок на разделы backend'a.
5552
- */
5553
- constructor(urls) {
5554
- this.urls = urls;
5555
- }
5556
- /** @inheritDoc */
5557
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
5558
- intercept(request, next) {
5559
- if (request.responseType !== 'json' || !request.url.includes(this.urls.apiUrl)) {
5560
- return next.handle(request);
5586
+ function httpParamsToSnake(params) {
5587
+ // eslint-disable-next-line unicorn/no-array-reduce
5588
+ const newObje = params.keys().reduce((object, key) => {
5589
+ const parameter = params.getAll(key);
5590
+ if (parameter) {
5591
+ // eslint-disable-next-line no-param-reassign
5592
+ object[toSnake(key)] = parameter;
5561
5593
  }
5562
- return next.handle(request.clone({ params: this.httpParamsToSnake(request.params), body: objectToSnake(request.body) })).pipe(map$1((event) => {
5563
- if (event instanceof HttpResponse) {
5564
- return event.clone({
5565
- body: objectToCamel(event.body),
5566
- });
5567
- }
5568
- return event;
5569
- }), catchError$1((error) => throwError(() => new HttpErrorResponse({
5570
- error: objectToCamel(error.error),
5571
- headers: error.headers,
5572
- status: error.status,
5573
- statusText: error.statusText,
5574
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
5575
- url: error.url,
5576
- }))));
5577
- }
5578
- // eslint-disable-next-line class-methods-use-this
5579
- httpParamsToSnake(params) {
5580
- // eslint-disable-next-line unicorn/no-array-reduce
5581
- const newObje = params.keys().reduce((object, key) => {
5582
- const parameter = params.getAll(key);
5583
- if (parameter) {
5584
- // eslint-disable-next-line no-param-reassign
5585
- object[toSnake(key)] = parameter;
5586
- }
5587
- return object;
5588
- }, {});
5589
- return new HttpParams().appendAll(newObje);
5590
- }
5591
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScConvertInterceptor, deps: [{ token: SC_URLS }], target: i0.ɵɵFactoryTarget.Injectable }); }
5592
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScConvertInterceptor }); }
5594
+ return object;
5595
+ }, {});
5596
+ return new HttpParams().appendAll(newObje);
5597
+ }
5598
+ /**
5599
+ * Перехватчик для конвертации данных.
5600
+ *
5601
+ * @param request HTTP запрос.
5602
+ * @param next Следующий обработчик в цепочке.
5603
+ */
5604
+ function ScConvertInterceptor(request, next) {
5605
+ const urls = inject(SC_URLS);
5606
+ if (request.responseType !== 'json' || !request.url.includes(urls.apiUrl)) {
5607
+ return next(request);
5608
+ }
5609
+ return next(request.clone({
5610
+ params: httpParamsToSnake(request.params),
5611
+ body: isString(request.body) ? httpParamsToSnake(new HttpParams({ fromString: request.body })).toString() : objectToSnake(request.body),
5612
+ })).pipe(map$1((event) => {
5613
+ if (event instanceof HttpResponse) {
5614
+ return event.clone({
5615
+ body: objectToCamel(event.body),
5616
+ });
5617
+ }
5618
+ return event;
5619
+ }), catchError$1((error) => throwError(() => new HttpErrorResponse({
5620
+ error: objectToCamel(error.error),
5621
+ headers: error.headers,
5622
+ status: error.status,
5623
+ statusText: error.statusText,
5624
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
5625
+ url: error.url,
5626
+ }))));
5593
5627
  }
5594
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScConvertInterceptor, decorators: [{
5595
- type: Injectable
5596
- }], ctorParameters: () => [{ type: undefined, decorators: [{
5597
- type: Inject,
5598
- args: [SC_URLS]
5599
- }] }] });
5600
5628
 
5601
5629
  /**
5602
- * Перехватчик обработки ошибок запросов.
5630
+ * Наблюдаемый признак того, что токен в данный момент обновляется.
5603
5631
  */
5604
- class ScErrorsInterceptor {
5605
- /**
5606
- * Инициализирует экземпляр класса {@link ScErrorsInterceptor}.
5607
- *
5608
- * @param apiKeys Данные о API ключах.
5609
- * @param tokenService Сервис для работы с ключами аутентификации.
5610
- * @param authService Сервис аутентификации.
5611
- */
5612
- constructor(apiKeys, tokenService, authService) {
5613
- this.apiKeys = apiKeys;
5614
- this.tokenService = tokenService;
5615
- this.authService = authService;
5616
- /**
5617
- * Наблюдаемый признак того, что токен в данный момент обновляется.
5618
- */
5619
- this.isTokenRefreshing$ = new BehaviorSubject(false);
5620
- }
5621
- /** @inheritDoc */
5622
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
5623
- intercept(request, next) {
5624
- return next.handle(request).pipe(catchError$1((error) => {
5625
- // TODO: TASK[#4511]: Обработка и вывод ошибок работы с API.
5626
- // eslint-disable-next-line sonarjs/no-small-switch
5627
- switch (error.status) {
5628
- case 401:
5629
- if (request.context.get(SC_IS_LOGOUT_REQUEST)) {
5630
- this.tokenService.removeAuthToken();
5631
- return of();
5632
- }
5633
- if (request.headers.has(this.apiKeys.guestKeyName)) {
5634
- this.tokenService.removeGuestToken();
5635
- return of();
5636
- }
5637
- if (request.context.get(SC_IS_HEADER_REQUIRED) &&
5638
- request.headers.has(this.apiKeys.keyName) &&
5639
- !request.context.get(SC_IS_REFRESH_REQUIRED)) {
5640
- return this.handle401Error(request, next);
5641
- }
5642
- return throwError(() => error);
5643
- default:
5644
- return throwError(() => error);
5632
+ const isTokenRefreshing$ = new BehaviorSubject(false);
5633
+ /**
5634
+ * Проверяет, является ли причиной ошибки истекший токен.
5635
+ *
5636
+ * @param error Ошибка.
5637
+ */
5638
+ function isExpiredToken(error) {
5639
+ const wwwAuthenticate = error.headers.get('www-authenticate');
5640
+ return !!wwwAuthenticate && wwwAuthenticate.includes('Bearer error="expired_token"');
5641
+ }
5642
+ /**
5643
+ * Обработчик 401 ошибки.
5644
+ *
5645
+ * @param request Запрос, который выдал ошибку.
5646
+ * @param next Следующий перехватчик в цепочке перехватчиков.
5647
+ * @param tokenService Сервис для работы с ключами аутентификации.
5648
+ * @param authService Сервис аутентификации.
5649
+ */
5650
+ function handle401Error(request, next, tokenService, authService) {
5651
+ if (!isTokenRefreshing$.getValue()) {
5652
+ isTokenRefreshing$.next(true);
5653
+ return authService.getRefreshToken$().pipe(switchMap(() => {
5654
+ isTokenRefreshing$.next(false);
5655
+ return next(request.clone(tokenService.addAuthHeader(request)));
5656
+ }), catchError$1((error) => {
5657
+ if (error.status === 401) {
5658
+ tokenService.removeAuthToken();
5659
+ return of();
5645
5660
  }
5661
+ return throwError(() => error);
5646
5662
  }));
5647
5663
  }
5648
- /**
5649
- * Обработчик 401 ошибки.
5650
- *
5651
- * @param request Запрос, который выдал ошибку.
5652
- * @param next Следующий перехватчик в цепочке перехватчиков.
5653
- */
5654
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
5655
- handle401Error(request, next) {
5656
- if (!this.isTokenRefreshing$.getValue()) {
5657
- this.isTokenRefreshing$.next(true);
5658
- return this.authService.getRefreshToken$().pipe(switchMap(() => {
5659
- this.isTokenRefreshing$.next(false);
5660
- return next.handle(request.clone(this.tokenService.addAuthHeader(request)));
5661
- }), catchError$1((error) => {
5662
- if (error.status === 401) {
5663
- this.tokenService.removeAuthToken();
5664
+ return isTokenRefreshing$.pipe(filter((isRefreshing) => !isRefreshing), first(), // Для запуска цепочки повторного вызова запросов нужен один сигнал.
5665
+ switchMap(() => next(tokenService.addAuthHeader(request))), finalize(() => {
5666
+ isTokenRefreshing$.next(false);
5667
+ }), takeUntil(authService.getAuthChange().pipe(filter((state) => !state))));
5668
+ }
5669
+ /**
5670
+ * Перехватчик обработки ошибок запросов.
5671
+ *
5672
+ * @param request HTTP запрос.
5673
+ * @param next Следующий обработчик в цепочке.
5674
+ */
5675
+ function ScErrorsInterceptor(request, next) {
5676
+ const apiKeys = inject(SC_API_KEYS);
5677
+ const tokenService = inject(ScTokenService);
5678
+ const authService = inject(ScAuthService);
5679
+ return next(request).pipe(catchError$1((error) => {
5680
+ // eslint-disable-next-line sonarjs/no-small-switch
5681
+ switch (error.status) {
5682
+ case 401:
5683
+ if (request.context.get(SC_IS_LOGOUT_REQUEST)) {
5684
+ tokenService.removeAuthToken();
5685
+ return of();
5686
+ }
5687
+ if (request.headers.has(apiKeys.guestKeyName)) {
5688
+ tokenService.removeGuestToken();
5664
5689
  return of();
5665
5690
  }
5691
+ if (!isExpiredToken(error) && request.headers.has(apiKeys.keyName)) {
5692
+ tokenService.removeAuthToken();
5693
+ return of();
5694
+ }
5695
+ if (request.context.get(SC_IS_HEADER_REQUIRED) && request.headers.has(apiKeys.keyName) && !request.context.get(SC_IS_REFRESH_REQUIRED)) {
5696
+ return handle401Error(request, next, tokenService, authService);
5697
+ }
5698
+ return throwError(() => error);
5699
+ case 400:
5700
+ if (request.context.get(SC_IS_REFRESH_REQUIRED)) {
5701
+ tokenService.removeAuthToken();
5702
+ return of();
5703
+ }
5704
+ return throwError(() => error);
5705
+ default:
5666
5706
  return throwError(() => error);
5667
- }));
5668
5707
  }
5669
- return this.isTokenRefreshing$.pipe(filter((isRefreshing) => !isRefreshing), first(), // Для запуска цепочки повторного вызова запросов нужен один сигнал.
5670
- switchMap(() => next.handle(this.tokenService.addAuthHeader(request))), finalize(() => {
5671
- this.isTokenRefreshing$.next(false);
5672
- }), takeUntil(this.authService.getAuthChange().pipe(filter((state) => !state))));
5673
- }
5674
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScErrorsInterceptor, deps: [{ token: SC_API_KEYS }, { token: ScTokenService }, { token: ScAuthService }], target: i0.ɵɵFactoryTarget.Injectable }); }
5675
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScErrorsInterceptor }); }
5708
+ }));
5676
5709
  }
5677
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScErrorsInterceptor, decorators: [{
5678
- type: Injectable
5679
- }], ctorParameters: () => [{ type: undefined, decorators: [{
5680
- type: Inject,
5681
- args: [SC_API_KEYS]
5682
- }] }, { type: ScTokenService }, { type: ScAuthService }] });
5683
5710
 
5684
5711
  /**
5685
5712
  * Перехватчик запросов для внедрения опций приложения в заголовок.
5686
- */
5687
- class ScOptionsInterceptor {
5688
- /**
5689
- * Инициализирует экземпляр класса {@link ScOptionsInterceptor}.
5690
- *
5691
- * @param release Данные о текущем выпуске приложения.
5692
- */
5693
- constructor(release) {
5694
- this.release = release;
5695
- /**
5696
- * Заголовки опций приложения.
5697
- */
5698
- this.headers = {
5699
- 'APP-VERSION': `${this.release.name} (${this.release.version}, ${this.release.date})`,
5700
- };
5701
- }
5702
- /** @inheritDoc */
5703
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
5704
- intercept(request, next) {
5705
- if (request.context.get(SC_IS_HEADER_REQUIRED)) {
5706
- return next.handle(request.clone({
5707
- setHeaders: this.headers,
5708
- }));
5709
- }
5710
- return next.handle(request);
5713
+ *
5714
+ * @param request HTTP запрос.
5715
+ * @param next Следующий обработчик в цепочке.
5716
+ */
5717
+ function ScOptionsInterceptor(request, next) {
5718
+ const release = inject(SC_RELEASE);
5719
+ const headers = {
5720
+ 'APP-VERSION': `${release.name} (${release.version}, ${release.date})`,
5721
+ };
5722
+ if (request.context.get(SC_IS_HEADER_REQUIRED)) {
5723
+ return next(request.clone({
5724
+ setHeaders: headers,
5725
+ }));
5711
5726
  }
5712
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOptionsInterceptor, deps: [{ token: SC_RELEASE }], target: i0.ɵɵFactoryTarget.Injectable }); }
5713
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOptionsInterceptor }); }
5727
+ return next(request);
5714
5728
  }
5715
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOptionsInterceptor, decorators: [{
5716
- type: Injectable
5717
- }], ctorParameters: () => [{ type: undefined, decorators: [{
5718
- type: Inject,
5719
- args: [SC_RELEASE]
5720
- }] }] });
5721
5729
 
5722
5730
  /**
5723
5731
  * Перехватчик запросов API для добавления в них параметра при котором кешируются запросы у гостя.
5724
- */
5725
- class ScGuestInterceptor {
5726
- constructor() {
5727
- /**
5728
- * Список URL которые нужно кешировать для гостя.
5729
- */
5730
- this.guestEndpoints = inject(SC_GUEST_ENDPOINTS_TOKEN);
5731
- /**
5732
- * Имя параметра, при котором кешируются запросы у гостя.
5733
- */
5734
- this.guestParameterName = inject(SC_GUEST_PARAMETER_NAME_TOKEN);
5735
- /**
5736
- * Сервис аутентификации пользователей.
5737
- */
5738
- this.user$ = inject(SC_USER_INFO);
5739
- }
5740
- /** @inheritDoc */
5741
- intercept(request, next) {
5742
- const isGuestEndpoint = this.guestEndpoints.some((endpoint) => request.url.includes(endpoint));
5743
- if (!isGuestEndpoint) {
5744
- return next.handle(request);
5745
- }
5746
- return this.user$.pipe(first(), switchMap((user) => (user.isGuest ? next.handle(request.clone({ params: request.params.append(this.guestParameterName, true) })) : next.handle(request))));
5747
- }
5748
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScGuestInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5749
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScGuestInterceptor }); }
5732
+ *
5733
+ * @param request HTTP запрос.
5734
+ * @param next Следующий обработчик в цепочке.
5735
+ */
5736
+ function ScGuestInterceptor(request, next) {
5737
+ const guestEndpoints = inject(SC_GUEST_ENDPOINTS_TOKEN);
5738
+ const guestParameterName = inject(SC_GUEST_PARAMETER_NAME_TOKEN);
5739
+ const user$ = inject(SC_USER_INFO);
5740
+ const isGuestEndpoint = guestEndpoints.some((endpoint) => request.url.includes(endpoint));
5741
+ if (!isGuestEndpoint) {
5742
+ return next(request);
5743
+ }
5744
+ return user$.pipe(first(), switchMap((user) => (user.isGuest ? next(request.clone({ params: request.params.append(guestParameterName, true) })) : next(request))));
5750
5745
  }
5751
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScGuestInterceptor, decorators: [{
5752
- type: Injectable
5753
- }] });
5754
5746
 
5755
5747
  /**
5756
- * Перехватчик для форматирования дат в ошибках запросов к API.
5757
- */
5758
- class ScDateFormatInterceptor {
5759
- constructor() {
5760
- /**
5761
- * Формат дат.
5762
- */
5763
- this.dateFormats = inject(SC_DATE_FORMAT);
5764
- }
5765
- /** @inheritDoc */
5766
- intercept(request, next) {
5767
- return next.handle(request).pipe(catchError$1((error) => {
5768
- const errorData = error.error;
5769
- this.formatDatesInErrors(errorData);
5770
- return throwError(() => error);
5771
- }));
5772
- }
5773
- /**
5774
- * Форматирует даты в ошибках запросов к API.
5775
- *
5776
- * @param error Объект с ошибками API.
5777
- */
5778
- formatDatesInErrors(error) {
5779
- const { errors, message } = error;
5780
- // Форматируем основное сообщение об ошибке
5781
- if (message) {
5782
- // eslint-disable-next-line no-param-reassign
5783
- error.message = this.formatDateInString(message);
5784
- }
5785
- // eslint-disable-next-line no-restricted-syntax
5786
- for (const key in errors) {
5787
- if (Object.prototype.hasOwnProperty.call(errors, key)) {
5788
- // eslint-disable-next-line security/detect-object-injection
5789
- const fieldErrors = errors[key];
5790
- if (isArray(fieldErrors)) {
5791
- fieldErrors.forEach((errorMessage, index) => {
5792
- if (isString(errorMessage)) {
5793
- // eslint-disable-next-line security/detect-object-injection
5794
- fieldErrors[index] = this.formatDateInString(errorMessage);
5795
- }
5796
- });
5797
- }
5748
+ * Форматирует даты в строке.
5749
+ *
5750
+ * @param text Исходная строка.
5751
+ * @param dateFormats Форматы дат.
5752
+ */
5753
+ function formatDateInString(text, dateFormats) {
5754
+ // Ищем даты в формате yyyy-MM-dd HH:mm:ss.
5755
+ const dateRegex = /(\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})/g;
5756
+ return text.replaceAll(dateRegex, (match) => {
5757
+ try {
5758
+ const parsedDate = parse(match, dateFormats.api, new Date());
5759
+ if (isValid(parsedDate)) {
5760
+ return format(parsedDate, dateFormats.uiDate);
5798
5761
  }
5799
5762
  }
5800
- }
5801
- /**
5802
- * Форматирует даты в строке.
5803
- *
5804
- * @param text Исходная строка.
5805
- */
5806
- formatDateInString(text) {
5807
- // Ищем даты в формате yyyy-MM-dd HH:mm:ss.
5808
- const dateRegex = /(\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})/g;
5809
- return text.replaceAll(dateRegex, (match) => {
5810
- try {
5811
- const parsedDate = parse(match, this.dateFormats.api, new Date());
5812
- if (isValid(parsedDate)) {
5813
- return format(parsedDate, this.dateFormats.uiDate);
5814
- }
5815
- }
5816
- catch {
5817
- // Если не удалось распарсить дату, ничего не делаем.
5763
+ catch {
5764
+ // Если не удалось распарсить дату, ничего не делаем.
5765
+ }
5766
+ return match;
5767
+ });
5768
+ }
5769
+ /**
5770
+ * Форматирует даты в ошибках запросов к API.
5771
+ *
5772
+ * @param error Объект с ошибками API.
5773
+ * @param dateFormats Форматы дат.
5774
+ */
5775
+ function formatDatesInErrors(error, dateFormats) {
5776
+ const { errors, message } = error;
5777
+ // Форматируем основное сообщение об ошибке
5778
+ if (message) {
5779
+ // eslint-disable-next-line no-param-reassign
5780
+ error.message = formatDateInString(message, dateFormats);
5781
+ }
5782
+ // eslint-disable-next-line no-restricted-syntax
5783
+ for (const key in errors) {
5784
+ if (Object.prototype.hasOwnProperty.call(errors, key)) {
5785
+ // eslint-disable-next-line security/detect-object-injection
5786
+ const fieldErrors = errors[key];
5787
+ if (isArray(fieldErrors)) {
5788
+ fieldErrors.forEach((errorMessage, index) => {
5789
+ if (isString(errorMessage)) {
5790
+ // eslint-disable-next-line security/detect-object-injection
5791
+ fieldErrors[index] = formatDateInString(errorMessage, dateFormats);
5792
+ }
5793
+ });
5818
5794
  }
5819
- return match;
5820
- });
5795
+ }
5821
5796
  }
5822
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScDateFormatInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5823
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScDateFormatInterceptor }); }
5824
5797
  }
5825
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScDateFormatInterceptor, decorators: [{
5826
- type: Injectable
5827
- }] });
5798
+ /**
5799
+ * Перехватчик для форматирования дат в ошибках запросов к API.
5800
+ *
5801
+ * @param request HTTP запрос.
5802
+ * @param next Следующий обработчик в цепочке.
5803
+ */
5804
+ function ScDateFormatInterceptor(request, next) {
5805
+ const dateFormats = inject(SC_DATE_FORMAT);
5806
+ return next(request).pipe(catchError$1((error) => {
5807
+ const errorData = error.error;
5808
+ formatDatesInErrors(errorData, dateFormats);
5809
+ return throwError(() => error);
5810
+ }));
5811
+ }
5828
5812
 
5829
5813
  /**
5830
5814
  * Перечисление организационно-правовых форм.
@@ -5994,12 +5978,41 @@ class ScLocationsService {
5994
5978
  * Сервис справочников.
5995
5979
  */
5996
5980
  this.referencesService = inject(ScReferencesService);
5981
+ /**
5982
+ * Кэшированные списки регионов по идентификатору страны.
5983
+ */
5984
+ this.regionsCachedItemMap = new Map();
5985
+ /**
5986
+ * Кэшированные списки регионов с информацией о стране по идентификатору страны.
5987
+ */
5988
+ this.regionsWithCountryCachedItemMap = new Map();
5989
+ /**
5990
+ * Кэшированные списки городов по паре «страна-регион».
5991
+ */
5992
+ this.citiesCachedItemMap = new Map();
5993
+ /**
5994
+ * Кэшированные списки городов с информацией о регионе по паре «страна-регион».
5995
+ */
5996
+ this.citiesWithRegionCachedItemMap = new Map();
5997
+ /**
5998
+ * Кэшированные списки городов с информацией о регионе и стране по паре «страна-регион».
5999
+ */
6000
+ this.citiesWithRegionAndCountryCachedItemMap = new Map();
6001
+ /**
6002
+ * Кэшированные списки городов по поисковому запросу.
6003
+ */
6004
+ this.citiesByTermCachedItemMap = new Map();
6005
+ /**
6006
+ * Кэшированная информация о городе по идентификатору города.
6007
+ */
6008
+ this.cityByIdCachedItemMap = new Map();
5997
6009
  }
5998
6010
  /**
5999
6011
  * Создает запрос получения списка стран.
6000
6012
  */
6001
6013
  getCountries$() {
6002
- return this.referencesService.getReference$(ScReferenceName.country);
6014
+ this.countriesCachedItem ??= new ScCachedItem(Infinity, this.referencesService.getReference$(ScReferenceName.country));
6015
+ return this.countriesCachedItem.item$;
6003
6016
  }
6004
6017
  /**
6005
6018
  * Создает запрос получения списка регионов указанной страны.
@@ -6007,7 +6020,12 @@ class ScLocationsService {
6007
6020
  * @param countryId Идентификатор записи страны {@link number}.
6008
6021
  */
6009
6022
  getRegions$(countryId) {
6010
- return this.referencesService.getReference$(ScReferenceName.region, { countryId: countryId });
6023
+ let cachedItem = this.regionsCachedItemMap.get(countryId);
6024
+ if (!cachedItem) {
6025
+ cachedItem = new ScCachedItem(Infinity, this.referencesService.getReference$(ScReferenceName.region, { countryId: countryId }));
6026
+ this.regionsCachedItemMap.set(countryId, cachedItem);
6027
+ }
6028
+ return cachedItem.item$;
6011
6029
  }
6012
6030
  /**
6013
6031
  * Создает запрос получения списка регионов указанной страны с информацией о стране.
@@ -6015,7 +6033,12 @@ class ScLocationsService {
6015
6033
  * @param countryId Идентификатор записи страны {@link number}.
6016
6034
  */
6017
6035
  getRegionsWithCountry$(countryId) {
6018
- return this.referencesService.getReference$(ScReferenceName.regionWithCountry, { countryId: countryId });
6036
+ let cachedItem = this.regionsWithCountryCachedItemMap.get(countryId);
6037
+ if (!cachedItem) {
6038
+ cachedItem = new ScCachedItem(Infinity, this.referencesService.getReference$(ScReferenceName.regionWithCountry, { countryId: countryId }));
6039
+ this.regionsWithCountryCachedItemMap.set(countryId, cachedItem);
6040
+ }
6041
+ return cachedItem.item$;
6019
6042
  }
6020
6043
  /**
6021
6044
  * Создает запрос получения списка городов указанного региона.
@@ -6024,7 +6047,13 @@ class ScLocationsService {
6024
6047
  * @param regionId Идентификатор записи региона {@link regionId}.
6025
6048
  */
6026
6049
  getCities$(countryId, regionId) {
6027
- return this.referencesService.getReference$(ScReferenceName.city, { countryId: countryId, regionId: regionId });
6050
+ const key = `${countryId}_${regionId}`;
6051
+ let cachedItem = this.citiesCachedItemMap.get(key);
6052
+ if (!cachedItem) {
6053
+ cachedItem = new ScCachedItem(Infinity, this.referencesService.getReference$(ScReferenceName.city, { countryId: countryId, regionId: regionId }));
6054
+ this.citiesCachedItemMap.set(key, cachedItem);
6055
+ }
6056
+ return cachedItem.item$;
6028
6057
  }
6029
6058
  /**
6030
6059
  * Создает запрос получения списка городов указанного региона и страны с информацией о регионе.
@@ -6033,7 +6062,13 @@ class ScLocationsService {
6033
6062
  * @param regionId Идентификатор записи региона {@link regionId}.
6034
6063
  */
6035
6064
  getCitiesWithRegion$(countryId, regionId) {
6036
- return this.referencesService.getReference$(ScReferenceName.cityWithRegion, { countryId: countryId, regionId: regionId });
6065
+ const key = `${countryId}_${regionId}`;
6066
+ let cachedItem = this.citiesWithRegionCachedItemMap.get(key);
6067
+ if (!cachedItem) {
6068
+ cachedItem = new ScCachedItem(Infinity, this.referencesService.getReference$(ScReferenceName.cityWithRegion, { countryId: countryId, regionId: regionId }));
6069
+ this.citiesWithRegionCachedItemMap.set(key, cachedItem);
6070
+ }
6071
+ return cachedItem.item$;
6037
6072
  }
6038
6073
  /**
6039
6074
  * Создает запрос получения списка городов указанного региона и страны с информацией о регионе и стране.
@@ -6042,7 +6077,13 @@ class ScLocationsService {
6042
6077
  * @param regionId Идентификатор записи региона {@link regionId}.
6043
6078
  */
6044
6079
  getCityesWithRegionAndCountry$(countryId, regionId) {
6045
- return this.referencesService.getReference$(ScReferenceName.cityWithRegionAndCountry, { countryId: countryId, regionId: regionId });
6080
+ const key = `${countryId}_${regionId}`;
6081
+ let cachedItem = this.citiesWithRegionAndCountryCachedItemMap.get(key);
6082
+ if (!cachedItem) {
6083
+ cachedItem = new ScCachedItem(Infinity, this.referencesService.getReference$(ScReferenceName.cityWithRegionAndCountry, { countryId: countryId, regionId: regionId }));
6084
+ this.citiesWithRegionAndCountryCachedItemMap.set(key, cachedItem);
6085
+ }
6086
+ return cachedItem.item$;
6046
6087
  }
6047
6088
  /**
6048
6089
  * Создает запрос получения списка городов указанного региона и страны по поисковому запросу.
@@ -6052,7 +6093,13 @@ class ScLocationsService {
6052
6093
  * @param regionId Идентификатор записи региона.
6053
6094
  */
6054
6095
  getCitiesByTerm$(term, countryId, regionId) {
6055
- return this.referencesService.getReferenceByTerm$(ScReferenceName.cityWithRegion, term, { countryId: countryId, regionId: regionId });
6096
+ const key = `${term}_${countryId}_${regionId}`;
6097
+ let cachedItem = this.citiesByTermCachedItemMap.get(key);
6098
+ if (!cachedItem) {
6099
+ cachedItem = new ScCachedItem(Infinity, this.referencesService.getReferenceByTerm$(ScReferenceName.cityWithRegion, term, { countryId: countryId, regionId: regionId }));
6100
+ this.citiesByTermCachedItemMap.set(key, cachedItem);
6101
+ }
6102
+ return cachedItem.item$;
6056
6103
  }
6057
6104
  /**
6058
6105
  * Создает запрос получения информации о городе с информацией о регионе и стране.
@@ -6060,41 +6107,22 @@ class ScLocationsService {
6060
6107
  * @param cityId Идентификатор записи города.
6061
6108
  */
6062
6109
  getCityById$(cityId) {
6063
- return this.referencesService.getReferenceById$(ScReferenceName.cityWithRegionAndCountry, cityId);
6110
+ let cachedItem = this.cityByIdCachedItemMap.get(cityId);
6111
+ if (!cachedItem) {
6112
+ cachedItem = new ScCachedItem(Infinity, this.referencesService.getReferenceById$(ScReferenceName.cityWithRegionAndCountry, cityId));
6113
+ this.cityByIdCachedItemMap.set(cityId, cachedItem);
6114
+ }
6115
+ return cachedItem.item$;
6064
6116
  }
6065
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScLocationsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6066
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScLocationsService, providedIn: 'root' }); }
6117
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScLocationsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6118
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScLocationsService, providedIn: 'root' }); }
6067
6119
  }
6068
- __decorate([
6069
- tuiPure
6070
- ], ScLocationsService.prototype, "getCountries$", null);
6071
- __decorate([
6072
- tuiPure
6073
- ], ScLocationsService.prototype, "getRegions$", null);
6074
- __decorate([
6075
- tuiPure
6076
- ], ScLocationsService.prototype, "getRegionsWithCountry$", null);
6077
- __decorate([
6078
- tuiPure
6079
- ], ScLocationsService.prototype, "getCities$", null);
6080
- __decorate([
6081
- tuiPure
6082
- ], ScLocationsService.prototype, "getCitiesWithRegion$", null);
6083
- __decorate([
6084
- tuiPure
6085
- ], ScLocationsService.prototype, "getCityesWithRegionAndCountry$", null);
6086
- __decorate([
6087
- tuiPure
6088
- ], ScLocationsService.prototype, "getCitiesByTerm$", null);
6089
- __decorate([
6090
- tuiPure
6091
- ], ScLocationsService.prototype, "getCityById$", null);
6092
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScLocationsService, decorators: [{
6120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScLocationsService, decorators: [{
6093
6121
  type: Injectable,
6094
6122
  args: [{
6095
6123
  providedIn: 'root',
6096
6124
  }]
6097
- }], propDecorators: { getCountries$: [], getRegions$: [], getRegionsWithCountry$: [], getCities$: [], getCitiesWithRegion$: [], getCityesWithRegionAndCountry$: [], getCitiesByTerm$: [], getCityById$: [] } });
6125
+ }] });
6098
6126
 
6099
6127
  /**
6100
6128
  * Модель данных новости.
@@ -6175,10 +6203,10 @@ class ScNewsService {
6175
6203
  getLastNewsList$() {
6176
6204
  return this.lastNewsList$;
6177
6205
  }
6178
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScNewsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6179
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScNewsService, providedIn: 'root' }); }
6206
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScNewsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6207
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScNewsService, providedIn: 'root' }); }
6180
6208
  }
6181
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScNewsService, decorators: [{
6209
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScNewsService, decorators: [{
6182
6210
  type: Injectable,
6183
6211
  args: [{
6184
6212
  providedIn: 'root',
@@ -6251,6 +6279,10 @@ class ScNotificationsService {
6251
6279
  * {@link Observable} данных о текущем пользователе.
6252
6280
  */
6253
6281
  this.user$ = inject(SC_USER_INFO);
6282
+ /**
6283
+ * Ссылка на жизненный цикл сервиса.
6284
+ */
6285
+ this.destroyRef = inject(DestroyRef);
6254
6286
  /**
6255
6287
  * Интервалы обновления данных.
6256
6288
  */
@@ -6279,7 +6311,7 @@ class ScNotificationsService {
6279
6311
  else {
6280
6312
  this.updateUserNotificationsCount();
6281
6313
  }
6282
- }), switchMap((user) => (user.isGuest ? of() : this.interval$)))
6314
+ }), switchMap((user) => (user.isGuest ? of() : this.interval$)), takeUntilDestroyed(this.destroyRef))
6283
6315
  .subscribe();
6284
6316
  }
6285
6317
  /**
@@ -6380,10 +6412,10 @@ class ScNotificationsService {
6380
6412
  setNotificationsChange(notifications) {
6381
6413
  this.notifications$.next(notifications);
6382
6414
  }
6383
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScNotificationsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6384
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScNotificationsService, providedIn: 'root' }); }
6415
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScNotificationsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6416
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScNotificationsService, providedIn: 'root' }); }
6385
6417
  }
6386
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScNotificationsService, decorators: [{
6418
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScNotificationsService, decorators: [{
6387
6419
  type: Injectable,
6388
6420
  args: [{
6389
6421
  providedIn: 'root',
@@ -6883,10 +6915,10 @@ class ScOrderDraftsService {
6883
6915
  }
6884
6916
  }));
6885
6917
  }
6886
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderDraftsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6887
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderDraftsService, providedIn: 'root' }); }
6918
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScOrderDraftsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6919
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScOrderDraftsService, providedIn: 'root' }); }
6888
6920
  }
6889
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrderDraftsService, decorators: [{
6921
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScOrderDraftsService, decorators: [{
6890
6922
  type: Injectable,
6891
6923
  args: [{
6892
6924
  providedIn: 'root',
@@ -7087,10 +7119,10 @@ class ScOrdersService {
7087
7119
  cachedItem.setValue(order);
7088
7120
  }
7089
7121
  }
7090
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrdersService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7091
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrdersService, providedIn: 'root' }); }
7122
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScOrdersService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7123
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScOrdersService, providedIn: 'root' }); }
7092
7124
  }
7093
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScOrdersService, decorators: [{
7125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScOrdersService, decorators: [{
7094
7126
  type: Injectable,
7095
7127
  args: [{
7096
7128
  providedIn: 'root',
@@ -7239,10 +7271,10 @@ class ScPaginationService {
7239
7271
  const { page, perPage, ...others } = value;
7240
7272
  return others;
7241
7273
  }
7242
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPaginationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7243
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPaginationService }); }
7274
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScPaginationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7275
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScPaginationService }); }
7244
7276
  }
7245
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPaginationService, decorators: [{
7277
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScPaginationService, decorators: [{
7246
7278
  type: Injectable
7247
7279
  }], ctorParameters: () => [] });
7248
7280
 
@@ -7334,10 +7366,10 @@ class ScQuestionnaireService {
7334
7366
  // eslint-disable-next-line @typescript-eslint/no-invalid-void-type
7335
7367
  return this.http.get(`${this.urls.apiUrl}/questionnaires/${questionnaire.id}/statuses/${status}`);
7336
7368
  }
7337
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScQuestionnaireService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7338
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScQuestionnaireService, providedIn: 'root' }); }
7369
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScQuestionnaireService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7370
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScQuestionnaireService, providedIn: 'root' }); }
7339
7371
  }
7340
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScQuestionnaireService, decorators: [{
7372
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScQuestionnaireService, decorators: [{
7341
7373
  type: Injectable,
7342
7374
  args: [{
7343
7375
  providedIn: 'root',
@@ -7409,10 +7441,10 @@ class ScReclamationService {
7409
7441
  deleteReclamation$(reclamationId) {
7410
7442
  return this.http.delete(`${this.urls.apiUrl}/reclamations/${reclamationId}`);
7411
7443
  }
7412
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScReclamationService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }], target: i0.ɵɵFactoryTarget.Injectable }); }
7413
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScReclamationService, providedIn: 'root' }); }
7444
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScReclamationService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }], target: i0.ɵɵFactoryTarget.Injectable }); }
7445
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScReclamationService, providedIn: 'root' }); }
7414
7446
  }
7415
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScReclamationService, decorators: [{
7447
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScReclamationService, decorators: [{
7416
7448
  type: Injectable,
7417
7449
  args: [{
7418
7450
  providedIn: 'root',
@@ -7725,10 +7757,10 @@ class SchemaOrgFactory {
7725
7757
  itemListElement: breadcrumbItems,
7726
7758
  };
7727
7759
  }
7728
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SchemaOrgFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7729
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SchemaOrgFactory, providedIn: 'root' }); }
7760
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: SchemaOrgFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7761
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: SchemaOrgFactory, providedIn: 'root' }); }
7730
7762
  }
7731
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SchemaOrgFactory, decorators: [{
7763
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: SchemaOrgFactory, decorators: [{
7732
7764
  type: Injectable,
7733
7765
  args: [{
7734
7766
  providedIn: 'root',
@@ -7868,8 +7900,13 @@ class ScSeoService {
7868
7900
  .filter(Boolean)
7869
7901
  .map((fieldPath) => get(instanceData, fieldPath))
7870
7902
  .find((fieldValue) => !isNil(fieldValue));
7871
- // eslint-disable-next-line sonarjs/no-nested-conditional
7872
- return isNil(value) ? '' : isString(value) ? value : String(value);
7903
+ if (isString(value)) {
7904
+ return value;
7905
+ }
7906
+ if (typeof value === 'number' || typeof value === 'boolean') {
7907
+ return String(value);
7908
+ }
7909
+ return '';
7873
7910
  });
7874
7911
  }
7875
7912
  /**
@@ -7944,10 +7981,10 @@ class ScSeoService {
7944
7981
  this.renderer.appendChild(script, this.document.createTextNode(JSON.stringify(data)));
7945
7982
  this.renderer.appendChild(this.document.head, script);
7946
7983
  }
7947
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScSeoService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7948
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScSeoService, providedIn: 'root' }); }
7984
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScSeoService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7985
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScSeoService, providedIn: 'root' }); }
7949
7986
  }
7950
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScSeoService, decorators: [{
7987
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScSeoService, decorators: [{
7951
7988
  type: Injectable,
7952
7989
  args: [{
7953
7990
  providedIn: 'root',
@@ -8006,10 +8043,10 @@ class ScSuggestionService {
8006
8043
  // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
8007
8044
  return this.http.get(`${this.urls.apiUrl}/suggestions/${[type]}`, { params: { query: query } });
8008
8045
  }
8009
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScSuggestionService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }], target: i0.ɵɵFactoryTarget.Injectable }); }
8010
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScSuggestionService, providedIn: 'root' }); }
8046
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScSuggestionService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }], target: i0.ɵɵFactoryTarget.Injectable }); }
8047
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScSuggestionService, providedIn: 'root' }); }
8011
8048
  }
8012
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScSuggestionService, decorators: [{
8049
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScSuggestionService, decorators: [{
8013
8050
  type: Injectable,
8014
8051
  args: [{
8015
8052
  providedIn: 'root',
@@ -8070,10 +8107,10 @@ class ScPhoneService {
8070
8107
  }
8071
8108
  return value;
8072
8109
  }
8073
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPhoneService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
8074
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPhoneService, providedIn: 'root' }); }
8110
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScPhoneService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
8111
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScPhoneService, providedIn: 'root' }); }
8075
8112
  }
8076
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScPhoneService, decorators: [{
8113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScPhoneService, decorators: [{
8077
8114
  type: Injectable,
8078
8115
  args: [{
8079
8116
  providedIn: 'root',
@@ -8151,10 +8188,10 @@ class ScVacanciesService {
8151
8188
  })
8152
8189
  .pipe(map$1((result) => new ScVacanciesList(result)));
8153
8190
  }
8154
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScVacanciesService, deps: [{ token: i1$1.HttpClient }, { token: SC_VACANCIES_DATA_SOURCE }, { token: SC_CACHE_LIFETIME }], target: i0.ɵɵFactoryTarget.Injectable }); }
8155
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScVacanciesService, providedIn: 'root' }); }
8191
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScVacanciesService, deps: [{ token: i1$1.HttpClient }, { token: SC_VACANCIES_DATA_SOURCE }, { token: SC_CACHE_LIFETIME }], target: i0.ɵɵFactoryTarget.Injectable }); }
8192
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScVacanciesService, providedIn: 'root' }); }
8156
8193
  }
8157
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScVacanciesService, decorators: [{
8194
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScVacanciesService, decorators: [{
8158
8195
  type: Injectable,
8159
8196
  args: [{
8160
8197
  providedIn: 'root',
@@ -8249,10 +8286,10 @@ class ScVCardService {
8249
8286
  downloadVCard(data) {
8250
8287
  this.windowReference.open(this.windowReference.URL.createObjectURL(this.getVCardBlob(data)));
8251
8288
  }
8252
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScVCardService, deps: [{ token: SC_URLS }, { token: WA_WINDOW }], target: i0.ɵɵFactoryTarget.Injectable }); }
8253
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScVCardService, providedIn: 'root' }); }
8289
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScVCardService, deps: [{ token: SC_URLS }, { token: WA_WINDOW }], target: i0.ɵɵFactoryTarget.Injectable }); }
8290
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScVCardService, providedIn: 'root' }); }
8254
8291
  }
8255
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScVCardService, decorators: [{
8292
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScVCardService, decorators: [{
8256
8293
  type: Injectable,
8257
8294
  args: [{
8258
8295
  providedIn: 'root',
@@ -8316,10 +8353,10 @@ class ScVerificationService {
8316
8353
  params: { phone: phone },
8317
8354
  });
8318
8355
  }
8319
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScVerificationService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }], target: i0.ɵɵFactoryTarget.Injectable }); }
8320
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScVerificationService, providedIn: 'root' }); }
8356
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScVerificationService, deps: [{ token: i1$1.HttpClient }, { token: SC_URLS }], target: i0.ɵɵFactoryTarget.Injectable }); }
8357
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScVerificationService, providedIn: 'root' }); }
8321
8358
  }
8322
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ScVerificationService, decorators: [{
8359
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ScVerificationService, decorators: [{
8323
8360
  type: Injectable,
8324
8361
  args: [{
8325
8362
  providedIn: 'root',
@@ -8333,5 +8370,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
8333
8370
  * Generated bundle index. Do not edit.
8334
8371
  */
8335
8372
 
8336
- export { CATEGORY_PROVIDERS, EMPTY_CART, IS_BROWSER, IS_RUNNING_ON_TERMINAL, IS_SERVER, RESPONSE, SC_ACCESS_AUTH_TOKEN_STORAGE_KEY, SC_API_KEYS, SC_AUTH_ADD_HEADER_REQUIRED, SC_AUTH_AS_CLIENT_DEFAULT_OPTIONS, SC_AUTH_AS_CLIENT_OPTIONS, SC_CACHE_LIFETIME, SC_CACHE_SETTINGS, SC_CATALOG_ITEM_PAGE_META, SC_CATALOG_ROOT_PAGE_META, SC_CATEGORY_INFO, SC_COMPANY_INFO, SC_COMPANY_NAME, SC_CONFIGURATOR_COMPONENTS, SC_CONFIGURATOR_SETTINGS, SC_COUNT_FIRST_DISCOUNTED_PRODUCTS, SC_COUNT_LAST_NEWS, SC_DATE_FORMAT, SC_DEFAULT_PAGE_META, SC_FEEDBACK_API, SC_GUEST_ENDPOINTS_TOKEN, SC_GUEST_PARAMETER_NAME_TOKEN, SC_GUEST_TOKEN_STORAGE_KEY, SC_ID_OR_SLUG_IN_ROUTE, SC_IS_HEADER_REQUIRED, SC_IS_HIDDEN_ERROR_ALERT, SC_IS_HIDDEN_ERROR_ALERT_HTTP_CONTEXT, SC_IS_LOGOUT_REQUEST, SC_IS_REFRESH_REQUIRED, SC_LINEAR_VALUES, SC_LINEAR_VALUES_TOKEN, SC_MAX_LENGTH_SEARCH_TERM, SC_MIN_LENGTH_SEARCH_TERM, SC_NEXT_PAGE_PAGINATION_CLICK, SC_ORDER_LOADER, SC_ORDER_LOADING, SC_PATH_IMAGE_NOT_FOUND, SC_PRODUCT_PAGINATION_DEFAULT_OPTIONS, SC_PRODUCT_PAGINATION_OPTIONS, SC_REFRESH_AUTH_TOKEN_STORAGE_KEY, SC_RELEASE, SC_UPDATE_INTERVAL, SC_URLS, SC_USER_INFO, SC_VACANCIES_DATA_SOURCE, SC_VIRTUAL_CATEGORY_INFO, SC_VIRTUAL_CATEGORY_PROVIDERS, SEARCH_TERM, SEARCH_TERM_PROVIDERS, ScAuthAsClientGuard, ScAuthInterceptor, ScAuthService, ScBanner, ScBannerService, ScCacheInterceptor, ScCacheSettings, ScCachedData, ScCachedItem, ScCart, ScCartService, ScCatalogFilterService, ScCatalogFormat, ScCatalogItem, ScCatalogService, ScCatalogableItem, ScCategory, ScClientType, ScCodedIdentity, ScConfiguratorService, ScContactsService, ScContragentService, ScConvertInterceptor, ScConvertersService, ScDateFormatInterceptor, ScDeletableNamedIdentity, ScDeliveryAddressService, ScDeliveryCost, ScDeliveryType, ScDocumentInfoNode, ScDocumentInfoTypesEnum, ScErrorRequestState, ScErrorsInterceptor, ScFavoriteService, ScFeedbackForms, ScFeedbackService, ScFilesService, ScFrequentlyAskedQuestionsService, ScGuestInterceptor, ScHiddenCatalogableItem, ScIBreadcrumbItem, ScISuggestionType, ScIconTypesEnum, ScIdOrSlugGuard, ScIdOrSlugPipe, ScIdentity, ScImage, ScImageHelper, ScLoadingRequestState, ScLocationsService, ScMediaImageTransformerPipe, ScMimeTypes, ScNamedIdentity, ScNews, ScNewsService, ScNotificationActionTypes, ScNotificationLevelNames, ScNotificationsService, ScOpfList, ScOptionsInterceptor, ScOrder, ScOrderBase, ScOrderDraft, ScOrderDraftShort, ScOrderDraftType, ScOrderDraftsService, ScOrderItem, ScOrderShort, ScOrderStateStatus, ScOrdersService, ScPaginationService, ScPaymentStatus, ScPaymentType, ScPhoneService, ScPrimaryCatalogableItem, ScProduct, ScProductTileType, ScQuestionnaireService, ScQuestionnaireStatusEnum, ScReclamationService, ScReclamationStatus, ScRecommendationService, ScReference, ScReferenceName, ScReferencesService, ScRequestStateStatusEnum, ScRequisitesService, ScRouteKeys, ScSearchService, ScSeoService, ScSocialType, ScSuccessRequestState, ScSuggestionService, ScSum, ScTokenService, ScUIService, ScUTMService, ScUnitsHelper, ScUpdatableNamedIdentity, ScUploadedFile, ScUser, ScUserMetadata, ScUserMetrikaGoalsEnum, ScUserMetrikaService, ScUserService, ScUserType, ScVCardService, ScVacanciesList, ScVacanciesService, ScVacancy, ScVerificationService, ScVirtualCategory, ScWarehouseService, SchemaOrgFactory, TERMINAL_PROVIDERS, USER_AGENT_TERMINAL, filterChangedByKey, loadingPlaceholder, mapRequestStateToDataOrNull, mapToRequestState, runningOnTerminalFactory, scGetCurrentRoute, scOrderIsLoaded, searchTermFactory };
8373
+ export { CATEGORY_PROVIDERS, EMPTY_CART, IS_BROWSER, IS_RUNNING_ON_TERMINAL, IS_SERVER, RESPONSE, SC_ACCESS_AUTH_TOKEN_STORAGE_KEY, SC_API_KEYS, SC_AUTH_ADD_HEADER_REQUIRED, SC_AUTH_AS_CLIENT_DEFAULT_OPTIONS, SC_AUTH_AS_CLIENT_OPTIONS, SC_CACHE_LIFETIME, SC_CACHE_SETTINGS, SC_CATALOG_ITEM_PAGE_META, SC_CATALOG_ROOT_PAGE_META, SC_CATEGORY_INFO, SC_COMPANY_INFO, SC_COMPANY_NAME, SC_CONFIGURATOR_COMPONENTS, SC_CONFIGURATOR_SETTINGS, SC_COUNT_FIRST_DISCOUNTED_PRODUCTS, SC_COUNT_LAST_NEWS, SC_DATE_FORMAT, SC_DEFAULT_PAGE_META, SC_FEEDBACK_API, SC_GUEST_ENDPOINTS_TOKEN, SC_GUEST_PARAMETER_NAME_TOKEN, SC_GUEST_TOKEN_STORAGE_KEY, SC_ID_OR_SLUG_IN_ROUTE, SC_IS_HEADER_REQUIRED, SC_IS_HIDDEN_ERROR_ALERT, SC_IS_HIDDEN_ERROR_ALERT_HTTP_CONTEXT, SC_IS_LOGOUT_REQUEST, SC_IS_REFRESH_REQUIRED, SC_LINEAR_VALUES, SC_LINEAR_VALUES_TOKEN, SC_MAX_LENGTH_SEARCH_TERM, SC_MIN_LENGTH_SEARCH_TERM, SC_NEXT_PAGE_PAGINATION_CLICK, SC_ORDER_LOADER, SC_ORDER_LOADING, SC_PATH_IMAGE_NOT_FOUND, SC_PRODUCT_PAGINATION_DEFAULT_OPTIONS, SC_PRODUCT_PAGINATION_OPTIONS, SC_REFRESH_AUTH_TOKEN_STORAGE_KEY, SC_RELEASE, SC_UPDATE_INTERVAL, SC_URLS, SC_USER_INFO, SC_VACANCIES_DATA_SOURCE, SC_VIRTUAL_CATEGORY_INFO, SC_VIRTUAL_CATEGORY_PROVIDERS, SEARCH_TERM, SEARCH_TERM_PROVIDERS, ScAuthAsClientGuard, ScAuthInterceptor, ScAuthService, ScBanner, ScBannerService, ScCacheInterceptor, ScCacheSettings, ScCachedData, ScCachedItem, ScCart, ScCartService, ScCatalogFilterService, ScCatalogFormat, ScCatalogItem, ScCatalogService, ScCatalogableItem, ScCategory, ScClientType, ScCodedIdentity, ScConfiguratorService, ScContactsService, ScContragentService, ScConvertInterceptor, ScConvertersService, ScDateFormatInterceptor, ScDeletableNamedIdentity, ScDeliveryAddressService, ScDeliveryCost, ScDeliveryType, ScDocumentInfoNode, ScDocumentInfoTypesEnum, ScErrorRequestState, ScErrorsInterceptor, ScFavoriteService, ScFeedbackForms, ScFeedbackService, ScFilesService, ScFrequentlyAskedQuestionsService, ScGuestInterceptor, ScHiddenCatalogableItem, ScIBreadcrumbItem, ScISuggestionType, ScIconTypesEnum, ScIdOrSlugGuard, ScIdOrSlugPipe, ScIdentity, ScImage, ScImageHelper, ScLoadingRequestState, ScLocationsService, ScMediaImageTransformerPipe, ScMimeTypes, ScNamedIdentity, ScNews, ScNewsService, ScNotificationActionTypes, ScNotificationLevelNames, ScNotificationsService, ScOpfList, ScOptionsInterceptor, ScOrder, ScOrderBase, ScOrderDraft, ScOrderDraftShort, ScOrderDraftType, ScOrderDraftsService, ScOrderItem, ScOrderShort, ScOrderStateStatus, ScOrdersService, ScPaginationService, ScPaymentStatus, ScPaymentType, ScPhoneService, ScPrimaryCatalogableItem, ScProduct, ScProductTileType, ScQuestionnaireService, ScQuestionnaireStatusEnum, ScReclamationService, ScReclamationStatus, ScRecommendationService, ScReference, ScReferenceName, ScReferencesService, ScRequestStateStatusEnum, ScRequisitesService, ScRouteKeys, ScSearchService, ScSeoService, ScSocialType, ScSuccessRequestState, ScSuggestionService, ScSum, ScTokenService, ScUIService, ScUTMService, ScUnitsHelper, ScUpdatableNamedIdentity, ScUploadedFile, ScUser, ScUserMetadata, ScUserMetrikaGoalsEnum, ScUserMetrikaService, ScUserService, ScUserType, ScVCardService, ScVacanciesList, ScVacanciesService, ScVacancy, ScVerificationService, ScVirtualCategory, ScWarehouseService, SchemaOrgFactory, TERMINAL_PROVIDERS, USER_AGENT_TERMINAL, filterChangedByKey, isExpiredToken, loadingPlaceholder, mapRequestStateToDataOrNull, mapToRequestState, runningOnTerminalFactory, scGetCurrentRoute, scOrderIsLoaded, searchTermFactory };
8337
8374
  //# sourceMappingURL=snabcentr-client-core.mjs.map