adp-web-components 0.0.90 → 0.0.92

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 (340) hide show
  1. package/dist/cjs/contact-us-form.cjs.entry.js +4 -4
  2. package/dist/cjs/dead-stock-lookup_3.cjs.entry.js +282 -325
  3. package/dist/cjs/empty-table-icon-PdTX6gpI.js +16 -0
  4. package/dist/cjs/flexible-container.cjs.entry.js +43 -46
  5. package/dist/cjs/form-dialog_8.cjs.entry.js +12 -12
  6. package/dist/cjs/{get-local-language-XsAJEAsO.js → get-local-language-Ch7javM0.js} +38 -38
  7. package/dist/cjs/information-table.cjs.entry.js +6 -3
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/loading-spinner.cjs.entry.js +1 -1
  10. package/dist/cjs/material-card-Cd0L1Get.js +43 -0
  11. package/dist/cjs/part-lookup.cjs.entry.js +32 -11
  12. package/dist/cjs/print-icon-C4ASnhAO.js +106 -0
  13. package/dist/cjs/service-booking-form.cjs.entry.js +4 -4
  14. package/dist/cjs/shift-components.cjs.js +1 -1
  15. package/dist/cjs/shift-tab-content.cjs.entry.js +42 -0
  16. package/dist/cjs/shift-tabs_2.cjs.entry.js +277 -234
  17. package/dist/cjs/{vehicle-info-layout-BSAeLW7e.js → type-BG4jir8r.js} +45 -9
  18. package/dist/cjs/{type-BAD2dFzP.js → type-BpPQE0Ww.js} +1 -1
  19. package/dist/cjs/{type-DT5vXP0E.js → type-DB__lcA9.js} +1 -1
  20. package/dist/cjs/vehicle-accessories_6.cjs.entry.js +1115 -0
  21. package/dist/cjs/vehicle-info-layout-Dp2Po_uc.js +16 -0
  22. package/dist/cjs/vehicle-lookup.cjs.entry.js +19 -16
  23. package/dist/cjs/vin-extractor.cjs.entry.js +3 -3
  24. package/dist/collection/components/components/flexible-container.css +1 -1
  25. package/dist/collection/components/components/flexible-container.js +34 -36
  26. package/dist/collection/components/components/information-table.css +1 -1
  27. package/dist/collection/components/components/information-table.js +45 -2
  28. package/dist/collection/components/components/loading-spinner.css +1 -1
  29. package/dist/collection/components/components/material-card.js +2 -2
  30. package/dist/collection/components/components/shift-tab-content.css +1 -1
  31. package/dist/collection/components/components/shift-tab-content.js +1 -1
  32. package/dist/collection/components/components/shift-tabs.css +1 -1
  33. package/dist/collection/components/form-elements/form-dialog.js +6 -6
  34. package/dist/collection/components/form-elements/form-input.js +4 -4
  35. package/dist/collection/components/form-elements/form-select.js +6 -6
  36. package/dist/collection/components/form-elements/form-structure-error.js +4 -4
  37. package/dist/collection/components/form-elements/form-structure.js +3 -3
  38. package/dist/collection/components/form-elements/form-submit.js +5 -5
  39. package/dist/collection/components/form-elements/form-text-area.js +4 -4
  40. package/dist/collection/components/forms/contact-us/element-mapper.js +1 -1
  41. package/dist/collection/components/forms/contact-us-form.js +4 -4
  42. package/dist/collection/components/forms/service-booking/element-mapper.js +1 -1
  43. package/dist/collection/components/forms/service-booking-form.js +4 -4
  44. package/dist/collection/components/part-lookup/components/dead-stock-item.js +15 -0
  45. package/dist/collection/components/part-lookup/dead-stock-lookup.css +1 -1
  46. package/dist/collection/components/part-lookup/dead-stock-lookup.js +153 -175
  47. package/dist/collection/components/part-lookup/distributor-lookup.css +1 -1
  48. package/dist/collection/components/part-lookup/distributor-lookup.js +192 -224
  49. package/dist/collection/components/part-lookup/manufacturer-lookup.css +1 -1
  50. package/dist/collection/components/part-lookup/manufacturer-lookup.js +165 -224
  51. package/dist/collection/components/part-lookup/part-lookup.css +1 -1
  52. package/dist/collection/components/part-lookup/part-lookup.js +127 -57
  53. package/dist/collection/components/vehicle-lookup/components/CardsContainer.js +1 -1
  54. package/dist/collection/components/vehicle-lookup/components/StatusCard.js +2 -2
  55. package/dist/collection/components/vehicle-lookup/components/claimable-item-popover.js +73 -0
  56. package/dist/collection/components/vehicle-lookup/components/claimable-item.js +27 -0
  57. package/dist/collection/components/vehicle-lookup/vehicle-accessories.css +1 -1
  58. package/dist/collection/components/vehicle-lookup/vehicle-accessories.js +108 -187
  59. package/dist/collection/components/vehicle-lookup/vehicle-claimable-items.css +1 -1
  60. package/dist/collection/components/vehicle-lookup/vehicle-claimable-items.js +369 -507
  61. package/dist/collection/components/vehicle-lookup/vehicle-item-claim-form.css +1 -1
  62. package/dist/collection/components/vehicle-lookup/vehicle-item-claim-form.js +271 -345
  63. package/dist/collection/components/vehicle-lookup/vehicle-lookup.css +1 -1
  64. package/dist/collection/components/vehicle-lookup/vehicle-lookup.js +59 -56
  65. package/dist/collection/components/vehicle-lookup/vehicle-paint-thickness.css +1 -1
  66. package/dist/collection/components/vehicle-lookup/vehicle-paint-thickness.js +106 -192
  67. package/dist/collection/components/vehicle-lookup/vehicle-service-history.css +1 -3
  68. package/dist/collection/components/vehicle-lookup/vehicle-service-history.js +106 -176
  69. package/dist/collection/components/vehicle-lookup/vehicle-specification.css +1 -3
  70. package/dist/collection/components/vehicle-lookup/vehicle-specification.js +104 -168
  71. package/dist/collection/components/vehicle-lookup/vehicle-warranty-details.css +1 -3
  72. package/dist/collection/components/vehicle-lookup/vehicle-warranty-details.js +198 -274
  73. package/dist/collection/components/vin-extractor/vin-extractor.js +13 -4
  74. package/dist/collection/{global/lib/image-expansion.js → features/image-viewer/image-viewer-logic.js} +15 -11
  75. package/dist/collection/features/image-viewer/image-viewer.js +9 -0
  76. package/dist/collection/features/image-viewer/index.js +7 -0
  77. package/dist/collection/features/image-viewer/interface.js +1 -0
  78. package/dist/collection/{global/lib → features/multi-lingual}/get-local-language.js +1 -5
  79. package/dist/collection/features/multi-lingual/index.js +7 -0
  80. package/dist/collection/features/multi-lingual/interface.js +1 -0
  81. package/dist/collection/{global/types/locale.js → features/multi-lingual/types.js} +6 -0
  82. package/dist/collection/features/part-lookup-components/index.js +7 -0
  83. package/dist/collection/features/part-lookup-components/interface.js +1 -0
  84. package/dist/collection/features/part-lookup-components/part-lookup-api-integration.js +84 -0
  85. package/dist/collection/features/part-lookup-components/types.js +1 -0
  86. package/dist/collection/features/vehicle-info-layout/index.js +6 -0
  87. package/dist/collection/features/vehicle-info-layout/interface.js +1 -0
  88. package/dist/collection/{components/components → features/vehicle-info-layout}/vehicle-info-layout.js +1 -1
  89. package/dist/collection/features/vehicle-lookup-component/index.js +7 -0
  90. package/dist/collection/features/vehicle-lookup-component/interface.js +1 -0
  91. package/dist/collection/features/vehicle-lookup-component/types.js +17 -0
  92. package/dist/collection/features/vehicle-lookup-component/vehicle-lookup-api-integration.js +87 -0
  93. package/dist/collection/global/assets/activation-icon.js +6 -0
  94. package/dist/collection/global/assets/add-icon.js +6 -0
  95. package/dist/collection/global/assets/alert-icon.js +6 -0
  96. package/dist/collection/global/assets/arrow-up-icon.js +6 -0
  97. package/dist/collection/global/assets/attach-icon.js +6 -0
  98. package/dist/collection/global/assets/check-icon.js +6 -0
  99. package/dist/collection/global/assets/empty-table-icon.js +6 -0
  100. package/dist/collection/global/assets/form-submit-svg.js +6 -0
  101. package/dist/collection/global/assets/print-icon.js +6 -0
  102. package/dist/collection/global/assets/question-mark.js +6 -0
  103. package/dist/collection/global/assets/triangle-icon.js +6 -0
  104. package/dist/collection/global/lib/parents-with-tag.js +22 -0
  105. package/dist/collection/global/types/generated/vehicle-lookup/vehicle-item-warning.js +1 -0
  106. package/dist/collection/locales/vehicleLookup/claimableItems/type.js +4 -6
  107. package/dist/collection/templates/part-lookup/mock-data.js +85 -2
  108. package/dist/collection/templates/vehicle-lookup/mock-data.js +39 -0
  109. package/dist/components/contact-us-form.js +1 -1
  110. package/dist/components/dead-stock-lookup.js +1 -1
  111. package/dist/components/distributor-lookup.js +1 -1
  112. package/dist/components/flexible-container.js +1 -1
  113. package/dist/components/form-dialog.js +1 -1
  114. package/dist/components/form-input.js +1 -1
  115. package/dist/components/form-select.js +1 -1
  116. package/dist/components/form-structure-error.js +1 -1
  117. package/dist/components/form-structure.js +1 -1
  118. package/dist/components/form-submit.js +1 -1
  119. package/dist/components/form-text-area.js +1 -1
  120. package/dist/components/information-table.js +1 -1
  121. package/dist/components/loading-spinner.js +1 -1
  122. package/dist/components/manufacturer-lookup.js +1 -1
  123. package/dist/components/p-4O0gfpsm.js +5 -0
  124. package/dist/components/p-8hUwcL5D.js +5 -0
  125. package/dist/components/p-9BQXTBdQ.js +5 -0
  126. package/dist/components/p-B1fdQNyr.js +5 -0
  127. package/dist/components/p-B2EAhWbD.js +5 -0
  128. package/dist/components/p-B9RSECb0.js +5 -0
  129. package/dist/components/p-BDCoLRVe.js +5 -0
  130. package/dist/components/p-BG8YXzND.js +5 -0
  131. package/dist/components/p-BNhO80aE.js +5 -0
  132. package/dist/components/p-Be1vlY8X.js +5 -0
  133. package/dist/components/p-BhjL0HMA.js +5 -0
  134. package/dist/components/p-C4zpDhOi.js +5 -0
  135. package/dist/components/p-CHE0gMDU.js +5 -0
  136. package/dist/components/p-CMweaUDZ.js +5 -0
  137. package/dist/components/p-COU68JDH.js +5 -0
  138. package/dist/components/p-Ce4X3l8Z.js +5 -0
  139. package/dist/components/p-CeUz_77J.js +5 -0
  140. package/dist/components/{p-D7yku_Qi.js → p-CgRbul8P.js} +1 -1
  141. package/dist/components/{p-JtBlsz4j.js → p-CiosiH6q.js} +1 -1
  142. package/dist/components/p-CnCnKZ25.js +5 -0
  143. package/dist/components/{p-C-4kx8qU.js → p-CqvK2B_Z.js} +1 -1
  144. package/dist/components/{p-B6QhQCZi.js → p-D6AC01Wg.js} +1 -1
  145. package/dist/components/p-DOoqf10k.js +5 -0
  146. package/dist/components/{p-BaJpYztb.js → p-DRdEUWsa.js} +1 -1
  147. package/dist/components/p-DSNyMvnc.js +5 -0
  148. package/dist/components/{p-CjWDXQ_q.js → p-DhxirzfQ.js} +1 -1
  149. package/dist/components/p-DiG3vhi6.js +5 -0
  150. package/dist/{shift-components/p-CIU9c3pi.js → components/p-DnMCq3Mw.js} +1 -1
  151. package/dist/components/p-Dt-24vpn.js +5 -0
  152. package/dist/components/p-DxBcoZIg.js +5 -0
  153. package/dist/components/{p-D63WC2_Y.js → p-pYVYeitk.js} +1 -1
  154. package/dist/components/p-piZ41_ho.js +5 -0
  155. package/dist/components/part-lookup.js +1 -1
  156. package/dist/components/service-booking-form.js +1 -1
  157. package/dist/components/shift-accordion.js +1 -1
  158. package/dist/components/shift-slider.js +1 -1
  159. package/dist/components/shift-tab-content.js +1 -1
  160. package/dist/components/shift-tabs.js +1 -1
  161. package/dist/components/vehicle-accessories.js +1 -1
  162. package/dist/components/vehicle-claimable-items.js +1 -1
  163. package/dist/components/vehicle-item-claim-form.js +1 -1
  164. package/dist/components/vehicle-lookup.js +1 -1
  165. package/dist/components/vehicle-paint-thickness.js +1 -1
  166. package/dist/components/vehicle-service-history.js +1 -1
  167. package/dist/components/vehicle-specification.js +1 -1
  168. package/dist/components/vehicle-warranty-details.js +1 -1
  169. package/dist/components/vin-extractor.js +1 -1
  170. package/dist/esm/contact-us-form.entry.js +4 -4
  171. package/dist/esm/dead-stock-lookup_3.entry.js +283 -326
  172. package/dist/esm/empty-table-icon-DvQk12N9.js +14 -0
  173. package/dist/esm/flexible-container.entry.js +43 -46
  174. package/dist/esm/form-dialog_8.entry.js +12 -12
  175. package/dist/esm/{get-local-language-BPo-xYwK.js → get-local-language-KsoLM3LI.js} +38 -38
  176. package/dist/esm/information-table.entry.js +6 -3
  177. package/dist/esm/loader.js +1 -1
  178. package/dist/esm/loading-spinner.entry.js +1 -1
  179. package/dist/esm/material-card-DiAl-884.js +40 -0
  180. package/dist/esm/part-lookup.entry.js +32 -11
  181. package/dist/esm/print-icon-Dn5kQmLo.js +99 -0
  182. package/dist/esm/service-booking-form.entry.js +4 -4
  183. package/dist/esm/shift-components.js +1 -1
  184. package/dist/esm/shift-tab-content.entry.js +40 -0
  185. package/dist/esm/shift-tabs_2.entry.js +277 -234
  186. package/dist/esm/type-BAXhU7Vq.js +79 -0
  187. package/dist/esm/{type-DHujxJVp.js → type-CAfIkrCW.js} +1 -1
  188. package/dist/esm/{type-D9Rd8Kcd.js → type-CoXoa4w8.js} +1 -1
  189. package/dist/esm/vehicle-accessories_6.entry.js +1108 -0
  190. package/dist/esm/vehicle-info-layout-CNGGKAia.js +14 -0
  191. package/dist/esm/vehicle-lookup.entry.js +14 -11
  192. package/dist/esm/vin-extractor.entry.js +3 -3
  193. package/dist/locales/vehicleLookup/claimableItems/ar.json +5 -6
  194. package/dist/locales/vehicleLookup/claimableItems/en.json +5 -6
  195. package/dist/locales/vehicleLookup/claimableItems/ku.json +5 -6
  196. package/dist/locales/vehicleLookup/claimableItems/ru.json +5 -6
  197. package/dist/locales/vehicleLookup/claimableItems/type.ts +4 -6
  198. package/dist/shift-components/p-03f093e0.entry.js +5 -0
  199. package/dist/shift-components/p-277c8a5b.entry.js +5 -0
  200. package/dist/shift-components/p-42218765.entry.js +5 -0
  201. package/dist/shift-components/p-55c5a5ea.entry.js +5 -0
  202. package/dist/shift-components/p-5906834e.entry.js +5 -0
  203. package/dist/shift-components/p-5bd460db.entry.js +5 -0
  204. package/dist/shift-components/p-701e3fb0.entry.js +5 -0
  205. package/dist/shift-components/p-98cb9ff7.entry.js +5 -0
  206. package/dist/{components/p-CK4E5G0i.js → shift-components/p-BBKhY55u.js} +1 -1
  207. package/dist/shift-components/{p-DHb8KxaG.js → p-BGyVhGdx.js} +1 -1
  208. package/dist/shift-components/p-BSpTbUWi.js +5 -0
  209. package/dist/shift-components/p-BnTnweSV.js +5 -0
  210. package/dist/shift-components/{p-CuQ84qxe.js → p-D7OEt6rC.js} +1 -1
  211. package/dist/shift-components/p-DzSZ47FV.js +5 -0
  212. package/dist/shift-components/p-Wtw8qj6x.js +5 -0
  213. package/dist/shift-components/p-a137e4bb.entry.js +5 -0
  214. package/dist/shift-components/{p-f282c740.entry.js → p-c4c88519.entry.js} +1 -1
  215. package/dist/shift-components/{p-b6497f63.entry.js → p-dee5dd04.entry.js} +1 -1
  216. package/dist/shift-components/p-e428aabb.entry.js +5 -0
  217. package/dist/shift-components/p-ff79b92b.entry.js +5 -0
  218. package/dist/shift-components/p-fyqwD4fB.js +5 -0
  219. package/dist/shift-components/shift-components.esm.js +1 -1
  220. package/dist/types/components/components/flexible-container.d.ts +2 -5
  221. package/dist/types/components/components/information-table.d.ts +2 -0
  222. package/dist/types/components/components/material-card.d.ts +1 -1
  223. package/dist/types/components/form-elements/form-dialog.d.ts +1 -2
  224. package/dist/types/components/form-elements/form-input.d.ts +1 -2
  225. package/dist/types/components/form-elements/form-select.d.ts +1 -2
  226. package/dist/types/components/form-elements/form-structure-error.d.ts +1 -2
  227. package/dist/types/components/form-elements/form-structure.d.ts +2 -3
  228. package/dist/types/components/form-elements/form-submit.d.ts +1 -1
  229. package/dist/types/components/form-elements/form-text-area.d.ts +1 -1
  230. package/dist/types/components/forms/contact-us-form.d.ts +1 -1
  231. package/dist/types/components/forms/service-booking-form.d.ts +1 -1
  232. package/dist/types/components/part-lookup/components/dead-stock-item.d.ts +14 -0
  233. package/dist/types/components/part-lookup/dead-stock-lookup.d.ts +25 -23
  234. package/dist/types/components/part-lookup/distributor-lookup.d.ts +23 -24
  235. package/dist/types/components/part-lookup/manufacturer-lookup.d.ts +23 -25
  236. package/dist/types/components/part-lookup/part-lookup.d.ts +17 -12
  237. package/dist/types/components/vehicle-lookup/components/claimable-item-popover.d.ts +17 -0
  238. package/dist/types/components/vehicle-lookup/components/claimable-item.d.ts +12 -0
  239. package/dist/types/components/vehicle-lookup/vehicle-accessories.d.ts +23 -28
  240. package/dist/types/components/vehicle-lookup/vehicle-claimable-items.d.ts +53 -55
  241. package/dist/types/components/vehicle-lookup/vehicle-item-claim-form.d.ts +39 -55
  242. package/dist/types/components/vehicle-lookup/vehicle-lookup.d.ts +8 -9
  243. package/dist/types/components/vehicle-lookup/vehicle-paint-thickness.d.ts +23 -29
  244. package/dist/types/components/vehicle-lookup/vehicle-service-history.d.ts +20 -23
  245. package/dist/types/components/vehicle-lookup/vehicle-specification.d.ts +20 -22
  246. package/dist/types/components/vehicle-lookup/vehicle-warranty-details.d.ts +27 -31
  247. package/dist/types/components/vin-extractor/vin-extractor.d.ts +2 -2
  248. package/dist/types/components.d.ts +143 -169
  249. package/dist/types/features/image-viewer/image-viewer-logic.d.ts +3 -0
  250. package/dist/types/features/image-viewer/image-viewer.d.ts +10 -0
  251. package/dist/types/features/image-viewer/index.d.ts +3 -0
  252. package/dist/types/features/image-viewer/interface.d.ts +5 -0
  253. package/dist/types/features/multi-lingual/get-local-language.d.ts +4 -0
  254. package/dist/types/features/multi-lingual/index.d.ts +3 -0
  255. package/dist/types/features/multi-lingual/interface.d.ts +8 -0
  256. package/dist/types/{global/lib/get-local-language.d.ts → features/multi-lingual/types.d.ts} +17 -6
  257. package/dist/types/features/part-lookup-components/index.d.ts +3 -0
  258. package/dist/types/features/part-lookup-components/interface.d.ts +25 -0
  259. package/dist/types/features/part-lookup-components/part-lookup-api-integration.d.ts +14 -0
  260. package/dist/types/features/part-lookup-components/types.d.ts +3 -0
  261. package/dist/types/features/vehicle-info-layout/index.d.ts +2 -0
  262. package/dist/types/features/vehicle-info-layout/interface.d.ts +3 -0
  263. package/dist/types/{components/components → features/vehicle-info-layout}/vehicle-info-layout.d.ts +3 -3
  264. package/dist/types/features/vehicle-lookup-component/index.d.ts +3 -0
  265. package/dist/types/features/vehicle-lookup-component/interface.d.ts +24 -0
  266. package/dist/types/features/vehicle-lookup-component/types.d.ts +17 -0
  267. package/dist/types/features/vehicle-lookup-component/vehicle-lookup-api-integration.d.ts +15 -0
  268. package/dist/types/global/assets/activation-icon.d.ts +6 -0
  269. package/dist/types/global/assets/add-icon.d.ts +6 -0
  270. package/dist/types/global/assets/alert-icon.d.ts +6 -0
  271. package/dist/types/global/assets/arrow-up-icon.d.ts +6 -0
  272. package/dist/types/global/assets/attach-icon.d.ts +6 -0
  273. package/dist/types/global/assets/check-icon.d.ts +6 -0
  274. package/dist/types/global/assets/empty-table-icon.d.ts +6 -0
  275. package/dist/types/global/assets/form-submit-svg.d.ts +6 -0
  276. package/dist/types/global/assets/print-icon.d.ts +6 -0
  277. package/dist/types/global/assets/question-mark.d.ts +6 -0
  278. package/dist/types/global/assets/triangle-icon.d.ts +6 -0
  279. package/dist/types/global/lib/parents-with-tag.d.ts +1 -0
  280. package/dist/types/global/lib/recaptcha.d.ts +1 -1
  281. package/dist/types/global/types/components.d.ts +0 -1
  282. package/dist/types/global/types/forms.d.ts +1 -1
  283. package/dist/types/global/types/generated/vehicle-lookup/vehicle-item-warning.d.ts +7 -0
  284. package/dist/types/global/types/generated/vehicle-lookup/vehicle-service-item-dto.d.ts +3 -0
  285. package/dist/types/locales/vehicleLookup/accessories/type.d.ts +2 -2
  286. package/dist/types/locales/vehicleLookup/claimableItems/type.d.ts +18 -26
  287. package/dist/types/locales/vehicleLookup/warranty/type.d.ts +2 -2
  288. package/dist/types/locales/vehicleLookup/wrapper-type.d.ts +14 -18
  289. package/package.json +1 -2
  290. package/dist/cjs/shift-tab-content_7.cjs.entry.js +0 -1487
  291. package/dist/cjs/type-CCsnwaKp.js +0 -56
  292. package/dist/collection/global/api/partInformation.js +0 -32
  293. package/dist/collection/global/api/vehicleInformation.js +0 -48
  294. package/dist/components/p-1vy-Ba6r.js +0 -5
  295. package/dist/components/p-B5YdqGVm.js +0 -5
  296. package/dist/components/p-BDkK65_1.js +0 -5
  297. package/dist/components/p-BT4rhLRL.js +0 -5
  298. package/dist/components/p-C1F_f1WE.js +0 -5
  299. package/dist/components/p-CACnUI7c.js +0 -5
  300. package/dist/components/p-CDOvd2iD.js +0 -5
  301. package/dist/components/p-CGzOJT7g.js +0 -5
  302. package/dist/components/p-CINfIgzX.js +0 -5
  303. package/dist/components/p-CJpwqpuQ.js +0 -5
  304. package/dist/components/p-CUqXnLyM.js +0 -5
  305. package/dist/components/p-Cl9ct-bZ.js +0 -5
  306. package/dist/components/p-CqGVdvFp.js +0 -5
  307. package/dist/components/p-D2bxjSGr.js +0 -5
  308. package/dist/components/p-DXHx6lre.js +0 -5
  309. package/dist/components/p-DXj5zsQK.js +0 -5
  310. package/dist/components/p-DsCtgcZn.js +0 -5
  311. package/dist/components/p-DxjQlmaz.js +0 -5
  312. package/dist/components/p-nxlqujKv.js +0 -5
  313. package/dist/components/p-vvHN2Olh.js +0 -5
  314. package/dist/components/p-yQ70lKV2.js +0 -5
  315. package/dist/esm/shift-tab-content_7.entry.js +0 -1479
  316. package/dist/esm/type-CfLRnI1J.js +0 -53
  317. package/dist/esm/vehicle-info-layout-D1bvY1nt.js +0 -43
  318. package/dist/shift-components/p-389f444c.entry.js +0 -5
  319. package/dist/shift-components/p-5dd208de.entry.js +0 -5
  320. package/dist/shift-components/p-5f91eb5f.entry.js +0 -5
  321. package/dist/shift-components/p-76dd44e9.entry.js +0 -5
  322. package/dist/shift-components/p-9a51dae0.entry.js +0 -5
  323. package/dist/shift-components/p-BAMA88Mr.js +0 -5
  324. package/dist/shift-components/p-Br0JD1CD.js +0 -5
  325. package/dist/shift-components/p-af44ca99.entry.js +0 -5
  326. package/dist/shift-components/p-d0e6cd78.entry.js +0 -5
  327. package/dist/shift-components/p-f1225504.entry.js +0 -5
  328. package/dist/shift-components/p-faabbd23.entry.js +0 -5
  329. package/dist/shift-components/p-ff0fec09.entry.js +0 -5
  330. package/dist/types/global/api/partInformation.d.ts +0 -19
  331. package/dist/types/global/api/vehicleInformation.d.ts +0 -33
  332. package/dist/types/global/lib/image-expansion.d.ts +0 -9
  333. package/dist/types/global/types/locale.d.ts +0 -11
  334. /package/dist/collection/{components/vehicle-lookup → global}/assets/activationRequired.svg +0 -0
  335. /package/dist/collection/{components/vehicle-lookup → global}/assets/cancelled.svg +0 -0
  336. /package/dist/collection/{components/vehicle-lookup → global}/assets/check.svg +0 -0
  337. /package/dist/collection/{components/vehicle-lookup → global}/assets/expired.svg +0 -0
  338. /package/dist/collection/{components/vehicle-lookup → global}/assets/pending.svg +0 -0
  339. /package/dist/collection/{components/vehicle-lookup → global}/assets/processed.svg +0 -0
  340. /package/dist/collection/{components/vehicle-lookup → global}/assets/x-mark.svg +0 -0
@@ -2,431 +2,388 @@
2
2
  * Built by ShiftSoftware
3
3
  * Copyright (c)
4
4
  */
5
- import { r as registerInstance, h, H as Host, a as getElement } from './index-CikEOqe0.js';
5
+ import { h, r as registerInstance, H as Host, a as getElement } from './index-CikEOqe0.js';
6
+ import { a as deadStockSchema, d as distributerSchema, m as manufacturerSchema } from './type-CoXoa4w8.js';
7
+ import { V as VehicleInfoLayout } from './vehicle-info-layout-CNGGKAia.js';
8
+ import { s as sharedLocalesSchema, a as getSharedLocal, g as getLocaleLanguage } from './get-local-language-KsoLM3LI.js';
9
+ import { E as EmptyTableIcon } from './empty-table-icon-DvQk12N9.js';
6
10
  import { c as cn } from './cn-BK16Cn81.js';
7
- import { s as sharedLocalesSchema, g as getLocaleLanguage, a as getSharedLocal } from './get-local-language-BPo-xYwK.js';
8
- import { a as deadStockSchema, d as distributerSchema, m as manufacturerSchema } from './type-D9Rd8Kcd.js';
11
+ import { M as MaterialCard, a as MaterialCardChildren } from './material-card-DiAl-884.js';
9
12
 
10
- const getPartInformation = async (component, generalProps, headers = {}) => {
11
- const { notAvailableMessage, mockData, partNumber, scopedTimeoutRef, middlewareCallback } = generalProps;
12
- const { isDev, baseUrl, queryString, abortController, networkTimeoutRef, loadedResponse } = component;
13
- const handleResult = (newPartInformation) => {
14
- if (networkTimeoutRef === scopedTimeoutRef) {
15
- if (!newPartInformation && partNumber)
16
- throw new Error(notAvailableMessage || 'wrongResponseFormat');
17
- if (loadedResponse)
18
- loadedResponse(newPartInformation);
19
- if (middlewareCallback)
20
- middlewareCallback(newPartInformation);
21
- return newPartInformation;
13
+ const setPartLookupData = async (context, newData, headers = {}, { beforeAssignment } = {}) => {
14
+ if (newData === null || newData === undefined)
15
+ newData = (context === null || context === void 0 ? void 0 : context.searchString) || '';
16
+ // clears network timeoutRef which serves as await for animation
17
+ clearTimeout(context.networkTimeoutRef);
18
+ // handles request spam by canceling the previous ones
19
+ if (context.abortController)
20
+ context.abortController.abort();
21
+ context.abortController = new AbortController();
22
+ // syncing the internal timeout ref with external network ref
23
+ let scopedTimeoutRef;
24
+ const isSearchRequest = typeof newData === 'string';
25
+ const searchString = typeof newData === 'string' ? newData : newData === null || newData === void 0 ? void 0 : newData.partNumber;
26
+ try {
27
+ if (!searchString || searchString.trim().length === 0) {
28
+ context.isError = false;
29
+ context.isLoading = false;
30
+ context.searchString = '';
31
+ context.partLookup = undefined;
32
+ return;
33
+ }
34
+ context.isLoading = true;
35
+ await new Promise(r => {
36
+ scopedTimeoutRef = setTimeout(r, 1000);
37
+ context.networkTimeoutRef = scopedTimeoutRef;
38
+ });
39
+ context.searchString = searchString;
40
+ const partResponse = isSearchRequest ? await getPartLookup(context, { scopedTimeoutRef }, headers) : newData;
41
+ if (context.networkTimeoutRef === scopedTimeoutRef) {
42
+ if (!partResponse)
43
+ throw new Error('wrongResponseFormat');
44
+ if (beforeAssignment)
45
+ context.partLookup = await beforeAssignment(partResponse, { scopedTimeoutRef });
46
+ else
47
+ context.partLookup = partResponse;
48
+ }
49
+ context.errorMessage = null;
50
+ context.isLoading = false;
51
+ context.isError = false;
52
+ }
53
+ catch (error) {
54
+ if (error && (error === null || error === void 0 ? void 0 : error.name) === 'AbortError')
55
+ return;
56
+ if (context.errorCallback)
57
+ context.errorCallback(error.message);
58
+ console.error(error);
59
+ context.setErrorMessage(error.message);
60
+ }
61
+ };
62
+ const setPartLookupErrorState = (context, message) => {
63
+ context.isError = true;
64
+ context.isLoading = false;
65
+ context.errorMessage = message;
66
+ context.partLookup = undefined;
67
+ };
68
+ async function getPartLookup(context, generalProps, headers = {}) {
69
+ const { scopedTimeoutRef } = generalProps;
70
+ const handleResult = (newPartLookup) => {
71
+ if ((context === null || context === void 0 ? void 0 : context.networkTimeoutRef) === scopedTimeoutRef) {
72
+ if (!newPartLookup && (context === null || context === void 0 ? void 0 : context.searchString))
73
+ throw new Error('wrongResponseFormat');
74
+ if (context === null || context === void 0 ? void 0 : context.loadedResponse)
75
+ context === null || context === void 0 ? void 0 : context.loadedResponse(newPartLookup);
76
+ return newPartLookup;
22
77
  }
23
78
  };
24
- if (isDev) {
25
- const newData = mockData[partNumber];
79
+ if (context === null || context === void 0 ? void 0 : context.isDev) {
80
+ const newData = context === null || context === void 0 ? void 0 : context.mockData[context === null || context === void 0 ? void 0 : context.searchString];
26
81
  return handleResult(newData);
27
82
  }
28
83
  else {
29
- if (!baseUrl)
84
+ if (!(context === null || context === void 0 ? void 0 : context.baseUrl))
30
85
  throw new Error('noBaseUrl');
31
- const response = await fetch(`${baseUrl}${partNumber}?${queryString}`, { signal: abortController.signal, headers: headers });
86
+ const response = await fetch(`${context === null || context === void 0 ? void 0 : context.baseUrl}${context === null || context === void 0 ? void 0 : context.searchString}?${context === null || context === void 0 ? void 0 : context.queryString}`, { signal: context === null || context === void 0 ? void 0 : context.abortController.signal, headers: headers });
32
87
  if (response.status === 204)
33
88
  throw new Error('noPartsFound');
34
89
  const newData = (await response.json());
35
90
  return handleResult(newData);
36
91
  }
92
+ }
93
+
94
+ const ArrowUpIcon = props => (h("svg", { class: props.class, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 16 16", fill: "currentColor" },
95
+ h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M11.78 9.78a.75.75 0 0 1-1.06 0L8 7.06 5.28 9.78a.75.75 0 0 1-1.06-1.06l3.25-3.25a.75.75 0 0 1 1.06 0l3.25 3.25a.75.75 0 0 1 0 1.06Z" })));
96
+
97
+ const DeadStockItem = ({ isOpened, item, key, icon, locale, toggleAccordion }) => {
98
+ var _a, _b, _c;
99
+ return (h("div", { key: key, class: "dead-stock-item" },
100
+ h("button", { onClick: () => toggleAccordion(item === null || item === void 0 ? void 0 : item.companyName), class: cn('button', {
101
+ 'cursor-default': !((_a = item === null || item === void 0 ? void 0 : item.branchDeadStock) === null || _a === void 0 ? void 0 : _a.length),
102
+ 'bg-slate-100': isOpened,
103
+ }) },
104
+ h("div", { class: "shift-skeleton flex-1 header" }, (item === null || item === void 0 ? void 0 : item.companyName) ? item === null || item === void 0 ? void 0 : item.companyName : h("span", null, "\u00A0")),
105
+ h("div", { class: cn('shift-skeleton icon-container', {
106
+ 'rotate-0': isOpened,
107
+ }) }, icon)),
108
+ !!((_b = item === null || item === void 0 ? void 0 : item.branchDeadStock) === null || _b === void 0 ? void 0 : _b.length) && (h("flexible-container", { isOpened: isOpened },
109
+ h("table", { class: "dead-stock-table" },
110
+ h("thead", null,
111
+ h("tr", null,
112
+ h("th", { class: "dead-stock-table-header" }, locale.branch),
113
+ h("th", { class: "dead-stock-table-header" }, locale.availableQuantity))),
114
+ h("tbody", null, (_c = item === null || item === void 0 ? void 0 : item.branchDeadStock) === null || _c === void 0 ? void 0 : _c.map(branchDeadStock => (h("tr", { class: "dead-stock-table-row", key: branchDeadStock === null || branchDeadStock === void 0 ? void 0 : branchDeadStock.companyBranchIntegrationID },
115
+ h("td", null,
116
+ h("span", { class: "shift-skeleton" }, branchDeadStock === null || branchDeadStock === void 0 ? void 0 : branchDeadStock.companyBranchName)),
117
+ h("td", null,
118
+ h("strong", { class: "shift-skeleton" }, branchDeadStock === null || branchDeadStock === void 0 ? void 0 : branchDeadStock.quantity)))))))))));
37
119
  };
38
120
 
39
- const deadStockLookupCss = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid #e5e7eb;box-sizing:border-box}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.15 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.block{display:block}:host{all:initial!important;display:block}*{font-family:Arial}.static{position:static}.hidden{display:none}.w-full{width:100%}.relative{position:relative}.mx-auto{margin-left:auto;margin-right:auto}.mb-\\[10px\\]{margin-bottom:10px}.mt-\\[12px\\]{margin-top:12px}.flex{display:flex}.table{display:table}.size-\\[22px\\]{height:22px;width:22px}.h-\\[40px\\]{height:40px}.h-\\[80px\\]{height:80px}.max-h-\\[70dvh\\]{max-height:70dvh}.min-h-\\[100px\\]{min-height:100px}.w-fit{width:fit-content}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.scale-0{--tw-scale-x:0;--tw-scale-y:0}.scale-0,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[8px\\]{border-radius:8px}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-\\[\\#d6d8dc\\]{--tw-border-opacity:1;border-color:rgb(214 216 220/var(--tw-border-opacity,1))}.bg-\\[\\#e1e3e5\\]{--tw-bg-opacity:1;background-color:rgb(225 227 229/var(--tw-bg-opacity,1))}.px-\\[10px\\]{padding-left:10px;padding-right:10px}.px-\\[16px\\]{padding-left:16px;padding-right:16px}.px-\\[20px\\]{padding-left:20px;padding-right:20px}.py-\\[10px\\]{padding-bottom:10px;padding-top:10px}.py-\\[16px\\]{padding-bottom:16px;padding-top:16px}.py-\\[20px\\]{padding-bottom:20px;padding-top:20px}.py-\\[8px\\]{padding-bottom:8px;padding-top:8px}.text-center{text-align:center}.text-start{text-align:start}.text-\\[18px\\]{font-size:18px}.text-\\[20px\\]{font-size:20px}.text-\\[\\#383c43\\]{--tw-text-opacity:1;color:rgb(56 60 67/var(--tw-text-opacity,1))}.text-slate-800{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.opacity-0{opacity:0}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!duration-700{transition-duration:.7s!important}.duration-100{transition-duration:.1s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.reject-card{background-color:#f7d7d8;border-color:#f2aeb5;color:#58151c}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.last\\:border-none:last-child{border-style:none}.hover\\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.z-50{z-index:50}.size-\\[40px\\]{height:40px;width:40px}.size-full{height:100%;width:100%}";
121
+ const deadStockLookupCss = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid #e5e7eb;box-sizing:border-box}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.15 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.collapse{visibility:collapse}.absolute{position:absolute}.\\!relative{position:relative!important}.relative{position:relative}.left-0{left:0}.top-0{top:0}.z-10{z-index:10}.block{display:block}.flex{display:flex}.hidden{display:none}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.origin-left{transform-origin:left}.rotate-0{--tw-rotate:0deg}.rotate-0,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-default{cursor:default}.\\!overflow-hidden{overflow:hidden!important}.\\!rounded-\\[4px\\]{border-radius:4px!important}.border{border-width:1px}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.shift-skeleton{border-radius:4px!important;position:relative!important}.loading .shift-skeleton,.loading.shift-skeleton{overflow:hidden!important;pointer-events:none!important;position:relative!important}.shift-skeleton:after{background:linear-gradient(-45deg,#d4d8de,#e2e5e9,#d4d8de);background-size:300% 300%;border-radius:4px!important;content:\"\";height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;transform-origin:left;transition-duration:.5s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);width:100%;z-index:10}.loading .shift-skeleton:after,.loading.shift-skeleton:after{--tw-scale-x:1;animation:shimmer 2s ease-in-out infinite;opacity:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes shimmer{0%{background-position:100% 0}50%{background-position:0 100%}to{background-position:100% 0}}.dead-stock-item{border:1px solid #d6d8dc;border-radius:6px;overflow:hidden}.dead-stock-item>.button{align-items:center;display:flex;gap:50px;height:50px;justify-content:space-between;padding:0 16px;transition-duration:.5s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);width:100%}.dead-stock-item>.button.cursor-default{cursor:default}.dead-stock-item>.button.bg-slate-100{background-color:#f1f5f9}.dead-stock-item .header{flex-shrink:0;font-size:20px;font-weight:700;text-align:start}.dead-stock-item .icon-container{align-items:center;display:flex;flex-shrink:0;height:30px;justify-content:center;transform:rotate(180deg);transition-duration:.5s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);width:30px}.dead-stock-item .icon-container.rotate-0{transform:rotate(0deg)}.dead-stock-item .dead-stock-table{border-collapse:collapse;overflow:auto;padding:20px;width:100%}.dead-stock-item .dead-stock-table-header{border-bottom:1px solid #d6d8dc;padding:20px 10px;text-align:start;white-space:nowrap}.dead-stock-item .dead-stock-table-row{border-bottom:1px solid #d6d8dc;transition-duration:.1s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.dead-stock-item .dead-stock-table-row:last-child{border:none}.dead-stock-item .dead-stock-table-row:hover{background-color:#f1f5f9}.dead-stock-item .dead-stock-table-row td{padding:20px 10px;text-align:start;white-space:nowrap}@keyframes showAfterDelay{0%{opacity:0}99.9%{opacity:0}to{opacity:1}}.show-after-delay{animation:showAfterDelay .5s forwards;opacity:0}.vehicle-info-container{background-color:#fdfdfd;border:1px solid #dcdcdc;border-radius:5px;box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 hsla(0,0%,100%,.1);overflow:hidden;padding:0;position:relative;transition-duration:.5s;transition-property:all}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f6f6f6;border-radius:5px;border-top:1px solid #dcdcdc;border-top-left-radius:0;border-top-right-radius:0}::-webkit-scrollbar-thumb{background:#c5c5c5;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.hide-scroll ::-webkit-scrollbar-thumb,.hide-scroll::-webkit-scrollbar-thumb,.loading ::-webkit-scrollbar-thumb{background:transparent}.vehicle-info-body{display:flex;flex-direction:column;overflow:hidden;position:relative;transition-duration:.5s;transition-property:all;transition-timing-function:ease-in-out}.vehicle-info-content{transition-duration:.5s;transition-property:all;width:100%}.vehicle-info-header{align-items:center;background-color:#f6f6f6;border:1px solid #ededed;display:flex;height:54px;justify-content:center;text-align:center}.vehicle-info-header-vin{display:inline-block;font-size:16px;transition-duration:.5s;transition-property:all}.vehicle-info-header-vin span{color:#ef4444}.loading .vehicle-info-header-vin{opacity:0;transform:scale(1.5);visibility:hidden}:host{all:initial!important;display:block}*{font-family:Arial}.static{position:static}.h-\\[200px\\]{height:200px}.w-full{width:100%}.items-center{align-items:center}.justify-center{justify-content:center}.text-\\[26px\\]{font-size:26px}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.\\!pointer-events-none{pointer-events:none!important}.\\!w-full{width:100%!important}.translate-x-\\[-200\\%\\]{--tw-translate-x:-200%}.translate-x-\\[-200\\%\\],.translate-y-\\[200\\%\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[200\\%\\]{--tw-translate-y:200%}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!duration-0{transition-duration:0s!important}.\\[\\&_\\*\\]\\:\\!pointer-events-none *{pointer-events:none!important}.flex-col{flex-direction:column}.gap-\\[16px\\]{gap:16px}.p-\\[16px\\]{padding:16px}.pb-\\[16px\\]{padding-bottom:16px}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.\\!h-auto{height:auto!important}.min-w-full{min-width:100%}.resize{resize:both}.overflow-hidden{overflow:hidden}.\\!transition-none{transition-property:none!important}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.table{display:table}.flex-1{flex:1 1 0%}";
40
122
 
41
- let mockData$2 = {};
42
- const closedAccordionHeight = '46px';
43
123
  const DeadStockLookup = class {
44
124
  constructor(hostRef) {
45
125
  registerInstance(this, hostRef);
46
- this.baseUrl = '';
47
- this.isDev = false;
48
- this.queryString = '';
126
+ // ====== Start Localization
49
127
  this.language = 'en';
50
- this.state = 'idle';
51
- this.errorMessage = null;
52
- this.externalPartNumber = null;
53
- this.sharedLocales = sharedLocalesSchema.getDefault();
54
- this.locale = deadStockSchema.getDefault();
128
+ this.locale = Object.assign({ sharedLocales: sharedLocalesSchema.getDefault() }, deadStockSchema.getDefault());
129
+ // ====== End Localization
130
+ // ====== Start Vehicle info layout prop
131
+ this.coreOnly = false;
132
+ this.headers = {};
133
+ this.queryString = '';
134
+ this.isError = false;
135
+ this.isLoading = false;
136
+ // ====== End Part Lookup Component Shared Logic
137
+ // ====== Start Component Logic
138
+ this.openedAccordions = [];
139
+ this.newItemsHasBeenRendered = false;
140
+ this.toggleAccordion = (header) => {
141
+ if (this.isLoading)
142
+ return;
143
+ if (this.openedAccordions.includes(header)) {
144
+ this.openedAccordions = this.openedAccordions.filter(item => item !== header);
145
+ }
146
+ else {
147
+ this.openedAccordions = [...this.openedAccordions, header];
148
+ }
149
+ };
55
150
  }
56
151
  async componentWillLoad() {
57
152
  await this.changeLanguage(this.language);
58
153
  }
59
154
  async changeLanguage(newLanguage) {
60
- const localeResponses = await Promise.all([getLocaleLanguage(newLanguage, 'partLookup.deadStock', deadStockSchema), getSharedLocal(newLanguage)]);
61
- this.locale = localeResponses[0];
62
- this.sharedLocales = localeResponses[1];
63
- }
64
- handleSettingData(response) {
65
- this.partInformation = response;
155
+ const [sharedLocales, locale] = await Promise.all([getSharedLocal(newLanguage), getLocaleLanguage(newLanguage, 'partLookup.deadStock', deadStockSchema)]);
156
+ this.locale = Object.assign({ sharedLocales }, locale);
66
157
  }
67
- async setData(newData, headers = {}) {
68
- clearTimeout(this.networkTimeoutRef);
69
- if (this.abortController)
70
- this.abortController.abort();
71
- this.abortController = new AbortController();
72
- let scopedTimeoutRef;
73
- const isPartNumberRequest = typeof newData === 'string';
74
- const partNumber = isPartNumberRequest ? newData : newData === null || newData === void 0 ? void 0 : newData.partNumber;
75
- this.externalPartNumber = partNumber;
76
- try {
77
- if (!partNumber || partNumber.trim().length === 0) {
78
- this.state = 'idle';
79
- return;
80
- }
81
- if (this.state === 'data' || this.state === 'error') {
82
- this.state = (this.state + '-loading');
83
- }
84
- else
85
- this.state = 'loading';
86
- await new Promise(r => {
87
- scopedTimeoutRef = setTimeout(r, 700);
88
- this.networkTimeoutRef = scopedTimeoutRef;
89
- });
90
- const partResponse = isPartNumberRequest ? await getPartInformation(this, { scopedTimeoutRef, partNumber, mockData: mockData$2 }, headers) : newData;
91
- if (this.networkTimeoutRef === scopedTimeoutRef) {
92
- if (!partResponse)
93
- throw new Error('wrongResponseFormat');
94
- this.handleSettingData(partResponse);
95
- }
96
- this.errorMessage = null;
97
- this.state = 'data';
98
- }
99
- catch (error) {
100
- if (error && (error === null || error === void 0 ? void 0 : error.name) === 'AbortError')
101
- return;
102
- if (this.errorCallback)
103
- this.errorCallback(error.message);
104
- console.error(error);
105
- this.setErrorMessage(error.message);
106
- }
158
+ async setMockData(newMockData) {
159
+ this.mockData = newMockData;
160
+ }
161
+ async fetchData(newData, headers = {}) {
162
+ await setPartLookupData(this, newData, headers, {
163
+ beforeAssignment: async (response) => {
164
+ await new Promise(r => setTimeout(r, 500));
165
+ this.openedAccordions = [];
166
+ await new Promise(r => setTimeout(r, 500));
167
+ return response;
168
+ },
169
+ });
107
170
  }
108
171
  async setErrorMessage(message) {
109
- this.state = 'error';
110
- this.partInformation = null;
111
- this.errorMessage = message;
112
- }
113
- async fetchData(partNumber = this.externalPartNumber, headers = {}) {
114
- await this.setData(partNumber, headers);
172
+ setPartLookupErrorState(this, message);
115
173
  }
116
- async loadingListener() {
174
+ onLoadingChange(newValue) {
117
175
  if (this.loadingStateChange)
118
- this.loadingStateChange(this.state.includes('loading'));
119
- }
120
- async setMockData(newMockData) {
121
- mockData$2 = newMockData;
176
+ this.loadingStateChange(newValue);
122
177
  }
123
- toggleAccordion(event) {
124
- const container = event.target.parentElement;
125
- const icon = container.getElementsByClassName('icon')[0];
126
- const isExpanded = container.getAttribute('aria-expanded') === 'true';
127
- if (isExpanded) {
128
- container.style.height = closedAccordionHeight;
129
- icon.style.transform = 'rotate(0deg)';
130
- container.setAttribute('aria-expanded', 'false');
131
- }
178
+ async loadingListener(newIsLoading) {
179
+ if (newIsLoading)
180
+ this.newItemsHasBeenRendered = false;
132
181
  else {
133
- const content = container.getElementsByClassName('content')[0];
134
- const totalHeight = +closedAccordionHeight.replace('px', '') + content.getClientRects()[0].height;
135
- container.style.height = `${totalHeight}px`;
136
- icon.style.transform = 'rotate(180deg)';
137
- container.setAttribute('aria-expanded', 'true');
182
+ await new Promise(r => setTimeout(r, 100));
183
+ this.newItemsHasBeenRendered = true;
138
184
  }
139
185
  }
140
186
  render() {
141
- var _a, _b, _c, _d;
142
- const texts = this.locale;
143
- return (h(Host, { key: '3fec3888689394f9db82d44339ff6a86badcfaa4' }, h("div", { key: '0e9e27129627b72541387787e3cbabd0b4d8fb96', dir: this.sharedLocales.direction, class: "min-h-[100px] relative transition-all duration-300 overflow-hidden" }, h("div", { key: '62f97371c993f42e0f091f7aa1e4a32545f5ad81' }, h("loading-spinner", { key: '97c5e08fc754cc3a0ef022dc1bc70956c147c338', isLoading: this.state.includes('loading') }), h("div", { key: '1643eaab14e0177f8a7ff9586907e0c071b10e0b', class: cn('transition-all !duration-700', { 'scale-0': this.state.includes('loading') || this.state === 'idle', 'opacity-0': this.state.includes('loading') }) }, ['error', 'error-loading'].includes(this.state) && (h("div", { key: '2724636511c921e033d2178f863e888af41b738d', class: "py-[16px] min-h-[100px] flex items-center" }, h("div", { key: '52f99d234eed68a33e8cf7314d7a67fba2c13954', class: "px-[16px] py-[8px] border reject-card text-[20px] rounded-[8px] w-fit mx-auto" }, this.sharedLocales.errors[this.errorMessage] || this.sharedLocales.errors.wildCard))), ['data', 'data-loading'].includes(this.state) && (h("div", { key: '198ae83d4a1713ae01c906a544db255735f81fbc' }, h("div", { key: '399cdf7a50fbf3852ab9fd47aae187166adc64eb', class: "flex mt-[12px] max-h-[70dvh] overflow-hidden rounded-[4px] flex-col border border-[#d6d8dc]" }, h("div", { key: '05fa0b6b01a8a39baa031e4b5fd89698814cef42', class: "w-full h-[40px] flex shrink-0 justify-center text-[18px] items-center text-[#383c43] text-center bg-[#e1e3e5]" }, texts.deadStock), !((_b = (_a = this.partInformation) === null || _a === void 0 ? void 0 : _a.deadStock) === null || _b === void 0 ? void 0 : _b.length) && h("div", { key: '7cf88d6e6e2eeb4ee5ab8dcc1e8b5418ba35568e', class: "h-[80px] flex items-center justify-center text-[18px]" }, this.sharedLocales.noData), (_d = (_c = this.partInformation) === null || _c === void 0 ? void 0 : _c.deadStock) === null || _d === void 0 ? void 0 :
144
- _d.map(deadStock => (h("div", { key: deadStock.companyIntegrationID, class: "py-[10px] px-[20px]" }, h("div", { "aria-expanded": "false", style: { height: closedAccordionHeight }, class: "border shadow transition-all duration-500 overflow-hidden rounded-md mb-[10px] border-[#d6d8dc]" }, h("button", { onClick: this.toggleAccordion, style: { height: closedAccordionHeight }, class: "w-full flex px-[10px] justify-between items-center text-slate-800" }, h("strong", null, deadStock.companyName), h("span", { class: "icon text-slate-800 transition-transform duration-500" }, h("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 16 16", fill: "currentColor", class: "size-[22px]" }, h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M11.78 9.78a.75.75 0 0 1-1.06 0L8 7.06 5.28 9.78a.75.75 0 0 1-1.06-1.06l3.25-3.25a.75.75 0 0 1 1.06 0l3.25 3.25a.75.75 0 0 1 0 1.06Z" })))), h("div", { class: "content" }, h("table", { class: "w-full overflow-auto relative border-collapse" }, h("thead", null, h("tr", null, h("th", { class: "py-[20px] px-[10px] text-start whitespace-nowrap border-b border-[#d6d8dc]" }, texts.branch), h("th", { class: "py-[20px] px-[10px] text-start whitespace-nowrap border-b border-[#d6d8dc]" }, texts.availableQuantity))), h("tbody", null, deadStock === null || deadStock === void 0 ? void 0 : deadStock.branchDeadStock.map(branchDeadStock => (h("tr", { class: "transition-colors border-b border-[#d6d8dc] last:border-none duration-100 hover:bg-slate-100", key: branchDeadStock.companyBranchIntegrationID }, h("td", { class: cn('py-[20px] px-[10px] text-start whitespace-nowrap') }, branchDeadStock.companyBranchName), h("td", { class: cn('py-[20px] px-[10px] text-start whitespace-nowrap') }, h("strong", null, branchDeadStock.quantity))))))))))))))))))));
187
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
188
+ return (h(Host, { key: '76cd947299ca39465ddbab1f75d1bf959ff0acf6' }, h(VehicleInfoLayout, { key: 'c32bdd4733dacf3793a9f04d7e308ea50febdeda', isError: this.isError, coreOnly: this.coreOnly, isLoading: this.isLoading, header: (_a = this.partLookup) === null || _a === void 0 ? void 0 : _a.partNumber, direction: this.locale.sharedLocales.direction, errorMessage: this.locale.sharedLocales.errors[this.errorMessage] || this.locale.sharedLocales.errors.wildCard }, h("div", { key: '03a8a4fa6b3f3c47b43278cd40dde00526b6142f', class: "p-[16px]" }, h("div", { key: '7c26a80491095255e489aa2084d945548f3ae82c', class: "pb-[16px]" }, h(DeadStockItem, { locale: this.locale, key: "first-dead-stock", toggleAccordion: this.toggleAccordion, isOpened: !this.isLoading && ((_c = (_b = this.partLookup) === null || _b === void 0 ? void 0 : _b.deadStock) === null || _c === void 0 ? void 0 : _c.length) > 0 ? this.openedAccordions.includes((_e = (_d = this.partLookup) === null || _d === void 0 ? void 0 : _d.deadStock[0]) === null || _e === void 0 ? void 0 : _e.companyName) : false, item: ((_g = (_f = this.partLookup) === null || _f === void 0 ? void 0 : _f.deadStock) === null || _g === void 0 ? void 0 : _g.length) > 0
189
+ ? (_h = this.partLookup) === null || _h === void 0 ? void 0 : _h.deadStock[0]
190
+ : { companyName: !!this.partLookup && !((_j = this.partLookup) === null || _j === void 0 ? void 0 : _j.deadStock) ? this.locale.sharedLocales.noData : '' }, icon: (!this.partLookup && !((_k = this.partLookup) === null || _k === void 0 ? void 0 : _k.deadStock) && h("div", null)) ||
191
+ (!!this.partLookup && !((_l = this.partLookup) === null || _l === void 0 ? void 0 : _l.deadStock) && h(EmptyTableIcon, null)) ||
192
+ (!!this.partLookup && !!((_m = this.partLookup) === null || _m === void 0 ? void 0 : _m.deadStock) && h(ArrowUpIcon, null)) })), h("flexible-container", { key: '6b185c7d5f4b251f9a175a1260632542617ee0ec', isOpened: this.newItemsHasBeenRendered }, h("div", { key: '31b4b60198e15b215e6b6560d9287e8b8eb6a27b', class: "flex flex-col gap-[16px]" }, ((_p = (_o = this.partLookup) === null || _o === void 0 ? void 0 : _o.deadStock) === null || _p === void 0 ? void 0 : _p.length) > 1 &&
193
+ ((_q = this.partLookup) === null || _q === void 0 ? void 0 : _q.deadStock.slice(1).map(deadStock => (h(DeadStockItem, { item: deadStock, locale: this.locale, icon: h(ArrowUpIcon, null), toggleAccordion: this.toggleAccordion, isOpened: this.openedAccordions.includes(deadStock === null || deadStock === void 0 ? void 0 : deadStock.companyName) }))))))))));
145
194
  }
146
195
  get el() { return getElement(this); }
147
196
  static get watchers() { return {
148
197
  "language": ["changeLanguage"],
149
- "state": ["loadingListener"]
198
+ "isLoading": ["onLoadingChange", "loadingListener"]
150
199
  }; }
151
200
  };
152
201
  DeadStockLookup.style = deadStockLookupCss;
153
202
 
154
- const distributorLookupCss = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid #e5e7eb;box-sizing:border-box}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.15 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.block{display:block}:host{all:initial!important;display:block}*{font-family:Arial}.static{position:static}.hidden{display:none}.w-full{width:100%}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.mx-auto{margin-left:auto;margin-right:auto}.me-1{margin-inline-end:.25rem}.ml-1{margin-left:.25rem}.mt-2{margin-top:.5rem}.mt-\\[12px\\]{margin-top:12px}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.h-\\[40px\\]{height:40px}.max-h-\\[70dvh\\]{max-height:70dvh}.min-h-\\[100px\\]{min-height:100px}.w-fit{width:fit-content}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.scale-0{--tw-scale-x:0;--tw-scale-y:0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-\\[15px\\]{gap:15px}.gap-\\[50px\\]{gap:50px}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[8px\\]{border-radius:8px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-\\[\\#d6d8dc\\]{--tw-border-opacity:1;border-color:rgb(214 216 220/var(--tw-border-opacity,1))}.border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.border-b-\\[gray\\]{--tw-border-opacity:1;border-bottom-color:rgb(128 128 128/var(--tw-border-opacity,1))}.bg-\\[\\#e1e3e5\\]{--tw-bg-opacity:1;background-color:rgb(225 227 229/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.px-0{padding-left:0;padding-right:0}.px-3{padding-left:.75rem;padding-right:.75rem}.px-\\[10px\\]{padding-left:10px;padding-right:10px}.px-\\[16px\\]{padding-left:16px;padding-right:16px}.px-\\[30px\\]{padding-left:30px;padding-right:30px}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-\\[10px\\]{padding-bottom:10px;padding-top:10px}.py-\\[16px\\]{padding-bottom:16px;padding-top:16px}.py-\\[20px\\]{padding-bottom:20px;padding-top:20px}.py-\\[8px\\]{padding-bottom:8px;padding-top:8px}.text-center{text-align:center}.text-\\[18px\\]{font-size:18px}.text-\\[20px\\]{font-size:20px}.text-sm{font-size:.875rem;line-height:1.25rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-\\[\\#383c43\\]{--tw-text-opacity:1;color:rgb(56 60 67/var(--tw-text-opacity,1))}.text-\\[green\\]{--tw-text-opacity:1;color:rgb(0 128 0/var(--tw-text-opacity,1))}.text-\\[orange\\]{--tw-text-opacity:1;color:rgb(255 165 0/var(--tw-text-opacity,1))}.text-\\[red\\]{--tw-text-opacity:1;color:rgb(255 0 0/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.opacity-0{opacity:0}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!duration-700{transition-duration:.7s!important}.duration-100{transition-duration:.1s}.duration-300{transition-duration:.3s}.reject-card{background-color:#f7d7d8;border-color:#f2aeb5;color:#58151c}.last\\:border-none:last-child{border-style:none}.hover\\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.z-50{z-index:50}.size-\\[40px\\]{height:40px;width:40px}.size-full{height:100%;width:100%}";
203
+ const distributorLookupCss = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid #e5e7eb;box-sizing:border-box}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.15 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.absolute{position:absolute}.\\!relative{position:relative!important}.relative{position:relative}.left-0{left:0}.top-0{top:0}.z-10{z-index:10}.block{display:block}.flex{display:flex}.hidden{display:none}.origin-left{transform-origin:left}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\!overflow-hidden{overflow:hidden!important}.\\!rounded-\\[4px\\]{border-radius:4px!important}.border{border-width:1px}.opacity-0{opacity:0}.opacity-100{opacity:1}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.shift-skeleton{border-radius:4px!important;position:relative!important}.loading .shift-skeleton,.loading.shift-skeleton{overflow:hidden!important;pointer-events:none!important;position:relative!important}.shift-skeleton:after{background:linear-gradient(-45deg,#d4d8de,#e2e5e9,#d4d8de);background-size:300% 300%;border-radius:4px!important;content:\"\";height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;transform-origin:left;transition-duration:.5s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);width:100%;z-index:10}.loading .shift-skeleton:after,.loading.shift-skeleton:after{--tw-scale-x:1;animation:shimmer 2s ease-in-out infinite;opacity:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes shimmer{0%{background-position:100% 0}50%{background-position:0 100%}to{background-position:100% 0}}.vehicle-info-container{background-color:#fdfdfd;border:1px solid #dcdcdc;border-radius:5px;box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 hsla(0,0%,100%,.1);overflow:hidden;padding:0;position:relative;transition-duration:.5s;transition-property:all}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f6f6f6;border-radius:5px;border-top:1px solid #dcdcdc;border-top-left-radius:0;border-top-right-radius:0}::-webkit-scrollbar-thumb{background:#c5c5c5;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.hide-scroll ::-webkit-scrollbar-thumb,.hide-scroll::-webkit-scrollbar-thumb,.loading ::-webkit-scrollbar-thumb{background:transparent}.vehicle-info-body{display:flex;flex-direction:column;overflow:hidden;position:relative;transition-duration:.5s;transition-property:all;transition-timing-function:ease-in-out}.vehicle-info-content{transition-duration:.5s;transition-property:all;width:100%}.vehicle-info-header{align-items:center;background-color:#f6f6f6;border:1px solid #ededed;display:flex;height:54px;justify-content:center;text-align:center}.vehicle-info-header-vin{display:inline-block;font-size:16px;transition-duration:.5s;transition-property:all}.vehicle-info-header-vin span{color:#ef4444}.loading .vehicle-info-header-vin{opacity:0;transform:scale(1.5);visibility:hidden}:host{all:initial!important;display:block}*{font-family:Arial}.static{position:static}.h-\\[200px\\]{height:200px}.w-full{width:100%}.items-center{align-items:center}.justify-center{justify-content:center}.text-\\[26px\\]{font-size:26px}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.\\!pointer-events-none{pointer-events:none!important}.\\!w-full{width:100%!important}.translate-x-\\[-200\\%\\]{--tw-translate-x:-200%}.translate-x-\\[-200\\%\\],.translate-y-\\[200\\%\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[200\\%\\]{--tw-translate-y:200%}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!duration-0{transition-duration:0s!important}.\\[\\&_\\*\\]\\:\\!pointer-events-none *{pointer-events:none!important}.mx-auto{margin-left:auto;margin-right:auto}.me-1{margin-inline-end:.25rem}.ml-1{margin-left:.25rem}.mt-2{margin-top:.5rem}.mt-\\[32px\\]{margin-top:32px}.inline-flex{display:inline-flex}.h-\\[50px\\]{height:50px}.w-fit{width:fit-content}.max-w-full{max-width:100%}.flex-wrap{flex-wrap:wrap}.items-stretch{align-items:stretch}.gap-\\[16px\\]{gap:16px}.gap-\\[8px\\]{gap:8px}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.rounded-lg{border-radius:.5rem}.border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.bg-\\[\\#f6f6f6\\]{--tw-bg-opacity:1;background-color:rgb(246 246 246/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.p-\\[16px\\]{padding:16px}.p-\\[2px\\]{padding:2px}.px-3{padding-left:.75rem;padding-right:.75rem}.px-\\[16px\\]{padding-left:16px;padding-right:16px}.py-1{padding-bottom:.25rem;padding-top:.25rem}.text-\\[16px\\]{font-size:16px}.text-\\[18px\\]{font-size:18px}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-\\[green\\]{--tw-text-opacity:1;color:rgb(0 128 0/var(--tw-text-opacity,1))}.text-\\[orange\\]{--tw-text-opacity:1;color:rgb(255 165 0/var(--tw-text-opacity,1))}.text-\\[red\\]{--tw-text-opacity:1;color:rgb(255 0 0/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (min-width:768px){.md\\:justify-between{justify-content:space-between}}.\\[\\&\\>div\\]\\:grow>div{flex-grow:1}.\\!h-auto{height:auto!important}.min-w-full{min-width:100%}.resize{resize:both}.overflow-hidden{overflow:hidden}.\\!transition-none{transition-property:none!important}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.my-auto{margin-bottom:auto;margin-top:auto}.border-b{border-bottom-width:1px}.py-\\[16px\\]{padding-bottom:16px;padding-top:16px}.text-center{text-align:center}.duration-300{transition-duration:.3s}.last\\:border-b-0:last-child{border-bottom-width:0}.even\\:bg-slate-100:nth-child(2n){--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.hover\\:bg-sky-100\\/50:hover{background-color:rgba(224,242,254,.5)}";
155
204
 
156
- let mockData$1 = {};
157
205
  const DistributorLookup = class {
158
206
  constructor(hostRef) {
159
207
  registerInstance(this, hostRef);
160
- this.baseUrl = '';
161
- this.isDev = false;
208
+ // ====== Start Localization
209
+ this.language = 'en';
210
+ this.locale = Object.assign({ sharedLocales: sharedLocalesSchema.getDefault() }, distributerSchema.getDefault());
211
+ // ====== End Localization
212
+ // ====== Start Vehicle info layout prop
213
+ this.coreOnly = false;
214
+ this.headers = {};
162
215
  this.queryString = '';
216
+ this.isError = false;
217
+ this.isLoading = false;
218
+ // ====== End Part Lookup Component Shared Logic
219
+ // ===== Start Component Logic
163
220
  this.hiddenFields = '';
164
- this.language = 'en';
165
221
  this.localizationName = '';
166
- this.state = 'idle';
167
- this.errorMessage = null;
168
- this.externalPartNumber = null;
169
- this.sharedLocales = sharedLocalesSchema.getDefault();
170
- this.locale = distributerSchema.getDefault();
171
222
  }
172
223
  async componentWillLoad() {
173
224
  await this.changeLanguage(this.language);
174
225
  }
175
226
  async changeLanguage(newLanguage) {
176
- const localeResponses = await Promise.all([getLocaleLanguage(newLanguage, 'partLookup.distributor', distributerSchema), getSharedLocal(newLanguage)]);
177
- this.locale = localeResponses[0];
178
- this.sharedLocales = localeResponses[1];
227
+ const [sharedLocales, locale] = await Promise.all([getSharedLocal(newLanguage), getLocaleLanguage(newLanguage, 'partLookup.distributor', distributerSchema)]);
228
+ this.locale = Object.assign({ sharedLocales }, locale);
179
229
  }
180
- handleSettingData(response) {
181
- this.partInformation = response;
230
+ async setMockData(newMockData) {
231
+ this.mockData = newMockData;
182
232
  }
183
- async setData(newData, headers = {}) {
184
- clearTimeout(this.networkTimeoutRef);
185
- if (this.abortController)
186
- this.abortController.abort();
187
- this.abortController = new AbortController();
188
- let scopedTimeoutRef;
189
- const isPartNumberRequest = typeof newData === 'string';
190
- const partNumber = isPartNumberRequest ? newData : newData === null || newData === void 0 ? void 0 : newData.partNumber;
191
- this.externalPartNumber = partNumber;
192
- try {
193
- if (!partNumber || partNumber.trim().length === 0) {
194
- this.state = 'idle';
195
- return;
196
- }
197
- if (this.state === 'data' || this.state === 'error') {
198
- this.state = (this.state + '-loading');
199
- }
200
- else
201
- this.state = 'loading';
202
- await new Promise(r => {
203
- scopedTimeoutRef = setTimeout(r, 700);
204
- this.networkTimeoutRef = scopedTimeoutRef;
205
- });
206
- const partResponse = isPartNumberRequest ? await getPartInformation(this, { scopedTimeoutRef, partNumber, mockData: mockData$1 }, headers) : newData;
207
- if (this.networkTimeoutRef === scopedTimeoutRef) {
208
- if (!partResponse)
209
- throw new Error('wrongResponseFormat');
210
- this.handleSettingData(partResponse);
211
- }
212
- this.errorMessage = null;
213
- this.state = 'data';
214
- }
215
- catch (error) {
216
- if (error && (error === null || error === void 0 ? void 0 : error.name) === 'AbortError')
217
- return;
218
- if (this.errorCallback)
219
- this.errorCallback(error.message);
220
- console.error(error);
221
- this.setErrorMessage(error.message);
222
- }
233
+ async fetchData(newData, headers = {}) {
234
+ await setPartLookupData(this, newData, headers);
223
235
  }
224
236
  async setErrorMessage(message) {
225
- this.state = 'error';
226
- this.partInformation = null;
227
- this.errorMessage = message;
228
- }
229
- async fetchData(partNumber = this.externalPartNumber, headers = {}) {
230
- await this.setData(partNumber, headers);
237
+ setPartLookupErrorState(this, message);
231
238
  }
232
- async loadingListener() {
239
+ onLoadingChange(newValue) {
233
240
  if (this.loadingStateChange)
234
- this.loadingStateChange(this.state.includes('loading'));
235
- }
236
- async setMockData(newMockData) {
237
- mockData$1 = newMockData;
241
+ this.loadingStateChange(newValue);
238
242
  }
239
243
  render() {
240
- var _a, _b, _c, _d, _e, _f;
241
- const texts = this.locale;
242
- const localName = this.partInformation ? this.localizationName || 'russian' : 'russian';
243
- const hiddenFields = this.partInformation ? ((_a = this.hiddenFields.split(',')) === null || _a === void 0 ? void 0 : _a.map(field => field.trim())) || [] : [];
244
- const partsInformation = this.partInformation
245
- ? [
246
- { label: texts.description, key: 'partDescription', value: this.partInformation.partDescription },
247
- { label: texts.productGroup, key: 'productGroup', value: this.partInformation.productGroup },
248
- {
249
- label: texts.localDescription.replace('$', localName),
250
- key: 'localDescription',
251
- value: this.partInformation.localDescription,
252
- },
253
- {
254
- label: texts.dealerPurchasePrice,
255
- key: 'purchasePrice',
256
- value: null,
257
- values: (_b = this.partInformation.prices) === null || _b === void 0 ? void 0 : _b.map(price => {
258
- var _a;
259
- return { header: price === null || price === void 0 ? void 0 : price.countryName, body: (_a = price === null || price === void 0 ? void 0 : price.purchasePrice) === null || _a === void 0 ? void 0 : _a.formattedValue };
260
- }),
261
- },
262
- {
263
- label: texts.recommendedRetailPrice,
264
- key: 'retailPrice',
265
- value: null,
266
- values: (_c = this.partInformation.prices) === null || _c === void 0 ? void 0 : _c.map(price => {
267
- var _a;
268
- return { header: price === null || price === void 0 ? void 0 : price.countryName, body: (_a = price === null || price === void 0 ? void 0 : price.retailPrice) === null || _a === void 0 ? void 0 : _a.formattedValue };
269
- }),
270
- },
271
- {
272
- label: texts.supersessions,
273
- key: 'supersededTo',
274
- value: null,
275
- values: (_d = this.partInformation.supersededTo) === null || _d === void 0 ? void 0 : _d.map(part => {
276
- return { header: null, body: part };
277
- }),
278
- },
279
- ]
280
- : [];
244
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
245
+ const localName = this.partLookup ? this.localizationName || 'russian' : 'russian';
246
+ const hiddenFields = ((_b = (_a = this.hiddenFields) === null || _a === void 0 ? void 0 : _a.split(',')) === null || _b === void 0 ? void 0 : _b.map(field => field.trim())) || [];
247
+ const partsInformation = [
248
+ { label: this.locale.description, key: 'partDescription', value: (_c = this.partLookup) === null || _c === void 0 ? void 0 : _c.partDescription },
249
+ { label: this.locale.productGroup, key: 'productGroup', value: (_d = this.partLookup) === null || _d === void 0 ? void 0 : _d.productGroup },
250
+ {
251
+ key: 'localDescription',
252
+ value: (_e = this.partLookup) === null || _e === void 0 ? void 0 : _e.localDescription,
253
+ label: this.locale.localDescription.replace('$', localName),
254
+ },
255
+ {
256
+ key: 'purchasePrice',
257
+ label: this.locale.dealerPurchasePrice,
258
+ values: (_g = (_f = this.partLookup) === null || _f === void 0 ? void 0 : _f.prices) === null || _g === void 0 ? void 0 : _g.map(price => { var _a; return ({ header: price === null || price === void 0 ? void 0 : price.countryName, body: (_a = price === null || price === void 0 ? void 0 : price.purchasePrice) === null || _a === void 0 ? void 0 : _a.formattedValue }); }),
259
+ },
260
+ {
261
+ key: 'retailPrice',
262
+ label: this.locale.recommendedRetailPrice,
263
+ values: (_j = (_h = this.partLookup) === null || _h === void 0 ? void 0 : _h.prices) === null || _j === void 0 ? void 0 : _j.map(price => { var _a; return ({ header: price === null || price === void 0 ? void 0 : price.countryName, body: (_a = price === null || price === void 0 ? void 0 : price.retailPrice) === null || _a === void 0 ? void 0 : _a.formattedValue }); }),
264
+ },
265
+ {
266
+ key: 'supersededTo',
267
+ label: this.locale.supersessions,
268
+ values: (_l = (_k = this.partLookup) === null || _k === void 0 ? void 0 : _k.supersededTo) === null || _l === void 0 ? void 0 : _l.map(part => ({ header: null, body: part })),
269
+ },
270
+ ];
281
271
  const displayedFields = partsInformation.filter(part => !hiddenFields.includes(part.key));
282
- const displayDistributer = this.partInformation
283
- ? !this.partInformation.stockParts.some(({ quantityLookUpResult }) => quantityLookUpResult === 'LookupIsSkipped' || quantityLookUpResult === 'QuantityNotWithinLookupThreshold')
284
- : false;
285
- return (h(Host, null, h("div", { dir: this.sharedLocales.direction, class: "min-h-[100px] relative transition-all duration-300 overflow-hidden" }, h("div", null, h("loading-spinner", { isLoading: this.state.includes('loading') }), h("div", { class: cn('transition-all !duration-700', { 'scale-0': this.state.includes('loading') || this.state === 'idle', 'opacity-0': this.state.includes('loading') }) }, ['error', 'error-loading'].includes(this.state) && (h("div", { class: "py-[16px] min-h-[100px] flex items-center" }, h("div", { class: " px-[16px] py-[8px] border reject-card text-[20px] rounded-[8px] w-fit mx-auto" }, this.sharedLocales.errors[this.errorMessage] || this.sharedLocales.errors.wildCard))), ['data', 'data-loading'].includes(this.state) && (h("div", null, h("div", { class: "flex mt-[12px] max-h-[70dvh] overflow-hidden rounded-[4px] flex-col border border-[#d6d8dc]" }, h("div", { class: "w-full h-[40px] flex shrink-0 justify-center text-[18px] items-center text-[#383c43] text-center bg-[#e1e3e5]" }, texts.info), h("div", { class: "py-[10px] px-[30px] flex flex-col gap-[15px]" }, h("div", { class: "grid grid-cols-3 gap-[50px]" }, displayedFields.map(({ label, value, values, key }) => (h("div", { key: key, class: "flex flex-col flex-1" }, h("strong", { class: "py-[10px] px-0 border-b-[gray] border-b" }, label), values ? (h("div", null, values
272
+ const tableHeaders = [
273
+ {
274
+ width: 300,
275
+ key: 'locationName',
276
+ label: this.locale.location,
277
+ },
278
+ {
279
+ width: 300,
280
+ key: 'quantityLookUpResult',
281
+ label: this.locale.availability,
282
+ },
283
+ ];
284
+ const displayDistributer = !((_m = this.partLookup) === null || _m === void 0 ? void 0 : _m.stockParts.some(({ quantityLookUpResult }) => quantityLookUpResult === 'LookupIsSkipped' || quantityLookUpResult === 'QuantityNotWithinLookupThreshold'));
285
+ const rows = displayDistributer
286
+ ? (_o = this.partLookup) === null || _o === void 0 ? void 0 : _o.stockParts.map(stock => ({
287
+ locationName: stock.locationName,
288
+ quantityLookUpResult: () => (h("div", { class: cn('text-[red]', {
289
+ 'text-[green]': stock.quantityLookUpResult === 'Available',
290
+ 'text-[orange]': stock.quantityLookUpResult === 'PartiallyAvailable',
291
+ }) }, h("strong", null, stock.quantityLookUpResult === 'Available'
292
+ ? this.locale.available
293
+ : stock.quantityLookUpResult === 'PartiallyAvailable'
294
+ ? this.locale.partiallyAvailable
295
+ : this.locale.notAvailable))),
296
+ }))
297
+ : [];
298
+ return (h(Host, { key: 'e838fa3aa5efadd03fd0f84d009ad1340f82712d' }, h(VehicleInfoLayout, { key: '90ba7279bd942a17f5216c26cfa83eb1a96c0d74', isError: this.isError, coreOnly: this.coreOnly, isLoading: this.isLoading, header: (_p = this.partLookup) === null || _p === void 0 ? void 0 : _p.partNumber, direction: this.locale.sharedLocales.direction, errorMessage: this.locale.sharedLocales.errors[this.errorMessage] || this.locale.sharedLocales.errors.wildCard }, h("div", { key: '5a32a08a7dd5fc325a50dca8bcebe1fd586d3133', class: "p-[16px]" }, h("flexible-container", { key: '5a9afa5234303bd9cd2141cc533ce629c0276119' }, h("div", { key: '3541f2e4ec5e78e5d18f96fa9aa0116c3c4f588a', class: "flex [&>div]:grow overflow-auto gap-[16px] items-stretch justify-center md:justify-between flex-wrap" }, displayedFields.map(({ label, value, values }) => values ? (h(MaterialCard, { title: label, minWidth: "250px" }, h(MaterialCardChildren, { class: "flex flex-wrap gap-[8px] p-[2px]" }, values
286
299
  .filter(x => x.body)
287
- .map(x => (h("span", { key: x.header + x.body, class: "inline-flex items-center bg-red-50 text-red-800 text-sm font-medium px-3 py-1 me-1 mt-2 rounded-lg border border-red-300" }, x.header && h("span", { class: "font-semibold" }, x.header, ":"), h("span", { class: "ml-1" }, x.body)))))) : (h("div", { class: "py-[10px] px-0" }, value)))))))), displayDistributer && (h("div", { class: "flex mt-[12px] max-h-[70dvh] overflow-hidden rounded-[4px] flex-col border border-[#d6d8dc]" }, h("div", { class: "w-full h-[40px] flex shrink-0 justify-center text-[18px] items-center text-[#383c43] text-center bg-[#e1e3e5]" }, texts.distributorStock), h("div", { class: "flex flex-col gap-[15px]" }, h("table", { class: "w-full overflow-auto relative border-collapse" }, h("thead", { class: "top-0 font-bold sticky bg-white" }, h("tr", null, [texts.location, texts.availability].map(title => (h("th", { key: title, class: "px-[10px] py-[20px] text-center whitespace-nowrap border-b border-[#d6d8dc]" }, title))))), h("tbody", null, (_f = (_e = this.partInformation) === null || _e === void 0 ? void 0 : _e.stockParts) === null || _f === void 0 ? void 0 : _f.map(stock => (h("tr", { class: "transition-colors duration-100 border-b border-[#d6d8dc] last:border-none hover:bg-slate-100", key: stock.locationID }, h("td", { class: cn('px-[10px] py-[20px] text-center whitespace-nowrap') }, stock.locationName), h("td", { class: cn('px-[10px] py-[20px] text-center whitespace-nowrap') }, h("div", { class: cn('text-[red]', {
288
- 'text-[green]': stock.quantityLookUpResult === 'Available',
289
- 'text-[orange]': stock.quantityLookUpResult === 'PartiallyAvailable',
290
- }) }, h("strong", null, stock.quantityLookUpResult === 'Available'
291
- ? texts.available
292
- : stock.quantityLookUpResult === 'PartiallyAvailable'
293
- ? texts.partiallyAvailable
294
- : texts.notAvailable))))))))))))))))));
300
+ .map(x => (h("span", { class: "inline-flex items-center bg-red-50 text-red-800 font-medium px-3 text-[16px] py-1 me-1 mt-2 rounded-lg border border-red-300" }, x.header && h("span", { class: "font-semibold" }, x.header, ":"), h("span", { class: "ml-1" }, x.body))))))) : (h(MaterialCard, { desc: (value === null || value === void 0 ? void 0 : value.toString()) || '', title: label, minWidth: "250px" }))))), h("div", { key: '41a48a4f865da6afdac19d1287e50fcb79ed2e23', class: "mt-[32px] mx-auto w-fit max-w-full" }, h("div", { key: 'df8f9b01081366d7e1e7cef0541c217d45b4ec89', class: "bg-[#f6f6f6] h-[50px] flex items-center justify-center px-[16px] font-bold text-[18px]" }, this.locale.distributorStock), h("div", { key: '57e6c9290eecbdf59bb7b665c14ba567d98267f3', class: "overflow-x-auto" }, h("information-table", { key: '4dea80fc98daced8716bc74c09b099305a892ab8', isLoading: this.isLoading, rows: rows, headers: tableHeaders })))))));
295
301
  }
296
302
  get el() { return getElement(this); }
297
303
  static get watchers() { return {
298
304
  "language": ["changeLanguage"],
299
- "state": ["loadingListener"]
305
+ "isLoading": ["onLoadingChange"]
300
306
  }; }
301
307
  };
302
308
  DistributorLookup.style = distributorLookupCss;
303
309
 
304
- const manufacturerLookupCss = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid #e5e7eb;box-sizing:border-box}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.15 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.block{display:block}:host{all:initial!important;display:block}*{font-family:Arial}.static{position:static}.hidden{display:none}.w-full{width:100%}.relative{position:relative}.mx-auto{margin-left:auto;margin-right:auto}.me-1{margin-inline-end:.25rem}.ml-1{margin-left:.25rem}.mt-2{margin-top:.5rem}.mt-\\[12px\\]{margin-top:12px}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.h-\\[40px\\]{height:40px}.min-h-\\[100px\\]{min-height:100px}.w-fit{width:fit-content}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.scale-0{--tw-scale-x:0;--tw-scale-y:0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-\\[15px\\]{gap:15px}.gap-\\[50px\\]{gap:50px}.overflow-hidden{overflow:hidden}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[8px\\]{border-radius:8px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-\\[\\#d6d8dc\\]{--tw-border-opacity:1;border-color:rgb(214 216 220/var(--tw-border-opacity,1))}.border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.border-b-\\[gray\\]{--tw-border-opacity:1;border-bottom-color:rgb(128 128 128/var(--tw-border-opacity,1))}.bg-\\[\\#e1e3e5\\]{--tw-bg-opacity:1;background-color:rgb(225 227 229/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.px-0{padding-left:0;padding-right:0}.px-3{padding-left:.75rem;padding-right:.75rem}.px-\\[16px\\]{padding-left:16px;padding-right:16px}.px-\\[30px\\]{padding-left:30px;padding-right:30px}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-\\[10px\\]{padding-bottom:10px;padding-top:10px}.py-\\[16px\\]{padding-bottom:16px;padding-top:16px}.py-\\[8px\\]{padding-bottom:8px;padding-top:8px}.text-center{text-align:center}.text-\\[18px\\]{font-size:18px}.text-\\[20px\\]{font-size:20px}.text-sm{font-size:.875rem;line-height:1.25rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-\\[\\#383c43\\]{--tw-text-opacity:1;color:rgb(56 60 67/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.opacity-0{opacity:0}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!duration-700{transition-duration:.7s!important}.duration-300{transition-duration:.3s}.reject-card{background-color:#f7d7d8;border-color:#f2aeb5;color:#58151c}";
310
+ const manufacturerLookupCss = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid #e5e7eb;box-sizing:border-box}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.15 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.absolute{position:absolute}.\\!relative{position:relative!important}.relative{position:relative}.left-0{left:0}.top-0{top:0}.z-10{z-index:10}.block{display:block}.flex{display:flex}.hidden{display:none}.origin-left{transform-origin:left}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\!overflow-hidden{overflow:hidden!important}.\\!rounded-\\[4px\\]{border-radius:4px!important}.border{border-width:1px}.opacity-0{opacity:0}.opacity-100{opacity:1}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.shift-skeleton{border-radius:4px!important;position:relative!important}.loading .shift-skeleton,.loading.shift-skeleton{overflow:hidden!important;pointer-events:none!important;position:relative!important}.shift-skeleton:after{background:linear-gradient(-45deg,#d4d8de,#e2e5e9,#d4d8de);background-size:300% 300%;border-radius:4px!important;content:\"\";height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;transform-origin:left;transition-duration:.5s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);width:100%;z-index:10}.loading .shift-skeleton:after,.loading.shift-skeleton:after{--tw-scale-x:1;animation:shimmer 2s ease-in-out infinite;opacity:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes shimmer{0%{background-position:100% 0}50%{background-position:0 100%}to{background-position:100% 0}}.vehicle-info-container{background-color:#fdfdfd;border:1px solid #dcdcdc;border-radius:5px;box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 hsla(0,0%,100%,.1);overflow:hidden;padding:0;position:relative;transition-duration:.5s;transition-property:all}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f6f6f6;border-radius:5px;border-top:1px solid #dcdcdc;border-top-left-radius:0;border-top-right-radius:0}::-webkit-scrollbar-thumb{background:#c5c5c5;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.hide-scroll ::-webkit-scrollbar-thumb,.hide-scroll::-webkit-scrollbar-thumb,.loading ::-webkit-scrollbar-thumb{background:transparent}.vehicle-info-body{display:flex;flex-direction:column;overflow:hidden;position:relative;transition-duration:.5s;transition-property:all;transition-timing-function:ease-in-out}.vehicle-info-content{transition-duration:.5s;transition-property:all;width:100%}.vehicle-info-header{align-items:center;background-color:#f6f6f6;border:1px solid #ededed;display:flex;height:54px;justify-content:center;text-align:center}.vehicle-info-header-vin{display:inline-block;font-size:16px;transition-duration:.5s;transition-property:all}.vehicle-info-header-vin span{color:#ef4444}.loading .vehicle-info-header-vin{opacity:0;transform:scale(1.5);visibility:hidden}:host{all:initial!important;display:block}*{font-family:Arial}.static{position:static}.h-\\[200px\\]{height:200px}.w-full{width:100%}.items-center{align-items:center}.justify-center{justify-content:center}.text-\\[26px\\]{font-size:26px}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.\\!pointer-events-none{pointer-events:none!important}.\\!w-full{width:100%!important}.translate-x-\\[-200\\%\\]{--tw-translate-x:-200%}.translate-x-\\[-200\\%\\],.translate-y-\\[200\\%\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[200\\%\\]{--tw-translate-y:200%}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!duration-0{transition-duration:0s!important}.\\[\\&_\\*\\]\\:\\!pointer-events-none *{pointer-events:none!important}.me-1{margin-inline-end:.25rem}.ml-1{margin-left:.25rem}.mt-2{margin-top:.5rem}.inline-flex{display:inline-flex}.flex-wrap{flex-wrap:wrap}.items-stretch{align-items:stretch}.gap-\\[16px\\]{gap:16px}.gap-\\[8px\\]{gap:8px}.overflow-auto{overflow:auto}.rounded-lg{border-radius:.5rem}.border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.p-\\[16px\\]{padding:16px}.p-\\[2px\\]{padding:2px}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.text-\\[16px\\]{font-size:16px}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (min-width:768px){.md\\:justify-between{justify-content:space-between}}.\\[\\&\\>div\\]\\:grow>div{flex-grow:1}";
305
311
 
306
- let mockData = {};
307
312
  const ManufacturerLookup = class {
308
313
  constructor(hostRef) {
309
314
  registerInstance(this, hostRef);
310
- this.baseUrl = '';
311
- this.isDev = false;
315
+ // ====== Start Localization
316
+ this.language = 'en';
317
+ this.locale = Object.assign({ sharedLocales: sharedLocalesSchema.getDefault() }, manufacturerSchema.getDefault());
318
+ // ====== End Localization
319
+ // ====== Start Vehicle info layout prop
320
+ this.coreOnly = false;
321
+ this.headers = {};
312
322
  this.queryString = '';
323
+ this.isError = false;
324
+ this.isLoading = false;
325
+ // ====== End Part Lookup Component Shared Logic
326
+ // ====== Start Component Logic
313
327
  this.hiddenFields = '';
314
- this.language = 'en';
315
328
  this.localizationName = '';
316
- this.headerTitle = 'Manufacturer';
317
- this.state = 'idle';
318
- this.errorMessage = null;
319
- this.externalPartNumber = null;
320
- this.sharedLocales = sharedLocalesSchema.getDefault();
321
- this.locale = manufacturerSchema.getDefault();
322
329
  }
323
330
  async componentWillLoad() {
324
331
  await this.changeLanguage(this.language);
325
332
  }
326
333
  async changeLanguage(newLanguage) {
327
- const localeResponses = await Promise.all([getLocaleLanguage(newLanguage, 'partLookup.manufacturer', manufacturerSchema), getSharedLocal(newLanguage)]);
328
- this.locale = localeResponses[0];
329
- this.sharedLocales = localeResponses[1];
334
+ const [sharedLocales, locale] = await Promise.all([getSharedLocal(newLanguage), getLocaleLanguage(newLanguage, 'partLookup.manufacturer', manufacturerSchema)]);
335
+ this.locale = Object.assign({ sharedLocales }, locale);
330
336
  }
331
- handleSettingData(response) {
332
- this.partInformation = response;
337
+ async setMockData(newMockData) {
338
+ this.mockData = newMockData;
333
339
  }
334
- async setData(newData, headers = {}) {
335
- clearTimeout(this.networkTimeoutRef);
336
- if (this.abortController)
337
- this.abortController.abort();
338
- this.abortController = new AbortController();
339
- let scopedTimeoutRef;
340
- const isPartNumberRequest = typeof newData === 'string';
341
- const partNumber = isPartNumberRequest ? newData : newData === null || newData === void 0 ? void 0 : newData.partNumber;
342
- this.externalPartNumber = partNumber;
343
- try {
344
- if (!partNumber || partNumber.trim().length === 0) {
345
- this.state = 'idle';
346
- return;
347
- }
348
- if (this.state === 'data' || this.state === 'error') {
349
- this.state = (this.state + '-loading');
350
- }
351
- else
352
- this.state = 'loading';
353
- await new Promise(r => {
354
- scopedTimeoutRef = setTimeout(r, 700);
355
- this.networkTimeoutRef = scopedTimeoutRef;
356
- });
357
- const partResponse = isPartNumberRequest ? await getPartInformation(this, { scopedTimeoutRef, partNumber, mockData }, headers) : newData;
358
- if (this.networkTimeoutRef === scopedTimeoutRef) {
359
- if (!partResponse)
360
- throw new Error('wrongResponseFormat');
361
- this.handleSettingData(partResponse);
362
- }
363
- this.errorMessage = null;
364
- this.state = 'data';
365
- }
366
- catch (error) {
367
- if (error && (error === null || error === void 0 ? void 0 : error.name) === 'AbortError')
368
- return;
369
- if (this.errorCallback)
370
- this.errorCallback(error.message);
371
- console.error(error);
372
- this.setErrorMessage(error.message);
373
- }
340
+ async fetchData(newData, headers = {}) {
341
+ await setPartLookupData(this, newData, headers);
374
342
  }
375
343
  async setErrorMessage(message) {
376
- this.state = 'error';
377
- this.partInformation = null;
378
- this.errorMessage = message;
379
- }
380
- async fetchData(partNumber = this.externalPartNumber, headers = {}) {
381
- await this.setData(partNumber, headers);
344
+ setPartLookupErrorState(this, message);
382
345
  }
383
- async loadingListener() {
346
+ onLoadingChange(newValue) {
384
347
  if (this.loadingStateChange)
385
- this.loadingStateChange(this.state.includes('loading'));
386
- }
387
- async setMockData(newMockData) {
388
- mockData = newMockData;
348
+ this.loadingStateChange(newValue);
389
349
  }
390
350
  render() {
391
- const texts = this.locale;
392
- const localName = this.partInformation ? this.localizationName || 'russian' : 'russian';
393
- const hiddenFields = this.partInformation ? this.hiddenFields.split(',').map(field => field.trim()) || [] : [];
394
- const manufacturerData = this.partInformation
395
- ? [
396
- { label: texts.origin, key: 'origin', value: this.partInformation.origin },
397
- {
398
- label: texts.warrantyPrice,
399
- key: 'warrantyPrice',
400
- value: null,
401
- values: this.partInformation.prices.map(price => {
402
- var _a;
403
- return { header: price === null || price === void 0 ? void 0 : price.countryName, body: (_a = price === null || price === void 0 ? void 0 : price.warrantyPrice) === null || _a === void 0 ? void 0 : _a.formattedValue };
404
- }),
405
- },
406
- { label: texts.specialPrice, key: 'specialPrice', value: null },
407
- { label: texts.wholesalesPrice, key: 'salesPrice', value: null },
408
- { label: texts.pnc, key: 'pnc', value: this.partInformation.pnc },
409
- { label: texts.pncName.replace('$', localName), key: 'pnc', value: this.partInformation.pnc },
410
- { label: texts.binCode, key: 'binType', value: this.partInformation.binType },
411
- { label: texts.length, key: 'length', value: this.partInformation.length },
412
- { label: texts.width, key: 'width', value: this.partInformation.width },
413
- { label: texts.height, key: 'height', value: this.partInformation.height },
414
- { label: texts.netWeight, key: 'netWeight', value: this.partInformation.netWeight },
415
- { label: texts.grossWeight, key: 'grossWeight', value: this.partInformation.grossWeight },
416
- { label: texts.cubicMeasure, key: 'cubicMeasure', value: this.partInformation.cubicMeasure },
417
- { label: texts.hsCode, key: 'hsCode', value: this.partInformation.hsCode },
418
- { label: texts.uzHsCode, key: 'hsCode', value: this.partInformation.hsCode },
419
- ]
420
- : [];
351
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
352
+ const localName = this.partLookup ? this.localizationName || 'russian' : 'russian';
353
+ const hiddenFields = ((_a = this.hiddenFields) === null || _a === void 0 ? void 0 : _a.split(',').map(field => field === null || field === void 0 ? void 0 : field.trim())) || [];
354
+ const manufacturerData = [
355
+ { label: this.locale.origin, key: 'origin', value: (_b = this.partLookup) === null || _b === void 0 ? void 0 : _b.origin },
356
+ {
357
+ label: this.locale.warrantyPrice,
358
+ key: 'warrantyPrice',
359
+ values: (_c = this.partLookup) === null || _c === void 0 ? void 0 : _c.prices.map(price => {
360
+ var _a;
361
+ return { header: price === null || price === void 0 ? void 0 : price.countryName, body: (_a = price === null || price === void 0 ? void 0 : price.warrantyPrice) === null || _a === void 0 ? void 0 : _a.formattedValue };
362
+ }),
363
+ },
364
+ { label: this.locale.specialPrice, key: 'specialPrice' },
365
+ { label: this.locale.wholesalesPrice, key: 'salesPrice' },
366
+ { label: this.locale.pnc, key: 'pnc', value: (_d = this.partLookup) === null || _d === void 0 ? void 0 : _d.pnc },
367
+ { label: this.locale.pncName.replace('$', localName), key: 'pnc', value: (_e = this.partLookup) === null || _e === void 0 ? void 0 : _e.pnc },
368
+ { label: this.locale.binCode, key: 'binType', value: (_f = this.partLookup) === null || _f === void 0 ? void 0 : _f.binType },
369
+ { label: this.locale.length, key: 'length', value: (_g = this.partLookup) === null || _g === void 0 ? void 0 : _g.length },
370
+ { label: this.locale.width, key: 'width', value: (_h = this.partLookup) === null || _h === void 0 ? void 0 : _h.width },
371
+ { label: this.locale.height, key: 'height', value: (_j = this.partLookup) === null || _j === void 0 ? void 0 : _j.height },
372
+ { label: this.locale.netWeight, key: 'netWeight', value: (_k = this.partLookup) === null || _k === void 0 ? void 0 : _k.netWeight },
373
+ { label: this.locale.grossWeight, key: 'grossWeight', value: (_l = this.partLookup) === null || _l === void 0 ? void 0 : _l.grossWeight },
374
+ { label: this.locale.cubicMeasure, key: 'cubicMeasure', value: (_m = this.partLookup) === null || _m === void 0 ? void 0 : _m.cubicMeasure },
375
+ { label: this.locale.hsCode, key: 'hsCode', value: (_o = this.partLookup) === null || _o === void 0 ? void 0 : _o.hsCode },
376
+ { label: this.locale.uzHsCode, key: 'hsCode', value: (_p = this.partLookup) === null || _p === void 0 ? void 0 : _p.hsCode },
377
+ ];
421
378
  const displayedManufacturerData = manufacturerData.filter(part => !hiddenFields.includes(part.key));
422
- return (h(Host, null, h("div", { dir: this.sharedLocales.direction, class: "min-h-[100px] relative transition-all duration-300 overflow-hidden" }, h("div", null, h("loading-spinner", { isLoading: this.state.includes('loading') }), h("div", { class: cn('transition-all !duration-700', { 'scale-0': this.state.includes('loading') || this.state === 'idle', 'opacity-0': this.state.includes('loading') }) }, ['error', 'error-loading'].includes(this.state) && (h("div", { class: "py-[16px] min-h-[100px] flex items-center" }, h("div", { class: " px-[16px] py-[8px] border reject-card text-[20px] rounded-[8px] w-fit mx-auto" }, this.sharedLocales.errors[this.errorMessage] || this.sharedLocales.errors.wildCard))), ['data', 'data-loading'].includes(this.state) && (h("div", null, h("div", { class: "flex mt-[12px] overflow-hidden rounded-[4px] flex-col border border-[#d6d8dc]" }, h("div", { class: "w-full h-[40px] flex shrink-0 justify-center text-[18px] items-center text-[#383c43] text-center bg-[#e1e3e5]" }, this.headerTitle), h("div", { class: "px-[30px] py-[10px] flex flex-col gap-[15px]" }, h("div", { class: "grid grid-cols-3 gap-[50px]" }, displayedManufacturerData.map(({ label, value, values, key }) => (h("div", { key: key, class: "flex flex-col flex-1" }, h("strong", { class: "py-[10px] px-0 border-b-[gray] border-b" }, label), values ? (h("div", null, values
379
+ return (h(Host, null, h(VehicleInfoLayout, { isError: this.isError, coreOnly: this.coreOnly, isLoading: this.isLoading, header: (_q = this.partLookup) === null || _q === void 0 ? void 0 : _q.partNumber, direction: this.locale.sharedLocales.direction, errorMessage: this.locale.sharedLocales.errors[this.errorMessage] || this.locale.sharedLocales.errors.wildCard }, h("flexible-container", null, h("div", { class: "flex p-[16px] [&>div]:grow overflow-auto gap-[16px] items-stretch justify-center md:justify-between flex-wrap" }, displayedManufacturerData.map(({ label, value, values }) => values ? (h(MaterialCard, { title: label, minWidth: "250px" }, h(MaterialCardChildren, { class: "flex flex-wrap gap-[8px] p-[2px]" }, values
423
380
  .filter(x => x.body)
424
- .map(x => (h("span", { key: x.header + x.body, class: "inline-flex items-center bg-red-50 text-red-800 text-sm font-medium px-3 py-1 me-1 mt-2 rounded-lg border border-red-300" }, x.header && h("span", { class: "font-semibold" }, x.header, ":"), h("span", { class: "ml-1" }, x.body)))))) : (h("div", { class: "py-[10px] px-0" }, value)))))))))))))));
381
+ .map(x => (h("span", { class: "inline-flex items-center bg-red-50 text-red-800 font-medium px-3 text-[16px] py-1 me-1 mt-2 rounded-lg border border-red-300" }, x.header && h("span", { class: "font-semibold" }, x.header, ":"), h("span", { class: "ml-1" }, x.body))))))) : (h(MaterialCard, { desc: (value === null || value === void 0 ? void 0 : value.toString()) || '', title: label, minWidth: "250px" }))))))));
425
382
  }
426
383
  get el() { return getElement(this); }
427
384
  static get watchers() { return {
428
385
  "language": ["changeLanguage"],
429
- "state": ["loadingListener"]
386
+ "isLoading": ["onLoadingChange"]
430
387
  }; }
431
388
  };
432
389
  ManufacturerLookup.style = manufacturerLookupCss;