@dropi/ui 0.1.21 → 0.1.23

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 (507) hide show
  1. package/dist/{esm → dropi-ui}/dropi-accordion-item.entry.js +9 -3
  2. package/dist/dropi-ui/dropi-accordion-item.entry.js.map +1 -0
  3. package/dist/{esm → dropi-ui}/dropi-accordion.entry.js +5 -2
  4. package/dist/dropi-ui/dropi-accordion.entry.js.map +1 -0
  5. package/dist/{esm → dropi-ui}/dropi-alert-legacy.entry.js +4 -1
  6. package/dist/dropi-ui/dropi-alert-legacy.entry.js.map +1 -0
  7. package/dist/{esm → dropi-ui}/dropi-alert-modal.entry.js +6 -3
  8. package/dist/dropi-ui/dropi-alert-modal.entry.js.map +1 -0
  9. package/dist/{esm → dropi-ui}/dropi-alert.entry.js +5 -2
  10. package/dist/dropi-ui/dropi-alert.entry.js.map +1 -0
  11. package/dist/{esm → dropi-ui}/dropi-avatars.entry.js +5 -2
  12. package/dist/dropi-ui/dropi-avatars.entry.js.map +1 -0
  13. package/dist/{esm → dropi-ui}/dropi-badge-legacy.entry.js +5 -2
  14. package/dist/dropi-ui/dropi-badge-legacy.entry.js.map +1 -0
  15. package/dist/{esm → dropi-ui}/dropi-badge.entry.js +5 -2
  16. package/dist/dropi-ui/dropi-badge.entry.js.map +1 -0
  17. package/dist/{esm → dropi-ui}/dropi-banner-external.entry.js +15 -2
  18. package/dist/dropi-ui/dropi-banner-external.entry.js.map +1 -0
  19. package/dist/{esm → dropi-ui}/dropi-breadcrumb.entry.js +5 -2
  20. package/dist/dropi-ui/dropi-breadcrumb.entry.js.map +1 -0
  21. package/dist/{esm → dropi-ui}/dropi-button.entry.js +6 -3
  22. package/dist/dropi-ui/dropi-button.entry.js.map +1 -0
  23. package/dist/{esm → dropi-ui}/dropi-card-checkbox.entry.js +6 -3
  24. package/dist/dropi-ui/dropi-card-checkbox.entry.js.map +1 -0
  25. package/dist/{esm → dropi-ui}/dropi-card-product.entry.js +10 -5
  26. package/dist/dropi-ui/dropi-card-product.entry.js.map +1 -0
  27. package/dist/{esm → dropi-ui}/dropi-card-section.entry.js +6 -3
  28. package/dist/dropi-ui/dropi-card-section.entry.js.map +1 -0
  29. package/dist/{esm → dropi-ui}/dropi-carousel.entry.js +10 -2
  30. package/dist/dropi-ui/dropi-carousel.entry.js.map +1 -0
  31. package/dist/{esm → dropi-ui}/dropi-checkbox-selection-list.entry.js +6 -3
  32. package/dist/dropi-ui/dropi-checkbox-selection-list.entry.js.map +1 -0
  33. package/dist/{esm → dropi-ui}/dropi-checkbox.entry.js +6 -3
  34. package/dist/dropi-ui/dropi-checkbox.entry.js.map +1 -0
  35. package/dist/{esm → dropi-ui}/dropi-chips.entry.js +5 -2
  36. package/dist/dropi-ui/dropi-chips.entry.js.map +1 -0
  37. package/dist/{esm → dropi-ui}/dropi-city-selector.entry.js +13 -2
  38. package/dist/dropi-ui/dropi-city-selector.entry.js.map +1 -0
  39. package/dist/{esm → dropi-ui}/dropi-color-picker.entry.js +7 -4
  40. package/dist/dropi-ui/dropi-color-picker.entry.js.map +1 -0
  41. package/dist/{esm → dropi-ui}/dropi-country-flags.entry.js +5 -2
  42. package/dist/dropi-ui/dropi-country-flags.entry.js.map +1 -0
  43. package/dist/{esm → dropi-ui}/dropi-country-selector.entry.js +6 -3
  44. package/dist/dropi-ui/dropi-country-selector.entry.js.map +1 -0
  45. package/dist/{esm → dropi-ui}/dropi-date-picker-range.entry.js +4 -1
  46. package/dist/dropi-ui/dropi-date-picker-range.entry.js.map +1 -0
  47. package/dist/{esm → dropi-ui}/dropi-date-picker.entry.js +8 -5
  48. package/dist/dropi-ui/dropi-date-picker.entry.js.map +1 -0
  49. package/dist/{esm → dropi-ui}/dropi-drawer.entry.js +10 -4
  50. package/dist/dropi-ui/dropi-drawer.entry.js.map +1 -0
  51. package/dist/{esm → dropi-ui}/dropi-dropdown.entry.js +6 -3
  52. package/dist/dropi-ui/dropi-dropdown.entry.js.map +1 -0
  53. package/dist/{esm → dropi-ui}/dropi-empty-state.entry.js +5 -2
  54. package/dist/dropi-ui/dropi-empty-state.entry.js.map +1 -0
  55. package/dist/{esm → dropi-ui}/dropi-favorite-button.entry.js +5 -2
  56. package/dist/dropi-ui/dropi-favorite-button.entry.js.map +1 -0
  57. package/dist/{esm → dropi-ui}/dropi-file-upload-progress-bar.entry.js +7 -2
  58. package/dist/dropi-ui/dropi-file-upload-progress-bar.entry.js.map +1 -0
  59. package/dist/{esm → dropi-ui}/dropi-file-upload.entry.js +9 -5
  60. package/dist/dropi-ui/dropi-file-upload.entry.js.map +1 -0
  61. package/dist/dropi-ui/dropi-icon.entry.js +68 -0
  62. package/dist/dropi-ui/dropi-icon.entry.js.map +1 -0
  63. package/dist/{esm → dropi-ui}/dropi-ilustration-icon.entry.js +5 -2
  64. package/dist/dropi-ui/dropi-ilustration-icon.entry.js.map +1 -0
  65. package/dist/{esm → dropi-ui}/dropi-image-miniature.entry.js +5 -2
  66. package/dist/dropi-ui/dropi-image-miniature.entry.js.map +1 -0
  67. package/dist/{esm → dropi-ui}/dropi-image-overlay.entry.js +6 -2
  68. package/dist/dropi-ui/dropi-image-overlay.entry.js.map +1 -0
  69. package/dist/{esm/dropi-input_3.entry.js → dropi-ui/dropi-input.entry.js} +13 -135
  70. package/dist/dropi-ui/dropi-input.entry.js.map +1 -0
  71. package/dist/{esm → dropi-ui}/dropi-languages-selector.entry.js +9 -2
  72. package/dist/dropi-ui/dropi-languages-selector.entry.js.map +1 -0
  73. package/dist/{esm → dropi-ui}/dropi-logo.entry.js +15 -2
  74. package/dist/dropi-ui/dropi-logo.entry.js.map +1 -0
  75. package/dist/{esm → dropi-ui}/dropi-lottie-loader.entry.js +4 -1
  76. package/dist/dropi-ui/dropi-lottie-loader.entry.js.map +1 -0
  77. package/dist/{esm → dropi-ui}/dropi-media-player.entry.js +10 -4
  78. package/dist/dropi-ui/dropi-media-player.entry.js.map +1 -0
  79. package/dist/{esm → dropi-ui}/dropi-modal.entry.js +22 -12
  80. package/dist/dropi-ui/dropi-modal.entry.js.map +1 -0
  81. package/dist/{esm → dropi-ui}/dropi-navbar.entry.js +6 -3
  82. package/dist/dropi-ui/dropi-navbar.entry.js.map +1 -0
  83. package/dist/{esm → dropi-ui}/dropi-otp-send-code.entry.js +10 -7
  84. package/dist/dropi-ui/dropi-otp-send-code.entry.js.map +1 -0
  85. package/dist/dropi-ui/dropi-paginator.entry.js +70 -0
  86. package/dist/dropi-ui/dropi-paginator.entry.js.map +1 -0
  87. package/dist/{esm → dropi-ui}/dropi-phone-input.entry.js +7 -4
  88. package/dist/dropi-ui/dropi-phone-input.entry.js.map +1 -0
  89. package/dist/{esm → dropi-ui}/dropi-radio-button.entry.js +5 -2
  90. package/dist/dropi-ui/dropi-radio-button.entry.js.map +1 -0
  91. package/dist/{esm → dropi-ui}/dropi-radio-selection-list.entry.js +6 -3
  92. package/dist/dropi-ui/dropi-radio-selection-list.entry.js.map +1 -0
  93. package/dist/{esm → dropi-ui}/dropi-read-more.entry.js +5 -2
  94. package/dist/dropi-ui/dropi-read-more.entry.js.map +1 -0
  95. package/dist/{esm → dropi-ui}/dropi-search.entry.js +6 -3
  96. package/dist/dropi-ui/dropi-search.entry.js.map +1 -0
  97. package/dist/{esm → dropi-ui}/dropi-select.entry.js +9 -2
  98. package/dist/dropi-ui/dropi-select.entry.js.map +1 -0
  99. package/dist/{esm → dropi-ui}/dropi-sidebar.entry.js +5 -2
  100. package/dist/dropi-ui/dropi-sidebar.entry.js.map +1 -0
  101. package/dist/{esm → dropi-ui}/dropi-simple-stepper.entry.js +5 -2
  102. package/dist/dropi-ui/dropi-simple-stepper.entry.js.map +1 -0
  103. package/dist/{esm → dropi-ui}/dropi-skeleton.entry.js +5 -2
  104. package/dist/dropi-ui/dropi-skeleton.entry.js.map +1 -0
  105. package/dist/{esm → dropi-ui}/dropi-steps.entry.js +5 -2
  106. package/dist/dropi-ui/dropi-steps.entry.js.map +1 -0
  107. package/dist/{esm → dropi-ui}/dropi-switch.entry.js +5 -2
  108. package/dist/dropi-ui/dropi-switch.entry.js.map +1 -0
  109. package/dist/{esm → dropi-ui}/dropi-table.entry.js +17 -7
  110. package/dist/dropi-ui/dropi-table.entry.js.map +1 -0
  111. package/dist/{esm → dropi-ui}/dropi-tabs.entry.js +5 -2
  112. package/dist/dropi-ui/dropi-tabs.entry.js.map +1 -0
  113. package/dist/{esm → dropi-ui}/dropi-tag-type-product.entry.js +5 -2
  114. package/dist/dropi-ui/dropi-tag-type-product.entry.js.map +1 -0
  115. package/dist/dropi-ui/dropi-tag.entry.js +69 -0
  116. package/dist/dropi-ui/dropi-tag.entry.js.map +1 -0
  117. package/dist/{esm → dropi-ui}/dropi-text-area.entry.js +6 -3
  118. package/dist/dropi-ui/dropi-text-area.entry.js.map +1 -0
  119. package/dist/{esm → dropi-ui}/dropi-time-line.entry.js +5 -2
  120. package/dist/dropi-ui/dropi-time-line.entry.js.map +1 -0
  121. package/dist/{esm → dropi-ui}/dropi-toast.entry.js +9 -5
  122. package/dist/dropi-ui/dropi-toast.entry.js.map +1 -0
  123. package/dist/{esm → dropi-ui}/dropi-tooltip-v2.entry.js +6 -3
  124. package/dist/dropi-ui/dropi-tooltip-v2.entry.js.map +1 -0
  125. package/dist/{esm → dropi-ui}/dropi-tooltip.entry.js +5 -2
  126. package/dist/dropi-ui/dropi-tooltip.entry.js.map +1 -0
  127. package/dist/dropi-ui/dropi-ui.css +311 -1
  128. package/dist/dropi-ui/dropi-ui.esm.js +50 -1
  129. package/dist/dropi-ui/dropi-ui.esm.js.map +1 -0
  130. package/dist/{esm → dropi-ui}/dropi-vertical-steps.entry.js +5 -2
  131. package/dist/dropi-ui/dropi-vertical-steps.entry.js.map +1 -0
  132. package/dist/{esm → dropi-ui}/dropi-youtube-lazy-video.entry.js +5 -2
  133. package/dist/dropi-ui/dropi-youtube-lazy-video.entry.js.map +1 -0
  134. package/dist/dropi-ui/index-Cvp2LQOM.js +4585 -0
  135. package/dist/dropi-ui/index-Cvp2LQOM.js.map +1 -0
  136. package/dist/dropi-ui/index.esm.js +4 -0
  137. package/dist/dropi-ui/index.esm.js.map +1 -0
  138. package/dist/types/components/dropi-alert-modal/dropi-alert-modal.d.ts +1 -1
  139. package/dist/types/components/dropi-banner-external/dropi-banner-external.d.ts +2 -0
  140. package/dist/types/components/dropi-carousel/dropi-carousel.d.ts +3 -3
  141. package/dist/types/components/dropi-drawer/dropi-drawer.d.ts +2 -2
  142. package/dist/types/components/dropi-icon/dropi-icon.d.ts +3 -1
  143. package/dist/types/components/dropi-image-overlay/dropi-image-overlay.d.ts +1 -1
  144. package/dist/types/components/dropi-input/dropi-input.d.ts +2 -2
  145. package/dist/types/components/dropi-logo/dropi-logo.d.ts +2 -0
  146. package/dist/types/components/dropi-modal/dropi-modal.d.ts +2 -2
  147. package/dist/types/components/dropi-table/dropi-table.d.ts +2 -0
  148. package/dist/types/components.d.ts +37 -37
  149. package/hydrate/index.d.ts +287 -0
  150. package/hydrate/index.js +30455 -0
  151. package/hydrate/index.mjs +30445 -0
  152. package/hydrate/package.json +12 -0
  153. package/package.json +9 -3
  154. package/readme.md +45 -13
  155. package/scripts/setup.js +193 -8
  156. package/dist/cjs/dropi-accordion-item.cjs.entry.js +0 -54
  157. package/dist/cjs/dropi-accordion.cjs.entry.js +0 -19
  158. package/dist/cjs/dropi-alert-legacy.cjs.entry.js +0 -39
  159. package/dist/cjs/dropi-alert-modal.cjs.entry.js +0 -128
  160. package/dist/cjs/dropi-alert.cjs.entry.js +0 -64
  161. package/dist/cjs/dropi-avatars.cjs.entry.js +0 -31
  162. package/dist/cjs/dropi-badge-legacy.cjs.entry.js +0 -30
  163. package/dist/cjs/dropi-badge.cjs.entry.js +0 -37
  164. package/dist/cjs/dropi-banner-external.cjs.entry.js +0 -53
  165. package/dist/cjs/dropi-breadcrumb.cjs.entry.js +0 -48
  166. package/dist/cjs/dropi-button.cjs.entry.js +0 -87
  167. package/dist/cjs/dropi-card-checkbox.cjs.entry.js +0 -48
  168. package/dist/cjs/dropi-card-product.cjs.entry.js +0 -76
  169. package/dist/cjs/dropi-card-section.cjs.entry.js +0 -38
  170. package/dist/cjs/dropi-carousel.cjs.entry.js +0 -148
  171. package/dist/cjs/dropi-checkbox-selection-list.cjs.entry.js +0 -73
  172. package/dist/cjs/dropi-checkbox.cjs.entry.js +0 -36
  173. package/dist/cjs/dropi-chips.cjs.entry.js +0 -30
  174. package/dist/cjs/dropi-city-selector.cjs.entry.js +0 -96
  175. package/dist/cjs/dropi-color-picker.cjs.entry.js +0 -319
  176. package/dist/cjs/dropi-country-flags.cjs.entry.js +0 -37
  177. package/dist/cjs/dropi-country-selector.cjs.entry.js +0 -197
  178. package/dist/cjs/dropi-date-picker-range.cjs.entry.js +0 -115
  179. package/dist/cjs/dropi-date-picker.cjs.entry.js +0 -223
  180. package/dist/cjs/dropi-drawer.cjs.entry.js +0 -76
  181. package/dist/cjs/dropi-dropdown.cjs.entry.js +0 -65
  182. package/dist/cjs/dropi-empty-state.cjs.entry.js +0 -36
  183. package/dist/cjs/dropi-favorite-button.cjs.entry.js +0 -27
  184. package/dist/cjs/dropi-file-upload-progress-bar.cjs.entry.js +0 -75
  185. package/dist/cjs/dropi-file-upload.cjs.entry.js +0 -236
  186. package/dist/cjs/dropi-icon.cjs.entry.js +0 -50
  187. package/dist/cjs/dropi-ilustration-icon.cjs.entry.js +0 -39
  188. package/dist/cjs/dropi-image-miniature.cjs.entry.js +0 -44
  189. package/dist/cjs/dropi-image-overlay.cjs.entry.js +0 -62
  190. package/dist/cjs/dropi-input_3.cjs.entry.js +0 -390
  191. package/dist/cjs/dropi-languages-selector.cjs.entry.js +0 -57
  192. package/dist/cjs/dropi-logo.cjs.entry.js +0 -27
  193. package/dist/cjs/dropi-lottie-loader.cjs.entry.js +0 -27
  194. package/dist/cjs/dropi-media-player.cjs.entry.js +0 -189
  195. package/dist/cjs/dropi-modal.cjs.entry.js +0 -135
  196. package/dist/cjs/dropi-navbar.cjs.entry.js +0 -54
  197. package/dist/cjs/dropi-otp-send-code.cjs.entry.js +0 -92
  198. package/dist/cjs/dropi-phone-input.cjs.entry.js +0 -197
  199. package/dist/cjs/dropi-radio-button.cjs.entry.js +0 -47
  200. package/dist/cjs/dropi-radio-selection-list.cjs.entry.js +0 -60
  201. package/dist/cjs/dropi-read-more.cjs.entry.js +0 -40
  202. package/dist/cjs/dropi-search.cjs.entry.js +0 -124
  203. package/dist/cjs/dropi-select.cjs.entry.js +0 -378
  204. package/dist/cjs/dropi-sidebar.cjs.entry.js +0 -78
  205. package/dist/cjs/dropi-simple-stepper.cjs.entry.js +0 -53
  206. package/dist/cjs/dropi-skeleton.cjs.entry.js +0 -57
  207. package/dist/cjs/dropi-steps.cjs.entry.js +0 -52
  208. package/dist/cjs/dropi-switch.cjs.entry.js +0 -30
  209. package/dist/cjs/dropi-table.cjs.entry.js +0 -292
  210. package/dist/cjs/dropi-tabs.cjs.entry.js +0 -51
  211. package/dist/cjs/dropi-tag-type-product.cjs.entry.js +0 -19
  212. package/dist/cjs/dropi-text-area.cjs.entry.js +0 -134
  213. package/dist/cjs/dropi-time-line.cjs.entry.js +0 -34
  214. package/dist/cjs/dropi-toast.cjs.entry.js +0 -55
  215. package/dist/cjs/dropi-tooltip-v2.cjs.entry.js +0 -131
  216. package/dist/cjs/dropi-tooltip.cjs.entry.js +0 -21
  217. package/dist/cjs/dropi-ui.cjs.js +0 -24
  218. package/dist/cjs/dropi-vertical-steps.cjs.entry.js +0 -55
  219. package/dist/cjs/dropi-youtube-lazy-video.cjs.entry.js +0 -33
  220. package/dist/cjs/index-077kM98l.js +0 -1746
  221. package/dist/cjs/index.cjs.js +0 -2
  222. package/dist/cjs/loader.cjs.js +0 -12
  223. package/dist/collection/assets/icons/symbol/svg/sprite.css.svg +0 -1
  224. package/dist/collection/collection-manifest.json +0 -77
  225. package/dist/collection/components/dropi-accordion/dropi-accordion-item.css +0 -45
  226. package/dist/collection/components/dropi-accordion/dropi-accordion-item.js +0 -172
  227. package/dist/collection/components/dropi-accordion/dropi-accordion.css +0 -21
  228. package/dist/collection/components/dropi-accordion/dropi-accordion.js +0 -48
  229. package/dist/collection/components/dropi-alert/dropi-alert.css +0 -134
  230. package/dist/collection/components/dropi-alert/dropi-alert.js +0 -371
  231. package/dist/collection/components/dropi-alert-legacy/dropi-alert-legacy.css +0 -31
  232. package/dist/collection/components/dropi-alert-legacy/dropi-alert-legacy.js +0 -128
  233. package/dist/collection/components/dropi-alert-modal/dropi-alert-modal.css +0 -96
  234. package/dist/collection/components/dropi-alert-modal/dropi-alert-modal.js +0 -526
  235. package/dist/collection/components/dropi-avatars/dropi-avatars.css +0 -55
  236. package/dist/collection/components/dropi-avatars/dropi-avatars.js +0 -126
  237. package/dist/collection/components/dropi-badge/dropi-badge.css +0 -41
  238. package/dist/collection/components/dropi-badge/dropi-badge.js +0 -71
  239. package/dist/collection/components/dropi-badge-legacy/dropi-badge-legacy.css +0 -17
  240. package/dist/collection/components/dropi-badge-legacy/dropi-badge-legacy.js +0 -119
  241. package/dist/collection/components/dropi-banner-external/dropi-banner-external.css +0 -56
  242. package/dist/collection/components/dropi-banner-external/dropi-banner-external.js +0 -243
  243. package/dist/collection/components/dropi-breadcrumb/dropi-breadcrumb.css +0 -69
  244. package/dist/collection/components/dropi-breadcrumb/dropi-breadcrumb.js +0 -171
  245. package/dist/collection/components/dropi-button/dropi-button.css +0 -177
  246. package/dist/collection/components/dropi-button/dropi-button.js +0 -323
  247. package/dist/collection/components/dropi-card-checkbox/dropi-card-checkbox.css +0 -92
  248. package/dist/collection/components/dropi-card-checkbox/dropi-card-checkbox.js +0 -222
  249. package/dist/collection/components/dropi-card-product/dropi-card-product.css +0 -235
  250. package/dist/collection/components/dropi-card-product/dropi-card-product.js +0 -384
  251. package/dist/collection/components/dropi-card-section/dropi-card-section.css +0 -42
  252. package/dist/collection/components/dropi-card-section/dropi-card-section.js +0 -178
  253. package/dist/collection/components/dropi-carousel/dropi-carousel.css +0 -148
  254. package/dist/collection/components/dropi-carousel/dropi-carousel.js +0 -374
  255. package/dist/collection/components/dropi-checkbox/dropi-checkbox.css +0 -47
  256. package/dist/collection/components/dropi-checkbox/dropi-checkbox.js +0 -103
  257. package/dist/collection/components/dropi-checkbox-selection-list/dropi-checkbox-selection-list.css +0 -44
  258. package/dist/collection/components/dropi-checkbox-selection-list/dropi-checkbox-selection-list.js +0 -267
  259. package/dist/collection/components/dropi-chips/dropi-chips.css +0 -68
  260. package/dist/collection/components/dropi-chips/dropi-chips.js +0 -169
  261. package/dist/collection/components/dropi-city-selector/dropi-city-selector.css +0 -218
  262. package/dist/collection/components/dropi-city-selector/dropi-city-selector.js +0 -234
  263. package/dist/collection/components/dropi-color-picker/dropi-color-picker.css +0 -210
  264. package/dist/collection/components/dropi-color-picker/dropi-color-picker.js +0 -393
  265. package/dist/collection/components/dropi-country-flags/dropi-country-flags.css +0 -30
  266. package/dist/collection/components/dropi-country-flags/dropi-country-flags.js +0 -129
  267. package/dist/collection/components/dropi-country-selector/dropi-country-selector.css +0 -211
  268. package/dist/collection/components/dropi-country-selector/dropi-country-selector.js +0 -429
  269. package/dist/collection/components/dropi-date-picker/dropi-date-picker.css +0 -215
  270. package/dist/collection/components/dropi-date-picker/dropi-date-picker.js +0 -516
  271. package/dist/collection/components/dropi-date-picker-range/dropi-date-picker-range.css +0 -143
  272. package/dist/collection/components/dropi-date-picker-range/dropi-date-picker-range.js +0 -327
  273. package/dist/collection/components/dropi-drawer/dropi-drawer.css +0 -129
  274. package/dist/collection/components/dropi-drawer/dropi-drawer.js +0 -284
  275. package/dist/collection/components/dropi-dropdown/dropi-dropdown.css +0 -51
  276. package/dist/collection/components/dropi-dropdown/dropi-dropdown.js +0 -209
  277. package/dist/collection/components/dropi-empty-state/dropi-empty-state.css +0 -59
  278. package/dist/collection/components/dropi-empty-state/dropi-empty-state.js +0 -222
  279. package/dist/collection/components/dropi-favorite-button/dropi-favorite-button.css +0 -24
  280. package/dist/collection/components/dropi-favorite-button/dropi-favorite-button.js +0 -78
  281. package/dist/collection/components/dropi-file-upload/dropi-file-upload.css +0 -464
  282. package/dist/collection/components/dropi-file-upload/dropi-file-upload.js +0 -516
  283. package/dist/collection/components/dropi-file-upload-progress-bar/dropi-file-upload-progress-bar.css +0 -115
  284. package/dist/collection/components/dropi-file-upload-progress-bar/dropi-file-upload-progress-bar.js +0 -256
  285. package/dist/collection/components/dropi-icon/dropi-icon.css +0 -21
  286. package/dist/collection/components/dropi-icon/dropi-icon.js +0 -142
  287. package/dist/collection/components/dropi-ilustration-icon/dropi-ilustration-icon.css +0 -91
  288. package/dist/collection/components/dropi-ilustration-icon/dropi-ilustration-icon.js +0 -150
  289. package/dist/collection/components/dropi-image-miniature/dropi-image-miniature.css +0 -45
  290. package/dist/collection/components/dropi-image-miniature/dropi-image-miniature.js +0 -150
  291. package/dist/collection/components/dropi-image-overlay/dropi-image-overlay.css +0 -127
  292. package/dist/collection/components/dropi-image-overlay/dropi-image-overlay.js +0 -155
  293. package/dist/collection/components/dropi-input/dropi-input.css +0 -185
  294. package/dist/collection/components/dropi-input/dropi-input.js +0 -806
  295. package/dist/collection/components/dropi-languages-selector/dropi-languages-selector.css +0 -79
  296. package/dist/collection/components/dropi-languages-selector/dropi-languages-selector.js +0 -154
  297. package/dist/collection/components/dropi-logo/dropi-logo.css +0 -26
  298. package/dist/collection/components/dropi-logo/dropi-logo.js +0 -96
  299. package/dist/collection/components/dropi-lottie-loader/dropi-lottie-loader.css +0 -56
  300. package/dist/collection/components/dropi-lottie-loader/dropi-lottie-loader.js +0 -116
  301. package/dist/collection/components/dropi-media-player/dropi-media-player.css +0 -320
  302. package/dist/collection/components/dropi-media-player/dropi-media-player.js +0 -391
  303. package/dist/collection/components/dropi-modal/dropi-modal.css +0 -140
  304. package/dist/collection/components/dropi-modal/dropi-modal.js +0 -688
  305. package/dist/collection/components/dropi-navbar/dropi-navbar.css +0 -166
  306. package/dist/collection/components/dropi-navbar/dropi-navbar.js +0 -302
  307. package/dist/collection/components/dropi-otp-send-code/dropi-otp-send-code.css +0 -67
  308. package/dist/collection/components/dropi-otp-send-code/dropi-otp-send-code.js +0 -221
  309. package/dist/collection/components/dropi-paginator/dropi-paginator.css +0 -103
  310. package/dist/collection/components/dropi-paginator/dropi-paginator.js +0 -215
  311. package/dist/collection/components/dropi-phone-input/dropi-phone-input.css +0 -209
  312. package/dist/collection/components/dropi-phone-input/dropi-phone-input.js +0 -442
  313. package/dist/collection/components/dropi-radio-button/dropi-radio-button.css +0 -62
  314. package/dist/collection/components/dropi-radio-button/dropi-radio-button.js +0 -174
  315. package/dist/collection/components/dropi-radio-selection-list/dropi-radio-selection-list.css +0 -64
  316. package/dist/collection/components/dropi-radio-selection-list/dropi-radio-selection-list.js +0 -259
  317. package/dist/collection/components/dropi-read-more/dropi-read-more.css +0 -25
  318. package/dist/collection/components/dropi-read-more/dropi-read-more.js +0 -154
  319. package/dist/collection/components/dropi-search/dropi-search.css +0 -112
  320. package/dist/collection/components/dropi-search/dropi-search.js +0 -526
  321. package/dist/collection/components/dropi-select/dropi-select.css +0 -366
  322. package/dist/collection/components/dropi-select/dropi-select.js +0 -1014
  323. package/dist/collection/components/dropi-select/select.types.js +0 -1
  324. package/dist/collection/components/dropi-sidebar/dropi-sidebar.css +0 -76
  325. package/dist/collection/components/dropi-sidebar/dropi-sidebar.js +0 -143
  326. package/dist/collection/components/dropi-simple-stepper/dropi-simple-stepper.css +0 -94
  327. package/dist/collection/components/dropi-simple-stepper/dropi-simple-stepper.js +0 -194
  328. package/dist/collection/components/dropi-skeleton/dropi-skeleton.css +0 -27
  329. package/dist/collection/components/dropi-skeleton/dropi-skeleton.js +0 -192
  330. package/dist/collection/components/dropi-steps/dropi-steps.css +0 -95
  331. package/dist/collection/components/dropi-steps/dropi-steps.js +0 -173
  332. package/dist/collection/components/dropi-switch/dropi-switch.css +0 -57
  333. package/dist/collection/components/dropi-switch/dropi-switch.js +0 -96
  334. package/dist/collection/components/dropi-table/dropi-table.css +0 -540
  335. package/dist/collection/components/dropi-table/dropi-table.js +0 -966
  336. package/dist/collection/components/dropi-tabs/dropi-tabs.css +0 -47
  337. package/dist/collection/components/dropi-tabs/dropi-tabs.js +0 -181
  338. package/dist/collection/components/dropi-tag/dropi-tag.css +0 -39
  339. package/dist/collection/components/dropi-tag/dropi-tag.js +0 -190
  340. package/dist/collection/components/dropi-tag-type-product/dropi-tag-type-product.css +0 -14
  341. package/dist/collection/components/dropi-tag-type-product/dropi-tag-type-product.js +0 -48
  342. package/dist/collection/components/dropi-text-area/dropi-text-area.css +0 -100
  343. package/dist/collection/components/dropi-text-area/dropi-text-area.js +0 -512
  344. package/dist/collection/components/dropi-time-line/dropi-time-line.css +0 -108
  345. package/dist/collection/components/dropi-time-line/dropi-time-line.js +0 -69
  346. package/dist/collection/components/dropi-toast/dropi-toast.css +0 -63
  347. package/dist/collection/components/dropi-toast/dropi-toast.js +0 -164
  348. package/dist/collection/components/dropi-tooltip/dropi-tooltip.css +0 -32
  349. package/dist/collection/components/dropi-tooltip/dropi-tooltip.js +0 -70
  350. package/dist/collection/components/dropi-tooltip-v2/dropi-tooltip.css +0 -67
  351. package/dist/collection/components/dropi-tooltip-v2/dropi-tooltip.js +0 -468
  352. package/dist/collection/components/dropi-vertical-steps/dropi-vertical-steps.css +0 -95
  353. package/dist/collection/components/dropi-vertical-steps/dropi-vertical-steps.js +0 -167
  354. package/dist/collection/components/dropi-youtube-lazy-video/dropi-youtube-lazy-video.css +0 -73
  355. package/dist/collection/components/dropi-youtube-lazy-video/dropi-youtube-lazy-video.js +0 -110
  356. package/dist/collection/index.js +0 -1
  357. package/dist/collection/utils/utils.js +0 -3
  358. package/dist/collection/utils/utils.unit.test.js +0 -16
  359. package/dist/components/dropi-accordion-item.js +0 -1
  360. package/dist/components/dropi-accordion.js +0 -1
  361. package/dist/components/dropi-alert-legacy.js +0 -1
  362. package/dist/components/dropi-alert-modal.js +0 -1
  363. package/dist/components/dropi-alert.js +0 -1
  364. package/dist/components/dropi-avatars.js +0 -1
  365. package/dist/components/dropi-badge-legacy.js +0 -1
  366. package/dist/components/dropi-badge.js +0 -1
  367. package/dist/components/dropi-banner-external.js +0 -1
  368. package/dist/components/dropi-breadcrumb.js +0 -1
  369. package/dist/components/dropi-button.js +0 -1
  370. package/dist/components/dropi-card-checkbox.js +0 -1
  371. package/dist/components/dropi-card-product.js +0 -1
  372. package/dist/components/dropi-card-section.js +0 -1
  373. package/dist/components/dropi-carousel.js +0 -1
  374. package/dist/components/dropi-checkbox-selection-list.js +0 -1
  375. package/dist/components/dropi-checkbox.js +0 -1
  376. package/dist/components/dropi-chips.js +0 -1
  377. package/dist/components/dropi-city-selector.js +0 -1
  378. package/dist/components/dropi-color-picker.js +0 -1
  379. package/dist/components/dropi-country-flags.js +0 -1
  380. package/dist/components/dropi-country-selector.js +0 -1
  381. package/dist/components/dropi-date-picker-range.js +0 -1
  382. package/dist/components/dropi-date-picker.js +0 -1
  383. package/dist/components/dropi-drawer.js +0 -1
  384. package/dist/components/dropi-dropdown.js +0 -1
  385. package/dist/components/dropi-empty-state.js +0 -1
  386. package/dist/components/dropi-favorite-button.js +0 -1
  387. package/dist/components/dropi-file-upload-progress-bar.js +0 -1
  388. package/dist/components/dropi-file-upload.js +0 -1
  389. package/dist/components/dropi-icon.js +0 -1
  390. package/dist/components/dropi-ilustration-icon.js +0 -1
  391. package/dist/components/dropi-image-miniature.js +0 -1
  392. package/dist/components/dropi-image-overlay.js +0 -1
  393. package/dist/components/dropi-input.js +0 -1
  394. package/dist/components/dropi-languages-selector.js +0 -1
  395. package/dist/components/dropi-logo.js +0 -1
  396. package/dist/components/dropi-lottie-loader.js +0 -1
  397. package/dist/components/dropi-media-player.js +0 -1
  398. package/dist/components/dropi-modal.js +0 -1
  399. package/dist/components/dropi-navbar.js +0 -1
  400. package/dist/components/dropi-otp-send-code.js +0 -1
  401. package/dist/components/dropi-paginator.js +0 -1
  402. package/dist/components/dropi-phone-input.js +0 -1
  403. package/dist/components/dropi-radio-button.js +0 -1
  404. package/dist/components/dropi-radio-selection-list.js +0 -1
  405. package/dist/components/dropi-read-more.js +0 -1
  406. package/dist/components/dropi-search.js +0 -1
  407. package/dist/components/dropi-select.js +0 -1
  408. package/dist/components/dropi-sidebar.js +0 -1
  409. package/dist/components/dropi-simple-stepper.js +0 -1
  410. package/dist/components/dropi-skeleton.js +0 -1
  411. package/dist/components/dropi-steps.js +0 -1
  412. package/dist/components/dropi-switch.js +0 -1
  413. package/dist/components/dropi-table.js +0 -1
  414. package/dist/components/dropi-tabs.js +0 -1
  415. package/dist/components/dropi-tag-type-product.js +0 -1
  416. package/dist/components/dropi-tag.js +0 -1
  417. package/dist/components/dropi-text-area.js +0 -1
  418. package/dist/components/dropi-time-line.js +0 -1
  419. package/dist/components/dropi-toast.js +0 -1
  420. package/dist/components/dropi-tooltip-v2.js +0 -1
  421. package/dist/components/dropi-tooltip.js +0 -1
  422. package/dist/components/dropi-vertical-steps.js +0 -1
  423. package/dist/components/dropi-youtube-lazy-video.js +0 -1
  424. package/dist/components/index.js +0 -1
  425. package/dist/components/p-9KLpSviZ.js +0 -1
  426. package/dist/components/p-BVekazGL.js +0 -1
  427. package/dist/components/p-BYRcOZS4.js +0 -1
  428. package/dist/components/p-BuDg1d0S.js +0 -1
  429. package/dist/components/p-C2paYEIp.js +0 -1
  430. package/dist/components/p-CDvkvedb.js +0 -1
  431. package/dist/components/p-CnALA9z_.js +0 -1
  432. package/dist/components/p-CtzCJQVR.js +0 -1
  433. package/dist/components/p-CzHupXu8.js +0 -1
  434. package/dist/components/p-DWzWYR5X.js +0 -1
  435. package/dist/components/p-D_Y7tuEH.js +0 -1
  436. package/dist/components/p-DjO9xpVc.js +0 -1
  437. package/dist/dropi-ui/p-0966c363.entry.js +0 -1
  438. package/dist/dropi-ui/p-0c541a53.entry.js +0 -1
  439. package/dist/dropi-ui/p-0cd1fb7a.entry.js +0 -1
  440. package/dist/dropi-ui/p-0f161461.entry.js +0 -1
  441. package/dist/dropi-ui/p-10e363a2.entry.js +0 -1
  442. package/dist/dropi-ui/p-1d4c5364.entry.js +0 -1
  443. package/dist/dropi-ui/p-2e0623ba.entry.js +0 -1
  444. package/dist/dropi-ui/p-2e4efb72.entry.js +0 -1
  445. package/dist/dropi-ui/p-36cdd4fc.entry.js +0 -1
  446. package/dist/dropi-ui/p-37c86c74.entry.js +0 -1
  447. package/dist/dropi-ui/p-392654b7.entry.js +0 -1
  448. package/dist/dropi-ui/p-39904430.entry.js +0 -1
  449. package/dist/dropi-ui/p-3a3b778f.entry.js +0 -1
  450. package/dist/dropi-ui/p-3cbe953f.entry.js +0 -1
  451. package/dist/dropi-ui/p-40b69ccd.entry.js +0 -1
  452. package/dist/dropi-ui/p-443ed5bd.entry.js +0 -1
  453. package/dist/dropi-ui/p-475a16f2.entry.js +0 -1
  454. package/dist/dropi-ui/p-4967b619.entry.js +0 -1
  455. package/dist/dropi-ui/p-4de83790.entry.js +0 -1
  456. package/dist/dropi-ui/p-59188dd5.entry.js +0 -1
  457. package/dist/dropi-ui/p-6178190b.entry.js +0 -1
  458. package/dist/dropi-ui/p-623759eb.entry.js +0 -1
  459. package/dist/dropi-ui/p-645da978.entry.js +0 -1
  460. package/dist/dropi-ui/p-6e727fb0.entry.js +0 -1
  461. package/dist/dropi-ui/p-7036c073.entry.js +0 -1
  462. package/dist/dropi-ui/p-710312bd.entry.js +0 -1
  463. package/dist/dropi-ui/p-74dfe8d1.entry.js +0 -1
  464. package/dist/dropi-ui/p-770afae3.entry.js +0 -1
  465. package/dist/dropi-ui/p-7c0bc6dd.entry.js +0 -1
  466. package/dist/dropi-ui/p-7f8d3642.entry.js +0 -1
  467. package/dist/dropi-ui/p-7fc02d98.entry.js +0 -1
  468. package/dist/dropi-ui/p-8188cca4.entry.js +0 -1
  469. package/dist/dropi-ui/p-858bedcf.entry.js +0 -1
  470. package/dist/dropi-ui/p-87e9ba6d.entry.js +0 -1
  471. package/dist/dropi-ui/p-8b4d4d2d.entry.js +0 -1
  472. package/dist/dropi-ui/p-9062f0de.entry.js +0 -1
  473. package/dist/dropi-ui/p-925852b1.entry.js +0 -1
  474. package/dist/dropi-ui/p-99943b7d.entry.js +0 -1
  475. package/dist/dropi-ui/p-TXz_09YZ.js +0 -2
  476. package/dist/dropi-ui/p-a1f2383d.entry.js +0 -1
  477. package/dist/dropi-ui/p-a6939701.entry.js +0 -1
  478. package/dist/dropi-ui/p-aa8d2aec.entry.js +0 -1
  479. package/dist/dropi-ui/p-aafaffa3.entry.js +0 -1
  480. package/dist/dropi-ui/p-ac345a0e.entry.js +0 -1
  481. package/dist/dropi-ui/p-acfa17ef.entry.js +0 -1
  482. package/dist/dropi-ui/p-af3691a0.entry.js +0 -1
  483. package/dist/dropi-ui/p-b207fc92.entry.js +0 -1
  484. package/dist/dropi-ui/p-ba3ad28e.entry.js +0 -1
  485. package/dist/dropi-ui/p-bd0ffb4a.entry.js +0 -1
  486. package/dist/dropi-ui/p-c2e96728.entry.js +0 -1
  487. package/dist/dropi-ui/p-c664f99f.entry.js +0 -1
  488. package/dist/dropi-ui/p-c7e3a5e0.entry.js +0 -1
  489. package/dist/dropi-ui/p-cfc19ca0.entry.js +0 -1
  490. package/dist/dropi-ui/p-d36a0c37.entry.js +0 -1
  491. package/dist/dropi-ui/p-dd4c6b40.entry.js +0 -1
  492. package/dist/dropi-ui/p-e0351b61.entry.js +0 -1
  493. package/dist/dropi-ui/p-e2361547.entry.js +0 -1
  494. package/dist/dropi-ui/p-e25b2680.entry.js +0 -1
  495. package/dist/dropi-ui/p-e6943d7c.entry.js +0 -1
  496. package/dist/dropi-ui/p-e7b59811.entry.js +0 -1
  497. package/dist/dropi-ui/p-eac7777f.entry.js +0 -1
  498. package/dist/dropi-ui/p-ed94b5fe.entry.js +0 -1
  499. package/dist/dropi-ui/p-f0ddf569.entry.js +0 -1
  500. package/dist/dropi-ui/p-f95c11f8.entry.js +0 -1
  501. package/dist/esm/dropi-icon.entry.js +0 -48
  502. package/dist/esm/dropi-ui.js +0 -20
  503. package/dist/esm/index-TXz_09YZ.js +0 -1737
  504. package/dist/esm/index.js +0 -1
  505. package/dist/esm/loader.js +0 -10
  506. package/dist/index.cjs.js +0 -1
  507. package/dist/index.js +0 -1
@@ -1,1014 +0,0 @@
1
- import { h, } from "@stencil/core";
2
- /**
3
- * @component dropi-select
4
- * Feature-rich select with support for:
5
- * - Single / multi select
6
- * - Grouped options
7
- * - Search / filter
8
- * - Country flags
9
- * - Radio-style options with images
10
- * - Inline (dropdownType) or bordered trigger
11
- * - Native form association
12
- *
13
- * ## Usage
14
- * Options must be set via JS property (not HTML attribute) for object arrays:
15
- * ```js
16
- * document.querySelector('dropi-select').options = [
17
- * { id: 1, label: 'Option A' },
18
- * { id: 2, label: 'Option B' },
19
- * ];
20
- * ```
21
- */
22
- export class DropiSelect {
23
- el;
24
- internals;
25
- buttonRef;
26
- scrollDebounce;
27
- hasEmittedScrollEnd = false;
28
- lastScrollTop = 0;
29
- // ── Props ────────────────────────────────────────────────────
30
- label = '';
31
- placeholder = 'Select';
32
- /** Array of SelectOption or SelectOptionGroup */
33
- options = [];
34
- name = '';
35
- disabled = false;
36
- hasError = false;
37
- errorText = '';
38
- textHelper = '';
39
- showObligatory = false;
40
- /** Enables text search inside the dropdown */
41
- searchEnabled = false;
42
- /** Allows selecting multiple options */
43
- multiSelect = false;
44
- /** Renders trigger without border (inline/dropdown style) */
45
- dropdownType = false;
46
- /** Show country flags next to option labels */
47
- showCountryFlags = false;
48
- /** Renders options as radio buttons with optional image */
49
- radioOptions = false;
50
- /** Placeholder inside the search field */
51
- placeHolderSearch = 'Buscar';
52
- /** Icon name shown before the trigger label */
53
- preIcon = '';
54
- /** Pre-select an option by id */
55
- defaultSelectedId;
56
- /** Controlled selected option (single select) - matches Angular 'selectedOption' */
57
- selectedOption = null;
58
- /** Custom CSS class for the dropdown overlay */
59
- overlayClass = '';
60
- /**
61
- * Convenience object prop — matches Angular `selectProperties: SelectProperties`.
62
- * Fields: label, placeholder, options, showObligatory, textHelper,
63
- * searchEnabled, multiSelect, dropdownType, hasError, errorText,
64
- * radioOptions, preIcon.
65
- * When provided, its non-null fields override individual props.
66
- */
67
- selectProperties = null;
68
- // ── State ────────────────────────────────────────────────────
69
- isOpen = false;
70
- _selectedOption = null;
71
- multiSelected = [];
72
- filteredOptions = [];
73
- searchTerm = '';
74
- dropdownStyle = {
75
- top: '0px', left: '0px', width: '0px',
76
- };
77
- // ── Events ───────────────────────────────────────────────────
78
- /** Emitted when an option is selected — matches Angular 'onChangeSelect' */
79
- onChangeSelect;
80
- /** Emitted when the selection is cleared — matches Angular 'onClear' */
81
- onClear;
82
- /** Emitted on search input — matches Angular 'onSearch' */
83
- onSearch;
84
- /** Emitted when the list is scrolled to the end — matches Angular 'scrolledToEnd' */
85
- scrolledToEnd;
86
- /** Emitted on Enter key inside search — matches Angular 'onKeyEnter' */
87
- onKeyEnter;
88
- // ── Lifecycle ────────────────────────────────────────────────
89
- componentWillLoad() {
90
- if (this.selectProperties)
91
- this.selectPropertiesChanged(this.selectProperties);
92
- this.normalizeOptions();
93
- this.filteredOptions = [...this.options];
94
- this.applyDefaultSelection();
95
- }
96
- selectPropertiesChanged(val) {
97
- if (!val)
98
- return;
99
- if (val.label !== undefined)
100
- this.label = val.label;
101
- if (val.placeholder !== undefined)
102
- this.placeholder = val.placeholder;
103
- if (val.options !== undefined)
104
- this.options = val.options;
105
- if (val.showObligatory !== undefined)
106
- this.showObligatory = val.showObligatory;
107
- if (val.textHelper !== undefined)
108
- this.textHelper = val.textHelper;
109
- if (val.searchEnabled !== undefined)
110
- this.searchEnabled = val.searchEnabled;
111
- if (val.multiSelect !== undefined)
112
- this.multiSelect = val.multiSelect;
113
- if (val.dropdownType !== undefined)
114
- this.dropdownType = val.dropdownType;
115
- if (val.hasError !== undefined)
116
- this.hasError = val.hasError;
117
- if (val.errorText !== undefined)
118
- this.errorText = val.errorText;
119
- if (val.radioOptions !== undefined)
120
- this.radioOptions = val.radioOptions;
121
- if (val.preIcon !== undefined)
122
- this.preIcon = val.preIcon;
123
- }
124
- optionsChanged() {
125
- this.normalizeOptions();
126
- this.filteredOptions = [...this.options];
127
- this.applyDefaultSelection();
128
- }
129
- normalizeOptions() {
130
- if (typeof this.options === 'string') {
131
- try {
132
- this.options = JSON.parse(this.options);
133
- }
134
- catch (_) {
135
- this.options = [];
136
- }
137
- }
138
- }
139
- defaultChanged(newId) {
140
- this.applyDefaultSelection(newId);
141
- }
142
- valueChanged(v) {
143
- this._selectedOption = v;
144
- this.internals.setFormValue(v ? String(v.id) : '');
145
- }
146
- // ── Public Methods ───────────────────────────────────────────
147
- /** Select an option by its id */
148
- async setById(id) {
149
- const opt = this.options.find(o => o.id === id || String(o.id) === String(id));
150
- if (opt)
151
- this.selectOption(opt);
152
- }
153
- /** Select an option by its label */
154
- async setByLabel(label) {
155
- const opt = this.options.find(o => o.label === label);
156
- if (opt)
157
- this.selectOption(opt);
158
- }
159
- /** Clear the current selection */
160
- async clearSelection() {
161
- this._selectedOption = null;
162
- this.multiSelected = [];
163
- this.internals.setFormValue('');
164
- this.onClear.emit();
165
- }
166
- /** Reset multi-select state and show a placeholder label */
167
- async resetMultiSelect(_placeholder) {
168
- this.multiSelected = [];
169
- this.internals.setFormValue('');
170
- }
171
- // ── Click outside ────────────────────────────────────────────
172
- handleOutsideClick(e) {
173
- if (this.isOpen && !e.composedPath().includes(this.el)) {
174
- this.closeDropdown();
175
- }
176
- }
177
- // ── Helpers ──────────────────────────────────────────────────
178
- applyDefaultSelection(id) {
179
- const targetId = id ?? this.defaultSelectedId;
180
- if (targetId === '' || targetId === undefined || targetId === null)
181
- return;
182
- const flat = this.flatOptions();
183
- const found = flat.find(o => o.id === targetId || String(o.id) === String(targetId));
184
- if (found) {
185
- this._selectedOption = found;
186
- this.internals.setFormValue(String(found.id));
187
- }
188
- }
189
- flatOptions() {
190
- if (!this.options?.length)
191
- return [];
192
- if ('category' in this.options[0]) {
193
- return this.options.flatMap(g => g.options);
194
- }
195
- return this.options;
196
- }
197
- get isGrouped() {
198
- return this.options?.length > 0 && 'category' in this.options[0];
199
- }
200
- get triggerLabel() {
201
- if (this.multiSelect) {
202
- return this.multiSelected.length
203
- ? this.multiSelected.map(o => o.label).join(', ')
204
- : this.placeholder;
205
- }
206
- if (this._selectedOption) {
207
- return this.showCountryFlags && this._selectedOption.shortLabel
208
- ? this._selectedOption.shortLabel
209
- : this._selectedOption.label;
210
- }
211
- return this.placeholder;
212
- }
213
- // ── Dropdown positioning ─────────────────────────────────────
214
- openDropdown() {
215
- if (this.disabled)
216
- return;
217
- const rect = this.buttonRef.getBoundingClientRect();
218
- const viewportHeight = window.innerHeight;
219
- const dropdownHeight = 250;
220
- const spaceBelow = viewportHeight - rect.bottom;
221
- const top = spaceBelow >= dropdownHeight
222
- ? rect.bottom + 4
223
- : rect.top - dropdownHeight - 4;
224
- this.dropdownStyle = {
225
- top: `${top}px`,
226
- left: `${rect.left}px`,
227
- width: `${rect.width}px`,
228
- };
229
- this.isOpen = true;
230
- if (this.searchEnabled) {
231
- setTimeout(() => {
232
- const searchInput = this.el.shadowRoot?.querySelector('.search-input');
233
- searchInput?.focus();
234
- }, 50);
235
- }
236
- }
237
- closeDropdown() {
238
- this.isOpen = false;
239
- this.searchTerm = '';
240
- this.filteredOptions = [...this.options];
241
- }
242
- toggleDropdown() {
243
- this.isOpen ? this.closeDropdown() : this.openDropdown();
244
- }
245
- // ── Option selection ─────────────────────────────────────────
246
- selectOption(option) {
247
- if (option.disabled)
248
- return;
249
- if (this.multiSelect) {
250
- const idx = this.multiSelected.findIndex(o => o.id === option.id);
251
- if (idx >= 0) {
252
- this.multiSelected = this.multiSelected.filter(o => o.id !== option.id);
253
- }
254
- else {
255
- this.multiSelected = [...this.multiSelected, option];
256
- }
257
- this.internals.setFormValue(this.multiSelected.map(o => o.id).join(','));
258
- this.onChangeSelect.emit([...this.multiSelected]);
259
- }
260
- else {
261
- this._selectedOption = option;
262
- this.internals.setFormValue(String(option.id));
263
- this.onChangeSelect.emit(option);
264
- this.closeDropdown();
265
- }
266
- }
267
- isOptionChecked(option) {
268
- return this.multiSelected.some(o => o.id === option.id);
269
- }
270
- // ── Search ───────────────────────────────────────────────────
271
- handleSearch(term) {
272
- this.searchTerm = term;
273
- this.onSearch.emit(term);
274
- const lower = term.toLowerCase().trim();
275
- if (!lower) {
276
- this.filteredOptions = [...this.options];
277
- return;
278
- }
279
- if (this.isGrouped) {
280
- this.filteredOptions = this.options
281
- .map(g => ({ ...g, options: g.options.filter(o => o.label.toLowerCase().includes(lower)) }))
282
- .filter(g => g.options.length > 0);
283
- }
284
- else {
285
- this.filteredOptions = this.options.filter(o => o.label.toLowerCase().includes(lower));
286
- }
287
- }
288
- // ── Scroll to end ─────────────────────────────────────────────
289
- handleScroll(e) {
290
- const el = e.target;
291
- clearTimeout(this.scrollDebounce);
292
- this.scrollDebounce = setTimeout(() => {
293
- if (!el)
294
- return;
295
- const distFromBottom = el.scrollHeight - el.scrollTop - el.clientHeight;
296
- const threshold = Math.min(50, el.clientHeight / 2);
297
- if (el.scrollTop < this.lastScrollTop)
298
- this.hasEmittedScrollEnd = false;
299
- this.lastScrollTop = el.scrollTop;
300
- if (distFromBottom <= threshold && !this.hasEmittedScrollEnd) {
301
- this.scrolledToEnd.emit();
302
- this.hasEmittedScrollEnd = true;
303
- setTimeout(() => { this.hasEmittedScrollEnd = false; }, 1000);
304
- }
305
- }, 100);
306
- }
307
- // ── Render helpers ───────────────────────────────────────────
308
- renderTrigger() {
309
- const isCompleted = this.multiSelect ? this.multiSelected.length > 0 : !!this._selectedOption;
310
- const iconColor = this.disabled ? 'Gray-Gray-300' : this.dropdownType ? 'Gray-Gray-600' : 'Gray-Gray-400';
311
- const iconSize = this.dropdownType ? '24px' : '20px';
312
- return (h("button", { type: "button", class: {
313
- 'select-button': true,
314
- 'select-completed': isCompleted,
315
- 'select-button-error': this.hasError,
316
- 'no-border': this.dropdownType,
317
- }, disabled: this.disabled, ref: el => (this.buttonRef = el), onClick: () => this.toggleDropdown() }, h("div", { class: {
318
- 'button-content': true,
319
- 'option-radio': this.radioOptions && !!this._selectedOption && !this.multiSelect,
320
- } }, this.preIcon && (h("dropi-icon", { name: this.preIcon, width: "20px", height: "20px", color: "Gray-Gray-500" })), this.radioOptions && this._selectedOption && !this.multiSelect && [
321
- this._selectedOption.imageUrl && !this._selectedOption.isFallback
322
- ? h("img", { class: "option-image small-image", src: this._selectedOption.imageUrl, alt: "", onError: () => {
323
- if (this._selectedOption)
324
- this._selectedOption = { ...this._selectedOption, isFallback: true };
325
- } })
326
- : this._selectedOption.isFallback
327
- ? h("span", { class: "option-image-fallback small-image" }, this._selectedOption.label.charAt(0).toUpperCase())
328
- : null,
329
- h("div", { class: "labels-container elipsis" }, h("span", null, this._selectedOption.label), this._selectedOption.secondLabel && h("span", { class: "option-second-label" }, this._selectedOption.secondLabel)),
330
- ], !(this.radioOptions && this._selectedOption && !this.multiSelect) && (h("div", { class: "elipsis" }, this.triggerLabel))), h("dropi-icon", { name: this.isOpen ? 'Dropdown-up' : 'Dropdown-down', width: iconSize, height: iconSize, color: iconColor })));
331
- }
332
- renderOption(option) {
333
- const isSelected = this.multiSelect
334
- ? this.isOptionChecked(option)
335
- : this._selectedOption?.id === option.id;
336
- return (h("li", { key: option.id }, h("button", { type: "button", class: {
337
- option: true,
338
- 'option-radio': this.radioOptions,
339
- 'option-with-flag': this.showCountryFlags && !!option.countryCode,
340
- 'disabled-option': !!option.disabled,
341
- 'selected-option': isSelected,
342
- }, disabled: option.disabled, onClick: () => this.selectOption(option) }, this.multiSelect && (h("span", { class: { 'multi-checkbox': true, checked: isSelected } }, isSelected && (h("svg", { width: "10", height: "10", viewBox: "0 0 24 24", fill: "none" }, h("path", { d: "M20.6 5.7L9.1 17.2c-.2.2-.5.3-.8.3s-.6-.1-.8-.3L3 12.8c-.4-.4-.4-1 0-1.4.4-.4 1-.4 1.4 0l3.9 3.9L19.2 4.3c.4-.4 1-.4 1.4 0 .4.4.4 1 0 1.4z", fill: "white" }))))), this.radioOptions && (h("div", { class: { radio: true, selected: isSelected } }, isSelected && h("div", { class: "circle" }))), !this.radioOptions && option.preIcon && (h("dropi-icon", { name: option.preIcon, width: "20px", height: "20px", color: "Gray-Gray-500" })), this.radioOptions && option.imageUrl && !option.isFallback && (h("img", { class: "option-image", src: option.imageUrl, alt: "", onError: () => { option.isFallback = true; this.options = [...this.options]; } })), this.radioOptions && option.isFallback && (h("span", { class: "option-image-fallback" }, option.label.charAt(0).toUpperCase())), this.showCountryFlags && option.countryCode && (h("span", { class: "flag-placeholder" }, option.countryCode)), this.radioOptions
343
- ? (h("div", { class: "labels-container" }, h("span", { class: "elipsis" }, option.label), option.secondLabel && h("span", { class: "option-second-label" }, option.secondLabel)))
344
- : (h("span", { class: "elipsis" }, this.showCountryFlags && option.shortLabel ? option.shortLabel : option.label)))));
345
- }
346
- renderDropdown() {
347
- if (!this.isOpen)
348
- return null;
349
- return (h("ul", { class: `select-dropdown-overlay ${this.overlayClass}`, style: this.dropdownStyle, onScroll: (e) => this.handleScroll(e) }, this.searchEnabled && (h("li", { class: "sticky-search" }, h("div", { class: "search-wrapper" }, h("dropi-icon", { name: "Search", width: "16px", height: "16px", color: "Gray-Gray-400" }), h("input", { class: "search-input", type: "text", placeholder: this.placeHolderSearch, value: this.searchTerm, onInput: (e) => this.handleSearch(e.target.value), onKeyDown: (e) => {
350
- if (e.key === 'Enter')
351
- this.onKeyEnter.emit(e);
352
- } }), this.searchTerm && (h("button", { type: "button", class: "search-clear", onClick: () => this.handleSearch('') }, h("dropi-icon", { name: "Close", width: "14px", height: "14px", color: "Gray-Gray-400" })))))), this.isGrouped && this.filteredOptions.map(group => [
353
- h("li", { class: "option-group-title" }, group.category),
354
- ...group.options.map(opt => (h("li", { key: opt.id }, h("button", { type: "button", class: { option: true, 'option-group': true, 'disabled-option': !!opt.disabled }, disabled: opt.disabled, onClick: () => this.selectOption(opt) }, opt.preIcon && h("dropi-icon", { name: opt.preIcon, width: "20px", height: "20px", color: "Gray-Gray-500" }), h("span", { class: "elipsis" }, opt.label))))),
355
- ]), !this.isGrouped && this.filteredOptions.map(opt => this.renderOption(opt)), this.filteredOptions.length === 0 && (h("li", { class: "no-results" }, "Sin resultados"))));
356
- }
357
- render() {
358
- return (h("div", { key: 'daa9915ec481b2a7d1bb6a74abf9c5ac7f5c8abd', class: "custom-select" }, !this.dropdownType && this.label && (h("label", { key: '184da51081bd5f31220670dd846c07dab8b8caea', class: { 'disabled-label': this.disabled } }, this.label, this.showObligatory && !this.disabled && h("span", { key: '5bfe13da6e2cd1cbf151a87b6cf987d20581afbe', class: "asterisk" }, " *"))), h("div", { key: 'e5c55f5d269cd0c6fe532b18e5b12e86399504ae', class: "dropdown-container" }, this.dropdownType && this.label && (h("div", { key: 'b49dd08e94004da615553a6ffd85097a16357c0e', class: "left-label" }, this.label)), this.renderTrigger()), this.textHelper && !this.hasError && (h("div", { key: '28d9fa19c9c5f8d4fbea5643e606cae70613dcee', class: "select-helper" }, h("span", { key: '078e8b23953a41e8cd99eab055322ceb543afeb3' }, this.textHelper))), this.hasError && this.errorText && (h("div", { key: '746c5293426a3bbe8327e349a484465a4995b135', class: "select-helper-error" }, h("dropi-icon", { key: '34d227f3e0d92c490f617d1624b5ef84c2647df5', name: "Warning-circle", width: "12px", height: "12px", color: "Error-Error-500" }), h("span", { key: 'd90c7e1fd0e8c7c40d35ec7dc9e4648d448bf559' }, this.errorText))), this.renderDropdown()));
359
- }
360
- static get is() { return "dropi-select"; }
361
- static get encapsulation() { return "shadow"; }
362
- static get formAssociated() { return true; }
363
- static get originalStyleUrls() {
364
- return {
365
- "$": ["dropi-select.css"]
366
- };
367
- }
368
- static get styleUrls() {
369
- return {
370
- "$": ["dropi-select.css"]
371
- };
372
- }
373
- static get properties() {
374
- return {
375
- "label": {
376
- "type": "string",
377
- "mutable": true,
378
- "complexType": {
379
- "original": "string",
380
- "resolved": "string",
381
- "references": {}
382
- },
383
- "required": false,
384
- "optional": false,
385
- "docs": {
386
- "tags": [],
387
- "text": ""
388
- },
389
- "getter": false,
390
- "setter": false,
391
- "reflect": false,
392
- "attribute": "label",
393
- "defaultValue": "''"
394
- },
395
- "placeholder": {
396
- "type": "string",
397
- "mutable": true,
398
- "complexType": {
399
- "original": "string",
400
- "resolved": "string",
401
- "references": {}
402
- },
403
- "required": false,
404
- "optional": false,
405
- "docs": {
406
- "tags": [],
407
- "text": ""
408
- },
409
- "getter": false,
410
- "setter": false,
411
- "reflect": false,
412
- "attribute": "placeholder",
413
- "defaultValue": "'Select'"
414
- },
415
- "options": {
416
- "type": "unknown",
417
- "mutable": true,
418
- "complexType": {
419
- "original": "SelectOption[] | SelectOptionGroup[]",
420
- "resolved": "SelectOptionGroup[] | SelectOption[]",
421
- "references": {
422
- "SelectOption": {
423
- "location": "import",
424
- "path": "./select.types",
425
- "id": "src/components/dropi-select/select.types.ts::SelectOption",
426
- "referenceLocation": "SelectOption"
427
- },
428
- "SelectOptionGroup": {
429
- "location": "import",
430
- "path": "./select.types",
431
- "id": "src/components/dropi-select/select.types.ts::SelectOptionGroup",
432
- "referenceLocation": "SelectOptionGroup"
433
- }
434
- }
435
- },
436
- "required": false,
437
- "optional": false,
438
- "docs": {
439
- "tags": [],
440
- "text": "Array of SelectOption or SelectOptionGroup"
441
- },
442
- "getter": false,
443
- "setter": false,
444
- "defaultValue": "[]"
445
- },
446
- "name": {
447
- "type": "string",
448
- "mutable": false,
449
- "complexType": {
450
- "original": "string",
451
- "resolved": "string",
452
- "references": {}
453
- },
454
- "required": false,
455
- "optional": false,
456
- "docs": {
457
- "tags": [],
458
- "text": ""
459
- },
460
- "getter": false,
461
- "setter": false,
462
- "reflect": false,
463
- "attribute": "name",
464
- "defaultValue": "''"
465
- },
466
- "disabled": {
467
- "type": "boolean",
468
- "mutable": false,
469
- "complexType": {
470
- "original": "boolean",
471
- "resolved": "boolean",
472
- "references": {}
473
- },
474
- "required": false,
475
- "optional": false,
476
- "docs": {
477
- "tags": [],
478
- "text": ""
479
- },
480
- "getter": false,
481
- "setter": false,
482
- "reflect": true,
483
- "attribute": "disabled",
484
- "defaultValue": "false"
485
- },
486
- "hasError": {
487
- "type": "boolean",
488
- "mutable": true,
489
- "complexType": {
490
- "original": "boolean",
491
- "resolved": "boolean",
492
- "references": {}
493
- },
494
- "required": false,
495
- "optional": false,
496
- "docs": {
497
- "tags": [],
498
- "text": ""
499
- },
500
- "getter": false,
501
- "setter": false,
502
- "reflect": false,
503
- "attribute": "has-error",
504
- "defaultValue": "false"
505
- },
506
- "errorText": {
507
- "type": "string",
508
- "mutable": true,
509
- "complexType": {
510
- "original": "string",
511
- "resolved": "string",
512
- "references": {}
513
- },
514
- "required": false,
515
- "optional": false,
516
- "docs": {
517
- "tags": [],
518
- "text": ""
519
- },
520
- "getter": false,
521
- "setter": false,
522
- "reflect": false,
523
- "attribute": "error-text",
524
- "defaultValue": "''"
525
- },
526
- "textHelper": {
527
- "type": "string",
528
- "mutable": true,
529
- "complexType": {
530
- "original": "string",
531
- "resolved": "string",
532
- "references": {}
533
- },
534
- "required": false,
535
- "optional": false,
536
- "docs": {
537
- "tags": [],
538
- "text": ""
539
- },
540
- "getter": false,
541
- "setter": false,
542
- "reflect": false,
543
- "attribute": "text-helper",
544
- "defaultValue": "''"
545
- },
546
- "showObligatory": {
547
- "type": "boolean",
548
- "mutable": true,
549
- "complexType": {
550
- "original": "boolean",
551
- "resolved": "boolean",
552
- "references": {}
553
- },
554
- "required": false,
555
- "optional": false,
556
- "docs": {
557
- "tags": [],
558
- "text": ""
559
- },
560
- "getter": false,
561
- "setter": false,
562
- "reflect": false,
563
- "attribute": "show-obligatory",
564
- "defaultValue": "false"
565
- },
566
- "searchEnabled": {
567
- "type": "boolean",
568
- "mutable": true,
569
- "complexType": {
570
- "original": "boolean",
571
- "resolved": "boolean",
572
- "references": {}
573
- },
574
- "required": false,
575
- "optional": false,
576
- "docs": {
577
- "tags": [],
578
- "text": "Enables text search inside the dropdown"
579
- },
580
- "getter": false,
581
- "setter": false,
582
- "reflect": false,
583
- "attribute": "search-enabled",
584
- "defaultValue": "false"
585
- },
586
- "multiSelect": {
587
- "type": "boolean",
588
- "mutable": true,
589
- "complexType": {
590
- "original": "boolean",
591
- "resolved": "boolean",
592
- "references": {}
593
- },
594
- "required": false,
595
- "optional": false,
596
- "docs": {
597
- "tags": [],
598
- "text": "Allows selecting multiple options"
599
- },
600
- "getter": false,
601
- "setter": false,
602
- "reflect": false,
603
- "attribute": "multi-select",
604
- "defaultValue": "false"
605
- },
606
- "dropdownType": {
607
- "type": "boolean",
608
- "mutable": true,
609
- "complexType": {
610
- "original": "boolean",
611
- "resolved": "boolean",
612
- "references": {}
613
- },
614
- "required": false,
615
- "optional": false,
616
- "docs": {
617
- "tags": [],
618
- "text": "Renders trigger without border (inline/dropdown style)"
619
- },
620
- "getter": false,
621
- "setter": false,
622
- "reflect": false,
623
- "attribute": "dropdown-type",
624
- "defaultValue": "false"
625
- },
626
- "showCountryFlags": {
627
- "type": "boolean",
628
- "mutable": false,
629
- "complexType": {
630
- "original": "boolean",
631
- "resolved": "boolean",
632
- "references": {}
633
- },
634
- "required": false,
635
- "optional": false,
636
- "docs": {
637
- "tags": [],
638
- "text": "Show country flags next to option labels"
639
- },
640
- "getter": false,
641
- "setter": false,
642
- "reflect": false,
643
- "attribute": "show-country-flags",
644
- "defaultValue": "false"
645
- },
646
- "radioOptions": {
647
- "type": "boolean",
648
- "mutable": true,
649
- "complexType": {
650
- "original": "boolean",
651
- "resolved": "boolean",
652
- "references": {}
653
- },
654
- "required": false,
655
- "optional": false,
656
- "docs": {
657
- "tags": [],
658
- "text": "Renders options as radio buttons with optional image"
659
- },
660
- "getter": false,
661
- "setter": false,
662
- "reflect": false,
663
- "attribute": "radio-options",
664
- "defaultValue": "false"
665
- },
666
- "placeHolderSearch": {
667
- "type": "string",
668
- "mutable": false,
669
- "complexType": {
670
- "original": "string",
671
- "resolved": "string",
672
- "references": {}
673
- },
674
- "required": false,
675
- "optional": false,
676
- "docs": {
677
- "tags": [],
678
- "text": "Placeholder inside the search field"
679
- },
680
- "getter": false,
681
- "setter": false,
682
- "reflect": false,
683
- "attribute": "place-holder-search",
684
- "defaultValue": "'Buscar'"
685
- },
686
- "preIcon": {
687
- "type": "string",
688
- "mutable": true,
689
- "complexType": {
690
- "original": "string",
691
- "resolved": "string",
692
- "references": {}
693
- },
694
- "required": false,
695
- "optional": false,
696
- "docs": {
697
- "tags": [],
698
- "text": "Icon name shown before the trigger label"
699
- },
700
- "getter": false,
701
- "setter": false,
702
- "reflect": false,
703
- "attribute": "pre-icon",
704
- "defaultValue": "''"
705
- },
706
- "defaultSelectedId": {
707
- "type": "any",
708
- "mutable": true,
709
- "complexType": {
710
- "original": "string | number",
711
- "resolved": "number | string",
712
- "references": {}
713
- },
714
- "required": false,
715
- "optional": false,
716
- "docs": {
717
- "tags": [],
718
- "text": "Pre-select an option by id"
719
- },
720
- "getter": false,
721
- "setter": false,
722
- "reflect": false,
723
- "attribute": "default-selected-id"
724
- },
725
- "selectedOption": {
726
- "type": "unknown",
727
- "mutable": true,
728
- "complexType": {
729
- "original": "SelectOption | null",
730
- "resolved": "SelectOption",
731
- "references": {
732
- "SelectOption": {
733
- "location": "import",
734
- "path": "./select.types",
735
- "id": "src/components/dropi-select/select.types.ts::SelectOption",
736
- "referenceLocation": "SelectOption"
737
- }
738
- }
739
- },
740
- "required": false,
741
- "optional": false,
742
- "docs": {
743
- "tags": [],
744
- "text": "Controlled selected option (single select) - matches Angular 'selectedOption'"
745
- },
746
- "getter": false,
747
- "setter": false,
748
- "defaultValue": "null"
749
- },
750
- "overlayClass": {
751
- "type": "string",
752
- "mutable": false,
753
- "complexType": {
754
- "original": "string",
755
- "resolved": "string",
756
- "references": {}
757
- },
758
- "required": false,
759
- "optional": false,
760
- "docs": {
761
- "tags": [],
762
- "text": "Custom CSS class for the dropdown overlay"
763
- },
764
- "getter": false,
765
- "setter": false,
766
- "reflect": false,
767
- "attribute": "overlay-class",
768
- "defaultValue": "''"
769
- },
770
- "selectProperties": {
771
- "type": "any",
772
- "mutable": false,
773
- "complexType": {
774
- "original": "any",
775
- "resolved": "any",
776
- "references": {}
777
- },
778
- "required": false,
779
- "optional": false,
780
- "docs": {
781
- "tags": [],
782
- "text": "Convenience object prop \u2014 matches Angular `selectProperties: SelectProperties`.\nFields: label, placeholder, options, showObligatory, textHelper,\nsearchEnabled, multiSelect, dropdownType, hasError, errorText,\nradioOptions, preIcon.\nWhen provided, its non-null fields override individual props."
783
- },
784
- "getter": false,
785
- "setter": false,
786
- "reflect": false,
787
- "attribute": "select-properties",
788
- "defaultValue": "null"
789
- }
790
- };
791
- }
792
- static get states() {
793
- return {
794
- "isOpen": {},
795
- "_selectedOption": {},
796
- "multiSelected": {},
797
- "filteredOptions": {},
798
- "searchTerm": {},
799
- "dropdownStyle": {}
800
- };
801
- }
802
- static get events() {
803
- return [{
804
- "method": "onChangeSelect",
805
- "name": "onChangeSelect",
806
- "bubbles": true,
807
- "cancelable": true,
808
- "composed": true,
809
- "docs": {
810
- "tags": [],
811
- "text": "Emitted when an option is selected \u2014 matches Angular 'onChangeSelect'"
812
- },
813
- "complexType": {
814
- "original": "SelectOption | SelectOption[]",
815
- "resolved": "SelectOption | SelectOption[]",
816
- "references": {
817
- "SelectOption": {
818
- "location": "import",
819
- "path": "./select.types",
820
- "id": "src/components/dropi-select/select.types.ts::SelectOption",
821
- "referenceLocation": "SelectOption"
822
- }
823
- }
824
- }
825
- }, {
826
- "method": "onClear",
827
- "name": "onClear",
828
- "bubbles": true,
829
- "cancelable": true,
830
- "composed": true,
831
- "docs": {
832
- "tags": [],
833
- "text": "Emitted when the selection is cleared \u2014 matches Angular 'onClear'"
834
- },
835
- "complexType": {
836
- "original": "void",
837
- "resolved": "void",
838
- "references": {}
839
- }
840
- }, {
841
- "method": "onSearch",
842
- "name": "onSearch",
843
- "bubbles": true,
844
- "cancelable": true,
845
- "composed": true,
846
- "docs": {
847
- "tags": [],
848
- "text": "Emitted on search input \u2014 matches Angular 'onSearch'"
849
- },
850
- "complexType": {
851
- "original": "string",
852
- "resolved": "string",
853
- "references": {}
854
- }
855
- }, {
856
- "method": "scrolledToEnd",
857
- "name": "scrolledToEnd",
858
- "bubbles": true,
859
- "cancelable": true,
860
- "composed": true,
861
- "docs": {
862
- "tags": [],
863
- "text": "Emitted when the list is scrolled to the end \u2014 matches Angular 'scrolledToEnd'"
864
- },
865
- "complexType": {
866
- "original": "void",
867
- "resolved": "void",
868
- "references": {}
869
- }
870
- }, {
871
- "method": "onKeyEnter",
872
- "name": "onKeyEnter",
873
- "bubbles": true,
874
- "cancelable": true,
875
- "composed": true,
876
- "docs": {
877
- "tags": [],
878
- "text": "Emitted on Enter key inside search \u2014 matches Angular 'onKeyEnter'"
879
- },
880
- "complexType": {
881
- "original": "KeyboardEvent",
882
- "resolved": "KeyboardEvent",
883
- "references": {
884
- "KeyboardEvent": {
885
- "location": "global",
886
- "id": "global::KeyboardEvent"
887
- }
888
- }
889
- }
890
- }];
891
- }
892
- static get methods() {
893
- return {
894
- "setById": {
895
- "complexType": {
896
- "signature": "(id: string | number) => Promise<void>",
897
- "parameters": [{
898
- "name": "id",
899
- "type": "string | number",
900
- "docs": ""
901
- }],
902
- "references": {
903
- "Promise": {
904
- "location": "global",
905
- "id": "global::Promise"
906
- },
907
- "SelectOption": {
908
- "location": "import",
909
- "path": "./select.types",
910
- "id": "src/components/dropi-select/select.types.ts::SelectOption",
911
- "referenceLocation": "SelectOption"
912
- }
913
- },
914
- "return": "Promise<void>"
915
- },
916
- "docs": {
917
- "text": "Select an option by its id",
918
- "tags": []
919
- }
920
- },
921
- "setByLabel": {
922
- "complexType": {
923
- "signature": "(label: string) => Promise<void>",
924
- "parameters": [{
925
- "name": "label",
926
- "type": "string",
927
- "docs": ""
928
- }],
929
- "references": {
930
- "Promise": {
931
- "location": "global",
932
- "id": "global::Promise"
933
- },
934
- "SelectOption": {
935
- "location": "import",
936
- "path": "./select.types",
937
- "id": "src/components/dropi-select/select.types.ts::SelectOption",
938
- "referenceLocation": "SelectOption"
939
- }
940
- },
941
- "return": "Promise<void>"
942
- },
943
- "docs": {
944
- "text": "Select an option by its label",
945
- "tags": []
946
- }
947
- },
948
- "clearSelection": {
949
- "complexType": {
950
- "signature": "() => Promise<void>",
951
- "parameters": [],
952
- "references": {
953
- "Promise": {
954
- "location": "global",
955
- "id": "global::Promise"
956
- }
957
- },
958
- "return": "Promise<void>"
959
- },
960
- "docs": {
961
- "text": "Clear the current selection",
962
- "tags": []
963
- }
964
- },
965
- "resetMultiSelect": {
966
- "complexType": {
967
- "signature": "(_placeholder?: string) => Promise<void>",
968
- "parameters": [{
969
- "name": "_placeholder",
970
- "type": "string",
971
- "docs": ""
972
- }],
973
- "references": {
974
- "Promise": {
975
- "location": "global",
976
- "id": "global::Promise"
977
- }
978
- },
979
- "return": "Promise<void>"
980
- },
981
- "docs": {
982
- "text": "Reset multi-select state and show a placeholder label",
983
- "tags": []
984
- }
985
- }
986
- };
987
- }
988
- static get elementRef() { return "el"; }
989
- static get watchers() {
990
- return [{
991
- "propName": "selectProperties",
992
- "methodName": "selectPropertiesChanged"
993
- }, {
994
- "propName": "options",
995
- "methodName": "optionsChanged"
996
- }, {
997
- "propName": "defaultSelectedId",
998
- "methodName": "defaultChanged"
999
- }, {
1000
- "propName": "selectedOption",
1001
- "methodName": "valueChanged"
1002
- }];
1003
- }
1004
- static get listeners() {
1005
- return [{
1006
- "name": "click",
1007
- "method": "handleOutsideClick",
1008
- "target": "document",
1009
- "capture": false,
1010
- "passive": false
1011
- }];
1012
- }
1013
- static get attachInternalsMemberName() { return "internals"; }
1014
- }