@milaboratories/uikit 2.11.6 → 2.11.7

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 (1115) hide show
  1. package/.turbo/turbo-build.log +636 -636
  2. package/.turbo/turbo-formatter$colon$check.log +2 -2
  3. package/.turbo/turbo-linter$colon$check.log +2 -2
  4. package/.turbo/turbo-types$colon$check.log +1 -1
  5. package/CHANGELOG.md +8 -0
  6. package/build.browser-lib.config.js +1 -1
  7. package/dist/_virtual/_plugin-vue_export-helper.js +2 -0
  8. package/dist/_virtual/_rolldown/runtime.js +2 -0
  9. package/dist/_virtual/_rolldown_dynamic_import_helper.js +2 -0
  10. package/dist/assets/icons/icon-assets-min/16_add.js +2 -0
  11. package/dist/assets/icons/icon-assets-min/16_add.js.map +1 -1
  12. package/dist/assets/icons/icon-assets-min/16_arrow-down.js +2 -0
  13. package/dist/assets/icons/icon-assets-min/16_arrow-down.js.map +1 -1
  14. package/dist/assets/icons/icon-assets-min/16_arrow-left.js +2 -0
  15. package/dist/assets/icons/icon-assets-min/16_arrow-left.js.map +1 -1
  16. package/dist/assets/icons/icon-assets-min/16_arrow-link.js +2 -0
  17. package/dist/assets/icons/icon-assets-min/16_arrow-link.js.map +1 -1
  18. package/dist/assets/icons/icon-assets-min/16_arrow-right.js +2 -0
  19. package/dist/assets/icons/icon-assets-min/16_arrow-right.js.map +1 -1
  20. package/dist/assets/icons/icon-assets-min/16_arrow-up.js +2 -0
  21. package/dist/assets/icons/icon-assets-min/16_arrow-up.js.map +1 -1
  22. package/dist/assets/icons/icon-assets-min/16_box.js +2 -0
  23. package/dist/assets/icons/icon-assets-min/16_box.js.map +1 -1
  24. package/dist/assets/icons/icon-assets-min/16_calendar.js +2 -0
  25. package/dist/assets/icons/icon-assets-min/16_calendar.js.map +1 -1
  26. package/dist/assets/icons/icon-assets-min/16_caret-down.js +2 -0
  27. package/dist/assets/icons/icon-assets-min/16_caret-down.js.map +1 -1
  28. package/dist/assets/icons/icon-assets-min/16_caret-left.js +2 -0
  29. package/dist/assets/icons/icon-assets-min/16_caret-left.js.map +1 -1
  30. package/dist/assets/icons/icon-assets-min/16_caret-right.js +2 -0
  31. package/dist/assets/icons/icon-assets-min/16_caret-right.js.map +1 -1
  32. package/dist/assets/icons/icon-assets-min/16_caret-up.js +2 -0
  33. package/dist/assets/icons/icon-assets-min/16_caret-up.js.map +1 -1
  34. package/dist/assets/icons/icon-assets-min/16_cell-type-num.js +2 -0
  35. package/dist/assets/icons/icon-assets-min/16_cell-type-num.js.map +1 -1
  36. package/dist/assets/icons/icon-assets-min/16_cell-type-subset.js +2 -0
  37. package/dist/assets/icons/icon-assets-min/16_cell-type-subset.js.map +1 -1
  38. package/dist/assets/icons/icon-assets-min/16_cell-type-txt.js +2 -0
  39. package/dist/assets/icons/icon-assets-min/16_cell-type-txt.js.map +1 -1
  40. package/dist/assets/icons/icon-assets-min/16_checkmark.js +2 -0
  41. package/dist/assets/icons/icon-assets-min/16_checkmark.js.map +1 -1
  42. package/dist/assets/icons/icon-assets-min/16_chevron-down.js +2 -0
  43. package/dist/assets/icons/icon-assets-min/16_chevron-down.js.map +1 -1
  44. package/dist/assets/icons/icon-assets-min/16_chevron-first.js +2 -0
  45. package/dist/assets/icons/icon-assets-min/16_chevron-first.js.map +1 -1
  46. package/dist/assets/icons/icon-assets-min/16_chevron-last.js +2 -0
  47. package/dist/assets/icons/icon-assets-min/16_chevron-last.js.map +1 -1
  48. package/dist/assets/icons/icon-assets-min/16_chevron-left.js +2 -0
  49. package/dist/assets/icons/icon-assets-min/16_chevron-left.js.map +1 -1
  50. package/dist/assets/icons/icon-assets-min/16_chevron-right.js +2 -0
  51. package/dist/assets/icons/icon-assets-min/16_chevron-right.js.map +1 -1
  52. package/dist/assets/icons/icon-assets-min/16_chevron-up.js +2 -0
  53. package/dist/assets/icons/icon-assets-min/16_chevron-up.js.map +1 -1
  54. package/dist/assets/icons/icon-assets-min/16_clear.js +2 -0
  55. package/dist/assets/icons/icon-assets-min/16_clear.js.map +1 -1
  56. package/dist/assets/icons/icon-assets-min/16_clipboard-copied.js +2 -0
  57. package/dist/assets/icons/icon-assets-min/16_clipboard-copied.js.map +1 -1
  58. package/dist/assets/icons/icon-assets-min/16_clipboard.js +2 -0
  59. package/dist/assets/icons/icon-assets-min/16_clipboard.js.map +1 -1
  60. package/dist/assets/icons/icon-assets-min/16_close.js +2 -0
  61. package/dist/assets/icons/icon-assets-min/16_close.js.map +1 -1
  62. package/dist/assets/icons/icon-assets-min/16_compare.js +2 -0
  63. package/dist/assets/icons/icon-assets-min/16_compare.js.map +1 -1
  64. package/dist/assets/icons/icon-assets-min/16_copy.js +2 -0
  65. package/dist/assets/icons/icon-assets-min/16_copy.js.map +1 -1
  66. package/dist/assets/icons/icon-assets-min/16_data-dimentions.js +2 -0
  67. package/dist/assets/icons/icon-assets-min/16_data-dimentions.js.map +1 -1
  68. package/dist/assets/icons/icon-assets-min/16_delete-bin.js +2 -0
  69. package/dist/assets/icons/icon-assets-min/16_delete-bin.js.map +1 -1
  70. package/dist/assets/icons/icon-assets-min/16_delete-circle.js +2 -0
  71. package/dist/assets/icons/icon-assets-min/16_delete-circle.js.map +1 -1
  72. package/dist/assets/icons/icon-assets-min/16_delete-clear.js +2 -0
  73. package/dist/assets/icons/icon-assets-min/16_delete-clear.js.map +1 -1
  74. package/dist/assets/icons/icon-assets-min/16_download.js +2 -0
  75. package/dist/assets/icons/icon-assets-min/16_download.js.map +1 -1
  76. package/dist/assets/icons/icon-assets-min/16_drag-dots.js +2 -0
  77. package/dist/assets/icons/icon-assets-min/16_drag-dots.js.map +1 -1
  78. package/dist/assets/icons/icon-assets-min/16_duplicate.js +2 -0
  79. package/dist/assets/icons/icon-assets-min/16_duplicate.js.map +1 -1
  80. package/dist/assets/icons/icon-assets-min/16_edit.js +2 -0
  81. package/dist/assets/icons/icon-assets-min/16_edit.js.map +1 -1
  82. package/dist/assets/icons/icon-assets-min/16_error.js +2 -0
  83. package/dist/assets/icons/icon-assets-min/16_error.js.map +1 -1
  84. package/dist/assets/icons/icon-assets-min/16_export.js +2 -0
  85. package/dist/assets/icons/icon-assets-min/16_export.js.map +1 -1
  86. package/dist/assets/icons/icon-assets-min/16_filter-on.js +2 -0
  87. package/dist/assets/icons/icon-assets-min/16_filter-on.js.map +1 -1
  88. package/dist/assets/icons/icon-assets-min/16_filter.js +2 -0
  89. package/dist/assets/icons/icon-assets-min/16_filter.js.map +1 -1
  90. package/dist/assets/icons/icon-assets-min/16_help-outline.js +2 -0
  91. package/dist/assets/icons/icon-assets-min/16_help-outline.js.map +1 -1
  92. package/dist/assets/icons/icon-assets-min/16_help.js +2 -0
  93. package/dist/assets/icons/icon-assets-min/16_help.js.map +1 -1
  94. package/dist/assets/icons/icon-assets-min/16_import.js +2 -0
  95. package/dist/assets/icons/icon-assets-min/16_import.js.map +1 -1
  96. package/dist/assets/icons/icon-assets-min/16_info-outline.js +2 -0
  97. package/dist/assets/icons/icon-assets-min/16_info-outline.js.map +1 -1
  98. package/dist/assets/icons/icon-assets-min/16_info.js +2 -0
  99. package/dist/assets/icons/icon-assets-min/16_info.js.map +1 -1
  100. package/dist/assets/icons/icon-assets-min/16_jump-link.js +2 -0
  101. package/dist/assets/icons/icon-assets-min/16_jump-link.js.map +1 -1
  102. package/dist/assets/icons/icon-assets-min/16_link-arrow.js +2 -0
  103. package/dist/assets/icons/icon-assets-min/16_link-arrow.js.map +1 -1
  104. package/dist/assets/icons/icon-assets-min/16_link.js +2 -0
  105. package/dist/assets/icons/icon-assets-min/16_link.js.map +1 -1
  106. package/dist/assets/icons/icon-assets-min/16_loading.js +2 -0
  107. package/dist/assets/icons/icon-assets-min/16_loading.js.map +1 -1
  108. package/dist/assets/icons/icon-assets-min/16_lock.js +2 -0
  109. package/dist/assets/icons/icon-assets-min/16_lock.js.map +1 -1
  110. package/dist/assets/icons/icon-assets-min/16_maximize.js +2 -0
  111. package/dist/assets/icons/icon-assets-min/16_maximize.js.map +1 -1
  112. package/dist/assets/icons/icon-assets-min/16_minimize.js +2 -0
  113. package/dist/assets/icons/icon-assets-min/16_minimize.js.map +1 -1
  114. package/dist/assets/icons/icon-assets-min/16_minus.js +2 -0
  115. package/dist/assets/icons/icon-assets-min/16_minus.js.map +1 -1
  116. package/dist/assets/icons/icon-assets-min/16_more.js +2 -0
  117. package/dist/assets/icons/icon-assets-min/16_more.js.map +1 -1
  118. package/dist/assets/icons/icon-assets-min/16_open.js +2 -0
  119. package/dist/assets/icons/icon-assets-min/16_open.js.map +1 -1
  120. package/dist/assets/icons/icon-assets-min/16_paper-clip.js +2 -0
  121. package/dist/assets/icons/icon-assets-min/16_paper-clip.js.map +1 -1
  122. package/dist/assets/icons/icon-assets-min/16_pause.js +2 -0
  123. package/dist/assets/icons/icon-assets-min/16_pause.js.map +1 -1
  124. package/dist/assets/icons/icon-assets-min/16_play.js +2 -0
  125. package/dist/assets/icons/icon-assets-min/16_play.js.map +1 -1
  126. package/dist/assets/icons/icon-assets-min/16_progress.js +2 -0
  127. package/dist/assets/icons/icon-assets-min/16_progress.js.map +1 -1
  128. package/dist/assets/icons/icon-assets-min/16_renew.js +2 -0
  129. package/dist/assets/icons/icon-assets-min/16_renew.js.map +1 -1
  130. package/dist/assets/icons/icon-assets-min/16_required.js +2 -0
  131. package/dist/assets/icons/icon-assets-min/16_required.js.map +1 -1
  132. package/dist/assets/icons/icon-assets-min/16_restart.js +2 -0
  133. package/dist/assets/icons/icon-assets-min/16_restart.js.map +1 -1
  134. package/dist/assets/icons/icon-assets-min/16_reverse.js +2 -0
  135. package/dist/assets/icons/icon-assets-min/16_reverse.js.map +1 -1
  136. package/dist/assets/icons/icon-assets-min/16_settings.js +2 -0
  137. package/dist/assets/icons/icon-assets-min/16_settings.js.map +1 -1
  138. package/dist/assets/icons/icon-assets-min/16_sort.js +2 -0
  139. package/dist/assets/icons/icon-assets-min/16_sort.js.map +1 -1
  140. package/dist/assets/icons/icon-assets-min/16_sorter.js +2 -0
  141. package/dist/assets/icons/icon-assets-min/16_sorter.js.map +1 -1
  142. package/dist/assets/icons/icon-assets-min/16_stop.js +2 -0
  143. package/dist/assets/icons/icon-assets-min/16_stop.js.map +1 -1
  144. package/dist/assets/icons/icon-assets-min/16_success.js +2 -0
  145. package/dist/assets/icons/icon-assets-min/16_success.js.map +1 -1
  146. package/dist/assets/icons/icon-assets-min/16_time.js +2 -0
  147. package/dist/assets/icons/icon-assets-min/16_time.js.map +1 -1
  148. package/dist/assets/icons/icon-assets-min/16_tune.js +2 -0
  149. package/dist/assets/icons/icon-assets-min/16_tune.js.map +1 -1
  150. package/dist/assets/icons/icon-assets-min/16_warning.js +2 -0
  151. package/dist/assets/icons/icon-assets-min/16_warning.js.map +1 -1
  152. package/dist/assets/icons/icon-assets-min/16_x-axis.js +2 -0
  153. package/dist/assets/icons/icon-assets-min/16_x-axis.js.map +1 -1
  154. package/dist/assets/icons/icon-assets-min/16_y-axis.js +2 -0
  155. package/dist/assets/icons/icon-assets-min/16_y-axis.js.map +1 -1
  156. package/dist/assets/icons/icon-assets-min/16_zip.js +2 -0
  157. package/dist/assets/icons/icon-assets-min/16_zip.js.map +1 -1
  158. package/dist/assets/icons/icon-assets-min/24_add-layer.js +2 -0
  159. package/dist/assets/icons/icon-assets-min/24_add-layer.js.map +1 -1
  160. package/dist/assets/icons/icon-assets-min/24_add.js +2 -0
  161. package/dist/assets/icons/icon-assets-min/24_add.js.map +1 -1
  162. package/dist/assets/icons/icon-assets-min/24_align-center.js +2 -0
  163. package/dist/assets/icons/icon-assets-min/24_align-center.js.map +1 -1
  164. package/dist/assets/icons/icon-assets-min/24_align-left.js +2 -0
  165. package/dist/assets/icons/icon-assets-min/24_align-left.js.map +1 -1
  166. package/dist/assets/icons/icon-assets-min/24_align-right.js +2 -0
  167. package/dist/assets/icons/icon-assets-min/24_align-right.js.map +1 -1
  168. package/dist/assets/icons/icon-assets-min/24_analytics-accent.js +2 -0
  169. package/dist/assets/icons/icon-assets-min/24_analytics-accent.js.map +1 -1
  170. package/dist/assets/icons/icon-assets-min/24_analytics.js +2 -0
  171. package/dist/assets/icons/icon-assets-min/24_analytics.js.map +1 -1
  172. package/dist/assets/icons/icon-assets-min/24_annotate.js +2 -0
  173. package/dist/assets/icons/icon-assets-min/24_annotate.js.map +1 -1
  174. package/dist/assets/icons/icon-assets-min/24_annotation.js +2 -0
  175. package/dist/assets/icons/icon-assets-min/24_annotation.js.map +1 -1
  176. package/dist/assets/icons/icon-assets-min/24_area.js +2 -0
  177. package/dist/assets/icons/icon-assets-min/24_area.js.map +1 -1
  178. package/dist/assets/icons/icon-assets-min/24_arrow-down.js +2 -0
  179. package/dist/assets/icons/icon-assets-min/24_arrow-down.js.map +1 -1
  180. package/dist/assets/icons/icon-assets-min/24_arrow-left-curved.js +2 -0
  181. package/dist/assets/icons/icon-assets-min/24_arrow-left-curved.js.map +1 -1
  182. package/dist/assets/icons/icon-assets-min/24_arrow-left.js +2 -0
  183. package/dist/assets/icons/icon-assets-min/24_arrow-left.js.map +1 -1
  184. package/dist/assets/icons/icon-assets-min/24_arrow-link.js +2 -0
  185. package/dist/assets/icons/icon-assets-min/24_arrow-link.js.map +1 -1
  186. package/dist/assets/icons/icon-assets-min/24_arrow-right.js +2 -0
  187. package/dist/assets/icons/icon-assets-min/24_arrow-right.js.map +1 -1
  188. package/dist/assets/icons/icon-assets-min/24_arrow-up.js +2 -0
  189. package/dist/assets/icons/icon-assets-min/24_arrow-up.js.map +1 -1
  190. package/dist/assets/icons/icon-assets-min/24_axes.js +2 -0
  191. package/dist/assets/icons/icon-assets-min/24_axes.js.map +1 -1
  192. package/dist/assets/icons/icon-assets-min/24_bar-cross.js +2 -0
  193. package/dist/assets/icons/icon-assets-min/24_bar-cross.js.map +1 -1
  194. package/dist/assets/icons/icon-assets-min/24_bar-error.js +2 -0
  195. package/dist/assets/icons/icon-assets-min/24_bar-error.js.map +1 -1
  196. package/dist/assets/icons/icon-assets-min/24_bar-stacked.js +2 -0
  197. package/dist/assets/icons/icon-assets-min/24_bar-stacked.js.map +1 -1
  198. package/dist/assets/icons/icon-assets-min/24_bar-trend.js +2 -0
  199. package/dist/assets/icons/icon-assets-min/24_bar-trend.js.map +1 -1
  200. package/dist/assets/icons/icon-assets-min/24_bar.js +2 -0
  201. package/dist/assets/icons/icon-assets-min/24_bar.js.map +1 -1
  202. package/dist/assets/icons/icon-assets-min/24_bindot.js +2 -0
  203. package/dist/assets/icons/icon-assets-min/24_bindot.js.map +1 -1
  204. package/dist/assets/icons/icon-assets-min/24_box.js +2 -0
  205. package/dist/assets/icons/icon-assets-min/24_box.js.map +1 -1
  206. package/dist/assets/icons/icon-assets-min/24_boxplot-binned.js +2 -0
  207. package/dist/assets/icons/icon-assets-min/24_boxplot-binned.js.map +1 -1
  208. package/dist/assets/icons/icon-assets-min/24_boxplot-jitter.js +2 -0
  209. package/dist/assets/icons/icon-assets-min/24_boxplot-jitter.js.map +1 -1
  210. package/dist/assets/icons/icon-assets-min/24_boxplot-notched.js +2 -0
  211. package/dist/assets/icons/icon-assets-min/24_boxplot-notched.js.map +1 -1
  212. package/dist/assets/icons/icon-assets-min/24_boxplot.js +2 -0
  213. package/dist/assets/icons/icon-assets-min/24_boxplot.js.map +1 -1
  214. package/dist/assets/icons/icon-assets-min/24_bubble.js +2 -0
  215. package/dist/assets/icons/icon-assets-min/24_bubble.js.map +1 -1
  216. package/dist/assets/icons/icon-assets-min/24_calendar.js +2 -0
  217. package/dist/assets/icons/icon-assets-min/24_calendar.js.map +1 -1
  218. package/dist/assets/icons/icon-assets-min/24_canvas.js +2 -0
  219. package/dist/assets/icons/icon-assets-min/24_canvas.js.map +1 -1
  220. package/dist/assets/icons/icon-assets-min/24_cell-type-num.js +2 -0
  221. package/dist/assets/icons/icon-assets-min/24_cell-type-num.js.map +1 -1
  222. package/dist/assets/icons/icon-assets-min/24_cell-type-subset.js +2 -0
  223. package/dist/assets/icons/icon-assets-min/24_cell-type-subset.js.map +1 -1
  224. package/dist/assets/icons/icon-assets-min/24_cell-type-txt.js +2 -0
  225. package/dist/assets/icons/icon-assets-min/24_cell-type-txt.js.map +1 -1
  226. package/dist/assets/icons/icon-assets-min/24_checkbox-checked.js +2 -0
  227. package/dist/assets/icons/icon-assets-min/24_checkbox-checked.js.map +1 -1
  228. package/dist/assets/icons/icon-assets-min/24_checkbox-intermediate.js +2 -0
  229. package/dist/assets/icons/icon-assets-min/24_checkbox-intermediate.js.map +1 -1
  230. package/dist/assets/icons/icon-assets-min/24_checkbox.js +2 -0
  231. package/dist/assets/icons/icon-assets-min/24_checkbox.js.map +1 -1
  232. package/dist/assets/icons/icon-assets-min/24_checkmark.js +2 -0
  233. package/dist/assets/icons/icon-assets-min/24_checkmark.js.map +1 -1
  234. package/dist/assets/icons/icon-assets-min/24_chevron-down.js +2 -0
  235. package/dist/assets/icons/icon-assets-min/24_chevron-down.js.map +1 -1
  236. package/dist/assets/icons/icon-assets-min/24_chevron-first.js +2 -0
  237. package/dist/assets/icons/icon-assets-min/24_chevron-first.js.map +1 -1
  238. package/dist/assets/icons/icon-assets-min/24_chevron-last.js +2 -0
  239. package/dist/assets/icons/icon-assets-min/24_chevron-last.js.map +1 -1
  240. package/dist/assets/icons/icon-assets-min/24_chevron-left.js +2 -0
  241. package/dist/assets/icons/icon-assets-min/24_chevron-left.js.map +1 -1
  242. package/dist/assets/icons/icon-assets-min/24_chevron-right.js +2 -0
  243. package/dist/assets/icons/icon-assets-min/24_chevron-right.js.map +1 -1
  244. package/dist/assets/icons/icon-assets-min/24_chevron-sort.js +2 -0
  245. package/dist/assets/icons/icon-assets-min/24_chevron-sort.js.map +1 -1
  246. package/dist/assets/icons/icon-assets-min/24_chevron-up.js +2 -0
  247. package/dist/assets/icons/icon-assets-min/24_chevron-up.js.map +1 -1
  248. package/dist/assets/icons/icon-assets-min/24_clipboard-copied.js +2 -0
  249. package/dist/assets/icons/icon-assets-min/24_clipboard-copied.js.map +1 -1
  250. package/dist/assets/icons/icon-assets-min/24_clipboard.js +2 -0
  251. package/dist/assets/icons/icon-assets-min/24_clipboard.js.map +1 -1
  252. package/dist/assets/icons/icon-assets-min/24_close.js +2 -0
  253. package/dist/assets/icons/icon-assets-min/24_close.js.map +1 -1
  254. package/dist/assets/icons/icon-assets-min/24_cloud-download.js +2 -0
  255. package/dist/assets/icons/icon-assets-min/24_cloud-download.js.map +1 -1
  256. package/dist/assets/icons/icon-assets-min/24_cloud-offline.js +2 -0
  257. package/dist/assets/icons/icon-assets-min/24_cloud-offline.js.map +1 -1
  258. package/dist/assets/icons/icon-assets-min/24_cloud-online.js +2 -0
  259. package/dist/assets/icons/icon-assets-min/24_cloud-online.js.map +1 -1
  260. package/dist/assets/icons/icon-assets-min/24_cloud-upload.js +2 -0
  261. package/dist/assets/icons/icon-assets-min/24_cloud-upload.js.map +1 -1
  262. package/dist/assets/icons/icon-assets-min/24_cluster.js +2 -0
  263. package/dist/assets/icons/icon-assets-min/24_cluster.js.map +1 -1
  264. package/dist/assets/icons/icon-assets-min/24_code.js +2 -0
  265. package/dist/assets/icons/icon-assets-min/24_code.js.map +1 -1
  266. package/dist/assets/icons/icon-assets-min/24_color-fill.js +2 -0
  267. package/dist/assets/icons/icon-assets-min/24_color-fill.js.map +1 -1
  268. package/dist/assets/icons/icon-assets-min/24_color-none.js +2 -0
  269. package/dist/assets/icons/icon-assets-min/24_color-none.js.map +1 -1
  270. package/dist/assets/icons/icon-assets-min/24_color-stroke.js +2 -0
  271. package/dist/assets/icons/icon-assets-min/24_color-stroke.js.map +1 -1
  272. package/dist/assets/icons/icon-assets-min/24_color.js +2 -0
  273. package/dist/assets/icons/icon-assets-min/24_color.js.map +1 -1
  274. package/dist/assets/icons/icon-assets-min/24_columns.js +2 -0
  275. package/dist/assets/icons/icon-assets-min/24_columns.js.map +1 -1
  276. package/dist/assets/icons/icon-assets-min/24_connected-points.js +2 -0
  277. package/dist/assets/icons/icon-assets-min/24_connected-points.js.map +1 -1
  278. package/dist/assets/icons/icon-assets-min/24_container.js +2 -0
  279. package/dist/assets/icons/icon-assets-min/24_container.js.map +1 -1
  280. package/dist/assets/icons/icon-assets-min/24_cookie.js +2 -0
  281. package/dist/assets/icons/icon-assets-min/24_cookie.js.map +1 -1
  282. package/dist/assets/icons/icon-assets-min/24_copy.js +2 -0
  283. package/dist/assets/icons/icon-assets-min/24_copy.js.map +1 -1
  284. package/dist/assets/icons/icon-assets-min/24_cpu.js +2 -0
  285. package/dist/assets/icons/icon-assets-min/24_cpu.js.map +1 -1
  286. package/dist/assets/icons/icon-assets-min/24_cursor-pointer.js +2 -0
  287. package/dist/assets/icons/icon-assets-min/24_cursor-pointer.js.map +1 -1
  288. package/dist/assets/icons/icon-assets-min/24_data-dimentions.js +2 -0
  289. package/dist/assets/icons/icon-assets-min/24_data-dimentions.js.map +1 -1
  290. package/dist/assets/icons/icon-assets-min/24_debug.js +2 -0
  291. package/dist/assets/icons/icon-assets-min/24_debug.js.map +1 -1
  292. package/dist/assets/icons/icon-assets-min/24_delete-bin.js +2 -0
  293. package/dist/assets/icons/icon-assets-min/24_delete-bin.js.map +1 -1
  294. package/dist/assets/icons/icon-assets-min/24_delete-circle.js +2 -0
  295. package/dist/assets/icons/icon-assets-min/24_delete-circle.js.map +1 -1
  296. package/dist/assets/icons/icon-assets-min/24_delete-clear.js +2 -0
  297. package/dist/assets/icons/icon-assets-min/24_delete-clear.js.map +1 -1
  298. package/dist/assets/icons/icon-assets-min/24_dendrogram-X-line.js +2 -0
  299. package/dist/assets/icons/icon-assets-min/24_dendrogram-X-line.js.map +1 -1
  300. package/dist/assets/icons/icon-assets-min/24_dendrogram-X.js +2 -0
  301. package/dist/assets/icons/icon-assets-min/24_dendrogram-X.js.map +1 -1
  302. package/dist/assets/icons/icon-assets-min/24_dendrogram-Y-line.js +2 -0
  303. package/dist/assets/icons/icon-assets-min/24_dendrogram-Y-line.js.map +1 -1
  304. package/dist/assets/icons/icon-assets-min/24_dendrogram-Y.js +2 -0
  305. package/dist/assets/icons/icon-assets-min/24_dendrogram-Y.js.map +1 -1
  306. package/dist/assets/icons/icon-assets-min/24_dna-add.js +2 -0
  307. package/dist/assets/icons/icon-assets-min/24_dna-add.js.map +1 -1
  308. package/dist/assets/icons/icon-assets-min/24_dna-import.js +2 -0
  309. package/dist/assets/icons/icon-assets-min/24_dna-import.js.map +1 -1
  310. package/dist/assets/icons/icon-assets-min/24_dna.js +2 -0
  311. package/dist/assets/icons/icon-assets-min/24_dna.js.map +1 -1
  312. package/dist/assets/icons/icon-assets-min/24_download.js +2 -0
  313. package/dist/assets/icons/icon-assets-min/24_download.js.map +1 -1
  314. package/dist/assets/icons/icon-assets-min/24_drag-dots.js +2 -0
  315. package/dist/assets/icons/icon-assets-min/24_drag-dots.js.map +1 -1
  316. package/dist/assets/icons/icon-assets-min/24_drag-horizontal.js +2 -0
  317. package/dist/assets/icons/icon-assets-min/24_drag-horizontal.js.map +1 -1
  318. package/dist/assets/icons/icon-assets-min/24_drag-vertical.js +2 -0
  319. package/dist/assets/icons/icon-assets-min/24_drag-vertical.js.map +1 -1
  320. package/dist/assets/icons/icon-assets-min/24_duplicate.js +2 -0
  321. package/dist/assets/icons/icon-assets-min/24_duplicate.js.map +1 -1
  322. package/dist/assets/icons/icon-assets-min/24_edit.js +2 -0
  323. package/dist/assets/icons/icon-assets-min/24_edit.js.map +1 -1
  324. package/dist/assets/icons/icon-assets-min/24_error-bar.js +2 -0
  325. package/dist/assets/icons/icon-assets-min/24_error-bar.js.map +1 -1
  326. package/dist/assets/icons/icon-assets-min/24_error.js +2 -0
  327. package/dist/assets/icons/icon-assets-min/24_error.js.map +1 -1
  328. package/dist/assets/icons/icon-assets-min/24_expand-left.js +2 -0
  329. package/dist/assets/icons/icon-assets-min/24_expand-left.js.map +1 -1
  330. package/dist/assets/icons/icon-assets-min/24_expand-right.js +2 -0
  331. package/dist/assets/icons/icon-assets-min/24_expand-right.js.map +1 -1
  332. package/dist/assets/icons/icon-assets-min/24_export-2.js +2 -0
  333. package/dist/assets/icons/icon-assets-min/24_export-2.js.map +1 -1
  334. package/dist/assets/icons/icon-assets-min/24_export.js +2 -0
  335. package/dist/assets/icons/icon-assets-min/24_export.js.map +1 -1
  336. package/dist/assets/icons/icon-assets-min/24_external-link.js +2 -0
  337. package/dist/assets/icons/icon-assets-min/24_external-link.js.map +1 -1
  338. package/dist/assets/icons/icon-assets-min/24_file-doc-add.js +2 -0
  339. package/dist/assets/icons/icon-assets-min/24_file-doc-add.js.map +1 -1
  340. package/dist/assets/icons/icon-assets-min/24_file-doc-download.js +2 -0
  341. package/dist/assets/icons/icon-assets-min/24_file-doc-download.js.map +1 -1
  342. package/dist/assets/icons/icon-assets-min/24_file-doc-import.js +2 -0
  343. package/dist/assets/icons/icon-assets-min/24_file-doc-import.js.map +1 -1
  344. package/dist/assets/icons/icon-assets-min/24_file-doc.js +2 -0
  345. package/dist/assets/icons/icon-assets-min/24_file-doc.js.map +1 -1
  346. package/dist/assets/icons/icon-assets-min/24_file-logs-accent.js +2 -0
  347. package/dist/assets/icons/icon-assets-min/24_file-logs-accent.js.map +1 -1
  348. package/dist/assets/icons/icon-assets-min/24_file-logs.js +2 -0
  349. package/dist/assets/icons/icon-assets-min/24_file-logs.js.map +1 -1
  350. package/dist/assets/icons/icon-assets-min/24_files-export.js +2 -0
  351. package/dist/assets/icons/icon-assets-min/24_files-export.js.map +1 -1
  352. package/dist/assets/icons/icon-assets-min/24_files-import.js +2 -0
  353. package/dist/assets/icons/icon-assets-min/24_files-import.js.map +1 -1
  354. package/dist/assets/icons/icon-assets-min/24_filter-on.js +2 -0
  355. package/dist/assets/icons/icon-assets-min/24_filter-on.js.map +1 -1
  356. package/dist/assets/icons/icon-assets-min/24_filter.js +2 -0
  357. package/dist/assets/icons/icon-assets-min/24_filter.js.map +1 -1
  358. package/dist/assets/icons/icon-assets-min/24_fire-tips.js +2 -0
  359. package/dist/assets/icons/icon-assets-min/24_fire-tips.js.map +1 -1
  360. package/dist/assets/icons/icon-assets-min/24_folder-parent.js +2 -0
  361. package/dist/assets/icons/icon-assets-min/24_folder-parent.js.map +1 -1
  362. package/dist/assets/icons/icon-assets-min/24_frame-type-all.js +2 -0
  363. package/dist/assets/icons/icon-assets-min/24_frame-type-all.js.map +1 -1
  364. package/dist/assets/icons/icon-assets-min/24_frame-type-bottom.js +2 -0
  365. package/dist/assets/icons/icon-assets-min/24_frame-type-bottom.js.map +1 -1
  366. package/dist/assets/icons/icon-assets-min/24_frame-type-left-bottom.js +2 -0
  367. package/dist/assets/icons/icon-assets-min/24_frame-type-left-bottom.js.map +1 -1
  368. package/dist/assets/icons/icon-assets-min/24_frame-type-left.js +2 -0
  369. package/dist/assets/icons/icon-assets-min/24_frame-type-left.js.map +1 -1
  370. package/dist/assets/icons/icon-assets-min/24_frame-type-none.js +2 -0
  371. package/dist/assets/icons/icon-assets-min/24_frame-type-none.js.map +1 -1
  372. package/dist/assets/icons/icon-assets-min/24_generate.js +2 -0
  373. package/dist/assets/icons/icon-assets-min/24_generate.js.map +1 -1
  374. package/dist/assets/icons/icon-assets-min/24_graph.js +2 -0
  375. package/dist/assets/icons/icon-assets-min/24_graph.js.map +1 -1
  376. package/dist/assets/icons/icon-assets-min/24_heatmap.js +2 -0
  377. package/dist/assets/icons/icon-assets-min/24_heatmap.js.map +1 -1
  378. package/dist/assets/icons/icon-assets-min/24_help-outline.js +2 -0
  379. package/dist/assets/icons/icon-assets-min/24_help-outline.js.map +1 -1
  380. package/dist/assets/icons/icon-assets-min/24_help.js +2 -0
  381. package/dist/assets/icons/icon-assets-min/24_help.js.map +1 -1
  382. package/dist/assets/icons/icon-assets-min/24_hide.js +2 -0
  383. package/dist/assets/icons/icon-assets-min/24_hide.js.map +1 -1
  384. package/dist/assets/icons/icon-assets-min/24_import.js +2 -0
  385. package/dist/assets/icons/icon-assets-min/24_import.js.map +1 -1
  386. package/dist/assets/icons/icon-assets-min/24_info-outline.js +2 -0
  387. package/dist/assets/icons/icon-assets-min/24_info-outline.js.map +1 -1
  388. package/dist/assets/icons/icon-assets-min/24_info.js +2 -0
  389. package/dist/assets/icons/icon-assets-min/24_info.js.map +1 -1
  390. package/dist/assets/icons/icon-assets-min/24_jitter.js +2 -0
  391. package/dist/assets/icons/icon-assets-min/24_jitter.js.map +1 -1
  392. package/dist/assets/icons/icon-assets-min/24_jump-link.js +2 -0
  393. package/dist/assets/icons/icon-assets-min/24_jump-link.js.map +1 -1
  394. package/dist/assets/icons/icon-assets-min/24_lasso.js +2 -0
  395. package/dist/assets/icons/icon-assets-min/24_lasso.js.map +1 -1
  396. package/dist/assets/icons/icon-assets-min/24_layers.js +2 -0
  397. package/dist/assets/icons/icon-assets-min/24_layers.js.map +1 -1
  398. package/dist/assets/icons/icon-assets-min/24_learn.js +2 -0
  399. package/dist/assets/icons/icon-assets-min/24_learn.js.map +1 -1
  400. package/dist/assets/icons/icon-assets-min/24_legend-box-dot.js +2 -0
  401. package/dist/assets/icons/icon-assets-min/24_legend-box-dot.js.map +1 -1
  402. package/dist/assets/icons/icon-assets-min/24_legend-box.js +2 -0
  403. package/dist/assets/icons/icon-assets-min/24_legend-box.js.map +1 -1
  404. package/dist/assets/icons/icon-assets-min/24_legend.js +2 -0
  405. package/dist/assets/icons/icon-assets-min/24_legend.js.map +1 -1
  406. package/dist/assets/icons/icon-assets-min/24_line-binned.js +2 -0
  407. package/dist/assets/icons/icon-assets-min/24_line-binned.js.map +1 -1
  408. package/dist/assets/icons/icon-assets-min/24_line-error.js +2 -0
  409. package/dist/assets/icons/icon-assets-min/24_line-error.js.map +1 -1
  410. package/dist/assets/icons/icon-assets-min/24_line-jitter.js +2 -0
  411. package/dist/assets/icons/icon-assets-min/24_line-jitter.js.map +1 -1
  412. package/dist/assets/icons/icon-assets-min/24_line.js +2 -0
  413. package/dist/assets/icons/icon-assets-min/24_line.js.map +1 -1
  414. package/dist/assets/icons/icon-assets-min/24_linetype-dashed.js +2 -0
  415. package/dist/assets/icons/icon-assets-min/24_linetype-dashed.js.map +1 -1
  416. package/dist/assets/icons/icon-assets-min/24_linetype-dotdash.js +2 -0
  417. package/dist/assets/icons/icon-assets-min/24_linetype-dotdash.js.map +1 -1
  418. package/dist/assets/icons/icon-assets-min/24_linetype-dotted.js +2 -0
  419. package/dist/assets/icons/icon-assets-min/24_linetype-dotted.js.map +1 -1
  420. package/dist/assets/icons/icon-assets-min/24_linetype-longdash.js +2 -0
  421. package/dist/assets/icons/icon-assets-min/24_linetype-longdash.js.map +1 -1
  422. package/dist/assets/icons/icon-assets-min/24_linetype-solid.js +2 -0
  423. package/dist/assets/icons/icon-assets-min/24_linetype-solid.js.map +1 -1
  424. package/dist/assets/icons/icon-assets-min/24_linetype-twodash.js +2 -0
  425. package/dist/assets/icons/icon-assets-min/24_linetype-twodash.js.map +1 -1
  426. package/dist/assets/icons/icon-assets-min/24_link-disabled.js +2 -0
  427. package/dist/assets/icons/icon-assets-min/24_link-disabled.js.map +1 -1
  428. package/dist/assets/icons/icon-assets-min/24_link.js +2 -0
  429. package/dist/assets/icons/icon-assets-min/24_link.js.map +1 -1
  430. package/dist/assets/icons/icon-assets-min/24_loading.js +2 -0
  431. package/dist/assets/icons/icon-assets-min/24_loading.js.map +1 -1
  432. package/dist/assets/icons/icon-assets-min/24_lock.js +2 -0
  433. package/dist/assets/icons/icon-assets-min/24_lock.js.map +1 -1
  434. package/dist/assets/icons/icon-assets-min/24_maximize.js +2 -0
  435. package/dist/assets/icons/icon-assets-min/24_maximize.js.map +1 -1
  436. package/dist/assets/icons/icon-assets-min/24_menu.js +2 -0
  437. package/dist/assets/icons/icon-assets-min/24_menu.js.map +1 -1
  438. package/dist/assets/icons/icon-assets-min/24_minimize.js +2 -0
  439. package/dist/assets/icons/icon-assets-min/24_minimize.js.map +1 -1
  440. package/dist/assets/icons/icon-assets-min/24_minus.js +2 -0
  441. package/dist/assets/icons/icon-assets-min/24_minus.js.map +1 -1
  442. package/dist/assets/icons/icon-assets-min/24_monetization-off.js +2 -0
  443. package/dist/assets/icons/icon-assets-min/24_monetization-off.js.map +1 -1
  444. package/dist/assets/icons/icon-assets-min/24_monetization-on.js +2 -0
  445. package/dist/assets/icons/icon-assets-min/24_monetization-on.js.map +1 -1
  446. package/dist/assets/icons/icon-assets-min/24_monetization.js +2 -0
  447. package/dist/assets/icons/icon-assets-min/24_monetization.js.map +1 -1
  448. package/dist/assets/icons/icon-assets-min/24_more.js +2 -0
  449. package/dist/assets/icons/icon-assets-min/24_more.js.map +1 -1
  450. package/dist/assets/icons/icon-assets-min/24_paper-clip.js +2 -0
  451. package/dist/assets/icons/icon-assets-min/24_paper-clip.js.map +1 -1
  452. package/dist/assets/icons/icon-assets-min/24_pause.js +2 -0
  453. package/dist/assets/icons/icon-assets-min/24_pause.js.map +1 -1
  454. package/dist/assets/icons/icon-assets-min/24_pen-tool.js +2 -0
  455. package/dist/assets/icons/icon-assets-min/24_pen-tool.js.map +1 -1
  456. package/dist/assets/icons/icon-assets-min/24_pin.js +2 -0
  457. package/dist/assets/icons/icon-assets-min/24_pin.js.map +1 -1
  458. package/dist/assets/icons/icon-assets-min/24_play.js +2 -0
  459. package/dist/assets/icons/icon-assets-min/24_play.js.map +1 -1
  460. package/dist/assets/icons/icon-assets-min/24_position-bottom-annotation.js +2 -0
  461. package/dist/assets/icons/icon-assets-min/24_position-bottom-annotation.js.map +1 -1
  462. package/dist/assets/icons/icon-assets-min/24_position-bottom.js +2 -0
  463. package/dist/assets/icons/icon-assets-min/24_position-bottom.js.map +1 -1
  464. package/dist/assets/icons/icon-assets-min/24_position-left-annotation.js +2 -0
  465. package/dist/assets/icons/icon-assets-min/24_position-left-annotation.js.map +1 -1
  466. package/dist/assets/icons/icon-assets-min/24_position-left.js +2 -0
  467. package/dist/assets/icons/icon-assets-min/24_position-left.js.map +1 -1
  468. package/dist/assets/icons/icon-assets-min/24_position-right-annotation.js +2 -0
  469. package/dist/assets/icons/icon-assets-min/24_position-right-annotation.js.map +1 -1
  470. package/dist/assets/icons/icon-assets-min/24_position-right.js +2 -0
  471. package/dist/assets/icons/icon-assets-min/24_position-right.js.map +1 -1
  472. package/dist/assets/icons/icon-assets-min/24_position-top-annotation.js +2 -0
  473. package/dist/assets/icons/icon-assets-min/24_position-top-annotation.js.map +1 -1
  474. package/dist/assets/icons/icon-assets-min/24_position-top.js +2 -0
  475. package/dist/assets/icons/icon-assets-min/24_position-top.js.map +1 -1
  476. package/dist/assets/icons/icon-assets-min/24_product.js +2 -0
  477. package/dist/assets/icons/icon-assets-min/24_product.js.map +1 -1
  478. package/dist/assets/icons/icon-assets-min/24_progress.js +2 -0
  479. package/dist/assets/icons/icon-assets-min/24_progress.js.map +1 -1
  480. package/dist/assets/icons/icon-assets-min/24_publications.js +2 -0
  481. package/dist/assets/icons/icon-assets-min/24_publications.js.map +1 -1
  482. package/dist/assets/icons/icon-assets-min/24_radio-button-checked.js +2 -0
  483. package/dist/assets/icons/icon-assets-min/24_radio-button-checked.js.map +1 -1
  484. package/dist/assets/icons/icon-assets-min/24_radio-button.js +2 -0
  485. package/dist/assets/icons/icon-assets-min/24_radio-button.js.map +1 -1
  486. package/dist/assets/icons/icon-assets-min/24_renew.js +2 -0
  487. package/dist/assets/icons/icon-assets-min/24_renew.js.map +1 -1
  488. package/dist/assets/icons/icon-assets-min/24_restart.js +2 -0
  489. package/dist/assets/icons/icon-assets-min/24_restart.js.map +1 -1
  490. package/dist/assets/icons/icon-assets-min/24_reverse.js +2 -0
  491. package/dist/assets/icons/icon-assets-min/24_reverse.js.map +1 -1
  492. package/dist/assets/icons/icon-assets-min/24_rotation-0.js +2 -0
  493. package/dist/assets/icons/icon-assets-min/24_rotation-0.js.map +1 -1
  494. package/dist/assets/icons/icon-assets-min/24_rotation-45.js +2 -0
  495. package/dist/assets/icons/icon-assets-min/24_rotation-45.js.map +1 -1
  496. package/dist/assets/icons/icon-assets-min/24_rotation-90.js +2 -0
  497. package/dist/assets/icons/icon-assets-min/24_rotation-90.js.map +1 -1
  498. package/dist/assets/icons/icon-assets-min/24_search.js +2 -0
  499. package/dist/assets/icons/icon-assets-min/24_search.js.map +1 -1
  500. package/dist/assets/icons/icon-assets-min/24_server-on.js +2 -0
  501. package/dist/assets/icons/icon-assets-min/24_server-on.js.map +1 -1
  502. package/dist/assets/icons/icon-assets-min/24_server.js +2 -0
  503. package/dist/assets/icons/icon-assets-min/24_server.js.map +1 -1
  504. package/dist/assets/icons/icon-assets-min/24_settings.js +2 -0
  505. package/dist/assets/icons/icon-assets-min/24_settings.js.map +1 -1
  506. package/dist/assets/icons/icon-assets-min/24_show.js +2 -0
  507. package/dist/assets/icons/icon-assets-min/24_show.js.map +1 -1
  508. package/dist/assets/icons/icon-assets-min/24_sina.js +2 -0
  509. package/dist/assets/icons/icon-assets-min/24_sina.js.map +1 -1
  510. package/dist/assets/icons/icon-assets-min/24_skatterplot.js +2 -0
  511. package/dist/assets/icons/icon-assets-min/24_skatterplot.js.map +1 -1
  512. package/dist/assets/icons/icon-assets-min/24_slice.js +2 -0
  513. package/dist/assets/icons/icon-assets-min/24_slice.js.map +1 -1
  514. package/dist/assets/icons/icon-assets-min/24_social-github.js +2 -0
  515. package/dist/assets/icons/icon-assets-min/24_social-github.js.map +1 -1
  516. package/dist/assets/icons/icon-assets-min/24_social-linkedin.js +2 -0
  517. package/dist/assets/icons/icon-assets-min/24_social-linkedin.js.map +1 -1
  518. package/dist/assets/icons/icon-assets-min/24_social-twitter-X.js +2 -0
  519. package/dist/assets/icons/icon-assets-min/24_social-twitter-X.js.map +1 -1
  520. package/dist/assets/icons/icon-assets-min/24_social-twitter-bird.js +2 -0
  521. package/dist/assets/icons/icon-assets-min/24_social-twitter-bird.js.map +1 -1
  522. package/dist/assets/icons/icon-assets-min/24_social-youtube.js +2 -0
  523. package/dist/assets/icons/icon-assets-min/24_social-youtube.js.map +1 -1
  524. package/dist/assets/icons/icon-assets-min/24_sort-list-down.js +2 -0
  525. package/dist/assets/icons/icon-assets-min/24_sort-list-down.js.map +1 -1
  526. package/dist/assets/icons/icon-assets-min/24_sort-list-up.js +2 -0
  527. package/dist/assets/icons/icon-assets-min/24_sort-list-up.js.map +1 -1
  528. package/dist/assets/icons/icon-assets-min/24_sort.js +2 -0
  529. package/dist/assets/icons/icon-assets-min/24_sort.js.map +1 -1
  530. package/dist/assets/icons/icon-assets-min/24_statistics.js +2 -0
  531. package/dist/assets/icons/icon-assets-min/24_statistics.js.map +1 -1
  532. package/dist/assets/icons/icon-assets-min/24_stop.js +2 -0
  533. package/dist/assets/icons/icon-assets-min/24_stop.js.map +1 -1
  534. package/dist/assets/icons/icon-assets-min/24_strip-plot.js +2 -0
  535. package/dist/assets/icons/icon-assets-min/24_strip-plot.js.map +1 -1
  536. package/dist/assets/icons/icon-assets-min/24_success.js +2 -0
  537. package/dist/assets/icons/icon-assets-min/24_success.js.map +1 -1
  538. package/dist/assets/icons/icon-assets-min/24_table-add.js +2 -0
  539. package/dist/assets/icons/icon-assets-min/24_table-add.js.map +1 -1
  540. package/dist/assets/icons/icon-assets-min/24_table-alias.js +2 -0
  541. package/dist/assets/icons/icon-assets-min/24_table-alias.js.map +1 -1
  542. package/dist/assets/icons/icon-assets-min/24_table-import.js +2 -0
  543. package/dist/assets/icons/icon-assets-min/24_table-import.js.map +1 -1
  544. package/dist/assets/icons/icon-assets-min/24_table-upload.js +2 -0
  545. package/dist/assets/icons/icon-assets-min/24_table-upload.js.map +1 -1
  546. package/dist/assets/icons/icon-assets-min/24_table.js +2 -0
  547. package/dist/assets/icons/icon-assets-min/24_table.js.map +1 -1
  548. package/dist/assets/icons/icon-assets-min/24_template.js +2 -0
  549. package/dist/assets/icons/icon-assets-min/24_template.js.map +1 -1
  550. package/dist/assets/icons/icon-assets-min/24_terminal.js +2 -0
  551. package/dist/assets/icons/icon-assets-min/24_terminal.js.map +1 -1
  552. package/dist/assets/icons/icon-assets-min/24_text-align-center.js +2 -0
  553. package/dist/assets/icons/icon-assets-min/24_text-align-center.js.map +1 -1
  554. package/dist/assets/icons/icon-assets-min/24_text-align-left.js +2 -0
  555. package/dist/assets/icons/icon-assets-min/24_text-align-left.js.map +1 -1
  556. package/dist/assets/icons/icon-assets-min/24_text-align-right.js +2 -0
  557. package/dist/assets/icons/icon-assets-min/24_text-align-right.js.map +1 -1
  558. package/dist/assets/icons/icon-assets-min/24_theme-dark.js +2 -0
  559. package/dist/assets/icons/icon-assets-min/24_theme-dark.js.map +1 -1
  560. package/dist/assets/icons/icon-assets-min/24_theme-light.js +2 -0
  561. package/dist/assets/icons/icon-assets-min/24_theme-light.js.map +1 -1
  562. package/dist/assets/icons/icon-assets-min/24_time.js +2 -0
  563. package/dist/assets/icons/icon-assets-min/24_time.js.map +1 -1
  564. package/dist/assets/icons/icon-assets-min/24_title-position.js +2 -0
  565. package/dist/assets/icons/icon-assets-min/24_title-position.js.map +1 -1
  566. package/dist/assets/icons/icon-assets-min/24_tune.js +2 -0
  567. package/dist/assets/icons/icon-assets-min/24_tune.js.map +1 -1
  568. package/dist/assets/icons/icon-assets-min/24_venn.js +2 -0
  569. package/dist/assets/icons/icon-assets-min/24_venn.js.map +1 -1
  570. package/dist/assets/icons/icon-assets-min/24_view-hide.js +2 -0
  571. package/dist/assets/icons/icon-assets-min/24_view-hide.js.map +1 -1
  572. package/dist/assets/icons/icon-assets-min/24_view-show.js +2 -0
  573. package/dist/assets/icons/icon-assets-min/24_view-show.js.map +1 -1
  574. package/dist/assets/icons/icon-assets-min/24_violin-binned.js +2 -0
  575. package/dist/assets/icons/icon-assets-min/24_violin-binned.js.map +1 -1
  576. package/dist/assets/icons/icon-assets-min/24_violin-jitter.js +2 -0
  577. package/dist/assets/icons/icon-assets-min/24_violin-jitter.js.map +1 -1
  578. package/dist/assets/icons/icon-assets-min/24_violin.js +2 -0
  579. package/dist/assets/icons/icon-assets-min/24_violin.js.map +1 -1
  580. package/dist/assets/icons/icon-assets-min/24_warning.js +2 -0
  581. package/dist/assets/icons/icon-assets-min/24_warning.js.map +1 -1
  582. package/dist/assets/icons/icon-assets-min/24_wetlab.js +2 -0
  583. package/dist/assets/icons/icon-assets-min/24_wetlab.js.map +1 -1
  584. package/dist/assets/icons/icon-assets-min/24_windows-collapse.js +2 -0
  585. package/dist/assets/icons/icon-assets-min/24_windows-collapse.js.map +1 -1
  586. package/dist/assets/icons/icon-assets-min/24_windows-expand.js +2 -0
  587. package/dist/assets/icons/icon-assets-min/24_windows-expand.js.map +1 -1
  588. package/dist/assets/icons/icon-assets-min/24_x-axis.js +2 -0
  589. package/dist/assets/icons/icon-assets-min/24_x-axis.js.map +1 -1
  590. package/dist/assets/icons/icon-assets-min/24_y-axis.js +2 -0
  591. package/dist/assets/icons/icon-assets-min/24_y-axis.js.map +1 -1
  592. package/dist/assets/icons/icon-assets-min/24_zip.js +2 -0
  593. package/dist/assets/icons/icon-assets-min/24_zip.js.map +1 -1
  594. package/dist/assets/icons/icon-assets-min/24_zoom-in.js +2 -0
  595. package/dist/assets/icons/icon-assets-min/24_zoom-in.js.map +1 -1
  596. package/dist/assets/icons/icon-assets-min/24_zoom-out.js +2 -0
  597. package/dist/assets/icons/icon-assets-min/24_zoom-out.js.map +1 -1
  598. package/dist/assets/images/24_checkbox-light-enabled-checked.js +2 -0
  599. package/dist/assets/images/24_checkbox-light-enabled-checked.js.map +1 -1
  600. package/dist/assets/images/24_checkbox-light-enabled-unchecked.js +2 -0
  601. package/dist/assets/images/24_checkbox-light-enabled-unchecked.js.map +1 -1
  602. package/dist/assets/images/required.js +2 -0
  603. package/dist/assets/images/required.js.map +1 -1
  604. package/dist/base/BtnBase.js +2 -0
  605. package/dist/base/BtnBase.vue2.js +2 -0
  606. package/dist/base/BtnBase.vue2.js.map +1 -1
  607. package/dist/colors/color.js +2 -9
  608. package/dist/colors/color.js.map +1 -1
  609. package/dist/colors/gradient.js +1 -34
  610. package/dist/colors/gradient.js.map +1 -1
  611. package/dist/colors/palette.js +3 -4
  612. package/dist/colors/palette.js.map +1 -1
  613. package/dist/components/ContextProvider.js +2 -0
  614. package/dist/components/ContextProvider.vue2.js +2 -0
  615. package/dist/components/ContextProvider.vue2.js.map +1 -1
  616. package/dist/components/DataTable/BaseCellComponent.js +2 -0
  617. package/dist/components/DataTable/BaseCellComponent.vue2.js +2 -0
  618. package/dist/components/DataTable/BaseCellComponent.vue2.js.map +1 -1
  619. package/dist/components/DataTable/ColumnCaret.js +2 -0
  620. package/dist/components/DataTable/ColumnCaret.vue2.js +2 -0
  621. package/dist/components/DataTable/ColumnCaret.vue2.js.map +1 -1
  622. package/dist/components/DataTable/ColumnsCommandMenu.js +2 -0
  623. package/dist/components/DataTable/ColumnsCommandMenu.vue2.js +2 -0
  624. package/dist/components/DataTable/ColumnsCommandMenu.vue2.js.map +1 -1
  625. package/dist/components/DataTable/RowsCommandMenu.js +2 -0
  626. package/dist/components/DataTable/RowsCommandMenu.vue2.js +2 -0
  627. package/dist/components/DataTable/RowsCommandMenu.vue2.js.map +1 -1
  628. package/dist/components/DataTable/TScroll.js +2 -0
  629. package/dist/components/DataTable/TScroll.vue2.js +2 -0
  630. package/dist/components/DataTable/TScroll.vue2.js.map +1 -1
  631. package/dist/components/DataTable/TableComponent.js +2 -0
  632. package/dist/components/DataTable/TableComponent.vue2.js +2 -0
  633. package/dist/components/DataTable/TableComponent.vue2.js.map +1 -1
  634. package/dist/components/DataTable/TdCell.js +2 -0
  635. package/dist/components/DataTable/TdCell.vue2.js +2 -0
  636. package/dist/components/DataTable/TdCell.vue2.js.map +1 -1
  637. package/dist/components/DataTable/ThCell.js +2 -0
  638. package/dist/components/DataTable/ThCell.vue2.js +2 -0
  639. package/dist/components/DataTable/ThCell.vue2.js.map +1 -1
  640. package/dist/components/DataTable/TrBody.js +2 -0
  641. package/dist/components/DataTable/TrBody.vue2.js +2 -0
  642. package/dist/components/DataTable/TrBody.vue2.js.map +1 -1
  643. package/dist/components/DataTable/TrHead.js +2 -0
  644. package/dist/components/DataTable/TrHead.vue2.js +2 -0
  645. package/dist/components/DataTable/TrHead.vue2.js.map +1 -1
  646. package/dist/components/DataTable/adapters/AsyncData.js +2 -0
  647. package/dist/components/DataTable/adapters/AsyncData.js.map +1 -1
  648. package/dist/components/DataTable/adapters/RawData.js +2 -0
  649. package/dist/components/DataTable/adapters/RawData.js.map +1 -1
  650. package/dist/components/DataTable/assets/TableIcon.js +2 -0
  651. package/dist/components/DataTable/assets/TableIcon.js.map +1 -1
  652. package/dist/components/DataTable/composition/useColumn.js +2 -0
  653. package/dist/components/DataTable/composition/useColumn.js.map +1 -1
  654. package/dist/components/DataTable/composition/useMouseUp.js +2 -0
  655. package/dist/components/DataTable/composition/useMouseUp.js.map +1 -1
  656. package/dist/components/DataTable/composition/useResize.js +2 -0
  657. package/dist/components/DataTable/composition/useResize.js.map +1 -1
  658. package/dist/components/DataTable/composition/useTableColumns.js +2 -0
  659. package/dist/components/DataTable/composition/useTableColumns.js.map +1 -1
  660. package/dist/components/DataTable/composition/useTableRows.js +2 -0
  661. package/dist/components/DataTable/composition/useTableRows.js.map +1 -1
  662. package/dist/components/DataTable/domain.js +2 -6
  663. package/dist/components/DataTable/domain.js.map +1 -1
  664. package/dist/components/DataTable/index.js +2 -7
  665. package/dist/components/DataTable/index.js.map +1 -1
  666. package/dist/components/DataTable/keys.js +3 -1
  667. package/dist/components/DataTable/keys.js.map +1 -1
  668. package/dist/components/DataTable/state.js +2 -0
  669. package/dist/components/DataTable/state.js.map +1 -1
  670. package/dist/components/DropdownListItem.js +2 -0
  671. package/dist/components/DropdownListItem.vue2.js +2 -0
  672. package/dist/components/DropdownListItem.vue2.js.map +1 -1
  673. package/dist/components/HScroll.js +2 -0
  674. package/dist/components/HScroll.vue2.js +2 -0
  675. package/dist/components/HScroll.vue2.js.map +1 -1
  676. package/dist/components/InputRange.js +2 -0
  677. package/dist/components/InputRange.vue2.js +2 -0
  678. package/dist/components/InputRange.vue2.js.map +1 -1
  679. package/dist/components/LongText.js +2 -0
  680. package/dist/components/LongText.vue2.js +2 -0
  681. package/dist/components/LongText.vue2.js.map +1 -1
  682. package/dist/components/PlAccordion/ExpandTransition.js +2 -0
  683. package/dist/components/PlAccordion/ExpandTransition.vue2.js +2 -0
  684. package/dist/components/PlAccordion/ExpandTransition.vue2.js.map +1 -1
  685. package/dist/components/PlAccordion/PlAccordion.js +2 -0
  686. package/dist/components/PlAccordion/PlAccordion.vue2.js +2 -0
  687. package/dist/components/PlAccordion/PlAccordion.vue2.js.map +1 -1
  688. package/dist/components/PlAccordion/PlAccordionSection.js +1 -0
  689. package/dist/components/PlAccordion/PlAccordionSection.style.js +1 -0
  690. package/dist/components/PlAccordion/PlAccordionSection.vue2.js +2 -0
  691. package/dist/components/PlAccordion/PlAccordionSection.vue2.js.map +1 -1
  692. package/dist/components/PlAlert/PlAlert.js +2 -0
  693. package/dist/components/PlAlert/PlAlert.vue2.js +2 -0
  694. package/dist/components/PlAlert/PlAlert.vue2.js.map +1 -1
  695. package/dist/components/PlAutocomplete/PlAutocomplete.js +2 -0
  696. package/dist/components/PlAutocomplete/PlAutocomplete.vue2.js +2 -0
  697. package/dist/components/PlAutocomplete/PlAutocomplete.vue2.js.map +1 -1
  698. package/dist/components/PlAutocompleteMulti/PlAutocompleteMulti.js +2 -0
  699. package/dist/components/PlAutocompleteMulti/PlAutocompleteMulti.vue2.js +2 -0
  700. package/dist/components/PlAutocompleteMulti/PlAutocompleteMulti.vue2.js.map +1 -1
  701. package/dist/components/PlBtnAccent/PlBtnAccent.js +2 -0
  702. package/dist/components/PlBtnAccent/PlBtnAccent.vue2.js +1 -0
  703. package/dist/components/PlBtnDanger/PlBtnDanger.js +2 -0
  704. package/dist/components/PlBtnDanger/PlBtnDanger.vue2.js +1 -0
  705. package/dist/components/PlBtnGhost/PlBtnGhost.js +2 -0
  706. package/dist/components/PlBtnGhost/PlBtnGhost.vue2.js +2 -0
  707. package/dist/components/PlBtnGhost/PlBtnGhost.vue2.js.map +1 -1
  708. package/dist/components/PlBtnGroup/PlBtnGroup.js +2 -0
  709. package/dist/components/PlBtnGroup/PlBtnGroup.vue2.js +2 -0
  710. package/dist/components/PlBtnGroup/PlBtnGroup.vue2.js.map +1 -1
  711. package/dist/components/PlBtnLink/PlBtnLink.js +2 -0
  712. package/dist/components/PlBtnLink/PlBtnLink.vue2.js +2 -0
  713. package/dist/components/PlBtnLink/PlBtnLink.vue2.js.map +1 -1
  714. package/dist/components/PlBtnPrimary/PlBtnPrimary.js +2 -0
  715. package/dist/components/PlBtnPrimary/PlBtnPrimary.vue2.js +1 -0
  716. package/dist/components/PlBtnSecondary/PlBtnSecondary.js +2 -0
  717. package/dist/components/PlBtnSecondary/PlBtnSecondary.vue2.js +1 -0
  718. package/dist/components/PlBtnSplit/PlBtnSplit.js +2 -0
  719. package/dist/components/PlBtnSplit/PlBtnSplit.vue2.js +2 -0
  720. package/dist/components/PlBtnSplit/PlBtnSplit.vue2.js.map +1 -1
  721. package/dist/components/PlChartHistogram/PlChartHistogram.js +1 -0
  722. package/dist/components/PlChartHistogram/PlChartHistogram.style.js +1 -0
  723. package/dist/components/PlChartHistogram/PlChartHistogram.vue2.js +2 -0
  724. package/dist/components/PlChartHistogram/PlChartHistogram.vue2.js.map +1 -1
  725. package/dist/components/PlChartHistogram/createGridlines.js +2 -0
  726. package/dist/components/PlChartHistogram/createGridlines.js.map +1 -1
  727. package/dist/components/PlChartHistogram/createLabels.js +2 -0
  728. package/dist/components/PlChartHistogram/createLabels.js.map +1 -1
  729. package/dist/components/PlChartHistogram/createSvgContainer.js +2 -0
  730. package/dist/components/PlChartHistogram/createSvgContainer.js.map +1 -1
  731. package/dist/components/PlChartHistogram/drawBins.js +2 -0
  732. package/dist/components/PlChartHistogram/drawBins.js.map +1 -1
  733. package/dist/components/PlChartHistogram/drawThreshold.js +2 -0
  734. package/dist/components/PlChartHistogram/drawThreshold.js.map +1 -1
  735. package/dist/components/PlChartHistogram/histogram.js +2 -0
  736. package/dist/components/PlChartHistogram/histogram.js.map +1 -1
  737. package/dist/components/PlChartHistogram/logspace.js +2 -0
  738. package/dist/components/PlChartHistogram/logspace.js.map +1 -1
  739. package/dist/components/PlChartHistogram/normalizeBins.js +2 -0
  740. package/dist/components/PlChartHistogram/normalizeBins.js.map +1 -1
  741. package/dist/components/PlChartStackedBar/Legends.js +1 -0
  742. package/dist/components/PlChartStackedBar/Legends.style.js +1 -0
  743. package/dist/components/PlChartStackedBar/Legends.vue2.js +2 -0
  744. package/dist/components/PlChartStackedBar/Legends.vue2.js.map +1 -1
  745. package/dist/components/PlChartStackedBar/PlChartStackedBar.js +1 -0
  746. package/dist/components/PlChartStackedBar/PlChartStackedBar.style.js +1 -0
  747. package/dist/components/PlChartStackedBar/PlChartStackedBar.vue2.js +2 -0
  748. package/dist/components/PlChartStackedBar/PlChartStackedBar.vue2.js.map +1 -1
  749. package/dist/components/PlChartStackedBar/PlChartStackedBarCompact.js +1 -0
  750. package/dist/components/PlChartStackedBar/PlChartStackedBarCompact.style.js +1 -0
  751. package/dist/components/PlChartStackedBar/PlChartStackedBarCompact.vue2.js +2 -0
  752. package/dist/components/PlChartStackedBar/PlChartStackedBarCompact.vue2.js.map +1 -1
  753. package/dist/components/PlChartStackedBar/StackedRow.js +1 -0
  754. package/dist/components/PlChartStackedBar/StackedRow.style.js +1 -0
  755. package/dist/components/PlChartStackedBar/StackedRow.vue2.js +2 -0
  756. package/dist/components/PlChartStackedBar/StackedRow.vue2.js.map +1 -1
  757. package/dist/components/PlChartStackedBar/StackedRowCompact.js +1 -0
  758. package/dist/components/PlChartStackedBar/StackedRowCompact.style.js +1 -0
  759. package/dist/components/PlChartStackedBar/StackedRowCompact.vue2.js +2 -0
  760. package/dist/components/PlChartStackedBar/StackedRowCompact.vue2.js.map +1 -1
  761. package/dist/components/PlCheckbox/PlCheckbox.js +2 -0
  762. package/dist/components/PlCheckbox/PlCheckbox.vue2.js +1 -0
  763. package/dist/components/PlCheckbox/PlCheckboxBase.js +2 -0
  764. package/dist/components/PlCheckbox/PlCheckboxBase.vue2.js +2 -0
  765. package/dist/components/PlCheckbox/PlCheckboxBase.vue2.js.map +1 -1
  766. package/dist/components/PlCheckboxGroup/PlCheckboxGroup.js +2 -0
  767. package/dist/components/PlCheckboxGroup/PlCheckboxGroup.vue2.js +2 -0
  768. package/dist/components/PlCheckboxGroup/PlCheckboxGroup.vue2.js.map +1 -1
  769. package/dist/components/PlChip/PlChip.js +2 -0
  770. package/dist/components/PlChip/PlChip.vue2.js +2 -0
  771. package/dist/components/PlChip/PlChip.vue2.js.map +1 -1
  772. package/dist/components/PlClipboard/PlClipboard.js +1 -0
  773. package/dist/components/PlClipboard/PlClipboard.style.js +1 -0
  774. package/dist/components/PlClipboard/PlClipboard.vue2.js +1 -0
  775. package/dist/components/PlConfirmDialog.js +2 -0
  776. package/dist/components/PlConfirmDialog.vue2.js +2 -0
  777. package/dist/components/PlConfirmDialog.vue2.js.map +1 -1
  778. package/dist/components/PlDialogModal/PlDialogModal.js +2 -0
  779. package/dist/components/PlDialogModal/PlDialogModal.vue2.js +2 -0
  780. package/dist/components/PlDialogModal/PlDialogModal.vue2.js.map +1 -1
  781. package/dist/components/PlDropdown/OptionList.js +2 -0
  782. package/dist/components/PlDropdown/OptionList.vue2.js +2 -0
  783. package/dist/components/PlDropdown/OptionList.vue2.js.map +1 -1
  784. package/dist/components/PlDropdown/PlDropdown.js +2 -0
  785. package/dist/components/PlDropdown/PlDropdown.vue2.js +2 -0
  786. package/dist/components/PlDropdown/PlDropdown.vue2.js.map +1 -1
  787. package/dist/components/PlDropdown/useGroupBy.js +2 -0
  788. package/dist/components/PlDropdown/useGroupBy.js.map +1 -1
  789. package/dist/components/PlDropdownLegacy/PlDropdownLegacy.js +2 -0
  790. package/dist/components/PlDropdownLegacy/PlDropdownLegacy.vue2.js +2 -0
  791. package/dist/components/PlDropdownLegacy/PlDropdownLegacy.vue2.js.map +1 -1
  792. package/dist/components/PlDropdownLine/PlDropdownLine.js +2 -0
  793. package/dist/components/PlDropdownLine/PlDropdownLine.vue2.js +2 -0
  794. package/dist/components/PlDropdownLine/PlDropdownLine.vue2.js.map +1 -1
  795. package/dist/components/PlDropdownLine/ResizableInput.js +2 -0
  796. package/dist/components/PlDropdownLine/ResizableInput.vue2.js +2 -0
  797. package/dist/components/PlDropdownLine/ResizableInput.vue2.js.map +1 -1
  798. package/dist/components/PlDropdownMulti/PlDropdownMulti.js +2 -0
  799. package/dist/components/PlDropdownMulti/PlDropdownMulti.vue2.js +2 -0
  800. package/dist/components/PlDropdownMulti/PlDropdownMulti.vue2.js.map +1 -1
  801. package/dist/components/PlDropdownMultiRef/PlDropdownMultiRef.js +2 -0
  802. package/dist/components/PlDropdownMultiRef/PlDropdownMultiRef.vue2.js +2 -0
  803. package/dist/components/PlDropdownMultiRef/PlDropdownMultiRef.vue2.js.map +1 -1
  804. package/dist/components/PlDropdownRef/PlDropdownRef.js +2 -0
  805. package/dist/components/PlDropdownRef/PlDropdownRef.vue2.js +1 -0
  806. package/dist/components/PlEditableTitle/PlEditableTitle.js +2 -0
  807. package/dist/components/PlEditableTitle/PlEditableTitle.vue2.js +2 -0
  808. package/dist/components/PlEditableTitle/PlEditableTitle.vue2.js.map +1 -1
  809. package/dist/components/PlEditableTitle/pl-editable-title.module.js +1 -0
  810. package/dist/components/PlElementList/PlElementList.js +1 -0
  811. package/dist/components/PlElementList/PlElementList.style.js +1 -0
  812. package/dist/components/PlElementList/PlElementList.vue2.js +2 -0
  813. package/dist/components/PlElementList/PlElementList.vue2.js.map +1 -1
  814. package/dist/components/PlElementList/PlElementListItem.js +1 -0
  815. package/dist/components/PlElementList/PlElementListItem.style.js +1 -0
  816. package/dist/components/PlElementList/PlElementListItem.vue2.js +2 -0
  817. package/dist/components/PlElementList/PlElementListItem.vue2.js.map +1 -1
  818. package/dist/components/PlElementList/utils.js +3 -1
  819. package/dist/components/PlElementList/utils.js.map +1 -1
  820. package/dist/components/PlErrorAlert/PlErrorAlert.js +1 -0
  821. package/dist/components/PlErrorAlert/PlErrorAlert.style.js +1 -0
  822. package/dist/components/PlErrorAlert/PlErrorAlert.vue2.js +1 -0
  823. package/dist/components/PlErrorBoundary/PlErrorBoundary.js +2 -0
  824. package/dist/components/PlErrorBoundary/PlErrorBoundary.vue2.js +2 -0
  825. package/dist/components/PlErrorBoundary/PlErrorBoundary.vue2.js.map +1 -1
  826. package/dist/components/PlFileDialog/Local.js +2 -0
  827. package/dist/components/PlFileDialog/Local.vue2.js +2 -0
  828. package/dist/components/PlFileDialog/Local.vue2.js.map +1 -1
  829. package/dist/components/PlFileDialog/PlFileDialog.js +2 -0
  830. package/dist/components/PlFileDialog/PlFileDialog.vue2.js +2 -0
  831. package/dist/components/PlFileDialog/PlFileDialog.vue2.js.map +1 -1
  832. package/dist/components/PlFileDialog/Remote.js +2 -0
  833. package/dist/components/PlFileDialog/Remote.vue2.js +2 -0
  834. package/dist/components/PlFileDialog/Remote.vue2.js.map +1 -1
  835. package/dist/components/PlFileDialog/Shortcuts.js +1 -0
  836. package/dist/components/PlFileDialog/Shortcuts.style.js +1 -0
  837. package/dist/components/PlFileDialog/Shortcuts.vue2.js +2 -0
  838. package/dist/components/PlFileDialog/Shortcuts.vue2.js.map +1 -1
  839. package/dist/components/PlFileDialog/pl-file-dialog.module.js +1 -0
  840. package/dist/components/PlFileDialog/remote-helpers.js +4 -2
  841. package/dist/components/PlFileDialog/remote-helpers.js.map +1 -1
  842. package/dist/components/PlFileDialog/utils.js +2 -0
  843. package/dist/components/PlFileDialog/utils.js.map +1 -1
  844. package/dist/components/PlFileInput/PlFileInput.js +2 -0
  845. package/dist/components/PlFileInput/PlFileInput.vue2.js +2 -0
  846. package/dist/components/PlFileInput/PlFileInput.vue2.js.map +1 -1
  847. package/dist/components/PlIcon16/PlIcon16.js +1 -0
  848. package/dist/components/PlIcon16/PlIcon16.style.js +1 -0
  849. package/dist/components/PlIcon16/PlIcon16.vue2.js +2 -0
  850. package/dist/components/PlIcon16/PlIcon16.vue2.js.map +1 -1
  851. package/dist/components/PlIcon24/PlIcon24.js +1 -0
  852. package/dist/components/PlIcon24/PlIcon24.style.js +1 -0
  853. package/dist/components/PlIcon24/PlIcon24.vue2.js +2 -0
  854. package/dist/components/PlIcon24/PlIcon24.vue2.js.map +1 -1
  855. package/dist/components/PlLoaderCircular/PlLoaderCircular.js +2 -0
  856. package/dist/components/PlLoaderCircular/PlLoaderCircular.vue2.js +2 -0
  857. package/dist/components/PlLoaderCircular/PlLoaderCircular.vue2.js.map +1 -1
  858. package/dist/components/PlLoaderLogo.js +1 -0
  859. package/dist/components/PlLoaderLogo.style.js +1 -0
  860. package/dist/components/PlLoaderLogo.vue2.js +2 -0
  861. package/dist/components/PlLoaderLogo.vue2.js.map +1 -1
  862. package/dist/components/PlLogView/PlLogView.js +2 -0
  863. package/dist/components/PlLogView/PlLogView.vue2.js +2 -0
  864. package/dist/components/PlLogView/PlLogView.vue2.js.map +1 -1
  865. package/dist/components/PlLogView/useLogHandle.js +2 -0
  866. package/dist/components/PlLogView/useLogHandle.js.map +1 -1
  867. package/dist/components/PlNotificationAlert/PlNotificationAlert.js +2 -0
  868. package/dist/components/PlNotificationAlert/PlNotificationAlert.vue2.js +2 -0
  869. package/dist/components/PlNotificationAlert/PlNotificationAlert.vue2.js.map +1 -1
  870. package/dist/components/PlNumberField/PlNumberField.js +2 -0
  871. package/dist/components/PlNumberField/PlNumberField.js.map +1 -1
  872. package/dist/components/PlNumberField/PlNumberField.vue.d.ts +1 -1
  873. package/dist/components/PlNumberField/PlNumberField.vue.d.ts.map +1 -1
  874. package/dist/components/PlNumberField/PlNumberField.vue2.js +2 -0
  875. package/dist/components/PlNumberField/PlNumberField.vue2.js.map +1 -1
  876. package/dist/components/PlNumberField/parseNumber.js +2 -11
  877. package/dist/components/PlNumberField/parseNumber.js.map +1 -1
  878. package/dist/components/PlProgressBar/PlProgressBar.js +2 -0
  879. package/dist/components/PlProgressBar/PlProgressBar.vue2.js +2 -0
  880. package/dist/components/PlProgressBar/PlProgressBar.vue2.js.map +1 -1
  881. package/dist/components/PlProgressCell/PlProgressCell.js +2 -0
  882. package/dist/components/PlProgressCell/PlProgressCell.vue2.js +2 -0
  883. package/dist/components/PlProgressCell/PlProgressCell.vue2.js.map +1 -1
  884. package/dist/components/PlRadio/PlRadio.js +1 -0
  885. package/dist/components/PlRadio/PlRadio.style.js +1 -0
  886. package/dist/components/PlRadio/PlRadio.vue2.js +2 -0
  887. package/dist/components/PlRadio/PlRadio.vue2.js.map +1 -1
  888. package/dist/components/PlRadio/PlRadioGroup.js +1 -0
  889. package/dist/components/PlRadio/PlRadioGroup.style.js +1 -0
  890. package/dist/components/PlRadio/PlRadioGroup.vue2.js +2 -0
  891. package/dist/components/PlRadio/PlRadioGroup.vue2.js.map +1 -1
  892. package/dist/components/PlRadio/keys.js +3 -1
  893. package/dist/components/PlRadio/keys.js.map +1 -1
  894. package/dist/components/PlSearchField/PlSearchField.js +1 -0
  895. package/dist/components/PlSearchField/PlSearchField.style.js +1 -0
  896. package/dist/components/PlSearchField/PlSearchField.vue2.js +2 -0
  897. package/dist/components/PlSearchField/PlSearchField.vue2.js.map +1 -1
  898. package/dist/components/PlSectionSeparator/PlSectionSeparator.js +1 -0
  899. package/dist/components/PlSectionSeparator/PlSectionSeparator.style.js +1 -0
  900. package/dist/components/PlSectionSeparator/PlSectionSeparator.vue2.js +2 -0
  901. package/dist/components/PlSectionSeparator/PlSectionSeparator.vue2.js.map +1 -1
  902. package/dist/components/PlSidebar/PlSidebarGroup.js +1 -0
  903. package/dist/components/PlSidebar/PlSidebarGroup.style.js +1 -0
  904. package/dist/components/PlSidebar/PlSidebarGroup.vue2.js +2 -0
  905. package/dist/components/PlSidebar/PlSidebarGroup.vue2.js.map +1 -1
  906. package/dist/components/PlSidebar/PlSidebarItem.js +1 -0
  907. package/dist/components/PlSidebar/PlSidebarItem.style.js +1 -0
  908. package/dist/components/PlSidebar/PlSidebarItem.vue2.js +2 -0
  909. package/dist/components/PlSidebar/PlSidebarItem.vue2.js.map +1 -1
  910. package/dist/components/PlSlideModal/PlPureSlideModal.js +2 -0
  911. package/dist/components/PlSlideModal/PlPureSlideModal.vue2.js +1 -0
  912. package/dist/components/PlSlideModal/PlSlideModal.js +1 -0
  913. package/dist/components/PlSlideModal/PlSlideModal.style.js +1 -0
  914. package/dist/components/PlSlideModal/PlSlideModal.vue2.js +2 -0
  915. package/dist/components/PlSlideModal/PlSlideModal.vue2.js.map +1 -1
  916. package/dist/components/PlSlideModal/props.js +3 -1
  917. package/dist/components/PlSlideModal/props.js.map +1 -1
  918. package/dist/components/PlSplash/PlSplash.js +2 -0
  919. package/dist/components/PlSplash/PlSplash.vue2.js +2 -0
  920. package/dist/components/PlSplash/PlSplash.vue2.js.map +1 -1
  921. package/dist/components/PlSplash/pl-splash.module.js +1 -0
  922. package/dist/components/PlStatusTag/PlStatusTag.js +2 -0
  923. package/dist/components/PlStatusTag/PlStatusTag.vue2.js +2 -0
  924. package/dist/components/PlStatusTag/PlStatusTag.vue2.js.map +1 -1
  925. package/dist/components/PlSvg/PlSvg.js +1 -0
  926. package/dist/components/PlSvg/PlSvg.style.js +1 -0
  927. package/dist/components/PlSvg/PlSvg.vue2.js +2 -0
  928. package/dist/components/PlSvg/PlSvg.vue2.js.map +1 -1
  929. package/dist/components/PlSvg/registry.js +2 -0
  930. package/dist/components/PlSvg/registry.js.map +1 -1
  931. package/dist/components/PlTabs/PlTabs.js +2 -0
  932. package/dist/components/PlTabs/PlTabs.vue2.js +1 -0
  933. package/dist/components/PlTabs/Tab.js +2 -0
  934. package/dist/components/PlTabs/Tab.vue2.js +2 -0
  935. package/dist/components/PlTabs/Tab.vue2.js.map +1 -1
  936. package/dist/components/PlTabs/pl-tabs.module.js +1 -0
  937. package/dist/components/PlTextArea/PlTextArea.js +2 -0
  938. package/dist/components/PlTextArea/PlTextArea.vue2.js +2 -0
  939. package/dist/components/PlTextArea/PlTextArea.vue2.js.map +1 -1
  940. package/dist/components/PlTextField/PlTextField.js +2 -0
  941. package/dist/components/PlTextField/PlTextField.js.map +1 -1
  942. package/dist/components/PlTextField/PlTextField.vue.d.ts +8 -8
  943. package/dist/components/PlTextField/PlTextField.vue.d.ts.map +1 -1
  944. package/dist/components/PlTextField/PlTextField.vue2.js +4 -2
  945. package/dist/components/PlTextField/PlTextField.vue2.js.map +1 -1
  946. package/dist/components/PlToggleSwitch/PlToggleSwitch.js +2 -0
  947. package/dist/components/PlToggleSwitch/PlToggleSwitch.vue2.js +2 -0
  948. package/dist/components/PlToggleSwitch/PlToggleSwitch.vue2.js.map +1 -1
  949. package/dist/components/PlTooltip/PlTooltip.js +1 -0
  950. package/dist/components/PlTooltip/PlTooltip.style.js +1 -0
  951. package/dist/components/PlTooltip/PlTooltip.vue2.js +1 -0
  952. package/dist/components/PlTooltip/global.js +3 -1
  953. package/dist/components/PlTooltip/global.js.map +1 -1
  954. package/dist/components/Scrollable.js +2 -0
  955. package/dist/components/Scrollable.vue2.js +2 -0
  956. package/dist/components/Scrollable.vue2.js.map +1 -1
  957. package/dist/components/Slider.js +2 -0
  958. package/dist/components/Slider.vue2.js +2 -0
  959. package/dist/components/Slider.vue2.js.map +1 -1
  960. package/dist/components/SliderRange.js +2 -0
  961. package/dist/components/SliderRange.vue2.js +2 -0
  962. package/dist/components/SliderRange.vue2.js.map +1 -1
  963. package/dist/components/SliderRangeTriple.js +2 -0
  964. package/dist/components/SliderRangeTriple.vue2.js +2 -0
  965. package/dist/components/SliderRangeTriple.vue2.js.map +1 -1
  966. package/dist/components/TabItem.js +2 -0
  967. package/dist/components/TabItem.vue2.js +2 -0
  968. package/dist/components/TabItem.vue2.js.map +1 -1
  969. package/dist/components/ThemeSwitcher.js +2 -0
  970. package/dist/components/ThemeSwitcher.vue2.js +2 -0
  971. package/dist/components/ThemeSwitcher.vue2.js.map +1 -1
  972. package/dist/components/TransitionSlidePanel.js +2 -0
  973. package/dist/components/TransitionSlidePanel.vue2.js +2 -0
  974. package/dist/components/TransitionSlidePanel.vue2.js.map +1 -1
  975. package/dist/components/VScroll.js +2 -0
  976. package/dist/components/VScroll.vue2.js +2 -0
  977. package/dist/components/VScroll.vue2.js.map +1 -1
  978. package/dist/components/contextMenu/Menu.js +2 -0
  979. package/dist/components/contextMenu/Menu.vue2.js +2 -0
  980. package/dist/components/contextMenu/Menu.vue2.js.map +1 -1
  981. package/dist/components/contextMenu/index.js +2 -0
  982. package/dist/components/contextMenu/index.js.map +1 -1
  983. package/dist/composition/computedCached.js +2 -0
  984. package/dist/composition/computedCached.js.map +1 -1
  985. package/dist/composition/filters/metadata.js +3 -1
  986. package/dist/composition/filters/metadata.js.map +1 -1
  987. package/dist/composition/useClickOutside.js +2 -0
  988. package/dist/composition/useClickOutside.js.map +1 -1
  989. package/dist/composition/useComponentProp.js +2 -30
  990. package/dist/composition/useComponentProp.js.map +1 -1
  991. package/dist/composition/useConfirm.js +2 -0
  992. package/dist/composition/useConfirm.js.map +1 -1
  993. package/dist/composition/useDraggable.js +2 -0
  994. package/dist/composition/useDraggable.js.map +1 -1
  995. package/dist/composition/useEventListener.js +2 -0
  996. package/dist/composition/useEventListener.js.map +1 -1
  997. package/dist/composition/useFilteredList.js +2 -0
  998. package/dist/composition/useFilteredList.js.map +1 -1
  999. package/dist/composition/useFormState.js +2 -0
  1000. package/dist/composition/useFormState.js.map +1 -1
  1001. package/dist/composition/useHover.js +2 -0
  1002. package/dist/composition/useHover.js.map +1 -1
  1003. package/dist/composition/useInterval.js +2 -0
  1004. package/dist/composition/useInterval.js.map +1 -1
  1005. package/dist/composition/useLocalStorage.js +2 -0
  1006. package/dist/composition/useLocalStorage.js.map +1 -1
  1007. package/dist/composition/useMouse.js +2 -0
  1008. package/dist/composition/useMouse.js.map +1 -1
  1009. package/dist/composition/useMouseCapture.js +2 -0
  1010. package/dist/composition/useMouseCapture.js.map +1 -1
  1011. package/dist/composition/usePollingQuery.js +11 -94
  1012. package/dist/composition/usePollingQuery.js.map +1 -1
  1013. package/dist/composition/usePosition.js +2 -0
  1014. package/dist/composition/usePosition.js.map +1 -1
  1015. package/dist/composition/useQuery.js +2 -0
  1016. package/dist/composition/useQuery.js.map +1 -1
  1017. package/dist/composition/useResizeObserver.js +2 -0
  1018. package/dist/composition/useResizeObserver.js.map +1 -1
  1019. package/dist/composition/useRipple.js +2 -0
  1020. package/dist/composition/useRipple.js.map +1 -1
  1021. package/dist/composition/useScroll.js +2 -0
  1022. package/dist/composition/useScroll.js.map +1 -1
  1023. package/dist/composition/useSliderBreakpoints.js +3 -1
  1024. package/dist/composition/useSliderBreakpoints.js.map +1 -1
  1025. package/dist/composition/useSortable.js +2 -0
  1026. package/dist/composition/useSortable.js.map +1 -1
  1027. package/dist/composition/useSortable2.js +2 -9
  1028. package/dist/composition/useSortable2.js.map +1 -1
  1029. package/dist/composition/useTheme.js +2 -0
  1030. package/dist/composition/useTheme.js.map +1 -1
  1031. package/dist/composition/useTransformedModel.js +2 -31
  1032. package/dist/composition/useTransformedModel.js.map +1 -1
  1033. package/dist/composition/useWatchFetch.js +2 -20
  1034. package/dist/composition/useWatchFetch.js.map +1 -1
  1035. package/dist/composition/utils.js +2 -0
  1036. package/dist/composition/utils.js.map +1 -1
  1037. package/dist/composition/watchCached.js +2 -1
  1038. package/dist/demo-site-data/all-css-variables.js +2 -0
  1039. package/dist/demo-site-data/all-css-variables.js.map +1 -1
  1040. package/dist/generated/icons-16.js +3 -1
  1041. package/dist/generated/icons-16.js.map +1 -1
  1042. package/dist/generated/icons-24.js +3 -1
  1043. package/dist/generated/icons-24.js.map +1 -1
  1044. package/dist/global/resizeObserver.js +2 -0
  1045. package/dist/global/resizeObserver.js.map +1 -1
  1046. package/dist/helpers/dom.js +2 -0
  1047. package/dist/helpers/dom.js.map +1 -1
  1048. package/dist/helpers/downloadContent.js +3 -1
  1049. package/dist/helpers/downloadContent.js.map +1 -1
  1050. package/dist/helpers/error.js +2 -0
  1051. package/dist/helpers/error.js.map +1 -1
  1052. package/dist/helpers/functions.js +2 -0
  1053. package/dist/helpers/functions.js.map +1 -1
  1054. package/dist/helpers/index.js +2 -0
  1055. package/dist/helpers/index.js.map +1 -1
  1056. package/dist/helpers/iterators.js +2 -0
  1057. package/dist/helpers/iterators.js.map +1 -1
  1058. package/dist/helpers/math.js +2 -0
  1059. package/dist/helpers/math.js.map +1 -1
  1060. package/dist/helpers/objects.js +2 -0
  1061. package/dist/helpers/objects.js.map +1 -1
  1062. package/dist/helpers/utils.js +2 -0
  1063. package/dist/helpers/utils.js.map +1 -1
  1064. package/dist/index.js +2 -0
  1065. package/dist/index.js.map +1 -1
  1066. package/dist/layout/PlBlockPage/PlBlockPage.js +1 -0
  1067. package/dist/layout/PlBlockPage/PlBlockPage.style.js +1 -0
  1068. package/dist/layout/PlBlockPage/PlBlockPage.vue2.js +2 -0
  1069. package/dist/layout/PlBlockPage/PlBlockPage.vue2.js.map +1 -1
  1070. package/dist/layout/PlBlockPage/PlBlockPageTitleTeleportTarget.js +3 -1
  1071. package/dist/layout/PlBlockPage/PlBlockPageTitleTeleportTarget.js.map +1 -1
  1072. package/dist/layout/PlBlockPage/usePlBlockPageTitleTeleportTarget.js +2 -0
  1073. package/dist/layout/PlBlockPage/usePlBlockPageTitleTeleportTarget.js.map +1 -1
  1074. package/dist/layout/PlContainer/PlContainer.js +2 -0
  1075. package/dist/layout/PlContainer/PlContainer.vue2.js +1 -0
  1076. package/dist/layout/PlGrid/PlGrid.js +2 -0
  1077. package/dist/layout/PlGrid/PlGrid.vue2.js +1 -0
  1078. package/dist/layout/PlPlaceholder/PlPlaceholder.js +1 -0
  1079. package/dist/layout/PlPlaceholder/PlPlaceholder.style.js +1 -0
  1080. package/dist/layout/PlPlaceholder/PlPlaceholder.vue2.js +2 -0
  1081. package/dist/layout/PlPlaceholder/PlPlaceholder.vue2.js.map +1 -1
  1082. package/dist/layout/PlPlaceholder/index.js +3 -1
  1083. package/dist/layout/PlPlaceholder/index.js.map +1 -1
  1084. package/dist/layout/PlPlaceholder/paint-worklet.js +2 -0
  1085. package/dist/layout/PlPlaceholder/paint-worklet.js.map +1 -1
  1086. package/dist/layout/PlRow/PlRow.js +2 -0
  1087. package/dist/layout/PlRow/PlRow.vue2.js +1 -0
  1088. package/dist/layout/PlSpacer/PlSpacer.js +2 -0
  1089. package/dist/layout/PlSpacer/PlSpacer.vue2.js +2 -0
  1090. package/dist/layout/PlSpacer/PlSpacer.vue2.js.map +1 -1
  1091. package/dist/utils/DoubleContour.js +2 -0
  1092. package/dist/utils/DoubleContour.js.map +1 -1
  1093. package/dist/utils/DoubleContour.vue2.js +3 -1
  1094. package/dist/utils/DoubleContour.vue2.js.map +1 -1
  1095. package/dist/utils/DropdownOverlay/DropdownOverlay.js +2 -0
  1096. package/dist/utils/DropdownOverlay/DropdownOverlay.vue2.js +2 -0
  1097. package/dist/utils/DropdownOverlay/DropdownOverlay.vue2.js.map +1 -1
  1098. package/dist/utils/InnerBorder.js +2 -0
  1099. package/dist/utils/InnerBorder.js.map +1 -1
  1100. package/dist/utils/InnerBorder.vue2.js +2 -0
  1101. package/dist/utils/InnerBorder.vue2.js.map +1 -1
  1102. package/dist/utils/PlCloseModalBtn.js +2 -0
  1103. package/dist/utils/PlCloseModalBtn.js.map +1 -1
  1104. package/dist/utils/PlCloseModalBtn.style.js +1 -0
  1105. package/dist/utils/TextLabel.js +2 -0
  1106. package/dist/utils/TextLabel.js.map +1 -1
  1107. package/dist/utils/TextLabel.style.js +1 -0
  1108. package/dist/utils/useLabelNotch.js +2 -3
  1109. package/dist/utils/useLabelNotch.js.map +1 -1
  1110. package/dist/utils/useValidation.js +2 -0
  1111. package/dist/utils/useValidation.js.map +1 -1
  1112. package/package.json +6 -6
  1113. package/src/components/PlNumberField/PlNumberField.vue +1 -1
  1114. package/src/components/PlTextField/PlTextField.vue +8 -8
  1115. package/src/utils/DoubleContour.vue +2 -2
@@ -2,6 +2,7 @@ import e from "../PlBtnGhost/PlBtnGhost.js";
2
2
  import "../PlBtnGhost/index.js";
3
3
  import './pl-notification-alert.css';/* empty css */
4
4
  import { createCommentVNode as t, createElementBlock as n, createElementVNode as r, createVNode as i, defineComponent as a, mergeModels as o, normalizeClass as s, normalizeStyle as c, openBlock as l, renderSlot as u, unref as d, useModel as f, withModifiers as p } from "vue";
5
+ //#region src/components/PlNotificationAlert/PlNotificationAlert.vue?vue&type=script&setup=true&lang.ts
5
6
  var m = { class: "pl-notification-alert__wrapper d-flex text-s" }, h = { class: "pl-notification-alert__content flex-grow-1" }, g = {
6
7
  key: 0,
7
8
  class: "pl-notification-alert__close"
@@ -37,6 +38,7 @@ var m = { class: "pl-notification-alert__wrapper d-flex text-s" }, h = { class:
37
38
  })])) : t("", !0)]), o.$slots.actions ? (l(), n("div", _, [u(o.$slots, "actions")])) : t("", !0)], 6)) : t("", !0);
38
39
  }
39
40
  });
41
+ //#endregion
40
42
  export { v as default };
41
43
 
42
44
  //# sourceMappingURL=PlNotificationAlert.vue2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlNotificationAlert.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../../src/components/PlNotificationAlert/PlNotificationAlert.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { PlBtnGhost } from \"../PlBtnGhost\";\nimport \"./pl-notification-alert.scss\";\n\nconst props = withDefaults(\n defineProps<{\n type?: \"success\" | \"error\" | \"warning\" | \"neutral\";\n width?: string;\n closable?: boolean;\n }>(),\n { type: \"neutral\", width: \"256px\" },\n);\n\nconst model = defineModel({ type: Boolean, default: true });\n\nfunction closeAlert() {\n if (props.closable) {\n model.value = false;\n }\n}\n</script>\n\n<template>\n <div\n v-if=\"model\"\n :class=\"type\"\n :style=\"{ width: `${width}` }\"\n class=\"pl-notification-alert d-flex flex-column gap-16\"\n >\n <div class=\"pl-notification-alert__wrapper d-flex text-s\">\n <div class=\"pl-notification-alert__content flex-grow-1\">\n <slot />\n </div>\n <div v-if=\"closable\" class=\"pl-notification-alert__close\">\n <PlBtnGhost icon=\"close\" @click.stop=\"closeAlert\" />\n </div>\n </div>\n\n <div v-if=\"!!$slots.actions\" class=\"pl-notification-alert__actions d-flex\">\n <slot name=\"actions\" />\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;EAIA,IAAM,IAAQ,GASR,IAAQ,EAAW,GAAA,aAAkC;EAE3D,SAAS,IAAa;AACpB,GAAI,EAAM,aACR,EAAM,QAAQ;;mBAOR,EAAA,SAAA,GAAA,EADR,EAkBM,OAAA;;GAhBH,OAAK,EAAA,CAAE,EAAA,MAEF,kDAAiD,CAAA;GADtD,OAAK,EAAA,EAAA,OAAA,GAAc,EAAA,SAAK,CAAA;MAGzB,EAOM,OAPN,GAOM,CANJ,EAEM,OAFN,GAEM,CADJ,EAAQ,EAAA,QAAA,UAAA,CAAA,CAAA,EAEC,EAAA,YAAA,GAAA,EAAX,EAEM,OAFN,GAEM,CADJ,EAAoD,EAAA,EAAA,EAAA;GAAxC,MAAK;GAAS,SAAK,EAAO,GAAU,CAAA,OAAA,CAAA;uBAIvCA,EAAAA,OAAO,WAAA,GAAA,EAApB,EAEM,OAFN,GAEM,CADJ,EAAuB,EAAA,QAAA,UAAA,CAAA,CAAA,IAAA,EAAA,IAAA,GAAA,CAAA,EAAA,EAAA,IAAA,EAAA,IAAA,GAAA"}
1
+ {"version":3,"file":"PlNotificationAlert.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../../src/components/PlNotificationAlert/PlNotificationAlert.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { PlBtnGhost } from \"../PlBtnGhost\";\nimport \"./pl-notification-alert.scss\";\n\nconst props = withDefaults(\n defineProps<{\n type?: \"success\" | \"error\" | \"warning\" | \"neutral\";\n width?: string;\n closable?: boolean;\n }>(),\n { type: \"neutral\", width: \"256px\" },\n);\n\nconst model = defineModel({ type: Boolean, default: true });\n\nfunction closeAlert() {\n if (props.closable) {\n model.value = false;\n }\n}\n</script>\n\n<template>\n <div\n v-if=\"model\"\n :class=\"type\"\n :style=\"{ width: `${width}` }\"\n class=\"pl-notification-alert d-flex flex-column gap-16\"\n >\n <div class=\"pl-notification-alert__wrapper d-flex text-s\">\n <div class=\"pl-notification-alert__content flex-grow-1\">\n <slot />\n </div>\n <div v-if=\"closable\" class=\"pl-notification-alert__close\">\n <PlBtnGhost icon=\"close\" @click.stop=\"closeAlert\" />\n </div>\n </div>\n\n <div v-if=\"!!$slots.actions\" class=\"pl-notification-alert__actions d-flex\">\n <slot name=\"actions\" />\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;EAIA,IAAM,IAAQ,GASR,IAAQ,EAAW,GAAA,aAAkC;EAE3D,SAAS,IAAa;AACpB,GAAI,EAAM,aACR,EAAM,QAAQ;;mBAOR,EAAA,SAAA,GAAA,EADR,EAkBM,OAAA;;GAhBH,OAAK,EAAA,CAAE,EAAA,MAEF,kDAAiD,CAAA;GADtD,OAAK,EAAA,EAAA,OAAA,GAAc,EAAA,SAAK,CAAA;MAGzB,EAOM,OAPN,GAOM,CANJ,EAEM,OAFN,GAEM,CADJ,EAAQ,EAAA,QAAA,UAAA,CAAA,CAAA,EAEC,EAAA,YAAA,GAAA,EAAX,EAEM,OAFN,GAEM,CADJ,EAAoD,EAAA,EAAA,EAAA;GAAxC,MAAK;GAAS,SAAK,EAAO,GAAU,CAAA,OAAA,CAAA;uBAIvCA,EAAAA,OAAO,WAAA,GAAA,EAApB,EAEM,OAFN,GAEM,CADJ,EAAuB,EAAA,QAAA,UAAA,CAAA,CAAA,IAAA,EAAA,IAAA,GAAA,CAAA,EAAA,EAAA,IAAA,EAAA,IAAA,GAAA"}
@@ -1,5 +1,7 @@
1
1
  import e from "./PlNumberField.vue2.js";
2
+ //#region src/components/PlNumberField/PlNumberField.vue
2
3
  var t = e;
4
+ //#endregion
3
5
  export { t as default };
4
6
 
5
7
  //# sourceMappingURL=PlNumberField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlNumberField.js","names":[],"sources":["../../../src/components/PlNumberField/PlNumberField.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Number input field with increment/decrement buttons, validation, and min/max constraints.\n *\n * @example\n * <PlNumberField v-model=\"price\" :step=\"0.01\" :min-value=\"0\" label=\"Price\" />\n *\n * @example\n * <PlNumberField\n * v-model=\"evenNumber\"\n * :validate=\"(v) => v % 2 !== 0 ? 'Number must be even' : undefined\"\n * label=\"Even Number\"\n * />\n */\nexport default {\n name: \"PlNumberField\",\n};\n</script>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n R extends true | false,\n V extends undefined | number,\n C extends Exclude<V, R extends true ? undefined : never>\n \"\n>\nimport \"./pl-number-field.scss\";\nimport DoubleContour from \"../../utils/DoubleContour.vue\";\nimport { useLabelNotch } from \"../../utils/useLabelNotch\";\nimport { computed, ref, useSlots, watch } from \"vue\";\nimport { PlTooltip } from \"../PlTooltip\";\nimport { PlIcon16 } from \"../PlIcon16\";\nimport { tryParseNumber, numberToDecimalString, validateNumber } from \"./parseNumber\";\n\nconst modelValue = defineModel<V>({ required: true });\n\nconst emit = defineEmits<{\n blur: [value: V];\n focus: [value: V];\n enter: [value: V];\n}>();\n\nconst props = withDefaults(\n defineProps<{\n /** If `true`, the field is required and will show an error if left empty. */\n required?: R;\n /** Label on the top border of the field, empty by default */\n label?: string;\n /** Input placeholder, empty by default */\n placeholder?: string;\n /** Step for increment/decrement buttons, 1 by default */\n step?: number;\n /** If defined - show an error if value is lower */\n minValue?: number;\n /** If defined - show an error if value is higher */\n maxValue?: number;\n /** Input is disabled if true */\n disabled?: boolean;\n /** If true - remove buttons on the right */\n disableSteps?: boolean;\n /** Error message that shows always when it's provided, without other checks */\n errorMessage?: string;\n /** Additional validity check for input value that must return an error text if failed */\n validate?: (v: number) => string | undefined;\n /** If `true`, shows a clear button that resets value to `undefined`. If a function, calls it to get the reset value. */\n clearable?: (R extends true ? never : boolean) | (() => C);\n /** Makes some of corners not rounded */\n groupPosition?:\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\"\n | \"top-left\"\n | \"top-right\"\n | \"bottom-left\"\n | \"bottom-right\"\n | \"middle\";\n }>(),\n { step: 1 },\n);\n\nconst slots = useSlots();\n\nconst rootRef = ref<HTMLElement>();\n\nuseLabelNotch(rootRef);\n\nconst displayText = ref(numberToDecimalString(modelValue.value));\n\n// Sync display when model changes externally (parent, increment/decrement).\n// Skip if the current input already represents the same value.\nwatch(modelValue, (newVal) => {\n const parsed = tryParseNumber(displayText.value);\n if (parsed.value === newVal) return;\n displayText.value = numberToDecimalString(newVal);\n});\n\nfunction handleInput(event: Event) {\n const input = event.target as HTMLInputElement;\n displayText.value = input.value;\n\n const result = tryParseNumber(input.value);\n if (result.value !== undefined) {\n modelValue.value = result.value as V;\n }\n}\n\n// On Enter or blur: if parseable, replace display with canonical decimal string.\n// Converts exponential (1e-5) to plain form (0.00001).\nfunction commitValue() {\n const text = displayText.value.trim();\n const result = tryParseNumber(text);\n\n // Empty or partial (-, ., -.) → clear display and reset model for non-required fields\n if (text === \"\" || (result.value === undefined && result.error === undefined)) {\n displayText.value = \"\";\n if (!props.required) {\n modelValue.value = undefined as V;\n }\n return;\n }\n\n if (result.value !== undefined) {\n modelValue.value = result.value as V;\n displayText.value = numberToDecimalString(result.value);\n }\n}\n\nconst error = computed(() => {\n if (props.errorMessage) return props.errorMessage;\n\n const result = tryParseNumber(displayText.value);\n if (result.error) return result.error;\n if (result.value !== undefined) {\n return validateNumber(result.value, props);\n }\n\n if (props.required && displayText.value.trim() === \"\") {\n return \"Value is required\";\n }\n\n return undefined;\n});\n\nconst canShowClearable = computed(\n () =>\n props.clearable &&\n (modelValue.value !== undefined || displayText.value.trim() !== \"\") &&\n !props.disabled,\n);\n\nfunction clear() {\n if (typeof props.clearable === \"function\") {\n modelValue.value = props.clearable();\n displayText.value = numberToDecimalString(modelValue.value);\n } else {\n modelValue.value = undefined as V;\n displayText.value = \"\";\n }\n}\n\nconst isIncrementDisabled = computed(() => {\n if (error.value) return true;\n return (\n props.maxValue !== undefined &&\n modelValue.value !== undefined &&\n modelValue.value >= props.maxValue\n );\n});\n\nconst isDecrementDisabled = computed(() => {\n if (error.value) return true;\n return (\n props.minValue !== undefined &&\n modelValue.value !== undefined &&\n modelValue.value <= props.minValue\n );\n});\n\nconst multiplier = computed(() => 10 ** (props.step.toString().split(\".\").at(1)?.length ?? 0));\n\nfunction increment() {\n if (isIncrementDisabled.value) return;\n\n let nV: number;\n if (modelValue.value === undefined) {\n nV = props.minValue ?? 0;\n } else {\n nV =\n ((modelValue.value || 0) * multiplier.value + props.step * multiplier.value) /\n multiplier.value;\n }\n\n modelValue.value = (props.maxValue !== undefined ? Math.min(props.maxValue, nV) : nV) as V;\n}\n\nfunction decrement() {\n if (isDecrementDisabled.value) return;\n\n let nV: number;\n if (modelValue.value === undefined) {\n nV = 0;\n } else {\n nV =\n ((modelValue.value || 0) * multiplier.value - props.step * multiplier.value) /\n multiplier.value;\n }\n\n modelValue.value = (props.minValue !== undefined ? Math.max(props.minValue, nV) : nV) as V;\n}\n\nfunction handleBlur() {\n commitValue();\n emit(\"blur\", modelValue.value);\n}\n\nfunction handleFocus() {\n emit(\"focus\", modelValue.value);\n}\n\nfunction handleKeyDown(e: KeyboardEvent) {\n if (e.code === \"Enter\") {\n commitValue();\n emit(\"enter\", modelValue.value);\n }\n\n if ([\"ArrowDown\", \"ArrowUp\"].includes(e.code)) {\n e.preventDefault();\n }\n\n if (!props.disableSteps && e.code === \"ArrowUp\") {\n increment();\n }\n\n if (!props.disableSteps && e.code === \"ArrowDown\") {\n decrement();\n }\n}\n\n// Prevent selecting beyond input content on triple-click etc.\nfunction handleMousedown(ev: MouseEvent) {\n if (ev.detail > 1) {\n ev.preventDefault();\n }\n}\n</script>\n\n<template>\n <div\n ref=\"rootRef\"\n :class=\"{ error: !!error, disabled: disabled }\"\n class=\"pl-number-field d-flex-column\"\n @keydown=\"handleKeyDown\"\n >\n <div class=\"pl-number-field__main-wrapper d-flex\">\n <DoubleContour class=\"pl-number-field__contour\" :group-position=\"groupPosition\" />\n <div class=\"pl-number-field__wrapper flex-grow d-flex flex-align-center\">\n <label v-if=\"label\" class=\"text-description\">\n {{ label }}\n <PlTooltip v-if=\"slots.tooltip\" class=\"info\" position=\"top\">\n <template #tooltip>\n <slot name=\"tooltip\" />\n </template>\n </PlTooltip>\n </label>\n <input\n ref=\"inputRef\"\n type=\"text\"\n inputmode=\"numeric\"\n :value=\"displayText\"\n :disabled=\"disabled\"\n :placeholder=\"placeholder\"\n class=\"text-s flex-grow\"\n @input=\"handleInput\"\n @focusout=\"handleBlur\"\n @focusin=\"handleFocus\"\n />\n <PlIcon16\n v-if=\"canShowClearable\"\n class=\"pl-number-field__clearable\"\n name=\"delete-clear\"\n @click.stop=\"clear\"\n />\n </div>\n <div\n v-if=\"!props.disableSteps\"\n class=\"pl-number-field__icons d-flex-column\"\n @mousedown=\"handleMousedown\"\n >\n <div\n :class=\"{ disabled: isIncrementDisabled }\"\n class=\"pl-number-field__icon d-flex flex-justify-center uc-pointer flex-grow flex-align-center\"\n @click=\"increment\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8 4.93933L13.5303 10.4697L12.4697 11.5303L8 7.06065L3.53033 11.5303L2.46967 10.4697L8 4.93933Z\"\n fill=\"#110529\"\n />\n </svg>\n </div>\n <div\n :class=\"{ disabled: isDecrementDisabled }\"\n class=\"pl-number-field__icon d-flex flex-justify-center uc-pointer flex-grow flex-align-center\"\n @click=\"decrement\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.46967 6.53033L3.53033 5.46967L8 9.93934L12.4697 5.46967L13.5303 6.53033L8 12.0607L2.46967 6.53033Z\"\n fill=\"#110529\"\n />\n </svg>\n </div>\n </div>\n </div>\n <div v-if=\"error\" class=\"pl-number-field__error\">\n {{ error }}\n </div>\n </div>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"PlNumberField.js","names":[],"sources":["../../../src/components/PlNumberField/PlNumberField.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Number input field with increment/decrement buttons, validation, and min/max constraints.\n *\n * @example\n * <PlNumberField v-model=\"price\" :step=\"0.01\" :min-value=\"0\" label=\"Price\" />\n *\n * @example\n * <PlNumberField\n * v-model=\"evenNumber\"\n * :validate=\"(v) => v % 2 !== 0 ? 'Number must be even' : undefined\"\n * label=\"Even Number\"\n * />\n */\nexport default {\n name: \"PlNumberField\",\n};\n</script>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n R extends true | false,\n V extends undefined | number,\n C extends Exclude<V, [R] extends [true] ? undefined : never>\n \"\n>\nimport \"./pl-number-field.scss\";\nimport DoubleContour from \"../../utils/DoubleContour.vue\";\nimport { useLabelNotch } from \"../../utils/useLabelNotch\";\nimport { computed, ref, useSlots, watch } from \"vue\";\nimport { PlTooltip } from \"../PlTooltip\";\nimport { PlIcon16 } from \"../PlIcon16\";\nimport { tryParseNumber, numberToDecimalString, validateNumber } from \"./parseNumber\";\n\nconst modelValue = defineModel<V>({ required: true });\n\nconst emit = defineEmits<{\n blur: [value: V];\n focus: [value: V];\n enter: [value: V];\n}>();\n\nconst props = withDefaults(\n defineProps<{\n /** If `true`, the field is required and will show an error if left empty. */\n required?: R;\n /** Label on the top border of the field, empty by default */\n label?: string;\n /** Input placeholder, empty by default */\n placeholder?: string;\n /** Step for increment/decrement buttons, 1 by default */\n step?: number;\n /** If defined - show an error if value is lower */\n minValue?: number;\n /** If defined - show an error if value is higher */\n maxValue?: number;\n /** Input is disabled if true */\n disabled?: boolean;\n /** If true - remove buttons on the right */\n disableSteps?: boolean;\n /** Error message that shows always when it's provided, without other checks */\n errorMessage?: string;\n /** Additional validity check for input value that must return an error text if failed */\n validate?: (v: number) => string | undefined;\n /** If `true`, shows a clear button that resets value to `undefined`. If a function, calls it to get the reset value. */\n clearable?: (R extends true ? never : boolean) | (() => C);\n /** Makes some of corners not rounded */\n groupPosition?:\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\"\n | \"top-left\"\n | \"top-right\"\n | \"bottom-left\"\n | \"bottom-right\"\n | \"middle\";\n }>(),\n { step: 1 },\n);\n\nconst slots = useSlots();\n\nconst rootRef = ref<HTMLElement>();\n\nuseLabelNotch(rootRef);\n\nconst displayText = ref(numberToDecimalString(modelValue.value));\n\n// Sync display when model changes externally (parent, increment/decrement).\n// Skip if the current input already represents the same value.\nwatch(modelValue, (newVal) => {\n const parsed = tryParseNumber(displayText.value);\n if (parsed.value === newVal) return;\n displayText.value = numberToDecimalString(newVal);\n});\n\nfunction handleInput(event: Event) {\n const input = event.target as HTMLInputElement;\n displayText.value = input.value;\n\n const result = tryParseNumber(input.value);\n if (result.value !== undefined) {\n modelValue.value = result.value as V;\n }\n}\n\n// On Enter or blur: if parseable, replace display with canonical decimal string.\n// Converts exponential (1e-5) to plain form (0.00001).\nfunction commitValue() {\n const text = displayText.value.trim();\n const result = tryParseNumber(text);\n\n // Empty or partial (-, ., -.) → clear display and reset model for non-required fields\n if (text === \"\" || (result.value === undefined && result.error === undefined)) {\n displayText.value = \"\";\n if (!props.required) {\n modelValue.value = undefined as V;\n }\n return;\n }\n\n if (result.value !== undefined) {\n modelValue.value = result.value as V;\n displayText.value = numberToDecimalString(result.value);\n }\n}\n\nconst error = computed(() => {\n if (props.errorMessage) return props.errorMessage;\n\n const result = tryParseNumber(displayText.value);\n if (result.error) return result.error;\n if (result.value !== undefined) {\n return validateNumber(result.value, props);\n }\n\n if (props.required && displayText.value.trim() === \"\") {\n return \"Value is required\";\n }\n\n return undefined;\n});\n\nconst canShowClearable = computed(\n () =>\n props.clearable &&\n (modelValue.value !== undefined || displayText.value.trim() !== \"\") &&\n !props.disabled,\n);\n\nfunction clear() {\n if (typeof props.clearable === \"function\") {\n modelValue.value = props.clearable();\n displayText.value = numberToDecimalString(modelValue.value);\n } else {\n modelValue.value = undefined as V;\n displayText.value = \"\";\n }\n}\n\nconst isIncrementDisabled = computed(() => {\n if (error.value) return true;\n return (\n props.maxValue !== undefined &&\n modelValue.value !== undefined &&\n modelValue.value >= props.maxValue\n );\n});\n\nconst isDecrementDisabled = computed(() => {\n if (error.value) return true;\n return (\n props.minValue !== undefined &&\n modelValue.value !== undefined &&\n modelValue.value <= props.minValue\n );\n});\n\nconst multiplier = computed(() => 10 ** (props.step.toString().split(\".\").at(1)?.length ?? 0));\n\nfunction increment() {\n if (isIncrementDisabled.value) return;\n\n let nV: number;\n if (modelValue.value === undefined) {\n nV = props.minValue ?? 0;\n } else {\n nV =\n ((modelValue.value || 0) * multiplier.value + props.step * multiplier.value) /\n multiplier.value;\n }\n\n modelValue.value = (props.maxValue !== undefined ? Math.min(props.maxValue, nV) : nV) as V;\n}\n\nfunction decrement() {\n if (isDecrementDisabled.value) return;\n\n let nV: number;\n if (modelValue.value === undefined) {\n nV = 0;\n } else {\n nV =\n ((modelValue.value || 0) * multiplier.value - props.step * multiplier.value) /\n multiplier.value;\n }\n\n modelValue.value = (props.minValue !== undefined ? Math.max(props.minValue, nV) : nV) as V;\n}\n\nfunction handleBlur() {\n commitValue();\n emit(\"blur\", modelValue.value);\n}\n\nfunction handleFocus() {\n emit(\"focus\", modelValue.value);\n}\n\nfunction handleKeyDown(e: KeyboardEvent) {\n if (e.code === \"Enter\") {\n commitValue();\n emit(\"enter\", modelValue.value);\n }\n\n if ([\"ArrowDown\", \"ArrowUp\"].includes(e.code)) {\n e.preventDefault();\n }\n\n if (!props.disableSteps && e.code === \"ArrowUp\") {\n increment();\n }\n\n if (!props.disableSteps && e.code === \"ArrowDown\") {\n decrement();\n }\n}\n\n// Prevent selecting beyond input content on triple-click etc.\nfunction handleMousedown(ev: MouseEvent) {\n if (ev.detail > 1) {\n ev.preventDefault();\n }\n}\n</script>\n\n<template>\n <div\n ref=\"rootRef\"\n :class=\"{ error: !!error, disabled: disabled }\"\n class=\"pl-number-field d-flex-column\"\n @keydown=\"handleKeyDown\"\n >\n <div class=\"pl-number-field__main-wrapper d-flex\">\n <DoubleContour class=\"pl-number-field__contour\" :group-position=\"groupPosition\" />\n <div class=\"pl-number-field__wrapper flex-grow d-flex flex-align-center\">\n <label v-if=\"label\" class=\"text-description\">\n {{ label }}\n <PlTooltip v-if=\"slots.tooltip\" class=\"info\" position=\"top\">\n <template #tooltip>\n <slot name=\"tooltip\" />\n </template>\n </PlTooltip>\n </label>\n <input\n ref=\"inputRef\"\n type=\"text\"\n inputmode=\"numeric\"\n :value=\"displayText\"\n :disabled=\"disabled\"\n :placeholder=\"placeholder\"\n class=\"text-s flex-grow\"\n @input=\"handleInput\"\n @focusout=\"handleBlur\"\n @focusin=\"handleFocus\"\n />\n <PlIcon16\n v-if=\"canShowClearable\"\n class=\"pl-number-field__clearable\"\n name=\"delete-clear\"\n @click.stop=\"clear\"\n />\n </div>\n <div\n v-if=\"!props.disableSteps\"\n class=\"pl-number-field__icons d-flex-column\"\n @mousedown=\"handleMousedown\"\n >\n <div\n :class=\"{ disabled: isIncrementDisabled }\"\n class=\"pl-number-field__icon d-flex flex-justify-center uc-pointer flex-grow flex-align-center\"\n @click=\"increment\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8 4.93933L13.5303 10.4697L12.4697 11.5303L8 7.06065L3.53033 11.5303L2.46967 10.4697L8 4.93933Z\"\n fill=\"#110529\"\n />\n </svg>\n </div>\n <div\n :class=\"{ disabled: isDecrementDisabled }\"\n class=\"pl-number-field__icon d-flex flex-justify-center uc-pointer flex-grow flex-align-center\"\n @click=\"decrement\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.46967 6.53033L3.53033 5.46967L8 9.93934L12.4697 5.46967L13.5303 6.53033L8 12.0607L2.46967 6.53033Z\"\n fill=\"#110529\"\n />\n </svg>\n </div>\n </div>\n </div>\n <div v-if=\"error\" class=\"pl-number-field__error\">\n {{ error }}\n </div>\n </div>\n</template>\n"],"mappings":""}
@@ -11,7 +11,7 @@
11
11
  * label="Even Number"
12
12
  * />
13
13
  */
14
- declare const _default: <R extends true | false, V extends undefined | number, C extends Exclude<V, R extends true ? undefined : never>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
14
+ declare const _default: <R extends true | false, V extends undefined | number, C extends Exclude<V, [R] extends [true] ? undefined : never>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
15
15
  props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
16
16
  readonly onBlur?: ((value: V) => any) | undefined;
17
17
  readonly onFocus?: ((value: V) => any) | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"PlNumberField.vue.d.ts","sourceRoot":"","sources":["../../../src/components/PlNumberField/PlNumberField.vue"],"names":[],"mappings":"AAoVA,OAAO,wBAAwB,CAAC;AAShC;;;;;;;;;;;;GAYG;yBAEC,CAAC,SAAS,IAAI,GAAG,KAAK,EACtB,CAAC,SAAS,SAAS,GAAG,MAAM,EAC5B,CAAC,SAAS,OAAO,CAAC,CAAC,EAAE,CAAC,SAAS,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC,EAE3D,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,eAAe,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EACjE;WAwaO,mBAAmB,CAAC;;;;;;oBAvMhB,CAAC;;QAtNT,6EAA6E;mBAClE,CAAC;QACZ,6DAA6D;gBACrD,MAAM;QACd,0CAA0C;sBAC5B,MAAM;QACpB,yDAAyD;eAClD,MAAM;QACb,oDAAoD;mBACzC,MAAM;QACjB,oDAAoD;mBACzC,MAAM;QACjB,gCAAgC;mBACrB,OAAO;QAClB,4CAA4C;uBAC7B,OAAO;QACtB,+EAA+E;uBAChE,MAAM;QACrB,yFAAyF;mBAC9E,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS;QAC5C,wHAAwH;oBAC5G,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1D,wCAAwC;wBAEpC,KAAK,GACL,QAAQ,GACR,MAAM,GACN,OAAO,GACP,UAAU,GACV,WAAW,GACX,aAAa,GACb,cAAc,GACd,QAAQ;oBA6X8E,CAAC,4BAA2B;oBACzG,OAAO,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC,GAAG,IAAI;WAClD,GAAG;;yBAnDmB,GAAG;;UAqD1B,8JAAoC;EAEvC,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAE;AAvbzE,wBAub4E;AAG5E,KAAK,mBAAmB,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"PlNumberField.vue.d.ts","sourceRoot":"","sources":["../../../src/components/PlNumberField/PlNumberField.vue"],"names":[],"mappings":"AAoVA,OAAO,wBAAwB,CAAC;AAShC;;;;;;;;;;;;GAYG;yBAEC,CAAC,SAAS,IAAI,GAAG,KAAK,EACtB,CAAC,SAAS,SAAS,GAAG,MAAM,EAC5B,CAAC,SAAS,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC,EAE/D,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,eAAe,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EACjE;WAwaO,mBAAmB,CAAC;;;;;;oBAvMhB,CAAC;;QAtNT,6EAA6E;mBAClE,CAAC;QACZ,6DAA6D;gBACrD,MAAM;QACd,0CAA0C;sBAC5B,MAAM;QACpB,yDAAyD;eAClD,MAAM;QACb,oDAAoD;mBACzC,MAAM;QACjB,oDAAoD;mBACzC,MAAM;QACjB,gCAAgC;mBACrB,OAAO;QAClB,4CAA4C;uBAC7B,OAAO;QACtB,+EAA+E;uBAChE,MAAM;QACrB,yFAAyF;mBAC9E,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS;QAC5C,wHAAwH;oBAC5G,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1D,wCAAwC;wBAEpC,KAAK,GACL,QAAQ,GACR,MAAM,GACN,OAAO,GACP,UAAU,GACV,WAAW,GACX,aAAa,GACb,cAAc,GACd,QAAQ;oBA6X8E,CAAC,4BAA2B;oBACzG,OAAO,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC,GAAG,IAAI;WAClD,GAAG;;yBAnDmB,GAAG;;UAqD1B,8JAAoC;EAEvC,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAE;AAvbzE,wBAub4E;AAG5E,KAAK,mBAAmB,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
@@ -7,6 +7,7 @@ import "../PlIcon16/index.js";
7
7
  import './pl-number-field.css';/* empty css */
8
8
  import { numberToDecimalString as i, tryParseNumber as a, validateNumber as o } from "./parseNumber.js";
9
9
  import { computed as s, createBlock as c, createCommentVNode as l, createElementBlock as u, createElementVNode as d, createTextVNode as f, createVNode as p, defineComponent as m, mergeModels as h, normalizeClass as g, openBlock as _, ref as v, renderSlot as y, toDisplayString as b, unref as x, useModel as S, useSlots as C, watch as w, withCtx as T, withModifiers as E } from "vue";
10
+ //#region src/components/PlNumberField/PlNumberField.vue?vue&type=script&setup=true&lang.ts
10
11
  var D = { class: "pl-number-field__main-wrapper d-flex" }, O = { class: "pl-number-field__wrapper flex-grow d-flex flex-align-center" }, k = {
11
12
  key: 0,
12
13
  class: "text-description"
@@ -172,6 +173,7 @@ var D = { class: "pl-number-field__main-wrapper d-flex" }, O = { class: "pl-numb
172
173
  ]), B.value ? (_(), u("div", j, b(B.value), 1)) : l("", !0)], 34));
173
174
  }
174
175
  });
176
+ //#endregion
175
177
  export { M as default };
176
178
 
177
179
  //# sourceMappingURL=PlNumberField.vue2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlNumberField.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/PlNumberField/PlNumberField.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Number input field with increment/decrement buttons, validation, and min/max constraints.\n *\n * @example\n * <PlNumberField v-model=\"price\" :step=\"0.01\" :min-value=\"0\" label=\"Price\" />\n *\n * @example\n * <PlNumberField\n * v-model=\"evenNumber\"\n * :validate=\"(v) => v % 2 !== 0 ? 'Number must be even' : undefined\"\n * label=\"Even Number\"\n * />\n */\nexport default {\n name: \"PlNumberField\",\n};\n</script>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n R extends true | false,\n V extends undefined | number,\n C extends Exclude<V, R extends true ? undefined : never>\n \"\n>\nimport \"./pl-number-field.scss\";\nimport DoubleContour from \"../../utils/DoubleContour.vue\";\nimport { useLabelNotch } from \"../../utils/useLabelNotch\";\nimport { computed, ref, useSlots, watch } from \"vue\";\nimport { PlTooltip } from \"../PlTooltip\";\nimport { PlIcon16 } from \"../PlIcon16\";\nimport { tryParseNumber, numberToDecimalString, validateNumber } from \"./parseNumber\";\n\nconst modelValue = defineModel<V>({ required: true });\n\nconst emit = defineEmits<{\n blur: [value: V];\n focus: [value: V];\n enter: [value: V];\n}>();\n\nconst props = withDefaults(\n defineProps<{\n /** If `true`, the field is required and will show an error if left empty. */\n required?: R;\n /** Label on the top border of the field, empty by default */\n label?: string;\n /** Input placeholder, empty by default */\n placeholder?: string;\n /** Step for increment/decrement buttons, 1 by default */\n step?: number;\n /** If defined - show an error if value is lower */\n minValue?: number;\n /** If defined - show an error if value is higher */\n maxValue?: number;\n /** Input is disabled if true */\n disabled?: boolean;\n /** If true - remove buttons on the right */\n disableSteps?: boolean;\n /** Error message that shows always when it's provided, without other checks */\n errorMessage?: string;\n /** Additional validity check for input value that must return an error text if failed */\n validate?: (v: number) => string | undefined;\n /** If `true`, shows a clear button that resets value to `undefined`. If a function, calls it to get the reset value. */\n clearable?: (R extends true ? never : boolean) | (() => C);\n /** Makes some of corners not rounded */\n groupPosition?:\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\"\n | \"top-left\"\n | \"top-right\"\n | \"bottom-left\"\n | \"bottom-right\"\n | \"middle\";\n }>(),\n { step: 1 },\n);\n\nconst slots = useSlots();\n\nconst rootRef = ref<HTMLElement>();\n\nuseLabelNotch(rootRef);\n\nconst displayText = ref(numberToDecimalString(modelValue.value));\n\n// Sync display when model changes externally (parent, increment/decrement).\n// Skip if the current input already represents the same value.\nwatch(modelValue, (newVal) => {\n const parsed = tryParseNumber(displayText.value);\n if (parsed.value === newVal) return;\n displayText.value = numberToDecimalString(newVal);\n});\n\nfunction handleInput(event: Event) {\n const input = event.target as HTMLInputElement;\n displayText.value = input.value;\n\n const result = tryParseNumber(input.value);\n if (result.value !== undefined) {\n modelValue.value = result.value as V;\n }\n}\n\n// On Enter or blur: if parseable, replace display with canonical decimal string.\n// Converts exponential (1e-5) to plain form (0.00001).\nfunction commitValue() {\n const text = displayText.value.trim();\n const result = tryParseNumber(text);\n\n // Empty or partial (-, ., -.) → clear display and reset model for non-required fields\n if (text === \"\" || (result.value === undefined && result.error === undefined)) {\n displayText.value = \"\";\n if (!props.required) {\n modelValue.value = undefined as V;\n }\n return;\n }\n\n if (result.value !== undefined) {\n modelValue.value = result.value as V;\n displayText.value = numberToDecimalString(result.value);\n }\n}\n\nconst error = computed(() => {\n if (props.errorMessage) return props.errorMessage;\n\n const result = tryParseNumber(displayText.value);\n if (result.error) return result.error;\n if (result.value !== undefined) {\n return validateNumber(result.value, props);\n }\n\n if (props.required && displayText.value.trim() === \"\") {\n return \"Value is required\";\n }\n\n return undefined;\n});\n\nconst canShowClearable = computed(\n () =>\n props.clearable &&\n (modelValue.value !== undefined || displayText.value.trim() !== \"\") &&\n !props.disabled,\n);\n\nfunction clear() {\n if (typeof props.clearable === \"function\") {\n modelValue.value = props.clearable();\n displayText.value = numberToDecimalString(modelValue.value);\n } else {\n modelValue.value = undefined as V;\n displayText.value = \"\";\n }\n}\n\nconst isIncrementDisabled = computed(() => {\n if (error.value) return true;\n return (\n props.maxValue !== undefined &&\n modelValue.value !== undefined &&\n modelValue.value >= props.maxValue\n );\n});\n\nconst isDecrementDisabled = computed(() => {\n if (error.value) return true;\n return (\n props.minValue !== undefined &&\n modelValue.value !== undefined &&\n modelValue.value <= props.minValue\n );\n});\n\nconst multiplier = computed(() => 10 ** (props.step.toString().split(\".\").at(1)?.length ?? 0));\n\nfunction increment() {\n if (isIncrementDisabled.value) return;\n\n let nV: number;\n if (modelValue.value === undefined) {\n nV = props.minValue ?? 0;\n } else {\n nV =\n ((modelValue.value || 0) * multiplier.value + props.step * multiplier.value) /\n multiplier.value;\n }\n\n modelValue.value = (props.maxValue !== undefined ? Math.min(props.maxValue, nV) : nV) as V;\n}\n\nfunction decrement() {\n if (isDecrementDisabled.value) return;\n\n let nV: number;\n if (modelValue.value === undefined) {\n nV = 0;\n } else {\n nV =\n ((modelValue.value || 0) * multiplier.value - props.step * multiplier.value) /\n multiplier.value;\n }\n\n modelValue.value = (props.minValue !== undefined ? Math.max(props.minValue, nV) : nV) as V;\n}\n\nfunction handleBlur() {\n commitValue();\n emit(\"blur\", modelValue.value);\n}\n\nfunction handleFocus() {\n emit(\"focus\", modelValue.value);\n}\n\nfunction handleKeyDown(e: KeyboardEvent) {\n if (e.code === \"Enter\") {\n commitValue();\n emit(\"enter\", modelValue.value);\n }\n\n if ([\"ArrowDown\", \"ArrowUp\"].includes(e.code)) {\n e.preventDefault();\n }\n\n if (!props.disableSteps && e.code === \"ArrowUp\") {\n increment();\n }\n\n if (!props.disableSteps && e.code === \"ArrowDown\") {\n decrement();\n }\n}\n\n// Prevent selecting beyond input content on triple-click etc.\nfunction handleMousedown(ev: MouseEvent) {\n if (ev.detail > 1) {\n ev.preventDefault();\n }\n}\n</script>\n\n<template>\n <div\n ref=\"rootRef\"\n :class=\"{ error: !!error, disabled: disabled }\"\n class=\"pl-number-field d-flex-column\"\n @keydown=\"handleKeyDown\"\n >\n <div class=\"pl-number-field__main-wrapper d-flex\">\n <DoubleContour class=\"pl-number-field__contour\" :group-position=\"groupPosition\" />\n <div class=\"pl-number-field__wrapper flex-grow d-flex flex-align-center\">\n <label v-if=\"label\" class=\"text-description\">\n {{ label }}\n <PlTooltip v-if=\"slots.tooltip\" class=\"info\" position=\"top\">\n <template #tooltip>\n <slot name=\"tooltip\" />\n </template>\n </PlTooltip>\n </label>\n <input\n ref=\"inputRef\"\n type=\"text\"\n inputmode=\"numeric\"\n :value=\"displayText\"\n :disabled=\"disabled\"\n :placeholder=\"placeholder\"\n class=\"text-s flex-grow\"\n @input=\"handleInput\"\n @focusout=\"handleBlur\"\n @focusin=\"handleFocus\"\n />\n <PlIcon16\n v-if=\"canShowClearable\"\n class=\"pl-number-field__clearable\"\n name=\"delete-clear\"\n @click.stop=\"clear\"\n />\n </div>\n <div\n v-if=\"!props.disableSteps\"\n class=\"pl-number-field__icons d-flex-column\"\n @mousedown=\"handleMousedown\"\n >\n <div\n :class=\"{ disabled: isIncrementDisabled }\"\n class=\"pl-number-field__icon d-flex flex-justify-center uc-pointer flex-grow flex-align-center\"\n @click=\"increment\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8 4.93933L13.5303 10.4697L12.4697 11.5303L8 7.06065L3.53033 11.5303L2.46967 10.4697L8 4.93933Z\"\n fill=\"#110529\"\n />\n </svg>\n </div>\n <div\n :class=\"{ disabled: isDecrementDisabled }\"\n class=\"pl-number-field__icon d-flex flex-justify-center uc-pointer flex-grow flex-align-center\"\n @click=\"decrement\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.46967 6.53033L3.53033 5.46967L8 9.93934L12.4697 5.46967L13.5303 6.53033L8 12.0607L2.46967 6.53033Z\"\n fill=\"#110529\"\n />\n </svg>\n </div>\n </div>\n </div>\n <div v-if=\"error\" class=\"pl-number-field__error\">\n {{ error }}\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;CAeE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;EAqBR,IAAM,IAAa,EAAc,GAAA,aAAoB,EAE/C,IAAO,GAMP,IAAQ,GAuCR,IAAQ,GAAU,EAElB,IAAU,GAAkB;AAElC,IAAc,EAAQ;EAEtB,IAAM,IAAc,EAAI,EAAsB,EAAW,MAAM,CAAC;AAIhE,IAAM,IAAa,MAAW;AACb,KAAe,EAAY,MAAM,CACrC,UAAU,MACrB,EAAY,QAAQ,EAAsB,EAAO;IACjD;EAEF,SAAS,EAAY,GAAc;GACjC,IAAM,IAAQ,EAAM;AACpB,KAAY,QAAQ,EAAM;GAE1B,IAAM,IAAS,EAAe,EAAM,MAAM;AAC1C,GAAI,EAAO,UAAU,KAAA,MACnB,EAAW,QAAQ,EAAO;;EAM9B,SAAS,IAAc;GACrB,IAAM,IAAO,EAAY,MAAM,MAAM,EAC/B,IAAS,EAAe,EAAK;AAGnC,OAAI,MAAS,MAAO,EAAO,UAAU,KAAA,KAAa,EAAO,UAAU,KAAA,GAAY;AAE7E,IADA,EAAY,QAAQ,IACf,EAAM,aACT,EAAW,QAAQ,KAAA;AAErB;;AAGF,GAAI,EAAO,UAAU,KAAA,MACnB,EAAW,QAAQ,EAAO,OAC1B,EAAY,QAAQ,EAAsB,EAAO,MAAM;;EAI3D,IAAM,IAAQ,QAAe;AAC3B,OAAI,EAAM,aAAc,QAAO,EAAM;GAErC,IAAM,IAAS,EAAe,EAAY,MAAM;AAChD,OAAI,EAAO,MAAO,QAAO,EAAO;AAChC,OAAI,EAAO,UAAU,KAAA,EACnB,QAAO,EAAe,EAAO,OAAO,EAAM;AAG5C,OAAI,EAAM,YAAY,EAAY,MAAM,MAAM,KAAK,GACjD,QAAO;IAIT,EAEI,IAAmB,QAErB,EAAM,cACL,EAAW,UAAU,KAAA,KAAa,EAAY,MAAM,MAAM,KAAK,OAChE,CAAC,EAAM,SACV;EAED,SAAS,IAAQ;AACf,GAAI,OAAO,EAAM,aAAc,cAC7B,EAAW,QAAQ,EAAM,WAAW,EACpC,EAAY,QAAQ,EAAsB,EAAW,MAAM,KAE3D,EAAW,QAAQ,KAAA,GACnB,EAAY,QAAQ;;EAIxB,IAAM,IAAsB,QACtB,EAAM,QAAc,KAEtB,EAAM,aAAa,KAAA,KACnB,EAAW,UAAU,KAAA,KACrB,EAAW,SAAS,EAAM,SAE5B,EAEI,IAAsB,QACtB,EAAM,QAAc,KAEtB,EAAM,aAAa,KAAA,KACnB,EAAW,UAAU,KAAA,KACrB,EAAW,SAAS,EAAM,SAE5B,EAEI,IAAa,QAAe,OAAO,EAAM,KAAK,UAAU,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,EAAE,UAAU,GAAG;EAE9F,SAAS,IAAY;AACnB,OAAI,EAAoB,MAAO;GAE/B,IAAI;AASJ,GARA,AAGE,IAHE,EAAW,UAAU,KAAA,IAClB,EAAM,YAAY,MAGnB,EAAW,SAAS,KAAK,EAAW,QAAQ,EAAM,OAAO,EAAW,SACtE,EAAW,OAGf,EAAW,QAAS,EAAM,aAAa,KAAA,IAA2C,IAA/B,KAAK,IAAI,EAAM,UAAU,EAAG;;EAGjF,SAAS,IAAY;AACnB,OAAI,EAAoB,MAAO;GAE/B,IAAI;AASJ,GARA,AAGE,IAHE,EAAW,UAAU,KAAA,IAClB,MAGD,EAAW,SAAS,KAAK,EAAW,QAAQ,EAAM,OAAO,EAAW,SACtE,EAAW,OAGf,EAAW,QAAS,EAAM,aAAa,KAAA,IAA2C,IAA/B,KAAK,IAAI,EAAM,UAAU,EAAG;;EAGjF,SAAS,IAAa;AAEpB,GADA,GAAa,EACb,EAAK,QAAQ,EAAW,MAAM;;EAGhC,SAAS,IAAc;AACrB,KAAK,SAAS,EAAW,MAAM;;EAGjC,SAAS,EAAc,GAAkB;AAcvC,GAbI,EAAE,SAAS,YACb,GAAa,EACb,EAAK,SAAS,EAAW,MAAM,GAG7B,CAAC,aAAa,UAAU,CAAC,SAAS,EAAE,KAAK,IAC3C,EAAE,gBAAgB,EAGhB,CAAC,EAAM,gBAAgB,EAAE,SAAS,aACpC,GAAW,EAGT,CAAC,EAAM,gBAAgB,EAAE,SAAS,eACpC,GAAW;;EAKf,SAAS,EAAgB,GAAgB;AACvC,GAAI,EAAG,SAAS,KACd,EAAG,gBAAgB;;yBAMrB,EAsFM,OAAA;YArFA;GAAJ,KAAI;GACH,OAAK,EAAA,CAAA;IAAA,OAAA,CAAA,CAAa,EAAA;IAAK,UAAY,EAAA;IAAQ,EACtC,gCAA+B,CAAA;GACpC,WAAS;MAEV,EA4EM,OA5EN,GA4EM;GA3EJ,EAAkF,GAAA;IAAnE,OAAM;IAA4B,kBAAgB,EAAA;;GACjE,EA2BM,OA3BN,GA2BM;IA1BS,EAAA,SAAA,GAAA,EAAb,EAOQ,SAPR,GAOQ,CAAA,EAAA,EANH,EAAA,MAAK,GAAG,KACX,EAAA,EAAiB,EAAA,EAAK,CAAC,WAAA,GAAA,EAAvB,EAIY,EAAA,EAAA,EAAA;;KAJoB,OAAM;KAAO,UAAS;;KACzC,SAAO,QACO,CAAvB,EAAuB,EAAA,QAAA,UAAA,CAAA,CAAA;;;IAI7B,EAWE,SAAA;KAVA,KAAI;KACJ,MAAK;KACL,WAAU;KACT,OAAO,EAAA;KACP,UAAU,EAAA;KACV,aAAa,EAAA;KACd,OAAM;KACL,SAAO;KACP,YAAU;KACV,WAAS;;IAGJ,EAAA,SAAA,GAAA,EADR,EAKE,EAAA,EAAA,EAAA;;KAHA,OAAM;KACN,MAAK;KACJ,SAAK,EAAO,GAAK,CAAA,OAAA,CAAA;;;GAIb,EAAM,4BAAA,GAAA,EADf,EA6CM,OAAA;;IA3CJ,OAAM;IACL,aAAW;OAEZ,EAmBM,OAAA;IAlBH,OAAK,EAAA,CAAA,EAAA,UAAc,EAAA,OAAmB,EACjC,0FAAyF,CAAA;IAC9F,SAAO;oBAER,EAaM,OAAA;IAZJ,OAAM;IACN,OAAM;IACN,QAAO;IACP,SAAQ;IACR,MAAK;OAEL,EAKE,QAAA;IAJA,aAAU;IACV,aAAU;IACV,GAAE;IACF,MAAK;mBAIX,EAmBM,OAAA;IAlBH,OAAK,EAAA,CAAA,EAAA,UAAc,EAAA,OAAmB,EACjC,0FAAyF,CAAA;IAC9F,SAAO;oBAER,EAaM,OAAA;IAZJ,OAAM;IACN,OAAM;IACN,QAAO;IACP,SAAQ;IACR,MAAK;OAEL,EAKE,QAAA;IAJA,aAAU;IACV,aAAU;IACV,GAAE;IACF,MAAK;;MAMJ,EAAA,SAAA,GAAA,EAAX,EAEM,OAFN,GAEM,EADD,EAAA,MAAK,EAAA,EAAA,IAAA,EAAA,IAAA,GAAA,CAAA,EAAA,GAAA"}
1
+ {"version":3,"file":"PlNumberField.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/PlNumberField/PlNumberField.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Number input field with increment/decrement buttons, validation, and min/max constraints.\n *\n * @example\n * <PlNumberField v-model=\"price\" :step=\"0.01\" :min-value=\"0\" label=\"Price\" />\n *\n * @example\n * <PlNumberField\n * v-model=\"evenNumber\"\n * :validate=\"(v) => v % 2 !== 0 ? 'Number must be even' : undefined\"\n * label=\"Even Number\"\n * />\n */\nexport default {\n name: \"PlNumberField\",\n};\n</script>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n R extends true | false,\n V extends undefined | number,\n C extends Exclude<V, [R] extends [true] ? undefined : never>\n \"\n>\nimport \"./pl-number-field.scss\";\nimport DoubleContour from \"../../utils/DoubleContour.vue\";\nimport { useLabelNotch } from \"../../utils/useLabelNotch\";\nimport { computed, ref, useSlots, watch } from \"vue\";\nimport { PlTooltip } from \"../PlTooltip\";\nimport { PlIcon16 } from \"../PlIcon16\";\nimport { tryParseNumber, numberToDecimalString, validateNumber } from \"./parseNumber\";\n\nconst modelValue = defineModel<V>({ required: true });\n\nconst emit = defineEmits<{\n blur: [value: V];\n focus: [value: V];\n enter: [value: V];\n}>();\n\nconst props = withDefaults(\n defineProps<{\n /** If `true`, the field is required and will show an error if left empty. */\n required?: R;\n /** Label on the top border of the field, empty by default */\n label?: string;\n /** Input placeholder, empty by default */\n placeholder?: string;\n /** Step for increment/decrement buttons, 1 by default */\n step?: number;\n /** If defined - show an error if value is lower */\n minValue?: number;\n /** If defined - show an error if value is higher */\n maxValue?: number;\n /** Input is disabled if true */\n disabled?: boolean;\n /** If true - remove buttons on the right */\n disableSteps?: boolean;\n /** Error message that shows always when it's provided, without other checks */\n errorMessage?: string;\n /** Additional validity check for input value that must return an error text if failed */\n validate?: (v: number) => string | undefined;\n /** If `true`, shows a clear button that resets value to `undefined`. If a function, calls it to get the reset value. */\n clearable?: (R extends true ? never : boolean) | (() => C);\n /** Makes some of corners not rounded */\n groupPosition?:\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\"\n | \"top-left\"\n | \"top-right\"\n | \"bottom-left\"\n | \"bottom-right\"\n | \"middle\";\n }>(),\n { step: 1 },\n);\n\nconst slots = useSlots();\n\nconst rootRef = ref<HTMLElement>();\n\nuseLabelNotch(rootRef);\n\nconst displayText = ref(numberToDecimalString(modelValue.value));\n\n// Sync display when model changes externally (parent, increment/decrement).\n// Skip if the current input already represents the same value.\nwatch(modelValue, (newVal) => {\n const parsed = tryParseNumber(displayText.value);\n if (parsed.value === newVal) return;\n displayText.value = numberToDecimalString(newVal);\n});\n\nfunction handleInput(event: Event) {\n const input = event.target as HTMLInputElement;\n displayText.value = input.value;\n\n const result = tryParseNumber(input.value);\n if (result.value !== undefined) {\n modelValue.value = result.value as V;\n }\n}\n\n// On Enter or blur: if parseable, replace display with canonical decimal string.\n// Converts exponential (1e-5) to plain form (0.00001).\nfunction commitValue() {\n const text = displayText.value.trim();\n const result = tryParseNumber(text);\n\n // Empty or partial (-, ., -.) → clear display and reset model for non-required fields\n if (text === \"\" || (result.value === undefined && result.error === undefined)) {\n displayText.value = \"\";\n if (!props.required) {\n modelValue.value = undefined as V;\n }\n return;\n }\n\n if (result.value !== undefined) {\n modelValue.value = result.value as V;\n displayText.value = numberToDecimalString(result.value);\n }\n}\n\nconst error = computed(() => {\n if (props.errorMessage) return props.errorMessage;\n\n const result = tryParseNumber(displayText.value);\n if (result.error) return result.error;\n if (result.value !== undefined) {\n return validateNumber(result.value, props);\n }\n\n if (props.required && displayText.value.trim() === \"\") {\n return \"Value is required\";\n }\n\n return undefined;\n});\n\nconst canShowClearable = computed(\n () =>\n props.clearable &&\n (modelValue.value !== undefined || displayText.value.trim() !== \"\") &&\n !props.disabled,\n);\n\nfunction clear() {\n if (typeof props.clearable === \"function\") {\n modelValue.value = props.clearable();\n displayText.value = numberToDecimalString(modelValue.value);\n } else {\n modelValue.value = undefined as V;\n displayText.value = \"\";\n }\n}\n\nconst isIncrementDisabled = computed(() => {\n if (error.value) return true;\n return (\n props.maxValue !== undefined &&\n modelValue.value !== undefined &&\n modelValue.value >= props.maxValue\n );\n});\n\nconst isDecrementDisabled = computed(() => {\n if (error.value) return true;\n return (\n props.minValue !== undefined &&\n modelValue.value !== undefined &&\n modelValue.value <= props.minValue\n );\n});\n\nconst multiplier = computed(() => 10 ** (props.step.toString().split(\".\").at(1)?.length ?? 0));\n\nfunction increment() {\n if (isIncrementDisabled.value) return;\n\n let nV: number;\n if (modelValue.value === undefined) {\n nV = props.minValue ?? 0;\n } else {\n nV =\n ((modelValue.value || 0) * multiplier.value + props.step * multiplier.value) /\n multiplier.value;\n }\n\n modelValue.value = (props.maxValue !== undefined ? Math.min(props.maxValue, nV) : nV) as V;\n}\n\nfunction decrement() {\n if (isDecrementDisabled.value) return;\n\n let nV: number;\n if (modelValue.value === undefined) {\n nV = 0;\n } else {\n nV =\n ((modelValue.value || 0) * multiplier.value - props.step * multiplier.value) /\n multiplier.value;\n }\n\n modelValue.value = (props.minValue !== undefined ? Math.max(props.minValue, nV) : nV) as V;\n}\n\nfunction handleBlur() {\n commitValue();\n emit(\"blur\", modelValue.value);\n}\n\nfunction handleFocus() {\n emit(\"focus\", modelValue.value);\n}\n\nfunction handleKeyDown(e: KeyboardEvent) {\n if (e.code === \"Enter\") {\n commitValue();\n emit(\"enter\", modelValue.value);\n }\n\n if ([\"ArrowDown\", \"ArrowUp\"].includes(e.code)) {\n e.preventDefault();\n }\n\n if (!props.disableSteps && e.code === \"ArrowUp\") {\n increment();\n }\n\n if (!props.disableSteps && e.code === \"ArrowDown\") {\n decrement();\n }\n}\n\n// Prevent selecting beyond input content on triple-click etc.\nfunction handleMousedown(ev: MouseEvent) {\n if (ev.detail > 1) {\n ev.preventDefault();\n }\n}\n</script>\n\n<template>\n <div\n ref=\"rootRef\"\n :class=\"{ error: !!error, disabled: disabled }\"\n class=\"pl-number-field d-flex-column\"\n @keydown=\"handleKeyDown\"\n >\n <div class=\"pl-number-field__main-wrapper d-flex\">\n <DoubleContour class=\"pl-number-field__contour\" :group-position=\"groupPosition\" />\n <div class=\"pl-number-field__wrapper flex-grow d-flex flex-align-center\">\n <label v-if=\"label\" class=\"text-description\">\n {{ label }}\n <PlTooltip v-if=\"slots.tooltip\" class=\"info\" position=\"top\">\n <template #tooltip>\n <slot name=\"tooltip\" />\n </template>\n </PlTooltip>\n </label>\n <input\n ref=\"inputRef\"\n type=\"text\"\n inputmode=\"numeric\"\n :value=\"displayText\"\n :disabled=\"disabled\"\n :placeholder=\"placeholder\"\n class=\"text-s flex-grow\"\n @input=\"handleInput\"\n @focusout=\"handleBlur\"\n @focusin=\"handleFocus\"\n />\n <PlIcon16\n v-if=\"canShowClearable\"\n class=\"pl-number-field__clearable\"\n name=\"delete-clear\"\n @click.stop=\"clear\"\n />\n </div>\n <div\n v-if=\"!props.disableSteps\"\n class=\"pl-number-field__icons d-flex-column\"\n @mousedown=\"handleMousedown\"\n >\n <div\n :class=\"{ disabled: isIncrementDisabled }\"\n class=\"pl-number-field__icon d-flex flex-justify-center uc-pointer flex-grow flex-align-center\"\n @click=\"increment\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8 4.93933L13.5303 10.4697L12.4697 11.5303L8 7.06065L3.53033 11.5303L2.46967 10.4697L8 4.93933Z\"\n fill=\"#110529\"\n />\n </svg>\n </div>\n <div\n :class=\"{ disabled: isDecrementDisabled }\"\n class=\"pl-number-field__icon d-flex flex-justify-center uc-pointer flex-grow flex-align-center\"\n @click=\"decrement\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2.46967 6.53033L3.53033 5.46967L8 9.93934L12.4697 5.46967L13.5303 6.53033L8 12.0607L2.46967 6.53033Z\"\n fill=\"#110529\"\n />\n </svg>\n </div>\n </div>\n </div>\n <div v-if=\"error\" class=\"pl-number-field__error\">\n {{ error }}\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;CAeE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;EAqBR,IAAM,IAAa,EAAc,GAAA,aAAoB,EAE/C,IAAO,GAMP,IAAQ,GAuCR,IAAQ,GAAU,EAElB,IAAU,GAAkB;AAElC,IAAc,EAAQ;EAEtB,IAAM,IAAc,EAAI,EAAsB,EAAW,MAAM,CAAC;AAIhE,IAAM,IAAa,MAAW;AACb,KAAe,EAAY,MAAM,CACrC,UAAU,MACrB,EAAY,QAAQ,EAAsB,EAAO;IACjD;EAEF,SAAS,EAAY,GAAc;GACjC,IAAM,IAAQ,EAAM;AACpB,KAAY,QAAQ,EAAM;GAE1B,IAAM,IAAS,EAAe,EAAM,MAAM;AAC1C,GAAI,EAAO,UAAU,KAAA,MACnB,EAAW,QAAQ,EAAO;;EAM9B,SAAS,IAAc;GACrB,IAAM,IAAO,EAAY,MAAM,MAAM,EAC/B,IAAS,EAAe,EAAK;AAGnC,OAAI,MAAS,MAAO,EAAO,UAAU,KAAA,KAAa,EAAO,UAAU,KAAA,GAAY;AAE7E,IADA,EAAY,QAAQ,IACf,EAAM,aACT,EAAW,QAAQ,KAAA;AAErB;;AAGF,GAAI,EAAO,UAAU,KAAA,MACnB,EAAW,QAAQ,EAAO,OAC1B,EAAY,QAAQ,EAAsB,EAAO,MAAM;;EAI3D,IAAM,IAAQ,QAAe;AAC3B,OAAI,EAAM,aAAc,QAAO,EAAM;GAErC,IAAM,IAAS,EAAe,EAAY,MAAM;AAChD,OAAI,EAAO,MAAO,QAAO,EAAO;AAChC,OAAI,EAAO,UAAU,KAAA,EACnB,QAAO,EAAe,EAAO,OAAO,EAAM;AAG5C,OAAI,EAAM,YAAY,EAAY,MAAM,MAAM,KAAK,GACjD,QAAO;IAIT,EAEI,IAAmB,QAErB,EAAM,cACL,EAAW,UAAU,KAAA,KAAa,EAAY,MAAM,MAAM,KAAK,OAChE,CAAC,EAAM,SACV;EAED,SAAS,IAAQ;AACf,GAAI,OAAO,EAAM,aAAc,cAC7B,EAAW,QAAQ,EAAM,WAAW,EACpC,EAAY,QAAQ,EAAsB,EAAW,MAAM,KAE3D,EAAW,QAAQ,KAAA,GACnB,EAAY,QAAQ;;EAIxB,IAAM,IAAsB,QACtB,EAAM,QAAc,KAEtB,EAAM,aAAa,KAAA,KACnB,EAAW,UAAU,KAAA,KACrB,EAAW,SAAS,EAAM,SAE5B,EAEI,IAAsB,QACtB,EAAM,QAAc,KAEtB,EAAM,aAAa,KAAA,KACnB,EAAW,UAAU,KAAA,KACrB,EAAW,SAAS,EAAM,SAE5B,EAEI,IAAa,QAAe,OAAO,EAAM,KAAK,UAAU,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,EAAE,UAAU,GAAG;EAE9F,SAAS,IAAY;AACnB,OAAI,EAAoB,MAAO;GAE/B,IAAI;AASJ,GARA,AAGE,IAHE,EAAW,UAAU,KAAA,IAClB,EAAM,YAAY,MAGnB,EAAW,SAAS,KAAK,EAAW,QAAQ,EAAM,OAAO,EAAW,SACtE,EAAW,OAGf,EAAW,QAAS,EAAM,aAAa,KAAA,IAA2C,IAA/B,KAAK,IAAI,EAAM,UAAU,EAAG;;EAGjF,SAAS,IAAY;AACnB,OAAI,EAAoB,MAAO;GAE/B,IAAI;AASJ,GARA,AAGE,IAHE,EAAW,UAAU,KAAA,IAClB,MAGD,EAAW,SAAS,KAAK,EAAW,QAAQ,EAAM,OAAO,EAAW,SACtE,EAAW,OAGf,EAAW,QAAS,EAAM,aAAa,KAAA,IAA2C,IAA/B,KAAK,IAAI,EAAM,UAAU,EAAG;;EAGjF,SAAS,IAAa;AAEpB,GADA,GAAa,EACb,EAAK,QAAQ,EAAW,MAAM;;EAGhC,SAAS,IAAc;AACrB,KAAK,SAAS,EAAW,MAAM;;EAGjC,SAAS,EAAc,GAAkB;AAcvC,GAbI,EAAE,SAAS,YACb,GAAa,EACb,EAAK,SAAS,EAAW,MAAM,GAG7B,CAAC,aAAa,UAAU,CAAC,SAAS,EAAE,KAAK,IAC3C,EAAE,gBAAgB,EAGhB,CAAC,EAAM,gBAAgB,EAAE,SAAS,aACpC,GAAW,EAGT,CAAC,EAAM,gBAAgB,EAAE,SAAS,eACpC,GAAW;;EAKf,SAAS,EAAgB,GAAgB;AACvC,GAAI,EAAG,SAAS,KACd,EAAG,gBAAgB;;yBAMrB,EAsFM,OAAA;YArFA;GAAJ,KAAI;GACH,OAAK,EAAA,CAAA;IAAA,OAAA,CAAA,CAAa,EAAA;IAAK,UAAY,EAAA;IAAQ,EACtC,gCAA+B,CAAA;GACpC,WAAS;MAEV,EA4EM,OA5EN,GA4EM;GA3EJ,EAAkF,GAAA;IAAnE,OAAM;IAA4B,kBAAgB,EAAA;;GACjE,EA2BM,OA3BN,GA2BM;IA1BS,EAAA,SAAA,GAAA,EAAb,EAOQ,SAPR,GAOQ,CAAA,EAAA,EANH,EAAA,MAAK,GAAG,KACX,EAAA,EAAiB,EAAA,EAAK,CAAC,WAAA,GAAA,EAAvB,EAIY,EAAA,EAAA,EAAA;;KAJoB,OAAM;KAAO,UAAS;;KACzC,SAAO,QACO,CAAvB,EAAuB,EAAA,QAAA,UAAA,CAAA,CAAA;;;IAI7B,EAWE,SAAA;KAVA,KAAI;KACJ,MAAK;KACL,WAAU;KACT,OAAO,EAAA;KACP,UAAU,EAAA;KACV,aAAa,EAAA;KACd,OAAM;KACL,SAAO;KACP,YAAU;KACV,WAAS;;IAGJ,EAAA,SAAA,GAAA,EADR,EAKE,EAAA,EAAA,EAAA;;KAHA,OAAM;KACN,MAAK;KACJ,SAAK,EAAO,GAAK,CAAA,OAAA,CAAA;;;GAIb,EAAM,4BAAA,GAAA,EADf,EA6CM,OAAA;;IA3CJ,OAAM;IACL,aAAW;OAEZ,EAmBM,OAAA;IAlBH,OAAK,EAAA,CAAA,EAAA,UAAc,EAAA,OAAmB,EACjC,0FAAyF,CAAA;IAC9F,SAAO;oBAER,EAaM,OAAA;IAZJ,OAAM;IACN,OAAM;IACN,QAAO;IACP,SAAQ;IACR,MAAK;OAEL,EAKE,QAAA;IAJA,aAAU;IACV,aAAU;IACV,GAAE;IACF,MAAK;mBAIX,EAmBM,OAAA;IAlBH,OAAK,EAAA,CAAA,EAAA,UAAc,EAAA,OAAmB,EACjC,0FAAyF,CAAA;IAC9F,SAAO;oBAER,EAaM,OAAA;IAZJ,OAAM;IACN,OAAM;IACN,QAAO;IACP,SAAQ;IACR,MAAK;OAEL,EAKE,QAAA;IAJA,aAAU;IACV,aAAU;IACV,GAAE;IACF,MAAK;;MAMJ,EAAA,SAAA,GAAA,EAAX,EAEM,OAFN,GAEM,EADD,EAAA,MAAK,EAAA,EAAA,IAAA,EAAA,IAAA,GAAA,CAAA,EAAA,GAAA"}
@@ -1,18 +1,12 @@
1
+ //#region src/components/PlNumberField/parseNumber.ts
1
2
  var e = /^-?\d+(\.\d+)?e[+-]?\d+$/i, t = /^-?\d+(\.\d+)?e[+-]?$/i;
2
- /** "-", ".", "-." — NaN for Number() but clearly in-progress typing */
3
3
  function n(e) {
4
4
  return e === "-" || e === "." || e === "-.";
5
5
  }
6
- /**
7
- * Normalize a decimal string by removing cosmetic differences:
8
- * leading +, leading zeros, trailing zeros after decimal, trailing dot.
9
- * Used to compare user input with canonical float representation.
10
- */
11
6
  function r(e) {
12
7
  let t = "";
13
8
  return e.startsWith("-") ? (t = "-", e = e.slice(1)) : e.startsWith("+") && (e = e.slice(1)), e = e.replace(/^0+(?=\d)/, ""), e.startsWith(".") && (e = "0" + e), e.includes(".") && (e = e.replace(/0+$/, "").replace(/\.$/, "")), e === "" || e === "0" ? "0" : t + e;
14
9
  }
15
- /** Complete partial exponential: "1e" → "1e+0", "1e-" → "1e-0", "1e+" → "1e+0" */
16
10
  function i(e) {
17
11
  return /e$/i.test(e) ? e + "+0" : /e[+-]$/i.test(e) ? e + "0" : e;
18
12
  }
@@ -27,10 +21,6 @@ function a(a) {
27
21
  let c = o(s);
28
22
  return r(a) === c ? { value: s } : { error: `Precision exceeded, actual value: ${c}` };
29
23
  }
30
- /**
31
- * Converts a number to a plain decimal string (no exponential notation).
32
- * E.g. 1e-7 → "0.0000001", 2e+21 → "2000000000000000000000"
33
- */
34
24
  function o(e) {
35
25
  if (e === void 0) return "";
36
26
  let t = String(e);
@@ -44,6 +34,7 @@ function o(e) {
44
34
  function s(e, t) {
45
35
  return t.minValue !== void 0 && e < t.minValue ? `Value must be higher than ${t.minValue}` : t.maxValue !== void 0 && e > t.maxValue ? `Value must be less than ${t.maxValue}` : t.validate?.(e);
46
36
  }
37
+ //#endregion
47
38
  export { o as numberToDecimalString, a as tryParseNumber, s as validateNumber };
48
39
 
49
40
  //# sourceMappingURL=parseNumber.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parseNumber.js","names":[],"sources":["../../../src/components/PlNumberField/parseNumber.ts"],"sourcesContent":["/**\n * Strict number parser. No locale guessing, no normalization.\n * Non-canonical forms (leading zeros, trailing dots, etc.) are accepted —\n * formatting to canonical form happens on blur/enter in the component.\n *\n * Input/output table (covers ~90% of real cases):\n *\n * | Input | Result | Reason |\n * |---------------------|---------------------------------|---------------------------------|\n * | \"\" | {} | empty |\n * | \"-\" | {} | partial | apply blur/enter format\n * | \".\" | {} | partial | apply blur/enter format\n * | \"-.\" | {} | partial | apply blur/enter format\n * | \"123.\" | { value: 123 } | trailing dot | apply blur/enter format\n * | \"1e\" | { value: 1 } | partial exp → 1e+0 | apply blur/enter format\n * | \"1e-\" | { value: 1 } | partial exp → 1e-0 | apply blur/enter format\n * | \"1e+\" | { value: 1 } | partial exp → 1e+0 | apply blur/enter format\n * | \"123\" | { value: 123 } | exact match |\n * | \"-5\" | { value: -5 } | exact match |\n * | \"0.5\" | { value: 0.5 } | exact match |\n * | \"0.0000000001\" | { value: 1e-10 } | decimal form matches |\n * | \"1e-5\" | { value: 0.00001 } | exponential notation | apply blur/enter format\n * | \"2e+10\" | { value: 2e10 } | exponential notation | apply blur/enter format\n * | \".5\" | { value: 0.5 } | not canonical | apply blur/enter format\n * | \"01\" | { value: 1 } | leading zero | apply blur/enter format\n * | \"1.0\" | { value: 1 } | trailing zero | apply blur/enter format\n * | \"1.10\" | { value: 1.1 } | trailing zero | apply blur/enter format\n * | \"+5\" | { value: 5 } | unnecessary plus | apply blur/enter format\n * | \"1,5\" | { error: \"...separator...\" } | comma instead of dot |\n * | \"1.232,111\" | { error: \"...separator...\" } | EU locale format |\n * | \"1.237.62\" | { error: \"...separator...\" } | multiple dots (EU thousands) |\n * | \"555.555.555,100\" | { error: \"...separator...\" } | EU locale format |\n * | \"1,222,333.05\" | { error: \"...separator...\" } | US locale format |\n * | \"abc\" | { error: \"not a number\" } | letters |\n * | \"12abc\" | { error: \"not a number\" } | letters mixed in |\n * | \"1.237.asdf62\" | { error: \"not a number\" } | letters mixed in |\n * | \"9007199254740993\" | { error: \"precision...\" } | integer exceeds safe range |\n * | \"0.1234567890123456789\" | { error: \"precision...\" } | too many digits for float64 |\n */\n\nexport type ParseResult =\n | { value: number; error?: undefined }\n | { value?: undefined; error: string }\n | { value?: undefined; error?: undefined };\n\nconst EXP_RE = /^-?\\d+(\\.\\d+)?e[+-]?\\d+$/i;\nconst EXP_PARTIAL_RE = /^-?\\d+(\\.\\d+)?e[+-]?$/i;\n\n/** \"-\", \".\", \"-.\" — NaN for Number() but clearly in-progress typing */\nfunction isPartialInput(str: string): boolean {\n return str === \"-\" || str === \".\" || str === \"-.\";\n}\n\n/**\n * Normalize a decimal string by removing cosmetic differences:\n * leading +, leading zeros, trailing zeros after decimal, trailing dot.\n * Used to compare user input with canonical float representation.\n */\nfunction normalizeDecimalString(s: string): string {\n let sign = \"\";\n if (s.startsWith(\"-\")) {\n sign = \"-\";\n s = s.slice(1);\n } else if (s.startsWith(\"+\")) {\n s = s.slice(1);\n }\n\n // Remove leading zeros (keep one before decimal point)\n s = s.replace(/^0+(?=\\d)/, \"\");\n if (s.startsWith(\".\")) s = \"0\" + s;\n\n // Remove trailing zeros after decimal point, then trailing dot\n if (s.includes(\".\")) {\n s = s.replace(/0+$/, \"\").replace(/\\.$/, \"\");\n }\n\n if (s === \"\" || s === \"0\") return \"0\";\n\n return sign + s;\n}\n\n/** Complete partial exponential: \"1e\" → \"1e+0\", \"1e-\" → \"1e-0\", \"1e+\" → \"1e+0\" */\nfunction completeExponential(str: string): string {\n if (/e$/i.test(str)) return str + \"+0\";\n if (/e[+-]$/i.test(str)) return str + \"0\";\n return str;\n}\n\nexport function tryParseNumber(str: string): ParseResult {\n str = str.trim();\n if (str === \"\") return {};\n if (isPartialInput(str)) return {};\n\n // Exponential notation (full or partial)\n if (EXP_RE.test(str) || EXP_PARTIAL_RE.test(str)) {\n const completed = completeExponential(str);\n const n = Number(completed);\n if (!Number.isFinite(n)) return { error: \"Value is not a number\" };\n return { value: n };\n }\n\n const n = Number(str);\n if (!Number.isFinite(n)) {\n // Only digits, dots, commas, sign, spaces → likely a locale/format issue\n if (/^[-+]?[\\d.,\\s]+$/.test(str)) {\n return { error: \"Use dot as decimal separator, e.g. 3.14\" };\n }\n return { error: \"Value is not a number\" };\n }\n\n // Precision loss: input has more precision than float64 can represent\n const canonical = numberToDecimalString(n);\n const normalized = normalizeDecimalString(str);\n if (normalized !== canonical) {\n return { error: `Precision exceeded, actual value: ${canonical}` };\n }\n\n return { value: n };\n}\n\n/**\n * Converts a number to a plain decimal string (no exponential notation).\n * E.g. 1e-7 → \"0.0000001\", 2e+21 → \"2000000000000000000000\"\n */\nexport function numberToDecimalString(n: number | undefined): string {\n if (n === undefined) return \"\";\n const s = String(n);\n if (!s.includes(\"e\") && !s.includes(\"E\")) return s;\n try {\n return n.toFixed(20).replace(/\\.?0+$/, \"\");\n } catch {\n return s;\n }\n}\n\nexport function validateNumber(\n value: number,\n props: {\n minValue?: number;\n maxValue?: number;\n validate?: (v: number) => string | undefined;\n },\n): string | undefined {\n if (props.minValue !== undefined && value < props.minValue) {\n return `Value must be higher than ${props.minValue}`;\n }\n if (props.maxValue !== undefined && value > props.maxValue) {\n return `Value must be less than ${props.maxValue}`;\n }\n return props.validate?.(value);\n}\n"],"mappings":"AA6CA,IAAM,IAAS,6BACT,IAAiB;;AAGvB,SAAS,EAAe,GAAsB;AAC5C,QAAO,MAAQ,OAAO,MAAQ,OAAO,MAAQ;;;;;;;AAQ/C,SAAS,EAAuB,GAAmB;CACjD,IAAI,IAAO;AAmBX,QAlBI,EAAE,WAAW,IAAI,IACnB,IAAO,KACP,IAAI,EAAE,MAAM,EAAE,IACL,EAAE,WAAW,IAAI,KAC1B,IAAI,EAAE,MAAM,EAAE,GAIhB,IAAI,EAAE,QAAQ,aAAa,GAAG,EAC1B,EAAE,WAAW,IAAI,KAAE,IAAI,MAAM,IAG7B,EAAE,SAAS,IAAI,KACjB,IAAI,EAAE,QAAQ,OAAO,GAAG,CAAC,QAAQ,OAAO,GAAG,GAGzC,MAAM,MAAM,MAAM,MAAY,MAE3B,IAAO;;;AAIhB,SAAS,EAAoB,GAAqB;AAGhD,QAFI,MAAM,KAAK,EAAI,GAAS,IAAM,OAC9B,UAAU,KAAK,EAAI,GAAS,IAAM,MAC/B;;AAGT,SAAgB,EAAe,GAA0B;AAGvD,KAFA,IAAM,EAAI,MAAM,EACZ,MAAQ,MACR,EAAe,EAAI,CAAE,QAAO,EAAE;AAGlC,KAAI,EAAO,KAAK,EAAI,IAAI,EAAe,KAAK,EAAI,EAAE;EAChD,IAAM,IAAY,EAAoB,EAAI,EACpC,IAAI,OAAO,EAAU;AAE3B,SADK,OAAO,SAAS,EAAE,GAChB,EAAE,OAAO,GAAG,GADa,EAAE,OAAO,yBAAyB;;CAIpE,IAAM,IAAI,OAAO,EAAI;AACrB,KAAI,CAAC,OAAO,SAAS,EAAE,CAKrB,QAHI,mBAAmB,KAAK,EAAI,GACvB,EAAE,OAAO,2CAA2C,GAEtD,EAAE,OAAO,yBAAyB;CAI3C,IAAM,IAAY,EAAsB,EAAE;AAM1C,QALmB,EAAuB,EAAI,KAC3B,IAIZ,EAAE,OAAO,GAAG,GAHV,EAAE,OAAO,qCAAqC,KAAa;;;;;;AAUtE,SAAgB,EAAsB,GAA+B;AACnE,KAAI,MAAM,KAAA,EAAW,QAAO;CAC5B,IAAM,IAAI,OAAO,EAAE;AACnB,KAAI,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC,EAAE,SAAS,IAAI,CAAE,QAAO;AACjD,KAAI;AACF,SAAO,EAAE,QAAQ,GAAG,CAAC,QAAQ,UAAU,GAAG;SACpC;AACN,SAAO;;;AAIX,SAAgB,EACd,GACA,GAKoB;AAOpB,QANI,EAAM,aAAa,KAAA,KAAa,IAAQ,EAAM,WACzC,6BAA6B,EAAM,aAExC,EAAM,aAAa,KAAA,KAAa,IAAQ,EAAM,WACzC,2BAA2B,EAAM,aAEnC,EAAM,WAAW,EAAM"}
1
+ {"version":3,"file":"parseNumber.js","names":[],"sources":["../../../src/components/PlNumberField/parseNumber.ts"],"sourcesContent":["/**\n * Strict number parser. No locale guessing, no normalization.\n * Non-canonical forms (leading zeros, trailing dots, etc.) are accepted —\n * formatting to canonical form happens on blur/enter in the component.\n *\n * Input/output table (covers ~90% of real cases):\n *\n * | Input | Result | Reason |\n * |---------------------|---------------------------------|---------------------------------|\n * | \"\" | {} | empty |\n * | \"-\" | {} | partial | apply blur/enter format\n * | \".\" | {} | partial | apply blur/enter format\n * | \"-.\" | {} | partial | apply blur/enter format\n * | \"123.\" | { value: 123 } | trailing dot | apply blur/enter format\n * | \"1e\" | { value: 1 } | partial exp → 1e+0 | apply blur/enter format\n * | \"1e-\" | { value: 1 } | partial exp → 1e-0 | apply blur/enter format\n * | \"1e+\" | { value: 1 } | partial exp → 1e+0 | apply blur/enter format\n * | \"123\" | { value: 123 } | exact match |\n * | \"-5\" | { value: -5 } | exact match |\n * | \"0.5\" | { value: 0.5 } | exact match |\n * | \"0.0000000001\" | { value: 1e-10 } | decimal form matches |\n * | \"1e-5\" | { value: 0.00001 } | exponential notation | apply blur/enter format\n * | \"2e+10\" | { value: 2e10 } | exponential notation | apply blur/enter format\n * | \".5\" | { value: 0.5 } | not canonical | apply blur/enter format\n * | \"01\" | { value: 1 } | leading zero | apply blur/enter format\n * | \"1.0\" | { value: 1 } | trailing zero | apply blur/enter format\n * | \"1.10\" | { value: 1.1 } | trailing zero | apply blur/enter format\n * | \"+5\" | { value: 5 } | unnecessary plus | apply blur/enter format\n * | \"1,5\" | { error: \"...separator...\" } | comma instead of dot |\n * | \"1.232,111\" | { error: \"...separator...\" } | EU locale format |\n * | \"1.237.62\" | { error: \"...separator...\" } | multiple dots (EU thousands) |\n * | \"555.555.555,100\" | { error: \"...separator...\" } | EU locale format |\n * | \"1,222,333.05\" | { error: \"...separator...\" } | US locale format |\n * | \"abc\" | { error: \"not a number\" } | letters |\n * | \"12abc\" | { error: \"not a number\" } | letters mixed in |\n * | \"1.237.asdf62\" | { error: \"not a number\" } | letters mixed in |\n * | \"9007199254740993\" | { error: \"precision...\" } | integer exceeds safe range |\n * | \"0.1234567890123456789\" | { error: \"precision...\" } | too many digits for float64 |\n */\n\nexport type ParseResult =\n | { value: number; error?: undefined }\n | { value?: undefined; error: string }\n | { value?: undefined; error?: undefined };\n\nconst EXP_RE = /^-?\\d+(\\.\\d+)?e[+-]?\\d+$/i;\nconst EXP_PARTIAL_RE = /^-?\\d+(\\.\\d+)?e[+-]?$/i;\n\n/** \"-\", \".\", \"-.\" — NaN for Number() but clearly in-progress typing */\nfunction isPartialInput(str: string): boolean {\n return str === \"-\" || str === \".\" || str === \"-.\";\n}\n\n/**\n * Normalize a decimal string by removing cosmetic differences:\n * leading +, leading zeros, trailing zeros after decimal, trailing dot.\n * Used to compare user input with canonical float representation.\n */\nfunction normalizeDecimalString(s: string): string {\n let sign = \"\";\n if (s.startsWith(\"-\")) {\n sign = \"-\";\n s = s.slice(1);\n } else if (s.startsWith(\"+\")) {\n s = s.slice(1);\n }\n\n // Remove leading zeros (keep one before decimal point)\n s = s.replace(/^0+(?=\\d)/, \"\");\n if (s.startsWith(\".\")) s = \"0\" + s;\n\n // Remove trailing zeros after decimal point, then trailing dot\n if (s.includes(\".\")) {\n s = s.replace(/0+$/, \"\").replace(/\\.$/, \"\");\n }\n\n if (s === \"\" || s === \"0\") return \"0\";\n\n return sign + s;\n}\n\n/** Complete partial exponential: \"1e\" → \"1e+0\", \"1e-\" → \"1e-0\", \"1e+\" → \"1e+0\" */\nfunction completeExponential(str: string): string {\n if (/e$/i.test(str)) return str + \"+0\";\n if (/e[+-]$/i.test(str)) return str + \"0\";\n return str;\n}\n\nexport function tryParseNumber(str: string): ParseResult {\n str = str.trim();\n if (str === \"\") return {};\n if (isPartialInput(str)) return {};\n\n // Exponential notation (full or partial)\n if (EXP_RE.test(str) || EXP_PARTIAL_RE.test(str)) {\n const completed = completeExponential(str);\n const n = Number(completed);\n if (!Number.isFinite(n)) return { error: \"Value is not a number\" };\n return { value: n };\n }\n\n const n = Number(str);\n if (!Number.isFinite(n)) {\n // Only digits, dots, commas, sign, spaces → likely a locale/format issue\n if (/^[-+]?[\\d.,\\s]+$/.test(str)) {\n return { error: \"Use dot as decimal separator, e.g. 3.14\" };\n }\n return { error: \"Value is not a number\" };\n }\n\n // Precision loss: input has more precision than float64 can represent\n const canonical = numberToDecimalString(n);\n const normalized = normalizeDecimalString(str);\n if (normalized !== canonical) {\n return { error: `Precision exceeded, actual value: ${canonical}` };\n }\n\n return { value: n };\n}\n\n/**\n * Converts a number to a plain decimal string (no exponential notation).\n * E.g. 1e-7 → \"0.0000001\", 2e+21 → \"2000000000000000000000\"\n */\nexport function numberToDecimalString(n: number | undefined): string {\n if (n === undefined) return \"\";\n const s = String(n);\n if (!s.includes(\"e\") && !s.includes(\"E\")) return s;\n try {\n return n.toFixed(20).replace(/\\.?0+$/, \"\");\n } catch {\n return s;\n }\n}\n\nexport function validateNumber(\n value: number,\n props: {\n minValue?: number;\n maxValue?: number;\n validate?: (v: number) => string | undefined;\n },\n): string | undefined {\n if (props.minValue !== undefined && value < props.minValue) {\n return `Value must be higher than ${props.minValue}`;\n }\n if (props.maxValue !== undefined && value > props.maxValue) {\n return `Value must be less than ${props.maxValue}`;\n }\n return props.validate?.(value);\n}\n"],"mappings":";AA6CA,IAAM,IAAS,6BACT,IAAiB;AAGvB,SAAS,EAAe,GAAsB;AAC5C,QAAO,MAAQ,OAAO,MAAQ,OAAO,MAAQ;;AAQ/C,SAAS,EAAuB,GAAmB;CACjD,IAAI,IAAO;AAmBX,QAlBI,EAAE,WAAW,IAAI,IACnB,IAAO,KACP,IAAI,EAAE,MAAM,EAAE,IACL,EAAE,WAAW,IAAI,KAC1B,IAAI,EAAE,MAAM,EAAE,GAIhB,IAAI,EAAE,QAAQ,aAAa,GAAG,EAC1B,EAAE,WAAW,IAAI,KAAE,IAAI,MAAM,IAG7B,EAAE,SAAS,IAAI,KACjB,IAAI,EAAE,QAAQ,OAAO,GAAG,CAAC,QAAQ,OAAO,GAAG,GAGzC,MAAM,MAAM,MAAM,MAAY,MAE3B,IAAO;;AAIhB,SAAS,EAAoB,GAAqB;AAGhD,QAFI,MAAM,KAAK,EAAI,GAAS,IAAM,OAC9B,UAAU,KAAK,EAAI,GAAS,IAAM,MAC/B;;AAGT,SAAgB,EAAe,GAA0B;AAGvD,KAFA,IAAM,EAAI,MAAM,EACZ,MAAQ,MACR,EAAe,EAAI,CAAE,QAAO,EAAE;AAGlC,KAAI,EAAO,KAAK,EAAI,IAAI,EAAe,KAAK,EAAI,EAAE;EAChD,IAAM,IAAY,EAAoB,EAAI,EACpC,IAAI,OAAO,EAAU;AAE3B,SADK,OAAO,SAAS,EAAE,GAChB,EAAE,OAAO,GAAG,GADa,EAAE,OAAO,yBAAyB;;CAIpE,IAAM,IAAI,OAAO,EAAI;AACrB,KAAI,CAAC,OAAO,SAAS,EAAE,CAKrB,QAHI,mBAAmB,KAAK,EAAI,GACvB,EAAE,OAAO,2CAA2C,GAEtD,EAAE,OAAO,yBAAyB;CAI3C,IAAM,IAAY,EAAsB,EAAE;AAM1C,QALmB,EAAuB,EAAI,KAC3B,IAIZ,EAAE,OAAO,GAAG,GAHV,EAAE,OAAO,qCAAqC,KAAa;;AAUtE,SAAgB,EAAsB,GAA+B;AACnE,KAAI,MAAM,KAAA,EAAW,QAAO;CAC5B,IAAM,IAAI,OAAO,EAAE;AACnB,KAAI,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC,EAAE,SAAS,IAAI,CAAE,QAAO;AACjD,KAAI;AACF,SAAO,EAAE,QAAQ,GAAG,CAAC,QAAQ,UAAU,GAAG;SACpC;AACN,SAAO;;;AAIX,SAAgB,EACd,GACA,GAKoB;AAOpB,QANI,EAAM,aAAa,KAAA,KAAa,IAAQ,EAAM,WACzC,6BAA6B,EAAM,aAExC,EAAM,aAAa,KAAA,KAAa,IAAQ,EAAM,WACzC,2BAA2B,EAAM,aAEnC,EAAM,WAAW,EAAM"}
@@ -1,5 +1,7 @@
1
1
  import e from "./PlProgressBar.vue2.js";
2
+ //#region src/components/PlProgressBar/PlProgressBar.vue
2
3
  var t = e;
4
+ //#endregion
3
5
  export { t as default };
4
6
 
5
7
  //# sourceMappingURL=PlProgressBar.js.map
@@ -1,4 +1,5 @@
1
1
  import { computed as e, createCommentVNode as t, createElementBlock as n, createElementVNode as r, defineComponent as i, normalizeStyle as a, openBlock as o, toDisplayString as s } from "vue";
2
+ //#region src/components/PlProgressBar/PlProgressBar.vue?vue&type=script&setup=true&lang.ts
2
3
  var c = {
3
4
  key: 0,
4
5
  class: "ui-progress-bar"
@@ -17,6 +18,7 @@ var c = {
17
18
  }, null, 4), r("div", l, [r("div", u, s(p.value), 1), r("div", d, s(i.progress + "%"), 1)])])) : t("", !0);
18
19
  }
19
20
  });
21
+ //#endregion
20
22
  export { f as default };
21
23
 
22
24
  //# sourceMappingURL=PlProgressBar.vue2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlProgressBar.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/PlProgressBar/PlProgressBar.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from \"vue\";\n\nconst props = withDefaults(\n defineProps<{\n loading: boolean;\n progress: number;\n completeMessage: string;\n }>(),\n { progress: 0, completeMessage: \"Completed\" },\n);\n\nconst readyMsg = computed(() => (props.progress === 100 ? props.completeMessage : \"\"));\n</script>\n\n<template>\n <div v-if=\"loading\" class=\"ui-progress-bar\">\n <div class=\"ui-progress-bar__indicator\" :style=\"{ width: progress + '%' }\" />\n <div class=\"ui-progress-bar__messages d-flex align-center pl-6 pr-6\">\n <div class=\"ui-progress-bar__message flex-grow-1\">{{ readyMsg }}</div>\n <div class=\"ui-progress-bar__percent\">{{ progress + \"%\" }}</div>\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;EAGA,IAAM,IAAQ,GASR,IAAW,QAAgB,EAAM,aAAa,MAAM,EAAM,kBAAkB,GAAI;mBAIzE,EAAA,WAAA,GAAA,EAAX,EAMM,OANN,GAMM,CALJ,EAA6E,OAAA;GAAxE,OAAM;GAA8B,OAAK,EAAA,EAAA,OAAW,EAAA,WAAQ,KAAA,CAAA;eACjE,EAGM,OAHN,GAGM,CAFJ,EAAsE,OAAtE,GAAsE,EAAjB,EAAA,MAAQ,EAAA,EAAA,EAC7D,EAAgE,OAAhE,GAAgE,EAAvB,EAAA,WAAQ,IAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,IAAA,EAAA,IAAA,GAAA"}
1
+ {"version":3,"file":"PlProgressBar.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/PlProgressBar/PlProgressBar.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from \"vue\";\n\nconst props = withDefaults(\n defineProps<{\n loading: boolean;\n progress: number;\n completeMessage: string;\n }>(),\n { progress: 0, completeMessage: \"Completed\" },\n);\n\nconst readyMsg = computed(() => (props.progress === 100 ? props.completeMessage : \"\"));\n</script>\n\n<template>\n <div v-if=\"loading\" class=\"ui-progress-bar\">\n <div class=\"ui-progress-bar__indicator\" :style=\"{ width: progress + '%' }\" />\n <div class=\"ui-progress-bar__messages d-flex align-center pl-6 pr-6\">\n <div class=\"ui-progress-bar__message flex-grow-1\">{{ readyMsg }}</div>\n <div class=\"ui-progress-bar__percent\">{{ progress + \"%\" }}</div>\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAGA,IAAM,IAAQ,GASR,IAAW,QAAgB,EAAM,aAAa,MAAM,EAAM,kBAAkB,GAAI;mBAIzE,EAAA,WAAA,GAAA,EAAX,EAMM,OANN,GAMM,CALJ,EAA6E,OAAA;GAAxE,OAAM;GAA8B,OAAK,EAAA,EAAA,OAAW,EAAA,WAAQ,KAAA,CAAA;eACjE,EAGM,OAHN,GAGM,CAFJ,EAAsE,OAAtE,GAAsE,EAAjB,EAAA,MAAQ,EAAA,EAAA,EAC7D,EAAgE,OAAhE,GAAgE,EAAvB,EAAA,WAAQ,IAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,IAAA,EAAA,IAAA,GAAA"}
@@ -1,5 +1,7 @@
1
1
  import e from "./PlProgressCell.vue2.js";
2
+ //#region src/components/PlProgressCell/PlProgressCell.vue
2
3
  var t = e;
4
+ //#endregion
3
5
  export { t as default };
4
6
 
5
7
  //# sourceMappingURL=PlProgressCell.js.map
@@ -3,6 +3,7 @@ import t from "../PlIcon24/PlIcon24.js";
3
3
  import "../PlMaskIcon24/index.js";
4
4
  import './pl-progress-cell.css';/* empty css */
5
5
  import { Fragment as n, computed as r, createBlock as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, createTextVNode as c, defineComponent as l, normalizeClass as u, normalizeStyle as d, openBlock as f, toDisplayString as p, unref as m } from "vue";
6
+ //#region src/components/PlProgressCell/PlProgressCell.vue?vue&type=script&setup=true&lang.ts
6
7
  var h = {
7
8
  key: 0,
8
9
  class: "progress-cell__infinity-loader"
@@ -36,6 +37,7 @@ var h = {
36
37
  ], 2));
37
38
  }
38
39
  });
40
+ //#endregion
39
41
  export { y as default };
40
42
 
41
43
  //# sourceMappingURL=PlProgressCell.vue2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlProgressCell.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/PlProgressCell/PlProgressCell.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport \"./pl-progress-cell.scss\";\nimport { computed } from \"vue\";\nimport { PlMaskIcon24 } from \"../PlMaskIcon24\";\nimport type { PlProgressCellProps } from \"./types\";\nimport { getErrorMessage } from \"../../helpers/error.ts\";\n\nconst props = withDefaults(defineProps<PlProgressCellProps>(), {\n stage: \"not_started\",\n step: \"\", // main text (left)\n progressString: \"\", // appended text on the right side (right)\n progress: undefined,\n error: undefined,\n});\n\nconst canShowWhiteBg = computed(() => props.stage !== \"not_started\");\n\nconst currentProgress = computed(() =>\n props.stage === \"done\" ? 100 : Math.min(100, props.progress || 0),\n);\n\nconst canShowInfinityLoader = computed(\n () =>\n props.progress === undefined &&\n props.stage !== \"done\" &&\n props.stage !== \"not_started\" &&\n !props.error,\n);\n</script>\n\n<template>\n <div\n :class=\"{\n 'progress-cell': true,\n 'progress-cell__white-bg': canShowWhiteBg,\n error,\n 'not-started': props.stage === 'not_started',\n }\"\n >\n <div v-if=\"canShowInfinityLoader\" class=\"progress-cell__infinity-loader\">\n <div class=\"progress-cell__infinity-gradient\" />\n </div>\n <div\n v-if=\"!canShowInfinityLoader && !error\"\n class=\"progress-cell__indicator\"\n :style=\"{ width: currentProgress + '%' }\"\n />\n <div class=\"progress-cell__body\">\n <div class=\"progress-cell__stage text-s\">\n {{ error ? getErrorMessage(error) : step }}\n </div>\n <div class=\"progress-cell__percentage text-s d-flex align-center justify-end\">\n <PlMaskIcon24 v-if=\"error\" name=\"error\" />\n <template v-if=\"!error\">\n {{ progressString }}\n </template>\n </div>\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;EAOA,IAAM,IAAQ,GAQR,IAAiB,QAAe,EAAM,UAAU,cAAc,EAE9D,IAAkB,QACtB,EAAM,UAAU,SAAS,MAAM,KAAK,IAAI,KAAK,EAAM,YAAY,EAAE,CAClE,EAEK,IAAwB,QAE1B,EAAM,aAAa,KAAA,KACnB,EAAM,UAAU,UAChB,EAAM,UAAU,iBAChB,CAAC,EAAM,MACV;yBAIC,EA2BM,OAAA,EA1BH,OAAK,EAAA;;8BAAkE,EAAA;UAAsB,EAAA;kBAA4B,EAAM,UAAK;;GAO1H,EAAA,SAAA,GAAA,EAAX,EAEM,OAFN,GAEM,CAAA,GAAA,AAAA,EAAA,OAAA,CADJ,EAAgD,OAAA,EAA3C,OAAM,oCAAkC,EAAA,MAAA,GAAA,CAAA,CAAA,CAAA,IAAA,EAAA,IAAA,GAAA;IAGtC,EAAA,SAAqB,CAAK,EAAA,SAAA,GAAA,EADnC,EAIE,OAAA;;IAFA,OAAM;IACL,OAAK,EAAA,EAAA,OAAW,EAAA,QAAe,KAAA,CAAA;;GAElC,EAUM,OAVN,GAUM,CATJ,EAEM,OAFN,GAEM,EADD,EAAA,QAAQ,EAAA,EAAe,CAAC,EAAA,MAAK,GAAI,EAAA,KAAI,EAAA,EAAA,EAE1C,EAKM,OALN,GAKM,CAJgB,EAAA,SAAA,GAAA,EAApB,EAA0C,EAAA,EAAA,EAAA;;IAAf,MAAK;oBACf,EAAA,QACE,EAAA,IAAA,GAAA,IADF,GAAA,EAAjB,EAEW,GAAA,EAAA,KAAA,GAAA,EAAA,CAAA,EAAA,EADN,EAAA,eAAc,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"PlProgressCell.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/PlProgressCell/PlProgressCell.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport \"./pl-progress-cell.scss\";\nimport { computed } from \"vue\";\nimport { PlMaskIcon24 } from \"../PlMaskIcon24\";\nimport type { PlProgressCellProps } from \"./types\";\nimport { getErrorMessage } from \"../../helpers/error.ts\";\n\nconst props = withDefaults(defineProps<PlProgressCellProps>(), {\n stage: \"not_started\",\n step: \"\", // main text (left)\n progressString: \"\", // appended text on the right side (right)\n progress: undefined,\n error: undefined,\n});\n\nconst canShowWhiteBg = computed(() => props.stage !== \"not_started\");\n\nconst currentProgress = computed(() =>\n props.stage === \"done\" ? 100 : Math.min(100, props.progress || 0),\n);\n\nconst canShowInfinityLoader = computed(\n () =>\n props.progress === undefined &&\n props.stage !== \"done\" &&\n props.stage !== \"not_started\" &&\n !props.error,\n);\n</script>\n\n<template>\n <div\n :class=\"{\n 'progress-cell': true,\n 'progress-cell__white-bg': canShowWhiteBg,\n error,\n 'not-started': props.stage === 'not_started',\n }\"\n >\n <div v-if=\"canShowInfinityLoader\" class=\"progress-cell__infinity-loader\">\n <div class=\"progress-cell__infinity-gradient\" />\n </div>\n <div\n v-if=\"!canShowInfinityLoader && !error\"\n class=\"progress-cell__indicator\"\n :style=\"{ width: currentProgress + '%' }\"\n />\n <div class=\"progress-cell__body\">\n <div class=\"progress-cell__stage text-s\">\n {{ error ? getErrorMessage(error) : step }}\n </div>\n <div class=\"progress-cell__percentage text-s d-flex align-center justify-end\">\n <PlMaskIcon24 v-if=\"error\" name=\"error\" />\n <template v-if=\"!error\">\n {{ progressString }}\n </template>\n </div>\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;EAOA,IAAM,IAAQ,GAQR,IAAiB,QAAe,EAAM,UAAU,cAAc,EAE9D,IAAkB,QACtB,EAAM,UAAU,SAAS,MAAM,KAAK,IAAI,KAAK,EAAM,YAAY,EAAE,CAClE,EAEK,IAAwB,QAE1B,EAAM,aAAa,KAAA,KACnB,EAAM,UAAU,UAChB,EAAM,UAAU,iBAChB,CAAC,EAAM,MACV;yBAIC,EA2BM,OAAA,EA1BH,OAAK,EAAA;;8BAAkE,EAAA;UAAsB,EAAA;kBAA4B,EAAM,UAAK;;GAO1H,EAAA,SAAA,GAAA,EAAX,EAEM,OAFN,GAEM,CAAA,GAAA,AAAA,EAAA,OAAA,CADJ,EAAgD,OAAA,EAA3C,OAAM,oCAAkC,EAAA,MAAA,GAAA,CAAA,CAAA,CAAA,IAAA,EAAA,IAAA,GAAA;IAGtC,EAAA,SAAqB,CAAK,EAAA,SAAA,GAAA,EADnC,EAIE,OAAA;;IAFA,OAAM;IACL,OAAK,EAAA,EAAA,OAAW,EAAA,QAAe,KAAA,CAAA;;GAElC,EAUM,OAVN,GAUM,CATJ,EAEM,OAFN,GAEM,EADD,EAAA,QAAQ,EAAA,EAAe,CAAC,EAAA,MAAK,GAAI,EAAA,KAAI,EAAA,EAAA,EAE1C,EAKM,OALN,GAKM,CAJgB,EAAA,SAAA,GAAA,EAApB,EAA0C,EAAA,EAAA,EAAA;;IAAf,MAAK;oBACf,EAAA,QACE,EAAA,IAAA,GAAA,IADF,GAAA,EAAjB,EAEW,GAAA,EAAA,KAAA,GAAA,EAAA,CAAA,EAAA,EADN,EAAA,eAAc,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAAA,CAAA"}
@@ -2,6 +2,7 @@ import e from "../../_virtual/_plugin-vue_export-helper.js";
2
2
  import t from "./PlRadio.vue2.js";
3
3
  import n from "./PlRadio.style.js";
4
4
  var r = /* @__PURE__ */ e(t, [["__cssModules", { $style: n }]]);
5
+ //#endregion
5
6
  export { r as default };
6
7
 
7
8
  //# sourceMappingURL=PlRadio.js.map
@@ -3,6 +3,7 @@ import './PlRadio.vue.css';var e = {
3
3
  input: "_input_u39pc_19",
4
4
  label: "_label_u39pc_53"
5
5
  };
6
+ //#endregion
6
7
  export { e as default };
7
8
 
8
9
  //# sourceMappingURL=PlRadio.style.js.map
@@ -1,5 +1,6 @@
1
1
  import { radioGroupModelKey as e, radioGroupNameKey as t } from "./keys.js";
2
2
  import { createElementBlock as n, createElementVNode as r, createPropsRestProxy as i, defineComponent as a, inject as o, isRef as s, mergeModels as c, mergeProps as l, normalizeClass as u, openBlock as d, renderSlot as f, unref as p, useModel as m, vModelRadio as h, withDirectives as g } from "vue";
3
+ //#region src/components/PlRadio/PlRadio.vue?vue&type=script&setup=true&lang.ts
3
4
  var _ = ["name"], v = /* @__PURE__ */ a({
4
5
  __name: "PlRadio",
5
6
  props: /* @__PURE__ */ c({
@@ -21,6 +22,7 @@ var _ = ["name"], v = /* @__PURE__ */ a({
21
22
  }, v), null, 16, _), [[h, p(b)]]), r("span", { class: u(e.$style.label) }, [f(e.$slots, "default")], 2)], 2));
22
23
  }
23
24
  });
25
+ //#endregion
24
26
  export { v as default };
25
27
 
26
28
  //# sourceMappingURL=PlRadio.vue2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlRadio.vue_vue_type_script_setup_true_lang.js","names":["$style"],"sources":["../../../src/components/PlRadio/PlRadio.vue"],"sourcesContent":["<script setup lang=\"ts\" generic=\"M\">\nimport { inject } from \"vue\";\nimport { radioGroupModelKey, radioGroupNameKey } from \"./keys\";\n// eslint-disable-next-line @typescript-eslint/no-unused-vars -- used by the props documentation\nimport type PlRadioGroup from \"./PlRadioGroup.vue\";\n\nconst standaloneModel = defineModel<M>();\n\nconst { name: standaloneName, ...props } = defineProps<{\n /** Used to group multiple radio controls. Will be ignored if this component is a descendant of a {@link PlRadioGroup}. */\n name?: string;\n /** Value that goes into `v-model`. */\n value?: M;\n /** Whether the radio control is disabled. */\n disabled?: boolean;\n}>();\n\ndefineSlots<{\n /** Label of the radio control. */\n default?(): unknown;\n}>();\n\nconst name = inject(radioGroupNameKey, standaloneName);\nconst model = inject<typeof standaloneModel>(radioGroupModelKey, standaloneModel);\n</script>\n\n<template>\n <label :class=\"$style.container\">\n <input v-model=\"model\" :class=\"$style.input\" type=\"radio\" :name v-bind=\"props\" />\n <span :class=\"$style.label\"><slot /></span>\n </label>\n</template>\n\n<style module>\n.container {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 4px;\n border-radius: 6px;\n transition: all 200ms ease-in-out;\n color: var(--txt-01);\n user-select: none;\n &:hover:not(:has(:disabled)) {\n background: var(--btn-sec-hover-grey);\n }\n &:has(:disabled) {\n color: var(--dis-01);\n }\n}\n\n.input {\n appearance: none;\n position: relative;\n block-size: 24px;\n aspect-ratio: 1;\n margin: 0;\n border-radius: 50%;\n outline: 2px solid transparent;\n color: inherit;\n transition: inherit;\n &:focus {\n outline-color: var(--border-color-focus);\n }\n &::before {\n content: \"\";\n position: absolute;\n inset: 2px;\n border-radius: 50%;\n border: 2px solid;\n }\n &::after {\n content: \"\";\n position: absolute;\n inset: 7.5px;\n border-radius: 50%;\n background-color: currentColor;\n scale: 0;\n transition: inherit;\n }\n &:checked::after {\n scale: 1;\n }\n}\n\n.label {\n padding-inline: 4px;\n line-height: calc(20 / 14);\n font-weight: 500;\n text-box: trim-both cap alphabetic;\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;EAMA,IAAM,IAAkB,EAAc,GAAA,aAAE,EAElC,IAAqC,EAAA,GAAA,CAAA,OAAA,CAOvC,EAOE,IAAO,EAAO,GAAmB,EAAA,KAAe,EAChD,IAAQ,EAA+B,GAAoB,EAAgB;yBAI/E,EAGQ,SAAA,EAHA,OAAK,EAAEA,EAAAA,OAAO,UAAS,EAAA,EAAA,CAAA,EAC7B,EAAiF,SAAjF,EAAiF;mDAA5D,QAAA,IAAA;GAAG,OAAOA,EAAAA,OAAO;GAAO,MAAK;GAAS,MAAA,EAAA,EAAI;KAAS,EAAK,EAAA,MAAA,IAAA,EAAA,EAAA,CAAA,CAAA,GAA7D,EAAA,EAAK,CAAA,CAAA,CAAA,EACrB,EAA2C,QAAA,EAApC,OAAK,EAAEA,EAAAA,OAAO,MAAK,EAAA,EAAA,CAAE,EAAQ,EAAA,QAAA,UAAA,CAAA,EAAA,EAAA,CAAA,EAAA,EAAA"}
1
+ {"version":3,"file":"PlRadio.vue_vue_type_script_setup_true_lang.js","names":["$style"],"sources":["../../../src/components/PlRadio/PlRadio.vue"],"sourcesContent":["<script setup lang=\"ts\" generic=\"M\">\nimport { inject } from \"vue\";\nimport { radioGroupModelKey, radioGroupNameKey } from \"./keys\";\n// eslint-disable-next-line @typescript-eslint/no-unused-vars -- used by the props documentation\nimport type PlRadioGroup from \"./PlRadioGroup.vue\";\n\nconst standaloneModel = defineModel<M>();\n\nconst { name: standaloneName, ...props } = defineProps<{\n /** Used to group multiple radio controls. Will be ignored if this component is a descendant of a {@link PlRadioGroup}. */\n name?: string;\n /** Value that goes into `v-model`. */\n value?: M;\n /** Whether the radio control is disabled. */\n disabled?: boolean;\n}>();\n\ndefineSlots<{\n /** Label of the radio control. */\n default?(): unknown;\n}>();\n\nconst name = inject(radioGroupNameKey, standaloneName);\nconst model = inject<typeof standaloneModel>(radioGroupModelKey, standaloneModel);\n</script>\n\n<template>\n <label :class=\"$style.container\">\n <input v-model=\"model\" :class=\"$style.input\" type=\"radio\" :name v-bind=\"props\" />\n <span :class=\"$style.label\"><slot /></span>\n </label>\n</template>\n\n<style module>\n.container {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 4px;\n border-radius: 6px;\n transition: all 200ms ease-in-out;\n color: var(--txt-01);\n user-select: none;\n &:hover:not(:has(:disabled)) {\n background: var(--btn-sec-hover-grey);\n }\n &:has(:disabled) {\n color: var(--dis-01);\n }\n}\n\n.input {\n appearance: none;\n position: relative;\n block-size: 24px;\n aspect-ratio: 1;\n margin: 0;\n border-radius: 50%;\n outline: 2px solid transparent;\n color: inherit;\n transition: inherit;\n &:focus {\n outline-color: var(--border-color-focus);\n }\n &::before {\n content: \"\";\n position: absolute;\n inset: 2px;\n border-radius: 50%;\n border: 2px solid;\n }\n &::after {\n content: \"\";\n position: absolute;\n inset: 7.5px;\n border-radius: 50%;\n background-color: currentColor;\n scale: 0;\n transition: inherit;\n }\n &:checked::after {\n scale: 1;\n }\n}\n\n.label {\n padding-inline: 4px;\n line-height: calc(20 / 14);\n font-weight: 500;\n text-box: trim-both cap alphabetic;\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;EAMA,IAAM,IAAkB,EAAc,GAAA,aAAE,EAElC,IAAqC,EAAA,GAAA,CAAA,OAAA,CAOvC,EAOE,IAAO,EAAO,GAAmB,EAAA,KAAe,EAChD,IAAQ,EAA+B,GAAoB,EAAgB;yBAI/E,EAGQ,SAAA,EAHA,OAAK,EAAEA,EAAAA,OAAO,UAAS,EAAA,EAAA,CAAA,EAC7B,EAAiF,SAAjF,EAAiF;mDAA5D,QAAA,IAAA;GAAG,OAAOA,EAAAA,OAAO;GAAO,MAAK;GAAS,MAAA,EAAA,EAAI;KAAS,EAAK,EAAA,MAAA,IAAA,EAAA,EAAA,CAAA,CAAA,GAA7D,EAAA,EAAK,CAAA,CAAA,CAAA,EACrB,EAA2C,QAAA,EAApC,OAAK,EAAEA,EAAAA,OAAO,MAAK,EAAA,EAAA,CAAE,EAAQ,EAAA,QAAA,UAAA,CAAA,EAAA,EAAA,CAAA,EAAA,EAAA"}
@@ -2,6 +2,7 @@ import e from "../../_virtual/_plugin-vue_export-helper.js";
2
2
  import t from "./PlRadioGroup.vue2.js";
3
3
  import n from "./PlRadioGroup.style.js";
4
4
  var r = /* @__PURE__ */ e(t, [["__cssModules", { $style: n }]]);
5
+ //#endregion
5
6
  export { r as default };
6
7
 
7
8
  //# sourceMappingURL=PlRadioGroup.js.map
@@ -2,6 +2,7 @@ import './PlRadioGroup.vue.css';var e = {
2
2
  container: "_container_17vxs_2",
3
3
  label: "_label_17vxs_7"
4
4
  };
5
+ //#endregion
5
6
  export { e as default };
6
7
 
7
8
  //# sourceMappingURL=PlRadioGroup.style.js.map
@@ -1,6 +1,7 @@
1
1
  import { radioGroupModelKey as e, radioGroupNameKey as t } from "./keys.js";
2
2
  import n from "./PlRadio.js";
3
3
  import { Fragment as r, createBlock as i, createElementBlock as a, createElementVNode as o, createTextVNode as s, defineComponent as c, mergeModels as l, normalizeClass as u, openBlock as d, provide as f, renderList as p, renderSlot as m, toDisplayString as h, unref as g, useModel as _, useSlots as v, withCtx as y } from "vue";
4
+ //#region src/components/PlRadio/PlRadioGroup.vue?vue&type=script&setup=true&lang.ts
4
5
  var b = /* @__PURE__ */ c({
5
6
  __name: "PlRadioGroup",
6
7
  props: /* @__PURE__ */ l({
@@ -30,6 +31,7 @@ var b = /* @__PURE__ */ c({
30
31
  ], 2));
31
32
  }
32
33
  });
34
+ //#endregion
33
35
  export { b as default };
34
36
 
35
37
  //# sourceMappingURL=PlRadioGroup.vue2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlRadioGroup.vue_vue_type_script_setup_true_lang.js","names":["$style"],"sources":["../../../src/components/PlRadio/PlRadioGroup.vue"],"sourcesContent":["<script setup lang=\"ts\" generic=\"M\">\nimport { provide } from \"vue\";\nimport { radioGroupModelKey, radioGroupNameKey } from \"./keys\";\nimport PlRadio from \"./PlRadio.vue\";\n\ntype RadioGroupOption = {\n label: string;\n value: M;\n disabled?: boolean;\n};\n\nconst model = defineModel<M>();\n\nconst props = defineProps<{\n /** Name of the radio group. */\n name?: string;\n /**\n * List of available options.\n * Renders a list of {@link PlRadio} components before the {@link slots.default | default} slot.\n */\n options?: Readonly<RadioGroupOption[]>;\n /** Function to get option's unique key. Use if default mechanism (key = index) is unstable. */\n keyExtractor?: (value: M, index: number) => PropertyKey;\n}>();\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars -- used by the props documentation\nconst slots = defineSlots<{\n /**\n * Can be anything, but usually an array of {@link PlRadio} components.\n * If {@link props.options|options} are provided, they will be rendered before this slot.\n */\n default?(): unknown;\n /** Label of the radio group. */\n label?(): unknown;\n}>();\n\nconst keyExtractor = props.keyExtractor ?? ((_, i) => i);\n\nprovide(radioGroupNameKey, props.name);\nprovide(radioGroupModelKey, model);\n</script>\n\n<template>\n <fieldset :class=\"$style.container\">\n <legend :class=\"$style.label\">\n <slot name=\"label\" />\n </legend>\n <PlRadio\n v-for=\"(option, i) in options\"\n :key=\"keyExtractor(option.value, i)\"\n :value=\"option.value\"\n :disabled=\"option.disabled\"\n >\n {{ option.label }}\n </PlRadio>\n <slot />\n </fieldset>\n</template>\n\n<style module>\n.container {\n margin: 0;\n padding: 0;\n border: none;\n}\n.label {\n margin-block-end: 12px;\n padding: 0;\n color: var(--txt-01);\n line-height: calc(20 / 14);\n font-weight: 500;\n text-box: trim-both cap alphabetic;\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;EAWA,IAAM,IAAQ,EAAc,GAAA,aAAE,EAExB,IAAQ;AAaA,KAQV;EAEJ,IAAM,IAAe,EAAM,kBAAkB,GAAG,MAAM;SAEtD,EAAQ,GAAmB,EAAM,KAAK,EACtC,EAAQ,GAAoB,EAAM,kBAIhC,EAaW,YAAA,EAbA,OAAK,EAAEA,EAAAA,OAAO,UAAS,EAAA,EAAA;GAChC,EAES,UAAA,EAFA,OAAK,EAAEA,EAAAA,OAAO,MAAK,EAAA,EAAA,CAC1B,EAAqB,EAAA,QAAA,QAAA,CAAA,EAAA,EAAA;WAEvB,EAOU,GAAA,MAAA,EANc,EAAA,UAAd,GAAQ,YADlB,EAOU,GAAA;IALP,KAAK,EAAA,EAAY,CAAC,EAAO,OAAO,EAAC;IACjC,OAAO,EAAO;IACd,UAAU,EAAO;;qBAEA,CAAA,EAAA,EAAf,EAAO,MAAK,EAAA,EAAA,CAAA,CAAA;;;GAEjB,EAAQ,EAAA,QAAA,UAAA"}
1
+ {"version":3,"file":"PlRadioGroup.vue_vue_type_script_setup_true_lang.js","names":["$style"],"sources":["../../../src/components/PlRadio/PlRadioGroup.vue"],"sourcesContent":["<script setup lang=\"ts\" generic=\"M\">\nimport { provide } from \"vue\";\nimport { radioGroupModelKey, radioGroupNameKey } from \"./keys\";\nimport PlRadio from \"./PlRadio.vue\";\n\ntype RadioGroupOption = {\n label: string;\n value: M;\n disabled?: boolean;\n};\n\nconst model = defineModel<M>();\n\nconst props = defineProps<{\n /** Name of the radio group. */\n name?: string;\n /**\n * List of available options.\n * Renders a list of {@link PlRadio} components before the {@link slots.default | default} slot.\n */\n options?: Readonly<RadioGroupOption[]>;\n /** Function to get option's unique key. Use if default mechanism (key = index) is unstable. */\n keyExtractor?: (value: M, index: number) => PropertyKey;\n}>();\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars -- used by the props documentation\nconst slots = defineSlots<{\n /**\n * Can be anything, but usually an array of {@link PlRadio} components.\n * If {@link props.options|options} are provided, they will be rendered before this slot.\n */\n default?(): unknown;\n /** Label of the radio group. */\n label?(): unknown;\n}>();\n\nconst keyExtractor = props.keyExtractor ?? ((_, i) => i);\n\nprovide(radioGroupNameKey, props.name);\nprovide(radioGroupModelKey, model);\n</script>\n\n<template>\n <fieldset :class=\"$style.container\">\n <legend :class=\"$style.label\">\n <slot name=\"label\" />\n </legend>\n <PlRadio\n v-for=\"(option, i) in options\"\n :key=\"keyExtractor(option.value, i)\"\n :value=\"option.value\"\n :disabled=\"option.disabled\"\n >\n {{ option.label }}\n </PlRadio>\n <slot />\n </fieldset>\n</template>\n\n<style module>\n.container {\n margin: 0;\n padding: 0;\n border: none;\n}\n.label {\n margin-block-end: 12px;\n padding: 0;\n color: var(--txt-01);\n line-height: calc(20 / 14);\n font-weight: 500;\n text-box: trim-both cap alphabetic;\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;EAWA,IAAM,IAAQ,EAAc,GAAA,aAAE,EAExB,IAAQ;AAaA,KAQV;EAEJ,IAAM,IAAe,EAAM,kBAAkB,GAAG,MAAM;SAEtD,EAAQ,GAAmB,EAAM,KAAK,EACtC,EAAQ,GAAoB,EAAM,kBAIhC,EAaW,YAAA,EAbA,OAAK,EAAEA,EAAAA,OAAO,UAAS,EAAA,EAAA;GAChC,EAES,UAAA,EAFA,OAAK,EAAEA,EAAAA,OAAO,MAAK,EAAA,EAAA,CAC1B,EAAqB,EAAA,QAAA,QAAA,CAAA,EAAA,EAAA;WAEvB,EAOU,GAAA,MAAA,EANc,EAAA,UAAd,GAAQ,YADlB,EAOU,GAAA;IALP,KAAK,EAAA,EAAY,CAAC,EAAO,OAAO,EAAC;IACjC,OAAO,EAAO;IACd,UAAU,EAAO;;qBAEA,CAAA,EAAA,EAAf,EAAO,MAAK,EAAA,EAAA,CAAA,CAAA;;;GAEjB,EAAQ,EAAA,QAAA,UAAA"}
@@ -1,4 +1,6 @@
1
- const e = Symbol(), t = Symbol();
1
+ //#region src/components/PlRadio/keys.ts
2
+ var e = Symbol(), t = Symbol();
3
+ //#endregion
2
4
  export { t as radioGroupModelKey, e as radioGroupNameKey };
3
5
 
4
6
  //# sourceMappingURL=keys.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"keys.js","names":[],"sources":["../../../src/components/PlRadio/keys.ts"],"sourcesContent":["import { type InjectionKey, type ModelRef } from \"vue\";\n\nexport const radioGroupNameKey: InjectionKey<string | undefined> = Symbol();\nexport const radioGroupModelKey: InjectionKey<ModelRef<unknown>> = Symbol();\n"],"mappings":"AAEA,MAAa,IAAsD,QAAQ,EAC9D,IAAsD,QAAQ"}
1
+ {"version":3,"file":"keys.js","names":[],"sources":["../../../src/components/PlRadio/keys.ts"],"sourcesContent":["import { type InjectionKey, type ModelRef } from \"vue\";\n\nexport const radioGroupNameKey: InjectionKey<string | undefined> = Symbol();\nexport const radioGroupModelKey: InjectionKey<ModelRef<unknown>> = Symbol();\n"],"mappings":";AAEA,IAAa,IAAsD,QAAQ,EAC9D,IAAsD,QAAQ"}
@@ -2,6 +2,7 @@ import e from "../../_virtual/_plugin-vue_export-helper.js";
2
2
  import t from "./PlSearchField.vue2.js";
3
3
  import n from "./PlSearchField.style.js";
4
4
  var r = /* @__PURE__ */ e(t, [["__cssModules", { $style: n }]]);
5
+ //#endregion
5
6
  export { r as default };
6
7
 
7
8
  //# sourceMappingURL=PlSearchField.js.map
@@ -2,6 +2,7 @@ import './PlSearchField.vue.css';var e = {
2
2
  component: "_component_1k3h6_1",
3
3
  clear: "_clear_1k3h6_35"
4
4
  };
5
+ //#endregion
5
6
  export { e as default };
6
7
 
7
8
  //# sourceMappingURL=PlSearchField.style.js.map
@@ -4,6 +4,7 @@ import "../PlIcon24/index.js";
4
4
  import n from "../PlIcon16/PlIcon16.js";
5
5
  import "../PlIcon16/index.js";
6
6
  import { computed as r, createBlock as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, createTextVNode as c, createVNode as l, defineComponent as u, mergeModels as d, normalizeClass as f, openBlock as p, renderSlot as m, toDisplayString as h, unref as g, useModel as _, useSlots as v, vModelText as y, withCtx as b, withDirectives as x, withModifiers as S } from "vue";
7
+ //#region src/components/PlSearchField/PlSearchField.vue?vue&type=script&setup=true&lang.ts
7
8
  var C = ["disabled", "placeholder"], w = /* @__PURE__ */ u({
8
9
  __name: "PlSearchField",
9
10
  props: /* @__PURE__ */ d({
@@ -51,6 +52,7 @@ var C = ["disabled", "placeholder"], w = /* @__PURE__ */ u({
51
52
  ], 2));
52
53
  }
53
54
  });
55
+ //#endregion
54
56
  export { w as default };
55
57
 
56
58
  //# sourceMappingURL=PlSearchField.vue2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlSearchField.vue_vue_type_script_setup_true_lang.js","names":["$style"],"sources":["../../../src/components/PlSearchField/PlSearchField.vue"],"sourcesContent":["<script lang=\"ts\" setup generic=\"V extends undefined | string, C extends V\">\nimport { PlIcon16 } from \"../PlIcon16\";\nimport { PlIcon24 } from \"../PlIcon24\";\nimport { computed } from \"vue\";\nimport PlTooltip from \"../PlTooltip/PlTooltip.vue\";\n\nconst model = defineModel<V>({ required: true });\n\nconst props = defineProps<{\n modelValue?: string;\n clearable?: boolean | (() => C);\n placeholder?: string;\n disabled?: boolean;\n helper?: string;\n}>();\nconst slots = defineSlots<{\n helper: () => unknown;\n}>();\n\nconst nonEmpty = computed(() => model.value != null && model.value.length > 0);\nconst hasHelper = computed(() => props.helper != null || slots.helper != null);\n\nconst clear = () => {\n if (props.clearable) {\n model.value = (typeof props.clearable === \"function\" ? props.clearable() : \"\") as V;\n }\n};\n</script>\n\n<template>\n <div ref=\"root\" :class=\"$style.component\">\n <PlIcon24 name=\"search\" />\n <input\n ref=\"input\"\n v-model=\"model\"\n :disabled=\"props.disabled\"\n :placeholder=\"props.placeholder || 'Find...'\"\n type=\"text\"\n spellcheck=\"false\"\n />\n <PlIcon16\n v-if=\"props.clearable && nonEmpty\"\n :class=\"$style.clear\"\n name=\"delete-clear\"\n @click.stop=\"clear\"\n />\n\n <PlTooltip v-if=\"hasHelper\" class=\"info\" position=\"bottom\">\n <template #tooltip>\n <slot name=\"helper\">\n {{ props.helper }}\n </slot>\n </template>\n </PlTooltip>\n </div>\n</template>\n\n<style lang=\"scss\" module>\n.component {\n --pl-search-field-border-bottom-color: var(--txt-01);\n --pl-search-field-bg: transparent;\n --pl-search-field-caret-color: auto;\n --pl-search-field-clear-display: none;\n\n position: relative;\n display: flex;\n align-items: center;\n min-height: calc(var(--control-height) - 2px);\n line-height: calc(var(--control-height) - 2px);\n background-color: var(--pl-search-field-bg);\n padding: 0 0 0 0;\n border-bottom: 1px solid var(--pl-search-field-border-bottom-color);\n\n input {\n margin-left: 8px;\n width: 100%;\n height: 20px;\n border: none;\n outline: none;\n background-color: transparent;\n font-size: 14px;\n font-weight: 500;\n line-height: 20px;\n caret-color: var(--pl-search-field-caret-color);\n }\n\n &:focus-within {\n --pl-search-field-border-bottom-color: var(--txt-focus);\n --pl-search-field-caret-color: var(--border-color-focus);\n --pl-search-field-clear-display: block;\n }\n\n &:hover {\n --pl-search-field-clear-display: block;\n }\n\n .clear {\n --icon-color: var(--ic-02);\n cursor: pointer;\n margin-left: auto;\n display: var(--pl-search-field-clear-display);\n }\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EAMA,IAAM,IAAQ,EAAc,GAAA,aAAoB,EAE1C,IAAQ,GAOR,IAAQ,GAEV,EAEE,IAAW,QAAe,EAAM,SAAS,QAAQ,EAAM,MAAM,SAAS,EAAE,EACxE,IAAY,QAAe,EAAM,UAAU,QAAQ,EAAM,UAAU,KAAK,EAExE,UAAc;AAClB,GAAI,EAAM,cACR,EAAM,QAAS,OAAO,EAAM,aAAc,aAAa,EAAM,WAAW,GAAG;;yBAM7E,EAwBM,OAAA;GAxBD,KAAI;GAAQ,OAAK,EAAEA,EAAAA,OAAO,UAAS;;GACtC,EAA0B,EAAA,EAAA,EAAA,EAAhB,MAAK,UAAQ,CAAA;KACvB,EAOE,SAAA;IANA,KAAI;6CACU,QAAA;IACb,UAAU,EAAM;IAChB,aAAa,EAAM,eAAW;IAC/B,MAAK;IACL,YAAW;wBAJF,EAAA,MAAK,CAAA,CAAA;GAOR,EAAM,aAAa,EAAA,SAAA,GAAA,EAD3B,EAKE,EAAA,EAAA,EAAA;;IAHC,OAAK,EAAEA,EAAAA,OAAO,MAAK;IACpB,MAAK;IACJ,SAAK,EAAO,GAAK,CAAA,OAAA,CAAA;;GAGH,EAAA,SAAA,GAAA,EAAjB,EAMY,GAAA;;IANgB,OAAM;IAAO,UAAS;;IACrC,SAAO,QAGT,CAFP,EAEO,EAAA,QAAA,UAAA,EAAA,QAAA,CAAA,EAAA,EADF,EAAM,OAAM,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"PlSearchField.vue_vue_type_script_setup_true_lang.js","names":["$style"],"sources":["../../../src/components/PlSearchField/PlSearchField.vue"],"sourcesContent":["<script lang=\"ts\" setup generic=\"V extends undefined | string, C extends V\">\nimport { PlIcon16 } from \"../PlIcon16\";\nimport { PlIcon24 } from \"../PlIcon24\";\nimport { computed } from \"vue\";\nimport PlTooltip from \"../PlTooltip/PlTooltip.vue\";\n\nconst model = defineModel<V>({ required: true });\n\nconst props = defineProps<{\n modelValue?: string;\n clearable?: boolean | (() => C);\n placeholder?: string;\n disabled?: boolean;\n helper?: string;\n}>();\nconst slots = defineSlots<{\n helper: () => unknown;\n}>();\n\nconst nonEmpty = computed(() => model.value != null && model.value.length > 0);\nconst hasHelper = computed(() => props.helper != null || slots.helper != null);\n\nconst clear = () => {\n if (props.clearable) {\n model.value = (typeof props.clearable === \"function\" ? props.clearable() : \"\") as V;\n }\n};\n</script>\n\n<template>\n <div ref=\"root\" :class=\"$style.component\">\n <PlIcon24 name=\"search\" />\n <input\n ref=\"input\"\n v-model=\"model\"\n :disabled=\"props.disabled\"\n :placeholder=\"props.placeholder || 'Find...'\"\n type=\"text\"\n spellcheck=\"false\"\n />\n <PlIcon16\n v-if=\"props.clearable && nonEmpty\"\n :class=\"$style.clear\"\n name=\"delete-clear\"\n @click.stop=\"clear\"\n />\n\n <PlTooltip v-if=\"hasHelper\" class=\"info\" position=\"bottom\">\n <template #tooltip>\n <slot name=\"helper\">\n {{ props.helper }}\n </slot>\n </template>\n </PlTooltip>\n </div>\n</template>\n\n<style lang=\"scss\" module>\n.component {\n --pl-search-field-border-bottom-color: var(--txt-01);\n --pl-search-field-bg: transparent;\n --pl-search-field-caret-color: auto;\n --pl-search-field-clear-display: none;\n\n position: relative;\n display: flex;\n align-items: center;\n min-height: calc(var(--control-height) - 2px);\n line-height: calc(var(--control-height) - 2px);\n background-color: var(--pl-search-field-bg);\n padding: 0 0 0 0;\n border-bottom: 1px solid var(--pl-search-field-border-bottom-color);\n\n input {\n margin-left: 8px;\n width: 100%;\n height: 20px;\n border: none;\n outline: none;\n background-color: transparent;\n font-size: 14px;\n font-weight: 500;\n line-height: 20px;\n caret-color: var(--pl-search-field-caret-color);\n }\n\n &:focus-within {\n --pl-search-field-border-bottom-color: var(--txt-focus);\n --pl-search-field-caret-color: var(--border-color-focus);\n --pl-search-field-clear-display: block;\n }\n\n &:hover {\n --pl-search-field-clear-display: block;\n }\n\n .clear {\n --icon-color: var(--ic-02);\n cursor: pointer;\n margin-left: auto;\n display: var(--pl-search-field-clear-display);\n }\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;EAMA,IAAM,IAAQ,EAAc,GAAA,aAAoB,EAE1C,IAAQ,GAOR,IAAQ,GAEV,EAEE,IAAW,QAAe,EAAM,SAAS,QAAQ,EAAM,MAAM,SAAS,EAAE,EACxE,IAAY,QAAe,EAAM,UAAU,QAAQ,EAAM,UAAU,KAAK,EAExE,UAAc;AAClB,GAAI,EAAM,cACR,EAAM,QAAS,OAAO,EAAM,aAAc,aAAa,EAAM,WAAW,GAAG;;yBAM7E,EAwBM,OAAA;GAxBD,KAAI;GAAQ,OAAK,EAAEA,EAAAA,OAAO,UAAS;;GACtC,EAA0B,EAAA,EAAA,EAAA,EAAhB,MAAK,UAAQ,CAAA;KACvB,EAOE,SAAA;IANA,KAAI;6CACU,QAAA;IACb,UAAU,EAAM;IAChB,aAAa,EAAM,eAAW;IAC/B,MAAK;IACL,YAAW;wBAJF,EAAA,MAAK,CAAA,CAAA;GAOR,EAAM,aAAa,EAAA,SAAA,GAAA,EAD3B,EAKE,EAAA,EAAA,EAAA;;IAHC,OAAK,EAAEA,EAAAA,OAAO,MAAK;IACpB,MAAK;IACJ,SAAK,EAAO,GAAK,CAAA,OAAA,CAAA;;GAGH,EAAA,SAAA,GAAA,EAAjB,EAMY,GAAA;;IANgB,OAAM;IAAO,UAAS;;IACrC,SAAO,QAGT,CAFP,EAEO,EAAA,QAAA,UAAA,EAAA,QAAA,CAAA,EAAA,EADF,EAAM,OAAM,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA"}
@@ -2,6 +2,7 @@ import e from "../../_virtual/_plugin-vue_export-helper.js";
2
2
  import t from "./PlSectionSeparator.vue2.js";
3
3
  import n from "./PlSectionSeparator.style.js";
4
4
  var r = /* @__PURE__ */ e(t, [["__cssModules", { $style: n }]]);
5
+ //#endregion
5
6
  export { r as default };
6
7
 
7
8
  //# sourceMappingURL=PlSectionSeparator.js.map
@@ -2,6 +2,7 @@ import './PlSectionSeparator.vue.css';var e = {
2
2
  compact: "_compact_o5ekj_16",
3
3
  content: "_content_o5ekj_20"
4
4
  };
5
+ //#endregion
5
6
  export { e as default };
6
7
 
7
8
  //# sourceMappingURL=PlSectionSeparator.style.js.map
@@ -1,4 +1,5 @@
1
1
  import { createElementBlock as e, createElementVNode as t, defineComponent as n, normalizeClass as r, openBlock as i, renderSlot as a } from "vue";
2
+ //#region src/components/PlSectionSeparator/PlSectionSeparator.vue?vue&type=script&setup=true&lang.ts
2
3
  var o = /* @__PURE__ */ n({
3
4
  __name: "PlSectionSeparator",
4
5
  props: { compact: { type: Boolean } },
@@ -6,6 +7,7 @@ var o = /* @__PURE__ */ n({
6
7
  return (o, s) => (i(), e("div", { class: r(["pl-section-separator", { [o.$style.compact]: n.compact }]) }, [t("div", { class: r(o.$style.content) }, [a(o.$slots, "default")], 2)], 2));
7
8
  }
8
9
  });
10
+ //#endregion
9
11
  export { o as default };
10
12
 
11
13
  //# sourceMappingURL=PlSectionSeparator.vue2.js.map