@nova-design-system/nova-webcomponents 3.2.0 → 3.4.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 (431) hide show
  1. package/dist/cjs/{index-108ddff0.js → index-c56424e5.js} +18 -186
  2. package/dist/cjs/index-c56424e5.js.map +1 -0
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/native.cjs.js +2 -23
  5. package/dist/cjs/native.cjs.js.map +1 -1
  6. package/dist/cjs/nv-alert.cjs.entry.js +1 -1
  7. package/dist/cjs/nv-avatar.cjs.entry.js +1 -1
  8. package/dist/cjs/nv-badge_2.cjs.entry.js +1 -1
  9. package/dist/cjs/nv-breadcrumb.cjs.entry.js +1 -1
  10. package/dist/cjs/nv-breadcrumbs.cjs.entry.js +1 -1
  11. package/dist/cjs/nv-button.cjs.entry.js +1 -1
  12. package/dist/cjs/nv-calendar.cjs.entry.js +391 -142
  13. package/dist/cjs/nv-calendar.cjs.entry.js.map +1 -1
  14. package/dist/cjs/nv-col.cjs.entry.js +1 -1
  15. package/dist/cjs/nv-datagrid.cjs.entry.js +45 -12
  16. package/dist/cjs/nv-datagrid.cjs.entry.js.map +1 -1
  17. package/dist/cjs/nv-datagridcolumn.cjs.entry.js +1 -1
  18. package/dist/cjs/nv-dialog.cjs.entry.js +1 -1
  19. package/dist/cjs/nv-dialogfooter_2.cjs.entry.js +1 -1
  20. package/dist/cjs/nv-fieldcheckbox.cjs.entry.js +1 -1
  21. package/dist/cjs/nv-fielddate.cjs.entry.js +45 -11
  22. package/dist/cjs/nv-fielddate.cjs.entry.js.map +1 -1
  23. package/dist/cjs/nv-fielddaterange.cjs.entry.js +98 -44
  24. package/dist/cjs/nv-fielddaterange.cjs.entry.js.map +1 -1
  25. package/dist/cjs/nv-fielddropdown.cjs.entry.js +2 -2
  26. package/dist/cjs/nv-fielddropdown.cjs.entry.js.map +1 -1
  27. package/dist/cjs/nv-fielddropdownitem.cjs.entry.js +1 -1
  28. package/dist/cjs/nv-fieldmultiselect.cjs.entry.js +2 -2
  29. package/dist/cjs/nv-fieldmultiselect.cjs.entry.js.map +1 -1
  30. package/dist/cjs/nv-fieldnumber.cjs.entry.js +5 -5
  31. package/dist/cjs/nv-fieldnumber.cjs.entry.js.map +1 -1
  32. package/dist/cjs/nv-fieldpassword.cjs.entry.js +5 -5
  33. package/dist/cjs/nv-fieldpassword.cjs.entry.js.map +1 -1
  34. package/dist/cjs/nv-fieldradio.cjs.entry.js +4 -4
  35. package/dist/cjs/nv-fieldselect.cjs.entry.js +7 -7
  36. package/dist/cjs/nv-fieldselect.cjs.entry.js.map +1 -1
  37. package/dist/cjs/nv-fieldslider.cjs.entry.js +28 -23
  38. package/dist/cjs/nv-fieldslider.cjs.entry.js.map +1 -1
  39. package/dist/cjs/nv-fieldtext.cjs.entry.js +5 -5
  40. package/dist/cjs/nv-fieldtext.cjs.entry.js.map +1 -1
  41. package/dist/cjs/nv-fieldtextarea.cjs.entry.js +5 -5
  42. package/dist/cjs/nv-fieldtextarea.cjs.entry.js.map +1 -1
  43. package/dist/cjs/nv-fieldtime.cjs.entry.js +11 -11
  44. package/dist/cjs/nv-fieldtime.cjs.entry.js.map +1 -1
  45. package/dist/cjs/nv-icon.cjs.entry.js +2 -2
  46. package/dist/cjs/nv-iconbutton_2.cjs.entry.js +3 -3
  47. package/dist/cjs/nv-menu.cjs.entry.js +2 -2
  48. package/dist/cjs/nv-menuitem.cjs.entry.js +2 -2
  49. package/dist/cjs/nv-popover.cjs.entry.js +3 -3
  50. package/dist/cjs/nv-popover.cjs.entry.js.map +1 -1
  51. package/dist/cjs/nv-row.cjs.entry.js +2 -2
  52. package/dist/cjs/nv-stack.cjs.entry.js +2 -2
  53. package/dist/cjs/nv-table.cjs.entry.js +3 -3
  54. package/dist/cjs/nv-tablecolumn.cjs.entry.js +1 -1
  55. package/dist/cjs/nv-toggle.cjs.entry.js +3 -3
  56. package/dist/cjs/nv-tooltip.cjs.entry.js +2 -2
  57. package/dist/collection/components/nv-calendar/nv-calendar.js +235 -136
  58. package/dist/collection/components/nv-calendar/nv-calendar.js.map +1 -1
  59. package/dist/collection/components/nv-calendar/nv-calendar.utils.js +32 -7
  60. package/dist/collection/components/nv-calendar/nv-calendar.utils.js.map +1 -1
  61. package/dist/collection/components/nv-calendar/partials/calendar-actions.js +11 -0
  62. package/dist/collection/components/nv-calendar/partials/calendar-actions.js.map +1 -0
  63. package/dist/collection/components/nv-calendar/partials/calendar-grid.js +24 -0
  64. package/dist/collection/components/nv-calendar/partials/calendar-grid.js.map +1 -0
  65. package/dist/collection/components/nv-calendar/partials/calendar-header.js +38 -0
  66. package/dist/collection/components/nv-calendar/partials/calendar-header.js.map +1 -0
  67. package/dist/collection/components/nv-calendar/partials/calendar-shortcuts.js +22 -0
  68. package/dist/collection/components/nv-calendar/partials/calendar-shortcuts.js.map +1 -0
  69. package/dist/collection/components/nv-calendar/partials/day-cell.js +31 -0
  70. package/dist/collection/components/nv-calendar/partials/day-cell.js.map +1 -0
  71. package/dist/collection/components/nv-calendar/partials/index.js +7 -0
  72. package/dist/collection/components/nv-calendar/partials/index.js.map +1 -0
  73. package/dist/collection/components/nv-calendar/partials/week-numbers.js +36 -0
  74. package/dist/collection/components/nv-calendar/partials/week-numbers.js.map +1 -0
  75. package/dist/collection/components/nv-calendar/test/nv-calendar.utils.test.js +692 -651
  76. package/dist/collection/components/nv-calendar/test/nv-calendar.utils.test.js.map +1 -1
  77. package/dist/collection/components/nv-calendar/test/partials/calendar-actions.logic.test.js +169 -0
  78. package/dist/collection/components/nv-calendar/test/partials/calendar-actions.logic.test.js.map +1 -0
  79. package/dist/collection/components/nv-calendar/test/partials/calendar-grid.logic.test.js +262 -0
  80. package/dist/collection/components/nv-calendar/test/partials/calendar-grid.logic.test.js.map +1 -0
  81. package/dist/collection/components/nv-calendar/test/partials/calendar-header.logic.test.js +208 -0
  82. package/dist/collection/components/nv-calendar/test/partials/calendar-header.logic.test.js.map +1 -0
  83. package/dist/collection/components/nv-calendar/test/partials/calendar-shortcuts.logic.test.js +355 -0
  84. package/dist/collection/components/nv-calendar/test/partials/calendar-shortcuts.logic.test.js.map +1 -0
  85. package/dist/collection/components/nv-calendar/test/partials/day-cell.logic.test.js +250 -0
  86. package/dist/collection/components/nv-calendar/test/partials/day-cell.logic.test.js.map +1 -0
  87. package/dist/collection/components/nv-calendar/test/partials/week-numbers.logic.test.js +217 -0
  88. package/dist/collection/components/nv-calendar/test/partials/week-numbers.logic.test.js.map +1 -0
  89. package/dist/collection/components/nv-datagrid/nv-datagrid.docs.js +88 -2
  90. package/dist/collection/components/nv-datagrid/nv-datagrid.docs.js.map +1 -1
  91. package/dist/collection/components/nv-datagrid/nv-datagrid.js +89 -10
  92. package/dist/collection/components/nv-datagrid/nv-datagrid.js.map +1 -1
  93. package/dist/collection/components/nv-fielddate/nv-fielddate.js +56 -16
  94. package/dist/collection/components/nv-fielddate/nv-fielddate.js.map +1 -1
  95. package/dist/collection/components/nv-fielddate/styles/nv-fielddate.css +44 -0
  96. package/dist/collection/components/nv-fielddate/test/nv-fielddate.logic.test.js +196 -0
  97. package/dist/collection/components/nv-fielddate/test/nv-fielddate.logic.test.js.map +1 -0
  98. package/dist/collection/components/nv-fielddaterange/nv-fielddaterange.docs.js +0 -1
  99. package/dist/collection/components/nv-fielddaterange/nv-fielddaterange.docs.js.map +1 -1
  100. package/dist/collection/components/nv-fielddaterange/nv-fielddaterange.js +125 -42
  101. package/dist/collection/components/nv-fielddaterange/nv-fielddaterange.js.map +1 -1
  102. package/dist/collection/components/nv-fielddaterange/styles/nv-fielddaterange.css +44 -0
  103. package/dist/collection/components/nv-fielddaterange/test/nv-fielddaterange.logic.test.js +137 -0
  104. package/dist/collection/components/nv-fielddaterange/test/nv-fielddaterange.logic.test.js.map +1 -0
  105. package/dist/collection/components/nv-fielddropdown/styles/nv-fielddropdown.css +46 -0
  106. package/dist/collection/components/nv-fieldmultiselect/styles/nv-fieldmultiselect.css +46 -0
  107. package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.css +44 -0
  108. package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.docs.js +8 -0
  109. package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.docs.js.map +1 -1
  110. package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.js +4 -3
  111. package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.js.map +1 -1
  112. package/dist/collection/components/nv-fieldpassword/nv-fieldpassword.css +44 -0
  113. package/dist/collection/components/nv-fieldpassword/nv-fieldpassword.js +3 -3
  114. package/dist/collection/components/nv-fieldradio/nv-fieldradio.js +3 -3
  115. package/dist/collection/components/nv-fieldselect/nv-fieldselect.css +44 -0
  116. package/dist/collection/components/nv-fieldselect/nv-fieldselect.js +5 -5
  117. package/dist/collection/components/nv-fieldslider/nv-fieldslider.docs.js +22 -22
  118. package/dist/collection/components/nv-fieldslider/nv-fieldslider.docs.js.map +1 -1
  119. package/dist/collection/components/nv-fieldslider/nv-fieldslider.js +30 -29
  120. package/dist/collection/components/nv-fieldslider/nv-fieldslider.js.map +1 -1
  121. package/dist/collection/components/nv-fieldslider/partials/field-input.js +1 -1
  122. package/dist/collection/components/nv-fieldslider/partials/field-input.js.map +1 -1
  123. package/dist/collection/components/nv-fieldslider/styles/nv-fieldslider.css +99 -20
  124. package/dist/collection/components/nv-fieldtext/nv-fieldtext.css +44 -0
  125. package/dist/collection/components/nv-fieldtext/nv-fieldtext.js +3 -3
  126. package/dist/collection/components/nv-fieldtextarea/nv-fieldtextarea.css +38 -0
  127. package/dist/collection/components/nv-fieldtextarea/nv-fieldtextarea.js +3 -3
  128. package/dist/collection/components/nv-fieldtime/nv-fieldtime.js +9 -9
  129. package/dist/collection/components/nv-fieldtime/styles/nv-fieldtime.css +44 -0
  130. package/dist/collection/components/nv-icon/nv-icon.js +1 -1
  131. package/dist/collection/components/nv-iconbutton/nv-iconbutton.js +1 -1
  132. package/dist/collection/components/nv-loader/nv-loader.js +1 -1
  133. package/dist/collection/components/nv-menu/nv-menu.js +1 -1
  134. package/dist/collection/components/nv-menuitem/nv-menuitem.js +1 -1
  135. package/dist/collection/components/nv-popover/nv-popover.js +3 -3
  136. package/dist/collection/components/nv-popover/nv-popover.js.map +1 -1
  137. package/dist/collection/components/nv-row/nv-row.js +1 -1
  138. package/dist/collection/components/nv-stack/nv-stack.js +1 -1
  139. package/dist/collection/components/nv-table/nv-table.js +2 -2
  140. package/dist/collection/components/nv-toggle/nv-toggle.js +2 -2
  141. package/dist/collection/components/nv-tooltip/nv-tooltip.js +1 -1
  142. package/dist/collection/templates/navigation.docs.js +1 -1
  143. package/dist/collection/templates/navigation.docs.js.map +1 -1
  144. package/dist/components/index.js +1 -1
  145. package/dist/components/nv-alert.js +2 -2
  146. package/dist/components/nv-avatar.js +2 -2
  147. package/dist/components/nv-badge.js +1 -1
  148. package/dist/components/nv-breadcrumb.js +3 -3
  149. package/dist/components/nv-breadcrumbs.js +1 -1
  150. package/dist/components/nv-button.js +1 -1
  151. package/dist/components/nv-calendar.js +1 -1
  152. package/dist/components/nv-col.js +1 -1
  153. package/dist/components/nv-datagrid.js +54 -19
  154. package/dist/components/nv-datagrid.js.map +1 -1
  155. package/dist/components/nv-datagridcolumn.js +1 -1
  156. package/dist/components/nv-dialog.js +6 -6
  157. package/dist/components/nv-dialogfooter.js +1 -1
  158. package/dist/components/nv-dialogheader.js +1 -1
  159. package/dist/components/nv-fieldcheckbox.js +1 -1
  160. package/dist/components/nv-fielddate.js +53 -25
  161. package/dist/components/nv-fielddate.js.map +1 -1
  162. package/dist/components/nv-fielddaterange.js +110 -62
  163. package/dist/components/nv-fielddaterange.js.map +1 -1
  164. package/dist/components/nv-fielddropdown.js +7 -7
  165. package/dist/components/nv-fielddropdown.js.map +1 -1
  166. package/dist/components/nv-fielddropdownitem.js +1 -1
  167. package/dist/components/nv-fielddropdownitemcheck.js +1 -1
  168. package/dist/components/nv-fieldmultiselect.js +9 -9
  169. package/dist/components/nv-fieldmultiselect.js.map +1 -1
  170. package/dist/components/nv-fieldnumber.js +1 -180
  171. package/dist/components/nv-fieldnumber.js.map +1 -1
  172. package/dist/components/nv-fieldpassword.js +8 -8
  173. package/dist/components/nv-fieldpassword.js.map +1 -1
  174. package/dist/components/nv-fieldradio.js +4 -4
  175. package/dist/components/nv-fieldselect.js +10 -10
  176. package/dist/components/nv-fieldselect.js.map +1 -1
  177. package/dist/components/nv-fieldslider.js +49 -26
  178. package/dist/components/nv-fieldslider.js.map +1 -1
  179. package/dist/components/nv-fieldtext.js +1 -1
  180. package/dist/components/nv-fieldtextarea.js +5 -5
  181. package/dist/components/nv-fieldtextarea.js.map +1 -1
  182. package/dist/components/nv-fieldtime.js +15 -15
  183. package/dist/components/nv-fieldtime.js.map +1 -1
  184. package/dist/components/nv-icon.js +1 -1
  185. package/dist/components/nv-iconbutton.js +1 -1
  186. package/dist/components/nv-loader.js +1 -1
  187. package/dist/components/nv-menu.js +5 -5
  188. package/dist/components/nv-menuitem.js +1 -1
  189. package/dist/components/nv-popover.js +1 -1
  190. package/dist/components/nv-row.js +2 -2
  191. package/dist/components/nv-stack.js +2 -2
  192. package/dist/components/nv-table.js +3 -3
  193. package/dist/components/nv-tablecolumn.js +1 -1
  194. package/dist/components/nv-toggle.js +3 -3
  195. package/dist/components/nv-tooltip.js +1 -1
  196. package/dist/components/{p-0ab80d95.js → p-131e5140.js} +4 -4
  197. package/dist/components/{p-0ab80d95.js.map → p-131e5140.js.map} +1 -1
  198. package/dist/components/{p-cbdc2c8b.js → p-3f567fde.js} +5 -5
  199. package/dist/components/{p-cbdc2c8b.js.map → p-3f567fde.js.map} +1 -1
  200. package/dist/components/p-3f58525b.js +167 -0
  201. package/dist/components/{p-f0a5e7e4.js.map → p-3f58525b.js.map} +1 -1
  202. package/dist/components/{p-33e231f4.js → p-6277f746.js} +2 -2
  203. package/dist/components/{p-33e231f4.js.map → p-6277f746.js.map} +1 -1
  204. package/dist/components/{p-07a89754.js → p-953d8b4d.js} +3 -3
  205. package/dist/components/{p-07a89754.js.map → p-953d8b4d.js.map} +1 -1
  206. package/dist/components/{p-dd2273a3.js → p-9e6e26cb.js} +2 -2
  207. package/dist/components/{p-dd2273a3.js.map → p-9e6e26cb.js.map} +1 -1
  208. package/dist/components/{p-d19b41d2.js → p-9f1e8ef3.js} +2 -2
  209. package/dist/components/{p-d19b41d2.js.map → p-9f1e8ef3.js.map} +1 -1
  210. package/dist/components/{p-4656efae.js → p-a0d7e0cd.js} +396 -169
  211. package/dist/components/p-a0d7e0cd.js.map +1 -0
  212. package/dist/components/{p-f1859ddc.js → p-a1438b39.js} +4 -4
  213. package/dist/components/{p-f1859ddc.js.map → p-a1438b39.js.map} +1 -1
  214. package/dist/components/{p-04cb3a6f.js → p-a189d074.js} +5 -5
  215. package/dist/components/{p-04cb3a6f.js.map → p-a189d074.js.map} +1 -1
  216. package/dist/components/p-a29a9396.js +184 -0
  217. package/dist/components/p-a29a9396.js.map +1 -0
  218. package/dist/components/{p-679e0fa9.js → p-aff3ed68.js} +10 -175
  219. package/dist/components/p-aff3ed68.js.map +1 -0
  220. package/dist/components/{p-76a30bf1.js → p-b207be02.js} +3 -3
  221. package/dist/components/{p-76a30bf1.js.map → p-b207be02.js.map} +1 -1
  222. package/dist/components/{p-581e67cc.js → p-c07c32d2.js} +3 -3
  223. package/dist/components/{p-581e67cc.js.map → p-c07c32d2.js.map} +1 -1
  224. package/dist/components/{p-cbe9521f.js → p-dcaf9010.js} +3 -3
  225. package/dist/components/{p-cbe9521f.js.map → p-dcaf9010.js.map} +1 -1
  226. package/dist/components/{p-83c8873a.js → p-dec6fc68.js} +3 -3
  227. package/dist/components/{p-83c8873a.js.map → p-dec6fc68.js.map} +1 -1
  228. package/dist/components/{p-d63f1cbe.js → p-df465ef2.js} +3 -3
  229. package/dist/components/{p-d63f1cbe.js.map → p-df465ef2.js.map} +1 -1
  230. package/dist/components/{p-c0a91091.js → p-f7c7a406.js} +4 -4
  231. package/dist/components/{p-c0a91091.js.map → p-f7c7a406.js.map} +1 -1
  232. package/dist/esm/{constants-b97e736d.js → constants-4faa1fae.js} +2 -2
  233. package/dist/esm/{constants-b97e736d.js.map → constants-4faa1fae.js.map} +1 -1
  234. package/dist/esm/{index-8f0e5f19.js → index-a1936cd0.js} +19 -186
  235. package/dist/esm/index-a1936cd0.js.map +1 -0
  236. package/dist/esm/index.js +1 -1
  237. package/dist/esm/loader.js +3 -3
  238. package/dist/esm/native.js +3 -24
  239. package/dist/esm/native.js.map +1 -1
  240. package/dist/esm/nv-alert.entry.js +2 -2
  241. package/dist/esm/nv-avatar.entry.js +2 -2
  242. package/dist/esm/nv-badge_2.entry.js +1 -1
  243. package/dist/esm/nv-breadcrumb.entry.js +1 -1
  244. package/dist/esm/nv-breadcrumbs.entry.js +1 -1
  245. package/dist/esm/nv-button.entry.js +2 -2
  246. package/dist/esm/nv-calendar.entry.js +392 -143
  247. package/dist/esm/nv-calendar.entry.js.map +1 -1
  248. package/dist/esm/nv-col.entry.js +1 -1
  249. package/dist/esm/nv-datagrid.entry.js +46 -13
  250. package/dist/esm/nv-datagrid.entry.js.map +1 -1
  251. package/dist/esm/nv-datagridcolumn.entry.js +1 -1
  252. package/dist/esm/nv-dialog.entry.js +2 -2
  253. package/dist/esm/nv-dialogfooter_2.entry.js +2 -2
  254. package/dist/esm/nv-fieldcheckbox.entry.js +1 -1
  255. package/dist/esm/nv-fielddate.entry.js +45 -11
  256. package/dist/esm/nv-fielddate.entry.js.map +1 -1
  257. package/dist/esm/nv-fielddaterange.entry.js +98 -44
  258. package/dist/esm/nv-fielddaterange.entry.js.map +1 -1
  259. package/dist/esm/nv-fielddropdown.entry.js +2 -2
  260. package/dist/esm/nv-fielddropdown.entry.js.map +1 -1
  261. package/dist/esm/nv-fielddropdownitem.entry.js +1 -1
  262. package/dist/esm/nv-fieldmultiselect.entry.js +2 -2
  263. package/dist/esm/nv-fieldmultiselect.entry.js.map +1 -1
  264. package/dist/esm/nv-fieldnumber.entry.js +5 -5
  265. package/dist/esm/nv-fieldnumber.entry.js.map +1 -1
  266. package/dist/esm/nv-fieldpassword.entry.js +5 -5
  267. package/dist/esm/nv-fieldpassword.entry.js.map +1 -1
  268. package/dist/esm/nv-fieldradio.entry.js +4 -4
  269. package/dist/esm/nv-fieldselect.entry.js +7 -7
  270. package/dist/esm/nv-fieldselect.entry.js.map +1 -1
  271. package/dist/esm/nv-fieldslider.entry.js +28 -23
  272. package/dist/esm/nv-fieldslider.entry.js.map +1 -1
  273. package/dist/esm/nv-fieldtext.entry.js +5 -5
  274. package/dist/esm/nv-fieldtext.entry.js.map +1 -1
  275. package/dist/esm/nv-fieldtextarea.entry.js +5 -5
  276. package/dist/esm/nv-fieldtextarea.entry.js.map +1 -1
  277. package/dist/esm/nv-fieldtime.entry.js +12 -12
  278. package/dist/esm/nv-fieldtime.entry.js.map +1 -1
  279. package/dist/esm/nv-icon.entry.js +3 -3
  280. package/dist/esm/nv-iconbutton_2.entry.js +3 -3
  281. package/dist/esm/nv-menu.entry.js +2 -2
  282. package/dist/esm/nv-menuitem.entry.js +2 -2
  283. package/dist/esm/nv-popover.entry.js +3 -3
  284. package/dist/esm/nv-popover.entry.js.map +1 -1
  285. package/dist/esm/nv-row.entry.js +2 -2
  286. package/dist/esm/nv-stack.entry.js +2 -2
  287. package/dist/esm/nv-table.entry.js +3 -3
  288. package/dist/esm/nv-tablecolumn.entry.js +1 -1
  289. package/dist/esm/nv-toggle.entry.js +3 -3
  290. package/dist/esm/nv-tooltip.entry.js +2 -2
  291. package/dist/native/index.esm.js +1 -1
  292. package/dist/native/native.css +1 -1
  293. package/dist/native/native.esm.js +1 -1
  294. package/dist/native/native.esm.js.map +1 -1
  295. package/dist/native/p-01164e86.entry.js +2 -0
  296. package/dist/native/{p-5382eab2.entry.js.map → p-01164e86.entry.js.map} +1 -1
  297. package/dist/native/p-0410facd.entry.js +2 -0
  298. package/dist/native/p-0410facd.entry.js.map +1 -0
  299. package/dist/native/{p-519b4819.entry.js → p-08ca678c.entry.js} +2 -2
  300. package/dist/native/{p-cfe0a6c6.entry.js → p-0ec2d430.entry.js} +2 -2
  301. package/dist/native/{p-cfe0a6c6.entry.js.map → p-0ec2d430.entry.js.map} +1 -1
  302. package/dist/native/p-14895e84.entry.js +2 -0
  303. package/dist/native/p-14895e84.entry.js.map +1 -0
  304. package/dist/native/p-1a5d3b87.entry.js +2 -0
  305. package/dist/native/{p-7c676f2c.entry.js.map → p-1a5d3b87.entry.js.map} +1 -1
  306. package/dist/native/{p-0323daf6.entry.js → p-1c1ecd38.entry.js} +2 -2
  307. package/dist/native/{p-16a4cdf3.entry.js → p-1d98477d.entry.js} +2 -2
  308. package/dist/native/{p-19fb0fd0.entry.js → p-2006f5d4.entry.js} +2 -2
  309. package/dist/native/p-24659a85.entry.js +2 -0
  310. package/dist/native/{p-ef76178b.entry.js.map → p-24659a85.entry.js.map} +1 -1
  311. package/dist/native/p-2b1e7675.entry.js +2 -0
  312. package/dist/native/{p-b0fc08e7.entry.js.map → p-2b1e7675.entry.js.map} +1 -1
  313. package/dist/native/{p-9fba8663.entry.js → p-2bc7d66a.entry.js} +2 -2
  314. package/dist/native/p-2c3fb8cc.entry.js +2 -0
  315. package/dist/native/p-2c3fb8cc.entry.js.map +1 -0
  316. package/dist/native/p-45cbe6e4.entry.js +2 -0
  317. package/dist/native/p-46428304.entry.js +2 -0
  318. package/dist/native/p-46428304.entry.js.map +1 -0
  319. package/dist/native/{p-c930adb7.entry.js → p-55df8bf9.entry.js} +2 -2
  320. package/dist/native/p-59b07b36.entry.js +2 -0
  321. package/dist/native/{p-987c79d8.entry.js.map → p-59b07b36.entry.js.map} +1 -1
  322. package/dist/native/p-6029e51b.entry.js +2 -0
  323. package/dist/native/{p-fc3bea07.entry.js.map → p-6029e51b.entry.js.map} +1 -1
  324. package/dist/native/{p-4c0d81b0.entry.js → p-7ba03c5d.entry.js} +2 -2
  325. package/dist/native/p-82c4bf56.entry.js +2 -0
  326. package/dist/native/p-82c4bf56.entry.js.map +1 -0
  327. package/dist/native/{p-407fc32d.entry.js → p-86ab23ea.entry.js} +2 -2
  328. package/dist/native/p-87784622.entry.js +2 -0
  329. package/dist/native/{p-05d95d4d.entry.js → p-914da1e1.entry.js} +2 -2
  330. package/dist/native/p-9850c1d7.entry.js +2 -0
  331. package/dist/native/{p-5ba3fc3c.entry.js.map → p-9850c1d7.entry.js.map} +1 -1
  332. package/dist/native/{p-de2c07a6.entry.js → p-a0505695.entry.js} +3 -3
  333. package/dist/native/p-a0505695.entry.js.map +1 -0
  334. package/dist/native/p-a30206c1.entry.js +2 -0
  335. package/dist/native/{p-aa86af25.entry.js.map → p-a30206c1.entry.js.map} +1 -1
  336. package/dist/native/p-abbe5d69.entry.js +2 -0
  337. package/dist/native/{p-7c6edd1c.entry.js.map → p-abbe5d69.entry.js.map} +1 -1
  338. package/dist/native/{p-221b8f72.entry.js → p-ad128108.entry.js} +2 -2
  339. package/dist/native/{p-f0ddf60b.entry.js → p-b5b9190a.entry.js} +2 -2
  340. package/dist/native/p-c7b8b7ba.entry.js +2 -0
  341. package/dist/native/{p-fb897f7d.entry.js.map → p-c7b8b7ba.entry.js.map} +1 -1
  342. package/dist/native/p-c92d55f9.entry.js +2 -0
  343. package/dist/native/{p-3f2b6a22.entry.js → p-c9d3de9c.entry.js} +2 -2
  344. package/dist/native/p-cbca9326.entry.js +2 -0
  345. package/dist/native/{p-60b204ac.entry.js.map → p-cbca9326.entry.js.map} +1 -1
  346. package/dist/native/p-d0a33e64.js +3 -0
  347. package/dist/native/p-d0a33e64.js.map +1 -0
  348. package/dist/native/{p-ed488498.entry.js → p-d21b2da2.entry.js} +3 -3
  349. package/dist/native/{p-f85c08f1.js → p-e2d0a77d.js} +2 -2
  350. package/dist/native/{p-a2c0f1a7.entry.js → p-ec87200a.entry.js} +2 -2
  351. package/dist/native/{p-0ec1e2e3.entry.js → p-f377b285.entry.js} +2 -2
  352. package/dist/native/p-ff0f3794.entry.js +2 -0
  353. package/dist/native/{p-adc96c3a.entry.js.map → p-ff0f3794.entry.js.map} +1 -1
  354. package/dist/types/components/nv-calendar/nv-calendar.d.ts +25 -45
  355. package/dist/types/components/nv-calendar/partials/calendar-actions.d.ts +19 -0
  356. package/dist/types/components/nv-calendar/partials/calendar-grid.d.ts +46 -0
  357. package/dist/types/components/nv-calendar/partials/calendar-header.d.ts +38 -0
  358. package/dist/types/components/nv-calendar/partials/calendar-shortcuts.d.ts +35 -0
  359. package/dist/types/components/nv-calendar/partials/day-cell.d.ts +35 -0
  360. package/dist/types/components/nv-calendar/partials/index.d.ts +6 -0
  361. package/dist/types/components/nv-calendar/partials/week-numbers.d.ts +30 -0
  362. package/dist/types/components/nv-calendar/test/partials/calendar-actions.logic.test.d.ts +1 -0
  363. package/dist/types/components/nv-calendar/test/partials/calendar-grid.logic.test.d.ts +1 -0
  364. package/dist/types/components/nv-calendar/test/partials/calendar-header.logic.test.d.ts +1 -0
  365. package/dist/types/components/nv-calendar/test/partials/calendar-shortcuts.logic.test.d.ts +1 -0
  366. package/dist/types/components/nv-calendar/test/partials/day-cell.logic.test.d.ts +1 -0
  367. package/dist/types/components/nv-calendar/test/partials/week-numbers.logic.test.d.ts +1 -0
  368. package/dist/types/components/nv-datagrid/nv-datagrid.d.ts +106 -2
  369. package/dist/types/components/nv-fielddate/nv-fielddate.d.ts +21 -9
  370. package/dist/types/components/nv-fielddate/test/nv-fielddate.logic.test.d.ts +1 -0
  371. package/dist/types/components/nv-fielddaterange/nv-fielddaterange.d.ts +19 -6
  372. package/dist/types/components/nv-fielddaterange/test/nv-fielddaterange.logic.test.d.ts +1 -0
  373. package/dist/types/components/nv-fieldnumber/nv-fieldnumber.d.ts +1 -0
  374. package/dist/types/components/nv-fieldslider/nv-fieldslider.d.ts +5 -6
  375. package/dist/types/components.d.ts +175 -38
  376. package/dist/vscode-data.json +4 -4
  377. package/hydrate/index.js +666 -291
  378. package/hydrate/index.mjs +666 -291
  379. package/package.json +10 -2
  380. package/dist/cjs/index-108ddff0.js.map +0 -1
  381. package/dist/components/p-4656efae.js.map +0 -1
  382. package/dist/components/p-679e0fa9.js.map +0 -1
  383. package/dist/components/p-f0a5e7e4.js +0 -167
  384. package/dist/esm/index-8f0e5f19.js.map +0 -1
  385. package/dist/native/p-1e3d3374.entry.js +0 -2
  386. package/dist/native/p-21e7132f.entry.js +0 -2
  387. package/dist/native/p-21e7132f.entry.js.map +0 -1
  388. package/dist/native/p-2805f9f2.entry.js +0 -2
  389. package/dist/native/p-2805f9f2.entry.js.map +0 -1
  390. package/dist/native/p-5382eab2.entry.js +0 -2
  391. package/dist/native/p-5ba3fc3c.entry.js +0 -2
  392. package/dist/native/p-60b204ac.entry.js +0 -2
  393. package/dist/native/p-7092a675.entry.js +0 -2
  394. package/dist/native/p-711a7778.js +0 -3
  395. package/dist/native/p-711a7778.js.map +0 -1
  396. package/dist/native/p-759c9ce4.entry.js +0 -2
  397. package/dist/native/p-759c9ce4.entry.js.map +0 -1
  398. package/dist/native/p-7c676f2c.entry.js +0 -2
  399. package/dist/native/p-7c6edd1c.entry.js +0 -2
  400. package/dist/native/p-987c79d8.entry.js +0 -2
  401. package/dist/native/p-aa86af25.entry.js +0 -2
  402. package/dist/native/p-adc96c3a.entry.js +0 -2
  403. package/dist/native/p-b0fc08e7.entry.js +0 -2
  404. package/dist/native/p-d07ab618.entry.js +0 -2
  405. package/dist/native/p-dac0089b.entry.js +0 -2
  406. package/dist/native/p-dac0089b.entry.js.map +0 -1
  407. package/dist/native/p-de2c07a6.entry.js.map +0 -1
  408. package/dist/native/p-ef76178b.entry.js +0 -2
  409. package/dist/native/p-f39803d9.entry.js +0 -2
  410. package/dist/native/p-f39803d9.entry.js.map +0 -1
  411. package/dist/native/p-fb897f7d.entry.js +0 -2
  412. package/dist/native/p-fc3bea07.entry.js +0 -2
  413. /package/dist/native/{p-519b4819.entry.js.map → p-08ca678c.entry.js.map} +0 -0
  414. /package/dist/native/{p-0323daf6.entry.js.map → p-1c1ecd38.entry.js.map} +0 -0
  415. /package/dist/native/{p-16a4cdf3.entry.js.map → p-1d98477d.entry.js.map} +0 -0
  416. /package/dist/native/{p-19fb0fd0.entry.js.map → p-2006f5d4.entry.js.map} +0 -0
  417. /package/dist/native/{p-9fba8663.entry.js.map → p-2bc7d66a.entry.js.map} +0 -0
  418. /package/dist/native/{p-1e3d3374.entry.js.map → p-45cbe6e4.entry.js.map} +0 -0
  419. /package/dist/native/{p-c930adb7.entry.js.map → p-55df8bf9.entry.js.map} +0 -0
  420. /package/dist/native/{p-4c0d81b0.entry.js.map → p-7ba03c5d.entry.js.map} +0 -0
  421. /package/dist/native/{p-407fc32d.entry.js.map → p-86ab23ea.entry.js.map} +0 -0
  422. /package/dist/native/{p-d07ab618.entry.js.map → p-87784622.entry.js.map} +0 -0
  423. /package/dist/native/{p-05d95d4d.entry.js.map → p-914da1e1.entry.js.map} +0 -0
  424. /package/dist/native/{p-221b8f72.entry.js.map → p-ad128108.entry.js.map} +0 -0
  425. /package/dist/native/{p-f0ddf60b.entry.js.map → p-b5b9190a.entry.js.map} +0 -0
  426. /package/dist/native/{p-7092a675.entry.js.map → p-c92d55f9.entry.js.map} +0 -0
  427. /package/dist/native/{p-3f2b6a22.entry.js.map → p-c9d3de9c.entry.js.map} +0 -0
  428. /package/dist/native/{p-ed488498.entry.js.map → p-d21b2da2.entry.js.map} +0 -0
  429. /package/dist/native/{p-f85c08f1.js.map → p-e2d0a77d.js.map} +0 -0
  430. /package/dist/native/{p-a2c0f1a7.entry.js.map → p-ec87200a.entry.js.map} +0 -0
  431. /package/dist/native/{p-0ec1e2e3.entry.js.map → p-f377b285.entry.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- import{h as e,r as i,c as t,a as r,g as s}from"./p-711a7778.js";import{v as n}from"./p-f5ff676c.js";function a(e,i,t){return Math.max(i,Math.min(t,e))}function o(e,i,t){if(t===i)return 0;return(e-i)/(t-i)*100}function l(e,i,t,r){const s=a(e,i,t);const n=Math.round((s-i)/r)*r+i;return a(n,i,t)}function d(e,i,t){const r=[];for(let s=e;s<=i;s+=t){r.push(Number(s.toFixed(10)))}if(r[r.length-1]!==i){r.push(i)}return r}function c(e,i){if(!i||i.length===0)return e;let t=i[0].value;let r=Math.abs(e-t);for(const s of i){const i=Math.abs(e-s.value);if(i<r){r=i;t=s.value}}return t}const f=i=>{const{value:t,min:r,max:s,rawPosition:n,isDragging:l,snap:d,disabled:c,readonly:f,onKeyDown:h,labelBeforeValue:u,labelAfterValue:b}=i;let v=t;if(l&&!d){v=a(n,r,s)}const p=o(v,r,s);return e("div",{class:"thumb",style:{left:`${p}%`},role:"slider","aria-valuemin":r,"aria-valuemax":s,"aria-valuenow":t,"aria-disabled":c?"true":undefined,"aria-readonly":f?"true":undefined,tabindex:c?-1:0,onKeyDown:h},e("div",{class:"thumb-tooltip"},u&&e("span",{class:"label-before"},u),String(t),b&&e("span",{class:"label-after"},b)))};const h=i=>{const{rangeValue:t,rawRangePosition:r,activeDragThumb:s,isDragging:n,snap:l,min:d,max:c,disabled:f,readonly:h,onKeyDown:u,labelBeforeValue:b,labelAfterValue:v}=i;const[p,m]=t;let g=p;let k=m;if(n&&!l){const[e,i]=r;if(s==="left"){g=a(e,d,Math.min(m,c))}else if(s==="right"){k=a(i,Math.max(p,d),c)}}const x=o(g,d,c);const y=o(k,d,c);return[e("div",{class:"track-range",style:{left:`${x}%`,width:`${y-x}%`}}),e("div",{class:"thumb thumb-left",style:{left:`${x}%`},role:"slider","aria-valuemin":d,"aria-valuemax":c,"aria-valuenow":p,"aria-disabled":f?"true":undefined,"aria-readonly":h?"true":undefined,"data-thumb":"left",tabindex:f?-1:0,onKeyDown:u},e("div",{class:"thumb-tooltip"},b&&e("span",{class:"label-before"},b),String(p),v&&e("span",{class:"label-after"},v))),e("div",{class:"thumb thumb-right",style:{left:`${y}%`},role:"slider","aria-valuemin":d,"aria-valuemax":c,"aria-valuenow":m,"aria-disabled":f?"true":undefined,"aria-readonly":h?"true":undefined,"data-thumb":"right",tabindex:f?-1:0,onKeyDown:u},e("div",{class:"thumb-tooltip"},b&&e("span",{class:"label-before"},b),String(m),v&&e("span",{class:"label-after"},v)))]};const u=i=>{const{ticks:t,min:r,max:s}=i;if(t.length===0){return null}return e("div",{class:"track-ticks"},t.map((i=>{const t=o(i.value,r,s);return e("div",{class:"track-tick",style:{left:`${t}%`}},i.label&&e("div",{class:"tick-label"},i.label))})))};const b=i=>{const{range:t,hasField:r,value:s,rangeValue:n,index:a,inputId:o,min:l,max:d,step:c,disabled:f,readonly:h,onInput:u,labelBeforeValue:b,labelAfterValue:v,name:p,endName:m}=i;const g=t?n[a]:s;const k=t?{"data-index":a.toString()}:{};let x;if(t){if(a===0){x=p||""}else{x=m||(p?`${p}-end`:"")}}else{x=p||""}const y=r?"input-container":"input-container hidden-input";return r?e("div",{class:y},b&&e("span",{class:"label-before"},b),e("input",Object.assign({id:o,type:"number",value:g,min:l,max:d,step:c,disabled:f,readonly:h,name:x},k,{onInput:u})),v&&e("span",{class:"label-after"},v)):e("input",{id:o,type:"hidden",value:g,disabled:f,readonly:h,name:x})};const v='nv-fieldslider{--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-fieldslider .slider-container{width:100%;display:flex;flex-direction:row;align-items:center;gap:var(--form-gap-x)}nv-fieldslider .slider-container .track-container{position:relative;flex:1;height:calc(16px + 0.25rem);padding:calc(16px / 2) 0}nv-fieldslider .slider-container .track-container .track{position:relative;height:4px;background:#e5e7eb;border-radius:4px;cursor:pointer}nv-fieldslider .slider-container .track-container .track .track-range{position:absolute;top:0;height:4px;background:var(--nv-field-border-focus);border-radius:4px;pointer-events:none}nv-fieldslider .slider-container .track-container .track .thumb{position:absolute;top:50%;width:16px;height:16px;background:#ffffff;border:2px solid var(--nv-field-border-focus);border-radius:50%;box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);transform:translate(-50%, -50%);z-index:1;cursor:grab;transition:box-shadow 0.2s, background-color 0.2s}nv-fieldslider .slider-container .track-container .track .thumb:focus{box-shadow:0 4px 6px rgba(0, 0, 0, 0.15);outline:6px solid color-mix(in srgb, var(--nv-field-border-focus) 50%, transparent);transition:outline}nv-fieldslider .slider-container .track-container .track .thumb:active{cursor:grabbing;background-color:#e6f7ff}nv-fieldslider .slider-container .track-container .track .thumb .thumb-tooltip{position:absolute;top:25px;left:50%;background-color:var(--components-tooltip-background);color:var(--components-tooltip-text);padding:5px;border-radius:var(--tooltip-radius);font-size:var(--tooltip-font-size);z-index:10;pointer-events:none;user-select:none;opacity:0;transition:opacity 0.3s ease-in-out;transform:translateX(-50%)}nv-fieldslider .slider-container .track-container .track .thumb .thumb-tooltip:after{content:"";background:var(--components-tooltip-background);box-shadow:none;border:none;position:absolute;border-bottom-color:transparent;border-right-color:transparent;width:6px;height:6px;transform:rotate(45deg);border-radius:1px;top:-3px;left:50%;margin-left:-3px}nv-fieldslider .slider-container .track-container .track .thumb:hover .thumb-tooltip,nv-fieldslider .slider-container .track-container .track .thumb:active .thumb-tooltip,nv-fieldslider .slider-container .track-container .track .thumb:focus .thumb-tooltip{opacity:1}nv-fieldslider .slider-container .track-container .track-ticks{position:relative;height:1rem;margin-top:0.25rem}nv-fieldslider .slider-container .track-container .track-ticks .track-tick{position:absolute;top:0;width:6px;height:6px;background:var(--components-form-field-border-default);border-radius:50%;transform:translate(-50%, 0);pointer-events:none}nv-fieldslider .slider-container .track-container .track-ticks .track-tick .tick-label{position:absolute;top:calc(6px + 0.25rem);left:50%;color:var(--components-form-field-border-default);transform:translateX(-50%);white-space:nowrap}nv-fieldslider .slider-container .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;width:64px;flex-grow:unset}nv-fieldslider .slider-container .input-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldslider .slider-container .input-container:focus-within,nv-fieldslider .slider-container .input-container:focus-within:hover,nv-fieldslider .slider-container .input-container:focus,nv-fieldslider .slider-container .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-fieldslider .slider-container .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-fieldslider .slider-container .input-container:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldslider .slider-container .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-fieldslider .slider-container .input-container input:focus{outline:none}nv-fieldslider .slider-container .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-fieldslider[fluid]:not([fluid=false]){max-width:unset}nv-fieldslider[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-fieldslider[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-fieldslider[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-fieldslider[readonly]:not([readonly=false]) .track,nv-fieldslider[readonly]:not([readonly=false]) .thumb{cursor:default}nv-fieldslider 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-fieldslider[hide-label]:not([hide-label=false]) label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}nv-fieldslider[has-field]:not([has-field=false]) .thumb-tooltip{display:none}nv-fieldslider>.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-fieldslider>.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-fieldslider>.error-description[hidden]{display:none}';const p=v;const m=class{constructor(e){i(this,e);this.valueChanged=t(this,"valueChanged",7);this.startInputId=n();this.endInputId=n();this.hideLabel=false;this.hasField=false;this.range=false;this.disabled=false;this.readonly=false;this.error=false;this.success=false;this.value="0";this.step=1;this.snap=false;this.snapTicks=false;this.min=0;this.max=100;this.showTicks=false;this.fluid=false;this.isDragging=false;this.activeDragThumb="single";this.internalTicks=[];this.rawPosition=0;this.rawRangePosition=[0,0];this.valueInternal=0;this.rangeValueInternal=[0,0];this.parseValue=()=>{const e=this.value.replace(/\s/g,"").split(",");if(e.length===1){this.valueInternal=parseFloat(e[0])}else if(e.length===2){e.forEach(((e,i)=>{this.valueInternal=parseFloat(e);this.rangeValueInternal[i]=this.valueInternal}))}};this.onTrackInteraction=e=>{if(this.disabled||this.readonly){return}const i=e.currentTarget.getBoundingClientRect();const t=a((e.clientX-i.left)/i.width*100,0,100);const r=this.min+t/100*(this.max-this.min);this.rawPosition=r;if(this.range){const e=o(this.rangeValueInternal[0],this.min,this.max);const i=o(this.rangeValueInternal[1],this.min,this.max);const s=Math.abs(t-e);const n=Math.abs(t-i);if(s<=n){this.activeDragThumb="left";this.rawRangePosition=[r,this.rawRangePosition[1]];this.handleValueChange([r,this.rangeValueInternal[1]])}else{this.activeDragThumb="right";this.rawRangePosition=[this.rawRangePosition[0],r];this.handleValueChange([this.rangeValueInternal[0],r])}}else{this.activeDragThumb="single";this.rawPosition=r;this.handleValueChange(r)}this.isDragging=true;this.registerGlobalEvents()};this.onPointerMove=e=>{if(!this.isDragging||this.disabled||this.readonly){return}const i=this.el.querySelector(".track");if(!i)return;const t=i.getBoundingClientRect();const r=a((e.clientX-t.left)/t.width*100,0,100);const s=this.min+r/100*(this.max-this.min);if(this.range){if(this.activeDragThumb==="left"){this.rawRangePosition=[s,this.rawRangePosition[1]];this.handleValueChange([s,this.rangeValueInternal[1]])}else{this.rawRangePosition=[this.rawRangePosition[0],s];this.handleValueChange([this.rangeValueInternal[0],s])}}else{this.rawPosition=s;this.handleValueChange(s)}};this.onPointerUp=()=>{this.isDragging=false;this.removeGlobalEvents()};this.onKeyDown=e=>{if(this.disabled||this.readonly){return}let i;const t=e.shiftKey?10:1;const r=this.step*t;if(this.range){const t=e.target.getAttribute("data-thumb");const s=t==="left"?0:1;const n=[...this.rangeValueInternal];switch(e.key){case"ArrowRight":case"ArrowUp":n[s]+=r;break;case"ArrowLeft":case"ArrowDown":n[s]-=r;break;case"Home":n[s]=this.min;break;case"End":n[s]=this.max;break;case"PageUp":n[s]+=r*10;break;case"PageDown":n[s]-=r*10;break;default:return}i=n}else{switch(e.key){case"ArrowRight":case"ArrowUp":i=this.valueInternal+r;break;case"ArrowLeft":case"ArrowDown":i=this.valueInternal-r;break;case"Home":i=this.min;break;case"End":i=this.max;break;case"PageUp":i=this.valueInternal+r*10;break;case"PageDown":i=this.valueInternal-r*10;break;default:return}}e.preventDefault();this.handleValueChange(i)};this.handleFieldChange=e=>{const i=e.target;const t=parseFloat(i.value);if(isNaN(t)){return}if(this.range){const e=i.getAttribute("data-index")==="0"?0:1;const r=[...this.rangeValueInternal];r[e]=t;this.handleValueChange(r)}else{this.handleValueChange(t)}}}validateValue(e){const i=a(e,this.min,this.max);if(this.snapTicks&&this.internalTicks&&this.internalTicks.length>0){return c(i,this.internalTicks)}return l(i,this.min,this.max,this.step)}handleValueChange(e){if(this.disabled||this.readonly){return}if(this.range){if(Array.isArray(e)&&e.length===2){const i=[Math.min(e[0],e[1]),Math.max(e[0],e[1])];const t=[this.validateValue(i[0]),this.validateValue(i[1])];if(t[0]!==this.rangeValueInternal[0]||t[1]!==this.rangeValueInternal[1]){this.rangeValueInternal=t;this.value=this.rangeValueInternal.join(",");this.valueChanged.emit(this.rangeValueInternal.join(","))}}}else{if(typeof e==="number"){const i=this.validateValue(e);if(i!==this.valueInternal){this.valueInternal=i;this.value=String(this.valueInternal);this.valueChanged.emit(String(this.valueInternal))}}}}generateDisplayTicks(){if(this.ticks&&this.ticks.length>0){this.internalTicks=[...this.ticks].sort(((e,i)=>e.value-i.value));return}if(!this.showTicks){this.internalTicks=[];return}const e=d(this.min,this.max,this.step);this.internalTicks=e.map((e=>({value:e})))}registerGlobalEvents(){document.addEventListener("pointermove",this.onPointerMove);document.addEventListener("pointerup",this.onPointerUp);document.addEventListener("pointercancel",this.onPointerUp)}removeGlobalEvents(){document.removeEventListener("pointermove",this.onPointerMove);document.removeEventListener("pointerup",this.onPointerUp);document.removeEventListener("pointercancel",this.onPointerUp)}onValueChange(){this.parseValue()}onConfigChange(){this.generateDisplayTicks();if(this.range){this.handleValueChange(this.rangeValueInternal)}else{this.handleValueChange(this.valueInternal)}}onRangeChange(e){if(e){this.rangeValueInternal=[this.min,this.valueInternal]}else{this.valueInternal=this.rangeValueInternal[1]}}connectedCallback(){this.parseValue();this.generateDisplayTicks();if(this.range){if(!Array.isArray(this.rangeValueInternal)||this.rangeValueInternal.length!==2){this.rangeValueInternal=[this.min,this.max]}this.handleValueChange(this.rangeValueInternal);this.rawRangePosition=[this.rangeValueInternal[0],this.rangeValueInternal[1]]}else{this.handleValueChange(this.valueInternal);this.rawPosition=this.valueInternal}}disconnectedCallback(){this.removeGlobalEvents()}render(){return e(r,{key:"69cded86eeaff3470f970d8c5e359d467cea1762"},(this.label||this.el.querySelector('[slot="label"]'))&&e("label",{key:"d6725108d8cfc35d4722e5761592b08f20c390b2",htmlFor:this.startInputId},e("slot",{key:"a13207c702baa4ea95073da3db56419c50114de2",name:"label"},this.label)),e("div",{key:"a771db3df06edf4ca150db4f66f42a6816e32bc8",class:"slider-container"},this.range?e(b,{range:this.range,hasField:this.hasField,value:this.valueInternal,rangeValue:this.rangeValueInternal,index:0,inputId:this.startInputId,min:this.min,max:this.max,step:this.step,disabled:this.disabled,readonly:this.readonly,onInput:this.handleFieldChange,labelBeforeValue:this.labelBeforeValue,labelAfterValue:this.labelAfterValue,name:this.name,endName:this.endName}):null,e("div",{key:"705fe70c9d5ebba5dc9b877532936d301df0baf6",class:"track-container"},e("div",{key:"1f9a691c278e88160319699ff91d925dfd8184c2",class:"track",onPointerDown:this.onTrackInteraction},this.range?e(h,{rangeValue:this.rangeValueInternal,rawRangePosition:this.rawRangePosition,activeDragThumb:this.activeDragThumb,isDragging:this.isDragging,snap:this.snap,min:this.min,max:this.max,disabled:this.disabled,readonly:this.readonly,onKeyDown:this.onKeyDown,labelBeforeValue:this.labelBeforeValue,labelAfterValue:this.labelAfterValue}):e(f,{value:this.valueInternal,min:this.min,max:this.max,rawPosition:this.rawPosition,isDragging:this.isDragging,snap:this.snap,disabled:this.disabled,readonly:this.readonly,onKeyDown:this.onKeyDown,labelBeforeValue:this.labelBeforeValue,labelAfterValue:this.labelAfterValue})),e(u,{key:"b80cf4eeb492587ca44ebc6512ded331ec5619ef",ticks:this.internalTicks,min:this.min,max:this.max})),this.range?e(b,{range:this.range,hasField:this.hasField,value:this.valueInternal,rangeValue:this.rangeValueInternal,index:1,inputId:this.endInputId,min:this.min,max:this.max,step:this.step,disabled:this.disabled,readonly:this.readonly,onInput:this.handleFieldChange,labelBeforeValue:this.labelBeforeValue,labelAfterValue:this.labelAfterValue,name:this.name,endName:this.endName}):e(b,{range:this.range,hasField:this.hasField,value:this.valueInternal,rangeValue:this.rangeValueInternal,inputId:this.startInputId,min:this.min,max:this.max,step:this.step,disabled:this.disabled,readonly:this.readonly,onInput:this.handleFieldChange,labelBeforeValue:this.labelBeforeValue,labelAfterValue:this.labelAfterValue,name:this.name})),(this.success||this.description||this.el.querySelector('[slot="description"]'))&&e("div",{key:"97a111d5b194aeb4f1fcf1049489ddcf30527157",class:"description"},this.success&&e("nv-icon",{key:"cc549945c9a330892c69826867f4279e039944e8",name:"circle-check",class:"validation",size:"md"}),e("slot",{key:"54b3e872439763a15595d6bf4f9c5e129aeae386",name:"description"},this.description)),(this.error||this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&e("div",{key:"cd5702e6819a11782a634d522a2dccd992af00f3",class:"error-description",hidden:!this.error},this.error&&e("nv-icon",{key:"1641a68da28b0963d61b74e69c2c32f566ffeff3",name:"alert-circle",class:"validation",size:"md"}),e("slot",{key:"a969cc7e37c4a21024790a5603a44365e135693d",name:"error-description"},this.errorDescription)))}static get formAssociated(){return true}get el(){return s(this)}static get watchers(){return{value:["onValueChange"],min:["onConfigChange"],max:["onConfigChange"],step:["onConfigChange"],ticks:["onConfigChange"],showTicks:["onConfigChange"],snap:["onConfigChange"],snapTicks:["onConfigChange"],range:["onRangeChange"]}}};m.style=p;export{m as nv_fieldslider};
2
- //# sourceMappingURL=p-759c9ce4.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["clamp","value","min","max","Math","valueToPercent","snapToStep","step","clamped","snapped","round","generateTicks","ticks","v","push","Number","toFixed","length","snapToTicks","closestTick","minDistance","abs","tick","distance","SingleThumb","props","rawPosition","isDragging","snap","disabled","readonly","onKeyDown","labelBeforeValue","labelAfterValue","displayPosition","percent","h","class","style","left","role","undefined","tabindex","String","RangeThumb","rangeValue","rawRangePosition","activeDragThumb","leftValue","rightValue","displayLeftPosition","displayRightPosition","rawLeft","rawRight","leftPercent","rightPercent","width","TickMarks","map","label","FieldInput","range","hasField","index","inputId","onInput","name","endName","fieldValue","dataAttrs","toString","inputName","containerClass","Object","assign","id","type","nvFieldsliderCss","NvFieldsliderStyle0","NvFieldslider","constructor","hostRef","this","startInputId","uuidv4","endInputId","hideLabel","error","success","snapTicks","showTicks","fluid","internalTicks","valueInternal","rangeValueInternal","parseValue","values","replace","split","parseFloat","forEach","onTrackInteraction","event","trackRect","currentTarget","getBoundingClientRect","percentage","clientX","newValue","leftPct","rightPct","distanceToLeft","distanceToRight","handleValueChange","registerGlobalEvents","onPointerMove","trackElement","el","querySelector","onPointerUp","removeGlobalEvents","stepMultiplier","shiftKey","singleStep","focusedThumb","target","getAttribute","idx","currentValue","key","preventDefault","handleFieldChange","input","isNaN","fieldIndex","updatedRange","validateValue","val","clampedValue","Array","isArray","orderedValues","validatedValues","join","valueChanged","emit","validatedValue","generateDisplayTicks","sort","a","b","autoTicks","document","addEventListener","removeEventListener","onValueChange","onConfigChange","onRangeChange","connectedCallback","disconnectedCallback","render","Host","htmlFor","onPointerDown","description","size","errorDescription","hidden"],"sources":["src/components/nv-fieldslider/nv-fieldslider.utils.ts","src/components/nv-fieldslider/partials/single-thumb.tsx","src/components/nv-fieldslider/partials/range-thumb.tsx","src/components/nv-fieldslider/partials/tick-marks.tsx","src/components/nv-fieldslider/partials/field-input.tsx","src/components/nv-fieldslider/styles/nv-fieldslider.scss?tag=nv-fieldslider","src/components/nv-fieldslider/nv-fieldslider.tsx"],"sourcesContent":["/**\n * Utility functions for nv-fieldslider.\n */\n\n/**\n * Clamp a value between min and max.\n * @param {number} value - The value to clamp\n * @param {number} min - The minimum boundary\n * @param {number} max - The maximum boundary\n * @returns {number} The clamped value\n */\nexport function clamp(value: number, min: number, max: number): number {\n return Math.max(min, Math.min(max, value));\n}\n\n/**\n * Calculate the percentage position of a value within a range.\n * @param {number} value - The value to convert to percentage\n * @param {number} min - The minimum value of the range\n * @param {number} max - The maximum value of the range\n * @returns {number} The percentage (0-100)\n */\nexport function valueToPercent(\n value: number,\n min: number,\n max: number,\n): number {\n if (max === min) return 0;\n return ((value - min) / (max - min)) * 100;\n}\n\n/**\n * Snap a value to the nearest step.\n * @param {number} value - The value to snap\n * @param {number} min - The minimum boundary\n * @param {number} max - The maximum boundary\n * @param {number} step - The step size\n * @returns {number} The snapped value\n */\nexport function snapToStep(\n value: number,\n min: number,\n max: number,\n step: number,\n): number {\n const clamped = clamp(value, min, max);\n const snapped = Math.round((clamped - min) / step) * step + min;\n return clamp(snapped, min, max);\n}\n\n/**\n * Generate tick values for the slider.\n * @param {number} min - The minimum value\n * @param {number} max - The maximum value\n * @param {number} step - The step size\n * @returns {number[]} Array of tick values\n */\nexport function generateTicks(\n min: number,\n max: number,\n step: number,\n): number[] {\n const ticks: number[] = [];\n for (let v = min; v <= max; v += step) {\n ticks.push(Number(v.toFixed(10))); // avoid floating point issues\n }\n if (ticks[ticks.length - 1] !== max) {\n ticks.push(max);\n }\n return ticks;\n}\n\n/**\n * Snap a value to the nearest tick mark.\n * @param {number} value - The value to snap\n * @param {object[]} ticks - Array of tick objects\n * @returns {number} The value of the closest tick\n */\nexport function snapToTicks(\n value: number,\n ticks: {\n /** The value of the tick */\n value: number;\n }[],\n) {\n if (!ticks || ticks.length === 0) return value;\n\n // Find the closest tick\n let closestTick = ticks[0].value;\n let minDistance = Math.abs(value - closestTick);\n\n for (const tick of ticks) {\n const distance = Math.abs(value - tick.value);\n if (distance < minDistance) {\n minDistance = distance;\n closestTick = tick.value;\n }\n }\n\n return closestTick;\n}\n","import { FunctionalComponent, h } from '@stencil/core';\nimport { valueToPercent, clamp } from '../nv-fieldslider.utils';\n\n/**\n * Props for the SingleThumb component\n */\ninterface SingleThumbProps {\n /** Current value of the slider */\n value: number;\n /** Minimum allowed value */\n min: number;\n /** Maximum allowed value */\n max: number;\n /** Raw position during dragging */\n rawPosition: number;\n /** Whether the thumb is currently being dragged */\n isDragging: boolean;\n /** Whether the thumb should visually snap to steps */\n snap: boolean;\n /** Whether the slider is disabled */\n disabled: boolean;\n /** Whether the slider is readonly */\n readonly: boolean;\n /** Key down event handler */\n onKeyDown: (event: KeyboardEvent) => void;\n /** Label to display before the value */\n labelBeforeValue?: string;\n /** Label to display after the value */\n labelAfterValue?: string;\n}\n\n/**\n * Renders single thumb in standard mode.\n * @param {SingleThumbProps} props - Component properties\n * @returns {JSX.Element} JSX element representing the thumb\n */\nexport const SingleThumb: FunctionalComponent<SingleThumbProps> = props => {\n const {\n value,\n min,\n max,\n rawPosition,\n isDragging,\n snap,\n disabled,\n readonly,\n onKeyDown,\n labelBeforeValue,\n labelAfterValue,\n } = props;\n\n // Use raw position for visual display during dragging, but the snapped value otherwise\n let displayPosition = value;\n if (isDragging && !snap) {\n displayPosition = clamp(rawPosition, min, max);\n }\n\n const percent = valueToPercent(displayPosition, min, max);\n\n return (\n <div\n class=\"thumb\"\n style={{ left: `${percent}%` }}\n role=\"slider\"\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value}\n aria-disabled={disabled ? 'true' : undefined}\n aria-readonly={readonly ? 'true' : undefined}\n tabindex={disabled ? -1 : 0}\n onKeyDown={onKeyDown}\n >\n <div class=\"thumb-tooltip\">\n {labelBeforeValue && (\n <span class=\"label-before\">{labelBeforeValue}</span>\n )}\n {String(value)}\n {labelAfterValue && <span class=\"label-after\">{labelAfterValue}</span>}\n </div>\n </div>\n );\n};\n","import { FunctionalComponent, h } from '@stencil/core';\nimport { valueToPercent, clamp } from '../nv-fieldslider.utils';\n\n/**\n * Props for the RangeThumb component\n */\ninterface RangeThumbProps {\n /** Range values [left, right] */\n rangeValue: number[];\n /** Raw positions during dragging [left, right] */\n rawRangePosition: [number, number];\n /** Currently active thumb while dragging */\n activeDragThumb: 'left' | 'right' | 'single';\n /** Whether the thumb is currently being dragged */\n isDragging: boolean;\n /** Whether the thumb should visually snap to steps */\n snap: boolean;\n /** Minimum allowed value */\n min: number;\n /** Maximum allowed value */\n max: number;\n /** Whether the slider is disabled */\n disabled: boolean;\n /** Whether the slider is readonly */\n readonly: boolean;\n /** Key down event handler */\n onKeyDown: (event: KeyboardEvent) => void;\n /** Label to display before the value */\n labelBeforeValue?: string;\n /** Label to display after the value */\n labelAfterValue?: string;\n}\n\n/**\n * Renders dual thumbs in range mode.\n * @param {RangeThumbProps} props - Component properties\n * @returns {JSX.Element[]} Array of JSX elements representing the range slider thumbs\n */\nexport const RangeThumb: FunctionalComponent<RangeThumbProps> = props => {\n const {\n rangeValue,\n rawRangePosition,\n activeDragThumb,\n isDragging,\n snap,\n min,\n max,\n disabled,\n readonly,\n onKeyDown,\n labelBeforeValue,\n labelAfterValue,\n } = props;\n\n const [leftValue, rightValue] = rangeValue;\n\n // Use raw positions for visual display during dragging, but the snapped values otherwise\n let displayLeftPosition = leftValue;\n let displayRightPosition = rightValue;\n\n if (isDragging && !snap) {\n const [rawLeft, rawRight] = rawRangePosition;\n if (activeDragThumb === 'left') {\n displayLeftPosition = clamp(rawLeft, min, Math.min(rightValue, max));\n } else if (activeDragThumb === 'right') {\n displayRightPosition = clamp(rawRight, Math.max(leftValue, min), max);\n }\n }\n\n const leftPercent = valueToPercent(displayLeftPosition, min, max);\n const rightPercent = valueToPercent(displayRightPosition, min, max);\n\n return [\n <div\n class=\"track-range\"\n style={{\n left: `${leftPercent}%`,\n width: `${rightPercent - leftPercent}%`,\n }}\n />,\n <div\n class=\"thumb thumb-left\"\n style={{ left: `${leftPercent}%` }}\n role=\"slider\"\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={leftValue} // Always use the snapped value for ARIA\n aria-disabled={disabled ? 'true' : undefined}\n aria-readonly={readonly ? 'true' : undefined}\n data-thumb=\"left\"\n tabindex={disabled ? -1 : 0}\n onKeyDown={onKeyDown}\n >\n <div class=\"thumb-tooltip\">\n {labelBeforeValue && (\n <span class=\"label-before\">{labelBeforeValue}</span>\n )}\n {String(leftValue)}\n {labelAfterValue && <span class=\"label-after\">{labelAfterValue}</span>}\n </div>\n </div>,\n <div\n class=\"thumb thumb-right\"\n style={{ left: `${rightPercent}%` }}\n role=\"slider\"\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={rightValue} // Always use the snapped value for ARIA\n aria-disabled={disabled ? 'true' : undefined}\n aria-readonly={readonly ? 'true' : undefined}\n data-thumb=\"right\"\n tabindex={disabled ? -1 : 0}\n onKeyDown={onKeyDown}\n >\n <div class=\"thumb-tooltip\">\n {labelBeforeValue && (\n <span class=\"label-before\">{labelBeforeValue}</span>\n )}\n {String(rightValue)}\n {labelAfterValue && <span class=\"label-after\">{labelAfterValue}</span>}\n </div>\n </div>,\n ];\n};\n","import { FunctionalComponent, h } from '@stencil/core';\nimport { valueToPercent } from '../nv-fieldslider.utils';\n\n/**\n * Represents a tick mark on the slider\n */\ninterface Tick {\n /** The numeric value of the tick */\n value: number;\n /** Optional label for the tick */\n label?: string;\n}\n\n/**\n * Props for the TickMarks component\n */\ninterface TickMarksProps {\n /** Array of tick definitions */\n ticks: Tick[];\n /** Minimum allowed value */\n min: number;\n /** Maximum allowed value */\n max: number;\n}\n\n/**\n * Renders tick marks along the slider track.\n * @param {TickMarksProps} props - Component properties\n * @returns {JSX.Element | null} JSX element representing the tick marks or null if no ticks\n */\nexport const TickMarks: FunctionalComponent<TickMarksProps> = props => {\n const { ticks, min, max } = props;\n\n if (ticks.length === 0) {\n return null;\n }\n\n return (\n <div class=\"track-ticks\">\n {ticks.map(tick => {\n const percent = valueToPercent(tick.value, min, max);\n return (\n <div class=\"track-tick\" style={{ left: `${percent}%` }}>\n {tick.label && <div class=\"tick-label\">{tick.label}</div>}\n </div>\n );\n })}\n </div>\n );\n};\n","import { FunctionalComponent, h } from '@stencil/core';\n\n/**\n * Props for the FieldInput component\n */\ninterface FieldInputProps {\n /** Whether this is a range slider */\n range: boolean;\n /** Whether to show the input field */\n hasField: boolean;\n /** The value for single mode */\n value: number;\n /** The values for range mode [min, max] */\n rangeValue: number[];\n /** Index (0 or 1) for range mode, ignored in single mode */\n index?: number;\n /** ID for the input field */\n inputId: string;\n /** Minimum allowed value */\n min: number;\n /** Maximum allowed value */\n max: number;\n /** Step size */\n step: number;\n /** Whether the slider is disabled */\n disabled: boolean;\n /** Whether the slider is readonly */\n readonly: boolean;\n /** Handler for input changes */\n onInput: (event: Event) => void;\n /** Label to display before the value */\n labelBeforeValue?: string;\n /** Label to display after the value */\n labelAfterValue?: string;\n /** Name attribute for the input field (for form submission) */\n name?: string;\n /** Name attribute for the end input field (when in range mode) */\n endName?: string;\n}\n\n/**\n * Renders field input for direct value entry\n * @param {FieldInputProps} props - Component properties\n * @returns {JSX.Element} JSX element representing the field input\n */\nexport const FieldInput: FunctionalComponent<FieldInputProps> = props => {\n const {\n range,\n hasField,\n value,\n rangeValue,\n index,\n inputId,\n min,\n max,\n step,\n disabled,\n readonly,\n onInput,\n labelBeforeValue,\n labelAfterValue,\n name,\n endName,\n } = props;\n\n // Determine the appropriate value based on mode and index\n const fieldValue = range ? rangeValue[index] : value;\n\n // In range mode, we need data-index for event handling\n const dataAttrs = range ? { 'data-index': index.toString() } : {};\n\n // Determine the appropriate name based on mode and index\n let inputName: string;\n if (range) {\n if (index === 0) {\n inputName = name || '';\n } else {\n // Use endName if provided, otherwise append \"-end\" to the name\n inputName = endName || (name ? `${name}-end` : '');\n }\n } else {\n inputName = name || '';\n }\n\n // If hasField is false, only the containers are visible, not the input fields\n const containerClass = hasField\n ? 'input-container'\n : 'input-container hidden-input';\n\n return hasField ? (\n <div class={containerClass}>\n {labelBeforeValue && <span class=\"label-before\">{labelBeforeValue}</span>}\n <input\n id={inputId}\n type=\"number\"\n value={fieldValue}\n min={min}\n max={max}\n step={step}\n disabled={disabled}\n readonly={readonly}\n name={inputName}\n {...dataAttrs}\n onInput={onInput}\n />\n {labelAfterValue && <span class=\"label-after\">{labelAfterValue}</span>}\n </div>\n ) : (\n <input\n id={inputId}\n type=\"hidden\"\n value={fieldValue}\n disabled={disabled}\n readonly={readonly}\n name={inputName}\n />\n );\n};\n","@use \"./mixins\" as *;\n\nnv-fieldslider {\n @include form-field-variables();\n @include form-field-root();\n\n .slider-container {\n @include slider-container-styles();\n\n .track-container {\n @include track-container-styles();\n\n .track {\n @include track-styles();\n .track-range {\n @include track-range-styles();\n }\n .thumb {\n @include thumb-styles();\n .thumb-tooltip {\n @include thumb-tooltip-styles();\n }\n &:hover, &:active, &:focus {\n .thumb-tooltip {\n opacity: 1;\n }\n }\n }\n }\n\n .track-ticks {\n @include track-ticks-styles();\n .track-tick {\n @include track-tick-styles();\n .tick-label {\n @include tick-label-styles();\n }\n }\n }\n }\n\n .input-container {\n @include form-field-input-container();\n @include input-container-styles();\n input {\n @include form-field-input();\n }\n }\n }\n\n &[fluid]:not([fluid=\"false\"]) {\n @include form-field-fluid();\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 &[readonly]:not([readonly=\"false\"]) {\n @include form-field-readonly-variables();\n .track,\n .thumb {\n cursor: default;\n }\n }\n\n label {\n @include form-field-label();\n }\n\n &[hide-label]:not([hide-label=\"false\"]) label {\n @include form-field-hide-label();\n }\n\n &[has-field]:not([has-field=\"false\"]) {\n .thumb-tooltip {\n display: none;\n }\n }\n\n > .description {\n @include form-field-description();\n }\n\n > .error-description {\n @include form-field-error-description();\n &[hidden] {\n display: none;\n }\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n State,\n Watch,\n Element,\n} from '@stencil/core';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport {\n clamp,\n valueToPercent,\n snapToStep,\n generateTicks,\n snapToTicks,\n} from './nv-fieldslider.utils';\n\nimport { SingleThumb } from './partials/single-thumb';\nimport { RangeThumb } from './partials/range-thumb';\nimport { TickMarks } from './partials/tick-marks';\nimport { FieldInput } from './partials/field-input';\n\n/**\n * @deprecated [EXPERIMENTAL]\n * @experimental This component is still in development and subject to change in future releases.\n * @slot label - Content to be placed as the label, will override the label prop.\n * @slot description - Content to be placed as the description, will override the description prop.\n * @slot error-description - Content to be placed as the error description, will override the errorDescription prop.\n */\n@Component({\n tag: 'nv-fieldslider',\n styleUrl: 'styles/nv-fieldslider.scss',\n shadow: false,\n formAssociated: true,\n})\nexport class NvFieldslider {\n @Element() el: HTMLNvFieldsliderElement;\n\n /****************************************************************************/\n //#region PROPERTIES\n\n /**\n * Sets the ID for the start input element and the for attribute of the associated\n * label. If no ID is provided, a random one will be automatically generated.\n */\n @Prop({ reflect: true })\n readonly startInputId: string = uuidv4();\n\n /**\n * Sets the ID for the end input element and the for attribute of the associated\n * label. If no ID is provided, a random one will be automatically generated.\n */\n @Prop({ reflect: true })\n readonly endInputId: string = uuidv4();\n\n /**\n * Provides a textual description of the slider's function, helping users\n * understand what the control adjusts. It also supports accessibility by\n * serving as the accessible name for the component.\n */\n @Prop({ reflect: true })\n readonly label: string;\n\n /**\n * Keeps the interface clean by removing visible labels, but still announces\n * the label to screen readers so users relying on assistive tech aren't left\n * guessing.\n */\n @Prop({ reflect: true })\n readonly hideLabel: boolean = false;\n\n /**\n * Add helpful hints or extra information under the slider. This is where you\n * can clarify what users should enter or provide additional instructions,\n * making the form easier to fill out correctly.\n */\n @Prop({ reflect: true })\n readonly description: string;\n\n /**\n * Enables an optional numeric input field alongside the slider, allowing\n * users to type a value directly instead of—or in addition to—using the\n * slider handle.\n */\n @Prop({ reflect: true })\n readonly hasField: boolean = false;\n\n /**\n * Allows the slider to display two thumbs, enabling users to select a\n * continuous range between a minimum and maximum value. Ideal for use cases\n * like filtering by price or time.\n */\n @Prop({ reflect: true })\n readonly range: boolean = false;\n\n /**\n * Disables user interaction with the slider and its associated input fields.\n */\n @Prop({ reflect: true })\n readonly disabled: boolean = false;\n\n /**\n * Makes the slider and input non-editable while keeping them focusable and\n * included in form submissions.\n */\n @Prop({ reflect: true })\n readonly readonly: boolean = false;\n\n /**\n * Alters the slider'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 slider.\n * @validator message\n */\n @Prop({ reflect: true })\n readonly errorDescription: string;\n\n /**\n * Changes the slider's appearance to indicate successful input or validation.\n */\n @Prop({ reflect: true })\n readonly success: boolean = false;\n\n /**\n * Numeric value of the slider as a string, if range mode is on, the values\n * will be a comma-separated string.\n */\n @Prop({ reflect: true, mutable: true })\n value: string = '0';\n\n /**\n * Defines the interval between selectable values on the slider. Controls how\n * much the value increases or decreases with each keyboard interaction, drag\n * movement, or direct input.\n */\n @Prop({ reflect: true })\n readonly step: number = 1;\n\n /**\n * Controls whether the slider handle should visually snap to step values\n * during dragging. When false, the handle can be positioned at any point\n * along the track while dragging, but the actual value will still snap to the\n * nearest step value. When true, the handle will visually snap to the nearest\n * step value during dragging.\n */\n @Prop({ reflect: true })\n readonly snap: boolean = false;\n\n /**\n * When true and custom ticks are provided, the slider will snap to the nearest\n * tick value during dragging, instead of using the step value. This is useful\n * when you have custom ticks at specific values that don't align with regular step intervals.\n */\n @Prop({ reflect: true })\n readonly snapTicks: boolean = false;\n\n /**\n * Name attribute for the form input element. Required for form submission.\n * For range sliders, this will be used for the start value input and add -end\n * to the end input name.\n */\n @Prop({ reflect: true })\n readonly name: string;\n\n /**\n * Name attribute for the end value input when using range mode.\n * If not provided, the name attribute will be used with '-end' appended.\n */\n @Prop({ reflect: true })\n readonly endName: string;\n\n /**\n * Defines the minimum allowed value for the slider. The thumb cannot move\n * below this value, and manual input is also constrained accordingly.\n */\n @Prop({ reflect: true })\n readonly min: number = 0;\n\n /**\n * Defines the maximum allowed value for the slider. The thumb cannot move\n * above this value, and manual input is also constrained accordingly.\n */\n @Prop({ reflect: true })\n readonly max: number = 100;\n\n /**\n * Controls the visibility of tick marks on the slider. When enabled, all\n * visual ticks that indicate step points along the track are shown. If custom\n * ticks are provided, they are always shown regardless of this setting.\n */\n @Prop({ reflect: true })\n readonly showTicks: boolean = false;\n\n /**\n * Allows you to specify custom tick marks at specific values along the\n * slider. Each tick can optionally display a label to provide additional\n * context or guidance for users.\n */\n @Prop({ reflect: false })\n readonly ticks: {\n /** The numeric value of the tick */\n value: number;\n /** The label of the tick */\n label?: string;\n }[];\n\n /**\n * Allows the field to stretch and fill the entire width of its container.\n */\n @Prop({ reflect: true })\n readonly fluid: boolean = false;\n\n /**\n * Use this to automatically show a label, like “~” for approximate values,\n * before the slider’s value in the tooltip or input, giving users quick\n * context about the number.\n */\n @Prop({ reflect: true })\n readonly labelBeforeValue: string;\n\n /**\n * Use this to automatically show a label, like “$” or “kg,” after the value\n * on the slider’s tooltip or input, helping users better understand the\n * number.\n */\n @Prop({ reflect: true })\n readonly labelAfterValue: string;\n\n //#endregion PROPERTIES\n /****************************************************************************/\n //#region STATE\n\n @State()\n isDragging = false;\n\n @State()\n activeDragThumb: 'left' | 'right' | 'single' = 'single';\n\n @State()\n internalTicks: typeof this.ticks = [];\n\n // These track the raw slider positions for visual display\n @State()\n rawPosition = 0;\n\n @State()\n rawRangePosition: [number, number] = [0, 0];\n\n @State()\n valueInternal: number = 0;\n\n @State()\n rangeValueInternal: [number, number] = [0, 0];\n\n //#endregion STATE\n /****************************************************************************/\n //#region METHODS\n\n /**\n * Ensures value is valid and within bounds.\n * @param {number} val - The value to validate\n * @returns {number} The validated and snapped value\n */\n private validateValue(val: number): number {\n // First ensure the value is within bounds\n const clampedValue = clamp(val, this.min, this.max);\n\n // If snapTicks is true and we have custom ticks, snap to the nearest tick\n if (this.snapTicks && this.internalTicks && this.internalTicks.length > 0) {\n return snapToTicks(clampedValue, this.internalTicks);\n }\n\n // Otherwise snap to step values\n return snapToStep(clampedValue, this.min, this.max, this.step);\n }\n\n /**\n * Parses the value string into a number or array of numbers for internal use.\n */\n private parseValue = (): void => {\n const values = this.value.replace(/\\s/g, '').split(',');\n if (values.length === 1) {\n this.valueInternal = parseFloat(values[0]);\n } else if (values.length === 2) {\n values.forEach((value, index) => {\n this.valueInternal = parseFloat(value);\n this.rangeValueInternal[index] = this.valueInternal;\n });\n }\n };\n\n /**\n * Handles value changes from slider interaction.\n * @param {number | number[]} newValue - The new value or range values\n */\n private handleValueChange(newValue: number | number[]): void {\n if (this.disabled || this.readonly) {\n return;\n }\n\n if (this.range) {\n // Handle range values\n if (Array.isArray(newValue) && newValue.length === 2) {\n // Ensure values are in order (left ≤ right)\n const orderedValues = [\n Math.min(newValue[0], newValue[1]),\n Math.max(newValue[0], newValue[1]),\n ];\n\n // Snap to steps and clamp\n const validatedValues: [number, number] = [\n this.validateValue(orderedValues[0]),\n this.validateValue(orderedValues[1]),\n ];\n\n if (\n validatedValues[0] !== this.rangeValueInternal[0] ||\n validatedValues[1] !== this.rangeValueInternal[1]\n ) {\n this.rangeValueInternal = validatedValues;\n this.value = this.rangeValueInternal.join(',');\n this.valueChanged.emit(this.rangeValueInternal.join(','));\n }\n }\n } else {\n // Handle single value\n if (typeof newValue === 'number') {\n const validatedValue = this.validateValue(newValue);\n\n if (validatedValue !== this.valueInternal) {\n this.valueInternal = validatedValue;\n this.value = String(this.valueInternal);\n this.valueChanged.emit(String(this.valueInternal));\n }\n }\n }\n }\n\n /**\n * Generates the ticks to display based on props and state.\n */\n private generateDisplayTicks(): void {\n // If custom ticks are provided, always use them regardless of showTicks setting\n if (this.ticks && this.ticks.length > 0) {\n this.internalTicks = [...this.ticks].sort((a, b) => a.value - b.value);\n return;\n }\n\n // If showTicks is false and there are no custom ticks, hide all ticks\n if (!this.showTicks) {\n this.internalTicks = [];\n return;\n }\n\n // Generate all ticks at each step point\n const autoTicks = generateTicks(this.min, this.max, this.step);\n this.internalTicks = autoTicks.map(value => ({ value }));\n }\n\n /**\n * Handles pointer events on the track.\n * @param {PointerEvent} event - The pointer event\n */\n private onTrackInteraction = (event: PointerEvent): void => {\n if (this.disabled || this.readonly) {\n return;\n }\n\n const trackRect = (\n event.currentTarget as HTMLElement\n ).getBoundingClientRect();\n const percentage = clamp(\n ((event.clientX - trackRect.left) / trackRect.width) * 100,\n 0,\n 100,\n );\n\n const newValue = this.min + (percentage / 100) * (this.max - this.min);\n\n // Store raw position for visual display\n this.rawPosition = newValue;\n\n if (this.range) {\n // In range mode, determine which thumb to move based on proximity\n const leftPct = valueToPercent(\n this.rangeValueInternal[0],\n this.min,\n this.max,\n );\n const rightPct = valueToPercent(\n this.rangeValueInternal[1],\n this.min,\n this.max,\n );\n\n const distanceToLeft = Math.abs(percentage - leftPct);\n const distanceToRight = Math.abs(percentage - rightPct);\n\n if (distanceToLeft <= distanceToRight) {\n this.activeDragThumb = 'left';\n this.rawRangePosition = [newValue, this.rawRangePosition[1]];\n this.handleValueChange([newValue, this.rangeValueInternal[1]]);\n } else {\n this.activeDragThumb = 'right';\n this.rawRangePosition = [this.rawRangePosition[0], newValue];\n this.handleValueChange([this.rangeValueInternal[0], newValue]);\n }\n } else {\n this.activeDragThumb = 'single';\n this.rawPosition = newValue;\n this.handleValueChange(newValue);\n }\n\n this.isDragging = true;\n this.registerGlobalEvents();\n };\n\n /**\n * Handles pointer move events during drag.\n * @param {PointerEvent} event - The pointer event\n */\n private onPointerMove = (event: PointerEvent): void => {\n if (!this.isDragging || this.disabled || this.readonly) {\n return;\n }\n\n const trackElement = this.el.querySelector('.track') as HTMLElement;\n if (!trackElement) return;\n\n const trackRect = trackElement.getBoundingClientRect();\n const percentage = clamp(\n ((event.clientX - trackRect.left) / trackRect.width) * 100,\n 0,\n 100,\n );\n\n const newValue = this.min + (percentage / 100) * (this.max - this.min);\n\n // Update visual position\n if (this.range) {\n if (this.activeDragThumb === 'left') {\n this.rawRangePosition = [newValue, this.rawRangePosition[1]];\n this.handleValueChange([newValue, this.rangeValueInternal[1]]);\n } else {\n this.rawRangePosition = [this.rawRangePosition[0], newValue];\n this.handleValueChange([this.rangeValueInternal[0], newValue]);\n }\n } else {\n this.rawPosition = newValue;\n this.handleValueChange(newValue);\n }\n };\n\n /**\n * Handles the end of a drag operation.\n */\n private onPointerUp = (): void => {\n this.isDragging = false;\n this.removeGlobalEvents();\n };\n\n /**\n * Registers global events for tracking pointer movement.\n */\n private registerGlobalEvents(): void {\n document.addEventListener('pointermove', this.onPointerMove);\n document.addEventListener('pointerup', this.onPointerUp);\n document.addEventListener('pointercancel', this.onPointerUp);\n }\n\n /**\n * Removes global events when tracking ends.\n */\n private removeGlobalEvents(): void {\n document.removeEventListener('pointermove', this.onPointerMove);\n document.removeEventListener('pointerup', this.onPointerUp);\n document.removeEventListener('pointercancel', this.onPointerUp);\n }\n\n /**\n * Handles keydown events for keyboard accessibility.\n * @param {KeyboardEvent} event - The keyboard event\n */\n private onKeyDown = (event: KeyboardEvent): void => {\n if (this.disabled || this.readonly) {\n return;\n }\n\n let newValue: number | number[];\n const stepMultiplier = event.shiftKey ? 10 : 1;\n const singleStep = this.step * stepMultiplier;\n\n if (this.range) {\n const focusedThumb = (event.target as HTMLElement).getAttribute(\n 'data-thumb',\n );\n const idx = focusedThumb === 'left' ? 0 : 1;\n const currentValue = [...this.rangeValueInternal];\n\n switch (event.key) {\n case 'ArrowRight':\n case 'ArrowUp':\n currentValue[idx] += singleStep;\n break;\n case 'ArrowLeft':\n case 'ArrowDown':\n currentValue[idx] -= singleStep;\n break;\n case 'Home':\n currentValue[idx] = this.min;\n break;\n case 'End':\n currentValue[idx] = this.max;\n break;\n case 'PageUp':\n currentValue[idx] += singleStep * 10;\n break;\n case 'PageDown':\n currentValue[idx] -= singleStep * 10;\n break;\n default:\n return;\n }\n\n newValue = currentValue;\n } else {\n switch (event.key) {\n case 'ArrowRight':\n case 'ArrowUp':\n newValue = this.valueInternal + singleStep;\n break;\n case 'ArrowLeft':\n case 'ArrowDown':\n newValue = this.valueInternal - singleStep;\n break;\n case 'Home':\n newValue = this.min;\n break;\n case 'End':\n newValue = this.max;\n break;\n case 'PageUp':\n newValue = this.valueInternal + singleStep * 10;\n break;\n case 'PageDown':\n newValue = this.valueInternal - singleStep * 10;\n break;\n default:\n return;\n }\n }\n\n event.preventDefault();\n this.handleValueChange(newValue);\n };\n\n /**\n * Handles field input value changes.\n * @param {Event} event - The input event\n */\n private handleFieldChange = (event: Event): void => {\n const input = event.target as HTMLInputElement;\n const newValue = parseFloat(input.value);\n\n if (isNaN(newValue)) {\n return;\n }\n\n if (this.range) {\n const fieldIndex = input.getAttribute('data-index') === '0' ? 0 : 1;\n const updatedRange = [...this.rangeValueInternal];\n updatedRange[fieldIndex] = newValue;\n this.handleValueChange(updatedRange);\n } else {\n this.handleValueChange(newValue);\n }\n };\n\n //#endregion METHODS\n /****************************************************************************/\n //#region WATCHERS\n\n @Watch('value')\n onValueChange() {\n this.parseValue();\n }\n\n @Watch('min')\n @Watch('max')\n @Watch('step')\n @Watch('ticks')\n @Watch('showTicks')\n @Watch('snap')\n @Watch('snapTicks')\n onConfigChange() {\n this.generateDisplayTicks();\n\n if (this.range) {\n this.handleValueChange(this.rangeValueInternal);\n } else {\n this.handleValueChange(this.valueInternal);\n }\n }\n\n @Watch('range')\n onRangeChange(newValue: boolean) {\n if (newValue) {\n // Switching to range mode\n this.rangeValueInternal = [this.min, this.valueInternal];\n } else {\n // Switching to single mode, take the higher value\n this.valueInternal = this.rangeValueInternal[1];\n }\n }\n //#endregion WATCHERS\n /****************************************************************************/\n //#region LIFECYCLE\n connectedCallback() {\n this.parseValue();\n this.generateDisplayTicks();\n\n // Initialize values and make sure they're valid\n if (this.range) {\n if (\n !Array.isArray(this.rangeValueInternal) ||\n this.rangeValueInternal.length !== 2\n ) {\n this.rangeValueInternal = [this.min, this.max];\n }\n this.handleValueChange(this.rangeValueInternal);\n // Initialize raw range position to match actual values\n this.rawRangePosition = [\n this.rangeValueInternal[0],\n this.rangeValueInternal[1],\n ];\n } else {\n this.handleValueChange(this.valueInternal);\n // Initialize raw position to match actual value\n this.rawPosition = this.valueInternal;\n }\n }\n\n disconnectedCallback() {\n this.removeGlobalEvents();\n }\n //#endregion LIFECYCLE\n /****************************************************************************/\n //#region EVENTS\n\n /**\n * Emitted when the slider values change.\n * @bind value\n */\n @Event()\n valueChanged: EventEmitter<string>;\n\n //#endregion EVENTS\n /****************************************************************************/\n //#region RENDER\n\n render() {\n return (\n <Host>\n {(this.label || this.el.querySelector('[slot=\"label\"]')) && (\n <label htmlFor={this.startInputId}>\n <slot name=\"label\">{this.label}</slot>\n </label>\n )}\n\n <div class=\"slider-container\">\n {/* First input (always render for the start value, but may be hidden) */}\n {this.range ? (\n <FieldInput\n range={this.range}\n hasField={this.hasField}\n value={this.valueInternal}\n rangeValue={this.rangeValueInternal}\n index={0}\n inputId={this.startInputId}\n min={this.min}\n max={this.max}\n step={this.step}\n disabled={this.disabled}\n readonly={this.readonly}\n onInput={this.handleFieldChange}\n labelBeforeValue={this.labelBeforeValue}\n labelAfterValue={this.labelAfterValue}\n name={this.name}\n endName={this.endName}\n />\n ) : null}\n\n <div class=\"track-container\">\n <div class=\"track\" onPointerDown={this.onTrackInteraction}>\n {this.range ? (\n <RangeThumb\n rangeValue={this.rangeValueInternal}\n rawRangePosition={this.rawRangePosition}\n activeDragThumb={this.activeDragThumb}\n isDragging={this.isDragging}\n snap={this.snap}\n min={this.min}\n max={this.max}\n disabled={this.disabled}\n readonly={this.readonly}\n onKeyDown={this.onKeyDown}\n labelBeforeValue={this.labelBeforeValue}\n labelAfterValue={this.labelAfterValue}\n />\n ) : (\n <SingleThumb\n value={this.valueInternal}\n min={this.min}\n max={this.max}\n rawPosition={this.rawPosition}\n isDragging={this.isDragging}\n snap={this.snap}\n disabled={this.disabled}\n readonly={this.readonly}\n onKeyDown={this.onKeyDown}\n labelBeforeValue={this.labelBeforeValue}\n labelAfterValue={this.labelAfterValue}\n />\n )}\n </div>\n\n <TickMarks\n ticks={this.internalTicks}\n min={this.min}\n max={this.max}\n />\n </div>\n\n {/* Second input (for range mode, or for single value if not already rendered) */}\n {this.range ? (\n <FieldInput\n range={this.range}\n hasField={this.hasField}\n value={this.valueInternal}\n rangeValue={this.rangeValueInternal}\n index={1}\n inputId={this.endInputId}\n min={this.min}\n max={this.max}\n step={this.step}\n disabled={this.disabled}\n readonly={this.readonly}\n onInput={this.handleFieldChange}\n labelBeforeValue={this.labelBeforeValue}\n labelAfterValue={this.labelAfterValue}\n name={this.name}\n endName={this.endName}\n />\n ) : (\n <FieldInput\n range={this.range}\n hasField={this.hasField}\n value={this.valueInternal}\n rangeValue={this.rangeValueInternal}\n inputId={this.startInputId}\n min={this.min}\n max={this.max}\n step={this.step}\n disabled={this.disabled}\n readonly={this.readonly}\n onInput={this.handleFieldChange}\n labelBeforeValue={this.labelBeforeValue}\n labelAfterValue={this.labelAfterValue}\n name={this.name}\n />\n )}\n </div>\n\n {(this.success ||\n this.description ||\n this.el.querySelector('[slot=\"description\"]')) && (\n <div class=\"description\">\n {this.success && (\n <nv-icon name=\"circle-check\" class=\"validation\" size=\"md\" />\n )}\n <slot name=\"description\">{this.description}</slot>\n </div>\n )}\n\n {(this.error ||\n this.errorDescription ||\n this.el.querySelector('[slot=\"error-description\"]')) && (\n <div class=\"error-description\" hidden={!this.error}>\n {this.error && (\n <nv-icon name=\"alert-circle\" class=\"validation\" size=\"md\" />\n )}\n <slot name=\"error-description\">{this.errorDescription}</slot>\n </div>\n )}\n </Host>\n );\n }\n // #endregion RENDER\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as s,F as e,a,g as o}from"./p-711a7778.js";import{B as n}from"./p-f85c08f1.js";const l="nv-dialogfooter{display:flex;padding:var(--dialog-footer-padding-top) var(--dialog-footer-padding-x) var(--dialog-footer-padding-bottom) var(--dialog-footer-padding-x);justify-content:flex-end;align-items:flex-end;gap:var(--dialog-footer-gap-y);align-self:stretch}";const r=l;const h=class{constructor(s){t(this,s);this.dialogCanceled=i(this,"dialogCanceled",7);this.dialogPrimaryClicked=i(this,"dialogPrimaryClicked",7);if(s.$hostElement$["s-ei"]){this.internals=s.$hostElement$["s-ei"]}else{this.internals=s.$hostElement$.attachInternals();s.$hostElement$["s-ei"]=this.internals}this.hasSlot=false;this.disabled=false;this.undismissable=false;this.leadingIcon="";this.trailingIcon="";this.danger=false;this.cancelLabel="Cancel";this.primaryLabel="Primary";this.primaryButtonType=n.Button;this.handlePrimary=t=>{t.stopPropagation();this.dialogPrimaryClicked.emit()};this.handleCancel=t=>{t.stopPropagation();this.dialogCanceled.emit()}}componentWillLoad(){this.hasSlot=Array.from(this.el.childNodes).some((t=>t.nodeType===Node.ELEMENT_NODE&&!t.hasAttribute("slot")))}render(){return s(a,{key:"5756a0cc697188c3fdee2930b1c6ae7922af71cc"},!this.hasSlot?s(e,null,!this.undismissable&&s("nv-button",{onClick:this.handleCancel,emphasis:"low",size:"sm"},this.cancelLabel),s("nv-button",{onClick:this.handlePrimary,disabled:this.disabled,danger:this.danger,size:"sm",emphasis:"high",form:this.form,type:this.primaryButtonType},this.leadingIcon&&s("nv-icon",{slot:"leading-icon",name:this.leadingIcon,size:"sm"}),this.primaryLabel,this.trailingIcon&&s("nv-icon",{slot:"trailing-icon",name:this.trailingIcon,size:"sm"}))):s("slot",null))}static get formAssociated(){return true}get el(){return o(this)}};h.style=r;const d='nv-dialogheader{padding:var(--dialog-header-padding-top) var(--dialog-header-padding-x) var(--dialog-header-padding-bottom) var(--dialog-header-padding-x);justify-content:space-between;align-items:flex-start;align-self:stretch}nv-dialogheader .heading{color:var(--color-content-high-text);font-family:"TT Norms Pro", sans-serif;font-size:var(--font-size-lg);font-style:normal;font-weight:500;line-height:var(--leading-px-6);letter-spacing:var(--letter-spacing-heading-xs)}nv-dialogheader .subheading{color:var(--color-content-low-text);font-family:"TT Norms Pro", sans-serif;font-size:var(--font-size-sm);font-style:normal;font-weight:400;line-height:var(--line-height-sm);}';const g=d;const c=class{constructor(i){t(this,i);this.hasSlot=false;this.heading="Dialog Title"}componentWillLoad(){this.hasSlot=Array.from(this.el.childNodes).some((t=>t.nodeType===Node.ELEMENT_NODE&&!t.hasAttribute("slot")))}render(){return s(a,{key:"850e2408cb7a35903be3bc51fbee000fc58f4a76"},!this.hasSlot?s(e,null,s("div",{class:"heading"},this.heading),s("div",{class:"subheading"},this.subheading)):s("slot",null))}get el(){return o(this)}};c.style=g;export{h as nv_dialogfooter,c as nv_dialogheader};
2
- //# sourceMappingURL=p-7c676f2c.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as e,c as o,h as i,a as t,g as r}from"./p-711a7778.js";import{v as n}from"./p-f5ff676c.js";const d='nv-fielddropdown{--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-fielddropdown[fluid]:not([fluid=false]){max-width:unset}nv-fielddropdown[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-fielddropdown[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-fielddropdown[required]:not([required=false]) label::after{content:"*";color:var(--components-form-text-required);font-weight:700}nv-fielddropdown[hidden]:not([hidden=false]) label{display:none}nv-fielddropdown 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-fielddropdown nv-popover{width:100%;display:block}nv-fielddropdown nv-popover [data-scope=popover]{width:100%;padding:var(--list-dropdown-padding);border-radius:var(--list-dropdown-radius);background-color:var(--components-list-dropdown-background);border:1px solid var(--components-list-dropdown-border)}nv-fielddropdown nv-popover [slot=content]{gap:var(--list-dropdown-gap-y);display:flex;flex-direction:column}nv-fielddropdown nv-popover hr{color:var(--components-list-dropdown-separator)}nv-fielddropdown nv-popover div[slot=content]{max-height:calc(90vh - var(--list-dropdown-padding) * 2);overflow-y:auto;position:relative}nv-fielddropdown nv-popover div[slot=content]::-webkit-scrollbar{width:6px;height:6px}nv-fielddropdown nv-popover div[slot=content]::-webkit-scrollbar-track{background-color:var(--color-level-10-background);border-radius:9999px}nv-fielddropdown nv-popover div[slot=content]::-webkit-scrollbar-thumb{background-color:var(--color-gray-200);border-radius:9999px}nv-fielddropdown .input-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch;width:100%}nv-fielddropdown .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;width:100%;min-height:40px}nv-fielddropdown .input-container:hover{border-color:var(--nv-field-border-hover)}nv-fielddropdown .input-container:focus-within,nv-fielddropdown .input-container:focus-within:hover,nv-fielddropdown .input-container:focus,nv-fielddropdown .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-fielddropdown .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-fielddropdown .input-container:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fielddropdown .input-container input[type=search]::-webkit-search-decoration,nv-fielddropdown .input-container input[type=search]::-webkit-search-cancel-button,nv-fielddropdown .input-container input[type=search]::-webkit-search-results-button,nv-fielddropdown .input-container input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}nv-fielddropdown .input-container input,nv-fielddropdown .input-container p.non-filterable-text{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-fielddropdown .input-container input:focus,nv-fielddropdown .input-container p.non-filterable-text:focus{outline:none}nv-fielddropdown .input-container input::placeholder,nv-fielddropdown .input-container p.non-filterable-text::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-fielddropdown .input-container>nv-iconbutton{border:0px;border-radius:0px}nv-fielddropdown .input-container>nv-iconbutton:focus-visible{border-radius:var(--button-md-border-radius);outline-offset:-3px}nv-fielddropdown .input-container nv-icon.validation{color:var(--nv-field-border-default)}nv-fielddropdown .non-filterable-text{display:block;border-radius:var(--form-field-radius);background-color:var(--nv-field-background);color:var(--components-form-field-content-text);font-size:var(--form-field-font-size);font-weight:500;line-height:var(--form-field-line-height);box-sizing:border-box;cursor:pointer;height:100%;min-height:40px}nv-fielddropdown .non-filterable-text span{display:inline-block;width:100%;overflow:hidden;text-overflow:ellipsis}nv-fielddropdown .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-fielddropdown .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 s=d;const l=class{constructor(i){e(this,i);this.valueChanged=o(this,"valueChanged",7);this.dropdownItemSelected=o(this,"dropdownItemSelected",7);this.inputId=n();this.autocomplete="off";this.required=false;this.readonly=false;this.disabled=false;this.error=false;this.maxHeight="";this.open=false;this.emptyResult="No results found";this.filterable=false;this.debounceDelay=300;this.autofocus=false;this.fluid=false;this.filterText="";this.selectedValues=new Set;this.handleInputContainerClick=e=>{if(this.disabled||this.readonly){return}const o=e.target;if(o.tagName==="P"||o.tagName==="SPAN"){this.open=true;const e=this.el.querySelector(".input-container");if(e){e.classList.add("focus-within");const o=()=>{e.classList.remove("focus-within")};this.popoverElement.addEventListener("hide",o)}}};this.handleInput=e=>{if(!this.filterable)return;if(this.disabled||this.readonly){return}const o=e.target;this.open=true;if(this.debounceTimer){window.clearTimeout(this.debounceTimer)}this.debounceTimer=window.setTimeout((()=>{this.filterText=o.value.toLowerCase();this.filterItems()}),this.debounceDelay)};this.handleInputFocus=()=>{if(this.disabled||this.readonly)return;this.open=true};this.togglePopover=()=>{if(this.disabled||this.readonly)return;this.open=!this.open};this.getSelectedLabel=()=>{var e,o,i,t,r,n;if(!this.value)return"";if(((e=this.options)===null||e===void 0?void 0:e.length)>1){const e=this.options.find((e=>e.value===this.value));return(i=(o=e===null||e===void 0?void 0:e.label)!==null&&o!==void 0?o:e===null||e===void 0?void 0:e.value)!==null&&i!==void 0?i:this.value}const d=Array.from(this.el.querySelectorAll("nv-fielddropdownitem"));const s=d.find((e=>e.value===this.value));const l=s?(n=(t=s.label)!==null&&t!==void 0?t:(r=s.textContent)===null||r===void 0?void 0:r.trim())!==null&&n!==void 0?n:s.value:"";return l};this.clearFilter=()=>{if(!this.filterable)return;this.filterText="";this.inputElement.value=this.getSelectedLabel();this.inputElement.focus();this.filterItems()}}handleOptionsChange(e){var o;if(!e)return;if(!this.value){const i=e.find((e=>e.selected));this.value=(o=i===null||i===void 0?void 0:i.value)!==null&&o!==void 0?o:"";this.updateSelectedItem(this.value)}}watchValueHandler(e){this.valueChanged.emit(e)}handleOpenChanged(e){e.stopPropagation();this.open=e.detail}handleDropdownItemSelected(e){if(this.disabled||this.readonly)return;const o=Array.from(this.el.querySelectorAll("nv-fielddropdownitem"));o.forEach((o=>{if(o!==e.target){o.removeAttribute("selected")}else{o.setAttribute("selected","true")}}));this.clearFilter();this.value=e.detail.value;this.open=false}handleBlur(e){const o=e.relatedTarget;if(!(o instanceof Node)||!this.el.contains(o)){this.open=false;if(this.inputElement){this.filterText="";this.inputElement.value=this.getSelectedLabel();setTimeout((()=>{this.filterItems()}),200)}}}handleKeyDown(e){if(!this.el)return;if(!this.open){if(e.key==="ArrowDown"){this.open=true;e.preventDefault();return}return}const o=Array.from(this.el.querySelectorAll("nv-fielddropdownitem:not([disabled]):not([hidden])"));let i=o.findIndex((e=>e.classList.contains("highlighted")));if(e.key==="ArrowDown"){e.preventDefault();i=(i+1)%o.length;this.updateHighlightedItem(o,i)}else if(e.key==="ArrowUp"){e.preventDefault();i=(i-1+o.length)%o.length;this.updateHighlightedItem(o,i)}else if(e.key==="Escape"){e.preventDefault();this.open=false}}componentWillLoad(){this.resetFilter();if(this.filterable&&this.filterText){this.filterItems()}if(this.options){this.handleOptionsChange(this.options)}}componentDidLoad(){if(this.value){this.updateSelectedItem(this.value)}if(this.inputElement){this.inputElement.value=this.getSelectedLabel()}}async getFilterText(){return this.filterText}filterItems(){var e;const o=Array.from(this.el.querySelectorAll("nv-fielddropdownitem"));const i=this.el.querySelector("nv-fielddropdownitem[data-empty]");if(i){i.remove()}let t=false;o.forEach((e=>{var o,i;const r=((o=e.textContent)===null||o===void 0?void 0:o.toLowerCase())||"";const n=((i=e.value)===null||i===void 0?void 0:i.toLowerCase())||"";const d=n.includes(this.filterText)||r.includes(this.filterText);if(d)e.removeAttribute("hidden");else e.setAttribute("hidden","");if(d){t=true}}));if(!t){const o=document.createElement("nv-fielddropdownitem");o.setAttribute("data-empty","true");o.setAttribute("disabled","true");o.textContent=this.emptyResult;(e=this.el.querySelector('ul[slot="content"]'))===null||e===void 0?void 0:e.appendChild(o)}}resetFilter(){const e=Array.from(this.el.querySelectorAll("nv-fielddropdownitem"));e.forEach((e=>{e.style.display=""}))}updateHighlightedItem(e,o){e.forEach(((e,i)=>{if(i===o){e.classList.add("highlighted");e.focus();e.scrollIntoView({block:"nearest"})}else{e.classList.remove("highlighted")}}))}updateSelectedItem(e){if(!e)return;const o=Array.from(this.el.querySelectorAll("nv-fielddropdownitem"));const i=o.find((o=>{var i;const t=o.getAttribute("label");const r=o.getAttribute("value");const n=(i=o.textContent)===null||i===void 0?void 0:i.trim();return t===e||r===e||n===e}));o.forEach((e=>{if(e===i){e.setAttribute("selected","")}else{e.removeAttribute("selected")}}))}render(){var e;return i(t,{key:"3864f366575665c4730dde8fd0d8e37c4ee11d82",role:"combobox","aria-expanded":this.open.toString(),"aria-haspopup":"listbox","aria-label":this.label},(this.label||this.el.querySelector('[slot="label"]'))&&i("label",{key:"8ce42f691251468c6c054464ee3695e2bea90bd5",htmlFor:this.inputId},i("slot",{key:"7e779704e1c3f9f6ee71455679c0e1d5d4ee8795",name:"label"},this.label)),i("nv-popover",{key:"82cdd318e195ef44513684afba0e9c9772cad448",ref:e=>this.popoverElement=e,triggerMode:"controlled",placement:"bottom-start",open:this.open},i("div",{key:"1189c8fd06db511cb51721ac14cdc54ef286691c",class:"input-wrapper",slot:"trigger"},i("slot",{key:"9069907e055d77a19c30c045e29eaf4bf998f9a0",name:"before-input"}),i("div",{key:"2c57f017b25754d4b5baf44e3457e95256dfdccf",class:"input-container",onClick:this.handleInputContainerClick},i("slot",{key:"939e749473e4df95a28fcf98e8b6d455408bff71",name:"leading-input"}),this.filterable||this.disabled||this.readonly?i("input",{"data-scope":"focusable",id:this.inputId,type:"search",ref:e=>this.inputElement=e,autofocus:this.autofocus,autocomplete:this.autocomplete,placeholder:this.placeholder,name:this.name,value:this.getSelectedLabel(),required:this.required,disabled:this.disabled,readOnly:this.readonly,onInput:this.handleInput,onFocus:this.handleInputFocus,onClick:this.handleInputFocus,onKeyDown:this.handleKeyDown}):i("p",{"data-scope":"focusable",id:this.inputId,class:"non-filterable-text",onClick:this.handleInputContainerClick,tabIndex:this.disabled?-1:0,onKeyDown:this.handleKeyDown,onFocus:this.handleInputFocus},this.getSelectedLabel()||this.value||this.placeholder),this.filterable&&this.filterText&&this.open&&i("nv-iconbutton",{key:"dcf54042b261665e5317ac122a93ca12fcedd9bc",name:"x",size:"md",emphasis:"lower",class:"clear-button",onClick:this.clearFilter,"aria-label":"Clear input"}),this.error&&i("nv-icon",{key:"3551957d94021648d731f97c1ba7ecdc8a325c15",name:"alert-circle",class:"validation",size:"md"}),i("nv-iconbutton",{key:"e8576d20f760219f236aa9ba52a34f762cc8d23e","data-scope":"toggle-dropdown",name:this.open?"chevron-top":"chevron-down",size:"md",emphasis:"lower","aria-label":this.open?"Hide dropdown":"Show dropdown","aria-pressed":this.open.toString(),onClick:this.togglePopover,tabIndex:this.disabled?-1:0})),i("slot",{key:"48e9ae570e34cde3d20594a3f6518298ebbad02e",name:"after-input"})),i("div",{key:"cec0a670f4158ca91aa45dcee7a5c25a584226f9",slot:"content",style:this.maxHeight?{maxHeight:this.maxHeight}:{}},((e=this.options)===null||e===void 0?void 0:e.length)>0?i("ul",null,this.options.map((e=>i("nv-fielddropdownitem",{label:e.label,value:e.value,disabled:e.disabled,selected:e.value===this.value})))):i("slot",{name:"content"}))),(this.description||this.el.querySelector('[slot="description"]'))&&i("div",{key:"e24dbfc170fb20e48ca2a474508a7c9beac6b87e",class:"description"},i("slot",{key:"3b4429e2dd0b4f070309b00c6cba94cd343e7165",name:"description"},this.description)),(this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&i("div",{key:"b59ecbf446b142840f5c5933c505900abf126378",hidden:!this.error,class:"error-description"},i("slot",{key:"bf3c16d6a9fdc7a10741518153465a736eff808c",name:"error-description"},this.errorDescription)))}static get formAssociated(){return true}get el(){return r(this)}static get watchers(){return{options:["handleOptionsChange"],value:["watchValueHandler"]}}};l.style=s;export{l as nv_fielddropdown};
2
- //# sourceMappingURL=p-7c6edd1c.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as i,a as s,g as o}from"./p-711a7778.js";import{v as n}from"./p-f5ff676c.js";const l='nv-fieldmultiselect{--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-fieldmultiselect[fluid]:not([fluid=false]){max-width:unset}nv-fieldmultiselect[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-fieldmultiselect[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-fieldmultiselect[required]:not([required=false])>label::after{content:"*";color:var(--components-form-text-required);font-weight:700}nv-fieldmultiselect 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-fieldmultiselect nv-popover{width:100%;display:block}nv-fieldmultiselect nv-popover [data-scope=popover]{width:100%;padding:var(--list-dropdown-padding);border-radius:var(--list-dropdown-radius);background-color:var(--components-list-dropdown-background);border:1px solid var(--components-list-dropdown-border)}nv-fieldmultiselect nv-popover [slot=content]{gap:var(--list-dropdown-gap-y);display:flex;flex-direction:column}nv-fieldmultiselect nv-popover hr{color:var(--components-list-dropdown-separator)}nv-fieldmultiselect nv-popover div[slot=content]{max-height:calc(90vh - var(--list-dropdown-padding) * 2);overflow-y:auto;position:relative}nv-fieldmultiselect nv-popover div[slot=content]::-webkit-scrollbar{width:6px;height:6px}nv-fieldmultiselect nv-popover div[slot=content]::-webkit-scrollbar-track{background-color:var(--color-level-10-background);border-radius:9999px}nv-fieldmultiselect nv-popover div[slot=content]::-webkit-scrollbar-thumb{background-color:var(--color-gray-200);border-radius:9999px}nv-fieldmultiselect .input-wrapper-multiselect{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch;width:100%}nv-fieldmultiselect .input-container-multiselect{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;width:100%;min-height:40px;}nv-fieldmultiselect .input-container-multiselect:hover{border-color:var(--nv-field-border-hover)}nv-fieldmultiselect .input-container-multiselect:focus-within,nv-fieldmultiselect .input-container-multiselect:focus-within:hover,nv-fieldmultiselect .input-container-multiselect:focus,nv-fieldmultiselect .input-container-multiselect: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-fieldmultiselect .input-container-multiselect:has(input:read-only){opacity:0.5;background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fieldmultiselect .input-container-multiselect:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldmultiselect .input-container-multiselect>nv-badge{margin-left:var(--form-field-padding-x)}nv-fieldmultiselect .input-container-multiselect input,nv-fieldmultiselect .input-container-multiselect p.non-filterable-text{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%;flex-grow:1;margin:0;min-height:100%;box-sizing:border-box}nv-fieldmultiselect .input-container-multiselect input:focus,nv-fieldmultiselect .input-container-multiselect p.non-filterable-text:focus{outline:none}nv-fieldmultiselect .input-container-multiselect input::placeholder,nv-fieldmultiselect .input-container-multiselect p.non-filterable-text::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-fieldmultiselect .input-container-multiselect>nv-iconbutton{border:0px;border-radius:0px}nv-fieldmultiselect .input-container-multiselect>nv-iconbutton:focus-visible{border-radius:var(--button-md-border-radius);outline-offset:-3px}nv-fieldmultiselect .input-container-multiselect nv-icon.validation{color:var(--nv-field-border-default)}nv-fieldmultiselect .non-filterable-text{display:block;border-radius:var(--form-field-radius);background-color:var(--nv-field-background);color:var(--components-form-field-content-text);font-size:var(--form-field-font-size);font-weight:500;line-height:var(--form-field-line-height);box-sizing:border-box;cursor:pointer;height:100%;min-height:40px}nv-fieldmultiselect .non-filterable-text span{display:inline-block;width:100%;overflow:hidden;text-overflow:ellipsis}nv-fieldmultiselect .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-fieldmultiselect .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)}.no-results-message{text-align:center;padding:10px;color:var(--components-form-text-description-error)}.multiselect-divider{display:block;width:100%;height:1px;background-color:var(--components-list-dropdown-separator);margin:var(--list-dropdown-item-padding-y) 0;border:0}';const r=l;const a=class{constructor(o){t(this,o);this.valueChanged=e(this,"valueChanged",7);this.multiselectChange=e(this,"multiselectChange",7);this.inputId=n();this.autocomplete="off";this.required=false;this.readonly=false;this.disabled=false;this.error=false;this.maxHeight="";this.open=false;this.emptyResult="No results found";this.filterable=false;this.debounceDelay=300;this.autofocus=false;this.fluid=false;this.badgeLabel="";this.filterText="";this.selectedValues=[];this.sortedOptions=[];this.isHandlingEscape=false;this.handleBadgeCloseOptions=()=>{this.selectedValues=[];this.multiselectChange.emit(this.selectedValues);const t=Array.from(this.el.querySelectorAll("nv-fielddropdownitemcheck"));t.forEach((t=>{t.checked=false;t.style.display=""}));this.options=this.options.filter((t=>!t.isDivider));this.reorderOptionsContent()};this.handleBadgeCloseSlots=()=>{this.selectedValues=[];this.multiselectChange.emit(this.selectedValues);const t=Array.from(this.el.querySelectorAll("nv-fielddropdownitemcheck"));t.forEach((t=>{t.checked=false;t.style.display=""}));this.reorderSlotContent()};this.handlePopoverClose=()=>{if(this.isHandlingEscape){return}this.filterText="";if(this.filterable){this.resetFilter()}};this.handleInputBlurOptions=()=>{setTimeout((()=>{if(!this.el.contains(document.activeElement)){this.open=false;if(this.filterable){this.filterText="";this.resetFilter()}}}),150)};this.handleInputContainerClickOptions=t=>{if(this.disabled||this.readonly){return}const e=t.target;if(e.tagName==="P"||e.tagName==="SPAN"){this.open=true;const t=this.el.querySelector(".input-container");if(t){t.classList.add("focus-within");const e=()=>{t.classList.remove("focus-within")};this.popoverElement.addEventListener("hide",e)}}};this.handleInputContainerClickSlots=t=>{if(this.disabled||this.readonly){return}const e=t.target;if(e.tagName==="P"||e.tagName==="SPAN"){this.open=true;const t=this.el.querySelector(".input-container");if(t){t.classList.add("focus-within");const e=()=>{t.classList.remove("focus-within")};this.popoverElement.addEventListener("hide",e)}}};this.handleInputOptions=t=>{if(!this.filterable)return;if(this.disabled||this.readonly){return}const e=t.target;this.value=e.value;this.valueChanged.emit(this.value);if(this.debounceTimer){window.clearTimeout(this.debounceTimer)}this.debounceTimer=window.setTimeout((()=>{this.filterText=e.value.toLowerCase();this.filterItemsOption()}),this.debounceDelay)};this.handleInputSlots=t=>{if(!this.filterable)return;if(this.disabled||this.readonly)return;const e=t.target;this.value=e.value;this.valueChanged.emit(this.value);if(this.debounceTimer){window.clearTimeout(this.debounceTimer)}this.debounceTimer=window.setTimeout((()=>{this.filterText=e.value.toLowerCase();this.filterSlotsItems()}),this.debounceDelay)};this.handleInputFocusOptions=()=>{if(this.disabled||this.readonly){return}this.open=true};this.handleInputFocusSlots=()=>{if(this.disabled||this.readonly){return}this.open=true};this.handleInputBlurSlots=()=>{setTimeout((()=>{if(!this.el.contains(document.activeElement)){this.open=false;if(this.filterable){this.filterText="";this.resetFilter()}}}),150)};this.togglePopoverOptions=()=>{if(this.disabled||this.readonly){return}this.open=!this.open};this.togglePopoverSlots=()=>{if(this.disabled||this.readonly){return}this.open=!this.open};this.renderOptionsMode=()=>i(s,{"aria-label":this.label,"aria-expanded":this.open.toString()},(this.label||this.el.querySelector('[slot="label"]'))&&i("label",{htmlFor:this.inputId},i("slot",{name:"label"},this.label)),i("nv-popover",{ref:t=>this.popoverElement=t,triggerMode:"controlled",placement:"bottom-start",open:this.open},i("div",{class:"input-wrapper-multiselect",slot:"trigger"},i("slot",{name:"before-input"}),i("div",{class:"input-container-multiselect"},i("slot",{name:"leading-input"}),this.selectedValues.length>0&&i("nv-badge",{slot:"leading-input","prevent-auto-close":true,color:"10",dismissible:this.selectedValues.length>0,label:`${this.selectedValues.length} ${this.badgeLabel}`,"aria-label":`Clear all ${this.selectedValues.length} ${this.badgeLabel} items`,onCloseClicked:this.handleBadgeCloseOptions}),this.filterable||this.disabled||this.readonly?i("input",{type:"text",id:this.inputId,ref:t=>this.inputElement=t,autofocus:this.autofocus,autocomplete:this.autocomplete,placeholder:this.placeholder,name:this.name,value:this.value,required:this.required,disabled:this.disabled,readOnly:this.readonly,onInput:this.handleInputOptions,onFocus:this.handleInputFocusOptions,onBlur:this.handleInputBlurOptions,onKeyDown:this.handleKeyDown,"data-scope":"focusable"}):i("p",{id:this.inputId,class:"non-filterable-text",onClick:this.handleInputContainerClickOptions,tabIndex:0,onKeyDown:this.handleKeyDown,onFocus:this.handleInputFocusOptions,role:"combobox","aria-expanded":this.open,"data-scope":"focusable"},i("span",null,this.value||this.placeholder)),this.error&&i("nv-icon",{name:"alert-circle",class:"validation",size:"md"}),i("nv-iconbutton",{"data-scope":"toggle-dropdown",name:this.open?"chevron-top":"chevron-down",size:"md",emphasis:"lower","aria-label":this.open?"Hide dropdown":"Show dropdown","aria-pressed":this.open.toString(),onClick:this.togglePopoverOptions})),i("slot",{name:"after-input"})),i("div",{slot:"content",role:"listbox","aria-multiselectable":"true",style:this.maxHeight?{maxHeight:this.maxHeight}:{}},i("ul",{role:"content"},this.options.map((t=>i("nv-fielddropdownitemcheck",{label:t.label,description:t.description,value:t.value,checked:this.selectedValues.includes(t.value),disabled:t.disabled}))),i("hr",{class:"multiselect-divider",style:{display:"none"}})))),this.renderDescriptions());this.renderSlotsMode=()=>i(s,{"aria-label":this.label,"aria-expanded":this.open.toString()},(this.label||this.el.querySelector('[slot="label"]'))&&i("label",{htmlFor:this.inputId},i("slot",{name:"label"},this.label)),i("nv-popover",{ref:t=>this.popoverElement=t,triggerMode:"controlled",placement:"bottom-start",open:this.open},i("div",{class:"input-wrapper-multiselect",slot:"trigger"},i("slot",{name:"before-input"}),i("div",{class:"input-container-multiselect",onClick:this.handleInputContainerClickSlots},i("slot",{name:"leading-input"}),this.selectedValues.length>0&&i("nv-badge",{slot:"leading-input","prevent-auto-close":true,color:"10",dismissible:this.selectedValues.length>0,label:`${this.selectedValues.length} ${this.badgeLabel}`,"aria-label":`Clear all ${this.selectedValues.length} ${this.badgeLabel} items`,onCloseClicked:this.handleBadgeCloseSlots}),this.filterable||this.disabled||this.readonly?i("input",{id:this.inputId,ref:t=>this.inputElement=t,autocomplete:this.autocomplete,placeholder:this.placeholder,name:this.name,value:this.value,required:this.required,disabled:this.disabled,readOnly:this.readonly,onInput:this.handleInputSlots,onFocus:this.handleInputFocusSlots,onBlur:this.handleInputBlurSlots,onKeyDown:this.handleKeyDown,"data-scope":"focusable"}):i("p",{id:this.inputId,class:"non-filterable-text",onClick:this.handleInputContainerClickSlots,tabIndex:0,onKeyDown:this.handleKeyDown,onFocus:this.handleInputFocusSlots,role:"combobox","aria-expanded":this.open,"data-scope":"focusable"},i("span",null,this.value||this.placeholder)),this.error&&i("nv-icon",{name:"alert-circle",class:"validation",size:"md"}),i("nv-iconbutton",{"data-scope":"toggle-dropdown",name:this.open?"chevron-top":"chevron-down",size:"md",emphasis:"lower","aria-label":this.open?"Hide dropdown":"Show dropdown","aria-pressed":this.open.toString(),onClick:this.togglePopoverSlots})),i("slot",{name:"after-input"})),i("div",{slot:"content",role:"listbox","aria-multiselectable":"true",style:this.maxHeight?{maxHeight:this.maxHeight}:{}},i("slot",{name:"content"}))),this.renderDescriptions())}handleOptionsChange(t){if(!t)return;this.selectedValues=t.filter((t=>t.checked)).map((t=>t.value));this.reorderOptionsContent()}watchValueHandler(){this.setInitialSelection()}handleOpenChanged(t){t.stopPropagation();this.open=t.detail;if(this.open){if(this.filterText){this.filterItems()}}else{this.handlePopoverClose()}if(this.options){this.reorderOptionsContent()}else{this.reorderSlotContent()}}handleItemChecked(t){if(this.disabled||this.readonly){return}const{value:e,checked:i}=t.detail;if(e!==undefined&&e!==null){const t=[...this.selectedValues];const s=t.indexOf(e);if(i&&s===-1){t.push(e)}else if(!i&&s>-1){t.splice(s,1)}if(JSON.stringify(this.selectedValues)!==JSON.stringify(t)){this.selectedValues=t;requestAnimationFrame((()=>{this.multiselectChange.emit(this.selectedValues)}))}}else{console.warn("Received itemChecked event with undefined or null value")}}handleSlotChange(t){const e=t.target;if(e&&e.name==="content"){requestAnimationFrame((()=>{this.reorderSlotContent()}))}}connectedCallback(){document.addEventListener("click",this.handleClickOutside.bind(this))}componentWillLoad(){var t;if(this.options){this.handleOptionsChange(this.options)}if(!this.options){Promise.resolve().then((()=>{const t=Array.from(this.el.querySelectorAll("nv-fielddropdownitemcheck"));this.selectedValues=t.filter((t=>t.hasAttribute("checked"))).map((t=>t.getAttribute("value")||""));requestAnimationFrame((()=>{this.reorderSlotContent()}))}))}if(this.options){this.sortedOptions=[...(t=this.options)!==null&&t!==void 0?t:[]]}if(this.filterable&&this.value){this.filterText=String(this.value).toLocaleLowerCase();this.filterItems()}else{this.resetFilter()}}componentDidLoad(){if(this.options){this.handleOptionsChange(this.options)}}disconnectedCallback(){document.removeEventListener("click",this.handleClickOutside.bind(this))}async getFilterText(){return this.filterText}setInitialSelection(){var t;const e=Array.from(this.el.querySelectorAll("nv-fielddropdownitem"));const i=e.find((t=>{var e;return t.getAttribute("label")===this.value||t.getAttribute("value")===this.value||((e=t.textContent)===null||e===void 0?void 0:e.trim())===this.value}));e.forEach((t=>{t.removeAttribute("selected");t.classList.remove("selected")}));if(i){i.setAttribute("selected","true");i.classList.add("selected");this.value=i.getAttribute("label")||i.getAttribute("value")||((t=i.textContent)===null||t===void 0?void 0:t.trim())||"";if(this.inputElement){this.inputElement.value=this.value}}}async resetFilter(){const t=Array.from(this.el.querySelectorAll("nv-fielddropdownitemcheck"));t.forEach((t=>{t.style.display=""}));const e=this.el.querySelector("ul");if(e){const i=e.querySelector("[data-empty]");if(i)i.remove();const s=t.filter((t=>this.selectedValues.includes(t.getAttribute("value")||"")));const o=t.filter((t=>!this.selectedValues.includes(t.getAttribute("value")||"")));if(s.length>0){this.manageDivider(e,s,o)}}}async getSelectedValues(){return this.selectedValues}reorderSlotContent(){if(this.options)return;const t=this.el.querySelector("ul");if(!t)return;t.querySelectorAll("hr.multiselect-divider").forEach((t=>t.remove()));const e=Array.from(this.el.querySelectorAll("nv-fielddropdownitemcheck")).filter((t=>t.style.display!=="none"));const i=t.querySelector("[data-empty]");if(i){return}const s=e.filter((t=>this.selectedValues.includes(t.getAttribute("value")||"")));const o=e.filter((t=>!this.selectedValues.includes(t.getAttribute("value")||"")));s.forEach((e=>{t.appendChild(e)}));if(s.length>0&&o.length>0){const e=document.createElement("hr");e.className="multiselect-divider";t.appendChild(e)}o.forEach((e=>{t.appendChild(e)}))}reorderOptionsContent(){const t=this.el.querySelector('ul[role="content"]');if(!t)return;const e=Array.from(t.querySelectorAll("nv-fielddropdownitemcheck")).filter((t=>t.style.display!=="none"));const i=e.filter((t=>this.selectedValues.includes(t.getAttribute("value")||"")));const s=e.filter((t=>!this.selectedValues.includes(t.getAttribute("value")||"")));i.forEach((e=>t.appendChild(e)));s.forEach((e=>t.appendChild(e)));this.manageDivider(t,i,s)}filterItems(){const t=this.el.querySelector("ul");if(!t)return;const e=t.querySelector("[data-empty]");if(e){e.remove()}if(!this.filterText.trim()){if(this.options&&this.options.length>0){const e=Array.from(t.querySelectorAll("nv-fielddropdownitemcheck"));e.forEach((t=>{t.style.display=""}))}else{const t=Array.from(this.el.querySelectorAll("nv-fielddropdownitemcheck"));t.forEach((t=>{t.style.display=""}))}const e=Array.from(t.querySelectorAll("nv-fielddropdownitemcheck"));const i=e.filter((t=>this.selectedValues.includes(t.getAttribute("value")||"")));const s=e.filter((t=>!this.selectedValues.includes(t.getAttribute("value")||"")));this.manageDivider(t,i,s);return}const i=this.normalizeText(this.filterText);let s=false;if(this.options&&this.options.length>0){const e=Array.from(t.querySelectorAll("nv-fielddropdownitemcheck"));e.forEach((t=>{const e=this.options.find((e=>e.value===t.getAttribute("value")));if(e&&!e.isDivider){const o=this.normalizeText(e.label).includes(i)||this.normalizeText(e.value).includes(i);t.style.display=o?"":"none";if(o)s=true}}));const o=e.filter((t=>t.style.display!=="none"));const n=o.filter((t=>this.selectedValues.includes(t.getAttribute("value")||"")));const l=o.filter((t=>!this.selectedValues.includes(t.getAttribute("value")||"")));this.manageDivider(t,n,l)}else{const t=Array.from(this.el.querySelectorAll("nv-fielddropdownitemcheck"));t.forEach((t=>{const e=t.getAttribute("label")||"";const o=t.getAttribute("value")||"";const n=t.textContent||"";const l=this.normalizeText(e).includes(i)||this.normalizeText(o).includes(i)||this.normalizeText(n).includes(i);t.style.display=l?"":"none";if(l)s=true}))}if(!s){const e=document.createElement("li");e.setAttribute("data-empty","true");e.textContent=this.emptyResult;e.classList.add("no-results-message");t.appendChild(e)}this.reorderSlotContent()}filterItemsOption(){const t=this.el.querySelector("ul");if(!t)return;const e=this.normalizeText(this.filterText);let i=false;const s=Array.from(t.querySelectorAll("nv-fielddropdownitemcheck"));if(!this.filterText.trim()){this.removeEmptyMessageOption(t);s.forEach((t=>t.style.display=""));this.reorderOptionsContent();return}s.forEach((t=>{const s=t.getAttribute("label")||"";const o=t.getAttribute("value")||"";const n=this.normalizeText(s).includes(e)||this.normalizeText(o).includes(e);t.style.display=n?"":"none";if(n)i=true}));const o=s.filter((t=>t.style.display!=="none"));const n=o.filter((t=>this.selectedValues.includes(t.getAttribute("value")||"")));const l=o.filter((t=>!this.selectedValues.includes(t.getAttribute("value")||"")));this.manageDivider(t,n,l);if(!i){this.addEmptyMessageOption(t)}else{this.removeEmptyMessageOption(t)}}filterSlotsItems(){if(this.options)return;const t=this.el.querySelector("ul");if(!t)return;const e=t.querySelector("[data-empty]");if(e){e.remove()}if(!this.filterText.trim()){this.resetFilter();return}const i=this.normalizeText(this.filterText);let s=false;const o=Array.from(this.el.querySelectorAll("nv-fielddropdownitemcheck"));o.forEach((t=>{var e;const o=t.getAttribute("label")||"";const n=t.getAttribute("value")||"";const l=((e=t.textContent)===null||e===void 0?void 0:e.trim())||"";const r=this.normalizeText(o).includes(i)||this.normalizeText(n).includes(i)||this.normalizeText(l).includes(i);t.style.display=r?"":"none";if(r)s=true}));const n=o.filter((t=>t.style.display!=="none"));const l=n.filter((t=>this.selectedValues.includes(t.getAttribute("value")||"")));this.manageDivider(t,l,n.filter((t=>!this.selectedValues.includes(t.getAttribute("value")||""))));if(!s){const e=document.createElement("li");e.setAttribute("data-empty","true");e.textContent=this.emptyResult;e.classList.add("no-results-message");t.appendChild(e)}}normalizeText(t){return t.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().trim()}handleClickOutside(t){if(this.el.contains(t.target)||this.inputElement&&this.inputElement.contains(t.target)){return}this.open=false}async handleKeyDown(t){if(!this.open){if(t.key==="ArrowDown"){this.open=true;if(!this.filterable){requestAnimationFrame((()=>{this.focusFirstItem()}))}t.preventDefault();return}return}const e=Array.from(this.el.querySelectorAll('nv-fielddropdownitemcheck:not([style*="display: none"])'));if(e.length===0){console.warn("No visible items found to navigate");return}let i=e.findIndex((t=>t.classList.contains("highlighted")));if(t.key==="ArrowDown"){t.preventDefault();i=i===-1?0:(i+1)%e.length;this.updateHighlightedItem(e,i)}else if(t.key==="ArrowUp"){t.preventDefault();i=i===-1?e.length-1:(i-1+e.length)%e.length;this.updateHighlightedItem(e,i)}else if(t.key==="Enter"&&i>=0){t.preventDefault();const s=e[i];const o=s.hasAttribute("checked");s.checked=!o;s.dispatchEvent(new MouseEvent("click",{view:window,bubbles:true,cancelable:true}))}else if(t.key==="Escape"){t.preventDefault();t.stopPropagation();const e=async()=>{this.isHandlingEscape=true;if(this.options){this.reorderOptionsContent()}else{this.reorderSlotContent()}await new Promise((t=>setTimeout(t,100)));setTimeout((()=>{this.isHandlingEscape=false;this.open=false}),150);if(this.inputElement){this.inputElement.blur()}};await e()}}updateHighlightedItem(t,e){t.forEach(((t,i)=>{if(i===e){t.classList.add("highlighted");t.setAttribute("tabindex","0");t.scrollIntoView({block:"nearest"});const e=t.querySelector("nv-fieldcheckbox");if(e){e.focus()}}else{t.classList.remove("highlighted");t.setAttribute("tabindex","-1")}}))}focusFirstItem(){const t=this.el.querySelector('nv-fielddropdownitemcheck:not([style*="display: none"])');if(t){t.setAttribute("tabindex","0");t.classList.add("highlighted");t.scrollIntoView({block:"nearest"});const e=t.querySelector("nv-fieldcheckbox");if(e){e.focus()}}else{console.warn("No visible first item found to focus")}}addEmptyMessageOption(t){const e=t.querySelector("[data-empty]");if(e)return;const i=document.createElement("li");i.setAttribute("data-empty","true");i.textContent=this.emptyResult;i.classList.add("no-results-message");t.appendChild(i)}removeEmptyMessageOption(t){const e=t.querySelector("[data-empty]");if(e)e.remove()}manageDivider(t,e,i){let s=t.querySelector("hr.multiselect-divider");if(!s){s=document.createElement("hr");s.className="multiselect-divider";t.appendChild(s)}const o=e.length>0&&i.length>0;if(o){const t=e[e.length-1];t.after(s);s.style.display=""}else{s.style.display="none"}}renderDescriptions(){return[(this.description||this.el.querySelector('[slot="description"]'))&&i("div",{class:"description"},i("slot",{name:"description"},this.description)),(this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&i("div",{hidden:!this.error,class:"error-description"},i("slot",{name:"error-description"},this.errorDescription))]}render(){return this.options?this.renderOptionsMode():this.renderSlotsMode()}static get formAssociated(){return true}get el(){return o(this)}static get watchers(){return{options:["handleOptionsChange"],value:["watchValueHandler"]}}};a.style=r;export{a as nv_fieldmultiselect};
2
- //# sourceMappingURL=p-987c79d8.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as e,c as t,h as r,a as i,g as o}from"./p-711a7778.js";import{v as s}from"./p-f5ff676c.js";const l='nv-fieldselect{--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-fieldselect[fluid]:not([fluid=false]){max-width:unset}nv-fieldselect[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-fieldselect[display-value]:not([display-value=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-fieldselect[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-fieldselect[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-fieldselect[required]:not([required=false]) label::after{content:"*";color:var(--components-form-text-required);font-weight:700}nv-fieldselect[multiple]:not([multiple=false]) .select-wrapper>.select-container>.select-icons{top:var(--form-field-padding-y);right:var(--form-field-padding-x)}nv-fieldselect[multiple]:not([multiple=false]) .select-wrapper>.select-container>select{height:100%;box-sizing:border-box}nv-fieldselect 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-fieldselect .select-wrapper{display:flex;flex-wrap:wrap;align-items:stretch;align-self:stretch}nv-fieldselect .select-wrapper .select-container{position:relative;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);background:var(--nv-field-background);transition:all 150ms ease-out}nv-fieldselect .select-wrapper .select-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldselect .select-wrapper .select-container:focus-within{border-color:var(--nv-field-border-focus);box-shadow:0 0 0 var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fieldselect .select-wrapper .select-container:has(select:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldselect .select-wrapper .select-container>.select-icons{position:absolute;right:0;top:0;pointer-events:none}nv-fieldselect .select-wrapper .select-container>.select-icons>nv-iconbutton{border:0px;border-radius:0px}nv-fieldselect .select-wrapper .select-container>.select-icons>nv-iconbutton:focus-visible{border-radius:var(--button-md-border-radius);outline-offset:-3px}nv-fieldselect .select-wrapper .select-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-fieldselect .select-wrapper .select-container input:focus{outline:none}nv-fieldselect .select-wrapper .select-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-fieldselect .select-wrapper .select-container input:read-only{opacity:0.5;background-color:var(--components-form-field-background-readonly, rgba(0, 0, 0, 0.1));border-color:var(--nv-field-border-readonly)}nv-fieldselect .select-wrapper .select-container select{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);text-overflow:ellipsis;font-size:var(--form-field-font-size);font-style:normal;font-weight:500;height:var(--form-field-line-height);padding:var(--form-field-padding-y) var(--form-field-padding-x);box-sizing:content-box;-webkit-appearance:none;-moz-appearance:none;cursor:pointer}nv-fieldselect .select-wrapper .select-container select:focus{outline:none}nv-fieldselect .select-wrapper .select-container select::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-fieldselect .select-wrapper .select-container select option{font-size:var(--form-field-font-size, 16px);font-style:normal;font-weight:500;line-height:var(--form-field-line-height, 24px)}nv-fieldselect .select-wrapper .select-container select.hidden{display:none}nv-fieldselect .select-wrapper .select-container nv-icon.readonly-icon{color:var(--nv-field-border-default)}nv-fieldselect .select-wrapper .select-container nv-icon.validation{color:var(--nv-field-border-default)}nv-fieldselect .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-fieldselect .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 n=l;const a=class{constructor(r){e(this,r);this.valueChanged=t(this,"valueChanged",7);this.computedDisplayValue="";this.internalReadonly=false;this.parsedOptions=[];this.inputId=s();this.disabled=false;this.readonly=false;this.required=false;this.error=false;this.success=false;this.multiple=false;this.value="";this.displayValue=false;this.autofocus=false;this.fluid=false;this.handleSelectChange=e=>{const t=e.target;let r=Array.from(t.selectedOptions).map((e=>e.value));if(!this.multiple){r=r.slice(0,1)}this.value=this.multiple?r.join(", "):r[0]||"";this.valueChanged.emit(this.value);this.setFormValue()};this.handleSelectContainerClick=()=>{if(!this.internalReadonly&&this.selectElement){this.selectElement.focus()}}}updateDisplayValueWatcher(e){this.updateDisplayValue();if(this.selectElement){const t=e.split(",").map((e=>e.trim()));const r=this.selectElement.options;if(r){Array.from(r).forEach((e=>{e.selected=this.multiple?t.includes(e.value):e.value===t[0]}));if(!this.multiple){this.selectElement.value=e}}else{this.selectElement.value=t[0]||""}}this.setFormValue()}handleDisplayValueChange(e){this.internalReadonly=e;if(this.readonly){this.internalReadonly=true}}handleReadonlyChange(e){this.internalReadonly=e;if(this.displayValue){this.internalReadonly=true}}handleOptionsChange(e){if(typeof e==="string"){try{const t=JSON.parse(e);this.parsedOptions=[...t];const r=t.find((e=>e.selected));if(r){this.value=r.value}}catch(e){console.error("Error parsing options:",e);this.parsedOptions=[]}}}updateDisplayValue(){if(this.internalReadonly&&!this.displayValue){if(this.multiple){const e=this.value.split(",").map((e=>e.trim())).map((e=>this.getLabelFromId(e)||"")).filter((e=>e!==""));this.computedDisplayValue=e.join(", ")||""}else{this.computedDisplayValue=this.getLabelFromId(this.value)||""}}else if(this.internalReadonly&&this.displayValue){this.computedDisplayValue=this.value||""}}getLabelFromId(e){this.ensureSelectElement();if(!this.selectElement){return""}const t=this.selectElement.options;if(t){const r=Array.from(t).find((t=>t.value===e));return r?r.textContent.trim()||"":""}else{return""}}setFormValue(){this.internals.setFormValue(this.value)}ensureSelectElement(){if(!this.selectElement){this.selectElement=this.el.querySelector("select")}}componentWillRender(){this.updateDisplayValue();if(this.message){this.description=this.message}if(this.validation){this.errorDescription=this.validation;this.error=true}}componentWillLoad(){this.internalReadonly=this.readonly;if(this.displayValue){this.internalReadonly=true}if("attachInternals"in this.el){this.internals=this.el.attachInternals()}else{this.internals={setFormValue:e=>{const t=this.el.closest("form");if(t){const r=document.createElement("input");r.type="hidden";r.name=this.name;r.value=e;t.appendChild(r)}}}}if(this.multiple&&typeof this.value!=="string"){this.value=""}if(this.options){this.handleOptionsChange(this.options)}}componentDidLoad(){this.updateDisplayValue();if(this.selectElement){if(!this.multiple){this.selectElement.value=this.value}const e=this.multiple?this.value.split(",").map((e=>e.trim())):[this.value];const t=this.selectElement.options;if(t){Array.from(t).forEach((t=>{t.selected=this.multiple?e.includes(t.value):t.value===e[0]}))}else{this.selectElement.value=e[0]||""}}this.setFormValue()}render(){return r(i,{key:"06d38dd360011d4310d1c63851dc254e8ae47411"},(this.label||this.el.querySelector('[slot="label"]'))&&r("label",{key:"a0e46209c73e704d8d0f630baace2b1ce0eaed9c",htmlFor:this.inputId},r("slot",{key:"6a43c979383647415044931d7a4e4d3a24f65921",name:"label"},this.label)),r("div",{key:"f2cee6021f85e64bd9d73d984e208903e3fda4c7",class:"select-wrapper"},r("slot",{key:"cae1c527e55c18f3e54d9c73390d6f17ccebce77",name:"before-input"}),r("div",{key:"acb5dcbea269eb7dca558942f36b05c552924cbc",class:"select-container",onClick:this.handleSelectContainerClick},r("slot",{key:"e5c2a508a1297796f2693c76338c5b5f8e3e149e",name:"leading-input"}),this.internalReadonly&&r("input",{key:"28c38079050912f7d3b744de66ed48351dd890c3",id:this.inputId+"-readonly",type:"text",value:this.computedDisplayValue,readonly:true,class:"readonly-input","aria-readonly":"true","aria-label":this.label,"aria-describedby":this.error?`${this.inputId}-error`:`${this.inputId}-description`}),r("select",{key:"c409a9e0a26797981640092eb67b949c7d8f0cff",id:this.inputId,ref:e=>this.selectElement=e,name:this.name,autofocus:this.autofocus,disabled:this.disabled,required:this.required,multiple:this.multiple,onChange:this.handleSelectChange,class:this.internalReadonly?"hidden":"","aria-label":this.label,"aria-describedby":this.error?`${this.inputId}-error`:`${this.inputId}-description`},this.parsedOptions.length>0?this.parsedOptions.map((e=>r("option",{value:e.value,selected:e.selected,disabled:e.disabled},e.label))):r("slot",null)),r("div",{key:"a2402ea8d832e5612510dce7a3f50148b4edf39f",class:"select-icons"},this.error&&r("nv-icon",{key:"e291bff25fa6f06d3b27c3aaa805b46f674e1614",name:"alert-circle",class:"validation",size:"md"}),this.success&&r("nv-icon",{key:"ce98cb12347722926677d9c3fc6f02e35a9c84e4",name:"circle-check",class:"validation",size:"md"}),!this.multiple&&r("nv-iconbutton",{key:"e7fe760a5fa84ab0548ebd736a44da04908a4c07",name:"chevron-down",size:"md",emphasis:"lower",tabindex:-1}))),r("slot",{key:"d6253e2d56d4095bbe9ab12ca34ff28e06bd6b6d",name:"after-input"})),(this.description||this.el.querySelector('[slot="description"]'))&&r("div",{key:"703ad3ad8538ceab3c9eb03ae90c3552e1b6bf23",class:"description",id:`${this.inputId}-description`},r("slot",{key:"010bbb23d2b947ed55c219ac64532f7dfd4f43cc",name:"description"},this.description)),(this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&r("div",{key:"70b696ec8f8badd4e064506eeba268755c9f2c09",class:"error-description",id:`${this.inputId}-error`},r("slot",{key:"2ec5af60d2fca9a8f5baf59406a4661905aeab05",name:"error-description"},this.errorDescription)))}static get formAssociated(){return true}get el(){return o(this)}static get watchers(){return{value:["updateDisplayValueWatcher"],displayValue:["handleDisplayValueChange"],readonly:["handleReadonlyChange"],options:["handleOptionsChange"]}}};a.style=n;export{a as nv_fieldselect};
2
- //# sourceMappingURL=p-aa86af25.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as e,c as t,h as i,a as s,g as n}from"./p-711a7778.js";import{a as o}from"./p-a5c8eee9.js";import{T as r}from"./p-f85c08f1.js";import{v as l}from"./p-f5ff676c.js";const a='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::-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-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;padding-right:2px;max-height:200px;overflow-y:auto;scroll-behavior:smooth;scrollbar-gutter:stable both-edges}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(--list-dropdown-item-padding-y) var(--list-dropdown-item-padding-x);text-align:center;cursor:pointer;transition:background-color 0.2s;height:40px;border-radius:var(--list-dropdown-item-radius);display:flex;justify-content:center;align-items:center}nv-fieldtime .time-dropdown .time-columns .time-column .time-option:hover{background-color:var(--components-list-dropdown-item-background-hover);color:var(--components-list-dropdown-item-label-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-list-dropdown-item-background-hover);color:var(--components-list-dropdown-item-label-hover)}nv-fieldtime .time-dropdown .time-columns .time-column .time-option.selected{background-color:var(--components-list-dropdown-item-background-active);color:var(--components-list-dropdown-item-label-active);border-width:1px;border-style:solid;border-color:var(--components-list-dropdown-item-border-active)}nv-fieldtime .time-dropdown .time-columns .time-column .time-option.highlighted{background-color:var(--components-list-dropdown-item-background-hover);color:var(--components-menu-contextual-item-content-hover)}';const d=a;const f=class{constructor(i){e(this,i);this.valueChanged=t(this,"valueChanged",7);this.inputElements={};this.inputZeroAdded={};this.typeFocused=r.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,n;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 o=`.time-column.time-column-${this.typeFocused} div`;const l=Array.from(this.el.querySelectorAll(o));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===r.Hours){(t=this.inputElements[r.Minutes])===null||t===void 0?void 0:t.focus();(i=this.inputElements[r.Minutes])===null||i===void 0?void 0:i.select()}else if(this.typeFocused===r.Minutes||this.typeFocused===r.Seconds){(s=this.inputElements[r.Seconds])===null||s===void 0?void 0:s.focus();(n=this.inputElements[r.Seconds])===null||n===void 0?void 0:n.select()}}else if(e.key==="Escape"){e.preventDefault();if(this.inputElements[r.Hours]){this.inputElements[r.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 r.Hours:this.handleHoursChange(s,t);break;case r.Minutes:this.handleMinutesChange(s,t);break;case r.Seconds:this.handleSecondsChange(s,t);break}const n=this.reconstructTime();this.value=n}handleHoursChange(e,t){var i,s,n,o;const l=this.format.startsWith("HH");const a=l?24:12;let d=false;const f=this.parseHour(this.max,this.format)||(this.format.startsWith("hh")?"12":"24");const h=this.parseHour(this.min,this.format)||"00";if(e.length===1){this.inputZeroAdded[t]=true;const i=e.padStart(2,"0");if(f&&parseInt(i,10)>parseInt(f,10)){if(h&&parseInt(i,10)<parseInt(h,10)){this.hours=h}else{this.hours="00";d=true}}else{if(h&&parseInt(i,10)<parseInt(h,10)){this.hours=h}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(h&&parseInt(i,10)<parseInt(h,10)){this.hours=h}else{this.hours="00";d=true}}else{if(f&&parseInt(i,10)>parseInt(f,10)){if(h&&parseInt(i,10)<parseInt(h,10)){this.hours=h}else{this.hours="00";d=true}}else{if(h&&parseInt(i,10)<parseInt(h,10)){this.hours=h}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(f&&parseInt(i,10)>parseInt(f,10)){if(h&&parseInt(i,10)<parseInt(h,10)){this.hours=h}else{this.hours="00";d=true}}else{if(h&&parseInt(i,10)<parseInt(h,10)){this.hours=h}else{this.hours=i}}}else{const t=e.slice(1,3).padStart(2,"0");const i=parseInt(t,10)||0;if(i>=a){if(h&&parseInt(t,10)<parseInt(h,10)){this.hours=h;d=true}else{this.hours="00";d=true}}else{if(f&&i>parseInt(f,10)){if(h&&parseInt(t,10)<parseInt(h,10)){this.hours=h}else{this.hours="00";d=true}}else{if(h&&i<parseInt(h,10)){this.hours=h}else{this.hours=i.toString()}}}}}else{const t=e.padStart(2,"0");const i=parseInt(t,10)||0;if(i>=a){if(h&&parseInt(t,10)<parseInt(h,10)){this.hours=h}else{this.hours="00";d=true}}else{if(f&&i>parseInt(f,10)){this.hours="00";d=true}else{if(h&&i<parseInt(h,10)){this.hours=h}else{this.hours=i.toString()}}}}if(this.hours.length===2&&!this.inputZeroAdded[t]&&!d){(i=this.inputElements[r.Minutes])===null||i===void 0?void 0:i.focus();(s=this.inputElements[r.Minutes])===null||s===void 0?void 0:s.select()}else if(d){(n=this.inputElements[r.Hours])===null||n===void 0?void 0:n.focus();(o=this.inputElements[r.Hours])===null||o===void 0?void 0:o.select()}}handleMinutesChange(e,t){var i,s,n,o,l,a;const d=60;let f=false;const h=(i=this.parseMinute(this.min))!==null&&i!==void 0?i:0;const c=(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(c&&parseInt(i,10)>c){if(h&&parseInt(i,10)<h){this.minutes=h.toString().padStart(2,"0")}else{this.minutes="00";f=true}}else{if(h&&parseInt(i,10)<h){this.minutes=h.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(h&&parseInt(i,10)<h){this.minutes=h.toString().padStart(2,"0")}else{this.minutes="00";f=true}}else{if(c&&s>c){if(h&&parseInt(i,10)<h){this.minutes=h.toString().padStart(2,"0")}else{this.minutes="00";f=true}}else{if(h&&s<h){this.minutes=h.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(c&&parseInt(i,10)>c){if(h&&parseInt(i,10)<h){this.minutes=h.toString().padStart(2,"0")}else{this.minutes="00";f=true}}else{if(h&&parseInt(i,10)<h){this.minutes=h.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(h&&parseInt(t,10)<h){this.minutes=h.toString().padStart(2,"0")}else{this.minutes="00";f=true}}else{if(c&&i>c){if(h&&parseInt(t,10)<h){this.minutes=h.toString().padStart(2,"0")}else{this.minutes="00";f=true}}else{if(h&&i<h){this.minutes=h.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(h&&parseInt(t,10)<h){this.minutes=h.toString().padStart(2,"0")}else{this.minutes="00";f=true}}else{if(c&&i>c){if(h&&parseInt(t,10)<h){this.minutes=h.toString().padStart(2,"0")}else{this.minutes="00";f=true}}else{if(h&&i<h){this.minutes=h.toString().padStart(2,"0")}else{this.minutes=i.toString()}}}}if(this.minutes.length===2&&!this.inputZeroAdded[t]&&!f){(n=this.inputElements[r.Seconds])===null||n===void 0?void 0:n.focus();(o=this.inputElements[r.Seconds])===null||o===void 0?void 0:o.select()}else if(f){(l=this.inputElements[r.Minutes])===null||l===void 0?void 0:l.focus();(a=this.inputElements[r.Minutes])===null||a===void 0?void 0:a.select()}}handleSecondsChange(e,t){var i,s,n,o;const l=60;let a=false;const d=(i=this.parseSecond(this.min))!==null&&i!==void 0?i:0;const f=(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(f&&parseInt(i,10)>f){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(f&&s>f){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(f&&i>f){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(f&&i>f){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){(n=this.inputElements[r.Seconds])===null||n===void 0?void 0:n.focus();(o=this.inputElements[r.Seconds])===null||o===void 0?void 0:o.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 n=t.slice(4,6);const o=this.parseHour(this.min,this.format)||i;const r=this.parseMinute(this.min)||s;const l=this.parseSecond(this.min)||n;this.hours=o.padStart(2,"0");this.minutes=r.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,n;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();(n=this.inputElements[e])===null||n===void 0?void 0:n.select()}this.typeFocused=e}HandleDropdownIconClick(){var e,t,i,s,n,o;if(this.disabled||this.readonly){return}if(this.open&&this.inputElements[r.Hours]){this.open=false}else if(this.open&&this.inputElements[r.Minutes]){this.open=false}else if(this.open&&this.inputElements[r.Seconds]){this.open=false}else if(!this.open&&this.inputElements[r.Hours]){(e=this.inputElements[r.Hours])===null||e===void 0?void 0:e.focus();(t=this.inputElements[r.Hours])===null||t===void 0?void 0:t.select()}else if(!this.open&&this.inputElements[r.Minutes]){(i=this.inputElements[r.Minutes])===null||i===void 0?void 0:i.focus();(s=this.inputElements[r.Minutes])===null||s===void 0?void 0:s.select()}else if(!this.open&&this.inputElements[r.Seconds]){(n=this.inputElements[r.Seconds])===null||n===void 0?void 0:n.focus();(o=this.inputElements[r.Seconds])===null||o===void 0?void 0:o.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===r.Hours){this.hours=i.toString().padStart(2,"0")}else if(t===r.Minutes){this.minutes=i.toString().padStart(2,"0")}else if(t===r.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 n=i.clientHeight;const o=i.scrollHeight;const r=40;const l=this.generateTimeOptions(t);const a=l.length*r;if(s+n>=o-r||s<=0){i.scrollTop=a}}generateTimeOptions(e){const t=this.step/1e3;if(t===0){return["00"]}switch(e){case r.Hours:return this.generateHourOptions(t);case r.Minutes:return this.generateMinuteOptions(t);case r.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 n=parseInt(i,10);const o=parseInt(s,10);const r=[];for(let e=o;e<n;e+=t){r.push(e.toString().padStart(2,"0"))}return r}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 n=(t=this.parseMinute(this.min))!==null&&t!==void 0?t:0;const o=(i=this.parseMinute(this.max))!==null&&i!==void 0?i:59;if(n===0&&o===0)return["00"];const r=[];for(let e=n;e<=o;e+=s){r.push(e.toString().padStart(2,"0"))}return r}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 n=(t=this.parseSecond(this.min))!==null&&t!==void 0?t:0;const o=(i=this.parseSecond(this.max))!==null&&i!==void 0?i:59;if(n===0&&o===0)return["00"];const r=[];for(let e=n;e<=o;e+=s){r.push(e.toString().padStart(2,"0"))}return r}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[r.Hours])===null||t===void 0?void 0:t.focus();(i=this.inputElements[r.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 n,o;if(s.includes(" ")){[n,o]=s.split(" ")}else{n=s}let r=parseInt(t,10);if(o){if(o==="PM"&&r<12){r+=12}else if(o==="AM"&&r===12){r=0}}if(this.format.startsWith("hh")){if(r===0){t="12"}else if(r>12){t=(r-12).toString()}else{t=r.toString()}}else{t=r.toString()}t=t.padStart(2,"0");i=i.padStart(2,"0");n=n.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,n)}}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===r.Hours&&t===this.hours||e===r.Minutes&&t===this.minutes||e===r.Seconds&&t===this.seconds},key:`${t}-${s}`,onClick:t=>this.handleTimeOptionClick(t,e)},t))))}render(){return i(s,{key:"f2e316b464ef324043fca47a25d7511fed662fe9",onclick:e=>this.handleHostClick(e)},(this.label||this.el.querySelector('[slot="label"]'))&&i("label",{key:"738dd3f9ba307a21ad7f16f77eb09f4f9fed8ccb",htmlFor:this.inputId},i("slot",{key:"8106132899c67bbc7e9ffb82caf575d599239b9a",name:"label"},this.label)),i("nv-popover",{key:"8306d0204039862466d83c7e5e2f42b87ea331c4",ref:e=>this.popoverElement=e,triggerMode:"controlled",placement:"bottom-start",open:this.open},i("div",{key:"0355aee332a5c5cd2492f22b7d820625273c74e6",class:"input-wrapper",slot:"trigger"},i("slot",{key:"a6aaeaba4901b4fe0b0266796c84531d57fbb719",name:"before-input"}),i("div",{key:"ae78ff8fc1a857a0da7be6e3c29464dbc0b80771",class:"input-container"},i("slot",{key:"6455a51b2f1edf565ac754e61ac773a920f319d4",name:"leading-input"}),o(this.format,"HH")&&[i("input",{key:"9a48b8ea04698b9443774a2e2bf41383144ba29a",ref:e=>this.inputElements[r.Hours]=e,type:"number",autofocus:this.autofocus,class:"time-input",pattern:"[0-9]*",maxlength:"3",value:this.hours,onInput:e=>this.handleInputChange(e,r.Hours),placeholder:this.format.includes("hh")?"hh":"HH",inputMode:"numeric",onFocus:()=>this.handleFocus(r.Hours),name:this.name?`${r.Hours}-${this.name}`:r.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:"5f75d09a90c0a8f6f106eb3e24f4f342fcc36d67"},":"),i("input",{key:"b3cc508705147ea07218a037f21f425deb9b94af",ref:e=>this.inputElements[r.Minutes]=e,type:"number",autofocus:this.autofocus,class:"time-input",pattern:"[0-9]*",maxlength:"3",value:this.minutes,onInput:e=>this.handleInputChange(e,r.Minutes),placeholder:"mm",inputMode:"numeric",onFocus:()=>this.handleFocus(r.Minutes),name:this.name?`${r.Minutes}-${this.name}`:r.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:"00b9320c275b027f9b2fbbebc1f56431783c874e"},":"),i("input",{key:"3421fb11a4c9d9ba58bbf6f809070ce35d3d1ad6",ref:e=>this.inputElements[r.Seconds]=e,type:"number",autofocus:this.autofocus,class:"time-input",pattern:"[0-9]*",maxlength:"3",value:this.seconds,onInput:e=>this.handleInputChange(e,r.Seconds),placeholder:"ss",inputMode:"numeric",onFocus:()=>this.handleFocus(r.Seconds),name:this.name?`${r.Seconds}-${this.name}`:r.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:"c61dc8780e1d668f2bf11ac2ace21b89ed460fdb",name:this.open?"chevron-top":"chevron-down",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:"5963651793c9c1ec5d47be2a8cea9fed22490bb9",name:"alert-circle",class:"validation",size:"sm"}),this.success&&i("nv-icon",{key:"79953118d4206363f97ffb8d69dd76545795e419",name:"circle-check",class:"validation",size:"sm"})),i("slot",{key:"d0a8c104a671f997e6a9da223baa2a37dd3bf349",name:"after-input"})),i("div",{key:"7dec8335599d59e116065bdb0053a9096acaae88",class:"time-dropdown",slot:"content"},i("div",{key:"be7d3a3fa7b4def66a7ebdf2f29b489540fa5802",class:"time-columns"},o(this.format,"HH")&&this.RenderTimeOptionsColumn(r.Hours),this.format.includes("mm")&&this.RenderTimeOptionsColumn(r.Minutes),this.format.includes("ss")&&this.RenderTimeOptionsColumn(r.Seconds)))),(this.description||this.el.querySelector('[slot="description"]'))&&i("div",{key:"ec98cc31482efab33ace4e0bf62c6d5d82890df5",class:"description"},i("slot",{key:"307b134933cca699d6f00d891a440281f2427d79",name:"description"},this.description)),(this.errorDescription||this.el.querySelector('[slot="error-description"]'))&&i("div",{key:"71763de75be4e9f14e1cd1788ca06f2265a46d7e",hidden:!this.error,class:"error-description"},i("slot",{key:"dbe05c00515a5ccf1b4ba4736b943cfd8cefaaa0",name:"error-description"},this.errorDescription)))}static get formAssociated(){return true}get el(){return n(this)}static get watchers(){return{value:["handleValueChange"]}}};f.style=d;export{f as nv_fieldtime};
2
- //# sourceMappingURL=p-adc96c3a.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as o,h as t,a,g as e}from"./p-711a7778.js";const r="nv-tooltip{display:inline-block;position:relative;user-select:none}nv-tooltip:has([fluid]:not([fluid=false])){display:block}nv-tooltip [data-scope=popover]{background:var(--components-tooltip-background);color:var(--components-tooltip-text);font-weight:var(--font-weight-medium-emphasis);padding:var(--tooltip-padding-y) var(--tooltip-padding-x);font-size:var(--tooltip-font-size);border-radius:var(--tooltip-radius);border:none;box-shadow:0px var(--shadow-y-axis-lg-1) var(--shadow-blur-lg-1) var(--shadow-spread-lg-1) var(--shadow-color-opacity-1), 0px var(--shadow-y-axis-lg-2) var(--shadow-blur-lg-2) var(--shadow-spread-lg-2) var(--shadow-color-opacity-2)}nv-tooltip [data-scope=popover] [data-scope=arrow]{background:var(--components-tooltip-background);box-shadow:none;border:none}";const s=r;const i=class{constructor(t){o(this,t);this.placement="bottom";this.enterDelay=0}componentWillLoad(){if(!this.triggerElement)this.triggerElement=Array.from(this.el.children).find((o=>o.getAttribute("slot")===null))}render(){return t(a,{key:"893071a64f973b33dccbf3acec95db46e592b717"},t("slot",{key:"010776550ed5f942c02540b12756f0c0f64e31c4"}),t("nv-popover",{key:"21a669333da9e55b697f8a0b0962a8328beac55a",triggerMode:"hover",hasArrow:true,placement:this.placement,triggerElement:this.triggerElement,groupName:"tooltip",enterDelay:this.enterDelay},t("p",{key:"ed89d0bfe1e9e8d12e33e3d7fb0f5b7f2685bbb9",slot:"content"},this.message),t("slot",{key:"fa2d9602e003f1da5c3d23156db7b2ac482966bd",name:"content"})))}get el(){return e(this)}};i.style=s;export{i as nv_tooltip};
2
- //# sourceMappingURL=p-b0fc08e7.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r}from"./p-711a7778.js";const s=class{constructor(s){r(this,s)}render(){return null}};export{s as nv_tablecolumn};
2
- //# sourceMappingURL=p-d07ab618.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as r,a as n,g as a}from"./p-711a7778.js";import{C as s,b as i,W as o}from"./p-f85c08f1.js";import{c}from"./p-0462f723.js";var d={exports:{}};(function(t,e){!function(e,r){t.exports=r()}(c,(function(){var t=1e3,e=6e4,r=36e5,n="millisecond",a="second",s="minute",i="hour",o="day",c="week",d="month",h="quarter",l="year",u="date",f="Invalid Date",p=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,v=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,m={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],r=t%100;return"["+t+(e[(r-20)%10]||e[r]||e[0])+"]"}},g=function(t,e,r){var n=String(t);return!n||n.length>=e?t:""+Array(e+1-n.length).join(r)+t},y={s:g,z:function(t){var e=-t.utcOffset(),r=Math.abs(e),n=Math.floor(r/60),a=r%60;return(e<=0?"+":"-")+g(n,2,"0")+":"+g(a,2,"0")},m:function t(e,r){if(e.date()<r.date())return-t(r,e);var n=12*(r.year()-e.year())+(r.month()-e.month()),a=e.clone().add(n,d),s=r-a<0,i=e.clone().add(n+(s?-1:1),d);return+(-(n+(r-a)/(s?a-i:i-a))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return{M:d,y:l,w:c,d:o,D:u,h:i,m:s,s:a,ms:n,Q:h}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},b="en",w={};w[b]=m;var k="$isDayjsObject",D=function(t){return t instanceof C||!(!t||!t[k])},M=function t(e,r,n){var a;if(!e)return b;if("string"==typeof e){var s=e.toLowerCase();w[s]&&(a=s),r&&(w[s]=r,a=s);var i=e.split("-");if(!a&&i.length>1)return t(i[0])}else{var o=e.name;w[o]=e,a=o}return!n&&a&&(b=a),a||!n&&b},x=function(t,e){if(D(t))return t.clone();var r="object"==typeof e?e:{};return r.date=t,r.args=arguments,new C(r)},Y=y;Y.l=M,Y.i=D,Y.w=function(t,e){return x(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var C=function(){function m(t){this.$L=M(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[k]=!0}var g=m.prototype;return g.parse=function(t){this.$d=function(t){var e=t.date,r=t.utc;if(null===e)return new Date(NaN);if(Y.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var n=e.match(p);if(n){var a=n[2]-1||0,s=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],a,n[3]||1,n[4]||0,n[5]||0,n[6]||0,s)):new Date(n[1],a,n[3]||1,n[4]||0,n[5]||0,n[6]||0,s)}}return new Date(e)}(t),this.init()},g.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},g.$utils=function(){return Y},g.isValid=function(){return!(this.$d.toString()===f)},g.isSame=function(t,e){var r=x(t);return this.startOf(e)<=r&&r<=this.endOf(e)},g.isAfter=function(t,e){return x(t)<this.startOf(e)},g.isBefore=function(t,e){return this.endOf(e)<x(t)},g.$g=function(t,e,r){return Y.u(t)?this[e]:this.set(r,t)},g.unix=function(){return Math.floor(this.valueOf()/1e3)},g.valueOf=function(){return this.$d.getTime()},g.startOf=function(t,e){var r=this,n=!!Y.u(e)||e,h=Y.p(t),f=function(t,e){var a=Y.w(r.$u?Date.UTC(r.$y,e,t):new Date(r.$y,e,t),r);return n?a:a.endOf(o)},p=function(t,e){return Y.w(r.toDate()[t].apply(r.toDate("s"),(n?[0,0,0,0]:[23,59,59,999]).slice(e)),r)},v=this.$W,m=this.$M,g=this.$D,y="set"+(this.$u?"UTC":"");switch(h){case l:return n?f(1,0):f(31,11);case d:return n?f(1,m):f(0,m+1);case c:var b=this.$locale().weekStart||0,w=(v<b?v+7:v)-b;return f(n?g-w:g+(6-w),m);case o:case u:return p(y+"Hours",0);case i:return p(y+"Minutes",1);case s:return p(y+"Seconds",2);case a:return p(y+"Milliseconds",3);default:return this.clone()}},g.endOf=function(t){return this.startOf(t,!1)},g.$set=function(t,e){var r,c=Y.p(t),h="set"+(this.$u?"UTC":""),f=(r={},r[o]=h+"Date",r[u]=h+"Date",r[d]=h+"Month",r[l]=h+"FullYear",r[i]=h+"Hours",r[s]=h+"Minutes",r[a]=h+"Seconds",r[n]=h+"Milliseconds",r)[c],p=c===o?this.$D+(e-this.$W):e;if(c===d||c===l){var v=this.clone().set(u,1);v.$d[f](p),v.init(),this.$d=v.set(u,Math.min(this.$D,v.daysInMonth())).$d}else f&&this.$d[f](p);return this.init(),this},g.set=function(t,e){return this.clone().$set(t,e)},g.get=function(t){return this[Y.p(t)]()},g.add=function(n,h){var u,f=this;n=Number(n);var p=Y.p(h),v=function(t){var e=x(f);return Y.w(e.date(e.date()+Math.round(t*n)),f)};if(p===d)return this.set(d,this.$M+n);if(p===l)return this.set(l,this.$y+n);if(p===o)return v(1);if(p===c)return v(7);var m=(u={},u[s]=e,u[i]=r,u[a]=t,u)[p]||1,g=this.$d.getTime()+n*m;return Y.w(g,this)},g.subtract=function(t,e){return this.add(-1*t,e)},g.format=function(t){var e=this,r=this.$locale();if(!this.isValid())return r.invalidDate||f;var n=t||"YYYY-MM-DDTHH:mm:ssZ",a=Y.z(this),s=this.$H,i=this.$m,o=this.$M,c=r.weekdays,d=r.months,h=r.meridiem,l=function(t,r,a,s){return t&&(t[r]||t(e,n))||a[r].slice(0,s)},u=function(t){return Y.s(s%12||12,t,"0")},p=h||function(t,e,r){var n=t<12?"AM":"PM";return r?n.toLowerCase():n};return n.replace(v,(function(t,n){return n||function(t){switch(t){case"YY":return String(e.$y).slice(-2);case"YYYY":return Y.s(e.$y,4,"0");case"M":return o+1;case"MM":return Y.s(o+1,2,"0");case"MMM":return l(r.monthsShort,o,d,3);case"MMMM":return l(d,o);case"D":return e.$D;case"DD":return Y.s(e.$D,2,"0");case"d":return String(e.$W);case"dd":return l(r.weekdaysMin,e.$W,c,2);case"ddd":return l(r.weekdaysShort,e.$W,c,3);case"dddd":return c[e.$W];case"H":return String(s);case"HH":return Y.s(s,2,"0");case"h":return u(1);case"hh":return u(2);case"a":return p(s,i,!0);case"A":return p(s,i,!1);case"m":return String(i);case"mm":return Y.s(i,2,"0");case"s":return String(e.$s);case"ss":return Y.s(e.$s,2,"0");case"SSS":return Y.s(e.$ms,3,"0");case"Z":return a}return null}(t)||a.replace(":","")}))},g.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},g.diff=function(n,u,f){var p,v=this,m=Y.p(u),g=x(n),y=(g.utcOffset()-this.utcOffset())*e,b=this-g,w=function(){return Y.m(v,g)};switch(m){case l:p=w()/12;break;case d:p=w();break;case h:p=w()/3;break;case c:p=(b-y)/6048e5;break;case o:p=(b-y)/864e5;break;case i:p=b/r;break;case s:p=b/e;break;case a:p=b/t;break;default:p=b}return f?p:Y.a(p)},g.daysInMonth=function(){return this.endOf(d).$D},g.$locale=function(){return w[this.$L]},g.locale=function(t,e){if(!t)return this.$L;var r=this.clone(),n=M(t,e,!0);return n&&(r.$L=n),r},g.clone=function(){return Y.w(this.$d,this)},g.toDate=function(){return new Date(this.valueOf())},g.toJSON=function(){return this.isValid()?this.toISOString():null},g.toISOString=function(){return this.$d.toISOString()},g.toString=function(){return this.$d.toUTCString()},m}(),S=C.prototype;return x.prototype=S,[["$ms",n],["$s",a],["$m",s],["$H",i],["$W",o],["$M",d],["$y",l],["$D",u]].forEach((function(t){S[t[1]]=function(e){return this.$g(e,t[0],t[1])}})),x.extend=function(t,e){return t.$i||(t(e,C,x),t.$i=!0),x},x.locale=M,x.isDayjs=D,x.unix=function(t){return x(1e3*t)},x.en=w[b],x.Ls=w,x.p={},x}))})(d);const h=d.exports;var l={exports:{}};(function(t,e){!function(e,r){t.exports=r()}(c,(function(){var t={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},e=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,r=/\d/,n=/\d\d/,a=/\d\d?/,s=/\d*[^-_:/,()\s\d]+/,i={},o=function(t){return(t=+t)+(t>68?1900:2e3)};var c=function(t){return function(e){this[t]=+e}},d=[/[+-]\d\d:?(\d\d)?|Z/,function(t){(this.zone||(this.zone={})).offset=function(t){if(!t)return 0;if("Z"===t)return 0;var e=t.match(/([+-]|\d\d)/g),r=60*e[1]+(+e[2]||0);return 0===r?0:"+"===e[0]?-r:r}(t)}],h=function(t){var e=i[t];return e&&(e.indexOf?e:e.s.concat(e.f))},l=function(t,e){var r,n=i.meridiem;if(n){for(var a=1;a<=24;a+=1)if(t.indexOf(n(a,0,e))>-1){r=a>12;break}}else r=t===(e?"pm":"PM");return r},u={A:[s,function(t){this.afternoon=l(t,!1)}],a:[s,function(t){this.afternoon=l(t,!0)}],Q:[r,function(t){this.month=3*(t-1)+1}],S:[r,function(t){this.milliseconds=100*+t}],SS:[n,function(t){this.milliseconds=10*+t}],SSS:[/\d{3}/,function(t){this.milliseconds=+t}],s:[a,c("seconds")],ss:[a,c("seconds")],m:[a,c("minutes")],mm:[a,c("minutes")],H:[a,c("hours")],h:[a,c("hours")],HH:[a,c("hours")],hh:[a,c("hours")],D:[a,c("day")],DD:[n,c("day")],Do:[s,function(t){var e=i.ordinal,r=t.match(/\d+/);if(this.day=r[0],e)for(var n=1;n<=31;n+=1)e(n).replace(/\[|\]/g,"")===t&&(this.day=n)}],w:[a,c("week")],ww:[n,c("week")],M:[a,c("month")],MM:[n,c("month")],MMM:[s,function(t){var e=h("months"),r=(h("monthsShort")||e.map((function(t){return t.slice(0,3)}))).indexOf(t)+1;if(r<1)throw new Error;this.month=r%12||r}],MMMM:[s,function(t){var e=h("months").indexOf(t)+1;if(e<1)throw new Error;this.month=e%12||e}],Y:[/[+-]?\d+/,c("year")],YY:[n,function(t){this.year=o(t)}],YYYY:[/\d{4}/,c("year")],Z:d,ZZ:d};function f(r){var n,a;n=r,a=i&&i.formats;for(var s=(r=n.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(e,r,n){var s=n&&n.toUpperCase();return r||a[n]||t[n]||a[s].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(t,e,r){return e||r.slice(1)}))}))).match(e),o=s.length,c=0;c<o;c+=1){var d=s[c],h=u[d],l=h&&h[0],f=h&&h[1];s[c]=f?{regex:l,parser:f}:d.replace(/^\[|\]$/g,"")}return function(t){for(var e={},r=0,n=0;r<o;r+=1){var a=s[r];if("string"==typeof a)n+=a.length;else{var i=a.regex,c=a.parser,d=t.slice(n),h=i.exec(d)[0];c.call(e,h),t=t.replace(h,"")}}return function(t){var e=t.afternoon;if(void 0!==e){var r=t.hours;e?r<12&&(t.hours+=12):12===r&&(t.hours=0),delete t.afternoon}}(e),e}}return function(t,e,r){r.p.customParseFormat=!0,t&&t.parseTwoDigitYear&&(o=t.parseTwoDigitYear);var n=e.prototype,a=n.parse;n.parse=function(t){var e=t.date,n=t.utc,s=t.args;this.$u=n;var o=s[1];if("string"==typeof o){var c=!0===s[2],d=!0===s[3],h=c||d,l=s[2];d&&(l=s[2]),i=this.$locale(),!c&&l&&(i=r.Ls[l]),this.$d=function(t,e,r,n){try{if(["x","X"].indexOf(e)>-1)return new Date(("X"===e?1e3:1)*t);var a=f(e)(t),s=a.year,i=a.month,o=a.day,c=a.hours,d=a.minutes,h=a.seconds,l=a.milliseconds,u=a.zone,p=a.week,v=new Date,m=o||(s||i?1:v.getDate()),g=s||v.getFullYear(),y=0;s&&!i||(y=i>0?i-1:v.getMonth());var b,w=c||0,k=d||0,D=h||0,M=l||0;return u?new Date(Date.UTC(g,y,m,w,k,D,M+60*u.offset*1e3)):r?new Date(Date.UTC(g,y,m,w,k,D,M)):(b=new Date(g,y,m,w,k,D,M),p&&(b=n(b).week(p).toDate()),b)}catch(t){return new Date("")}}(e,o,n,r),this.init(),l&&!0!==l&&(this.$L=this.locale(l).$L),h&&e!=this.format(o)&&(this.$d=new Date("")),i={}}else if(o instanceof Array)for(var u=o.length,p=1;p<=u;p+=1){s[1]=o[p-1];var v=r.apply(this,s);if(v.isValid()){this.$d=v.$d,this.$L=v.$L,this.init();break}p===u&&(this.$d=new Date(""))}else a.call(this,t)}}}))})(l);const u=l.exports;var f={exports:{}};(function(t,e){!function(e,r){t.exports=r()}(c,(function(){var t="minute",e=/[+-]\d\d(?::?\d\d)?/g,r=/([+-]|\d\d)/g;return function(n,a,s){var i=a.prototype;s.utc=function(t){var e={date:t,utc:!0,args:arguments};return new a(e)},i.utc=function(e){var r=s(this.toDate(),{locale:this.$L,utc:!0});return e?r.add(this.utcOffset(),t):r},i.local=function(){return s(this.toDate(),{locale:this.$L,utc:!1})};var o=i.parse;i.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t)};var c=i.init;i.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds()}else c.call(this)};var d=i.utcOffset;i.utcOffset=function(n,a){var s=this.$utils().u;if(s(n))return this.$u?0:s(this.$offset)?d.call(this):this.$offset;if("string"==typeof n&&(n=function(t){void 0===t&&(t="");var n=t.match(e);if(!n)return null;var a=(""+n[0]).match(r)||["-",0,0],s=a[0],i=60*+a[1]+ +a[2];return 0===i?0:"+"===s?i:-i}(n),null===n))return this;var i=Math.abs(n)<=16?60*n:n,o=this;if(a)return o.$offset=i,o.$u=0===n,o;if(0!==n){var c=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(i+c,t)).$offset=i,o.$x.$localOffset=c}else o=this.utc();return o};var h=i.format;i.format=function(t){var e=t||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return h.call(this,e)},i.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},i.isUTC=function(){return!!this.$u},i.toISOString=function(){return this.toDate().toISOString()},i.toString=function(){return this.toDate().toUTCString()};var l=i.toDate;i.toDate=function(t){return"s"===t&&this.$offset?s(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():l.call(this)};var u=i.diff;i.diff=function(t,e,r){if(t&&this.$u===t.$u)return u.call(this,t,e,r);var n=this.local(),a=s(t).local();return u.call(n,a,e,r)}}}))})(f);const p=f.exports;var v={exports:{}};(function(t,e){!function(e,r){t.exports=r()}(c,(function(){var t="week",e="year";return function(r,n,a){var s=n.prototype;s.week=function(r){if(void 0===r&&(r=null),null!==r)return this.add(7*(r-this.week()),"day");var n=this.$locale().yearStart||1;if(11===this.month()&&this.date()>25){var s=a(this).startOf(e).add(1,e).date(n),i=a(this).endOf(t);if(s.isBefore(i))return 1}var o=a(this).startOf(e).date(n).startOf(t).subtract(1,"millisecond"),c=this.diff(o,t,!0);return c<0?a(this).startOf("week").week():Math.ceil(c)},s.weeks=function(t){return void 0===t&&(t=null),this.week(t)}}}))})(v);const m=v.exports;h.extend(u);h.extend(p);h.extend(m);function g(t,e){if(!t)return"";const r=e.dateFormat.includes("Z");const n=e.dateFormat==="YYYY-MM-DD[T]HH:mm:ss[Z]";if(n){return t.toISOString()}if(e.dateFormat==="Ticks"){const e=t.getTime()*1e4+621355968e9;return e.toString()}if(e.dateFormat==="X"){return h(t).unix().toString()}if(e.dateFormat==="x"){return t.getTime().toString()}return r?h(t).utc().format(e.dateFormat):h(t).format(e.dateFormat)}function y(t,e,r){if(!t||!e)return false;if(r.isUTCMode){return t.getUTCFullYear()===e.getUTCFullYear()&&t.getUTCMonth()===e.getUTCMonth()&&t.getUTCDate()===e.getUTCDate()}else{return t.getFullYear()===e.getFullYear()&&t.getMonth()===e.getMonth()&&t.getDate()===e.getDate()}}function b(t,e,r){if(!t||!e)return false;if(r.isUTCMode){return t.getUTCFullYear()<e.getUTCFullYear()||t.getUTCFullYear()===e.getUTCFullYear()&&t.getUTCMonth()<e.getUTCMonth()||t.getUTCFullYear()===e.getUTCFullYear()&&t.getUTCMonth()===e.getUTCMonth()&&t.getUTCDate()<=e.getUTCDate()}else{return t.getFullYear()<e.getFullYear()||t.getFullYear()===e.getFullYear()&&t.getMonth()<e.getMonth()||t.getFullYear()===e.getFullYear()&&t.getMonth()===e.getMonth()&&t.getDate()<=e.getDate()}}function w(t,e,r){if(!t||!e)return false;if(r.isUTCMode){return t.getUTCFullYear()>e.getUTCFullYear()||t.getUTCFullYear()===e.getUTCFullYear()&&t.getUTCMonth()>e.getUTCMonth()||t.getUTCFullYear()===e.getUTCFullYear()&&t.getUTCMonth()===e.getUTCMonth()&&t.getUTCDate()>=e.getUTCDate()}else{return t.getFullYear()>e.getFullYear()||t.getFullYear()===e.getFullYear()&&t.getMonth()>e.getMonth()||t.getFullYear()===e.getFullYear()&&t.getMonth()===e.getMonth()&&t.getDate()>=e.getDate()}}function k(t){const e=new Date(t.getFullYear(),0,1);const r=(t.getTime()-e.getTime())/864e5;return Math.ceil((r+e.getDay()+1)/7)}function D(t,e){if(t instanceof Date)return t;const r=e.includes("Z");if(typeof t==="string"&&/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z$/.test(t)){try{const e=new Date(t);if(!isNaN(e.getTime())){return e}}catch(t){console.error("Error parsing ISO date:",t)}}if(e==="X"){const e=Number(t);if(isNaN(e))return null;return r?h.unix(e).utc().toDate():h.unix(e).toDate()}if(e==="x"){const e=Number(t);if(isNaN(e))return null;return r?h(e).utc().toDate():h(e).toDate()}if(e==="Ticks"){const e=Number(t);if(isNaN(e))return null;const n=(e-621355968e9)/1e4;return r?h(n).utc().toDate():h(n).toDate()}let n;if(r){n=h.utc(t,e,true)}else{n=h(t,e,true)}if(!n.isValid()){console.error(`Parsing error:`,{dateInput:t,dateFormat:e});return null}return n.toDate()}const M='nv-calendar{display:block}.datepicker-root{display:flex;justify-content:center;align-items:flex-start;width:auto}.datepicker-container{font-family:system-ui, sans-serif;display:flex;flex-direction:column;align-items:stretch;background:var(--components-calendar-background);border-radius:var(--calendar-radius);padding:var(--calendar-padding);box-shadow:0px var(--shadow-y-axis-md-1) var(--shadow-blur-md-1) var(--shadow-spread-md, 0) var(--shadow-color-opacity-0), 0px var(--shadow-y-axis-md-2) var(--shadow-blur-md-2) var(--shadow-spread-md, 0) var(--shadow-color-opacity-2);border:1px solid var(--components-calendar-border);width:auto;max-width:100%}.datepicker-container-single{max-width:300px}.datepicker-container-single .datepicker-wrapper:has(.shortcuts-placement-left),.datepicker-container-single .datepicker-wrapper:has(.shortcuts-placement-right){max-width:410px !important}.datepicker-container-single:has(.shortcuts-placement-left),.datepicker-container-single:has(.shortcuts-placement-right){max-width:410px !important}.datepicker-wrapper{display:flex;justify-content:center;align-items:flex-start;gap:var(--calendar-gap-x);width:auto;overflow-x:hidden}.datepicker-wrapper::-webkit-scrollbar{width:6px;height:6px}.datepicker-wrapper::-webkit-scrollbar-track{background-color:var(--color-level-10-background);border-radius:9999px}.datepicker-wrapper::-webkit-scrollbar-thumb{background-color:var(--color-gray-200);border-radius:9999px}.datepicker-wrapper.single{justify-content:center}.calendar-container{display:flex;flex-direction:column;align-items:center;padding:var(--calendar-padding);width:auto;position:relative}.calendar-separator{width:1px;background:var(--components-calendar-border);height:auto;min-height:100%;margin:0 10px}.header{display:flex;justify-content:start;align-items:center;margin-bottom:var(--calendar-header-margin-bottom);width:100%}.header nv-iconbutton{width:var(--calendar-header-button-size);height:var(--calendar-header-button-size)}.nav-buttons{display:flex;gap:var(--spacing-0);margin-left:auto}.nav-left{order:-1}.date-controls{display:flex;gap:var(--spacing-1);align-items:center;min-height:34px;justify-content:center}.datepicker-container-single .date-controls{justify-content:flex-start}.datepicker-container:not(.datepicker-container-single) .date-controls{justify-content:start;flex-grow:1}.date-controls .month-select,.date-controls .year-input{background:transparent !important}.calendar-wrapper:nth-child(n+2) .datepicker-container{margin-left:42px}.calendar-grid{display:grid;grid-template-columns:auto 1fr;column-gap:var(--calendar-weeks-calendar-gap-x);position:relative}.calendar-grid.slide-left{animation:slideLeft 0.3s ease-out}.calendar-grid.slide-right{animation:slideRight 0.3s ease-out}.week-numbers{display:grid;grid-template-rows:var(--calendar-cell-size) repeat(6, var(--calendar-cell-size));background:var(--components-calendar-weeks-background);color:var(--components-calendar-weeks-text);border-radius:var(--calendar-weeks-radius);width:var(--calendar-weeks-size);row-gap:var(--calendar-grid-gap-y)}.week-numbers .clickable{cursor:pointer}.week-numbers .clickable:hover{background-color:var(--components-calendar-weeks-background-hover);color:var(--components-calendar-weeks-text-hover);border-radius:var(--calendar-radius)}.week-header,.week-number{display:grid;place-items:center;font-size:var(--calendar-cell-font-size)}.week-header{font-weight:700;color:var(--components-calendar-weeks-text)}.week-number{color:var(--components-calendar-cell-text)}.days-container{display:grid;grid-template-rows:auto 1fr;row-gap:var(--calendar-grid-gap-y)}.days-header{display:grid;grid-template-columns:repeat(7, var(--calendar-cell-size));height:var(--calendar-cell-size)}.day-header{display:grid;place-items:center;font-size:var(--calendar-cell-font-size);color:var(--components-calendar-cell-text)}.days-grid{display:grid;grid-template-columns:repeat(7, var(--calendar-cell-size));grid-template-rows:repeat(6, var(--calendar-cell-size));animation:fadeIn 0.2s ease-in;row-gap:var(--calendar-grid-gap-y);z-index:0}.day{display:grid;place-items:center;width:var(--calendar-cell-size);height:var(--calendar-cell-size);font-size:var(--calendar-cell-font-size);border-radius:var(--calendar-cell-radius);cursor:pointer;border:none;background:transparent;transition:all 0.2s ease;text-align:center;animation:scaleIn 0.2s ease-out}.day:hover:not(.disabled,.empty,.selected){background:var(--components-calendar-cell-background-hover);color:var(--components-calendar-cell-text-hover)}.day.selected,.day.selected:hover .day.is-today.selected,.day.is-today.selected:hover{background:var(--components-calendar-cell-background-selected);color:var(--components-calendar-cell-text-selected) !important}.day.disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.day.outside-month{color:var(--components-calendar-cell-text);opacity:var(--opacity-disabled)}.day.outside-month.selected{opacity:1 !important;color:var(--components-calendar-cell-text-selected)}.day.outside-month.in-range{opacity:0.5 !important;background-color:var(--components-calendar-cell-background-in-range);color:var(--components-calendar-cell-text-in-range)}.day.outside-month.in-range:hover{opacity:0.7 !important;background-color:var(--components-calendar-cell-background-in-range)}.day.in-range{background:var(--components-calendar-cell-background-in-range);color:var(--components-calendar-cell-text-in-range);border-radius:0;position:relative}.day.range-start,.day.range-start:focus,.day.range-start:hover,.day.range-end,.day.range-end:focus,.day.range-end:hover{background-color:var(--components-calendar-cell-background-selected) !important;color:var(--components-calendar-cell-text-selected) !important}.day.range-start,.day.range-end,.day.range-start.is-today,.day.range-end.is-today{background:var(--components-calendar-cell-background-selected);color:var(--components-calendar-cell-text-selected);position:relative;border-radius:var(--radius-rounded-full)}.day.range-start:hover,.day.range-end:hover,.day.range-start.is-today:hover,.day.range-end.is-today:hover{color:var(--components-calendar-cell-text-today)}.day.range-start:before,.day.range-end:before,.day.range-start.is-today:before,.day.range-end.is-today:before{content:"";position:absolute;bottom:0;left:0;right:0;top:0;z-index:-1;background-color:var(--components-calendar-cell-background-in-range);border-radius:var(--radius-rounded-full);width:auto;height:auto}.day.range-start:has(~.range-end):before,.day.range-start:has(+.in-range):before{border-top-right-radius:0;border-bottom-right-radius:0}.day.range-end:before{border-top-left-radius:0 !important;border-bottom-left-radius:0 !important}.day.outside-month.range-start,.day.outside-month.range-end{opacity:1 !important;background:var(--components-calendar-cell-background-selected) !important;color:var(--components-calendar-cell-text-selected)}.day.is-today{font-weight:700;position:relative;color:var(--components-calendar-cell-text-today)}.day.is-today.range-start,.day.is-today.range-end{color:var(--components-calendar-cell-text-selected)}.day.is-today.range-start:hover,.day.is-today.range-end:hover{color:var(--components-calendar-cell-text-today)}.day.is-today::after{content:"";position:absolute;bottom:var(--spacing-1);left:50%;transform:translateX(-50%);width:var(--calendar-cell-dot-size);height:var(--calendar-cell-dot-size);background-color:currentColor;border-radius:50%}.day.is-today.selected::after{color:var(--components-calendar-cell-text-selected)}.day.is-today.selected::after::after{background-color:var(--components-calendar-cell-dot-selected)}.calendar-footer{display:flex;gap:var(--spacing-1);justify-content:flex-start;width:100%;flex-wrap:wrap}.footer-placement-left{justify-content:flex-start}.footer-placement-right{justify-content:flex-end}.footer-placement-center{justify-content:center}.datepicker-controls{display:flex;flex-direction:column;border-top:1px solid var(--components-calendar-border);padding:var(--calendar-controls-padding-top) var(--calendar-padding) var(--calendar-padding);gap:var(--calendar-grid-gap-y);margin-top:var(--calendar-controls-margin-top)}.datepicker-actions{display:flex;justify-content:flex-end;gap:var(--spacing-1);width:100%}.datepicker-actions slot-fb{display:contents !important}.calendar-footer+.datepicker-actions{margin-top:0}.shortcuts-placement-left,.shortcuts-placement-right{display:flex;flex-direction:column;gap:var(--spacing-1);margin-top:var(--spacing-4)}.shortcuts-placement-left{align-items:flex-end}.shortcuts-placement-right{align-items:flex-start}@keyframes slideLeft{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideRight{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{from{opacity:0;transform:scale(0.9)}to{opacity:1;transform:scale(1)}}';const x=M;const Y=class{constructor(n){t(this,n);this.singleDateChange=e(this,"singleDateChange",7);this.rangeDateChange=e(this,"rangeDateChange",7);this.firstDayOfWeek=0;this.numberOfCalendars=1;this.locale="en-BE";this.dateFormat="YYYY-MM-DD";this.shortcutsPlacement="bottom";this.selectionType="single";this.showActions=false;this.parsedDisabledDates=[];this.currentDate=null;this.selectedDate=null;this.startDate=null;this.endDate=null;this.months=[];this.changeMonth=t=>{const e=new Date(this.currentDate);e.setUTCMonth(e.getUTCMonth()+t);const r=this.el.querySelectorAll(".calendar-grid");r.forEach((e=>{e.classList.remove("slide-left","slide-right");const r=t>0?"slide-left":"slide-right";e.classList.add(r);setTimeout((()=>{e.classList.remove(r)}),300)}));this.currentDate=e};this.handleDateSelection=t=>{if(this.isDateDisabled(t)){return}if(this.selectionType==="single"){this.handleSingleSelection(t)}else{this.handleRangeSelection(t)}};this.handleSingleSelection=t=>{if(!t)return;const e=g(t,{dateFormat:this.dateFormat});this.selectedDate=t;this.singleDateChange.emit(e)};this.handleRangeSelection=t=>{if(!this.startDate||this.startDate&&this.endDate){this.startDate=t;this.endDate=null}else{this.endDate=t;if(this.startDate>this.endDate){[this.startDate,this.endDate]=[this.endDate,this.startDate]}this.rangeDateChange.emit({start:g(this.startDate,{dateFormat:this.dateFormat}),end:g(this.endDate,{dateFormat:this.dateFormat})})}};this.isDateDisabled=t=>{if(!t)return true;if(this.min){const e=D(this.min,this.dateFormat);if(e&&t<e){return true}}if(this.max){const e=D(this.max,this.dateFormat);if(e&&t>e){return true}}return this.parsedDisabledDates.some((e=>y(t,e,{isUTCMode:this.isUTCMode})))};this.isDateInRange=t=>{if(!t||!this.startDate||!this.endDate)return false;const e=D(t,this.dateFormat);const r=D(this.startDate,this.dateFormat);const n=D(this.endDate,this.dateFormat);if(isNaN(r.getTime())||isNaN(n.getTime())){return false}if(r>n)return false;return w(e,r,{isUTCMode:this.isUTCMode})&&b(e,n,{isUTCMode:this.isUTCMode})};this.getDayNames=()=>{if(s[this.locale]){const t=[...s[this.locale]];const e=t.slice(0,this.firstDayOfWeek);const r=t.slice(this.firstDayOfWeek);return[...r,...e]}const t=new Intl.DateTimeFormat(this.locale,{weekday:"short"});const e=[...Array(7)].map(((e,r)=>t.format(new Date(2023,0,r+1)).toUpperCase()));const r=e.slice(0,this.firstDayOfWeek);const n=e.slice(this.firstDayOfWeek);return[...n,...r]};this.getDaysInMonth=(t=0,e=1)=>{const r=this.currentDate.getUTCFullYear();const n=this.currentDate.getUTCMonth()+t;const a=new Date(Date.UTC(r,n,1));const s=new Date(Date.UTC(r,n+1,0));const i=[];const o=a.getUTCDay();const c=(o-this.firstDayOfWeek+7)%7;if(t===0&&c>0){const t=new Date(Date.UTC(r,n,0)).getUTCDate();for(let e=c;e>0;e--){const a=new Date(Date.UTC(r,n-1,t-e+1));i.push({dayOfMonth:a.getUTCDate(),date:a,isCurrentMonth:false,isDisabled:this.isDateDisabled(a)})}}for(let t=1;t<=s.getUTCDate();t++){const e=new Date(Date.UTC(r,n,t));i.push({dayOfMonth:t,date:e,isCurrentMonth:true,isDisabled:this.isDateDisabled(e)})}if(t===e-1){const t=7-(i.length%7||7);for(let e=1;e<=t;e++){const t=new Date(Date.UTC(r,n+1,e));i.push({dayOfMonth:e,date:t,isCurrentMonth:false,isDisabled:this.isDateDisabled(t)})}}return i};this.initializeMonths=()=>{if(i[this.locale]){this.months=i[this.locale].map(((t,e)=>({value:e,label:t})));return}const t=new Intl.DateTimeFormat(this.locale,{month:"short"});this.months=Array.from({length:12},((e,r)=>({value:r,label:t.format(new Date(2e3,r,1)).toUpperCase()})))};this.getLocalizedWeekText=()=>o[this.locale]||"W";this.handleMonthChange=(t,e=0)=>{const r=t.target;const n=parseInt(r.value,10);const a=this.currentDate.getUTCMonth();const s=n-(a+e)%12;const i=new Date(this.currentDate);i.setUTCMonth(i.getUTCMonth()+s);this.currentDate=i};this.handleYearChange=(t,e=0)=>{const r=t.target;const n=parseInt(r.value,10);if(!isNaN(n)&&n>=1900&&n<=2100){const t=new Date(this.currentDate);t.setUTCFullYear(n);t.setUTCMonth(t.getUTCMonth()+e);this.currentDate=t}};this.handleWeekSelection=(t,e)=>{if(this.selectionType!=="range")return;const r=this.getDaysInMonth(e,this.numberOfCalendars);const n=t[0];const a=t[t.length-1];if(!n||!a)return;const s=r.filter((t=>t.date&&t.date>=n&&t.date<=a));const i=s.filter((t=>!this.isDateDisabled(t.date)));if(i.length>0){this.startDate=i[0].date;this.endDate=i[i.length-1].date;this.rangeDateChange.emit({start:g(this.startDate,{dateFormat:this.dateFormat}),end:g(this.endDate,{dateFormat:this.dateFormat})})}};this.isToday=t=>{const e=new Date;return t.getDate()===e.getDate()&&t.getMonth()===e.getMonth()&&t.getFullYear()===e.getFullYear()};this.parseDisabledDates=()=>{if(!this.disabledDates){this.parsedDisabledDates=[];return}try{this.parsedDisabledDates=this.disabledDates.map((t=>D(t,this.dateFormat))).filter((t=>t!==null))}catch(t){console.error("Error parsing disabled dates:",t);this.parsedDisabledDates=[]}};this.applyShortcut=t=>{this.selectedDate=null;this.startDate=null;this.endDate=null;if(t.singleValue){const e=D(t.singleValue,this.dateFormat);this.selectedDate=e;this.singleDateChange.emit(g(e,{dateFormat:this.dateFormat}));this.singleValue=g(e,{dateFormat:this.dateFormat});if(!this.showActions){const t=new CustomEvent("closePopover",{bubbles:true,composed:true});this.el.dispatchEvent(t)}this.forceCalendarUpdate(e)}else{const e=D(t.rangeValue.start,this.dateFormat);const r=D(t.rangeValue.end,this.dateFormat);this.startDate=e;this.endDate=r;this.rangeDateChange.emit({start:g(e,{dateFormat:this.dateFormat}),end:g(r,{dateFormat:this.dateFormat})});this.rangeValue={start:g(e,{dateFormat:this.dateFormat}),end:g(r,{dateFormat:this.dateFormat})};if(!this.showActions){const t=new CustomEvent("closePopover",{bubbles:true,composed:true});this.el.dispatchEvent(t)}this.currentDate=e}};this.forceCalendarUpdate=t=>{this.currentDate=new Date(t)};this.getChangeMonthHandler=t=>()=>this.changeMonth(t);this.getHandleMonthChange=t=>e=>this.handleMonthChange(e,t);this.getHandleYearChange=t=>e=>this.handleYearChange(e,t);this.getDayClickHandler=(t,e)=>e?undefined:()=>this.handleDateSelection(t);this.getShortcutHandler=t=>()=>this.applyShortcut(t);this.getWeekSelectionHandler=(t,e)=>()=>{if(this.selectionType==="range"){this.handleWeekSelection(t,e)}};this.resetSelection=()=>{if(this.selectionType==="single"){this.selectedDate=null;this.singleValue=null;this.singleDateChange.emit("")}else{this.startDate=null;this.endDate=null;this.rangeValue=null;this.rangeDateChange.emit({start:"",end:""})}};this.confirmSelection=()=>{if(this.selectionType==="single"&&this.selectedDate){const t=g(this.selectedDate,{dateFormat:this.dateFormat});this.singleDateChange.emit(t);this.singleValue=t;const e=new CustomEvent("closePopover",{bubbles:true,composed:true});this.el.dispatchEvent(e)}else if(this.selectionType==="range"&&this.startDate&&this.endDate){this.rangeDateChange.emit({start:g(this.startDate,{dateFormat:this.dateFormat}),end:g(this.endDate,{dateFormat:this.dateFormat})});this.rangeValue={start:g(this.startDate,{dateFormat:this.dateFormat}),end:g(this.endDate,{dateFormat:this.dateFormat})};const t=new CustomEvent("closePopover",{bubbles:true,composed:true});this.el.dispatchEvent(t)}};this.renderHeader=(t,e)=>r("div",{class:"header"},this.numberOfCalendars>1&&e===0&&r("nv-iconbutton",{class:"nav-left",emphasis:"lower",name:"chevron-left",onClick:this.getChangeMonthHandler(-1)}),r("div",{class:"date-controls"},r("select",{class:"month-select mr-4",onChange:this.getHandleMonthChange(t)},this.months.map((e=>r("option",{key:e.value,value:e.value,selected:e.value===(this.currentDate.getUTCMonth()+t)%12},e.label)))),r("input",{type:"number",class:"year-input",min:"1950",max:"2100",value:this.currentDate.getUTCFullYear()+Math.floor((this.currentDate.getUTCMonth()+t)/12),onChange:this.getHandleYearChange(t)})),this.numberOfCalendars===1&&r("div",{class:"nav-buttons"},r("nv-iconbutton",{emphasis:"lower",name:"chevron-left",onClick:this.getChangeMonthHandler(-1)}),r("nv-iconbutton",{emphasis:"lower",name:"chevron-right",onClick:this.getChangeMonthHandler(1)})),this.numberOfCalendars>1&&e===this.numberOfCalendars-1&&r("nv-iconbutton",{emphasis:"lower",name:"chevron-right",onClick:this.getChangeMonthHandler(1),class:"nav-right"}));this.renderWeekNumbers=(t,e)=>r("div",{class:"week-numbers"},r("div",{class:"week-header"},this.getLocalizedWeekText()),t.map(((t,n)=>{var a;const s=t.map((t=>t.date));return r("div",{class:`week-number ${this.selectionType==="range"?"clickable":""}`,onClick:this.getWeekSelectionHandler(s,e),key:`week-${n}`},k(((a=t.find((t=>t.date)))===null||a===void 0?void 0:a.date)||new Date))})));this.renderDaysGrid=t=>r("div",{class:"days-grid"},t.map((t=>{const e=t.date;if(!e)return null;const n=this.selectionType==="single"&&y(e,this.selectedDate,{isUTCMode:this.isUTCMode});const a=this.isDateInRange(e);const s=y(e,this.startDate,{isUTCMode:this.isUTCMode});const i=y(e,this.endDate,{isUTCMode:this.isUTCMode});const o=this.isToday(e);const c=!t.isCurrentMonth;const d=["day",n?"selected":"",s?"range-start":"",i?"range-end":"",a?"in-range":"",t.isDisabled?"disabled":"",c?"outside-month":"",o?"is-today":""];return r("div",{class:d.filter(Boolean).join(" "),onClick:this.getDayClickHandler(e,t.isDisabled),"aria-disabled":t.isDisabled,key:`day-${e.toISOString()}`},t.dayOfMonth)})));this.renderCalendar=(t,e)=>{const n=this.getDaysInMonth(e,this.numberOfCalendars);const a=[];for(let t=0;t<n.length;t+=7){a.push(n.slice(t,t+7))}return r("div",{class:"calendar-wrapper"},r("div",{class:"calendar-container",key:`calendar-${t}`},this.renderHeader(e,t),r("div",{class:"calendar-grid"},this.showWeekNumbers&&this.renderWeekNumbers(a,t),r("div",{class:"days-container"},r("div",{class:"days-header"},this.getDayNames().map((t=>r("div",{class:"day-header"},t)))),this.renderDaysGrid(n)))),t<this.numberOfCalendars-1&&r("div",{class:"calendar-separator"}))};this.renderShortcuts=()=>{if(!this.hasShortcuts){return null}return r("div",{class:`shortcuts-container shortcuts-placement-${this.shortcutsPlacement}`},this.shortcuts.map((t=>r("nv-button",{emphasis:"lower",size:"xs","aria-label":t.label,onClick:this.getShortcutHandler(t)},t.label))))};this.renderActions=()=>r("div",{class:"datepicker-actions"},r("slot",{name:"actions"},r("nv-button",{emphasis:"low",size:"xs",onClick:this.resetSelection},"Cancel"),r("nv-button",{size:"xs",onClick:this.confirmSelection},"OK")))}validateNumberOfCalendars(t){if(t<1||t>4){console.warn("numberOfCalendars must be between 1 and 4. Defaulting to 1.");this.numberOfCalendars=1}}onRangeValueChange(t){if(t&&t.start&&t.end){try{const{startDate:e,endDate:r}=this.validateDateRange(t.start,t.end);this.startDate=e;this.endDate=r;const n=this.el.getAttribute("data-prevent-navigation")==="true";if(!n){this.currentDate=e}}catch(t){console.error("Invalid rangeValue:",t)}}}handleDisabledDatesChange(){this.parseDisabledDates()}onSingleValueChange(t,e){if(this.selectionType==="single"&&t!==e&&t){const e=D(t,this.dateFormat);if(e){this.selectedDate=e;const t=this.el.getAttribute("data-prevent-navigation")==="true";if(!t){this.currentDate=e}}}}componentWillLoad(){this.parseDisabledDates();if(this.selectionType==="single"&&this.singleValue){this.selectedDate=D(this.singleValue,this.dateFormat);this.currentDate=this.selectedDate}else if(this.selectionType==="range"&&this.rangeValue){try{if(this.rangeValue.start&&this.rangeValue.end){const{startDate:t,endDate:e,swapped:r}=this.validateDateRange(this.rangeValue.start,this.rangeValue.end);this.startDate=t;this.endDate=e;this.currentDate=t;if(r){this.rangeValue={start:g(t,{dateFormat:this.dateFormat}),end:g(e,{dateFormat:this.dateFormat})}}}}catch(t){console.error("Invalid rangeValue:",t)}}else{this.currentDate=new Date}this.initializeMonths()}get hasShortcuts(){return Boolean(this.shortcutsPlacement&&this.shortcuts)}get hasActions(){return this.showActions}get isUTCMode(){return this.dateFormat.includes("Z")}validateDateRange(t,e){try{const r=D(t,this.dateFormat);const n=D(e,this.dateFormat);if(r&&n&&r>n){console.warn(`Warning: startDate (${g(r,{dateFormat:this.dateFormat})}) is after endDate (${g(n,{dateFormat:this.dateFormat})})`);return{startDate:n,endDate:r,swapped:true}}return{startDate:r,endDate:n,swapped:false}}catch(t){console.error("Invalid date range:",t);throw t}}render(){return r(n,{key:"9804c486acf32e12f2d88f932a54ca6260365887"},r("div",{key:"8503f585401191b904f2de248ed0c24b1fed1505",class:"datepicker-root"},r("div",{key:"9da71618bd2031b44f5a3fd889d40b2580fcca58",class:`datepicker-container ${this.numberOfCalendars===1?"datepicker-container-single":""}`},r("div",{key:"fbf71a34b520ca48f1440d8caeec442773b1e57a",class:`datepicker-wrapper ${this.numberOfCalendars===1?"single":""}`},this.shortcutsPlacement==="left"&&this.renderShortcuts(),Array.from({length:this.numberOfCalendars},((t,e)=>this.renderCalendar(e,e))),this.shortcutsPlacement==="right"&&this.renderShortcuts()),(this.hasShortcuts&&this.shortcutsPlacement==="bottom"||this.hasActions)&&r("div",{key:"4431e3f1221e9d47807d58af380dcaa91bf05c48",class:"datepicker-controls"},this.shortcutsPlacement==="bottom"&&this.renderShortcuts(),this.hasActions&&this.renderActions()))),r("slot",{key:"30386356bda72f4f12a28351084ab498ec95f5b9"}))}get el(){return a(this)}static get watchers(){return{numberOfCalendars:["validateNumberOfCalendars"],rangeValue:["onRangeValueChange"],disabledDates:["handleDisabledDatesChange"],singleValue:["onSingleValueChange"]}}};Y.style=x;export{Y as nv_calendar};
2
- //# sourceMappingURL=p-dac0089b.entry.js.map