@paperless/core 1.64.2 → 1.66.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 (387) hide show
  1. package/CHANGELOG.md +28 -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/build/p-80053d24.entry.js +2 -0
  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 +18 -18
  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/helper/helper.component.css +1 -1
  115. package/dist/collection/components/atoms/helper/helper.component.js +26 -1
  116. package/dist/collection/components/atoms/helper/helper.component.js.map +1 -1
  117. package/dist/collection/components/atoms/portal/portal.component.js +43 -0
  118. package/dist/collection/components/atoms/portal/portal.component.js.map +1 -0
  119. package/dist/collection/components/atoms/portal/test/portal.component.e2e.js +26 -0
  120. package/dist/collection/components/atoms/portal/test/portal.component.e2e.js.map +1 -0
  121. package/dist/collection/components/atoms/portal/test/portal.component.spec.js +17 -0
  122. package/dist/collection/components/atoms/portal/test/portal.component.spec.js.map +1 -0
  123. package/dist/collection/components/molecules/dropdown/dropdown.component.css +1 -1
  124. package/dist/collection/components/molecules/dropdown/dropdown.component.js +54 -16
  125. package/dist/collection/components/molecules/dropdown/dropdown.component.js.map +1 -1
  126. package/dist/collection/components/molecules/input-group/input-group.component.js +15 -16
  127. package/dist/collection/components/molecules/input-group/input-group.component.js.map +1 -1
  128. package/dist/collection/components/molecules/profile/profile.component.css +1 -1
  129. package/dist/collection/components/molecules/profile/profile.component.js +5 -4
  130. package/dist/collection/components/molecules/profile/profile.component.js.map +1 -1
  131. package/dist/collection/components/molecules/select/select.component.js.map +1 -1
  132. package/dist/components/dropdown-menu-container.component.js +1 -1
  133. package/dist/components/dropdown-menu-container.component.js.map +1 -1
  134. package/dist/components/dropdown.component.js +47 -20
  135. package/dist/components/dropdown.component.js.map +1 -1
  136. package/dist/components/helper.component.js +4 -2
  137. package/dist/components/helper.component.js.map +1 -1
  138. package/dist/components/input-group.component.js +14 -15
  139. package/dist/components/input-group.component.js.map +1 -1
  140. package/dist/components/p-datepicker.js +20 -14
  141. package/dist/components/p-datepicker.js.map +1 -1
  142. package/dist/components/p-portal.d.ts +11 -0
  143. package/dist/components/p-portal.js +8 -0
  144. package/dist/components/p-portal.js.map +1 -0
  145. package/dist/components/p-profile.js +17 -10
  146. package/dist/components/p-profile.js.map +1 -1
  147. package/dist/components/p-select.js +24 -18
  148. package/dist/components/p-select.js.map +1 -1
  149. package/dist/components/p-table.js +40 -34
  150. package/dist/components/p-table.js.map +1 -1
  151. package/dist/components/page-size-select.component.js +18 -12
  152. package/dist/components/page-size-select.component.js.map +1 -1
  153. package/dist/components/portal.component.js +42 -0
  154. package/dist/components/portal.component.js.map +1 -0
  155. package/dist/components/table-footer.component.js +24 -18
  156. package/dist/components/table-footer.component.js.map +1 -1
  157. package/dist/esm/{index-7b917f6b.js → index-f1f0954a.js} +79 -6
  158. package/dist/esm/{index-7b917f6b.js.map → index-f1f0954a.js.map} +1 -1
  159. package/dist/esm/loader.js +3 -3
  160. package/dist/esm/p-accordion.entry.js +1 -1
  161. package/dist/esm/p-attachment.entry.js +1 -1
  162. package/dist/esm/p-avatar-group.entry.js +1 -1
  163. package/dist/esm/p-avatar.entry.js +1 -1
  164. package/dist/esm/p-backdrop.entry.js +1 -1
  165. package/dist/esm/p-button-group.entry.js +1 -1
  166. package/dist/esm/p-button_3.entry.js +1 -1
  167. package/dist/esm/p-calendar.entry.js +1 -1
  168. package/dist/esm/p-card-body.entry.js +1 -1
  169. package/dist/esm/p-card-container.entry.js +1 -1
  170. package/dist/esm/p-card-header.entry.js +1 -1
  171. package/dist/esm/p-content-slider.entry.js +1 -1
  172. package/dist/esm/p-counter.entry.js +1 -1
  173. package/dist/esm/p-cropper.entry.js +1 -1
  174. package/dist/esm/p-datepicker.entry.js +1 -1
  175. package/dist/esm/p-divider.entry.js +1 -1
  176. package/dist/esm/p-drawer-body_3.entry.js +1 -1
  177. package/dist/esm/p-drawer.entry.js +1 -1
  178. package/dist/esm/p-dropdown-menu-container_2.entry.js +42 -0
  179. package/dist/esm/p-dropdown-menu-container_2.entry.js.map +1 -0
  180. package/dist/esm/p-dropdown_2.entry.js +38 -17
  181. package/dist/esm/p-dropdown_2.entry.js.map +1 -1
  182. package/dist/esm/p-floating-menu-container_8.entry.js +1 -1
  183. package/dist/esm/p-helper_3.entry.js +18 -18
  184. package/dist/esm/p-helper_3.entry.js.map +1 -1
  185. package/dist/esm/p-iban-icon.entry.js +1 -1
  186. package/dist/esm/p-info-panel.entry.js +1 -1
  187. package/dist/esm/p-label_3.entry.js +1 -1
  188. package/dist/esm/p-layout.entry.js +1 -1
  189. package/dist/esm/p-modal-body_4.entry.js +1 -1
  190. package/dist/esm/p-modal.entry.js +1 -1
  191. package/dist/esm/p-navbar.entry.js +1 -1
  192. package/dist/esm/p-navigation-item.entry.js +1 -1
  193. package/dist/esm/p-page-size-select_3.entry.js +1 -1
  194. package/dist/esm/p-profile.entry.js +6 -5
  195. package/dist/esm/p-profile.entry.js.map +1 -1
  196. package/dist/esm/p-select.entry.js +1 -1
  197. package/dist/esm/p-select.entry.js.map +1 -1
  198. package/dist/esm/p-slider-indicator.entry.js +1 -1
  199. package/dist/esm/p-status.entry.js +1 -1
  200. package/dist/esm/p-stepper-item.entry.js +1 -1
  201. package/dist/esm/p-stepper-line.entry.js +1 -1
  202. package/dist/esm/p-stepper.entry.js +1 -1
  203. package/dist/esm/p-tab-group.entry.js +1 -1
  204. package/dist/esm/p-tab-item.entry.js +1 -1
  205. package/dist/esm/p-table-column.entry.js +1 -1
  206. package/dist/esm/p-table-row-action.entry.js +1 -1
  207. package/dist/esm/p-table.entry.js +1 -1
  208. package/dist/esm/p-toast-container.entry.js +1 -1
  209. package/dist/esm/p-toast.entry.js +1 -1
  210. package/dist/esm/p-tooltip.entry.js +1 -1
  211. package/dist/esm/paperless.js +3 -3
  212. package/dist/index.html +1 -1
  213. package/dist/{build/p-cb2674b5.entry.js → paperless/p-0a95044f.entry.js} +2 -2
  214. package/dist/paperless/p-0c2cc6c4.js +3 -0
  215. package/dist/paperless/p-0c2cc6c4.js.map +1 -0
  216. package/dist/paperless/{p-a2b552f9.entry.js → p-13f61347.entry.js} +2 -2
  217. package/dist/paperless/{p-8af4e8e9.entry.js → p-18f3cc52.entry.js} +2 -2
  218. package/dist/paperless/{p-639665b1.entry.js → p-198fac52.entry.js} +2 -2
  219. package/dist/paperless/p-1a725037.entry.js +2 -0
  220. package/dist/paperless/p-1a725037.entry.js.map +1 -0
  221. package/dist/paperless/{p-606ad811.entry.js → p-1ce5f595.entry.js} +2 -2
  222. package/dist/{build/p-f2a896ba.entry.js → paperless/p-1dbb398d.entry.js} +2 -2
  223. package/dist/paperless/p-1dbb398d.entry.js.map +1 -0
  224. package/dist/paperless/p-2360542e.entry.js +2 -0
  225. package/dist/paperless/p-2360542e.entry.js.map +1 -0
  226. package/dist/paperless/{p-cf7bd354.entry.js → p-2489f548.entry.js} +2 -2
  227. package/dist/paperless/{p-8426ca20.entry.js → p-26d28e15.entry.js} +2 -2
  228. package/dist/paperless/{p-b59115c3.entry.js → p-27ecc564.entry.js} +2 -2
  229. package/dist/paperless/{p-3755da14.entry.js → p-2e258b57.entry.js} +2 -2
  230. package/dist/paperless/{p-5b062bc3.entry.js → p-2ff0302a.entry.js} +2 -2
  231. package/dist/{build/p-30c9f5e3.entry.js → paperless/p-311e879a.entry.js} +2 -2
  232. package/dist/paperless/{p-d0796984.entry.js → p-31b09b93.entry.js} +2 -2
  233. package/dist/paperless/{p-7793ba3a.entry.js → p-32ec455c.entry.js} +2 -2
  234. package/dist/paperless/{p-ec15ee73.entry.js → p-4fe3d53a.entry.js} +2 -2
  235. package/dist/{build/p-dd070ee8.entry.js → paperless/p-4feb9ce7.entry.js} +2 -2
  236. package/dist/paperless/{p-00d4647f.entry.js → p-64aff6f3.entry.js} +2 -2
  237. package/dist/{build/p-eebab75d.entry.js → paperless/p-744f5a41.entry.js} +2 -2
  238. package/dist/paperless/{p-d8641c29.entry.js → p-7f41fb25.entry.js} +2 -2
  239. package/dist/paperless/p-80053d24.entry.js +2 -0
  240. package/dist/paperless/p-80053d24.entry.js.map +1 -0
  241. package/dist/paperless/{p-af6b813e.entry.js → p-88f1b5e6.entry.js} +2 -2
  242. package/dist/paperless/{p-179efb16.entry.js → p-8b1a63cb.entry.js} +2 -2
  243. package/dist/paperless/{p-2becd73c.entry.js → p-9671e4e1.entry.js} +2 -2
  244. package/dist/paperless/{p-0b0c43cc.entry.js → p-9c1e350b.entry.js} +2 -2
  245. package/dist/paperless/{p-d7f2d4d3.entry.js → p-9c9ea527.entry.js} +2 -2
  246. package/dist/paperless/{p-7bf042c9.entry.js → p-a11cf84a.entry.js} +2 -2
  247. package/dist/paperless/p-a5770573.entry.js +2 -0
  248. package/dist/paperless/p-ac60e1f8.entry.js +2 -0
  249. package/dist/paperless/p-ac60e1f8.entry.js.map +1 -0
  250. package/dist/paperless/{p-576b6378.entry.js → p-ad9468a6.entry.js} +2 -2
  251. package/dist/paperless/{p-dace47c5.entry.js → p-af71e807.entry.js} +2 -2
  252. package/dist/{build/p-2cd5062f.entry.js → paperless/p-bcb8549b.entry.js} +2 -2
  253. package/dist/paperless/{p-ec29eed0.entry.js → p-bd4ba06f.entry.js} +2 -2
  254. package/dist/{build/p-bbe63029.entry.js → paperless/p-c1bac1cf.entry.js} +2 -2
  255. package/dist/{build/p-95dc4bd3.entry.js → paperless/p-c4d17d60.entry.js} +2 -2
  256. package/dist/paperless/{p-2c2cf3cf.entry.js → p-ca87bbc1.entry.js} +2 -2
  257. package/dist/{build/p-35c563a7.entry.js → paperless/p-d4b10d27.entry.js} +2 -2
  258. package/dist/{build/p-01adf065.entry.js → paperless/p-dbd732ab.entry.js} +2 -2
  259. package/dist/paperless/{p-a37d182e.entry.js → p-de0f4cf1.entry.js} +2 -2
  260. package/dist/paperless/{p-ec315c58.entry.js → p-de9f7dc2.entry.js} +2 -2
  261. package/dist/paperless/{p-0cbff44f.entry.js → p-ec1584ef.entry.js} +2 -2
  262. package/dist/paperless/{p-0f5c5693.entry.js → p-f07e2154.entry.js} +2 -2
  263. package/dist/{build/p-699e0b35.entry.js → paperless/p-f2865277.entry.js} +2 -2
  264. package/dist/paperless/p-f95b1425.entry.js +2 -0
  265. package/dist/paperless/{p-4c30c74b.entry.js → p-fae6af23.entry.js} +2 -2
  266. package/dist/paperless/paperless.esm.js +1 -1
  267. package/dist/paperless/paperless.esm.js.map +1 -1
  268. package/dist/sw.js +1 -1
  269. package/dist/sw.js.map +1 -1
  270. package/dist/types/components/atoms/helper/helper.component.d.ts +5 -1
  271. package/dist/types/components/atoms/portal/portal.component.d.ts +9 -0
  272. package/dist/types/components/molecules/dropdown/dropdown.component.d.ts +6 -1
  273. package/dist/types/components.d.ts +33 -2
  274. package/hydrate/index.js +116 -51
  275. package/package.json +1 -1
  276. package/dist/build/p-2d3ff364.entry.js +0 -2
  277. package/dist/build/p-2d3ff364.entry.js.map +0 -1
  278. package/dist/build/p-46052ca3.entry.js +0 -2
  279. package/dist/build/p-46052ca3.entry.js.map +0 -1
  280. package/dist/build/p-6f24685c.entry.js +0 -2
  281. package/dist/build/p-867c00e9.entry.js +0 -2
  282. package/dist/build/p-867c00e9.entry.js.map +0 -1
  283. package/dist/build/p-c3999d3e.entry.js +0 -2
  284. package/dist/build/p-e4d5e7a7.js +0 -3
  285. package/dist/build/p-e4d5e7a7.js.map +0 -1
  286. package/dist/build/p-ef0bfa6c.entry.js +0 -2
  287. package/dist/build/p-ef0bfa6c.entry.js.map +0 -1
  288. package/dist/build/p-f2a896ba.entry.js.map +0 -1
  289. package/dist/cjs/p-dropdown-menu-container.cjs.entry.js +0 -25
  290. package/dist/cjs/p-dropdown-menu-container.cjs.entry.js.map +0 -1
  291. package/dist/esm/p-dropdown-menu-container.entry.js +0 -21
  292. package/dist/esm/p-dropdown-menu-container.entry.js.map +0 -1
  293. package/dist/paperless/p-2d3ff364.entry.js +0 -2
  294. package/dist/paperless/p-2d3ff364.entry.js.map +0 -1
  295. package/dist/paperless/p-46052ca3.entry.js +0 -2
  296. package/dist/paperless/p-46052ca3.entry.js.map +0 -1
  297. package/dist/paperless/p-6f24685c.entry.js +0 -2
  298. package/dist/paperless/p-867c00e9.entry.js +0 -2
  299. package/dist/paperless/p-867c00e9.entry.js.map +0 -1
  300. package/dist/paperless/p-c3999d3e.entry.js +0 -2
  301. package/dist/paperless/p-e4d5e7a7.js +0 -3
  302. package/dist/paperless/p-e4d5e7a7.js.map +0 -1
  303. package/dist/paperless/p-ef0bfa6c.entry.js +0 -2
  304. package/dist/paperless/p-ef0bfa6c.entry.js.map +0 -1
  305. package/dist/paperless/p-f2a896ba.entry.js.map +0 -1
  306. /package/dist/build/{p-cb2674b5.entry.js.map → p-0a95044f.entry.js.map} +0 -0
  307. /package/dist/build/{p-a2b552f9.entry.js.map → p-13f61347.entry.js.map} +0 -0
  308. /package/dist/build/{p-8af4e8e9.entry.js.map → p-18f3cc52.entry.js.map} +0 -0
  309. /package/dist/build/{p-639665b1.entry.js.map → p-198fac52.entry.js.map} +0 -0
  310. /package/dist/build/{p-606ad811.entry.js.map → p-1ce5f595.entry.js.map} +0 -0
  311. /package/dist/build/{p-cf7bd354.entry.js.map → p-2489f548.entry.js.map} +0 -0
  312. /package/dist/build/{p-8426ca20.entry.js.map → p-26d28e15.entry.js.map} +0 -0
  313. /package/dist/build/{p-b59115c3.entry.js.map → p-27ecc564.entry.js.map} +0 -0
  314. /package/dist/build/{p-3755da14.entry.js.map → p-2e258b57.entry.js.map} +0 -0
  315. /package/dist/build/{p-5b062bc3.entry.js.map → p-2ff0302a.entry.js.map} +0 -0
  316. /package/dist/build/{p-30c9f5e3.entry.js.map → p-311e879a.entry.js.map} +0 -0
  317. /package/dist/build/{p-d0796984.entry.js.map → p-31b09b93.entry.js.map} +0 -0
  318. /package/dist/build/{p-7793ba3a.entry.js.map → p-32ec455c.entry.js.map} +0 -0
  319. /package/dist/build/{p-ec15ee73.entry.js.map → p-4fe3d53a.entry.js.map} +0 -0
  320. /package/dist/build/{p-dd070ee8.entry.js.map → p-4feb9ce7.entry.js.map} +0 -0
  321. /package/dist/build/{p-00d4647f.entry.js.map → p-64aff6f3.entry.js.map} +0 -0
  322. /package/dist/build/{p-eebab75d.entry.js.map → p-744f5a41.entry.js.map} +0 -0
  323. /package/dist/build/{p-d8641c29.entry.js.map → p-7f41fb25.entry.js.map} +0 -0
  324. /package/dist/build/{p-af6b813e.entry.js.map → p-88f1b5e6.entry.js.map} +0 -0
  325. /package/dist/build/{p-179efb16.entry.js.map → p-8b1a63cb.entry.js.map} +0 -0
  326. /package/dist/build/{p-2becd73c.entry.js.map → p-9671e4e1.entry.js.map} +0 -0
  327. /package/dist/build/{p-0b0c43cc.entry.js.map → p-9c1e350b.entry.js.map} +0 -0
  328. /package/dist/build/{p-d7f2d4d3.entry.js.map → p-9c9ea527.entry.js.map} +0 -0
  329. /package/dist/build/{p-7bf042c9.entry.js.map → p-a11cf84a.entry.js.map} +0 -0
  330. /package/dist/build/{p-6f24685c.entry.js.map → p-a5770573.entry.js.map} +0 -0
  331. /package/dist/build/{p-576b6378.entry.js.map → p-ad9468a6.entry.js.map} +0 -0
  332. /package/dist/build/{p-dace47c5.entry.js.map → p-af71e807.entry.js.map} +0 -0
  333. /package/dist/build/{p-2cd5062f.entry.js.map → p-bcb8549b.entry.js.map} +0 -0
  334. /package/dist/build/{p-ec29eed0.entry.js.map → p-bd4ba06f.entry.js.map} +0 -0
  335. /package/dist/build/{p-bbe63029.entry.js.map → p-c1bac1cf.entry.js.map} +0 -0
  336. /package/dist/build/{p-95dc4bd3.entry.js.map → p-c4d17d60.entry.js.map} +0 -0
  337. /package/dist/build/{p-2c2cf3cf.entry.js.map → p-ca87bbc1.entry.js.map} +0 -0
  338. /package/dist/build/{p-35c563a7.entry.js.map → p-d4b10d27.entry.js.map} +0 -0
  339. /package/dist/build/{p-01adf065.entry.js.map → p-dbd732ab.entry.js.map} +0 -0
  340. /package/dist/build/{p-a37d182e.entry.js.map → p-de0f4cf1.entry.js.map} +0 -0
  341. /package/dist/build/{p-ec315c58.entry.js.map → p-de9f7dc2.entry.js.map} +0 -0
  342. /package/dist/build/{p-0cbff44f.entry.js.map → p-ec1584ef.entry.js.map} +0 -0
  343. /package/dist/build/{p-0f5c5693.entry.js.map → p-f07e2154.entry.js.map} +0 -0
  344. /package/dist/build/{p-699e0b35.entry.js.map → p-f2865277.entry.js.map} +0 -0
  345. /package/dist/build/{p-c3999d3e.entry.js.map → p-f95b1425.entry.js.map} +0 -0
  346. /package/dist/build/{p-4c30c74b.entry.js.map → p-fae6af23.entry.js.map} +0 -0
  347. /package/dist/paperless/{p-cb2674b5.entry.js.map → p-0a95044f.entry.js.map} +0 -0
  348. /package/dist/paperless/{p-a2b552f9.entry.js.map → p-13f61347.entry.js.map} +0 -0
  349. /package/dist/paperless/{p-8af4e8e9.entry.js.map → p-18f3cc52.entry.js.map} +0 -0
  350. /package/dist/paperless/{p-639665b1.entry.js.map → p-198fac52.entry.js.map} +0 -0
  351. /package/dist/paperless/{p-606ad811.entry.js.map → p-1ce5f595.entry.js.map} +0 -0
  352. /package/dist/paperless/{p-cf7bd354.entry.js.map → p-2489f548.entry.js.map} +0 -0
  353. /package/dist/paperless/{p-8426ca20.entry.js.map → p-26d28e15.entry.js.map} +0 -0
  354. /package/dist/paperless/{p-b59115c3.entry.js.map → p-27ecc564.entry.js.map} +0 -0
  355. /package/dist/paperless/{p-3755da14.entry.js.map → p-2e258b57.entry.js.map} +0 -0
  356. /package/dist/paperless/{p-5b062bc3.entry.js.map → p-2ff0302a.entry.js.map} +0 -0
  357. /package/dist/paperless/{p-30c9f5e3.entry.js.map → p-311e879a.entry.js.map} +0 -0
  358. /package/dist/paperless/{p-d0796984.entry.js.map → p-31b09b93.entry.js.map} +0 -0
  359. /package/dist/paperless/{p-7793ba3a.entry.js.map → p-32ec455c.entry.js.map} +0 -0
  360. /package/dist/paperless/{p-ec15ee73.entry.js.map → p-4fe3d53a.entry.js.map} +0 -0
  361. /package/dist/paperless/{p-dd070ee8.entry.js.map → p-4feb9ce7.entry.js.map} +0 -0
  362. /package/dist/paperless/{p-00d4647f.entry.js.map → p-64aff6f3.entry.js.map} +0 -0
  363. /package/dist/paperless/{p-eebab75d.entry.js.map → p-744f5a41.entry.js.map} +0 -0
  364. /package/dist/paperless/{p-d8641c29.entry.js.map → p-7f41fb25.entry.js.map} +0 -0
  365. /package/dist/paperless/{p-af6b813e.entry.js.map → p-88f1b5e6.entry.js.map} +0 -0
  366. /package/dist/paperless/{p-179efb16.entry.js.map → p-8b1a63cb.entry.js.map} +0 -0
  367. /package/dist/paperless/{p-2becd73c.entry.js.map → p-9671e4e1.entry.js.map} +0 -0
  368. /package/dist/paperless/{p-0b0c43cc.entry.js.map → p-9c1e350b.entry.js.map} +0 -0
  369. /package/dist/paperless/{p-d7f2d4d3.entry.js.map → p-9c9ea527.entry.js.map} +0 -0
  370. /package/dist/paperless/{p-7bf042c9.entry.js.map → p-a11cf84a.entry.js.map} +0 -0
  371. /package/dist/paperless/{p-6f24685c.entry.js.map → p-a5770573.entry.js.map} +0 -0
  372. /package/dist/paperless/{p-576b6378.entry.js.map → p-ad9468a6.entry.js.map} +0 -0
  373. /package/dist/paperless/{p-dace47c5.entry.js.map → p-af71e807.entry.js.map} +0 -0
  374. /package/dist/paperless/{p-2cd5062f.entry.js.map → p-bcb8549b.entry.js.map} +0 -0
  375. /package/dist/paperless/{p-ec29eed0.entry.js.map → p-bd4ba06f.entry.js.map} +0 -0
  376. /package/dist/paperless/{p-bbe63029.entry.js.map → p-c1bac1cf.entry.js.map} +0 -0
  377. /package/dist/paperless/{p-95dc4bd3.entry.js.map → p-c4d17d60.entry.js.map} +0 -0
  378. /package/dist/paperless/{p-2c2cf3cf.entry.js.map → p-ca87bbc1.entry.js.map} +0 -0
  379. /package/dist/paperless/{p-35c563a7.entry.js.map → p-d4b10d27.entry.js.map} +0 -0
  380. /package/dist/paperless/{p-01adf065.entry.js.map → p-dbd732ab.entry.js.map} +0 -0
  381. /package/dist/paperless/{p-a37d182e.entry.js.map → p-de0f4cf1.entry.js.map} +0 -0
  382. /package/dist/paperless/{p-ec315c58.entry.js.map → p-de9f7dc2.entry.js.map} +0 -0
  383. /package/dist/paperless/{p-0cbff44f.entry.js.map → p-ec1584ef.entry.js.map} +0 -0
  384. /package/dist/paperless/{p-0f5c5693.entry.js.map → p-f07e2154.entry.js.map} +0 -0
  385. /package/dist/paperless/{p-699e0b35.entry.js.map → p-f2865277.entry.js.map} +0 -0
  386. /package/dist/paperless/{p-c3999d3e.entry.js.map → p-f95b1425.entry.js.map} +0 -0
  387. /package/dist/paperless/{p-4c30c74b.entry.js.map → p-fae6af23.entry.js.map} +0 -0
@@ -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
  }
@@ -1 +1 @@
1
- {"file":"dropdown.component.js","mappings":"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","names":[],"sources":["src/components/molecules/dropdown/dropdown.component.scss?tag=p-dropdown&encapsulation=shadow","src/components/molecules/dropdown/dropdown.component.tsx"],"sourcesContent":[":host {\n\t@apply relative block;\n\n\t.trigger {\n\t\t@apply relative block h-auto w-auto;\n\t}\n\n\tp-dropdown-menu-container {\n\t\t@apply left-0 top-0 z-dropdown hidden;\n\n\t\t&[data-show] {\n\t\t\t@apply flex;\n\t\t}\n\n\t\t&[data-strategy='absolute'] {\n\t\t\t@apply absolute;\n\t\t}\n\n\t\t&[data-strategy='fixed'] {\n\t\t\t@apply fixed;\n\t\t}\n\t}\n}\n","import {\n\tautoUpdate,\n\tcomputePosition,\n\tflip,\n\toffset,\n\tPlacement,\n\tshift,\n\tStrategy,\n} from '@floating-ui/dom';\nimport {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tWatch,\n} from '@stencil/core';\nimport { childOf } from '../../../utils/child-of';\n\n@Component({\n\ttag: 'p-dropdown',\n\tstyleUrl: 'dropdown.component.scss',\n\tshadow: true,\n})\nexport class Dropdown {\n\t/**\n\t * The content of the dropdown menu\n\t */\n\t@Prop({ reflect: true }) placement: Placement = 'bottom-start';\n\n\t/**\n\t * The offset of the dropdown menu\n\t */\n\t@Prop() offset: number = 8;\n\n\t/**\n\t * The strategy of the dropdown placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * Wether to show the dropdown menu\n\t */\n\t@Prop() show: boolean = false;\n\n\t/**\n\t * Wether to automatically calculate the width of the menu based on the trigger\n\t */\n\t@Prop() calculateWidth: boolean = false;\n\n\t/**\n\t * Wether to apply the max width\n\t */\n\t@Prop() applyMaxWidth: boolean = true;\n\n\t/**\n\t * Wether to apply the full width\n\t */\n\t@Prop() applyFullWidth: boolean = true;\n\n\t/**\n\t * Wether to allow overflow in the container\n\t */\n\t@Prop() allowOverflow: boolean = false;\n\n\t/**\n\t * Wether the dropdown container should be scrollable when the threshold is met.\n\t */\n\t@Prop() scrollable: boolean | 'default' | 'large' = false;\n\n\t/**\n\t * Wether to automatically close the dropdown menu after clicking inside\n\t */\n\t@Prop() insideClick: boolean = false;\n\n\t/**\n\t * Wether to automatically close the dropdown menu after clicking inside\n\t */\n\t@Prop() disableTriggerClick: boolean = false;\n\n\t/**\n\t * Wether to apply chevron automatically\n\t */\n\t@Prop() applyChevron: boolean = true;\n\n\t/**\n\t * Chevron position\n\t */\n\t@Prop() chevronPosition: 'start' | 'end' = 'end';\n\n\t/**\n\t * Chevron direction\n\t */\n\t@Prop() chevronDirection: 'up' | 'down';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t/**\n\t * Open change event\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tisOpen: EventEmitter<boolean>;\n\n\tprivate _loaded = false;\n\tprivate _trigger: HTMLElement;\n\tprivate _menu: HTMLElement;\n\tprivate _cleanup: () => void;\n\n\tcomponentShouldUpdate() {\n\t\tthis._update();\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class=\"p-dropdown\">\n\t\t\t\t<div\n\t\t\t\t\tclass=\"trigger\"\n\t\t\t\t\tref={(ref) => (this._trigger = ref)}\n\t\t\t\t\tonClick={() => this._triggerClickHandler()}\n\t\t\t\t>\n\t\t\t\t\t<slot\n\t\t\t\t\t\tonSlotchange={(ev) => this._checkButton(ev)}\n\t\t\t\t\t\tname=\"trigger\"\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<p-dropdown-menu-container\n\t\t\t\t\trole=\"popover\"\n\t\t\t\t\tmaxWidth={!this.calculateWidth && this.applyMaxWidth}\n\t\t\t\t\tfullWidth={this.applyFullWidth && !this.applyMaxWidth}\n\t\t\t\t\tallowOverflow={this.allowOverflow}\n\t\t\t\t\tref={(el) => this._load(el)}\n\t\t\t\t\tdata-placement={this.placement}\n\t\t\t\t\tdata-strategy={this.strategy}\n\t\t\t\t\tonClick={() => this._containerClickHandler()}\n\t\t\t\t\tscrollable={this.scrollable}\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"items\" />\n\t\t\t\t</p-dropdown-menu-container>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate _checkButton({ target }: Event) {\n\t\tif (!this.applyChevron) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst slot = target as HTMLSlotElement;\n\t\tconst children = slot.assignedElements();\n\n\t\tfor (let child of children) {\n\t\t\tif (child.nodeName === 'P-BUTTON') {\n\t\t\t\t(child as any).chevronPosition = this.chevronPosition;\n\t\t\t\t(child as any).chevron = this.chevronDirection\n\t\t\t\t\t? this.chevronDirection\n\t\t\t\t\t: this.placement.indexOf('top') >= 0\n\t\t\t\t\t\t? 'up'\n\t\t\t\t\t\t: 'down';\n\t\t\t}\n\t\t}\n\t}\n\n\t@Watch('show')\n\tprotected onShowChange(show) {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!show) {\n\t\t\tthis._hide();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler({ target }) {\n\t\tif (\n\t\t\t!this._menu.hasAttribute('data-show') ||\n\t\t\tchildOf(target, this._el)\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._hide();\n\t}\n\n\tprivate _containerClickHandler() {\n\t\tif (this.insideClick) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._menu.hasAttribute('data-show')) {\n\t\t\tthis._hide();\n\t\t}\n\t}\n\n\tprivate _triggerClickHandler() {\n\t\tif (this.disableTriggerClick) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._menu.hasAttribute('data-show')) {\n\t\t\tthis._hide();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\tprivate _load(popover: HTMLElement) {\n\t\tthis._menu = popover;\n\t\tif (popover) {\n\t\t\tthis._update();\n\t\t\tthis._loaded = true;\n\n\t\t\tif (this.show) {\n\t\t\t\tsetTimeout(() => this._show(), 100);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate _show() {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Make the popover visible\n\t\tif (this.calculateWidth) {\n\t\t\tthis._menu.style.width = `${this._trigger.clientWidth}px`;\n\t\t}\n\n\t\tthis._cleanup = autoUpdate(this._el, this._menu, () => this._update());\n\n\t\tthis._menu.setAttribute('data-show', '');\n\t\tthis.isOpen.emit(true);\n\t}\n\n\tprivate _hide() {\n\t\tif (!this._loaded || this.show) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\n\t\t// Hide the popover\n\t\tthis._menu.removeAttribute('data-show');\n\t\tthis.isOpen.emit(false);\n\t}\n\n\tprivate _update() {\n\t\tif (!this._menu) {\n\t\t\treturn;\n\t\t}\n\n\t\tcomputePosition(this._el, this._menu, {\n\t\t\tplacement: this.placement,\n\t\t\tstrategy: this.strategy,\n\t\t\tmiddleware: [offset(this.offset), flip(), shift()],\n\t\t}).then(({ x, y, placement }) => {\n\t\t\tthis._menu.dataset.placement = placement;\n\t\t\tObject.assign(this._menu.style, {\n\t\t\t\ttop: `${y}px`,\n\t\t\t\tleft: `${x}px`,\n\t\t\t});\n\t\t});\n\t}\n}\n"],"version":3}
1
+ {"file":"dropdown.component.js","mappings":"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","names":[],"sources":["src/components/molecules/dropdown/dropdown.component.scss?tag=p-dropdown","src/components/molecules/dropdown/dropdown.component.tsx"],"sourcesContent":["p-dropdown {\n\t@apply relative block;\n\n\t.trigger {\n\t\t@apply relative block h-auto w-auto;\n\t}\n}\n","import {\n\tautoUpdate,\n\tcomputePosition,\n\tflip,\n\toffset,\n\tPlacement,\n\tshift,\n\tStrategy,\n} from '@floating-ui/dom';\nimport {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tWatch,\n} from '@stencil/core';\nimport { childOf } from '../../../utils/child-of';\n\n@Component({\n\ttag: 'p-dropdown',\n\tstyleUrl: 'dropdown.component.scss',\n})\nexport class Dropdown {\n\t/**\n\t * The content of the dropdown menu\n\t */\n\t@Prop({ reflect: true }) placement: Placement = 'bottom-start';\n\n\t/**\n\t * The offset of the dropdown menu\n\t */\n\t@Prop() offset: number = 8;\n\n\t/**\n\t * The strategy of the dropdown placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * Wether to show the dropdown menu\n\t */\n\t@Prop() show: boolean = false;\n\n\t/**\n\t * Wether to use a portal for the dropdown container\n\t */\n\t@Prop() usePortal: boolean = false;\n\n\t/**\n\t * Wether to automatically calculate the width of the menu based on the trigger\n\t */\n\t@Prop() calculateWidth: boolean = false;\n\n\t/**\n\t * Wether to apply the max width\n\t */\n\t@Prop() applyMaxWidth: boolean = true;\n\n\t/**\n\t * Wether to apply the full width\n\t */\n\t@Prop() applyFullWidth: boolean = true;\n\n\t/**\n\t * Wether to allow overflow in the container\n\t */\n\t@Prop() allowOverflow: boolean = false;\n\n\t/**\n\t * Wether the dropdown container should be scrollable when the threshold is met.\n\t */\n\t@Prop() scrollable: boolean | 'default' | 'large' = false;\n\n\t/**\n\t * Wether to automatically close the dropdown menu after clicking inside\n\t */\n\t@Prop() insideClick: boolean = false;\n\n\t/**\n\t * Wether to automatically close the dropdown menu after clicking inside\n\t */\n\t@Prop() disableTriggerClick: boolean = false;\n\n\t/**\n\t * Wether to apply chevron automatically\n\t */\n\t@Prop() applyChevron: boolean = true;\n\n\t/**\n\t * Chevron position\n\t */\n\t@Prop() chevronPosition: 'start' | 'end' = 'end';\n\n\t/**\n\t * Chevron direction\n\t */\n\t@Prop() chevronDirection: 'up' | 'down';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t/**\n\t * Open change event\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tisOpen: EventEmitter<boolean>;\n\n\tprivate _loaded = false;\n\tprivate _trigger: HTMLElement;\n\tprivate _menu: HTMLElement;\n\tprivate _cleanup: () => void;\n\n\tcomponentShouldUpdate() {\n\t\tthis._update();\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\n\t\tthis._menu.remove();\n\t}\n\n\tcomponentDidRender() {\n\t\tthis._checkButtons();\n\t}\n\n\trender() {\n\t\tconst dropdownContainerProps = {\n\t\t\tclass: `z-dropdown hidden ${\n\t\t\t\tthis.strategy === 'fixed' ? 'fixed' : 'absolute'\n\t\t\t}`,\n\t\t\tref: el => this._load(el),\n\t\t\tonClick: () => this._containerClickHandler(),\n\t\t\trole: 'popover',\n\t\t\t'data-placement': this.placement,\n\t\t\t'data-strategy': this.strategy,\n\t\t};\n\n\t\tlet dropdownContainer: HTMLElement;\n\n\t\tif (this.usePortal) {\n\t\t\tdropdownContainer = (\n\t\t\t\t<p-portal {...dropdownContainerProps}>\n\t\t\t\t\t<p-dropdown-menu-container\n\t\t\t\t\t\tmaxWidth={!this.calculateWidth && this.applyMaxWidth}\n\t\t\t\t\t\tfullWidth={this.applyFullWidth && !this.applyMaxWidth}\n\t\t\t\t\t\tallowOverflow={this.allowOverflow}\n\t\t\t\t\t\tscrollable={this.scrollable}\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot name='items' />\n\t\t\t\t\t</p-dropdown-menu-container>\n\t\t\t\t</p-portal>\n\t\t\t);\n\t\t} else {\n\t\t\tdropdownContainer = (\n\t\t\t\t<p-dropdown-menu-container\n\t\t\t\t\tmaxWidth={!this.calculateWidth && this.applyMaxWidth}\n\t\t\t\t\tfullWidth={this.applyFullWidth && !this.applyMaxWidth}\n\t\t\t\t\tallowOverflow={this.allowOverflow}\n\t\t\t\t\tscrollable={this.scrollable}\n\t\t\t\t\t{...dropdownContainerProps}\n\t\t\t\t>\n\t\t\t\t\t<slot name='items' />\n\t\t\t\t</p-dropdown-menu-container>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<Host class='p-dropdown'>\n\t\t\t\t<div\n\t\t\t\t\tclass='trigger'\n\t\t\t\t\tref={ref => (this._trigger = ref)}\n\t\t\t\t\tonClick={() => this._triggerClickHandler()}\n\t\t\t\t>\n\t\t\t\t\t<slot name='trigger' />\n\t\t\t\t</div>\n\t\t\t\t{dropdownContainer}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate _checkButtons() {\n\t\tif (!this.applyChevron) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst children = this._el.querySelectorAll('p-button[slot=\"trigger\"]');\n\n\t\tfor (let child of [...children]) {\n\t\t\t(child as any).chevronPosition = this.chevronPosition;\n\t\t\t(child as any).chevron = this.chevronDirection\n\t\t\t\t? this.chevronDirection\n\t\t\t\t: this.placement.indexOf('top') >= 0\n\t\t\t\t? 'up'\n\t\t\t\t: 'down';\n\t\t}\n\t}\n\n\t@Watch('show')\n\tprotected onShowChange(show) {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!show) {\n\t\t\tthis._hide();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler({ target }) {\n\t\tif (!this._menu.hasAttribute('data-show') || childOf(target, this._menu)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._hide();\n\t}\n\n\tprivate _containerClickHandler() {\n\t\tif (this.insideClick) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._menu.hasAttribute('data-show')) {\n\t\t\tthis._hide();\n\t\t}\n\t}\n\n\tprivate _triggerClickHandler() {\n\t\tif (this.disableTriggerClick) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._menu.hasAttribute('data-show')) {\n\t\t\tthis._hide();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\tprivate _load(popover: HTMLElement) {\n\t\tthis._menu = popover;\n\t\tif (popover) {\n\t\t\tthis._update();\n\t\t\tthis._loaded = true;\n\n\t\t\tif (this.show) {\n\t\t\t\tsetTimeout(() => this._show(), 100);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate _show() {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Make the popover visible\n\t\tif (this.calculateWidth) {\n\t\t\tthis._menu.style.width = `${this._trigger.clientWidth}px`;\n\t\t}\n\n\t\tthis._cleanup = autoUpdate(this._el, this._menu, () => this._update());\n\n\t\tthis._menu.setAttribute('data-show', '');\n\t\tthis._menu.classList.remove('hidden');\n\t\tthis._menu.classList.add('flex');\n\n\t\tthis.isOpen.emit(true);\n\n\t\tthis._update();\n\t}\n\n\tprivate _hide() {\n\t\tif (!this._loaded || this.show) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\n\t\t// Hide the popover\n\t\tthis._menu.removeAttribute('data-show');\n\t\tthis._menu.classList.remove('flex');\n\t\tthis._menu.classList.add('hidden');\n\n\t\tthis.isOpen.emit(false);\n\t}\n\n\tprivate _update() {\n\t\tif (!this._menu) {\n\t\t\treturn;\n\t\t}\n\n\t\tcomputePosition(this._el, this._menu, {\n\t\t\tplacement: this.placement,\n\t\t\tstrategy: this.strategy,\n\t\t\tmiddleware: [offset(this.offset), flip(), shift()],\n\t\t}).then(({ x, y, placement }) => {\n\t\t\tthis._menu.dataset.placement = placement;\n\t\t\tObject.assign(this._menu.style, {\n\t\t\t\ttop: `${y}px`,\n\t\t\t\tleft: `${x}px`,\n\t\t\t});\n\t\t});\n\t}\n}\n"],"version":3}
@@ -1,20 +1,22 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
2
  import { d as defineCustomElement$1 } from './tooltip.component.js';
3
3
 
4
- const helperComponentCss = ".inline-block{display:inline-block!important}.w-3{width:.75rem!important}.cursor-pointer{cursor:pointer!important}.bg-center{background-position:50%!important}.bg-no-repeat{background-repeat:no-repeat!important}*{box-sizing:border-box}:host .helper{background-image:url(/assets/images/helper/helper.svg);background-position:50%;background-repeat:no-repeat;cursor:pointer;display:inline-block;height:.75rem;width:.75rem}:host .helper:hover{background-image:url(/assets/images/helper/helper-hover.svg)}.static{position:static!important}";
4
+ const helperComponentCss = ".inline-block{display:inline-block!important}.w-3{width:.75rem!important}.cursor-pointer{cursor:pointer!important}.bg-center{background-position:50%!important}.bg-no-repeat{background-repeat:no-repeat!important}*{box-sizing:border-box}:host .helper{background-image:url(/assets/images/helper/helper.svg);background-position:50%;background-repeat:no-repeat;cursor:pointer;display:inline-block;height:.75rem;width:.75rem}:host .helper:hover{background-image:url(/assets/images/helper/helper-hover.svg)}.static{position:static!important}.absolute{position:absolute!important}";
5
5
 
6
6
  const Helper = /*@__PURE__*/ proxyCustomElement(class Helper extends HTMLElement {
7
7
  constructor() {
8
8
  super();
9
9
  this.__registerHost();
10
10
  this.__attachShadow();
11
+ this.strategy = 'absolute';
11
12
  this.placement = 'top';
12
13
  }
13
14
  render() {
14
- return (h(Host, { class: "p-helper" }, h("p-tooltip", { placement: this.placement }, h("div", { slot: "content" }, h("slot", null)), h("div", { slot: "trigger", class: "helper" }))));
15
+ return (h(Host, { class: 'p-helper' }, h("p-tooltip", { placement: this.placement, strategy: this.strategy }, h("div", { slot: 'content' }, h("slot", null)), h("div", { slot: 'trigger', class: 'helper' }))));
15
16
  }
16
17
  static get style() { return helperComponentCss; }
17
18
  }, [1, "p-helper", {
19
+ "strategy": [1],
18
20
  "placement": [1]
19
21
  }]);
20
22
  function defineCustomElement() {
@@ -1 +1 @@
1
- {"file":"helper.component.js","mappings":";;;AAAA,MAAM,kBAAkB,GAAG,whBAAwhB;;MCQtiB,MAAM;;;;;qBAIa,KAAK;;EAEpC,MAAM;IACL,QACC,EAAC,IAAI,IAAC,KAAK,EAAC,UAAU,IACrB,iBAAW,SAAS,EAAE,IAAI,CAAC,SAAS,IACnC,WAAK,IAAI,EAAC,SAAS,IAClB,eAAQ,CACH,EAEN,WAAK,IAAI,EAAC,SAAS,EAAC,KAAK,EAAC,QAAQ,GAAO,CAC9B,CACN,EACN;GACF;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/atoms/helper/helper.component.scss?tag=p-helper&encapsulation=shadow","src/components/atoms/helper/helper.component.tsx"],"sourcesContent":[":host {\n\t.helper {\n\t\t@apply inline-block cursor-pointer bg-no-repeat bg-center w-3 h-3;\n\t\tbackground-image: url(/assets/images/helper/helper.svg);\n\n\t\t&:hover {\n\t\t\tbackground-image: url(/assets/images/helper/helper-hover.svg);\n\t\t}\n\t}\n}\n","import { Placement } from '@floating-ui/dom';\nimport { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n\ttag: 'p-helper',\n\tstyleUrl: 'helper.component.scss',\n\tshadow: true,\n})\nexport class Helper {\n\t/**\n\t * The placement of the helper popover\n\t */\n\t@Prop() placement: Placement = 'top';\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class=\"p-helper\">\n\t\t\t\t<p-tooltip placement={this.placement}>\n\t\t\t\t\t<div slot=\"content\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div slot=\"trigger\" class=\"helper\"></div>\n\t\t\t\t</p-tooltip>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
1
+ {"file":"helper.component.js","mappings":";;;AAAA,MAAM,kBAAkB,GAAG,8jBAA8jB;;MCQ5kB,MAAM;;;;;oBAIW,UAAU;qBAKR,KAAK;;EAEpC,MAAM;IACL,QACC,EAAC,IAAI,IAAC,KAAK,EAAC,UAAU,IACrB,iBACC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAEvB,WAAK,IAAI,EAAC,SAAS,IAClB,eAAQ,CACH,EAEN,WACC,IAAI,EAAC,SAAS,EACd,KAAK,EAAC,QAAQ,GACR,CACI,CACN,EACN;GACF;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/atoms/helper/helper.component.scss?tag=p-helper&encapsulation=shadow","src/components/atoms/helper/helper.component.tsx"],"sourcesContent":[":host {\n\t.helper {\n\t\t@apply inline-block cursor-pointer bg-no-repeat bg-center w-3 h-3;\n\t\tbackground-image: url(/assets/images/helper/helper.svg);\n\n\t\t&:hover {\n\t\t\tbackground-image: url(/assets/images/helper/helper-hover.svg);\n\t\t}\n\t}\n}\n","import { Placement, Strategy } from '@floating-ui/dom';\nimport { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n\ttag: 'p-helper',\n\tstyleUrl: 'helper.component.scss',\n\tshadow: true,\n})\nexport class Helper {\n\t/**\n\t * The strategy of the popover placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * The placement of the helper popover\n\t */\n\t@Prop() placement: Placement = 'top';\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class='p-helper'>\n\t\t\t\t<p-tooltip\n\t\t\t\t\tplacement={this.placement}\n\t\t\t\t\tstrategy={this.strategy}\n\t\t\t\t>\n\t\t\t\t\t<div slot='content'>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\tclass='helper'\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"],"version":3}
@@ -36,14 +36,11 @@ const InputGroup = /*@__PURE__*/ proxyCustomElement(class InputGroup extends HTM
36
36
  render() {
37
37
  var _a;
38
38
  const { hasHeaderSlot, helper, label, prefix, suffix, errorAndErrorIsNotBoolean, errorVariant, } = this._getSlotInfo();
39
- 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 &&
39
+ 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 &&
40
40
  errorVariant === 'element' &&
41
- (this.forceShowTooltip || this._forceShowTooltip), enableUserInput: false }, h("div", { class: "content", slot: "trigger" }, (prefix ||
42
- (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 ||
43
- (errorAndErrorIsNotBoolean &&
44
- errorVariant === 'icon') ||
45
- (this.icon && this.iconPosition === 'end')) && (h("div", { class: `suffix size-${this.size}`, onClick: () => this._focusInput() }, errorAndErrorIsNotBoolean &&
46
- 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" })))));
41
+ (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 ||
42
+ (errorAndErrorIsNotBoolean && errorVariant === 'icon') ||
43
+ (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' })))));
47
44
  }
48
45
  handleFocusIn() {
49
46
  this._forceShowTooltip = true;
@@ -96,13 +93,11 @@ const InputGroup = /*@__PURE__*/ proxyCustomElement(class InputGroup extends HTM
96
93
  const hasPrefixSlot = !!this._el.querySelector(':scope > [slot="prefix"]');
97
94
  const hasSuffixSlot = !!this._el.querySelector(':scope > [slot="suffix"]');
98
95
  const hasHeaderSlot = !!this._el.querySelector(':scope > [slot="header"]');
99
- const helper = hasHelperSlot ? h("slot", { name: "helper" }) : this.helper;
100
- const label = hasLabelSlot ? h("slot", { name: "label" }) : this.label;
101
- const prefix = hasPrefixSlot ? h("slot", { name: "prefix" }) : this.prefix;
102
- const suffix = hasSuffixSlot ? h("slot", { name: "suffix" }) : this.suffix;
103
- const errorAndErrorIsNotBoolean = this.error &&
104
- typeof this.error === 'string' &&
105
- this.error !== 'true';
96
+ const helper = hasHelperSlot ? h("slot", { name: 'helper' }) : this.helper;
97
+ const label = hasLabelSlot ? h("slot", { name: 'label' }) : this.label;
98
+ const prefix = hasPrefixSlot ? h("slot", { name: 'prefix' }) : this.prefix;
99
+ const suffix = hasSuffixSlot ? h("slot", { name: 'suffix' }) : this.suffix;
100
+ const errorAndErrorIsNotBoolean = this.error && typeof this.error === 'string' && this.error !== 'true';
106
101
  return {
107
102
  hasHelperSlot,
108
103
  hasLabelSlot,
@@ -114,7 +109,11 @@ const InputGroup = /*@__PURE__*/ proxyCustomElement(class InputGroup extends HTM
114
109
  prefix,
115
110
  suffix,
116
111
  errorAndErrorIsNotBoolean,
117
- errorVariant: this.errorVariant === 'auto' ? (this._el.offsetWidth <= 72 ? 'element' : 'icon') : this.errorVariant,
112
+ errorVariant: this.errorVariant === 'auto'
113
+ ? this._el.offsetWidth <= 72
114
+ ? 'element'
115
+ : 'icon'
116
+ : this.errorVariant,
118
117
  };
119
118
  }
120
119
  _focusInput() {
@@ -1 +1 @@
1
- {"file":"input-group.component.js","mappings":";;;;;;AAAA,MAAM,sBAAsB,GAAG,qouDAAqouD;;MCiBvpuD,UAAU;;;;;IAwFd,qBAAgB,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;gBApFd,QAAQ;;;;;;wBA8BH,OAAO;;;;;oBAyBF,KAAK;mBAKN,KAAK;4BAKI,KAAK;uBAKjB,OAAO;wBAKM,MAAM;6BAOvB,KAAK;;EAI1C,mBAAmB;IAClB,IAAI,CAAC,gBAAgB,EAAE,CAAC;GACxB;EAED,MAAM;;IACL,MAAM,EACL,aAAa,EACb,MAAM,EACN,KAAK,EACL,MAAM,EACN,MAAM,EACN,yBAAyB,EACzB,YAAY,GACZ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;IAExB,QACC,EAAC,IAAI,IACJ,KAAK,EAAE,iBAAiB,CAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,MAAM,KAAI,OAAO,IACpD,IAAI,CAAC,QAAQ,IAAI,UAClB,IAAI,IAAI,CAAC,OAAO,IAAI,SAAS,SAAS,IAAI,CAAC,IAAI,EAAE,IAEjD,WAAK,KAAK,EAAC,gCAAgC,IACzC,KAAK,KACL,WACC,KAAK,EAAC,aAAa,EACnB,OAAO,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE,IAEhC,KAAK,EACL,IAAI,CAAC,QAAQ,KACb,YAAM,KAAK,EAAC,oBAAoB,QAAS,CACzC,CACI,CACN,EAEA,CAAC,MAAM,IAAI,aAAa,MACxB,WAAK,KAAK,EAAC,cAAc,IACvB,aAAa,IAAI,YAAM,IAAI,EAAC,QAAQ,GAAG,EACvC,MAAM,KACN,gBACC,KAAK,EAAE,QACN,aAAa,GAAG,MAAM,GAAG,EAC1B,EAAE,EACF,SAAS,EAAC,SAAS,IAElB,MAAM,CACG,CACX,CACI,CACN,CACI,EACN,iBACC,KAAK,EAAC,QAAQ,EACd,OAAO,EAAC,eAAe,EACvB,OAAO,EAAE,IAAI,CAAC,KAAK,EACnB,IAAI,EACH,yBAAyB;QACzB,YAAY,KAAK,SAAS;SACzB,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,iBAAiB,CAAC,EAElD,eAAe,EAAE,KAAK,IAEtB,WAAK,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,IACjC,CAAC,MAAM;OACN,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO,CAAC,MAC5C,WACC,KAAK,EAAE,eAAe,IAAI,CAAC,IAAI,EAAE,EACjC,OAAO,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE,IAEhC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO,IAC1C,cACC,KAAK,EAAC,MAAM,EACZ,OAAO,EAAE,IAAI,CAAC,IAAI,EAClB,MAAM,EAAE,IAAI,CAAC,UAAU,EACvB,IAAI,EAAE,IAAI,CAAC,QAAQ,GAClB,KAEF,MAAM,CACN,CACI,CACN,EACA,CAAC,MAAM;OACN,yBAAyB;QACzB,YAAY,KAAK,MAAM,CAAC;OACxB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,MAC1C,WACC,KAAK,EAAE,eAAe,IAAI,CAAC,IAAI,EAAE,EACjC,OAAO,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE,IAEhC,yBAAyB;MAC1B,YAAY,KAAK,MAAM,IACtB,qBACC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,gBAAgB,EACf,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,iBAAiB,GAE/C,IACC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,IAC3C,cACC,KAAK,EAAC,MAAM,EACZ,OAAO,EAAE,IAAI,CAAC,IAAI,EAClB,MAAM,EAAE,IAAI,CAAC,UAAU,EACvB,IAAI,EAAE,IAAI,CAAC,QAAQ,GAClB,KAEF,MAAM,CACN,CACI,CACN,EAED,YAAM,IAAI,EAAC,OAAO,GAAG,CAChB,CACK,CACN,EACN;GACF;EAGD,aAAa;IACZ,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;GAC9B;EAGD,cAAc;IACb,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;GAC/B;;;;;;EAMO,gBAAgB;IACvB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;IAEhE,IAAI,CAAC,KAAK,EAAE;MACX,OAAO;KACP;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAC5C,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;MAClD,OAAO;KACP;IAED,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;MACzC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;KAC/B;IAED,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAyB,EAAE,YAAY,EAAE,GAChE,IAAI,CAAC,YAAY,EAAE,CAAC;IAErB,IACC,MAAM;OACL,yBAAyB,IAAI,YAAY,KAAK,MAAM,CAAC;OACrD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,EACzC;MACD,KAAK,CAAC,SAAS,CAAC,GAAG,CAClB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,MAAM,CACN,CAAC;KACF;SAAM;MACN,KAAK,CAAC,SAAS,CAAC,MAAM,CACrB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,MAAM,CACN,CAAC;KACF;IAED,IAAI,MAAM,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO,CAAC,EAAE;MAC3D,KAAK,CAAC,SAAS,CAAC,GAAG,CAClB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,MAAM,CACN,CAAC;KACF;SAAM;MACN,KAAK,CAAC,SAAS,CAAC,MAAM,CACrB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,MAAM,CACN,CAAC;KACF;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;MACrE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;KAClC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;MACpE,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;KACrC;GACD;EAEO,YAAY;IACnB,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAC7C,0BAA0B,CAC1B,CAAC;IACF,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAC5C,yBAAyB,CACzB,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAC7C,0BAA0B,CAC1B,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAC7C,0BAA0B,CAC1B,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAC7C,0BAA0B,CAC1B,CAAC;IAEF,MAAM,MAAM,GAAG,aAAa,GAAG,YAAM,IAAI,EAAC,QAAQ,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACpE,MAAM,KAAK,GAAG,YAAY,GAAG,YAAM,IAAI,EAAC,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;IAChE,MAAM,MAAM,GAAG,aAAa,GAAG,YAAM,IAAI,EAAC,QAAQ,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACpE,MAAM,MAAM,GAAG,aAAa,GAAG,YAAM,IAAI,EAAC,QAAQ,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IAEpE,MAAM,yBAAyB,GAC9B,IAAI,CAAC,KAAK;MACV,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;MAC9B,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC;IAEvB,OAAO;MACN,aAAa;MACb,YAAY;MACZ,aAAa;MACb,aAAa;MACb,aAAa;MACb,MAAM;MACN,KAAK;MACL,MAAM;MACN,MAAM;MACN,yBAAyB;MACzB,YAAY,EAAE,IAAI,CAAC,YAAY,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,GAAG,SAAS,GAAG,MAAM,IAAI,IAAI,CAAC,YAAY;KAClH,CAAC;GACF;EAEO,WAAW;IAClB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;IAC/D,KAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;GAC3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/molecules/input-group/input-group.component.scss?tag=p-input-group&encapsulation=shadow","src/components/molecules/input-group/input-group.component.tsx"],"sourcesContent":["@import '../../../style/form/mixins';\n\n@mixin slottedItems($prefix: false) {\n\t@include inputs($prefix, true) {\n\t\t@content;\n\t}\n}\n\n:host {\n\t@apply flex w-full flex-col;\n\t@apply outline-none #{!important};\n\n\t.input-label {\n\t\t@apply mb-[2px] text-xs font-semibold uppercase tracking-wider text-storm-vague;\n\t}\n\n\t.input-header {\n\t\t@apply mb-[2px] flex items-end gap-2;\n\t}\n\n\t.content {\n\t\t@apply flex w-full;\n\n\t\t.prefix,\n\t\t.suffix {\n\t\t\t@include inputDefaultState(false);\n\t\t\t@apply box-border flex-1 text-storm;\n\t\t\t@apply h-full;\n\t\t}\n\n\t\t.prefix {\n\t\t\t@apply rounded-br-none rounded-tr-none;\n\t\t\t@apply border-r-0 #{!important};\n\t\t\t@apply order-1;\n\t\t\t@apply pr-2;\n\t\t}\n\n\t\t.suffix {\n\t\t\t@apply rounded-bl-none rounded-tl-none;\n\t\t\t@apply order-3;\n\t\t\t@apply pl-2;\n\t\t\t@apply border-l-0 #{!important};\n\t\t}\n\n\t\t@include slottedItems() {\n\t\t\t@include inputDefaultState();\n\t\t\t@apply order-2;\n\t\t}\n\n\t\t@include slottedItems('.prefix') {\n\t\t\t@apply rounded-bl-none rounded-tl-none #{!important};\n\t\t\t@apply flex-auto;\n\t\t\t@apply border-l-0 pl-0 #{!important};\n\t\t}\n\n\t\t@include slottedItems('.suffix') {\n\t\t\t@apply rounded-br-none rounded-tr-none #{!important};\n\t\t\t@apply flex-auto;\n\t\t\t@apply border-r-0 pr-0 #{!important};\n\t\t}\n\t}\n}\n\n:host(.focused),\n:host([focused]),\n:host(:focus-within),\n:host(:focus) {\n\t@apply outline-none #{!important};\n\n\t.prefix,\n\t.suffix {\n\t\t@include inputFocusState();\n\t\t@apply text-indigo;\n\t}\n\n\t@include slottedItems() {\n\t\t@include inputFocusState();\n\t}\n}\n\n:host(.error),\n:host([error]) {\n\t.prefix,\n\t.suffix {\n\t\t@include inputErrorState();\n\t\t@apply text-negative;\n\t}\n\n\t.suffix {\n\t\t@apply items-start py-[calc(0.75rem-1px)];\n\t}\n\n\t@include slottedItems() {\n\t\t@include inputErrorState();\n\n\t\t&:focus,\n\t\t&:focus-within,\n\t\t&:focus-visible,\n\t\t&.focus,\n\t\t&[active],\n\t\t&.active {\n\t\t\t@include inputErrorState();\n\t\t}\n\t}\n}\n\n:host(.disabled),\n:host([disabled]) {\n\t.prefix,\n\t.suffix {\n\t\t@include inputDisabledState();\n\t}\n\n\t@include slottedItems() {\n\t\t@include inputDisabledState();\n\t\tpointer-events: none;\n\t}\n}\n\n:host(.size-small) {\n\t@include slottedItems() {\n\t\t@include inputSizeSmall();\n\t}\n}\n\n:host(.size-small.error),\n:host(.size-small[error]) {\n\t.suffix {\n\t\t@apply py-2;\n\t}\n}\n","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"],"version":3}
1
+ {"file":"input-group.component.js","mappings":"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","names":[],"sources":["src/components/molecules/input-group/input-group.component.scss?tag=p-input-group&encapsulation=shadow","src/components/molecules/input-group/input-group.component.tsx"],"sourcesContent":["@import '../../../style/form/mixins';\n\n@mixin slottedItems($prefix: false) {\n\t@include inputs($prefix, true) {\n\t\t@content;\n\t}\n}\n\n:host {\n\t@apply flex w-full flex-col;\n\t@apply outline-none #{!important};\n\n\t.input-label {\n\t\t@apply mb-[2px] text-xs font-semibold uppercase tracking-wider text-storm-vague;\n\t}\n\n\t.input-header {\n\t\t@apply mb-[2px] flex items-end gap-2;\n\t}\n\n\t.content {\n\t\t@apply flex w-full;\n\n\t\t.prefix,\n\t\t.suffix {\n\t\t\t@include inputDefaultState(false);\n\t\t\t@apply box-border flex-1 text-storm;\n\t\t\t@apply h-full;\n\t\t}\n\n\t\t.prefix {\n\t\t\t@apply rounded-br-none rounded-tr-none;\n\t\t\t@apply border-r-0 #{!important};\n\t\t\t@apply order-1;\n\t\t\t@apply pr-2;\n\t\t}\n\n\t\t.suffix {\n\t\t\t@apply rounded-bl-none rounded-tl-none;\n\t\t\t@apply order-3;\n\t\t\t@apply pl-2;\n\t\t\t@apply border-l-0 #{!important};\n\t\t}\n\n\t\t@include slottedItems() {\n\t\t\t@include inputDefaultState();\n\t\t\t@apply order-2;\n\t\t}\n\n\t\t@include slottedItems('.prefix') {\n\t\t\t@apply rounded-bl-none rounded-tl-none #{!important};\n\t\t\t@apply flex-auto;\n\t\t\t@apply border-l-0 pl-0 #{!important};\n\t\t}\n\n\t\t@include slottedItems('.suffix') {\n\t\t\t@apply rounded-br-none rounded-tr-none #{!important};\n\t\t\t@apply flex-auto;\n\t\t\t@apply border-r-0 pr-0 #{!important};\n\t\t}\n\t}\n}\n\n:host(.focused),\n:host([focused]),\n:host(:focus-within),\n:host(:focus) {\n\t@apply outline-none #{!important};\n\n\t.prefix,\n\t.suffix {\n\t\t@include inputFocusState();\n\t\t@apply text-indigo;\n\t}\n\n\t@include slottedItems() {\n\t\t@include inputFocusState();\n\t}\n}\n\n:host(.error),\n:host([error]) {\n\t.prefix,\n\t.suffix {\n\t\t@include inputErrorState();\n\t\t@apply text-negative;\n\t}\n\n\t.suffix {\n\t\t@apply items-start py-[calc(0.75rem-1px)];\n\t}\n\n\t@include slottedItems() {\n\t\t@include inputErrorState();\n\n\t\t&:focus,\n\t\t&:focus-within,\n\t\t&:focus-visible,\n\t\t&.focus,\n\t\t&[active],\n\t\t&.active {\n\t\t\t@include inputErrorState();\n\t\t}\n\t}\n}\n\n:host(.disabled),\n:host([disabled]) {\n\t.prefix,\n\t.suffix {\n\t\t@include inputDisabledState();\n\t}\n\n\t@include slottedItems() {\n\t\t@include inputDisabledState();\n\t\tpointer-events: none;\n\t}\n}\n\n:host(.size-small) {\n\t@include slottedItems() {\n\t\t@include inputSizeSmall();\n\t}\n}\n\n:host(.size-small.error),\n:host(.size-small[error]) {\n\t.suffix {\n\t\t@apply py-2;\n\t}\n}\n","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"],"version":3}
@@ -1,12 +1,13 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { c as childOf } from './child-of.js';
3
- import { _ as _typeof, g as getUTCWeekYear, s as startOfUTCWeek, a as startOfUTCISOWeek, r as requiredArgs, t as toDate, b as getUTCWeek, c as toInteger, e as getUTCISOWeek, f as getDefaultOptions, l as longFormatters, h as subMilliseconds, i as getTimezoneOffsetInMilliseconds, j as locale, k as isProtectedWeekYearToken, m as throwProtectedError, n as isProtectedDayOfYearToken, o as isValid, p as isBefore, q as isAfter, u as startOfDay, v as isSameDay, w as format, d as defineCustomElement$9 } from './calendar.component.js';
4
- import { d as defineCustomElement$8 } from './dropdown.component.js';
5
- import { d as defineCustomElement$7 } from './dropdown-menu-container.component.js';
6
- import { d as defineCustomElement$6 } from './helper.component.js';
7
- import { d as defineCustomElement$5 } from './icon.component.js';
8
- import { d as defineCustomElement$4 } from './input-error.component.js';
9
- import { d as defineCustomElement$3 } from './input-group.component.js';
3
+ import { _ as _typeof, g as getUTCWeekYear, s as startOfUTCWeek, a as startOfUTCISOWeek, r as requiredArgs, t as toDate, b as getUTCWeek, c as toInteger, e as getUTCISOWeek, f as getDefaultOptions, l as longFormatters, h as subMilliseconds, i as getTimezoneOffsetInMilliseconds, j as locale, k as isProtectedWeekYearToken, m as throwProtectedError, n as isProtectedDayOfYearToken, o as isValid, p as isBefore, q as isAfter, u as startOfDay, v as isSameDay, w as format, d as defineCustomElement$a } from './calendar.component.js';
4
+ import { d as defineCustomElement$9 } from './dropdown.component.js';
5
+ import { d as defineCustomElement$8 } from './dropdown-menu-container.component.js';
6
+ import { d as defineCustomElement$7 } from './helper.component.js';
7
+ import { d as defineCustomElement$6 } from './icon.component.js';
8
+ import { d as defineCustomElement$5 } from './input-error.component.js';
9
+ import { d as defineCustomElement$4 } from './input-group.component.js';
10
+ import { d as defineCustomElement$3 } from './portal.component.js';
10
11
  import { d as defineCustomElement$2 } from './tooltip.component.js';
11
12
 
12
13
  /**
@@ -3084,7 +3085,7 @@ function defineCustomElement$1() {
3084
3085
  if (typeof customElements === "undefined") {
3085
3086
  return;
3086
3087
  }
3087
- const components = ["p-datepicker", "p-calendar", "p-dropdown", "p-dropdown-menu-container", "p-helper", "p-icon", "p-input-error", "p-input-group", "p-tooltip"];
3088
+ const components = ["p-datepicker", "p-calendar", "p-dropdown", "p-dropdown-menu-container", "p-helper", "p-icon", "p-input-error", "p-input-group", "p-portal", "p-tooltip"];
3088
3089
  components.forEach(tagName => { switch (tagName) {
3089
3090
  case "p-datepicker":
3090
3091
  if (!customElements.get(tagName)) {
@@ -3093,35 +3094,40 @@ function defineCustomElement$1() {
3093
3094
  break;
3094
3095
  case "p-calendar":
3095
3096
  if (!customElements.get(tagName)) {
3096
- defineCustomElement$9();
3097
+ defineCustomElement$a();
3097
3098
  }
3098
3099
  break;
3099
3100
  case "p-dropdown":
3100
3101
  if (!customElements.get(tagName)) {
3101
- defineCustomElement$8();
3102
+ defineCustomElement$9();
3102
3103
  }
3103
3104
  break;
3104
3105
  case "p-dropdown-menu-container":
3105
3106
  if (!customElements.get(tagName)) {
3106
- defineCustomElement$7();
3107
+ defineCustomElement$8();
3107
3108
  }
3108
3109
  break;
3109
3110
  case "p-helper":
3110
3111
  if (!customElements.get(tagName)) {
3111
- defineCustomElement$6();
3112
+ defineCustomElement$7();
3112
3113
  }
3113
3114
  break;
3114
3115
  case "p-icon":
3115
3116
  if (!customElements.get(tagName)) {
3116
- defineCustomElement$5();
3117
+ defineCustomElement$6();
3117
3118
  }
3118
3119
  break;
3119
3120
  case "p-input-error":
3120
3121
  if (!customElements.get(tagName)) {
3121
- defineCustomElement$4();
3122
+ defineCustomElement$5();
3122
3123
  }
3123
3124
  break;
3124
3125
  case "p-input-group":
3126
+ if (!customElements.get(tagName)) {
3127
+ defineCustomElement$4();
3128
+ }
3129
+ break;
3130
+ case "p-portal":
3125
3131
  if (!customElements.get(tagName)) {
3126
3132
  defineCustomElement$3();
3127
3133
  }