@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
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-c56424e5.js');
6
6
  const clsx = require('./clsx-fc789adc.js');
7
7
 
8
- 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)}";
8
+ 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)}";
9
9
  const NvIconbuttonStyle0 = nvIconbuttonCss;
10
10
 
11
11
  const NvIconbutton = class {
@@ -1 +1 @@
1
- {"file":"nv-iconbutton.nv-loader.entry.cjs.js","mappings":"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","names":["h","Host","clsx"],"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.cjs.js","mappings":"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","names":["h","Host","clsx"],"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}
@@ -2064,7 +2064,7 @@ const createStore = (defaultState, shouldUpdate) => {
2064
2064
  return map;
2065
2065
  };
2066
2066
 
2067
- 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}";
2067
+ 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}";
2068
2068
  const NvPopoverStyle0 = nvPopoverCss;
2069
2069
 
2070
2070
  const { state } = createStore({
@@ -2092,6 +2092,15 @@ const NvPopover = class {
2092
2092
  * Defines where the popover appears relative to the trigger.
2093
2093
  */
2094
2094
  this.placement = 'bottom';
2095
+ /**
2096
+ * Sets the positioning strategy for the popover. Options include:
2097
+ * - `absolute`: Positions the popover relative to the trigger element
2098
+ * (default).
2099
+ * - `fixed`: Positions the popover relative to the viewport, useful when you
2100
+ * need the popover to break out of overflow hidden containers, it will not
2101
+ * scroll inside a scroll container due to the fixed positioning.
2102
+ */
2103
+ this.strategy = 'absolute';
2095
2104
  /**
2096
2105
  * Adjust the gap between the popover and its trigger element by setting how
2097
2106
  * many pixels they should be apart.
@@ -2236,6 +2245,7 @@ const NvPopover = class {
2236
2245
  return;
2237
2246
  computePosition(this.triggerElement, this.popoverElement, {
2238
2247
  placement: this.placement,
2248
+ strategy: this.strategy,
2239
2249
  middleware: [
2240
2250
  offset(this.offset),
2241
2251
  !this.disableFlip &&
@@ -2247,10 +2257,11 @@ const NvPopover = class {
2247
2257
  shift({ padding: this.shiftPadding }),
2248
2258
  this.hasArrow && arrow({ element: this.arrowElement }),
2249
2259
  ],
2250
- }).then(({ x, y, placement, middlewareData }) => {
2260
+ }).then(({ x, y, placement, middlewareData, strategy }) => {
2251
2261
  Object.assign(this.popoverElement.style, {
2252
2262
  left: `${x}px`,
2253
2263
  top: `${y}px`,
2264
+ position: strategy,
2254
2265
  });
2255
2266
  if (this.hasArrow) {
2256
2267
  const staticSide = {
@@ -2323,6 +2334,11 @@ const NvPopover = class {
2323
2334
  this.isAnimating = false;
2324
2335
  this.openChanged.emit(open);
2325
2336
  }
2337
+ handleStrategyChange() {
2338
+ if (this.open) {
2339
+ this.positionPopover();
2340
+ }
2341
+ }
2326
2342
  //#endregion WATCHERS
2327
2343
  /****************************************************************************/
2328
2344
  //#region LIFECYCLE
@@ -2368,11 +2384,12 @@ const NvPopover = class {
2368
2384
  /****************************************************************************/
2369
2385
  //#region RENDER
2370
2386
  render() {
2371
- return (index.h(index.Host, { key: '14f8a4ffc146664a2fd00bbfc413494929eec492' }, index.h("slot", { key: 'aaf84cb70beb8f63f030c16c47b41340c238a47c', name: "trigger" }), index.h("div", { key: 'e75b6f6a1131ae9bd39d3a10a1a9801a8c14d756', "data-scope": "popover", hidden: true, ref: el => (this.popoverElement = el) }, this.hasArrow && (index.h("div", { key: '98233b5961fe5476062b671db8274f6802afa700', "data-scope": "arrow", ref: el => (this.arrowElement = el) })), index.h("slot", { key: '5bf731ff7007e4e1128405a22b9f0c8a16305228', name: "content" }))));
2387
+ return (index.h(index.Host, { key: '290f9c76a0a4db0648061ce3778bec21b5926ae4' }, index.h("slot", { key: 'ca90cba5de160880308dfc12b1f82f0047c57b75', name: "trigger" }), index.h("div", { key: 'f9b5e11a4a6fd63fe1a640acd936cf883fc91563', "data-scope": "popover", "data-strategy": this.strategy, hidden: true, ref: el => (this.popoverElement = el) }, this.hasArrow && (index.h("div", { key: '39f7287b5614326cc5eb29be9b94c70f1574671b', "data-scope": "arrow", ref: el => (this.arrowElement = el) })), index.h("slot", { key: '45ac045f3669f3ebe3e8200bff75b26284e609a6', name: "content" }))));
2372
2388
  }
2373
2389
  get el() { return index.getElement(this); }
2374
2390
  static get watchers() { return {
2375
- "open": ["handleOpenChange"]
2391
+ "open": ["handleOpenChange"],
2392
+ "strategy": ["handleStrategyChange"]
2376
2393
  }; }
2377
2394
  };
2378
2395
  NvPopover.style = NvPopoverStyle0;