adp-web-components 0.1.59 → 0.1.60

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 (295) hide show
  1. package/dist/cjs/dead-stock-lookup_3.cjs.entry.js +7 -6
  2. package/dist/cjs/flexible-container.cjs.entry.js +1 -1
  3. package/dist/cjs/form-checkbox.cjs.entry.js +9 -5
  4. package/dist/cjs/form-date-picker.cjs.entry.js +2 -2
  5. package/dist/cjs/form-dialog_8.cjs.entry.js +40 -36
  6. package/dist/cjs/{form-error-message-CrGiKsoO.js → form-error-message-B2s83XoL.js} +1 -1
  7. package/dist/cjs/form-input-BZp9_abd.js +24 -0
  8. package/dist/cjs/form-input_4.cjs.entry.js +24 -18
  9. package/dist/cjs/form-switch.cjs.entry.js +9 -5
  10. package/dist/cjs/form-time-picker.cjs.entry.js +2 -2
  11. package/dist/cjs/general-inquiry-form.cjs.entry.js +24 -22
  12. package/dist/cjs/get-local-language-DV1oVchQ.js +194 -0
  13. package/dist/cjs/information-table.cjs.entry.js +1 -1
  14. package/dist/cjs/{loader-icon-qrSyqpQO.js → loader-icon-OTnFBvzm.js} +1150 -263
  15. package/dist/cjs/loader.cjs.js +1 -1
  16. package/dist/cjs/loading-spinner.cjs.entry.js +1 -1
  17. package/dist/cjs/manufacturer-part-lookup.cjs.entry.js +8 -7
  18. package/dist/cjs/part-lookup.cjs.entry.js +6 -5
  19. package/dist/cjs/service-booking-form.cjs.entry.js +11 -9
  20. package/dist/cjs/shift-checkbox.cjs.entry.js +1 -1
  21. package/dist/cjs/shift-components.cjs.js +1 -1
  22. package/dist/cjs/shift-switch.cjs.entry.js +1 -1
  23. package/dist/cjs/shift-tab-content.cjs.entry.js +1 -1
  24. package/dist/cjs/shift-tabs_2.cjs.entry.js +2 -2
  25. package/dist/cjs/ssc-lookup-form.cjs.entry.js +11 -9
  26. package/dist/cjs/state-object-DFBHdqbr.js +172 -0
  27. package/dist/cjs/test-drive-form.cjs.entry.js +11 -9
  28. package/dist/cjs/{type-BqNpIYcE.js → type-BSH0OxyO.js} +3 -3
  29. package/dist/cjs/{type-B8LchmnL.js → type-BvWomz0N.js} +2 -2
  30. package/dist/cjs/{type-BrzZ5GMr.js → type-NRLY9OsL.js} +9 -9
  31. package/dist/cjs/{get-local-language-CMptyFxH.js → types-B3WMBBhs.js} +4 -187
  32. package/dist/cjs/validation-BxmICJwK.js +89 -0
  33. package/dist/cjs/vehicle-accessories_7.cjs.entry.js +18 -17
  34. package/dist/cjs/vehicle-lookup.cjs.entry.js +6 -5
  35. package/dist/cjs/vehicle-quotation-form.cjs.entry.js +15 -14
  36. package/dist/collection/collection-manifest.json +1 -1
  37. package/dist/collection/components/components/empty.css +1 -1
  38. package/dist/collection/components/components/flexible-container.css +1 -1
  39. package/dist/collection/components/components/information-table.css +1 -1
  40. package/dist/collection/components/components/loading-spinner.css +1 -1
  41. package/dist/collection/components/components/shift-tab-content.css +1 -1
  42. package/dist/collection/components/components/shift-tabs.css +1 -1
  43. package/dist/collection/components/form-elements/components/form-error-message.js +1 -1
  44. package/dist/collection/components/form-elements/form-checkbox.js +29 -4
  45. package/dist/collection/components/form-elements/form-input.js +30 -5
  46. package/dist/collection/components/form-elements/form-inputs.css +1 -1
  47. package/dist/collection/components/form-elements/form-phone-number.js +30 -5
  48. package/dist/collection/components/form-elements/form-picker-input.js +30 -5
  49. package/dist/collection/components/form-elements/form-select.js +30 -4
  50. package/dist/collection/components/form-elements/form-submit.js +31 -4
  51. package/dist/collection/components/form-elements/form-switch.js +29 -4
  52. package/dist/collection/components/form-elements/form-text-area.js +32 -6
  53. package/dist/collection/components/form-elements/form-vin-input.js +53 -9
  54. package/dist/collection/components/forms/defaults/mappers.js +58 -46
  55. package/dist/collection/components/forms/defaults/style.css +1 -1
  56. package/dist/collection/components/forms/defaults/validation.js +73 -75
  57. package/dist/collection/components/forms/general-inquiry.js +20 -20
  58. package/dist/collection/components/forms/service-booking.js +6 -7
  59. package/dist/collection/components/forms/ssc-lookup.js +6 -7
  60. package/dist/collection/components/forms/test-drive.js +6 -7
  61. package/dist/collection/components/vehicle-lookup/vehicle-accessories.css +1 -1
  62. package/dist/collection/components/vehicle-lookup/vehicle-claimable-items.css +1 -1
  63. package/dist/collection/components/vehicle-lookup/vehicle-item-claim-form.css +1 -1
  64. package/dist/collection/components/vehicle-lookup/vehicle-item-claim-form.js +1 -1
  65. package/dist/collection/components/vehicle-lookup/vehicle-lookup.css +1 -1
  66. package/dist/collection/components/vehicle-lookup/vehicle-paint-thickness.css +1 -1
  67. package/dist/collection/components/vehicle-lookup/vehicle-sale-information.css +1 -1
  68. package/dist/collection/components/vehicle-lookup/vehicle-service-history.css +1 -1
  69. package/dist/collection/components/vehicle-lookup/vehicle-specification.css +1 -1
  70. package/dist/collection/components/vehicle-lookup/vehicle-warranty-details.css +1 -1
  71. package/dist/collection/components/vin-extractor/vin-extractor.css +1 -1
  72. package/dist/collection/features/form-hook/functions.js +14 -10
  73. package/dist/collection/features/form-hook/inputs/form-input.js +19 -1
  74. package/dist/collection/features/form-hook/render-structure.js +1 -1
  75. package/dist/components/dead-stock-lookup.js +1 -1
  76. package/dist/components/distributor-lookup.js +1 -1
  77. package/dist/components/flexible-container.js +1 -1
  78. package/dist/components/form-checkbox.js +1 -1
  79. package/dist/components/form-date-picker.js +1 -1
  80. package/dist/components/form-dialog.js +1 -1
  81. package/dist/components/form-input.js +1 -1
  82. package/dist/components/form-phone-number.js +1 -1
  83. package/dist/components/form-picker-input.js +1 -1
  84. package/dist/components/form-select.js +1 -1
  85. package/dist/components/form-shadow-input.js +1 -1
  86. package/dist/components/form-structure-error.js +1 -1
  87. package/dist/components/form-structure.js +1 -1
  88. package/dist/components/form-submit.js +1 -1
  89. package/dist/components/form-switch.js +1 -1
  90. package/dist/components/form-text-area.js +1 -1
  91. package/dist/components/form-time-picker.js +1 -1
  92. package/dist/components/form-vin-input.js +1 -1
  93. package/dist/components/general-inquiry-form.js +1 -1
  94. package/dist/components/information-table.js +1 -1
  95. package/dist/components/loading-spinner.js +1 -1
  96. package/dist/components/manufacturer-lookup.js +1 -1
  97. package/dist/components/manufacturer-part-lookup.js +1 -1
  98. package/dist/components/p--ZWu5kfe.js +5 -0
  99. package/dist/components/p-3o70TTPM.js +5 -0
  100. package/dist/components/p-9Jshpnf4.js +5 -0
  101. package/dist/components/{p-CwQEFAEF.js → p-B6mLLQ5Z.js} +1 -1
  102. package/dist/components/p-B6yxFkGn.js +5 -0
  103. package/dist/components/{p-CHdx52dw.js → p-BFvKdyvP.js} +1 -1
  104. package/dist/components/p-BMqwfA7R.js +5 -0
  105. package/dist/components/p-BNfiYxny.js +5 -0
  106. package/dist/components/{p-BsFKuBtC.js → p-BPtyEnCf.js} +1 -1
  107. package/dist/components/p-BW74FG6u.js +5 -0
  108. package/dist/components/p-Bau2XePf.js +5 -0
  109. package/dist/components/p-BnRsfejo.js +5 -0
  110. package/dist/components/p-BrEz2vz_.js +5 -0
  111. package/dist/components/p-C9lmL_jC.js +5 -0
  112. package/dist/components/p-CD_2-fK9.js +5 -0
  113. package/dist/components/{p-CRhdQvF0.js → p-CGKHe5aV.js} +1 -1
  114. package/dist/components/p-CL_w2QQD.js +5 -0
  115. package/dist/components/p-CTnFqaoj.js +5 -0
  116. package/dist/components/{p-D930Q75B.js → p-ChgSU1Ua.js} +1 -1
  117. package/dist/components/{p-DqNmAqS_.js → p-CiwfnrB-.js} +1 -1
  118. package/dist/components/p-Crd-9v2B.js +5 -0
  119. package/dist/components/{p-CBXAxKky.js → p-Cu6cHcY1.js} +1 -1
  120. package/dist/components/p-CzffKzcR.js +5 -0
  121. package/dist/components/{p-7y7dFWS-.js → p-D39ljWpy.js} +1 -1
  122. package/dist/components/p-DLBJDU-Z.js +5 -0
  123. package/dist/components/p-DVOFEN__.js +5 -0
  124. package/dist/components/p-DW9tnza0.js +5 -0
  125. package/dist/components/p-DXV8vbHa.js +5 -0
  126. package/dist/components/{p-B_QEyJOO.js → p-DYUVoVJU.js} +1 -1
  127. package/dist/components/p-Dbq3Z3a7.js +5 -0
  128. package/dist/components/p-DodX8HCB.js +5 -0
  129. package/dist/components/p-Dq5EPmKC.js +5 -0
  130. package/dist/components/{p-DJaWpqrV.js → p-DvwR_CeT.js} +1 -1
  131. package/dist/components/p-GjSy7W7d.js +5 -0
  132. package/dist/components/p-KrwBOds5.js +5 -0
  133. package/dist/components/p-VJzNTmbc.js +5 -0
  134. package/dist/components/p-to4xqGcM.js +5 -0
  135. package/dist/components/p-vJNV_Y5G.js +5 -0
  136. package/dist/components/part-lookup.js +1 -1
  137. package/dist/components/service-booking-form.js +1 -1
  138. package/dist/components/shift-accordion.js +1 -1
  139. package/dist/components/shift-checkbox.js +1 -1
  140. package/dist/components/shift-slider.js +1 -1
  141. package/dist/components/shift-switch.js +1 -1
  142. package/dist/components/shift-tab-content.js +1 -1
  143. package/dist/components/shift-tabs.js +1 -1
  144. package/dist/components/ssc-lookup-form.js +1 -1
  145. package/dist/components/test-drive-form.js +1 -1
  146. package/dist/components/vehicle-accessories.js +1 -1
  147. package/dist/components/vehicle-claimable-items.js +1 -1
  148. package/dist/components/vehicle-item-claim-form.js +1 -1
  149. package/dist/components/vehicle-lookup.js +1 -1
  150. package/dist/components/vehicle-paint-thickness.js +1 -1
  151. package/dist/components/vehicle-quotation-form.js +1 -1
  152. package/dist/components/vehicle-sale-information.js +1 -1
  153. package/dist/components/vehicle-service-history.js +1 -1
  154. package/dist/components/vehicle-specification.js +1 -1
  155. package/dist/components/vehicle-warranty-details.js +1 -1
  156. package/dist/components/vin-extractor.js +1 -1
  157. package/dist/esm/dead-stock-lookup_3.entry.js +4 -3
  158. package/dist/esm/flexible-container.entry.js +1 -1
  159. package/dist/esm/form-checkbox.entry.js +9 -5
  160. package/dist/esm/form-date-picker.entry.js +2 -2
  161. package/dist/esm/form-dialog_8.entry.js +37 -33
  162. package/dist/esm/{form-error-message-BRYZJjPy.js → form-error-message-C4gzgw8C.js} +1 -1
  163. package/dist/esm/form-input-DRd-doY1.js +22 -0
  164. package/dist/esm/form-input_4.entry.js +24 -18
  165. package/dist/esm/form-switch.entry.js +9 -5
  166. package/dist/esm/form-time-picker.entry.js +2 -2
  167. package/dist/esm/general-inquiry-form.entry.js +24 -22
  168. package/dist/esm/get-local-language-DJl5eWCY.js +189 -0
  169. package/dist/esm/information-table.entry.js +1 -1
  170. package/dist/esm/{loader-icon-DhBPTC5g.js → loader-icon-DUMSCofl.js} +1150 -263
  171. package/dist/esm/loader.js +1 -1
  172. package/dist/esm/loading-spinner.entry.js +1 -1
  173. package/dist/esm/manufacturer-part-lookup.entry.js +3 -2
  174. package/dist/esm/part-lookup.entry.js +4 -3
  175. package/dist/esm/service-booking-form.entry.js +11 -9
  176. package/dist/esm/shift-checkbox.entry.js +1 -1
  177. package/dist/esm/shift-components.js +1 -1
  178. package/dist/esm/shift-switch.entry.js +1 -1
  179. package/dist/esm/shift-tab-content.entry.js +1 -1
  180. package/dist/esm/shift-tabs_2.entry.js +2 -2
  181. package/dist/esm/ssc-lookup-form.entry.js +10 -8
  182. package/dist/esm/state-object-D7JLK2vI.js +169 -0
  183. package/dist/esm/test-drive-form.entry.js +10 -8
  184. package/dist/esm/{type-BluG_k1P.js → type-BJF9x4jt.js} +1 -1
  185. package/dist/esm/{type-D_rpjbuj.js → type-TpJOuSTQ.js} +1 -1
  186. package/dist/esm/{type-zroDKO0U.js → type-r4cI4JJY.js} +1 -1
  187. package/dist/esm/{get-local-language-CCj6E27L.js → types-Cn7YOi83.js} +1 -184
  188. package/dist/esm/validation-BsxDkThF.js +86 -0
  189. package/dist/esm/vehicle-accessories_7.entry.js +10 -9
  190. package/dist/esm/vehicle-lookup.entry.js +4 -3
  191. package/dist/esm/vehicle-quotation-form.entry.js +3 -2
  192. package/dist/shift-components/{p-d7da1152.entry.js → p-16e95508.entry.js} +1 -1
  193. package/dist/shift-components/{p-2fe3538e.entry.js → p-2c9950cc.entry.js} +1 -1
  194. package/dist/shift-components/p-380144df.entry.js +5 -0
  195. package/dist/shift-components/p-3853ea20.entry.js +5 -0
  196. package/dist/shift-components/{p-0e630c66.entry.js → p-3a91a272.entry.js} +1 -1
  197. package/dist/shift-components/{p-b4231e50.entry.js → p-5b587a6a.entry.js} +1 -1
  198. package/dist/shift-components/p-694d921f.entry.js +5 -0
  199. package/dist/shift-components/p-8a97341b.entry.js +5 -0
  200. package/dist/shift-components/p-8e6d183e.entry.js +5 -0
  201. package/dist/shift-components/p-98b10e49.entry.js +5 -0
  202. package/dist/shift-components/p-B-Ttz-dC.js +5 -0
  203. package/dist/shift-components/p-BUbNT08a.js +5 -0
  204. package/dist/shift-components/p-B_8bnsuC.js +5 -0
  205. package/dist/shift-components/{p-Bfkguwb-.js → p-B_HWC4v3.js} +1 -1
  206. package/dist/shift-components/p-Cn7YOi83.js +5 -0
  207. package/dist/shift-components/{p-B-8v_CQL.js → p-CpygzMlx.js} +1 -1
  208. package/dist/shift-components/p-DDiSIFiM.js +5 -0
  209. package/dist/shift-components/p-a9ee64a7.entry.js +5 -0
  210. package/dist/shift-components/p-aa72cb3d.entry.js +5 -0
  211. package/dist/shift-components/p-aae6a6e7.entry.js +5 -0
  212. package/dist/shift-components/p-bea5d49e.entry.js +5 -0
  213. package/dist/shift-components/p-c61723de.entry.js +5 -0
  214. package/dist/shift-components/p-cb348218.entry.js +5 -0
  215. package/dist/shift-components/{p-0a728fec.entry.js → p-d09cd43d.entry.js} +1 -1
  216. package/dist/shift-components/p-d1543879.entry.js +5 -0
  217. package/dist/shift-components/{p-f4914abc.entry.js → p-d7bb6f3a.entry.js} +1 -1
  218. package/dist/shift-components/{p-BW6seqLB.js → p-det1AUh4.js} +1 -1
  219. package/dist/shift-components/p-e4b69987.entry.js +5 -0
  220. package/dist/shift-components/p-eed5e111.entry.js +5 -0
  221. package/dist/shift-components/p-fd48f8b4.entry.js +5 -0
  222. package/dist/shift-components/p-fd626a4f.entry.js +5 -0
  223. package/dist/shift-components/{p-BK4ZcuiW.js → p-gokv-pzN.js} +1 -1
  224. package/dist/shift-components/p-nfwRLPgJ.js +5 -0
  225. package/dist/shift-components/shift-components.esm.js +1 -1
  226. package/dist/types/components/form-elements/form-checkbox.d.ts +2 -1
  227. package/dist/types/components/form-elements/form-input.d.ts +2 -0
  228. package/dist/types/components/form-elements/form-phone-number.d.ts +2 -1
  229. package/dist/types/components/form-elements/form-picker-input.d.ts +2 -0
  230. package/dist/types/components/form-elements/form-select.d.ts +2 -1
  231. package/dist/types/components/form-elements/form-submit.d.ts +2 -1
  232. package/dist/types/components/form-elements/form-switch.d.ts +2 -1
  233. package/dist/types/components/form-elements/form-text-area.d.ts +2 -1
  234. package/dist/types/components/form-elements/form-vin-input.d.ts +5 -0
  235. package/dist/types/components/forms/defaults/mappers.d.ts +7 -5
  236. package/dist/types/components/forms/defaults/validation.d.ts +29 -12
  237. package/dist/types/components.d.ts +76 -2
  238. package/dist/types/features/form-hook/inputs/form-input.d.ts +13 -0
  239. package/dist/types/features/form-hook/inputs/form-select.d.ts +2 -0
  240. package/dist/types/locales/vehicleLookup/claimableItems/type.d.ts +4 -4
  241. package/dist/types/locales/vehicleLookup/serviceHistory/type.d.ts +2 -2
  242. package/dist/types/locales/vehicleLookup/wrapper-type.d.ts +4 -4
  243. package/package.json +1 -1
  244. package/dist/cjs/state-object-B_0-oj8G.js +0 -243
  245. package/dist/collection/components/forms/service-booking/element-mapper.js +0 -134
  246. package/dist/collection/components/forms/service-booking/validations.js +0 -56
  247. package/dist/components/p-3WjYFbnU.js +0 -5
  248. package/dist/components/p-64G0Y_tC.js +0 -5
  249. package/dist/components/p-BEClgvwe.js +0 -5
  250. package/dist/components/p-BTqv9A1K.js +0 -5
  251. package/dist/components/p-Bd2-gh8M.js +0 -5
  252. package/dist/components/p-BffBGA_K.js +0 -5
  253. package/dist/components/p-Bon4whdT.js +0 -5
  254. package/dist/components/p-C-4CT4ZF.js +0 -5
  255. package/dist/components/p-C6WhIy7O.js +0 -5
  256. package/dist/components/p-CEM5EBP0.js +0 -5
  257. package/dist/components/p-Cxfsh87m.js +0 -5
  258. package/dist/components/p-D-tlRZMk.js +0 -5
  259. package/dist/components/p-DA0taq65.js +0 -5
  260. package/dist/components/p-DJKERvsE.js +0 -5
  261. package/dist/components/p-DNn44A0I.js +0 -5
  262. package/dist/components/p-DdWYx3mw.js +0 -5
  263. package/dist/components/p-Df56BNKV.js +0 -5
  264. package/dist/components/p-DjDUhW2q.js +0 -5
  265. package/dist/components/p-DkA_i--O.js +0 -5
  266. package/dist/components/p-DuNp8sSh.js +0 -5
  267. package/dist/components/p-NEl9bwNq.js +0 -5
  268. package/dist/components/p-RInF2GNQ.js +0 -5
  269. package/dist/components/p-_C-vBKCe.js +0 -5
  270. package/dist/components/p-eTLWmtnI.js +0 -5
  271. package/dist/components/p-vEsQVFLN.js +0 -5
  272. package/dist/components/p-zofQKKfh.js +0 -5
  273. package/dist/esm/state-object-Cwph5K2Q.js +0 -238
  274. package/dist/shift-components/p-0f83786b.entry.js +0 -5
  275. package/dist/shift-components/p-1c93d5e6.entry.js +0 -5
  276. package/dist/shift-components/p-26f3e6da.entry.js +0 -5
  277. package/dist/shift-components/p-3a7196d4.entry.js +0 -5
  278. package/dist/shift-components/p-45670df9.entry.js +0 -5
  279. package/dist/shift-components/p-4aa6f707.entry.js +0 -5
  280. package/dist/shift-components/p-50fd9d29.entry.js +0 -5
  281. package/dist/shift-components/p-63e1e80e.entry.js +0 -5
  282. package/dist/shift-components/p-67476178.entry.js +0 -5
  283. package/dist/shift-components/p-683f3ab3.entry.js +0 -5
  284. package/dist/shift-components/p-8700e868.entry.js +0 -5
  285. package/dist/shift-components/p-90a6803f.entry.js +0 -5
  286. package/dist/shift-components/p-BVMG8UaH.js +0 -5
  287. package/dist/shift-components/p-BnQp2Q8E.js +0 -5
  288. package/dist/shift-components/p-C3YLTa2J.js +0 -5
  289. package/dist/shift-components/p-c7eaf245.entry.js +0 -5
  290. package/dist/shift-components/p-f7692371.entry.js +0 -5
  291. package/dist/shift-components/p-f8ac59ee.entry.js +0 -5
  292. package/dist/shift-components/p-fac0fdb9.entry.js +0 -5
  293. package/dist/shift-components/p-fe02d5ed.entry.js +0 -5
  294. package/dist/types/components/forms/service-booking/element-mapper.d.ts +0 -7
  295. package/dist/types/components/forms/service-booking/validations.d.ts +0 -25
@@ -3,20 +3,22 @@
3
3
  * Copyright (c)
4
4
  */
5
5
  import { r as registerInstance, h, H as Host, a as getElement } from './index-Bf4Ol6Qt.js';
6
- import { f as functionHooks, L as LoaderIcon } from './loader-icon-DhBPTC5g.js';
6
+ import { f as functionHooks, L as LoaderIcon } from './loader-icon-DUMSCofl.js';
7
7
  import { c as cn } from './cn-BK16Cn81.js';
8
- import { c as create$3, s as sharedFormLocalesSchema } from './get-local-language-CCj6E27L.js';
8
+ import { g as getFormValidations } from './validation-BsxDkThF.js';
9
+ import { s as sharedFormLocalesSchema } from './types-Cn7YOi83.js';
9
10
  import { g as getLanguageFromUrl } from './get-language-from-url-DS2wH9wf.js';
10
- import { g as getDefaultValidations, b as getDefaultStateObject, a as getDefaultMappers } from './state-object-Cwph5K2Q.js';
11
+ import { a as getDefaultStateObject, g as getFormMappers } from './state-object-D7JLK2vI.js';
12
+ import './get-local-language-DJl5eWCY.js';
11
13
  import './index-BILW0yP6.js';
12
14
  import './validate-vin-CUREVASG.js';
13
15
  import './decode-time-offset-Cfi43WoV.js';
14
16
 
15
- const styleCss = "*,: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.17 | 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}.flex{display:flex}.grid{display:grid}.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))}:host{all:initial!important;display:block;font-family:inherit!important}@keyframes form-loading-spin{to{transform:rotate(1turn)}}.form-loader-container .img{animation:form-loading-spin 2s linear infinite;height:32px;width:32px}*{-webkit-user-select:none;-moz-user-select:none;user-select:none}#vehicle-wrapper{display:flex;flex-direction:column}@media (min-width:640px){#vehicle-wrapper{align-items:center;display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}}.pointer-events-none{pointer-events:none}.static{position:static}.absolute{position:absolute}.relative{position:relative}.left-0{left:0}.top-0{top:0}.h-full{height:100%}.min-h-\\[150px\\]{min-height:150px}.w-full{width:100%}.items-center{align-items:center}.justify-center{justify-content:center}.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-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-500{transition-duration:.5s}.-mt-1{margin-top:-.25rem}.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}}.\\!h-auto{height:auto!important}.min-w-full{min-width:100%}.resize{resize:both}.overflow-hidden{overflow:hidden}.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-none{transition-property:none!important}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!duration-0{transition-duration:0s!important}.\\!duration-500{transition-duration:.5s!important}.fixed{position:fixed}.bottom-4{bottom:1rem}.left-1\\/2{left:50%}.z-10{z-index:10}.z-\\[9999\\]{z-index:9999}.hidden{display:none}.aspect-video{aspect-ratio:16/9}.size-8{height:2rem;width:2rem}.size-\\[32px\\]{height:32px;width:32px}.size-full{height:100%;width:100%}.h-\\[100dvh\\]{height:100dvh}.h-\\[60px\\]{height:60px}.min-h-full{min-height:100%}.w-\\[100dvw\\]{width:100dvw}.w-\\[100px\\]{width:100px}.-translate-x-1\\/2{--tw-translate-x:-50%;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))}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.justify-between{justify-content:space-between}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-slate-500{--tw-border-opacity:1;border-color:rgb(100 116 139/var(--tw-border-opacity,1))}.border-slate-600{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\\/30{background-color:rgba(0,0,0,.3)}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.object-cover{object-fit:cover}.object-center{object-position:center}.p-1{padding:.25rem}.p-\\[16px\\]{padding:16px}.py-\\[10px\\]{padding-bottom:10px;padding-top:10px}.text-center{text-align:center}.text-\\[18px\\]{font-size:18px}.text-slate-100{--tw-text-opacity:1;color:rgb(241 245 249/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.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-300{transition-duration:.3s}.hover\\:border-slate-700:hover{--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.hover\\:bg-slate-300:hover{--tw-bg-opacity:1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.hover\\:text-slate-700:hover{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.disabled\\:bg-white\\/75:disabled{background-color:hsla(0,0%,100%,.75)}@media (min-width:768px){.md\\:relative{position:relative}.md\\:h-auto{height:auto}.md\\:w-\\[600px\\]{width:600px}.md\\:\\!translate-x-0{--tw-translate-x:0px!important;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))!important}.md\\:overflow-hidden{overflow:hidden}.md\\:rounded-lg{border-radius:.5rem}.md\\:border-none{border-style:none}.md\\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.md\\:py-\\[8px\\]{padding-bottom:8px;padding-top:8px}.md\\:text-\\[24px\\]{font-size:24px}.md\\:text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.md\\:\\!opacity-100{opacity:1!important}.md\\:transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.md\\:duration-300{transition-duration:.3s}.md\\:hover\\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}}";
17
+ const styleCss = "*,: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.17 | 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}.flex{display:flex}.grid{display:grid}.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))}:host{all:initial!important;display:block;font-family:inherit!important}@keyframes form-loading-spin{to{transform:rotate(1turn)}}.form-loader-container .img{animation:form-loading-spin 2s linear infinite;height:32px;width:32px}*{-webkit-user-select:none;-moz-user-select:none;user-select:none}#vehicle-wrapper{display:flex;flex-direction:column}@media (min-width:640px){#vehicle-wrapper{align-items:center;display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}}.pointer-events-none{pointer-events:none}.static{position:static}.absolute{position:absolute}.relative{position:relative}.left-0{left:0}.top-0{top:0}.h-full{height:100%}.min-h-\\[150px\\]{min-height:150px}.w-full{width:100%}.items-center{align-items:center}.justify-center{justify-content:center}.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-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-500{transition-duration:.5s}.\\!h-auto{height:auto!important}.min-w-full{min-width:100%}.resize{resize:both}.overflow-hidden{overflow:hidden}.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-none{transition-property:none!important}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!duration-0{transition-duration:0s!important}.\\!duration-500{transition-duration:.5s!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}}.fixed{position:fixed}.bottom-4{bottom:1rem}.left-1\\/2{left:50%}.z-10{z-index:10}.z-\\[9999\\]{z-index:9999}.hidden{display:none}.aspect-video{aspect-ratio:16/9}.size-8{height:2rem;width:2rem}.size-\\[32px\\]{height:32px;width:32px}.size-full{height:100%;width:100%}.h-\\[100dvh\\]{height:100dvh}.h-\\[60px\\]{height:60px}.min-h-full{min-height:100%}.w-\\[100dvw\\]{width:100dvw}.w-\\[100px\\]{width:100px}.-translate-x-1\\/2{--tw-translate-x:-50%;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))}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.justify-between{justify-content:space-between}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-slate-500{--tw-border-opacity:1;border-color:rgb(100 116 139/var(--tw-border-opacity,1))}.border-slate-600{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\\/30{background-color:rgba(0,0,0,.3)}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.object-cover{object-fit:cover}.object-center{object-position:center}.p-1{padding:.25rem}.p-\\[16px\\]{padding:16px}.py-\\[10px\\]{padding-bottom:10px;padding-top:10px}.text-center{text-align:center}.text-\\[18px\\]{font-size:18px}.text-slate-100{--tw-text-opacity:1;color:rgb(241 245 249/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.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-300{transition-duration:.3s}.hover\\:border-slate-700:hover{--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.hover\\:bg-slate-300:hover{--tw-bg-opacity:1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.hover\\:text-slate-700:hover{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.disabled\\:bg-white\\/75:disabled{background-color:hsla(0,0%,100%,.75)}@media (min-width:768px){.md\\:relative{position:relative}.md\\:h-auto{height:auto}.md\\:w-\\[600px\\]{width:600px}.md\\:\\!translate-x-0{--tw-translate-x:0px!important;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))!important}.md\\:overflow-hidden{overflow:hidden}.md\\:rounded-lg{border-radius:.5rem}.md\\:border-none{border-style:none}.md\\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.md\\:py-\\[8px\\]{padding-bottom:8px;padding-top:8px}.md\\:text-\\[24px\\]{font-size:24px}.md\\:text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.md\\:\\!opacity-100{opacity:1!important}.md\\:transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.md\\:duration-300{transition-duration:.3s}.md\\:hover\\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}}";
16
18
 
17
19
  let stateObject = getDefaultStateObject();
18
- const validation = create$3(Object.assign({}, getDefaultValidations(stateObject)));
19
- const elementMapper = Object.assign({}, getDefaultMappers(stateObject));
20
+ const validation = getFormValidations(stateObject);
21
+ const elementMapper = getFormMappers(stateObject);
20
22
  const SSCLookupForm = class {
21
23
  constructor(hostRef) {
22
24
  registerInstance(this, hostRef);
@@ -73,9 +75,9 @@ const SSCLookupForm = class {
73
75
  // #endregion
74
76
  render() {
75
77
  var _a, _b;
76
- return (h(Host, { key: 'fc59da682ab64d4abc77d922dfb1747574498e2a' }, h("div", { key: 'bf806216b58c9c5ab6c7b88d200bbe56a772d9d9', part: cn('shift-form', (_b = (_a = this.structure) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.theme, this.theme) }, h("div", { key: '5d0cd5af7b412c3eac4e7f39b1475bb9f64c00e9', part: "form-container", class: "relative min-h-[150px]" }, h("div", { key: '0a36d00062397ba875bda14344484739fb6213d9', part: "form-loader-container", class: cn('form-loader-container absolute top-0 left-0 w-full h-full pointer-events-none flex justify-center items-center transition-opacity duration-500', {
78
+ return (h(Host, { key: '1388662270764e5c55e513f415c827980abaec1f' }, h("div", { key: '66ffa8f118d0749cd949b6c95a1080a88403b222', part: cn('shift-form', (_b = (_a = this.structure) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.theme, this.theme) }, h("div", { key: '8c475b8f84fbcaf470bfe33a73fb173ee67d44dc', part: "form-container", class: "relative min-h-[150px]" }, h("div", { key: '1a789d6edf4667be5a7e8ba0563d3416e030890a', part: "form-loader-container", class: cn('form-loader-container absolute top-0 left-0 w-full h-full pointer-events-none flex justify-center items-center transition-opacity duration-500', {
77
79
  'opacity-0': this.structureRendered,
78
- }) }, h(LoaderIcon, { key: 'd53bedd6c4faff10d63eea3f3a7ddce525fac72a', part: "form-loader-icon", class: "img" })), h("flexible-container", { key: '64ce678d61fdfa7b29372048cad3e276a4f6cb89', onlyForMounting: true, isOpened: this.structureRendered }, !!this.form && (h("form-structure", { key: 'f7c8fdff2f84404b843d924b5dd0bafedfc3e7c8', form: this.form, fields: this.fields, formId: this.formId, formLocale: this.locale, structure: this.structure, isLoading: this.isLoading, language: this.localeLanguage, errorMessage: this.errorMessage, formElementMapper: elementMapper, successMessage: this.locale['Form submitted successfully.'] || 'Form submitted successfully.' }, h("slot", { key: 'f8162a8562790232384f75d2e5532636527af984' }))))))));
80
+ }) }, h(LoaderIcon, { key: '4ab24cf4b89e72690ab160070928edb6b44fbfb5', part: "form-loader-icon", class: "img" })), h("flexible-container", { key: '2b1c3b059306c660f8d721768f930fa52cf165b5', onlyForMounting: true, isOpened: this.structureRendered }, !!this.form && (h("form-structure", { key: '7ceec1a05f6dfa6a1ee22b2eeace80ac16114ee4', form: this.form, fields: this.fields, formId: this.formId, formLocale: this.locale, structure: this.structure, isLoading: this.isLoading, language: this.localeLanguage, errorMessage: this.errorMessage, formElementMapper: elementMapper, successMessage: this.locale['Form submitted successfully.'] || 'Form submitted successfully.' }, h("slot", { key: '40264199c30d3a2b6279017c682964788ee8d746' }))))))));
79
81
  }
80
82
  get el() { return getElement(this); }
81
83
  static get watchers() { return {
@@ -0,0 +1,169 @@
1
+ /*!
2
+ * Built by ShiftSoftware
3
+ * Copyright (c)
4
+ */
5
+ import { h } from './index-Bf4Ol6Qt.js';
6
+ import './types-Cn7YOi83.js';
7
+ import { d as dateFnsExports } from './index-BILW0yP6.js';
8
+ import { L as LoaderIcon, g as getPhoneValidator } from './loader-icon-DUMSCofl.js';
9
+ import { c as cn } from './cn-BK16Cn81.js';
10
+ import { d as decodeTimeOffset } from './decode-time-offset-Cfi43WoV.js';
11
+
12
+ const cachedImages = {};
13
+ const cacheImage = (form, imSrc, id) => {
14
+ fetch(imSrc)
15
+ .then(res => res.blob())
16
+ .then(blob => {
17
+ const reader = new FileReader();
18
+ reader.onloadend = () => {
19
+ cachedImages[id] = reader.result;
20
+ form.rerender({ rerenderForm: true });
21
+ };
22
+ reader.readAsDataURL(blob);
23
+ })
24
+ .catch(e => {
25
+ console.log(e);
26
+ // fail silently, keep fallback
27
+ });
28
+ };
29
+ let imageSrcBase64 = '';
30
+ const VehicleImageViewer = ({ form }) => {
31
+ var _a, _b, _c, _d;
32
+ form.addWatcher('vehicle');
33
+ let vehicleId = form.getValue('vehicle');
34
+ let openContainer = !!vehicleId;
35
+ const selectedVehicle = (_a = form.context['vehicleList']) === null || _a === void 0 ? void 0 : _a.find(vehicle => vehicle.value === vehicleId);
36
+ let imSrc;
37
+ if (selectedVehicle) {
38
+ imSrc = (_b = selectedVehicle === null || selectedVehicle === void 0 ? void 0 : selectedVehicle.meta) === null || _b === void 0 ? void 0 : _b.image;
39
+ vehicleId = selectedVehicle.value;
40
+ }
41
+ else if (form.context['vehicleList'] && form.context['vehicleList'][0]) {
42
+ imSrc = (_d = (_c = form.context['vehicleList'][0]) === null || _c === void 0 ? void 0 : _c.meta) === null || _d === void 0 ? void 0 : _d.image;
43
+ vehicleId = form.context['vehicleList'][0].value;
44
+ }
45
+ let isLoading = false;
46
+ if (cachedImages[vehicleId]) {
47
+ imageSrcBase64 = cachedImages[vehicleId];
48
+ }
49
+ else if (form && imSrc && vehicleId) {
50
+ cacheImage(form, imSrc, vehicleId);
51
+ isLoading = true;
52
+ }
53
+ return (h("flexible-container", { isOpened: openContainer },
54
+ h("div", { style: { 'min-height': '60px' }, part: "vehicle-image-wrapper", class: cn('vehicle-image-wrapper', { loading: isLoading }) },
55
+ h("div", { part: cn('vehicle-image-loading-wrapper', { 'vehicle-image-active-loading-wrapper': isLoading }), class: cn('loading-wrapper vehicle-image-loading-wrapper', { 'vehicle-image-active-loading-wrapper': isLoading }) },
56
+ h(LoaderIcon, { part: "vehicle-image-loader-icon", class: "img vehicle-image-loader-icon" })),
57
+ h("img", { alt: "vehicle image", part: "vehicle-image", src: imageSrcBase64, style: { 'border-radius': '6px', 'transition': 'opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);', 'opacity': isLoading ? '0' : '1' } }))));
58
+ };
59
+
60
+ const CalendarDaysIcon = props => (h("svg", Object.assign({ fill: "none" }, props, { "stroke-width": "2", viewBox: "0 0 24 24", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", xmlns: "http://www.w3.org/2000/svg" }),
61
+ h("path", { d: "M8 2v4" }),
62
+ h("path", { d: "M16 2v4" }),
63
+ h("rect", { width: "18", height: "18", x: "3", y: "4", rx: "2" }),
64
+ h("path", { d: "M3 10h18" }),
65
+ h("path", { d: "M8 14h.01" }),
66
+ h("path", { d: "M12 14h.01" }),
67
+ h("path", { d: "M16 14h.01" }),
68
+ h("path", { d: "M8 18h.01" }),
69
+ h("path", { d: "M12 18h.01" }),
70
+ h("path", { d: "M16 18h.01" })));
71
+
72
+ const getFormMappers = (stateObject, extraMappers = {}) => (Object.assign({ submit: ({ props }) => h("form-submit", Object.assign({}, props)), name: ({ props }) => h("form-input", Object.assign({}, props)), lastName: ({ props }) => h("form-input", Object.assign({}, props)), email: ({ props }) => h("form-input", Object.assign({ type: "email" }, props)), message: ({ props }) => h("form-text-area", Object.assign({}, props)), vin: ({ props }) => h("form-vin-input", Object.assign({}, props)), vehicleImage: ({ form }) => h(VehicleImageViewer, { form: form }), phone: ({ props, isLoading }) => {
73
+ if (!stateObject.phoneValidator) {
74
+ stateObject.phoneValidator = getPhoneValidator((props === null || props === void 0 ? void 0 : props.countryCode) || '');
75
+ }
76
+ return h("form-phone-number", Object.assign({ defaultValue: stateObject.phoneValidator.default }, props, { isLoading: isLoading, validator: stateObject.phoneValidator }));
77
+ }, vehicle: ({ language, props }) => {
78
+ const fetcher = async ({ signal, context }) => {
79
+ var _a, _b;
80
+ const params = new URLSearchParams(window.location.search);
81
+ let paramValue = (_a = (params.get(props === null || props === void 0 ? void 0 : props.vehicleIdQueryParam) || '')) === null || _a === void 0 ? void 0 : _a.toLowerCase();
82
+ const vehicleEndpoint = props.vehicleApi;
83
+ const response = await fetch(vehicleEndpoint, { signal, headers: { 'Accept-Language': language } });
84
+ let options;
85
+ let defaultIndex = -1;
86
+ if (props === null || props === void 0 ? void 0 : props.vehiclesApiStrapiFormat) {
87
+ const res = await response.json();
88
+ options = res.data;
89
+ options = options.map((vehicle, idx) => {
90
+ var _a, _b, _c;
91
+ if (!props.defaultValue && paramValue && (((_a = vehicle === null || vehicle === void 0 ? void 0 : vehicle.GradeName) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === paramValue || ((_b = `${vehicle.id}`) === null || _b === void 0 ? void 0 : _b.toLowerCase()) === paramValue))
92
+ defaultIndex = idx;
93
+ return {
94
+ label: vehicle.attributes.GradeName,
95
+ value: (props === null || props === void 0 ? void 0 : props.useNamedValue) ? `${(_c = vehicle === null || vehicle === void 0 ? void 0 : vehicle.attributes) === null || _c === void 0 ? void 0 : _c.GradeName}` : `${vehicle.id}`,
96
+ meta: Object.assign(Object.assign({}, vehicle), { image: vehicle.attributes.Cover.data.attributes.url }),
97
+ };
98
+ });
99
+ }
100
+ else {
101
+ options = await response.json();
102
+ options = options.map((vehicle, idx) => {
103
+ var _a, _b;
104
+ if (!props.defaultValue && paramValue && (((_a = vehicle === null || vehicle === void 0 ? void 0 : vehicle.Title) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === paramValue || ((_b = `${vehicle.ID}`) === null || _b === void 0 ? void 0 : _b.toLowerCase()) === paramValue))
105
+ defaultIndex = idx;
106
+ return {
107
+ label: vehicle.Title,
108
+ value: (props === null || props === void 0 ? void 0 : props.useNamedValue) ? `${vehicle.Title}` : `${vehicle.ID}`,
109
+ meta: Object.assign(Object.assign({}, vehicle), { image: vehicle.Image }),
110
+ };
111
+ });
112
+ }
113
+ if (!(props === null || props === void 0 ? void 0 : props.defaultValue)) {
114
+ if (defaultIndex > -1)
115
+ context.defaultValue = (_b = options[defaultIndex]) === null || _b === void 0 ? void 0 : _b.value;
116
+ else
117
+ context.defaultValue = '';
118
+ }
119
+ else
120
+ context.defaultValue = props === null || props === void 0 ? void 0 : props.defaultValue;
121
+ return options;
122
+ };
123
+ return h("form-select", Object.assign({}, props, { searchable: true, fetcher: fetcher, language: language }));
124
+ }, companyBranchId: ({ language, props }) => {
125
+ const fetcher = async ({ signal }) => {
126
+ const dealerEndpoint = props === null || props === void 0 ? void 0 : props.branchApi;
127
+ const response = await fetch(dealerEndpoint, { signal, headers: { 'Accept-Language': language } });
128
+ const options = (await response.json()).map(dealer => ({
129
+ label: dealer.Name,
130
+ value: `${dealer.ID}`,
131
+ meta: Object.assign({}, dealer),
132
+ }));
133
+ return options;
134
+ };
135
+ return h("form-select", Object.assign({}, props, { clearable: true, searchable: true, fetcher: fetcher, language: language }));
136
+ }, cityId: ({ language, props }) => {
137
+ const fetcher = async ({ signal }) => {
138
+ const dealerEndpoint = props === null || props === void 0 ? void 0 : props.cityApi;
139
+ const response = await fetch(dealerEndpoint, { signal, headers: { 'Accept-Language': language } });
140
+ const options = (await response.json()).map(dealer => ({
141
+ label: dealer.Name,
142
+ value: `${dealer.ID}`,
143
+ meta: Object.assign({}, dealer),
144
+ }));
145
+ return options;
146
+ };
147
+ return h("form-select", Object.assign({}, props, { clearable: true, searchable: true, fetcher: fetcher, language: language }));
148
+ }, date: ({ props }) => h("form-picker-input", Object.assign({ type: "date" }, props, { icon: h(CalendarDaysIcon, null) })), time: ({ language, props }) => {
149
+ const fetcher = async () => {
150
+ const options = [];
151
+ if (Array.isArray(props.span) && Array.isArray(props.min) && Array.isArray(props.max) && props.format) {
152
+ let tempDate = decodeTimeOffset({ offsets: props.min });
153
+ let maxDate = decodeTimeOffset({ offsets: props.max });
154
+ while (dateFnsExports.isBefore(tempDate, maxDate) || dateFnsExports.isEqual(tempDate, maxDate)) {
155
+ options.push({
156
+ value: dateFnsExports.format(tempDate, props.format),
157
+ label: dateFnsExports.format(tempDate, props.format),
158
+ });
159
+ tempDate = decodeTimeOffset({ offsets: props.span, date: tempDate });
160
+ }
161
+ }
162
+ return options;
163
+ };
164
+ return h("form-select", Object.assign({}, props, { clearable: true, fetcher: fetcher, language: language }));
165
+ } }, extraMappers));
166
+
167
+ const getDefaultStateObject = () => ({ phoneValidator: undefined });
168
+
169
+ export { getDefaultStateObject as a, getFormMappers as g };
@@ -3,20 +3,22 @@
3
3
  * Copyright (c)
4
4
  */
5
5
  import { r as registerInstance, h, H as Host, a as getElement } from './index-Bf4Ol6Qt.js';
6
- import { f as functionHooks, L as LoaderIcon } from './loader-icon-DhBPTC5g.js';
6
+ import { f as functionHooks, L as LoaderIcon } from './loader-icon-DUMSCofl.js';
7
7
  import { c as cn } from './cn-BK16Cn81.js';
8
- import { c as create$3, s as sharedFormLocalesSchema } from './get-local-language-CCj6E27L.js';
8
+ import { g as getFormValidations } from './validation-BsxDkThF.js';
9
+ import { s as sharedFormLocalesSchema } from './types-Cn7YOi83.js';
9
10
  import { g as getLanguageFromUrl } from './get-language-from-url-DS2wH9wf.js';
10
- import { g as getDefaultValidations, b as getDefaultStateObject, a as getDefaultMappers } from './state-object-Cwph5K2Q.js';
11
+ import { a as getDefaultStateObject, g as getFormMappers } from './state-object-D7JLK2vI.js';
12
+ import './get-local-language-DJl5eWCY.js';
11
13
  import './index-BILW0yP6.js';
12
14
  import './validate-vin-CUREVASG.js';
13
15
  import './decode-time-offset-Cfi43WoV.js';
14
16
 
15
- const styleCss = "*,: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.17 | 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}.flex{display:flex}.grid{display:grid}.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))}:host{all:initial!important;display:block;font-family:inherit!important}@keyframes form-loading-spin{to{transform:rotate(1turn)}}.form-loader-container .img{animation:form-loading-spin 2s linear infinite;height:32px;width:32px}*{-webkit-user-select:none;-moz-user-select:none;user-select:none}#vehicle-wrapper{display:flex;flex-direction:column}@media (min-width:640px){#vehicle-wrapper{align-items:center;display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}}.pointer-events-none{pointer-events:none}.static{position:static}.absolute{position:absolute}.relative{position:relative}.left-0{left:0}.top-0{top:0}.h-full{height:100%}.min-h-\\[150px\\]{min-height:150px}.w-full{width:100%}.items-center{align-items:center}.justify-center{justify-content:center}.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-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-500{transition-duration:.5s}.-mt-1{margin-top:-.25rem}.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}}.\\!h-auto{height:auto!important}.min-w-full{min-width:100%}.resize{resize:both}.overflow-hidden{overflow:hidden}.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-none{transition-property:none!important}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!duration-0{transition-duration:0s!important}.\\!duration-500{transition-duration:.5s!important}.fixed{position:fixed}.bottom-4{bottom:1rem}.left-1\\/2{left:50%}.z-10{z-index:10}.z-\\[9999\\]{z-index:9999}.hidden{display:none}.aspect-video{aspect-ratio:16/9}.size-8{height:2rem;width:2rem}.size-\\[32px\\]{height:32px;width:32px}.size-full{height:100%;width:100%}.h-\\[100dvh\\]{height:100dvh}.h-\\[60px\\]{height:60px}.min-h-full{min-height:100%}.w-\\[100dvw\\]{width:100dvw}.w-\\[100px\\]{width:100px}.-translate-x-1\\/2{--tw-translate-x:-50%;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))}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.justify-between{justify-content:space-between}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-slate-500{--tw-border-opacity:1;border-color:rgb(100 116 139/var(--tw-border-opacity,1))}.border-slate-600{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\\/30{background-color:rgba(0,0,0,.3)}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.object-cover{object-fit:cover}.object-center{object-position:center}.p-1{padding:.25rem}.p-\\[16px\\]{padding:16px}.py-\\[10px\\]{padding-bottom:10px;padding-top:10px}.text-center{text-align:center}.text-\\[18px\\]{font-size:18px}.text-slate-100{--tw-text-opacity:1;color:rgb(241 245 249/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.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-300{transition-duration:.3s}.hover\\:border-slate-700:hover{--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.hover\\:bg-slate-300:hover{--tw-bg-opacity:1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.hover\\:text-slate-700:hover{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.disabled\\:bg-white\\/75:disabled{background-color:hsla(0,0%,100%,.75)}@media (min-width:768px){.md\\:relative{position:relative}.md\\:h-auto{height:auto}.md\\:w-\\[600px\\]{width:600px}.md\\:\\!translate-x-0{--tw-translate-x:0px!important;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))!important}.md\\:overflow-hidden{overflow:hidden}.md\\:rounded-lg{border-radius:.5rem}.md\\:border-none{border-style:none}.md\\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.md\\:py-\\[8px\\]{padding-bottom:8px;padding-top:8px}.md\\:text-\\[24px\\]{font-size:24px}.md\\:text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.md\\:\\!opacity-100{opacity:1!important}.md\\:transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.md\\:duration-300{transition-duration:.3s}.md\\:hover\\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}}";
17
+ const styleCss = "*,: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.17 | 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}.flex{display:flex}.grid{display:grid}.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))}:host{all:initial!important;display:block;font-family:inherit!important}@keyframes form-loading-spin{to{transform:rotate(1turn)}}.form-loader-container .img{animation:form-loading-spin 2s linear infinite;height:32px;width:32px}*{-webkit-user-select:none;-moz-user-select:none;user-select:none}#vehicle-wrapper{display:flex;flex-direction:column}@media (min-width:640px){#vehicle-wrapper{align-items:center;display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}}.pointer-events-none{pointer-events:none}.static{position:static}.absolute{position:absolute}.relative{position:relative}.left-0{left:0}.top-0{top:0}.h-full{height:100%}.min-h-\\[150px\\]{min-height:150px}.w-full{width:100%}.items-center{align-items:center}.justify-center{justify-content:center}.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-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-500{transition-duration:.5s}.\\!h-auto{height:auto!important}.min-w-full{min-width:100%}.resize{resize:both}.overflow-hidden{overflow:hidden}.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-none{transition-property:none!important}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.\\!duration-0{transition-duration:0s!important}.\\!duration-500{transition-duration:.5s!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}}.fixed{position:fixed}.bottom-4{bottom:1rem}.left-1\\/2{left:50%}.z-10{z-index:10}.z-\\[9999\\]{z-index:9999}.hidden{display:none}.aspect-video{aspect-ratio:16/9}.size-8{height:2rem;width:2rem}.size-\\[32px\\]{height:32px;width:32px}.size-full{height:100%;width:100%}.h-\\[100dvh\\]{height:100dvh}.h-\\[60px\\]{height:60px}.min-h-full{min-height:100%}.w-\\[100dvw\\]{width:100dvw}.w-\\[100px\\]{width:100px}.-translate-x-1\\/2{--tw-translate-x:-50%;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))}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.justify-between{justify-content:space-between}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-slate-500{--tw-border-opacity:1;border-color:rgb(100 116 139/var(--tw-border-opacity,1))}.border-slate-600{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\\/30{background-color:rgba(0,0,0,.3)}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.object-cover{object-fit:cover}.object-center{object-position:center}.p-1{padding:.25rem}.p-\\[16px\\]{padding:16px}.py-\\[10px\\]{padding-bottom:10px;padding-top:10px}.text-center{text-align:center}.text-\\[18px\\]{font-size:18px}.text-slate-100{--tw-text-opacity:1;color:rgb(241 245 249/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.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-300{transition-duration:.3s}.hover\\:border-slate-700:hover{--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.hover\\:bg-slate-300:hover{--tw-bg-opacity:1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.hover\\:text-slate-700:hover{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.disabled\\:bg-white\\/75:disabled{background-color:hsla(0,0%,100%,.75)}@media (min-width:768px){.md\\:relative{position:relative}.md\\:h-auto{height:auto}.md\\:w-\\[600px\\]{width:600px}.md\\:\\!translate-x-0{--tw-translate-x:0px!important;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))!important}.md\\:overflow-hidden{overflow:hidden}.md\\:rounded-lg{border-radius:.5rem}.md\\:border-none{border-style:none}.md\\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.md\\:py-\\[8px\\]{padding-bottom:8px;padding-top:8px}.md\\:text-\\[24px\\]{font-size:24px}.md\\:text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.md\\:\\!opacity-100{opacity:1!important}.md\\:transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.md\\:duration-300{transition-duration:.3s}.md\\:hover\\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}}";
16
18
 
17
19
  let stateObject = getDefaultStateObject();
18
- const validation = create$3(Object.assign({}, getDefaultValidations(stateObject)));
19
- const elementMapper = Object.assign({}, getDefaultMappers(stateObject));
20
+ const validation = getFormValidations(stateObject);
21
+ const elementMapper = getFormMappers(stateObject);
20
22
  const TestDriveForm = class {
21
23
  constructor(hostRef) {
22
24
  registerInstance(this, hostRef);
@@ -62,9 +64,9 @@ const TestDriveForm = class {
62
64
  // #endregion
63
65
  render() {
64
66
  var _a, _b;
65
- return (h(Host, { key: '9bcf43def4797b17b5322672651f9f3bd8685673' }, h("div", { key: 'f25e1549593869a93a9e5a38037c33a6c5fe857f', part: cn('shift-form', (_b = (_a = this.structure) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.theme, this.theme) }, h("div", { key: 'eb345a9aba3f3044843431eeec52581eafe3955b', part: "form-container", class: "relative min-h-[150px]" }, h("div", { key: 'bcd0c35133bf72bd2a151b43dc5a63efbc1d0d0a', part: "form-loader-container", class: cn('form-loader-container absolute top-0 left-0 w-full h-full pointer-events-none flex justify-center items-center transition-opacity duration-500', {
67
+ return (h(Host, { key: 'c22942c01dd459d26ea1574104328e3820ebef2a' }, h("div", { key: '579f3ff664278b1208bab93185e0d607d34b58c4', part: cn('shift-form', (_b = (_a = this.structure) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.theme, this.theme) }, h("div", { key: 'f19577de7dec60a342b6292810e12ce0b58cf9c8', part: "form-container", class: "relative min-h-[150px]" }, h("div", { key: '17518c85252d0bcda63319b5c7ca712603c46940', part: "form-loader-container", class: cn('form-loader-container absolute top-0 left-0 w-full h-full pointer-events-none flex justify-center items-center transition-opacity duration-500', {
66
68
  'opacity-0': this.structureRendered,
67
- }) }, h(LoaderIcon, { key: '7c484c2d2ef1cbb622379f837801caf84c89be92', part: "form-loader-icon", class: "img" })), h("flexible-container", { key: '4636f9d944ee5b192c8515fb6911a5e600cc0a96', onlyForMounting: true, isOpened: this.structureRendered }, !!this.form && (h("form-structure", { key: 'ccad70c33dfa964511f1350fdaa11b991830d1cc', form: this.form, fields: this.fields, formId: this.formId, formLocale: this.locale, structure: this.structure, isLoading: this.isLoading, language: this.localeLanguage, errorMessage: this.errorMessage, formElementMapper: elementMapper, successMessage: this.locale['Form submitted successfully.'] || 'Form submitted successfully.' }, h("slot", { key: '5d4e0ec46dfc3011a37ebba13dc32c4761e47cd7' }))))))));
69
+ }) }, h(LoaderIcon, { key: '56cfde4b37adc257f98d1ad714642f6140fc5051', part: "form-loader-icon", class: "img" })), h("flexible-container", { key: '7ecb050edcffed8af61c6642bd4ca9aae37f754e', onlyForMounting: true, isOpened: this.structureRendered }, !!this.form && (h("form-structure", { key: 'c77c8063cf2f8eccc67e4d6270c2b3e1e0d411c6', form: this.form, fields: this.fields, formId: this.formId, formLocale: this.locale, structure: this.structure, isLoading: this.isLoading, language: this.localeLanguage, errorMessage: this.errorMessage, formElementMapper: elementMapper, successMessage: this.locale['Form submitted successfully.'] || 'Form submitted successfully.' }, h("slot", { key: 'cc74ebbf35a57bb9ff25afaf8b670ab5b3a1ccd0' }))))))));
68
70
  }
69
71
  get el() { return getElement(this); }
70
72
  static get watchers() { return {
@@ -2,7 +2,7 @@
2
2
  * Built by ShiftSoftware
3
3
  * Copyright (c)
4
4
  */
5
- import { y as yupTypeMapper } from './get-local-language-CCj6E27L.js';
5
+ import { y as yupTypeMapper } from './types-Cn7YOi83.js';
6
6
 
7
7
  const deadStockSchema = yupTypeMapper(['deadStock', 'branch', 'availableQuantity']);
8
8
 
@@ -2,7 +2,7 @@
2
2
  * Built by ShiftSoftware
3
3
  * Copyright (c)
4
4
  */
5
- import { y as yupTypeMapper, c as create$3 } from './get-local-language-CCj6E27L.js';
5
+ import { y as yupTypeMapper, c as create$3 } from './types-Cn7YOi83.js';
6
6
 
7
7
  const warrantySchema = yupTypeMapper([
8
8
  'dealer',
@@ -2,7 +2,7 @@
2
2
  * Built by ShiftSoftware
3
3
  * Copyright (c)
4
4
  */
5
- import { y as yupTypeMapper } from './get-local-language-CCj6E27L.js';
5
+ import { y as yupTypeMapper } from './types-Cn7YOi83.js';
6
6
 
7
7
  const distributerSchema = yupTypeMapper([
8
8
  'info',
@@ -2,8 +2,6 @@
2
2
  * Built by ShiftSoftware
3
3
  * Copyright (c)
4
4
  */
5
- import './index-Bf4Ol6Qt.js';
6
-
7
5
  function getDefaultExportFromCjs (x) {
8
6
  return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
9
7
  }
@@ -2450,185 +2448,4 @@ const languageMapper = {
2450
2448
  ru: RUSSIAN_JSON_FILE,
2451
2449
  };
2452
2450
 
2453
- const version = "0.1.59";
2454
-
2455
- // This file is auto-generated. Do not edit it manually.
2456
- // Use command: yarn create:locale-mapper
2457
- // It is generated by the script located at: generate-locale-mapper.mjs
2458
- const localeMapper = {
2459
- "-": [
2460
- "locales/"
2461
- ],
2462
- "errors": [
2463
- "locales/errors/"
2464
- ],
2465
- "forms": [
2466
- "locales/forms/",
2467
- "locales/forms/contactUs/",
2468
- "locales/forms/demo/",
2469
- "locales/forms/testDriveDemo/",
2470
- "locales/forms/vehicleQuotation/"
2471
- ],
2472
- "forms.contactUs": [
2473
- "locales/forms/contactUs/"
2474
- ],
2475
- "forms.demo": [
2476
- "locales/forms/demo/"
2477
- ],
2478
- "forms.testDriveDemo": [
2479
- "locales/forms/testDriveDemo/"
2480
- ],
2481
- "forms.vehicleQuotation": [
2482
- "locales/forms/vehicleQuotation/"
2483
- ],
2484
- "general": [
2485
- "locales/general/"
2486
- ],
2487
- "generalTicketTypes": [
2488
- "locales/generalTicketTypes/"
2489
- ],
2490
- "partLookup.deadStock": [
2491
- "locales/partLookup/deadStock/"
2492
- ],
2493
- "partLookup": [
2494
- "locales/partLookup/deadStock/",
2495
- "locales/partLookup/distributor/",
2496
- "locales/partLookup/manufacturer/"
2497
- ],
2498
- "partLookup.distributor": [
2499
- "locales/partLookup/distributor/"
2500
- ],
2501
- "partLookup.manufacturer": [
2502
- "locales/partLookup/manufacturer/"
2503
- ],
2504
- "vehicleLookup.accessories": [
2505
- "locales/vehicleLookup/accessories/"
2506
- ],
2507
- "vehicleLookup": [
2508
- "locales/vehicleLookup/accessories/",
2509
- "locales/vehicleLookup/claimableItems/",
2510
- "locales/vehicleLookup/paintThickness/",
2511
- "locales/vehicleLookup/saleInformation/",
2512
- "locales/vehicleLookup/serviceHistory/",
2513
- "locales/vehicleLookup/specification/",
2514
- "locales/vehicleLookup/warranty/"
2515
- ],
2516
- "vehicleLookup.claimableItems": [
2517
- "locales/vehicleLookup/claimableItems/"
2518
- ],
2519
- "vehicleLookup.paintThickness": [
2520
- "locales/vehicleLookup/paintThickness/"
2521
- ],
2522
- "vehicleLookup.serviceHistory": [
2523
- "locales/vehicleLookup/serviceHistory/"
2524
- ],
2525
- "vehicleLookup.saleInformation": [
2526
- "locales/vehicleLookup/saleInformation/"
2527
- ],
2528
- "vehicleLookup.specification": [
2529
- "locales/vehicleLookup/specification/"
2530
- ],
2531
- "vehicleLookup.warranty": [
2532
- "locales/vehicleLookup/warranty/"
2533
- ],
2534
- "forms*": [
2535
- "locales/forms/"
2536
- ]
2537
- };
2538
-
2539
- const cachedLocales = {};
2540
- async function getSharedLocal(languageKey) {
2541
- const [errors, globalKeys] = await Promise.all([getLocaleLanguage(languageKey, 'errors', errorsSchema), getLocaleLanguage(languageKey, '-', globalSchema)]);
2542
- return Object.assign({ errors }, globalKeys);
2543
- }
2544
- async function getSharedFormLocal(languageKey) {
2545
- const [errors, globalKeys, sharedFormKeys] = await Promise.all([
2546
- getLocaleLanguage(languageKey, 'errors', errorsSchema),
2547
- getLocaleLanguage(languageKey, '-', globalSchema),
2548
- getLocaleLanguage(languageKey, 'forms*', formsSchema),
2549
- ]);
2550
- return Object.assign(Object.assign(Object.assign({}, globalKeys), sharedFormKeys), errors);
2551
- }
2552
- async function getLocaleLanguage(languageKey, component, schema) {
2553
- const languageFile = languageMapper[languageKey] || languageMapper.en;
2554
- const localeFiles = localeMapper[component];
2555
- if (!localeFiles || !localeFiles.length)
2556
- throw new Error(`Locale file not found for component: ${component}`);
2557
- if (localeFiles.length === 1) {
2558
- const localeFile = localeFiles[0] + languageFile;
2559
- const response = await requestLocaleFile(localeFile);
2560
- try {
2561
- schema.validateSync(response, { strict: true, abortEarly: false });
2562
- }
2563
- catch (error) {
2564
- console.error(`Failed to parse locale file: ${localeFile}`);
2565
- console.error(error);
2566
- }
2567
- return response;
2568
- }
2569
- else {
2570
- const localeFilePromises = localeFiles.map(localeFile => requestLocaleFile(localeFile + languageFile));
2571
- const localeFilesResponses = await Promise.all(localeFilePromises);
2572
- const responseBluePrint = schema.getDefault();
2573
- const parsedResponseMapper = {};
2574
- recursiveParser(component, responseBluePrint, parsedResponseMapper, languageFile);
2575
- try {
2576
- schema.validateSync(parsedResponseMapper, { strict: true, abortEarly: false });
2577
- }
2578
- catch (error) {
2579
- console.error(`Failed to parse locale file component: ${component}`);
2580
- console.error(error);
2581
- }
2582
- return localeFilesResponses;
2583
- }
2584
- }
2585
- function isPlainObject(value) {
2586
- return typeof value === 'object' && value !== null && !Array.isArray(value);
2587
- }
2588
- function recursiveParser(parents, bluePrint, parsedResponseMapper, languageFile) {
2589
- let mappedSelf = false;
2590
- Object.entries(bluePrint).forEach(([key, value]) => {
2591
- if (typeof value === 'string' && !mappedSelf) {
2592
- if (localeMapper[parents]) {
2593
- const cacheKey = localeMapper[parents][0] + languageFile;
2594
- if (cachedLocales[cacheKey])
2595
- Object.assign(parsedResponseMapper, cachedLocales[cacheKey]);
2596
- }
2597
- mappedSelf = true;
2598
- }
2599
- else if (isPlainObject(value)) {
2600
- const childMapperKey = parents + '.' + key;
2601
- const isNestedObject = Object.entries(value).some(([_, nestedValue]) => isPlainObject(nestedValue));
2602
- if (isNestedObject) {
2603
- parsedResponseMapper[key] = {};
2604
- recursiveParser(childMapperKey, value, parsedResponseMapper[key], languageFile);
2605
- }
2606
- else if (localeMapper[childMapperKey] && !!localeMapper[childMapperKey].length) {
2607
- const cacheKey = localeMapper[childMapperKey][0] + languageFile;
2608
- if (cachedLocales[cacheKey])
2609
- parsedResponseMapper[key] = cachedLocales[cacheKey];
2610
- }
2611
- }
2612
- });
2613
- }
2614
- async function requestLocaleFile(localeFile) {
2615
- if (cachedLocales[localeFile])
2616
- return await cachedLocales[localeFile];
2617
- try {
2618
- const fetchPromise = (fetch(`https://cdn.jsdelivr.net/npm/adp-web-components@${version}/dist/${localeFile}`)).then(res => {
2619
- if (!res.ok)
2620
- delete cachedLocales[localeFile];
2621
- return res.json();
2622
- });
2623
- cachedLocales[localeFile] = fetchPromise;
2624
- const result = await fetchPromise;
2625
- cachedLocales[localeFile] = result;
2626
- return result;
2627
- }
2628
- catch (error) {
2629
- delete cachedLocales[localeFile];
2630
- return {};
2631
- }
2632
- }
2633
-
2634
- export { create$6 as a, create$5 as b, create$3 as c, sharedLocalesSchema as d, getLocaleLanguage as e, getSharedFormLocal as f, getSharedLocal as g, sharedFormLocalesSchema as s, version as v, yupTypeMapper as y };
2451
+ export { create$6 as a, create$5 as b, create$3 as c, sharedLocalesSchema as d, errorsSchema as e, formsSchema as f, globalSchema as g, languageMapper as l, sharedFormLocalesSchema as s, yupTypeMapper as y };