@cldemo/ui-kit 1.0.9 → 1.0.11

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 (329) hide show
  1. package/COMPONENT_CATALOG.md +2 -2
  2. package/buildLibs/all/index.cjs +2 -5
  3. package/buildLibs/all/index.css +1 -0
  4. package/buildLibs/all/index.js +82 -6
  5. package/buildLibs/mobile/index.cjs +2 -5
  6. package/buildLibs/mobile/index.css +1 -0
  7. package/buildLibs/mobile/index.js +50 -6
  8. package/buildLibs/utils/Element/ClBadge.d.ts +3 -0
  9. package/buildLibs/utils/Element/ClBreadcrumb.d.ts +3 -0
  10. package/buildLibs/utils/Element/ClButton.d.ts +3 -0
  11. package/buildLibs/utils/Element/ClCallout.d.ts +3 -0
  12. package/buildLibs/utils/Element/ClCard.d.ts +3 -0
  13. package/buildLibs/utils/Element/ClCardColor.d.ts +3 -0
  14. package/buildLibs/utils/Element/ClCheckbox.d.ts +3 -0
  15. package/buildLibs/utils/Element/ClCheckboxOne.cjs +2 -0
  16. package/buildLibs/utils/Element/ClCheckboxOne.cjs.map +1 -0
  17. package/buildLibs/utils/Element/ClCheckboxOne.d.ts +3 -0
  18. package/buildLibs/utils/Element/ClCheckboxOne.js +5 -0
  19. package/buildLibs/utils/Element/ClCheckboxOne.js.map +1 -0
  20. package/buildLibs/utils/Element/ClClipboard.d.ts +3 -0
  21. package/buildLibs/utils/Element/ClCollapse.d.ts +3 -0
  22. package/buildLibs/utils/Element/ClCountDown.d.ts +3 -0
  23. package/buildLibs/utils/Element/ClCountUp.d.ts +3 -0
  24. package/buildLibs/utils/Element/ClCropper.d.ts +3 -0
  25. package/buildLibs/utils/Element/ClDarg.d.ts +3 -0
  26. package/buildLibs/utils/Element/ClDivider.d.ts +3 -0
  27. package/buildLibs/utils/Element/ClEllipsis.d.ts +3 -0
  28. package/buildLibs/utils/Element/ClEmpty.d.ts +3 -0
  29. package/buildLibs/utils/Element/ClForm.d.ts +3 -0
  30. package/buildLibs/utils/Element/ClFormGroup.d.ts +3 -0
  31. package/buildLibs/utils/Element/ClFormValidate.cjs +2 -0
  32. package/buildLibs/utils/Element/ClFormValidate.cjs.map +1 -0
  33. package/buildLibs/utils/Element/ClFormValidate.d.ts +3 -0
  34. package/buildLibs/utils/Element/ClFormValidate.js +5 -0
  35. package/buildLibs/utils/Element/ClFormValidate.js.map +1 -0
  36. package/buildLibs/utils/Element/ClIconFont.d.ts +3 -0
  37. package/buildLibs/utils/Element/ClImage.cjs +1 -1
  38. package/buildLibs/utils/Element/ClImage.d.ts +3 -0
  39. package/buildLibs/utils/Element/ClImage.js +1 -1
  40. package/buildLibs/utils/Element/ClInput.d.ts +3 -0
  41. package/buildLibs/utils/Element/ClInputCaptcha.d.ts +3 -0
  42. package/buildLibs/utils/Element/ClInputNumber.d.ts +3 -0
  43. package/buildLibs/utils/Element/ClInputNumberStepper.d.ts +3 -0
  44. package/buildLibs/utils/Element/ClInputPassword.d.ts +3 -0
  45. package/buildLibs/utils/Element/ClInputSearch.d.ts +3 -0
  46. package/buildLibs/utils/Element/ClInputTextarea.d.ts +3 -0
  47. package/buildLibs/utils/Element/ClLink.d.ts +3 -0
  48. package/buildLibs/utils/Element/ClLoad.d.ts +3 -0
  49. package/buildLibs/utils/Element/ClLoadFullCenter.cjs +2 -0
  50. package/buildLibs/utils/Element/ClLoadFullCenter.cjs.map +1 -0
  51. package/buildLibs/utils/Element/ClLoadFullCenter.css +1 -0
  52. package/buildLibs/utils/Element/ClLoadFullCenter.d.ts +3 -0
  53. package/buildLibs/utils/Element/ClLoadFullCenter.js +45 -0
  54. package/buildLibs/utils/Element/ClLoadFullCenter.js.map +1 -0
  55. package/buildLibs/utils/Element/ClLoadIng.cjs +2 -0
  56. package/buildLibs/utils/Element/ClLoadIng.cjs.map +1 -0
  57. package/buildLibs/utils/Element/ClLoadIng.d.ts +3 -0
  58. package/buildLibs/utils/Element/ClLoadIng.js +5 -0
  59. package/buildLibs/utils/Element/ClLoadIng.js.map +1 -0
  60. package/buildLibs/utils/Element/ClLoadScreen.d.ts +3 -0
  61. package/buildLibs/utils/Element/ClLoadWarp.cjs +2 -0
  62. package/buildLibs/utils/Element/ClLoadWarp.cjs.map +1 -0
  63. package/buildLibs/utils/Element/ClLoadWarp.css +1 -0
  64. package/buildLibs/utils/Element/ClLoadWarp.d.ts +3 -0
  65. package/buildLibs/utils/Element/ClLoadWarp.js +53 -0
  66. package/buildLibs/utils/Element/ClLoadWarp.js.map +1 -0
  67. package/buildLibs/utils/Element/ClModal.d.ts +3 -0
  68. package/buildLibs/utils/Element/ClOverlay.d.ts +3 -0
  69. package/buildLibs/utils/Element/ClProgress.d.ts +3 -0
  70. package/buildLibs/utils/Element/ClRadio.d.ts +3 -0
  71. package/buildLibs/utils/Element/ClRadioOne.cjs +2 -0
  72. package/buildLibs/utils/Element/ClRadioOne.cjs.map +1 -0
  73. package/buildLibs/utils/Element/ClRadioOne.d.ts +3 -0
  74. package/buildLibs/utils/Element/ClRadioOne.js +5 -0
  75. package/buildLibs/utils/Element/ClRadioOne.js.map +1 -0
  76. package/buildLibs/utils/Element/ClSlider.d.ts +3 -0
  77. package/buildLibs/utils/Element/ClSwitchery.d.ts +3 -0
  78. package/buildLibs/utils/Element/ClTags.d.ts +3 -0
  79. package/buildLibs/utils/Element/ClTransitionSlideupdown.cjs +2 -0
  80. package/buildLibs/utils/Element/ClTransitionSlideupdown.cjs.map +1 -0
  81. package/buildLibs/utils/Element/ClTransitionSlideupdown.d.ts +3 -0
  82. package/buildLibs/utils/Element/ClTransitionSlideupdown.js +5 -0
  83. package/buildLibs/utils/Element/ClTransitionSlideupdown.js.map +1 -0
  84. package/buildLibs/utils/Element/ClWaterfall.d.ts +3 -0
  85. package/buildLibs/utils/Element/ClWaterfallImage.cjs +2 -0
  86. package/buildLibs/utils/Element/ClWaterfallImage.cjs.map +1 -0
  87. package/buildLibs/utils/Element/ClWaterfallImage.css +1 -0
  88. package/buildLibs/utils/Element/ClWaterfallImage.d.ts +3 -0
  89. package/buildLibs/utils/Element/ClWaterfallImage.js +48 -0
  90. package/buildLibs/utils/Element/ClWaterfallImage.js.map +1 -0
  91. package/buildLibs/utils/Mobile/ClActionBar.d.ts +3 -0
  92. package/buildLibs/utils/Mobile/ClActionSheet.d.ts +3 -0
  93. package/buildLibs/utils/Mobile/ClAreaM.d.ts +3 -0
  94. package/buildLibs/utils/Mobile/ClBackTop.d.ts +3 -0
  95. package/buildLibs/utils/Mobile/ClBanner.cjs +1 -1
  96. package/buildLibs/utils/Mobile/ClBanner.d.ts +3 -0
  97. package/buildLibs/utils/Mobile/ClBanner.js +1 -1
  98. package/buildLibs/utils/Mobile/ClCalendarM.d.ts +3 -0
  99. package/buildLibs/utils/Mobile/ClCell.d.ts +3 -0
  100. package/buildLibs/utils/Mobile/ClCellSwipe.d.ts +3 -0
  101. package/buildLibs/utils/Mobile/ClCodeLegendM.d.ts +3 -0
  102. package/buildLibs/utils/Mobile/ClDropdownMenuM.cjs +1 -1
  103. package/buildLibs/utils/Mobile/ClDropdownMenuM.cjs.map +1 -1
  104. package/buildLibs/utils/Mobile/ClDropdownMenuM.d.ts +3 -0
  105. package/buildLibs/utils/Mobile/ClDropdownMenuM.js +13 -12
  106. package/buildLibs/utils/Mobile/ClDropdownMenuM.js.map +1 -1
  107. package/buildLibs/utils/Mobile/ClDropdownMenuMItem.cjs +2 -0
  108. package/buildLibs/utils/Mobile/ClDropdownMenuMItem.cjs.map +1 -0
  109. package/buildLibs/utils/Mobile/ClDropdownMenuMItem.d.ts +3 -0
  110. package/buildLibs/utils/Mobile/ClDropdownMenuMItem.js +160 -0
  111. package/buildLibs/utils/Mobile/ClDropdownMenuMItem.js.map +1 -0
  112. package/buildLibs/utils/Mobile/ClFloatingBubble.d.ts +3 -0
  113. package/buildLibs/utils/Mobile/ClFloatingPanel.d.ts +3 -0
  114. package/buildLibs/utils/Mobile/ClGrid.d.ts +3 -0
  115. package/buildLibs/utils/Mobile/ClHighlightM.d.ts +3 -0
  116. package/buildLibs/utils/Mobile/ClIndexBar.d.ts +3 -0
  117. package/buildLibs/utils/Mobile/ClInputOtp.d.ts +3 -0
  118. package/buildLibs/utils/Mobile/ClNavBar.d.ts +3 -0
  119. package/buildLibs/utils/Mobile/ClNoticeBar.d.ts +3 -0
  120. package/buildLibs/utils/Mobile/ClNotifyM.d.ts +3 -0
  121. package/buildLibs/utils/Mobile/ClNumberKeyboard.d.ts +3 -0
  122. package/buildLibs/utils/Mobile/ClPicker.cjs +1 -1
  123. package/buildLibs/utils/Mobile/ClPicker.d.ts +3 -0
  124. package/buildLibs/utils/Mobile/ClPicker.js +1 -1
  125. package/buildLibs/utils/Mobile/ClPickerCascader.d.ts +3 -0
  126. package/buildLibs/utils/Mobile/ClPickerDate.cjs +1 -1
  127. package/buildLibs/utils/Mobile/ClPickerDate.d.ts +3 -0
  128. package/buildLibs/utils/Mobile/ClPickerDate.js +1 -1
  129. package/buildLibs/utils/Mobile/ClPickerTime.cjs +1 -1
  130. package/buildLibs/utils/Mobile/ClPickerTime.d.ts +3 -0
  131. package/buildLibs/utils/Mobile/ClPickerTime.js +1 -1
  132. package/buildLibs/utils/Mobile/ClPopup.d.ts +3 -0
  133. package/buildLibs/utils/Mobile/ClPullToRefresh.cjs +1 -1
  134. package/buildLibs/utils/Mobile/ClPullToRefresh.d.ts +3 -0
  135. package/buildLibs/utils/Mobile/ClPullToRefresh.js +1 -1
  136. package/buildLibs/utils/Mobile/ClRate.d.ts +3 -0
  137. package/buildLibs/utils/Mobile/ClScrollCard.cjs +1 -1
  138. package/buildLibs/utils/Mobile/ClScrollCard.d.ts +3 -0
  139. package/buildLibs/utils/Mobile/ClScrollCard.js +1 -1
  140. package/buildLibs/utils/Mobile/ClShareSheet.d.ts +3 -0
  141. package/buildLibs/utils/Mobile/ClSidebar.d.ts +3 -0
  142. package/buildLibs/utils/Mobile/ClSidebarSelect.d.ts +3 -0
  143. package/buildLibs/utils/Mobile/ClSignature.d.ts +3 -0
  144. package/buildLibs/utils/Mobile/ClSteps.d.ts +3 -0
  145. package/buildLibs/utils/Mobile/ClSwipe.d.ts +3 -0
  146. package/buildLibs/utils/Mobile/ClTabM.d.ts +3 -0
  147. package/buildLibs/utils/Mobile/ClTabbar.d.ts +3 -0
  148. package/buildLibs/utils/Mobile/ClToast.d.ts +3 -0
  149. package/buildLibs/utils/Mobile/ClWatermark.d.ts +3 -0
  150. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BPgunUb2.js → Index.vue_vue_type_script_setup_true_lang-6KT1IHDu.js} +1 -1
  151. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BPgunUb2.js.map → Index.vue_vue_type_script_setup_true_lang-6KT1IHDu.js.map} +1 -1
  152. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-B-yZtW91.js +71 -0
  153. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-B-yZtW91.js.map +1 -0
  154. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-gtDsWrhd.js → Index.vue_vue_type_script_setup_true_lang-BDPkmgGP.js} +1 -1
  155. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-gtDsWrhd.js.map → Index.vue_vue_type_script_setup_true_lang-BDPkmgGP.js.map} +1 -1
  156. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-D_IwyxiV.js → Index.vue_vue_type_script_setup_true_lang-Bnjm8vi-.js} +1 -1
  157. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-D_IwyxiV.js.map → Index.vue_vue_type_script_setup_true_lang-Bnjm8vi-.js.map} +1 -1
  158. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-Cpb9rd-y.js → Index.vue_vue_type_script_setup_true_lang-Bs8FGIQa.js} +1 -1
  159. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-Cpb9rd-y.js.map → Index.vue_vue_type_script_setup_true_lang-Bs8FGIQa.js.map} +1 -1
  160. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-hm75HKxP.js → Index.vue_vue_type_script_setup_true_lang-C7FRB7fV.js} +1 -1
  161. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-hm75HKxP.js.map → Index.vue_vue_type_script_setup_true_lang-C7FRB7fV.js.map} +1 -1
  162. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-Xe4BacqD.js → Index.vue_vue_type_script_setup_true_lang-CFzimlB_.js} +1 -1
  163. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-Xe4BacqD.js.map → Index.vue_vue_type_script_setup_true_lang-CFzimlB_.js.map} +1 -1
  164. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-Bp39ENoP.js → Index.vue_vue_type_script_setup_true_lang-CGeXNRtY.js} +1 -1
  165. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-Bp39ENoP.js.map → Index.vue_vue_type_script_setup_true_lang-CGeXNRtY.js.map} +1 -1
  166. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-4NloX3Qk.js → Index.vue_vue_type_script_setup_true_lang-CSV9UWJx.js} +1 -1
  167. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-4NloX3Qk.js.map → Index.vue_vue_type_script_setup_true_lang-CSV9UWJx.js.map} +1 -1
  168. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-CRJ3-pTH.js → Index.vue_vue_type_script_setup_true_lang-ChE1tZwr.js} +1 -1
  169. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-CRJ3-pTH.js.map → Index.vue_vue_type_script_setup_true_lang-ChE1tZwr.js.map} +1 -1
  170. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-CjgtxJ6a.js +2 -0
  171. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-CjgtxJ6a.js.map +1 -0
  172. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-N1GhNa1r.js → Index.vue_vue_type_script_setup_true_lang-CpuYxzDD.js} +1 -1
  173. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-N1GhNa1r.js.map → Index.vue_vue_type_script_setup_true_lang-CpuYxzDD.js.map} +1 -1
  174. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-CumTbPny.js +2 -0
  175. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-CumTbPny.js.map +1 -0
  176. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-NdqbsOrG.js → Index.vue_vue_type_script_setup_true_lang-CvF_iIQS.js} +2 -2
  177. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-NdqbsOrG.js.map → Index.vue_vue_type_script_setup_true_lang-CvF_iIQS.js.map} +1 -1
  178. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-CxVAWr6w.js +266 -0
  179. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-CxVAWr6w.js.map +1 -0
  180. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-DgMvq-RQ.js → Index.vue_vue_type_script_setup_true_lang-DFKjhT_C.js} +1 -1
  181. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-DgMvq-RQ.js.map → Index.vue_vue_type_script_setup_true_lang-DFKjhT_C.js.map} +1 -1
  182. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-D22m4oiN.js → Index.vue_vue_type_script_setup_true_lang-DdWmaT86.js} +2 -2
  183. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-D22m4oiN.js.map → Index.vue_vue_type_script_setup_true_lang-DdWmaT86.js.map} +1 -1
  184. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BtoovAWs.js → Index.vue_vue_type_script_setup_true_lang-DxHfO8TH.js} +1 -1
  185. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BtoovAWs.js.map → Index.vue_vue_type_script_setup_true_lang-DxHfO8TH.js.map} +1 -1
  186. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-CW63TdvW.js → Index.vue_vue_type_script_setup_true_lang-HwprdMv4.js} +2 -2
  187. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-CW63TdvW.js.map → Index.vue_vue_type_script_setup_true_lang-HwprdMv4.js.map} +1 -1
  188. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BLp0owhs.js → Index.vue_vue_type_script_setup_true_lang-IGgTDykL.js} +1 -1
  189. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BLp0owhs.js.map → Index.vue_vue_type_script_setup_true_lang-IGgTDykL.js.map} +1 -1
  190. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BKr3_J68.js → Index.vue_vue_type_script_setup_true_lang-Lwl-M8kR.js} +1 -1
  191. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BKr3_J68.js.map → Index.vue_vue_type_script_setup_true_lang-Lwl-M8kR.js.map} +1 -1
  192. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-Dxb_K2w0.js → Index.vue_vue_type_script_setup_true_lang-gsnpWNek.js} +1 -1
  193. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-Dxb_K2w0.js.map → Index.vue_vue_type_script_setup_true_lang-gsnpWNek.js.map} +1 -1
  194. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-EGKo8cIw.js → Index.vue_vue_type_script_setup_true_lang-huUkL0wY.js} +1 -1
  195. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-EGKo8cIw.js.map → Index.vue_vue_type_script_setup_true_lang-huUkL0wY.js.map} +1 -1
  196. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BFSRH9yz.js → Index.vue_vue_type_script_setup_true_lang-in1ZSapu.js} +1 -1
  197. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BFSRH9yz.js.map → Index.vue_vue_type_script_setup_true_lang-in1ZSapu.js.map} +1 -1
  198. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-C8HQVerr.js → Index.vue_vue_type_script_setup_true_lang-r6RBdV4y.js} +2 -2
  199. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-C8HQVerr.js.map → Index.vue_vue_type_script_setup_true_lang-r6RBdV4y.js.map} +1 -1
  200. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-DvzXfKhj.js → Index.vue_vue_type_script_setup_true_lang-tTHdssVu.js} +1 -1
  201. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-DvzXfKhj.js.map → Index.vue_vue_type_script_setup_true_lang-tTHdssVu.js.map} +1 -1
  202. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BxxIDGfR.js → Index.vue_vue_type_script_setup_true_lang-tjRv0vNR.js} +1 -1
  203. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-BxxIDGfR.js.map → Index.vue_vue_type_script_setup_true_lang-tjRv0vNR.js.map} +1 -1
  204. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-Bk2WD0GS.js → Index.vue_vue_type_script_setup_true_lang-yahz6Ej5.js} +1 -1
  205. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-Bk2WD0GS.js.map → Index.vue_vue_type_script_setup_true_lang-yahz6Ej5.js.map} +1 -1
  206. package/buildLibs/utils/Shared/Index24.css +1 -1
  207. package/buildLibs/utils/Shared/Index25.css +1 -1
  208. package/buildLibs/utils/Shared/Index26.css +1 -1
  209. package/buildLibs/utils/Shared/Index27.css +1 -1
  210. package/buildLibs/utils/Shared/Index28.css +1 -1
  211. package/buildLibs/utils/Shared/Index29.css +1 -1
  212. package/buildLibs/utils/Shared/Index30.css +1 -1
  213. package/buildLibs/utils/Shared/Index31.css +1 -1
  214. package/buildLibs/utils/Shared/Index32.css +1 -1
  215. package/buildLibs/utils/Shared/Index33.css +1 -1
  216. package/buildLibs/utils/Shared/Index34.css +1 -1
  217. package/buildLibs/utils/Shared/Index35.css +1 -1
  218. package/buildLibs/utils/Shared/Index36.css +1 -1
  219. package/buildLibs/utils/Shared/Index37.css +1 -0
  220. package/buildLibs/utils/Shared/One.vue_vue_type_script_setup_true_lang-CR1t8XZl.js +2 -0
  221. package/buildLibs/utils/Shared/One.vue_vue_type_script_setup_true_lang-CR1t8XZl.js.map +1 -0
  222. package/buildLibs/utils/Shared/One.vue_vue_type_script_setup_true_lang-oBeFlRzi.js +148 -0
  223. package/buildLibs/utils/Shared/One.vue_vue_type_script_setup_true_lang-oBeFlRzi.js.map +1 -0
  224. package/buildLibs/utils/Shared/Validate.vue_vue_type_script_setup_true_lang-Bquk40ES.js +406 -0
  225. package/buildLibs/utils/Shared/Validate.vue_vue_type_script_setup_true_lang-Bquk40ES.js.map +1 -0
  226. package/buildLibs/utils/Shared/Validate.vue_vue_type_script_setup_true_lang-CAmKX5pn.js +2 -0
  227. package/buildLibs/utils/Shared/Validate.vue_vue_type_script_setup_true_lang-CAmKX5pn.js.map +1 -0
  228. package/buildLibs/utils/Shared/{Index.vue_vue_type_script_setup_true_lang-C9mOHVoE.js → use-CKNkvmW4.js} +78 -141
  229. package/buildLibs/utils/Shared/use-CKNkvmW4.js.map +1 -0
  230. package/buildLibs/utils/Shared/use-D0Yu2Dbn.js +2 -0
  231. package/buildLibs/utils/Shared/use-D0Yu2Dbn.js.map +1 -0
  232. package/buildLibs/utils/Web/ClAnchorNav.d.ts +3 -0
  233. package/buildLibs/utils/Web/ClCalendar.d.ts +3 -0
  234. package/buildLibs/utils/Web/ClCodeLegend.d.ts +3 -0
  235. package/buildLibs/utils/Web/ClColorpicker.d.ts +3 -0
  236. package/buildLibs/utils/Web/ClCropperPreview.cjs +1 -1
  237. package/buildLibs/utils/Web/ClCropperPreview.d.ts +3 -0
  238. package/buildLibs/utils/Web/ClCropperPreview.js +2 -2
  239. package/buildLibs/utils/Web/ClDatetime.cjs +1 -1
  240. package/buildLibs/utils/Web/ClDatetime.d.ts +3 -0
  241. package/buildLibs/utils/Web/ClDatetime.js +1 -1
  242. package/buildLibs/utils/Web/ClDropdownMenu.d.ts +3 -0
  243. package/buildLibs/utils/Web/ClDropdownMenuItem.cjs +2 -0
  244. package/buildLibs/utils/Web/ClDropdownMenuItem.cjs.map +1 -0
  245. package/buildLibs/utils/Web/ClDropdownMenuItem.css +1 -0
  246. package/buildLibs/utils/Web/ClDropdownMenuItem.d.ts +3 -0
  247. package/buildLibs/utils/Web/ClDropdownMenuItem.js +72 -0
  248. package/buildLibs/utils/Web/ClDropdownMenuItem.js.map +1 -0
  249. package/buildLibs/utils/Web/ClDropdownPopup.d.ts +3 -0
  250. package/buildLibs/utils/Web/ClEcharts.cjs +1 -1
  251. package/buildLibs/utils/Web/ClEcharts.d.ts +3 -0
  252. package/buildLibs/utils/Web/ClEcharts.js +1 -1
  253. package/buildLibs/utils/Web/ClEchartsLineAxisTag.cjs +1 -1
  254. package/buildLibs/utils/Web/ClEchartsLineAxisTag.d.ts +3 -0
  255. package/buildLibs/utils/Web/ClEchartsLineAxisTag.js +1 -1
  256. package/buildLibs/utils/Web/ClFileUpload.cjs +1 -1
  257. package/buildLibs/utils/Web/ClFileUpload.d.ts +3 -0
  258. package/buildLibs/utils/Web/ClFileUpload.js +1 -1
  259. package/buildLibs/utils/Web/ClFramePhone.d.ts +3 -0
  260. package/buildLibs/utils/Web/ClInputTag.cjs +1 -1
  261. package/buildLibs/utils/Web/ClInputTag.d.ts +3 -0
  262. package/buildLibs/utils/Web/ClInputTag.js +1 -1
  263. package/buildLibs/utils/Web/ClPaginate.cjs +1 -1
  264. package/buildLibs/utils/Web/ClPaginate.d.ts +3 -0
  265. package/buildLibs/utils/Web/ClPaginate.js +1 -1
  266. package/buildLibs/utils/Web/ClPortlet.d.ts +3 -0
  267. package/buildLibs/utils/Web/ClPreviewExample.cjs +1 -1
  268. package/buildLibs/utils/Web/ClPreviewExample.d.ts +3 -0
  269. package/buildLibs/utils/Web/ClPreviewExample.js +1 -1
  270. package/buildLibs/utils/Web/ClScrollXFence.cjs +1 -1
  271. package/buildLibs/utils/Web/ClScrollXFence.d.ts +3 -0
  272. package/buildLibs/utils/Web/ClScrollXFence.js +1 -1
  273. package/buildLibs/utils/Web/ClSelect.cjs +1 -1
  274. package/buildLibs/utils/Web/ClSelect.d.ts +3 -0
  275. package/buildLibs/utils/Web/ClSelect.js +1 -1
  276. package/buildLibs/utils/Web/ClSelectCascade.cjs +1 -1
  277. package/buildLibs/utils/Web/ClSelectCascade.d.ts +3 -0
  278. package/buildLibs/utils/Web/ClSelectCascade.js +1 -1
  279. package/buildLibs/utils/Web/ClSelectTag.cjs +1 -1
  280. package/buildLibs/utils/Web/ClSelectTag.d.ts +3 -0
  281. package/buildLibs/utils/Web/ClSelectTag.js +1 -1
  282. package/buildLibs/utils/Web/ClSelectTree.cjs +1 -1
  283. package/buildLibs/utils/Web/ClSelectTree.d.ts +3 -0
  284. package/buildLibs/utils/Web/ClSelectTree.js +1 -1
  285. package/buildLibs/utils/Web/ClSelectmove.d.ts +3 -0
  286. package/buildLibs/utils/Web/ClSidemenu.d.ts +3 -0
  287. package/buildLibs/utils/Web/ClTable.cjs +1 -1
  288. package/buildLibs/utils/Web/ClTable.cjs.map +1 -1
  289. package/buildLibs/utils/Web/ClTable.d.ts +3 -0
  290. package/buildLibs/utils/Web/ClTable.js +1081 -1218
  291. package/buildLibs/utils/Web/ClTable.js.map +1 -1
  292. package/buildLibs/utils/Web/ClTableEdit.d.ts +3 -0
  293. package/buildLibs/utils/Web/ClTableSimple.d.ts +3 -0
  294. package/buildLibs/utils/Web/ClTabs.cjs +1 -1
  295. package/buildLibs/utils/Web/ClTabs.d.ts +3 -0
  296. package/buildLibs/utils/Web/ClTabs.js +1 -1
  297. package/buildLibs/utils/Web/ClTree.cjs +1 -1
  298. package/buildLibs/utils/Web/ClTree.d.ts +3 -0
  299. package/buildLibs/utils/Web/ClTree.js +1 -1
  300. package/buildLibs/utils/Web/ClWeekhour.d.ts +3 -0
  301. package/buildLibs/utils/Web/ClXeditable.cjs +1 -1
  302. package/buildLibs/utils/Web/ClXeditable.cjs.map +1 -1
  303. package/buildLibs/utils/Web/ClXeditable.d.ts +3 -0
  304. package/buildLibs/utils/Web/ClXeditable.js +33 -32
  305. package/buildLibs/utils/Web/ClXeditable.js.map +1 -1
  306. package/buildLibs/web/index.cjs +2 -5
  307. package/buildLibs/web/index.css +1 -0
  308. package/buildLibs/web/index.js +76 -6
  309. package/docs/components/Element/Input.md +1 -1
  310. package/docs/components/Element/InputNumber.md +1 -1
  311. package/package.json +21 -8
  312. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-B-yxIx8F.js +0 -663
  313. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-B-yxIx8F.js.map +0 -1
  314. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-C9mOHVoE.js.map +0 -1
  315. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-CcOk4kyd.js +0 -2
  316. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-CcOk4kyd.js.map +0 -1
  317. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-DtZgYjSl.js +0 -2
  318. package/buildLibs/utils/Shared/Index.vue_vue_type_script_setup_true_lang-DtZgYjSl.js.map +0 -1
  319. package/buildLibs/utils/Shared/Video-BV0YLYT2.js +0 -114
  320. package/buildLibs/utils/Shared/Video-BV0YLYT2.js.map +0 -1
  321. package/buildLibs/utils/Shared/Video-c3jHJSxl.js +0 -2
  322. package/buildLibs/utils/Shared/Video-c3jHJSxl.js.map +0 -1
  323. package/buildLibs/utils/Shared/Video.css +0 -1
  324. package/buildLibs/utils/Web/ClDropdownMenuM.css +0 -1
  325. package/buildLibs/utils/Web/ClPreview.cjs +0 -2
  326. package/buildLibs/utils/Web/ClPreview.cjs.map +0 -1
  327. package/buildLibs/utils/Web/ClPreview.css +0 -1
  328. package/buildLibs/utils/Web/ClPreview.js +0 -353
  329. package/buildLibs/utils/Web/ClPreview.js.map +0 -1
@@ -1,17 +1,16 @@
1
- import { onMounted as B, nextTick as k, onUnmounted as f, watch as Q, defineComponent as b, ref as C, computed as m, openBlock as y, createElementBlock as D, normalizeStyle as u, normalizeClass as S, unref as O, createElementVNode as K } from "vue";
2
- import { C as r } from "./base-DU7nGSf6.js";
3
- import { C as F } from "./index-DvNmQjNH.js";
4
- const n = {
1
+ import { onMounted as I, nextTick as E, onUnmounted as l, watch as d } from "vue";
2
+ import { C as o } from "./base-DU7nGSf6.js";
3
+ const s = {
5
4
  loading: "data:image/gif;base64,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",
6
5
  error: "data:image/png;base64,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",
7
6
  attr: {
8
7
  timeOutId: "data-lazy-timeout-id"
9
8
  }
10
9
  };
11
- class U {
10
+ class C {
12
11
  options = {
13
- loading: n.loading,
14
- error: n.error,
12
+ loading: s.loading,
13
+ error: s.error,
15
14
  observerOptions: {
16
15
  rootMargin: "0px",
17
16
  threshold: 0
@@ -20,76 +19,76 @@ class U {
20
19
  callback: {}
21
20
  };
22
21
  _images = /* @__PURE__ */ new WeakMap();
23
- constructor(t) {
24
- this.config(t);
22
+ constructor(A) {
23
+ this.config(A);
25
24
  }
26
- config(t = {}) {
27
- this.options = r.getJsonMergeDeep(this.options, t);
25
+ config(A = {}) {
26
+ this.options = o.getJsonMergeDeep(this.options, A);
28
27
  }
29
- _initValue(t, A) {
30
- let e = "", s = this.options.loading, i = this.options.error, o = this.options.callback, a = this.options.delay;
31
- return r.isObject(t) ? (e = t.src, s = r.isUndefined(t.loading) ? this.options.loading : t.loading, i = r.isUndefined(t.error) ? this.options.error : t.error, o = r.isUndefined(t.callback) ? this.options.callback : t.callback, a = r.isUndefined(t.delay) ? this.options.delay : t.delay) : r.isString(t) ? e = t : r.isUndefined(t) && (e = A && A.src || ""), {
28
+ _initValue(A, t) {
29
+ let e = "", r = this.options.loading, i = this.options.error, n = this.options.callback, a = this.options.delay;
30
+ return o.isObject(A) ? (e = A.src, r = o.isUndefined(A.loading) ? this.options.loading : A.loading, i = o.isUndefined(A.error) ? this.options.error : A.error, n = o.isUndefined(A.callback) ? this.options.callback : A.callback, a = o.isUndefined(A.delay) ? this.options.delay : A.delay) : o.isString(A) ? e = A : o.isUndefined(A) && (e = t && t.src || ""), {
32
31
  src: e,
33
- loading: s,
32
+ loading: r,
34
33
  error: i,
35
- callback: o,
34
+ callback: n,
36
35
  delay: a
37
36
  };
38
37
  }
39
- mount(t, A) {
40
- if (r.isUndefined(t)) return;
41
- const e = r.isString(A) ? A : A.value, { src: s, loading: i, error: o, callback: a, delay: l } = this._initValue(e, t);
42
- if (this._setCallback(t, "loading", a), t.setAttribute("src", i || n.loading), !this._checkIntersectionObserver()) {
43
- this._setImageSrc(t, s, o, a), this._log(() => {
38
+ mount(A, t) {
39
+ if (o.isUndefined(A)) return;
40
+ const e = o.isString(t) ? t : t.value, { src: r, loading: i, error: n, callback: a, delay: c } = this._initValue(e, A);
41
+ if (this._setCallback(A, "loading", a), A.setAttribute("src", i || s.loading), !this._checkIntersectionObserver()) {
42
+ this._setImageSrc(A, r, n, a), this._log(() => {
44
43
  throw new Error("Not support IntersectionObserver!");
45
44
  });
46
45
  return;
47
46
  }
48
- this._initIntersectionObserver(t, s, o, a, l);
49
- }
50
- update(t, A) {
51
- if (r.isUndefined(t)) return;
52
- this._realObserver(t)?.unobserve(t), t.hasAttribute(n.attr.timeOutId) && (clearTimeout(Number(t.getAttribute(n.attr.timeOutId))), t.removeAttribute(n.attr.timeOutId));
53
- const e = r.isString(A) ? A : A.value, { src: s, error: i, callback: o, delay: a } = this._initValue(e, t);
54
- this._initIntersectionObserver(t, s, i, o, a);
55
- }
56
- unmount(t) {
57
- if (!r.isUndefined(t)) {
58
- if (this._realObserver(t)?.unobserve(t), t.hasAttribute(n.attr.timeOutId) && (clearTimeout(Number(t.getAttribute(n.attr.timeOutId))), t.removeAttribute(n.attr.timeOutId)), t.tagName.toLowerCase() === "img") {
59
- const A = t;
60
- A.onload = null, A.onerror = null;
47
+ this._initIntersectionObserver(A, r, n, a, c);
48
+ }
49
+ update(A, t) {
50
+ if (o.isUndefined(A)) return;
51
+ this._realObserver(A)?.unobserve(A), A.hasAttribute(s.attr.timeOutId) && (clearTimeout(Number(A.getAttribute(s.attr.timeOutId))), A.removeAttribute(s.attr.timeOutId));
52
+ const e = o.isString(t) ? t : t.value, { src: r, error: i, callback: n, delay: a } = this._initValue(e, A);
53
+ this._initIntersectionObserver(A, r, i, n, a);
54
+ }
55
+ unmount(A) {
56
+ if (!o.isUndefined(A)) {
57
+ if (this._realObserver(A)?.unobserve(A), A.hasAttribute(s.attr.timeOutId) && (clearTimeout(Number(A.getAttribute(s.attr.timeOutId))), A.removeAttribute(s.attr.timeOutId)), A.tagName.toLowerCase() === "img") {
58
+ const t = A;
59
+ t.onload = null, t.onerror = null;
61
60
  }
62
- this._images.delete(t);
61
+ this._images.delete(A);
63
62
  }
64
63
  }
65
- _setImageSrc(t, A, e, s) {
66
- if (t.tagName.toLowerCase() === "img") {
67
- const i = t;
68
- r.isEmpty(A) ? (i.onload = null, this._setCallback(i, "error", s), this._realObserver(i)?.disconnect(), e ? i.setAttribute("src", e) : i.removeAttribute("src")) : (this.options.isCrossOrigin && (i.crossOrigin = "Anonymous"), A && i.getAttribute("src") !== A && i.setAttribute("src", A), i.onload = () => {
69
- A && this._setCallback(i, "loaded", s);
64
+ _setImageSrc(A, t, e, r) {
65
+ if (A.tagName.toLowerCase() === "img") {
66
+ const i = A;
67
+ o.isEmpty(t) ? (i.onload = null, this._setCallback(i, "error", r), this._realObserver(i)?.disconnect(), e ? i.setAttribute("src", e) : i.removeAttribute("src")) : (this.options.isCrossOrigin && (i.crossOrigin = "Anonymous"), t && i.getAttribute("src") !== t && i.setAttribute("src", t), i.onload = () => {
68
+ t && this._setCallback(i, "loaded", r);
70
69
  }, i.onerror = () => {
71
- i.onload = null, this._setCallback(i, "error", s), this._realObserver(i)?.disconnect(), e && i.getAttribute("src") !== e && i.setAttribute("src", e), this._log(() => {
72
- throw new Error(`Image failed to load!And failed src was: ${A} `);
70
+ i.onload = null, this._setCallback(i, "error", r), this._realObserver(i)?.disconnect(), e && i.getAttribute("src") !== e && i.setAttribute("src", e), this._log(() => {
71
+ throw new Error(`Image failed to load!And failed src was: ${t} `);
73
72
  });
74
73
  });
75
74
  } else
76
- t.style.backgroundImage = `url('${A}')`;
75
+ A.style.backgroundImage = `url('${t}')`;
77
76
  }
78
- _setCallback(t, A, e) {
79
- switch (t?.setAttribute("lazy", A), A) {
77
+ _setCallback(A, t, e) {
78
+ switch (A?.setAttribute("lazy", t), t) {
80
79
  case "loading":
81
- e?.loading && e.loading(t);
80
+ e?.loading && e.loading(A);
82
81
  break;
83
82
  case "loaded":
84
- e?.loaded && e.loaded(t);
83
+ e?.loaded && e.loaded(A);
85
84
  break;
86
85
  case "error":
87
- e?.error && e.error(t);
86
+ e?.error && e.error(A);
88
87
  break;
89
88
  }
90
89
  }
91
- _realObserver(t) {
92
- return this._images.get(t);
90
+ _realObserver(A) {
91
+ return this._images.get(A);
93
92
  }
94
93
  _checkIntersectionObserver() {
95
94
  if (typeof window < "u" && window !== null && "IntersectionObserver" in window && "IntersectionObserverEntry" in window && "intersectionRatio" in window.IntersectionObserverEntry.prototype) {
@@ -107,109 +106,47 @@ class U {
107
106
  }
108
107
  return !1;
109
108
  }
110
- _initIntersectionObserver(t, A, e, s, i) {
111
- const o = this.options.observerOptions;
109
+ _initIntersectionObserver(A, t, e, r, i) {
110
+ const n = this.options.observerOptions;
112
111
  this._images.set(
113
- t,
112
+ A,
114
113
  new IntersectionObserver((a) => {
115
- Array.prototype.forEach.call(a, (l) => {
116
- i && i > 0 ? this._delayedIntersectionCallback(t, l, i, A, e, s) : this._intersectionCallback(t, l, A, e, s);
114
+ Array.prototype.forEach.call(a, (c) => {
115
+ i && i > 0 ? this._delayedIntersectionCallback(A, c, i, t, e, r) : this._intersectionCallback(A, c, t, e, r);
117
116
  });
118
- }, o)
119
- ), this._realObserver(t)?.observe(t);
117
+ }, n)
118
+ ), this._realObserver(A)?.observe(A);
120
119
  }
121
- _intersectionCallback(t, A, e, s, i) {
122
- A.isIntersecting && (this._realObserver(t)?.unobserve(A.target), this._setImageSrc(t, e, s, i));
120
+ _intersectionCallback(A, t, e, r, i) {
121
+ t.isIntersecting && (this._realObserver(A)?.unobserve(t.target), this._setImageSrc(A, e, r, i));
123
122
  }
124
- _delayedIntersectionCallback(t, A, e, s, i, o) {
125
- if (A.isIntersecting) {
126
- if (A.target.hasAttribute(n.attr.timeOutId)) return;
123
+ _delayedIntersectionCallback(A, t, e, r, i, n) {
124
+ if (t.isIntersecting) {
125
+ if (t.target.hasAttribute(s.attr.timeOutId)) return;
127
126
  const a = setTimeout(() => {
128
- this._intersectionCallback(t, A, s, i, o), A.target.removeAttribute(n.attr.timeOutId);
127
+ this._intersectionCallback(A, t, r, i, n), t.target.removeAttribute(s.attr.timeOutId);
129
128
  }, e);
130
- A.target.setAttribute(n.attr.timeOutId, String(a));
129
+ t.target.setAttribute(s.attr.timeOutId, String(a));
131
130
  } else
132
- A.target.hasAttribute(n.attr.timeOutId) && (clearTimeout(Number(A.target.getAttribute(n.attr.timeOutId))), A.target.removeAttribute(n.attr.timeOutId));
131
+ t.target.hasAttribute(s.attr.timeOutId) && (clearTimeout(Number(t.target.getAttribute(s.attr.timeOutId))), t.target.removeAttribute(s.attr.timeOutId));
133
132
  }
134
- _log(t) {
135
- this.options.log && t();
133
+ _log(A) {
134
+ this.options.log && A();
136
135
  }
137
136
  }
138
- const v = (c, t, A) => {
139
- const e = new U(A);
140
- B(() => {
141
- k(() => {
142
- c.value && e.mount(c.value, t);
137
+ const Q = (g, A, t) => {
138
+ const e = new C(t);
139
+ I(() => {
140
+ E(() => {
141
+ g.value && e.mount(g.value, A);
143
142
  });
144
- }), f(() => {
145
- c.value && e.unmount(c.value);
146
- }), Q(t, (s) => {
147
- c.value && e.update(c.value, s);
143
+ }), l(() => {
144
+ g.value && e.unmount(g.value);
145
+ }), d(A, (r) => {
146
+ g.value && e.update(g.value, r);
148
147
  });
149
- }, R = ["id"], M = ["alt"], N = /* @__PURE__ */ b({
150
- name: "ClImage",
151
- __name: "Index",
152
- props: {
153
- id: {},
154
- className: {},
155
- src: {},
156
- alt: {},
157
- height: {},
158
- width: {},
159
- isCircle: { type: Boolean },
160
- fit: {},
161
- isCrossOrigin: { type: Boolean }
162
- },
163
- emits: ["onInit"],
164
- setup(c, { emit: t }) {
165
- const A = c, e = t, s = C(r.isNonEmptyString(A.src) ? A.src : ""), i = C(null), o = m(() => r.isNonEmptyString(A.alt) ? A.alt : ""), a = A.id;
166
- v(i, s, {
167
- callback: {
168
- loaded: () => {
169
- h();
170
- },
171
- error: () => {
172
- h();
173
- }
174
- },
175
- isCrossOrigin: A.isCrossOrigin
176
- });
177
- const l = m(() => {
178
- let g = {
179
- "panel-imageBox": !0,
180
- "imageBox-circle": A.isCircle
181
- };
182
- return g = r.getJsonMerge(g, F.getClassNameJson(A.className)), g;
183
- }), p = m(() => {
184
- const { width: g, height: I } = A, d = {};
185
- return r.isNonEmptyString(g) && (d.width = g), r.isNonEmptyString(I) && (d.height = I), d;
186
- }), w = m(() => {
187
- const { width: g, height: I, fit: d } = A, E = {};
188
- return r.isNonEmptyString(d) && (E["object-fit"] = d, r.isNonEmptyString(g) && (E.width = g), r.isNonEmptyString(I) && (E.height = I)), E;
189
- });
190
- function h() {
191
- e("onInit");
192
- }
193
- return Q(
194
- () => A.src,
195
- (g) => {
196
- s.value = r.isNonEmptyString(g) ? g : "";
197
- }
198
- ), (g, I) => (y(), D("div", {
199
- id: O(a),
200
- class: S(l.value),
201
- style: u(p.value)
202
- }, [
203
- K("img", {
204
- ref_key: "refElImage",
205
- ref: i,
206
- alt: o.value,
207
- style: u(w.value)
208
- }, null, 12, M)
209
- ], 14, R));
210
- }
211
- });
148
+ };
212
149
  export {
213
- N as _
150
+ Q as u
214
151
  };
215
- //# sourceMappingURL=Index.vue_vue_type_script_setup_true_lang-C9mOHVoE.js.map
152
+ //# sourceMappingURL=use-CKNkvmW4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-CKNkvmW4.js","sources":["../../../src/libs/Element/LazyImage/lazy.ts","../../../src/libs/Element/LazyImage/use.ts"],"sourcesContent":["import CommonBase from '../../Common/base';\nimport { LazyOptionInfo } from './interfaceItem';\nconst defOption = {\n loading:\n 'data:image/gif;base64,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',\n error:\n 'data:image/png;base64,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',\n attr: {\n timeOutId: 'data-lazy-timeout-id',\n },\n isCrossOrigin: false,\n};\nclass Lazy {\n public options: LazyOptionInfo = {\n loading: defOption.loading,\n error: defOption.error,\n observerOptions: {\n rootMargin: '0px',\n threshold: 0,\n },\n log: false,\n callback: {},\n };\n private _images = new WeakMap();\n constructor(options?: LazyOptionInfo) {\n this.config(options);\n }\n public config(options = {}): void {\n this.options = CommonBase.getJsonMergeDeep(this.options, options);\n }\n private _initValue(value: any, el: any) {\n let src = '';\n let loading = this.options.loading;\n let error = this.options.error;\n let callback = this.options.callback;\n let delay = this.options.delay;\n if (CommonBase.isObject(value)) {\n src = value.src;\n loading = !CommonBase.isUndefined(value.loading) ? value.loading : this.options.loading;\n error = !CommonBase.isUndefined(value.error) ? value.error : this.options.error;\n callback = !CommonBase.isUndefined(value.callback) ? value.callback : this.options.callback;\n delay = !CommonBase.isUndefined(value.delay) ? value.delay : this.options.delay;\n } else if (CommonBase.isString(value)) {\n src = value;\n } else if (CommonBase.isUndefined(value)) {\n src = (el && el.src) || '';\n }\n return {\n src,\n loading,\n error,\n callback,\n delay,\n };\n }\n public mount(el: HTMLElement, binding: any): void {\n if (CommonBase.isUndefined(el)) return;\n const value = CommonBase.isString(binding) ? binding : binding.value;\n const { src, loading, error, callback, delay } = this._initValue(value, el);\n this._setCallback(el, 'loading', callback);\n el.setAttribute('src', loading || defOption.loading);\n if (!this._checkIntersectionObserver()) {\n this._setImageSrc(el, src, error, callback);\n this._log(() => {\n throw new Error('Not support IntersectionObserver!');\n });\n return;\n }\n this._initIntersectionObserver(el, src, error, callback, delay);\n }\n public update(el: HTMLElement, binding: any): void {\n if (CommonBase.isUndefined(el)) return;\n this._realObserver(el)?.unobserve(el);\n if (el.hasAttribute(defOption.attr.timeOutId)) {\n clearTimeout(Number(el.getAttribute(defOption.attr.timeOutId)));\n el.removeAttribute(defOption.attr.timeOutId);\n }\n const value = CommonBase.isString(binding) ? binding : binding.value;\n const { src, error, callback, delay } = this._initValue(value, el);\n this._initIntersectionObserver(el, src, error, callback, delay);\n }\n public unmount(el: HTMLElement): void {\n if (CommonBase.isUndefined(el)) return;\n this._realObserver(el)?.unobserve(el);\n if (el.hasAttribute(defOption.attr.timeOutId)) {\n clearTimeout(Number(el.getAttribute(defOption.attr.timeOutId)));\n el.removeAttribute(defOption.attr.timeOutId);\n }\n // 清理 img 回调,防止卸载后 onload/onerror 仍触发\n if (el.tagName.toLowerCase() === 'img') {\n const img = el as HTMLImageElement;\n img.onload = null;\n img.onerror = null;\n }\n this._images.delete(el);\n }\n\n private _setImageSrc(el: HTMLElement, src: string, error?: string, callback?: any): void {\n if (el.tagName.toLowerCase() === 'img') {\n const elImage = el as HTMLImageElement;\n if (CommonBase.isEmpty(src)) {\n elImage.onload = null;\n this._setCallback(elImage, 'error', callback);\n this._realObserver(elImage)?.disconnect();\n if (error) {\n elImage.setAttribute('src', error);\n } else {\n elImage.removeAttribute('src');\n }\n } else {\n if (this.options.isCrossOrigin) {\n elImage.crossOrigin = 'Anonymous';\n }\n if (src) {\n const preSrc = elImage.getAttribute('src');\n if (preSrc !== src) elImage.setAttribute('src', src);\n }\n elImage.onload = () => {\n if (src) {\n this._setCallback(elImage, 'loaded', callback);\n }\n };\n elImage.onerror = () => {\n // Fix onload trigger twice, clear onload event\n // Reload on update\n elImage.onload = null;\n this._setCallback(elImage, 'error', callback);\n this._realObserver(elImage)?.disconnect();\n if (error) {\n const newImageSrc = elImage.getAttribute('src');\n if (newImageSrc !== error) elImage.setAttribute('src', error);\n }\n this._log(() => {\n throw new Error(`Image failed to load!And failed src was: ${src} `);\n });\n };\n }\n } else {\n el.style.backgroundImage = `url('${src}')`;\n }\n }\n private _setCallback(\n el: HTMLElement,\n type: 'loading' | 'loaded' | 'error',\n callback?: LazyOptionInfo['callback'],\n ): void {\n el?.setAttribute('lazy', type);\n switch (type) {\n case 'loading':\n if (callback?.loading) callback.loading(el);\n break;\n case 'loaded':\n if (callback?.loaded) callback.loaded(el);\n break;\n case 'error':\n if (callback?.error) callback.error(el);\n break;\n default:\n break;\n }\n }\n private _realObserver(el: HTMLElement) {\n return this._images.get(el);\n }\n private _checkIntersectionObserver(): boolean {\n const inBrowser = typeof window !== 'undefined' && window !== null;\n if (\n inBrowser &&\n 'IntersectionObserver' in window &&\n 'IntersectionObserverEntry' in window &&\n 'intersectionRatio' in window.IntersectionObserverEntry.prototype\n ) {\n if (!('isIntersecting' in window.IntersectionObserverEntry.prototype)) {\n try {\n Object.defineProperty(window.IntersectionObserverEntry.prototype, 'isIntersecting', {\n get() {\n return this.intersectionRatio > 0;\n },\n });\n } catch (e) {\n // CSP 限制或原型冻结时降级:调用方自行用 intersectionRatio > 0 判断\n return false;\n }\n }\n return true;\n }\n return false;\n }\n private _initIntersectionObserver(\n el: HTMLElement,\n src: string,\n error?: string,\n callback?: any,\n delay?: number,\n ): void {\n const observerOptions = this.options.observerOptions;\n this._images.set(\n el,\n new IntersectionObserver(entries => {\n Array.prototype.forEach.call(entries, entry => {\n if (delay && delay > 0)\n this._delayedIntersectionCallback(el, entry, delay, src, error, callback);\n else this._intersectionCallback(el, entry, src, error, callback);\n });\n }, observerOptions),\n );\n this._realObserver(el)?.observe(el);\n }\n private _intersectionCallback(\n el: HTMLElement,\n entry: IntersectionObserverEntry,\n src: string,\n error?: string,\n callback?: any,\n ): void {\n if (entry.isIntersecting) {\n this._realObserver(el)?.unobserve(entry.target);\n this._setImageSrc(el, src, error, callback);\n }\n }\n\n private _delayedIntersectionCallback(\n el: HTMLElement,\n entry: IntersectionObserverEntry,\n delay: number,\n src: string,\n error?: string,\n callback?: any,\n ): void {\n if (entry.isIntersecting) {\n if (entry.target.hasAttribute(defOption.attr.timeOutId)) return;\n\n const timeoutId = setTimeout(() => {\n this._intersectionCallback(el, entry, src, error, callback);\n entry.target.removeAttribute(defOption.attr.timeOutId);\n }, delay);\n entry.target.setAttribute(defOption.attr.timeOutId, String(timeoutId));\n } else {\n if (entry.target.hasAttribute(defOption.attr.timeOutId)) {\n clearTimeout(Number(entry.target.getAttribute(defOption.attr.timeOutId)));\n entry.target.removeAttribute(defOption.attr.timeOutId);\n }\n }\n }\n private _log(callback: () => void): void {\n if (this.options.log) callback();\n }\n}\nexport default Lazy;\n","import { onMounted, onUnmounted, nextTick, watch, Ref } from 'vue';\nimport Lazy from './lazy';\nimport { LazyOptionInfo } from './interfaceItem';\n\nexport const useLazyload = (\n refEl: Ref<HTMLElement | null>,\n src: Ref<string>,\n options?: LazyOptionInfo,\n) => {\n const lazy = new Lazy(options);\n onMounted(() => {\n nextTick(() => {\n if (refEl.value) {\n lazy.mount(refEl.value, src);\n }\n });\n });\n onUnmounted(() => {\n if (refEl.value) {\n lazy.unmount(refEl.value);\n }\n });\n watch(src, (newVal: string) => {\n if (refEl.value) {\n lazy.update(refEl.value, newVal);\n }\n });\n};\n"],"names":["defOption","Lazy","options","CommonBase","value","el","src","loading","error","callback","delay","binding","img","elImage","type","observerOptions","entries","entry","timeoutId","useLazyload","refEl","lazy","onMounted","nextTick","onUnmounted","watch","newVal"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";const I=require("vue"),r=require("./base-C2QOJBgB.js"),o={loading:"data:image/gif;base64,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",error:"data:image/png;base64,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",attr:{timeOutId:"data-lazy-timeout-id"}};class C{options={loading:o.loading,error:o.error,observerOptions:{rootMargin:"0px",threshold:0},log:!1,callback:{}};_images=new WeakMap;constructor(A){this.config(A)}config(A={}){this.options=r.CommonBase.getJsonMergeDeep(this.options,A)}_initValue(A,t){let e="",s=this.options.loading,i=this.options.error,n=this.options.callback,a=this.options.delay;return r.CommonBase.isObject(A)?(e=A.src,s=r.CommonBase.isUndefined(A.loading)?this.options.loading:A.loading,i=r.CommonBase.isUndefined(A.error)?this.options.error:A.error,n=r.CommonBase.isUndefined(A.callback)?this.options.callback:A.callback,a=r.CommonBase.isUndefined(A.delay)?this.options.delay:A.delay):r.CommonBase.isString(A)?e=A:r.CommonBase.isUndefined(A)&&(e=t&&t.src||""),{src:e,loading:s,error:i,callback:n,delay:a}}mount(A,t){if(r.CommonBase.isUndefined(A))return;const e=r.CommonBase.isString(t)?t:t.value,{src:s,loading:i,error:n,callback:a,delay:c}=this._initValue(e,A);if(this._setCallback(A,"loading",a),A.setAttribute("src",i||o.loading),!this._checkIntersectionObserver()){this._setImageSrc(A,s,n,a),this._log(()=>{throw new Error("Not support IntersectionObserver!")});return}this._initIntersectionObserver(A,s,n,a,c)}update(A,t){if(r.CommonBase.isUndefined(A))return;this._realObserver(A)?.unobserve(A),A.hasAttribute(o.attr.timeOutId)&&(clearTimeout(Number(A.getAttribute(o.attr.timeOutId))),A.removeAttribute(o.attr.timeOutId));const e=r.CommonBase.isString(t)?t:t.value,{src:s,error:i,callback:n,delay:a}=this._initValue(e,A);this._initIntersectionObserver(A,s,i,n,a)}unmount(A){if(!r.CommonBase.isUndefined(A)){if(this._realObserver(A)?.unobserve(A),A.hasAttribute(o.attr.timeOutId)&&(clearTimeout(Number(A.getAttribute(o.attr.timeOutId))),A.removeAttribute(o.attr.timeOutId)),A.tagName.toLowerCase()==="img"){const t=A;t.onload=null,t.onerror=null}this._images.delete(A)}}_setImageSrc(A,t,e,s){if(A.tagName.toLowerCase()==="img"){const i=A;r.CommonBase.isEmpty(t)?(i.onload=null,this._setCallback(i,"error",s),this._realObserver(i)?.disconnect(),e?i.setAttribute("src",e):i.removeAttribute("src")):(this.options.isCrossOrigin&&(i.crossOrigin="Anonymous"),t&&i.getAttribute("src")!==t&&i.setAttribute("src",t),i.onload=()=>{t&&this._setCallback(i,"loaded",s)},i.onerror=()=>{i.onload=null,this._setCallback(i,"error",s),this._realObserver(i)?.disconnect(),e&&i.getAttribute("src")!==e&&i.setAttribute("src",e),this._log(()=>{throw new Error(`Image failed to load!And failed src was: ${t} `)})})}else A.style.backgroundImage=`url('${t}')`}_setCallback(A,t,e){switch(A?.setAttribute("lazy",t),t){case"loading":e?.loading&&e.loading(A);break;case"loaded":e?.loaded&&e.loaded(A);break;case"error":e?.error&&e.error(A);break}}_realObserver(A){return this._images.get(A)}_checkIntersectionObserver(){if(typeof window<"u"&&window!==null&&"IntersectionObserver"in window&&"IntersectionObserverEntry"in window&&"intersectionRatio"in window.IntersectionObserverEntry.prototype){if(!("isIntersecting"in window.IntersectionObserverEntry.prototype))try{Object.defineProperty(window.IntersectionObserverEntry.prototype,"isIntersecting",{get(){return this.intersectionRatio>0}})}catch{return!1}return!0}return!1}_initIntersectionObserver(A,t,e,s,i){const n=this.options.observerOptions;this._images.set(A,new IntersectionObserver(a=>{Array.prototype.forEach.call(a,c=>{i&&i>0?this._delayedIntersectionCallback(A,c,i,t,e,s):this._intersectionCallback(A,c,t,e,s)})},n)),this._realObserver(A)?.observe(A)}_intersectionCallback(A,t,e,s,i){t.isIntersecting&&(this._realObserver(A)?.unobserve(t.target),this._setImageSrc(A,e,s,i))}_delayedIntersectionCallback(A,t,e,s,i,n){if(t.isIntersecting){if(t.target.hasAttribute(o.attr.timeOutId))return;const a=setTimeout(()=>{this._intersectionCallback(A,t,s,i,n),t.target.removeAttribute(o.attr.timeOutId)},e);t.target.setAttribute(o.attr.timeOutId,String(a))}else t.target.hasAttribute(o.attr.timeOutId)&&(clearTimeout(Number(t.target.getAttribute(o.attr.timeOutId))),t.target.removeAttribute(o.attr.timeOutId))}_log(A){this.options.log&&A()}}const E=(g,A,t)=>{const e=new C(t);I.onMounted(()=>{I.nextTick(()=>{g.value&&e.mount(g.value,A)})}),I.onUnmounted(()=>{g.value&&e.unmount(g.value)}),I.watch(A,s=>{g.value&&e.update(g.value,s)})};exports.useLazyload=E;
2
+ //# sourceMappingURL=use-D0Yu2Dbn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-D0Yu2Dbn.js","sources":["../../../src/libs/Element/LazyImage/lazy.ts","../../../src/libs/Element/LazyImage/use.ts"],"sourcesContent":["import CommonBase from '../../Common/base';\nimport { LazyOptionInfo } from './interfaceItem';\nconst defOption = {\n loading:\n 'data:image/gif;base64,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',\n error:\n 'data:image/png;base64,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',\n attr: {\n timeOutId: 'data-lazy-timeout-id',\n },\n isCrossOrigin: false,\n};\nclass Lazy {\n public options: LazyOptionInfo = {\n loading: defOption.loading,\n error: defOption.error,\n observerOptions: {\n rootMargin: '0px',\n threshold: 0,\n },\n log: false,\n callback: {},\n };\n private _images = new WeakMap();\n constructor(options?: LazyOptionInfo) {\n this.config(options);\n }\n public config(options = {}): void {\n this.options = CommonBase.getJsonMergeDeep(this.options, options);\n }\n private _initValue(value: any, el: any) {\n let src = '';\n let loading = this.options.loading;\n let error = this.options.error;\n let callback = this.options.callback;\n let delay = this.options.delay;\n if (CommonBase.isObject(value)) {\n src = value.src;\n loading = !CommonBase.isUndefined(value.loading) ? value.loading : this.options.loading;\n error = !CommonBase.isUndefined(value.error) ? value.error : this.options.error;\n callback = !CommonBase.isUndefined(value.callback) ? value.callback : this.options.callback;\n delay = !CommonBase.isUndefined(value.delay) ? value.delay : this.options.delay;\n } else if (CommonBase.isString(value)) {\n src = value;\n } else if (CommonBase.isUndefined(value)) {\n src = (el && el.src) || '';\n }\n return {\n src,\n loading,\n error,\n callback,\n delay,\n };\n }\n public mount(el: HTMLElement, binding: any): void {\n if (CommonBase.isUndefined(el)) return;\n const value = CommonBase.isString(binding) ? binding : binding.value;\n const { src, loading, error, callback, delay } = this._initValue(value, el);\n this._setCallback(el, 'loading', callback);\n el.setAttribute('src', loading || defOption.loading);\n if (!this._checkIntersectionObserver()) {\n this._setImageSrc(el, src, error, callback);\n this._log(() => {\n throw new Error('Not support IntersectionObserver!');\n });\n return;\n }\n this._initIntersectionObserver(el, src, error, callback, delay);\n }\n public update(el: HTMLElement, binding: any): void {\n if (CommonBase.isUndefined(el)) return;\n this._realObserver(el)?.unobserve(el);\n if (el.hasAttribute(defOption.attr.timeOutId)) {\n clearTimeout(Number(el.getAttribute(defOption.attr.timeOutId)));\n el.removeAttribute(defOption.attr.timeOutId);\n }\n const value = CommonBase.isString(binding) ? binding : binding.value;\n const { src, error, callback, delay } = this._initValue(value, el);\n this._initIntersectionObserver(el, src, error, callback, delay);\n }\n public unmount(el: HTMLElement): void {\n if (CommonBase.isUndefined(el)) return;\n this._realObserver(el)?.unobserve(el);\n if (el.hasAttribute(defOption.attr.timeOutId)) {\n clearTimeout(Number(el.getAttribute(defOption.attr.timeOutId)));\n el.removeAttribute(defOption.attr.timeOutId);\n }\n // 清理 img 回调,防止卸载后 onload/onerror 仍触发\n if (el.tagName.toLowerCase() === 'img') {\n const img = el as HTMLImageElement;\n img.onload = null;\n img.onerror = null;\n }\n this._images.delete(el);\n }\n\n private _setImageSrc(el: HTMLElement, src: string, error?: string, callback?: any): void {\n if (el.tagName.toLowerCase() === 'img') {\n const elImage = el as HTMLImageElement;\n if (CommonBase.isEmpty(src)) {\n elImage.onload = null;\n this._setCallback(elImage, 'error', callback);\n this._realObserver(elImage)?.disconnect();\n if (error) {\n elImage.setAttribute('src', error);\n } else {\n elImage.removeAttribute('src');\n }\n } else {\n if (this.options.isCrossOrigin) {\n elImage.crossOrigin = 'Anonymous';\n }\n if (src) {\n const preSrc = elImage.getAttribute('src');\n if (preSrc !== src) elImage.setAttribute('src', src);\n }\n elImage.onload = () => {\n if (src) {\n this._setCallback(elImage, 'loaded', callback);\n }\n };\n elImage.onerror = () => {\n // Fix onload trigger twice, clear onload event\n // Reload on update\n elImage.onload = null;\n this._setCallback(elImage, 'error', callback);\n this._realObserver(elImage)?.disconnect();\n if (error) {\n const newImageSrc = elImage.getAttribute('src');\n if (newImageSrc !== error) elImage.setAttribute('src', error);\n }\n this._log(() => {\n throw new Error(`Image failed to load!And failed src was: ${src} `);\n });\n };\n }\n } else {\n el.style.backgroundImage = `url('${src}')`;\n }\n }\n private _setCallback(\n el: HTMLElement,\n type: 'loading' | 'loaded' | 'error',\n callback?: LazyOptionInfo['callback'],\n ): void {\n el?.setAttribute('lazy', type);\n switch (type) {\n case 'loading':\n if (callback?.loading) callback.loading(el);\n break;\n case 'loaded':\n if (callback?.loaded) callback.loaded(el);\n break;\n case 'error':\n if (callback?.error) callback.error(el);\n break;\n default:\n break;\n }\n }\n private _realObserver(el: HTMLElement) {\n return this._images.get(el);\n }\n private _checkIntersectionObserver(): boolean {\n const inBrowser = typeof window !== 'undefined' && window !== null;\n if (\n inBrowser &&\n 'IntersectionObserver' in window &&\n 'IntersectionObserverEntry' in window &&\n 'intersectionRatio' in window.IntersectionObserverEntry.prototype\n ) {\n if (!('isIntersecting' in window.IntersectionObserverEntry.prototype)) {\n try {\n Object.defineProperty(window.IntersectionObserverEntry.prototype, 'isIntersecting', {\n get() {\n return this.intersectionRatio > 0;\n },\n });\n } catch (e) {\n // CSP 限制或原型冻结时降级:调用方自行用 intersectionRatio > 0 判断\n return false;\n }\n }\n return true;\n }\n return false;\n }\n private _initIntersectionObserver(\n el: HTMLElement,\n src: string,\n error?: string,\n callback?: any,\n delay?: number,\n ): void {\n const observerOptions = this.options.observerOptions;\n this._images.set(\n el,\n new IntersectionObserver(entries => {\n Array.prototype.forEach.call(entries, entry => {\n if (delay && delay > 0)\n this._delayedIntersectionCallback(el, entry, delay, src, error, callback);\n else this._intersectionCallback(el, entry, src, error, callback);\n });\n }, observerOptions),\n );\n this._realObserver(el)?.observe(el);\n }\n private _intersectionCallback(\n el: HTMLElement,\n entry: IntersectionObserverEntry,\n src: string,\n error?: string,\n callback?: any,\n ): void {\n if (entry.isIntersecting) {\n this._realObserver(el)?.unobserve(entry.target);\n this._setImageSrc(el, src, error, callback);\n }\n }\n\n private _delayedIntersectionCallback(\n el: HTMLElement,\n entry: IntersectionObserverEntry,\n delay: number,\n src: string,\n error?: string,\n callback?: any,\n ): void {\n if (entry.isIntersecting) {\n if (entry.target.hasAttribute(defOption.attr.timeOutId)) return;\n\n const timeoutId = setTimeout(() => {\n this._intersectionCallback(el, entry, src, error, callback);\n entry.target.removeAttribute(defOption.attr.timeOutId);\n }, delay);\n entry.target.setAttribute(defOption.attr.timeOutId, String(timeoutId));\n } else {\n if (entry.target.hasAttribute(defOption.attr.timeOutId)) {\n clearTimeout(Number(entry.target.getAttribute(defOption.attr.timeOutId)));\n entry.target.removeAttribute(defOption.attr.timeOutId);\n }\n }\n }\n private _log(callback: () => void): void {\n if (this.options.log) callback();\n }\n}\nexport default Lazy;\n","import { onMounted, onUnmounted, nextTick, watch, Ref } from 'vue';\nimport Lazy from './lazy';\nimport { LazyOptionInfo } from './interfaceItem';\n\nexport const useLazyload = (\n refEl: Ref<HTMLElement | null>,\n src: Ref<string>,\n options?: LazyOptionInfo,\n) => {\n const lazy = new Lazy(options);\n onMounted(() => {\n nextTick(() => {\n if (refEl.value) {\n lazy.mount(refEl.value, src);\n }\n });\n });\n onUnmounted(() => {\n if (refEl.value) {\n lazy.unmount(refEl.value);\n }\n });\n watch(src, (newVal: string) => {\n if (refEl.value) {\n lazy.update(refEl.value, newVal);\n }\n });\n};\n"],"names":["defOption","Lazy","options","CommonBase","value","el","src","loading","error","callback","delay","binding","img","elImage","type","observerOptions","entries","entry","timeoutId","useLazyload","refEl","lazy","onMounted","nextTick","onUnmounted","watch","newVal"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { DefineComponent } from 'vue'
2
+ declare const _default: DefineComponent<object, object, any>
3
+ export default _default
@@ -0,0 +1,3 @@
1
+ import type { DefineComponent } from 'vue'
2
+ declare const _default: DefineComponent<object, object, any>
3
+ export default _default
@@ -0,0 +1,3 @@
1
+ import type { DefineComponent } from 'vue'
2
+ declare const _default: DefineComponent<object, object, any>
3
+ export default _default
@@ -0,0 +1,3 @@
1
+ import type { DefineComponent } from 'vue'
2
+ declare const _default: DefineComponent<object, object, any>
3
+ export default _default
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),s=require("../Shared/base-C2QOJBgB.js"),P=require("../Shared/index-DAgtltwJ.js"),S=require("../Shared/Index.vue_vue_type_script_setup_true_lang-CGycYcYz.js"),v=require("../Shared/Index.vue_vue_type_script_setup_true_lang-BavQMSPb.js"),b=require("../Shared/Index.vue_vue_type_script_setup_true_lang-gtDsWrhd.js"),x=require("../Shared/Index.vue_vue_type_script_setup_true_lang-C8HQVerr.js"),F=["id"],N={class:"cropperPreview-box-flex"},O=e.defineComponent({name:"ClCropperPreview",__name:"Index",props:{id:String,className:String,previewImageUrl:String,coverImageUrl:String,width:{type:Number,default:200},height:{type:Number,default:200},widthPreview:Number,heightPreview:Number,previewShape:{type:String,default:"square"},isCenterBox:{type:Boolean,default:!1},isShowUploadBtn:{type:Boolean,default:!0},getCropperImageUrl:Function,saveImageBase64:Function},emits:{onInitCoverImage:()=>!0,onError:a=>!0},setup(a,{expose:h,emit:C}){const n=a,m=C,w=n.id,l=e.ref(null),o=e.reactive({isEmptyPreviewUrl:!1,isEmptyCoverUrl:!1,isAgainCropper:!1,coverImageUrlOriginal:""});let p=!1;const d=e.computed(()=>{const{width:t,widthPreview:r}=n;return s.CommonBase.isFinite(r)?r:t}),U=e.computed(()=>{const{height:t,heightPreview:r}=n;return s.CommonBase.isFinite(r)?r:t}),_=e.computed(()=>({"panel-cropperPreview":!0,...P.CommonElement.getClassNameJson(n.className)})),g=()=>{const{previewImageUrl:t}=n,r=s.CommonBase.isEmpty(t);o.isEmptyPreviewUrl=r,o.isAgainCropper=r},u=()=>{const{coverImageUrl:t}=n,r=s.CommonBase.isEmpty(t);o.isEmptyCoverUrl=r,o.coverImageUrlOriginal=r?"":t},y=()=>{const{width:t,height:r}=n;(t<=0||r<=0)&&console.warn("[ClCropperPreview] 裁切区域宽高必须大于 0,当前值 width="+t+" height="+r)},B=()=>{g(),u(),y()};e.onMounted(()=>{e.nextTick(()=>{B()})}),e.watch(()=>n.previewImageUrl,()=>{g()}),e.watch(()=>n.coverImageUrl,()=>{u()});const I=t=>{t===!0&&m("onInitCoverImage")},f=(t,r)=>{if(!p){if(!(t instanceof File)){m("onError","文件读取失败,请重新选择图片");return}p=!0,l.value?.loadingStart(),s.CommonBase.getBase64ByFile(t).then(i=>{o.isAgainCropper=!0,o.coverImageUrlOriginal=i||"",o.isEmptyCoverUrl=!1,l.value?.loadingStop(),p=!1}).catch(i=>{l.value?.loadingStop(),p=!1,m("onError","文件读取失败,请重新选择图片")})}},k=()=>{o.isAgainCropper=!1},E=()=>{o.isAgainCropper=!0};return h({getValue:async()=>{let t="";try{t=l.value?String(await l.value.getImageBase64()||""):""}catch(r){console.error("[ClCropperPreview] getValue 获取裁切图片失败:",r)}return t},getCropperUrl:async t=>{let r="";try{if(l.value&&s.CommonBase.isFunction(n.getCropperImageUrl))r=await n.getCropperImageUrl(l.value,t);else{const{previewImageUrl:i,coverImageUrl:c}=n;r=s.CommonBase.isNonEmptyString(i)?i:c||""}}catch(i){console.error("getCropperUrl 调用失败:",i)}return r},getCoverUrlOriginal:async t=>{let r="";try{const{coverImageUrlOriginal:i}=o;if(i.startsWith("data:")&&s.CommonBase.isFunction(n.saveImageBase64)){const c=await n.saveImageBase64(i,t);r=c&&c.success?c.imageUrl:""}else/^(http|https):\/\/[^\s]+$/.test(i)&&(r=i)}catch(i){console.error("getCoverUrlOriginal 调用失败:",i)}return r}}),(t,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(_.value),id:e.unref(w)},[e.createElementVNode("div",N,[o.isEmptyPreviewUrl?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[o.isAgainCropper?(e.openBlock(),e.createBlock(v._sfc_main,{key:0,className:"m-b-5 w-120 m-r-10",icon:"clIconFont clIcon-reply",label:"返回",color:"transparent",onOnClick:k})):(e.openBlock(),e.createBlock(v._sfc_main,{key:1,className:"m-b-5 w-120",icon:"clIconFont clIcon-cropper",label:"重新裁切",color:"transparent",onOnClick:E}))],64)),a.isShowUploadBtn&&(o.isAgainCropper||o.isEmptyCoverUrl&&o.isEmptyPreviewUrl)?(e.openBlock(),e.createBlock(b._sfc_main,{key:2,className:"m-b-5",theme:"button",checkFormat:"jpg,png",buttonIcon:"clIconFont clIcon-upload-cloud",buttonColor:"white",buttonLabel:"选择图片",isShowUploadResult:!1,isShowUploadIng:!1,onOnChange:f})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[],64))]),!o.isEmptyPreviewUrl&&!o.isAgainCropper?(e.openBlock(),e.createBlock(x._sfc_main,{key:0,type:"image",list:[{value:a.previewImageUrl||"",imgUrl:"",label:""}],width:d.value,height:U.value},null,8,["list","width","height"])):o.isAgainCropper&&(!o.isEmptyPreviewUrl||!o.isEmptyCoverUrl)?(e.openBlock(),e.createBlock(S._sfc_main,{key:1,ref_key:"refElCropper",ref:l,previewShape:a.previewShape,isCenterBox:a.isCenterBox,src:o.coverImageUrlOriginal,width:a.width,height:a.height,isModal:!1,isShowUpload:!1,onOnImgLoad:I},null,8,["previewShape","isCenterBox","src","width","height"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[],64))],10,F))}});module.exports=O;
1
+ "use strict";const e=require("vue"),s=require("../Shared/base-C2QOJBgB.js"),P=require("../Shared/index-DAgtltwJ.js"),S=require("../Shared/Index.vue_vue_type_script_setup_true_lang-CGycYcYz.js"),v=require("../Shared/Index.vue_vue_type_script_setup_true_lang-BavQMSPb.js"),b=require("../Shared/Index.vue_vue_type_script_setup_true_lang-BDPkmgGP.js"),x=require("../Shared/Index.vue_vue_type_script_setup_true_lang-r6RBdV4y.js"),F=["id"],N={class:"cropperPreview-box-flex"},O=e.defineComponent({name:"ClCropperPreview",__name:"Index",props:{id:String,className:String,previewImageUrl:String,coverImageUrl:String,width:{type:Number,default:200},height:{type:Number,default:200},widthPreview:Number,heightPreview:Number,previewShape:{type:String,default:"square"},isCenterBox:{type:Boolean,default:!1},isShowUploadBtn:{type:Boolean,default:!0},getCropperImageUrl:Function,saveImageBase64:Function},emits:{onInitCoverImage:()=>!0,onError:a=>!0},setup(a,{expose:h,emit:C}){const n=a,m=C,w=n.id,l=e.ref(null),o=e.reactive({isEmptyPreviewUrl:!1,isEmptyCoverUrl:!1,isAgainCropper:!1,coverImageUrlOriginal:""});let p=!1;const d=e.computed(()=>{const{width:t,widthPreview:r}=n;return s.CommonBase.isFinite(r)?r:t}),U=e.computed(()=>{const{height:t,heightPreview:r}=n;return s.CommonBase.isFinite(r)?r:t}),_=e.computed(()=>({"panel-cropperPreview":!0,...P.CommonElement.getClassNameJson(n.className)})),g=()=>{const{previewImageUrl:t}=n,r=s.CommonBase.isEmpty(t);o.isEmptyPreviewUrl=r,o.isAgainCropper=r},u=()=>{const{coverImageUrl:t}=n,r=s.CommonBase.isEmpty(t);o.isEmptyCoverUrl=r,o.coverImageUrlOriginal=r?"":t},y=()=>{const{width:t,height:r}=n;(t<=0||r<=0)&&console.warn("[ClCropperPreview] 裁切区域宽高必须大于 0,当前值 width="+t+" height="+r)},B=()=>{g(),u(),y()};e.onMounted(()=>{e.nextTick(()=>{B()})}),e.watch(()=>n.previewImageUrl,()=>{g()}),e.watch(()=>n.coverImageUrl,()=>{u()});const I=t=>{t===!0&&m("onInitCoverImage")},f=(t,r)=>{if(!p){if(!(t instanceof File)){m("onError","文件读取失败,请重新选择图片");return}p=!0,l.value?.loadingStart(),s.CommonBase.getBase64ByFile(t).then(i=>{o.isAgainCropper=!0,o.coverImageUrlOriginal=i||"",o.isEmptyCoverUrl=!1,l.value?.loadingStop(),p=!1}).catch(i=>{l.value?.loadingStop(),p=!1,m("onError","文件读取失败,请重新选择图片")})}},k=()=>{o.isAgainCropper=!1},E=()=>{o.isAgainCropper=!0};return h({getValue:async()=>{let t="";try{t=l.value?String(await l.value.getImageBase64()||""):""}catch(r){console.error("[ClCropperPreview] getValue 获取裁切图片失败:",r)}return t},getCropperUrl:async t=>{let r="";try{if(l.value&&s.CommonBase.isFunction(n.getCropperImageUrl))r=await n.getCropperImageUrl(l.value,t);else{const{previewImageUrl:i,coverImageUrl:c}=n;r=s.CommonBase.isNonEmptyString(i)?i:c||""}}catch(i){console.error("getCropperUrl 调用失败:",i)}return r},getCoverUrlOriginal:async t=>{let r="";try{const{coverImageUrlOriginal:i}=o;if(i.startsWith("data:")&&s.CommonBase.isFunction(n.saveImageBase64)){const c=await n.saveImageBase64(i,t);r=c&&c.success?c.imageUrl:""}else/^(http|https):\/\/[^\s]+$/.test(i)&&(r=i)}catch(i){console.error("getCoverUrlOriginal 调用失败:",i)}return r}}),(t,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(_.value),id:e.unref(w)},[e.createElementVNode("div",N,[o.isEmptyPreviewUrl?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[o.isAgainCropper?(e.openBlock(),e.createBlock(v._sfc_main,{key:0,className:"m-b-5 w-120 m-r-10",icon:"clIconFont clIcon-reply",label:"返回",color:"transparent",onOnClick:k})):(e.openBlock(),e.createBlock(v._sfc_main,{key:1,className:"m-b-5 w-120",icon:"clIconFont clIcon-cropper",label:"重新裁切",color:"transparent",onOnClick:E}))],64)),a.isShowUploadBtn&&(o.isAgainCropper||o.isEmptyCoverUrl&&o.isEmptyPreviewUrl)?(e.openBlock(),e.createBlock(b._sfc_main,{key:2,className:"m-b-5",theme:"button",checkFormat:"jpg,png",buttonIcon:"clIconFont clIcon-upload-cloud",buttonColor:"white",buttonLabel:"选择图片",isShowUploadResult:!1,isShowUploadIng:!1,onOnChange:f})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[],64))]),!o.isEmptyPreviewUrl&&!o.isAgainCropper?(e.openBlock(),e.createBlock(x._sfc_main,{key:0,type:"image",list:[{value:a.previewImageUrl||"",imgUrl:"",label:""}],width:d.value,height:U.value},null,8,["list","width","height"])):o.isAgainCropper&&(!o.isEmptyPreviewUrl||!o.isEmptyCoverUrl)?(e.openBlock(),e.createBlock(S._sfc_main,{key:1,ref_key:"refElCropper",ref:l,previewShape:a.previewShape,isCenterBox:a.isCenterBox,src:o.coverImageUrlOriginal,width:a.width,height:a.height,isModal:!1,isShowUpload:!1,onOnImgLoad:I},null,8,["previewShape","isCenterBox","src","width","height"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[],64))],10,F))}});module.exports=O;
2
2
  //# sourceMappingURL=ClCropperPreview.cjs.map
@@ -0,0 +1,3 @@
1
+ import type { DefineComponent } from 'vue'
2
+ declare const _default: DefineComponent<object, object, any>
3
+ export default _default
@@ -3,8 +3,8 @@ import { C as s } from "../Shared/base-DU7nGSf6.js";
3
3
  import { C as T } from "../Shared/index-DvNmQjNH.js";
4
4
  import { _ as W } from "../Shared/Index.vue_vue_type_script_setup_true_lang-C3DLlsoZ.js";
5
5
  import { _ as d } from "../Shared/Index.vue_vue_type_script_setup_true_lang-B16tpDIR.js";
6
- import { _ as j } from "../Shared/Index.vue_vue_type_script_setup_true_lang-Dxb_K2w0.js";
7
- import { _ as q } from "../Shared/Index.vue_vue_type_script_setup_true_lang-NdqbsOrG.js";
6
+ import { _ as j } from "../Shared/Index.vue_vue_type_script_setup_true_lang-gsnpWNek.js";
7
+ import { _ as q } from "../Shared/Index.vue_vue_type_script_setup_true_lang-CvF_iIQS.js";
8
8
  const z = ["id"], H = { class: "cropperPreview-box-flex" }, te = /* @__PURE__ */ N({
9
9
  name: "ClCropperPreview",
10
10
  __name: "Index",
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("../Shared/Index.vue_vue_type_script_setup_true_lang-D_IwyxiV.js");module.exports=e._sfc_main;
1
+ "use strict";const e=require("../Shared/Index.vue_vue_type_script_setup_true_lang-Bnjm8vi-.js");module.exports=e._sfc_main;
2
2
  //# sourceMappingURL=ClDatetime.cjs.map
@@ -0,0 +1,3 @@
1
+ import type { DefineComponent } from 'vue'
2
+ declare const _default: DefineComponent<object, object, any>
3
+ export default _default
@@ -1,4 +1,4 @@
1
- import { _ as f } from "../Shared/Index.vue_vue_type_script_setup_true_lang-BKr3_J68.js";
1
+ import { _ as f } from "../Shared/Index.vue_vue_type_script_setup_true_lang-Lwl-M8kR.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -0,0 +1,3 @@
1
+ import type { DefineComponent } from 'vue'
2
+ declare const _default: DefineComponent<object, object, any>
3
+ export default _default
@@ -0,0 +1,2 @@
1
+ "use strict";const e=require("vue"),c=require("../Shared/Index.vue_vue_type_script_setup_true_lang-BGE3W0ft.js"),u=require("../Shared/base-C2QOJBgB.js"),m=require("../Shared/index-DAgtltwJ.js"),p=["id"],f=["id","aria-disabled"],_=e.defineComponent({name:"ClDropdownMenuItem",__name:"Item",props:{id:String,className:String,url:String,disabled:{type:Boolean,default:!1},isDivider:{type:Boolean,default:!1},extData:Object},emits:{onClick:t=>!0},setup(t,{emit:s}){const n=t,d=s,o=n.id,l=e.inject("$DropdownmenuTop"),r=e.computed(()=>{let i={"dropdownMenu-item":!0,"dropdownMenu-item-disabled":n.disabled,"panel-dropdownmenuitem":!0};return i=u.CommonBase.getJsonMerge(i,m.CommonElement.getClassNameJson(n.className)),i}),a=()=>{n.disabled||(l?.hideDropdown(),d("onClick",n.extData))};return(i,b)=>t.isDivider?(e.openBlock(),e.createElementBlock("li",{key:0,id:e.unref(o),role:"separator",class:"dropdownMenu-divider"},null,8,p)):(e.openBlock(),e.createElementBlock("li",{key:1,id:e.unref(o),role:"menuitem","aria-disabled":t.disabled?"true":void 0,class:e.normalizeClass(r.value)},[e.createVNode(c._sfc_main,{url:t.url,disabled:t.disabled,isHideUnderline:!0,onOnClick:a},{default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:3},8,["url","disabled"])],10,f))}});module.exports=_;
2
+ //# sourceMappingURL=ClDropdownMenuItem.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClDropdownMenuItem.cjs","sources":["../../../src/libs/Web/DropdownMenu/Item.vue"],"sourcesContent":["<template>\n <li\n v-if=\"isDivider\"\n :id=\"elId\"\n role=\"separator\"\n class=\"dropdownMenu-divider\"\n ></li>\n <li\n v-else\n :id=\"elId\"\n role=\"menuitem\"\n :aria-disabled=\"disabled ? 'true' : undefined\"\n :class=\"clsItem\"\n >\n <cl-link\n :url=\"url\"\n :disabled=\"disabled\"\n :isHideUnderline=\"true\"\n @onClick=\"onClickItem\"\n >\n <slot></slot>\n </cl-link>\n </li>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, inject } from 'vue';\nimport ClLink from '../../Element/Link/Index.vue';\nimport CommonBase from '../../Common/base';\nimport CommonElement from '../../Common/Element/index';\nimport type { DropdownMenuTop } from './Index.vue';\nimport './css/Item.css';\n\ndefineOptions({ name: 'ClDropdownMenuItem' });\n\nconst props = defineProps({\n id: String, // desc: 组件实例唯一标识,用于多实例场景下 DOM 查询限定\n className: String, // desc: 自定义 CSS 类名\n url: String, // desc: 链接地址\n disabled: {\n type: Boolean,\n default: false, // desc: 是否禁用\n },\n isDivider: {\n type: Boolean,\n default: false, // desc: 是否为分割线\n },\n extData: Object, // desc: 扩展数据,点击时回调传出\n});\n\nconst emit = defineEmits({\n onClick: (_extData?: object) => true, // desc: 点击菜单项时触发\n});\n\n// slots: default\n\nconst elId = props.id; // || `_elId_-${CommonBase.getRandom(8)}`\nconst _selfTop = inject<DropdownMenuTop>('$DropdownmenuTop');\n\nconst clsItem = computed(() => {\n let cls: Record<string, boolean> = {\n 'dropdownMenu-item': true,\n 'dropdownMenu-item-disabled': props.disabled,\n 'panel-dropdownmenuitem': true,\n };\n cls = CommonBase.getJsonMerge(cls, CommonElement.getClassNameJson(props.className));\n return cls;\n});\n\n// 时序约定:hideDropdown 同步置 DropdownLayer isOpen=false,面板关闭与 onChangeOpen 经 watch 异步生效,\n// onClick 先于 onChangeOpen 发出,调用方勿在 onClick 中同步依赖面板关闭状态\nconst onClickItem = () => {\n if (!props.disabled) {\n _selfTop?.hideDropdown();\n emit('onClick', props.extData);\n }\n};\n</script>\n"],"names":["props","__props","emit","__emit","elId","_selfTop","inject","clsItem","computed","cls","CommonBase","CommonElement","onClickItem","_createElementBlock","_unref","_createVNode","ClLink","_renderSlot","_ctx"],"mappings":"6cAmCA,MAAMA,EAAQC,EAeRC,EAAOC,EAMPC,EAAOJ,EAAM,GACbK,EAAWC,EAAAA,OAAwB,kBAAkB,EAErDC,EAAUC,EAAAA,SAAS,IAAM,CAC7B,IAAIC,EAA+B,CACjC,oBAAqB,GACrB,6BAA8BT,EAAM,SACpC,yBAA0B,EAAA,EAE5B,OAAAS,EAAMC,EAAAA,WAAW,aAAaD,EAAKE,EAAAA,cAAc,iBAAiBX,EAAM,SAAS,CAAC,EAC3ES,CACT,CAAC,EAIKG,EAAc,IAAM,CACnBZ,EAAM,WACTK,GAAU,aAAA,EACVH,EAAK,UAAWF,EAAM,OAAO,EAEjC,eA1EUC,EAAA,yBADRY,EAAAA,mBAKM,KAAA,OAHH,GAAIC,EAAAA,MAAAV,CAAA,EACL,KAAK,YACL,MAAM,sBAAA,4BAERS,EAAAA,mBAeK,KAAA,OAbF,GAAIC,EAAAA,MAAAV,CAAA,EACL,KAAK,WACJ,gBAAeH,EAAA,SAAQ,OAAY,OACnC,uBAAOM,EAAA,KAAO,CAAA,GAEfQ,EAAAA,YAOUC,EAAAA,UAAA,CANP,IAAKf,EAAA,IACL,SAAUA,EAAA,SACV,gBAAiB,GACjB,UAASW,CAAA,qBAEV,IAAa,CAAbK,aAAaC,EAAA,OAAA,SAAA,CAAA"}
@@ -0,0 +1 @@
1
+ .dropdownMenu-divider{margin:2px 5px;height:1px;overflow:hidden;background-color:#e5e5e5}
@@ -0,0 +1,3 @@
1
+ import type { DefineComponent } from 'vue'
2
+ declare const _default: DefineComponent<object, object, any>
3
+ export default _default
@@ -0,0 +1,72 @@
1
+ import { defineComponent as u, inject as p, computed as f, openBlock as n, createElementBlock as d, unref as a, normalizeClass as C, createVNode as b, withCtx as k, renderSlot as w } from "vue";
2
+ import { _ as D } from "../Shared/Index.vue_vue_type_script_setup_true_lang-DWAT7nze.js";
3
+ import { C as _ } from "../Shared/base-DU7nGSf6.js";
4
+ import { C as g } from "../Shared/index-DvNmQjNH.js";
5
+ const h = ["id"], v = ["id", "aria-disabled"], N = /* @__PURE__ */ u({
6
+ name: "ClDropdownMenuItem",
7
+ __name: "Item",
8
+ props: {
9
+ id: String,
10
+ // desc: 组件实例唯一标识,用于多实例场景下 DOM 查询限定
11
+ className: String,
12
+ // desc: 自定义 CSS 类名
13
+ url: String,
14
+ // desc: 链接地址
15
+ disabled: {
16
+ type: Boolean,
17
+ default: !1
18
+ // desc: 是否禁用
19
+ },
20
+ isDivider: {
21
+ type: Boolean,
22
+ default: !1
23
+ // desc: 是否为分割线
24
+ },
25
+ extData: Object
26
+ // desc: 扩展数据,点击时回调传出
27
+ },
28
+ emits: {
29
+ onClick: (e) => !0
30
+ // desc: 点击菜单项时触发
31
+ },
32
+ setup(e, { emit: l }) {
33
+ const t = e, s = l, i = t.id, r = p("$DropdownmenuTop"), m = f(() => {
34
+ let o = {
35
+ "dropdownMenu-item": !0,
36
+ "dropdownMenu-item-disabled": t.disabled,
37
+ "panel-dropdownmenuitem": !0
38
+ };
39
+ return o = _.getJsonMerge(o, g.getClassNameJson(t.className)), o;
40
+ }), c = () => {
41
+ t.disabled || (r?.hideDropdown(), s("onClick", t.extData));
42
+ };
43
+ return (o, x) => e.isDivider ? (n(), d("li", {
44
+ key: 0,
45
+ id: a(i),
46
+ role: "separator",
47
+ class: "dropdownMenu-divider"
48
+ }, null, 8, h)) : (n(), d("li", {
49
+ key: 1,
50
+ id: a(i),
51
+ role: "menuitem",
52
+ "aria-disabled": e.disabled ? "true" : void 0,
53
+ class: C(m.value)
54
+ }, [
55
+ b(D, {
56
+ url: e.url,
57
+ disabled: e.disabled,
58
+ isHideUnderline: !0,
59
+ onOnClick: c
60
+ }, {
61
+ default: k(() => [
62
+ w(o.$slots, "default")
63
+ ]),
64
+ _: 3
65
+ }, 8, ["url", "disabled"])
66
+ ], 10, v));
67
+ }
68
+ });
69
+ export {
70
+ N as default
71
+ };
72
+ //# sourceMappingURL=ClDropdownMenuItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClDropdownMenuItem.js","sources":["../../../src/libs/Web/DropdownMenu/Item.vue"],"sourcesContent":["<template>\n <li\n v-if=\"isDivider\"\n :id=\"elId\"\n role=\"separator\"\n class=\"dropdownMenu-divider\"\n ></li>\n <li\n v-else\n :id=\"elId\"\n role=\"menuitem\"\n :aria-disabled=\"disabled ? 'true' : undefined\"\n :class=\"clsItem\"\n >\n <cl-link\n :url=\"url\"\n :disabled=\"disabled\"\n :isHideUnderline=\"true\"\n @onClick=\"onClickItem\"\n >\n <slot></slot>\n </cl-link>\n </li>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, inject } from 'vue';\nimport ClLink from '../../Element/Link/Index.vue';\nimport CommonBase from '../../Common/base';\nimport CommonElement from '../../Common/Element/index';\nimport type { DropdownMenuTop } from './Index.vue';\nimport './css/Item.css';\n\ndefineOptions({ name: 'ClDropdownMenuItem' });\n\nconst props = defineProps({\n id: String, // desc: 组件实例唯一标识,用于多实例场景下 DOM 查询限定\n className: String, // desc: 自定义 CSS 类名\n url: String, // desc: 链接地址\n disabled: {\n type: Boolean,\n default: false, // desc: 是否禁用\n },\n isDivider: {\n type: Boolean,\n default: false, // desc: 是否为分割线\n },\n extData: Object, // desc: 扩展数据,点击时回调传出\n});\n\nconst emit = defineEmits({\n onClick: (_extData?: object) => true, // desc: 点击菜单项时触发\n});\n\n// slots: default\n\nconst elId = props.id; // || `_elId_-${CommonBase.getRandom(8)}`\nconst _selfTop = inject<DropdownMenuTop>('$DropdownmenuTop');\n\nconst clsItem = computed(() => {\n let cls: Record<string, boolean> = {\n 'dropdownMenu-item': true,\n 'dropdownMenu-item-disabled': props.disabled,\n 'panel-dropdownmenuitem': true,\n };\n cls = CommonBase.getJsonMerge(cls, CommonElement.getClassNameJson(props.className));\n return cls;\n});\n\n// 时序约定:hideDropdown 同步置 DropdownLayer isOpen=false,面板关闭与 onChangeOpen 经 watch 异步生效,\n// onClick 先于 onChangeOpen 发出,调用方勿在 onClick 中同步依赖面板关闭状态\nconst onClickItem = () => {\n if (!props.disabled) {\n _selfTop?.hideDropdown();\n emit('onClick', props.extData);\n }\n};\n</script>\n"],"names":["props","__props","emit","__emit","elId","_selfTop","inject","clsItem","computed","cls","CommonBase","CommonElement","onClickItem","_createElementBlock","_unref","_createVNode","ClLink","_renderSlot","_ctx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,UAAMA,IAAQC,GAeRC,IAAOC,GAMPC,IAAOJ,EAAM,IACbK,IAAWC,EAAwB,kBAAkB,GAErDC,IAAUC,EAAS,MAAM;AAC7B,UAAIC,IAA+B;AAAA,QACjC,qBAAqB;AAAA,QACrB,8BAA8BT,EAAM;AAAA,QACpC,0BAA0B;AAAA,MAAA;AAE5B,aAAAS,IAAMC,EAAW,aAAaD,GAAKE,EAAc,iBAAiBX,EAAM,SAAS,CAAC,GAC3ES;AAAA,IACT,CAAC,GAIKG,IAAc,MAAM;AACxB,MAAKZ,EAAM,aACTK,GAAU,aAAA,GACVH,EAAK,WAAWF,EAAM,OAAO;AAAA,IAEjC;qBA1EUC,EAAA,kBADRY,EAKM,MAAA;AAAA;MAHH,IAAIC,EAAAV,CAAA;AAAA,MACL,MAAK;AAAA,MACL,OAAM;AAAA,IAAA,wBAERS,EAeK,MAAA;AAAA;MAbF,IAAIC,EAAAV,CAAA;AAAA,MACL,MAAK;AAAA,MACJ,iBAAeH,EAAA,WAAQ,SAAY;AAAA,MACnC,SAAOM,EAAA,KAAO;AAAA,IAAA;MAEfQ,EAOUC,GAAA;AAAA,QANP,KAAKf,EAAA;AAAA,QACL,UAAUA,EAAA;AAAA,QACV,iBAAiB;AAAA,QACjB,WAASW;AAAA,MAAA;mBAEV,MAAa;AAAA,UAAbK,EAAaC,EAAA,QAAA,SAAA;AAAA,QAAA;;;;;;"}