@nova-design-system/nova-webcomponents 3.14.0 → 3.16.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 (631) hide show
  1. package/dist/cjs/{collapse.animation-47397763.js → collapse.animation-23b7d61b.js} +5 -2
  2. package/dist/cjs/collapse.animation-23b7d61b.js.map +1 -0
  3. package/dist/cjs/{constants-52f6f8e9.js → constants-f5633903.js} +10 -1
  4. package/dist/cjs/constants-f5633903.js.map +1 -0
  5. package/dist/cjs/{fade.animation-cf6eba0d.js → fade.animation-9294e9ee.js} +3 -3
  6. package/dist/cjs/fade.animation-9294e9ee.js.map +1 -0
  7. package/dist/cjs/{grow.animation-9258ba63.js → grow.animation-f1cef0ad.js} +2 -2
  8. package/dist/cjs/{grow.animation-9258ba63.js.map → grow.animation-f1cef0ad.js.map} +1 -1
  9. package/dist/cjs/{index-c56424e5.js → index-93d3b2f8.js} +9 -6
  10. package/dist/cjs/index-93d3b2f8.js.map +1 -0
  11. package/dist/cjs/index.cjs.js +27 -6
  12. package/dist/cjs/index.cjs.js.map +1 -1
  13. package/dist/cjs/loader.cjs.js +2 -2
  14. package/dist/cjs/native.cjs.js +2 -2
  15. package/dist/cjs/nv-accordion-item.cjs.entry.js +3 -3
  16. package/dist/cjs/nv-accordion-item.cjs.entry.js.map +1 -1
  17. package/dist/cjs/nv-accordion.cjs.entry.js +6 -6
  18. package/dist/cjs/nv-accordion.cjs.entry.js.map +1 -1
  19. package/dist/cjs/nv-alert.cjs.entry.js +5 -5
  20. package/dist/cjs/nv-alert.cjs.entry.js.map +1 -1
  21. package/dist/cjs/nv-avatar.cjs.entry.js +3 -3
  22. package/dist/cjs/nv-avatar.cjs.entry.js.map +1 -1
  23. package/dist/cjs/nv-badge_2.cjs.entry.js +10 -10
  24. package/dist/cjs/nv-badge_2.cjs.entry.js.map +1 -1
  25. package/dist/cjs/nv-breadcrumb.cjs.entry.js +2 -2
  26. package/dist/cjs/nv-breadcrumb.cjs.entry.js.map +1 -1
  27. package/dist/cjs/nv-breadcrumbs.cjs.entry.js +1 -1
  28. package/dist/cjs/nv-button.cjs.entry.js +3 -3
  29. package/dist/cjs/nv-button.cjs.entry.js.map +1 -1
  30. package/dist/cjs/nv-buttongroup.cjs.entry.js +1 -1
  31. package/dist/cjs/nv-calendar.cjs.entry.js +2 -2
  32. package/dist/cjs/nv-col.cjs.entry.js +1 -1
  33. package/dist/cjs/nv-datagrid.cjs.entry.js +178 -11
  34. package/dist/cjs/nv-datagrid.cjs.entry.js.map +1 -1
  35. package/dist/cjs/nv-datagridcolumn.cjs.entry.js +1 -1
  36. package/dist/cjs/nv-dialog.cjs.entry.js +33 -30
  37. package/dist/cjs/nv-dialog.cjs.entry.js.map +1 -1
  38. package/dist/cjs/nv-dialogfooter_2.cjs.entry.js +3 -3
  39. package/dist/cjs/nv-dialogfooter_2.cjs.entry.js.map +1 -1
  40. package/dist/cjs/nv-fieldcheckbox.cjs.entry.js +2 -2
  41. package/dist/cjs/nv-fieldcheckbox.cjs.entry.js.map +1 -1
  42. package/dist/cjs/nv-fielddate.cjs.entry.js +51 -26
  43. package/dist/cjs/nv-fielddate.cjs.entry.js.map +1 -1
  44. package/dist/cjs/nv-fielddaterange.cjs.entry.js +68 -42
  45. package/dist/cjs/nv-fielddaterange.cjs.entry.js.map +1 -1
  46. package/dist/cjs/nv-fielddropdown.cjs.entry.js +33 -7
  47. package/dist/cjs/nv-fielddropdown.cjs.entry.js.map +1 -1
  48. package/dist/cjs/nv-fielddropdownitem.cjs.entry.js +1 -1
  49. package/dist/cjs/nv-fieldmultiselect.cjs.entry.js +187 -156
  50. package/dist/cjs/nv-fieldmultiselect.cjs.entry.js.map +1 -1
  51. package/dist/cjs/nv-fieldnumber.cjs.entry.js +2 -2
  52. package/dist/cjs/nv-fieldnumber.cjs.entry.js.map +1 -1
  53. package/dist/cjs/nv-fieldpassword.cjs.entry.js +2 -2
  54. package/dist/cjs/nv-fieldpassword.cjs.entry.js.map +1 -1
  55. package/dist/cjs/nv-fieldradio.cjs.entry.js +2 -2
  56. package/dist/cjs/nv-fieldradio.cjs.entry.js.map +1 -1
  57. package/dist/cjs/nv-fieldselect.cjs.entry.js +2 -2
  58. package/dist/cjs/nv-fieldselect.cjs.entry.js.map +1 -1
  59. package/dist/cjs/nv-fieldslider.cjs.entry.js +2 -2
  60. package/dist/cjs/nv-fieldslider.cjs.entry.js.map +1 -1
  61. package/dist/cjs/nv-fieldtext.cjs.entry.js +2 -2
  62. package/dist/cjs/nv-fieldtext.cjs.entry.js.map +1 -1
  63. package/dist/cjs/nv-fieldtextarea.cjs.entry.js +2 -2
  64. package/dist/cjs/nv-fieldtextarea.cjs.entry.js.map +1 -1
  65. package/dist/cjs/nv-fieldtime.cjs.entry.js +26 -13
  66. package/dist/cjs/nv-fieldtime.cjs.entry.js.map +1 -1
  67. package/dist/cjs/nv-icon.cjs.entry.js +3 -3
  68. package/dist/cjs/nv-icon.cjs.entry.js.map +1 -1
  69. package/dist/cjs/nv-iconbutton_2.cjs.entry.js +2 -2
  70. package/dist/cjs/nv-iconbutton_2.cjs.entry.js.map +1 -1
  71. package/dist/cjs/nv-menu.cjs.entry.js +24 -9
  72. package/dist/cjs/nv-menu.cjs.entry.js.map +1 -1
  73. package/dist/cjs/nv-menuitem.cjs.entry.js +1 -1
  74. package/dist/cjs/nv-notification.cjs.entry.js +71 -10
  75. package/dist/cjs/nv-notification.cjs.entry.js.map +1 -1
  76. package/dist/cjs/nv-notificationcontainer.cjs.entry.js +43 -0
  77. package/dist/cjs/nv-notificationcontainer.cjs.entry.js.map +1 -0
  78. package/dist/cjs/nv-popover.cjs.entry.js +69 -63
  79. package/dist/cjs/nv-popover.cjs.entry.js.map +1 -1
  80. package/dist/cjs/nv-row.cjs.entry.js +2 -2
  81. package/dist/cjs/nv-stack.cjs.entry.js +2 -2
  82. package/dist/cjs/nv-table.cjs.entry.js +216 -310
  83. package/dist/cjs/nv-table.cjs.entry.js.map +1 -1
  84. package/dist/cjs/nv-toggle.cjs.entry.js +4 -4
  85. package/dist/cjs/nv-toggle.cjs.entry.js.map +1 -1
  86. package/dist/cjs/nv-togglebutton.cjs.entry.js +2 -2
  87. package/dist/cjs/nv-togglebuttongroup.cjs.entry.js +2 -2
  88. package/dist/cjs/nv-togglebuttongroup.cjs.entry.js.map +1 -1
  89. package/dist/cjs/nv-tooltip.cjs.entry.js +2 -2
  90. package/dist/cjs/slide.animation-8bc27ed6.js +92 -0
  91. package/dist/cjs/slide.animation-8bc27ed6.js.map +1 -0
  92. package/dist/collection/animations/collapse.animation.js +4 -1
  93. package/dist/collection/animations/collapse.animation.js.map +1 -1
  94. package/dist/collection/animations/fade.animation.js +2 -2
  95. package/dist/collection/animations/fade.animation.js.map +1 -1
  96. package/dist/collection/animations/slide.animation.js +51 -29
  97. package/dist/collection/animations/slide.animation.js.map +1 -1
  98. package/dist/collection/collection-manifest.json +1 -1
  99. package/dist/collection/components/nv-accordion/nv-accordion.js +12 -9
  100. package/dist/collection/components/nv-accordion/nv-accordion.js.map +1 -1
  101. package/dist/collection/components/nv-accordion-item/nv-accordion-item.js.map +1 -1
  102. package/dist/collection/components/nv-accordion-item/styles/nv-accordion-item.css +1 -1
  103. package/dist/collection/components/nv-alert/nv-alert.css +1 -1
  104. package/dist/collection/components/nv-avatar/nv-avatar.css +1 -1
  105. package/dist/collection/components/nv-badge/nv-badge.js +7 -7
  106. package/dist/collection/components/nv-badge/nv-badge.js.map +1 -1
  107. package/dist/collection/components/nv-breadcrumb/nv-breadcrumb.css +1 -1
  108. package/dist/collection/components/nv-button/styles/nv-button.css +1 -1
  109. package/dist/collection/components/nv-datagrid/nv-datagrid.css +2 -2
  110. package/dist/collection/components/nv-dialog/nv-dialog.css +2 -2
  111. package/dist/collection/components/nv-dialog/nv-dialog.docs.js +13 -0
  112. package/dist/collection/components/nv-dialog/nv-dialog.docs.js.map +1 -1
  113. package/dist/collection/components/nv-dialog/nv-dialog.js +30 -27
  114. package/dist/collection/components/nv-dialog/nv-dialog.js.map +1 -1
  115. package/dist/collection/components/nv-dialogheader/nv-dialogheader.css +4 -4
  116. package/dist/collection/components/nv-fieldcheckbox/nv-fieldcheckbox.css +4 -3
  117. package/dist/collection/components/nv-fielddate/nv-fielddate.js +49 -24
  118. package/dist/collection/components/nv-fielddate/nv-fielddate.js.map +1 -1
  119. package/dist/collection/components/nv-fielddate/styles/nv-fielddate.css +8 -8
  120. package/dist/collection/components/nv-fielddaterange/nv-fielddaterange.js +66 -43
  121. package/dist/collection/components/nv-fielddaterange/nv-fielddaterange.js.map +1 -1
  122. package/dist/collection/components/nv-fielddaterange/styles/nv-fielddaterange.css +8 -8
  123. package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.docs.js +26 -4
  124. package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.docs.js.map +1 -1
  125. package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.js +32 -4
  126. package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.js.map +1 -1
  127. package/dist/collection/components/nv-fielddropdown/styles/nv-fielddropdown.css +9 -9
  128. package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.js +186 -153
  129. package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.js.map +1 -1
  130. package/dist/collection/components/nv-fieldmultiselect/styles/nv-fieldmultiselect.css +9 -9
  131. package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.css +8 -8
  132. package/dist/collection/components/nv-fieldpassword/nv-fieldpassword.css +8 -8
  133. package/dist/collection/components/nv-fieldradio/nv-fieldradio.css +3 -3
  134. package/dist/collection/components/nv-fieldselect/nv-fieldselect.css +12 -12
  135. package/dist/collection/components/nv-fieldslider/styles/nv-fieldslider.css +7 -7
  136. package/dist/collection/components/nv-fieldtext/nv-fieldtext.css +8 -8
  137. package/dist/collection/components/nv-fieldtext/nv-fieldtext.docs.js +9 -1
  138. package/dist/collection/components/nv-fieldtext/nv-fieldtext.docs.js.map +1 -1
  139. package/dist/collection/components/nv-fieldtextarea/nv-fieldtextarea.css +8 -8
  140. package/dist/collection/components/nv-fieldtime/nv-fieldtime.docs.js +22 -0
  141. package/dist/collection/components/nv-fieldtime/nv-fieldtime.docs.js.map +1 -1
  142. package/dist/collection/components/nv-fieldtime/nv-fieldtime.js +24 -9
  143. package/dist/collection/components/nv-fieldtime/nv-fieldtime.js.map +1 -1
  144. package/dist/collection/components/nv-fieldtime/styles/nv-fieldtime.css +8 -8
  145. package/dist/collection/components/nv-icon/nv-icons.js +16 -1
  146. package/dist/collection/components/nv-icon/nv-icons.js.map +1 -1
  147. package/dist/collection/components/nv-iconbutton/nv-iconbutton.css +2 -2
  148. package/dist/collection/components/nv-menu/nv-menu.docs.js +7 -0
  149. package/dist/collection/components/nv-menu/nv-menu.docs.js.map +1 -1
  150. package/dist/collection/components/nv-menu/nv-menu.js +26 -8
  151. package/dist/collection/components/nv-menu/nv-menu.js.map +1 -1
  152. package/dist/collection/components/nv-menuitem/nv-menuitem.js +1 -1
  153. package/dist/collection/components/nv-notification/nv-notification.js +104 -6
  154. package/dist/collection/components/nv-notification/nv-notification.js.map +1 -1
  155. package/dist/collection/components/nv-notification/styles/nv-notification.css +8 -8
  156. package/dist/collection/components/nv-notificationcontainer/nv-notificationcontainer.css +61 -0
  157. package/dist/collection/components/nv-notificationcontainer/nv-notificationcontainer.docs.js +7 -0
  158. package/dist/collection/components/nv-notificationcontainer/nv-notificationcontainer.docs.js.map +1 -0
  159. package/dist/collection/components/nv-notificationcontainer/nv-notificationcontainer.js +76 -0
  160. package/dist/collection/components/nv-notificationcontainer/nv-notificationcontainer.js.map +1 -0
  161. package/dist/collection/components/nv-popover/nv-popover.docs.js +11 -0
  162. package/dist/collection/components/nv-popover/nv-popover.docs.js.map +1 -1
  163. package/dist/collection/components/nv-popover/nv-popover.js +66 -60
  164. package/dist/collection/components/nv-popover/nv-popover.js.map +1 -1
  165. package/dist/collection/components/nv-row/nv-row.js +1 -1
  166. package/dist/collection/components/nv-stack/nv-stack.js +1 -1
  167. package/dist/collection/components/nv-table/nv-table.docs.js +16 -155
  168. package/dist/collection/components/nv-table/nv-table.docs.js.map +1 -1
  169. package/dist/collection/components/nv-table/nv-table.js +68 -496
  170. package/dist/collection/components/nv-table/nv-table.js.map +1 -1
  171. package/dist/collection/components/nv-table/nv-table.utils.js +175 -0
  172. package/dist/collection/components/nv-table/nv-table.utils.js.map +1 -0
  173. package/dist/collection/components/nv-table/styles/nv-table.css +84 -0
  174. package/dist/collection/components/nv-table/test/nv-table.utils.test.js +604 -0
  175. package/dist/collection/components/nv-table/test/nv-table.utils.test.js.map +1 -0
  176. package/dist/collection/components/nv-toggle/nv-toggle.css +3 -3
  177. package/dist/collection/components/nv-toggle/nv-toggle.js +2 -2
  178. package/dist/collection/components/nv-togglebutton/nv-togglebutton.js +1 -1
  179. package/dist/collection/components/nv-togglebuttongroup/nv-togglebuttongroup.docs.js +1 -0
  180. package/dist/collection/components/nv-togglebuttongroup/nv-togglebuttongroup.docs.js.map +1 -1
  181. package/dist/collection/components/nv-togglebuttongroup/nv-togglebuttongroup.js +1 -3
  182. package/dist/collection/components/nv-togglebuttongroup/nv-togglebuttongroup.js.map +1 -1
  183. package/dist/collection/components/nv-tooltip/nv-tooltip.js +1 -1
  184. package/dist/collection/utils/constants.js +9 -0
  185. package/dist/collection/utils/constants.js.map +1 -1
  186. package/dist/components/index.js +22 -7
  187. package/dist/components/index.js.map +1 -1
  188. package/dist/components/nv-accordion-item.js +1 -1
  189. package/dist/components/nv-accordion.js +10 -10
  190. package/dist/components/nv-accordion.js.map +1 -1
  191. package/dist/components/nv-alert.js +6 -6
  192. package/dist/components/nv-alert.js.map +1 -1
  193. package/dist/components/nv-avatar.js +4 -4
  194. package/dist/components/nv-avatar.js.map +1 -1
  195. package/dist/components/nv-badge.js +1 -1
  196. package/dist/components/nv-breadcrumb.js +4 -4
  197. package/dist/components/nv-breadcrumb.js.map +1 -1
  198. package/dist/components/nv-breadcrumbs.js +1 -1
  199. package/dist/components/nv-button.js +1 -1
  200. package/dist/components/nv-buttongroup.js +1 -1
  201. package/dist/components/nv-calendar.js +1 -1
  202. package/dist/components/nv-col.js +1 -1
  203. package/dist/components/nv-datagrid.js +175 -8
  204. package/dist/components/nv-datagrid.js.map +1 -1
  205. package/dist/components/nv-datagridcolumn.js +1 -1
  206. package/dist/components/nv-dialog.js +38 -35
  207. package/dist/components/nv-dialog.js.map +1 -1
  208. package/dist/components/nv-dialogfooter.js +1 -1
  209. package/dist/components/nv-dialogheader.js +1 -1
  210. package/dist/components/nv-fieldcheckbox.js +1 -1
  211. package/dist/components/nv-fielddate.js +57 -32
  212. package/dist/components/nv-fielddate.js.map +1 -1
  213. package/dist/components/nv-fielddaterange.js +74 -48
  214. package/dist/components/nv-fielddaterange.js.map +1 -1
  215. package/dist/components/nv-fielddropdown.js +40 -13
  216. package/dist/components/nv-fielddropdown.js.map +1 -1
  217. package/dist/components/nv-fielddropdownitem.js +1 -1
  218. package/dist/components/nv-fielddropdownitemcheck.js +1 -1
  219. package/dist/components/nv-fieldmultiselect.js +196 -164
  220. package/dist/components/nv-fieldmultiselect.js.map +1 -1
  221. package/dist/components/nv-fieldnumber.js +1 -1
  222. package/dist/components/nv-fieldpassword.js +5 -5
  223. package/dist/components/nv-fieldpassword.js.map +1 -1
  224. package/dist/components/nv-fieldradio.js +2 -2
  225. package/dist/components/nv-fieldradio.js.map +1 -1
  226. package/dist/components/nv-fieldselect.js +5 -5
  227. package/dist/components/nv-fieldselect.js.map +1 -1
  228. package/dist/components/nv-fieldslider.js +6 -6
  229. package/dist/components/nv-fieldslider.js.map +1 -1
  230. package/dist/components/nv-fieldtext.js +1 -1
  231. package/dist/components/nv-fieldtextarea.js +2 -2
  232. package/dist/components/nv-fieldtextarea.js.map +1 -1
  233. package/dist/components/nv-fieldtime.js +32 -18
  234. package/dist/components/nv-fieldtime.js.map +1 -1
  235. package/dist/components/nv-icon.js +1 -1
  236. package/dist/components/nv-iconbutton.js +1 -1
  237. package/dist/components/nv-loader.js +1 -1
  238. package/dist/components/nv-menu.js +30 -13
  239. package/dist/components/nv-menu.js.map +1 -1
  240. package/dist/components/nv-menuitem.js +1 -1
  241. package/dist/components/nv-notification.js +75 -12
  242. package/dist/components/nv-notification.js.map +1 -1
  243. package/dist/components/nv-notificationcontainer.d.ts +11 -0
  244. package/dist/components/nv-notificationcontainer.js +59 -0
  245. package/dist/components/nv-notificationcontainer.js.map +1 -0
  246. package/dist/components/nv-popover.js +1 -1
  247. package/dist/components/nv-row.js +2 -2
  248. package/dist/components/nv-stack.js +2 -2
  249. package/dist/components/nv-table.js +216 -328
  250. package/dist/components/nv-table.js.map +1 -1
  251. package/dist/components/nv-toggle.js +4 -4
  252. package/dist/components/nv-toggle.js.map +1 -1
  253. package/dist/components/nv-togglebutton.js +2 -2
  254. package/dist/components/nv-togglebuttongroup.js +2 -2
  255. package/dist/components/nv-togglebuttongroup.js.map +1 -1
  256. package/dist/components/nv-tooltip.js +1 -1
  257. package/dist/components/{p-1172e9bb.js → p-0d5ed1d7.js} +3 -3
  258. package/dist/components/p-0d5ed1d7.js.map +1 -0
  259. package/dist/components/{p-68fa3890.js → p-0e6f41c7.js} +3 -3
  260. package/dist/components/{p-68fa3890.js.map → p-0e6f41c7.js.map} +1 -1
  261. package/dist/components/{p-c59eccf1.js → p-0fd23531.js} +6 -6
  262. package/dist/components/{p-c59eccf1.js.map → p-0fd23531.js.map} +1 -1
  263. package/dist/components/{p-e6c04562.js → p-1639703f.js} +2 -2
  264. package/dist/components/{p-e6c04562.js.map → p-1639703f.js.map} +1 -1
  265. package/dist/components/{p-d4d310dd.js → p-2cc83e0c.js} +3 -3
  266. package/dist/components/{p-d4d310dd.js.map → p-2cc83e0c.js.map} +1 -1
  267. package/dist/components/p-2d64749f.js +191 -0
  268. package/dist/components/{p-2de17259.js.map → p-2d64749f.js.map} +1 -1
  269. package/dist/components/{p-e5dff125.js → p-31478080.js} +12 -12
  270. package/dist/components/{p-e5dff125.js.map → p-31478080.js.map} +1 -1
  271. package/dist/components/{p-85825688.js → p-378e3127.js} +7 -7
  272. package/dist/components/{p-85825688.js.map → p-378e3127.js.map} +1 -1
  273. package/dist/components/{p-31591941.js → p-3cd7a66f.js} +5 -2
  274. package/dist/components/p-3cd7a66f.js.map +1 -0
  275. package/dist/components/{p-51876ca1.js → p-429e01f3.js} +3 -3
  276. package/dist/components/p-429e01f3.js.map +1 -0
  277. package/dist/components/{p-fb560fa3.js → p-4697bd56.js} +2 -2
  278. package/dist/components/{p-fb560fa3.js.map → p-4697bd56.js.map} +1 -1
  279. package/dist/components/p-47d499b4.js +88 -0
  280. package/dist/components/p-47d499b4.js.map +1 -0
  281. package/dist/{esm/constants-d0f19e7b.js → components/p-51602221.js} +11 -2
  282. package/dist/components/p-51602221.js.map +1 -0
  283. package/dist/components/{p-aff3ed68.js → p-5829b9f7.js} +5 -2
  284. package/dist/components/p-5829b9f7.js.map +1 -0
  285. package/dist/components/{p-60244646.js → p-63595ea1.js} +70 -64
  286. package/dist/components/p-63595ea1.js.map +1 -0
  287. package/dist/components/{p-8439219d.js → p-7112612c.js} +5 -5
  288. package/dist/components/p-7112612c.js.map +1 -0
  289. package/dist/components/{p-ac91582e.js → p-715e5235.js} +3 -3
  290. package/dist/components/{p-ac91582e.js.map → p-715e5235.js.map} +1 -1
  291. package/dist/components/{p-eb443b26.js → p-9707528d.js} +4 -4
  292. package/dist/components/{p-eb443b26.js.map → p-9707528d.js.map} +1 -1
  293. package/dist/components/{p-fda58a76.js → p-98429fd7.js} +2 -2
  294. package/dist/components/{p-fda58a76.js.map → p-98429fd7.js.map} +1 -1
  295. package/dist/components/{p-930caa42.js → p-a1ef5e37.js} +6 -6
  296. package/dist/components/{p-930caa42.js.map → p-a1ef5e37.js.map} +1 -1
  297. package/dist/components/{p-ee0df37f.js → p-a271e3be.js} +3 -3
  298. package/dist/components/p-a271e3be.js.map +1 -0
  299. package/dist/components/p-c7401a7d.js +90 -0
  300. package/dist/components/p-c7401a7d.js.map +1 -0
  301. package/dist/components/{p-942f6619.js → p-df5d76a5.js} +3 -3
  302. package/dist/components/{p-942f6619.js.map → p-df5d76a5.js.map} +1 -1
  303. package/dist/components/{p-6ffba98c.js → p-f2bac2aa.js} +4 -4
  304. package/dist/components/{p-6ffba98c.js.map → p-f2bac2aa.js.map} +1 -1
  305. package/dist/esm/{collapse.animation-acda1bf5.js → collapse.animation-6e0b08df.js} +5 -2
  306. package/dist/esm/collapse.animation-6e0b08df.js.map +1 -0
  307. package/dist/{components/p-2277cfc8.js → esm/constants-69bafca2.js} +11 -2
  308. package/dist/esm/constants-69bafca2.js.map +1 -0
  309. package/dist/esm/{fade.animation-eb454088.js → fade.animation-9b939939.js} +3 -3
  310. package/dist/esm/{fade.animation-eb454088.js.map → fade.animation-9b939939.js.map} +1 -1
  311. package/dist/esm/{grow.animation-5b2abb3a.js → grow.animation-03fa5c19.js} +2 -2
  312. package/dist/esm/{grow.animation-5b2abb3a.js.map → grow.animation-03fa5c19.js.map} +1 -1
  313. package/dist/esm/{index-a1936cd0.js → index-dc2723f3.js} +9 -6
  314. package/dist/esm/index-dc2723f3.js.map +1 -0
  315. package/dist/esm/index.js +21 -6
  316. package/dist/esm/index.js.map +1 -1
  317. package/dist/esm/loader.js +3 -3
  318. package/dist/esm/native.js +3 -3
  319. package/dist/esm/nv-accordion-item.entry.js +3 -3
  320. package/dist/esm/nv-accordion-item.entry.js.map +1 -1
  321. package/dist/esm/nv-accordion.entry.js +6 -6
  322. package/dist/esm/nv-accordion.entry.js.map +1 -1
  323. package/dist/esm/nv-alert.entry.js +5 -5
  324. package/dist/esm/nv-alert.entry.js.map +1 -1
  325. package/dist/esm/nv-avatar.entry.js +3 -3
  326. package/dist/esm/nv-avatar.entry.js.map +1 -1
  327. package/dist/esm/nv-badge_2.entry.js +10 -10
  328. package/dist/esm/nv-badge_2.entry.js.map +1 -1
  329. package/dist/esm/nv-breadcrumb.entry.js +2 -2
  330. package/dist/esm/nv-breadcrumb.entry.js.map +1 -1
  331. package/dist/esm/nv-breadcrumbs.entry.js +1 -1
  332. package/dist/esm/nv-button.entry.js +3 -3
  333. package/dist/esm/nv-button.entry.js.map +1 -1
  334. package/dist/esm/nv-buttongroup.entry.js +1 -1
  335. package/dist/esm/nv-calendar.entry.js +2 -2
  336. package/dist/esm/nv-col.entry.js +1 -1
  337. package/dist/esm/nv-datagrid.entry.js +173 -6
  338. package/dist/esm/nv-datagrid.entry.js.map +1 -1
  339. package/dist/esm/nv-datagridcolumn.entry.js +1 -1
  340. package/dist/esm/nv-dialog.entry.js +33 -30
  341. package/dist/esm/nv-dialog.entry.js.map +1 -1
  342. package/dist/esm/nv-dialogfooter_2.entry.js +3 -3
  343. package/dist/esm/nv-dialogfooter_2.entry.js.map +1 -1
  344. package/dist/esm/nv-fieldcheckbox.entry.js +2 -2
  345. package/dist/esm/nv-fieldcheckbox.entry.js.map +1 -1
  346. package/dist/esm/nv-fielddate.entry.js +51 -26
  347. package/dist/esm/nv-fielddate.entry.js.map +1 -1
  348. package/dist/esm/nv-fielddaterange.entry.js +68 -42
  349. package/dist/esm/nv-fielddaterange.entry.js.map +1 -1
  350. package/dist/esm/nv-fielddropdown.entry.js +33 -7
  351. package/dist/esm/nv-fielddropdown.entry.js.map +1 -1
  352. package/dist/esm/nv-fielddropdownitem.entry.js +1 -1
  353. package/dist/esm/nv-fieldmultiselect.entry.js +187 -156
  354. package/dist/esm/nv-fieldmultiselect.entry.js.map +1 -1
  355. package/dist/esm/nv-fieldnumber.entry.js +2 -2
  356. package/dist/esm/nv-fieldnumber.entry.js.map +1 -1
  357. package/dist/esm/nv-fieldpassword.entry.js +2 -2
  358. package/dist/esm/nv-fieldpassword.entry.js.map +1 -1
  359. package/dist/esm/nv-fieldradio.entry.js +2 -2
  360. package/dist/esm/nv-fieldradio.entry.js.map +1 -1
  361. package/dist/esm/nv-fieldselect.entry.js +2 -2
  362. package/dist/esm/nv-fieldselect.entry.js.map +1 -1
  363. package/dist/esm/nv-fieldslider.entry.js +2 -2
  364. package/dist/esm/nv-fieldslider.entry.js.map +1 -1
  365. package/dist/esm/nv-fieldtext.entry.js +2 -2
  366. package/dist/esm/nv-fieldtext.entry.js.map +1 -1
  367. package/dist/esm/nv-fieldtextarea.entry.js +2 -2
  368. package/dist/esm/nv-fieldtextarea.entry.js.map +1 -1
  369. package/dist/esm/nv-fieldtime.entry.js +26 -13
  370. package/dist/esm/nv-fieldtime.entry.js.map +1 -1
  371. package/dist/esm/nv-icon.entry.js +3 -3
  372. package/dist/esm/nv-icon.entry.js.map +1 -1
  373. package/dist/esm/nv-iconbutton_2.entry.js +2 -2
  374. package/dist/esm/nv-iconbutton_2.entry.js.map +1 -1
  375. package/dist/esm/nv-menu.entry.js +24 -9
  376. package/dist/esm/nv-menu.entry.js.map +1 -1
  377. package/dist/esm/nv-menuitem.entry.js +1 -1
  378. package/dist/esm/nv-notification.entry.js +71 -10
  379. package/dist/esm/nv-notification.entry.js.map +1 -1
  380. package/dist/esm/nv-notificationcontainer.entry.js +39 -0
  381. package/dist/esm/nv-notificationcontainer.entry.js.map +1 -0
  382. package/dist/esm/nv-popover.entry.js +69 -63
  383. package/dist/esm/nv-popover.entry.js.map +1 -1
  384. package/dist/esm/nv-row.entry.js +2 -2
  385. package/dist/esm/nv-stack.entry.js +2 -2
  386. package/dist/esm/nv-table.entry.js +216 -310
  387. package/dist/esm/nv-table.entry.js.map +1 -1
  388. package/dist/esm/nv-toggle.entry.js +4 -4
  389. package/dist/esm/nv-toggle.entry.js.map +1 -1
  390. package/dist/esm/nv-togglebutton.entry.js +2 -2
  391. package/dist/esm/nv-togglebuttongroup.entry.js +2 -2
  392. package/dist/esm/nv-togglebuttongroup.entry.js.map +1 -1
  393. package/dist/esm/nv-tooltip.entry.js +2 -2
  394. package/dist/esm/slide.animation-f761030b.js +90 -0
  395. package/dist/esm/slide.animation-f761030b.js.map +1 -0
  396. package/dist/native/index.esm.js +1 -1
  397. package/dist/native/index.esm.js.map +1 -1
  398. package/dist/native/native.css +1 -1
  399. package/dist/native/native.esm.js +1 -1
  400. package/dist/native/native.esm.js.map +1 -1
  401. package/dist/native/{p-7bbcf477.entry.js → p-075d231e.entry.js} +2 -2
  402. package/dist/native/p-075d231e.entry.js.map +1 -0
  403. package/dist/native/p-107e80c6.entry.js +2 -0
  404. package/dist/native/p-107e80c6.entry.js.map +1 -0
  405. package/dist/native/{p-40c4a221.entry.js → p-112d096c.entry.js} +2 -2
  406. package/dist/native/p-112d096c.entry.js.map +1 -0
  407. package/dist/native/p-217de553.entry.js +2 -0
  408. package/dist/native/p-217de553.entry.js.map +1 -0
  409. package/dist/native/{p-85f8f11a.entry.js → p-230af58a.entry.js} +2 -2
  410. package/dist/native/p-23ee0384.entry.js +2 -0
  411. package/dist/native/{p-29f68e07.entry.js.map → p-23ee0384.entry.js.map} +1 -1
  412. package/dist/native/p-26513cbd.entry.js +2 -0
  413. package/dist/native/p-26513cbd.entry.js.map +1 -0
  414. package/dist/native/p-278613a3.entry.js +2 -0
  415. package/dist/native/{p-8c823928.entry.js.map → p-278613a3.entry.js.map} +1 -1
  416. package/dist/native/p-2dfd786f.entry.js +2 -0
  417. package/dist/native/p-2dfd786f.entry.js.map +1 -0
  418. package/dist/native/{p-d0a33e64.js → p-3060df80.js} +3 -3
  419. package/dist/native/p-3060df80.js.map +1 -0
  420. package/dist/native/p-3cd7a66f.js +2 -0
  421. package/dist/native/p-3cd7a66f.js.map +1 -0
  422. package/dist/native/p-445221dc.entry.js +2 -0
  423. package/dist/native/p-445221dc.entry.js.map +1 -0
  424. package/dist/native/{p-3f861ddc.entry.js → p-44a78545.entry.js} +2 -2
  425. package/dist/native/p-4697bd56.js +2 -0
  426. package/dist/native/p-4dc7483d.entry.js +2 -0
  427. package/dist/native/{p-cfd5785e.entry.js.map → p-4dc7483d.entry.js.map} +1 -1
  428. package/dist/native/p-4eaf417d.entry.js +13 -0
  429. package/dist/native/p-4eaf417d.entry.js.map +1 -0
  430. package/dist/native/p-5039ceb8.entry.js +2 -0
  431. package/dist/native/p-5039ceb8.entry.js.map +1 -0
  432. package/dist/native/p-51602221.js +2 -0
  433. package/dist/{cjs/constants-52f6f8e9.js.map → native/p-51602221.js.map} +1 -1
  434. package/dist/native/p-647a0765.entry.js +2 -0
  435. package/dist/native/p-647a0765.entry.js.map +1 -0
  436. package/dist/native/p-68dc02be.entry.js +2 -0
  437. package/dist/native/p-68dc02be.entry.js.map +1 -0
  438. package/dist/native/p-6d427897.entry.js +2 -0
  439. package/dist/native/{p-92931ab8.entry.js.map → p-6d427897.entry.js.map} +1 -1
  440. package/dist/native/p-701b48a4.entry.js +2 -0
  441. package/dist/native/{p-da2c7d3c.entry.js.map → p-701b48a4.entry.js.map} +1 -1
  442. package/dist/native/p-7c9bf981.entry.js +2 -0
  443. package/dist/native/p-835abdb9.entry.js +2 -0
  444. package/dist/native/{p-f5120223.entry.js.map → p-835abdb9.entry.js.map} +1 -1
  445. package/dist/native/{p-464bb197.entry.js → p-83765537.entry.js} +2 -2
  446. package/dist/native/p-88f9fca5.entry.js +2 -0
  447. package/dist/native/p-88f9fca5.entry.js.map +1 -0
  448. package/dist/native/{p-788e9ee5.entry.js → p-8e423742.entry.js} +3 -3
  449. package/dist/native/{p-788e9ee5.entry.js.map → p-8e423742.entry.js.map} +1 -1
  450. package/dist/native/p-95184ea2.entry.js +2 -0
  451. package/dist/native/p-95184ea2.entry.js.map +1 -0
  452. package/dist/native/p-9613087c.entry.js +2 -0
  453. package/dist/native/{p-2781637d.entry.js.map → p-9613087c.entry.js.map} +1 -1
  454. package/dist/native/{p-94dc9c41.entry.js → p-9d7e099f.entry.js} +2 -2
  455. package/dist/native/{p-ee0df37f.js → p-a271e3be.js} +2 -2
  456. package/dist/native/{p-ee0df37f.js.map → p-a271e3be.js.map} +1 -1
  457. package/dist/native/p-a2f58133.entry.js +2 -0
  458. package/dist/native/p-a2f58133.entry.js.map +1 -0
  459. package/dist/native/{p-1235c007.entry.js → p-acabac31.entry.js} +2 -2
  460. package/dist/native/p-acada158.entry.js +2 -0
  461. package/dist/native/p-acada158.entry.js.map +1 -0
  462. package/dist/native/{p-f5eb047e.entry.js → p-b02c896a.entry.js} +2 -2
  463. package/dist/native/p-b06f0e61.entry.js +2 -0
  464. package/dist/native/p-b06f0e61.entry.js.map +1 -0
  465. package/dist/native/p-b4c15f25.entry.js +2 -0
  466. package/dist/native/p-b4c15f25.entry.js.map +1 -0
  467. package/dist/native/p-bcf41cd0.entry.js +2 -0
  468. package/dist/native/p-c7401a7d.js +2 -0
  469. package/dist/native/p-c7401a7d.js.map +1 -0
  470. package/dist/native/p-ce97ce24.entry.js +2 -0
  471. package/dist/native/p-ce97ce24.entry.js.map +1 -0
  472. package/dist/native/p-d0db5e72.entry.js +2 -0
  473. package/dist/native/p-d0db5e72.entry.js.map +1 -0
  474. package/dist/native/p-d45ee8e5.entry.js +2 -0
  475. package/dist/native/{p-52b8c872.entry.js.map → p-d45ee8e5.entry.js.map} +1 -1
  476. package/dist/native/p-d7f444fb.entry.js +2 -0
  477. package/dist/native/p-d7f444fb.entry.js.map +1 -0
  478. package/dist/native/p-d878e90a.entry.js +2 -0
  479. package/dist/native/p-d878e90a.entry.js.map +1 -0
  480. package/dist/native/p-ddc41f1f.entry.js +2 -0
  481. package/dist/native/p-ddc41f1f.entry.js.map +1 -0
  482. package/dist/native/{p-d95ee31e.entry.js → p-dfb6b65e.entry.js} +2 -2
  483. package/dist/native/p-f30e0be6.entry.js +2 -0
  484. package/dist/native/p-f30e0be6.entry.js.map +1 -0
  485. package/dist/native/p-f3c73492.entry.js +2 -0
  486. package/dist/native/{p-ee516944.entry.js.map → p-f3c73492.entry.js.map} +1 -1
  487. package/dist/native/{p-9c5d6827.entry.js → p-fa78d8eb.entry.js} +2 -2
  488. package/dist/types/animations/slide.animation.d.ts +15 -4
  489. package/dist/types/components/nv-accordion/nv-accordion.d.ts +2 -4
  490. package/dist/types/components/nv-badge/nv-badge.d.ts +1 -1
  491. package/dist/types/components/nv-dialog/nv-dialog.d.ts +9 -8
  492. package/dist/types/components/nv-fielddate/nv-fielddate.d.ts +6 -3
  493. package/dist/types/components/nv-fielddaterange/nv-fielddaterange.d.ts +5 -4
  494. package/dist/types/components/nv-fielddropdown/nv-fielddropdown.d.ts +3 -1
  495. package/dist/types/components/nv-fieldmultiselect/nv-fieldmultiselect.d.ts +12 -11
  496. package/dist/types/components/nv-fieldtime/nv-fieldtime.d.ts +1 -0
  497. package/dist/types/components/nv-icon/nv-icons.d.ts +1 -1
  498. package/dist/types/components/nv-menu/nv-menu.d.ts +4 -1
  499. package/dist/types/components/nv-notification/nv-notification.d.ts +18 -0
  500. package/dist/types/components/nv-notificationcontainer/nv-notificationcontainer.d.ts +19 -0
  501. package/dist/types/components/nv-notificationcontainer/nv-notificationcontainer.docs.d.ts +4 -0
  502. package/dist/types/components/nv-popover/nv-popover.d.ts +10 -8
  503. package/dist/types/components/nv-table/nv-table.d.ts +6 -87
  504. package/dist/types/components/nv-table/nv-table.utils.d.ts +129 -0
  505. package/dist/types/components/nv-table/test/nv-table.utils.test.d.ts +1 -0
  506. package/dist/types/components/nv-togglebuttongroup/nv-togglebuttongroup.d.ts +0 -2
  507. package/dist/types/components.d.ts +63 -211
  508. package/dist/types/utils/constants.d.ts +8 -0
  509. package/dist/vscode-data.json +87 -43
  510. package/hydrate/index.js +973 -809
  511. package/hydrate/index.mjs +973 -809
  512. package/package.json +10 -10
  513. package/dist/cjs/collapse.animation-47397763.js.map +0 -1
  514. package/dist/cjs/dom.utils-4d43f69a.js +0 -170
  515. package/dist/cjs/dom.utils-4d43f69a.js.map +0 -1
  516. package/dist/cjs/fade.animation-cf6eba0d.js.map +0 -1
  517. package/dist/cjs/index-c56424e5.js.map +0 -1
  518. package/dist/cjs/nv-tablecolumn.cjs.entry.js +0 -21
  519. package/dist/cjs/nv-tablecolumn.cjs.entry.js.map +0 -1
  520. package/dist/cjs/slide.animation-bedfc827.js +0 -70
  521. package/dist/cjs/slide.animation-bedfc827.js.map +0 -1
  522. package/dist/collection/components/nv-table/nv-table.css +0 -35
  523. package/dist/collection/components/nv-tablecolumn/nv-tablecolumn.docs.js +0 -6
  524. package/dist/collection/components/nv-tablecolumn/nv-tablecolumn.docs.js.map +0 -1
  525. package/dist/collection/components/nv-tablecolumn/nv-tablecolumn.js +0 -52
  526. package/dist/collection/components/nv-tablecolumn/nv-tablecolumn.js.map +0 -1
  527. package/dist/components/nv-tablecolumn.d.ts +0 -11
  528. package/dist/components/nv-tablecolumn.js +0 -38
  529. package/dist/components/nv-tablecolumn.js.map +0 -1
  530. package/dist/components/p-1172e9bb.js.map +0 -1
  531. package/dist/components/p-2277cfc8.js.map +0 -1
  532. package/dist/components/p-2de17259.js +0 -191
  533. package/dist/components/p-31591941.js.map +0 -1
  534. package/dist/components/p-51876ca1.js.map +0 -1
  535. package/dist/components/p-60244646.js.map +0 -1
  536. package/dist/components/p-8439219d.js.map +0 -1
  537. package/dist/components/p-aff3ed68.js.map +0 -1
  538. package/dist/components/p-cb34aa4f.js +0 -167
  539. package/dist/components/p-cb34aa4f.js.map +0 -1
  540. package/dist/components/p-e0cd7e3a.js +0 -88
  541. package/dist/components/p-e0cd7e3a.js.map +0 -1
  542. package/dist/components/p-eda2f9f3.js +0 -68
  543. package/dist/components/p-eda2f9f3.js.map +0 -1
  544. package/dist/components/p-ee0df37f.js.map +0 -1
  545. package/dist/esm/collapse.animation-acda1bf5.js.map +0 -1
  546. package/dist/esm/constants-d0f19e7b.js.map +0 -1
  547. package/dist/esm/dom.utils-ac71e0ef.js +0 -167
  548. package/dist/esm/dom.utils-ac71e0ef.js.map +0 -1
  549. package/dist/esm/index-a1936cd0.js.map +0 -1
  550. package/dist/esm/nv-tablecolumn.entry.js +0 -17
  551. package/dist/esm/nv-tablecolumn.entry.js.map +0 -1
  552. package/dist/esm/slide.animation-f444aa0b.js +0 -68
  553. package/dist/esm/slide.animation-f444aa0b.js.map +0 -1
  554. package/dist/native/p-08582c21.entry.js +0 -2
  555. package/dist/native/p-08582c21.entry.js.map +0 -1
  556. package/dist/native/p-0a99c6fb.entry.js +0 -2
  557. package/dist/native/p-0a99c6fb.entry.js.map +0 -1
  558. package/dist/native/p-0e488b3d.entry.js +0 -2
  559. package/dist/native/p-0e488b3d.entry.js.map +0 -1
  560. package/dist/native/p-1ad1bff9.entry.js +0 -2
  561. package/dist/native/p-1ad1bff9.entry.js.map +0 -1
  562. package/dist/native/p-1f01fb64.entry.js +0 -2
  563. package/dist/native/p-1f01fb64.entry.js.map +0 -1
  564. package/dist/native/p-225a05bf.entry.js +0 -2
  565. package/dist/native/p-225a05bf.entry.js.map +0 -1
  566. package/dist/native/p-2277cfc8.js +0 -2
  567. package/dist/native/p-2277cfc8.js.map +0 -1
  568. package/dist/native/p-234cfa2e.entry.js +0 -2
  569. package/dist/native/p-25f2ce81.entry.js +0 -2
  570. package/dist/native/p-2781637d.entry.js +0 -2
  571. package/dist/native/p-29f68e07.entry.js +0 -2
  572. package/dist/native/p-31591941.js +0 -2
  573. package/dist/native/p-31591941.js.map +0 -1
  574. package/dist/native/p-3784efdc.entry.js +0 -2
  575. package/dist/native/p-3784efdc.entry.js.map +0 -1
  576. package/dist/native/p-40c4a221.entry.js.map +0 -1
  577. package/dist/native/p-52b8c872.entry.js +0 -2
  578. package/dist/native/p-5a43fe48.entry.js +0 -13
  579. package/dist/native/p-5a43fe48.entry.js.map +0 -1
  580. package/dist/native/p-5f0776cb.entry.js +0 -2
  581. package/dist/native/p-5f0776cb.entry.js.map +0 -1
  582. package/dist/native/p-6290951d.entry.js +0 -2
  583. package/dist/native/p-6290951d.entry.js.map +0 -1
  584. package/dist/native/p-7bbcf477.entry.js.map +0 -1
  585. package/dist/native/p-81952a3c.entry.js +0 -2
  586. package/dist/native/p-81952a3c.entry.js.map +0 -1
  587. package/dist/native/p-87784622.entry.js +0 -2
  588. package/dist/native/p-87784622.entry.js.map +0 -1
  589. package/dist/native/p-8c823928.entry.js +0 -2
  590. package/dist/native/p-92931ab8.entry.js +0 -2
  591. package/dist/native/p-9a46baa9.entry.js +0 -2
  592. package/dist/native/p-9a46baa9.entry.js.map +0 -1
  593. package/dist/native/p-a34beedf.entry.js +0 -2
  594. package/dist/native/p-a34beedf.entry.js.map +0 -1
  595. package/dist/native/p-bc01787b.entry.js +0 -2
  596. package/dist/native/p-bc01787b.entry.js.map +0 -1
  597. package/dist/native/p-cb34aa4f.js +0 -2
  598. package/dist/native/p-cb34aa4f.js.map +0 -1
  599. package/dist/native/p-cea942b9.entry.js +0 -2
  600. package/dist/native/p-cea942b9.entry.js.map +0 -1
  601. package/dist/native/p-cfd5785e.entry.js +0 -2
  602. package/dist/native/p-d0a33e64.js.map +0 -1
  603. package/dist/native/p-d0ef1bbb.entry.js +0 -2
  604. package/dist/native/p-d0ef1bbb.entry.js.map +0 -1
  605. package/dist/native/p-d88c416f.entry.js +0 -2
  606. package/dist/native/p-d88c416f.entry.js.map +0 -1
  607. package/dist/native/p-da2c7d3c.entry.js +0 -2
  608. package/dist/native/p-dd023fd6.entry.js +0 -2
  609. package/dist/native/p-dd023fd6.entry.js.map +0 -1
  610. package/dist/native/p-e765a624.entry.js +0 -2
  611. package/dist/native/p-e765a624.entry.js.map +0 -1
  612. package/dist/native/p-eda2f9f3.js +0 -2
  613. package/dist/native/p-eda2f9f3.js.map +0 -1
  614. package/dist/native/p-ee516944.entry.js +0 -2
  615. package/dist/native/p-f0cbfb3d.entry.js +0 -2
  616. package/dist/native/p-f0cbfb3d.entry.js.map +0 -1
  617. package/dist/native/p-f5120223.entry.js +0 -2
  618. package/dist/native/p-fb560fa3.js +0 -2
  619. package/dist/types/components/nv-tablecolumn/nv-tablecolumn.d.ts +0 -13
  620. package/dist/types/components/nv-tablecolumn/nv-tablecolumn.docs.d.ts +0 -4
  621. /package/dist/native/{p-85f8f11a.entry.js.map → p-230af58a.entry.js.map} +0 -0
  622. /package/dist/native/{p-3f861ddc.entry.js.map → p-44a78545.entry.js.map} +0 -0
  623. /package/dist/native/{p-fb560fa3.js.map → p-4697bd56.js.map} +0 -0
  624. /package/dist/native/{p-234cfa2e.entry.js.map → p-7c9bf981.entry.js.map} +0 -0
  625. /package/dist/native/{p-464bb197.entry.js.map → p-83765537.entry.js.map} +0 -0
  626. /package/dist/native/{p-94dc9c41.entry.js.map → p-9d7e099f.entry.js.map} +0 -0
  627. /package/dist/native/{p-1235c007.entry.js.map → p-acabac31.entry.js.map} +0 -0
  628. /package/dist/native/{p-f5eb047e.entry.js.map → p-b02c896a.entry.js.map} +0 -0
  629. /package/dist/native/{p-25f2ce81.entry.js.map → p-bcf41cd0.entry.js.map} +0 -0
  630. /package/dist/native/{p-d95ee31e.entry.js.map → p-dfb6b65e.entry.js.map} +0 -0
  631. /package/dist/native/{p-9c5d6827.entry.js.map → p-fa78d8eb.entry.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- import{r as a,h as t,H as r}from"./p-d0a33e64.js";import{c as o}from"./p-8a1a6e56.js";import{S as n}from"./p-2277cfc8.js";const v='nv-avatar{align-items:center !important;background-color:var(--components-avatar-background-1);border-radius:var(--radius-rounded-full) !important;display:flex !important;flex-shrink:0 !important;font-family:"TT Norms Pro", sans-serif;font-style:normal;font-weight:var(--font-weight-medium-emphasis);justify-content:center !important;leading-trim:both;line-height:1 !important;text-align:center;text-edge:cap;text-transform:uppercase}nv-avatar.avatar-color-1{background-color:var(--components-avatar-background-1);color:var(--components-avatar-content-1)}nv-avatar.avatar-color-2{background-color:var(--components-avatar-background-2);color:var(--components-avatar-content-2)}nv-avatar.avatar-color-3{background-color:var(--components-avatar-background-3);color:var(--components-avatar-content-3)}nv-avatar.avatar-color-4{background-color:var(--components-avatar-background-4);color:var(--components-avatar-content-4)}nv-avatar.avatar-color-5{background-color:var(--components-avatar-background-5);color:var(--components-avatar-content-5)}nv-avatar.avatar-color-6{background-color:var(--components-avatar-background-6);color:var(--components-avatar-content-6)}nv-avatar.avatar-color-7{background-color:var(--components-avatar-background-7);color:var(--components-avatar-content-7)}nv-avatar.avatar-color-8{background-color:var(--components-avatar-background-8);color:var(--components-avatar-content-8)}nv-avatar.avatar-color-9{background-color:var(--components-avatar-background-9);color:var(--components-avatar-content-9)}nv-avatar.avatar-color-10{background-color:var(--components-avatar-background-10);color:var(--components-avatar-content-10)}nv-avatar img{height:100%;width:100%;object-fit:cover;object-position:center;border-radius:50%}nv-avatar.avatar-xs{width:var(--avatar-xs-size);height:var(--avatar-xs-size);font-size:var(--avatar-xs-font-size);line-height:var(--avatar-xs-font-size)}nv-avatar.avatar-xs nv-icon>svg{width:var(--spacing-3);height:var(--spacing-3);stroke-width:1.2px}nv-avatar.avatar-sm{width:var(--avatar-sm-size);height:var(--avatar-sm-size);font-size:var(--avatar-sm-font-size);line-height:var(--avatar-sm-font-size)}nv-avatar.avatar-sm nv-icon>svg{width:var(--spacing-4);height:var(--spacing-4);stroke-width:1.5px}nv-avatar.avatar-md{width:var(--avatar-md-size);height:var(--avatar-md-size);font-size:var(--avatar-md-font-size);line-height:var(--avatar-md-font-size)}nv-avatar.avatar-md nv-icon>svg{width:var(--spacing-5);height:var(--spacing-5);stroke-width:1.6px}nv-avatar.avatar-lg{width:var(--avatar-lg-size);height:var(--avatar-lg-size);font-size:var(--avatar-lg-font-size);line-height:var(--avatar-lg-font-size)}nv-avatar.avatar-lg nv-icon>svg{width:var(--spacing-6);height:var(--spacing-6);stroke-width:1.8px}nv-avatar.avatar-xl{width:var(--avatar-xl-size);height:var(--avatar-xl-size);font-size:var(--avatar-xl-font-size);line-height:var(--avatar-xl-font-size)}nv-avatar.avatar-xl nv-icon>svg{width:var(--spacing-7);height:var(--spacing-7);stroke-width:1.9px}';const i=v;const s=class{constructor(t){a(this,t);this.size="md";this.color="1"}componentWillRender(){if(this.xsmall){this.size=n.ExtraSmall}if(this.small){this.size=n.Small}if(this.medium){this.size=n.Medium}if(this.large){this.size=n.Large}if(this.xlarge){this.size=n.ExtraLarge}if(this.text){this.initials=this.text}if(this.url){this.src=this.url}}trimInitials(a){return a.trim().substring(0,2)}render(){return t(r,{key:"127d470eb9121f611f9e18f029ab9ef15a4a49df",class:o(`avatar-${this.size}`,`avatar-color-${this.color}`),"aria-label":this.alt},this.src?t("img",{src:this.src,alt:this.alt}):this.initials?this.trimInitials(this.initials):t("slot",{name:"icon"},t("nv-icon",{name:"user"})))}};s.style=i;export{s as nv_avatar};
2
- //# sourceMappingURL=p-1f01fb64.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["nvAvatarCss","NvAvatarStyle0","NvAvatar","constructor","hostRef","this","size","color","componentWillRender","xsmall","SemanticSizes","ExtraSmall","small","Small","medium","Medium","large","Large","xlarge","ExtraLarge","text","initials","url","src","trimInitials","trim","substring","render","h","Host","key","class","clsx","alt","name"],"sources":["src/components/nv-avatar/nv-avatar.scss?tag=nv-avatar","src/components/nv-avatar/nv-avatar.tsx"],"sourcesContent":["@use \"sass:map\";\n@use \"../nv-icon/styles/mixins\" as icon;\n\n/* Variants */\n$avatar-sizes: (\"xs\", \"sm\", \"md\", \"lg\", \"xl\");\n$avatar-colors: (\"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\", \"10\");\n\n/* Define maps for size-related variables */\n$avatar-size: (\n \"xs\": var(--avatar-xs-size),\n \"sm\": var(--avatar-sm-size),\n \"md\": var(--avatar-md-size),\n \"lg\": var(--avatar-lg-size),\n \"xl\": var(--avatar-xl-size)\n);\n\n$avatar-font-size: (\n \"xs\": var(--avatar-xs-font-size),\n \"sm\": var(--avatar-sm-font-size),\n \"md\": var(--avatar-md-font-size),\n \"lg\": var(--avatar-lg-font-size),\n \"xl\": var(--avatar-xl-font-size)\n);\n\n/* Define maps for color-related variables */\n$avatar-color-background: (\n \"1\": var(--components-avatar-background-1),\n \"2\": var(--components-avatar-background-2),\n \"3\": var(--components-avatar-background-3),\n \"4\": var(--components-avatar-background-4),\n \"5\": var(--components-avatar-background-5),\n \"6\": var(--components-avatar-background-6),\n \"7\": var(--components-avatar-background-7),\n \"8\": var(--components-avatar-background-8),\n \"9\": var(--components-avatar-background-9),\n \"10\": var(--components-avatar-background-10)\n);\n\n$avatar-color-content: (\n \"1\": var(--components-avatar-content-1),\n \"2\": var(--components-avatar-content-2),\n \"3\": var(--components-avatar-content-3),\n \"4\": var(--components-avatar-content-4),\n \"5\": var(--components-avatar-content-5),\n \"6\": var(--components-avatar-content-6),\n \"7\": var(--components-avatar-content-7),\n \"8\": var(--components-avatar-content-8),\n \"9\": var(--components-avatar-content-9),\n \"10\": var(--components-avatar-content-10)\n);\n\n@mixin avatar-base-styles() {\n align-items: center !important;\n background-color: var(--components-avatar-background-1);\n border-radius: var(--radius-rounded-full) !important;\n display: flex !important;\n flex-shrink: 0 !important;\n font-family: \"TT Norms Pro\", sans-serif;\n font-style: normal;\n font-weight: var(--font-weight-medium-emphasis);\n justify-content: center !important;\n leading-trim: both;\n line-height: 1 !important;\n text-align: center;\n text-edge: cap;\n text-transform: uppercase;\n}\n\n@mixin avatar-color($avatar-number) {\n background-color: map.get($avatar-color-background, $avatar-number);\n color: map.get($avatar-color-content, $avatar-number);\n}\n\n@mixin avatar-image-styles() {\n height: 100%;\n width: 100%;\n object-fit: cover;\n object-position: center;\n border-radius: 50%;\n}\n\n@mixin avatar-size-styles($size) {\n width: map.get($avatar-size, $size);\n height: map.get($avatar-size, $size);\n font-size: map.get($avatar-font-size, $size);\n line-height: map.get($avatar-font-size, $size);\n\n nv-icon > svg {\n @include icon.icon-size-and-stroke(\n map.get(map.get(icon.$size-variants, $size), size),\n map.get(map.get(icon.$size-variants, $size), stroke)\n );\n }\n}\n\nnv-avatar {\n @include avatar-base-styles();\n\n @each $color in $avatar-colors {\n &.avatar-color-#{$color} {\n @include avatar-color($color);\n }\n }\n\n img {\n @include avatar-image-styles();\n }\n\n @each $size in $avatar-sizes {\n &.avatar-#{$size} {\n @include avatar-size-styles($size);\n }\n }\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\nimport clsx from 'clsx';\n\nimport { SemanticSizes } from '../../utils/constants';\n\n/**\n * @slot icon - if you want to add an icon to the avatar, use this slot with an svg or nv-icon\n */\n@Component({\n tag: 'nv-avatar',\n styleUrl: 'nv-avatar.scss',\n shadow: false,\n})\nexport class NvAvatar {\n /****************************************************************************/\n //#region DEPRECATED\n\n /**\n * Set size to ExtraSmall to the avatar.\n * @deprecated use size instead.\n */\n @Prop({ reflect: true })\n readonly xsmall: boolean;\n\n /**\n * Set size to Small to the avatar.\n * @deprecated use size instead.\n */\n @Prop({ reflect: true })\n readonly small: boolean;\n\n /**\n * Set size to Medium to the avatar.\n * @deprecated use size instead.\n */\n @Prop({ reflect: true })\n readonly medium: boolean;\n\n /**\n * Set size to Large to the avatar.\n * @deprecated use size instead.\n */\n @Prop({ reflect: true })\n readonly large: boolean;\n\n /**\n * Set size to ExtraLarge to the avatar.\n * @deprecated use size instead.\n */\n @Prop({ reflect: true })\n readonly xlarge: boolean;\n\n /**\n * Set initials to the avatar.\n * @deprecated use initials instead.\n */\n\n @Prop({ reflect: true })\n readonly text: string;\n\n /**\n * Set src to the avatar.\n * @deprecated use src instead.\n */\n @Prop({ reflect: true })\n readonly url: string;\n\n componentWillRender() {\n if (this.xsmall) {\n this.size = SemanticSizes.ExtraSmall;\n }\n if (this.small) {\n this.size = SemanticSizes.Small;\n }\n if (this.medium) {\n this.size = SemanticSizes.Medium;\n }\n if (this.large) {\n this.size = SemanticSizes.Large;\n }\n if (this.xlarge) {\n this.size = SemanticSizes.ExtraLarge;\n }\n if (this.text) {\n this.initials = this.text;\n }\n if (this.url) {\n this.src = this.url;\n }\n }\n\n //#endregion DEPRECATED\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * If and image is provided, add an alt tag to describe it.\n */\n @Prop({ reflect: true })\n readonly alt: string;\n\n /**\n * Will insert an image into the avatar.\n */\n @Prop({ reflect: true, mutable: true })\n src: string;\n\n /**\n * Initials of the avatar. Usually use two letters\n * When filled with the src parameter, the text will not be rendered.\n */\n @Prop({ reflect: true, mutable: true })\n initials: string;\n\n /**\n * Define the size of the avatar. You can use t-shirt sizes.\n */\n @Prop({ reflect: true, mutable: true })\n size: `${SemanticSizes}` = 'md';\n\n /**\n * You can apply different colors on the Avatar.\n * Use a string number between 1 and 10.\n */\n @Prop({ reflect: true })\n readonly color: string = '1';\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region METHODS\n\n /**\n * Makes sure the initials are trimmed to 2 letters.\n * @param {string} initials - The initials to be trimmed.\n * @returns {string} The trimmed initials.\n */\n private trimInitials(initials: string): string {\n return initials.trim().substring(0, 2);\n }\n\n //#endregion METHODS\n /****************************************************************************/\n //#region RENDER\n\n render() {\n return (\n <Host\n class={clsx(`avatar-${this.size}`, `avatar-color-${this.color}`)}\n aria-label={this.alt}\n >\n {this.src ? (\n <img src={this.src} alt={this.alt} />\n ) : this.initials ? (\n this.trimInitials(this.initials)\n ) : (\n <slot name=\"icon\">\n <nv-icon name=\"user\" />\n </slot>\n )}\n </Host>\n );\n }\n\n //#endregion RENDER\n}\n"],"mappings":"0HAAA,MAAMA,EAAc,w7FACpB,MAAAC,EAAeD,E,MCYFE,EAAQ,MALrB,WAAAC,CAAAC,G,UA8GEC,KAAAC,KAA2B,KAOlBD,KAAAE,MAAgB,G,CA1DzB,mBAAAC,GACE,GAAIH,KAAKI,OAAQ,CACfJ,KAAKC,KAAOI,EAAcC,U,CAE5B,GAAIN,KAAKO,MAAO,CACdP,KAAKC,KAAOI,EAAcG,K,CAE5B,GAAIR,KAAKS,OAAQ,CACfT,KAAKC,KAAOI,EAAcK,M,CAE5B,GAAIV,KAAKW,MAAO,CACdX,KAAKC,KAAOI,EAAcO,K,CAE5B,GAAIZ,KAAKa,OAAQ,CACfb,KAAKC,KAAOI,EAAcS,U,CAE5B,GAAId,KAAKe,KAAM,CACbf,KAAKgB,SAAWhB,KAAKe,I,CAEvB,GAAIf,KAAKiB,IAAK,CACZjB,KAAKkB,IAAMlB,KAAKiB,G,EAiDZ,YAAAE,CAAaH,GACnB,OAAOA,EAASI,OAAOC,UAAU,EAAG,E,CAOtC,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAOC,EAAK,UAAU3B,KAAKC,OAAQ,gBAAgBD,KAAKE,SAAQ,aACpDF,KAAK4B,KAEhB5B,KAAKkB,IACJK,EAAA,OAAKL,IAAKlB,KAAKkB,IAAKU,IAAK5B,KAAK4B,MAC5B5B,KAAKgB,SACPhB,KAAKmB,aAAanB,KAAKgB,UAEvBO,EAAA,QAAMM,KAAK,QACTN,EAAA,WAASM,KAAK,U","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,c as t,h as i,H as s,g as r}from"./p-d0a33e64.js";import{a as n}from"./p-a5c8eee9.js";import{f as o}from"./p-2277cfc8.js";import{v as l}from"./p-f5ff676c.js";const a='nv-fieldslider .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .track-range{background:var(--components-slider-track-filled-focus)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .thumb{border-color:var(--components-slider-track-filled-focus)}nv-fieldslider[error] .slider-container .track-container .track .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:hover{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-handler-background-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:focus{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldtime{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box;max-width:480px}nv-fieldtime[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fieldtime[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive-in-field)}nv-fieldtime[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fieldtime[required]:not([required=false]) label::after{content:"*";color:var(--components-form-text-required);font-weight:700}nv-fieldtime label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:500;line-height:var(--form-label-line-height)}nv-fieldtime nv-popover{width:100%;display:block}nv-fieldtime nv-popover [data-scope=popover]{padding:var(--list-dropdown-padding);background-color:var(--components-list-dropdown-background);border:1px solid var(--components-list-dropdown-border);width:100%}nv-fieldtime .input-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch;width:100%}nv-fieldtime .input-container{display:flex;flex-grow:1;justify-content:center;align-items:center;align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default, 1);background:var(--nv-field-background);transition:all 150ms ease-out;display:flex;justify-content:flex-start;align-items:center;position:relative;width:100%;min-height:40px;gap:0;padding-left:var(--form-field-padding-x)}nv-fieldtime .input-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldtime .input-container:focus-within,nv-fieldtime .input-container:focus-within:hover,nv-fieldtime .input-container:focus,nv-fieldtime .input-container:focus:hover{border-color:var(--nv-field-border-focus);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fieldtime .input-container:has(input:read-only){opacity:0.5;background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fieldtime .input-container:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldtime .input-container input.time-input{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);padding:var(--form-field-padding-y) var(--form-field-padding-x);font-size:var(--form-field-font-size);font-style:normal;font-weight:500;line-height:var(--form-field-line-height);width:100%;width:100%;min-width:24px;flex:0 0 24px;text-align:center;padding:0;margin:0}nv-fieldtime .input-container input.time-input:focus{outline:none}nv-fieldtime .input-container input.time-input::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:"TT Norms Pro", sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:400;line-height:var(--form-field-line-height)}nv-fieldtime .input-container input.time-input[type=password]::-ms-clear,nv-fieldtime .input-container input.time-input[type=password]::-ms-reveal{display:none;width:0;height:0}nv-fieldtime .input-container input.time-input::-webkit-inner-spin-button,nv-fieldtime .input-container input.time-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}nv-fieldtime .input-container span{width:100%;text-align:center;min-width:24px;flex:0 0 24px;padding:0 4px;color:var(--components-form-field-content-text)}nv-fieldtime .input-container>nv-iconbutton{border:0px;border-radius:0px;margin-left:auto}nv-fieldtime .input-container>nv-iconbutton:focus-visible{border-radius:var(--button-md-border-radius);outline-offset:-3px}nv-fieldtime .input-container>nv-iconbutton:last-of-type{border-top-right-radius:var(--form-field-radius);border-bottom-right-radius:var(--form-field-radius)}nv-fieldtime .input-container nv-icon.validation{color:var(--nv-field-border-default);position:absolute;right:50px;top:50%;transform:translateY(-50%)}nv-fieldtime .input-container:focus,nv-fieldtime .input-container:focus-within{border-color:var(--color-focus-brand);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--color-focus-brand)}nv-fieldtime .description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fieldtime .error-description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}nv-fieldtime hr{border:none;border-top:1px solid var(--dropdown-divider-color, #ccc);margin:0.5rem 0}nv-fieldtime .time-dropdown{width:100%}nv-fieldtime .time-dropdown .time-columns{display:flex;justify-content:flex-start;align-items:center}nv-fieldtime .time-dropdown .time-columns .time-column{flex:1;text-align:center;max-height:200px;overflow-y:auto;scroll-behavior:smooth;scrollbar-gutter:stable both-edges;scrollbar-gutter:auto}nv-fieldtime .time-dropdown .time-columns .time-column::-webkit-scrollbar{width:6px;height:6px}nv-fieldtime .time-dropdown .time-columns .time-column::-webkit-scrollbar-track{background-color:var(--color-level-10-background);border-radius:9999px}nv-fieldtime .time-dropdown .time-columns .time-column::-webkit-scrollbar-thumb{background-color:var(--color-gray-200);border-radius:9999px}nv-fieldtime .time-dropdown .time-columns .time-column:last-child{border-right:none}nv-fieldtime .time-dropdown .time-columns .time-column .time-option{padding:var(--calendar-padding);text-align:center;cursor:pointer;transition:background-color 0.2s;border-radius:var(--list-dropdown-item-radius);color:var(--components-calendar-cell-text);font-size:var(--font-size-sm);display:flex;justify-content:center;align-items:center}nv-fieldtime .time-dropdown .time-columns .time-column .time-option:hover{background-color:var(--components-calendar-cell-background-hover);color:var(--components-calendar-cell-text-hover)}nv-fieldtime .time-dropdown .time-columns .time-column .time-option:focus,nv-fieldtime .time-dropdown .time-columns .time-column .time-option:focus-within{background-color:var(--components-calendar-cell-background-hover);color:var(--components-calendar-cell-text-hover)}nv-fieldtime .time-dropdown .time-columns .time-column .time-option.selected{background-color:var(--components-calendar-cell-background-selected);color:var(--components-calendar-cell-text-selected)}nv-fieldtime .time-dropdown .time-columns .time-column .time-option.highlighted{background-color:var(--components-calendar-cell-background-hover);color:var(--components-menu-contextual-item-content-hover)}';const d=a;const c=class{constructor(i){e(this,i);this.valueChanged=t(this,"valueChanged",7);this.inputElements={};this.inputZeroAdded={};this.typeFocused=o.Hours;this.hours="00";this.minutes="00";this.seconds="00";this.inputId=l();this.readonly=false;this.disabled=false;this.required=false;this.success=false;this.error=false;this.format="HH:mm:ss";this.open=false;this.step=6e4;this.autofocus=false}handleOpenChanged(e){e.stopPropagation();this.open=e.detail}handleKeyDown(e){var t,i,s,r;if(!this.open){if(e.key==="ArrowDown"){this.open=true;e.preventDefault();return}return}if(!this.popoverElement){console.warn("nv-fieldtime -> Popover element is not defined");return}const n=`.time-column.time-column-${this.typeFocused} div`;const l=Array.from(this.el.querySelectorAll(n));if(l.length===0){console.warn("nv-fieldtime -> No dropdown items found to navigate");return}let a=l.findIndex((e=>e.classList.contains("highlighted")));if(e.key==="ArrowDown"){e.preventDefault();a=(a+1)%l.length;this.updateHighlightedItem(l,a)}else if(e.key==="ArrowUp"){e.preventDefault();a=(a-1+l.length)%l.length;this.updateHighlightedItem(l,a)}else if(e.key==="Enter"&&a>=0){e.preventDefault();l[a].click();if(this.typeFocused===o.Hours){(t=this.inputElements[o.Minutes])===null||t===void 0?void 0:t.focus();(i=this.inputElements[o.Minutes])===null||i===void 0?void 0:i.select()}else if(this.typeFocused===o.Minutes||this.typeFocused===o.Seconds){(s=this.inputElements[o.Seconds])===null||s===void 0?void 0:s.focus();(r=this.inputElements[o.Seconds])===null||r===void 0?void 0:r.select()}}else if(e.key==="Escape"){e.preventDefault();if(this.inputElements[o.Hours]){this.inputElements[o.Hours].blur()}}}handleValueChange(e){this.valueChanged.emit(e)}handleInputChange(e,t){const i=e.target;const s=i.value.replace(/[^0-9]/g,"");switch(t){case o.Hours:this.handleHoursChange(s,t);break;case o.Minutes:this.handleMinutesChange(s,t);break;case o.Seconds:this.handleSecondsChange(s,t);break}const r=this.reconstructTime();this.value=r}handleHoursChange(e,t){var i,s,r,n;const l=this.format.startsWith("HH");const a=l?24:12;let d=false;const c=this.parseHour(this.max,this.format)||(this.format.startsWith("hh")?"12":"24");const f=this.parseHour(this.min,this.format)||"00";if(e.length===1){this.inputZeroAdded[t]=true;const i=e.padStart(2,"0");if(c&&parseInt(i,10)>parseInt(c,10)){if(f&&parseInt(i,10)<parseInt(f,10)){this.hours=f}else{this.hours="00";d=true}}else{if(f&&parseInt(i,10)<parseInt(f,10)){this.hours=f}else{this.hours=i}}}else if(this.inputZeroAdded[t]){this.inputZeroAdded[t]=false;const i=e.slice(1,3).padStart(2,"0");const s=parseInt(i,10)||0;if(s>=a){if(f&&parseInt(i,10)<parseInt(f,10)){this.hours=f}else{this.hours="00";d=true}}else{if(c&&parseInt(i,10)>parseInt(c,10)){if(f&&parseInt(i,10)<parseInt(f,10)){this.hours=f}else{this.hours="00";d=true}}else{if(f&&parseInt(i,10)<parseInt(f,10)){this.hours=f}else{this.hours=i}}}}else if(e.length>2){if(e.startsWith("00")){this.inputZeroAdded[t]=true;const i=e.slice(1,3).padStart(2,"0");if(c&&parseInt(i,10)>parseInt(c,10)){if(f&&parseInt(i,10)<parseInt(f,10)){this.hours=f}else{this.hours="00";d=true}}else{if(f&&parseInt(i,10)<parseInt(f,10)){this.hours=f}else{this.hours=i}}}else{const t=e.slice(1,3).padStart(2,"0");const i=parseInt(t,10)||0;if(i>=a){if(f&&parseInt(t,10)<parseInt(f,10)){this.hours=f;d=true}else{this.hours="00";d=true}}else{if(c&&i>parseInt(c,10)){if(f&&parseInt(t,10)<parseInt(f,10)){this.hours=f}else{this.hours="00";d=true}}else{if(f&&i<parseInt(f,10)){this.hours=f}else{this.hours=i.toString()}}}}}else{const t=e.padStart(2,"0");const i=parseInt(t,10)||0;if(i>=a){if(f&&parseInt(t,10)<parseInt(f,10)){this.hours=f}else{this.hours="00";d=true}}else{if(c&&i>parseInt(c,10)){this.hours="00";d=true}else{if(f&&i<parseInt(f,10)){this.hours=f}else{this.hours=i.toString()}}}}if(this.hours.length===2&&!this.inputZeroAdded[t]&&!d){(i=this.inputElements[o.Minutes])===null||i===void 0?void 0:i.focus();(s=this.inputElements[o.Minutes])===null||s===void 0?void 0:s.select()}else if(d){(r=this.inputElements[o.Hours])===null||r===void 0?void 0:r.focus();(n=this.inputElements[o.Hours])===null||n===void 0?void 0:n.select()}}handleMinutesChange(e,t){var i,s,r,n,l,a;const d=60;let c=false;const f=(i=this.parseMinute(this.min))!==null&&i!==void 0?i:0;const h=(s=this.parseMinute(this.max))!==null&&s!==void 0?s:59;if(e.length===1){this.inputZeroAdded[t]=true;const i=e.padStart(2,"0");if(h&&parseInt(i,10)>h){if(f&&parseInt(i,10)<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes="00";c=true}}else{if(f&&parseInt(i,10)<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes=i}}}else if(this.inputZeroAdded[t]){this.inputZeroAdded[t]=false;const i=e.slice(1,3).padStart(2,"0");const s=parseInt(i,10)||0;if(s>=d){if(f&&parseInt(i,10)<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes="00";c=true}}else{if(h&&s>h){if(f&&parseInt(i,10)<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes="00";c=true}}else{if(f&&s<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes=i}}}}else if(e.length>2){if(e.startsWith("00")){this.inputZeroAdded[t]=true;const i=e.slice(1,3).padStart(2,"0");if(h&&parseInt(i,10)>h){if(f&&parseInt(i,10)<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes="00";c=true}}else{if(f&&parseInt(i,10)<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes=i}}}else{const t=e.slice(1,3).padStart(2,"0");const i=parseInt(t,10)||0;if(i>=d){if(f&&parseInt(t,10)<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes="00";c=true}}else{if(h&&i>h){if(f&&parseInt(t,10)<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes="00";c=true}}else{if(f&&i<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes=i.toString()}}}}}else{const t=e.padStart(2,"0");const i=parseInt(t,10)||0;if(i>=d){if(f&&parseInt(t,10)<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes="00";c=true}}else{if(h&&i>h){if(f&&parseInt(t,10)<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes="00";c=true}}else{if(f&&i<f){this.minutes=f.toString().padStart(2,"0")}else{this.minutes=i.toString()}}}}if(this.minutes.length===2&&!this.inputZeroAdded[t]&&!c){(r=this.inputElements[o.Seconds])===null||r===void 0?void 0:r.focus();(n=this.inputElements[o.Seconds])===null||n===void 0?void 0:n.select()}else if(c){(l=this.inputElements[o.Minutes])===null||l===void 0?void 0:l.focus();(a=this.inputElements[o.Minutes])===null||a===void 0?void 0:a.select()}}handleSecondsChange(e,t){var i,s,r,n;const l=60;let a=false;const d=(i=this.parseSecond(this.min))!==null&&i!==void 0?i:0;const c=(s=this.parseSecond(this.max))!==null&&s!==void 0?s:59;if(e.length===1){this.inputZeroAdded[t]=true;const i=e.padStart(2,"0");if(c&&parseInt(i,10)>c){if(d&&parseInt(i,10)<d){this.seconds=d.toString().padStart(2,"0")}else{this.seconds="00";a=true}}else{if(d&&parseInt(i,10)<d){this.seconds=d.toString().padStart(2,"0")}else{this.seconds=i}}}else if(this.inputZeroAdded[t]){this.inputZeroAdded[t]=false;const i=e.slice(1,3).padStart(2,"0");const s=parseInt(i,10)||0;if(s>=l){if(d&&parseInt(i,10)<d){this.seconds=d.toString().padStart(2,"0")}else{this.seconds="00";a=true}}else{if(c&&s>c){if(d&&parseInt(i,10)<d){this.seconds=d.toString().padStart(2,"0")}else{this.seconds="00";a=true}}else{if(d&&s<d){this.seconds=d.toString().padStart(2,"0")}else{this.seconds=i}}}}else if(e.length>2){const t=e.slice(1,3).padStart(2,"0");const i=parseInt(t,10)||0;if(i>=l){if(d&&parseInt(t,10)<d){this.seconds=d.toString().padStart(2,"0")}else{this.seconds="00";a=true}}else{if(c&&i>c){if(d&&parseInt(t,10)<d){this.seconds=d.toString().padStart(2,"0")}else{this.seconds="00";a=true}}else{if(d&&i<d){this.seconds=d.toString().padStart(2,"0")}else{this.seconds=i.toString()}}}}else{const t=e.padStart(2,"0");const i=parseInt(t,10)||0;if(i>=l){if(d&&parseInt(t,10)<d){this.seconds=d.toString().padStart(2,"0")}else{this.seconds="00";a=true}}else{if(c&&i>c){if(d&&parseInt(t,10)<d){this.seconds=d.toString().padStart(2,"0")}else{this.seconds="00";a=true}}else{if(d&&i<d){this.seconds=d.toString().padStart(2,"0")}else{this.seconds=i.toString()}}}}if(a){(r=this.inputElements[o.Seconds])===null||r===void 0?void 0:r.focus();(n=this.inputElements[o.Seconds])===null||n===void 0?void 0:n.select()}}parseTime(e){if(!e){return}const t=e.replace(/[^0-9]/g,"").padStart(6,"0");const i=t.slice(0,2);const s=t.slice(2,4);const r=t.slice(4,6);const n=this.parseHour(this.min,this.format)||i;const o=this.parseMinute(this.min)||s;const l=this.parseSecond(this.min)||r;this.hours=n.padStart(2,"0");this.minutes=o.toString().padStart(2,"0");this.seconds=l.toString().padStart(2,"0")}reconstructTime(){if(this.format==="HH"||this.format==="hh"){return this.hours}else if(this.format==="HH:mm"||this.format==="hh:mm"){return`${this.hours}:${this.minutes}`}else if(this.format==="HH:mm:ss"||this.format==="hh:mm:ss"){return`${this.hours}:${this.minutes}:${this.seconds}`}else{return`${this.hours}:${this.minutes}:${this.seconds}`}}handleFocus(e){var t,i,s,r;if(this.readonly||this.disabled){return}if(!this.open){this.open=true}if(((t=this.inputElements[e])===null||t===void 0?void 0:t.value.length)===0||((i=this.inputElements[e])===null||i===void 0?void 0:i.value)==="00"){(s=this.inputElements[e])===null||s===void 0?void 0:s.focus();(r=this.inputElements[e])===null||r===void 0?void 0:r.select()}this.typeFocused=e}HandleDropdownIconClick(){var e,t,i,s,r,n;if(this.disabled||this.readonly){return}if(this.open&&this.inputElements[o.Hours]){this.open=false}else if(this.open&&this.inputElements[o.Minutes]){this.open=false}else if(this.open&&this.inputElements[o.Seconds]){this.open=false}else if(!this.open&&this.inputElements[o.Hours]){(e=this.inputElements[o.Hours])===null||e===void 0?void 0:e.focus();(t=this.inputElements[o.Hours])===null||t===void 0?void 0:t.select()}else if(!this.open&&this.inputElements[o.Minutes]){(i=this.inputElements[o.Minutes])===null||i===void 0?void 0:i.focus();(s=this.inputElements[o.Minutes])===null||s===void 0?void 0:s.select()}else if(!this.open&&this.inputElements[o.Seconds]){(r=this.inputElements[o.Seconds])===null||r===void 0?void 0:r.focus();(n=this.inputElements[o.Seconds])===null||n===void 0?void 0:n.select()}else{console.warn("nv-fieldtime -> No input elements found to focus or to blur")}}updateHighlightedItem(e,t){e.forEach(((e,i)=>{if(i===t){e.classList.add("highlighted");e.setAttribute("tabindex","0");e.focus();e.scrollIntoView({block:"nearest"})}else{e.classList.remove("highlighted");e.setAttribute("tabindex","-1")}}))}handleTimeOptionClick(e,t){const i=parseInt(e.target.textContent||"0",10);if(t===o.Hours){this.hours=i.toString().padStart(2,"0")}else if(t===o.Minutes){this.minutes=i.toString().padStart(2,"0")}else if(t===o.Seconds){this.seconds=i.toString().padStart(2,"0")}const s=this.reconstructTime();this.value=s}handleInputBlur(){setTimeout((()=>{if(!this.el.contains(document.activeElement)){if(this.open){this.open=false}}}),150)}handleClickOutside(e){const t=e.target;if(this.el.contains(t)||Object.values(this.inputElements).some((e=>e.contains(t)))){return}if(this.open){this.open=false}}handleScroll(e,t){const i=e.target;const s=i.scrollTop;const r=i.clientHeight;const n=i.scrollHeight;const o=40;const l=this.generateTimeOptions(t);const a=l.length*o;if(s+r>=n-o||s<=0){i.scrollTop=a}}generateTimeOptions(e){const t=this.step/1e3;if(t===0){return["00"]}switch(e){case o.Hours:return this.generateHourOptions(t);case o.Minutes:return this.generateMinuteOptions(t);case o.Seconds:return this.generateSecondOptions(t);default:return[]}}generateHourOptions(e){const t=Math.max(1,Math.floor(e/3600));const i=this.parseHour(this.max,this.format)||(this.format.startsWith("hh")?"12":"24");const s=this.parseHour(this.min,this.format)||"00";const r=parseInt(i,10);const n=parseInt(s,10);const o=[];for(let e=n;e<r;e+=t){o.push(e.toString().padStart(2,"0"))}return o}parseHour(e,t){if(!e)return null;const[i]=e.split(":");const s=parseInt(i,10);if(isNaN(s))return null;if(t.startsWith("hh"))return s>0&&s<=12?i.padStart(2,"0"):null;return s>=0&&s<=24?i.padStart(2,"0"):null}generateMinuteOptions(e){var t,i;const s=Math.max(1,Math.floor(e%3600/60));const r=(t=this.parseMinute(this.min))!==null&&t!==void 0?t:0;const n=(i=this.parseMinute(this.max))!==null&&i!==void 0?i:59;if(r===0&&n===0)return["00"];const o=[];for(let e=r;e<=n;e+=s){o.push(e.toString().padStart(2,"0"))}return o}parseMinute(e){if(!e)return null;const t=e.split(":");if(t.length<2)return null;const i=parseInt(t[1],10);return isNaN(i)||i<0||i>=60?null:i}generateSecondOptions(e){var t,i;const s=Math.max(1,e%60);const r=(t=this.parseSecond(this.min))!==null&&t!==void 0?t:0;const n=(i=this.parseSecond(this.max))!==null&&i!==void 0?i:59;if(r===0&&n===0)return["00"];const o=[];for(let e=r;e<=n;e+=s){o.push(e.toString().padStart(2,"0"))}return o}parseSecond(e){if(!e)return null;const t=e.split(":");if(t.length<3)return null;const i=parseInt(t[2],10);return isNaN(i)||i<0||i>=60?null:i}generateInfiniteTimeOptions(e){const t=this.generateTimeOptions(e);const i=t.length;const s=Math.ceil(300/i);return Array(s).fill(t).flat()}getCurrentTime(){const e=new Date;return e.toLocaleTimeString()}updateColumnHighlight(e,t){const i=Array.from(this.el.querySelectorAll(e));const s=i.findIndex((e=>e.textContent===t));this.updateHighlightedItem(i,s)}handleHostClick(e){var t,i;if(this.disabled||this.readonly){return}const s=e.target;if(s.closest("nv-iconbutton")){return}if(!this.open){if(this.inputElements){(t=this.inputElements[o.Hours])===null||t===void 0?void 0:t.focus();(i=this.inputElements[o.Hours])===null||i===void 0?void 0:i.select()}e.preventDefault()}}componentWillLoad(){document.addEventListener("click",this.handleClickOutside.bind(this));if(this.value){this.parseTime(this.value)}else{const e=this.parseHour(this.min,this.format)||"00";const t=this.parseMinute(this.min)||0;const i=this.parseSecond(this.min)||0;this.hours=e.padStart(2,"0");this.minutes=t.toString().padStart(2,"0");this.seconds=i.toString().padStart(2,"0")}}connectedCallback(){document.addEventListener("click",this.handleClickOutside.bind(this))}disconnectedCallback(){document.removeEventListener("click",this.handleClickOutside.bind(this))}componentDidLoad(){if(!this.value){const e=this.getCurrentTime();let[t,i,s]=e.split(":");let r,n;if(s.includes(" ")){[r,n]=s.split(" ")}else{r=s}let o=parseInt(t,10);if(n){if(n==="PM"&&o<12){o+=12}else if(n==="AM"&&o===12){o=0}}if(this.format.startsWith("hh")){if(o===0){t="12"}else if(o>12){t=(o-12).toString()}else{t=o.toString()}}else{t=o.toString()}t=t.padStart(2,"0");i=i.padStart(2,"0");r=r.padStart(2,"0");const l=`.time-column.time-column-hours div`;this.updateColumnHighlight(l,t);const a=`.time-column.time-column-minutes div`;this.updateColumnHighlight(a,i);const d=`.time-column.time-column-seconds div`;this.updateColumnHighlight(d,r)}}RenderTimeOptionsColumn(e){return i("div",{class:`time-column time-column-${e}`,onScroll:t=>this.handleScroll(t,e)},this.generateInfiniteTimeOptions(e).map(((t,s)=>i("div",{class:{"time-option":true,selected:e===o.Hours&&t===this.hours||e===o.Minutes&&t===this.minutes||e===o.Seconds&&t===this.seconds},key:`${t}-${s}`,onClick:t=>this.handleTimeOptionClick(t,e)},t))))}render(){return i(s,{key:"a960e7daf8d9a323a55b0f248dd24f8e94321161",onclick:e=>this.handleHostClick(e)},(this.label||this.el.querySelector('[slot="label"]'))&&i("label",{key:"23c78f159cb32ef76d0d8b5a1171246c9c69fdb7",htmlFor:this.inputId},i("slot",{key:"70b2361b44414dba4ca91b487a7b04872cc0d75d",name:"label"},this.label)),i("nv-popover",{key:"80de55aa7eb0c165ed6871cb0ac6a5aec9046769",ref:e=>this.popoverElement=e,triggerMode:"controlled",placement:"bottom-start",open:this.open},i("div",{key:"fcd670c6dd32e6687540ddbdaefc2808898a459f",class:"input-wrapper",slot:"trigger"},i("slot",{key:"cea8867cee99035e97bc9ad40a7f20cf1091f415",name:"before-input"}),i("div",{key:"b68a1a7477baaa3fbf39182a36fe4a693e29a688",class:"input-container"},i("slot",{key:"3bb50bb3ad0207ded63bddfff6b5c5afda7ddfd4",name:"leading-input"}),n(this.format,"HH")&&[i("input",{key:"236b3a8067f50c443a117e6b3e8e4b882a84eb01",ref:e=>this.inputElements[o.Hours]=e,type:"number",autofocus:this.autofocus,class:"time-input",pattern:"[0-9]*",maxlength:"3",value:this.hours,onInput:e=>this.handleInputChange(e,o.Hours),placeholder:this.format.includes("hh")?"hh":"HH",inputMode:"numeric",onFocus:()=>this.handleFocus(o.Hours),name:this.name?`${o.Hours}-${this.name}`:o.Hours,id:this.inputId,readonly:this.readonly,disabled:this.disabled,required:this.required,onKeyDown:e=>this.handleKeyDown(e),onBlur:()=>this.handleInputBlur()})],this.format.includes("mm")&&[i("span",{key:"2440acab80a0d91ebe758f5a329ac5d805a18f9a"},":"),i("input",{key:"72bc71a8bce65be766c899738745d85da7ef3530",ref:e=>this.inputElements[o.Minutes]=e,type:"number",autofocus:this.autofocus,class:"time-input",pattern:"[0-9]*",maxlength:"3",value:this.minutes,onInput:e=>this.handleInputChange(e,o.Minutes),placeholder:"mm",inputMode:"numeric",onFocus:()=>this.handleFocus(o.Minutes),name:this.name?`${o.Minutes}-${this.name}`:o.Minutes,id:`${this.inputId}-minutes`,readonly:this.readonly,disabled:this.disabled,required:this.required,onKeyDown:e=>this.handleKeyDown(e),onBlur:()=>this.handleInputBlur()})],this.format.includes("ss")&&[i("span",{key:"0afdff59b999c346b455ed7408332d087ae48b12"},":"),i("input",{key:"0ecf4b18af18b6184e0ccdd00ddea561ee403195",ref:e=>this.inputElements[o.Seconds]=e,type:"number",autofocus:this.autofocus,class:"time-input",pattern:"[0-9]*",maxlength:"3",value:this.seconds,onInput:e=>this.handleInputChange(e,o.Seconds),placeholder:"ss",inputMode:"numeric",onFocus:()=>this.handleFocus(o.Seconds),name:this.name?`${o.Seconds}-${this.name}`:o.Seconds,id:`${this.inputId}-seconds`,readonly:this.readonly,disabled:this.disabled,required:this.required,onKeyDown:e=>this.handleKeyDown(e),onBlur:()=>this.handleInputBlur()})],i("nv-iconbutton",{key:"2d3d19d683d85110df8aab9d7c70fb377b189381",name:"clock",size:"md",emphasis:"lower","aria-label":this.open?"Hide time picker":"Show time picker","aria-pressed":this.open.toString(),onClick:()=>this.HandleDropdownIconClick()}),this.error&&i("nv-icon",{key:"8b49cb73821fea8926ede8406019fa68baa8500e",name:"alert-circle",class:"validation",size:"sm"}),this.success&&i("nv-icon",{key:"372b8e95455c269a988257f2504fc24c680d7f4b",name:"circle-check",class:"validation",size:"sm"})),i("slot",{key:"9e23fd13862e6218cd7213729b3e165ae74fe2eb",name:"after-input"})),i("div",{key:"c5b99d58c96a055ea8aeade81fb5d75490421716",class:"time-dropdown",slot:"content"},i("div",{key:"2bcee9fa41574db70850445bba4d4041c9471a46",class:"time-columns"},n(this.format,"HH")&&this.RenderTimeOptionsColumn(o.Hours),this.format.includes("mm")&&this.RenderTimeOptionsColumn(o.Minutes),this.format.includes("ss")&&this.RenderTimeOptionsColumn(o.Seconds)))),(this.description||this.el.querySelector('[slot="description"]'))&&i("div",{key:"822534262bb1769294be95c1a240a2753d556e1c",class:"description"},i("slot",{key:"62489b82bee33610b55dfa4c2f9997b5d68b6bfe",name:"description"},this.description)),(this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&i("div",{key:"9cedb395a09c4243c7c714574ad8d41b6a836fbb",hidden:!this.error,class:"error-description"},i("slot",{key:"7b8802739ad74756f2843dd8807afe6abda92831",name:"error-description"},this.errorDescription)))}static get formAssociated(){return true}get el(){return r(this)}static get watchers(){return{value:["handleValueChange"]}}};c.style=d;export{c as nv_fieldtime};
2
- //# sourceMappingURL=p-225a05bf.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["nvFieldtimeCss","NvFieldtimeStyle0","NvFieldtime","constructor","hostRef","this","inputElements","inputZeroAdded","typeFocused","TimeType","Hours","hours","minutes","seconds","inputId","uuidv4","readonly","disabled","required","success","error","format","open","step","autofocus","handleOpenChanged","event","stopPropagation","detail","handleKeyDown","key","preventDefault","popoverElement","console","warn","stringSelector","items","Array","from","el","querySelectorAll","length","currentIndex","findIndex","item","classList","contains","updateHighlightedItem","click","_a","Minutes","focus","_b","select","Seconds","_c","_d","blur","handleValueChange","newValue","valueChanged","emit","handleInputChange","e","type","inputElement","target","inputValue","value","replace","handleHoursChange","handleMinutesChange","handleSecondsChange","currentValue","reconstructTime","isHHFormat","startsWith","maxHours","reputedToZero","maxHour","parseHour","max","minHour","min","newInputValue","padStart","parseInt","slice","parsedNewInputValue","toString","maxMinutes","minMinute","parseMinute","maxMinute","_e","_f","maxSeconds","minSecond","parseSecond","maxSecond","parseTime","timeString","cleanedTime","hour","minute","second","handleFocus","HandleDropdownIconClick","index","forEach","i","add","setAttribute","scrollIntoView","block","remove","handleTimeOptionClick","option","textContent","handleInputBlur","setTimeout","document","activeElement","handleClickOutside","Object","values","some","input","handleScroll","scrollTop","containerHeight","clientHeight","scrollHeight","itemHeight","options","generateTimeOptions","singleSetHeight","stepInSeconds","generateHourOptions","generateMinuteOptions","generateSecondOptions","hourStep","Math","floor","maxHourValue","minHourValue","push","hourStr","split","isNaN","minuteStep","parts","secondStep","generateInfiniteTimeOptions","totalOptions","repetitions","ceil","fill","flat","getCurrentTime","currentTime","Date","toLocaleTimeString","updateColumnHighlight","selector","x","handleHostClick","targetElement","closest","componentWillLoad","addEventListener","bind","connectedCallback","disconnectedCallback","removeEventListener","componentDidLoad","secondAmPm","amPm","includes","parsedHour","hourSelector","minuteSelector","secondSelector","RenderTimeOptionsColumn","h","class","onScroll","map","selected","onClick","render","Host","onclick","label","querySelector","htmlFor","name","ref","triggerMode","placement","slot","startsWithIgnoreCase","pattern","maxlength","onInput","placeholder","inputMode","onFocus","id","onKeyDown","onBlur","size","emphasis","description","errorDescription","hidden"],"sources":["src/components/nv-fieldtime/styles/nv-fieldtime.scss?tag=nv-fieldtime","src/components/nv-fieldtime/nv-fieldtime.tsx"],"sourcesContent":["@use './mixins' as *;\n@import '../../../styles/form-field';\n\nnv-fieldtime {\n @include form-field-variables();\n @include form-field-root();\n\n &[readonly]:not([readonly='false']) {\n @include form-field-readonly-variables();\n }\n\n &[error]:not([error='false']) {\n @include form-field-error-variables();\n }\n\n &[success]:not([success='false']) {\n @include form-field-success-variables();\n }\n\n &[required]:not([required='false']) label {\n @include form-field-label-required();\n }\n\n label {\n @include form-field-label();\n }\n\n nv-popover {\n @include apply-popover-style;\n }\n\n .input-wrapper {\n @include form-field-input-wrapper();\n width: 100%;\n }\n\n .input-container {\n @include form-field-input-container();\n @include flex-container(flex-start);\n position: relative;\n width: 100%;\n min-height: 40px;\n gap: 0;\n padding-left: var(--form-field-padding-x);\n\n input.time-input {\n @include form-field-input();\n @include apply-input-styles();\n }\n\n span {\n width: 100%;\n text-align: center;\n min-width: 24px;\n flex: 0 0 24px;\n padding: 0 4px;\n color: var(--components-form-field-content-text);\n }\n\n > nv-iconbutton {\n @include form-field-action();\n margin-left: auto;\n }\n\n nv-icon.validation {\n @include form-field-icon();\n @include icon-position(50px);\n }\n\n &:focus,\n &:focus-within {\n @include apply-focus-styles;\n }\n }\n\n .description {\n @include form-field-description();\n }\n\n .error-description {\n @include form-field-error-description();\n }\n\n hr {\n border: none;\n border-top: 1px solid var(--dropdown-divider-color, #ccc);\n margin: 0.5rem 0;\n }\n\n .time-dropdown {\n width: 100%;\n\n .time-columns {\n @include flex-container;\n\n .time-column {\n flex: 1;\n text-align: center;\n @include scrollable(200px);\n scrollbar-gutter: auto; // Prevents scrollbar from shifting content\n\n &:last-child {\n border-right: none;\n }\n\n .time-option {\n padding: var(--calendar-padding);\n text-align: center;\n cursor: pointer;\n transition: background-color 0.2s;\n //height: 40px;\n border-radius: var(--list-dropdown-item-radius);\n color: var(--components-calendar-cell-text);\n font-size: var(--font-size-sm);\n @include flex-container(center);\n\n &:hover {\n background-color: var(\n --components-calendar-cell-background-hover\n );\n color: var(--components-calendar-cell-text-hover);\n }\n\n @include state-focus(\n var(--components-calendar-cell-background-hover),\n var(--components-calendar-cell-text-hover)\n );\n\n &.selected {\n background-color: var(\n --components-calendar-cell-background-selected\n );\n color: var(--components-calendar-cell-text-selected);\n \n }\n\n &.highlighted {\n background-color: var(\n --components-calendar-cell-background-hover\n );\n color: var(--components-menu-contextual-item-content-hover);\n }\n }\n }\n }\n }\n}\n","/* eslint-disable react/jsx-no-bind */\nimport {\n Component,\n Host,\n h,\n State,\n Element,\n Event,\n EventEmitter,\n Prop,\n Watch,\n Listen,\n} from '@stencil/core';\nimport { v4 as uuidv4 } from 'uuid';\nimport { startsWithIgnoreCase } from '../../utils/string.utils';\nimport { TimeType } from '../../utils/constants';\n\n/**\n * @slot label - Content to be placed as the label, will override the label prop.\n * @slot before-input - Content to be placed before the input text, outside the input container.\n * @slot after-input - Content to be placed after the input text, outside the input container.\n * @slot leading-input - Content to be placed before the input text, within the input container.\n * @slot error-description - Content to be placed as the error description, will override the errorDescription prop.\n * @slot description - Content to be placed as the description, will override the description prop.\n */\n@Component({\n tag: 'nv-fieldtime',\n styleUrl: 'styles/nv-fieldtime.scss',\n shadow: false,\n formAssociated: true,\n})\nexport class NvFieldtime {\n @Element() el: HTMLNvFieldtimeElement;\n\n // Input elements for hours, minutes, and seconds\n private inputElements: { [key: string]: HTMLInputElement } = {};\n\n private inputZeroAdded: { [key: string]: boolean } = {};\n\n private popoverElement!: HTMLNvPopoverElement;\n\n private typeFocused: TimeType = TimeType.Hours;\n\n /****************************************************************************/\n //#region STATES\n\n @State()\n hours: string = '00';\n @State()\n minutes: string = '00';\n @State()\n seconds: string = '00';\n\n //#endregion STATES\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * The current value of the time input in the specified format.\n */\n @Prop({ reflect: true, mutable: true })\n value: string;\n\n /**\n * Lets you define the text that explains what users should enter in the time\n * input field. It's a crucial element for making forms clear and\n * user-friendly.\n */\n @Prop({ reflect: true })\n readonly label: string;\n\n /**\n * Sets the ID for the input element and the for attribute of the associated\n * label. If no ID is provided, a random one will be automatically generated\n * to ensure unique identification, facilitating proper label association and\n * accessibility.\n */\n @Prop({ reflect: true })\n readonly inputId: string = uuidv4();\n\n /**\n * Display the input field's content without allowing users to change it.\n * Users can still click on it, select, and copy the text, but they won't be\n * able to type or delete anything.\n */\n @Prop({ reflect: true })\n readonly readonly: boolean = false;\n\n /**\n * The disabled prop lets you turn off the input field so that users can't\n * interact with it. When disabled, the field is grayed out and won't respond to\n * clicks or touches.\n */\n @Prop({ reflect: true })\n readonly disabled: boolean = false;\n\n /**\n * Marks the input field as required, ensuring that the user must fill it out\n * before submitting the form.\n */\n @Prop({ reflect: true })\n readonly required: boolean = false;\n\n /**\n * Defines the name attribute of the input field, which is crucial for form\n * submission. This value is used as the key in the key-value pair sent to\n * the server, representing the input's data in form submissions.\n */\n @Prop({ reflect: true })\n readonly name: string;\n\n /**\n * Changes the input field’s appearance to indicate successful input or\n * validation.\n */\n @Prop({ reflect: true })\n readonly success: boolean = false;\n\n /**\n * Alters the input field's appearance to indicate an error, helping users\n * identify fields that need correction.\n * @validator error\n */\n @Prop({ reflect: true })\n readonly error: boolean = false;\n\n /**\n * A description that appears when there is an error related to the time\n * field.\n * @validator message\n */\n @Prop({ reflect: true })\n readonly errorDescription: string;\n\n /**\n * Specifies the time format to be used.\n * Available formats:\n * - HH: 24-hour format (00-23)\n * - HH:mm: 24-hour format with minutes (00:00-23:59)\n * - HH:mm:ss: 24-hour format with minutes and seconds (00:00:00-23:59:59)\n * - hh: 12-hour format (01-12)\n * - hh:mm: 12-hour format with minutes (01:00-12:59)\n * - hh:mm:ss: 12-hour format with minutes and seconds (01:00:00-12:59:59)\n */\n @Prop({ reflect: true })\n readonly format: 'HH' | 'HH:mm' | 'HH:mm:ss' | 'hh' | 'hh:mm' | 'hh:mm:ss' =\n 'HH:mm:ss';\n\n /**\n * Add helpful hints or extra information under the time input field. This is\n * where you can clarify what users should enter or provide additional\n * instructions.\n */\n @Prop({ reflect: true })\n readonly description: string;\n\n /**\n * State of the time picker popover.\n */\n @Prop({ reflect: true, mutable: true })\n open: boolean = false;\n\n /**\n * The step interval in milliseconds for time increments/decrements.\n * This affects how the time changes when using arrow keys or spinners.\n */\n @Prop({ reflect: true })\n readonly step: number = 60000; // In secondes\n\n /**\n * The maximum time value that can be selected.\n */\n @Prop({ reflect: true })\n readonly max: string;\n\n /**\n * The minimum time value that can be selected.\n */\n @Prop({ reflect: true })\n readonly min: string;\n\n /**\n * Applies focus to the input field as soon as the component is mounted. This\n * is equivalent to setting the native autofocus attribute on an <input>\n * element.\n */\n @Prop({ reflect: true })\n // eslint-disable-next-line @stencil-community/reserved-member-names\n readonly autofocus: boolean = false;\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region EVENTS\n\n /**\n * Emit an event when the time value changes.\n * The event detail contains the new time value (HH, HH:mm or HH:mm:ss).\n */\n @Event()\n valueChanged: EventEmitter<string>;\n\n //#endregion EVENTS\n /****************************************************************************/\n //#region LISTENERS\n\n @Listen('openChanged')\n handleOpenChanged(event: CustomEvent<boolean>) {\n // Stop propagation to prevent the event from affecting parent components like dialogs\n event.stopPropagation();\n\n // Update `open` based on the popover state\n this.open = event.detail;\n }\n\n @Listen('keydown', { passive: false })\n handleKeyDown(event: KeyboardEvent) {\n if (!this.open) {\n if (event.key === 'ArrowDown') {\n this.open = true;\n\n event.preventDefault();\n return;\n }\n return;\n }\n\n // Verify if the popover element is defined\n if (!this.popoverElement) {\n console.warn('nv-fieldtime -> Popover element is not defined');\n return;\n }\n\n const stringSelector = `.time-column.time-column-${this.typeFocused} div`;\n const items = Array.from(\n this.el.querySelectorAll<HTMLElement>(stringSelector),\n );\n\n // Verify if there are items to navigate\n if (items.length === 0) {\n console.warn('nv-fieldtime -> No dropdown items found to navigate');\n return;\n }\n\n let currentIndex = items.findIndex(item =>\n item.classList.contains('highlighted'),\n );\n\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n currentIndex = (currentIndex + 1) % items.length;\n this.updateHighlightedItem(items, currentIndex);\n } else if (event.key === 'ArrowUp') {\n event.preventDefault();\n currentIndex = (currentIndex - 1 + items.length) % items.length;\n this.updateHighlightedItem(items, currentIndex);\n } else if (event.key === 'Enter' && currentIndex >= 0) {\n event.preventDefault();\n items[currentIndex].click();\n\n if (this.typeFocused === TimeType.Hours) {\n this.inputElements[TimeType.Minutes]?.focus();\n this.inputElements[TimeType.Minutes]?.select();\n } else if (\n this.typeFocused === TimeType.Minutes ||\n this.typeFocused === TimeType.Seconds\n ) {\n this.inputElements[TimeType.Seconds]?.focus();\n this.inputElements[TimeType.Seconds]?.select();\n }\n } else if (event.key === 'Escape') {\n event.preventDefault();\n\n if (this.inputElements[TimeType.Hours]) {\n this.inputElements[TimeType.Hours].blur();\n }\n }\n }\n\n //#endregion LISTENERS\n /****************************************************************************/\n //#region WATCHERS\n\n @Watch('value')\n handleValueChange(newValue: string) {\n this.valueChanged.emit(newValue);\n }\n\n //#endregion WATCHERS\n /****************************************************************************/\n //#region METHODS\n\n private handleInputChange(e: InputEvent, type: TimeType): void {\n const inputElement = e.target as HTMLInputElement;\n const inputValue = inputElement.value.replace(/[^0-9]/g, ''); // Only keep numeric input\n\n // Update the time value based on the type\n switch (type) {\n case TimeType.Hours:\n this.handleHoursChange(inputValue, type);\n break;\n case TimeType.Minutes:\n this.handleMinutesChange(inputValue, type);\n break;\n case TimeType.Seconds:\n this.handleSecondsChange(inputValue, type);\n break;\n }\n\n // Reconstruct time from inputs\n const currentValue = this.reconstructTime();\n\n this.value = currentValue;\n }\n\n private handleHoursChange(inputValue: string, type: TimeType): void {\n const isHHFormat = this.format.startsWith('HH');\n const maxHours = isHHFormat ? 24 : 12;\n let reputedToZero = false;\n const maxHour =\n this.parseHour(this.max, this.format) ||\n (this.format.startsWith('hh') ? '12' : '24');\n const minHour = this.parseHour(this.min, this.format) || '00';\n\n if (inputValue.length === 1) {\n this.inputZeroAdded[type] = true;\n\n const newInputValue = inputValue.padStart(2, '0');\n\n if (maxHour && parseInt(newInputValue, 10) > parseInt(maxHour, 10)) {\n if (minHour && parseInt(newInputValue, 10) < parseInt(minHour, 10)) {\n this.hours = minHour;\n } else {\n this.hours = '00';\n reputedToZero = true;\n }\n } else {\n if (minHour && parseInt(newInputValue, 10) < parseInt(minHour, 10)) {\n this.hours = minHour;\n } else {\n this.hours = newInputValue;\n }\n }\n } else if (this.inputZeroAdded[type]) {\n this.inputZeroAdded[type] = false;\n\n const newInputValue = inputValue.slice(1, 3).padStart(2, '0');\n const parsedNewInputValue = parseInt(newInputValue, 10) || 0;\n\n if (parsedNewInputValue >= maxHours) {\n if (minHour && parseInt(newInputValue, 10) < parseInt(minHour, 10)) {\n this.hours = minHour;\n } else {\n this.hours = '00';\n reputedToZero = true;\n }\n } else {\n if (maxHour && parseInt(newInputValue, 10) > parseInt(maxHour, 10)) {\n if (minHour && parseInt(newInputValue, 10) < parseInt(minHour, 10)) {\n this.hours = minHour;\n } else {\n this.hours = '00';\n reputedToZero = true;\n }\n } else {\n if (minHour && parseInt(newInputValue, 10) < parseInt(minHour, 10)) {\n this.hours = minHour;\n } else {\n this.hours = newInputValue;\n }\n }\n }\n } else if (inputValue.length > 2) {\n if (inputValue.startsWith('00')) {\n this.inputZeroAdded[type] = true;\n const newInputValue = inputValue.slice(1, 3).padStart(2, '0');\n\n if (maxHour && parseInt(newInputValue, 10) > parseInt(maxHour, 10)) {\n if (minHour && parseInt(newInputValue, 10) < parseInt(minHour, 10)) {\n this.hours = minHour;\n } else {\n this.hours = '00';\n reputedToZero = true;\n }\n } else {\n if (minHour && parseInt(newInputValue, 10) < parseInt(minHour, 10)) {\n this.hours = minHour;\n } else {\n this.hours = newInputValue;\n }\n }\n } else {\n const newInputValue = inputValue.slice(1, 3).padStart(2, '0');\n const parsedNewInputValue = parseInt(newInputValue, 10) || 0;\n\n if (parsedNewInputValue >= maxHours) {\n if (minHour && parseInt(newInputValue, 10) < parseInt(minHour, 10)) {\n this.hours = minHour;\n reputedToZero = true;\n } else {\n this.hours = '00';\n reputedToZero = true;\n }\n } else {\n if (maxHour && parsedNewInputValue > parseInt(maxHour, 10)) {\n if (\n minHour &&\n parseInt(newInputValue, 10) < parseInt(minHour, 10)\n ) {\n this.hours = minHour;\n } else {\n this.hours = '00';\n reputedToZero = true;\n }\n } else {\n if (minHour && parsedNewInputValue < parseInt(minHour, 10)) {\n this.hours = minHour;\n } else {\n this.hours = parsedNewInputValue.toString();\n }\n }\n }\n }\n } else {\n const newInputValue = inputValue.padStart(2, '0');\n const parsedNewInputValue = parseInt(newInputValue, 10) || 0;\n\n if (parsedNewInputValue >= maxHours) {\n if (minHour && parseInt(newInputValue, 10) < parseInt(minHour, 10)) {\n this.hours = minHour;\n } else {\n this.hours = '00';\n reputedToZero = true;\n }\n } else {\n if (maxHour && parsedNewInputValue > parseInt(maxHour, 10)) {\n this.hours = '00';\n reputedToZero = true;\n } else {\n if (minHour && parsedNewInputValue < parseInt(minHour, 10)) {\n this.hours = minHour;\n } else {\n this.hours = parsedNewInputValue.toString();\n }\n }\n }\n }\n\n if (\n this.hours.length === 2 &&\n !this.inputZeroAdded[type] &&\n !reputedToZero\n ) {\n this.inputElements[TimeType.Minutes]?.focus();\n this.inputElements[TimeType.Minutes]?.select();\n } else if (reputedToZero) {\n this.inputElements[TimeType.Hours]?.focus();\n this.inputElements[TimeType.Hours]?.select();\n }\n }\n\n private handleMinutesChange(inputValue: string, type: TimeType): void {\n const maxMinutes = 60;\n let reputedToZero = false;\n const minMinute = this.parseMinute(this.min) ?? 0;\n const maxMinute = this.parseMinute(this.max) ?? 59;\n\n if (inputValue.length === 1) {\n this.inputZeroAdded[type] = true;\n\n const newInputValue = inputValue.padStart(2, '0');\n\n if (maxMinute && parseInt(newInputValue, 10) > maxMinute) {\n if (minMinute && parseInt(newInputValue, 10) < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = '00';\n reputedToZero = true;\n }\n } else {\n if (minMinute && parseInt(newInputValue, 10) < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = newInputValue;\n }\n }\n } else if (this.inputZeroAdded[type]) {\n this.inputZeroAdded[type] = false;\n\n const newInputValue = inputValue.slice(1, 3).padStart(2, '0');\n const parsedNewInputValue = parseInt(newInputValue, 10) || 0;\n\n if (parsedNewInputValue >= maxMinutes) {\n if (minMinute && parseInt(newInputValue, 10) < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = '00';\n reputedToZero = true;\n }\n } else {\n if (maxMinute && parsedNewInputValue > maxMinute) {\n if (minMinute && parseInt(newInputValue, 10) < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = '00';\n reputedToZero = true;\n }\n } else {\n if (minMinute && parsedNewInputValue < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = newInputValue;\n }\n }\n }\n } else if (inputValue.length > 2) {\n if (inputValue.startsWith('00')) {\n this.inputZeroAdded[type] = true;\n const newInputValue = inputValue.slice(1, 3).padStart(2, '0');\n\n if (maxMinute && parseInt(newInputValue, 10) > maxMinute) {\n if (minMinute && parseInt(newInputValue, 10) < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = '00';\n reputedToZero = true;\n }\n } else {\n if (minMinute && parseInt(newInputValue, 10) < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = newInputValue;\n }\n }\n } else {\n const newInputValue = inputValue.slice(1, 3).padStart(2, '0');\n const parsedNewInputValue = parseInt(newInputValue, 10) || 0;\n\n if (parsedNewInputValue >= maxMinutes) {\n if (minMinute && parseInt(newInputValue, 10) < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = '00';\n reputedToZero = true;\n }\n } else {\n if (maxMinute && parsedNewInputValue > maxMinute) {\n if (minMinute && parseInt(newInputValue, 10) < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = '00';\n reputedToZero = true;\n }\n } else {\n if (minMinute && parsedNewInputValue < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = parsedNewInputValue.toString();\n }\n }\n }\n }\n } else {\n const newInputValue = inputValue.padStart(2, '0');\n const parsedNewInputValue = parseInt(newInputValue, 10) || 0;\n\n if (parsedNewInputValue >= maxMinutes) {\n if (minMinute && parseInt(newInputValue, 10) < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = '00';\n reputedToZero = true;\n }\n } else {\n if (maxMinute && parsedNewInputValue > maxMinute) {\n if (minMinute && parseInt(newInputValue, 10) < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = '00';\n reputedToZero = true;\n }\n } else {\n if (minMinute && parsedNewInputValue < minMinute) {\n this.minutes = minMinute.toString().padStart(2, '0');\n } else {\n this.minutes = parsedNewInputValue.toString();\n }\n }\n }\n }\n\n if (\n this.minutes.length === 2 &&\n !this.inputZeroAdded[type] &&\n !reputedToZero\n ) {\n this.inputElements[TimeType.Seconds]?.focus();\n this.inputElements[TimeType.Seconds]?.select();\n } else if (reputedToZero) {\n this.inputElements[TimeType.Minutes]?.focus();\n this.inputElements[TimeType.Minutes]?.select();\n }\n }\n\n private handleSecondsChange(inputValue: string, type: TimeType): void {\n const maxSeconds = 60;\n let reputedToZero = false;\n const minSecond = this.parseSecond(this.min) ?? 0;\n const maxSecond = this.parseSecond(this.max) ?? 59;\n\n if (inputValue.length === 1) {\n this.inputZeroAdded[type] = true;\n const newInputValue = inputValue.padStart(2, '0');\n\n if (maxSecond && parseInt(newInputValue, 10) > maxSecond) {\n if (minSecond && parseInt(newInputValue, 10) < minSecond) {\n this.seconds = minSecond.toString().padStart(2, '0');\n } else {\n this.seconds = '00';\n reputedToZero = true;\n }\n } else {\n if (minSecond && parseInt(newInputValue, 10) < minSecond) {\n this.seconds = minSecond.toString().padStart(2, '0');\n } else {\n this.seconds = newInputValue;\n }\n }\n } else if (this.inputZeroAdded[type]) {\n this.inputZeroAdded[type] = false;\n const newInputValue = inputValue.slice(1, 3).padStart(2, '0');\n const parsedNewInputValue = parseInt(newInputValue, 10) || 0;\n\n if (parsedNewInputValue >= maxSeconds) {\n if (minSecond && parseInt(newInputValue, 10) < minSecond) {\n this.seconds = minSecond.toString().padStart(2, '0');\n } else {\n this.seconds = '00';\n reputedToZero = true;\n }\n } else {\n if (maxSecond && parsedNewInputValue > maxSecond) {\n if (minSecond && parseInt(newInputValue, 10) < minSecond) {\n this.seconds = minSecond.toString().padStart(2, '0');\n } else {\n this.seconds = '00';\n reputedToZero = true;\n }\n } else {\n if (minSecond && parsedNewInputValue < minSecond) {\n this.seconds = minSecond.toString().padStart(2, '0');\n } else {\n this.seconds = newInputValue;\n }\n }\n }\n } else if (inputValue.length > 2) {\n const newInputValue = inputValue.slice(1, 3).padStart(2, '0');\n const parsedNewInputValue = parseInt(newInputValue, 10) || 0;\n\n if (parsedNewInputValue >= maxSeconds) {\n if (minSecond && parseInt(newInputValue, 10) < minSecond) {\n this.seconds = minSecond.toString().padStart(2, '0');\n } else {\n this.seconds = '00';\n reputedToZero = true;\n }\n } else {\n if (maxSecond && parsedNewInputValue > maxSecond) {\n if (minSecond && parseInt(newInputValue, 10) < minSecond) {\n this.seconds = minSecond.toString().padStart(2, '0');\n } else {\n this.seconds = '00';\n reputedToZero = true;\n }\n } else {\n if (minSecond && parsedNewInputValue < minSecond) {\n this.seconds = minSecond.toString().padStart(2, '0');\n } else {\n this.seconds = parsedNewInputValue.toString();\n }\n }\n }\n } else {\n const newInputValue = inputValue.padStart(2, '0');\n const parsedNewInputValue = parseInt(newInputValue, 10) || 0;\n\n if (parsedNewInputValue >= maxSeconds) {\n if (minSecond && parseInt(newInputValue, 10) < minSecond) {\n this.seconds = minSecond.toString().padStart(2, '0');\n } else {\n this.seconds = '00';\n reputedToZero = true;\n }\n } else {\n if (maxSecond && parsedNewInputValue > maxSecond) {\n if (minSecond && parseInt(newInputValue, 10) < minSecond) {\n this.seconds = minSecond.toString().padStart(2, '0');\n } else {\n this.seconds = '00';\n reputedToZero = true;\n }\n } else {\n if (minSecond && parsedNewInputValue < minSecond) {\n this.seconds = minSecond.toString().padStart(2, '0');\n } else {\n this.seconds = parsedNewInputValue.toString();\n }\n }\n }\n }\n\n if (reputedToZero) {\n this.inputElements[TimeType.Seconds]?.focus();\n this.inputElements[TimeType.Seconds]?.select();\n }\n }\n\n // Parse a continuous time string (e.g., \"123456\") into hours, minutes, and seconds\n private parseTime(timeString: string): void {\n if (!timeString) {\n return;\n }\n\n const cleanedTime = timeString.replace(/[^0-9]/g, '').padStart(6, '0');\n const hour = cleanedTime.slice(0, 2);\n const minute = cleanedTime.slice(2, 4);\n const second = cleanedTime.slice(4, 6);\n\n const minHour = this.parseHour(this.min, this.format) || hour;\n const minMinute = this.parseMinute(this.min) || minute;\n const minSecond = this.parseSecond(this.min) || second;\n\n this.hours = minHour.padStart(2, '0');\n this.minutes = minMinute.toString().padStart(2, '0');\n this.seconds = minSecond.toString().padStart(2, '0');\n }\n\n private reconstructTime(): string {\n if (this.format === 'HH' || this.format === 'hh') {\n return this.hours;\n } else if (this.format === 'HH:mm' || this.format === 'hh:mm') {\n return `${this.hours}:${this.minutes}`;\n } else if (this.format === 'HH:mm:ss' || this.format === 'hh:mm:ss') {\n return `${this.hours}:${this.minutes}:${this.seconds}`;\n } else {\n return `${this.hours}:${this.minutes}:${this.seconds}`;\n }\n }\n\n private handleFocus(type: TimeType): void {\n if (this.readonly || this.disabled) {\n return;\n }\n\n if (!this.open) {\n this.open = true; // Force the popover to open\n }\n\n // Refocus on the input if it loses focus and is empty\n if (\n this.inputElements[type]?.value.length === 0 ||\n this.inputElements[type]?.value === '00'\n ) {\n this.inputElements[type]?.focus();\n this.inputElements[type]?.select();\n }\n\n this.typeFocused = type;\n }\n\n private HandleDropdownIconClick(): void {\n if (this.disabled || this.readonly) {\n return; // Do not toggle if disabled or read-only\n }\n\n if (this.open && this.inputElements[TimeType.Hours]) {\n this.open = false; // Close the popover if it is open\n } else if (this.open && this.inputElements[TimeType.Minutes]) {\n this.open = false; // Close the popover if it is open\n } else if (this.open && this.inputElements[TimeType.Seconds]) {\n this.open = false; // Close the popover if it is open\n } else if (!this.open && this.inputElements[TimeType.Hours]) {\n this.inputElements[TimeType.Hours]?.focus(); // Focus will open the popover\n this.inputElements[TimeType.Hours]?.select();\n } else if (!this.open && this.inputElements[TimeType.Minutes]) {\n this.inputElements[TimeType.Minutes]?.focus(); // Focus will open the popover\n this.inputElements[TimeType.Minutes]?.select();\n } else if (!this.open && this.inputElements[TimeType.Seconds]) {\n this.inputElements[TimeType.Seconds]?.focus(); // Focus will open the popover\n this.inputElements[TimeType.Seconds]?.select();\n } else {\n console.warn(\n 'nv-fieldtime -> No input elements found to focus or to blur',\n );\n }\n }\n\n private updateHighlightedItem(items: HTMLElement[], index: number) {\n items.forEach((item, i) => {\n if (i === index) {\n item.classList.add('highlighted');\n item.setAttribute('tabindex', '0');\n item.focus(); // Forcer le focus ici\n item.scrollIntoView({ block: 'nearest' });\n } else {\n item.classList.remove('highlighted');\n item.setAttribute('tabindex', '-1');\n }\n });\n }\n\n private handleTimeOptionClick(event: MouseEvent, type: TimeType): void {\n const option = parseInt(\n (event.target as HTMLElement).textContent || '0',\n 10,\n );\n\n if (type === TimeType.Hours) {\n this.hours = option.toString().padStart(2, '0');\n } else if (type === TimeType.Minutes) {\n this.minutes = option.toString().padStart(2, '0');\n } else if (type === TimeType.Seconds) {\n this.seconds = option.toString().padStart(2, '0');\n }\n\n const reconstructTime = this.reconstructTime();\n this.value = reconstructTime;\n }\n\n private handleInputBlur(): void {\n // Use a delay to check if the focus is still within the popover\n setTimeout(() => {\n if (!this.el.contains(document.activeElement)) {\n if (this.open) {\n this.open = false; // Close the popover if the focus is outside the component\n }\n }\n }, 150);\n }\n\n private handleClickOutside(event: MouseEvent) {\n const target = event.target as Node;\n\n // Check if the click is inside the component or any of the input elements\n if (\n this.el.contains(target) ||\n Object.values(this.inputElements).some(input => input.contains(target))\n ) {\n return;\n }\n\n if (this.open) {\n this.open = false; // Close the popover if the click is outside\n }\n }\n\n private handleScroll(e: Event, type: TimeType): void {\n const target = e.target as HTMLElement;\n const scrollTop = target.scrollTop;\n const containerHeight = target.clientHeight;\n const scrollHeight = target.scrollHeight;\n\n // Define the height of each item, this could be dynamic if the height varies\n const itemHeight = 40; // Consider making this configurable or dynamic\n const options = this.generateTimeOptions(type); // Generates the list of time options\n const singleSetHeight = options.length * itemHeight;\n\n // Check if the scroll is near the bottom or top and reset to the first set\n if (\n scrollTop + containerHeight >= scrollHeight - itemHeight ||\n scrollTop <= 0\n ) {\n target.scrollTop = singleSetHeight; // Reset to the first set from the bottom\n }\n }\n\n private generateTimeOptions(type: TimeType) {\n // Convert the step in seconds\n const stepInSeconds = this.step / 1000;\n\n // Handle edge case for zero step\n if (stepInSeconds === 0) {\n return ['00']; // Just return the default value\n }\n\n // Generate the time options based on the type\n switch (type) {\n case TimeType.Hours:\n return this.generateHourOptions(stepInSeconds);\n\n case TimeType.Minutes:\n return this.generateMinuteOptions(stepInSeconds);\n\n case TimeType.Seconds:\n return this.generateSecondOptions(stepInSeconds);\n\n default:\n return [];\n }\n }\n\n private generateHourOptions(stepInSeconds: number): string[] {\n const hourStep = Math.max(1, Math.floor(stepInSeconds / 3600)); // Prevent step < 1\n const maxHour =\n this.parseHour(this.max, this.format) ||\n (this.format.startsWith('hh') ? '12' : '24');\n const minHour = this.parseHour(this.min, this.format) || '00';\n\n const maxHourValue = parseInt(maxHour, 10);\n const minHourValue = parseInt(minHour, 10);\n const values: string[] = [];\n\n for (let i = minHourValue; i < maxHourValue; i += hourStep) {\n values.push(i.toString().padStart(2, '0'));\n }\n\n return values;\n }\n\n private parseHour(value: string | null, format: string): string | null {\n if (!value) return null;\n const [hourStr] = value.split(':');\n const hour = parseInt(hourStr, 10);\n if (isNaN(hour)) return null;\n if (format.startsWith('hh'))\n return hour > 0 && hour <= 12 ? hourStr.padStart(2, '0') : null;\n return hour >= 0 && hour <= 24 ? hourStr.padStart(2, '0') : null;\n }\n\n private generateMinuteOptions(stepInSeconds: number): string[] {\n const minuteStep = Math.max(1, Math.floor((stepInSeconds % 3600) / 60)); // Ensure step >= 1\n const minMinute = this.parseMinute(this.min) ?? 0;\n const maxMinute = this.parseMinute(this.max) ?? 59;\n\n if (minMinute === 0 && maxMinute === 0) return ['00']; // Handle edge case for zero seconds\n\n const values: string[] = [];\n\n for (let i = minMinute; i <= maxMinute; i += minuteStep) {\n values.push(i.toString().padStart(2, '0'));\n }\n\n return values;\n }\n\n private parseMinute(value: string | null): number | null {\n if (!value) return null;\n const parts = value.split(':');\n if (parts.length < 2) return null; // Expect at least \"hh:mm\"\n const minute = parseInt(parts[1], 10);\n return isNaN(minute) || minute < 0 || minute >= 60 ? null : minute;\n }\n\n private generateSecondOptions(stepInSeconds: number): string[] {\n const secondStep = Math.max(1, stepInSeconds % 60); // Ensure step >= 1\n const minSecond = this.parseSecond(this.min) ?? 0;\n const maxSecond = this.parseSecond(this.max) ?? 59;\n\n if (minSecond === 0 && maxSecond === 0) return ['00']; // Handle edge case for zero seconds\n\n const values: string[] = [];\n\n for (let i = minSecond; i <= maxSecond; i += secondStep) {\n values.push(i.toString().padStart(2, '0'));\n }\n\n return values;\n }\n\n private parseSecond(value: string | null): number | null {\n if (!value) return null;\n const parts = value.split(':');\n if (parts.length < 3) return null; // Expect \"hh:mm:ss\" or \"HH:mm:ss\"\n const second = parseInt(parts[2], 10);\n return isNaN(second) || second < 0 || second >= 60 ? null : second;\n }\n\n private generateInfiniteTimeOptions(type: TimeType): string[] {\n const options = this.generateTimeOptions(type);\n const totalOptions = options.length;\n\n // Dynamically calculate repetitions based on a target number of items (e.g., 300 items)\n const repetitions = Math.ceil(300 / totalOptions);\n return Array(repetitions).fill(options).flat();\n }\n\n private getCurrentTime(): string {\n const currentTime = new Date();\n return currentTime.toLocaleTimeString(); // Returns the time in the locale's format\n }\n\n private updateColumnHighlight(selector, value): void {\n const items = Array.from(this.el.querySelectorAll<HTMLElement>(selector));\n\n const index = items.findIndex(x => x.textContent === value);\n this.updateHighlightedItem(items, index);\n }\n\n private handleHostClick(event: MouseEvent): void {\n if (this.disabled || this.readonly) {\n return;\n }\n\n const targetElement = event.target as HTMLElement;\n\n // Check if the click target or its ancestors are inside an nv-iconbutton element\n if (targetElement.closest('nv-iconbutton')) {\n return; // Handle icon button click separately\n }\n\n if (!this.open) {\n if (this.inputElements) {\n this.inputElements[TimeType.Hours]?.focus();\n this.inputElements[TimeType.Hours]?.select();\n }\n\n event.preventDefault();\n }\n }\n\n //#endregion METHODS\n /****************************************************************************/\n //#region LIFECYCLE\n\n componentWillLoad() {\n document.addEventListener('click', this.handleClickOutside.bind(this));\n\n // If an initial value is passed, parse it\n if (this.value) {\n this.parseTime(this.value);\n } else {\n const minHour = this.parseHour(this.min, this.format) || '00';\n const minMinute = this.parseMinute(this.min) || 0;\n const minSecond = this.parseSecond(this.min) || 0;\n\n this.hours = minHour.padStart(2, '0');\n this.minutes = minMinute.toString().padStart(2, '0');\n this.seconds = minSecond.toString().padStart(2, '0');\n }\n }\n\n connectedCallback() {\n document.addEventListener('click', this.handleClickOutside.bind(this));\n }\n\n disconnectedCallback() {\n document.removeEventListener('click', this.handleClickOutside.bind(this));\n }\n\n componentDidLoad() {\n if (!this.value) {\n const currentTime = this.getCurrentTime();\n\n // Split time into components\n // eslint-disable-next-line prefer-const\n let [hour, minute, secondAmPm] = currentTime.split(':');\n let second, amPm;\n\n // Check if AM/PM is present and split accordingly\n if (secondAmPm.includes(' ')) {\n [second, amPm] = secondAmPm.split(' ');\n } else {\n second = secondAmPm;\n }\n\n // Parse hour as integer for calculations\n let parsedHour = parseInt(hour, 10);\n\n // Convert hour to 24-hour format based on AM/PM (if present)\n if (amPm) {\n if (amPm === 'PM' && parsedHour < 12) {\n parsedHour += 12; // Convert PM to 24-hour\n } else if (amPm === 'AM' && parsedHour === 12) {\n parsedHour = 0; // Midnight in 24-hour format\n }\n }\n\n // Adjust for 12-hour format if necessary\n if (this.format.startsWith('hh')) {\n if (parsedHour === 0) {\n hour = '12'; // Midnight in 12-hour format\n } else if (parsedHour > 12) {\n hour = (parsedHour - 12).toString(); // Convert 24-hour to 12-hour\n } else {\n hour = parsedHour.toString();\n }\n } else {\n hour = parsedHour.toString(); // Use 24-hour format directly\n }\n\n // Pad hour, minute, and second to ensure two digits\n hour = hour.padStart(2, '0');\n minute = minute.padStart(2, '0');\n second = second.padStart(2, '0');\n\n // Update highlighted items for hours\n const hourSelector = `.time-column.time-column-hours div`;\n this.updateColumnHighlight(hourSelector, hour);\n\n // Update highlighted items for minutes\n const minuteSelector = `.time-column.time-column-minutes div`;\n this.updateColumnHighlight(minuteSelector, minute);\n\n // Update highlighted items for seconds\n const secondSelector = `.time-column.time-column-seconds div`;\n this.updateColumnHighlight(secondSelector, second);\n }\n }\n\n //#endregion LIFECYCLE\n /****************************************************************************/\n //#region RENDER\n\n private RenderTimeOptionsColumn(type: TimeType): HTMLElement {\n return (\n <div\n class={`time-column time-column-${type}`}\n onScroll={e => this.handleScroll(e, type)}\n >\n {/* Hours */}\n {this.generateInfiniteTimeOptions(type).map((option, index) => (\n <div\n class={{\n 'time-option': true,\n 'selected':\n (type === TimeType.Hours && option === this.hours) ||\n (type === TimeType.Minutes && option === this.minutes) ||\n (type === TimeType.Seconds && option === this.seconds),\n }}\n key={`${option}-${index}`}\n onClick={e => this.handleTimeOptionClick(e, type)}\n >\n {option}\n </div>\n ))}\n </div>\n );\n }\n\n render() {\n return (\n <Host onclick={e => this.handleHostClick(e)}>\n {(this.label || this.el.querySelector('[slot=\"label\"]')) && (\n <label htmlFor={this.inputId}>\n <slot name=\"label\">{this.label}</slot>\n </label>\n )}\n\n <nv-popover\n ref={el => (this.popoverElement = el as HTMLNvPopoverElement)}\n triggerMode=\"controlled\"\n placement=\"bottom-start\"\n open={this.open}\n >\n <div class=\"input-wrapper\" slot=\"trigger\">\n <slot name=\"before-input\"></slot>\n\n <div class=\"input-container\">\n <slot name=\"leading-input\"></slot>\n {/* Input fields for hours, minutes, and seconds */}\n {/* Hours */}\n {startsWithIgnoreCase(this.format, 'HH') && [\n <input\n ref={el => (this.inputElements[TimeType.Hours] = el)}\n type=\"number\"\n autofocus={this.autofocus}\n class=\"time-input\"\n pattern=\"[0-9]*\"\n maxlength=\"3\"\n value={this.hours}\n onInput={e => this.handleInputChange(e, TimeType.Hours)}\n placeholder={this.format.includes('hh') ? 'hh' : 'HH'}\n inputMode=\"numeric\"\n onFocus={() => this.handleFocus(TimeType.Hours)}\n name={\n this.name\n ? `${TimeType.Hours}-${this.name}`\n : TimeType.Hours\n }\n id={this.inputId}\n readonly={this.readonly}\n disabled={this.disabled}\n required={this.required}\n onKeyDown={e => this.handleKeyDown(e)} // Handle arrow keys\n onBlur={() => this.handleInputBlur()}\n />,\n ]}\n {/* Minutes */}\n {this.format.includes('mm') && [\n <span>:</span>,\n <input\n ref={el => (this.inputElements[TimeType.Minutes] = el)}\n type=\"number\"\n autofocus={this.autofocus}\n class=\"time-input\"\n pattern=\"[0-9]*\"\n maxlength=\"3\"\n value={this.minutes}\n onInput={e => this.handleInputChange(e, TimeType.Minutes)}\n placeholder=\"mm\"\n inputMode=\"numeric\"\n onFocus={() => this.handleFocus(TimeType.Minutes)}\n name={\n this.name\n ? `${TimeType.Minutes}-${this.name}`\n : TimeType.Minutes\n }\n id={`${this.inputId}-minutes`}\n readonly={this.readonly}\n disabled={this.disabled}\n required={this.required}\n onKeyDown={e => this.handleKeyDown(e)} // Handle arrow keys\n onBlur={() => this.handleInputBlur()}\n />,\n ]}\n {/* Seconds */}\n {this.format.includes('ss') && [\n <span>:</span>,\n\n <input\n ref={el => (this.inputElements[TimeType.Seconds] = el)}\n type=\"number\"\n autofocus={this.autofocus}\n class=\"time-input\"\n pattern=\"[0-9]*\"\n maxlength=\"3\"\n value={this.seconds}\n onInput={e => this.handleInputChange(e, TimeType.Seconds)}\n placeholder=\"ss\"\n inputMode=\"numeric\"\n onFocus={() => this.handleFocus(TimeType.Seconds)}\n name={\n this.name\n ? `${TimeType.Seconds}-${this.name}`\n : TimeType.Seconds\n }\n id={`${this.inputId}-seconds`}\n readonly={this.readonly}\n disabled={this.disabled}\n required={this.required}\n onKeyDown={e => this.handleKeyDown(e)} // Handle arrow keys\n onBlur={() => this.handleInputBlur()}\n />,\n ]}\n\n <nv-iconbutton\n name={'clock'}\n size=\"md\"\n emphasis=\"lower\"\n aria-label={this.open ? 'Hide time picker' : 'Show time picker'}\n aria-pressed={this.open.toString()}\n onClick={() => this.HandleDropdownIconClick()}\n />\n\n {this.error && (\n <nv-icon name=\"alert-circle\" class=\"validation\" size=\"sm\" />\n )}\n {this.success && (\n <nv-icon name=\"circle-check\" class=\"validation\" size=\"sm\" />\n )}\n </div>\n\n <slot name=\"after-input\"></slot>\n </div>\n\n <div class=\"time-dropdown\" slot=\"content\">\n <div class=\"time-columns\">\n {startsWithIgnoreCase(this.format, 'HH') &&\n this.RenderTimeOptionsColumn(TimeType.Hours)}\n {this.format.includes('mm') &&\n this.RenderTimeOptionsColumn(TimeType.Minutes)}\n {this.format.includes('ss') &&\n this.RenderTimeOptionsColumn(TimeType.Seconds)}\n </div>\n </div>\n </nv-popover>\n\n {(this.description ||\n this.el.querySelector('[slot=\"description\"]')) && (\n <div class=\"description\">\n <slot name=\"description\">{this.description}</slot>\n </div>\n )}\n\n {(this.errorDescription ||\n this.el.querySelector('[slot=\"error-description\"]')) && (\n <div hidden={!this.error} class=\"error-description\">\n <slot name=\"error-description\">{this.errorDescription}</slot>\n </div>\n )}\n </Host>\n );\n }\n\n //#endregion RENDER\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- var e;(function(e){e["Information"]="information";e["Warning"]="warning";e["Success"]="success";e["Error"]="error";e["Neutral"]="neutral"})(e||(e={}));var a;(function(e){e["Neutral"]="neutral";e["Primary"]="primary";e["Secondary"]="secondary";e["Success"]="success";e["Error"]="error"})(a||(a={}));var n;(function(e){e["ExtraSmall"]="xs";e["Small"]="sm";e["Medium"]="md";e["Large"]="lg";e["ExtraLarge"]="xl"})(n||(n={}));var r;(function(e){e["ExtraSmall"]="xs";e["Small"]="sm";e["Medium"]="md";e["Large"]="lg"})(r||(r={}));var o;(function(e){e["High"]="high";e["Medium"]="medium";e["Low"]="low";e["Lower"]="lower"})(o||(o={}));var c;(function(e){e["Submit"]="submit";e["Reset"]="reset";e["Button"]="button"})(c||(c={}));var t;(function(e){e["Medium"]="medium";e["High"]="high"})(t||(t={}));var s;(function(e){e["High"]="high";e["Low"]="low"})(s||(s={}));var i;(function(e){e["ExtraSmall"]="xs";e["Small"]="sm";e["Medium"]="md";e["Large"]="lg"})(i||(i={}));var u;(function(e){e["Square"]="square";e["Rounded"]="rounded"})(u||(u={}));var l;(function(e){e["High"]="brand";e["Low"]="white"})(l||(l={}));var d;(function(e){e["Before"]="before";e["After"]="after"})(d||(d={}));var m;(function(e){e["On"]="on";e["Off"]="off";e["Section"]="section-*";e["Shipping"]="shipping";e["Billing"]="billing";e["Home"]="home";e["Work"]="work";e["Mobile"]="mobile";e["Fax"]="fax";e["Pager"]="pager";e["Tel"]="tel";e["TelCountryCode"]="tel-country-code";e["TelNational"]="tel-national";e["TelAreaCode"]="tel-area-code";e["TelLocal"]="tel-local";e["TelLocalPrefix"]="tel-local-prefix";e["TelLocalSuffix"]="tel-local-suffix";e["TelExtension"]="tel-extension";e["Email"]="email";e["IMProtocol"]="impp";e["Name"]="name";e["HonorificPrefix"]="honorific-prefix";e["GivenName"]="given-name";e["AdditionalName"]="additional-name";e["FamilyName"]="family-name";e["HonorificSuffix"]="honorific-suffix";e["Nickname"]="nickname";e["Username"]="username";e["NewPassword"]="new-password";e["CurrentPassword"]="current-password";e["OneTimeCode"]="one-time-code";e["OrganizationTitle"]="organization-title";e["Organization"]="organization";e["StreetAddress"]="street-address";e["AddressLine1"]="address-line1";e["AddressLine2"]="address-line2";e["AddressLine3"]="address-line3";e["AddressLevel4"]="address-level4";e["AddressLevel3"]="address-level3";e["AddressLevel2"]="address-level2";e["AddressLevel1"]="address-level1";e["Country"]="country";e["CountryName"]="country-name";e["PostalCode"]="postal-code";e["CCName"]="cc-name";e["CCGivenName"]="cc-given-name";e["CCAdditionalName"]="cc-additional-name";e["CCFamilyName"]="cc-family-name";e["CCNumber"]="cc-number";e["CCExp"]="cc-exp";e["CCExpMonth"]="cc-exp-month";e["CCExpYear"]="cc-exp-year";e["CCCSC"]="cc-csc";e["CCType"]="cc-type";e["TransactionCurrency"]="transaction-currency";e["TransactionAmount"]="transaction-amount";e["Language"]="language";e["Bday"]="bday";e["BdayDay"]="bday-day";e["BdayMonth"]="bday-month";e["BdayYear"]="bday-year";e["Sex"]="sex";e["Url"]="url";e["Photo"]="photo"})(m||(m={}));var f;(function(e){e["Hours"]="hours";e["Minutes"]="minutes";e["Seconds"]="seconds"})(f||(f={}));var p;(function(e){e["End"]="end";e["Start"]="start";e["Center"]="center"})(p||(p={}));var v;(function(e){e["Asc"]="asc";e["Desc"]="desc"})(v||(v={}));const S={"fr-FR":"Sem","fr-BE":"Sem","nl-BE":"W","en-BE":"W","en-US":"W","en-GB":"W","es-ES":"Sem","de-DE":"KW","it-IT":"Set","pt-PT":"Sem","nl-NL":"W","pl-PL":"Tyd","ru-RU":"Нед","ja-JP":"週","zh-CN":"周","ko-KR":"주"};const g={"fr-BE":["Lu","Ma","Me","Je","Ve","Sa","Di"],"nl-BE":["Ma","Di","Wo","Do","Vr","Za","Zo"],"de-DE":["Mo","Di","Mi","Do","Fr","Sa","So"],"en-BE":["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],"en-US":["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],"en-GB":["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]};const h={"fr-BE":["Jan","Fev","Mar","Avr","Mai","Jun","Jul","Aou","Sep","Oct","Nov","Dec"],"nl-BE":["Jan","Feb","Maa","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],"de-DE":["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],"en-BE":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"en-US":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"en-GB":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]};export{r as B,g as C,a as D,e as F,p as G,u as I,l as L,t as N,n as S,s as T,S as W,o as a,c as b,i as c,d,m as e,f,v as g,h};
2
- //# sourceMappingURL=p-2277cfc8.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["FeedbackColors","DeprecatedSemanticColors","SemanticSizes","ButtonSize","ButtonEmphasis","ButtonType","NotificationEmphasis","ToggleButtonEmphasis","ToggleButtonSize","IconButtonShape","LoaderColors","LabelPlacement","TextInputAutocomplete","TimeType","GlobalFilterPosition","SortingPossibility","WEEK_ABBREVIATIONS","CUSTOM_DAY_NAMES","CUSTOM_MONTH_NAMES"],"sources":["src/utils/constants.ts"],"sourcesContent":["import { WeekAbbreviations } from '../interfaces/localization';\n\nexport enum FeedbackColors {\n Information = 'information',\n Warning = 'warning',\n Success = 'success',\n Error = 'error',\n Neutral = 'neutral',\n}\nexport enum DeprecatedSemanticColors {\n Neutral = 'neutral',\n Primary = 'primary',\n Secondary = 'secondary',\n Success = 'success',\n Error = 'error',\n}\nexport enum SemanticSizes {\n ExtraSmall = 'xs',\n Small = 'sm',\n Medium = 'md',\n Large = 'lg',\n ExtraLarge = 'xl',\n}\nexport enum ButtonSize {\n ExtraSmall = 'xs',\n Small = 'sm',\n Medium = 'md',\n Large = 'lg',\n}\nexport enum ButtonEmphasis {\n High = 'high',\n Medium = 'medium',\n Low = 'low',\n Lower = 'lower',\n}\nexport enum ButtonType {\n Submit = 'submit',\n Reset = 'reset',\n Button = 'button',\n}\nexport enum NotificationEmphasis {\n Medium = 'medium',\n High = 'high',\n}\nexport enum ToggleButtonEmphasis {\n High = 'high',\n Low = 'low',\n}\nexport enum ToggleButtonSize {\n ExtraSmall = 'xs',\n Small = 'sm',\n Medium = 'md',\n Large = 'lg',\n}\nexport enum IconButtonShape {\n Square = 'square',\n Rounded = 'rounded',\n}\nexport enum LoaderColors {\n High = 'brand',\n Low = 'white',\n}\nexport enum LabelPlacement {\n Before = 'before',\n After = 'after',\n}\n\nexport enum TextInputAutocomplete {\n On = 'on',\n Off = 'off',\n Section = 'section-*',\n Shipping = 'shipping',\n Billing = 'billing',\n Home = 'home',\n Work = 'work',\n Mobile = 'mobile',\n Fax = 'fax',\n Pager = 'pager',\n Tel = 'tel',\n TelCountryCode = 'tel-country-code',\n TelNational = 'tel-national',\n TelAreaCode = 'tel-area-code',\n TelLocal = 'tel-local',\n TelLocalPrefix = 'tel-local-prefix',\n TelLocalSuffix = 'tel-local-suffix',\n TelExtension = 'tel-extension',\n Email = 'email',\n IMProtocol = 'impp',\n Name = 'name',\n HonorificPrefix = 'honorific-prefix',\n GivenName = 'given-name',\n AdditionalName = 'additional-name',\n FamilyName = 'family-name',\n HonorificSuffix = 'honorific-suffix',\n Nickname = 'nickname',\n Username = 'username',\n NewPassword = 'new-password',\n CurrentPassword = 'current-password',\n OneTimeCode = 'one-time-code',\n OrganizationTitle = 'organization-title',\n Organization = 'organization',\n StreetAddress = 'street-address',\n AddressLine1 = 'address-line1',\n AddressLine2 = 'address-line2',\n AddressLine3 = 'address-line3',\n AddressLevel4 = 'address-level4',\n AddressLevel3 = 'address-level3',\n AddressLevel2 = 'address-level2',\n AddressLevel1 = 'address-level1',\n Country = 'country',\n CountryName = 'country-name',\n PostalCode = 'postal-code',\n CCName = 'cc-name',\n CCGivenName = 'cc-given-name',\n CCAdditionalName = 'cc-additional-name',\n CCFamilyName = 'cc-family-name',\n CCNumber = 'cc-number',\n CCExp = 'cc-exp',\n CCExpMonth = 'cc-exp-month',\n CCExpYear = 'cc-exp-year',\n CCCSC = 'cc-csc',\n CCType = 'cc-type',\n TransactionCurrency = 'transaction-currency',\n TransactionAmount = 'transaction-amount',\n Language = 'language',\n Bday = 'bday',\n BdayDay = 'bday-day',\n BdayMonth = 'bday-month',\n BdayYear = 'bday-year',\n Sex = 'sex',\n Url = 'url',\n Photo = 'photo',\n}\n\nexport enum TimeType {\n Hours = 'hours',\n Minutes = 'minutes',\n Seconds = 'seconds',\n}\n\nexport enum GlobalFilterPosition {\n End = 'end',\n Start = 'start',\n Center = 'center',\n}\nexport enum SortingPossibility {\n Asc = 'asc',\n Desc = 'desc',\n}\n\nexport const WEEK_ABBREVIATIONS: WeekAbbreviations = {\n 'fr-FR': 'Sem', // Semaine\n 'fr-BE': 'Sem', // Semaine\n 'nl-BE': 'W', // Week\n 'en-BE': 'W', // Week\n 'en-US': 'W', // Week\n 'en-GB': 'W', // Week\n 'es-ES': 'Sem', // Semana\n 'de-DE': 'KW', // Kalenderwoche\n 'it-IT': 'Set', // Settimana\n 'pt-PT': 'Sem', // Semana\n 'nl-NL': 'W', // Week\n 'pl-PL': 'Tyd', // Tydzień\n 'ru-RU': 'Нед', // Неделя\n 'ja-JP': '週', // Shū\n 'zh-CN': '周', // Zhōu\n 'ko-KR': '주', // Ju\n};\n\nexport const CUSTOM_DAY_NAMES: { [key: string]: string[] } = {\n 'fr-BE': ['Lu', 'Ma', 'Me', 'Je', 'Ve', 'Sa', 'Di'],\n 'nl-BE': ['Ma', 'Di', 'Wo', 'Do', 'Vr', 'Za', 'Zo'],\n 'de-DE': ['Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa', 'So'],\n 'en-BE': ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],\n 'en-US': ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],\n 'en-GB': ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],\n};\n\nexport const CUSTOM_MONTH_NAMES: { [key: string]: string[] } = {\n 'fr-BE': [\n 'Jan',\n 'Fev',\n 'Mar',\n 'Avr',\n 'Mai',\n 'Jun',\n 'Jul',\n 'Aou',\n 'Sep',\n 'Oct',\n 'Nov',\n 'Dec',\n ],\n 'nl-BE': [\n 'Jan',\n 'Feb',\n 'Maa',\n 'Apr',\n 'Mei',\n 'Jun',\n 'Jul',\n 'Aug',\n 'Sep',\n 'Okt',\n 'Nov',\n 'Dec',\n ],\n 'de-DE': [\n 'Jan',\n 'Feb',\n 'Mär',\n 'Apr',\n 'Mai',\n 'Jun',\n 'Jul',\n 'Aug',\n 'Sep',\n 'Okt',\n 'Nov',\n 'Dez',\n ],\n 'en-BE': [\n 'Jan',\n 'Feb',\n 'Mar',\n 'Apr',\n 'May',\n 'Jun',\n 'Jul',\n 'Aug',\n 'Sep',\n 'Oct',\n 'Nov',\n 'Dec',\n ],\n 'en-US': [\n 'Jan',\n 'Feb',\n 'Mar',\n 'Apr',\n 'May',\n 'Jun',\n 'Jul',\n 'Aug',\n 'Sep',\n 'Oct',\n 'Nov',\n 'Dec',\n ],\n 'en-GB': [\n 'Jan',\n 'Feb',\n 'Mar',\n 'Apr',\n 'May',\n 'Jun',\n 'Jul',\n 'Aug',\n 'Sep',\n 'Oct',\n 'Nov',\n 'Dec',\n ],\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,h as a,H as c}from"./p-d0a33e64.js";const s=class{constructor(a){e(this,a);this.repeatTemplate=false}render(){return a(c,{key:"d93cf7234c22d08319d2e4157945ece0b9e5f7b1"},a("slot",{key:"d4530c7f6854773716e7494e0379bc21f446ca53",name:"header"}),a("slot",{key:"60e2933f219f48c0567fd0e01a137a694ae1c1c9",name:"cell"}))}};export{s as nv_datagridcolumn};
2
- //# sourceMappingURL=p-234cfa2e.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as a,h as c,H as r}from"./p-d0a33e64.js";const s="nv-row{display:flex;flex-wrap:wrap;margin-right:calc(var(--spacing-4) * -1);margin-left:calc(var(--spacing-4) * -1);row-gap:var(--spacing-4)}";const e=s;const n=class{constructor(c){a(this,c)}render(){return c(r,{key:"8415bdad0106bd3d836996c617a749294e0c19e2"},c("slot",{key:"77c069ced0dc25c4169945877c388f30d27fdc4f"}))}};n.style=e;export{n as nv_row};
2
- //# sourceMappingURL=p-25f2ce81.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as e,c as r,h as o,H as i,g as n}from"./p-d0a33e64.js";import{v as a}from"./p-f5ff676c.js";const t='nv-fieldslider .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .track-range{background:var(--components-slider-track-filled-focus)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .thumb{border-color:var(--components-slider-track-filled-focus)}nv-fieldslider[error] .slider-container .track-container .track .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:hover{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-handler-background-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:focus{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldpassword{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box;max-width:480px}nv-fieldpassword[fluid]:not([fluid=false]){max-width:unset}nv-fieldpassword[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fieldpassword[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive-in-field)}nv-fieldpassword[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fieldpassword[required]:not([required=false]) label::after{content:"*";color:var(--components-form-text-required);font-weight:700}nv-fieldpassword label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:500;line-height:var(--form-label-line-height)}nv-fieldpassword .input-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch}nv-fieldpassword .input-wrapper .input-container{display:flex;flex-grow:1;justify-content:center;align-items:center;align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default, 1);background:var(--nv-field-background);transition:all 150ms ease-out;position:relative}nv-fieldpassword .input-wrapper .input-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldpassword .input-wrapper .input-container:focus-within,nv-fieldpassword .input-wrapper .input-container:focus-within:hover,nv-fieldpassword .input-wrapper .input-container:focus,nv-fieldpassword .input-wrapper .input-container:focus:hover{border-color:var(--nv-field-border-focus);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fieldpassword .input-wrapper .input-container:has(input:read-only){opacity:0.5;background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fieldpassword .input-wrapper .input-container:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldpassword .input-wrapper .input-container input{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);padding:var(--form-field-padding-y) var(--form-field-padding-x);font-size:var(--form-field-font-size);font-style:normal;font-weight:500;line-height:var(--form-field-line-height);width:100%;}nv-fieldpassword .input-wrapper .input-container input:focus{outline:none}nv-fieldpassword .input-wrapper .input-container input::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:"TT Norms Pro", sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:400;line-height:var(--form-field-line-height)}nv-fieldpassword .input-wrapper .input-container input[type=password]::-ms-clear,nv-fieldpassword .input-wrapper .input-container input[type=password]::-ms-reveal{display:none;width:0;height:0}nv-fieldpassword .input-wrapper .input-container>nv-iconbutton{border:0px;border-radius:0px}nv-fieldpassword .input-wrapper .input-container>nv-iconbutton:focus-visible{border-radius:var(--button-md-border-radius);outline-offset:-3px}nv-fieldpassword .input-wrapper .input-container>nv-iconbutton:last-of-type{border-top-right-radius:var(--form-field-radius);border-bottom-right-radius:var(--form-field-radius)}nv-fieldpassword .input-wrapper .input-container nv-icon.validation{color:var(--nv-field-border-default)}nv-fieldpassword .description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fieldpassword .error-description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:"TT Norms Pro", sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}';const d=t;const s=class{constructor(o){e(this,o);this.valueChanged=r(this,"valueChanged",7);this.inputId=a();this.disabled=false;this.readonly=false;this.required=false;this.error=false;this.success=false;this.mode="text";this.autocomplete="off";this.hidePasswordIcon=false;this.showPassword=false;this.autofocus=false;this.fluid=false;this.handleInputContainerClick=()=>{this.inputElement.focus()};this.togglePasswordVisibility=()=>{this.showPasswordState=!this.showPasswordState};this.handleInput=e=>{const r=e.target;this.value=r.value;this.valueChanged.emit(r.value)}}handleShowPasswordChange(e){this.showPasswordState=e}componentWillLoad(){this.showPasswordState=this.showPassword}render(){return o(i,{key:"f6c3db1036f210ed45d9175f86536fefcec49aee"},(this.label||this.el.querySelector('[slot="label"]'))&&o("label",{key:"3f90294e9d136887c77765dff60f84a2feeba0af",htmlFor:this.inputId},o("slot",{key:"6406a7f607430ffd4751b1eeda3c169e1e510795",name:"label"},this.label)),o("div",{key:"2316eabf4abfe0ed740a078b4fde0d744f98f793",class:"input-wrapper"},o("slot",{key:"00987dffa4d6e3666891ebf3cee4e36cc0534481",name:"before-input"}),o("div",{key:"e6974c392b1a44dc1f631e85bdf4b45a1d1a5eee",class:"input-container",onClick:this.handleInputContainerClick},o("slot",{key:"05b9ced4358271f96c0e1051fa8dee06fdc1fcd7",name:"leading-input"}),o("input",{key:"0996fa9815a09da1b66dad9d9e1bd4f37842ab9f",id:this.inputId,ref:e=>this.inputElement=e,autofocus:this.autofocus,autocomplete:this.autocomplete,placeholder:this.placeholder,name:this.name,type:this.showPasswordState?"text":"password",inputMode:this.mode,value:this.value,required:this.required,maxlength:this.maxlength,minlength:this.minlength,pattern:this.pattern,disabled:this.disabled,readOnly:this.readonly,onInput:this.handleInput}),(this.success||this.error)&&o("nv-icon",{key:"065dbf76c1d1d6afee787e9b2becb8a4499bcfd7",name:this.success?"circle-check":"alert-circle",class:"validation",size:"md"}),!this.hidePasswordIcon&&o("nv-iconbutton",{key:"eea65c55d64e58e621c9f8d7ad403eb985584afb",name:this.showPasswordState?"eye":"eye-off",size:"md",emphasis:"lower",onClick:this.togglePasswordVisibility,"aria-label":this.showPasswordState?"Hide password":"Show password","aria-pressed":this.showPasswordState.toString()})),o("slot",{key:"17b613bb7b55fd13d445507d8b5182e3107811e8",name:"after-input"})),(this.description||this.el.querySelector('[slot="description"]'))&&o("div",{key:"5d99b2fb2e460febe5b93148d277cee9a73ee180",class:"description"},o("slot",{key:"d196e0641080bf455b02e0a92cf95f2d167eb8f9",name:"description"},this.description)),(this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&o("div",{key:"0f96208e27909dca72aea61a6c7fee2a37aaba5f",hidden:!this.error,class:"error-description"},o("slot",{key:"86d51c3d0244d7536b1818f28420b8d1a11e63b7",name:"error-description"},this.errorDescription)))}static get formAssociated(){return true}get el(){return n(this)}static get watchers(){return{showPassword:["handleShowPasswordChange"]}}};s.style=d;export{s as nv_fieldpassword};
2
- //# sourceMappingURL=p-2781637d.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as n,c as e,h as r,H as i,g as o}from"./p-d0a33e64.js";import{v as t}from"./p-f5ff676c.js";const a='/* TODO: integrate this logic in the proper structure */\nnv-fieldslider .slider-container .track-container:has(.thumb:hover) .track-range {\n background: var(--components-slider-track-filled-hover);\n}\nnv-fieldslider .slider-container .track-container:has(.thumb:hover) .thumb {\n border-color: var(--components-slider-track-filled-hover);\n}\nnv-fieldslider .slider-container .track-container:has(.thumb:focus) .track-range {\n background: var(--components-slider-track-filled-focus);\n}\nnv-fieldslider .slider-container .track-container:has(.thumb:focus) .thumb {\n border-color: var(--components-slider-track-filled-focus);\n}\nnv-fieldslider[error] .slider-container .track-container .track .track-range {\n background: var(--components-slider-track-filled-error);\n}\nnv-fieldslider[error] .slider-container .track-container .track .thumb {\n border-color: var(--components-slider-track-filled-error);\n}\nnv-fieldslider[error] .slider-container .track-container .track .thumb:hover {\n border-color: var(--components-slider-track-filled-error);\n outline: calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);\n outline-offset: calc(var(--focus-outline-offset) * 1);\n background-color: var(--components-slider-handler-background-error);\n}\nnv-fieldslider[error] .slider-container .track-container .track .thumb:focus {\n border-color: var(--components-slider-track-filled-error);\n outline: calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);\n outline-offset: calc(var(--focus-outline-offset) * 1);\n background-color: var(--components-slider-track-filled-error);\n}\nnv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .track-range {\n background: var(--components-slider-track-filled-error);\n}\nnv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .thumb {\n border-color: var(--components-slider-track-filled-error);\n}\n\nnv-fieldnumber {\n --nv-field-border-default: var(--components-form-field-border-default);\n --nv-field-border-hover: var(--components-form-field-border-hover);\n --nv-field-border-focus: var(--components-form-field-border-focus);\n --nv-field-border-disabled: var(--components-form-field-border-default);\n --nv-field-border-readonly: var(--components-form-field-border-default);\n --nv-field-focus-box-shadow: var(--color-focus-brand);\n --nv-field-background: var(--components-form-field-background-default);\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: var(--form-gap-y);\n box-sizing: border-box;\n max-width: 480px;\n}\nnv-fieldnumber[fluid]:not([fluid=false]) {\n max-width: unset;\n}\nnv-fieldnumber[readonly]:not([readonly=false]) {\n --nv-field-border-default: var(--components-form-field-border-readonly);\n --nv-field-border-hover: var(--nv-field-border-default);\n --nv-field-border-focus: var(--components-form-field-border-focus);\n --nv-field-border-disabled: var(--nv-field-border-default);\n --nv-field-border-readonly: var(--nv-field-border-default);\n --nv-field-background: var(--components-form-field-background-readonly);\n}\nnv-fieldnumber[error]:not([error=false]) {\n --nv-field-border-default: var(--components-form-field-border-error);\n --nv-field-border-hover: var(--nv-field-border-default);\n --nv-field-border-focus: var(--nv-field-border-default);\n --nv-field-border-disabled: var(--nv-field-border-default);\n --nv-field-border-readonly: var(--nv-field-border-default);\n --nv-field-focus-box-shadow: var(--color-focus-destructive-in-field);\n}\nnv-fieldnumber[success]:not([success=false]) {\n --nv-field-border-default: var(--components-form-field-border-success);\n --nv-field-border-hover: var(--nv-field-border-default);\n --nv-field-border-focus: var(--nv-field-border-default);\n --nv-field-border-disabled: var(--nv-field-border-default);\n --nv-field-border-readonly: var(--nv-field-border-default);\n --nv-field-focus-box-shadow: var(--color-focus-success);\n}\nnv-fieldnumber[required]:not([required=false]) label::after {\n content: "*";\n color: var(--components-form-text-required);\n font-weight: 700;\n}\nnv-fieldnumber label {\n display: flex;\n align-items: center;\n gap: var(--form-label-gap);\n align-self: stretch;\n color: var(--components-form-text-label-default);\n font-family: "TT Norms Pro", sans-serif;\n font-size: var(--form-label-font-size);\n font-style: normal;\n font-weight: 500;\n line-height: var(--form-label-line-height);\n}\nnv-fieldnumber .input-wrapper {\n display: flex;\n flex-wrap: wrap;\n gap: var(--form-gap-x);\n align-items: stretch;\n align-self: stretch;\n}\nnv-fieldnumber .input-wrapper .input-container {\n display: flex;\n flex-grow: 1;\n justify-content: center;\n align-items: center;\n align-self: stretch;\n border-radius: var(--form-field-radius);\n border-width: 1px;\n border-style: solid;\n border-color: var(--nv-field-border-default);\n opacity: var(--components-form-opacity-default, 1);\n background: var(--nv-field-background);\n transition: all 150ms ease-out;\n container-type: inline-size;\n container-name: field-number-input-container;\n overflow: hidden;\n position: relative;\n}\nnv-fieldnumber .input-wrapper .input-container:hover {\n border-color: var(--nv-field-border-hover);\n}\nnv-fieldnumber .input-wrapper .input-container:focus-within, nv-fieldnumber .input-wrapper .input-container:focus-within:hover, nv-fieldnumber .input-wrapper .input-container:focus, nv-fieldnumber .input-wrapper .input-container:focus:hover {\n border-color: var(--nv-field-border-focus);\n box-shadow: 0px 0px 0px var(--focus-field-stroke) var(--nv-field-focus-box-shadow);\n}\nnv-fieldnumber .input-wrapper .input-container:has(input:read-only) {\n opacity: 0.5;\n background-color: var(--components-form-field-background-readonly);\n border-color: var(--nv-field-border-readonly);\n}\nnv-fieldnumber .input-wrapper .input-container:has(input:disabled) {\n opacity: 0.5;\n background-color: var(--components-form-field-background-disabled);\n border-color: var(--nv-field-border-disabled);\n}\nnv-fieldnumber .input-wrapper .input-container input {\n display: flex;\n align-items: center;\n flex: 1 0 0;\n overflow: hidden;\n background-color: transparent;\n color: var(--components-form-field-content-text);\n padding: var(--form-field-padding-y) var(--form-field-padding-x);\n font-size: var(--form-field-font-size);\n font-style: normal;\n font-weight: 500;\n line-height: var(--form-field-line-height);\n width: 100%;\n /* Hide Edge built-in password reveal and clear icons */\n width: 100%;\n appearance: textfield;\n}\nnv-fieldnumber .input-wrapper .input-container input:focus {\n outline: none;\n}\nnv-fieldnumber .input-wrapper .input-container input::placeholder {\n overflow: hidden;\n color: var(--components-form-field-content-placeholder);\n text-overflow: ellipsis;\n font-family: "TT Norms Pro", sans-serif;\n font-size: var(--form-field-font-size);\n font-style: normal;\n font-weight: 400;\n line-height: var(--form-field-line-height);\n}\nnv-fieldnumber .input-wrapper .input-container input[type=password]::-ms-clear, nv-fieldnumber .input-wrapper .input-container input[type=password]::-ms-reveal {\n display: none;\n width: 0;\n height: 0;\n}\nnv-fieldnumber .input-wrapper .input-container input::-webkit-inner-spin-button, nv-fieldnumber .input-wrapper .input-container input::-webkit-outer-spin-button {\n appearance: none;\n margin: 0;\n}\nnv-fieldnumber .input-wrapper .input-container nv-icon.validation {\n color: var(--nv-field-border-default);\n margin-right: var(--form-field-gap);\n}\nnv-fieldnumber .input-wrapper .input-container > nv-iconbutton {\n border: 0px;\n border-radius: 0px;\n}\nnv-fieldnumber .input-wrapper .input-container > nv-iconbutton:focus-visible {\n border-radius: var(--button-md-border-radius);\n outline-offset: -3px;\n}\nnv-fieldnumber .input-wrapper .input-container > nv-iconbutton:last-of-type {\n border-top-right-radius: var(--form-field-radius);\n border-bottom-right-radius: var(--form-field-radius);\n}\nnv-fieldnumber .input-wrapper .input-container .stepper {\n display: flex;\n border-left: var(--notification-border-width-low-emphasis) solid var(--components-form-field-border-readonly);\n}\nnv-fieldnumber .input-wrapper .input-container .stepper > nv-iconbutton {\n border: 0px;\n border-radius: 0px;\n border-radius: 0px;\n}\nnv-fieldnumber .input-wrapper .input-container .stepper > nv-iconbutton:focus-visible {\n border-radius: var(--button-md-border-radius);\n outline-offset: -3px;\n}\nnv-fieldnumber .input-wrapper .input-container .stepper > nv-iconbutton:last-of-type {\n border-top-right-radius: var(--form-field-radius);\n border-bottom-right-radius: var(--form-field-radius);\n}\n@container field-number-input-container (width < 150px) {\n nv-fieldnumber .input-wrapper .input-container .stepper-spacer {\n display: none;\n }\n nv-fieldnumber .input-wrapper .input-container .stepper {\n display: none;\n }\n}\nnv-fieldnumber .description {\n display: flex;\n align-items: center;\n align-self: stretch;\n gap: var(--spacing-1);\n color: var(--components-form-text-description-default);\n font-family: "TT Norms Pro", sans-serif;\n font-size: var(--form-description-font-size);\n font-style: normal;\n line-height: var(--form-description-line-height);\n}\nnv-fieldnumber .error-description {\n display: flex;\n align-items: center;\n align-self: stretch;\n gap: var(--spacing-1);\n color: var(--components-form-text-description-default);\n font-family: "TT Norms Pro", sans-serif;\n font-size: var(--form-description-font-size);\n font-style: normal;\n line-height: var(--form-description-line-height);\n color: var(--components-form-text-description-error);\n}';const d=a;const l=class{constructor(r){n(this,r);this.valueChanged=e(this,"valueChanged",7);this.inputId=t();this.disabled=false;this.readonly=false;this.required=false;this.error=false;this.success=false;this.step=1;this.autofocus=false;this.fluid=false;this.handleInput=n=>{const e=n.target;this.value=e.valueAsNumber};this.handleInputContainerClick=()=>{this.inputElement.focus()};this.handlePlus=()=>{this.inputElement.stepUp();this.value=Number(this.inputElement.value)};this.handleMinus=()=>{this.inputElement.stepDown();this.value=Number(this.inputElement.value)};this.preventSelection=n=>{n.preventDefault()};this.isMinValueReached=()=>this.min!==undefined&&this.value<=this.min;this.isMaxValueReached=()=>this.max!==undefined&&this.value>=this.max}watchValueHandler(n){this.valueChanged.emit(n)}componentWillRender(){if(this.message){this.description=this.message}if(this.validation){this.errorDescription=this.validation;this.error=true}}render(){return r(i,{key:"1bbe4506220df2ebb5723e916edcf49b3c0295e4"},(this.label||this.el.querySelector('[slot="label"]'))&&r("label",{key:"56ed85a58e669e9c6aec04ed9ea7bc9664c478f8",htmlFor:this.inputId},r("slot",{key:"b4cf04b6bca34f0ff158fd9e7b14c56df7ea3e8a",name:"label"},this.label)),r("div",{key:"9c9432645591952acff5b1f73c5be8d8f1dae7fb",class:"input-wrapper"},r("slot",{key:"05bacf384b22fce12a66109864ec95fab403f8d7",name:"before-input"}),r("div",{key:"66f0c59c38b7309834ba22bbd767e94a04964781",class:"input-container",onClick:this.handleInputContainerClick},r("slot",{key:"7e2a7c766484b8c4c4caabab311ea635f95eb4fd",name:"leading-input"}),r("input",{key:"808f4f16b3a73d0b07efa7cff18dd5dd3f94bda4",id:this.inputId,ref:n=>this.inputElement=n,placeholder:this.placeholder,name:this.name,type:"number",autofocus:this.autofocus,required:this.required,max:this.max,min:this.min,step:this.step,value:this.value,disabled:this.disabled,readOnly:this.readonly,onInput:this.handleInput}),r("slot",{key:"65a7f356f2a9f650df9e78f53b98b43c7e179802",name:"trailing-input"}),this.error&&r("nv-icon",{key:"5eed73e177092188387abd35ccab6085a1bdb2cf",name:"alert-circle",class:"validation",size:"md"}),this.success&&r("nv-icon",{key:"74edadb953f9668e49a1b3ecd328bfd2999065ea",name:"circle-check",class:"validation",size:"md"}),r("div",{key:"e886fe1df175d5c4dcd9a4704ad47820e0af2474",class:"stepper"},r("nv-iconbutton",{key:"ff6247b57693f2a45c26e1eae67c9d86c473e0e3",size:"md",name:"minus",emphasis:"lower",onClick:this.handleMinus,disabled:this.isMinValueReached(),onMouseDown:this.preventSelection,tabindex:"-1"}),r("nv-iconbutton",{key:"aa12c105d159e08e874bdd37f56ab1837ba01c4f",size:"md",name:"plus",emphasis:"lower",onClick:this.handlePlus,disabled:this.isMaxValueReached(),onMouseDown:this.preventSelection,tabindex:"-1"}))),r("slot",{key:"c485ac2e1ca388b6e0998bdb1c5ca5876cd9e392",name:"after-input"})),(this.description||this.el.querySelector('[slot="description"]'))&&r("div",{key:"88d80f2f5b0061b0f8dab4bcc88bf2d196427800",class:"description"},r("slot",{key:"0380af6af9986d000ad58328e6c4b8250f86c22a",name:"description"},this.description)),(this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&r("div",{key:"a2233d218f58376b6c7958efabe96a3e08c6e1f6",hidden:!this.error,class:"error-description"},r("slot",{key:"d90bc8abdcecc9711b271472a8da60b207aa04af",name:"error-description"},this.errorDescription)))}static get formAssociated(){return true}get el(){return o(this)}static get watchers(){return{value:["watchValueHandler"]}}};l.style=d;export{l as nv_fieldnumber};
2
- //# sourceMappingURL=p-29f68e07.entry.js.map
@@ -1,2 +0,0 @@
1
- import{l as t,a as o}from"./p-42ea6b74.js";const n=(t,o)=>1-3*o+3*t;const e=(t,o)=>3*o-6*t;const r=t=>3*t;const i=(t,o,i)=>((n(o,i)*t+e(o,i))*t+r(o))*t;const a=(t,o,i)=>3*n(o,i)*t*t+2*e(o,i)*t+r(o);const s=1e-7;const m=10;function g(t,o,n,e,r){let a;let g;let c=0;do{g=o+(n-o)/2;a=i(g,e,r)-t;if(a>0){n=g}else{o=g}}while(Math.abs(a)>s&&++c<m);return g}const c=8;const l=.001;function p(t,o,n,e){for(let r=0;r<c;++r){const r=a(o,n,e);if(r===0){return o}const s=i(o,n,e)-t;o-=s/r}return o}const h=11;const f=1/(h-1);function u(o,n,e,r){if(o===n&&e===r)return t;const s=new Float32Array(h);for(let t=0;t<h;++t){s[t]=i(t*f,o,e)}function m(t){let n=0;let r=1;const i=h-1;for(;r!==i&&s[r]<=t;++r){n+=f}--r;const m=(t-s[r])/(s[r+1]-s[r]);const c=n+m*f;const u=a(c,o,e);if(u>=l){return p(t,c,o,e)}else if(u===0){return c}else{return g(t,n,n+f,o,e)}}return t=>t===0||t===1?t:i(m(t),n,r)}function x(t){const o=t.getBoundingClientRect().height;const n=getComputedStyle(t);const e=parseFloat(n.marginTop)||0;const r=parseFloat(n.marginBottom)||0;const i=o+e+r;return{height:o,marginTop:e,marginBottom:r,total:i}}const w=(t,{duration:n=200,overflow:e="hidden"}={})=>{let r=null;const i=()=>{if(r){r.stop();r=null}};const a=o=>{for(const[n,e]of Object.entries(o)){t.style[n]=e}};function s(){i();a({height:"0px",marginTop:"0px",marginBottom:"0px",overflow:e})}function m(){i();a({height:"",marginTop:"",marginBottom:"",overflow:""})}function g(){i();return new Promise((i=>{const{height:s,marginTop:m,marginBottom:g,total:c}=x(t);a({height:`${s}px`,marginTop:`${m}px`,marginBottom:`${g}px`,overflow:e,willChange:"height, margin"});const l=c>0?c:1e-4;r=o({from:c,to:0,duration:n,ease:u(.2,0,0,1),onUpdate:t=>{const o=t/l;a({height:`${s*o}px`,marginTop:`${m*o}px`,marginBottom:`${g*o}px`})},onComplete:()=>{a({height:"0px",marginTop:"0px",marginBottom:"0px",willChange:""});i()}})}))}function c(){i();return new Promise((i=>{a({height:"",marginTop:"",marginBottom:"",overflow:e});const{height:s,marginTop:m,marginBottom:g,total:c}=x(t);a({height:"0px",marginTop:"0px",marginBottom:"0px",willChange:"height, margin"});const l=c>0?c:1e-4;r=o({from:0,to:c,duration:n,ease:u(.2,0,0,1),onUpdate:t=>{const o=t/l;a({height:`${s*o}px`,marginTop:`${m*o}px`,marginBottom:`${g*o}px`})},onComplete:()=>{a({height:"",marginTop:"",marginBottom:"",overflow:"",willChange:""});i()}})}))}return{collapse:g,expand:c,setCollapsed:s,setExpanded:m}};export{w as u};
2
- //# sourceMappingURL=p-31591941.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["a","a1","a2","b","c","calcBezier","t","getSlope","subdivisionPrecision","subdivisionMaxIterations","binarySubdivide","aX","aA","aB","mX1","mX2","currentX","currentT","i","Math","abs","newtonIterations","newtonMinSlope","newtonRaphsonIterate","aGuessT","currentSlope","kSplineTableSize","kSampleStepSize","cubicBezier","mY1","mY2","linear","sampleValues","Float32Array","getTForX","intervalStart","currentSample","lastSample","dist","guessForT","initialSlope","getBoxMetrics","node","rectHeight","getBoundingClientRect","height","style","getComputedStyle","marginTop","parseFloat","marginBottom","total","useCollapse","duration","overflow","currentAnimation","stop","setStyle","styles","k","v","Object","entries","setCollapsed","setExpanded","collapse","Promise","resolve","willChange","denom","animate","from","to","ease","onUpdate","ratio","onComplete","expand"],"sources":["../../node_modules/popmotion/dist/es/easing/cubic-bezier.mjs","src/animations/collapse.animation.ts"],"sourcesContent":["import { linear } from './index.mjs';\n\nconst a = (a1, a2) => 1.0 - 3.0 * a2 + 3.0 * a1;\nconst b = (a1, a2) => 3.0 * a2 - 6.0 * a1;\nconst c = (a1) => 3.0 * a1;\nconst calcBezier = (t, a1, a2) => ((a(a1, a2) * t + b(a1, a2)) * t + c(a1)) * t;\nconst getSlope = (t, a1, a2) => 3.0 * a(a1, a2) * t * t + 2.0 * b(a1, a2) * t + c(a1);\nconst subdivisionPrecision = 0.0000001;\nconst subdivisionMaxIterations = 10;\nfunction binarySubdivide(aX, aA, aB, mX1, mX2) {\n let currentX;\n let currentT;\n let i = 0;\n do {\n currentT = aA + (aB - aA) / 2.0;\n currentX = calcBezier(currentT, mX1, mX2) - aX;\n if (currentX > 0.0) {\n aB = currentT;\n }\n else {\n aA = currentT;\n }\n } while (Math.abs(currentX) > subdivisionPrecision &&\n ++i < subdivisionMaxIterations);\n return currentT;\n}\nconst newtonIterations = 8;\nconst newtonMinSlope = 0.001;\nfunction newtonRaphsonIterate(aX, aGuessT, mX1, mX2) {\n for (let i = 0; i < newtonIterations; ++i) {\n const currentSlope = getSlope(aGuessT, mX1, mX2);\n if (currentSlope === 0.0) {\n return aGuessT;\n }\n const currentX = calcBezier(aGuessT, mX1, mX2) - aX;\n aGuessT -= currentX / currentSlope;\n }\n return aGuessT;\n}\nconst kSplineTableSize = 11;\nconst kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);\nfunction cubicBezier(mX1, mY1, mX2, mY2) {\n if (mX1 === mY1 && mX2 === mY2)\n return linear;\n const sampleValues = new Float32Array(kSplineTableSize);\n for (let i = 0; i < kSplineTableSize; ++i) {\n sampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);\n }\n function getTForX(aX) {\n let intervalStart = 0.0;\n let currentSample = 1;\n const lastSample = kSplineTableSize - 1;\n for (; currentSample !== lastSample && sampleValues[currentSample] <= aX; ++currentSample) {\n intervalStart += kSampleStepSize;\n }\n --currentSample;\n const dist = (aX - sampleValues[currentSample]) /\n (sampleValues[currentSample + 1] - sampleValues[currentSample]);\n const guessForT = intervalStart + dist * kSampleStepSize;\n const initialSlope = getSlope(guessForT, mX1, mX2);\n if (initialSlope >= newtonMinSlope) {\n return newtonRaphsonIterate(aX, guessForT, mX1, mX2);\n }\n else if (initialSlope === 0.0) {\n return guessForT;\n }\n else {\n return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);\n }\n }\n return (t) => t === 0 || t === 1 ? t : calcBezier(getTForX(t), mY1, mY2);\n}\n\nexport { cubicBezier };\n","import { animate, cubicBezier } from 'popmotion';\n\nexport type CollapseOptions = {\n /**\n * Duration of the expand/collapse animation in milliseconds.\n * @default 200\n */\n duration?: number;\n\n /**\n * Set the overflow state while animating.\n * @default \"hidden\"\n */\n overflow?: 'hidden' | 'visible';\n};\n\n/**\n * Read current box metrics (height + vertical margins).\n * @param {HTMLElement} node - The element to measure.\n * @returns {object} The box metrics.\n */\nfunction getBoxMetrics(node: HTMLElement) {\n const rectHeight = node.getBoundingClientRect().height;\n const style = getComputedStyle(node);\n const marginTop = parseFloat(style.marginTop) || 0;\n const marginBottom = parseFloat(style.marginBottom) || 0;\n const total = rectHeight + marginTop + marginBottom;\n return { height: rectHeight, marginTop, marginBottom, total };\n}\n\nconst useCollapse = (\n node: HTMLElement,\n { duration = 200, overflow = 'hidden' }: CollapseOptions = {},\n) => {\n let currentAnimation: ReturnType<typeof animate> | null = null;\n\n const stop = () => {\n if (currentAnimation) {\n currentAnimation.stop();\n currentAnimation = null;\n }\n };\n\n const setStyle = (styles: Partial<CSSStyleDeclaration>) => {\n for (const [k, v] of Object.entries(styles)) {\n node.style[k] = v as string;\n }\n };\n\n /** Instantly apply collapsed styles (no animation). */\n function setCollapsed() {\n stop();\n setStyle({\n height: '0px',\n marginTop: '0px',\n marginBottom: '0px',\n overflow,\n });\n }\n\n /** Instantly apply expanded styles (no animation). */\n function setExpanded() {\n stop();\n setStyle({\n height: '',\n marginTop: '',\n marginBottom: '',\n overflow: '',\n });\n }\n\n /**\n * Collapse: animate from current box (height + margins) down to 0.\n */\n function collapse() {\n stop();\n return new Promise<void>(resolve => {\n const { height, marginTop, marginBottom, total } = getBoxMetrics(node);\n\n // Lock current box\n setStyle({\n height: `${height}px`,\n marginTop: `${marginTop}px`,\n marginBottom: `${marginBottom}px`,\n overflow,\n willChange: 'height, margin',\n });\n\n const denom = total > 0 ? total : 0.0001; // avoid divide-by-zero\n\n currentAnimation = animate({\n from: total,\n to: 0,\n duration,\n ease: cubicBezier(0.2, 0, 0, 1),\n onUpdate: v => {\n const ratio = v / denom;\n setStyle({\n height: `${height * ratio}px`,\n marginTop: `${marginTop * ratio}px`,\n marginBottom: `${marginBottom * ratio}px`,\n });\n },\n onComplete: () => {\n setStyle({\n height: '0px',\n marginTop: '0px',\n marginBottom: '0px',\n willChange: '',\n });\n resolve();\n },\n });\n });\n }\n\n /**\n * Expand: animate from 0 box to the element's natural box (height + margins),\n * then restore `height: auto` and computed margins.\n */\n function expand() {\n stop();\n return new Promise<void>(resolve => {\n // Let the element size naturally to measure the target box\n setStyle({\n height: '',\n marginTop: '',\n marginBottom: '',\n overflow,\n });\n const { height, marginTop, marginBottom, total } = getBoxMetrics(node);\n\n // Start locked at zero box\n setStyle({\n height: '0px',\n marginTop: '0px',\n marginBottom: '0px',\n willChange: 'height, margin',\n });\n\n const denom = total > 0 ? total : 0.0001;\n\n currentAnimation = animate({\n from: 0,\n to: total,\n duration,\n ease: cubicBezier(0.2, 0, 0, 1),\n onUpdate: v => {\n const ratio = v / denom;\n setStyle({\n height: `${height * ratio}px`,\n marginTop: `${marginTop * ratio}px`,\n marginBottom: `${marginBottom * ratio}px`,\n });\n },\n onComplete: () => {\n // Restore natural layout\n setStyle({\n height: '',\n marginTop: '',\n marginBottom: '',\n overflow: '',\n willChange: '',\n });\n resolve();\n },\n });\n });\n }\n\n return { collapse, expand, setCollapsed, setExpanded };\n};\n\nexport { useCollapse };\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as s,h as e,H as a,g as i}from"./p-d0a33e64.js";import{d as n,e as o}from"./p-cb34aa4f.js";const r="nv-table{display:block}nv-table .hidden{display:none}nv-table table{border-collapse:collapse;border-color:inherit;text-indent:0;width:100%}nv-table th{text-align:left;border-bottom:1px solid var(--components-datagrid-header-border);height:var(--spacing-12);padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-md);font-weight:700;color:var(--components-datagrid-header-text)}nv-table td{border-bottom:1px solid var(--components-datagrid-body-border);height:var(--spacing-12);max-height:var(--spacing-14);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-md);font-weight:400;color:var(--components-datagrid-body-text);white-space:nowrap;text-overflow:ellipsis}nv-table tbody>tr:hover{background:var(--color-interaction-container-neutral-background-hover)}";const l=r;const h=class{constructor(e){t(this,e);this.action=s(this,"action",7);this.templateCache=new Map;this.headerTemplateCache=new Map;this.parsedColumns=[];this.parsedData=[];this.table=null;this.data=[];this.columnsConfig=[];this.fallbackValue="N/A";this.noDataMessage="No data available";this.noColumnsNoDataMessage="No data or columns available to display."}cacheTemplates(){const t=Array.from(this.el.querySelectorAll("nv-tablecolumn"));t.forEach((t=>{const s=t.name;const e=t.querySelector('[slot="cell"]');if(e){const t=n(e);this.templateCache.set(s,t)}const a=t.querySelector('[slot="header"]');if(a){const t=n(a);this.headerTemplateCache.set(s,t)}else{const e=t.header;if(e){const t=document.createElement("div");t.textContent=e;this.headerTemplateCache.set(s,t)}}}))}parseDataAndColumns(){if(this.dataJson){this.parseJsonData(this.dataJson)}else if(this.data&&this.data.length>0){this.parseDataArray(this.data,this.parsedData)}if(this.columnsConfigJson){this.parseJsonColumns(this.columnsConfigJson,this.parsedColumns)}else if(this.columnsConfig&&this.columnsConfig.length>0){this.parseColumnsArray(this.columnsConfig,this.parsedColumns)}else if(this.headerTemplateCache.size>0){const t=Array.from(this.headerTemplateCache.keys());const s=t.map((t=>Object.assign({},{name:t,header:t?t.charAt(0).toUpperCase()+t.slice(1):""})));this.parseColumnsArray(s,this.parsedColumns)}else if(this.parsedData.length>0){const t=this.parsedData[0];const s=Object.keys(t).map((t=>({name:t,header:t.charAt(0).toUpperCase()+t.slice(1)})));this.parseColumnsArray(s,this.parsedColumns)}}deepEqual(t,s){return JSON.stringify(t)===JSON.stringify(s)}parseDataArray(t,s){const e=Array.isArray(t)?t:[];const a=Array.isArray(s)?s:[];if(this.deepEqual(e,a)){return}this.parsedData=Array.isArray(t)?t:[]}parseColumnsArray(t,s){const e=Array.isArray(t)?t:[];const a=Array.isArray(s)?s:[];if(this.deepEqual(e,a)){return}this.parsedColumns=e}initializeTable(){this.table=null;if(this.parsedColumns.length>0){this.table={columns:this.parsedColumns,data:this.getTableData()}}else{this.table=null}}getTableData(){if(this.parsedData&&Array.isArray(this.parsedData)&&this.parsedData.length>0){return[...this.parsedData]}else{return[]}}replaceKeyWithValue(t,s){var e;return(e=s.split(".").reduce(((t,s)=>t&&t[s]!==undefined?t[s]:undefined),t))!==null&&e!==void 0?e:this.fallbackValue}renderTemplate(t,s){if(!t){return null}const a=t instanceof HTMLTemplateElement?t.content:t;const i=n(a);i.querySelectorAll("*").forEach((t=>{this.replacePlaceholdersTextContent(t,s);this.replacePlaceholdersAttributes(t,s);this.replacePlaceholdersProperties(t,s)}));i.querySelectorAll("[data-bind-event]").forEach((t=>{const e=t.getAttribute("data-bind-event")||"";const a=e.split(":");if(!e.includes(":")||a.length<2){console.warn("Invalid data-bind-event format:",e);return}const i=a[0];const n=a[1];const o=a.length>2?a[2]:null;t.addEventListener(i,(()=>{var t;const e=(t=o===null||o===void 0?void 0:o.split(","))!==null&&t!==void 0?t:[];const a=e.reduce(((t,e)=>{t[e]=s===null||s===void 0?void 0:s[e];return t}),{});const i={keyAction:n,details:a};this.action.emit(i)}))}));setTimeout((()=>{i.querySelectorAll("*").forEach((t=>{if(typeof t.connectedCallback==="function"){t.connectedCallback()}}))}),0);return e("div",{ref:t=>{if(t){t.innerHTML="";t.appendChild(i)}}})}replacePlaceholdersTextContent(t,s){t.childNodes.forEach((t=>{if(t.nodeType===Node.TEXT_NODE){t.textContent=t.textContent.replace(/__([\w.]+)__/g,((t,e)=>this.replaceKeyWithValue(s,e)))}}))}replacePlaceholdersAttributes(t,s){Array.from(t.attributes).forEach((t=>{if(t.value.includes("__")){t.value=t.value.replace(/__([\w.]+)__/g,((t,e)=>this.replaceKeyWithValue(s,e)))}}))}replacePlaceholdersProperties(t,s){const e=new Set;Object.keys(t).forEach((t=>e.add(t)));let a=Object.getPrototypeOf(t);while(a&&a!==HTMLElement.prototype){Object.keys(a).forEach((t=>e.add(t)));a=Object.getPrototypeOf(a)}e.forEach((e=>{if(typeof t[e]!=="function"&&!e.startsWith("on")&&!o.has(e)){try{const a=t[e];if(typeof a==="string"&&a.includes("__")){t[e]=a.replace(/__([\w.]+)__/g,((t,e)=>this.replaceKeyWithValue(s,e)))}}catch(t){console.warn(`Could not assign property ${e}:`,t.message)}}}))}parseColumns(t,s){this.parseColumnsArray(t,s)}parseJsonColumns(t,s){try{const e=t?JSON.parse(t):[];this.parseColumnsArray(e,s)}catch(t){console.error("Invalid JSON format for columnsConfigJson:",t.message);this.parsedColumns=[]}}parseData(t,s){this.parseDataArray(t,s)}parseJsonData(t){try{const s=t?JSON.parse(t):[];this.parseDataArray(s,this.parsedData)}catch(t){console.error("Invalid JSON format for dataJson:",t.message);this.parsedData=[]}}handleParsedChange(){this.initializeTable()}componentWillLoad(){this.cacheTemplates();this.parseDataAndColumns()}render(){const t=!this.table||this.table===undefined||this.parsedColumns.length===0?[]:this.table.columns;const s=!this.table||this.table===undefined||this.parsedData.length===0?[]:this.table.data;return e(a,{key:"ea0b3237145fbc199d356010f1e001797afc52d6"},e("div",{key:"d3bf41bad48e549d1799b2c8e55a308a7d767973",class:"hidden"},e("slot",{key:"8263220ebd266240b16228b67f8d215d7d56afd7"})),e("slot",{key:"36d43d6870cf9a6021521579c0507afd1fe85081",name:"before"}),this.parsedColumns.length===0&&this.parsedData.length===0?e("div",{class:"no-data"},this.noColumnsNoDataMessage):e("table",{class:"table"},this.parsedColumns.length>0&&t.length>0&&e("thead",{class:"table-header"},e("tr",null,t&&t.map((t=>e("th",{key:t.name},this.renderTemplate(this.headerTemplateCache.get(t.name),{})||t.header))))),e("tbody",{class:"table-body"},!s||s.length===0?e("tr",null,e("td",{colSpan:t.length||12,class:"no-data"},this.noDataMessage)):s.map((s=>e("tr",{key:JSON.stringify(s)},t.map((t=>{var a;return e("td",null,this.renderTemplate(this.templateCache.get(t.name),s)||((a=s[t.name])!==null&&a!==void 0?a:this.fallbackValue))}))))))),e("slot",{key:"233b61e9099f58ca0eeeb7d0f7fdc7bd71bc9065",name:"after"}))}get el(){return i(this)}static get watchers(){return{columnsConfig:["parseColumns"],columnsConfigJson:["parseJsonColumns"],data:["parseData"],dataJson:["parseJsonData"],parsedColumns:["handleParsedChange"],parsedData:["handleParsedChange"]}}};h.style=l;export{h as nv_table};
2
- //# sourceMappingURL=p-3784efdc.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["nvTableCss","NvTableStyle0","NvTable","constructor","hostRef","this","templateCache","Map","headerTemplateCache","parsedColumns","parsedData","table","data","columnsConfig","fallbackValue","noDataMessage","noColumnsNoDataMessage","cacheTemplates","columns","Array","from","el","querySelectorAll","forEach","col","key","name","cellSlot","querySelector","element","deepCopyElement","set","headerSlot","header","headerDiv","document","createElement","textContent","parseDataAndColumns","dataJson","parseJsonData","length","parseDataArray","columnsConfigJson","parseJsonColumns","parseColumnsArray","size","headerKeys","keys","arrayColumnsConfig","map","Object","assign","charAt","toUpperCase","slice","firstRow","deepEqual","a","b","JSON","stringify","newValue","oldValue","safeNewValue","isArray","safeOldValue","initializeTable","getTableData","replaceKeyWithValue","obj","path","_a","split","reduce","acc","undefined","renderTemplate","template","row","templateContent","HTMLTemplateElement","content","replacePlaceholdersTextContent","replacePlaceholdersAttributes","replacePlaceholdersProperties","bindEvent","getAttribute","splitted","includes","console","warn","eventType","keyAction","details","addEventListener","keyValue","action","emit","setTimeout","child","connectedCallback","h","ref","innerHTML","appendChild","childNodes","node","nodeType","Node","TEXT_NODE","replace","_","attributes","attr","value","properties","Set","add","proto","getPrototypeOf","HTMLElement","prototype","prop","startsWith","excludedProps","has","error","message","parseColumns","newItems","parse","e","parseData","handleParsedChange","componentWillLoad","render","headerGroups","rows","Host","class","get","colSpan"],"sources":["src/components/nv-table/nv-table.scss?tag=nv-table","src/components/nv-table/nv-table.tsx"],"sourcesContent":["@mixin root-styles() {\n display: block;\n}\n\nnv-table {\n @include root-styles();\n\n .hidden {\n display: none;\n }\n\n table {\n border-collapse: collapse;\n border-color: inherit;\n text-indent: 0;\n width: 100%;\n }\n th {\n text-align: left;\n border-bottom: 1px solid var(--components-datagrid-header-border);\n height: var(--spacing-12);\n padding: var(--spacing-3) var(--spacing-4);\n font-size: var(--font-size-md);\n font-weight: 700;\n color: var(--components-datagrid-header-text);\n }\n td {\n border-bottom: 1px solid var(--components-datagrid-body-border);\n height: var(--spacing-12);\n max-height: var(--spacing-14);\n padding: var(--spacing-2) var(--spacing-4);\n font-size: var(--font-size-md);\n font-weight: 400;\n color: var(--components-datagrid-body-text);\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n tbody > tr:hover {\n background: var(--color-interaction-container-neutral-background-hover);\n }\n}\n\n// https://tailwindcss.com/docs/table-layout","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n Component,\n Host,\n Prop,\n State,\n h,\n Element,\n Watch,\n Event,\n EventEmitter,\n} from '@stencil/core';\nimport { ColumnConfig } from '../../interfaces/ColumnConfig';\nimport { deepCopyElement, excludedProps } from '../../utils/dom.utils';\n\n/**\n * Helper interface to define the table structure\n */\ninterface Table {\n /**\n * Configuration of the columns of the table\n */\n columns: ColumnConfig[];\n\n /**\n * Data to be displayed in the table\n */\n data: any[];\n}\n\n/**\n * @slot default - Slot for the composed table columns\n * @slot before - Use this slot to insert HTML before the table.\n * @slot after - Use this slot to insert HTML after the table.\n *\n * @deprecated [EXPERIMENTAL]\n * @experimental - This component is used as a base for the nv-datagrid component. Do not use it directly.\n */\n@Component({\n tag: 'nv-table',\n styleUrl: 'nv-table.scss',\n shadow: false,\n})\nexport class NvTable {\n @Element() el: HTMLNvTableElement;\n\n private readonly templateCache = new Map<string, Element>();\n private readonly headerTemplateCache = new Map<string, Element>();\n\n /****************************************************************************/\n //#region STATES\n\n @State()\n parsedColumns: ColumnConfig[] = [];\n\n @State()\n parsedData: any[] = [];\n\n @State()\n private table: Table = null;\n\n //#endregion STATES\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * Data to be displayed in the table\n */\n @Prop({ reflect: true })\n readonly data: any[] = [];\n\n /**\n * Configuration of the columns of the table\n */\n @Prop({ reflect: true })\n readonly columnsConfig: ColumnConfig[] = [];\n\n /**\n * Data to be displayed in the table\n */\n @Prop({ reflect: true })\n readonly dataJson?: string;\n\n /**\n * Configuration of the columns of the table\n */\n @Prop({ reflect: true })\n readonly columnsConfigJson?: string;\n\n /**\n * Fallback value to be displayed when data is not available\n */\n @Prop({ reflect: true })\n readonly fallbackValue: string = 'N/A';\n\n /**\n * Message to be displayed when no data is available\n */\n @Prop({ reflect: true })\n readonly noDataMessage: string = 'No data available';\n\n /**\n * The message to display when there are no columns or data available.\n * @default 'No data or columns available to display.'\n */\n @Prop({ reflect: true })\n readonly noColumnsNoDataMessage: string =\n 'No data or columns available to display.';\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region METHODS\n\n /**\n * Caches templates for cells and headers upfront to improve performance.\n */\n private cacheTemplates() {\n const columns = Array.from(this.el.querySelectorAll('nv-tablecolumn'));\n\n columns.forEach((col: HTMLNvTablecolumnElement) => {\n const key = col.name;\n const cellSlot = col.querySelector('[slot=\"cell\"]');\n\n if (cellSlot) {\n const element = deepCopyElement(cellSlot as HTMLElement);\n this.templateCache.set(key, element);\n }\n\n const headerSlot = col.querySelector('[slot=\"header\"]');\n\n if (headerSlot) {\n const element = deepCopyElement(headerSlot as HTMLElement);\n this.headerTemplateCache.set(key, element);\n } else {\n const header = col.header;\n\n if (header) {\n const headerDiv = document.createElement('div');\n headerDiv.textContent = header;\n this.headerTemplateCache.set(key, headerDiv);\n }\n }\n });\n }\n\n private parseDataAndColumns() {\n if (this.dataJson) {\n this.parseJsonData(this.dataJson);\n } else if (this.data && this.data.length > 0) {\n this.parseDataArray(this.data, this.parsedData);\n }\n\n if (this.columnsConfigJson) {\n this.parseJsonColumns(this.columnsConfigJson, this.parsedColumns);\n } else if (this.columnsConfig && this.columnsConfig.length > 0) {\n this.parseColumnsArray(this.columnsConfig, this.parsedColumns);\n } else if (this.headerTemplateCache.size > 0) {\n const headerKeys = Array.from(this.headerTemplateCache.keys());\n const arrayColumnsConfig = headerKeys.map<ColumnConfig>(key => ({\n ...{}, // Ensure no prototype inheritance\n name: key,\n header: key ? key.charAt(0).toUpperCase() + key.slice(1) : '',\n }));\n\n this.parseColumnsArray(arrayColumnsConfig, this.parsedColumns);\n } else if (this.parsedData.length > 0) {\n const firstRow = this.parsedData[0];\n const arrayColumnsConfig = Object.keys(firstRow).map<ColumnConfig>(\n key => ({\n name: key,\n header: key.charAt(0).toUpperCase() + key.slice(1),\n }),\n );\n\n this.parseColumnsArray(arrayColumnsConfig, this.parsedColumns);\n }\n }\n\n private deepEqual(a: any, b: any): boolean {\n return JSON.stringify(a) === JSON.stringify(b);\n }\n\n /**\n * Parses the data array and sets the state accordingly\n * @param {any[]} newValue - New value of the data array\n * @param {any[]} oldValue - Old value of the data array\n * @returns {void}\n */\n private parseDataArray(newValue: any[], oldValue: any[]) {\n // Ensure both are arrays for proper comparison\n const safeNewValue = Array.isArray(newValue) ? newValue : [];\n const safeOldValue = Array.isArray(oldValue) ? oldValue : [];\n\n if (this.deepEqual(safeNewValue, safeOldValue)) {\n return; // Deep comparison\n }\n\n this.parsedData = Array.isArray(newValue) ? newValue : [];\n }\n\n /**\n * Parses the columns array and sets the state accordingly\n * @param {ColumnConfig[]} newValue - New value of the columns array\n * @param {ColumnConfig[]} oldValue - Old value of the columns array\n * @returns {void}\n */\n private parseColumnsArray(\n newValue: ColumnConfig[] | null | undefined,\n oldValue: ColumnConfig[] | null | undefined,\n ) {\n // Ensure both are arrays for proper comparison\n const safeNewValue = Array.isArray(newValue) ? newValue : [];\n const safeOldValue = Array.isArray(oldValue) ? oldValue : [];\n\n // Use a proper deep comparison function (e.g., Lodash's isEqual)\n if (this.deepEqual(safeNewValue, safeOldValue)) {\n return;\n }\n\n // Assign only after confirming changes\n this.parsedColumns = safeNewValue;\n }\n\n private initializeTable() {\n // Clear the previous table instance (if any)\n this.table = null;\n\n if (this.parsedColumns.length > 0) {\n this.table = {\n columns: this.parsedColumns,\n data: this.getTableData(),\n };\n } else {\n this.table = null;\n }\n }\n\n private getTableData(): any[] {\n if (\n this.parsedData &&\n Array.isArray(this.parsedData) &&\n this.parsedData.length > 0\n ) {\n return [...this.parsedData];\n } else {\n return [];\n }\n }\n\n // Helper function to get nested property value\n private replaceKeyWithValue(obj: any, path: string) {\n return (\n path\n .split('.')\n .reduce(\n (acc, key) => (acc && acc[key] !== undefined ? acc[key] : undefined),\n obj,\n ) ?? this.fallbackValue\n );\n }\n\n private renderTemplate(template: Element | undefined, row: any) {\n if (!template) {\n return null;\n }\n\n // Handle <template> elements correctly\n const templateContent =\n template instanceof HTMLTemplateElement ? template.content : template;\n const element = deepCopyElement(templateContent as HTMLElement);\n\n // Replace placeholders in text content, attributes, and properties\n element.querySelectorAll('*').forEach(el => {\n // Replace placeholders in text content\n this.replacePlaceholdersTextContent(el, row);\n\n // Replace placeholders in attributes\n this.replacePlaceholdersAttributes(el, row);\n\n // Replace placeholders in properties\n this.replacePlaceholdersProperties(el, row);\n });\n\n // Handle `data-bind-event`\n element.querySelectorAll('[data-bind-event]').forEach(el => {\n const bindEvent = el.getAttribute('data-bind-event') || '';\n const splitted = bindEvent.split(':');\n\n if (!bindEvent.includes(':') || splitted.length < 2) {\n console.warn('Invalid data-bind-event format:', bindEvent);\n return;\n }\n\n const eventType = splitted[0];\n const keyAction = splitted[1];\n const details = splitted.length > 2 ? splitted[2] : null;\n\n el.addEventListener(eventType, () => {\n const keys = details?.split(',') ?? [];\n\n // Convert keys into a single object instead of an array of objects\n const keyValue = keys.reduce((acc, key) => {\n acc[key] = row?.[key];\n return acc;\n }, {} as Record<string, any>);\n\n const action = { keyAction, details: keyValue };\n\n this.action.emit(action);\n });\n });\n\n // Ensure Web Components are properly connected\n setTimeout(() => {\n element.querySelectorAll('*').forEach(child => {\n if (typeof (child as any).connectedCallback === 'function') {\n (child as any).connectedCallback();\n }\n });\n }, 0);\n\n return (\n <div\n ref={el => {\n if (el) {\n el.innerHTML = ''; // Remove existing content\n el.appendChild(element); // Append new element\n }\n }}\n ></div>\n );\n }\n\n private replacePlaceholdersTextContent(element: Element, row: any) {\n // ✅ Replace placeholders in text content\n element.childNodes.forEach(node => {\n if (node.nodeType === Node.TEXT_NODE) {\n node.textContent = node.textContent.replace(/__([\\w.]+)__/g, (_, key) =>\n this.replaceKeyWithValue(row, key),\n );\n }\n });\n }\n\n private replacePlaceholdersAttributes(element: Element, row: any) {\n // ✅ Replace placeholders in attributes\n Array.from(element.attributes).forEach(attr => {\n if (attr.value.includes('__')) {\n attr.value = attr.value.replace(/__([\\w.]+)__/g, (_, key) =>\n this.replaceKeyWithValue(row, key),\n );\n }\n });\n }\n\n private replacePlaceholdersProperties(element: Element, row: any) {\n // ✅ Dynamically extract relevant properties\n const properties = new Set<string>();\n\n // Collect only own enumerable properties\n Object.keys(element).forEach(key => properties.add(key));\n\n // Collect inherited properties from prototypes (HTMLElement -> Element -> Node)\n let proto = Object.getPrototypeOf(element);\n while (proto && proto !== HTMLElement.prototype) {\n Object.keys(proto).forEach(key => properties.add(key));\n proto = Object.getPrototypeOf(proto);\n }\n\n // ✅ Filter and copy only non-function properties and exclude irrelevant ones\n properties.forEach(prop => {\n if (\n typeof (element as any)[prop] !== 'function' && // Ignore methods\n !prop.startsWith('on') && // Ignore event listeners (onclick, oninput, etc.)\n !excludedProps.has(prop) // 🚨 Prevent text duplication and irrelevant props\n ) {\n try {\n const value = element[prop];\n\n // ✅ Replace placeholders only if the value is a string\n if (typeof value === 'string' && value.includes('__')) {\n element[prop] = value.replace(/__([\\w.]+)__/g, (_, key: string) =>\n this.replaceKeyWithValue(row, key),\n ) as any; // ✅ TypeScript safe\n }\n } catch (error) {\n console.warn(`Could not assign property ${prop}:`, error.message);\n }\n }\n });\n }\n\n //#endregion METHODS\n /****************************************************************************/\n //#region WATCHERS\n\n @Watch('columnsConfig')\n parseColumns(newValue: ColumnConfig[], oldValue: ColumnConfig[]) {\n this.parseColumnsArray(newValue, oldValue);\n }\n\n @Watch('columnsConfigJson')\n parseJsonColumns(newValue: string | undefined, oldValue: ColumnConfig[]) {\n try {\n const newItems = newValue ? JSON.parse(newValue) : [];\n\n this.parseColumnsArray(newItems, oldValue);\n } catch (e) {\n console.error('Invalid JSON format for columnsConfigJson:', e.message);\n this.parsedColumns = [];\n }\n }\n\n @Watch('data')\n parseData(newValue: any[], oldValue: any[]) {\n this.parseDataArray(newValue, oldValue);\n }\n\n @Watch('dataJson')\n parseJsonData(newValue: string | undefined) {\n try {\n const newItems = newValue ? JSON.parse(newValue) : [];\n\n this.parseDataArray(newItems, this.parsedData);\n } catch (e) {\n console.error('Invalid JSON format for dataJson:', e.message);\n this.parsedData = [];\n }\n }\n\n @Watch('parsedColumns')\n @Watch('parsedData')\n handleParsedChange() {\n this.initializeTable();\n }\n\n //#endregion WATCHERS\n /****************************************************************************/\n //#region LIFECYCLE\n\n componentWillLoad() {\n this.cacheTemplates();\n\n this.parseDataAndColumns();\n }\n\n //#endregion LIFECYCLE\n /****************************************************************************/\n //#region EVENTS\n\n @Event()\n action: EventEmitter<{\n /**\n * Key action to be performed\n */\n keyAction: string;\n\n /**\n * Details of the action to be performed\n */\n details: any;\n }>;\n\n //#endregion EVENTS\n /****************************************************************************/\n //#region RENDER\n\n render() {\n const headerGroups =\n !this.table || this.table === undefined || this.parsedColumns.length === 0\n ? []\n : this.table.columns;\n\n const rows =\n !this.table || this.table === undefined || this.parsedData.length === 0\n ? []\n : this.table.data;\n\n return (\n <Host>\n <div class=\"hidden\">\n <slot></slot>\n </div>\n\n <slot name=\"before\"></slot>\n\n {this.parsedColumns.length === 0 && this.parsedData.length === 0 ? (\n <div class=\"no-data\">{this.noColumnsNoDataMessage}</div>\n ) : (\n <table class=\"table\">\n {this.parsedColumns.length > 0 && headerGroups.length > 0 && (\n <thead class=\"table-header\">\n <tr>\n {headerGroups &&\n headerGroups.map(col => {\n return (\n <th key={col.name}>\n {this.renderTemplate(\n this.headerTemplateCache.get(col.name),\n {},\n ) || col.header}\n </th>\n );\n })}\n </tr>\n </thead>\n )}\n <tbody class=\"table-body\">\n {!rows || rows.length === 0 ? (\n <tr>\n <td colSpan={headerGroups.length || 12} class=\"no-data\">\n {this.noDataMessage}\n </td>\n </tr>\n ) : (\n rows.map(row => (\n <tr key={JSON.stringify(row)}>\n {headerGroups.map(col => (\n <td>\n {this.renderTemplate(\n this.templateCache.get(col.name),\n row,\n ) ||\n (row[col.name] ?? this.fallbackValue)}\n </td>\n ))}\n </tr>\n ))\n )}\n </tbody>\n </table>\n )}\n\n <slot name=\"after\"></slot>\n </Host>\n );\n }\n // #endregion RENDER\n}\n"],"mappings":"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","ignoreList":[]}