@paperless/core 1.65.0 → 1.67.0

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 (379) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/dist/{paperless/p-cb2674b5.entry.js → build/p-0a95044f.entry.js} +2 -2
  3. package/dist/build/p-0c2cc6c4.js +3 -0
  4. package/dist/build/p-0c2cc6c4.js.map +1 -0
  5. package/dist/build/{p-a2b552f9.entry.js → p-13f61347.entry.js} +2 -2
  6. package/dist/build/{p-8af4e8e9.entry.js → p-18f3cc52.entry.js} +2 -2
  7. package/dist/build/{p-639665b1.entry.js → p-198fac52.entry.js} +2 -2
  8. package/dist/build/p-1a725037.entry.js +2 -0
  9. package/dist/build/p-1a725037.entry.js.map +1 -0
  10. package/dist/build/{p-606ad811.entry.js → p-1ce5f595.entry.js} +2 -2
  11. package/dist/{paperless/p-f2a896ba.entry.js → build/p-1dbb398d.entry.js} +2 -2
  12. package/dist/build/p-1dbb398d.entry.js.map +1 -0
  13. package/dist/build/p-2360542e.entry.js +2 -0
  14. package/dist/build/p-2360542e.entry.js.map +1 -0
  15. package/dist/build/{p-cf7bd354.entry.js → p-2489f548.entry.js} +2 -2
  16. package/dist/build/{p-8426ca20.entry.js → p-26d28e15.entry.js} +2 -2
  17. package/dist/build/{p-b59115c3.entry.js → p-27ecc564.entry.js} +2 -2
  18. package/dist/build/{p-3755da14.entry.js → p-2e258b57.entry.js} +2 -2
  19. package/dist/build/{p-5b062bc3.entry.js → p-2ff0302a.entry.js} +2 -2
  20. package/dist/{paperless/p-30c9f5e3.entry.js → build/p-311e879a.entry.js} +2 -2
  21. package/dist/build/{p-d0796984.entry.js → p-31b09b93.entry.js} +2 -2
  22. package/dist/build/{p-7793ba3a.entry.js → p-32ec455c.entry.js} +2 -2
  23. package/dist/build/{p-ec15ee73.entry.js → p-4fe3d53a.entry.js} +2 -2
  24. package/dist/{paperless/p-dd070ee8.entry.js → build/p-4feb9ce7.entry.js} +2 -2
  25. package/dist/build/{p-00d4647f.entry.js → p-64aff6f3.entry.js} +2 -2
  26. package/dist/{paperless/p-eebab75d.entry.js → build/p-744f5a41.entry.js} +2 -2
  27. package/dist/build/{p-d8641c29.entry.js → p-7f41fb25.entry.js} +2 -2
  28. package/dist/{paperless/p-89fd4150.entry.js → build/p-80053d24.entry.js} +2 -2
  29. package/dist/build/p-80053d24.entry.js.map +1 -0
  30. package/dist/build/{p-af6b813e.entry.js → p-88f1b5e6.entry.js} +2 -2
  31. package/dist/build/{p-179efb16.entry.js → p-8b1a63cb.entry.js} +2 -2
  32. package/dist/build/{p-2becd73c.entry.js → p-9671e4e1.entry.js} +2 -2
  33. package/dist/build/{p-0b0c43cc.entry.js → p-9c1e350b.entry.js} +2 -2
  34. package/dist/build/{p-d7f2d4d3.entry.js → p-9c9ea527.entry.js} +2 -2
  35. package/dist/build/{p-7bf042c9.entry.js → p-a11cf84a.entry.js} +2 -2
  36. package/dist/build/p-a5770573.entry.js +2 -0
  37. package/dist/build/p-ac60e1f8.entry.js +2 -0
  38. package/dist/build/p-ac60e1f8.entry.js.map +1 -0
  39. package/dist/build/{p-576b6378.entry.js → p-ad9468a6.entry.js} +2 -2
  40. package/dist/build/{p-dace47c5.entry.js → p-af71e807.entry.js} +2 -2
  41. package/dist/{paperless/p-2cd5062f.entry.js → build/p-bcb8549b.entry.js} +2 -2
  42. package/dist/build/{p-ec29eed0.entry.js → p-bd4ba06f.entry.js} +2 -2
  43. package/dist/{paperless/p-bbe63029.entry.js → build/p-c1bac1cf.entry.js} +2 -2
  44. package/dist/{paperless/p-95dc4bd3.entry.js → build/p-c4d17d60.entry.js} +2 -2
  45. package/dist/build/{p-2c2cf3cf.entry.js → p-ca87bbc1.entry.js} +2 -2
  46. package/dist/{paperless/p-35c563a7.entry.js → build/p-d4b10d27.entry.js} +2 -2
  47. package/dist/{paperless/p-01adf065.entry.js → build/p-dbd732ab.entry.js} +2 -2
  48. package/dist/build/{p-a37d182e.entry.js → p-de0f4cf1.entry.js} +2 -2
  49. package/dist/build/{p-ec315c58.entry.js → p-de9f7dc2.entry.js} +2 -2
  50. package/dist/build/{p-0cbff44f.entry.js → p-ec1584ef.entry.js} +2 -2
  51. package/dist/build/{p-0f5c5693.entry.js → p-f07e2154.entry.js} +2 -2
  52. package/dist/{paperless/p-699e0b35.entry.js → build/p-f2865277.entry.js} +2 -2
  53. package/dist/build/p-f95b1425.entry.js +2 -0
  54. package/dist/build/{p-4c30c74b.entry.js → p-fae6af23.entry.js} +2 -2
  55. package/dist/build/paperless.esm.js +1 -1
  56. package/dist/build/paperless.esm.js.map +1 -1
  57. package/dist/cjs/{index-1fde8b14.js → index-d4e6d9da.js} +79 -6
  58. package/dist/cjs/{index-1fde8b14.js.map → index-d4e6d9da.js.map} +1 -1
  59. package/dist/cjs/loader.cjs.js +2 -2
  60. package/dist/cjs/p-accordion.cjs.entry.js +1 -1
  61. package/dist/cjs/p-attachment.cjs.entry.js +1 -1
  62. package/dist/cjs/p-avatar-group.cjs.entry.js +1 -1
  63. package/dist/cjs/p-avatar.cjs.entry.js +1 -1
  64. package/dist/cjs/p-backdrop.cjs.entry.js +1 -1
  65. package/dist/cjs/p-button-group.cjs.entry.js +1 -1
  66. package/dist/cjs/p-button_3.cjs.entry.js +1 -1
  67. package/dist/cjs/p-calendar.cjs.entry.js +1 -1
  68. package/dist/cjs/p-card-body.cjs.entry.js +1 -1
  69. package/dist/cjs/p-card-container.cjs.entry.js +1 -1
  70. package/dist/cjs/p-card-header.cjs.entry.js +1 -1
  71. package/dist/cjs/p-content-slider.cjs.entry.js +1 -1
  72. package/dist/cjs/p-counter.cjs.entry.js +1 -1
  73. package/dist/cjs/p-cropper.cjs.entry.js +1 -1
  74. package/dist/cjs/p-datepicker.cjs.entry.js +1 -1
  75. package/dist/cjs/p-divider.cjs.entry.js +1 -1
  76. package/dist/cjs/p-drawer-body_3.cjs.entry.js +1 -1
  77. package/dist/cjs/p-drawer.cjs.entry.js +1 -1
  78. package/dist/cjs/p-dropdown-menu-container_2.cjs.entry.js +47 -0
  79. package/dist/cjs/p-dropdown-menu-container_2.cjs.entry.js.map +1 -0
  80. package/dist/cjs/p-dropdown_2.cjs.entry.js +38 -17
  81. package/dist/cjs/p-dropdown_2.cjs.entry.js.map +1 -1
  82. package/dist/cjs/p-floating-menu-container_8.cjs.entry.js +1 -1
  83. package/dist/cjs/p-helper_3.cjs.entry.js +15 -16
  84. package/dist/cjs/p-helper_3.cjs.entry.js.map +1 -1
  85. package/dist/cjs/p-iban-icon.cjs.entry.js +1 -1
  86. package/dist/cjs/p-info-panel.cjs.entry.js +1 -1
  87. package/dist/cjs/p-label_3.cjs.entry.js +1 -1
  88. package/dist/cjs/p-layout.cjs.entry.js +1 -1
  89. package/dist/cjs/p-modal-body_4.cjs.entry.js +1 -1
  90. package/dist/cjs/p-modal.cjs.entry.js +1 -1
  91. package/dist/cjs/p-navbar.cjs.entry.js +1 -1
  92. package/dist/cjs/p-navigation-item.cjs.entry.js +1 -1
  93. package/dist/cjs/p-page-size-select_3.cjs.entry.js +1 -1
  94. package/dist/cjs/p-profile.cjs.entry.js +6 -5
  95. package/dist/cjs/p-profile.cjs.entry.js.map +1 -1
  96. package/dist/cjs/p-select.cjs.entry.js +1 -1
  97. package/dist/cjs/p-select.cjs.entry.js.map +1 -1
  98. package/dist/cjs/p-slider-indicator.cjs.entry.js +1 -1
  99. package/dist/cjs/p-status.cjs.entry.js +1 -1
  100. package/dist/cjs/p-stepper-item.cjs.entry.js +1 -1
  101. package/dist/cjs/p-stepper-line.cjs.entry.js +1 -1
  102. package/dist/cjs/p-stepper.cjs.entry.js +1 -1
  103. package/dist/cjs/p-tab-group.cjs.entry.js +1 -1
  104. package/dist/cjs/p-tab-item.cjs.entry.js +1 -1
  105. package/dist/cjs/p-table-column.cjs.entry.js +1 -1
  106. package/dist/cjs/p-table-row-action.cjs.entry.js +1 -1
  107. package/dist/cjs/p-table.cjs.entry.js +1 -1
  108. package/dist/cjs/p-toast-container.cjs.entry.js +1 -1
  109. package/dist/cjs/p-toast.cjs.entry.js +1 -1
  110. package/dist/cjs/p-tooltip.cjs.entry.js +1 -1
  111. package/dist/cjs/paperless.cjs.js +2 -2
  112. package/dist/collection/collection-manifest.json +1 -0
  113. package/dist/collection/components/atoms/dropdown-menu-container/dropdown-menu-container.component.css +1 -1
  114. package/dist/collection/components/atoms/portal/portal.component.js +43 -0
  115. package/dist/collection/components/atoms/portal/portal.component.js.map +1 -0
  116. package/dist/collection/components/atoms/portal/test/portal.component.e2e.js +26 -0
  117. package/dist/collection/components/atoms/portal/test/portal.component.e2e.js.map +1 -0
  118. package/dist/collection/components/atoms/portal/test/portal.component.spec.js +17 -0
  119. package/dist/collection/components/atoms/portal/test/portal.component.spec.js.map +1 -0
  120. package/dist/collection/components/molecules/dropdown/dropdown.component.css +1 -1
  121. package/dist/collection/components/molecules/dropdown/dropdown.component.js +54 -16
  122. package/dist/collection/components/molecules/dropdown/dropdown.component.js.map +1 -1
  123. package/dist/collection/components/molecules/input-group/input-group.component.js +15 -16
  124. package/dist/collection/components/molecules/input-group/input-group.component.js.map +1 -1
  125. package/dist/collection/components/molecules/profile/profile.component.css +1 -1
  126. package/dist/collection/components/molecules/profile/profile.component.js +5 -4
  127. package/dist/collection/components/molecules/profile/profile.component.js.map +1 -1
  128. package/dist/collection/components/molecules/select/select.component.js.map +1 -1
  129. package/dist/components/dropdown-menu-container.component.js +1 -1
  130. package/dist/components/dropdown-menu-container.component.js.map +1 -1
  131. package/dist/components/dropdown.component.js +47 -20
  132. package/dist/components/dropdown.component.js.map +1 -1
  133. package/dist/components/input-group.component.js +14 -15
  134. package/dist/components/input-group.component.js.map +1 -1
  135. package/dist/components/p-datepicker.js +20 -14
  136. package/dist/components/p-datepicker.js.map +1 -1
  137. package/dist/components/p-portal.d.ts +11 -0
  138. package/dist/components/p-portal.js +8 -0
  139. package/dist/components/p-portal.js.map +1 -0
  140. package/dist/components/p-profile.js +17 -10
  141. package/dist/components/p-profile.js.map +1 -1
  142. package/dist/components/p-select.js +24 -18
  143. package/dist/components/p-select.js.map +1 -1
  144. package/dist/components/p-table.js +40 -34
  145. package/dist/components/p-table.js.map +1 -1
  146. package/dist/components/page-size-select.component.js +18 -12
  147. package/dist/components/page-size-select.component.js.map +1 -1
  148. package/dist/components/portal.component.js +42 -0
  149. package/dist/components/portal.component.js.map +1 -0
  150. package/dist/components/table-footer.component.js +24 -18
  151. package/dist/components/table-footer.component.js.map +1 -1
  152. package/dist/esm/{index-7b917f6b.js → index-f1f0954a.js} +79 -6
  153. package/dist/esm/{index-7b917f6b.js.map → index-f1f0954a.js.map} +1 -1
  154. package/dist/esm/loader.js +3 -3
  155. package/dist/esm/p-accordion.entry.js +1 -1
  156. package/dist/esm/p-attachment.entry.js +1 -1
  157. package/dist/esm/p-avatar-group.entry.js +1 -1
  158. package/dist/esm/p-avatar.entry.js +1 -1
  159. package/dist/esm/p-backdrop.entry.js +1 -1
  160. package/dist/esm/p-button-group.entry.js +1 -1
  161. package/dist/esm/p-button_3.entry.js +1 -1
  162. package/dist/esm/p-calendar.entry.js +1 -1
  163. package/dist/esm/p-card-body.entry.js +1 -1
  164. package/dist/esm/p-card-container.entry.js +1 -1
  165. package/dist/esm/p-card-header.entry.js +1 -1
  166. package/dist/esm/p-content-slider.entry.js +1 -1
  167. package/dist/esm/p-counter.entry.js +1 -1
  168. package/dist/esm/p-cropper.entry.js +1 -1
  169. package/dist/esm/p-datepicker.entry.js +1 -1
  170. package/dist/esm/p-divider.entry.js +1 -1
  171. package/dist/esm/p-drawer-body_3.entry.js +1 -1
  172. package/dist/esm/p-drawer.entry.js +1 -1
  173. package/dist/esm/p-dropdown-menu-container_2.entry.js +42 -0
  174. package/dist/esm/p-dropdown-menu-container_2.entry.js.map +1 -0
  175. package/dist/esm/p-dropdown_2.entry.js +38 -17
  176. package/dist/esm/p-dropdown_2.entry.js.map +1 -1
  177. package/dist/esm/p-floating-menu-container_8.entry.js +1 -1
  178. package/dist/esm/p-helper_3.entry.js +15 -16
  179. package/dist/esm/p-helper_3.entry.js.map +1 -1
  180. package/dist/esm/p-iban-icon.entry.js +1 -1
  181. package/dist/esm/p-info-panel.entry.js +1 -1
  182. package/dist/esm/p-label_3.entry.js +1 -1
  183. package/dist/esm/p-layout.entry.js +1 -1
  184. package/dist/esm/p-modal-body_4.entry.js +1 -1
  185. package/dist/esm/p-modal.entry.js +1 -1
  186. package/dist/esm/p-navbar.entry.js +1 -1
  187. package/dist/esm/p-navigation-item.entry.js +1 -1
  188. package/dist/esm/p-page-size-select_3.entry.js +1 -1
  189. package/dist/esm/p-profile.entry.js +6 -5
  190. package/dist/esm/p-profile.entry.js.map +1 -1
  191. package/dist/esm/p-select.entry.js +1 -1
  192. package/dist/esm/p-select.entry.js.map +1 -1
  193. package/dist/esm/p-slider-indicator.entry.js +1 -1
  194. package/dist/esm/p-status.entry.js +1 -1
  195. package/dist/esm/p-stepper-item.entry.js +1 -1
  196. package/dist/esm/p-stepper-line.entry.js +1 -1
  197. package/dist/esm/p-stepper.entry.js +1 -1
  198. package/dist/esm/p-tab-group.entry.js +1 -1
  199. package/dist/esm/p-tab-item.entry.js +1 -1
  200. package/dist/esm/p-table-column.entry.js +1 -1
  201. package/dist/esm/p-table-row-action.entry.js +1 -1
  202. package/dist/esm/p-table.entry.js +1 -1
  203. package/dist/esm/p-toast-container.entry.js +1 -1
  204. package/dist/esm/p-toast.entry.js +1 -1
  205. package/dist/esm/p-tooltip.entry.js +1 -1
  206. package/dist/esm/paperless.js +3 -3
  207. package/dist/index.html +1 -1
  208. package/dist/{build/p-cb2674b5.entry.js → paperless/p-0a95044f.entry.js} +2 -2
  209. package/dist/paperless/p-0c2cc6c4.js +3 -0
  210. package/dist/paperless/p-0c2cc6c4.js.map +1 -0
  211. package/dist/paperless/{p-a2b552f9.entry.js → p-13f61347.entry.js} +2 -2
  212. package/dist/paperless/{p-8af4e8e9.entry.js → p-18f3cc52.entry.js} +2 -2
  213. package/dist/paperless/{p-639665b1.entry.js → p-198fac52.entry.js} +2 -2
  214. package/dist/paperless/p-1a725037.entry.js +2 -0
  215. package/dist/paperless/p-1a725037.entry.js.map +1 -0
  216. package/dist/paperless/{p-606ad811.entry.js → p-1ce5f595.entry.js} +2 -2
  217. package/dist/{build/p-f2a896ba.entry.js → paperless/p-1dbb398d.entry.js} +2 -2
  218. package/dist/paperless/p-1dbb398d.entry.js.map +1 -0
  219. package/dist/paperless/p-2360542e.entry.js +2 -0
  220. package/dist/paperless/p-2360542e.entry.js.map +1 -0
  221. package/dist/paperless/{p-cf7bd354.entry.js → p-2489f548.entry.js} +2 -2
  222. package/dist/paperless/{p-8426ca20.entry.js → p-26d28e15.entry.js} +2 -2
  223. package/dist/paperless/{p-b59115c3.entry.js → p-27ecc564.entry.js} +2 -2
  224. package/dist/paperless/{p-3755da14.entry.js → p-2e258b57.entry.js} +2 -2
  225. package/dist/paperless/{p-5b062bc3.entry.js → p-2ff0302a.entry.js} +2 -2
  226. package/dist/{build/p-30c9f5e3.entry.js → paperless/p-311e879a.entry.js} +2 -2
  227. package/dist/paperless/{p-d0796984.entry.js → p-31b09b93.entry.js} +2 -2
  228. package/dist/paperless/{p-7793ba3a.entry.js → p-32ec455c.entry.js} +2 -2
  229. package/dist/paperless/{p-ec15ee73.entry.js → p-4fe3d53a.entry.js} +2 -2
  230. package/dist/{build/p-dd070ee8.entry.js → paperless/p-4feb9ce7.entry.js} +2 -2
  231. package/dist/paperless/{p-00d4647f.entry.js → p-64aff6f3.entry.js} +2 -2
  232. package/dist/{build/p-eebab75d.entry.js → paperless/p-744f5a41.entry.js} +2 -2
  233. package/dist/paperless/{p-d8641c29.entry.js → p-7f41fb25.entry.js} +2 -2
  234. package/dist/{build/p-89fd4150.entry.js → paperless/p-80053d24.entry.js} +2 -2
  235. package/dist/paperless/p-80053d24.entry.js.map +1 -0
  236. package/dist/paperless/{p-af6b813e.entry.js → p-88f1b5e6.entry.js} +2 -2
  237. package/dist/paperless/{p-179efb16.entry.js → p-8b1a63cb.entry.js} +2 -2
  238. package/dist/paperless/{p-2becd73c.entry.js → p-9671e4e1.entry.js} +2 -2
  239. package/dist/paperless/{p-0b0c43cc.entry.js → p-9c1e350b.entry.js} +2 -2
  240. package/dist/paperless/{p-d7f2d4d3.entry.js → p-9c9ea527.entry.js} +2 -2
  241. package/dist/paperless/{p-7bf042c9.entry.js → p-a11cf84a.entry.js} +2 -2
  242. package/dist/paperless/p-a5770573.entry.js +2 -0
  243. package/dist/paperless/p-ac60e1f8.entry.js +2 -0
  244. package/dist/paperless/p-ac60e1f8.entry.js.map +1 -0
  245. package/dist/paperless/{p-576b6378.entry.js → p-ad9468a6.entry.js} +2 -2
  246. package/dist/paperless/{p-dace47c5.entry.js → p-af71e807.entry.js} +2 -2
  247. package/dist/{build/p-2cd5062f.entry.js → paperless/p-bcb8549b.entry.js} +2 -2
  248. package/dist/paperless/{p-ec29eed0.entry.js → p-bd4ba06f.entry.js} +2 -2
  249. package/dist/{build/p-bbe63029.entry.js → paperless/p-c1bac1cf.entry.js} +2 -2
  250. package/dist/{build/p-95dc4bd3.entry.js → paperless/p-c4d17d60.entry.js} +2 -2
  251. package/dist/paperless/{p-2c2cf3cf.entry.js → p-ca87bbc1.entry.js} +2 -2
  252. package/dist/{build/p-35c563a7.entry.js → paperless/p-d4b10d27.entry.js} +2 -2
  253. package/dist/{build/p-01adf065.entry.js → paperless/p-dbd732ab.entry.js} +2 -2
  254. package/dist/paperless/{p-a37d182e.entry.js → p-de0f4cf1.entry.js} +2 -2
  255. package/dist/paperless/{p-ec315c58.entry.js → p-de9f7dc2.entry.js} +2 -2
  256. package/dist/paperless/{p-0cbff44f.entry.js → p-ec1584ef.entry.js} +2 -2
  257. package/dist/paperless/{p-0f5c5693.entry.js → p-f07e2154.entry.js} +2 -2
  258. package/dist/{build/p-699e0b35.entry.js → paperless/p-f2865277.entry.js} +2 -2
  259. package/dist/paperless/p-f95b1425.entry.js +2 -0
  260. package/dist/paperless/{p-4c30c74b.entry.js → p-fae6af23.entry.js} +2 -2
  261. package/dist/paperless/paperless.esm.js +1 -1
  262. package/dist/paperless/paperless.esm.js.map +1 -1
  263. package/dist/sw.js +1 -1
  264. package/dist/sw.js.map +1 -1
  265. package/dist/types/components/atoms/portal/portal.component.d.ts +9 -0
  266. package/dist/types/components/molecules/dropdown/dropdown.component.d.ts +6 -1
  267. package/dist/types/components.d.ts +25 -2
  268. package/hydrate/index.js +112 -49
  269. package/package.json +1 -1
  270. package/dist/build/p-2d3ff364.entry.js +0 -2
  271. package/dist/build/p-2d3ff364.entry.js.map +0 -1
  272. package/dist/build/p-46052ca3.entry.js +0 -2
  273. package/dist/build/p-46052ca3.entry.js.map +0 -1
  274. package/dist/build/p-6f24685c.entry.js +0 -2
  275. package/dist/build/p-89fd4150.entry.js.map +0 -1
  276. package/dist/build/p-c3999d3e.entry.js +0 -2
  277. package/dist/build/p-e4d5e7a7.js +0 -3
  278. package/dist/build/p-e4d5e7a7.js.map +0 -1
  279. package/dist/build/p-ef0bfa6c.entry.js +0 -2
  280. package/dist/build/p-ef0bfa6c.entry.js.map +0 -1
  281. package/dist/build/p-f2a896ba.entry.js.map +0 -1
  282. package/dist/cjs/p-dropdown-menu-container.cjs.entry.js +0 -25
  283. package/dist/cjs/p-dropdown-menu-container.cjs.entry.js.map +0 -1
  284. package/dist/esm/p-dropdown-menu-container.entry.js +0 -21
  285. package/dist/esm/p-dropdown-menu-container.entry.js.map +0 -1
  286. package/dist/paperless/p-2d3ff364.entry.js +0 -2
  287. package/dist/paperless/p-2d3ff364.entry.js.map +0 -1
  288. package/dist/paperless/p-46052ca3.entry.js +0 -2
  289. package/dist/paperless/p-46052ca3.entry.js.map +0 -1
  290. package/dist/paperless/p-6f24685c.entry.js +0 -2
  291. package/dist/paperless/p-89fd4150.entry.js.map +0 -1
  292. package/dist/paperless/p-c3999d3e.entry.js +0 -2
  293. package/dist/paperless/p-e4d5e7a7.js +0 -3
  294. package/dist/paperless/p-e4d5e7a7.js.map +0 -1
  295. package/dist/paperless/p-ef0bfa6c.entry.js +0 -2
  296. package/dist/paperless/p-ef0bfa6c.entry.js.map +0 -1
  297. package/dist/paperless/p-f2a896ba.entry.js.map +0 -1
  298. /package/dist/build/{p-cb2674b5.entry.js.map → p-0a95044f.entry.js.map} +0 -0
  299. /package/dist/build/{p-a2b552f9.entry.js.map → p-13f61347.entry.js.map} +0 -0
  300. /package/dist/build/{p-8af4e8e9.entry.js.map → p-18f3cc52.entry.js.map} +0 -0
  301. /package/dist/build/{p-639665b1.entry.js.map → p-198fac52.entry.js.map} +0 -0
  302. /package/dist/build/{p-606ad811.entry.js.map → p-1ce5f595.entry.js.map} +0 -0
  303. /package/dist/build/{p-cf7bd354.entry.js.map → p-2489f548.entry.js.map} +0 -0
  304. /package/dist/build/{p-8426ca20.entry.js.map → p-26d28e15.entry.js.map} +0 -0
  305. /package/dist/build/{p-b59115c3.entry.js.map → p-27ecc564.entry.js.map} +0 -0
  306. /package/dist/build/{p-3755da14.entry.js.map → p-2e258b57.entry.js.map} +0 -0
  307. /package/dist/build/{p-5b062bc3.entry.js.map → p-2ff0302a.entry.js.map} +0 -0
  308. /package/dist/build/{p-30c9f5e3.entry.js.map → p-311e879a.entry.js.map} +0 -0
  309. /package/dist/build/{p-d0796984.entry.js.map → p-31b09b93.entry.js.map} +0 -0
  310. /package/dist/build/{p-7793ba3a.entry.js.map → p-32ec455c.entry.js.map} +0 -0
  311. /package/dist/build/{p-ec15ee73.entry.js.map → p-4fe3d53a.entry.js.map} +0 -0
  312. /package/dist/build/{p-dd070ee8.entry.js.map → p-4feb9ce7.entry.js.map} +0 -0
  313. /package/dist/build/{p-00d4647f.entry.js.map → p-64aff6f3.entry.js.map} +0 -0
  314. /package/dist/build/{p-eebab75d.entry.js.map → p-744f5a41.entry.js.map} +0 -0
  315. /package/dist/build/{p-d8641c29.entry.js.map → p-7f41fb25.entry.js.map} +0 -0
  316. /package/dist/build/{p-af6b813e.entry.js.map → p-88f1b5e6.entry.js.map} +0 -0
  317. /package/dist/build/{p-179efb16.entry.js.map → p-8b1a63cb.entry.js.map} +0 -0
  318. /package/dist/build/{p-2becd73c.entry.js.map → p-9671e4e1.entry.js.map} +0 -0
  319. /package/dist/build/{p-0b0c43cc.entry.js.map → p-9c1e350b.entry.js.map} +0 -0
  320. /package/dist/build/{p-d7f2d4d3.entry.js.map → p-9c9ea527.entry.js.map} +0 -0
  321. /package/dist/build/{p-7bf042c9.entry.js.map → p-a11cf84a.entry.js.map} +0 -0
  322. /package/dist/build/{p-6f24685c.entry.js.map → p-a5770573.entry.js.map} +0 -0
  323. /package/dist/build/{p-576b6378.entry.js.map → p-ad9468a6.entry.js.map} +0 -0
  324. /package/dist/build/{p-dace47c5.entry.js.map → p-af71e807.entry.js.map} +0 -0
  325. /package/dist/build/{p-2cd5062f.entry.js.map → p-bcb8549b.entry.js.map} +0 -0
  326. /package/dist/build/{p-ec29eed0.entry.js.map → p-bd4ba06f.entry.js.map} +0 -0
  327. /package/dist/build/{p-bbe63029.entry.js.map → p-c1bac1cf.entry.js.map} +0 -0
  328. /package/dist/build/{p-95dc4bd3.entry.js.map → p-c4d17d60.entry.js.map} +0 -0
  329. /package/dist/build/{p-2c2cf3cf.entry.js.map → p-ca87bbc1.entry.js.map} +0 -0
  330. /package/dist/build/{p-35c563a7.entry.js.map → p-d4b10d27.entry.js.map} +0 -0
  331. /package/dist/build/{p-01adf065.entry.js.map → p-dbd732ab.entry.js.map} +0 -0
  332. /package/dist/build/{p-a37d182e.entry.js.map → p-de0f4cf1.entry.js.map} +0 -0
  333. /package/dist/build/{p-ec315c58.entry.js.map → p-de9f7dc2.entry.js.map} +0 -0
  334. /package/dist/build/{p-0cbff44f.entry.js.map → p-ec1584ef.entry.js.map} +0 -0
  335. /package/dist/build/{p-0f5c5693.entry.js.map → p-f07e2154.entry.js.map} +0 -0
  336. /package/dist/build/{p-699e0b35.entry.js.map → p-f2865277.entry.js.map} +0 -0
  337. /package/dist/build/{p-c3999d3e.entry.js.map → p-f95b1425.entry.js.map} +0 -0
  338. /package/dist/build/{p-4c30c74b.entry.js.map → p-fae6af23.entry.js.map} +0 -0
  339. /package/dist/paperless/{p-cb2674b5.entry.js.map → p-0a95044f.entry.js.map} +0 -0
  340. /package/dist/paperless/{p-a2b552f9.entry.js.map → p-13f61347.entry.js.map} +0 -0
  341. /package/dist/paperless/{p-8af4e8e9.entry.js.map → p-18f3cc52.entry.js.map} +0 -0
  342. /package/dist/paperless/{p-639665b1.entry.js.map → p-198fac52.entry.js.map} +0 -0
  343. /package/dist/paperless/{p-606ad811.entry.js.map → p-1ce5f595.entry.js.map} +0 -0
  344. /package/dist/paperless/{p-cf7bd354.entry.js.map → p-2489f548.entry.js.map} +0 -0
  345. /package/dist/paperless/{p-8426ca20.entry.js.map → p-26d28e15.entry.js.map} +0 -0
  346. /package/dist/paperless/{p-b59115c3.entry.js.map → p-27ecc564.entry.js.map} +0 -0
  347. /package/dist/paperless/{p-3755da14.entry.js.map → p-2e258b57.entry.js.map} +0 -0
  348. /package/dist/paperless/{p-5b062bc3.entry.js.map → p-2ff0302a.entry.js.map} +0 -0
  349. /package/dist/paperless/{p-30c9f5e3.entry.js.map → p-311e879a.entry.js.map} +0 -0
  350. /package/dist/paperless/{p-d0796984.entry.js.map → p-31b09b93.entry.js.map} +0 -0
  351. /package/dist/paperless/{p-7793ba3a.entry.js.map → p-32ec455c.entry.js.map} +0 -0
  352. /package/dist/paperless/{p-ec15ee73.entry.js.map → p-4fe3d53a.entry.js.map} +0 -0
  353. /package/dist/paperless/{p-dd070ee8.entry.js.map → p-4feb9ce7.entry.js.map} +0 -0
  354. /package/dist/paperless/{p-00d4647f.entry.js.map → p-64aff6f3.entry.js.map} +0 -0
  355. /package/dist/paperless/{p-eebab75d.entry.js.map → p-744f5a41.entry.js.map} +0 -0
  356. /package/dist/paperless/{p-d8641c29.entry.js.map → p-7f41fb25.entry.js.map} +0 -0
  357. /package/dist/paperless/{p-af6b813e.entry.js.map → p-88f1b5e6.entry.js.map} +0 -0
  358. /package/dist/paperless/{p-179efb16.entry.js.map → p-8b1a63cb.entry.js.map} +0 -0
  359. /package/dist/paperless/{p-2becd73c.entry.js.map → p-9671e4e1.entry.js.map} +0 -0
  360. /package/dist/paperless/{p-0b0c43cc.entry.js.map → p-9c1e350b.entry.js.map} +0 -0
  361. /package/dist/paperless/{p-d7f2d4d3.entry.js.map → p-9c9ea527.entry.js.map} +0 -0
  362. /package/dist/paperless/{p-7bf042c9.entry.js.map → p-a11cf84a.entry.js.map} +0 -0
  363. /package/dist/paperless/{p-6f24685c.entry.js.map → p-a5770573.entry.js.map} +0 -0
  364. /package/dist/paperless/{p-576b6378.entry.js.map → p-ad9468a6.entry.js.map} +0 -0
  365. /package/dist/paperless/{p-dace47c5.entry.js.map → p-af71e807.entry.js.map} +0 -0
  366. /package/dist/paperless/{p-2cd5062f.entry.js.map → p-bcb8549b.entry.js.map} +0 -0
  367. /package/dist/paperless/{p-ec29eed0.entry.js.map → p-bd4ba06f.entry.js.map} +0 -0
  368. /package/dist/paperless/{p-bbe63029.entry.js.map → p-c1bac1cf.entry.js.map} +0 -0
  369. /package/dist/paperless/{p-95dc4bd3.entry.js.map → p-c4d17d60.entry.js.map} +0 -0
  370. /package/dist/paperless/{p-2c2cf3cf.entry.js.map → p-ca87bbc1.entry.js.map} +0 -0
  371. /package/dist/paperless/{p-35c563a7.entry.js.map → p-d4b10d27.entry.js.map} +0 -0
  372. /package/dist/paperless/{p-01adf065.entry.js.map → p-dbd732ab.entry.js.map} +0 -0
  373. /package/dist/paperless/{p-a37d182e.entry.js.map → p-de0f4cf1.entry.js.map} +0 -0
  374. /package/dist/paperless/{p-ec315c58.entry.js.map → p-de9f7dc2.entry.js.map} +0 -0
  375. /package/dist/paperless/{p-0cbff44f.entry.js.map → p-ec1584ef.entry.js.map} +0 -0
  376. /package/dist/paperless/{p-0f5c5693.entry.js.map → p-f07e2154.entry.js.map} +0 -0
  377. /package/dist/paperless/{p-699e0b35.entry.js.map → p-f2865277.entry.js.map} +0 -0
  378. /package/dist/paperless/{p-c3999d3e.entry.js.map → p-f95b1425.entry.js.map} +0 -0
  379. /package/dist/paperless/{p-4c30c74b.entry.js.map → p-fae6af23.entry.js.map} +0 -0
@@ -1,4 +1,4 @@
1
- import { h, Host } from "@stencil/core";
1
+ import { h, Host, } from "@stencil/core";
2
2
  export class InputGroup {
3
3
  constructor() {
4
4
  this._whitelistedTags = ['input', 'textarea'];
@@ -26,14 +26,11 @@ export class InputGroup {
26
26
  render() {
27
27
  var _a;
28
28
  const { hasHeaderSlot, helper, label, prefix, suffix, errorAndErrorIsNotBoolean, errorVariant, } = this._getSlotInfo();
29
- return (h(Host, { class: `p-input-group ${((_a = this.error) === null || _a === void 0 ? void 0 : _a.length) && 'error'} ${this.disabled && 'disabled'} ${this.focused && 'focused'} size-${this.size}` }, h("div", { class: "flex items-end justify-between" }, label && (h("div", { class: "input-label", onClick: () => this._focusInput() }, label, this.required && (h("span", { class: "ml-1 text-negative" }, "*")))), (helper || hasHeaderSlot) && (h("div", { class: "input-header" }, hasHeaderSlot && h("slot", { name: "header" }), helper && (h("p-helper", { class: `flex ${hasHeaderSlot ? 'ml-2' : ''}`, placement: "top-end" }, helper))))), h("p-tooltip", { class: "w-full", variant: "error-element", content: this.error, show: errorAndErrorIsNotBoolean &&
29
+ return (h(Host, { class: `p-input-group ${((_a = this.error) === null || _a === void 0 ? void 0 : _a.length) && 'error'} ${this.disabled && 'disabled'} ${this.focused && 'focused'} size-${this.size}` }, h("div", { class: 'flex items-end justify-between' }, label && (h("div", { class: 'input-label', onClick: () => this._focusInput() }, label, this.required && h("span", { class: 'ml-1 text-negative' }, "*"))), (helper || hasHeaderSlot) && (h("div", { class: 'input-header' }, hasHeaderSlot && h("slot", { name: 'header' }), helper && (h("p-helper", { class: `flex ${hasHeaderSlot ? 'ml-2' : ''}`, placement: 'top-end' }, helper))))), h("p-tooltip", { class: 'w-full', variant: 'error-element', content: this.error, show: errorAndErrorIsNotBoolean &&
30
30
  errorVariant === 'element' &&
31
- (this.forceShowTooltip || this._forceShowTooltip), enableUserInput: false }, h("div", { class: "content", slot: "trigger" }, (prefix ||
32
- (this.icon && this.iconPosition === 'start')) && (h("div", { class: `prefix size-${this.size}`, onClick: () => this._focusInput() }, this.icon && this.iconPosition === 'start' ? (h("p-icon", { class: "flex", variant: this.icon, rotate: this.iconRotate, flip: this.iconFlip })) : (prefix))), (suffix ||
33
- (errorAndErrorIsNotBoolean &&
34
- errorVariant === 'icon') ||
35
- (this.icon && this.iconPosition === 'end')) && (h("div", { class: `suffix size-${this.size}`, onClick: () => this._focusInput() }, errorAndErrorIsNotBoolean &&
36
- errorVariant === 'icon' ? (h("p-input-error", { error: this.error, forceShowTooltip: this.forceShowTooltip || this._forceShowTooltip })) : this.icon && this.iconPosition === 'end' ? (h("p-icon", { class: "flex", variant: this.icon, rotate: this.iconRotate, flip: this.iconFlip })) : (suffix))), h("slot", { name: "input" })))));
31
+ (this.forceShowTooltip || this._forceShowTooltip), enableUserInput: false }, h("div", { class: 'content', slot: 'trigger' }, (prefix || (this.icon && this.iconPosition === 'start')) && (h("div", { class: `prefix size-${this.size}`, onClick: () => this._focusInput() }, this.icon && this.iconPosition === 'start' ? (h("p-icon", { class: 'flex', variant: this.icon, rotate: this.iconRotate, flip: this.iconFlip })) : (prefix))), (suffix ||
32
+ (errorAndErrorIsNotBoolean && errorVariant === 'icon') ||
33
+ (this.icon && this.iconPosition === 'end')) && (h("div", { class: `suffix size-${this.size}`, onClick: () => this._focusInput() }, errorAndErrorIsNotBoolean && errorVariant === 'icon' ? (h("p-input-error", { error: this.error, forceShowTooltip: this.forceShowTooltip || this._forceShowTooltip })) : this.icon && this.iconPosition === 'end' ? (h("p-icon", { class: 'flex', variant: this.icon, rotate: this.iconRotate, flip: this.iconFlip })) : (suffix))), h("slot", { name: 'input' })))));
37
34
  }
38
35
  handleFocusIn() {
39
36
  this._forceShowTooltip = true;
@@ -86,13 +83,11 @@ export class InputGroup {
86
83
  const hasPrefixSlot = !!this._el.querySelector(':scope > [slot="prefix"]');
87
84
  const hasSuffixSlot = !!this._el.querySelector(':scope > [slot="suffix"]');
88
85
  const hasHeaderSlot = !!this._el.querySelector(':scope > [slot="header"]');
89
- const helper = hasHelperSlot ? h("slot", { name: "helper" }) : this.helper;
90
- const label = hasLabelSlot ? h("slot", { name: "label" }) : this.label;
91
- const prefix = hasPrefixSlot ? h("slot", { name: "prefix" }) : this.prefix;
92
- const suffix = hasSuffixSlot ? h("slot", { name: "suffix" }) : this.suffix;
93
- const errorAndErrorIsNotBoolean = this.error &&
94
- typeof this.error === 'string' &&
95
- this.error !== 'true';
86
+ const helper = hasHelperSlot ? h("slot", { name: 'helper' }) : this.helper;
87
+ const label = hasLabelSlot ? h("slot", { name: 'label' }) : this.label;
88
+ const prefix = hasPrefixSlot ? h("slot", { name: 'prefix' }) : this.prefix;
89
+ const suffix = hasSuffixSlot ? h("slot", { name: 'suffix' }) : this.suffix;
90
+ const errorAndErrorIsNotBoolean = this.error && typeof this.error === 'string' && this.error !== 'true';
96
91
  return {
97
92
  hasHelperSlot,
98
93
  hasLabelSlot,
@@ -104,7 +99,11 @@ export class InputGroup {
104
99
  prefix,
105
100
  suffix,
106
101
  errorAndErrorIsNotBoolean,
107
- errorVariant: this.errorVariant === 'auto' ? (this._el.offsetWidth <= 72 ? 'element' : 'icon') : this.errorVariant,
102
+ errorVariant: this.errorVariant === 'auto'
103
+ ? this._el.offsetWidth <= 72
104
+ ? 'element'
105
+ : 'icon'
106
+ : this.errorVariant,
108
107
  };
109
108
  }
110
109
  _focusInput() {
@@ -1 +1 @@
1
- {"version":3,"file":"input-group.component.js","sourceRoot":"","sources":["../../../../src/components/molecules/input-group/input-group.component.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n h,\n Host,\n Listen,\n Prop,\n State\n} from '@stencil/core';\nimport { RotateOptions } from '../../../types/tailwind';\nimport { IconFlipOptions, IconVariant } from '../../atoms/icon/icon.component';\n\n@Component({\n\ttag: 'p-input-group',\n\tstyleUrl: './input-group.component.scss',\n\tshadow: true,\n})\nexport class InputGroup {\n\t/**\n\t * The size of the input group\n\t */\n\t@Prop() size: 'small' | 'medium' = 'medium';\n\n\t/**\n\t * The prefix of the input group\n\t */\n\t@Prop() prefix: string;\n\n\t/**\n\t * The suffix of the input group\n\t */\n\t@Prop() suffix: string;\n\n\t/**\n\t * Icon of the input group\n\t */\n\t@Prop() icon: IconVariant;\n\n\t/**\n\t * Icon flip\n\t */\n\t@Prop() iconFlip: IconFlipOptions;\n\n\t/**\n\t * Icon rotate\n\t */\n\t@Prop() iconRotate: RotateOptions;\n\n\t/**\n\t * Icon position\n\t */\n\t@Prop() iconPosition: 'start' | 'end' = 'start';\n\n\t/**\n\t * The label of the input group\n\t */\n\t@Prop() label: string;\n\n\t/**\n\t * The helper of the input group\n\t */\n\t@Prop() helper: string;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean;\n\n\t/**\n\t * The helper of the input group\n\t */\n\t@Prop({ reflect: true }) error: string;\n\n\t/**\n\t * Wether the input group is disabled\n\t */\n\t@Prop({ reflect: true }) disabled: boolean = false;\n\n\t/**\n\t * Wether the input group is focused\n\t */\n\t@Prop({ reflect: true }) focused: boolean = false;\n\n\t/**\n\t * Force show the error tooltip\n\t */\n\t@Prop({ reflect: true }) forceShowTooltip: boolean = false;\n\n\t/**\n\t * The method to use when focusing the input\n\t */\n\t@Prop() focusMethod: 'focus' | 'click' = 'focus';\n\n\t/**\n\t * The error variant to use\n\t */\n\t@Prop() errorVariant: 'auto' | 'suffix' | 'element' = 'auto';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _forceShowTooltip = false;\n\n\tprivate _whitelistedTags = ['input', 'textarea'];\n\n\tcomponentWillRender() {\n\t\tthis._setInputClasses();\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\thasHeaderSlot,\n\t\t\thelper,\n\t\t\tlabel,\n\t\t\tprefix,\n\t\t\tsuffix,\n\t\t\terrorAndErrorIsNotBoolean,\n\t\t\terrorVariant,\n\t\t} = this._getSlotInfo();\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-input-group ${this.error?.length && 'error'} ${\n\t\t\t\t\tthis.disabled && 'disabled'\n\t\t\t\t} ${this.focused && 'focused'} size-${this.size}`}\n\t\t\t>\n\t\t\t\t<div class=\"flex items-end justify-between\">\n\t\t\t\t\t{label && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass=\"input-label\"\n\t\t\t\t\t\t\tonClick={() => this._focusInput()}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t\t{this.required && (\n\t\t\t\t\t\t\t\t<span class=\"ml-1 text-negative\">*</span>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{(helper || hasHeaderSlot) && (\n\t\t\t\t\t\t<div class=\"input-header\">\n\t\t\t\t\t\t\t{hasHeaderSlot && <slot name=\"header\" />}\n\t\t\t\t\t\t\t{helper && (\n\t\t\t\t\t\t\t\t<p-helper\n\t\t\t\t\t\t\t\t\tclass={`flex ${\n\t\t\t\t\t\t\t\t\t\thasHeaderSlot ? 'ml-2' : ''\n\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\tplacement=\"top-end\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{helper}\n\t\t\t\t\t\t\t\t</p-helper>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t<p-tooltip\n\t\t\t\t\tclass=\"w-full\"\n\t\t\t\t\tvariant=\"error-element\"\n\t\t\t\t\tcontent={this.error}\n\t\t\t\t\tshow={\n\t\t\t\t\t\terrorAndErrorIsNotBoolean &&\n\t\t\t\t\t\terrorVariant === 'element' &&\n\t\t\t\t\t\t(this.forceShowTooltip || this._forceShowTooltip)\n\t\t\t\t\t}\n\t\t\t\t\tenableUserInput={false}\n\t\t\t\t>\n\t\t\t\t\t<div class=\"content\" slot=\"trigger\">\n\t\t\t\t\t\t{(prefix ||\n\t\t\t\t\t\t\t(this.icon && this.iconPosition === 'start')) && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclass={`prefix size-${this.size}`}\n\t\t\t\t\t\t\t\tonClick={() => this._focusInput()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{this.icon && this.iconPosition === 'start' ? (\n\t\t\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\t\t\tclass=\"flex\"\n\t\t\t\t\t\t\t\t\t\tvariant={this.icon}\n\t\t\t\t\t\t\t\t\t\trotate={this.iconRotate}\n\t\t\t\t\t\t\t\t\t\tflip={this.iconFlip}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\tprefix\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{(suffix ||\n\t\t\t\t\t\t\t(errorAndErrorIsNotBoolean &&\n\t\t\t\t\t\t\t\terrorVariant === 'icon') ||\n\t\t\t\t\t\t\t(this.icon && this.iconPosition === 'end')) && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclass={`suffix size-${this.size}`}\n\t\t\t\t\t\t\t\tonClick={() => this._focusInput()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{errorAndErrorIsNotBoolean &&\n\t\t\t\t\t\t\t\terrorVariant === 'icon' ? (\n\t\t\t\t\t\t\t\t\t<p-input-error\n\t\t\t\t\t\t\t\t\t\terror={this.error}\n\t\t\t\t\t\t\t\t\t\tforceShowTooltip={\n\t\t\t\t\t\t\t\t\t\t\tthis.forceShowTooltip || this._forceShowTooltip\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) : this.icon && this.iconPosition === 'end' ? (\n\t\t\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\t\t\tclass=\"flex\"\n\t\t\t\t\t\t\t\t\t\tvariant={this.icon}\n\t\t\t\t\t\t\t\t\t\trotate={this.iconRotate}\n\t\t\t\t\t\t\t\t\t\tflip={this.iconFlip}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\tsuffix\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t<slot name=\"input\" />\n\t\t\t\t\t</div>\n\t\t\t\t</p-tooltip>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('focusin')\n\thandleFocusIn() {\n\t\tthis._forceShowTooltip = true;\n\t}\n\n\t@Listen('focusout')\n\thandleFocusOut() {\n\t\tthis._forceShowTooltip = false;\n\t}\n\t/*\n With this, we shall hack the system in ways no one would ever have thought.\n\n <div class=\"pl-0 pr-0 border-l-0 border-r-0 rounded-tl-none rounded-bl-none rounded-tr-none rounded-br-none\"></div>\n */\n\tprivate _setInputClasses() {\n\t\tconst input = this._el.querySelector(':scope > [slot=\"input\"]');\n\n\t\tif (!input) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tagName = input.tagName.toLowerCase();\n\t\tif (this._whitelistedTags.indexOf(tagName) === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!input.classList.contains('p-input')) {\n\t\t\tinput.classList.add('p-input');\n\t\t}\n\n\t\tconst { prefix, suffix, errorAndErrorIsNotBoolean, errorVariant } =\n\t\t\tthis._getSlotInfo();\n\n\t\tif (\n\t\t\tsuffix ||\n\t\t\t(errorAndErrorIsNotBoolean && errorVariant === 'icon') ||\n\t\t\t(this.icon && this.iconPosition === 'end')\n\t\t) {\n\t\t\tinput.classList.add(\n\t\t\t\t'border-r-0',\n\t\t\t\t'rounded-tr-none',\n\t\t\t\t'rounded-br-none',\n\t\t\t\t'pr-0'\n\t\t\t);\n\t\t} else {\n\t\t\tinput.classList.remove(\n\t\t\t\t'border-r-0',\n\t\t\t\t'rounded-tr-none',\n\t\t\t\t'rounded-br-none',\n\t\t\t\t'pr-0'\n\t\t\t);\n\t\t}\n\n\t\tif (prefix || (this.icon && this.iconPosition === 'start')) {\n\t\t\tinput.classList.add(\n\t\t\t\t'border-l-0',\n\t\t\t\t'rounded-tl-none',\n\t\t\t\t'rounded-bl-none',\n\t\t\t\t'pl-0'\n\t\t\t);\n\t\t} else {\n\t\t\tinput.classList.remove(\n\t\t\t\t'border-l-0',\n\t\t\t\t'rounded-tl-none',\n\t\t\t\t'rounded-bl-none',\n\t\t\t\t'pl-0'\n\t\t\t);\n\t\t}\n\n\t\tif (this.size === 'small' && !input.classList.contains('size-small')) {\n\t\t\tinput.classList.add('size-small');\n\t\t}\n\n\t\tif (this.size !== 'small' && input.classList.contains('size-small')) {\n\t\t\tinput.classList.remove('size-small');\n\t\t}\n\t}\n\n\tprivate _getSlotInfo() {\n\t\tconst hasHelperSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"helper\"]'\n\t\t);\n\t\tconst hasLabelSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"label\"]'\n\t\t);\n\t\tconst hasPrefixSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"prefix\"]'\n\t\t);\n\t\tconst hasSuffixSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"suffix\"]'\n\t\t);\n\t\tconst hasHeaderSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"header\"]'\n\t\t);\n\n\t\tconst helper = hasHelperSlot ? <slot name=\"helper\" /> : this.helper;\n\t\tconst label = hasLabelSlot ? <slot name=\"label\" /> : this.label;\n\t\tconst prefix = hasPrefixSlot ? <slot name=\"prefix\" /> : this.prefix;\n\t\tconst suffix = hasSuffixSlot ? <slot name=\"suffix\" /> : this.suffix;\n\n\t\tconst errorAndErrorIsNotBoolean =\n\t\t\tthis.error &&\n\t\t\ttypeof this.error === 'string' &&\n\t\t\tthis.error !== 'true';\n\n\t\treturn {\n\t\t\thasHelperSlot,\n\t\t\thasLabelSlot,\n\t\t\thasPrefixSlot,\n\t\t\thasSuffixSlot,\n\t\t\thasHeaderSlot,\n\t\t\thelper,\n\t\t\tlabel,\n\t\t\tprefix,\n\t\t\tsuffix,\n\t\t\terrorAndErrorIsNotBoolean,\n\t\t\terrorVariant: this.errorVariant === 'auto' ? (this._el.offsetWidth <= 72 ? 'element' : 'icon') : this.errorVariant,\n\t\t};\n\t}\n\n\tprivate _focusInput() {\n\t\tconst input = this._el.querySelector(':scope > [slot=\"input\"]');\n\t\t(input as HTMLElement)[this.focusMethod]();\n\t}\n}\n"]}
1
+ {"version":3,"file":"input-group.component.js","sourceRoot":"","sources":["../../../../src/components/molecules/input-group/input-group.component.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n\tComponent,\n\tElement,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tState,\n} from '@stencil/core';\nimport { RotateOptions } from '../../../types/tailwind';\nimport { IconFlipOptions, IconVariant } from '../../atoms/icon/icon.component';\n\n@Component({\n\ttag: 'p-input-group',\n\tstyleUrl: './input-group.component.scss',\n\tshadow: true,\n})\nexport class InputGroup {\n\t/**\n\t * The size of the input group\n\t */\n\t@Prop() size: 'small' | 'medium' = 'medium';\n\n\t/**\n\t * The prefix of the input group\n\t */\n\t@Prop() prefix: string;\n\n\t/**\n\t * The suffix of the input group\n\t */\n\t@Prop() suffix: string;\n\n\t/**\n\t * Icon of the input group\n\t */\n\t@Prop() icon: IconVariant;\n\n\t/**\n\t * Icon flip\n\t */\n\t@Prop() iconFlip: IconFlipOptions;\n\n\t/**\n\t * Icon rotate\n\t */\n\t@Prop() iconRotate: RotateOptions;\n\n\t/**\n\t * Icon position\n\t */\n\t@Prop() iconPosition: 'start' | 'end' = 'start';\n\n\t/**\n\t * The label of the input group\n\t */\n\t@Prop() label: string;\n\n\t/**\n\t * The helper of the input group\n\t */\n\t@Prop() helper: string;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean;\n\n\t/**\n\t * The helper of the input group\n\t */\n\t@Prop({ reflect: true }) error: string;\n\n\t/**\n\t * Wether the input group is disabled\n\t */\n\t@Prop({ reflect: true }) disabled: boolean = false;\n\n\t/**\n\t * Wether the input group is focused\n\t */\n\t@Prop({ reflect: true }) focused: boolean = false;\n\n\t/**\n\t * Force show the error tooltip\n\t */\n\t@Prop({ reflect: true }) forceShowTooltip: boolean = false;\n\n\t/**\n\t * The method to use when focusing the input\n\t */\n\t@Prop() focusMethod: 'focus' | 'click' = 'focus';\n\n\t/**\n\t * The error variant to use\n\t */\n\t@Prop() errorVariant: 'auto' | 'suffix' | 'element' = 'auto';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _forceShowTooltip = false;\n\n\tprivate _whitelistedTags = ['input', 'textarea'];\n\n\tcomponentWillRender() {\n\t\tthis._setInputClasses();\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\thasHeaderSlot,\n\t\t\thelper,\n\t\t\tlabel,\n\t\t\tprefix,\n\t\t\tsuffix,\n\t\t\terrorAndErrorIsNotBoolean,\n\t\t\terrorVariant,\n\t\t} = this._getSlotInfo();\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-input-group ${this.error?.length && 'error'} ${\n\t\t\t\t\tthis.disabled && 'disabled'\n\t\t\t\t} ${this.focused && 'focused'} size-${this.size}`}\n\t\t\t>\n\t\t\t\t<div class='flex items-end justify-between'>\n\t\t\t\t\t{label && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass='input-label'\n\t\t\t\t\t\t\tonClick={() => this._focusInput()}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t\t{this.required && <span class='ml-1 text-negative'>*</span>}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{(helper || hasHeaderSlot) && (\n\t\t\t\t\t\t<div class='input-header'>\n\t\t\t\t\t\t\t{hasHeaderSlot && <slot name='header' />}\n\t\t\t\t\t\t\t{helper && (\n\t\t\t\t\t\t\t\t<p-helper\n\t\t\t\t\t\t\t\t\tclass={`flex ${hasHeaderSlot ? 'ml-2' : ''}`}\n\t\t\t\t\t\t\t\t\tplacement='top-end'\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{helper}\n\t\t\t\t\t\t\t\t</p-helper>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t<p-tooltip\n\t\t\t\t\tclass='w-full'\n\t\t\t\t\tvariant='error-element'\n\t\t\t\t\tcontent={this.error}\n\t\t\t\t\tshow={\n\t\t\t\t\t\terrorAndErrorIsNotBoolean &&\n\t\t\t\t\t\terrorVariant === 'element' &&\n\t\t\t\t\t\t(this.forceShowTooltip || this._forceShowTooltip)\n\t\t\t\t\t}\n\t\t\t\t\tenableUserInput={false}\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclass='content'\n\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t>\n\t\t\t\t\t\t{(prefix || (this.icon && this.iconPosition === 'start')) && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclass={`prefix size-${this.size}`}\n\t\t\t\t\t\t\t\tonClick={() => this._focusInput()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{this.icon && this.iconPosition === 'start' ? (\n\t\t\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\t\t\tclass='flex'\n\t\t\t\t\t\t\t\t\t\tvariant={this.icon}\n\t\t\t\t\t\t\t\t\t\trotate={this.iconRotate}\n\t\t\t\t\t\t\t\t\t\tflip={this.iconFlip}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\tprefix\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{(suffix ||\n\t\t\t\t\t\t\t(errorAndErrorIsNotBoolean && errorVariant === 'icon') ||\n\t\t\t\t\t\t\t(this.icon && this.iconPosition === 'end')) && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclass={`suffix size-${this.size}`}\n\t\t\t\t\t\t\t\tonClick={() => this._focusInput()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{errorAndErrorIsNotBoolean && errorVariant === 'icon' ? (\n\t\t\t\t\t\t\t\t\t<p-input-error\n\t\t\t\t\t\t\t\t\t\terror={this.error}\n\t\t\t\t\t\t\t\t\t\tforceShowTooltip={\n\t\t\t\t\t\t\t\t\t\t\tthis.forceShowTooltip || this._forceShowTooltip\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) : this.icon && this.iconPosition === 'end' ? (\n\t\t\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\t\t\tclass='flex'\n\t\t\t\t\t\t\t\t\t\tvariant={this.icon}\n\t\t\t\t\t\t\t\t\t\trotate={this.iconRotate}\n\t\t\t\t\t\t\t\t\t\tflip={this.iconFlip}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\tsuffix\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t<slot name='input' />\n\t\t\t\t\t</div>\n\t\t\t\t</p-tooltip>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('focusin')\n\thandleFocusIn() {\n\t\tthis._forceShowTooltip = true;\n\t}\n\n\t@Listen('focusout')\n\thandleFocusOut() {\n\t\tthis._forceShowTooltip = false;\n\t}\n\t/*\n With this, we shall hack the system in ways no one would ever have thought.\n\n <div class=\"pl-0 pr-0 border-l-0 border-r-0 rounded-tl-none rounded-bl-none rounded-tr-none rounded-br-none\"></div>\n */\n\tprivate _setInputClasses() {\n\t\tconst input = this._el.querySelector(':scope > [slot=\"input\"]');\n\n\t\tif (!input) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tagName = input.tagName.toLowerCase();\n\t\tif (this._whitelistedTags.indexOf(tagName) === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!input.classList.contains('p-input')) {\n\t\t\tinput.classList.add('p-input');\n\t\t}\n\n\t\tconst { prefix, suffix, errorAndErrorIsNotBoolean, errorVariant } =\n\t\t\tthis._getSlotInfo();\n\n\t\tif (\n\t\t\tsuffix ||\n\t\t\t(errorAndErrorIsNotBoolean && errorVariant === 'icon') ||\n\t\t\t(this.icon && this.iconPosition === 'end')\n\t\t) {\n\t\t\tinput.classList.add(\n\t\t\t\t'border-r-0',\n\t\t\t\t'rounded-tr-none',\n\t\t\t\t'rounded-br-none',\n\t\t\t\t'pr-0'\n\t\t\t);\n\t\t} else {\n\t\t\tinput.classList.remove(\n\t\t\t\t'border-r-0',\n\t\t\t\t'rounded-tr-none',\n\t\t\t\t'rounded-br-none',\n\t\t\t\t'pr-0'\n\t\t\t);\n\t\t}\n\n\t\tif (prefix || (this.icon && this.iconPosition === 'start')) {\n\t\t\tinput.classList.add(\n\t\t\t\t'border-l-0',\n\t\t\t\t'rounded-tl-none',\n\t\t\t\t'rounded-bl-none',\n\t\t\t\t'pl-0'\n\t\t\t);\n\t\t} else {\n\t\t\tinput.classList.remove(\n\t\t\t\t'border-l-0',\n\t\t\t\t'rounded-tl-none',\n\t\t\t\t'rounded-bl-none',\n\t\t\t\t'pl-0'\n\t\t\t);\n\t\t}\n\n\t\tif (this.size === 'small' && !input.classList.contains('size-small')) {\n\t\t\tinput.classList.add('size-small');\n\t\t}\n\n\t\tif (this.size !== 'small' && input.classList.contains('size-small')) {\n\t\t\tinput.classList.remove('size-small');\n\t\t}\n\t}\n\n\tprivate _getSlotInfo() {\n\t\tconst hasHelperSlot = !!this._el.querySelector(':scope > [slot=\"helper\"]');\n\t\tconst hasLabelSlot = !!this._el.querySelector(':scope > [slot=\"label\"]');\n\t\tconst hasPrefixSlot = !!this._el.querySelector(':scope > [slot=\"prefix\"]');\n\t\tconst hasSuffixSlot = !!this._el.querySelector(':scope > [slot=\"suffix\"]');\n\t\tconst hasHeaderSlot = !!this._el.querySelector(':scope > [slot=\"header\"]');\n\n\t\tconst helper = hasHelperSlot ? <slot name='helper' /> : this.helper;\n\t\tconst label = hasLabelSlot ? <slot name='label' /> : this.label;\n\t\tconst prefix = hasPrefixSlot ? <slot name='prefix' /> : this.prefix;\n\t\tconst suffix = hasSuffixSlot ? <slot name='suffix' /> : this.suffix;\n\n\t\tconst errorAndErrorIsNotBoolean =\n\t\t\tthis.error && typeof this.error === 'string' && this.error !== 'true';\n\n\t\treturn {\n\t\t\thasHelperSlot,\n\t\t\thasLabelSlot,\n\t\t\thasPrefixSlot,\n\t\t\thasSuffixSlot,\n\t\t\thasHeaderSlot,\n\t\t\thelper,\n\t\t\tlabel,\n\t\t\tprefix,\n\t\t\tsuffix,\n\t\t\terrorAndErrorIsNotBoolean,\n\t\t\terrorVariant:\n\t\t\t\tthis.errorVariant === 'auto'\n\t\t\t\t\t? this._el.offsetWidth <= 72\n\t\t\t\t\t\t? 'element'\n\t\t\t\t\t\t: 'icon'\n\t\t\t\t\t: this.errorVariant,\n\t\t};\n\t}\n\n\tprivate _focusInput() {\n\t\tconst input = this._el.querySelector(':scope > [slot=\"input\"]');\n\t\t(input as HTMLElement)[this.focusMethod]();\n\t}\n}\n"]}
@@ -1 +1 @@
1
- .flex{display:flex!important}.table{display:table!important}.h-\[3\.125rem\]{height:3.125rem!important}.h-\[4\.125rem\]{height:4.125rem!important}.h-\[6\.5rem\]{height:6.5rem!important}.flex-col{flex-direction:column!important}.items-center{align-items:center!important}.justify-center{justify-content:center!important}.gap-3{gap:.75rem!important}.overflow-hidden{overflow:hidden!important}.text-ellipsis{text-overflow:ellipsis!important}.rounded{border-radius:.25rem!important}.border{border-width:1px!important}.border-solid{border-style:solid!important}.border-mystic-dark{--tw-border-opacity:1!important;border-color:rgb(218 230 240/var(--tw-border-opacity))!important}.p-2{padding:.5rem!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}*{box-sizing:border-box}:host{display:flex}:host .content{align-items:center;display:flex;gap:.75rem;width:100%}:host .content .name{display:flex;flex-direction:column;justify-content:center;overflow:hidden}:host .content .name>:first-child{--tw-text-opacity:1;color:rgb(39 40 56/var(--tw-text-opacity));font-size:.875rem;font-weight:600;line-height:1.25rem}:host .content .name>:nth-child(2){--tw-text-opacity:1;color:rgb(152 154 183/var(--tw-text-opacity));font-size:.875rem;line-height:1.25rem}:host .content .name ::slotted(*){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host([size=xsmall]){height:1.5rem}:host([size=small]){height:2rem}:host([size=table]){height:2.5rem}:host([size=medium]){height:3.125rem}:host([size=large]){height:4rem}:host([size=xlarge]){height:6.5rem}:host(.has-dropdown){cursor:pointer}:host(.has-dropdown) .content{--tw-border-opacity:1!important;border-color:rgb(218 230 240/var(--tw-border-opacity))!important;border-radius:.25rem;border-style:solid!important;border-width:1px!important;padding:.5rem}:host(.has-dropdown[size=small]){height:3rem}:host(.has-dropdown[size=medium]){height:4.125rem}:host(.has-dropdown[size=large]){height:5rem}:host(.active) .content,:host(.has-dropdown:hover) .content{--tw-shadow:0px 0.3125rem 1rem rgba(0,24,98,.08),0px 0.0625rem 0.1875rem rgba(0,24,98,.13);--tw-shadow-colored:0px 0.3125rem 1rem var(--tw-shadow-color),0px 0.0625rem 0.1875rem var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}:host(.active) .content p-icon{--tw-text-opacity:1;color:rgb(82 138 250/var(--tw-text-opacity))}.static{position:static!important}.absolute{position:absolute!important}.ml-auto{margin-left:auto!important}.w-full{width:100%!important}.min-w-0{min-width:0!important}
1
+ .flex{display:flex!important}.table{display:table!important}.h-\[3\.125rem\]{height:3.125rem!important}.h-\[4\.125rem\]{height:4.125rem!important}.h-\[6\.5rem\]{height:6.5rem!important}.w-full{width:100%!important}.flex-col{flex-direction:column!important}.items-center{align-items:center!important}.justify-center{justify-content:center!important}.overflow-hidden{overflow:hidden!important}.text-ellipsis{text-overflow:ellipsis!important}.rounded{border-radius:.25rem!important}.border{border-width:1px!important}.border-solid{border-style:solid!important}.border-mystic-dark{--tw-border-opacity:1!important;border-color:rgb(218 230 240/var(--tw-border-opacity))!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}*{box-sizing:border-box}:host{display:flex}:host .content{align-items:center;display:flex;gap:.75rem;width:100%}:host .content .name{display:flex;flex-direction:column;justify-content:center;overflow:hidden}:host .content .name>:first-child{--tw-text-opacity:1;color:rgb(39 40 56/var(--tw-text-opacity));font-size:.875rem;font-weight:600;line-height:1.25rem}:host .content .name>:nth-child(2){--tw-text-opacity:1;color:rgb(152 154 183/var(--tw-text-opacity));font-size:.875rem;line-height:1.25rem}:host .content .name ::slotted(*){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host([size=xsmall]){height:1.5rem}:host([size=small]){height:2rem}:host([size=table]){height:2.5rem}:host([size=medium]){height:3.125rem}:host([size=large]){height:4rem}:host([size=xlarge]){height:6.5rem}:host(.has-dropdown){cursor:pointer}:host(.has-dropdown) .content{--tw-border-opacity:1!important;border-color:rgb(218 230 240/var(--tw-border-opacity))!important;border-radius:.25rem;border-style:solid!important;border-width:1px!important;padding:.5rem}:host(.has-dropdown[size=small]){height:3rem}:host(.has-dropdown[size=medium]){height:4.125rem}:host(.has-dropdown[size=large]){height:5rem}:host(.active) .content,:host(.has-dropdown:hover) .content{--tw-shadow:0px 0.3125rem 1rem rgba(0,24,98,.08),0px 0.0625rem 0.1875rem rgba(0,24,98,.13);--tw-shadow-colored:0px 0.3125rem 1rem var(--tw-shadow-color),0px 0.0625rem 0.1875rem var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}:host(.active) .content p-icon{--tw-text-opacity:1;color:rgb(82 138 250/var(--tw-text-opacity))}.static{position:static!important}.absolute{position:absolute!important}.ml-auto{margin-left:auto!important}.min-w-0{min-width:0!important}
@@ -11,10 +11,11 @@ export class Profile {
11
11
  render() {
12
12
  const hasDropdownSlot = !!this._el.querySelector(':scope > [slot="dropdown"]');
13
13
  const content = this._getContent(hasDropdownSlot);
14
- return (h(Host, { class: `p-profile ${hasDropdownSlot && 'has-dropdown'} ${this._dropdownOpen && 'active'}` }, hasDropdownSlot ? (h("p-dropdown", { class: "w-full min-w-0", strategy: "absolute", placement: this.variant === 'user' ? 'top-end' : 'bottom-end', applyFullWidth: true, applyMaxWidth: false, onIsOpen: (ev) => (this._dropdownOpen = ev.detail) }, content, h("div", { slot: "items" }, h("slot", { name: "dropdown" })))) : (content)));
14
+ const dropdownItems = h("slot", { name: 'dropdown' });
15
+ return (h(Host, { class: `p-profile ${hasDropdownSlot && 'has-dropdown'} ${this._dropdownOpen && 'active'}` }, hasDropdownSlot ? (h("p-dropdown", { class: 'w-full min-w-0', strategy: 'absolute', placement: this.variant === 'user' ? 'top-end' : 'bottom-end', applyFullWidth: true, applyMaxWidth: false, onIsOpen: ev => (this._dropdownOpen = ev.detail) }, content, h("div", { slot: 'items' }, dropdownItems))) : (content)));
15
16
  }
16
17
  _getContent(hasDropdownSlot) {
17
- return (h("div", { class: "content", slot: "trigger" }, h("slot", { name: "avatar" }), h("div", { class: "name" }, h("slot", { name: "title" }), h("slot", { name: "subtitle" })), hasDropdownSlot && this._getIcon()));
18
+ return (h("div", { class: 'content', slot: 'trigger' }, h("slot", { name: 'avatar' }), h("div", { class: 'name' }, h("slot", { name: 'title' }), h("slot", { name: 'subtitle' })), hasDropdownSlot && this._getIcon()));
18
19
  }
19
20
  _updateAvatar() {
20
21
  var _a, _b;
@@ -26,7 +27,7 @@ export class Profile {
26
27
  avatar.size = (_b = this.size) !== null && _b !== void 0 ? _b : avatar === null || avatar === void 0 ? void 0 : avatar.size;
27
28
  }
28
29
  _getIcon() {
29
- return (h("p-icon", { class: "ml-auto", variant: this.variant === 'company' ? 'chevron' : 'more' }));
30
+ return (h("p-icon", { class: 'ml-auto', variant: this.variant === 'company' ? 'chevron' : 'more' }));
30
31
  }
31
32
  static get is() { return "p-profile"; }
32
33
  static get encapsulation() { return "shadow"; }
@@ -64,7 +65,7 @@ export class Profile {
64
65
  "type": "string",
65
66
  "mutable": false,
66
67
  "complexType": {
67
- "original": "| 'xsmall'\n\t\t| 'small'\n | 'table'\n\t\t| 'medium'\n\t\t| 'large'\n\t\t| 'xlarge'",
68
+ "original": "| 'xsmall'\n\t\t| 'small'\n\t\t| 'table'\n\t\t| 'medium'\n\t\t| 'large'\n\t\t| 'xlarge'",
68
69
  "resolved": "\"large\" | \"medium\" | \"small\" | \"table\" | \"xlarge\" | \"xsmall\"",
69
70
  "references": {}
70
71
  },
@@ -1 +1 @@
1
- {"version":3,"file":"profile.component.js","sourceRoot":"","sources":["../../../../src/components/molecules/profile/profile.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAOzE,MAAM,OAAO,OAAO;;mBAImB,MAAM;gBAW9B,OAAO;yBAOY,KAAK;;EAEtC,mBAAmB;IAClB,IAAI,CAAC,aAAa,EAAE,CAAC;EACtB,CAAC;EAED,MAAM;IACL,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAC/C,4BAA4B,CAC5B,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAClD,OAAO,CACN,EAAC,IAAI,IACJ,KAAK,EAAE,aAAa,eAAe,IAAI,cAAc,IACpD,IAAI,CAAC,aAAa,IAAI,QACvB,EAAE,IAED,eAAe,CAAC,CAAC,CAAC,CAClB,kBACC,KAAK,EAAC,gBAAgB,EACtB,QAAQ,EAAC,UAAU,EACnB,SAAS,EACR,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,EAEnD,cAAc,EAAE,IAAI,EACpB,aAAa,EAAE,KAAK,EACpB,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC,MAAM,CAAC;MAEjD,OAAO;MACR,WAAK,IAAI,EAAC,OAAO;QAChB,YAAM,IAAI,EAAC,UAAU,GAAG,CACnB,CACM,CACb,CAAC,CAAC,CAAC,CACH,OAAO,CACP,CACK,CACP,CAAC;EACH,CAAC;EAEO,WAAW,CAAC,eAAe;IAClC,OAAO,CACN,WAAK,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS;MAClC,YAAM,IAAI,EAAC,QAAQ,GAAG;MACtB,WAAK,KAAK,EAAC,MAAM;QAChB,YAAM,IAAI,EAAC,OAAO,GAAG;QACrB,YAAM,IAAI,EAAC,UAAU,GAAG,CACnB;MAEL,eAAe,IAAI,IAAI,CAAC,QAAQ,EAAE,CAC9B,CACN,CAAC;EACH,CAAC;EAEO,aAAa;;IACpB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CACpC,yBAAyB,CACH,CAAC;IAExB,IAAI,CAAC,MAAM,EAAE;MACZ,OAAO;KACP;IAED,MAAM,CAAC,OAAO,GAAG,MAAA,IAAI,CAAC,OAAO,mCAAI,MAAM,CAAC,OAAO,CAAC;IAChD,MAAM,CAAC,IAAI,GAAG,MAAA,IAAI,CAAC,IAAI,mCAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC;EACzC,CAAC;EAEO,QAAQ;IACf,OAAO,CACN,cACC,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,GACvD,CACF,CAAC;EACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import { Component, Element, h, Host, Prop, State } from '@stencil/core';\n\n@Component({\n\ttag: 'p-profile',\n\tstyleUrl: 'profile.component.scss',\n\tshadow: true,\n})\nexport class Profile {\n\t/**\n\t * The variant of the profile\n\t */\n\t@Prop() variant: 'company' | 'user' = 'user';\n\n\t/**\n\t * The size of the profile avatar\n\t */\n\t@Prop({ reflect: true }) size:\n\t\t| 'xsmall'\n\t\t| 'small'\n | 'table'\n\t\t| 'medium'\n\t\t| 'large'\n\t\t| 'xlarge' = 'small';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _dropdownOpen = false;\n\n\tcomponentWillRender() {\n\t\tthis._updateAvatar();\n\t}\n\n\trender() {\n\t\tconst hasDropdownSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"dropdown\"]'\n\t\t);\n\t\tconst content = this._getContent(hasDropdownSlot);\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-profile ${hasDropdownSlot && 'has-dropdown'} ${\n\t\t\t\t\tthis._dropdownOpen && 'active'\n\t\t\t\t}`}\n\t\t\t>\n\t\t\t\t{hasDropdownSlot ? (\n\t\t\t\t\t<p-dropdown\n\t\t\t\t\t\tclass=\"w-full min-w-0\"\n\t\t\t\t\t\tstrategy=\"absolute\"\n\t\t\t\t\t\tplacement={\n\t\t\t\t\t\t\tthis.variant === 'user' ? 'top-end' : 'bottom-end'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tapplyFullWidth={true}\n\t\t\t\t\t\tapplyMaxWidth={false}\n\t\t\t\t\t\tonIsOpen={(ev) => (this._dropdownOpen = ev.detail)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{content}\n\t\t\t\t\t\t<div slot=\"items\">\n\t\t\t\t\t\t\t<slot name=\"dropdown\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</p-dropdown>\n\t\t\t\t) : (\n\t\t\t\t\tcontent\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate _getContent(hasDropdownSlot) {\n\t\treturn (\n\t\t\t<div class=\"content\" slot=\"trigger\">\n\t\t\t\t<slot name=\"avatar\" />\n\t\t\t\t<div class=\"name\">\n\t\t\t\t\t<slot name=\"title\" />\n\t\t\t\t\t<slot name=\"subtitle\" />\n\t\t\t\t</div>\n\n\t\t\t\t{hasDropdownSlot && this._getIcon()}\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate _updateAvatar() {\n\t\tconst avatar = this._el.querySelector(\n\t\t\t'p-avatar[slot=\"avatar\"]'\n\t\t) as HTMLPAvatarElement;\n\n\t\tif (!avatar) {\n\t\t\treturn;\n\t\t}\n\n\t\tavatar.variant = this.variant ?? avatar.variant;\n\t\tavatar.size = this.size ?? avatar?.size;\n\t}\n\n\tprivate _getIcon() {\n\t\treturn (\n\t\t\t<p-icon\n\t\t\t\tclass=\"ml-auto\"\n\t\t\t\tvariant={this.variant === 'company' ? 'chevron' : 'more'}\n\t\t\t/>\n\t\t);\n\t}\n}\n"]}
1
+ {"version":3,"file":"profile.component.js","sourceRoot":"","sources":["../../../../src/components/molecules/profile/profile.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAOzE,MAAM,OAAO,OAAO;;mBAImB,MAAM;gBAW9B,OAAO;yBAOY,KAAK;;EAEtC,mBAAmB;IAClB,IAAI,CAAC,aAAa,EAAE,CAAC;EACtB,CAAC;EAED,MAAM;IACL,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAC/C,4BAA4B,CAC5B,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,YAAM,IAAI,EAAC,UAAU,GAAG,CAAC;IAC/C,OAAO,CACN,EAAC,IAAI,IACJ,KAAK,EAAE,aAAa,eAAe,IAAI,cAAc,IACpD,IAAI,CAAC,aAAa,IAAI,QACvB,EAAE,IAED,eAAe,CAAC,CAAC,CAAC,CAClB,kBACC,KAAK,EAAC,gBAAgB,EACtB,QAAQ,EAAC,UAAU,EACnB,SAAS,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,EAC7D,cAAc,EAAE,IAAI,EACpB,aAAa,EAAE,KAAK,EACpB,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC,MAAM,CAAC;MAE/C,OAAO;MACR,WAAK,IAAI,EAAC,OAAO,IAAE,aAAa,CAAO,CAC3B,CACb,CAAC,CAAC,CAAC,CACH,OAAO,CACP,CACK,CACP,CAAC;EACH,CAAC;EAEO,WAAW,CAAC,eAAe;IAClC,OAAO,CACN,WACC,KAAK,EAAC,SAAS,EACf,IAAI,EAAC,SAAS;MAEd,YAAM,IAAI,EAAC,QAAQ,GAAG;MACtB,WAAK,KAAK,EAAC,MAAM;QAChB,YAAM,IAAI,EAAC,OAAO,GAAG;QACrB,YAAM,IAAI,EAAC,UAAU,GAAG,CACnB;MAEL,eAAe,IAAI,IAAI,CAAC,QAAQ,EAAE,CAC9B,CACN,CAAC;EACH,CAAC;EAEO,aAAa;;IACpB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CACpC,yBAAyB,CACH,CAAC;IAExB,IAAI,CAAC,MAAM,EAAE;MACZ,OAAO;KACP;IAED,MAAM,CAAC,OAAO,GAAG,MAAA,IAAI,CAAC,OAAO,mCAAI,MAAM,CAAC,OAAO,CAAC;IAChD,MAAM,CAAC,IAAI,GAAG,MAAA,IAAI,CAAC,IAAI,mCAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC;EACzC,CAAC;EAEO,QAAQ;IACf,OAAO,CACN,cACC,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,GACvD,CACF,CAAC;EACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import { Component, Element, h, Host, Prop, State } from '@stencil/core';\n\n@Component({\n\ttag: 'p-profile',\n\tstyleUrl: 'profile.component.scss',\n\tshadow: true,\n})\nexport class Profile {\n\t/**\n\t * The variant of the profile\n\t */\n\t@Prop() variant: 'company' | 'user' = 'user';\n\n\t/**\n\t * The size of the profile avatar\n\t */\n\t@Prop({ reflect: true }) size:\n\t\t| 'xsmall'\n\t\t| 'small'\n\t\t| 'table'\n\t\t| 'medium'\n\t\t| 'large'\n\t\t| 'xlarge' = 'small';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _dropdownOpen = false;\n\n\tcomponentWillRender() {\n\t\tthis._updateAvatar();\n\t}\n\n\trender() {\n\t\tconst hasDropdownSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"dropdown\"]'\n\t\t);\n\t\tconst content = this._getContent(hasDropdownSlot);\n\t\tconst dropdownItems = <slot name='dropdown' />;\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-profile ${hasDropdownSlot && 'has-dropdown'} ${\n\t\t\t\t\tthis._dropdownOpen && 'active'\n\t\t\t\t}`}\n\t\t\t>\n\t\t\t\t{hasDropdownSlot ? (\n\t\t\t\t\t<p-dropdown\n\t\t\t\t\t\tclass='w-full min-w-0'\n\t\t\t\t\t\tstrategy='absolute'\n\t\t\t\t\t\tplacement={this.variant === 'user' ? 'top-end' : 'bottom-end'}\n\t\t\t\t\t\tapplyFullWidth={true}\n\t\t\t\t\t\tapplyMaxWidth={false}\n\t\t\t\t\t\tonIsOpen={ev => (this._dropdownOpen = ev.detail)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{content}\n\t\t\t\t\t\t<div slot='items'>{dropdownItems}</div>\n\t\t\t\t\t</p-dropdown>\n\t\t\t\t) : (\n\t\t\t\t\tcontent\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate _getContent(hasDropdownSlot) {\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclass='content'\n\t\t\t\tslot='trigger'\n\t\t\t>\n\t\t\t\t<slot name='avatar' />\n\t\t\t\t<div class='name'>\n\t\t\t\t\t<slot name='title' />\n\t\t\t\t\t<slot name='subtitle' />\n\t\t\t\t</div>\n\n\t\t\t\t{hasDropdownSlot && this._getIcon()}\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate _updateAvatar() {\n\t\tconst avatar = this._el.querySelector(\n\t\t\t'p-avatar[slot=\"avatar\"]'\n\t\t) as HTMLPAvatarElement;\n\n\t\tif (!avatar) {\n\t\t\treturn;\n\t\t}\n\n\t\tavatar.variant = this.variant ?? avatar.variant;\n\t\tavatar.size = this.size ?? avatar?.size;\n\t}\n\n\tprivate _getIcon() {\n\t\treturn (\n\t\t\t<p-icon\n\t\t\t\tclass='ml-auto'\n\t\t\t\tvariant={this.variant === 'company' ? 'chevron' : 'more'}\n\t\t\t/>\n\t\t);\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"select.component.js","sourceRoot":"","sources":["../../../../src/components/molecules/select/select.component.tsx"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tState,\n\tWatch,\n} from '@stencil/core';\nimport { childOf } from '../../../utils';\nimport { IconVariant } from '../../atoms/icon/icon.component';\n\n@Component({\n\ttag: 'p-select',\n\tstyleUrl: 'select.component.scss',\n\tshadow: false,\n})\nexport class Select {\n\t/**\n\t * The items to show in the dropdown\n\t */\n\t@Prop() items: string | any[];\n\n\t/**\n\t * Wether to enable multi select\n\t */\n\t@Prop({ reflect: true }) multi: boolean;\n\n\t/**\n\t * Icon of the select box\n\t */\n\t@Prop() icon: IconVariant;\n\n\t/**\n\t * The current query\n\t */\n\t@Prop() query: string;\n\n\t/**\n\t * The placeholder of the input\n\t */\n\t@Prop() placeholder: string;\n\n\t/**\n\t * The placeholder of the input used for auto complete\n\t */\n\t@Prop() autocompletePlaceholder: string = 'Search...';\n\n\t/**\n\t * The current value\n\t */\n\t@Prop() value: any;\n\n\t/**\n\t * The key of the object to display\n\t */\n\t@Prop() displayKey: string = 'text';\n\n\t/**\n\t * The key of the object to display in the dropdown (overwrites displayKey)\n\t */\n\t@Prop() dropdownDisplayKey: string | undefined;\n\n\t/**\n\t * The key of the object to display in the input (overwrites displayKey)\n\t */\n\t@Prop() selectionDisplayKey: string | undefined;\n\n\t/**\n\t * The key of the object to return\n\t */\n\t@Prop() valueKey: string;\n\n\t/**\n\t * The key of avatar within an item to show\n\t */\n\t@Prop() avatarKey: string;\n\n\t/**\n\t * The key of icon variant within an item to show\n\t */\n\t@Prop() iconKey: string;\n\n\t/**\n\t * Wether to show the icon also on the selected Item\n\t */\n\t@Prop() showIconInSelectedItem: string;\n\n\t/**\n\t * The key of a class in an item to apply\n\t */\n\t@Prop() classKey: string = 'class';\n\n\t/**\n\t * Wether to apply the item's class also on the selected item\n\t */\n\t@Prop() applyClassOnSelectedItem: string;\n\n\t/**\n\t * The key of avatar letters within an item to show when the avatar url doesn't work\n\t */\n\t@Prop() avatarLettersKey: string;\n\n\t/**\n\t * The key to identify an object\n\t */\n\t@Prop() identifierKey: string;\n\n\t/**\n\t * The key of the object to display\n\t */\n\t@Prop() queryKey?: string;\n\n\t/**\n\t * Wether to automatically select the first item\n\t */\n\t@Prop() autoSelectFirst: boolean = true;\n\n\t/**\n\t * Wether to show the chevron or not\n\t */\n\t@Prop() showChevron: boolean = true;\n\n\t/**\n\t * The maximum amount of items to display\n\t */\n\t@Prop() maxDisplayedItems: number = 10;\n\n\t/**\n\t * Wether to enable autocomplete\n\t */\n\t@Prop() enableAutocomplete: boolean = true;\n\n\t/**\n\t * Wether the input uses async filtering\n\t */\n\t@Prop() asyncFilter: boolean = false;\n\n\t/**\n\t * Wether to show loading items\n\t */\n\t@Prop() loading: boolean = false;\n\n\t/**\n\t * Wether to show the select all item with multi select\n\t */\n\t@Prop() enableSelectAll: boolean = false;\n\n\t/**\n\t * The text of the select all item\n\t */\n\t@Prop() selectAllText: string = 'Select all';\n\n\t/**\n\t * The icon to prefix for select all\n\t */\n\t@Prop() selectAllIcon: IconVariant | undefined;\n\n\t/**\n\t * Event when the query of the autocomplete changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tqueryChange: EventEmitter<string>;\n\n\t/**\n\t * Event when the value changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tvalueChange: EventEmitter<any>;\n\n\t/**\n\t * Event when the select all item has been selected or not\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tselectAllChange: EventEmitter<any>;\n\n\t/**\n\t * Event when the dropdown shows\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tdropdownShown: EventEmitter<any>;\n\n\t/**\n\t * The size of the input group used by the select\n\t */\n\t@Prop() size: 'small' | 'medium' = 'medium';\n\n\t/**\n\t * The prefix of the input group used by the select\n\t */\n\t@Prop() prefix: string;\n\n\t/**\n\t * The label of the input group used by the select\n\t */\n\t@Prop() label: string;\n\n\t/**\n\t * The helper of the input group used by the select\n\t */\n\t@Prop() helper: string;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean;\n\n\t/**\n\t * The helper of the input group used by the select\n\t */\n\t@Prop({ reflect: true }) error: string;\n\n\t/**\n\t * Wether the input group is disabled used by the select\n\t */\n\t@Prop({ reflect: true }) disabled: boolean = false;\n\n\t/**\n\t * Wether to show a \"add\" item\n\t */\n\t@Prop() showAddItem: boolean = false;\n\n\t/**\n\t * The text to show when add item is being shown\n\t */\n\t@Prop() addItemText: string = 'Add item';\n\n\t/**\n\t * Event when the add item is clicked\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tadd: EventEmitter;\n\n\t/**\n\t * The text to show when items is empty\n\t */\n\t@Prop() emptyStateText: string = 'No items available';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _showDropdown: any = false;\n\t@State() private _selectedItem: any = null;\n\n\t@State() private _allSelected: boolean = false;\n\n\t@State() private _amountHidden = 0;\n\n\tprivate _inputRef: HTMLDivElement;\n\tprivate autocompleteInputRef: HTMLInputElement;\n\tprivate _multiContainerRef: HTMLElement;\n\n\tprivate _resizeObserver: ResizeObserver;\n\tprivate _resizeDebounceTimer: NodeJS.Timer;\n\n\tget _items() {\n\t\tif (!this.items || this.loading) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet items =\n\t\t\ttypeof this.items === 'string' ? JSON.parse(this.items) : this.items;\n\n\t\tif (typeof items?.[0] === 'string') {\n\t\t\tthis.displayKey = 'text';\n\t\t\tthis.valueKey = 'value';\n\n\t\t\titems = items.map(str => ({\n\t\t\t\tvalue: str,\n\t\t\t\ttext: str,\n\t\t\t}));\n\t\t}\n\n\t\tif (this.query?.length && !this.asyncFilter) {\n\t\t\titems = items.filter(item => {\n\t\t\t\tif (this.queryKey) {\n\t\t\t\t\treturn this._checkvalue(this.queryKey, item);\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\tthis._checkvalue(this._identifierKey, item) ||\n\t\t\t\t\tthis._checkvalue(this.displayKey, item)\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\n\t\treturn items?.slice(0, this.maxDisplayedItems);\n\t}\n\n\tget _displayValue() {\n\t\tif (!this._selectedItem) {\n\t\t\treturn this.placeholder;\n\t\t}\n\n\t\tif (this.multi) {\n\t\t\tif (this._selectedItem?.length === 0) {\n\t\t\t\treturn this.placeholder;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tclass={`multi-container size-${this.size}`}\n\t\t\t\t\tref={ref => (this._multiContainerRef = ref)}\n\t\t\t\t>\n\t\t\t\t\t{this._selectedItem.map(item => (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass='item'\n\t\t\t\t\t\t\tonClick={() => this._selectValue(item)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{item[this.selectionDisplayKey ?? this.displayKey]}\n\t\t\t\t\t\t\t<p-icon variant='negative' />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t))}\n\n\t\t\t\t\t<div class='extra hidden'>+{this._amountHidden}</div>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn this._getDisplay(this._selectedItem, true);\n\t}\n\n\tget _identifierKey() {\n\t\treturn this.identifierKey ?? this.valueKey ?? 'value';\n\t}\n\n\tcomponentDidLoad() {\n\t\tif (!this.valueKey && !this.identifierKey) {\n\t\t\tthrow new Error('You must provide a valueKey or identifierKey');\n\t\t}\n\n\t\tif (this.multi) {\n\t\t\tthis._setMultiContainerMaxWidth();\n\n\t\t\tthis._resizeObserver = new ResizeObserver(() => {\n\t\t\t\tif (this._resizeDebounceTimer) {\n\t\t\t\t\tclearTimeout(this._resizeDebounceTimer);\n\t\t\t\t\tthis._resizeDebounceTimer = null;\n\t\t\t\t}\n\n\t\t\t\tthis._resizeDebounceTimer = setTimeout(() => {\n\t\t\t\t\tthis._setMultiContainerMaxWidth();\n\t\t\t\t\tthis._checkSelectedItems();\n\t\t\t\t}, 200);\n\t\t\t});\n\t\t\tthis._resizeObserver.observe(this._el);\n\t\t}\n\n\t\tif (this.value) {\n\t\t\tthis._valueChange();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.itemChanges();\n\t}\n\n\tcomponentDidRender() {\n\t\tif (this.multi) {\n\t\t\tthis._setMultiContainerMaxWidth();\n\t\t\tthis._checkSelectedItems();\n\t\t}\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this.multi) {\n\t\t\tthis._resizeObserver.disconnect();\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class='p-select'>\n\t\t\t\t<p-dropdown\n\t\t\t\t\tdisableTriggerClick={true}\n\t\t\t\t\tcalculateWidth={true}\n\t\t\t\t\tinsideClick={true}\n\t\t\t\t\tscrollable={this.enableAutocomplete ? 'large' : true}\n\t\t\t\t\tshow={this._showDropdown}\n\t\t\t\t\tonIsOpen={ev => this._onDropdownOpen(ev)}\n\t\t\t\t>\n\t\t\t\t\t<p-input-group\n\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\ticon={this.icon}\n\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\tprefix={this.prefix}\n\t\t\t\t\t\tlabel={this.label}\n\t\t\t\t\t\thelper={this.helper}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\terror={this.error}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\tfocused={this._showDropdown}\n\t\t\t\t\t\tforceShowTooltip={this.error?.length && this._showDropdown}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tslot='input'\n\t\t\t\t\t\t\tclass={`p-input read-only cursor-pointer ${\n\t\t\t\t\t\t\t\tthis.showChevron ? 'max-w-[calc(100%-3rem)]' : 'w-full'\n\t\t\t\t\t\t\t} size-${this.size} ${\n\t\t\t\t\t\t\t\tthis._displayValue === this.placeholder\n\t\t\t\t\t\t\t\t\t? 'font-medium text-storm-medium'\n\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\tcontenteditable\n\t\t\t\t\t\t\tonFocus={ev => this._onFocus(ev)}\n\t\t\t\t\t\t\tonMouseDown={ev => this._onMouseDown(ev)}\n\t\t\t\t\t\t\tonClick={() => this._onClick()}\n\t\t\t\t\t\t\tref={ref => (this._inputRef = ref)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this._displayValue}\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t{this.showChevron && (\n\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\tvariant='chevron'\n\t\t\t\t\t\t\t\tslot='suffix'\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</p-input-group>\n\t\t\t\t\t<div slot='items'>\n\t\t\t\t\t\t{this.loading ? this._getLoadingItems() : this._getItems()}\n\t\t\t\t\t\t{this.showAddItem && this._getAddItem()}\n\t\t\t\t\t</div>\n\t\t\t\t</p-dropdown>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler({ target }) {\n\t\tif (!this._showDropdown || childOf(target, this._el)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = false;\n\t}\n\n\t@Watch('value')\n\tprivate _valueChange() {\n\t\tsetTimeout(() => this._preselectItem());\n\t}\n\n\t@Watch('items')\n\tpublic itemChanges() {\n\t\tsetTimeout(() => this._preselectItem());\n\t}\n\n\t@Watch('_showDropdown')\n\tpublic _showDropdownChanges() {\n\t\tthis.dropdownShown.emit({\n\t\t\tvalue: this._showDropdown,\n\t\t\tquery: this.query,\n\t\t});\n\t}\n\n\t@Watch('multi')\n\tpublic multiChanges() {\n\t\tif (this._selectedItem && !Array.isArray(this._selectedItem)) {\n\t\t\tthis._selectedItem = [];\n\t\t}\n\t}\n\n\tprivate _preselectItem() {\n\t\tlet value =\n\t\t\ttypeof this.value === 'string' && this.multi\n\t\t\t\t? JSON.parse(this.value)\n\t\t\t\t: this.value;\n\n\t\tif (this.multi) {\n\t\t\tif (!Array.isArray(value)) {\n\t\t\t\tthis.value = [];\n\t\t\t\tthis.valueChange.emit(this.value);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.value = value;\n\t\t\tif (!value.length) {\n\t\t\t\tthis._selectedItem = [];\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._selectedItem =\n\t\t\t\t!!this.valueKey && this.valueKey !== 'false'\n\t\t\t\t\t? this._items.filter(i => value.includes(i?.[this.valueKey]))\n\t\t\t\t\t: [...value];\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._selectedItem && !value && this.autoSelectFirst) {\n\t\t\tvalue = this._items[0];\n\t\t}\n\n\t\tconst identifier =\n\t\t\ttypeof value === 'object' && value !== null\n\t\t\t\t? value[this._identifierKey]\n\t\t\t\t: value;\n\t\tconst parsedValue =\n\t\t\ttypeof identifier === 'string' || typeof identifier === 'number'\n\t\t\t\t? identifier\n\t\t\t\t: JSON.stringify(identifier);\n\n\t\tconst currentValue = this._selectedItem\n\t\t\t? this._selectedItem?.[this._identifierKey]\n\t\t\t: null;\n\t\tconst currentParsedValue =\n\t\t\ttypeof currentValue === 'string' || typeof currentValue === 'number'\n\t\t\t\t? currentValue\n\t\t\t\t: JSON.stringify(currentValue);\n\n\t\tif (this._selectedItem && currentParsedValue === parsedValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._items?.length && value) {\n\t\t\tthis._selectValue(value, false);\n\t\t\treturn;\n\t\t}\n\n\t\tconst item = this._items.find(i => {\n\t\t\tconst itemIdentifier = i?.[this._identifierKey];\n\t\t\tconst parsedItemIdentifier =\n\t\t\t\ttypeof itemIdentifier === 'string' || typeof itemIdentifier === 'number'\n\t\t\t\t\t? itemIdentifier\n\t\t\t\t\t: JSON.stringify(itemIdentifier);\n\n\t\t\treturn parsedItemIdentifier === parsedValue;\n\t\t});\n\n\t\tthis._selectValue(!!item ? item : value, false);\n\t}\n\n\tprivate _selectValue(item, forceBlur = true) {\n\t\tlet value =\n\t\t\t!!this.valueKey && this.valueKey !== 'false' && item !== null\n\t\t\t\t? item?.[this.valueKey]\n\t\t\t\t: item;\n\n\t\tif (this.multi) {\n\t\t\tif (!this._selectedItem || !Array.isArray(this._selectedItem)) {\n\t\t\t\tthis._selectedItem = [];\n\t\t\t}\n\n\t\t\tif (!this.value || !Array.isArray(this.value)) {\n\t\t\t\tthis.value = [];\n\t\t\t}\n\n\t\t\tconst selectedItem = [...this._selectedItem];\n\t\t\tconst valueArray = [...this.value];\n\n\t\t\tconst includesIndex = selectedItem.findIndex(\n\t\t\t\ti => i[this._identifierKey] === item[this._identifierKey]\n\t\t\t);\n\t\t\tif (includesIndex === -1) {\n\t\t\t\tselectedItem.push(item);\n\t\t\t\tvalueArray.push(value);\n\t\t\t} else {\n\t\t\t\tselectedItem.splice(includesIndex, 1);\n\t\t\t\tvalueArray.splice(includesIndex, 1);\n\t\t\t}\n\n\t\t\tthis._selectedItem = selectedItem;\n\t\t\tthis.value = valueArray;\n\t\t\tthis.valueChange.emit(valueArray);\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectedItem = item;\n\t\tthis.value = value;\n\t\tthis.valueChange.emit(value);\n\n\t\tthis._onBlur(forceBlur);\n\t}\n\n\tprivate _onFocus(ev) {\n\t\tev.preventDefault();\n\t\tthis._inputRef.blur();\n\n\t\tif (!this._showDropdown) {\n\t\t\tthis._showDropdown = true;\n\t\t}\n\n\t\treturn;\n\t}\n\n\tprivate _onMouseDown(ev) {\n\t\tif (this.enableAutocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tev.preventDefault();\n\t}\n\n\tprivate _onClick() {\n\t\tif (this.enableAutocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = !this._showDropdown;\n\t}\n\n\tprivate _onBlur(force = false) {\n\t\tif (this.enableAutocomplete && !force) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = false;\n\t}\n\n\tprivate _onAutoComplete(ev) {\n\t\tif (!this.enableAutocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = true;\n\n\t\tthis.query = ev.target.value;\n\t\tthis.queryChange.emit(ev.target.value);\n\t}\n\n\tprivate _checkvalue(key, item) {\n\t\treturn (\n\t\t\titem?.[key]\n\t\t\t\t?.toString()\n\t\t\t\t?.toLowerCase()\n\t\t\t\t.indexOf(this.query?.toLowerCase()) >= 0\n\t\t);\n\t}\n\n\tprivate _getItems() {\n\t\tlet items = this._items.map(item => (\n\t\t\t<p-dropdown-menu-item\n\t\t\t\tuseContainer={false}\n\t\t\t\tonClick={() => this._selectValue(item)}\n\t\t\t\tactive={\n\t\t\t\t\tthis.multi &&\n\t\t\t\t\t!!this._selectedItem &&\n\t\t\t\t\tArray.isArray(this._selectedItem)\n\t\t\t\t\t\t? this._selectedItem.findIndex(\n\t\t\t\t\t\t\t\ti => i[this._identifierKey] === item[this._identifierKey]\n\t\t\t\t\t\t ) >= 0\n\t\t\t\t\t\t: item[this._identifierKey] ===\n\t\t\t\t\t\t this._selectedItem?.[this._identifierKey]\n\t\t\t\t}\n\t\t\t\tvariant={this.multi ? 'checkbox' : 'default'}\n\t\t\t\tclass='justify-start'\n\t\t\t>\n\t\t\t\t{this._getDisplay(item)}\n\t\t\t</p-dropdown-menu-item>\n\t\t));\n\n\t\tif (!this._items.length) {\n\t\t\titems = [\n\t\t\t\t<p class='w-full p-2 text-center text-sm text-storm-medium'>\n\t\t\t\t\t{this.emptyStateText}\n\t\t\t\t</p>,\n\t\t\t];\n\t\t}\n\n\t\tif (this.enableSelectAll && this._items.length) {\n\t\t\titems.unshift(\n\t\t\t\t<p-dropdown-menu-item\n\t\t\t\t\tuseContainer={false}\n\t\t\t\t\tvariant='checkbox'\n\t\t\t\t\tonClick={() => this._selectAllChange()}\n\t\t\t\t\tactive={this._allSelected}\n\t\t\t\t>\n\t\t\t\t\t{this.selectAllIcon?.length ? (\n\t\t\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t\t\t<div class='flex w-6 justify-center text-lg'>\n\t\t\t\t\t\t\t\t<p-icon variant={this.selectAllIcon} />\n\t\t\t\t\t\t\t</div>{' '}\n\t\t\t\t\t\t\t{this.selectAllText}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tthis.selectAllText\n\t\t\t\t\t)}\n\t\t\t\t</p-dropdown-menu-item>\n\t\t\t);\n\t\t}\n\n\t\tif (this.enableAutocomplete) {\n\t\t\titems.unshift(this._getAutoCompleteItem());\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tprivate _getAddItem() {\n\t\treturn (\n\t\t\t<p-dropdown-menu-item\n\t\t\t\tonClick={() => this.add.emit()}\n\t\t\t\tuseContainer={false}\n\t\t\t>\n\t\t\t\t<span class='flex items-center gap-1 font-semibold text-indigo'>\n\t\t\t\t\t{this.addItemText}\n\t\t\t\t\t<p-icon variant='plus' />\n\t\t\t\t</span>\n\t\t\t</p-dropdown-menu-item>\n\t\t);\n\t}\n\n\tprivate _getLoadingItems() {\n\t\tconst items = [0, 0, 0].map(() => (\n\t\t\t<p-dropdown-menu-item enableHover={false}>\n\t\t\t\t<p-loader\n\t\t\t\t\tvariant='ghost'\n\t\t\t\t\tclass='h-6 w-full rounded'\n\t\t\t\t/>\n\t\t\t</p-dropdown-menu-item>\n\t\t));\n\n\t\tif (this.enableAutocomplete) {\n\t\t\titems.unshift(this._getAutoCompleteItem());\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tprivate _getAutoCompleteItem() {\n\t\treturn (\n\t\t\t<div class='sticky top-0 -mt-2 bg-white pt-2'>\n\t\t\t\t<input\n\t\t\t\t\tclass='p-input size-small sticky top-2 mb-2'\n\t\t\t\t\tplaceholder={this.autocompletePlaceholder}\n\t\t\t\t\tonInput={ev => this._onAutoComplete(ev)}\n\t\t\t\t\tref={ref => (this.autocompleteInputRef = ref)}\n\t\t\t\t\tvalue={this.query}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate _setMultiContainerMaxWidth() {\n\t\tif (!this._inputRef || !this._multiContainerRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._multiContainerRef.style.maxWidth = `${\n\t\t\tthis._inputRef.clientWidth - 16\n\t\t}px`;\n\t}\n\n\tprivate _checkSelectedItems() {\n\t\tif (!this._multiContainerRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst containerRect = this._multiContainerRef.getBoundingClientRect();\n\t\tconst items = Array.from(\n\t\t\tthis._multiContainerRef.querySelectorAll('.item')\n\t\t) as HTMLElement[];\n\n\t\tlet amountHidden = 0;\n\n\t\tfor (const child of items) {\n\t\t\tchild.classList.remove('hidden');\n\n\t\t\tconst childRect = child.getBoundingClientRect();\n\t\t\tif (childRect.right > containerRect.right) {\n\t\t\t\tchild.classList.add('hidden');\n\t\t\t\tamountHidden++;\n\t\t\t}\n\t\t}\n\n\t\tthis._amountHidden = amountHidden;\n\t\tconst extra = this._multiContainerRef.querySelector('.extra');\n\t\tif (!extra) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!extra.classList.contains('hidden')) {\n\t\t\textra.classList.add('hidden');\n\t\t}\n\n\t\tif (amountHidden > 0) {\n\t\t\textra.classList.remove('hidden');\n\t\t}\n\t}\n\n\tprivate _onDropdownOpen(ev) {\n\t\tif (!ev.detail || !this.autocompleteInputRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.autocompleteInputRef.focus();\n\t}\n\n\tprivate _selectAllChange() {\n\t\tthis._allSelected = !this._allSelected;\n\t\tthis.selectAllChange.emit(this._allSelected);\n\t}\n\n\tprivate _getDisplay(item, isSelection = false) {\n\t\tlet content = (\n\t\t\t<div class='text-container'>\n\t\t\t\t{\n\t\t\t\t\titem[\n\t\t\t\t\t\tisSelection\n\t\t\t\t\t\t\t? this.selectionDisplayKey ?? this.displayKey\n\t\t\t\t\t\t\t: this.displayKey\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t</div>\n\t\t);\n\n\t\tif (this.avatarKey) {\n\t\t\tcontent = (\n\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t<p-avatar\n\t\t\t\t\t\tsize='xsmall'\n\t\t\t\t\t\tsrc={item[this.avatarKey]}\n\t\t\t\t\t\tletters={item[this.avatarLettersKey]}\n\t\t\t\t\t></p-avatar>\n\t\t\t\t\t<div class='text-container'>\n\t\t\t\t\t\t{item[this.dropdownDisplayKey ?? this.displayKey]}\n\t\t\t\t\t</div>\n\t\t\t\t</span>\n\t\t\t);\n\t\t}\n\n\t\tif (this.iconKey && (!isSelection || this.showIconInSelectedItem)) {\n\t\t\tcontent = (\n\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t<p-icon variant={item[this.iconKey] as IconVariant} />\n\t\t\t\t\t<div class='text-container'>\n\t\t\t\t\t\t{item[this.dropdownDisplayKey ?? this.displayKey]}\n\t\t\t\t\t</div>\n\t\t\t\t</span>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclass={\n\t\t\t\t\t!isSelection || this.applyClassOnSelectedItem\n\t\t\t\t\t\t? `max-w-full ${item?.class}`\n\t\t\t\t\t\t: 'max-w-full'\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{content}\n\t\t\t</div>\n\t\t);\n\t}\n}\n"]}
1
+ {"version":3,"file":"select.component.js","sourceRoot":"","sources":["../../../../src/components/molecules/select/select.component.tsx"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tState,\n\tWatch,\n} from '@stencil/core';\nimport { childOf } from '../../../utils';\nimport { IconVariant } from '../../atoms/icon/icon.component';\n\n@Component({\n\ttag: 'p-select',\n\tstyleUrl: 'select.component.scss',\n})\nexport class Select {\n\t/**\n\t * The items to show in the dropdown\n\t */\n\t@Prop() items: string | any[];\n\n\t/**\n\t * Wether to enable multi select\n\t */\n\t@Prop({ reflect: true }) multi: boolean;\n\n\t/**\n\t * Icon of the select box\n\t */\n\t@Prop() icon: IconVariant;\n\n\t/**\n\t * The current query\n\t */\n\t@Prop() query: string;\n\n\t/**\n\t * The placeholder of the input\n\t */\n\t@Prop() placeholder: string;\n\n\t/**\n\t * The placeholder of the input used for auto complete\n\t */\n\t@Prop() autocompletePlaceholder: string = 'Search...';\n\n\t/**\n\t * The current value\n\t */\n\t@Prop() value: any;\n\n\t/**\n\t * The key of the object to display\n\t */\n\t@Prop() displayKey: string = 'text';\n\n\t/**\n\t * The key of the object to display in the dropdown (overwrites displayKey)\n\t */\n\t@Prop() dropdownDisplayKey: string | undefined;\n\n\t/**\n\t * The key of the object to display in the input (overwrites displayKey)\n\t */\n\t@Prop() selectionDisplayKey: string | undefined;\n\n\t/**\n\t * The key of the object to return\n\t */\n\t@Prop() valueKey: string;\n\n\t/**\n\t * The key of avatar within an item to show\n\t */\n\t@Prop() avatarKey: string;\n\n\t/**\n\t * The key of icon variant within an item to show\n\t */\n\t@Prop() iconKey: string;\n\n\t/**\n\t * Wether to show the icon also on the selected Item\n\t */\n\t@Prop() showIconInSelectedItem: string;\n\n\t/**\n\t * The key of a class in an item to apply\n\t */\n\t@Prop() classKey: string = 'class';\n\n\t/**\n\t * Wether to apply the item's class also on the selected item\n\t */\n\t@Prop() applyClassOnSelectedItem: string;\n\n\t/**\n\t * The key of avatar letters within an item to show when the avatar url doesn't work\n\t */\n\t@Prop() avatarLettersKey: string;\n\n\t/**\n\t * The key to identify an object\n\t */\n\t@Prop() identifierKey: string;\n\n\t/**\n\t * The key of the object to display\n\t */\n\t@Prop() queryKey?: string;\n\n\t/**\n\t * Wether to automatically select the first item\n\t */\n\t@Prop() autoSelectFirst: boolean = true;\n\n\t/**\n\t * Wether to show the chevron or not\n\t */\n\t@Prop() showChevron: boolean = true;\n\n\t/**\n\t * The maximum amount of items to display\n\t */\n\t@Prop() maxDisplayedItems: number = 10;\n\n\t/**\n\t * Wether to enable autocomplete\n\t */\n\t@Prop() enableAutocomplete: boolean = true;\n\n\t/**\n\t * Wether the input uses async filtering\n\t */\n\t@Prop() asyncFilter: boolean = false;\n\n\t/**\n\t * Wether to show loading items\n\t */\n\t@Prop() loading: boolean = false;\n\n\t/**\n\t * Wether to show the select all item with multi select\n\t */\n\t@Prop() enableSelectAll: boolean = false;\n\n\t/**\n\t * The text of the select all item\n\t */\n\t@Prop() selectAllText: string = 'Select all';\n\n\t/**\n\t * The icon to prefix for select all\n\t */\n\t@Prop() selectAllIcon: IconVariant | undefined;\n\n\t/**\n\t * Event when the query of the autocomplete changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tqueryChange: EventEmitter<string>;\n\n\t/**\n\t * Event when the value changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tvalueChange: EventEmitter<any>;\n\n\t/**\n\t * Event when the select all item has been selected or not\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tselectAllChange: EventEmitter<any>;\n\n\t/**\n\t * Event when the dropdown shows\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tdropdownShown: EventEmitter<any>;\n\n\t/**\n\t * The size of the input group used by the select\n\t */\n\t@Prop() size: 'small' | 'medium' = 'medium';\n\n\t/**\n\t * The prefix of the input group used by the select\n\t */\n\t@Prop() prefix: string;\n\n\t/**\n\t * The label of the input group used by the select\n\t */\n\t@Prop() label: string;\n\n\t/**\n\t * The helper of the input group used by the select\n\t */\n\t@Prop() helper: string;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean;\n\n\t/**\n\t * The helper of the input group used by the select\n\t */\n\t@Prop({ reflect: true }) error: string;\n\n\t/**\n\t * Wether the input group is disabled used by the select\n\t */\n\t@Prop({ reflect: true }) disabled: boolean = false;\n\n\t/**\n\t * Wether to show a \"add\" item\n\t */\n\t@Prop() showAddItem: boolean = false;\n\n\t/**\n\t * The text to show when add item is being shown\n\t */\n\t@Prop() addItemText: string = 'Add item';\n\n\t/**\n\t * Event when the add item is clicked\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tadd: EventEmitter;\n\n\t/**\n\t * The text to show when items is empty\n\t */\n\t@Prop() emptyStateText: string = 'No items available';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _showDropdown: any = false;\n\t@State() private _selectedItem: any = null;\n\n\t@State() private _allSelected: boolean = false;\n\n\t@State() private _amountHidden = 0;\n\n\tprivate _inputRef: HTMLDivElement;\n\tprivate autocompleteInputRef: HTMLInputElement;\n\tprivate _multiContainerRef: HTMLElement;\n\n\tprivate _resizeObserver: ResizeObserver;\n\tprivate _resizeDebounceTimer: NodeJS.Timer;\n\n\tget _items() {\n\t\tif (!this.items || this.loading) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet items =\n\t\t\ttypeof this.items === 'string' ? JSON.parse(this.items) : this.items;\n\n\t\tif (typeof items?.[0] === 'string') {\n\t\t\tthis.displayKey = 'text';\n\t\t\tthis.valueKey = 'value';\n\n\t\t\titems = items.map(str => ({\n\t\t\t\tvalue: str,\n\t\t\t\ttext: str,\n\t\t\t}));\n\t\t}\n\n\t\tif (this.query?.length && !this.asyncFilter) {\n\t\t\titems = items.filter(item => {\n\t\t\t\tif (this.queryKey) {\n\t\t\t\t\treturn this._checkvalue(this.queryKey, item);\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\tthis._checkvalue(this._identifierKey, item) ||\n\t\t\t\t\tthis._checkvalue(this.displayKey, item)\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\n\t\treturn items?.slice(0, this.maxDisplayedItems);\n\t}\n\n\tget _displayValue() {\n\t\tif (!this._selectedItem) {\n\t\t\treturn this.placeholder;\n\t\t}\n\n\t\tif (this.multi) {\n\t\t\tif (this._selectedItem?.length === 0) {\n\t\t\t\treturn this.placeholder;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tclass={`multi-container size-${this.size}`}\n\t\t\t\t\tref={ref => (this._multiContainerRef = ref)}\n\t\t\t\t>\n\t\t\t\t\t{this._selectedItem.map(item => (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass='item'\n\t\t\t\t\t\t\tonClick={() => this._selectValue(item)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{item[this.selectionDisplayKey ?? this.displayKey]}\n\t\t\t\t\t\t\t<p-icon variant='negative' />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t))}\n\n\t\t\t\t\t<div class='extra hidden'>+{this._amountHidden}</div>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn this._getDisplay(this._selectedItem, true);\n\t}\n\n\tget _identifierKey() {\n\t\treturn this.identifierKey ?? this.valueKey ?? 'value';\n\t}\n\n\tcomponentDidLoad() {\n\t\tif (!this.valueKey && !this.identifierKey) {\n\t\t\tthrow new Error('You must provide a valueKey or identifierKey');\n\t\t}\n\n\t\tif (this.multi) {\n\t\t\tthis._setMultiContainerMaxWidth();\n\n\t\t\tthis._resizeObserver = new ResizeObserver(() => {\n\t\t\t\tif (this._resizeDebounceTimer) {\n\t\t\t\t\tclearTimeout(this._resizeDebounceTimer);\n\t\t\t\t\tthis._resizeDebounceTimer = null;\n\t\t\t\t}\n\n\t\t\t\tthis._resizeDebounceTimer = setTimeout(() => {\n\t\t\t\t\tthis._setMultiContainerMaxWidth();\n\t\t\t\t\tthis._checkSelectedItems();\n\t\t\t\t}, 200);\n\t\t\t});\n\t\t\tthis._resizeObserver.observe(this._el);\n\t\t}\n\n\t\tif (this.value) {\n\t\t\tthis._valueChange();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.itemChanges();\n\t}\n\n\tcomponentDidRender() {\n\t\tif (this.multi) {\n\t\t\tthis._setMultiContainerMaxWidth();\n\t\t\tthis._checkSelectedItems();\n\t\t}\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this.multi) {\n\t\t\tthis._resizeObserver.disconnect();\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class='p-select'>\n\t\t\t\t<p-dropdown\n\t\t\t\t\tdisableTriggerClick={true}\n\t\t\t\t\tcalculateWidth={true}\n\t\t\t\t\tinsideClick={true}\n\t\t\t\t\tscrollable={this.enableAutocomplete ? 'large' : true}\n\t\t\t\t\tshow={this._showDropdown}\n\t\t\t\t\tonIsOpen={ev => this._onDropdownOpen(ev)}\n\t\t\t\t>\n\t\t\t\t\t<p-input-group\n\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\ticon={this.icon}\n\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\tprefix={this.prefix}\n\t\t\t\t\t\tlabel={this.label}\n\t\t\t\t\t\thelper={this.helper}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\terror={this.error}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\tfocused={this._showDropdown}\n\t\t\t\t\t\tforceShowTooltip={this.error?.length && this._showDropdown}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tslot='input'\n\t\t\t\t\t\t\tclass={`p-input read-only cursor-pointer ${\n\t\t\t\t\t\t\t\tthis.showChevron ? 'max-w-[calc(100%-3rem)]' : 'w-full'\n\t\t\t\t\t\t\t} size-${this.size} ${\n\t\t\t\t\t\t\t\tthis._displayValue === this.placeholder\n\t\t\t\t\t\t\t\t\t? 'font-medium text-storm-medium'\n\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\tcontenteditable\n\t\t\t\t\t\t\tonFocus={ev => this._onFocus(ev)}\n\t\t\t\t\t\t\tonMouseDown={ev => this._onMouseDown(ev)}\n\t\t\t\t\t\t\tonClick={() => this._onClick()}\n\t\t\t\t\t\t\tref={ref => (this._inputRef = ref)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this._displayValue}\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t{this.showChevron && (\n\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\tvariant='chevron'\n\t\t\t\t\t\t\t\tslot='suffix'\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</p-input-group>\n\t\t\t\t\t<div slot='items'>\n\t\t\t\t\t\t{this.loading ? this._getLoadingItems() : this._getItems()}\n\t\t\t\t\t\t{this.showAddItem && this._getAddItem()}\n\t\t\t\t\t</div>\n\t\t\t\t</p-dropdown>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler({ target }) {\n\t\tif (!this._showDropdown || childOf(target, this._el)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = false;\n\t}\n\n\t@Watch('value')\n\tprivate _valueChange() {\n\t\tsetTimeout(() => this._preselectItem());\n\t}\n\n\t@Watch('items')\n\tpublic itemChanges() {\n\t\tsetTimeout(() => this._preselectItem());\n\t}\n\n\t@Watch('_showDropdown')\n\tpublic _showDropdownChanges() {\n\t\tthis.dropdownShown.emit({\n\t\t\tvalue: this._showDropdown,\n\t\t\tquery: this.query,\n\t\t});\n\t}\n\n\t@Watch('multi')\n\tpublic multiChanges() {\n\t\tif (this._selectedItem && !Array.isArray(this._selectedItem)) {\n\t\t\tthis._selectedItem = [];\n\t\t}\n\t}\n\n\tprivate _preselectItem() {\n\t\tlet value =\n\t\t\ttypeof this.value === 'string' && this.multi\n\t\t\t\t? JSON.parse(this.value)\n\t\t\t\t: this.value;\n\n\t\tif (this.multi) {\n\t\t\tif (!Array.isArray(value)) {\n\t\t\t\tthis.value = [];\n\t\t\t\tthis.valueChange.emit(this.value);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.value = value;\n\t\t\tif (!value.length) {\n\t\t\t\tthis._selectedItem = [];\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._selectedItem =\n\t\t\t\t!!this.valueKey && this.valueKey !== 'false'\n\t\t\t\t\t? this._items.filter(i => value.includes(i?.[this.valueKey]))\n\t\t\t\t\t: [...value];\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._selectedItem && !value && this.autoSelectFirst) {\n\t\t\tvalue = this._items[0];\n\t\t}\n\n\t\tconst identifier =\n\t\t\ttypeof value === 'object' && value !== null\n\t\t\t\t? value[this._identifierKey]\n\t\t\t\t: value;\n\t\tconst parsedValue =\n\t\t\ttypeof identifier === 'string' || typeof identifier === 'number'\n\t\t\t\t? identifier\n\t\t\t\t: JSON.stringify(identifier);\n\n\t\tconst currentValue = this._selectedItem\n\t\t\t? this._selectedItem?.[this._identifierKey]\n\t\t\t: null;\n\t\tconst currentParsedValue =\n\t\t\ttypeof currentValue === 'string' || typeof currentValue === 'number'\n\t\t\t\t? currentValue\n\t\t\t\t: JSON.stringify(currentValue);\n\n\t\tif (this._selectedItem && currentParsedValue === parsedValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._items?.length && value) {\n\t\t\tthis._selectValue(value, false);\n\t\t\treturn;\n\t\t}\n\n\t\tconst item = this._items.find(i => {\n\t\t\tconst itemIdentifier = i?.[this._identifierKey];\n\t\t\tconst parsedItemIdentifier =\n\t\t\t\ttypeof itemIdentifier === 'string' || typeof itemIdentifier === 'number'\n\t\t\t\t\t? itemIdentifier\n\t\t\t\t\t: JSON.stringify(itemIdentifier);\n\n\t\t\treturn parsedItemIdentifier === parsedValue;\n\t\t});\n\n\t\tthis._selectValue(!!item ? item : value, false);\n\t}\n\n\tprivate _selectValue(item, forceBlur = true) {\n\t\tlet value =\n\t\t\t!!this.valueKey && this.valueKey !== 'false' && item !== null\n\t\t\t\t? item?.[this.valueKey]\n\t\t\t\t: item;\n\n\t\tif (this.multi) {\n\t\t\tif (!this._selectedItem || !Array.isArray(this._selectedItem)) {\n\t\t\t\tthis._selectedItem = [];\n\t\t\t}\n\n\t\t\tif (!this.value || !Array.isArray(this.value)) {\n\t\t\t\tthis.value = [];\n\t\t\t}\n\n\t\t\tconst selectedItem = [...this._selectedItem];\n\t\t\tconst valueArray = [...this.value];\n\n\t\t\tconst includesIndex = selectedItem.findIndex(\n\t\t\t\ti => i[this._identifierKey] === item[this._identifierKey]\n\t\t\t);\n\t\t\tif (includesIndex === -1) {\n\t\t\t\tselectedItem.push(item);\n\t\t\t\tvalueArray.push(value);\n\t\t\t} else {\n\t\t\t\tselectedItem.splice(includesIndex, 1);\n\t\t\t\tvalueArray.splice(includesIndex, 1);\n\t\t\t}\n\n\t\t\tthis._selectedItem = selectedItem;\n\t\t\tthis.value = valueArray;\n\t\t\tthis.valueChange.emit(valueArray);\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectedItem = item;\n\t\tthis.value = value;\n\t\tthis.valueChange.emit(value);\n\n\t\tthis._onBlur(forceBlur);\n\t}\n\n\tprivate _onFocus(ev) {\n\t\tev.preventDefault();\n\t\tthis._inputRef.blur();\n\n\t\tif (!this._showDropdown) {\n\t\t\tthis._showDropdown = true;\n\t\t}\n\n\t\treturn;\n\t}\n\n\tprivate _onMouseDown(ev) {\n\t\tif (this.enableAutocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tev.preventDefault();\n\t}\n\n\tprivate _onClick() {\n\t\tif (this.enableAutocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = !this._showDropdown;\n\t}\n\n\tprivate _onBlur(force = false) {\n\t\tif (this.enableAutocomplete && !force) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = false;\n\t}\n\n\tprivate _onAutoComplete(ev) {\n\t\tif (!this.enableAutocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = true;\n\n\t\tthis.query = ev.target.value;\n\t\tthis.queryChange.emit(ev.target.value);\n\t}\n\n\tprivate _checkvalue(key, item) {\n\t\treturn (\n\t\t\titem?.[key]\n\t\t\t\t?.toString()\n\t\t\t\t?.toLowerCase()\n\t\t\t\t.indexOf(this.query?.toLowerCase()) >= 0\n\t\t);\n\t}\n\n\tprivate _getItems() {\n\t\tlet items = this._items.map(item => (\n\t\t\t<p-dropdown-menu-item\n\t\t\t\tuseContainer={false}\n\t\t\t\tonClick={() => this._selectValue(item)}\n\t\t\t\tactive={\n\t\t\t\t\tthis.multi &&\n\t\t\t\t\t!!this._selectedItem &&\n\t\t\t\t\tArray.isArray(this._selectedItem)\n\t\t\t\t\t\t? this._selectedItem.findIndex(\n\t\t\t\t\t\t\t\ti => i[this._identifierKey] === item[this._identifierKey]\n\t\t\t\t\t\t ) >= 0\n\t\t\t\t\t\t: item[this._identifierKey] ===\n\t\t\t\t\t\t this._selectedItem?.[this._identifierKey]\n\t\t\t\t}\n\t\t\t\tvariant={this.multi ? 'checkbox' : 'default'}\n\t\t\t\tclass='justify-start'\n\t\t\t>\n\t\t\t\t{this._getDisplay(item)}\n\t\t\t</p-dropdown-menu-item>\n\t\t));\n\n\t\tif (!this._items.length) {\n\t\t\titems = [\n\t\t\t\t<p class='w-full p-2 text-center text-sm text-storm-medium'>\n\t\t\t\t\t{this.emptyStateText}\n\t\t\t\t</p>,\n\t\t\t];\n\t\t}\n\n\t\tif (this.enableSelectAll && this._items.length) {\n\t\t\titems.unshift(\n\t\t\t\t<p-dropdown-menu-item\n\t\t\t\t\tuseContainer={false}\n\t\t\t\t\tvariant='checkbox'\n\t\t\t\t\tonClick={() => this._selectAllChange()}\n\t\t\t\t\tactive={this._allSelected}\n\t\t\t\t>\n\t\t\t\t\t{this.selectAllIcon?.length ? (\n\t\t\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t\t\t<div class='flex w-6 justify-center text-lg'>\n\t\t\t\t\t\t\t\t<p-icon variant={this.selectAllIcon} />\n\t\t\t\t\t\t\t</div>{' '}\n\t\t\t\t\t\t\t{this.selectAllText}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tthis.selectAllText\n\t\t\t\t\t)}\n\t\t\t\t</p-dropdown-menu-item>\n\t\t\t);\n\t\t}\n\n\t\tif (this.enableAutocomplete) {\n\t\t\titems.unshift(this._getAutoCompleteItem());\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tprivate _getAddItem() {\n\t\treturn (\n\t\t\t<p-dropdown-menu-item\n\t\t\t\tonClick={() => this.add.emit()}\n\t\t\t\tuseContainer={false}\n\t\t\t>\n\t\t\t\t<span class='flex items-center gap-1 font-semibold text-indigo'>\n\t\t\t\t\t{this.addItemText}\n\t\t\t\t\t<p-icon variant='plus' />\n\t\t\t\t</span>\n\t\t\t</p-dropdown-menu-item>\n\t\t);\n\t}\n\n\tprivate _getLoadingItems() {\n\t\tconst items = [0, 0, 0].map(() => (\n\t\t\t<p-dropdown-menu-item enableHover={false}>\n\t\t\t\t<p-loader\n\t\t\t\t\tvariant='ghost'\n\t\t\t\t\tclass='h-6 w-full rounded'\n\t\t\t\t/>\n\t\t\t</p-dropdown-menu-item>\n\t\t));\n\n\t\tif (this.enableAutocomplete) {\n\t\t\titems.unshift(this._getAutoCompleteItem());\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tprivate _getAutoCompleteItem() {\n\t\treturn (\n\t\t\t<div class='sticky top-0 -mt-2 bg-white pt-2'>\n\t\t\t\t<input\n\t\t\t\t\tclass='p-input size-small sticky top-2 mb-2'\n\t\t\t\t\tplaceholder={this.autocompletePlaceholder}\n\t\t\t\t\tonInput={ev => this._onAutoComplete(ev)}\n\t\t\t\t\tref={ref => (this.autocompleteInputRef = ref)}\n\t\t\t\t\tvalue={this.query}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate _setMultiContainerMaxWidth() {\n\t\tif (!this._inputRef || !this._multiContainerRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._multiContainerRef.style.maxWidth = `${\n\t\t\tthis._inputRef.clientWidth - 16\n\t\t}px`;\n\t}\n\n\tprivate _checkSelectedItems() {\n\t\tif (!this._multiContainerRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst containerRect = this._multiContainerRef.getBoundingClientRect();\n\t\tconst items = Array.from(\n\t\t\tthis._multiContainerRef.querySelectorAll('.item')\n\t\t) as HTMLElement[];\n\n\t\tlet amountHidden = 0;\n\n\t\tfor (const child of items) {\n\t\t\tchild.classList.remove('hidden');\n\n\t\t\tconst childRect = child.getBoundingClientRect();\n\t\t\tif (childRect.right > containerRect.right) {\n\t\t\t\tchild.classList.add('hidden');\n\t\t\t\tamountHidden++;\n\t\t\t}\n\t\t}\n\n\t\tthis._amountHidden = amountHidden;\n\t\tconst extra = this._multiContainerRef.querySelector('.extra');\n\t\tif (!extra) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!extra.classList.contains('hidden')) {\n\t\t\textra.classList.add('hidden');\n\t\t}\n\n\t\tif (amountHidden > 0) {\n\t\t\textra.classList.remove('hidden');\n\t\t}\n\t}\n\n\tprivate _onDropdownOpen(ev) {\n\t\tif (!ev.detail || !this.autocompleteInputRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.autocompleteInputRef.focus();\n\t}\n\n\tprivate _selectAllChange() {\n\t\tthis._allSelected = !this._allSelected;\n\t\tthis.selectAllChange.emit(this._allSelected);\n\t}\n\n\tprivate _getDisplay(item, isSelection = false) {\n\t\tlet content = (\n\t\t\t<div class='text-container'>\n\t\t\t\t{\n\t\t\t\t\titem[\n\t\t\t\t\t\tisSelection\n\t\t\t\t\t\t\t? this.selectionDisplayKey ?? this.displayKey\n\t\t\t\t\t\t\t: this.displayKey\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t</div>\n\t\t);\n\n\t\tif (this.avatarKey) {\n\t\t\tcontent = (\n\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t<p-avatar\n\t\t\t\t\t\tsize='xsmall'\n\t\t\t\t\t\tsrc={item[this.avatarKey]}\n\t\t\t\t\t\tletters={item[this.avatarLettersKey]}\n\t\t\t\t\t></p-avatar>\n\t\t\t\t\t<div class='text-container'>\n\t\t\t\t\t\t{item[this.dropdownDisplayKey ?? this.displayKey]}\n\t\t\t\t\t</div>\n\t\t\t\t</span>\n\t\t\t);\n\t\t}\n\n\t\tif (this.iconKey && (!isSelection || this.showIconInSelectedItem)) {\n\t\t\tcontent = (\n\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t<p-icon variant={item[this.iconKey] as IconVariant} />\n\t\t\t\t\t<div class='text-container'>\n\t\t\t\t\t\t{item[this.dropdownDisplayKey ?? this.displayKey]}\n\t\t\t\t\t</div>\n\t\t\t\t</span>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclass={\n\t\t\t\t\t!isSelection || this.applyClassOnSelectedItem\n\t\t\t\t\t\t? `max-w-full ${item?.class}`\n\t\t\t\t\t\t: 'max-w-full'\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{content}\n\t\t\t</div>\n\t\t);\n\t}\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
2
 
3
- const dropdownMenuContainerComponentCss = ".z-10{z-index:10!important}.flex{display:flex!important}.hidden{display:none!important}.max-h-\\[11\\.5rem\\]{max-height:11.5rem!important}.max-h-\\[13\\.875rem\\]{max-height:13.875rem!important}.max-h-\\[20rem\\]{max-height:20rem!important}.w-full{width:100%!important}.max-w-\\[222px\\]{max-width:222px!important}.flex-col{flex-direction:column!important}.gap-\\[1px\\]{gap:1px!important}.overflow-y-auto{overflow-y:auto!important}.rounded-xxlarge{border-radius:.75rem!important}.drop-shadow-4{--tw-drop-shadow:drop-shadow(0px 0.3125rem 1rem rgba(0,24,98,.08)) drop-shadow(0px 0.0625rem 0.1875rem rgba(0,24,98,.13))!important}.drop-shadow-4,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}*{box-sizing:border-box}p-dropdown-menu-container{--tw-bg-opacity:1;--tw-drop-shadow:drop-shadow(0px 0.3125rem 1rem rgba(0,24,98,.08)) drop-shadow(0px 0.0625rem 0.1875rem rgba(0,24,98,.13));background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:.75rem;filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);width:auto;z-index:10}p-dropdown-menu-container .content{display:flex;flex-direction:column;gap:1px;padding:.5rem;width:100%}p-dropdown-menu-container.full-width{width:100%}p-dropdown-menu-container.no-overflow{overflow-x:hidden;overflow-y:auto}p-dropdown-menu-container.max-width{max-width:222px}p-dropdown-menu-container.scrollable{max-height:11.5rem;scrollbar-width:none}p-dropdown-menu-container.scrollable::-webkit-scrollbar{display:none}p-dropdown-menu-container.scrollable .content{height:100%}p-dropdown-menu-container.scrollable.scrollable-large{max-height:13.875rem}p-dropdown-menu-container.scrollable.scrollable-xlarge{max-height:20rem}.static{position:static!important}";
3
+ const dropdownMenuContainerComponentCss = ".z-10{z-index:10!important}.block{display:block!important}.flex{display:flex!important}.hidden{display:none!important}.max-h-\\[11\\.5rem\\]{max-height:11.5rem!important}.max-h-\\[13\\.875rem\\]{max-height:13.875rem!important}.max-h-\\[20rem\\]{max-height:20rem!important}.w-full{width:100%!important}.max-w-\\[222px\\]{max-width:222px!important}.flex-col{flex-direction:column!important}.gap-\\[1px\\]{gap:1px!important}.overflow-y-auto{overflow-y:auto!important}.rounded-xxlarge{border-radius:.75rem!important}.drop-shadow-4{--tw-drop-shadow:drop-shadow(0px 0.3125rem 1rem rgba(0,24,98,.08)) drop-shadow(0px 0.0625rem 0.1875rem rgba(0,24,98,.13))!important}.drop-shadow-4,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}*{box-sizing:border-box}p-dropdown-menu-container{--tw-bg-opacity:1;--tw-drop-shadow:drop-shadow(0px 0.3125rem 1rem rgba(0,24,98,.08)) drop-shadow(0px 0.0625rem 0.1875rem rgba(0,24,98,.13));background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:.75rem;display:block;filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);width:auto;z-index:10}p-dropdown-menu-container .content{display:flex;flex-direction:column;gap:1px;padding:.5rem;width:100%}p-dropdown-menu-container.full-width{width:100%}p-dropdown-menu-container.no-overflow{overflow-x:hidden;overflow-y:auto}p-dropdown-menu-container.max-width{max-width:222px}p-dropdown-menu-container.scrollable{max-height:11.5rem;scrollbar-width:none}p-dropdown-menu-container.scrollable::-webkit-scrollbar{display:none}p-dropdown-menu-container.scrollable .content{height:100%}p-dropdown-menu-container.scrollable.scrollable-large{max-height:13.875rem}p-dropdown-menu-container.scrollable.scrollable-xlarge{max-height:20rem}.static{position:static!important}";
4
4
 
5
5
  const DropdownMenuContainer = /*@__PURE__*/ proxyCustomElement(class DropdownMenuContainer extends HTMLElement {
6
6
  constructor() {
@@ -1 +1 @@
1
- {"file":"dropdown-menu-container.component.js","mappings":";;AAAA,MAAM,iCAAiC,GAAG,66DAA66D;;MCO18D,qBAAqB;;;;oBAIL,IAAI;qBAKH,IAAI;yBAKA,KAAK;sBAKyB,KAAK;;EAEpE,MAAM;IACL,QACC,EAAC,IAAI,IACJ,KAAK,EAAE,6BACN,IAAI,CAAC,QAAQ,IAAI,WAClB,IAAI,IAAI,CAAC,SAAS,IAAI,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,aAAa,IACzE,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,YACtB,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,GAAG,kBAAkB,GAAG,EAAE,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,GAAG,mBAAmB,GAAG,EAAE,EAAE,IAEtH,WAAK,KAAK,EAAC,SAAS,IACnB,eAAQ,CACH,CACA,EACN;GACF;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/atoms/dropdown-menu-container/dropdown-menu-container.component.scss?tag=p-dropdown-menu-container","src/components/atoms/dropdown-menu-container/dropdown-menu-container.component.tsx"],"sourcesContent":["@import '../../../style/mixins';\n\np-dropdown-menu-container {\n\t@apply w-auto;\n\t@apply rounded-xxlarge bg-white;\n\t@apply z-10 drop-shadow-4 filter;\n\n\t.content {\n\t\t@apply w-full p-2;\n\t\t@apply flex flex-col gap-[1px];\n\t}\n\n\t&.full-width {\n\t\t@apply w-full;\n\t}\n\n\t&.no-overflow {\n\t\t@apply overflow-y-auto overflow-x-hidden;\n\t}\n\n\t&.max-width {\n\t\t@apply max-w-[222px];\n\t}\n\n\t&.scrollable {\n\t\t@apply max-h-[11.5rem];\n\n\t\tscrollbar-width: none;\n\t\t&::-webkit-scrollbar {\n\t\t\t@apply hidden;\n\t\t}\n\n\t\t.content {\n\t\t\t@apply h-full;\n\t\t}\n\n\t\t&.scrollable-large {\n\t\t\t@apply max-h-[13.875rem];\n\t\t}\n\n\t\t&.scrollable-xlarge {\n\t\t\t@apply max-h-[20rem];\n\t\t}\n\t}\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n\ttag: 'p-dropdown-menu-container',\n\tstyleUrl: 'dropdown-menu-container.component.scss',\n\t// shadow: true,\n})\nexport class DropdownMenuContainer {\n\t/**\n\t * Wether the container applies it's max width\n\t */\n\t@Prop() maxWidth: boolean = true;\n\n\t/**\n\t * Wether the container should all available space\n\t */\n\t@Prop() fullWidth: boolean = true;\n\n\t/**\n\t * Wether to allow overflow\n\t */\n\t@Prop() allowOverflow: boolean = false;\n\n\t/**\n\t * Wether the container should be scrollable when the threshold is met.\n\t */\n\t@Prop() scrollable: boolean | 'default' | 'large' | 'xlarge' = false;\n\n\trender() {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-dropdown-menu-container ${\n\t\t\t\t\tthis.maxWidth && 'max-width'\n\t\t\t\t} ${this.fullWidth && 'full-width'} ${!this.allowOverflow && 'no-overflow'} ${\n\t\t\t\t\t!!this.scrollable && 'scrollable'\n\t\t\t\t} ${this.scrollable === 'large' ? 'scrollable-large' : ''} ${this.scrollable === 'xlarge' ? 'scrollable-xlarge' : ''}`}\n\t\t\t>\n\t\t\t\t<div class=\"content\">\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
1
+ {"file":"dropdown-menu-container.component.js","mappings":";;AAAA,MAAM,iCAAiC,GAAG,09DAA09D;;MCOv/D,qBAAqB;;;;oBAIL,IAAI;qBAKH,IAAI;yBAKA,KAAK;sBAKyB,KAAK;;EAEpE,MAAM;IACL,QACC,EAAC,IAAI,IACJ,KAAK,EAAE,6BACN,IAAI,CAAC,QAAQ,IAAI,WAClB,IAAI,IAAI,CAAC,SAAS,IAAI,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,aAAa,IACzE,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,YACtB,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,GAAG,kBAAkB,GAAG,EAAE,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,GAAG,mBAAmB,GAAG,EAAE,EAAE,IAEtH,WAAK,KAAK,EAAC,SAAS,IACnB,eAAQ,CACH,CACA,EACN;GACF;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/atoms/dropdown-menu-container/dropdown-menu-container.component.scss?tag=p-dropdown-menu-container","src/components/atoms/dropdown-menu-container/dropdown-menu-container.component.tsx"],"sourcesContent":["@import '../../../style/mixins';\n\np-dropdown-menu-container {\n\t@apply block w-auto;\n\t@apply rounded-xxlarge bg-white;\n\t@apply z-10 drop-shadow-4 filter;\n\n\t.content {\n\t\t@apply w-full p-2;\n\t\t@apply flex flex-col gap-[1px];\n\t}\n\n\t&.full-width {\n\t\t@apply w-full;\n\t}\n\n\t&.no-overflow {\n\t\t@apply overflow-y-auto overflow-x-hidden;\n\t}\n\n\t&.max-width {\n\t\t@apply max-w-[222px];\n\t}\n\n\t&.scrollable {\n\t\t@apply max-h-[11.5rem];\n\n\t\tscrollbar-width: none;\n\t\t&::-webkit-scrollbar {\n\t\t\t@apply hidden;\n\t\t}\n\n\t\t.content {\n\t\t\t@apply h-full;\n\t\t}\n\n\t\t&.scrollable-large {\n\t\t\t@apply max-h-[13.875rem];\n\t\t}\n\n\t\t&.scrollable-xlarge {\n\t\t\t@apply max-h-[20rem];\n\t\t}\n\t}\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n\ttag: 'p-dropdown-menu-container',\n\tstyleUrl: 'dropdown-menu-container.component.scss',\n\t// shadow: true,\n})\nexport class DropdownMenuContainer {\n\t/**\n\t * Wether the container applies it's max width\n\t */\n\t@Prop() maxWidth: boolean = true;\n\n\t/**\n\t * Wether the container should all available space\n\t */\n\t@Prop() fullWidth: boolean = true;\n\n\t/**\n\t * Wether to allow overflow\n\t */\n\t@Prop() allowOverflow: boolean = false;\n\n\t/**\n\t * Wether the container should be scrollable when the threshold is met.\n\t */\n\t@Prop() scrollable: boolean | 'default' | 'large' | 'xlarge' = false;\n\n\trender() {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-dropdown-menu-container ${\n\t\t\t\t\tthis.maxWidth && 'max-width'\n\t\t\t\t} ${this.fullWidth && 'full-width'} ${!this.allowOverflow && 'no-overflow'} ${\n\t\t\t\t\t!!this.scrollable && 'scrollable'\n\t\t\t\t} ${this.scrollable === 'large' ? 'scrollable-large' : ''} ${this.scrollable === 'xlarge' ? 'scrollable-xlarge' : ''}`}\n\t\t\t>\n\t\t\t\t<div class=\"content\">\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
@@ -1,21 +1,22 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { a as autoUpdate, c as computePosition, o as offset, f as flip, s as shift } from './floating-ui.dom.esm.js';
3
3
  import { c as childOf } from './child-of.js';
4
- import { d as defineCustomElement$1 } from './dropdown-menu-container.component.js';
4
+ import { d as defineCustomElement$2 } from './dropdown-menu-container.component.js';
5
+ import { d as defineCustomElement$1 } from './portal.component.js';
5
6
 
6
- const dropdownComponentCss = ".fixed{position:fixed!important}.absolute{position:absolute!important}.relative{position:relative!important}.left-0{left:0!important}.top-0{top:0!important}.z-dropdown{z-index:200!important}.block{display:block!important}.flex{display:flex!important}.hidden{display:none!important}.h-auto{height:auto!important}*{box-sizing:border-box}:host{display:block;position:relative}:host .trigger{display:block;height:auto;position:relative;width:auto}:host p-dropdown-menu-container{display:none;left:0;top:0;z-index:200}:host p-dropdown-menu-container[data-show]{display:flex}:host p-dropdown-menu-container[data-strategy=absolute]{position:absolute}:host p-dropdown-menu-container[data-strategy=fixed]{position:fixed}.visible{visibility:visible!important}.static{position:static!important}";
7
+ const dropdownComponentCss = ".relative{position:relative!important}.block{display:block!important}.h-auto{height:auto!important}*{box-sizing:border-box}p-dropdown,p-dropdown .trigger{display:block;position:relative}p-dropdown .trigger{height:auto;width:auto}.visible{visibility:visible!important}.static{position:static!important}.fixed{position:fixed!important}.absolute{position:absolute!important}.z-dropdown{z-index:200!important}.flex{display:flex!important}.hidden{display:none!important}";
7
8
 
8
9
  const Dropdown = /*@__PURE__*/ proxyCustomElement(class Dropdown extends HTMLElement {
9
10
  constructor() {
10
11
  super();
11
12
  this.__registerHost();
12
- this.__attachShadow();
13
13
  this.isOpen = createEvent(this, "isOpen", 3);
14
14
  this._loaded = false;
15
15
  this.placement = 'bottom-start';
16
16
  this.offset = 8;
17
17
  this.strategy = 'absolute';
18
18
  this.show = false;
19
+ this.usePortal = false;
19
20
  this.calculateWidth = false;
20
21
  this.applyMaxWidth = true;
21
22
  this.applyFullWidth = true;
@@ -35,25 +36,41 @@ const Dropdown = /*@__PURE__*/ proxyCustomElement(class Dropdown extends HTMLEle
35
36
  this._cleanup();
36
37
  this._cleanup = null;
37
38
  }
39
+ this._menu.remove();
40
+ }
41
+ componentDidRender() {
42
+ this._checkButtons();
38
43
  }
39
44
  render() {
40
- return (h(Host, { class: "p-dropdown" }, h("div", { class: "trigger", ref: (ref) => (this._trigger = ref), onClick: () => this._triggerClickHandler() }, h("slot", { onSlotchange: (ev) => this._checkButton(ev), name: "trigger" })), h("p-dropdown-menu-container", { role: "popover", maxWidth: !this.calculateWidth && this.applyMaxWidth, fullWidth: this.applyFullWidth && !this.applyMaxWidth, allowOverflow: this.allowOverflow, ref: (el) => this._load(el), "data-placement": this.placement, "data-strategy": this.strategy, onClick: () => this._containerClickHandler(), scrollable: this.scrollable }, h("slot", { name: "items" }))));
45
+ const dropdownContainerProps = {
46
+ class: `z-dropdown hidden ${this.strategy === 'fixed' ? 'fixed' : 'absolute'}`,
47
+ ref: el => this._load(el),
48
+ onClick: () => this._containerClickHandler(),
49
+ role: 'popover',
50
+ 'data-placement': this.placement,
51
+ 'data-strategy': this.strategy,
52
+ };
53
+ let dropdownContainer;
54
+ if (this.usePortal) {
55
+ dropdownContainer = (h("p-portal", Object.assign({}, dropdownContainerProps), h("p-dropdown-menu-container", { maxWidth: !this.calculateWidth && this.applyMaxWidth, fullWidth: this.applyFullWidth && !this.applyMaxWidth, allowOverflow: this.allowOverflow, scrollable: this.scrollable }, h("slot", { name: 'items' }))));
56
+ }
57
+ else {
58
+ dropdownContainer = (h("p-dropdown-menu-container", Object.assign({ maxWidth: !this.calculateWidth && this.applyMaxWidth, fullWidth: this.applyFullWidth && !this.applyMaxWidth, allowOverflow: this.allowOverflow, scrollable: this.scrollable }, dropdownContainerProps), h("slot", { name: 'items' })));
59
+ }
60
+ return (h(Host, { class: 'p-dropdown' }, h("div", { class: 'trigger', ref: ref => (this._trigger = ref), onClick: () => this._triggerClickHandler() }, h("slot", { name: 'trigger' })), dropdownContainer));
41
61
  }
42
- _checkButton({ target }) {
62
+ _checkButtons() {
43
63
  if (!this.applyChevron) {
44
64
  return;
45
65
  }
46
- const slot = target;
47
- const children = slot.assignedElements();
48
- for (let child of children) {
49
- if (child.nodeName === 'P-BUTTON') {
50
- child.chevronPosition = this.chevronPosition;
51
- child.chevron = this.chevronDirection
52
- ? this.chevronDirection
53
- : this.placement.indexOf('top') >= 0
54
- ? 'up'
55
- : 'down';
56
- }
66
+ const children = this._el.querySelectorAll('p-button[slot="trigger"]');
67
+ for (let child of [...children]) {
68
+ child.chevronPosition = this.chevronPosition;
69
+ child.chevron = this.chevronDirection
70
+ ? this.chevronDirection
71
+ : this.placement.indexOf('top') >= 0
72
+ ? 'up'
73
+ : 'down';
57
74
  }
58
75
  }
59
76
  onShowChange(show) {
@@ -67,8 +84,7 @@ const Dropdown = /*@__PURE__*/ proxyCustomElement(class Dropdown extends HTMLEle
67
84
  this._show();
68
85
  }
69
86
  documentClickHandler({ target }) {
70
- if (!this._menu.hasAttribute('data-show') ||
71
- childOf(target, this._el)) {
87
+ if (!this._menu.hasAttribute('data-show') || childOf(target, this._menu)) {
72
88
  return;
73
89
  }
74
90
  this._hide();
@@ -111,7 +127,10 @@ const Dropdown = /*@__PURE__*/ proxyCustomElement(class Dropdown extends HTMLEle
111
127
  }
112
128
  this._cleanup = autoUpdate(this._el, this._menu, () => this._update());
113
129
  this._menu.setAttribute('data-show', '');
130
+ this._menu.classList.remove('hidden');
131
+ this._menu.classList.add('flex');
114
132
  this.isOpen.emit(true);
133
+ this._update();
115
134
  }
116
135
  _hide() {
117
136
  if (!this._loaded || this.show) {
@@ -123,6 +142,8 @@ const Dropdown = /*@__PURE__*/ proxyCustomElement(class Dropdown extends HTMLEle
123
142
  }
124
143
  // Hide the popover
125
144
  this._menu.removeAttribute('data-show');
145
+ this._menu.classList.remove('flex');
146
+ this._menu.classList.add('hidden');
126
147
  this.isOpen.emit(false);
127
148
  }
128
149
  _update() {
@@ -146,11 +167,12 @@ const Dropdown = /*@__PURE__*/ proxyCustomElement(class Dropdown extends HTMLEle
146
167
  "show": ["onShowChange"]
147
168
  }; }
148
169
  static get style() { return dropdownComponentCss; }
149
- }, [1, "p-dropdown", {
170
+ }, [4, "p-dropdown", {
150
171
  "placement": [513],
151
172
  "offset": [2],
152
173
  "strategy": [1],
153
174
  "show": [4],
175
+ "usePortal": [4, "use-portal"],
154
176
  "calculateWidth": [4, "calculate-width"],
155
177
  "applyMaxWidth": [4, "apply-max-width"],
156
178
  "applyFullWidth": [4, "apply-full-width"],
@@ -168,7 +190,7 @@ function defineCustomElement() {
168
190
  if (typeof customElements === "undefined") {
169
191
  return;
170
192
  }
171
- const components = ["p-dropdown", "p-dropdown-menu-container"];
193
+ const components = ["p-dropdown", "p-dropdown-menu-container", "p-portal"];
172
194
  components.forEach(tagName => { switch (tagName) {
173
195
  case "p-dropdown":
174
196
  if (!customElements.get(tagName)) {
@@ -176,6 +198,11 @@ function defineCustomElement() {
176
198
  }
177
199
  break;
178
200
  case "p-dropdown-menu-container":
201
+ if (!customElements.get(tagName)) {
202
+ defineCustomElement$2();
203
+ }
204
+ break;
205
+ case "p-portal":
179
206
  if (!customElements.get(tagName)) {
180
207
  defineCustomElement$1();
181
208
  }