@kiva/kv-components 7.6.3 → 8.0.1

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 (336) hide show
  1. package/.eslintignore +5 -0
  2. package/.github/copilot-instructions.md +11 -0
  3. package/AGENTS.md +184 -0
  4. package/CLAUDE.md +11 -0
  5. package/GEMINI.md +11 -0
  6. package/dist/index.d.ts +3 -0
  7. package/dist/index.js +236 -216
  8. package/dist/utils/Alea.d.ts +9 -0
  9. package/dist/utils/Alea.js +23 -23
  10. package/dist/utils/arrayUtils.d.ts +3 -0
  11. package/dist/utils/arrayUtils.js +1 -1
  12. package/dist/utils/attrs.d.ts +6 -0
  13. package/dist/utils/carousels.d.ts +21 -0
  14. package/dist/utils/comparators.d.ts +3 -0
  15. package/dist/utils/comparators.js +20 -6
  16. package/dist/utils/debounce.d.ts +1 -0
  17. package/dist/utils/debounce.js +4 -4
  18. package/dist/utils/event.d.ts +1 -0
  19. package/dist/utils/event.js +7 -0
  20. package/dist/utils/expander.d.ts +14 -0
  21. package/dist/utils/imageUtils.d.ts +11 -0
  22. package/dist/utils/imageUtils.js +12 -12
  23. package/dist/utils/index.d.ts +21 -0
  24. package/dist/utils/loanCard.d.ts +35 -0
  25. package/dist/utils/loanCard.js +2 -2
  26. package/dist/utils/loanSearch/queryParamUtils.d.ts +1 -0
  27. package/dist/utils/loanUtils.d.ts +11 -0
  28. package/dist/utils/loanUtils.js +56 -53
  29. package/dist/utils/mapUtils.d.ts +5 -0
  30. package/dist/utils/markMatches.d.ts +1 -0
  31. package/dist/utils/paramCase.d.ts +1 -0
  32. package/dist/utils/printing.d.ts +2 -0
  33. package/dist/utils/scrollLock.d.ts +4 -0
  34. package/dist/utils/themeUtils.d.ts +12 -0
  35. package/dist/utils/throttle.d.ts +1 -0
  36. package/dist/utils/throttle.js +4 -4
  37. package/dist/utils/touchEvents.d.ts +3 -0
  38. package/dist/utils/touchEvents.js +9 -9
  39. package/dist/utils/treemap.d.ts +16 -0
  40. package/dist/utils/treemap.js +1 -1
  41. package/dist/vue/KvAccordionItem.js +28 -82
  42. package/dist/vue/KvAccordionItem.vue.d.ts +107 -0
  43. package/dist/vue/KvAccordionItem2.js +60 -0
  44. package/dist/vue/KvActivityRow.js +11 -22
  45. package/dist/vue/KvActivityRow.vue.d.ts +66 -0
  46. package/dist/vue/KvActivityRow2.js +16 -0
  47. package/dist/vue/KvAtbModal.css +1 -1
  48. package/dist/vue/KvAtbModal.js +68 -248
  49. package/dist/vue/KvAtbModal.vue.d.ts +359 -0
  50. package/dist/vue/KvAtbModal2.js +186 -0
  51. package/dist/vue/KvBorrowerImage.js +17 -118
  52. package/dist/vue/KvBorrowerImage.vue.d.ts +62 -0
  53. package/dist/vue/KvBorrowerImage2.js +106 -0
  54. package/dist/vue/KvButton.js +20 -164
  55. package/dist/vue/KvButton.vue.d.ts +94 -0
  56. package/dist/vue/KvButton2.js +149 -0
  57. package/dist/vue/KvCardFrame.js +12 -74
  58. package/dist/vue/KvCardFrame.vue.d.ts +86 -0
  59. package/dist/vue/KvCardFrame2.js +67 -0
  60. package/dist/vue/KvCarousel.css +1 -1
  61. package/dist/vue/KvCarousel.js +55 -192
  62. package/dist/vue/KvCarousel.vue.d.ts +135 -0
  63. package/dist/vue/KvCarousel2.js +142 -0
  64. package/dist/vue/KvCartModal.css +1 -1
  65. package/dist/vue/KvCartModal.js +31 -131
  66. package/dist/vue/KvCartModal.vue.d.ts +163 -0
  67. package/dist/vue/KvCartModal2.js +106 -0
  68. package/dist/vue/KvCartPill.js +12 -51
  69. package/dist/vue/KvCartPill.vue.d.ts +52 -0
  70. package/dist/vue/KvCartPill2.js +45 -0
  71. package/dist/vue/KvCheckbox.css +1 -1
  72. package/dist/vue/KvCheckbox.js +30 -126
  73. package/dist/vue/KvCheckbox.vue.d.ts +90 -0
  74. package/dist/vue/KvCheckbox2.js +102 -0
  75. package/dist/vue/KvCheckoutReceipt.css +1 -1
  76. package/dist/vue/KvCheckoutReceipt.js +120 -199
  77. package/dist/vue/KvCheckoutReceipt.vue.d.ts +164 -0
  78. package/dist/vue/KvCheckoutReceipt2.js +85 -0
  79. package/dist/vue/KvChip.js +12 -29
  80. package/dist/vue/KvChip.vue.d.ts +22 -0
  81. package/dist/vue/KvChip2.js +22 -0
  82. package/dist/vue/KvClassicLoanCard.css +1 -1
  83. package/dist/vue/KvClassicLoanCard.js +83 -351
  84. package/dist/vue/KvClassicLoanCard.vue.d.ts +2120 -0
  85. package/dist/vue/KvClassicLoanCard2.js +281 -0
  86. package/dist/vue/KvCommentsAdd.css +1 -1
  87. package/dist/vue/KvCommentsAdd.js +34 -81
  88. package/dist/vue/KvCommentsAdd.vue.d.ts +296 -0
  89. package/dist/vue/KvCommentsAdd2.js +57 -0
  90. package/dist/vue/KvCommentsContainer.js +15 -66
  91. package/dist/vue/KvCommentsContainer.vue.d.ts +954 -0
  92. package/dist/vue/KvCommentsContainer2.js +58 -0
  93. package/dist/vue/KvCommentsHeartButton.css +1 -1
  94. package/dist/vue/KvCommentsHeartButton.js +12 -51
  95. package/dist/vue/KvCommentsHeartButton.vue.d.ts +42 -0
  96. package/dist/vue/KvCommentsHeartButton2.js +44 -0
  97. package/dist/vue/KvCommentsList.js +9 -51
  98. package/dist/vue/KvCommentsList.vue.d.ts +619 -0
  99. package/dist/vue/KvCommentsList2.js +46 -0
  100. package/dist/vue/KvCommentsListItem.js +62 -186
  101. package/dist/vue/KvCommentsListItem.vue.d.ts +571 -0
  102. package/dist/vue/KvCommentsListItem2.js +135 -0
  103. package/dist/vue/KvCommentsReplyButton.css +1 -1
  104. package/dist/vue/KvCommentsReplyButton.js +8 -17
  105. package/dist/vue/KvCommentsReplyButton.vue.d.ts +98 -0
  106. package/dist/vue/KvCommentsReplyButton2.js +13 -0
  107. package/dist/vue/KvCompactLoanCard.css +1 -1
  108. package/dist/vue/KvCompactLoanCard.js +71 -327
  109. package/dist/vue/KvCompactLoanCard.vue.d.ts +1272 -0
  110. package/dist/vue/KvCompactLoanCard2.js +269 -0
  111. package/dist/vue/KvContentfulImg.js +51 -164
  112. package/dist/vue/KvContentfulImg.vue.d.ts +107 -0
  113. package/dist/vue/KvContentfulImg2.js +119 -0
  114. package/dist/vue/KvCountdownTimer.js +8 -28
  115. package/dist/vue/KvCountdownTimer.vue.d.ts +15 -0
  116. package/dist/vue/KvCountdownTimer2.js +26 -0
  117. package/dist/vue/KvDatePicker.js +21 -101
  118. package/dist/vue/KvDatePicker.vue.d.ts +58 -0
  119. package/dist/vue/KvDatePicker2.js +86 -0
  120. package/dist/vue/KvExpandable.js +9 -56
  121. package/dist/vue/KvExpandable.vue.d.ts +53 -0
  122. package/dist/vue/KvExpandable2.js +52 -0
  123. package/dist/vue/KvExpandableQuestion.js +23 -82
  124. package/dist/vue/KvExpandableQuestion.vue.d.ts +124 -0
  125. package/dist/vue/KvExpandableQuestion2.js +65 -0
  126. package/dist/vue/KvFlag.css +1 -1
  127. package/dist/vue/KvFlag.js +16 -617
  128. package/dist/vue/KvFlag.vue.d.ts +66 -0
  129. package/dist/vue/KvFlag2.js +606 -0
  130. package/dist/vue/KvGrid.js +7 -18
  131. package/dist/vue/KvGrid.vue.d.ts +14 -0
  132. package/dist/vue/KvGrid2.js +15 -0
  133. package/dist/vue/KvIconBag.js +12 -18
  134. package/dist/vue/KvIconBag.vue.d.ts +14 -0
  135. package/dist/vue/KvIconBag2.js +11 -0
  136. package/dist/vue/KvImpactDashboardHeader.vue.d.ts +17 -0
  137. package/dist/vue/KvImpactVerticalSelector.js +31 -110
  138. package/dist/vue/KvImpactVerticalSelector.vue.d.ts +278 -0
  139. package/dist/vue/KvImpactVerticalSelector2.js +85 -0
  140. package/dist/vue/KvInlineActivityCard.js +15 -44
  141. package/dist/vue/KvInlineActivityCard.vue.d.ts +71 -0
  142. package/dist/vue/KvInlineActivityCard2.js +35 -0
  143. package/dist/vue/KvInlineActivityFeed.css +1 -1
  144. package/dist/vue/KvInlineActivityFeed.js +11 -23
  145. package/dist/vue/KvInlineActivityFeed.vue.d.ts +85 -0
  146. package/dist/vue/KvInlineActivityFeed2.js +17 -0
  147. package/dist/vue/KvIntroductionLoanCard.css +1 -1
  148. package/dist/vue/KvIntroductionLoanCard.js +111 -309
  149. package/dist/vue/KvIntroductionLoanCard.vue.d.ts +617 -0
  150. package/dist/vue/KvIntroductionLoanCard2.js +209 -0
  151. package/dist/vue/KvLendAmountButton.js +9 -53
  152. package/dist/vue/KvLendAmountButton.vue.d.ts +140 -0
  153. package/dist/vue/KvLendAmountButton2.js +48 -0
  154. package/dist/vue/KvLendCta.css +1 -1
  155. package/dist/vue/KvLendCta.js +150 -530
  156. package/dist/vue/KvLendCta.vue.d.ts +583 -0
  157. package/dist/vue/KvLendCta2.js +387 -0
  158. package/dist/vue/KvLightbox.js +37 -148
  159. package/dist/vue/KvLightbox.vue.d.ts +77 -0
  160. package/dist/vue/KvLightbox2.js +117 -0
  161. package/dist/vue/KvLineGraph.js +25 -58
  162. package/dist/vue/KvLineGraph.vue.d.ts +35 -0
  163. package/dist/vue/KvLineGraph2.js +39 -0
  164. package/dist/vue/KvLoadingPlaceholder.vue.d.ts +2 -0
  165. package/dist/vue/KvLoadingSpinner.js +9 -34
  166. package/dist/vue/KvLoadingSpinner.vue.d.ts +27 -0
  167. package/dist/vue/KvLoadingSpinner2.js +29 -0
  168. package/dist/vue/KvLoanActivities.css +1 -1
  169. package/dist/vue/KvLoanActivities.js +37 -179
  170. package/dist/vue/KvLoanActivities.vue.d.ts +853 -0
  171. package/dist/vue/KvLoanActivities2.js +151 -0
  172. package/dist/vue/KvLoanBookmark.js +14 -40
  173. package/dist/vue/KvLoanBookmark.vue.d.ts +32 -0
  174. package/dist/vue/KvLoanBookmark2.js +32 -0
  175. package/dist/vue/KvLoanCallouts.css +1 -1
  176. package/dist/vue/KvLoanCallouts.js +10 -17
  177. package/dist/vue/KvLoanCallouts.vue.d.ts +18 -0
  178. package/dist/vue/KvLoanCallouts2.js +12 -0
  179. package/dist/vue/KvLoanInfoCard.js +20 -19
  180. package/dist/vue/KvLoanProgressGroup.css +1 -1
  181. package/dist/vue/KvLoanProgressGroup.js +18 -57
  182. package/dist/vue/KvLoanProgressGroup.vue.d.ts +108 -0
  183. package/dist/vue/KvLoanProgressGroup2.js +44 -0
  184. package/dist/vue/KvLoanTag.js +15 -103
  185. package/dist/vue/KvLoanTag.vue.d.ts +46 -0
  186. package/dist/vue/KvLoanTag2.js +94 -0
  187. package/dist/vue/KvLoanTeamPick.vue.d.ts +2 -0
  188. package/dist/vue/KvLoanUse.js +12 -100
  189. package/dist/vue/KvLoanUse.vue.d.ts +120 -0
  190. package/dist/vue/KvLoanUse2.js +95 -0
  191. package/dist/vue/KvLogo.vue.d.ts +2 -0
  192. package/dist/vue/KvMap.js +13 -381
  193. package/dist/vue/KvMap.vue.d.ts +213 -0
  194. package/dist/vue/KvMap2.js +376 -0
  195. package/dist/vue/KvMaterialIcon.js +10 -20
  196. package/dist/vue/KvMaterialIcon.vue.d.ts +14 -0
  197. package/dist/vue/KvMaterialIcon2.js +15 -0
  198. package/dist/vue/KvPageContainer.js +9 -8
  199. package/dist/vue/KvPageContainer.vue.d.ts +2 -0
  200. package/dist/vue/KvPageContainer2.js +4 -0
  201. package/dist/vue/KvPagination.js +38 -138
  202. package/dist/vue/KvPagination.vue.d.ts +107 -0
  203. package/dist/vue/KvPagination2.js +105 -0
  204. package/dist/vue/KvPieChart.css +1 -1
  205. package/dist/vue/KvPieChart.js +49 -128
  206. package/dist/vue/KvPieChart.vue.d.ts +47 -0
  207. package/dist/vue/KvPieChart2.js +85 -0
  208. package/dist/vue/KvPill.js +9 -19
  209. package/dist/vue/KvPill.vue.d.ts +23 -0
  210. package/dist/vue/KvPill2.js +15 -0
  211. package/dist/vue/KvPopper.js +14 -122
  212. package/dist/vue/KvPopper.vue.d.ts +80 -0
  213. package/dist/vue/KvPopper2.js +113 -0
  214. package/dist/vue/KvProgressBar.js +17 -112
  215. package/dist/vue/KvProgressBar.vue.d.ts +70 -0
  216. package/dist/vue/KvProgressBar2.js +101 -0
  217. package/dist/vue/KvPulsingDot.css +1 -1
  218. package/dist/vue/KvPulsingDot.js +11 -25
  219. package/dist/vue/KvPulsingDot.vue.d.ts +23 -0
  220. package/dist/vue/KvPulsingDot2.js +19 -0
  221. package/dist/vue/KvRadio.js +23 -106
  222. package/dist/vue/KvRadio.vue.d.ts +62 -0
  223. package/dist/vue/KvRadio2.js +89 -0
  224. package/dist/vue/KvSecondaryNav.css +1 -1
  225. package/dist/vue/KvSecondaryNav.js +46 -122
  226. package/dist/vue/KvSecondaryNav.vue.d.ts +117 -0
  227. package/dist/vue/KvSecondaryNav2.js +82 -0
  228. package/dist/vue/KvSelect.css +1 -1
  229. package/dist/vue/KvSelect.js +18 -78
  230. package/dist/vue/KvSelect.vue.d.ts +58 -0
  231. package/dist/vue/KvSelect2.js +66 -0
  232. package/dist/vue/KvSideSheet.js +44 -262
  233. package/dist/vue/KvSideSheet.vue.d.ts +136 -0
  234. package/dist/vue/KvSideSheet2.js +224 -0
  235. package/dist/vue/KvSwitch.js +23 -76
  236. package/dist/vue/KvSwitch.vue.d.ts +34 -0
  237. package/dist/vue/KvSwitch2.js +59 -0
  238. package/dist/vue/KvTab.js +15 -57
  239. package/dist/vue/KvTab.vue.d.ts +34 -0
  240. package/dist/vue/KvTab2.js +48 -0
  241. package/dist/vue/KvTabPanel.js +14 -36
  242. package/dist/vue/KvTabPanel.vue.d.ts +14 -0
  243. package/dist/vue/KvTabPanel2.js +28 -0
  244. package/dist/vue/KvTabs.js +21 -75
  245. package/dist/vue/KvTabs.vue.d.ts +22 -0
  246. package/dist/vue/KvTabs2.js +60 -0
  247. package/dist/vue/KvTextInput.js +28 -148
  248. package/dist/vue/KvTextInput.vue.d.ts +105 -0
  249. package/dist/vue/KvTextInput2.js +126 -0
  250. package/dist/vue/KvTextLink.js +13 -76
  251. package/dist/vue/KvTextLink.vue.d.ts +64 -0
  252. package/dist/vue/KvTextLink2.js +68 -0
  253. package/dist/vue/KvThemeProvider.js +8 -59
  254. package/dist/vue/KvThemeProvider.vue.d.ts +23 -0
  255. package/dist/vue/KvThemeProvider2.js +55 -0
  256. package/dist/vue/KvToast.js +32 -69
  257. package/dist/vue/KvToast.vue.d.ts +31 -0
  258. package/dist/vue/KvToast2.js +43 -0
  259. package/dist/vue/KvTooltip.css +1 -1
  260. package/dist/vue/KvTooltip.js +27 -123
  261. package/dist/vue/KvTooltip.vue.d.ts +2 -0
  262. package/dist/vue/KvTooltip2.js +103 -0
  263. package/dist/vue/KvTreeMapChart.css +1 -1
  264. package/dist/vue/KvTreeMapChart.js +28 -156
  265. package/dist/vue/KvTreeMapChart.vue.d.ts +60 -0
  266. package/dist/vue/KvTreeMapChart2.js +133 -0
  267. package/dist/vue/KvUserAvatar.js +28 -110
  268. package/dist/vue/KvUserAvatar.vue.d.ts +55 -0
  269. package/dist/vue/KvUserAvatar2.js +88 -0
  270. package/dist/vue/KvUtilityMenu.js +19 -95
  271. package/dist/vue/KvUtilityMenu.vue.d.ts +104 -0
  272. package/dist/vue/KvUtilityMenu2.js +81 -0
  273. package/dist/vue/KvVerticalCarousel.js +40 -137
  274. package/dist/vue/KvVerticalCarousel.vue.d.ts +90 -0
  275. package/dist/vue/KvVerticalCarousel2.js +103 -0
  276. package/dist/vue/KvVotingCard.css +1 -1
  277. package/dist/vue/KvVotingCard.js +31 -88
  278. package/dist/vue/KvVotingCard.vue.d.ts +249 -0
  279. package/dist/vue/KvVotingCard2.js +63 -0
  280. package/dist/vue/KvVotingCardV2.js +35 -90
  281. package/dist/vue/KvVotingCardV2.vue.d.ts +308 -0
  282. package/dist/vue/KvVotingCardV22.js +61 -0
  283. package/dist/vue/KvWideLoanCard.css +1 -1
  284. package/dist/vue/KvWideLoanCard.js +66 -274
  285. package/dist/vue/KvWideLoanCard.vue.d.ts +1191 -0
  286. package/dist/vue/KvWideLoanCard2.js +220 -0
  287. package/dist/vue/KvWwwHeader/KvHeaderAboutMenu.js +34 -38
  288. package/dist/vue/KvWwwHeader/KvHeaderAboutMenu.vue.d.ts +20 -0
  289. package/dist/vue/KvWwwHeader/KvHeaderAboutMenu2.js +9 -0
  290. package/dist/vue/KvWwwHeader/KvHeaderDropdownLink.js +20 -83
  291. package/dist/vue/KvWwwHeader/KvHeaderDropdownLink.vue.d.ts +91 -0
  292. package/dist/vue/KvWwwHeader/KvHeaderDropdownLink2.js +69 -0
  293. package/dist/vue/KvWwwHeader/KvHeaderLinkBar.css +1 -1
  294. package/dist/vue/KvWwwHeader/KvHeaderLinkBar.js +77 -248
  295. package/dist/vue/KvWwwHeader/KvHeaderLinkBar.vue.d.ts +1071 -0
  296. package/dist/vue/KvWwwHeader/KvHeaderLinkBar2.js +178 -0
  297. package/dist/vue/KvWwwHeader/KvHeaderLogo.js +8 -12
  298. package/dist/vue/KvWwwHeader/KvHeaderLogo.vue.d.ts +4 -0
  299. package/dist/vue/KvWwwHeader/KvHeaderLogo2.js +9 -0
  300. package/dist/vue/KvWwwHeader/KvHeaderMenuLink.vue.d.ts +17 -0
  301. package/dist/vue/KvWwwHeader/KvHeaderMobileMenu.css +1 -1
  302. package/dist/vue/KvWwwHeader/KvHeaderMobileMenu.js +37 -91
  303. package/dist/vue/KvWwwHeader/KvHeaderMobileMenu.vue.d.ts +162 -0
  304. package/dist/vue/KvWwwHeader/KvHeaderMobileMenu2.js +59 -0
  305. package/dist/vue/KvWwwHeader/KvHeaderMyKivaMenu.js +36 -58
  306. package/dist/vue/KvWwwHeader/KvHeaderMyKivaMenu.vue.d.ts +59 -0
  307. package/dist/vue/KvWwwHeader/KvHeaderMyKivaMenu2.js +27 -0
  308. package/dist/vue/KvWwwHeader/KvHeaderTakeActionMenu.js +20 -24
  309. package/dist/vue/KvWwwHeader/KvHeaderTakeActionMenu.vue.d.ts +20 -0
  310. package/dist/vue/KvWwwHeader/KvHeaderTakeActionMenu2.js +9 -0
  311. package/dist/vue/KvWwwHeader/LendMenu/KvLendListMenu.css +1 -1
  312. package/dist/vue/KvWwwHeader/LendMenu/KvLendListMenu.js +105 -181
  313. package/dist/vue/KvWwwHeader/LendMenu/KvLendListMenu.vue.d.ts +319 -0
  314. package/dist/vue/KvWwwHeader/LendMenu/KvLendListMenu2.js +82 -0
  315. package/dist/vue/KvWwwHeader/LendMenu/KvLendMegaMenu.css +1 -1
  316. package/dist/vue/KvWwwHeader/LendMenu/KvLendMegaMenu.js +93 -173
  317. package/dist/vue/KvWwwHeader/LendMenu/KvLendMegaMenu.vue.d.ts +166 -0
  318. package/dist/vue/KvWwwHeader/LendMenu/KvLendMegaMenu2.js +86 -0
  319. package/dist/vue/KvWwwHeader/LendMenu/KvLendMenu.js +17 -157
  320. package/dist/vue/KvWwwHeader/LendMenu/KvLendMenu.vue.d.ts +506 -0
  321. package/dist/vue/KvWwwHeader/LendMenu/KvLendMenu2.js +145 -0
  322. package/dist/vue/KvWwwHeader/LendMenu/KvLendMenuCountryList.css +1 -1
  323. package/dist/vue/KvWwwHeader/LendMenu/KvLendMenuCountryList.js +11 -18
  324. package/dist/vue/KvWwwHeader/LendMenu/KvLendMenuCountryList.vue.d.ts +20 -0
  325. package/dist/vue/KvWwwHeader/LendMenu/KvLendMenuCountryList2.js +12 -0
  326. package/dist/vue/KvWwwHeader/LendMenu/KvLendMenuSearchList.js +10 -16
  327. package/dist/vue/KvWwwHeader/LendMenu/KvLendMenuSearchList.vue.d.ts +20 -0
  328. package/dist/vue/KvWwwHeader/LendMenu/KvLendMenuSearchList2.js +11 -0
  329. package/dist/vue/KvWwwHeader.css +1 -1
  330. package/dist/vue/KvWwwHeader.js +35 -148
  331. package/dist/vue/KvWwwHeader.vue.d.ts +4430 -0
  332. package/dist/vue/KvWwwHeader2.js +119 -0
  333. package/dist/vue/index.d.ts +86 -0
  334. package/package.json +35 -33
  335. package/tsconfig.json +32 -0
  336. package/vite.config.ts +84 -0
@@ -1,324 +1,106 @@
1
- import { toRefs as X, ref as d, reactive as Y, computed as j, watch as g, onMounted as Z, onBeforeUnmount as $, onUnmounted as ee, resolveComponent as te, openBlock as p, createElementBlock as k, normalizeClass as b, withModifiers as ne, createElementVNode as w, normalizeStyle as H, createVNode as z, createCommentVNode as x, toDisplayString as oe, renderSlot as F, nextTick as ie } from "vue";
2
- import { mdiArrowLeft as le, mdiClose as ae, mdiOpenInNew as se } from "@mdi/js";
3
- import de from "./KvMaterialIcon.js";
4
- import re from "../_virtual/_plugin-vue_export-helper.js";
5
- const ce = {
6
- name: "KvSideSheet",
7
- components: {
8
- KvMaterialIcon: de
9
- },
10
- props: {
11
- /**
12
- * Whether the side sheet is open or not
13
- * */
14
- visible: {
15
- type: Boolean,
16
- default: !1
17
- },
18
- /**
19
- * Show the back button
20
- * */
21
- showBackButton: {
22
- type: Boolean,
23
- default: !1
24
- },
25
- /**
26
- * Show the go to link button
27
- * */
28
- showGoToLink: {
29
- type: Boolean,
30
- default: !1
31
- },
32
- /**
33
- * Show the border of the headline section
34
- * */
35
- showHeadlineBorder: {
36
- type: Boolean,
37
- default: !0
38
- },
39
- /**
40
- * Tracking event function
41
- * */
42
- kvTrackFunction: {
43
- type: Function,
44
- default: () => ({})
45
- },
46
- /**
47
- * Tracking event category
48
- * */
49
- trackEventCategory: {
50
- type: String,
51
- default: ""
52
- },
53
- /**
54
- * The headline of the side sheet
55
- * */
56
- headline: {
57
- type: String,
58
- default: ""
59
- },
60
- /**
61
- * The CSS width of the SideSheet, either as a string (e.g., '33.33%') or an object with
62
- * breakpoint-specific widths (e.g., { default: '100%', lg: '50%' }). Supports responsive
63
- * design with breakpoints: default, sm, md, lg, xl, 2xl
64
- * */
65
- widthDimensions: {
66
- type: [String, Object],
67
- default: () => ({ default: "100%", md: "50%" }),
68
- validator: (n) => typeof n == "string" ? /^(\d+px|[\d.]+%|auto|inherit|initial)$/.test(n) : typeof n == "object" ? Object.keys(n).every((o) => ["default", "sm", "md", "lg", "xl", "2xl"].includes(o) && /^(\d+px|[\d.]+%|auto|inherit|initial)$/.test(n[o])) : !1
69
- },
70
- /**
71
- * Whether to hide the background of the headline section on mobile (e.g., in Borrower Profile Sidesheet)
72
- * */
73
- hideHeadlineBgOnMobile: {
74
- type: Boolean,
75
- default: !1
76
- },
77
- /**
78
- * Whether to animate the opening of the side sheet
79
- * */
80
- isAnimated: {
81
- type: Boolean,
82
- default: !0
83
- }
84
- },
85
- emits: ["side-sheet-closed", "go-to-link"],
86
- setup(n, { emit: o, slots: i }) {
87
- const {
88
- visible: t,
89
- kvTrackFunction: M,
90
- trackEventCategory: I,
91
- widthDimensions: l,
92
- hideHeadlineBgOnMobile: r,
93
- isAnimated: V
94
- } = X(n), c = d(!V.value), s = d({}), O = d(null), m = d(null), y = d(null), _ = d(null), N = d(null), S = d(null), B = d(null), W = d("100vh"), v = Y({
95
- headline: 0,
96
- controls: 0
97
- }), G = j(() => {
98
- const e = _.value - (r.value ? 0 : v.headline) - v.controls;
99
- return Math.max(e, 0);
100
- }), A = j(() => {
101
- if (typeof l.value == "string")
102
- return l.value;
103
- const e = {
104
- sm: 640,
105
- md: 768,
106
- lg: 1024,
107
- xl: 1280,
108
- "2xl": 1536
109
- }, a = N.value || (typeof window < "u" ? window.innerWidth : 0), f = Object.keys(l.value).filter((u) => u !== "default").sort((u, R) => e[R] - e[u]).find((u) => a >= e[u]);
110
- return f ? l.value[f] : l.value.default || "100%";
111
- }), q = (e, a) => {
112
- let f;
113
- return (...u) => {
114
- clearTimeout(f), f = setTimeout(() => e(...u), a);
115
- };
116
- }, C = () => {
117
- _.value = typeof window < "u" ? window.innerHeight : 0, N.value = typeof window < "u" ? window.innerWidth : 0, setTimeout(() => {
118
- ie(() => {
119
- var e;
120
- if (y.value) {
121
- const a = y.value.getBoundingClientRect();
122
- v.headline = a.height;
123
- } else
124
- v.headline = 0;
125
- if ((e = i.controls) != null && e.call(i) && m.value) {
126
- const a = m.value.getBoundingClientRect();
127
- v.controls = a.height;
128
- } else
129
- v.controls = 0;
130
- });
131
- }, 300);
132
- }, E = q(C, 100), T = () => {
133
- const e = "tw-overflow-hidden";
134
- c.value ? document.body.classList.add(e) : document.body.classList.remove(e);
135
- }, K = () => {
136
- c.value = !1, T(), M.value(I.value, "click", "side-sheet-closed"), setTimeout(() => {
137
- o("side-sheet-closed");
138
- }, 300), document.removeEventListener("keyup", L);
139
- }, J = () => {
140
- o("go-to-link");
141
- }, L = (e) => {
142
- (e == null ? void 0 : e.key) === "Escape" && K();
143
- }, P = j(() => ({
144
- width: A.value
145
- })), U = () => {
146
- if (typeof l.value == "object" && O.value) {
147
- const e = "side-sheet-styles";
148
- let a = document.getElementById(e);
149
- a || (a = document.createElement("style"), a.id = e, document.head.appendChild(a));
150
- const f = {
151
- sm: "640px",
152
- md: "768px",
153
- lg: "1024px",
154
- xl: "1280px",
155
- "2xl": "1536px"
156
- }, R = Object.keys(l.value).filter((h) => h !== "default").sort((h, Q) => {
157
- const D = ["sm", "md", "lg", "xl", "2xl"];
158
- return D.indexOf(h) - D.indexOf(Q);
159
- }).map((h) => `
160
- @media (min-width: ${f[h]}) {
161
- #side-sheet-${n.trackEventCategory || "default"} {
162
- width: ${l.value[h]} !important;
163
- }
164
- }
165
- `).join("");
166
- a.textContent = R, O.value.id = `side-sheet-${n.trackEventCategory || "default"}`;
167
- }
168
- };
169
- return g(t, (e) => {
170
- typeof window < "u" && (e ? (document.addEventListener("keyup", L), s.value = {}, setTimeout(() => {
171
- c.value = !0, T(), C();
172
- }, 10)) : (c.value = !1, T(), document.removeEventListener("keyup", L), s.value = {}));
173
- }, { immediate: !0 }), g(() => {
174
- var e;
175
- return (e = i.controls) == null ? void 0 : e.call(i);
176
- }, () => {
177
- setTimeout(() => {
178
- C();
179
- }, 100);
180
- }, { deep: !0 }), g(A, (e) => {
181
- c.value && t.value && s.value && Object.keys(s.value).length > 0 && (s.value = {
182
- ...s.value,
183
- width: e,
184
- transition: "none"
185
- // No animation for resize
186
- }, setTimeout(() => {
187
- s.value && Object.keys(s.value).length > 0 && (s.value = {
188
- ...s.value,
189
- transition: "all 0.3s ease-in-out"
190
- });
191
- }, 50));
192
- }), g(l, () => {
193
- c.value && U();
194
- }, { immediate: !0 }), g(c, (e) => {
195
- e && U();
196
- }), Z(() => {
197
- W.value = "auto", setTimeout(() => {
198
- C();
199
- }, 100), m.value && (S.value = new ResizeObserver(E), S.value.observe(m.value)), y.value && (B.value = new ResizeObserver(E), B.value.observe(y.value)), window.addEventListener("resize", E);
200
- }), $(() => {
201
- c.value && document.body.classList.remove("tw-overflow-hidden");
202
- }), ee(() => {
203
- S.value && S.value.disconnect(), B.value && B.value.disconnect(), window.removeEventListener("resize", E);
204
- const e = document.getElementById("side-sheet-styles");
205
- e && e.remove();
206
- }), {
207
- closeSideSheet: K,
208
- contentHeight: G,
209
- controlsRef: m,
210
- headlineRef: y,
211
- sideSheetRef: O,
212
- sideSheetStyles: P,
213
- goToLink: J,
214
- mdiArrowLeft: le,
215
- mdiClose: ae,
216
- mdiOpenInNew: se,
217
- modalStyles: s,
218
- open: c,
219
- loadingContentMinHeight: W
220
- };
221
- }
222
- }, ue = { class: "tw-flex tw-gap-1.5" }, we = { key: 1 }, fe = { class: "tw-flex tw-gap-1.5" };
223
- function ve(n, o, i, t, M, I) {
224
- const l = te("kv-material-icon");
225
- return i.visible ? (p(), k("div", {
1
+ import y from "./KvSideSheet2.js";
2
+ import { resolveComponent as m, openBlock as n, createElementBlock as w, normalizeClass as r, withModifiers as g, createElementVNode as o, normalizeStyle as d, createVNode as f, createCommentVNode as a, toDisplayString as S, renderSlot as h } from "vue";
3
+ import b from "../_virtual/_plugin-vue_export-helper.js";
4
+ const k = { class: "tw-flex tw-gap-1.5" }, v = { key: 1 }, x = { class: "tw-flex tw-gap-1.5" };
5
+ function u(s, e, l, t, C, _) {
6
+ const c = m("kv-material-icon");
7
+ return l.visible ? (n(), w("div", {
226
8
  key: 0,
227
- class: b(["tw-block lg:tw-mt-0 tw-fixed tw-inset-0 tw-bg-black tw-transition-all md:tw-duration-150 tw-z-modal", {
9
+ class: r(["tw-block lg:tw-mt-0 tw-fixed tw-inset-0 tw-bg-black tw-transition-all md:tw-duration-150 tw-z-modal", {
228
10
  "tw-bg-opacity-0 tw-delay-300": !t.open,
229
11
  "tw-bg-opacity-low": t.open
230
12
  }]),
231
- onClick: o[3] || (o[3] = ne((...r) => t.closeSideSheet && t.closeSideSheet(...r), ["self"]))
13
+ onClick: e[3] || (e[3] = g((...i) => t.closeSideSheet && t.closeSideSheet(...i), ["self"]))
232
14
  }, [
233
- w("div", {
15
+ o("div", {
234
16
  ref: "sideSheetRef",
235
- class: b(["tw-fixed tw-right-0 tw-transition-all tw-duration-300 tw-bg-white", {
17
+ class: r(["tw-fixed tw-right-0 tw-transition-all tw-duration-300 tw-bg-white", {
236
18
  "tw-translate-x-full": !t.open,
237
19
  "tw-translate-x-0": t.open,
238
- "tw-h-full": n.$slots.controls
20
+ "tw-h-full": s.$slots.controls
239
21
  }]),
240
- style: H(t.sideSheetStyles)
22
+ style: d(t.sideSheetStyles)
241
23
  }, [
242
- w("div", {
24
+ o("div", {
243
25
  class: "tw-flex tw-flex-col tw-h-full",
244
- style: H(t.modalStyles)
26
+ style: d(t.modalStyles)
245
27
  }, [
246
- w("div", {
28
+ o("div", {
247
29
  ref: "headlineRef",
248
- class: b(["tw-flex tw-justify-between tw-transition-opacity tw-duration-200 tw-px-3 tw-py-2 tw-border-tertiary tw-gap-1.5", {
30
+ class: r(["tw-flex tw-justify-between tw-transition-opacity tw-duration-200 tw-px-3 tw-py-2 tw-border-tertiary tw-gap-1.5", {
249
31
  "tw-opacity-0": !t.open,
250
32
  "tw-opacity-full": t.open,
251
- "tw-border-b": i.showHeadlineBorder
33
+ "tw-border-b": l.showHeadlineBorder
252
34
  }])
253
35
  }, [
254
- w("div", ue, [
255
- i.showBackButton ? (p(), k("button", {
36
+ o("div", k, [
37
+ l.showBackButton ? (n(), w("button", {
256
38
  key: 0,
257
39
  class: "hover:tw-text-action-highlight tw-flex tw-items-center tw-justify-center",
258
- onClick: o[0] || (o[0] = (...r) => t.closeSideSheet && t.closeSideSheet(...r))
40
+ onClick: e[0] || (e[0] = (...i) => t.closeSideSheet && t.closeSideSheet(...i))
259
41
  }, [
260
- z(l, {
42
+ f(c, {
261
43
  class: "tw-w-3 tw-h-3",
262
44
  icon: t.mdiArrowLeft
263
45
  }, null, 8, ["icon"])
264
- ])) : x("", !0),
265
- i.headline ? (p(), k("h3", we, oe(i.headline), 1)) : x("", !0)
46
+ ])) : a("", !0),
47
+ l.headline ? (n(), w("h3", v, S(l.headline), 1)) : a("", !0)
266
48
  ]),
267
- w("div", fe, [
268
- i.showGoToLink ? (p(), k("button", {
49
+ o("div", x, [
50
+ l.showGoToLink ? (n(), w("button", {
269
51
  key: 0,
270
52
  class: "hover:tw-text-action-highlight tw-flex tw-items-center tw-justify-center",
271
- onClick: o[1] || (o[1] = (...r) => t.goToLink && t.goToLink(...r))
53
+ onClick: e[1] || (e[1] = (...i) => t.goToLink && t.goToLink(...i))
272
54
  }, [
273
- z(l, {
55
+ f(c, {
274
56
  class: "tw-w-3 tw-h-3",
275
57
  icon: t.mdiOpenInNew
276
58
  }, null, 8, ["icon"])
277
- ])) : x("", !0),
278
- w("button", {
59
+ ])) : a("", !0),
60
+ o("button", {
279
61
  class: "hover:tw-text-action-highlight tw-flex tw-items-center tw-justify-center",
280
- onClick: o[2] || (o[2] = (...r) => t.closeSideSheet && t.closeSideSheet(...r))
62
+ onClick: e[2] || (e[2] = (...i) => t.closeSideSheet && t.closeSideSheet(...i))
281
63
  }, [
282
- z(l, {
64
+ f(c, {
283
65
  class: "tw-w-3 tw-h-3",
284
66
  icon: t.mdiClose
285
67
  }, null, 8, ["icon"])
286
68
  ])
287
69
  ])
288
70
  ], 2),
289
- w("div", {
71
+ o("div", {
290
72
  id: "sidesheet-content",
291
73
  class: "tw-overflow-y-auto tw-overscroll-y-contain",
292
- style: H([
74
+ style: d([
293
75
  { "min-height": t.loadingContentMinHeight },
294
76
  { height: t.contentHeight + "px" }
295
77
  ])
296
78
  }, [
297
- w("div", {
298
- class: b(["tw-px-2 tw-transition-opacity tw-duration-200", {
79
+ o("div", {
80
+ class: r(["tw-px-2 tw-transition-opacity tw-duration-200", {
299
81
  "tw-opacity-0": !t.open,
300
82
  "tw-opacity-full": t.open
301
83
  }])
302
84
  }, [
303
- F(n.$slots, "default")
85
+ h(s.$slots, "default")
304
86
  ], 2)
305
87
  ], 4),
306
- n.$slots.controls ? (p(), k("div", {
88
+ s.$slots.controls ? (n(), w("div", {
307
89
  key: 0,
308
90
  ref: "controlsRef",
309
- class: b(["tw-absolute tw-bottom-0 tw-w-full tw-border-t tw-border-tertiary tw-bg-white tw-transition-opacity tw-duration-200", {
91
+ class: r(["tw-absolute tw-bottom-0 tw-w-full tw-border-t tw-border-tertiary tw-bg-white tw-transition-opacity tw-duration-200", {
310
92
  "tw-opacity-0": !t.open,
311
93
  "tw-opacity-full": t.open
312
94
  }]),
313
95
  style: { "z-index": "999" }
314
96
  }, [
315
- F(n.$slots, "controls")
316
- ], 2)) : x("", !0)
97
+ h(s.$slots, "controls")
98
+ ], 2)) : a("", !0)
317
99
  ], 4)
318
100
  ], 6)
319
- ], 2)) : x("", !0);
101
+ ], 2)) : a("", !0);
320
102
  }
321
- const pe = /* @__PURE__ */ re(ce, [["render", ve]]);
103
+ const z = /* @__PURE__ */ b(y, [["render", u]]);
322
104
  export {
323
- pe as default
105
+ z as default
324
106
  };
@@ -0,0 +1,136 @@
1
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
2
+ visible: {
3
+ type: BooleanConstructor;
4
+ default: boolean;
5
+ };
6
+ showBackButton: {
7
+ type: BooleanConstructor;
8
+ default: boolean;
9
+ };
10
+ showGoToLink: {
11
+ type: BooleanConstructor;
12
+ default: boolean;
13
+ };
14
+ showHeadlineBorder: {
15
+ type: BooleanConstructor;
16
+ default: boolean;
17
+ };
18
+ kvTrackFunction: {
19
+ type: FunctionConstructor;
20
+ default: () => {};
21
+ };
22
+ trackEventCategory: {
23
+ type: StringConstructor;
24
+ default: string;
25
+ };
26
+ headline: {
27
+ type: StringConstructor;
28
+ default: string;
29
+ };
30
+ widthDimensions: {
31
+ type: (StringConstructor | ObjectConstructor)[];
32
+ default: () => {
33
+ default: string;
34
+ md: string;
35
+ };
36
+ validator: (value: unknown) => boolean;
37
+ };
38
+ hideHeadlineBgOnMobile: {
39
+ type: BooleanConstructor;
40
+ default: boolean;
41
+ };
42
+ isAnimated: {
43
+ type: BooleanConstructor;
44
+ default: boolean;
45
+ };
46
+ }>, {
47
+ closeSideSheet: () => void;
48
+ contentHeight: import('vue').ComputedRef<number>;
49
+ controlsRef: import('vue').Ref<any, any>;
50
+ headlineRef: import('vue').Ref<any, any>;
51
+ sideSheetRef: import('vue').Ref<any, any>;
52
+ sideSheetStyles: import('vue').ComputedRef<{
53
+ width: any;
54
+ }>;
55
+ goToLink: () => void;
56
+ mdiArrowLeft: string;
57
+ mdiClose: string;
58
+ mdiOpenInNew: string;
59
+ modalStyles: import('vue').Ref<{}, {}>;
60
+ open: import('vue').Ref<boolean, boolean>;
61
+ loadingContentMinHeight: import('vue').Ref<string, string>;
62
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("side-sheet-closed" | "go-to-link")[], "side-sheet-closed" | "go-to-link", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
63
+ visible: {
64
+ type: BooleanConstructor;
65
+ default: boolean;
66
+ };
67
+ showBackButton: {
68
+ type: BooleanConstructor;
69
+ default: boolean;
70
+ };
71
+ showGoToLink: {
72
+ type: BooleanConstructor;
73
+ default: boolean;
74
+ };
75
+ showHeadlineBorder: {
76
+ type: BooleanConstructor;
77
+ default: boolean;
78
+ };
79
+ kvTrackFunction: {
80
+ type: FunctionConstructor;
81
+ default: () => {};
82
+ };
83
+ trackEventCategory: {
84
+ type: StringConstructor;
85
+ default: string;
86
+ };
87
+ headline: {
88
+ type: StringConstructor;
89
+ default: string;
90
+ };
91
+ widthDimensions: {
92
+ type: (StringConstructor | ObjectConstructor)[];
93
+ default: () => {
94
+ default: string;
95
+ md: string;
96
+ };
97
+ validator: (value: unknown) => boolean;
98
+ };
99
+ hideHeadlineBgOnMobile: {
100
+ type: BooleanConstructor;
101
+ default: boolean;
102
+ };
103
+ isAnimated: {
104
+ type: BooleanConstructor;
105
+ default: boolean;
106
+ };
107
+ }>> & Readonly<{
108
+ "onSide-sheet-closed"?: (...args: any[]) => any;
109
+ "onGo-to-link"?: (...args: any[]) => any;
110
+ }>, {
111
+ visible: boolean;
112
+ kvTrackFunction: Function;
113
+ trackEventCategory: string;
114
+ showBackButton: boolean;
115
+ showGoToLink: boolean;
116
+ showHeadlineBorder: boolean;
117
+ headline: string;
118
+ widthDimensions: string | Record<string, any>;
119
+ hideHeadlineBgOnMobile: boolean;
120
+ isAnimated: boolean;
121
+ }, {}, {
122
+ KvMaterialIcon: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
123
+ icon: {
124
+ type: StringConstructor;
125
+ default: string;
126
+ };
127
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
128
+ icon: {
129
+ type: StringConstructor;
130
+ default: string;
131
+ };
132
+ }>> & Readonly<{}>, {
133
+ icon: string;
134
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
135
+ }, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
136
+ export default _default;