@dropi/ui 0.1.20 → 0.1.22

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 (533) hide show
  1. package/dist/cjs/dropi-accordion-item.cjs.entry.js +54 -0
  2. package/dist/cjs/dropi-accordion.cjs.entry.js +5 -39
  3. package/dist/cjs/dropi-alert-legacy.cjs.entry.js +39 -0
  4. package/dist/cjs/dropi-alert-modal.cjs.entry.js +80 -24
  5. package/dist/cjs/dropi-alert.cjs.entry.js +20 -14
  6. package/dist/cjs/dropi-avatars.cjs.entry.js +3 -3
  7. package/dist/cjs/dropi-badge-legacy.cjs.entry.js +30 -0
  8. package/dist/cjs/dropi-badge.cjs.entry.js +4 -4
  9. package/dist/cjs/dropi-banner-external.cjs.entry.js +25 -9
  10. package/dist/cjs/dropi-breadcrumb.cjs.entry.js +2 -2
  11. package/dist/cjs/dropi-button.cjs.entry.js +11 -7
  12. package/dist/cjs/dropi-card-checkbox.cjs.entry.js +17 -14
  13. package/dist/cjs/dropi-card-product.cjs.entry.js +42 -23
  14. package/dist/cjs/dropi-card-section.cjs.entry.js +17 -17
  15. package/dist/cjs/dropi-carousel.cjs.entry.js +112 -42
  16. package/dist/cjs/dropi-checkbox-selection-list.cjs.entry.js +17 -15
  17. package/dist/cjs/dropi-checkbox.cjs.entry.js +6 -6
  18. package/dist/cjs/dropi-chips.cjs.entry.js +8 -8
  19. package/dist/cjs/dropi-city-selector.cjs.entry.js +28 -9
  20. package/dist/cjs/dropi-color-picker.cjs.entry.js +300 -50
  21. package/dist/cjs/dropi-country-flags.cjs.entry.js +4 -4
  22. package/dist/cjs/dropi-country-selector.cjs.entry.js +50 -17
  23. package/dist/cjs/dropi-date-picker-range.cjs.entry.js +8 -8
  24. package/dist/cjs/dropi-date-picker.cjs.entry.js +53 -35
  25. package/dist/cjs/dropi-drawer.cjs.entry.js +38 -9
  26. package/dist/cjs/dropi-dropdown.cjs.entry.js +23 -16
  27. package/dist/cjs/dropi-empty-state.cjs.entry.js +15 -18
  28. package/dist/cjs/dropi-favorite-button.cjs.entry.js +5 -5
  29. package/dist/cjs/dropi-file-upload-progress-bar.cjs.entry.js +57 -32
  30. package/dist/cjs/dropi-file-upload.cjs.entry.js +210 -57
  31. package/dist/cjs/dropi-icon.cjs.entry.js +21 -4
  32. package/dist/cjs/dropi-ilustration-icon.cjs.entry.js +3 -3
  33. package/dist/cjs/dropi-image-miniature.cjs.entry.js +2 -2
  34. package/dist/cjs/dropi-image-overlay.cjs.entry.js +4 -3
  35. package/dist/cjs/dropi-input_3.cjs.entry.js +392 -0
  36. package/dist/cjs/dropi-languages-selector.cjs.entry.js +10 -6
  37. package/dist/cjs/dropi-logo.cjs.entry.js +12 -2
  38. package/dist/cjs/dropi-lottie-loader.cjs.entry.js +5 -5
  39. package/dist/cjs/dropi-media-player.cjs.entry.js +131 -41
  40. package/dist/cjs/dropi-modal.cjs.entry.js +46 -20
  41. package/dist/cjs/dropi-navbar.cjs.entry.js +14 -12
  42. package/dist/cjs/dropi-otp-send-code.cjs.entry.js +13 -13
  43. package/dist/cjs/dropi-phone-input.cjs.entry.js +163 -50
  44. package/dist/cjs/dropi-radio-button.cjs.entry.js +7 -7
  45. package/dist/cjs/dropi-radio-selection-list.cjs.entry.js +17 -13
  46. package/dist/cjs/dropi-read-more.cjs.entry.js +8 -4
  47. package/dist/cjs/dropi-search.cjs.entry.js +52 -38
  48. package/dist/cjs/dropi-select.cjs.entry.js +102 -55
  49. package/dist/cjs/dropi-sidebar.cjs.entry.js +61 -50
  50. package/dist/cjs/dropi-simple-stepper.cjs.entry.js +8 -6
  51. package/dist/cjs/dropi-skeleton.cjs.entry.js +16 -6
  52. package/dist/cjs/dropi-steps.cjs.entry.js +6 -4
  53. package/dist/cjs/dropi-switch.cjs.entry.js +5 -5
  54. package/dist/cjs/dropi-table.cjs.entry.js +212 -37
  55. package/dist/cjs/dropi-tabs.cjs.entry.js +13 -11
  56. package/dist/cjs/dropi-tag-type-product.cjs.entry.js +3 -3
  57. package/dist/cjs/dropi-text-area.cjs.entry.js +45 -14
  58. package/dist/cjs/dropi-time-line.cjs.entry.js +3 -3
  59. package/dist/cjs/dropi-toast.cjs.entry.js +7 -6
  60. package/dist/cjs/dropi-tooltip-v2.cjs.entry.js +131 -0
  61. package/dist/cjs/dropi-tooltip.cjs.entry.js +5 -26
  62. package/dist/cjs/dropi-ui.cjs.js +2 -2
  63. package/dist/cjs/dropi-vertical-steps.cjs.entry.js +6 -6
  64. package/dist/cjs/dropi-youtube-lazy-video.cjs.entry.js +3 -3
  65. package/dist/cjs/{index-DcOH2ZjX.js → index-C8kwDvpf.js} +1044 -14
  66. package/dist/cjs/loader.cjs.js +2 -2
  67. package/dist/collection/collection-manifest.json +7 -3
  68. package/dist/collection/components/dropi-accordion/dropi-accordion-item.css +45 -0
  69. package/dist/collection/components/dropi-accordion/dropi-accordion-item.js +172 -0
  70. package/dist/collection/components/dropi-accordion/dropi-accordion.css +3 -3
  71. package/dist/collection/components/dropi-accordion/dropi-accordion.js +7 -129
  72. package/dist/collection/components/dropi-alert/dropi-alert.css +5 -11
  73. package/dist/collection/components/dropi-alert/dropi-alert.js +86 -20
  74. package/dist/collection/components/dropi-alert-legacy/dropi-alert-legacy.css +31 -0
  75. package/dist/collection/components/dropi-alert-legacy/dropi-alert-legacy.js +128 -0
  76. package/dist/collection/components/dropi-alert-modal/dropi-alert-modal.css +55 -23
  77. package/dist/collection/components/dropi-alert-modal/dropi-alert-modal.js +180 -50
  78. package/dist/collection/components/dropi-avatars/dropi-avatars.js +3 -3
  79. package/dist/collection/components/dropi-badge/dropi-badge.css +1 -1
  80. package/dist/collection/components/dropi-badge/dropi-badge.js +3 -4
  81. package/dist/collection/components/dropi-badge-legacy/dropi-badge-legacy.css +17 -0
  82. package/dist/collection/components/dropi-badge-legacy/dropi-badge-legacy.js +119 -0
  83. package/dist/collection/components/dropi-banner-external/dropi-banner-external.js +88 -13
  84. package/dist/collection/components/dropi-breadcrumb/dropi-breadcrumb.js +1 -1
  85. package/dist/collection/components/dropi-button/dropi-button.css +17 -17
  86. package/dist/collection/components/dropi-button/dropi-button.js +31 -7
  87. package/dist/collection/components/dropi-card-checkbox/dropi-card-checkbox.css +3 -1
  88. package/dist/collection/components/dropi-card-checkbox/dropi-card-checkbox.js +30 -27
  89. package/dist/collection/components/dropi-card-product/dropi-card-product.css +179 -102
  90. package/dist/collection/components/dropi-card-product/dropi-card-product.js +112 -79
  91. package/dist/collection/components/dropi-card-section/dropi-card-section.css +2 -2
  92. package/dist/collection/components/dropi-card-section/dropi-card-section.js +25 -25
  93. package/dist/collection/components/dropi-carousel/dropi-carousel.css +114 -69
  94. package/dist/collection/components/dropi-carousel/dropi-carousel.js +202 -100
  95. package/dist/collection/components/dropi-checkbox/dropi-checkbox.js +6 -6
  96. package/dist/collection/components/dropi-checkbox-selection-list/dropi-checkbox-selection-list.js +42 -20
  97. package/dist/collection/components/dropi-chips/dropi-chips.js +15 -15
  98. package/dist/collection/components/dropi-city-selector/dropi-city-selector.css +112 -50
  99. package/dist/collection/components/dropi-city-selector/dropi-city-selector.js +38 -9
  100. package/dist/collection/components/dropi-color-picker/dropi-color-picker.css +169 -142
  101. package/dist/collection/components/dropi-color-picker/dropi-color-picker.js +317 -159
  102. package/dist/collection/components/dropi-country-flags/dropi-country-flags.js +5 -5
  103. package/dist/collection/components/dropi-country-selector/dropi-country-selector.css +72 -25
  104. package/dist/collection/components/dropi-country-selector/dropi-country-selector.js +124 -22
  105. package/dist/collection/components/dropi-date-picker/dropi-date-picker.css +104 -39
  106. package/dist/collection/components/dropi-date-picker/dropi-date-picker.js +131 -49
  107. package/dist/collection/components/dropi-date-picker-range/dropi-date-picker-range.css +8 -8
  108. package/dist/collection/components/dropi-date-picker-range/dropi-date-picker-range.js +8 -8
  109. package/dist/collection/components/dropi-drawer/dropi-drawer.css +38 -16
  110. package/dist/collection/components/dropi-drawer/dropi-drawer.js +107 -18
  111. package/dist/collection/components/dropi-dropdown/dropi-dropdown.css +1 -1
  112. package/dist/collection/components/dropi-dropdown/dropi-dropdown.js +52 -27
  113. package/dist/collection/components/dropi-empty-state/dropi-empty-state.js +37 -54
  114. package/dist/collection/components/dropi-favorite-button/dropi-favorite-button.js +5 -5
  115. package/dist/collection/components/dropi-file-upload/dropi-file-upload.css +431 -33
  116. package/dist/collection/components/dropi-file-upload/dropi-file-upload.js +364 -104
  117. package/dist/collection/components/dropi-file-upload-progress-bar/dropi-file-upload-progress-bar.css +82 -78
  118. package/dist/collection/components/dropi-file-upload-progress-bar/dropi-file-upload-progress-bar.js +129 -69
  119. package/dist/collection/components/dropi-icon/dropi-icon.css +5 -0
  120. package/dist/collection/components/dropi-icon/dropi-icon.js +19 -2
  121. package/dist/collection/components/dropi-ilustration-icon/dropi-ilustration-icon.css +3 -3
  122. package/dist/collection/components/dropi-ilustration-icon/dropi-ilustration-icon.js +1 -1
  123. package/dist/collection/components/dropi-image-miniature/dropi-image-miniature.js +1 -1
  124. package/dist/collection/components/dropi-image-overlay/dropi-image-overlay.css +6 -2
  125. package/dist/collection/components/dropi-image-overlay/dropi-image-overlay.js +5 -4
  126. package/dist/collection/components/dropi-input/dropi-input.css +1 -1
  127. package/dist/collection/components/dropi-input/dropi-input.js +155 -82
  128. package/dist/collection/components/dropi-languages-selector/dropi-languages-selector.css +1 -1
  129. package/dist/collection/components/dropi-languages-selector/dropi-languages-selector.js +9 -5
  130. package/dist/collection/components/dropi-logo/dropi-logo.js +12 -1
  131. package/dist/collection/components/dropi-lottie-loader/dropi-lottie-loader.css +8 -2
  132. package/dist/collection/components/dropi-lottie-loader/dropi-lottie-loader.js +6 -6
  133. package/dist/collection/components/dropi-media-player/dropi-media-player.css +263 -70
  134. package/dist/collection/components/dropi-media-player/dropi-media-player.js +161 -61
  135. package/dist/collection/components/dropi-modal/dropi-modal.css +14 -4
  136. package/dist/collection/components/dropi-modal/dropi-modal.js +312 -26
  137. package/dist/collection/components/dropi-navbar/dropi-navbar.css +7 -7
  138. package/dist/collection/components/dropi-navbar/dropi-navbar.js +42 -26
  139. package/dist/collection/components/dropi-otp-send-code/dropi-otp-send-code.css +2 -2
  140. package/dist/collection/components/dropi-otp-send-code/dropi-otp-send-code.js +13 -13
  141. package/dist/collection/components/dropi-paginator/dropi-paginator.css +2 -2
  142. package/dist/collection/components/dropi-paginator/dropi-paginator.js +51 -99
  143. package/dist/collection/components/dropi-phone-input/dropi-phone-input.css +158 -101
  144. package/dist/collection/components/dropi-phone-input/dropi-phone-input.js +256 -86
  145. package/dist/collection/components/dropi-radio-button/dropi-radio-button.js +13 -20
  146. package/dist/collection/components/dropi-radio-selection-list/dropi-radio-selection-list.css +3 -3
  147. package/dist/collection/components/dropi-radio-selection-list/dropi-radio-selection-list.js +69 -19
  148. package/dist/collection/components/dropi-read-more/dropi-read-more.css +5 -8
  149. package/dist/collection/components/dropi-read-more/dropi-read-more.js +46 -2
  150. package/dist/collection/components/dropi-search/dropi-search.css +2 -2
  151. package/dist/collection/components/dropi-search/dropi-search.js +194 -60
  152. package/dist/collection/components/dropi-select/dropi-select.css +7 -7
  153. package/dist/collection/components/dropi-select/dropi-select.js +170 -84
  154. package/dist/collection/components/dropi-sidebar/dropi-sidebar.css +51 -92
  155. package/dist/collection/components/dropi-sidebar/dropi-sidebar.js +86 -176
  156. package/dist/collection/components/dropi-simple-stepper/dropi-simple-stepper.css +2 -2
  157. package/dist/collection/components/dropi-simple-stepper/dropi-simple-stepper.js +29 -7
  158. package/dist/collection/components/dropi-skeleton/dropi-skeleton.js +40 -10
  159. package/dist/collection/components/dropi-steps/dropi-steps.css +3 -3
  160. package/dist/collection/components/dropi-steps/dropi-steps.js +31 -3
  161. package/dist/collection/components/dropi-switch/dropi-switch.js +5 -5
  162. package/dist/collection/components/dropi-table/dropi-table.css +505 -45
  163. package/dist/collection/components/dropi-table/dropi-table.js +690 -50
  164. package/dist/collection/components/dropi-tabs/dropi-tabs.css +10 -5
  165. package/dist/collection/components/dropi-tabs/dropi-tabs.js +35 -13
  166. package/dist/collection/components/dropi-tag/dropi-tag.js +5 -5
  167. package/dist/collection/components/dropi-tag-type-product/dropi-tag-type-product.css +4 -4
  168. package/dist/collection/components/dropi-tag-type-product/dropi-tag-type-product.js +1 -1
  169. package/dist/collection/components/dropi-text-area/dropi-text-area.css +4 -1
  170. package/dist/collection/components/dropi-text-area/dropi-text-area.js +87 -32
  171. package/dist/collection/components/dropi-time-line/dropi-time-line.css +2 -2
  172. package/dist/collection/components/dropi-time-line/dropi-time-line.js +1 -1
  173. package/dist/collection/components/dropi-toast/dropi-toast.css +2 -2
  174. package/dist/collection/components/dropi-toast/dropi-toast.js +6 -5
  175. package/dist/collection/components/dropi-tooltip/dropi-tooltip.css +28 -63
  176. package/dist/collection/components/dropi-tooltip/dropi-tooltip.js +11 -88
  177. package/dist/collection/components/dropi-tooltip-v2/dropi-tooltip.css +67 -0
  178. package/dist/collection/components/dropi-tooltip-v2/dropi-tooltip.js +468 -0
  179. package/dist/collection/components/dropi-vertical-steps/dropi-vertical-steps.css +3 -3
  180. package/dist/collection/components/dropi-vertical-steps/dropi-vertical-steps.js +5 -5
  181. package/dist/collection/components/dropi-youtube-lazy-video/dropi-youtube-lazy-video.css +1 -1
  182. package/dist/collection/components/dropi-youtube-lazy-video/dropi-youtube-lazy-video.js +1 -1
  183. package/dist/components/dropi-accordion-item.d.ts +11 -0
  184. package/dist/components/dropi-accordion-item.js +1 -0
  185. package/dist/components/dropi-accordion.js +1 -1
  186. package/dist/components/dropi-alert-legacy.d.ts +11 -0
  187. package/dist/components/dropi-alert-legacy.js +1 -0
  188. package/dist/components/dropi-alert-modal.js +1 -1
  189. package/dist/components/dropi-alert.js +1 -1
  190. package/dist/components/dropi-avatars.js +1 -1
  191. package/dist/components/dropi-badge-legacy.d.ts +11 -0
  192. package/dist/components/dropi-badge-legacy.js +1 -0
  193. package/dist/components/dropi-badge.js +1 -1
  194. package/dist/components/dropi-banner-external.js +1 -1
  195. package/dist/components/dropi-breadcrumb.js +1 -1
  196. package/dist/components/dropi-button.js +1 -1
  197. package/dist/components/dropi-card-checkbox.js +1 -1
  198. package/dist/components/dropi-card-product.js +1 -1
  199. package/dist/components/dropi-card-section.js +1 -1
  200. package/dist/components/dropi-carousel.js +1 -1
  201. package/dist/components/dropi-checkbox-selection-list.js +1 -1
  202. package/dist/components/dropi-checkbox.js +1 -1
  203. package/dist/components/dropi-chips.js +1 -1
  204. package/dist/components/dropi-city-selector.js +1 -1
  205. package/dist/components/dropi-color-picker.js +1 -1
  206. package/dist/components/dropi-country-flags.js +1 -1
  207. package/dist/components/dropi-country-selector.js +1 -1
  208. package/dist/components/dropi-date-picker-range.js +1 -1
  209. package/dist/components/dropi-date-picker.js +1 -1
  210. package/dist/components/dropi-drawer.js +1 -1
  211. package/dist/components/dropi-dropdown.js +1 -1
  212. package/dist/components/dropi-empty-state.js +1 -1
  213. package/dist/components/dropi-favorite-button.js +1 -1
  214. package/dist/components/dropi-file-upload-progress-bar.js +1 -1
  215. package/dist/components/dropi-file-upload.js +1 -1
  216. package/dist/components/dropi-icon.js +1 -1
  217. package/dist/components/dropi-ilustration-icon.js +1 -1
  218. package/dist/components/dropi-image-miniature.js +1 -1
  219. package/dist/components/dropi-image-overlay.js +1 -1
  220. package/dist/components/dropi-input.js +1 -1
  221. package/dist/components/dropi-languages-selector.js +1 -1
  222. package/dist/components/dropi-logo.js +1 -1
  223. package/dist/components/dropi-lottie-loader.js +1 -1
  224. package/dist/components/dropi-media-player.js +1 -1
  225. package/dist/components/dropi-modal.js +1 -1
  226. package/dist/components/dropi-navbar.js +1 -1
  227. package/dist/components/dropi-otp-send-code.js +1 -1
  228. package/dist/components/dropi-paginator.js +1 -1
  229. package/dist/components/dropi-phone-input.js +1 -1
  230. package/dist/components/dropi-radio-button.js +1 -1
  231. package/dist/components/dropi-radio-selection-list.js +1 -1
  232. package/dist/components/dropi-read-more.js +1 -1
  233. package/dist/components/dropi-search.js +1 -1
  234. package/dist/components/dropi-select.js +1 -1
  235. package/dist/components/dropi-sidebar.js +1 -1
  236. package/dist/components/dropi-simple-stepper.js +1 -1
  237. package/dist/components/dropi-skeleton.js +1 -1
  238. package/dist/components/dropi-steps.js +1 -1
  239. package/dist/components/dropi-switch.js +1 -1
  240. package/dist/components/dropi-table.js +1 -1
  241. package/dist/components/dropi-tabs.js +1 -1
  242. package/dist/components/dropi-tag-type-product.js +1 -1
  243. package/dist/components/dropi-tag.js +1 -1
  244. package/dist/components/dropi-text-area.js +1 -1
  245. package/dist/components/dropi-time-line.js +1 -1
  246. package/dist/components/dropi-toast.js +1 -1
  247. package/dist/components/dropi-tooltip-v2.d.ts +11 -0
  248. package/dist/components/dropi-tooltip-v2.js +1 -0
  249. package/dist/components/dropi-tooltip.js +1 -1
  250. package/dist/components/dropi-vertical-steps.js +1 -1
  251. package/dist/components/dropi-youtube-lazy-video.js +1 -1
  252. package/dist/components/index.js +1 -1
  253. package/dist/components/p-B9R8Apw7.js +1 -0
  254. package/dist/components/p-B_Ace02i.js +1 -0
  255. package/dist/components/p-BrjO_JXp.js +1 -0
  256. package/dist/components/p-BwhxWL4p.js +1 -0
  257. package/dist/components/p-Bz2jXX3R.js +1 -0
  258. package/dist/components/p-CV4X3Gm4.js +1 -0
  259. package/dist/components/p-CV_oz45O.js +1 -0
  260. package/dist/components/p-D-vQQQNz.js +1 -0
  261. package/dist/components/p-D13d88W3.js +1 -0
  262. package/dist/components/p-DGUfr98Z.js +1 -0
  263. package/dist/components/p-a-hGQrJd.js +1 -0
  264. package/dist/components/p-o5gyrbbD.js +1 -0
  265. package/dist/dropi-ui/dropi-ui.css +1 -1
  266. package/dist/dropi-ui/dropi-ui.esm.js +1 -1
  267. package/dist/dropi-ui/p-00e5a2de.entry.js +1 -0
  268. package/dist/dropi-ui/p-0188e07a.entry.js +1 -0
  269. package/dist/dropi-ui/p-02710049.entry.js +1 -0
  270. package/dist/dropi-ui/p-17c56074.entry.js +1 -0
  271. package/dist/dropi-ui/p-18adf694.entry.js +1 -0
  272. package/dist/dropi-ui/p-1a3619c3.entry.js +1 -0
  273. package/dist/dropi-ui/p-1d3d6a32.entry.js +1 -0
  274. package/dist/dropi-ui/p-25640777.entry.js +1 -0
  275. package/dist/dropi-ui/p-2674d901.entry.js +1 -0
  276. package/dist/dropi-ui/p-2af538b9.entry.js +1 -0
  277. package/dist/dropi-ui/p-3013f3b8.entry.js +1 -0
  278. package/dist/dropi-ui/p-3321ca70.entry.js +1 -0
  279. package/dist/dropi-ui/p-33d242ec.entry.js +1 -0
  280. package/dist/dropi-ui/p-39af6478.entry.js +1 -0
  281. package/dist/dropi-ui/p-3e36c8b8.entry.js +1 -0
  282. package/dist/dropi-ui/p-3ebc9b7b.entry.js +1 -0
  283. package/dist/dropi-ui/p-446a481d.entry.js +1 -0
  284. package/dist/dropi-ui/p-50a5e548.entry.js +1 -0
  285. package/dist/dropi-ui/p-50e0d44f.entry.js +1 -0
  286. package/dist/dropi-ui/p-53a7a37d.entry.js +1 -0
  287. package/dist/dropi-ui/p-5c0bd7c2.entry.js +1 -0
  288. package/dist/dropi-ui/p-5cee6721.entry.js +1 -0
  289. package/dist/dropi-ui/p-5fb33ae4.entry.js +1 -0
  290. package/dist/dropi-ui/p-665ef7ba.entry.js +1 -0
  291. package/dist/dropi-ui/p-66b80371.entry.js +1 -0
  292. package/dist/dropi-ui/p-7bfc1c27.entry.js +1 -0
  293. package/dist/dropi-ui/p-7c0d2edf.entry.js +1 -0
  294. package/dist/dropi-ui/p-7eb27836.entry.js +1 -0
  295. package/dist/dropi-ui/p-85444414.entry.js +1 -0
  296. package/dist/dropi-ui/p-86283e99.entry.js +1 -0
  297. package/dist/dropi-ui/p-8bf5d8ee.entry.js +1 -0
  298. package/dist/dropi-ui/p-9032ba00.entry.js +1 -0
  299. package/dist/dropi-ui/p-9212f544.entry.js +1 -0
  300. package/dist/dropi-ui/p-92291873.entry.js +1 -0
  301. package/dist/dropi-ui/p-955e52f8.entry.js +1 -0
  302. package/dist/dropi-ui/p-976a15e3.entry.js +1 -0
  303. package/dist/dropi-ui/p-9b037086.entry.js +1 -0
  304. package/dist/dropi-ui/p-9e0129cc.entry.js +1 -0
  305. package/dist/dropi-ui/{p-c9ebd31b.entry.js → p-9ffec3f7.entry.js} +1 -1
  306. package/dist/dropi-ui/p-D5SAM1O2.js +2 -0
  307. package/dist/dropi-ui/p-a1c93e55.entry.js +1 -0
  308. package/dist/dropi-ui/p-a232c6a7.entry.js +1 -0
  309. package/dist/dropi-ui/p-a3c4d677.entry.js +1 -0
  310. package/dist/dropi-ui/p-a457e8ca.entry.js +1 -0
  311. package/dist/dropi-ui/p-a4e1df5e.entry.js +1 -0
  312. package/dist/dropi-ui/p-a822a23e.entry.js +1 -0
  313. package/dist/dropi-ui/p-a8f24270.entry.js +1 -0
  314. package/dist/dropi-ui/p-ae35d538.entry.js +1 -0
  315. package/dist/dropi-ui/p-af8e2157.entry.js +1 -0
  316. package/dist/dropi-ui/p-b2623a5c.entry.js +1 -0
  317. package/dist/dropi-ui/p-b3d3c72e.entry.js +1 -0
  318. package/dist/dropi-ui/p-c3614c4a.entry.js +1 -0
  319. package/dist/dropi-ui/p-cbf5367e.entry.js +1 -0
  320. package/dist/dropi-ui/p-cc527d91.entry.js +1 -0
  321. package/dist/dropi-ui/p-cdde481b.entry.js +1 -0
  322. package/dist/dropi-ui/p-d42d4ef7.entry.js +1 -0
  323. package/dist/dropi-ui/{p-b41c8a6c.entry.js → p-db38bf16.entry.js} +1 -1
  324. package/dist/dropi-ui/p-dd5d8b1b.entry.js +1 -0
  325. package/dist/dropi-ui/p-e3ad21f8.entry.js +1 -0
  326. package/dist/dropi-ui/p-e6e766ed.entry.js +1 -0
  327. package/dist/dropi-ui/p-ec263862.entry.js +1 -0
  328. package/dist/dropi-ui/p-efc2fc35.entry.js +1 -0
  329. package/dist/dropi-ui/p-f41cd9b5.entry.js +1 -0
  330. package/dist/dropi-ui/p-fa3d0267.entry.js +1 -0
  331. package/dist/esm/dropi-accordion-item.entry.js +52 -0
  332. package/dist/esm/dropi-accordion.entry.js +5 -39
  333. package/dist/esm/dropi-alert-legacy.entry.js +37 -0
  334. package/dist/esm/dropi-alert-modal.entry.js +80 -24
  335. package/dist/esm/dropi-alert.entry.js +20 -14
  336. package/dist/esm/dropi-avatars.entry.js +3 -3
  337. package/dist/esm/dropi-badge-legacy.entry.js +28 -0
  338. package/dist/esm/dropi-badge.entry.js +4 -4
  339. package/dist/esm/dropi-banner-external.entry.js +25 -9
  340. package/dist/esm/dropi-breadcrumb.entry.js +2 -2
  341. package/dist/esm/dropi-button.entry.js +11 -7
  342. package/dist/esm/dropi-card-checkbox.entry.js +17 -14
  343. package/dist/esm/dropi-card-product.entry.js +42 -23
  344. package/dist/esm/dropi-card-section.entry.js +17 -17
  345. package/dist/esm/dropi-carousel.entry.js +112 -42
  346. package/dist/esm/dropi-checkbox-selection-list.entry.js +17 -15
  347. package/dist/esm/dropi-checkbox.entry.js +6 -6
  348. package/dist/esm/dropi-chips.entry.js +8 -8
  349. package/dist/esm/dropi-city-selector.entry.js +28 -9
  350. package/dist/esm/dropi-color-picker.entry.js +300 -50
  351. package/dist/esm/dropi-country-flags.entry.js +4 -4
  352. package/dist/esm/dropi-country-selector.entry.js +50 -17
  353. package/dist/esm/dropi-date-picker-range.entry.js +8 -8
  354. package/dist/esm/dropi-date-picker.entry.js +53 -35
  355. package/dist/esm/dropi-drawer.entry.js +38 -9
  356. package/dist/esm/dropi-dropdown.entry.js +23 -16
  357. package/dist/esm/dropi-empty-state.entry.js +15 -18
  358. package/dist/esm/dropi-favorite-button.entry.js +5 -5
  359. package/dist/esm/dropi-file-upload-progress-bar.entry.js +57 -32
  360. package/dist/esm/dropi-file-upload.entry.js +210 -57
  361. package/dist/esm/dropi-icon.entry.js +21 -4
  362. package/dist/esm/dropi-ilustration-icon.entry.js +3 -3
  363. package/dist/esm/dropi-image-miniature.entry.js +2 -2
  364. package/dist/esm/dropi-image-overlay.entry.js +4 -3
  365. package/dist/esm/dropi-input_3.entry.js +388 -0
  366. package/dist/esm/dropi-languages-selector.entry.js +10 -6
  367. package/dist/esm/dropi-logo.entry.js +12 -2
  368. package/dist/esm/dropi-lottie-loader.entry.js +5 -5
  369. package/dist/esm/dropi-media-player.entry.js +131 -41
  370. package/dist/esm/dropi-modal.entry.js +46 -20
  371. package/dist/esm/dropi-navbar.entry.js +14 -12
  372. package/dist/esm/dropi-otp-send-code.entry.js +13 -13
  373. package/dist/esm/dropi-phone-input.entry.js +163 -50
  374. package/dist/esm/dropi-radio-button.entry.js +7 -7
  375. package/dist/esm/dropi-radio-selection-list.entry.js +17 -13
  376. package/dist/esm/dropi-read-more.entry.js +8 -4
  377. package/dist/esm/dropi-search.entry.js +52 -38
  378. package/dist/esm/dropi-select.entry.js +102 -55
  379. package/dist/esm/dropi-sidebar.entry.js +61 -50
  380. package/dist/esm/dropi-simple-stepper.entry.js +8 -6
  381. package/dist/esm/dropi-skeleton.entry.js +16 -6
  382. package/dist/esm/dropi-steps.entry.js +6 -4
  383. package/dist/esm/dropi-switch.entry.js +5 -5
  384. package/dist/esm/dropi-table.entry.js +212 -37
  385. package/dist/esm/dropi-tabs.entry.js +13 -11
  386. package/dist/esm/dropi-tag-type-product.entry.js +3 -3
  387. package/dist/esm/dropi-text-area.entry.js +45 -14
  388. package/dist/esm/dropi-time-line.entry.js +3 -3
  389. package/dist/esm/dropi-toast.entry.js +7 -6
  390. package/dist/esm/dropi-tooltip-v2.entry.js +129 -0
  391. package/dist/esm/dropi-tooltip.entry.js +5 -26
  392. package/dist/esm/dropi-ui.js +3 -3
  393. package/dist/esm/dropi-vertical-steps.entry.js +6 -6
  394. package/dist/esm/dropi-youtube-lazy-video.entry.js +3 -3
  395. package/dist/esm/{index-Tbza12Gt.js → index-D5SAM1O2.js} +1044 -15
  396. package/dist/esm/loader.js +3 -3
  397. package/dist/types/components/dropi-accordion/dropi-accordion-item.d.ts +24 -0
  398. package/dist/types/components/dropi-accordion/dropi-accordion.d.ts +3 -23
  399. package/dist/types/components/dropi-alert/dropi-alert.d.ts +9 -3
  400. package/dist/types/components/dropi-alert-legacy/dropi-alert-legacy.d.ts +18 -0
  401. package/dist/types/components/dropi-alert-modal/dropi-alert-modal.d.ts +26 -8
  402. package/dist/types/components/dropi-badge-legacy/dropi-badge-legacy.d.ts +15 -0
  403. package/dist/types/components/dropi-banner-external/dropi-banner-external.d.ts +11 -3
  404. package/dist/types/components/dropi-button/dropi-button.d.ts +4 -2
  405. package/dist/types/components/dropi-card-checkbox/dropi-card-checkbox.d.ts +8 -7
  406. package/dist/types/components/dropi-card-product/dropi-card-product.d.ts +19 -15
  407. package/dist/types/components/dropi-card-section/dropi-card-section.d.ts +5 -5
  408. package/dist/types/components/dropi-carousel/dropi-carousel.d.ts +31 -27
  409. package/dist/types/components/dropi-checkbox/dropi-checkbox.d.ts +1 -1
  410. package/dist/types/components/dropi-checkbox-selection-list/dropi-checkbox-selection-list.d.ts +7 -5
  411. package/dist/types/components/dropi-chips/dropi-chips.d.ts +4 -4
  412. package/dist/types/components/dropi-city-selector/dropi-city-selector.d.ts +3 -1
  413. package/dist/types/components/dropi-color-picker/dropi-color-picker.d.ts +51 -26
  414. package/dist/types/components/dropi-country-flags/dropi-country-flags.d.ts +1 -1
  415. package/dist/types/components/dropi-country-selector/dropi-country-selector.d.ts +16 -5
  416. package/dist/types/components/dropi-date-picker/dropi-date-picker.d.ts +16 -8
  417. package/dist/types/components/dropi-date-picker-range/dropi-date-picker-range.d.ts +2 -2
  418. package/dist/types/components/dropi-drawer/dropi-drawer.d.ts +12 -6
  419. package/dist/types/components/dropi-dropdown/dropi-dropdown.d.ts +12 -6
  420. package/dist/types/components/dropi-empty-state/dropi-empty-state.d.ts +12 -14
  421. package/dist/types/components/dropi-favorite-button/dropi-favorite-button.d.ts +1 -1
  422. package/dist/types/components/dropi-file-upload/dropi-file-upload.d.ts +65 -26
  423. package/dist/types/components/dropi-file-upload-progress-bar/dropi-file-upload-progress-bar.d.ts +24 -16
  424. package/dist/types/components/dropi-icon/dropi-icon.d.ts +3 -1
  425. package/dist/types/components/dropi-image-overlay/dropi-image-overlay.d.ts +1 -1
  426. package/dist/types/components/dropi-input/dropi-input.d.ts +27 -17
  427. package/dist/types/components/dropi-languages-selector/dropi-languages-selector.d.ts +1 -1
  428. package/dist/types/components/dropi-logo/dropi-logo.d.ts +2 -0
  429. package/dist/types/components/dropi-lottie-loader/dropi-lottie-loader.d.ts +1 -1
  430. package/dist/types/components/dropi-media-player/dropi-media-player.d.ts +26 -19
  431. package/dist/types/components/dropi-modal/dropi-modal.d.ts +24 -5
  432. package/dist/types/components/dropi-navbar/dropi-navbar.d.ts +7 -5
  433. package/dist/types/components/dropi-otp-send-code/dropi-otp-send-code.d.ts +1 -1
  434. package/dist/types/components/dropi-paginator/dropi-paginator.d.ts +10 -20
  435. package/dist/types/components/dropi-phone-input/dropi-phone-input.d.ts +35 -20
  436. package/dist/types/components/dropi-radio-button/dropi-radio-button.d.ts +2 -2
  437. package/dist/types/components/dropi-radio-selection-list/dropi-radio-selection-list.d.ts +11 -4
  438. package/dist/types/components/dropi-read-more/dropi-read-more.d.ts +4 -0
  439. package/dist/types/components/dropi-search/dropi-search.d.ts +24 -12
  440. package/dist/types/components/dropi-select/dropi-select.d.ts +26 -15
  441. package/dist/types/components/dropi-sidebar/dropi-sidebar.d.ts +32 -26
  442. package/dist/types/components/dropi-simple-stepper/dropi-simple-stepper.d.ts +2 -0
  443. package/dist/types/components/dropi-skeleton/dropi-skeleton.d.ts +4 -1
  444. package/dist/types/components/dropi-steps/dropi-steps.d.ts +3 -0
  445. package/dist/types/components/dropi-switch/dropi-switch.d.ts +1 -1
  446. package/dist/types/components/dropi-table/dropi-table.d.ts +90 -14
  447. package/dist/types/components/dropi-tabs/dropi-tabs.d.ts +5 -3
  448. package/dist/types/components/dropi-text-area/dropi-text-area.d.ts +27 -6
  449. package/dist/types/components/dropi-tooltip/dropi-tooltip.d.ts +3 -17
  450. package/dist/types/components/dropi-tooltip-v2/dropi-tooltip.d.ts +59 -0
  451. package/dist/types/components/dropi-vertical-steps/dropi-vertical-steps.d.ts +1 -1
  452. package/dist/types/components.d.ts +2182 -1180
  453. package/dist/types/index.d.ts +1 -0
  454. package/hydrate/index.d.ts +287 -0
  455. package/hydrate/index.js +30455 -0
  456. package/hydrate/index.mjs +30445 -0
  457. package/hydrate/package.json +12 -0
  458. package/package.json +33 -5
  459. package/readme.md +97 -18
  460. package/scripts/setup.js +310 -29
  461. package/skills/install-dropi-ui/skill.md +15 -10
  462. package/dist/cjs/dropi-input.cjs.entry.js +0 -210
  463. package/dist/cjs/dropi-paginator.cjs.entry.js +0 -91
  464. package/dist/cjs/dropi-tag.cjs.entry.js +0 -68
  465. package/dist/components/p-BY_J-4Sm.js +0 -1
  466. package/dist/components/p-CYCV-5qV.js +0 -1
  467. package/dist/components/p-D0ZJcRZn.js +0 -1
  468. package/dist/components/p-DUPOnSiL.js +0 -1
  469. package/dist/components/p-DUX_WvqW.js +0 -1
  470. package/dist/components/p-wO1yy0Zr.js +0 -1
  471. package/dist/dropi-ui/p-053ebb91.entry.js +0 -1
  472. package/dist/dropi-ui/p-0acd32e6.entry.js +0 -1
  473. package/dist/dropi-ui/p-0e88a543.entry.js +0 -1
  474. package/dist/dropi-ui/p-0f2f5f75.entry.js +0 -1
  475. package/dist/dropi-ui/p-131d87ac.entry.js +0 -1
  476. package/dist/dropi-ui/p-1af4719d.entry.js +0 -1
  477. package/dist/dropi-ui/p-1e8f6d4a.entry.js +0 -1
  478. package/dist/dropi-ui/p-22132b1a.entry.js +0 -1
  479. package/dist/dropi-ui/p-2c1aaf6f.entry.js +0 -1
  480. package/dist/dropi-ui/p-2e9b87a9.entry.js +0 -1
  481. package/dist/dropi-ui/p-3414a414.entry.js +0 -1
  482. package/dist/dropi-ui/p-34ad54a1.entry.js +0 -1
  483. package/dist/dropi-ui/p-3531378b.entry.js +0 -1
  484. package/dist/dropi-ui/p-3983a7aa.entry.js +0 -1
  485. package/dist/dropi-ui/p-40e91337.entry.js +0 -1
  486. package/dist/dropi-ui/p-4a8646e5.entry.js +0 -1
  487. package/dist/dropi-ui/p-4be64bf0.entry.js +0 -1
  488. package/dist/dropi-ui/p-4ec17510.entry.js +0 -1
  489. package/dist/dropi-ui/p-5023eef0.entry.js +0 -1
  490. package/dist/dropi-ui/p-51a97b1a.entry.js +0 -1
  491. package/dist/dropi-ui/p-52796d84.entry.js +0 -1
  492. package/dist/dropi-ui/p-53a5bd7b.entry.js +0 -1
  493. package/dist/dropi-ui/p-5425f941.entry.js +0 -1
  494. package/dist/dropi-ui/p-58d0bf7a.entry.js +0 -1
  495. package/dist/dropi-ui/p-59d3bd9b.entry.js +0 -1
  496. package/dist/dropi-ui/p-5e957631.entry.js +0 -1
  497. package/dist/dropi-ui/p-64cbf4ea.entry.js +0 -1
  498. package/dist/dropi-ui/p-68080534.entry.js +0 -1
  499. package/dist/dropi-ui/p-6da6b97e.entry.js +0 -1
  500. package/dist/dropi-ui/p-6df57f25.entry.js +0 -1
  501. package/dist/dropi-ui/p-7c916570.entry.js +0 -1
  502. package/dist/dropi-ui/p-7e95462a.entry.js +0 -1
  503. package/dist/dropi-ui/p-80089042.entry.js +0 -1
  504. package/dist/dropi-ui/p-8768bb11.entry.js +0 -1
  505. package/dist/dropi-ui/p-896f2900.entry.js +0 -1
  506. package/dist/dropi-ui/p-89ac1ff2.entry.js +0 -1
  507. package/dist/dropi-ui/p-8ce79c69.entry.js +0 -1
  508. package/dist/dropi-ui/p-8e809670.entry.js +0 -1
  509. package/dist/dropi-ui/p-93b207b7.entry.js +0 -1
  510. package/dist/dropi-ui/p-983f72ad.entry.js +0 -1
  511. package/dist/dropi-ui/p-98babb78.entry.js +0 -1
  512. package/dist/dropi-ui/p-9fc53d50.entry.js +0 -1
  513. package/dist/dropi-ui/p-Tbza12Gt.js +0 -2
  514. package/dist/dropi-ui/p-a20705fe.entry.js +0 -1
  515. package/dist/dropi-ui/p-a72da98f.entry.js +0 -1
  516. package/dist/dropi-ui/p-a876d57c.entry.js +0 -1
  517. package/dist/dropi-ui/p-b1b0f938.entry.js +0 -1
  518. package/dist/dropi-ui/p-b2e176b1.entry.js +0 -1
  519. package/dist/dropi-ui/p-b890fd5b.entry.js +0 -1
  520. package/dist/dropi-ui/p-bf5a53ef.entry.js +0 -1
  521. package/dist/dropi-ui/p-c0677661.entry.js +0 -1
  522. package/dist/dropi-ui/p-c2562a1c.entry.js +0 -1
  523. package/dist/dropi-ui/p-c2b5d0fb.entry.js +0 -1
  524. package/dist/dropi-ui/p-c4d4396b.entry.js +0 -1
  525. package/dist/dropi-ui/p-cecfb68e.entry.js +0 -1
  526. package/dist/dropi-ui/p-d0b47e2e.entry.js +0 -1
  527. package/dist/dropi-ui/p-dcefef51.entry.js +0 -1
  528. package/dist/dropi-ui/p-e4b7e15f.entry.js +0 -1
  529. package/dist/dropi-ui/p-e7f4ed25.entry.js +0 -1
  530. package/dist/dropi-ui/p-f1d69b15.entry.js +0 -1
  531. package/dist/esm/dropi-input.entry.js +0 -208
  532. package/dist/esm/dropi-paginator.entry.js +0 -89
  533. package/dist/esm/dropi-tag.entry.js +0 -66
@@ -1,80 +1,233 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-Tbza12Gt.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-D5SAM1O2.js';
2
2
 
3
- const dropiFileUploadCss = () => `:host{display:block;width:100%}*,*::before,*::after{box-sizing:border-box}.upload-wrap{display:flex;flex-direction:column;gap:var(--Size-1, 4px)}.upload-label{font-size:var(--font-size-xs, 10px);color:var(--Gray-Gray-600, #475066)}.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--Size-2, 8px);padding:var(--Size-6, 32px) var(--Size-4, 16px);border:2px dashed var(--Gray-Gray-200, #c3c9d9);border-radius:var(--Border-2, 8px);background:var(--Neutral-White, #fff);cursor:pointer;transition:border-color 0.2s, background 0.2s;text-align:center}.upload-zone:hover:not(.upload-zone--disabled){border-color:var(--Primary-Primary-500, #f49a3d);background:var(--Primary-Primary-50, #fff5eb)}.upload-zone--dragging{border-color:var(--Primary-Primary-500, #f49a3d);background:var(--Primary-Primary-50, #fff5eb)}.upload-zone--disabled{background:var(--Gray-Gray-50, #f7f8fa);cursor:not-allowed;opacity:0.6}.upload-zone__text{margin:0;font-size:var(--font-size-s, 12px);color:var(--Gray-Gray-700, #32394d)}.upload-zone__hint{margin:0;font-size:var(--font-size-xs, 10px);color:var(--Gray-Gray-400, #858ea6)}.upload-hidden{display:none}.upload-error{margin:0;font-size:var(--font-size-xs, 10px);color:var(--Error-Error-500, #f46a6b)}`;
3
+ const dropiFileUploadCss = () => `:host{display:block;width:100%}*,*::before,*::after{box-sizing:border-box}.upload-container{display:flex;flex-direction:column;gap:var(--Size-3, 12px);width:100%}.upload-header{display:flex;flex-direction:column;gap:var(--Size-1, 4px);align-items:flex-start;align-self:stretch}.upload-header .text{color:var(--Gray-Gray-600, #475066);font-size:var(--font-size-xs, 12px);font-style:normal;line-height:150%}.upload-header .title{font-weight:var(--font-weight-medium, 500)}.upload-header .label{font-weight:var(--font-weight-regular, 400)}.file-upload{display:flex;width:100%;flex-direction:column;justify-content:center;align-items:center;gap:var(--Size-3, 12px);background:var(--Neutral-White, #ffffff)}.file-upload__zone{display:flex;padding:var(--Size-5, 24px);flex-direction:column;justify-content:center;align-items:center;gap:var(--Size-6, 32px);align-self:stretch;border-radius:var(--Border-2, 8px);border:1px dashed var(--Gray-Gray-200, #c3c9d9);background:var(--Neutral-White, #ffffff);text-align:center;transition:border-color 0.3s ease}.file-upload__zone.drag-over{border:1px dashed var(--Primary-Primary-500, #f49a3d);background:var(--Primary-Primary-50, #fef8f1)}.info{display:flex;flex-direction:column;align-items:center;gap:var(--Size-2, 8px);align-self:stretch}.info .title{color:var(--Gray-Gray-700, #32394d);text-align:center;font-size:var(--font-size-m, 16px);font-weight:var(--font-weight-medium, 500);line-height:150%}.info.size-small-upload{flex-direction:row;gap:var(--Size-3, 12px)}.info-desc{display:flex;flex-direction:column;align-items:center;gap:var(--Size-1, 4px)}.description{color:var(--Gray-Gray-600, #475066);text-align:center;font-size:var(--font-size-s, 14px);font-style:normal;font-weight:var(--font-weight-regular, 400);line-height:150%}.upload-hidden{display:none}.files-container{display:flex;flex-direction:column;gap:var(--Size-3, 12px)}.grid-list{display:flex;align-items:flex-start;gap:var(--Size-5, 24px);align-self:stretch;flex-wrap:wrap}.add-img{display:flex;height:88px;width:88px;flex-direction:column;justify-content:center;align-items:center;gap:var(--Size-1, 4px);align-self:stretch;border-radius:var(--Border-2, 8px);background:var(--Gray-Gray-50, #f7f8fa);cursor:pointer}.add-img:hover{transform:scale(1.1)}.add-img .icon{display:flex;width:24px;height:24px;padding:4px;justify-content:center;align-items:center;flex-shrink:0;border-radius:var(--Border-3, 12px);background:var(--Gray-Gray-100, #e6eaf2)}.add-img .text{color:var(--Gray-Gray-600, #475066);text-align:center;font-size:var(--font-size-xs, 12px);font-style:normal;font-weight:var(--font-weight-regular, 400);line-height:150%}.card-list{display:flex;flex-direction:column;align-items:flex-start;gap:var(--Size-3, 12px);align-self:stretch;width:100%}.file-card{display:flex;padding:var(--Size-4, 16px);align-items:center;gap:var(--Size-3, 12px);align-self:stretch;border-radius:var(--Border-2, 8px);border:1px solid var(--Gray-Gray-100, #e6eaf2);background:var(--Neutral-White, #ffffff);width:100%}.file-card.error{border-color:var(--Error-Error-300, #f89b9c);background:var(--Error-Error-50, #fef0f0)}.file-card .preview-wrapper{width:34px;height:34px;position:relative;display:inline-block;border-radius:var(--Border-2, 8px);overflow:hidden;flex-shrink:0}.file-card .preview{width:100%;height:100%;object-fit:cover;flex-shrink:0}.file-card .preview.uploading{filter:blur(2px)}.file-card .overlay-icon{width:16px;height:16px;padding:4px;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);pointer-events:none;display:flex;justify-content:center;align-items:center;flex-shrink:0;border-radius:var(--Border-3, 12px);background:var(--Neutral-White, #ffffff)}.file-card .file-icon{flex-shrink:0}.file-card .info-container{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--Size-2, 8px);flex:1 0 0;min-width:0}.file-card .file-name{overflow:hidden;color:var(--Gray-Gray-600, #475066);text-overflow:ellipsis;font-size:var(--font-size-xs, 12px);font-style:normal;font-weight:var(--font-weight-regular, 400);line-height:150%;white-space:nowrap;max-width:300px}.file-card .file-name.error-text{color:var(--Error-Error-500, #f46a6b)}.file-card .progress-bar-container{width:100%;height:4px;background-color:#f0f0f0;border-radius:4px;overflow:hidden}.file-card .progress-bar{height:100%;border-radius:4.5px;background:var(--Primary-Primary-500, #f49a3d);transition:width 0.3s ease}.file-card .error-label{color:var(--Error-Error-500, #f46a6b);font-size:11px;font-weight:var(--font-weight-regular, 400);line-height:150%}.file-card .deleting-container{display:flex;align-items:center;flex:1 0 0}.file-card .deleting-label{color:var(--Gray-Gray-500, #69738c);font-size:var(--font-size-xs, 12px);font-style:italic;font-weight:var(--font-weight-regular, 400);line-height:150%}.file-card .delete,.file-card .preview-image{display:inline-flex;align-items:center;justify-content:center;transition:transform 0.3s ease;border-radius:var(--Border-2, 8px);flex-shrink:0;cursor:pointer}.file-card .delete:hover,.file-card .preview-image:hover{transform:scale(1.1)}.file-card .delete-confirm{color:var(--Gray-Gray-600, #475066);font-size:var(--font-size-xs, 12px);font-style:normal;font-weight:var(--font-weight-medium, 500);line-height:150%;display:flex;justify-content:space-between;align-items:center;align-self:stretch;flex:1 0 0}.file-card .delete-confirm .message{flex:1}.file-card .delete-confirm .actions{display:flex;align-items:flex-start;gap:var(--Size-2, 8px)}.img-view{display:flex;width:88px;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--Size-2, 8px)}.img-view .preview-wrapper{position:relative;display:inline-block;width:88px;height:88px}.img-view .preview-container{border-radius:var(--Border-2, 8px);overflow:hidden;width:100%;height:100%}.img-view .preview{width:100%;height:100%;object-fit:cover;flex-shrink:0}.img-view .preview.uploading{filter:blur(2px)}.img-view .overlay-icon{width:24px;height:24px;padding:6px;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);pointer-events:none;display:flex;justify-content:center;align-items:center;flex-shrink:0;border-radius:var(--Border-3, 12px);background:var(--Neutral-White, #ffffff)}.img-view .delete{position:absolute;top:-12px;right:-9px;display:flex;justify-content:center;align-items:center;flex-shrink:0;border-radius:var(--Border-3, 12px);background:var(--Neutral-White, #ffffff);cursor:pointer}.img-view .delete:hover{transform:scale(1.1)}.img-view.error .preview-wrapper{border:2px solid var(--Error-Error-500, #f46a6b);border-radius:var(--Border-2, 8px)}.img-view.deleting .preview-wrapper{opacity:0.4}.img-view .progress-bar-container{width:100%;height:4px;background-color:#f0f0f0;border-radius:4px;overflow:hidden}.img-view .progress-bar{height:100%;border-radius:4.5px;background:var(--Primary-Primary-500, #f49a3d);transition:width 0.3s ease}.img-view .deleting-info{width:100%;text-align:center}.img-view .deleting-info-label{color:var(--Gray-Gray-500, #69738c);font-size:var(--font-size-xxs, 10px);font-style:italic;font-weight:var(--font-weight-regular, 400);line-height:150%}@media screen and (max-width: 599px){.info.size-small-upload{flex-wrap:wrap;justify-content:center}.file-card .file-name{max-width:100px}}`;
4
4
 
5
5
  const DropiFileUpload = class {
6
6
  constructor(hostRef) {
7
7
  registerInstance(this, hostRef);
8
- this.dropiFilesSelected = createEvent(this, "dropiFilesSelected", 7);
9
- this.dropiFileError = createEvent(this, "dropiFileError", 7);
8
+ this.uploadedUrlsChange = createEvent(this, "uploadedUrlsChange", 7);
10
9
  }
11
- /** Accepted MIME types (comma-separated, e.g. "image/*,application/pdf") */
12
- accept = '';
13
- /** Allow multiple file selection */
14
- multiple = false;
15
- /** Max file size in MB */
16
- maxSizeMb = 10;
17
- /** Disabled state */
18
- disabled = false;
19
- /** Label text above zone */
10
+ /** Título mostrado arriba del componente */
11
+ title = '';
12
+ /** Subtítulo informativo */
20
13
  label = '';
21
- /** Helper text inside drop zone */
22
- helperText = 'Arrastra o haz clic para subir un archivo';
14
+ /** Texto dentro de la zona de drop */
15
+ textDropZone = 'Arrastra o sube una imagen aquí';
16
+ /** Texto del botón de selección */
17
+ textButton = 'Seleccionar Imagen';
18
+ /** Tipo de preview: card (lista) o grid (miniaturas) */
19
+ previewType = 'card';
20
+ /** Permitir múltiples archivos */
21
+ multiple = false;
22
+ /** Límite de archivos */
23
+ maxFiles = 1;
24
+ /** Tamaño máximo por archivo en MB */
25
+ maxFileSizeMB = 10;
26
+ /** Tipos aceptados (ej: "image/*,application/pdf") */
27
+ accept = '';
28
+ /** Solo vista — sin eliminar */
29
+ onlyView = false;
30
+ /** Mostrar drop-zone cuando ya hay archivos (modo grid) */
31
+ viewDragAndDrop = false;
32
+ /** Tamaño del drop zone */
33
+ dragAndDropSize = 'default';
34
+ selectedFiles = [];
35
+ error = false;
36
+ errorMessage = '';
23
37
  dragging = false;
24
- errors = [];
38
+ /** Emite los File[] cada vez que cambia la selección (el host maneja la subida) */
39
+ uploadedUrlsChange;
25
40
  inputRef;
26
- /** Emitted with array of UploadedFile when files are selected/dropped */
27
- dropiFilesSelected;
28
- /** Emitted when a file fails validation. e.detail = error message */
29
- dropiFileError;
30
- async readFiles(fileList) {
31
- const errs = [];
32
- const valid = [];
33
- for (let i = 0; i < fileList.length; i++) {
34
- const file = fileList[i];
35
- if (this.maxSizeMb && file.size > this.maxSizeMb * 1024 * 1024) {
36
- const msg = `"${file.name}" supera el tamaño máximo de ${this.maxSizeMb} MB`;
37
- errs.push(msg);
38
- this.dropiFileError.emit(msg);
41
+ dragCounter = 0;
42
+ // ─── helpers ──────────────────────────────────────────────────────────────
43
+ generateId(file) {
44
+ if (typeof crypto !== 'undefined' && 'randomUUID' in crypto) {
45
+ return `${file.name}-${crypto.randomUUID()}`;
46
+ }
47
+ return `${file.name}-${Date.now()}-${Math.floor(Math.random() * 1_000_000)}`;
48
+ }
49
+ getFileType(file) {
50
+ return file.type.startsWith('image/') ? 'image' : 'document';
51
+ }
52
+ getTypeView(file) {
53
+ return file.type.startsWith('image/') && this.previewType === 'grid' ? 'grid' : 'card';
54
+ }
55
+ getFileTypeClass(item) {
56
+ if (!item.file)
57
+ return 'generic';
58
+ const t = item.file.type;
59
+ if (t.includes('pdf'))
60
+ return 'pdf';
61
+ if (t.startsWith('image/'))
62
+ return 'image';
63
+ return 'generic';
64
+ }
65
+ isDropZoneHidden() {
66
+ return this.previewType === 'grid' && (!this.viewDragAndDrop || this.selectedFiles.length > 0);
67
+ }
68
+ generatePreviewUrl(file) {
69
+ return new Promise((resolve) => {
70
+ const reader = new FileReader();
71
+ reader.readAsDataURL(file);
72
+ reader.onload = () => resolve(reader.result);
73
+ reader.onerror = () => resolve('');
74
+ });
75
+ }
76
+ syncFileItem(id, changes) {
77
+ const idx = this.selectedFiles.findIndex(f => f.id === id);
78
+ if (idx === -1)
79
+ return;
80
+ const updated = { ...this.selectedFiles[idx], ...changes };
81
+ this.selectedFiles = [
82
+ ...this.selectedFiles.slice(0, idx),
83
+ updated,
84
+ ...this.selectedFiles.slice(idx + 1),
85
+ ];
86
+ }
87
+ emitFiles() {
88
+ const files = this.selectedFiles
89
+ .filter(f => f.state === 'complete' && f.file)
90
+ .map(f => f.file);
91
+ this.uploadedUrlsChange.emit(files);
92
+ }
93
+ // ─── file handling ────────────────────────────────────────────────────────
94
+ async handleFiles(files) {
95
+ this.error = false;
96
+ if (files.length + this.selectedFiles.length > this.maxFiles) {
97
+ this.error = true;
98
+ this.errorMessage = `Máximo ${this.maxFiles} archivo(s) permitido(s)`;
99
+ return;
100
+ }
101
+ for (const file of files) {
102
+ if (file.size > this.maxFileSizeMB * 1024 * 1024) {
103
+ this.error = true;
104
+ this.errorMessage = `"${file.name}" supera el tamaño máximo de ${this.maxFileSizeMB}MB`;
39
105
  continue;
40
106
  }
41
- const dataUrl = await new Promise((resolve) => {
42
- const reader = new FileReader();
43
- reader.onload = () => resolve(reader.result);
44
- reader.readAsDataURL(file);
45
- });
46
- valid.push({ name: file.name, size: file.size, type: file.type, dataUrl });
107
+ const item = {
108
+ id: this.generateId(file),
109
+ file,
110
+ progress: 0,
111
+ state: 'uploading',
112
+ fileType: this.getFileType(file),
113
+ typeView: this.getTypeView(file),
114
+ };
115
+ this.selectedFiles = [...this.selectedFiles, item];
116
+ // Simulate progress then complete (host handles actual upload)
117
+ this.simulateProgress(item.id);
118
+ if (item.fileType === 'image') {
119
+ const url = await this.generatePreviewUrl(file);
120
+ this.syncFileItem(item.id, { previewUrl: url });
121
+ }
122
+ }
123
+ }
124
+ simulateProgress(id) {
125
+ let prog = 0;
126
+ const interval = setInterval(() => {
127
+ prog += Math.floor(Math.random() * 20) + 10;
128
+ if (prog >= 100) {
129
+ prog = 100;
130
+ clearInterval(interval);
131
+ this.syncFileItem(id, { progress: 100, state: 'complete' });
132
+ this.emitFiles();
133
+ }
134
+ else {
135
+ this.syncFileItem(id, { progress: prog });
136
+ }
137
+ }, 150);
138
+ }
139
+ handleFileAction(item, type) {
140
+ if (item.state === 'error') {
141
+ this.selectedFiles = this.selectedFiles.filter(f => f.id !== item.id);
142
+ this.emitFiles();
143
+ return;
144
+ }
145
+ switch (type) {
146
+ case 'delete':
147
+ this.syncFileItem(item.id, { state: 'confirm-delete' });
148
+ break;
149
+ case 'confirm-delete':
150
+ this.syncFileItem(item.id, { state: 'deleting' });
151
+ setTimeout(() => {
152
+ this.selectedFiles = this.selectedFiles.filter(f => f.id !== item.id);
153
+ this.emitFiles();
154
+ }, 400);
155
+ break;
156
+ case 'cancel-delete':
157
+ this.syncFileItem(item.id, { state: 'complete' });
158
+ break;
159
+ }
160
+ }
161
+ // ─── DOM events ───────────────────────────────────────────────────────────
162
+ onDragOver(e) {
163
+ e.preventDefault();
164
+ this.dragging = true;
165
+ }
166
+ onDragEnter(e) {
167
+ e.preventDefault();
168
+ this.dragCounter++;
169
+ this.dragging = true;
170
+ }
171
+ onDragLeave() {
172
+ this.dragCounter--;
173
+ if (this.dragCounter <= 0) {
174
+ this.dragCounter = 0;
175
+ this.dragging = false;
47
176
  }
48
- this.errors = errs;
49
- if (valid.length)
50
- this.dropiFilesSelected.emit(valid);
51
177
  }
52
- handleDrop(e) {
178
+ onDrop(e) {
53
179
  e.preventDefault();
54
180
  this.dragging = false;
55
- if (this.disabled || !e.dataTransfer?.files.length)
56
- return;
57
- this.readFiles(e.dataTransfer.files);
181
+ this.dragCounter = 0;
182
+ const files = Array.from(e.dataTransfer?.files ?? []);
183
+ if (files.length)
184
+ this.handleFiles(files);
58
185
  }
59
- handleInputChange(e) {
186
+ onInputChange(e) {
60
187
  const input = e.target;
61
- if (input.files?.length)
62
- this.readFiles(input.files);
188
+ const files = Array.from(input.files ?? []);
63
189
  input.value = '';
190
+ if (files.length)
191
+ this.handleFiles(files);
192
+ }
193
+ openFilePicker() {
194
+ this.inputRef?.click();
195
+ }
196
+ addImage() {
197
+ this.inputRef?.click();
198
+ }
199
+ // ─── render helpers ───────────────────────────────────────────────────────
200
+ renderCheckSvg() {
201
+ return (h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "12", height: "12", viewBox: "0 0 12 12", fill: "none" }, h("g", { "clip-path": "url(#ck)" }, h("path", { d: "M11.1594 2.2155L4.24992 9.1245C4.20347 9.17114 4.14826 9.20815 4.08747 9.2334C4.02668 9.25865 3.9615 9.27165 3.89567 9.27165C3.82985 9.27165 3.76467 9.25865 3.70388 9.2334C3.64308 9.20815 3.58788 9.17114 3.54142 9.1245L0.869423 6.45C0.822969 6.40337 0.767762 6.36636 0.70697 6.34111C0.646179 6.31586 0.581 6.30286 0.515173 6.30286C0.449346 6.30286 0.384167 6.31586 0.323376 6.34111C0.262585 6.36636 0.207378 6.40337 0.160923 6.45C0.114285 6.49646 0.0772787 6.55167 0.0520278 6.61246C0.026777 6.67325 0.0137787 6.73843 0.0137787 6.80425C0.0137787 6.87008 0.026777 6.93526 0.0520278 6.99605C0.0772787 7.05684 0.114285 7.11205 0.160923 7.1585L2.83392 9.831C3.1159 10.1125 3.49802 10.2705 3.89642 10.2705C4.29482 10.2705 4.67695 10.1125 4.95892 9.831L11.8679 2.9235C11.9145 2.87706 11.9514 2.82188 11.9766 2.76114C12.0018 2.70039 12.0148 2.63527 12.0148 2.5695C12.0148 2.50374 12.0018 2.43862 11.9766 2.37787C11.9514 2.31713 11.9145 2.26195 11.8679 2.2155C11.8215 2.16887 11.7663 2.13186 11.7055 2.10661C11.6447 2.08136 11.5795 2.06836 11.5137 2.06836C11.4478 2.06836 11.3827 2.08136 11.3219 2.10661C11.2611 2.13186 11.2059 2.16887 11.1594 2.2155Z", fill: "#0ABB87" })), h("defs", null, h("clipPath", { id: "ck" }, h("rect", { width: "12", height: "12", fill: "white" })))));
202
+ }
203
+ renderTrashSvg() {
204
+ return (h("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M16.25 4.44453H14.0972C13.936 3.66078 13.5096 2.95657 12.8897 2.45058C12.2699 1.94459 11.4946 1.66776 10.6944 1.66675H9.30554C8.5054 1.66776 7.73007 1.94459 7.11023 2.45058C6.49039 2.95657 6.06394 3.66078 5.90276 4.44453H3.74999C3.56581 4.44453 3.38917 4.51769 3.25894 4.64792C3.12871 4.77816 3.05554 4.95479 3.05554 5.13897C3.05554 5.32315 3.12871 5.49978 3.25894 5.63002C3.38917 5.76025 3.56581 5.83341 3.74999 5.83341H4.44443V14.8612C4.44553 15.7817 4.81171 16.6643 5.46264 17.3152C6.11357 17.9661 6.9961 18.3323 7.91665 18.3334H12.0833C13.0039 18.3323 13.8864 17.9661 14.5373 17.3152C15.1883 16.6643 15.5544 15.7817 15.5555 14.8612V5.83341H16.25C16.4342 5.83341 16.6108 5.76025 16.741 5.63002C16.8713 5.49978 16.9444 5.32315 16.9444 5.13897C16.9444 4.95479 16.8713 4.77816 16.741 4.64792C16.6108 4.51769 16.4342 4.44453 16.25 4.44453ZM9.30554 3.05564H10.6944C11.1252 3.05616 11.5452 3.18993 11.8969 3.43858C12.2487 3.68724 12.5149 4.03862 12.659 4.44453H7.34096C7.48511 4.03862 7.75131 3.68724 8.10303 3.43858C8.45476 3.18993 8.8748 3.05616 9.30554 3.05564ZM14.1667 14.8612C14.1667 15.4137 13.9472 15.9436 13.5565 16.3343C13.1658 16.725 12.6359 16.9445 12.0833 16.9445H7.91665C7.36412 16.9445 6.83421 16.725 6.44351 16.3343C6.05281 15.9436 5.83332 15.4137 5.83332 14.8612V5.83341H14.1667V14.8612Z", fill: "#DE6061" }), h("path", { d: "M8.61115 14.1663C8.79533 14.1663 8.97197 14.0931 9.1022 13.9629C9.23243 13.8327 9.3056 13.656 9.3056 13.4719V9.30521C9.3056 9.12103 9.23243 8.94439 9.1022 8.81416C8.97197 8.68393 8.79533 8.61076 8.61115 8.61076C8.42698 8.61076 8.25034 8.68393 8.12011 8.81416C7.98988 8.94439 7.91671 9.12103 7.91671 9.30521V13.4719C7.91671 13.656 7.98988 13.8327 8.12011 13.9629C8.25034 14.0931 8.42698 14.1663 8.61115 14.1663Z", fill: "#DE6061" }), h("path", { d: "M11.3888 14.1663C11.573 14.1663 11.7497 14.0931 11.8799 13.9629C12.0101 13.8327 12.0833 13.656 12.0833 13.4719V9.30521C12.0833 9.12103 12.0101 8.94439 11.8799 8.81416C11.7497 8.68393 11.573 8.61076 11.3888 8.61076C11.2047 8.61076 11.028 8.68393 10.8978 8.81416C10.7676 8.94439 10.6944 9.12103 10.6944 9.30521V13.4719C10.6944 13.656 10.7676 13.8327 10.8978 13.9629C11.028 14.0931 11.2047 14.1663 11.3888 14.1663Z", fill: "#DE6061" })));
205
+ }
206
+ renderTrashGridSvg() {
207
+ return (h("svg", { width: "32", height: "32", viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M8 0.5H24C28.1421 0.5 31.5 3.85786 31.5 8V24C31.5 28.1421 28.1421 31.5 24 31.5H8C3.85786 31.5 0.5 28.1421 0.5 24V8C0.5 3.85786 3.85786 0.5 8 0.5Z", fill: "white" }), h("path", { d: "M8 0.5H24C28.1421 0.5 31.5 3.85786 31.5 8V24C31.5 28.1421 28.1421 31.5 24 31.5H8C3.85786 31.5 0.5 28.1421 0.5 24V8C0.5 3.85786 3.85786 0.5 8 0.5Z", stroke: "#F7F8FA" }), h("path", { d: "M22.25 10.4445H20.0972C19.936 9.66072 19.5096 8.95651 18.8897 8.45052C18.2699 7.94453 17.4945 7.6677 16.6944 7.66669H15.3055C14.5054 7.6677 13.73 7.94453 13.1102 8.45052C12.4904 8.95651 12.0639 9.66072 11.9027 10.4445H9.74996C9.56578 10.4445 9.38914 10.5176 9.25891 10.6479C9.12868 10.7781 9.05551 10.9547 9.05551 11.1389C9.05551 11.3231 9.12868 11.4997 9.25891 11.63C9.38914 11.7602 9.56578 11.8334 9.74996 11.8334H10.4444V20.8611C10.4455 21.7817 10.8117 22.6642 11.4626 23.3151C12.1135 23.9661 12.9961 24.3323 13.9166 24.3334H18.0833C19.0038 24.3323 19.8864 23.9661 20.5373 23.3151C21.1882 22.6642 21.5544 21.7817 21.5555 20.8611V11.8334H22.25C22.4341 11.8334 22.6108 11.7602 22.741 11.63C22.8712 11.4997 22.9444 11.3231 22.9444 11.1389C22.9444 10.9547 22.8712 10.7781 22.741 10.6479C22.6108 10.5176 22.4341 10.4445 22.25 10.4445ZM15.3055 9.05558H16.6944C17.1251 9.0561 17.5452 9.18986 17.8969 9.43852C18.2486 9.68718 18.5148 10.0386 18.659 10.4445H13.3409C13.4851 10.0386 13.7513 9.68718 14.103 9.43852C14.4547 9.18986 14.8748 9.0561 15.3055 9.05558ZM20.1666 20.8611C20.1666 21.4137 19.9471 21.9436 19.5564 22.3343C19.1657 22.725 18.6358 22.9445 18.0833 22.9445H13.9166C13.3641 22.9445 12.8342 22.725 12.4435 22.3343C12.0528 21.9436 11.8333 21.4137 11.8333 20.8611V11.8334H20.1666V20.8611Z", fill: "#DE6061" }), h("path", { d: "M14.6111 20.1662C14.7953 20.1662 14.9719 20.0931 15.1022 19.9628C15.2324 19.8326 15.3056 19.656 15.3056 19.4718V15.3051C15.3056 15.121 15.2324 14.9443 15.1022 14.8141C14.9719 14.6839 14.7953 14.6107 14.6111 14.6107C14.4269 14.6107 14.2503 14.6839 14.1201 14.8141C13.9898 14.9443 13.9167 15.121 13.9167 15.3051V19.4718C13.9167 19.656 13.9898 19.8326 14.1201 19.9628C14.2503 20.0931 14.4269 20.1662 14.6111 20.1662Z", fill: "#DE6061" }), h("path", { d: "M17.3888 20.1662C17.573 20.1662 17.7496 20.0931 17.8799 19.9628C18.0101 19.8326 18.0833 19.656 18.0833 19.4718V15.3051C18.0833 15.121 18.0101 14.9443 17.8799 14.8141C17.7496 14.6839 17.573 14.6107 17.3888 14.6107C17.2046 14.6107 17.028 14.6839 16.8978 14.8141C16.7675 14.9443 16.6944 15.121 16.6944 15.3051V19.4718C16.6944 19.656 16.7675 19.8326 16.8978 19.9628C17.028 20.0931 17.2046 20.1662 17.3888 20.1662Z", fill: "#DE6061" })));
208
+ }
209
+ renderPdfSvg() {
210
+ return (h("svg", { class: "icon-pdf", width: "34", height: "34", viewBox: "0 0 34 34", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M0 8C0 3.58172 3.58172 0 8 0H26C30.4183 0 34 3.58172 34 8V26C34 30.4183 30.4183 34 26 34H8C3.58172 34 0 30.4183 0 26V8Z", fill: "#FEF0F0" }), h("g", { "clip-path": "url(#pdf)" }, h("path", { d: "M24.1252 11.1167L21.2168 8.20833C20.1168 7.10833 18.6502 6.5 17.0918 6.5H13.3335C11.0335 6.5 9.16684 8.36667 9.16684 10.6667V22.3333C9.16684 24.6333 11.0335 26.5 13.3335 26.5H21.6668C23.9668 26.5 25.8335 24.6333 25.8335 22.3333V15.2417C25.8335 13.6833 25.2252 12.2167 24.1252 11.1167Z", fill: "#DE6061" })), h("defs", null, h("clipPath", { id: "pdf" }, h("rect", { width: "20", height: "20", fill: "white", transform: "translate(7.5 6.5)" })))));
211
+ }
212
+ renderDocSvg() {
213
+ return (h("svg", { class: "icon-default", width: "34", height: "34", viewBox: "0 0 34 34", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M0 8C0 3.58172 3.58172 0 8 0H26C30.4183 0 34 3.58172 34 8V26C34 30.4183 30.4183 34 26 34H8C3.58172 34 0 30.4183 0 26V8Z", fill: "#EEF6FE" }), h("g", { "clip-path": "url(#doc)" }, h("path", { d: "M21.1668 18.6667C21.1668 18.8877 21.079 19.0997 20.9227 19.2559C20.7664 19.4122 20.5545 19.5 20.3335 19.5H13.6668C13.4458 19.5 13.2338 19.4122 13.0775 19.2559C12.9213 19.0997 12.8335 18.8877 12.8335 18.6667C12.8335 18.4457 12.9213 18.2337 13.0775 18.0774C13.2338 17.9211 13.4458 17.8334 13.6668 17.8334H20.3335C20.5545 17.8334 20.7664 17.9211 20.9227 18.0774C21.079 18.2337 21.1668 18.4457 21.1668 18.6667ZM17.8335 21.1667H13.6668C13.4458 21.1667 13.2338 21.2545 13.0775 21.4108C12.9213 21.567 12.8335 21.779 12.8335 22C12.8335 22.221 12.9213 22.433 13.0775 22.5893C13.2338 22.7456 13.4458 22.8334 13.6668 22.8334H17.8335C18.0545 22.8334 18.2664 22.7456 18.4227 22.5893C18.579 22.433 18.6668 22.221 18.6668 22C18.6668 21.779 18.579 21.567 18.4227 21.4108C18.2664 21.2545 18.0545 21.1667 17.8335 21.1667Z", fill: "#4996DB" })), h("defs", null, h("clipPath", { id: "doc" }, h("rect", { width: "20", height: "20", fill: "white", transform: "translate(7 7)" })))));
214
+ }
215
+ renderCardItem(item) {
216
+ const isImage = item.fileType === 'image' && item.previewUrl && !item.previewUrl.includes('.pdf');
217
+ const isPdf = item.file?.type?.includes('pdf');
218
+ return (h("div", { key: item.id, class: `file-card ${item.state} ${this.getFileTypeClass(item)}` }, isImage ? (h("div", { class: "preview-wrapper" }, h("img", { class: `preview ${item.state}`, src: item.previewUrl, alt: item.file?.name }), item.state === 'complete' && (h("div", { class: "overlay-icon" }, this.renderCheckSvg())))) : (h("div", { class: "file-icon" }, isPdf ? this.renderPdfSvg() : this.renderDocSvg())), item.state !== 'confirm-delete' && item.state !== 'deleting' && (h("div", { class: "info-container" }, h("div", { class: `file-name${item.state === 'error' ? ' error-text' : ''}` }, item.file?.name ?? item.previewUrl?.split('/').pop()), item.state === 'uploading' && (h("div", { class: "progress-bar-container" }, h("div", { class: "progress-bar", style: { width: `${item.progress}%` } }))), item.state === 'error' && (h("div", { class: "error-label" }, "Error al subir el archivo")))), item.state === 'deleting' && (h("div", { class: "deleting-container" }, h("span", { class: "deleting-label" }, "Eliminando..."))), item.state !== 'confirm-delete' && item.state !== 'error' && item.state !== 'deleting' && (h("div", { class: "preview-image", onClick: () => { } }, h("dropi-icon", { name: "Eye", width: "20px", height: "20px", color: "Gray-Gray-600" }))), item.state !== 'confirm-delete' && item.state !== 'deleting' && !this.onlyView && (h("div", { class: "delete", onClick: () => this.handleFileAction(item, 'delete') }, this.renderTrashSvg())), item.state === 'confirm-delete' && (h("div", { class: "delete-confirm" }, h("span", { class: "message" }, item.previewUrl ? '¿Eliminar imagen?' : '¿Eliminar archivo?'), h("div", { class: "actions" }, h("dropi-button", { size: "small", text: "S\u00ED", onClick: () => this.handleFileAction(item, 'confirm-delete') }), h("dropi-button", { text: "No", size: "small", severity: "secondary", onClick: () => this.handleFileAction(item, 'cancel-delete') }))))));
219
+ }
220
+ renderGridItem(item) {
221
+ return (h("div", { key: item.id, class: `img-view ${item.state} ${this.getFileTypeClass(item)}` }, h("div", { class: "preview-wrapper" }, h("div", { class: "preview-container" }, h("img", { class: `preview ${item.state}`, src: item.previewUrl || '', alt: "preview" })), item.state === 'complete' && (h("div", { class: "overlay-icon" }, this.renderCheckSvg())), item.state !== 'confirm-delete' && item.state !== 'deleting' && (h("div", { class: "delete", onClick: () => this.handleFileAction(item, 'confirm-delete') }, this.renderTrashGridSvg()))), item.state === 'uploading' && (h("div", { class: "progress-bar-container" }, h("div", { class: "progress-bar", style: { width: `${item.progress}%` } }))), item.state === 'deleting' && (h("div", { class: "deleting-info" }, h("span", { class: "deleting-info-label" }, "Eliminando...")))));
64
222
  }
223
+ // ─── render ───────────────────────────────────────────────────────────────
65
224
  render() {
66
- return (h("div", { key: '5498c6aa5d81a5265bf4e954e7674f4db8c5c538', class: "upload-wrap" }, this.label && h("label", { key: '94cd8bcaf7dba51e9d7861412d6a509841518367', class: "upload-label" }, this.label), h("div", { key: 'c3b5417103abab569b8a883967d567a4ec6ab483', class: {
67
- 'upload-zone': true,
68
- 'upload-zone--dragging': this.dragging,
69
- 'upload-zone--disabled': this.disabled,
70
- }, onClick: () => {
71
- if (!this.disabled)
72
- this.inputRef.click();
73
- }, onDragOver: (e) => {
74
- e.preventDefault();
75
- if (!this.disabled)
76
- this.dragging = true;
77
- }, onDragLeave: () => this.dragging = false, onDrop: (e) => this.handleDrop(e) }, h("dropi-icon", { key: '436802ec23dc677807ecac36947cd58f9d253e4d', name: "Upload", width: "32px", height: "32px", color: "Primary-Primary-500" }), h("p", { key: 'c80ed3536466ae22dcd96fabf353a736515e5bab', class: "upload-zone__text" }, this.helperText), this.maxSizeMb && (h("p", { key: '26defe6cece9a9ba6e9d7e2a1913a65607a20036', class: "upload-zone__hint" }, "Tama\u00F1o m\u00E1ximo: ", this.maxSizeMb, " MB")), h("input", { key: '00f7657bfc1646f01dfbc0339df6ed9f04a71ab0', ref: (el) => this.inputRef = el, type: "file", accept: this.accept, multiple: this.multiple, class: "upload-hidden", onChange: (e) => this.handleInputChange(e) })), this.errors.map(err => (h("p", { class: "upload-error" }, err)))));
225
+ const files = this.selectedFiles ?? [];
226
+ const gridFiles = files.filter(f => f.typeView === 'grid');
227
+ const cardFiles = files.filter(f => f.typeView === 'card');
228
+ const showDropZone = files.length < (this.maxFiles ?? 1) && !this.isDropZoneHidden();
229
+ const isSmall = this.dragAndDropSize === 'small';
230
+ return (h("div", { key: '2823263b5c803c23eb1bf091676a0fd86243117a', class: "upload-container" }, (this.title || this.label) && (h("div", { key: 'ec9c8a63c9c34f8c8ce68310c07dd8fda66ffda2', class: "upload-header" }, this.title && h("div", { key: 'f26ade32fe339a0382166345110ef3445bb58475', class: "text title" }, this.title), this.label && h("div", { key: 'becc99e74e8d555fc40bcd0854575c5b435faf85', class: "text label" }, this.label))), this.error && (h("dropi-alert", { key: 'b01f441d6083e31f5ddaa2bc661722835134e8f0', message: this.errorMessage, type: "default", state: "error", dismissable: true, showButton: false, onOnClose: () => { this.error = false; } })), showDropZone && (h("div", { key: 'e221786da335f56a6160874d56ad4b50c9b0702f', class: { 'file-upload': true, 'drag-over': this.dragging }, onDragOver: (e) => this.onDragOver(e), onDragEnter: (e) => this.onDragEnter(e), onDragLeave: () => this.onDragLeave(), onDrop: (e) => this.onDrop(e) }, h("div", { key: 'ad6d5ed22aa64c4a33e3861cc48271dbecc59279', class: `file-upload__zone${this.dragging ? ' drag-over' : ''}` }, !isSmall && (h("svg", { key: 'a5666c9aaad62e8a4b6677b288d853953ada6169', width: "40", height: "40", viewBox: "0 0 40 40", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '98a2c4e40aa67249f0b8b13f956846334a1b8652', d: "M0 20C0 8.95431 8.95431 0 20 0C31.0457 0 40 8.95431 40 20C40 31.0457 31.0457 40 20 40C8.95431 40 0 31.0457 0 20Z", fill: "#FEF8F1" }), h("g", { key: '892e4f122e593fd77f37048fcd68157a682bf1b7', "clip-path": "url(#up)" }, h("path", { key: 'aaaddae87cb45b9c00ddc98142c1ef5b2ec25a0a', d: "M19.3379 13.7187L19.3332 24.0107C19.3332 24.1875 19.4035 24.357 19.5285 24.4821C19.6535 24.6071 19.8231 24.6773 19.9999 24.6773C20.1767 24.6773 20.3463 24.6071 20.4713 24.4821C20.5963 24.357 20.6666 24.1875 20.6666 24.0107L20.6712 13.73L22.6126 15.672C22.7376 15.797 22.9071 15.8672 23.0839 15.8672C23.2607 15.8672 23.4302 15.797 23.5552 15.672C23.6802 15.547 23.7504 15.3774 23.7504 15.2007C23.7504 15.0239 23.6802 14.8543 23.5552 14.7293L21.4145 12.586C21.2288 12.4001 21.0083 12.2527 20.7655 12.1521C20.5228 12.0515 20.2626 11.9998 19.9999 11.9998C19.7371 11.9998 19.477 12.0515 19.2342 12.1521C18.9915 12.2527 18.771 12.4001 18.5852 12.586L16.4445 14.7273C16.3196 14.8523 16.2494 15.0219 16.2494 15.1987C16.2494 15.3754 16.3196 15.545 16.4445 15.67C16.5696 15.795 16.7391 15.8652 16.9159 15.8652C17.0927 15.8652 17.2622 15.795 17.3872 15.67L19.3379 13.7187Z", fill: "#F49A3D" }), h("path", { key: '4c9eddf5c6348984c7478701fe67e411d01cf8c5', d: "M26.6667 23.3329V25.9996C26.6667 26.1764 26.5964 26.346 26.4714 26.471C26.3464 26.596 26.1768 26.6663 26 26.6663H14C13.8232 26.6663 13.6536 26.596 13.5286 26.471C13.4036 26.346 13.3333 26.1764 13.3333 25.9996V23.3329C13.3333 23.1561 13.2631 22.9865 13.1381 22.8615C13.013 22.7365 12.8435 22.6663 12.6667 22.6663C12.4899 22.6663 12.3203 22.7365 12.1953 22.8615C12.0702 22.9865 12 23.1561 12 23.3329V25.9996C12 26.53 12.2107 27.0387 12.5858 27.4138C12.9609 27.7889 13.4696 27.9996 14 27.9996H26C26.5304 27.9996 27.0391 27.7889 27.4142 27.4138C27.7893 27.0387 28 26.53 28 25.9996V23.3329C28 23.1561 27.9298 22.9865 27.8047 22.8615C27.6797 22.7365 27.5101 22.6663 27.3333 22.6663C27.1565 22.6663 26.987 22.7365 26.8619 22.8615C26.7369 22.9865 26.6667 23.1561 26.6667 23.3329Z", fill: "#F49A3D" })), h("defs", { key: 'bcc8c24fcf8d9ea939dec31a36e5fce8c0fd203e' }, h("clipPath", { key: '9724c45ddf4d8983116baf1b4baadb8e1c83ed9d', id: "up" }, h("rect", { key: '1d0ca58ddc76c661f8278a177ad670633008bd5a', width: "16", height: "16", fill: "white", transform: "translate(12 12)" }))))), h("div", { key: 'd1a2c7a7cc539b1c519dcc5931c80eb38c230e1f', class: isSmall ? 'info size-small-upload' : 'info' }, h("div", { key: '4265e328f1bab72a221746afc15b0e7e8b6324b0', class: "title" }, this.textDropZone), isSmall && (h("dropi-button", { key: '076a0dfc2f087b9724e60980bb1217e676bdaeda', text: this.textButton, size: "small", onClick: (e) => { e.stopPropagation(); this.openFilePicker(); } }))), !isSmall && (h("div", { key: '070c2a5374d4262b4b66ea2a9f51a75358865011', class: "info-desc" }, this.accept && h("div", { key: '6482d13398d8ea654dbd5f5c684c7b0602da0b7d', class: "description" }, "Formatos admitidos: ", this.accept), h("div", { key: '25ccba2cd7a16f732f111aeefe076516b0c360f6', class: "description" }, "Tama\u00F1o m\u00E1ximo: ", this.maxFileSizeMB, "MB"))), !isSmall && (h("dropi-button", { key: 'a1ed64460aa8c9aead966d33fa8ef25ddc383000', text: this.textButton, size: "small", onClick: (e) => { e.stopPropagation(); this.openFilePicker(); } })), h("input", { key: 'b5debf074ef579d4bd74d1507ba63b912eeba37e', ref: (el) => this.inputRef = el, type: "file", accept: this.accept, multiple: this.multiple, class: "upload-hidden", onChange: (e) => this.onInputChange(e) })))), this.selectedFiles.length > 0 && (h("div", { key: '40d77d3c697b18637fa7669e857f5d931d91543d', class: "files-container" }, gridFiles.length > 0 && (h("div", { key: 'c8b2eac24568959a83500930fc36c54be04d3d75', class: "grid-list" }, gridFiles.map(f => this.renderGridItem(f)), gridFiles.length < this.maxFiles && (h("div", { key: '6782016ecee648dff31baa352db02413a37ad2ae', class: "add-img", onClick: () => this.addImage() }, h("div", { key: '08ecf1dae23fc4dac7818fd178d40a50a10a4508', class: "icon" }, h("svg", { key: 'c41793f302e1c0f7eeb91c0e524cd398988c62c2', width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'cf066997fbfb0aa31bacbb72ef037f67b74de5ec', d: "M9.77774 6.4444H7.55551V4.22218C7.55551 4.07484 7.49698 3.93353 7.3928 3.82934C7.28861 3.72516 7.1473 3.66663 6.99996 3.66663C6.85262 3.66663 6.71131 3.72516 6.60712 3.82934C6.50294 3.93353 6.4444 4.07484 6.4444 4.22218V6.4444H4.22218C4.07484 6.4444 3.93353 6.50294 3.82934 6.60712C3.72516 6.71131 3.66663 6.85262 3.66663 6.99996C3.66663 7.1473 3.72516 7.28861 3.82934 7.3928C3.93353 7.49698 4.07484 7.55551 4.22218 7.55551H6.4444V9.77774C6.4444 9.92508 6.50294 10.0664 6.60712 10.1706C6.71131 10.2748 6.85262 10.3333 6.99996 10.3333C7.1473 10.3333 7.28861 10.2748 7.3928 10.1706C7.49698 10.0664 7.55551 9.92508 7.55551 9.77774V7.55551H9.77774C9.92508 7.55551 10.0664 7.49698 10.1706 7.3928C10.2748 7.28861 10.3333 7.1473 10.3333 6.99996C10.3333 6.85262 10.2748 6.71131 10.1706 6.60712C10.0664 6.50294 9.92508 6.4444 9.77774 6.4444Z", fill: "#32394D" }))), h("div", { key: '03214b3dd6dad6b7d3973f36d041aafcb9089819', class: "text" }, "Agregar"))))), cardFiles.length > 0 && (h("div", { key: '4fb7c564b557885680f2aa2723273dac6f15cc72', class: "card-list" }, cardFiles.map(f => this.renderCardItem(f))))))));
78
231
  }
79
232
  };
80
233
  DropiFileUpload.style = dropiFileUploadCss();
@@ -1,6 +1,6 @@
1
- import { r as registerInstance, a as getElement, h } from './index-Tbza12Gt.js';
1
+ import { r as registerInstance, a as getElement, h } from './index-D5SAM1O2.js';
2
2
 
3
- const dropiIconCss = () => `:host{display:inline-flex;align-items:center;justify-content:center;fill:var(--icon-fill, currentColor)}svg{fill:inherit;display:block;vertical-align:middle}.spin{animation:spin 1s linear infinite}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}`;
3
+ const dropiIconCss = () => `:host{display:inline-flex;align-items:center;justify-content:center;fill:var(--icon-fill, currentColor);width:24px;height:24px;overflow:hidden}svg{fill:inherit;display:block;width:100%;height:100%;vertical-align:middle}.spin{animation:spin 1s linear infinite}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}`;
4
4
 
5
5
  const DropiIcon = class {
6
6
  constructor(hostRef) {
@@ -23,10 +23,27 @@ const DropiIcon = class {
23
23
  colorChanged() {
24
24
  this.applyColor();
25
25
  }
26
- componentDidLoad() {
26
+ componentWillLoad() {
27
+ // SSR Fallback: Read attributes if props are not yet synced by hydration
28
+ if (!this.el.style.width && !this.el.style.height) {
29
+ const attrW = this.el.getAttribute('width') || '24px';
30
+ const attrH = this.el.getAttribute('height') || '24px';
31
+ this.width = attrW;
32
+ this.height = attrH;
33
+ }
27
34
  this.applyColor();
35
+ this.updateHostStyles();
36
+ }
37
+ componentDidUpdate() {
38
+ this.updateHostStyles();
39
+ }
40
+ updateHostStyles() {
41
+ this.el.style.width = this.width;
42
+ this.el.style.height = this.height;
28
43
  }
29
44
  applyColor() {
45
+ if (!this.color)
46
+ return;
30
47
  const fill = this.color.startsWith('#')
31
48
  ? this.color
32
49
  : this.color === 'currentColor'
@@ -35,7 +52,7 @@ const DropiIcon = class {
35
52
  this.el.style.setProperty('--icon-fill', fill);
36
53
  }
37
54
  render() {
38
- return (h("svg", { key: '2ddcab388d4a4aa5eeb4068160210581977f270d', width: this.width, height: this.height, class: { spin: this.name === 'Spinner' }, "aria-hidden": "true" }, h("use", { key: 'cf485e8fb45231b2ad43b069f3d0d69047f7bc9c', href: `/assets/icons/symbol/svg/sprite.css.svg#${this.name}` })));
55
+ return (h("svg", { key: 'c705712bd21c4da94dcff8ce12b0c0b880681e95', width: this.width ?? '24px', height: this.height ?? '24px', class: { spin: (this.name ?? '') === 'Spinner' }, "aria-hidden": "true" }, h("use", { key: 'b02addb8203904ec059b3c92bd40b09e3c79622d', href: `/assets/icons/symbol/svg/sprite.css.svg#${this.name ?? ''}` })));
39
56
  }
40
57
  static get watchers() { return {
41
58
  "color": [{
@@ -1,6 +1,6 @@
1
- import { r as registerInstance, h } from './index-Tbza12Gt.js';
1
+ import { r as registerInstance, h } from './index-D5SAM1O2.js';
2
2
 
3
- const dropiIlustrationIconCss = () => `:host{display:inline-flex}.dropi-ilustration{display:inline-flex;align-items:center;justify-content:center}.dropi-ilustration__image,.dropi-ilustration-insignia{margin:0;display:flex;align-items:center;justify-content:center}.dropi-ilustration__image img{max-width:100%;height:auto}.dropi-ilustration__image-mb{width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin:0}.dropi-ilustration__image-mb.success{background:var(--Success-Success-500, #22c55e)}.dropi-ilustration__image-mb.error{background:var(--Error-Error-500, #ef4444)}.dropi-ilustration__image-mb.info{background:var(--Info-Info-500, #3b82f6)}.dropi-ilustration__image-mb.warning{background:url('assets/icons/ilustration/bg-warning.svg') no-repeat center;background-size:contain;border-radius:0}.dropi-ilustration-insignia-tag{display:flex;align-items:center;margin:0}.dropi-ilustration-insignia-tag img{position:relative;z-index:2;height:32px;width:auto}.tag{border-radius:32px;color:var(--Neutral-White, #fff);text-transform:capitalize;margin:0 0 0 -20px;display:flex;align-items:center;justify-content:flex-start}.tag span{color:var(--Neutral-White, #fff);padding:4px 8px 4px 18px;font-size:10px}.tag--verified{background:linear-gradient(90deg, #ffc10d 41.3%, #ff6102 112.32%)}.tag--premium{background:linear-gradient(90deg, #ff6102 56.52%, #ffc10d 107.25%)}.tag--exclusive{background:linear-gradient(90deg, var(--Gray-900, #0e111a) 26.09%, #ff6102 116.67%)}`;
3
+ const dropiIlustrationIconCss = () => `:host{display:inline-flex}.dropi-ilustration{display:inline-flex;align-items:center;justify-content:center}.dropi-ilustration__image,.dropi-ilustration-insignia{margin:0;display:flex;align-items:center;justify-content:center}.dropi-ilustration__image img{max-width:100%;height:auto}.dropi-ilustration__image-mb{width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin:0}.dropi-ilustration__image-mb.success{background:var(--Success-Success-500, #22c55e)}.dropi-ilustration__image-mb.error{background:var(--Error-Error-500, #ef4444)}.dropi-ilustration__image-mb.info{background:var(--Info-Info-500, #3b82f6)}.dropi-ilustration__image-mb.warning{background:url('assets/icons/ilustration/bg-warning.svg') no-repeat center;background-size:contain;border-radius:0}.dropi-ilustration-insignia-tag{display:flex;align-items:center;margin:0}.dropi-ilustration-insignia-tag img{position:relative;z-index:2;height:32px;width:auto}.tag{border-radius:32px;color:var(--Neutral-White, #ffffff);text-transform:capitalize;margin:0 0 0 -20px;display:flex;align-items:center;justify-content:flex-start}.tag span{color:var(--Neutral-White, #ffffff);padding:4px 8px 4px 18px;font-size:var(--font-size-xxs)}.tag--verified{background:linear-gradient(90deg, #ffc10d 41.3%, #ff6102 112.32%)}.tag--premium{background:linear-gradient(90deg, #ff6102 56.52%, #ffc10d 107.25%)}.tag--exclusive{background:linear-gradient(90deg, var(--Gray-900, #0e111a) 26.09%, #ff6102 116.67%)}`;
4
4
 
5
5
  const DropiIlustrationIcon = class {
6
6
  constructor(hostRef) {
@@ -29,7 +29,7 @@ const DropiIlustrationIcon = class {
29
29
  return map[state] || 'Info';
30
30
  }
31
31
  render() {
32
- return (h("div", { key: '1acaca4fb04f69aa08d582f77912daf20bc810a0', class: "dropi-ilustration" }, this.type === 'dropi' && (h("figure", { key: '926b2097628ed235167c996440cf1324ad915f10', class: "dropi-ilustration__image" }, h("img", { key: 'ca44d2ac9abf55255554d0f332f93e5663125307', src: `assets/icons/ilustration/${this.state}.svg`, alt: this.state, onError: (e) => { e.target.src = 'assets/icons/ilustration/default.svg'; } }))), this.type === 'mb' && (h("figure", { key: 'f47a3b50f13c75d9637482120df85c8a7654a0d5', class: `dropi-ilustration__image-mb ${this.state}` }, ['success', 'error', 'info', 'warning'].includes(this.state) && (h("dropi-icon", { key: 'ccd33ef7664a7474333e3af1bfe8b4718d714268', name: this.getIconName(this.state), width: "24px", height: "24px", color: "Neutral-White" })))), this.type === 'insignia' && (h("figure", { key: '24d7552d743a7fc5abbb1fc85e37c46025cd6860', class: this.tagProduct ? 'dropi-ilustration-insignia-tag' : 'dropi-ilustration-insignia' }, h("img", { key: 'bbc80f0b9ae663dc0f01600d338ad5297ab3f6ce', src: this.insigniaIcons[this.stateInsignia], alt: this.stateInsignia }), this.tagProduct && (h("p", { key: 'b5efd7dc951609a478524e0861f26a0dd6780d7c', class: `tag tag--${this.stateInsignia}` }, h("span", { key: '09dbe7100e081804eff89f7e45cd4770be434d7b', class: "Caption-S" }, this.stateInsignia.charAt(0).toUpperCase() + this.stateInsignia.slice(1))))))));
32
+ return (h("div", { key: '2f956eddb214de168aae134374512600867e77a8', class: "dropi-ilustration" }, this.type === 'dropi' && (h("figure", { key: '3d05624542d51f64cb6402fb958f039bc943afb7', class: "dropi-ilustration__image" }, h("img", { key: '6fb383b378d989f675433c46710e246dc193f26b', src: `assets/icons/ilustration/${(!this.state || String(this.state) === 'undefined' || String(this.state) === 'null') ? 'default' : this.state}.svg`, alt: this.state ?? 'default', onError: (e) => { e.target.src = 'assets/icons/ilustration/default.svg'; } }))), this.type === 'mb' && (h("figure", { key: 'f66957ddbba9506d041ab1b2e8877872b25bdbf3', class: `dropi-ilustration__image-mb ${this.state}` }, ['success', 'error', 'info', 'warning'].includes(this.state) && (h("dropi-icon", { key: '2844c2707906bcba57835c1e7652c52769b504fe', name: this.getIconName(this.state), width: "24px", height: "24px", color: "Neutral-White" })))), this.type === 'insignia' && (h("figure", { key: '4c091e2f415d252ae3cdaa7b62b1e4788192ae6c', class: this.tagProduct ? 'dropi-ilustration-insignia-tag' : 'dropi-ilustration-insignia' }, h("img", { key: 'dc9e11b8ecf525dbfd0c8c147a64e12350c2b6d5', src: this.insigniaIcons[this.stateInsignia], alt: this.stateInsignia }), this.tagProduct && (h("p", { key: '0fa7f6fdd1bb9075d1ef2a09a6701b0b464a746b', class: `tag tag--${this.stateInsignia}` }, h("span", { key: 'dae1336fefa32471ebbc78f1bcdd0c9b1c89dcba', class: "Caption-S" }, this.stateInsignia.charAt(0).toUpperCase() + this.stateInsignia.slice(1))))))));
33
33
  }
34
34
  };
35
35
  DropiIlustrationIcon.style = dropiIlustrationIconCss();
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-Tbza12Gt.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-D5SAM1O2.js';
2
2
 
3
3
  const dropiImageMiniatureCss = () => `:host{display:block}*,*::before,*::after{box-sizing:border-box}.miniature__label{display:block;font-size:var(--font-size-xs, 10px);color:var(--Gray-Gray-600, #475066);margin-bottom:var(--Size-2, 8px)}.miniature__grid{display:flex;flex-wrap:wrap;gap:var(--Size-2, 8px)}.miniature__item{position:relative;border-radius:var(--Border-2, 8px);overflow:hidden;cursor:pointer;flex-shrink:0}.miniature__item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.2s}.miniature__zoom{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.35);opacity:0;transition:opacity 0.2s}.miniature__item:hover img{transform:scale(1.05)}.miniature__item:hover .miniature__zoom{opacity:1}`;
4
4
 
@@ -34,7 +34,7 @@ const DropiImageMiniature = class {
34
34
  }
35
35
  render() {
36
36
  const imgs = this.parsedImages;
37
- return (h("div", { key: '158c35ef76539561c66eaeb2f825752cd94c8cc6', class: "miniature" }, this.label && h("span", { key: '7817f19c245b61a0b3730cc353a6e0f9fd30d41e', class: "miniature__label" }, this.label), h("div", { key: 'ca1ecbbeb3134fe46e83ae89a1cc4e36836188a3', class: "miniature__grid" }, imgs.map((src, i) => (h("div", { class: "miniature__item", style: { width: this.width, height: this.height }, key: i, onClick: () => this.dropiImageClick.emit({ images: imgs, index: i }) }, h("img", { src: src, alt: `imagen ${i + 1}`, loading: "lazy", onError: (e) => this.handleError(e) }), h("div", { class: "miniature__zoom" }, h("dropi-icon", { name: "Search", width: "16px", height: "16px", color: "Neutral-White" }))))))));
37
+ return (h("div", { key: '111d908339df1d3fba74cb8737f3c72e2254e2f0', class: "miniature" }, this.label && h("span", { key: '007ecc8149b6778eac7dd80a978a088f686001eb', class: "miniature__label" }, this.label), h("div", { key: '95c18d71f5c753bd2610915b62632aca7fbd4d16', class: "miniature__grid" }, imgs.map((src, i) => (h("div", { class: "miniature__item", style: { width: this.width, height: this.height }, key: i, onClick: () => this.dropiImageClick.emit({ images: imgs, index: i }) }, h("img", { src: src, alt: `imagen ${i + 1}`, loading: "lazy", onError: (e) => this.handleError(e) }), h("div", { class: "miniature__zoom" }, h("dropi-icon", { name: "Search", width: "16px", height: "16px", color: "Neutral-White" }))))))));
38
38
  }
39
39
  };
40
40
  DropiImageMiniature.style = dropiImageMiniatureCss();
@@ -1,6 +1,6 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-Tbza12Gt.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-D5SAM1O2.js';
2
2
 
3
- const dropiImageOverlayCss = () => `:host{display:block}.overlay{position:fixed;inset:0;background:rgba(0,0,0,0.92);display:flex;justify-content:center;align-items:center;z-index:9999;animation:fade-in 0.3s ease-out}.overlay__close{position:absolute;top:24px;right:24px;background:rgba(255, 255, 255, 0.1);border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10010;transition:background 0.15s}.overlay__close:hover{background:rgba(255, 255, 255, 0.2)}.overlay__body{display:flex;width:90%;height:80%;max-width:1200px;gap:32px;align-items:center}.overlay__body--single{justify-content:center}.overlay__thumbs{display:flex;flex-direction:column;gap:12px;height:100%;overflow-y:auto;padding-right:8px;width:100px;flex-shrink:0}.overlay__thumbs::-webkit-scrollbar{width:4px}.overlay__thumbs::-webkit-scrollbar-thumb{background:#475066;border-radius:4px}.overlay__thumb-box{width:80px;height:80px;border:2px solid transparent;border-radius:8px;overflow:hidden;cursor:pointer;flex-shrink:0;transition:border-color 0.2s}.overlay__thumb-box--active{border-color:var(--Primary-Primary-500, #f49a3d)}.overlay__thumb-img{width:100%;height:100%;object-fit:cover}.overlay__content{flex:1;height:100%;position:relative;display:flex;justify-content:center;align-items:center}.overlay__main-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,0.5);animation:scale-up 0.3s ease-out}.overlay__nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255, 255, 255, 0.1);border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background 0.2s;z-index:5}.overlay__nav:hover{background:rgba(255, 255, 255, 0.2)}.overlay__nav--prev{left:-24px}.overlay__nav--next{right:-24px}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes scale-up{from{transform:scale(0.9);opacity:0}to{transform:scale(1);opacity:1}}`;
3
+ const dropiImageOverlayCss = () => `:host{display:block}.overlay{position:fixed;inset:0;background:rgba(0,0,0,0.92);display:flex;justify-content:center;align-items:center;z-index:9999;animation:fade-in 0.3s ease-out}.overlay__close{position:absolute;top:24px;right:24px;background:rgba(255, 255, 255, 0.1);border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10010;transition:background 0.15s}.overlay__close:hover{background:rgba(255, 255, 255, 0.2)}.overlay__body{display:flex;width:90%;height:80%;max-width:1200px;gap:32px;align-items:center}.overlay__body--single{justify-content:center}.overlay__thumbs{display:flex;flex-direction:column;gap:12px;height:100%;overflow-y:auto;padding-right:8px;width:100px;flex-shrink:0}.overlay__thumbs::-webkit-scrollbar{width:4px}.overlay__thumbs::-webkit-scrollbar-thumb{background:var(--Gray-Gray-600);border-radius:4px}.overlay__thumb-box{width:80px;height:80px;border:2px solid transparent;border-radius:8px;overflow:hidden;cursor:pointer;flex-shrink:0;transition:border-color 0.2s}.overlay__thumb-box--active{border-color:var(--Primary-Primary-500, #f49a3d)}.overlay__thumb-img{width:100%;height:100%;object-fit:cover}.overlay__content{flex:1;height:100%;position:relative;display:flex;justify-content:center;align-items:center}.overlay__main-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,0.5);animation:scale-up 0.3s ease-out}.overlay__nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255, 255, 255, 0.1);border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background 0.2s;z-index:5}.overlay__nav:hover{background:rgba(255, 255, 255, 0.2)}.overlay__nav--prev{left:-24px}.overlay__nav--next{right:-24px;background:var(--Neutral-White)}.overlay__nav--next:hover{background:var(--Neutral-White)}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes scale-up{from{transform:scale(0.9);opacity:0}to{transform:scale(1);opacity:1}}`;
4
4
 
5
5
  const DropiImageOverlay = class {
6
6
  constructor(hostRef) {
@@ -37,7 +37,8 @@ const DropiImageOverlay = class {
37
37
  `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MDAgMzAwIj48cmVjdCB3aWR0aD0iNDAwIiBoZWlnaHQ9IjMwMCIgZmlsbD0iIzFhMjAzMyIvPjx0ZXh0IHg9IjIwMCIgeT0iMTU1IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmaWxsPSIjNDc1MDY2IiBmb250LXNpemU9IjE0Ij5TaW4gaW1hZ2VuPC90ZXh0Pjwvc3ZnPg==`;
38
38
  }
39
39
  render() {
40
- if (!this.visible)
40
+ const isVisible = this.visible === true || String(this.visible) === 'true';
41
+ if (!isVisible)
41
42
  return null;
42
43
  const imgs = this.parsedImages;
43
44
  const multi = imgs.length > 1;