@nova-design-system/nova-webcomponents 3.11.0 → 3.12.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 (314) hide show
  1. package/dist/cjs/{constants-3b6beb66.js → constants-aac59496.js} +19 -42
  2. package/dist/cjs/constants-aac59496.js.map +1 -0
  3. package/dist/cjs/index.cjs.js +99 -7
  4. package/dist/cjs/index.cjs.js.map +1 -1
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/cjs/native.cjs.js +1 -1
  7. package/dist/cjs/nv-alert.cjs.entry.js +2 -2
  8. package/dist/cjs/nv-alert.cjs.entry.js.map +1 -1
  9. package/dist/cjs/nv-avatar.cjs.entry.js +1 -1
  10. package/dist/cjs/nv-badge_2.cjs.entry.js +1 -1
  11. package/dist/cjs/nv-badge_2.cjs.entry.js.map +1 -1
  12. package/dist/cjs/nv-breadcrumb.cjs.entry.js +1 -1
  13. package/dist/cjs/nv-breadcrumb.cjs.entry.js.map +1 -1
  14. package/dist/cjs/nv-button.cjs.entry.js +2 -2
  15. package/dist/cjs/nv-button.cjs.entry.js.map +1 -1
  16. package/dist/cjs/nv-calendar.cjs.entry.js +1 -1
  17. package/dist/cjs/nv-datagrid.cjs.entry.js +2 -2
  18. package/dist/cjs/nv-datagrid.cjs.entry.js.map +1 -1
  19. package/dist/cjs/nv-dialog.cjs.entry.js +1 -1
  20. package/dist/cjs/nv-dialogfooter_2.cjs.entry.js +1 -1
  21. package/dist/cjs/nv-fieldcheckbox.cjs.entry.js +1 -1
  22. package/dist/cjs/nv-fieldcheckbox.cjs.entry.js.map +1 -1
  23. package/dist/cjs/nv-fielddate.cjs.entry.js +1 -1
  24. package/dist/cjs/nv-fielddate.cjs.entry.js.map +1 -1
  25. package/dist/cjs/nv-fielddaterange.cjs.entry.js +1 -1
  26. package/dist/cjs/nv-fielddaterange.cjs.entry.js.map +1 -1
  27. package/dist/cjs/nv-fielddropdown.cjs.entry.js +1 -1
  28. package/dist/cjs/nv-fielddropdown.cjs.entry.js.map +1 -1
  29. package/dist/cjs/nv-fieldmultiselect.cjs.entry.js +1 -1
  30. package/dist/cjs/nv-fieldmultiselect.cjs.entry.js.map +1 -1
  31. package/dist/cjs/nv-fieldnumber.cjs.entry.js +1 -1
  32. package/dist/cjs/nv-fieldnumber.cjs.entry.js.map +1 -1
  33. package/dist/cjs/nv-fieldpassword.cjs.entry.js +1 -1
  34. package/dist/cjs/nv-fieldpassword.cjs.entry.js.map +1 -1
  35. package/dist/cjs/nv-fieldradio.cjs.entry.js +1 -1
  36. package/dist/cjs/nv-fieldradio.cjs.entry.js.map +1 -1
  37. package/dist/cjs/nv-fieldselect.cjs.entry.js +1 -1
  38. package/dist/cjs/nv-fieldselect.cjs.entry.js.map +1 -1
  39. package/dist/cjs/nv-fieldtime.cjs.entry.js +2 -2
  40. package/dist/cjs/nv-fieldtime.cjs.entry.js.map +1 -1
  41. package/dist/cjs/nv-icon.cjs.entry.js +2 -2
  42. package/dist/cjs/nv-icon.cjs.entry.js.map +1 -1
  43. package/dist/cjs/nv-iconbutton_2.cjs.entry.js +1 -1
  44. package/dist/cjs/nv-iconbutton_2.cjs.entry.js.map +1 -1
  45. package/dist/cjs/nv-popover.cjs.entry.js +21 -4
  46. package/dist/cjs/nv-popover.cjs.entry.js.map +1 -1
  47. package/dist/cjs/nv-toggle.cjs.entry.js +1 -1
  48. package/dist/cjs/nv-toggle.cjs.entry.js.map +1 -1
  49. package/dist/cjs/nv-togglebutton.cjs.entry.js +1 -1
  50. package/dist/cjs/nv-togglebutton.cjs.entry.js.map +1 -1
  51. package/dist/cjs/nv-tooltip.cjs.entry.js +11 -2
  52. package/dist/cjs/nv-tooltip.cjs.entry.js.map +1 -1
  53. package/dist/collection/components/nv-alert/nv-alert.css +0 -5
  54. package/dist/collection/components/nv-badge/nv-badge.css +0 -21
  55. package/dist/collection/components/nv-breadcrumb/nv-breadcrumb.css +0 -2
  56. package/dist/collection/components/nv-button/styles/nv-button.css +0 -8
  57. package/dist/collection/components/nv-datagrid/nv-datagrid.css +0 -1
  58. package/dist/collection/components/nv-fieldcheckbox/nv-fieldcheckbox.css +0 -1
  59. package/dist/collection/components/nv-fielddate/styles/nv-fielddate.css +4 -0
  60. package/dist/collection/components/nv-fielddaterange/styles/nv-fielddaterange.css +6 -0
  61. package/dist/collection/components/nv-fielddropdown/styles/nv-fielddropdown.css +4 -0
  62. package/dist/collection/components/nv-fieldmultiselect/styles/nv-fieldmultiselect.css +4 -0
  63. package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.css +8 -0
  64. package/dist/collection/components/nv-fieldpassword/nv-fieldpassword.css +4 -0
  65. package/dist/collection/components/nv-fieldradio/nv-fieldradio.css +0 -1
  66. package/dist/collection/components/nv-fieldselect/nv-fieldselect.css +6 -0
  67. package/dist/collection/components/nv-fieldtime/styles/nv-fieldtime.css +4 -0
  68. package/dist/collection/components/nv-icon/nv-icons.js +5 -5
  69. package/dist/collection/components/nv-icon/nv-icons.js.map +1 -1
  70. package/dist/collection/components/nv-iconbutton/nv-iconbutton.css +0 -4
  71. package/dist/collection/components/nv-menuitem/nv-menuitem.js +1 -1
  72. package/dist/collection/components/nv-popover/nv-popover.css +7 -0
  73. package/dist/collection/components/nv-popover/nv-popover.docs.js +4 -0
  74. package/dist/collection/components/nv-popover/nv-popover.docs.js.map +1 -1
  75. package/dist/collection/components/nv-popover/nv-popover.js +47 -2
  76. package/dist/collection/components/nv-popover/nv-popover.js.map +1 -1
  77. package/dist/collection/components/nv-toggle/nv-toggle.css +0 -1
  78. package/dist/collection/components/nv-togglebutton/styles/nv-togglebutton.css +3 -2
  79. package/dist/collection/components/nv-tooltip/nv-tooltip.docs.js +5 -0
  80. package/dist/collection/components/nv-tooltip/nv-tooltip.docs.js.map +1 -1
  81. package/dist/collection/components/nv-tooltip/nv-tooltip.js +38 -3
  82. package/dist/collection/components/nv-tooltip/nv-tooltip.js.map +1 -1
  83. package/dist/collection/index.js +10 -2
  84. package/dist/collection/index.js.map +1 -1
  85. package/dist/components/index.js +6 -6
  86. package/dist/components/index.js.map +1 -1
  87. package/dist/components/nv-accordion-item.js +1 -1
  88. package/dist/components/nv-accordion.js +3 -3
  89. package/dist/components/nv-alert.js +3 -3
  90. package/dist/components/nv-alert.js.map +1 -1
  91. package/dist/components/nv-avatar.js +2 -2
  92. package/dist/components/nv-badge.js +1 -1
  93. package/dist/components/nv-breadcrumb.js +3 -3
  94. package/dist/components/nv-breadcrumb.js.map +1 -1
  95. package/dist/components/nv-button.js +1 -1
  96. package/dist/components/nv-calendar.js +1 -1
  97. package/dist/components/nv-datagrid.js +4 -4
  98. package/dist/components/nv-datagrid.js.map +1 -1
  99. package/dist/components/nv-dialog.js +4 -4
  100. package/dist/components/nv-dialogfooter.js +1 -1
  101. package/dist/components/nv-fieldcheckbox.js +1 -1
  102. package/dist/components/nv-fielddate.js +6 -6
  103. package/dist/components/nv-fielddate.js.map +1 -1
  104. package/dist/components/nv-fielddaterange.js +6 -6
  105. package/dist/components/nv-fielddaterange.js.map +1 -1
  106. package/dist/components/nv-fielddropdown.js +5 -5
  107. package/dist/components/nv-fielddropdown.js.map +1 -1
  108. package/dist/components/nv-fielddropdownitem.js +1 -1
  109. package/dist/components/nv-fielddropdownitemcheck.js +1 -1
  110. package/dist/components/nv-fieldmultiselect.js +7 -7
  111. package/dist/components/nv-fieldmultiselect.js.map +1 -1
  112. package/dist/components/nv-fieldnumber.js +1 -1
  113. package/dist/components/nv-fieldpassword.js +3 -3
  114. package/dist/components/nv-fieldpassword.js.map +1 -1
  115. package/dist/components/nv-fieldradio.js +1 -1
  116. package/dist/components/nv-fieldradio.js.map +1 -1
  117. package/dist/components/nv-fieldselect.js +3 -3
  118. package/dist/components/nv-fieldselect.js.map +1 -1
  119. package/dist/components/nv-fieldslider.js +3 -3
  120. package/dist/components/nv-fieldtext.js +1 -1
  121. package/dist/components/nv-fieldtime.js +5 -5
  122. package/dist/components/nv-fieldtime.js.map +1 -1
  123. package/dist/components/nv-icon.js +1 -1
  124. package/dist/components/nv-iconbutton.js +1 -1
  125. package/dist/components/nv-menu.js +3 -3
  126. package/dist/components/nv-menuitem.js +1 -1
  127. package/dist/components/nv-popover.js +1 -1
  128. package/dist/components/nv-toggle.js +1 -1
  129. package/dist/components/nv-toggle.js.map +1 -1
  130. package/dist/components/nv-togglebutton.js +1 -1
  131. package/dist/components/nv-togglebutton.js.map +1 -1
  132. package/dist/components/nv-tooltip.js +1 -1
  133. package/dist/components/{p-cf06032d.js → p-095c8285.js} +3 -3
  134. package/dist/components/{p-cf06032d.js.map → p-095c8285.js.map} +1 -1
  135. package/dist/components/{p-50d0db7b.js → p-0b015832.js} +3 -3
  136. package/dist/components/{p-50d0db7b.js.map → p-0b015832.js.map} +1 -1
  137. package/dist/components/{p-a5002d14.js → p-1172e9bb.js} +2 -2
  138. package/dist/components/{p-a5002d14.js.map → p-1172e9bb.js.map} +1 -1
  139. package/dist/components/{p-0ffb4785.js → p-2030d84d.js} +2 -2
  140. package/dist/components/{p-0ffb4785.js.map → p-2030d84d.js.map} +1 -1
  141. package/dist/components/{p-195f46f3.js → p-2ad58e41.js} +25 -6
  142. package/dist/components/p-2ad58e41.js.map +1 -0
  143. package/dist/components/{p-45a625fb.js → p-4c3dc7e4.js} +4 -4
  144. package/dist/components/{p-45a625fb.js.map → p-4c3dc7e4.js.map} +1 -1
  145. package/dist/components/{p-b659b999.js → p-57ae32bc.js} +2 -2
  146. package/dist/components/{p-b659b999.js.map → p-57ae32bc.js.map} +1 -1
  147. package/dist/components/{p-a3ddec4c.js → p-5f594b35.js} +2 -24
  148. package/dist/components/p-5f594b35.js.map +1 -0
  149. package/dist/components/{p-1bb737fa.js → p-7372258e.js} +2 -2
  150. package/dist/components/{p-1bb737fa.js.map → p-7372258e.js.map} +1 -1
  151. package/dist/components/{p-9fdaea9a.js → p-84f4b071.js} +3 -3
  152. package/dist/components/{p-9fdaea9a.js.map → p-84f4b071.js.map} +1 -1
  153. package/dist/components/{p-f47a1e1e.js → p-87079346.js} +15 -5
  154. package/dist/components/p-87079346.js.map +1 -0
  155. package/dist/components/{p-ec4558aa.js → p-ac91582e.js} +2 -2
  156. package/dist/components/{p-ec4558aa.js.map → p-ac91582e.js.map} +1 -1
  157. package/dist/components/{p-8aee1010.js → p-b2c31970.js} +2 -2
  158. package/dist/components/{p-8aee1010.js.map → p-b2c31970.js.map} +1 -1
  159. package/dist/components/p-b3035205.js +88 -0
  160. package/dist/components/p-b3035205.js.map +1 -0
  161. package/dist/components/{p-2db5d1ab.js → p-b7629769.js} +4 -4
  162. package/dist/components/{p-2db5d1ab.js.map → p-b7629769.js.map} +1 -1
  163. package/dist/components/{p-32e8e42e.js → p-dc5dad90.js} +2 -2
  164. package/dist/components/{p-32e8e42e.js.map → p-dc5dad90.js.map} +1 -1
  165. package/dist/components/p-ddb7aa4e.js +189 -0
  166. package/dist/components/{p-8011513c.js.map → p-ddb7aa4e.js.map} +1 -1
  167. package/dist/esm/{constants-23aaef7b.js → constants-a857c476.js} +2 -24
  168. package/dist/esm/constants-a857c476.js.map +1 -0
  169. package/dist/esm/index.js +6 -6
  170. package/dist/esm/index.js.map +1 -1
  171. package/dist/esm/loader.js +1 -1
  172. package/dist/esm/native.js +1 -1
  173. package/dist/esm/nv-alert.entry.js +2 -2
  174. package/dist/esm/nv-alert.entry.js.map +1 -1
  175. package/dist/esm/nv-avatar.entry.js +1 -1
  176. package/dist/esm/nv-badge_2.entry.js +1 -1
  177. package/dist/esm/nv-badge_2.entry.js.map +1 -1
  178. package/dist/esm/nv-breadcrumb.entry.js +1 -1
  179. package/dist/esm/nv-breadcrumb.entry.js.map +1 -1
  180. package/dist/esm/nv-button.entry.js +2 -2
  181. package/dist/esm/nv-button.entry.js.map +1 -1
  182. package/dist/esm/nv-calendar.entry.js +1 -1
  183. package/dist/esm/nv-datagrid.entry.js +2 -2
  184. package/dist/esm/nv-datagrid.entry.js.map +1 -1
  185. package/dist/esm/nv-dialog.entry.js +1 -1
  186. package/dist/esm/nv-dialogfooter_2.entry.js +1 -1
  187. package/dist/esm/nv-fieldcheckbox.entry.js +1 -1
  188. package/dist/esm/nv-fieldcheckbox.entry.js.map +1 -1
  189. package/dist/esm/nv-fielddate.entry.js +1 -1
  190. package/dist/esm/nv-fielddate.entry.js.map +1 -1
  191. package/dist/esm/nv-fielddaterange.entry.js +1 -1
  192. package/dist/esm/nv-fielddaterange.entry.js.map +1 -1
  193. package/dist/esm/nv-fielddropdown.entry.js +1 -1
  194. package/dist/esm/nv-fielddropdown.entry.js.map +1 -1
  195. package/dist/esm/nv-fieldmultiselect.entry.js +1 -1
  196. package/dist/esm/nv-fieldmultiselect.entry.js.map +1 -1
  197. package/dist/esm/nv-fieldnumber.entry.js +1 -1
  198. package/dist/esm/nv-fieldnumber.entry.js.map +1 -1
  199. package/dist/esm/nv-fieldpassword.entry.js +1 -1
  200. package/dist/esm/nv-fieldpassword.entry.js.map +1 -1
  201. package/dist/esm/nv-fieldradio.entry.js +1 -1
  202. package/dist/esm/nv-fieldradio.entry.js.map +1 -1
  203. package/dist/esm/nv-fieldselect.entry.js +1 -1
  204. package/dist/esm/nv-fieldselect.entry.js.map +1 -1
  205. package/dist/esm/nv-fieldtime.entry.js +2 -2
  206. package/dist/esm/nv-fieldtime.entry.js.map +1 -1
  207. package/dist/esm/nv-icon.entry.js +2 -2
  208. package/dist/esm/nv-icon.entry.js.map +1 -1
  209. package/dist/esm/nv-iconbutton_2.entry.js +1 -1
  210. package/dist/esm/nv-iconbutton_2.entry.js.map +1 -1
  211. package/dist/esm/nv-popover.entry.js +21 -4
  212. package/dist/esm/nv-popover.entry.js.map +1 -1
  213. package/dist/esm/nv-toggle.entry.js +1 -1
  214. package/dist/esm/nv-toggle.entry.js.map +1 -1
  215. package/dist/esm/nv-togglebutton.entry.js +1 -1
  216. package/dist/esm/nv-togglebutton.entry.js.map +1 -1
  217. package/dist/esm/nv-tooltip.entry.js +11 -2
  218. package/dist/esm/nv-tooltip.entry.js.map +1 -1
  219. package/dist/native/index.esm.js +1 -1
  220. package/dist/native/index.esm.js.map +1 -1
  221. package/dist/native/native.css +1 -1
  222. package/dist/native/native.esm.js +1 -1
  223. package/dist/native/native.esm.js.map +1 -1
  224. package/dist/native/p-1ad1bff9.entry.js +2 -0
  225. package/dist/native/{p-0ef94dae.entry.js.map → p-1ad1bff9.entry.js.map} +1 -1
  226. package/dist/native/{p-7f0d576b.entry.js → p-2781637d.entry.js} +2 -2
  227. package/dist/native/{p-7f0d576b.entry.js.map → p-2781637d.entry.js.map} +1 -1
  228. package/dist/native/{p-681f2bac.entry.js → p-29ee7b1c.entry.js} +2 -2
  229. package/dist/native/{p-681f2bac.entry.js.map → p-29ee7b1c.entry.js.map} +1 -1
  230. package/dist/native/{p-62032cd9.entry.js → p-38af3aaf.entry.js} +2 -2
  231. package/dist/native/{p-aacd8789.entry.js → p-3a8f65a9.entry.js} +2 -2
  232. package/dist/native/p-47901c83.entry.js +2 -0
  233. package/dist/native/p-47901c83.entry.js.map +1 -0
  234. package/dist/native/p-48cf2457.entry.js +2 -0
  235. package/dist/native/{p-ba9906b7.entry.js.map → p-48cf2457.entry.js.map} +1 -1
  236. package/dist/native/{p-888ad58e.entry.js → p-5d352456.entry.js} +2 -2
  237. package/dist/native/p-5d352456.entry.js.map +1 -0
  238. package/dist/native/{p-fc9564b3.js → p-5f594b35.js} +2 -2
  239. package/dist/native/{p-fc9564b3.js.map → p-5f594b35.js.map} +1 -1
  240. package/dist/native/p-62aa0531.entry.js +2 -0
  241. package/dist/native/{p-397c0fca.entry.js.map → p-62aa0531.entry.js.map} +1 -1
  242. package/dist/native/p-63fea160.entry.js +2 -0
  243. package/dist/native/p-63fea160.entry.js.map +1 -0
  244. package/dist/native/p-67d861e2.entry.js +2 -0
  245. package/dist/native/{p-4f4ed012.entry.js.map → p-67d861e2.entry.js.map} +1 -1
  246. package/dist/native/p-9e0fe7e8.entry.js +2 -0
  247. package/dist/native/{p-019d164d.entry.js.map → p-9e0fe7e8.entry.js.map} +1 -1
  248. package/dist/native/p-a34beedf.entry.js +2 -0
  249. package/dist/native/p-a34beedf.entry.js.map +1 -0
  250. package/dist/native/{p-676447d7.entry.js → p-a63929db.entry.js} +3 -3
  251. package/dist/native/p-ab1e1a96.entry.js +2 -0
  252. package/dist/native/{p-9991116a.entry.js.map → p-ab1e1a96.entry.js.map} +1 -1
  253. package/dist/native/p-bc01787b.entry.js +2 -0
  254. package/dist/native/{p-ad2cc829.entry.js.map → p-bc01787b.entry.js.map} +1 -1
  255. package/dist/native/p-bcff76ab.entry.js +2 -0
  256. package/dist/native/{p-44dd9a4c.entry.js.map → p-bcff76ab.entry.js.map} +1 -1
  257. package/dist/native/p-c3ad7617.entry.js +2 -0
  258. package/dist/native/{p-fb672f90.entry.js.map → p-c3ad7617.entry.js.map} +1 -1
  259. package/dist/native/p-cea942b9.entry.js +2 -0
  260. package/dist/native/{p-3ed84cd9.entry.js.map → p-cea942b9.entry.js.map} +1 -1
  261. package/dist/native/p-d0ef1bbb.entry.js +2 -0
  262. package/dist/native/p-d0ef1bbb.entry.js.map +1 -0
  263. package/dist/native/p-d88c416f.entry.js +2 -0
  264. package/dist/native/{p-2197ffdf.entry.js.map → p-d88c416f.entry.js.map} +1 -1
  265. package/dist/native/{p-348c6bb4.entry.js → p-e603c6ed.entry.js} +2 -2
  266. package/dist/native/p-e765a624.entry.js +2 -0
  267. package/dist/native/{p-184032cb.entry.js.map → p-e765a624.entry.js.map} +1 -1
  268. package/dist/native/{p-9f451b8a.entry.js → p-e7a929e7.entry.js} +3 -3
  269. package/dist/native/{p-9f451b8a.entry.js.map → p-e7a929e7.entry.js.map} +1 -1
  270. package/dist/native/p-f0cbfb3d.entry.js +2 -0
  271. package/dist/native/{p-b58fb522.entry.js.map → p-f0cbfb3d.entry.js.map} +1 -1
  272. package/dist/types/components/nv-icon/nv-icons.d.ts +1 -1
  273. package/dist/types/components/nv-popover/nv-popover.d.ts +11 -1
  274. package/dist/types/components/nv-tooltip/nv-tooltip.d.ts +11 -2
  275. package/dist/types/components.d.ts +20 -4
  276. package/dist/types/index.d.ts +1 -1
  277. package/dist/vscode-data.json +40 -16
  278. package/hydrate/index.js +56 -28
  279. package/hydrate/index.mjs +56 -28
  280. package/package.json +5 -1
  281. package/dist/cjs/constants-3b6beb66.js.map +0 -1
  282. package/dist/components/p-195f46f3.js.map +0 -1
  283. package/dist/components/p-8011513c.js +0 -189
  284. package/dist/components/p-a1fe0a5d.js +0 -88
  285. package/dist/components/p-a1fe0a5d.js.map +0 -1
  286. package/dist/components/p-a3ddec4c.js.map +0 -1
  287. package/dist/components/p-f47a1e1e.js.map +0 -1
  288. package/dist/esm/constants-23aaef7b.js.map +0 -1
  289. package/dist/native/p-019d164d.entry.js +0 -2
  290. package/dist/native/p-0ef94dae.entry.js +0 -2
  291. package/dist/native/p-184032cb.entry.js +0 -2
  292. package/dist/native/p-2197ffdf.entry.js +0 -2
  293. package/dist/native/p-397c0fca.entry.js +0 -2
  294. package/dist/native/p-3da64006.entry.js +0 -2
  295. package/dist/native/p-3da64006.entry.js.map +0 -1
  296. package/dist/native/p-3ed84cd9.entry.js +0 -2
  297. package/dist/native/p-4302824a.entry.js +0 -2
  298. package/dist/native/p-4302824a.entry.js.map +0 -1
  299. package/dist/native/p-44dd9a4c.entry.js +0 -2
  300. package/dist/native/p-4f4ed012.entry.js +0 -2
  301. package/dist/native/p-553778e6.entry.js +0 -2
  302. package/dist/native/p-553778e6.entry.js.map +0 -1
  303. package/dist/native/p-888ad58e.entry.js.map +0 -1
  304. package/dist/native/p-8a577f91.entry.js +0 -2
  305. package/dist/native/p-8a577f91.entry.js.map +0 -1
  306. package/dist/native/p-9991116a.entry.js +0 -2
  307. package/dist/native/p-ad2cc829.entry.js +0 -2
  308. package/dist/native/p-b58fb522.entry.js +0 -2
  309. package/dist/native/p-ba9906b7.entry.js +0 -2
  310. package/dist/native/p-fb672f90.entry.js +0 -2
  311. /package/dist/native/{p-62032cd9.entry.js.map → p-38af3aaf.entry.js.map} +0 -0
  312. /package/dist/native/{p-aacd8789.entry.js.map → p-3a8f65a9.entry.js.map} +0 -0
  313. /package/dist/native/{p-676447d7.entry.js.map → p-a63929db.entry.js.map} +0 -0
  314. /package/dist/native/{p-348c6bb4.entry.js.map → p-e603c6ed.entry.js.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-a1936cd0.js';
2
2
  import { c as clsx } from './clsx-297c1ffe.js';
3
3
 
4
- const nvIconbuttonCss = "nv-iconbutton.root{display:inline-flex;justify-content:center;align-items:center;font-style:normal;font-weight:500;font-family:\"TT Norms Pro\", sans-serif;transition:background-color 150ms ease-out;height:fit-content;width:fit-content}nv-iconbutton.size-xs{padding:var(--button-xs-icon-button-padding);gap:var(--button-xs-gap);border-radius:var(--button-xs-border-radius);line-height:var(--button-xs-line-height);font-size:var(--button-xs-font-size)}nv-iconbutton.size-sm{padding:var(--button-sm-icon-button-padding);gap:var(--button-sm-gap);border-radius:var(--button-sm-border-radius);line-height:var(--button-sm-line-height);font-size:var(--button-sm-font-size)}nv-iconbutton.size-md{padding:var(--button-md-icon-button-padding);gap:var(--button-md-gap);border-radius:var(--button-md-border-radius);line-height:var(--button-md-line-height);font-size:var(--button-md-font-size)}nv-iconbutton.size-lg{padding:var(--button-lg-icon-button-padding);gap:var(--button-lg-gap);border-radius:var(--button-lg-border-radius);line-height:var(--button-lg-line-height);font-size:var(--button-lg-font-size)}nv-iconbutton.emphasis-high{background:var(--components-button-high-background);border:1px solid var(--components-button-high-border);color:var(--components-button-high-text)}nv-iconbutton.emphasis-high:hover{background:var(--components-button-high-background-hover);color:var(--components-button-high-text-hover)}nv-iconbutton.emphasis-high:focus,nv-iconbutton.emphasis-high:focus-within{outline:none}nv-iconbutton.emphasis-high:focus-visible,nv-iconbutton.emphasis-high:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);outline-offset:calc(var(--focus-outline-offset) * 1);z-index:111}nv-iconbutton.emphasis-high:disabled{background:var(--components-button-high-background);color:var(--components-button-high-text);opacity:0.5;cursor:not-allowed;box-shadow:none}nv-iconbutton.emphasis-high nv-icon>svg{color:var(--components-button-high-icon)}nv-iconbutton.emphasis-medium{background:var(--components-button-medium-background);border:1px solid var(--components-button-medium-border);color:var(--components-button-medium-text)}nv-iconbutton.emphasis-medium:hover{background:var(--components-button-medium-background-hover);color:var(--components-button-medium-text-hover)}nv-iconbutton.emphasis-medium:focus,nv-iconbutton.emphasis-medium:focus-within{outline:none}nv-iconbutton.emphasis-medium:focus-visible,nv-iconbutton.emphasis-medium:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);outline-offset:calc(var(--focus-outline-offset) * 1);z-index:111}nv-iconbutton.emphasis-medium:disabled{background:var(--components-button-medium-background);color:var(--components-button-medium-text);opacity:0.5;cursor:not-allowed;box-shadow:none}nv-iconbutton.emphasis-medium nv-icon>svg{color:var(--components-button-medium-icon)}nv-iconbutton.emphasis-low{background:var(--components-button-low-background);border:1px solid var(--components-button-low-border);color:var(--components-button-low-text)}nv-iconbutton.emphasis-low:hover{background:var(--components-button-low-background-hover);color:var(--components-button-low-text-hover)}nv-iconbutton.emphasis-low:focus,nv-iconbutton.emphasis-low:focus-within{outline:none}nv-iconbutton.emphasis-low:focus-visible,nv-iconbutton.emphasis-low:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);outline-offset:calc(var(--focus-outline-offset) * 1);z-index:111}nv-iconbutton.emphasis-low:disabled{background:var(--components-button-low-background);color:var(--components-button-low-text);opacity:0.5;cursor:not-allowed;box-shadow:none}nv-iconbutton.emphasis-low nv-icon>svg{color:var(--components-button-low-icon)}nv-iconbutton.emphasis-lower{background:var(--components-button-lower-background);border:1px solid var(--components-button-lower-border);color:var(--components-button-lower-text)}nv-iconbutton.emphasis-lower:hover{background:var(--components-button-lower-background-hover);color:var(--components-button-lower-text-hover)}nv-iconbutton.emphasis-lower:focus,nv-iconbutton.emphasis-lower:focus-within{outline:none}nv-iconbutton.emphasis-lower:focus-visible,nv-iconbutton.emphasis-lower:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);outline-offset:calc(var(--focus-outline-offset) * 1);z-index:111}nv-iconbutton.emphasis-lower:disabled{background:var(--components-button-lower-background);color:var(--components-button-lower-text);opacity:0.5;cursor:not-allowed;box-shadow:none}nv-iconbutton.emphasis-lower nv-icon>svg{color:var(--components-button-lower-icon)}nv-iconbutton.loading [slot=leading-icon]{display:none}nv-iconbutton.shape-rounded{border-radius:var(--radius-rounded-full)}";
4
+ const nvIconbuttonCss = "nv-iconbutton.root{display:inline-flex;justify-content:center;align-items:center;font-style:normal;font-weight:500;font-family:\"TT Norms Pro\", sans-serif;transition:background-color 150ms ease-out;height:fit-content;width:fit-content}nv-iconbutton.size-xs{padding:var(--button-xs-icon-button-padding);gap:var(--button-xs-gap);border-radius:var(--button-xs-border-radius);line-height:var(--button-xs-line-height);font-size:var(--button-xs-font-size)}nv-iconbutton.size-sm{padding:var(--button-sm-icon-button-padding);gap:var(--button-sm-gap);border-radius:var(--button-sm-border-radius);line-height:var(--button-sm-line-height);font-size:var(--button-sm-font-size)}nv-iconbutton.size-md{padding:var(--button-md-icon-button-padding);gap:var(--button-md-gap);border-radius:var(--button-md-border-radius);line-height:var(--button-md-line-height);font-size:var(--button-md-font-size)}nv-iconbutton.size-lg{padding:var(--button-lg-icon-button-padding);gap:var(--button-lg-gap);border-radius:var(--button-lg-border-radius);line-height:var(--button-lg-line-height);font-size:var(--button-lg-font-size)}nv-iconbutton.emphasis-high{background:var(--components-button-high-background);border:1px solid var(--components-button-high-border);color:var(--components-button-high-text)}nv-iconbutton.emphasis-high:hover{background:var(--components-button-high-background-hover);color:var(--components-button-high-text-hover)}nv-iconbutton.emphasis-high:focus,nv-iconbutton.emphasis-high:focus-within{outline:none}nv-iconbutton.emphasis-high:focus-visible,nv-iconbutton.emphasis-high:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-iconbutton.emphasis-high:disabled{background:var(--components-button-high-background);color:var(--components-button-high-text);opacity:0.5;cursor:not-allowed;box-shadow:none}nv-iconbutton.emphasis-high nv-icon>svg{color:var(--components-button-high-icon)}nv-iconbutton.emphasis-medium{background:var(--components-button-medium-background);border:1px solid var(--components-button-medium-border);color:var(--components-button-medium-text)}nv-iconbutton.emphasis-medium:hover{background:var(--components-button-medium-background-hover);color:var(--components-button-medium-text-hover)}nv-iconbutton.emphasis-medium:focus,nv-iconbutton.emphasis-medium:focus-within{outline:none}nv-iconbutton.emphasis-medium:focus-visible,nv-iconbutton.emphasis-medium:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-iconbutton.emphasis-medium:disabled{background:var(--components-button-medium-background);color:var(--components-button-medium-text);opacity:0.5;cursor:not-allowed;box-shadow:none}nv-iconbutton.emphasis-medium nv-icon>svg{color:var(--components-button-medium-icon)}nv-iconbutton.emphasis-low{background:var(--components-button-low-background);border:1px solid var(--components-button-low-border);color:var(--components-button-low-text)}nv-iconbutton.emphasis-low:hover{background:var(--components-button-low-background-hover);color:var(--components-button-low-text-hover)}nv-iconbutton.emphasis-low:focus,nv-iconbutton.emphasis-low:focus-within{outline:none}nv-iconbutton.emphasis-low:focus-visible,nv-iconbutton.emphasis-low:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-iconbutton.emphasis-low:disabled{background:var(--components-button-low-background);color:var(--components-button-low-text);opacity:0.5;cursor:not-allowed;box-shadow:none}nv-iconbutton.emphasis-low nv-icon>svg{color:var(--components-button-low-icon)}nv-iconbutton.emphasis-lower{background:var(--components-button-lower-background);border:1px solid var(--components-button-lower-border);color:var(--components-button-lower-text)}nv-iconbutton.emphasis-lower:hover{background:var(--components-button-lower-background-hover);color:var(--components-button-lower-text-hover)}nv-iconbutton.emphasis-lower:focus,nv-iconbutton.emphasis-lower:focus-within{outline:none}nv-iconbutton.emphasis-lower:focus-visible,nv-iconbutton.emphasis-lower:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-iconbutton.emphasis-lower:disabled{background:var(--components-button-lower-background);color:var(--components-button-lower-text);opacity:0.5;cursor:not-allowed;box-shadow:none}nv-iconbutton.emphasis-lower nv-icon>svg{color:var(--components-button-lower-icon)}nv-iconbutton.loading [slot=leading-icon]{display:none}nv-iconbutton.shape-rounded{border-radius:var(--radius-rounded-full)}";
5
5
  const NvIconbuttonStyle0 = nvIconbuttonCss;
6
6
 
7
7
  const NvIconbutton = class {
@@ -1 +1 @@
1
- {"file":"nv-iconbutton.nv-loader.entry.js","mappings":"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","names":[],"sources":["src/components/nv-iconbutton/nv-iconbutton.scss?tag=nv-iconbutton","src/components/nv-iconbutton/nv-iconbutton.tsx","src/components/nv-loader/nv-loader.scss?tag=nv-loader","src/components/nv-loader/nv-loader.tsx"],"sourcesContent":["@use \"sass:map\";\n@import \"../../styles/focus-ring\";\n\n/* Variants */\n$button-sizes: (\"xs\", \"sm\", \"md\", \"lg\");\n$button-emphasis: (\"high\", \"medium\", \"low\", \"lower\");\n\n/* Define maps for size-related variables */\n$button-icon-button-padding: (\n \"xs\": var(--button-xs-icon-button-padding),\n \"sm\": var(--button-sm-icon-button-padding),\n \"md\": var(--button-md-icon-button-padding),\n \"lg\": var(--button-lg-icon-button-padding)\n);\n\n$button-gap: (\n \"xs\": var(--button-xs-gap),\n \"sm\": var(--button-sm-gap),\n \"md\": var(--button-md-gap),\n \"lg\": var(--button-lg-gap)\n);\n\n$button-border-radius: (\n \"xs\": var(--button-xs-border-radius),\n \"sm\": var(--button-sm-border-radius),\n \"md\": var(--button-md-border-radius),\n \"lg\": var(--button-lg-border-radius)\n);\n\n$button-line-height: (\n \"xs\": var(--button-xs-line-height),\n \"sm\": var(--button-sm-line-height),\n \"md\": var(--button-md-line-height),\n \"lg\": var(--button-lg-line-height)\n);\n\n$button-font-size: (\n \"xs\": var(--button-xs-font-size),\n \"sm\": var(--button-sm-font-size),\n \"md\": var(--button-md-font-size),\n \"lg\": var(--button-lg-font-size)\n);\n\n/* Define maps for emphasis-related variables */\n$components-button-background: (\n \"high\": var(--components-button-high-background),\n \"medium\": var(--components-button-medium-background),\n \"low\": var(--components-button-low-background),\n \"lower\": var(--components-button-lower-background)\n);\n\n$components-button-border: (\n \"high\": var(--components-button-high-border),\n \"medium\": var(--components-button-medium-border),\n \"low\": var(--components-button-low-border),\n \"lower\": var(--components-button-lower-border)\n);\n\n$components-button-text: (\n \"high\": var(--components-button-high-text),\n \"medium\": var(--components-button-medium-text),\n \"low\": var(--components-button-low-text),\n \"lower\": var(--components-button-lower-text)\n);\n\n$components-button-background-hover: (\n \"high\": var(--components-button-high-background-hover),\n \"medium\": var(--components-button-medium-background-hover),\n \"low\": var(--components-button-low-background-hover),\n \"lower\": var(--components-button-lower-background-hover)\n);\n\n$components-button-text-hover: (\n \"high\": var(--components-button-high-text-hover),\n \"medium\": var(--components-button-medium-text-hover),\n \"low\": var(--components-button-low-text-hover),\n \"lower\": var(--components-button-lower-text-hover)\n);\n\n$components-button-icon: (\n \"high\": var(--components-button-high-icon),\n \"medium\": var(--components-button-medium-icon),\n \"low\": var(--components-button-low-icon),\n \"lower\": var(--components-button-lower-icon)\n);\n\n@mixin root-styles() {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n font-style: normal;\n font-weight: 500;\n font-family: \"TT Norms Pro\", sans-serif;\n transition: background-color 150ms ease-out;\n height: fit-content;\n width: fit-content;\n}\n\n@mixin size-styles($size) {\n padding: map.get($button-icon-button-padding, $size);\n gap: map.get($button-gap, $size);\n border-radius: map.get($button-border-radius, $size);\n line-height: map.get($button-line-height, $size);\n font-size: map.get($button-font-size, $size);\n}\n\n@mixin emphasis-styles($emphasis) {\n background: map.get($components-button-background, $emphasis);\n border: 1px solid map.get($components-button-border, $emphasis);\n color: map.get($components-button-text, $emphasis);\n\n &:hover {\n background: map.get($components-button-background-hover, $emphasis);\n color: map.get($components-button-text-hover, $emphasis);\n }\n\n @include focus-ring();\n\n &:disabled {\n background: map.get($components-button-background, $emphasis);\n color: map.get($components-button-text, $emphasis);\n opacity: 0.5;\n cursor: not-allowed;\n box-shadow: none;\n }\n\n & nv-icon > svg {\n color: map.get($components-button-icon, $emphasis);\n }\n}\n\nnv-iconbutton {\n &.root {\n @include root-styles();\n }\n\n @each $size in $button-sizes {\n &.size-#{$size} {\n @include size-styles($size);\n }\n }\n\n @each $emphasis in $button-emphasis {\n &.emphasis-#{$emphasis} {\n @include emphasis-styles($emphasis);\n }\n }\n\n &.loading {\n [slot=\"leading-icon\"] {\n display: none;\n }\n }\n\n &.shape-rounded {\n border-radius: var(--radius-rounded-full);\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n AttachInternals,\n Element,\n Watch,\n Listen,\n} from '@stencil/core';\nimport clsx from 'clsx';\n\nimport {\n ButtonSize,\n ButtonEmphasis,\n ButtonType,\n IconButtonShape,\n} from '../../utils/constants';\nimport { IconName } from '../nv-icon/nv-icons';\n\n/**\n * @slot default - Content of the button.\n */\n@Component({\n tag: 'nv-iconbutton',\n shadow: false,\n formAssociated: true,\n styleUrl: 'nv-iconbutton.scss',\n scoped: false,\n})\nexport class NvIconbutton {\n @AttachInternals() internals: ElementInternals;\n @Element() el: HTMLNvIconbuttonElement;\n\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * Determines how large or small the button appears, allowing for\n * customization of the button's dimensions to fit different design\n * specifications and user needs.\n */\n @Prop({ reflect: true })\n readonly size: `${ButtonSize}` = 'md';\n\n /**\n * Adjusts the button’s emphasis to make it more or less visually prominent\n * to users. Use this to draw attention to important actions or reduce focus\n * on less critical ones.\n */\n @Prop({ reflect: true })\n readonly emphasis: `${ButtonEmphasis}` = 'high';\n\n /**\n * Set this to true to show a spinner on the button, letting users know that\n * their action is being processed. It helps improve user experience by\n * indicating ongoing activities. The icon is not displayed when the button\n * is loading. Also, the button is disabled. If you want to disable the\n * button, it is not possible. It is automatically disabled when loading.\n */\n @Prop({ reflect: true, mutable: true })\n loading: boolean = false;\n\n /**\n * Disables the button, preventing user interaction.\n */\n @Prop({ mutable: true, reflect: true })\n disabled: boolean = false;\n\n /**\n * Makes the button look active when it’s within a compatible component\n * like a button group.\n */\n @Prop({ reflect: true })\n readonly active: boolean = false;\n\n /**\n * Choose the icon you want to display. This also sets the aria-label for\n * improved accessibility, helping users who rely on screen readers.\n * The icon is not displayed when the button is loading.\n */\n @Prop({ reflect: true })\n readonly name: `${IconName}` | string;\n\n /**\n * Sets the button type to control its function in forms. Use 'submit' to send\n * form data, 'reset' to clear the form, or 'button' for a standard button\n * that doesn’t interact with form submission by default.\n */\n @Prop({ reflect: true })\n readonly type: `${ButtonType}` = 'button';\n\n /**\n * Sets the shape of the button. Choose between square and rounded.\n */\n @Prop({ reflect: true })\n readonly shape: `${IconButtonShape}` = 'square';\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region METHODS\n\n /**\n * Handles form-related actions when the button is clicked.\n * - Submits the form if the button type is 'submit'.\n * - Resets the form if the button type is 'reset'.\n * @param {Event} event - The click event.\n */\n private handleClick = (event: Event) => {\n if (this.disabled) {\n event.preventDefault();\n return;\n }\n\n if (this.type === 'submit') {\n this.internals?.form?.requestSubmit();\n }\n if (this.type === 'reset') {\n this.internals?.form?.reset();\n }\n };\n\n //#endregion METHODS\n /****************************************************************************/\n //#region WATCHERS\n\n @Watch('loading')\n handleLoadingChange(loading: boolean) {\n this.loading = loading;\n this.disabled = loading;\n }\n\n @Watch('disabled')\n handleDisabledChange(disabled: boolean) {\n if (this.loading) {\n this.disabled = this.loading;\n } else {\n this.disabled = disabled;\n }\n }\n\n //#endregion WATCHERS\n /****************************************************************************/\n //#region EVENTS\n\n @Listen('keydown', { passive: false })\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.el.click();\n }\n }\n\n @Listen('touchstart', { passive: false })\n handleTouchStart(event: TouchEvent) {\n if (event.touches.length > 1) return;\n event.preventDefault();\n this.el.click();\n }\n\n //#endregion EVENTS\n /****************************************************************************/\n //#region LIFECYCLE\n\n componentWillLoad() {\n if (this.loading) {\n this.disabled = this.loading;\n }\n }\n\n //#endregion LIFECYCLE\n /****************************************************************************/\n //#region RENDER\n\n render() {\n return (\n <Host\n role=\"button\"\n type={this.type}\n tabindex=\"0\"\n disabled={this.disabled ? true : undefined}\n class={clsx(\n 'root',\n `size-${this.size}`,\n `emphasis-${this.emphasis}`,\n this.loading && 'loading',\n `shape-${this.shape}`,\n )}\n onClick={this.handleClick}\n >\n {this.loading && <nv-loader size={this.size}></nv-loader>}\n\n {!this.loading && <nv-icon name={this.name} size={this.size} />}\n\n <slot></slot>\n </Host>\n );\n }\n\n //#endregion RENDER\n}\n","@use \"sass:map\";\n\n/* Variants */\n$loader-sizes: (\"xs\", \"sm\", \"md\", \"lg\", \"xl\");\n$loader-color: (\"brand\", \"white\");\n\n/* Define maps for color-related variables */\n$components-loader-background: (\n \"brand\": var(--components-loader-brand-background),\n \"white\": var(--components-loader-white-background)\n);\n\n$components-loader-foreground: (\n \"brand\": var(--components-loader-brand-foreground),\n \"white\": var(--components-loader-white-foreground)\n);\n\n/* Define maps for size-related variables */\n$components-loader-size: (\n \"xs\": var(--loader-size-xs),\n \"sm\": var(--loader-size-sm),\n \"md\": var(--loader-size-md),\n \"lg\": var(--loader-size-lg),\n \"xl\": var(--loader-size-xl)\n);\n\n@mixin root-styles() {\n display: inline-block;\n position: relative;\n aspect-ratio: 1 / 1;\n border-radius: 9999px;\n color: inherit;\n}\n\n@mixin size-styles($size) {\n $loader-size: map.get($components-loader-size, $size);\n $border-size: calc($loader-size / 10);\n\n width: $loader-size;\n height: $loader-size;\n\n &::before,\n &::after {\n content: \" \";\n position: absolute;\n top: 0;\n left: 0;\n border-radius: inherit;\n width: 100%;\n height: 100%;\n }\n\n &::before {\n content: \" \";\n border: $border-size solid;\n opacity: 0.3;\n }\n\n &::after {\n content: \" \";\n border-top: $border-size solid transparent;\n border-left: $border-size solid transparent;\n border-right: $border-size solid transparent;\n border-bottom: $border-size solid;\n animation: rotation 1s linear infinite;\n }\n}\n\n@mixin color-styles($color) {\n &::before {\n border-color: map.get($components-loader-background, $color);\n opacity: 1;\n }\n\n &::after {\n border-bottom-color: map.get($components-loader-foreground, $color);\n }\n}\n\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n}\n\nnv-loader {\n @include root-styles();\n\n @each $size in $loader-sizes {\n &.size-#{$size} {\n @include size-styles($size);\n }\n }\n\n @each $color in $loader-color {\n &.color-#{$color} {\n @include color-styles($color);\n }\n }\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\nimport clsx from 'clsx';\n\nimport { SemanticSizes, LoaderColors } from '../../utils/constants';\n\n@Component({\n tag: 'nv-loader',\n styleUrl: 'nv-loader.scss',\n shadow: false,\n})\nexport class NvLoader {\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * Choose the size of the loader to best fit your application’s needs, whether\n * it’s a small spinner for subtle loading indicators or a large one for more\n * prominent displays.\n */\n @Prop({ reflect: true })\n readonly size: `${SemanticSizes}` = 'md';\n\n /**\n * Choose the color of the loader. Options are primary and white to keep the\n * design consistent and ensure the loader stands out or blends in\n * appropriately with your application’s interface.\n */\n @Prop({ reflect: true })\n readonly color: `${LoaderColors}`;\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region RENDER\n\n /* <slot> empty to force rendering change */\n render() {\n return (\n <Host\n class={clsx(\n this.size && `size-${this.size}`,\n this.color && `color-${this.color}`,\n )}\n ></Host>\n );\n }\n\n //#endregion RENDER\n}\n"],"version":3}
1
+ {"file":"nv-iconbutton.nv-loader.entry.js","mappings":";;;AAAA,MAAM,eAAe,GAAG,sqJAAsqJ,CAAC;AAC/rJ,2BAAe,eAAe;;MC6BjB,YAAY;IAPzB;;;;;;;;;;;;;;;;QAoBW,SAAI,GAAoB,IAAI,CAAC;;;;;;QAQ7B,aAAQ,GAAwB,MAAM,CAAC;;;;;;;;QAUhD,YAAO,GAAY,KAAK,CAAC;;;;QAMzB,aAAQ,GAAY,KAAK,CAAC;;;;;QAOjB,WAAM,GAAY,KAAK,CAAC;;;;;;QAgBxB,SAAI,GAAoB,QAAQ,CAAC;;;;QAMjC,UAAK,GAAyB,QAAQ,CAAC;;;;;;;;;;QAYxC,gBAAW,GAAG,CAAC,KAAY;;YACjC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,OAAO;aACR;YAED,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC1B,MAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,IAAI,0CAAE,aAAa,EAAE,CAAC;aACvC;YACD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;gBACzB,MAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,IAAI,0CAAE,KAAK,EAAE,CAAC;aAC/B;SACF,CAAC;KAgFH;;;;IAzEC,mBAAmB,CAAC,OAAgB;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;KACzB;IAGD,oBAAoB,CAAC,QAAiB;QACpC,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC;SAC9B;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;SAC1B;KACF;;;;IAOD,aAAa,CAAC,KAAoB;QAChC,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;YAC9C,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;SACjB;KACF;IAGD,gBAAgB,CAAC,KAAiB;QAChC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO;QACrC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;KACjB;;;;IAMD,iBAAiB;QACf,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC;SAC9B;KACF;;;;IAMD,MAAM;QACJ,QACE,EAAC,IAAI,qDACH,IAAI,EAAC,QAAQ,EACb,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAC,GAAG,EACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,SAAS,EAC1C,KAAK,EAAE,IAAI,CACT,MAAM,EACN,QAAQ,IAAI,CAAC,IAAI,EAAE,EACnB,YAAY,IAAI,CAAC,QAAQ,EAAE,EAC3B,IAAI,CAAC,OAAO,IAAI,SAAS,EACzB,SAAS,IAAI,CAAC,KAAK,EAAE,CACtB,EACD,OAAO,EAAE,IAAI,CAAC,WAAW,IAExB,IAAI,CAAC,OAAO,IAAI,kEAAW,IAAI,EAAE,IAAI,CAAC,IAAI,GAAc,EAExD,CAAC,IAAI,CAAC,OAAO,IAAI,gEAAS,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI,EAE/D,8DAAa,CACR,EACP;KACH;;;;;;;;;;ACrMH,MAAM,WAAW,GAAG,qoHAAqoH,CAAC;AAC1pH,uBAAe,WAAW;;MCSb,QAAQ;IALrB;;;;;;;;;QAeW,SAAI,GAAuB,IAAI,CAAC;KA2B1C;;;;;IAZC,MAAM;QACJ,QACE,EAAC,IAAI,qDACH,KAAK,EAAE,IAAI,CACT,IAAI,CAAC,IAAI,IAAI,QAAQ,IAAI,CAAC,IAAI,EAAE,EAChC,IAAI,CAAC,KAAK,IAAI,SAAS,IAAI,CAAC,KAAK,EAAE,CACpC,GACK,EACR;KACH;;;;;;","names":[],"sources":["src/components/nv-iconbutton/nv-iconbutton.scss?tag=nv-iconbutton","src/components/nv-iconbutton/nv-iconbutton.tsx","src/components/nv-loader/nv-loader.scss?tag=nv-loader","src/components/nv-loader/nv-loader.tsx"],"sourcesContent":["@use \"sass:map\";\n@import \"../../styles/focus-ring\";\n\n/* Variants */\n$button-sizes: (\"xs\", \"sm\", \"md\", \"lg\");\n$button-emphasis: (\"high\", \"medium\", \"low\", \"lower\");\n\n/* Define maps for size-related variables */\n$button-icon-button-padding: (\n \"xs\": var(--button-xs-icon-button-padding),\n \"sm\": var(--button-sm-icon-button-padding),\n \"md\": var(--button-md-icon-button-padding),\n \"lg\": var(--button-lg-icon-button-padding)\n);\n\n$button-gap: (\n \"xs\": var(--button-xs-gap),\n \"sm\": var(--button-sm-gap),\n \"md\": var(--button-md-gap),\n \"lg\": var(--button-lg-gap)\n);\n\n$button-border-radius: (\n \"xs\": var(--button-xs-border-radius),\n \"sm\": var(--button-sm-border-radius),\n \"md\": var(--button-md-border-radius),\n \"lg\": var(--button-lg-border-radius)\n);\n\n$button-line-height: (\n \"xs\": var(--button-xs-line-height),\n \"sm\": var(--button-sm-line-height),\n \"md\": var(--button-md-line-height),\n \"lg\": var(--button-lg-line-height)\n);\n\n$button-font-size: (\n \"xs\": var(--button-xs-font-size),\n \"sm\": var(--button-sm-font-size),\n \"md\": var(--button-md-font-size),\n \"lg\": var(--button-lg-font-size)\n);\n\n/* Define maps for emphasis-related variables */\n$components-button-background: (\n \"high\": var(--components-button-high-background),\n \"medium\": var(--components-button-medium-background),\n \"low\": var(--components-button-low-background),\n \"lower\": var(--components-button-lower-background)\n);\n\n$components-button-border: (\n \"high\": var(--components-button-high-border),\n \"medium\": var(--components-button-medium-border),\n \"low\": var(--components-button-low-border),\n \"lower\": var(--components-button-lower-border)\n);\n\n$components-button-text: (\n \"high\": var(--components-button-high-text),\n \"medium\": var(--components-button-medium-text),\n \"low\": var(--components-button-low-text),\n \"lower\": var(--components-button-lower-text)\n);\n\n$components-button-background-hover: (\n \"high\": var(--components-button-high-background-hover),\n \"medium\": var(--components-button-medium-background-hover),\n \"low\": var(--components-button-low-background-hover),\n \"lower\": var(--components-button-lower-background-hover)\n);\n\n$components-button-text-hover: (\n \"high\": var(--components-button-high-text-hover),\n \"medium\": var(--components-button-medium-text-hover),\n \"low\": var(--components-button-low-text-hover),\n \"lower\": var(--components-button-lower-text-hover)\n);\n\n$components-button-icon: (\n \"high\": var(--components-button-high-icon),\n \"medium\": var(--components-button-medium-icon),\n \"low\": var(--components-button-low-icon),\n \"lower\": var(--components-button-lower-icon)\n);\n\n@mixin root-styles() {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n font-style: normal;\n font-weight: 500;\n font-family: \"TT Norms Pro\", sans-serif;\n transition: background-color 150ms ease-out;\n height: fit-content;\n width: fit-content;\n}\n\n@mixin size-styles($size) {\n padding: map.get($button-icon-button-padding, $size);\n gap: map.get($button-gap, $size);\n border-radius: map.get($button-border-radius, $size);\n line-height: map.get($button-line-height, $size);\n font-size: map.get($button-font-size, $size);\n}\n\n@mixin emphasis-styles($emphasis) {\n background: map.get($components-button-background, $emphasis);\n border: 1px solid map.get($components-button-border, $emphasis);\n color: map.get($components-button-text, $emphasis);\n\n &:hover {\n background: map.get($components-button-background-hover, $emphasis);\n color: map.get($components-button-text-hover, $emphasis);\n }\n\n @include focus-ring();\n\n &:disabled {\n background: map.get($components-button-background, $emphasis);\n color: map.get($components-button-text, $emphasis);\n opacity: 0.5;\n cursor: not-allowed;\n box-shadow: none;\n }\n\n & nv-icon > svg {\n color: map.get($components-button-icon, $emphasis);\n }\n}\n\nnv-iconbutton {\n &.root {\n @include root-styles();\n }\n\n @each $size in $button-sizes {\n &.size-#{$size} {\n @include size-styles($size);\n }\n }\n\n @each $emphasis in $button-emphasis {\n &.emphasis-#{$emphasis} {\n @include emphasis-styles($emphasis);\n }\n }\n\n &.loading {\n [slot=\"leading-icon\"] {\n display: none;\n }\n }\n\n &.shape-rounded {\n border-radius: var(--radius-rounded-full);\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n AttachInternals,\n Element,\n Watch,\n Listen,\n} from '@stencil/core';\nimport clsx from 'clsx';\n\nimport {\n ButtonSize,\n ButtonEmphasis,\n ButtonType,\n IconButtonShape,\n} from '../../utils/constants';\nimport { IconName } from '../nv-icon/nv-icons';\n\n/**\n * @slot default - Content of the button.\n */\n@Component({\n tag: 'nv-iconbutton',\n shadow: false,\n formAssociated: true,\n styleUrl: 'nv-iconbutton.scss',\n scoped: false,\n})\nexport class NvIconbutton {\n @AttachInternals() internals: ElementInternals;\n @Element() el: HTMLNvIconbuttonElement;\n\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * Determines how large or small the button appears, allowing for\n * customization of the button's dimensions to fit different design\n * specifications and user needs.\n */\n @Prop({ reflect: true })\n readonly size: `${ButtonSize}` = 'md';\n\n /**\n * Adjusts the button’s emphasis to make it more or less visually prominent\n * to users. Use this to draw attention to important actions or reduce focus\n * on less critical ones.\n */\n @Prop({ reflect: true })\n readonly emphasis: `${ButtonEmphasis}` = 'high';\n\n /**\n * Set this to true to show a spinner on the button, letting users know that\n * their action is being processed. It helps improve user experience by\n * indicating ongoing activities. The icon is not displayed when the button\n * is loading. Also, the button is disabled. If you want to disable the\n * button, it is not possible. It is automatically disabled when loading.\n */\n @Prop({ reflect: true, mutable: true })\n loading: boolean = false;\n\n /**\n * Disables the button, preventing user interaction.\n */\n @Prop({ mutable: true, reflect: true })\n disabled: boolean = false;\n\n /**\n * Makes the button look active when it’s within a compatible component\n * like a button group.\n */\n @Prop({ reflect: true })\n readonly active: boolean = false;\n\n /**\n * Choose the icon you want to display. This also sets the aria-label for\n * improved accessibility, helping users who rely on screen readers.\n * The icon is not displayed when the button is loading.\n */\n @Prop({ reflect: true })\n readonly name: `${IconName}` | string;\n\n /**\n * Sets the button type to control its function in forms. Use 'submit' to send\n * form data, 'reset' to clear the form, or 'button' for a standard button\n * that doesn’t interact with form submission by default.\n */\n @Prop({ reflect: true })\n readonly type: `${ButtonType}` = 'button';\n\n /**\n * Sets the shape of the button. Choose between square and rounded.\n */\n @Prop({ reflect: true })\n readonly shape: `${IconButtonShape}` = 'square';\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region METHODS\n\n /**\n * Handles form-related actions when the button is clicked.\n * - Submits the form if the button type is 'submit'.\n * - Resets the form if the button type is 'reset'.\n * @param {Event} event - The click event.\n */\n private handleClick = (event: Event) => {\n if (this.disabled) {\n event.preventDefault();\n return;\n }\n\n if (this.type === 'submit') {\n this.internals?.form?.requestSubmit();\n }\n if (this.type === 'reset') {\n this.internals?.form?.reset();\n }\n };\n\n //#endregion METHODS\n /****************************************************************************/\n //#region WATCHERS\n\n @Watch('loading')\n handleLoadingChange(loading: boolean) {\n this.loading = loading;\n this.disabled = loading;\n }\n\n @Watch('disabled')\n handleDisabledChange(disabled: boolean) {\n if (this.loading) {\n this.disabled = this.loading;\n } else {\n this.disabled = disabled;\n }\n }\n\n //#endregion WATCHERS\n /****************************************************************************/\n //#region EVENTS\n\n @Listen('keydown', { passive: false })\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.el.click();\n }\n }\n\n @Listen('touchstart', { passive: false })\n handleTouchStart(event: TouchEvent) {\n if (event.touches.length > 1) return;\n event.preventDefault();\n this.el.click();\n }\n\n //#endregion EVENTS\n /****************************************************************************/\n //#region LIFECYCLE\n\n componentWillLoad() {\n if (this.loading) {\n this.disabled = this.loading;\n }\n }\n\n //#endregion LIFECYCLE\n /****************************************************************************/\n //#region RENDER\n\n render() {\n return (\n <Host\n role=\"button\"\n type={this.type}\n tabindex=\"0\"\n disabled={this.disabled ? true : undefined}\n class={clsx(\n 'root',\n `size-${this.size}`,\n `emphasis-${this.emphasis}`,\n this.loading && 'loading',\n `shape-${this.shape}`,\n )}\n onClick={this.handleClick}\n >\n {this.loading && <nv-loader size={this.size}></nv-loader>}\n\n {!this.loading && <nv-icon name={this.name} size={this.size} />}\n\n <slot></slot>\n </Host>\n );\n }\n\n //#endregion RENDER\n}\n","@use \"sass:map\";\n\n/* Variants */\n$loader-sizes: (\"xs\", \"sm\", \"md\", \"lg\", \"xl\");\n$loader-color: (\"brand\", \"white\");\n\n/* Define maps for color-related variables */\n$components-loader-background: (\n \"brand\": var(--components-loader-brand-background),\n \"white\": var(--components-loader-white-background)\n);\n\n$components-loader-foreground: (\n \"brand\": var(--components-loader-brand-foreground),\n \"white\": var(--components-loader-white-foreground)\n);\n\n/* Define maps for size-related variables */\n$components-loader-size: (\n \"xs\": var(--loader-size-xs),\n \"sm\": var(--loader-size-sm),\n \"md\": var(--loader-size-md),\n \"lg\": var(--loader-size-lg),\n \"xl\": var(--loader-size-xl)\n);\n\n@mixin root-styles() {\n display: inline-block;\n position: relative;\n aspect-ratio: 1 / 1;\n border-radius: 9999px;\n color: inherit;\n}\n\n@mixin size-styles($size) {\n $loader-size: map.get($components-loader-size, $size);\n $border-size: calc($loader-size / 10);\n\n width: $loader-size;\n height: $loader-size;\n\n &::before,\n &::after {\n content: \" \";\n position: absolute;\n top: 0;\n left: 0;\n border-radius: inherit;\n width: 100%;\n height: 100%;\n }\n\n &::before {\n content: \" \";\n border: $border-size solid;\n opacity: 0.3;\n }\n\n &::after {\n content: \" \";\n border-top: $border-size solid transparent;\n border-left: $border-size solid transparent;\n border-right: $border-size solid transparent;\n border-bottom: $border-size solid;\n animation: rotation 1s linear infinite;\n }\n}\n\n@mixin color-styles($color) {\n &::before {\n border-color: map.get($components-loader-background, $color);\n opacity: 1;\n }\n\n &::after {\n border-bottom-color: map.get($components-loader-foreground, $color);\n }\n}\n\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n}\n\nnv-loader {\n @include root-styles();\n\n @each $size in $loader-sizes {\n &.size-#{$size} {\n @include size-styles($size);\n }\n }\n\n @each $color in $loader-color {\n &.color-#{$color} {\n @include color-styles($color);\n }\n }\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\nimport clsx from 'clsx';\n\nimport { SemanticSizes, LoaderColors } from '../../utils/constants';\n\n@Component({\n tag: 'nv-loader',\n styleUrl: 'nv-loader.scss',\n shadow: false,\n})\nexport class NvLoader {\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * Choose the size of the loader to best fit your application’s needs, whether\n * it’s a small spinner for subtle loading indicators or a large one for more\n * prominent displays.\n */\n @Prop({ reflect: true })\n readonly size: `${SemanticSizes}` = 'md';\n\n /**\n * Choose the color of the loader. Options are primary and white to keep the\n * design consistent and ensure the loader stands out or blends in\n * appropriately with your application’s interface.\n */\n @Prop({ reflect: true })\n readonly color: `${LoaderColors}`;\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region RENDER\n\n /* <slot> empty to force rendering change */\n render() {\n return (\n <Host\n class={clsx(\n this.size && `size-${this.size}`,\n this.color && `color-${this.color}`,\n )}\n ></Host>\n );\n }\n\n //#endregion RENDER\n}\n"],"version":3}
@@ -2060,7 +2060,7 @@ const createStore = (defaultState, shouldUpdate) => {
2060
2060
  return map;
2061
2061
  };
2062
2062
 
2063
- const nvPopoverCss = "nv-popover{display:inline-block;position:relative}nv-popover:has([fluid]:not([fluid=false])){display:block}nv-popover>[data-scope=popover]{width:max-content;background-color:var(--components-popover-background);border-color:var(--components-popover-border);font-weight:var(--font-weight-medium-emphasis);border-width:1px;border-style:solid;border-radius:var(--popover-radius);padding:var(--popover-padding-y) var(--popover-padding-x);position:absolute;top:0;left:0;z-index:1;box-shadow:var(--popover-shadow-1-x) var(--popover-shadow-1-y) var(--popover-shadow-1-blur) -2px var(--popover-shadow-1-opacity), var(--popover-shadow-2-x) var(--popover-shadow-2-y) var(--popover-shadow-2-blur) var(--shadow-spread-lg-2) var(--popover-shadow-2-opacity)}nv-popover>[data-scope=popover][hidden]:not([hidden=false]){display:none}nv-popover>[data-scope=popover]>[data-scope=arrow]{background-color:var(--components-popover-background);position:absolute;border-color:var(--components-popover-border);border-width:1px;border-style:solid;border-bottom-color:transparent;border-right-color:transparent;width:8px;height:8px;transform:rotate(45deg);border-radius:1px}nv-popover>[data-scope=popover]>[slot=content]{position:relative;z-index:1}nv-popover>slot-fb{display:none}";
2063
+ const nvPopoverCss = "nv-popover{display:inline-block;position:relative}nv-popover:has([fluid]:not([fluid=false])){display:block}nv-popover[strategy=fixed]{position:static}nv-popover>[data-scope=popover]{width:max-content;background-color:var(--components-popover-background);border-color:var(--components-popover-border);font-weight:var(--font-weight-medium-emphasis);border-width:1px;border-style:solid;border-radius:var(--popover-radius);padding:var(--popover-padding-y) var(--popover-padding-x);position:absolute;top:0;left:0;z-index:1;box-shadow:var(--popover-shadow-1-x) var(--popover-shadow-1-y) var(--popover-shadow-1-blur) -2px var(--popover-shadow-1-opacity), var(--popover-shadow-2-x) var(--popover-shadow-2-y) var(--popover-shadow-2-blur) var(--shadow-spread-lg-2) var(--popover-shadow-2-opacity)}nv-popover>[data-scope=popover][hidden]:not([hidden=false]){display:none}nv-popover>[data-scope=popover][data-strategy=fixed]{position:fixed;z-index:9999}nv-popover>[data-scope=popover]>[data-scope=arrow]{background-color:var(--components-popover-background);position:absolute;border-color:var(--components-popover-border);border-width:1px;border-style:solid;border-bottom-color:transparent;border-right-color:transparent;width:8px;height:8px;transform:rotate(45deg);border-radius:1px}nv-popover>[data-scope=popover]>[slot=content]{position:relative;z-index:1}nv-popover>slot-fb{display:none}";
2064
2064
  const NvPopoverStyle0 = nvPopoverCss;
2065
2065
 
2066
2066
  const { state } = createStore({
@@ -2088,6 +2088,15 @@ const NvPopover = class {
2088
2088
  * Defines where the popover appears relative to the trigger.
2089
2089
  */
2090
2090
  this.placement = 'bottom';
2091
+ /**
2092
+ * Sets the positioning strategy for the popover. Options include:
2093
+ * - `absolute`: Positions the popover relative to the trigger element
2094
+ * (default).
2095
+ * - `fixed`: Positions the popover relative to the viewport, useful when you
2096
+ * need the popover to break out of overflow hidden containers, it will not
2097
+ * scroll inside a scroll container due to the fixed positioning.
2098
+ */
2099
+ this.strategy = 'absolute';
2091
2100
  /**
2092
2101
  * Adjust the gap between the popover and its trigger element by setting how
2093
2102
  * many pixels they should be apart.
@@ -2232,6 +2241,7 @@ const NvPopover = class {
2232
2241
  return;
2233
2242
  computePosition(this.triggerElement, this.popoverElement, {
2234
2243
  placement: this.placement,
2244
+ strategy: this.strategy,
2235
2245
  middleware: [
2236
2246
  offset(this.offset),
2237
2247
  !this.disableFlip &&
@@ -2243,10 +2253,11 @@ const NvPopover = class {
2243
2253
  shift({ padding: this.shiftPadding }),
2244
2254
  this.hasArrow && arrow({ element: this.arrowElement }),
2245
2255
  ],
2246
- }).then(({ x, y, placement, middlewareData }) => {
2256
+ }).then(({ x, y, placement, middlewareData, strategy }) => {
2247
2257
  Object.assign(this.popoverElement.style, {
2248
2258
  left: `${x}px`,
2249
2259
  top: `${y}px`,
2260
+ position: strategy,
2250
2261
  });
2251
2262
  if (this.hasArrow) {
2252
2263
  const staticSide = {
@@ -2319,6 +2330,11 @@ const NvPopover = class {
2319
2330
  this.isAnimating = false;
2320
2331
  this.openChanged.emit(open);
2321
2332
  }
2333
+ handleStrategyChange() {
2334
+ if (this.open) {
2335
+ this.positionPopover();
2336
+ }
2337
+ }
2322
2338
  //#endregion WATCHERS
2323
2339
  /****************************************************************************/
2324
2340
  //#region LIFECYCLE
@@ -2364,11 +2380,12 @@ const NvPopover = class {
2364
2380
  /****************************************************************************/
2365
2381
  //#region RENDER
2366
2382
  render() {
2367
- return (h(Host, { key: '14f8a4ffc146664a2fd00bbfc413494929eec492' }, h("slot", { key: 'aaf84cb70beb8f63f030c16c47b41340c238a47c', name: "trigger" }), h("div", { key: 'e75b6f6a1131ae9bd39d3a10a1a9801a8c14d756', "data-scope": "popover", hidden: true, ref: el => (this.popoverElement = el) }, this.hasArrow && (h("div", { key: '98233b5961fe5476062b671db8274f6802afa700', "data-scope": "arrow", ref: el => (this.arrowElement = el) })), h("slot", { key: '5bf731ff7007e4e1128405a22b9f0c8a16305228', name: "content" }))));
2383
+ return (h(Host, { key: '290f9c76a0a4db0648061ce3778bec21b5926ae4' }, h("slot", { key: 'ca90cba5de160880308dfc12b1f82f0047c57b75', name: "trigger" }), h("div", { key: 'f9b5e11a4a6fd63fe1a640acd936cf883fc91563', "data-scope": "popover", "data-strategy": this.strategy, hidden: true, ref: el => (this.popoverElement = el) }, this.hasArrow && (h("div", { key: '39f7287b5614326cc5eb29be9b94c70f1574671b', "data-scope": "arrow", ref: el => (this.arrowElement = el) })), h("slot", { key: '45ac045f3669f3ebe3e8200bff75b26284e609a6', name: "content" }))));
2368
2384
  }
2369
2385
  get el() { return getElement(this); }
2370
2386
  static get watchers() { return {
2371
- "open": ["handleOpenChange"]
2387
+ "open": ["handleOpenChange"],
2388
+ "strategy": ["handleStrategyChange"]
2372
2389
  }; }
2373
2390
  };
2374
2391
  NvPopover.style = NvPopoverStyle0;