adp-web-components 0.3.18 → 0.3.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (364) hide show
  1. package/dist/cjs/{branch-slot-dropdown_15.cjs.entry.js → branch-date-dropdown_17.cjs.entry.js} +958 -68
  2. package/dist/cjs/dead-stock-lookup_3.cjs.entry.js +9 -9
  3. package/dist/cjs/flexible-container.cjs.entry.js +3 -3
  4. package/dist/cjs/form-checkbox.cjs.entry.js +2 -2
  5. package/dist/cjs/form-date-picker.cjs.entry.js +5 -5
  6. package/dist/cjs/form-input_7.cjs.entry.js +21 -19
  7. package/dist/cjs/form-switch.cjs.entry.js +2 -2
  8. package/dist/cjs/form-time-picker.cjs.entry.js +6 -6
  9. package/dist/cjs/{functions-C9XsBzrL.js → functions-BAUJUMt-.js} +44 -19
  10. package/dist/cjs/general-form.cjs.entry.js +6 -6
  11. package/dist/cjs/general-inquiry-form.cjs.entry.js +6 -6
  12. package/dist/cjs/{get-local-language-BnUadlVY.js → get-local-language-DI_UK6D5.js} +1 -1
  13. package/dist/cjs/{get-mock-files-Dr5dpq1N.js → get-mock-files-B1tNGb9m.js} +1 -1
  14. package/dist/cjs/information-table.cjs.entry.js +1 -1
  15. package/dist/cjs/loader.cjs.js +1 -1
  16. package/dist/cjs/loading-spinner.cjs.entry.js +2 -2
  17. package/dist/cjs/manufacturer-part-lookup.cjs.entry.js +3 -3
  18. package/dist/cjs/{mappers-BlH-TAo7.js → mappers-DnWgECCv.js} +54 -18
  19. package/dist/cjs/part-lookup.cjs.entry.js +2 -2
  20. package/dist/cjs/service-booking-form.cjs.entry.js +6 -6
  21. package/dist/cjs/shift-accordion.cjs.entry.js +2 -2
  22. package/dist/cjs/shift-checkbox.cjs.entry.js +2 -2
  23. package/dist/cjs/shift-components.cjs.js +1 -1
  24. package/dist/cjs/shift-slider.cjs.entry.js +1 -1
  25. package/dist/cjs/shift-switch.cjs.entry.js +2 -2
  26. package/dist/cjs/shift-tab-content.cjs.entry.js +2 -2
  27. package/dist/cjs/shift-tabs_2.cjs.entry.js +92 -34
  28. package/dist/cjs/ssc-lookup-form.cjs.entry.js +6 -6
  29. package/dist/cjs/test-drive-form.cjs.entry.js +6 -6
  30. package/dist/cjs/triangle-alert-CTvU1eGY.js +248 -0
  31. package/dist/cjs/vehicle-accessories_8.cjs.entry.js +177 -117
  32. package/dist/cjs/vehicle-lookup.cjs.entry.js +3 -3
  33. package/dist/cjs/vehicle-quotation-form.cjs.entry.js +17 -18
  34. package/dist/collection/collection-manifest.json +2 -0
  35. package/dist/collection/components/components/empty.css +1 -1
  36. package/dist/collection/components/components/flexible-container.css +1 -1
  37. package/dist/collection/components/components/flexible-container.js +2 -2
  38. package/dist/collection/components/components/information-table.css +1 -1
  39. package/dist/collection/components/components/loading-spinner.css +1 -1
  40. package/dist/collection/components/components/loading-spinner.js +1 -1
  41. package/dist/collection/components/components/shift-accordion.css +1 -1
  42. package/dist/collection/components/components/shift-accordion.js +1 -1
  43. package/dist/collection/components/components/shift-checkbox.js +1 -1
  44. package/dist/collection/components/components/shift-portal.css +1 -1
  45. package/dist/collection/components/components/shift-select-dropdown.css +1 -1
  46. package/dist/collection/components/components/shift-select-dropdown.js +2 -2
  47. package/dist/collection/components/components/shift-select.css +1 -1
  48. package/dist/collection/components/components/shift-select.js +3 -3
  49. package/dist/collection/components/components/shift-slider.js +1 -1
  50. package/dist/collection/components/components/shift-switch.js +1 -1
  51. package/dist/collection/components/components/shift-tab-content.css +1 -1
  52. package/dist/collection/components/components/shift-tab-content.js +1 -1
  53. package/dist/collection/components/components/shift-tabs.css +1 -1
  54. package/dist/collection/components/components/shift-tabs.js +2 -2
  55. package/dist/collection/components/form-elements/branch-date-dropdown.css +1 -0
  56. package/dist/collection/components/form-elements/branch-date-dropdown.js +682 -0
  57. package/dist/collection/components/form-elements/branch-date-picker.css +1 -0
  58. package/dist/collection/components/form-elements/branch-date-picker.js +1197 -0
  59. package/dist/collection/components/form-elements/branch-slot-dropdown.css +1 -1
  60. package/dist/collection/components/form-elements/branch-slot-dropdown.js +11 -6
  61. package/dist/collection/components/form-elements/branch-slot-picker.css +1 -1
  62. package/dist/collection/components/form-elements/branch-slot-picker.js +166 -18
  63. package/dist/collection/components/form-elements/form-checkbox.js +1 -1
  64. package/dist/collection/components/form-elements/form-date-picker-legacy.js +4 -4
  65. package/dist/collection/components/form-elements/form-dialog.css +1 -1
  66. package/dist/collection/components/form-elements/form-dialog.js +1 -1
  67. package/dist/collection/components/form-elements/form-file.js +2 -2
  68. package/dist/collection/components/form-elements/form-input.js +6 -4
  69. package/dist/collection/components/form-elements/form-inputs.css +1 -1
  70. package/dist/collection/components/form-elements/form-phone-number.js +4 -2
  71. package/dist/collection/components/form-elements/form-picker-input.js +6 -4
  72. package/dist/collection/components/form-elements/form-shadow-input.js +1 -1
  73. package/dist/collection/components/form-elements/form-stepper-control.js +2 -2
  74. package/dist/collection/components/form-elements/form-stepper-submit.js +2 -2
  75. package/dist/collection/components/form-elements/form-stepper.js +1 -1
  76. package/dist/collection/components/form-elements/form-structure-error.js +1 -1
  77. package/dist/collection/components/form-elements/form-submit.js +2 -2
  78. package/dist/collection/components/form-elements/form-switch.js +1 -1
  79. package/dist/collection/components/form-elements/form-text-area.js +6 -4
  80. package/dist/collection/components/form-elements/form-time-picker-legacy.js +5 -5
  81. package/dist/collection/components/form-elements/form-vin-input.js +6 -4
  82. package/dist/collection/components/forms/defaults/mappers.js +54 -18
  83. package/dist/collection/components/forms/defaults/style.css +1 -1
  84. package/dist/collection/components/forms/general-form.js +2 -2
  85. package/dist/collection/components/forms/general-inquiry.js +2 -2
  86. package/dist/collection/components/forms/service-booking.js +2 -2
  87. package/dist/collection/components/forms/ssc-lookup.js +2 -2
  88. package/dist/collection/components/forms/test-drive.js +2 -2
  89. package/dist/collection/components/forms/vehicle-quotation/themes.css +1 -1
  90. package/dist/collection/components/forms/vehicle-quotation.js +15 -16
  91. package/dist/collection/components/part-lookup/dead-stock-lookup.css +1 -1
  92. package/dist/collection/components/part-lookup/dead-stock-lookup.js +2 -2
  93. package/dist/collection/components/part-lookup/distributor-lookup.css +1 -1
  94. package/dist/collection/components/part-lookup/distributor-lookup.js +2 -2
  95. package/dist/collection/components/part-lookup/manufacturer-lookup.css +1 -1
  96. package/dist/collection/components/part-lookup/manufacturer-part-lookup.css +1 -1
  97. package/dist/collection/components/part-lookup/manufacturer-part-lookup.js +1 -1
  98. package/dist/collection/components/part-lookup/part-lookup.css +1 -1
  99. package/dist/collection/components/vehicle-lookup/components/claimable-item-popover.js +37 -29
  100. package/dist/collection/components/vehicle-lookup/components/claimable-trace-modal.js +6 -2
  101. package/dist/collection/components/vehicle-lookup/components/service-history-sub-row.js +3 -3
  102. package/dist/collection/components/vehicle-lookup/vehicle-accessories.css +1 -1
  103. package/dist/collection/components/vehicle-lookup/vehicle-accessories.js +2 -2
  104. package/dist/collection/components/vehicle-lookup/vehicle-claimable-items.css +1 -1
  105. package/dist/collection/components/vehicle-lookup/vehicle-claimable-items.js +121 -70
  106. package/dist/collection/components/vehicle-lookup/vehicle-item-claim-form.css +1 -1
  107. package/dist/collection/components/vehicle-lookup/vehicle-item-claim-form.js +89 -29
  108. package/dist/collection/components/vehicle-lookup/vehicle-lookup.css +1 -1
  109. package/dist/collection/components/vehicle-lookup/vehicle-paint-thickness.css +1 -1
  110. package/dist/collection/components/vehicle-lookup/vehicle-sale-information.css +1 -1
  111. package/dist/collection/components/vehicle-lookup/vehicle-sale-information.js +2 -2
  112. package/dist/collection/components/vehicle-lookup/vehicle-service-history.css +1 -1
  113. package/dist/collection/components/vehicle-lookup/vehicle-service-history.js +1 -1
  114. package/dist/collection/components/vehicle-lookup/vehicle-specification.css +1 -1
  115. package/dist/collection/components/vehicle-lookup/vehicle-specification.js +1 -1
  116. package/dist/collection/components/vehicle-lookup/vehicle-warranty-details.css +1 -1
  117. package/dist/collection/components/vehicle-lookup/vehicle-warranty-timeline.css +1 -1
  118. package/dist/collection/components/vehicle-lookup/vehicle-warranty-timeline.js +1 -1
  119. package/dist/collection/components/vin-extractor/vin-extractor.css +1 -1
  120. package/dist/collection/components/vin-extractor/vin-extractor.js +1 -1
  121. package/dist/collection/features/form-hook/functions.js +42 -18
  122. package/dist/collection/global/lib/overlay.js +154 -0
  123. package/dist/collection/global/lib/slot-day-rules.js +65 -0
  124. package/dist/collection/templates/assets/adp-wordmark.svg +1 -0
  125. package/dist/collection/templates/assets/favicon.svg +17 -0
  126. package/dist/collection/templates/forms/docs-content/params.js +1199 -0
  127. package/dist/collection/templates/forms/docs-content/structure.js +1153 -0
  128. package/dist/collection/templates/forms/docs-content/theming.js +1240 -0
  129. package/dist/collection/templates/harness-theme.js +44 -0
  130. package/dist/collection/templates/harness.js +775 -0
  131. package/dist/collection/templates/highlight.js +194 -0
  132. package/dist/collection/templates/nav.js +320 -0
  133. package/dist/collection/templates/site-header.js +642 -0
  134. package/dist/collection/templates/site-locales.js +771 -0
  135. package/dist/components/branch-date-dropdown.d.ts +11 -0
  136. package/dist/components/branch-date-dropdown.js +5 -0
  137. package/dist/components/branch-date-picker.d.ts +11 -0
  138. package/dist/components/branch-date-picker.js +5 -0
  139. package/dist/components/branch-slot-dropdown.js +1 -1
  140. package/dist/components/branch-slot-picker.js +1 -1
  141. package/dist/components/dead-stock-lookup.js +1 -1
  142. package/dist/components/distributor-lookup.js +1 -1
  143. package/dist/components/flexible-container.js +1 -1
  144. package/dist/components/form-checkbox.js +1 -1
  145. package/dist/components/form-date-picker.js +1 -1
  146. package/dist/components/form-dialog.js +1 -1
  147. package/dist/components/form-file.js +1 -1
  148. package/dist/components/form-input-preview.js +1 -1
  149. package/dist/components/form-input.js +1 -1
  150. package/dist/components/form-phone-number.js +1 -1
  151. package/dist/components/form-picker-input.js +1 -1
  152. package/dist/components/form-select.js +1 -1
  153. package/dist/components/form-shadow-input.js +1 -1
  154. package/dist/components/form-stepper-control.js +1 -1
  155. package/dist/components/form-stepper-submit.js +1 -1
  156. package/dist/components/form-stepper.js +1 -1
  157. package/dist/components/form-structure-error.js +1 -1
  158. package/dist/components/form-structure.js +1 -1
  159. package/dist/components/form-submit.js +1 -1
  160. package/dist/components/form-switch.js +1 -1
  161. package/dist/components/form-text-area.js +1 -1
  162. package/dist/components/form-time-picker.js +1 -1
  163. package/dist/components/form-vin-input.js +1 -1
  164. package/dist/components/general-form.js +1 -1
  165. package/dist/components/general-inquiry-form.js +1 -1
  166. package/dist/components/information-table.js +1 -1
  167. package/dist/components/loading-spinner.js +1 -1
  168. package/dist/components/manufacturer-lookup.js +1 -1
  169. package/dist/components/manufacturer-part-lookup.js +1 -1
  170. package/dist/components/p--lk4OUJg.js +5 -0
  171. package/dist/components/p-38ox9qxm.js +5 -0
  172. package/dist/components/p-5OD_mwiD.js +5 -0
  173. package/dist/components/{p-D7wRHBb3.js → p-68bjv9gT.js} +1 -1
  174. package/dist/components/p-B0_5_VvS.js +5 -0
  175. package/dist/components/p-B1xVBTqj.js +5 -0
  176. package/dist/components/{p-B0lK-5c_.js → p-B2bD-55K.js} +1 -1
  177. package/dist/components/{p-Bs5AIefE.js → p-BI5NL1Rh.js} +1 -1
  178. package/dist/components/{p-Be01Kv65.js → p-BPXRokES.js} +1 -1
  179. package/dist/components/{p-oZMLGlUq.js → p-BULuujHY.js} +1 -1
  180. package/dist/components/{p-B6EgLMus.js → p-BWlX-Nz-.js} +1 -1
  181. package/dist/components/p-Bc5HIbcj.js +5 -0
  182. package/dist/components/p-BcWJAP8j.js +5 -0
  183. package/dist/components/p-BpB_86n0.js +5 -0
  184. package/dist/components/p-BpHkd1L9.js +5 -0
  185. package/dist/components/{p-B0tcNl8W.js → p-BsnGFZeT.js} +1 -1
  186. package/dist/components/{p-B_jDD5xI.js → p-BvLVCp-j.js} +1 -1
  187. package/dist/components/p-C3KLOUbk.js +5 -0
  188. package/dist/components/{p-DgJ9CCPI.js → p-CJtTHErI.js} +1 -1
  189. package/dist/components/{p-DcB3e3j1.js → p-CMAmzdM7.js} +1 -1
  190. package/dist/components/p-CVpbr1tR.js +5 -0
  191. package/dist/components/{p-BVdlf8rx.js → p-CXbi5iPZ.js} +1 -1
  192. package/dist/components/p-C_1_eN4N.js +5 -0
  193. package/dist/components/{p-TtDq4UV5.js → p-Ce2mazYo.js} +1 -1
  194. package/dist/components/p-Cg6Prz81.js +5 -0
  195. package/dist/components/{p-l738xIxs.js → p-Cpjvk1pk.js} +1 -1
  196. package/dist/components/p-CqJiXtPb.js +5 -0
  197. package/dist/components/p-CrPyvAdX.js +5 -0
  198. package/dist/components/{p-C31A3MHr.js → p-CsU_c7eX.js} +1 -1
  199. package/dist/components/{p-Ci6k5mSb.js → p-D42YuMNZ.js} +1 -1
  200. package/dist/components/{p-Dhi7g1w3.js → p-DCpRGVqe.js} +1 -1
  201. package/dist/components/{p-D9pKibY5.js → p-DCsMDWbS.js} +1 -1
  202. package/dist/components/{p-BMnQwtNn.js → p-DQ0uTCi2.js} +1 -1
  203. package/dist/components/p-DTmI_Yx0.js +5 -0
  204. package/dist/components/p-DnspXuVN.js +5 -0
  205. package/dist/components/p-DqSdjh2n.js +5 -0
  206. package/dist/components/p-Dv2j7fhS.js +5 -0
  207. package/dist/components/{p-BUczNscD.js → p-K-OF4DG-.js} +1 -1
  208. package/dist/components/p-KSvRVGk-.js +5 -0
  209. package/dist/components/p-KbiYvxzP.js +5 -0
  210. package/dist/components/{p-DG-IgRFW.js → p-OY4Ixaeq.js} +1 -1
  211. package/dist/components/{p-BiaT4YFg.js → p-SIS25ChD.js} +1 -1
  212. package/dist/components/p-Wgb4y0H3.js +5 -0
  213. package/dist/components/p-X3AzJ0KD.js +5 -0
  214. package/dist/components/{p-gzdpekMI.js → p-bCeQwUKM.js} +1 -1
  215. package/dist/components/p-d3ZIPeEC.js +5 -0
  216. package/dist/components/{p-DlqfD7uh.js → p-ikaUQvOO.js} +1 -1
  217. package/dist/components/p-mbVTvSJF.js +5 -0
  218. package/dist/components/{p-DTdm5I7a.js → p-rQ3Z9EnS.js} +1 -1
  219. package/dist/components/{p-BmQrqnnJ.js → p-uYkn8a0m.js} +1 -1
  220. package/dist/components/part-lookup.js +1 -1
  221. package/dist/components/service-booking-form.js +1 -1
  222. package/dist/components/shift-accordion.js +1 -1
  223. package/dist/components/shift-checkbox.js +1 -1
  224. package/dist/components/shift-portal.js +1 -1
  225. package/dist/components/shift-select-dropdown.js +1 -1
  226. package/dist/components/shift-select.js +1 -1
  227. package/dist/components/shift-slider.js +1 -1
  228. package/dist/components/shift-switch.js +1 -1
  229. package/dist/components/shift-tab-content.js +1 -1
  230. package/dist/components/shift-tabs.js +1 -1
  231. package/dist/components/ssc-lookup-form.js +1 -1
  232. package/dist/components/test-drive-form.js +1 -1
  233. package/dist/components/vehicle-accessories.js +1 -1
  234. package/dist/components/vehicle-claimable-items.js +1 -1
  235. package/dist/components/vehicle-item-claim-form.js +1 -1
  236. package/dist/components/vehicle-lookup.js +1 -1
  237. package/dist/components/vehicle-paint-thickness.js +1 -1
  238. package/dist/components/vehicle-quotation-form.js +1 -1
  239. package/dist/components/vehicle-sale-information.js +1 -1
  240. package/dist/components/vehicle-service-history.js +1 -1
  241. package/dist/components/vehicle-specification.js +1 -1
  242. package/dist/components/vehicle-warranty-details.js +1 -1
  243. package/dist/components/vehicle-warranty-timeline.js +1 -1
  244. package/dist/components/vin-extractor.js +1 -1
  245. package/dist/esm/{branch-slot-dropdown_15.entry.js → branch-date-dropdown_17.entry.js} +957 -69
  246. package/dist/esm/dead-stock-lookup_3.entry.js +9 -9
  247. package/dist/esm/flexible-container.entry.js +3 -3
  248. package/dist/esm/form-checkbox.entry.js +2 -2
  249. package/dist/esm/form-date-picker.entry.js +5 -5
  250. package/dist/esm/form-input_7.entry.js +21 -19
  251. package/dist/esm/form-switch.entry.js +2 -2
  252. package/dist/esm/form-time-picker.entry.js +6 -6
  253. package/dist/esm/{functions-COLiDjnd.js → functions-DSwc1YVL.js} +44 -20
  254. package/dist/esm/general-form.entry.js +6 -6
  255. package/dist/esm/general-inquiry-form.entry.js +6 -6
  256. package/dist/esm/{get-local-language-CACck9dv.js → get-local-language-DdSAPSCV.js} +1 -1
  257. package/dist/esm/{get-mock-files-BEIYZlS_.js → get-mock-files-D4naDetb.js} +1 -1
  258. package/dist/esm/information-table.entry.js +1 -1
  259. package/dist/esm/loader.js +1 -1
  260. package/dist/esm/loading-spinner.entry.js +2 -2
  261. package/dist/esm/manufacturer-part-lookup.entry.js +3 -3
  262. package/dist/esm/{mappers-9IKbvPiR.js → mappers-CZs2R7k6.js} +54 -18
  263. package/dist/esm/part-lookup.entry.js +2 -2
  264. package/dist/esm/service-booking-form.entry.js +6 -6
  265. package/dist/esm/shift-accordion.entry.js +2 -2
  266. package/dist/esm/shift-checkbox.entry.js +2 -2
  267. package/dist/esm/shift-components.js +1 -1
  268. package/dist/esm/shift-slider.entry.js +1 -1
  269. package/dist/esm/shift-switch.entry.js +2 -2
  270. package/dist/esm/shift-tab-content.entry.js +2 -2
  271. package/dist/esm/shift-tabs_2.entry.js +92 -34
  272. package/dist/esm/ssc-lookup-form.entry.js +6 -6
  273. package/dist/esm/test-drive-form.entry.js +6 -6
  274. package/dist/esm/triangle-alert-BlnfPzWh.js +237 -0
  275. package/dist/esm/vehicle-accessories_8.entry.js +177 -117
  276. package/dist/esm/vehicle-lookup.entry.js +3 -3
  277. package/dist/esm/vehicle-quotation-form.entry.js +17 -18
  278. package/dist/integration-manifest.json +1 -1
  279. package/dist/locales/vehicleLookup/serviceHistory/en.json +2 -2
  280. package/dist/shift-components/{p-a91ed0fc.entry.js → p-0b576888.entry.js} +1 -1
  281. package/dist/shift-components/p-11ffa908.entry.js +5 -0
  282. package/dist/shift-components/{p-b2048d87.entry.js → p-152057de.entry.js} +1 -1
  283. package/dist/shift-components/p-198333fa.entry.js +5 -0
  284. package/dist/shift-components/{p-537507ee.entry.js → p-247ac2db.entry.js} +1 -1
  285. package/dist/shift-components/{p-1923fdb9.entry.js → p-295e445f.entry.js} +1 -1
  286. package/dist/shift-components/p-431522f2.entry.js +5 -0
  287. package/dist/shift-components/{p-b1270d98.entry.js → p-49dc6d73.entry.js} +1 -1
  288. package/dist/shift-components/{p-ac91d4ce.entry.js → p-4b6f801a.entry.js} +1 -1
  289. package/dist/shift-components/{p-6263bc0c.entry.js → p-4cdeab63.entry.js} +1 -1
  290. package/dist/shift-components/{p-829f24b9.entry.js → p-52530fba.entry.js} +1 -1
  291. package/dist/shift-components/p-5ad4d072.entry.js +5 -0
  292. package/dist/shift-components/{p-a0d13479.entry.js → p-5e8e5ed7.entry.js} +1 -1
  293. package/dist/shift-components/{p-65aad39b.entry.js → p-68e41217.entry.js} +1 -1
  294. package/dist/shift-components/{p-f2b86186.entry.js → p-76b0ea8c.entry.js} +1 -1
  295. package/dist/shift-components/{p-fdf94f65.entry.js → p-85d43a41.entry.js} +1 -1
  296. package/dist/shift-components/p-B9INqdFT.js +5 -0
  297. package/dist/shift-components/p-BkVfhjgg.js +5 -0
  298. package/dist/shift-components/{p--JyU3LyU.js → p-D2Ofzg_i.js} +1 -1
  299. package/dist/shift-components/p-DDtDRGFL.js +5 -0
  300. package/dist/shift-components/{p-jmNTa9tM.js → p-OfPuHUYc.js} +1 -1
  301. package/dist/shift-components/p-b44b2c00.entry.js +5 -0
  302. package/dist/shift-components/{p-48a9feb9.entry.js → p-b4544d10.entry.js} +1 -1
  303. package/dist/shift-components/{p-853f1b8b.entry.js → p-bfe0661c.entry.js} +1 -1
  304. package/dist/shift-components/{p-e7a99998.entry.js → p-c7fc8d5f.entry.js} +1 -1
  305. package/dist/shift-components/{p-bb172fc4.entry.js → p-ca0683e9.entry.js} +1 -1
  306. package/dist/shift-components/{p-cfcfdb20.entry.js → p-cbdc1c2e.entry.js} +1 -1
  307. package/dist/shift-components/p-d3bbba07.entry.js +5 -0
  308. package/dist/shift-components/{p-ec2a7d65.entry.js → p-df0c7ac1.entry.js} +1 -1
  309. package/dist/shift-components/p-f4679148.entry.js +5 -0
  310. package/dist/shift-components/{p-c4cf0a18.entry.js → p-feb443ec.entry.js} +1 -1
  311. package/dist/shift-components/shift-components.esm.js +1 -1
  312. package/dist/stencil-docs.json +1677 -12
  313. package/dist/templates/production-host/vehicle-service-history.html +14 -0
  314. package/dist/types/components/form-elements/branch-date-dropdown.d.ts +74 -0
  315. package/dist/types/components/form-elements/branch-date-picker.d.ts +174 -0
  316. package/dist/types/components/form-elements/branch-slot-dropdown.d.ts +6 -0
  317. package/dist/types/components/form-elements/branch-slot-picker.d.ts +27 -0
  318. package/dist/types/components/forms/defaults/mappers.d.ts +15 -9
  319. package/dist/types/components/vehicle-lookup/components/claimable-item-popover.d.ts +10 -1
  320. package/dist/types/components/vehicle-lookup/components/claimable-trace-modal.d.ts +3 -0
  321. package/dist/types/components/vehicle-lookup/vehicle-claimable-items.d.ts +14 -4
  322. package/dist/types/components/vehicle-lookup/vehicle-item-claim-form.d.ts +23 -3
  323. package/dist/types/components.d.ts +533 -6
  324. package/dist/types/features/form-hook/functions.d.ts +14 -0
  325. package/dist/types/global/lib/overlay.d.ts +61 -0
  326. package/dist/types/global/lib/slot-day-rules.d.ts +25 -0
  327. package/dist/types/locales/vehicleLookup/serviceHistory/type.d.ts +2 -2
  328. package/dist/types/locales/vehicleLookup/warrantyTimeline/type.d.ts +4 -4
  329. package/dist/types/locales/vehicleLookup/wrapper-type.d.ts +2 -2
  330. package/package.json +15 -3
  331. package/dist/cjs/triangle-alert-BjQBwsRv.js +0 -92
  332. package/dist/components/p-BQHywBX6.js +0 -5
  333. package/dist/components/p-Bb4mauUH.js +0 -5
  334. package/dist/components/p-Bl_BMBad.js +0 -5
  335. package/dist/components/p-BogCz_yJ.js +0 -5
  336. package/dist/components/p-BvFDjUZZ.js +0 -5
  337. package/dist/components/p-C2trAVtF.js +0 -5
  338. package/dist/components/p-CCuYl9VQ.js +0 -5
  339. package/dist/components/p-CNqcMKLv.js +0 -5
  340. package/dist/components/p-CZWmJ1vV.js +0 -5
  341. package/dist/components/p-Cg4l7ICV.js +0 -5
  342. package/dist/components/p-Ci6LbIzY.js +0 -5
  343. package/dist/components/p-CuTemmgW.js +0 -5
  344. package/dist/components/p-D0oXezbg.js +0 -5
  345. package/dist/components/p-DBKG_o1-.js +0 -5
  346. package/dist/components/p-Dlm9wHfQ.js +0 -5
  347. package/dist/components/p-DsMy6H9e.js +0 -5
  348. package/dist/components/p-Dseg250d.js +0 -5
  349. package/dist/components/p-EVz84xxv.js +0 -5
  350. package/dist/components/p-SnXklPq9.js +0 -5
  351. package/dist/components/p-k8G1hnHC.js +0 -5
  352. package/dist/components/p-uPiGNvhQ.js +0 -5
  353. package/dist/esm/triangle-alert-Brtqhx2d.js +0 -86
  354. package/dist/shift-components/p-34dffc00.entry.js +0 -5
  355. package/dist/shift-components/p-6fa1121c.entry.js +0 -5
  356. package/dist/shift-components/p-782fe0e1.entry.js +0 -5
  357. package/dist/shift-components/p-9a6450f6.entry.js +0 -5
  358. package/dist/shift-components/p-B9kqtQjS.js +0 -5
  359. package/dist/shift-components/p-D0Md1Xf7.js +0 -5
  360. package/dist/shift-components/p-c66b18c9.entry.js +0 -5
  361. package/dist/shift-components/p-c9a7e5ab.entry.js +0 -5
  362. package/dist/shift-components/p-fa7a961c.entry.js +0 -5
  363. package/dist/shift-components/p-hABirfUj.js +0 -5
  364. /package/dist/collection/templates/{vehicle-lookup → prototypes}/prototype-assets/extended-warranty/adp-logo.svg +0 -0
@@ -1,9 +1,23 @@
1
1
  <!doctype html>
2
+ <!--
3
+ HOST INTEGRATION TEMPLATE — deliberately plain.
4
+
5
+ This is a copy-paste starting point for an integrator, not a demo. It loads the
6
+ package from the CDN the way a real host would and does nothing else: no
7
+ harness, no Tailwind, no Alpine, no theming. Anything added here is something
8
+ the integrator would have to delete.
9
+
10
+ `{{ADP_WEB_COMPONENTS_VERSION}}` and `{{VEHICLE_LOOKUP_BASE_URL}}` are meant to
11
+ be substituted. Demos that exercise the component live under
12
+ src/templates/vehicle-lookup/.
13
+ -->
2
14
  <html lang="en">
3
15
  <head>
4
16
  <meta charset="UTF-8" />
5
17
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
18
  <title>Vehicle service history host</title>
19
+
20
+ <meta name="adp-publish" content="false" />
7
21
  </head>
8
22
  <body>
9
23
  <label for="vin">VIN</label>
@@ -0,0 +1,74 @@
1
+ import { BranchSlotDay } from './branch-slot-dropdown';
2
+ export interface BranchDateDropdownCopy {
3
+ date: string;
4
+ time: string;
5
+ slots: string;
6
+ empty: string;
7
+ error: string;
8
+ retry: string;
9
+ back: string;
10
+ noTimes: string;
11
+ closed: string;
12
+ }
13
+ /** Which half of the sliding track is in view. */
14
+ export type BranchDateStep = 'date' | 'time';
15
+ /**
16
+ * Panel half of `branch-date-picker`.
17
+ *
18
+ * Two panes on one horizontal track — a month grid, then that day's times —
19
+ * rather than the two stacked sections `branch-slot-dropdown` uses. Only one
20
+ * decision is on screen at a time, which is the point of the date-picker
21
+ * variant: a customer who has met a month calendar before recognises step one
22
+ * immediately, and step two arrives already scoped to the day they picked.
23
+ *
24
+ * Mounted on `document.body` by `shift-portal` and positioned through the
25
+ * `--branch-date-*` variables the picker sets, exactly as the slot panel is.
26
+ */
27
+ export declare class BranchDateDropdown {
28
+ name?: string;
29
+ isOpen: boolean;
30
+ direction: string;
31
+ status: 'idle' | 'loading' | 'ready' | 'empty' | 'error';
32
+ /** Bookable days, already de-duplicated, sorted and rule-marked by the picker. */
33
+ days: BranchSlotDay[];
34
+ /** The month on screen, as `YYYY-MM`. */
35
+ monthKey: string;
36
+ /** `1` when the last month change went forward, `-1` back. Drives the slide. */
37
+ monthDirection: number;
38
+ canGoPrev: boolean;
39
+ canGoNext: boolean;
40
+ step: BranchDateStep;
41
+ activeDate: string;
42
+ selectedRaw: string;
43
+ today: string;
44
+ /** `0` Sunday … `6` Saturday — resolved from the locale by the picker. */
45
+ weekStart: number;
46
+ idleText?: string;
47
+ copy: BranchDateDropdownCopy;
48
+ formatDay: (date: string, options: Intl.DateTimeFormatOptions) => string;
49
+ formatMonth: (monthKey: string) => string;
50
+ formatWeekday: (weekday: number) => string;
51
+ displayTime: (raw: string) => string;
52
+ handleMonth: (delta: number) => void;
53
+ handleDate: (date: string) => void;
54
+ handleTime: (raw: string) => void;
55
+ handleBack: () => void;
56
+ handleRetry: () => void;
57
+ /** Tapping the sheet scrim. Unused above 600px, where the scrim is hidden. */
58
+ handleDismiss?: () => void;
59
+ setElementRef?: (el: HTMLElement | null) => void;
60
+ private containerEl;
61
+ componentDidLoad(): void;
62
+ disconnectedCallback(): void;
63
+ private get dayMap();
64
+ /**
65
+ * The visible month as a flat list of ISO dates, padded with nulls so the
66
+ * first of the month lands under its own weekday column.
67
+ */
68
+ private monthCells;
69
+ private renderMessage;
70
+ private renderSkeleton;
71
+ private renderCalendarPane;
72
+ private renderTimePane;
73
+ render(): any;
74
+ }
@@ -0,0 +1,174 @@
1
+ import { EventEmitter } from '../../stencil-public-runtime';
2
+ import { FormHook } from "../../features/form-hook/form-hook";
3
+ import { FormElement, FormInputLocalization } from "../../features/form-hook/index";
4
+ import { LanguageKeys } from "../../features/multi-lingual/index";
5
+ import { BranchSlotDay } from './branch-slot-dropdown';
6
+ import { BranchDateStep } from './branch-date-dropdown';
7
+ import { BranchSlotSelection } from './branch-slot-picker';
8
+ type Status = 'idle' | 'loading' | 'ready' | 'empty' | 'error';
9
+ /**
10
+ * Branch-aware booking slot field, month-calendar variant.
11
+ *
12
+ * Same contract and same data as `branch-slot-picker` — the same endpoint, the
13
+ * same `slotChange` payload, the same standalone-without-a-form behaviour. The
14
+ * difference is entirely in the panel: a month grid first, then that day's
15
+ * times, on a sliding track. Customers who have never used a horizontal day
16
+ * strip have used a month calendar, and the second step arrives already scoped
17
+ * to one day rather than sitting under the first.
18
+ *
19
+ * The two are meant to be interchangeable, so a deployment can pick whichever
20
+ * its audience reads faster without anything downstream changing.
21
+ */
22
+ export declare class BranchDatePicker implements FormElement {
23
+ /** Field name. Only meaningful when `form` is supplied. */
24
+ name: string;
25
+ /** Optional — omit for standalone use and listen to `slotChange` instead. */
26
+ form?: FormHook<any>;
27
+ /** Full URL of the calendar endpoint, e.g. `https://…/api/public/calendar`. */
28
+ calendarApi: string;
29
+ /** Integration ids. The field stays idle until all four are present. */
30
+ companyId: string;
31
+ branchId: string;
32
+ departmentId: string;
33
+ brandId: string;
34
+ /** How far ahead to ask. The endpoint caps its own response at 15 days. */
35
+ daysAhead: number;
36
+ /**
37
+ * Weekdays the branch never books on, `0` Sunday … `6` Saturday. Accepts an
38
+ * array or a `"5,6"` string. Matching days stay on the grid, struck through,
39
+ * rather than being dropped — see `~lib/slot-day-rules`.
40
+ */
41
+ disabledWeekdays?: string | number[];
42
+ /** One-off blackout dates as `YYYY-MM-DD`, same accepted shapes as above. */
43
+ disabledDates?: string | string[];
44
+ /**
45
+ * First column of the grid, `0` Sunday … `6` Saturday. Left unset it comes
46
+ * from the active locale, which is right far more often than any constant.
47
+ */
48
+ weekStartsOn?: number;
49
+ /** Gap between the trigger and the panel, matching shift-select's default. */
50
+ gap: number;
51
+ /**
52
+ * Floor for the panel width on desktop. The panel is portaled to `<body>` and
53
+ * positioned fixed, so it is free to be wider than the field — and than the
54
+ * form around it — which is the point: seven columns stop reading as a
55
+ * calendar much below this, and form fields are routinely narrower.
56
+ */
57
+ minPanelWidth: number;
58
+ /** Tallest the panel may get before its panes scroll. Also capped to the viewport. */
59
+ maxPanelHeight: number;
60
+ label?: string;
61
+ wrapperId: string;
62
+ wrapperClass: string;
63
+ isRequired: boolean;
64
+ isDisabled: boolean;
65
+ language: LanguageKeys;
66
+ localization?: FormInputLocalization;
67
+ /** Preselects a slot, in the same `YYYY-MM-DDTHH:mm` form the field emits. */
68
+ defaultValue?: string;
69
+ status: Status;
70
+ days: BranchSlotDay[];
71
+ selectedDate: string;
72
+ selectedRaw: string;
73
+ isOpen: boolean;
74
+ dropdownAncestorClasses: string;
75
+ /**
76
+ * The day whose times are on the second pane. Kept apart from `selectedDate`
77
+ * so browsing the calendar and then dismissing the panel leaves the committed
78
+ * selection untouched.
79
+ */
80
+ draftDate: string;
81
+ step: BranchDateStep;
82
+ /** Month on screen as `YYYY-MM`, and which way the last change travelled. */
83
+ monthKey: string;
84
+ monthDirection: number;
85
+ /** Fires on every confirmed day+time selection. The standalone contract. */
86
+ slotChange: EventEmitter<BranchSlotSelection>;
87
+ el: HTMLElement;
88
+ /**
89
+ * The response as it arrived, before the disable rules are layered on. Kept so
90
+ * a rule change re-decorates without a refetch.
91
+ */
92
+ private fetchedDays;
93
+ private abortController?;
94
+ private dropdownEl;
95
+ private lockedScrollY;
96
+ private boundKeyDown;
97
+ componentWillLoad(): void;
98
+ componentDidLoad(): void;
99
+ disconnectedCallback(): void;
100
+ onOpenChange(isOpen: boolean): void;
101
+ /**
102
+ * Pinning the body position rather than just hiding overflow: on iOS,
103
+ * `overflow: hidden` alone still lets the page rubber-band behind the sheet.
104
+ */
105
+ private lockScroll;
106
+ private releaseScroll;
107
+ onRulesChange(): void;
108
+ onTargetChange(): void;
109
+ /** FormElement contract. */
110
+ reset(newValue?: unknown): void;
111
+ getValue(): string;
112
+ /** Lets a host force a refetch, e.g. after a token refresh. */
113
+ refresh(): Promise<void>;
114
+ openDropdown(): Promise<void>;
115
+ closeDropdown(): Promise<void>;
116
+ private get isRtl();
117
+ private get copy();
118
+ private get intlLocales();
119
+ /**
120
+ * `0` Sunday … `6` Saturday. `getWeekInfo` is the only thing that knows the
121
+ * region's answer; it is missing on older WebViews, hence the guard and the
122
+ * Monday default the rest of Intl assumes.
123
+ */
124
+ private get weekStart();
125
+ private pad;
126
+ private get todayIso();
127
+ /** `2026-08-13 09:00 AM` → minutes since midnight. */
128
+ private minutesOf;
129
+ private toFormValue;
130
+ private displayTime;
131
+ private formatDay;
132
+ private formatMonth;
133
+ /** 7 January 2024 was a Sunday, so it indexes weekdays without a lookup table. */
134
+ private formatWeekday;
135
+ private queryUrl;
136
+ /**
137
+ * Overlapping work periods of equal priority make the endpoint emit the same
138
+ * slot more than once, and a merged response is not necessarily ordered. Both
139
+ * are fixed here rather than in the panel, so anything reading `days` gets
140
+ * clean data.
141
+ */
142
+ private normalise;
143
+ /** Layers the disable rules over the response without discarding anything. */
144
+ private applyDayRules;
145
+ private firstOpenDay;
146
+ private lastOpenDay;
147
+ private load;
148
+ private setDropdownRef;
149
+ private getTriggerEl;
150
+ private isTriggerInView;
151
+ /**
152
+ * Below this width the panel is a bottom sheet pinned to the viewport, so it
153
+ * is not anchored to anything and none of the positioning below applies. Kept
154
+ * in sync with the media query in branch-date-dropdown.css.
155
+ */
156
+ private get isSheet();
157
+ /** Anchor to the trigger, flip up when space below is short. */
158
+ private adjustDropdownPosition;
159
+ private handleResize;
160
+ private handleScroll;
161
+ private handleKeyDown;
162
+ private closeOnOutsideClick;
163
+ private toggle;
164
+ private get monthBounds();
165
+ /** Months with nothing bookable in them are not worth walking into. */
166
+ private handleMonth;
167
+ private handleDate;
168
+ private handleBack;
169
+ private handleTime;
170
+ /** What the trigger shows: the committed slot, or why it cannot be opened. */
171
+ private triggerText;
172
+ render(): any;
173
+ }
174
+ export {};
@@ -2,6 +2,12 @@
2
2
  export interface BranchSlotDay {
3
3
  date: string;
4
4
  times: string[];
5
+ /**
6
+ * Returned by the branch but not bookable — a blackout date or a weekday the
7
+ * deployment never takes bookings on. Rendered greyed rather than removed so
8
+ * the customer sees the day exists.
9
+ */
10
+ disabled?: boolean;
5
11
  }
6
12
  export interface BranchSlotDropdownCopy {
7
13
  day: string;
@@ -37,8 +37,26 @@ export declare class BranchSlotPicker implements FormElement {
37
37
  brandId: string;
38
38
  /** How far ahead to ask. The endpoint caps its own response at 15 days. */
39
39
  daysAhead: number;
40
+ /**
41
+ * Weekdays the branch never books on, `0` Sunday … `6` Saturday. Accepts an
42
+ * array or a `"5,6"` string. Matching days stay visible but unselectable —
43
+ * see `~lib/slot-day-rules` for why they are not simply dropped.
44
+ */
45
+ disabledWeekdays?: string | number[];
46
+ /** One-off blackout dates as `YYYY-MM-DD`, same accepted shapes as above. */
47
+ disabledDates?: string | string[];
40
48
  /** Gap between the trigger and the panel, matching shift-select's default. */
41
49
  gap: number;
50
+ /**
51
+ * Floor for the panel width on desktop. The panel is portaled to `<body>` and
52
+ * positioned fixed, so it is free to be wider than the field — and than the
53
+ * form around it — which is the point: a two-column form gives the field
54
+ * ~320px, which squeezed the day strip and the time grid into something that
55
+ * read as clipped. Capped to the viewport at open time.
56
+ */
57
+ minPanelWidth: number;
58
+ /** Tallest the panel may get before it scrolls. Also capped to the viewport. */
59
+ maxPanelHeight: number;
42
60
  label?: string;
43
61
  wrapperId: string;
44
62
  wrapperClass: string;
@@ -63,6 +81,11 @@ export declare class BranchSlotPicker implements FormElement {
63
81
  /** Fires on every confirmed day+time selection. The standalone contract. */
64
82
  slotChange: EventEmitter<BranchSlotSelection>;
65
83
  el: HTMLElement;
84
+ /**
85
+ * The response as it arrived, before the disable rules are layered on. Kept so
86
+ * a rule change re-decorates without a refetch.
87
+ */
88
+ private fetchedDays;
66
89
  private abortController?;
67
90
  private dropdownEl;
68
91
  private lockedScrollY;
@@ -77,6 +100,7 @@ export declare class BranchSlotPicker implements FormElement {
77
100
  */
78
101
  private lockScroll;
79
102
  private releaseScroll;
103
+ onRulesChange(): void;
80
104
  onTargetChange(): void;
81
105
  /** FormElement contract. */
82
106
  reset(newValue?: unknown): void;
@@ -102,6 +126,9 @@ export declare class BranchSlotPicker implements FormElement {
102
126
  * panel, so anything reading `days` gets clean data.
103
127
  */
104
128
  private normalise;
129
+ /** Layers the disable rules over the response without discarding anything. */
130
+ private applyDayRules;
131
+ private firstOpenDay;
105
132
  private load;
106
133
  private setDropdownRef;
107
134
  private getTriggerEl;
@@ -63,21 +63,27 @@ export declare const getFormMappers: (extraMappers?: Record<string, (prop: any)
63
63
  props: any;
64
64
  }) => any;
65
65
  /**
66
- * Branch-aware booking slot. Unlike `time` below — which builds a fixed ladder
67
- * from min/max/span and is therefore identical at every branch on every day —
68
- * this asks the branch's own calendar what is actually open.
69
- *
70
- * The branch comes from the `companyBranchId` field's selected option, whose
71
- * `meta` is the whole branch record, so company / department / brand need no
72
- * extra configuration. Department resolves against the branch's own list
73
- * rather than being hardcoded: asking a branch for a department it does not
74
- * have returns an empty calendar.
66
+ * Branch-aware booking slot, day-strip variant. Unlike `time` below — which
67
+ * builds a fixed ladder from min/max/span and is therefore identical at every
68
+ * branch on every day — this asks the branch's own calendar what is actually
69
+ * open.
75
70
  */
76
71
  bookingSlot: ({ form, language, props }: {
77
72
  form: any;
78
73
  language: any;
79
74
  props: any;
80
75
  }) => any;
76
+ /**
77
+ * The same booking slot, month-calendar variant: a date picker that slides to
78
+ * that day's times. Identical data, identical submitted value — the two are
79
+ * interchangeable, so a deployment can run whichever its audience reads
80
+ * faster without anything downstream changing.
81
+ */
82
+ bookingDate: ({ form, language, props }: {
83
+ form: any;
84
+ language: any;
85
+ props: any;
86
+ }) => any;
81
87
  time: ({ language, props }: {
82
88
  language: any;
83
89
  props: any;
@@ -14,12 +14,21 @@ type ClaimableItemPopoverProps = {
14
14
  popoverHeight: number;
15
15
  target: PopoverTarget;
16
16
  fadingOut: boolean;
17
- contentFading: boolean;
17
+ /** Held for the length of a hover-to-hover cross-fade; drives which layer is opaque. */
18
+ swapping: boolean;
19
+ /** The previously hovered item, rendered underneath while it fades out. */
20
+ outgoingItem?: VehicleServiceItemDTO;
21
+ /** Bumped on every item change so the vdom mounts a fresh layer instead of patching the old one. */
22
+ layerKey: number;
23
+ /** Cross-fade + resize duration, in ms. Drives the CSS transitions and the outgoing-layer timer. */
24
+ swapMs: number;
18
25
  bodyContentHeight: number;
19
26
  claim: (item: VehicleServiceItemDTO) => void;
20
27
  locale: ComponentLocale<typeof dynamicClaimSchema>;
21
28
  onMouseEnter: () => void;
22
29
  onMouseLeave: () => void;
30
+ /** Handed back so the owner can promote it into the top layer when a host ancestor would clip it. */
31
+ rootRef: (element: HTMLElement) => void;
23
32
  };
24
33
  export declare const ClaimableItemPopover: FunctionalComponent<ClaimableItemPopoverProps>;
25
34
  export {};
@@ -10,6 +10,9 @@ type ClaimableTraceModalProps = {
10
10
  traceHtml?: string;
11
11
  locale: ComponentLocale<typeof dynamicClaimSchema>;
12
12
  onClose: () => void;
13
+ /** Handed back so the owner can showModal()/close() it — see openTraceModal. */
14
+ dialogRef: (element: HTMLDialogElement) => void;
15
+ onCancel: (event: Event) => void;
13
16
  };
14
17
  export declare const ClaimableTraceModal: FunctionalComponent<ClaimableTraceModalProps>;
15
18
  export {};
@@ -53,7 +53,9 @@ export declare class VehicleClaimableItems implements MultiLingual, VehicleInfoL
53
53
  popoverTarget: PopoverTarget;
54
54
  popoverHeight: number;
55
55
  popoverBodyContentHeight: number;
56
- popoverContentFading: boolean;
56
+ popoverSwapping: boolean;
57
+ outgoingClaimItem?: VehicleServiceItemDTO;
58
+ popoverLayerKey: number;
57
59
  popoverFadingOut: boolean;
58
60
  showTraceModal: boolean;
59
61
  traceModalFadingOut: boolean;
@@ -62,12 +64,14 @@ export declare class VehicleClaimableItems implements MultiLingual, VehicleInfoL
62
64
  traceHtml?: string;
63
65
  claimForm: VehicleItemClaimForm;
64
66
  private traceAbortController?;
65
- private traceCloseListener?;
67
+ private traceDialogEl?;
68
+ private releaseTraceFallbacks?;
66
69
  private traceFadeOutTimeoutRef;
67
70
  private popoverAnchorEl;
71
+ private popoverEl?;
68
72
  private popoverCloseTimeoutRef;
69
73
  private popoverHideTimeoutRef;
70
- private popoverContentSwapTimeoutRef;
74
+ private popoverSwapEndTimeoutRef;
71
75
  private progressBar;
72
76
  private claimableItemsBox;
73
77
  private tabAnimationTimeoutRef;
@@ -96,11 +100,15 @@ export declare class VehicleClaimableItems implements MultiLingual, VehicleInfoL
96
100
  private activateClaimItem;
97
101
  private printLastClaimResponse;
98
102
  updatePopoverLocation: () => void;
103
+ private onViewportChange;
99
104
  private measurePopoverHeight;
105
+ private currentPopoverInner;
100
106
  private measurePopoverContentHeight;
101
107
  private static readonly POPOVER_CLOSE_DELAY_MS;
102
108
  private static readonly POPOVER_FADE_OUT_MS;
103
- private static readonly POPOVER_CONTENT_FADE_MS;
109
+ /** Cross-fade + resize duration. Handed to the popover as --popover-swap, so this one number
110
+ * drives both the CSS transitions and the timer that drops the outgoing layer. */
111
+ private static readonly POPOVER_SWAP_MS;
104
112
  private static readonly TRACE_FADE_OUT_MS;
105
113
  setClaimableItemPopover: (showPopover: boolean, claimableItem?: VehicleServiceItemDTO, anchorEl?: HTMLElement) => void;
106
114
  private onPopoverMouseEnter;
@@ -108,6 +116,8 @@ export declare class VehicleClaimableItems implements MultiLingual, VehicleInfoL
108
116
  openTrace(): Promise<void>;
109
117
  private openTraceModal;
110
118
  private closeTraceModal;
119
+ /** Escape would drop the panel out of the top layer in one frame; close it through the fade. */
120
+ private onTraceCancel;
111
121
  completeClaim(response: any): Promise<void>;
112
122
  handleClaim: (documents: File[], payload: ItemClaimDTO) => Promise<void>;
113
123
  handleDevClaim: (documents: File[]) => Promise<void>;
@@ -6,7 +6,6 @@ import { ItemClaimDTO } from '../../global/types/generated/vehicle-lookup/item-c
6
6
  export declare class VehicleItemClaimForm implements ImageViewerInterface {
7
7
  expandedImage?: string;
8
8
  originalImage: HTMLImageElement;
9
- onImageViewerToggles(newValue: string | null): void;
10
9
  vin?: string;
11
10
  item?: VehicleServiceItemDTO;
12
11
  maximumDocumentFileSizeInMb: number;
@@ -20,6 +19,7 @@ export declare class VehicleItemClaimForm implements ImageViewerInterface {
20
19
  isOpened: boolean;
21
20
  isLoading: boolean;
22
21
  compact: boolean;
22
+ claimLabelWidth: number;
23
23
  claimError: string;
24
24
  confirmationStates: Record<string, boolean>;
25
25
  errors: Record<string, {
@@ -28,13 +28,23 @@ export declare class VehicleItemClaimForm implements ImageViewerInterface {
28
28
  }>;
29
29
  inputs: Record<string, any>;
30
30
  el: HTMLElement;
31
- private closeModalListenerRef;
31
+ private dialogEl?;
32
+ private releaseEscapeFallback?;
32
33
  /** Full-mode stage padding (18px × 2) — the voucher must fit inside it to stay full-size. */
33
34
  private static readonly STAGE_PADDING;
34
35
  private voucherResizeObserver?;
35
36
  private observedVoucherEl?;
36
37
  private suppressMeasure;
37
- private onWindowKeyDown;
38
+ private idleClaimLabelEl?;
39
+ private busyClaimLabelEl?;
40
+ private claimLabelResizeObserver?;
41
+ private observedClaimLabels;
42
+ private releaseOpenFallbacks;
43
+ /**
44
+ * Escape reaches a modal dialog as a cancel event. Always prevented: the platform would drop the
45
+ * card out of the top layer in one frame, and close() needs the fade-out to run first.
46
+ */
47
+ private onDialogCancel;
38
48
  private onWindowResize;
39
49
  open(): Promise<void>;
40
50
  onIsLoadingChange(newValue: boolean): void;
@@ -48,6 +58,16 @@ export declare class VehicleItemClaimForm implements ImageViewerInterface {
48
58
  showError(message: string): Promise<void>;
49
59
  private dismissError;
50
60
  componentDidRender(): void;
61
+ /**
62
+ * The claim button grows from CLAIM to PROCESSING and shrinks back. A width that follows its own
63
+ * content never fires a transition — the box is simply laid out at the new size — so the active
64
+ * caption is measured and the width set explicitly, which is a value change the browser will
65
+ * animate. Both captions stay mounted and stacked in one cell so the one being measured is always
66
+ * laid out, and so the check icon does not mount and unmount underneath the swap.
67
+ */
68
+ private measureClaimLabel;
69
+ private observeClaimLabels;
70
+ connectedCallback(): void;
51
71
  disconnectedCallback(): void;
52
72
  /**
53
73
  * Vertical compact is MEASURED, never a fixed media query: render full-size,