@flux-ui/components 3.0.0-next.3 → 3.0.0-next.30

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 (549) hide show
  1. package/README.md +12 -40
  2. package/dist/component/FluxAction.vue.d.ts +7 -7
  3. package/dist/component/FluxActionBar.vue.d.ts +5 -5
  4. package/dist/component/FluxActionPane.vue.d.ts +2 -2
  5. package/dist/component/FluxActions.vue.d.ts +52 -50
  6. package/dist/component/FluxAlert.vue.d.ts +2 -2
  7. package/dist/component/FluxAnimatedColors.vue.d.ts +3 -2
  8. package/dist/component/FluxAspectRatio.vue.d.ts +2 -2
  9. package/dist/component/FluxAutoGrid.vue.d.ts +2 -2
  10. package/dist/component/FluxAvatar.vue.d.ts +7 -7
  11. package/dist/component/FluxBadge.vue.d.ts +8 -8
  12. package/dist/component/FluxBadgeStack.vue.d.ts +2 -2
  13. package/dist/component/FluxBorderShine.vue.d.ts +8 -9
  14. package/dist/component/FluxBoxedIcon.vue.d.ts +5 -5
  15. package/dist/component/FluxButton.vue.d.ts +8 -8
  16. package/dist/component/FluxButtonGroup.vue.d.ts +2 -2
  17. package/dist/component/FluxButtonStack.vue.d.ts +2 -2
  18. package/dist/component/FluxCalendar.vue.d.ts +5 -5
  19. package/dist/component/FluxCalendarEvent.vue.d.ts +5 -5
  20. package/dist/component/FluxCheckbox.vue.d.ts +6 -6
  21. package/dist/component/FluxChip.vue.d.ts +5 -5
  22. package/dist/component/FluxClickablePane.vue.d.ts +2 -2
  23. package/dist/component/FluxColorPicker.vue.d.ts +5 -5
  24. package/dist/component/FluxColorSelect.vue.d.ts +5 -5
  25. package/dist/component/FluxComment.vue.d.ts +2 -2
  26. package/dist/component/FluxConfirm.vue.d.ts +2 -2
  27. package/dist/component/FluxContainer.vue.d.ts +2 -2
  28. package/dist/component/FluxDataTable.vue.d.ts +52 -21
  29. package/dist/component/FluxDatePicker.vue.d.ts +6 -6
  30. package/dist/component/FluxDestructiveButton.vue.d.ts +7 -7
  31. package/dist/component/FluxDisabled.vue.d.ts +2 -2
  32. package/dist/component/FluxDivider.vue.d.ts +2 -2
  33. package/dist/component/FluxDotPattern.vue.d.ts +2 -2
  34. package/dist/component/FluxDropZone.vue.d.ts +6 -6
  35. package/dist/component/FluxDynamicView.vue.d.ts +2 -3
  36. package/dist/component/FluxExpandable.vue.d.ts +10 -10
  37. package/dist/component/FluxExpandableGroup.vue.d.ts +2 -2
  38. package/dist/component/FluxFader.vue.d.ts +5 -5
  39. package/dist/component/FluxFaderItem.vue.d.ts +2 -2
  40. package/dist/component/FluxFilter.vue.d.ts +8 -140
  41. package/dist/component/FluxFilterBar.vue.d.ts +38 -0
  42. package/dist/component/FluxFilterBase.vue.d.ts +45 -0
  43. package/dist/component/FluxFilterDate.vue.d.ts +2 -2
  44. package/dist/component/FluxFilterDateRange.vue.d.ts +2 -2
  45. package/dist/component/FluxFilterOption.vue.d.ts +5 -5
  46. package/dist/component/FluxFilterOptionAsync.vue.d.ts +5 -5
  47. package/dist/component/FluxFilterOptions.vue.d.ts +5 -5
  48. package/dist/component/FluxFilterOptionsAsync.vue.d.ts +5 -5
  49. package/dist/component/FluxFilterRange.vue.d.ts +2 -2
  50. package/dist/component/FluxFilterWindow.vue.d.ts +163 -0
  51. package/dist/component/FluxFlickeringGrid.vue.d.ts +2 -2
  52. package/dist/component/FluxFlyout.vue.d.ts +42 -41
  53. package/dist/component/FluxFocalPointEditor.vue.d.ts +5 -5
  54. package/dist/component/FluxFocalPointImage.vue.d.ts +2 -2
  55. package/dist/component/FluxForm.vue.d.ts +6 -6
  56. package/dist/component/FluxFormColumn.vue.d.ts +2 -2
  57. package/dist/component/FluxFormDateInput.vue.d.ts +52 -51
  58. package/dist/component/FluxFormDateRangeInput.vue.d.ts +50 -49
  59. package/dist/component/FluxFormDateTimeInput.vue.d.ts +50 -49
  60. package/dist/component/FluxFormField.vue.d.ts +2 -2
  61. package/dist/component/FluxFormFieldAddition.vue.d.ts +2 -2
  62. package/dist/component/FluxFormGrid.vue.d.ts +23 -0
  63. package/dist/component/FluxFormInput.vue.d.ts +12 -10
  64. package/dist/component/FluxFormInputAddition.vue.d.ts +2 -2
  65. package/dist/component/FluxFormInputGroup.vue.d.ts +3 -2
  66. package/dist/component/FluxFormPinInput.vue.d.ts +5 -5
  67. package/dist/component/FluxFormRangeSlider.vue.d.ts +25 -25
  68. package/dist/component/FluxFormRow.vue.d.ts +2 -2
  69. package/dist/component/FluxFormSection.vue.d.ts +2 -2
  70. package/dist/component/FluxFormSelect.vue.d.ts +6 -6
  71. package/dist/component/FluxFormSelectAsync.vue.d.ts +6 -6
  72. package/dist/component/FluxFormSlider.vue.d.ts +15 -15
  73. package/dist/component/FluxFormTextArea.vue.d.ts +7 -7
  74. package/dist/component/FluxFormTimeZonePicker.vue.d.ts +6 -6
  75. package/dist/component/FluxGallery.vue.d.ts +6 -6
  76. package/dist/component/FluxGalleryItem.vue.d.ts +5 -5
  77. package/dist/component/FluxGrid.vue.d.ts +2 -2
  78. package/dist/component/FluxGridColumn.vue.d.ts +2 -2
  79. package/dist/component/FluxGridPattern.vue.d.ts +2 -2
  80. package/dist/component/FluxIcon.vue.d.ts +5 -5
  81. package/dist/component/FluxInfo.vue.d.ts +2 -2
  82. package/dist/component/FluxInfoStack.vue.d.ts +2 -2
  83. package/dist/component/FluxItem.vue.d.ts +18 -0
  84. package/dist/component/FluxItemActions.vue.d.ts +21 -0
  85. package/dist/component/FluxItemContent.vue.d.ts +21 -0
  86. package/dist/component/FluxItemMedia.vue.d.ts +22 -0
  87. package/dist/component/FluxItemStack.vue.d.ts +18 -0
  88. package/dist/component/FluxLegend.vue.d.ts +2 -2
  89. package/dist/component/FluxLink.vue.d.ts +7 -7
  90. package/dist/component/FluxMenu.vue.d.ts +2 -2
  91. package/dist/component/FluxMenuGroup.vue.d.ts +2 -2
  92. package/dist/component/FluxMenuItem.vue.d.ts +25 -7
  93. package/dist/component/FluxMenuOptions.vue.d.ts +5 -5
  94. package/dist/component/FluxMenuSubHeader.vue.d.ts +2 -2
  95. package/dist/component/FluxMenuTitle.vue.d.ts +2 -2
  96. package/dist/component/FluxNotice.vue.d.ts +5 -5
  97. package/dist/component/FluxNoticeStack.vue.d.ts +2 -2
  98. package/dist/component/FluxOverflowBar.vue.d.ts +40 -0
  99. package/dist/component/FluxOverlay.vue.d.ts +5 -6
  100. package/dist/component/FluxOverlayProvider.vue.d.ts +3 -0
  101. package/dist/component/FluxPagination.vue.d.ts +5 -5
  102. package/dist/component/FluxPaginationBar.vue.d.ts +6 -6
  103. package/dist/component/FluxPaginationButton.vue.d.ts +30 -0
  104. package/dist/component/FluxPane.vue.d.ts +2 -2
  105. package/dist/component/FluxPaneBody.vue.d.ts +2 -2
  106. package/dist/component/FluxPaneDeck.vue.d.ts +2 -2
  107. package/dist/component/FluxPaneFooter.vue.d.ts +2 -2
  108. package/dist/component/FluxPaneGroup.vue.d.ts +2 -2
  109. package/dist/component/FluxPaneHeader.vue.d.ts +2 -2
  110. package/dist/component/FluxPaneIllustration.vue.d.ts +2 -2
  111. package/dist/component/FluxPaneMedia.vue.d.ts +3 -2
  112. package/dist/component/FluxPercentageBar.vue.d.ts +2 -2
  113. package/dist/component/FluxPersona.vue.d.ts +5 -5
  114. package/dist/component/FluxPlaceholder.vue.d.ts +5 -5
  115. package/dist/component/FluxPressable.vue.d.ts +7 -7
  116. package/dist/component/FluxPrimaryButton.vue.d.ts +7 -7
  117. package/dist/component/FluxPrimaryLinkButton.vue.d.ts +25 -0
  118. package/dist/component/FluxProgressBar.vue.d.ts +2 -2
  119. package/dist/component/FluxPrompt.vue.d.ts +31 -27
  120. package/dist/component/FluxPublishButton.vue.d.ts +7 -7
  121. package/dist/component/FluxQuantitySelector.vue.d.ts +5 -5
  122. package/dist/component/FluxRemove.vue.d.ts +5 -5
  123. package/dist/component/FluxRoot.vue.d.ts +2 -2
  124. package/dist/component/FluxSecondaryButton.vue.d.ts +7 -7
  125. package/dist/component/FluxSecondaryLinkButton.vue.d.ts +25 -0
  126. package/dist/component/FluxSegmentedControl.vue.d.ts +5 -5
  127. package/dist/component/FluxSegmentedView.vue.d.ts +5 -5
  128. package/dist/component/FluxSeparator.vue.d.ts +2 -2
  129. package/dist/component/FluxSlideOver.vue.d.ts +7 -7
  130. package/dist/component/FluxSnackbar.vue.d.ts +6 -6
  131. package/dist/component/FluxSnackbarProvider.vue.d.ts +2 -2
  132. package/dist/component/FluxSpacer.vue.d.ts +2 -2
  133. package/dist/component/FluxSpacing.vue.d.ts +2 -2
  134. package/dist/component/FluxSpinner.vue.d.ts +2 -2
  135. package/dist/component/FluxSplitButton.vue.d.ts +2 -2
  136. package/dist/component/FluxStack.vue.d.ts +2 -2
  137. package/dist/component/FluxStatistic.vue.d.ts +8 -5
  138. package/dist/component/FluxStepper.vue.d.ts +5 -6
  139. package/dist/component/FluxStepperStep.vue.d.ts +2 -2
  140. package/dist/component/FluxStepperSteps.vue.d.ts +5 -5
  141. package/dist/component/FluxTab.vue.d.ts +2 -2
  142. package/dist/component/FluxTabBar.vue.d.ts +2 -2
  143. package/dist/component/FluxTabBarItem.vue.d.ts +36 -36
  144. package/dist/component/FluxTable.vue.d.ts +15 -10
  145. package/dist/component/FluxTableActions.vue.d.ts +2 -2
  146. package/dist/component/FluxTableBar.vue.d.ts +20 -0
  147. package/dist/component/FluxTableCell.vue.d.ts +3 -2
  148. package/dist/component/FluxTableHeader.vue.d.ts +6 -6
  149. package/dist/component/FluxTableRow.vue.d.ts +2 -2
  150. package/dist/component/FluxTabs.vue.d.ts +5 -6
  151. package/dist/component/FluxTag.vue.d.ts +8 -8
  152. package/dist/component/FluxTagStack.vue.d.ts +2 -2
  153. package/dist/component/FluxTicks.vue.d.ts +2 -2
  154. package/dist/component/FluxTimeline.vue.d.ts +2 -2
  155. package/dist/component/FluxTimelineItem.vue.d.ts +2 -2
  156. package/dist/component/FluxToggle.vue.d.ts +5 -5
  157. package/dist/component/FluxToolbar.vue.d.ts +2 -2
  158. package/dist/component/FluxToolbarGroup.vue.d.ts +2 -2
  159. package/dist/component/FluxTooltip.vue.d.ts +5 -6
  160. package/dist/component/FluxTooltipProvider.vue.d.ts +2 -2
  161. package/dist/component/FluxWindow.vue.d.ts +3 -3
  162. package/dist/component/index.d.ts +12 -1
  163. package/dist/component/primitive/Anchor.vue.d.ts +2 -2
  164. package/dist/component/primitive/AnchorPopup.vue.d.ts +2 -3
  165. package/dist/component/primitive/CoordinatePicker.vue.d.ts +6 -6
  166. package/dist/component/primitive/CoordinatePickerThumb.vue.d.ts +7 -7
  167. package/dist/component/primitive/FilterBadge.vue.d.ts +12 -0
  168. package/dist/component/primitive/FilterItem.vue.d.ts +5 -5
  169. package/dist/component/primitive/FilterMenuRenderer.d.ts +21 -10
  170. package/dist/component/primitive/FilterOptionBase.vue.d.ts +6 -6
  171. package/dist/component/primitive/SelectBase.vue.d.ts +170 -101
  172. package/dist/component/primitive/SliderBase.vue.d.ts +7 -7
  173. package/dist/component/primitive/SliderThumb.vue.d.ts +7 -7
  174. package/dist/component/primitive/SliderTrack.vue.d.ts +2 -2
  175. package/dist/component/primitive/VNodeRenderer.d.ts +5 -6
  176. package/dist/component/primitive/index.d.ts +2 -1
  177. package/dist/composable/index.d.ts +1 -1
  178. package/dist/composable/private/index.d.ts +0 -2
  179. package/dist/composable/private/useFormSelect.d.ts +6 -7
  180. package/dist/composable/private/useTranslate.d.ts +0 -1
  181. package/dist/composable/useBreakpoints.d.ts +1 -2
  182. package/dist/composable/useDisabled.d.ts +2 -3
  183. package/dist/composable/useDisabledInjection.d.ts +2 -2
  184. package/dist/composable/useExpandableGroupInjection.d.ts +2 -2
  185. package/dist/composable/useFilterInjection.d.ts +2 -2
  186. package/dist/composable/useFlyoutInjection.d.ts +2 -6
  187. package/dist/composable/useFormFieldInjection.d.ts +2 -2
  188. package/dist/composable/useTableInjection.d.ts +2 -7
  189. package/dist/composable/useTooltipInjection.d.ts +3 -0
  190. package/dist/data/di.d.ts +4 -1
  191. package/dist/data/filter.d.ts +18 -2
  192. package/dist/data/helper.d.ts +0 -1
  193. package/dist/data/i18n.d.ts +1 -2
  194. package/dist/data/iconRegistry.d.ts +0 -1
  195. package/dist/data/index.d.ts +0 -1
  196. package/dist/data/inputMask.d.ts +0 -1
  197. package/dist/data/store.d.ts +2 -3
  198. package/dist/index.css +6058 -0
  199. package/dist/index.d.ts +1 -2
  200. package/dist/index.js +17628 -0
  201. package/dist/index.js.map +1 -0
  202. package/dist/transition/FluxAutoHeightTransition.vue.d.ts +2 -2
  203. package/dist/transition/FluxAutoWidthTransition.vue.d.ts +2 -2
  204. package/dist/transition/FluxBreakthroughTransition.vue.d.ts +2 -2
  205. package/dist/transition/FluxFadeTransition.vue.d.ts +2 -2
  206. package/dist/transition/FluxOverlayTransition.vue.d.ts +2 -2
  207. package/dist/transition/FluxRouteTransition.vue.d.ts +2 -2
  208. package/dist/transition/FluxSlideOverTransition.vue.d.ts +2 -2
  209. package/dist/transition/FluxTooltipTransition.vue.d.ts +2 -2
  210. package/dist/transition/FluxVerticalWindowTransition.vue.d.ts +2 -2
  211. package/dist/transition/FluxWindowTransition.vue.d.ts +2 -2
  212. package/dist/transition/index.d.ts +0 -1
  213. package/dist/util/createDialogRenderer.d.ts +1 -2
  214. package/dist/util/createLabelForDateRange.d.ts +0 -1
  215. package/dist/util/index.d.ts +0 -1
  216. package/dist/vite.d.ts +7 -0
  217. package/package.json +24 -23
  218. package/src/component/FluxActionBar.vue +1 -1
  219. package/src/component/FluxAnimatedColors.vue +6 -4
  220. package/src/component/FluxAutoGrid.vue +1 -1
  221. package/src/component/FluxBorderShine.vue +1 -1
  222. package/src/component/FluxCalendar.vue +3 -3
  223. package/src/component/FluxColorPicker.vue +1 -1
  224. package/src/component/FluxContainer.vue +1 -1
  225. package/src/component/FluxDataTable.vue +68 -16
  226. package/src/component/FluxDatePicker.vue +7 -5
  227. package/src/component/FluxDynamicView.vue +1 -1
  228. package/src/component/FluxExpandable.vue +1 -1
  229. package/src/component/FluxExpandableGroup.vue +1 -1
  230. package/src/component/FluxFader.vue +2 -1
  231. package/src/component/FluxFilter.vue +20 -107
  232. package/src/component/FluxFilterBar.vue +117 -0
  233. package/src/component/FluxFilterBase.vue +141 -0
  234. package/src/component/FluxFilterOptionAsync.vue +1 -2
  235. package/src/component/FluxFilterOptionsAsync.vue +1 -2
  236. package/src/component/FluxFilterWindow.vue +83 -0
  237. package/src/component/FluxFlyout.vue +4 -3
  238. package/src/component/FluxForm.vue +7 -7
  239. package/src/component/FluxFormGrid.vue +23 -0
  240. package/src/component/FluxFormInput.vue +10 -1
  241. package/src/component/FluxFormInputGroup.vue +2 -0
  242. package/src/component/FluxFormSelect.vue +1 -1
  243. package/src/component/FluxFormSelectAsync.vue +2 -2
  244. package/src/component/FluxFormTimeZonePicker.vue +5 -0
  245. package/src/component/FluxGallery.vue +2 -2
  246. package/src/component/FluxGrid.vue +1 -1
  247. package/src/component/FluxIcon.vue +0 -12
  248. package/src/component/FluxItem.vue +11 -0
  249. package/src/component/FluxItemActions.vue +18 -0
  250. package/src/component/FluxItemContent.vue +15 -0
  251. package/src/component/FluxItemMedia.vue +20 -0
  252. package/src/component/FluxItemStack.vue +14 -0
  253. package/src/component/FluxMenuItem.vue +10 -2
  254. package/src/component/FluxMenuOptions.vue +1 -1
  255. package/src/component/FluxOverflowBar.vue +133 -0
  256. package/src/component/FluxOverlay.vue +1 -1
  257. package/src/component/FluxOverlayProvider.vue +39 -0
  258. package/src/component/FluxPagination.vue +16 -14
  259. package/src/component/FluxPaginationBar.vue +27 -38
  260. package/src/component/FluxPaginationButton.vue +39 -0
  261. package/src/component/FluxPaneMedia.vue +2 -0
  262. package/src/component/FluxPressable.vue +1 -1
  263. package/src/component/FluxPrimaryLinkButton.vue +28 -0
  264. package/src/component/FluxProgressBar.vue +1 -1
  265. package/src/component/FluxRoot.vue +3 -26
  266. package/src/component/FluxSecondaryLinkButton.vue +28 -0
  267. package/src/component/FluxStack.vue +1 -1
  268. package/src/component/FluxStatistic.vue +23 -9
  269. package/src/component/FluxStepper.vue +1 -1
  270. package/src/component/FluxTabBar.vue +23 -17
  271. package/src/component/FluxTabBarItem.vue +1 -1
  272. package/src/component/FluxTable.vue +25 -4
  273. package/src/component/FluxTableBar.vue +37 -0
  274. package/src/component/FluxTableCell.vue +3 -1
  275. package/src/component/FluxTabs.vue +1 -1
  276. package/src/component/FluxTooltip.vue +3 -1
  277. package/src/component/FluxTooltipProvider.vue +7 -3
  278. package/src/component/index.ts +12 -0
  279. package/src/component/primitive/AnchorPopup.vue +11 -5
  280. package/src/component/primitive/FilterBadge.vue +43 -0
  281. package/src/component/primitive/FilterItem.vue +1 -1
  282. package/src/component/primitive/FilterMenuRenderer.ts +10 -198
  283. package/src/component/primitive/SelectBase.vue +9 -2
  284. package/src/component/primitive/index.ts +2 -0
  285. package/src/composable/index.ts +1 -0
  286. package/src/composable/private/index.ts +0 -1
  287. package/src/composable/private/useFormSelect.ts +2 -2
  288. package/src/composable/useFilterInjection.ts +1 -8
  289. package/src/composable/useTooltipInjection.ts +8 -0
  290. package/src/css/base.scss +6 -3
  291. package/src/css/component/Action.module.scss +10 -7
  292. package/src/css/component/Avatar.module.scss +14 -14
  293. package/src/css/component/Badge.module.scss +17 -16
  294. package/src/css/component/Button.module.scss +69 -35
  295. package/src/css/component/Calendar.module.scss +12 -12
  296. package/src/css/component/Chip.module.scss +7 -19
  297. package/src/css/component/Color.module.scss +4 -4
  298. package/src/css/component/Comment.module.scss +15 -14
  299. package/src/css/component/DatePicker.module.scss +12 -23
  300. package/src/css/component/Divider.module.scss +2 -2
  301. package/src/css/component/DropZone.module.scss +27 -24
  302. package/src/css/component/Expandable.module.scss +4 -4
  303. package/src/css/component/Filter.module.scss +45 -5
  304. package/src/css/component/Flyout.module.scss +1 -1
  305. package/src/css/component/Form.module.scss +91 -50
  306. package/src/css/component/Gallery.module.scss +14 -4
  307. package/src/css/component/Icon.module.scss +36 -50
  308. package/src/css/component/Info.module.scss +2 -3
  309. package/src/css/component/Item.module.scss +74 -0
  310. package/src/css/component/Layout.module.scss +3 -0
  311. package/src/css/component/Menu.module.scss +29 -30
  312. package/src/css/component/Notice.module.scss +43 -43
  313. package/src/css/component/OverflowBar.module.scss +41 -0
  314. package/src/css/component/Overlay.module.scss +55 -7
  315. package/src/css/component/Pagination.module.scss +70 -33
  316. package/src/css/component/Pane.module.scss +52 -9
  317. package/src/css/component/PercentageBar.module.scss +1 -1
  318. package/src/css/component/Placeholder.module.scss +4 -4
  319. package/src/css/component/Progress.module.scss +17 -6
  320. package/src/css/component/Remove.module.scss +4 -4
  321. package/src/css/component/SegmentedControl.module.scss +8 -8
  322. package/src/css/component/Snackbar.module.scss +19 -18
  323. package/src/css/component/Spinner.module.scss +2 -2
  324. package/src/css/component/Statistic.module.scss +12 -39
  325. package/src/css/component/Stepper.module.scss +9 -9
  326. package/src/css/component/Tab.module.scss +21 -9
  327. package/src/css/component/Table.module.scss +67 -20
  328. package/src/css/component/Timeline.module.scss +20 -20
  329. package/src/css/component/Toolbar.module.scss +7 -2
  330. package/src/css/component/Tooltip.module.scss +4 -2
  331. package/src/css/component/Transition.module.scss +5 -5
  332. package/src/css/component/Visual.module.scss +3 -3
  333. package/src/css/component/base/Button.module.scss +10 -0
  334. package/src/css/component/base/Pane.module.scss +4 -8
  335. package/src/css/component/primitive/CoordinatePicker.module.scss +3 -3
  336. package/src/css/component/primitive/Slider.module.scss +10 -15
  337. package/src/css/mixin/breakpoints.scss +15 -3
  338. package/src/css/mixin/focus-ring.scss +2 -2
  339. package/src/css/typography.scss +13 -7
  340. package/src/css/variables.scss +218 -186
  341. package/src/data/di.ts +5 -0
  342. package/src/data/filter.ts +161 -1
  343. package/src/data/i18n.ts +1 -1
  344. package/src/data/iconRegistry.ts +5 -1
  345. package/src/data/store.ts +6 -4
  346. package/src/index.ts +1 -0
  347. package/src/util/createDialogRenderer.ts +36 -19
  348. package/src/vite.d.ts +2 -8
  349. package/tsconfig.json +4 -42
  350. package/dist/component/FluxAction.vue.d.ts.map +0 -1
  351. package/dist/component/FluxActionBar.vue.d.ts.map +0 -1
  352. package/dist/component/FluxActionPane.vue.d.ts.map +0 -1
  353. package/dist/component/FluxActions.vue.d.ts.map +0 -1
  354. package/dist/component/FluxAlert.vue.d.ts.map +0 -1
  355. package/dist/component/FluxAnimatedColors.vue.d.ts.map +0 -1
  356. package/dist/component/FluxAspectRatio.vue.d.ts.map +0 -1
  357. package/dist/component/FluxAutoGrid.vue.d.ts.map +0 -1
  358. package/dist/component/FluxAvatar.vue.d.ts.map +0 -1
  359. package/dist/component/FluxBadge.vue.d.ts.map +0 -1
  360. package/dist/component/FluxBadgeStack.vue.d.ts.map +0 -1
  361. package/dist/component/FluxBorderShine.vue.d.ts.map +0 -1
  362. package/dist/component/FluxBoxedIcon.vue.d.ts.map +0 -1
  363. package/dist/component/FluxButton.vue.d.ts.map +0 -1
  364. package/dist/component/FluxButtonGroup.vue.d.ts.map +0 -1
  365. package/dist/component/FluxButtonStack.vue.d.ts.map +0 -1
  366. package/dist/component/FluxCalendar.vue.d.ts.map +0 -1
  367. package/dist/component/FluxCalendarEvent.vue.d.ts.map +0 -1
  368. package/dist/component/FluxCheckbox.vue.d.ts.map +0 -1
  369. package/dist/component/FluxChip.vue.d.ts.map +0 -1
  370. package/dist/component/FluxClickablePane.vue.d.ts.map +0 -1
  371. package/dist/component/FluxColorPicker.vue.d.ts.map +0 -1
  372. package/dist/component/FluxColorSelect.vue.d.ts.map +0 -1
  373. package/dist/component/FluxComment.vue.d.ts.map +0 -1
  374. package/dist/component/FluxConfirm.vue.d.ts.map +0 -1
  375. package/dist/component/FluxContainer.vue.d.ts.map +0 -1
  376. package/dist/component/FluxDataTable.vue.d.ts.map +0 -1
  377. package/dist/component/FluxDatePicker.vue.d.ts.map +0 -1
  378. package/dist/component/FluxDestructiveButton.vue.d.ts.map +0 -1
  379. package/dist/component/FluxDisabled.vue.d.ts.map +0 -1
  380. package/dist/component/FluxDivider.vue.d.ts.map +0 -1
  381. package/dist/component/FluxDotPattern.vue.d.ts.map +0 -1
  382. package/dist/component/FluxDropZone.vue.d.ts.map +0 -1
  383. package/dist/component/FluxDynamicView.vue.d.ts.map +0 -1
  384. package/dist/component/FluxExpandable.vue.d.ts.map +0 -1
  385. package/dist/component/FluxExpandableGroup.vue.d.ts.map +0 -1
  386. package/dist/component/FluxFader.vue.d.ts.map +0 -1
  387. package/dist/component/FluxFaderItem.vue.d.ts.map +0 -1
  388. package/dist/component/FluxFilter.vue.d.ts.map +0 -1
  389. package/dist/component/FluxFilterDate.vue.d.ts.map +0 -1
  390. package/dist/component/FluxFilterDateRange.vue.d.ts.map +0 -1
  391. package/dist/component/FluxFilterOption.vue.d.ts.map +0 -1
  392. package/dist/component/FluxFilterOptionAsync.vue.d.ts.map +0 -1
  393. package/dist/component/FluxFilterOptions.vue.d.ts.map +0 -1
  394. package/dist/component/FluxFilterOptionsAsync.vue.d.ts.map +0 -1
  395. package/dist/component/FluxFilterRange.vue.d.ts.map +0 -1
  396. package/dist/component/FluxFlickeringGrid.vue.d.ts.map +0 -1
  397. package/dist/component/FluxFlyout.vue.d.ts.map +0 -1
  398. package/dist/component/FluxFocalPointEditor.vue.d.ts.map +0 -1
  399. package/dist/component/FluxFocalPointImage.vue.d.ts.map +0 -1
  400. package/dist/component/FluxForm.vue.d.ts.map +0 -1
  401. package/dist/component/FluxFormColumn.vue.d.ts.map +0 -1
  402. package/dist/component/FluxFormDateInput.vue.d.ts.map +0 -1
  403. package/dist/component/FluxFormDateRangeInput.vue.d.ts.map +0 -1
  404. package/dist/component/FluxFormDateTimeInput.vue.d.ts.map +0 -1
  405. package/dist/component/FluxFormField.vue.d.ts.map +0 -1
  406. package/dist/component/FluxFormFieldAddition.vue.d.ts.map +0 -1
  407. package/dist/component/FluxFormInput.vue.d.ts.map +0 -1
  408. package/dist/component/FluxFormInputAddition.vue.d.ts.map +0 -1
  409. package/dist/component/FluxFormInputGroup.vue.d.ts.map +0 -1
  410. package/dist/component/FluxFormPinInput.vue.d.ts.map +0 -1
  411. package/dist/component/FluxFormRangeSlider.vue.d.ts.map +0 -1
  412. package/dist/component/FluxFormRow.vue.d.ts.map +0 -1
  413. package/dist/component/FluxFormSection.vue.d.ts.map +0 -1
  414. package/dist/component/FluxFormSelect.vue.d.ts.map +0 -1
  415. package/dist/component/FluxFormSelectAsync.vue.d.ts.map +0 -1
  416. package/dist/component/FluxFormSlider.vue.d.ts.map +0 -1
  417. package/dist/component/FluxFormTextArea.vue.d.ts.map +0 -1
  418. package/dist/component/FluxFormTimeZonePicker.vue.d.ts.map +0 -1
  419. package/dist/component/FluxGallery.vue.d.ts.map +0 -1
  420. package/dist/component/FluxGalleryItem.vue.d.ts.map +0 -1
  421. package/dist/component/FluxGrid.vue.d.ts.map +0 -1
  422. package/dist/component/FluxGridColumn.vue.d.ts.map +0 -1
  423. package/dist/component/FluxGridPattern.vue.d.ts.map +0 -1
  424. package/dist/component/FluxIcon.vue.d.ts.map +0 -1
  425. package/dist/component/FluxInfo.vue.d.ts.map +0 -1
  426. package/dist/component/FluxInfoStack.vue.d.ts.map +0 -1
  427. package/dist/component/FluxLegend.vue.d.ts.map +0 -1
  428. package/dist/component/FluxLink.vue.d.ts.map +0 -1
  429. package/dist/component/FluxMenu.vue.d.ts.map +0 -1
  430. package/dist/component/FluxMenuGroup.vue.d.ts.map +0 -1
  431. package/dist/component/FluxMenuItem.vue.d.ts.map +0 -1
  432. package/dist/component/FluxMenuOptions.vue.d.ts.map +0 -1
  433. package/dist/component/FluxMenuSubHeader.vue.d.ts.map +0 -1
  434. package/dist/component/FluxMenuTitle.vue.d.ts.map +0 -1
  435. package/dist/component/FluxNotice.vue.d.ts.map +0 -1
  436. package/dist/component/FluxNoticeStack.vue.d.ts.map +0 -1
  437. package/dist/component/FluxOverlay.vue.d.ts.map +0 -1
  438. package/dist/component/FluxPagination.vue.d.ts.map +0 -1
  439. package/dist/component/FluxPaginationBar.vue.d.ts.map +0 -1
  440. package/dist/component/FluxPane.vue.d.ts.map +0 -1
  441. package/dist/component/FluxPaneBody.vue.d.ts.map +0 -1
  442. package/dist/component/FluxPaneDeck.vue.d.ts.map +0 -1
  443. package/dist/component/FluxPaneFooter.vue.d.ts.map +0 -1
  444. package/dist/component/FluxPaneGroup.vue.d.ts.map +0 -1
  445. package/dist/component/FluxPaneHeader.vue.d.ts.map +0 -1
  446. package/dist/component/FluxPaneIllustration.vue.d.ts.map +0 -1
  447. package/dist/component/FluxPaneMedia.vue.d.ts.map +0 -1
  448. package/dist/component/FluxPercentageBar.vue.d.ts.map +0 -1
  449. package/dist/component/FluxPersona.vue.d.ts.map +0 -1
  450. package/dist/component/FluxPlaceholder.vue.d.ts.map +0 -1
  451. package/dist/component/FluxPressable.vue.d.ts.map +0 -1
  452. package/dist/component/FluxPrimaryButton.vue.d.ts.map +0 -1
  453. package/dist/component/FluxProgressBar.vue.d.ts.map +0 -1
  454. package/dist/component/FluxPrompt.vue.d.ts.map +0 -1
  455. package/dist/component/FluxPublishButton.vue.d.ts.map +0 -1
  456. package/dist/component/FluxQuantitySelector.vue.d.ts.map +0 -1
  457. package/dist/component/FluxRemove.vue.d.ts.map +0 -1
  458. package/dist/component/FluxRoot.vue.d.ts.map +0 -1
  459. package/dist/component/FluxSecondaryButton.vue.d.ts.map +0 -1
  460. package/dist/component/FluxSegmentedControl.vue.d.ts.map +0 -1
  461. package/dist/component/FluxSegmentedView.vue.d.ts.map +0 -1
  462. package/dist/component/FluxSeparator.vue.d.ts.map +0 -1
  463. package/dist/component/FluxSlideOver.vue.d.ts.map +0 -1
  464. package/dist/component/FluxSnackbar.vue.d.ts.map +0 -1
  465. package/dist/component/FluxSnackbarProvider.vue.d.ts.map +0 -1
  466. package/dist/component/FluxSpacer.vue.d.ts.map +0 -1
  467. package/dist/component/FluxSpacing.vue.d.ts.map +0 -1
  468. package/dist/component/FluxSpinner.vue.d.ts.map +0 -1
  469. package/dist/component/FluxSplitButton.vue.d.ts.map +0 -1
  470. package/dist/component/FluxStack.vue.d.ts.map +0 -1
  471. package/dist/component/FluxStatistic.vue.d.ts.map +0 -1
  472. package/dist/component/FluxStepper.vue.d.ts.map +0 -1
  473. package/dist/component/FluxStepperStep.vue.d.ts.map +0 -1
  474. package/dist/component/FluxStepperSteps.vue.d.ts.map +0 -1
  475. package/dist/component/FluxTab.vue.d.ts.map +0 -1
  476. package/dist/component/FluxTabBar.vue.d.ts.map +0 -1
  477. package/dist/component/FluxTabBarItem.vue.d.ts.map +0 -1
  478. package/dist/component/FluxTable.vue.d.ts.map +0 -1
  479. package/dist/component/FluxTableActions.vue.d.ts.map +0 -1
  480. package/dist/component/FluxTableCell.vue.d.ts.map +0 -1
  481. package/dist/component/FluxTableHeader.vue.d.ts.map +0 -1
  482. package/dist/component/FluxTableRow.vue.d.ts.map +0 -1
  483. package/dist/component/FluxTabs.vue.d.ts.map +0 -1
  484. package/dist/component/FluxTag.vue.d.ts.map +0 -1
  485. package/dist/component/FluxTagStack.vue.d.ts.map +0 -1
  486. package/dist/component/FluxTicks.vue.d.ts.map +0 -1
  487. package/dist/component/FluxTimeline.vue.d.ts.map +0 -1
  488. package/dist/component/FluxTimelineItem.vue.d.ts.map +0 -1
  489. package/dist/component/FluxToggle.vue.d.ts.map +0 -1
  490. package/dist/component/FluxToolbar.vue.d.ts.map +0 -1
  491. package/dist/component/FluxToolbarGroup.vue.d.ts.map +0 -1
  492. package/dist/component/FluxTooltip.vue.d.ts.map +0 -1
  493. package/dist/component/FluxTooltipProvider.vue.d.ts.map +0 -1
  494. package/dist/component/FluxWindow.vue.d.ts.map +0 -1
  495. package/dist/component/index.d.ts.map +0 -1
  496. package/dist/component/primitive/Anchor.vue.d.ts.map +0 -1
  497. package/dist/component/primitive/AnchorPopup.vue.d.ts.map +0 -1
  498. package/dist/component/primitive/CoordinatePicker.vue.d.ts.map +0 -1
  499. package/dist/component/primitive/CoordinatePickerThumb.vue.d.ts.map +0 -1
  500. package/dist/component/primitive/FilterItem.vue.d.ts.map +0 -1
  501. package/dist/component/primitive/FilterMenuRenderer.d.ts.map +0 -1
  502. package/dist/component/primitive/FilterOptionBase.vue.d.ts.map +0 -1
  503. package/dist/component/primitive/SelectBase.vue.d.ts.map +0 -1
  504. package/dist/component/primitive/SliderBase.vue.d.ts.map +0 -1
  505. package/dist/component/primitive/SliderThumb.vue.d.ts.map +0 -1
  506. package/dist/component/primitive/SliderTrack.vue.d.ts.map +0 -1
  507. package/dist/component/primitive/VNodeRenderer.d.ts.map +0 -1
  508. package/dist/component/primitive/index.d.ts.map +0 -1
  509. package/dist/composable/index.d.ts.map +0 -1
  510. package/dist/composable/private/index.d.ts.map +0 -1
  511. package/dist/composable/private/useFormSelect.d.ts.map +0 -1
  512. package/dist/composable/private/useLoaded.d.ts +0 -5
  513. package/dist/composable/private/useLoaded.d.ts.map +0 -1
  514. package/dist/composable/private/useTranslate.d.ts.map +0 -1
  515. package/dist/composable/useBreakpoints.d.ts.map +0 -1
  516. package/dist/composable/useDisabled.d.ts.map +0 -1
  517. package/dist/composable/useDisabledInjection.d.ts.map +0 -1
  518. package/dist/composable/useExpandableGroupInjection.d.ts.map +0 -1
  519. package/dist/composable/useFilterInjection.d.ts.map +0 -1
  520. package/dist/composable/useFlyoutInjection.d.ts.map +0 -1
  521. package/dist/composable/useFormFieldInjection.d.ts.map +0 -1
  522. package/dist/composable/useTableInjection.d.ts.map +0 -1
  523. package/dist/data/di.d.ts.map +0 -1
  524. package/dist/data/filter.d.ts.map +0 -1
  525. package/dist/data/helper.d.ts.map +0 -1
  526. package/dist/data/i18n.d.ts.map +0 -1
  527. package/dist/data/iconRegistry.d.ts.map +0 -1
  528. package/dist/data/index.d.ts.map +0 -1
  529. package/dist/data/inputMask.d.ts.map +0 -1
  530. package/dist/data/store.d.ts.map +0 -1
  531. package/dist/flux.css +0 -1
  532. package/dist/flux.js +0 -11402
  533. package/dist/flux.js.map +0 -1
  534. package/dist/index.d.ts.map +0 -1
  535. package/dist/transition/FluxAutoHeightTransition.vue.d.ts.map +0 -1
  536. package/dist/transition/FluxAutoWidthTransition.vue.d.ts.map +0 -1
  537. package/dist/transition/FluxBreakthroughTransition.vue.d.ts.map +0 -1
  538. package/dist/transition/FluxFadeTransition.vue.d.ts.map +0 -1
  539. package/dist/transition/FluxOverlayTransition.vue.d.ts.map +0 -1
  540. package/dist/transition/FluxRouteTransition.vue.d.ts.map +0 -1
  541. package/dist/transition/FluxSlideOverTransition.vue.d.ts.map +0 -1
  542. package/dist/transition/FluxTooltipTransition.vue.d.ts.map +0 -1
  543. package/dist/transition/FluxVerticalWindowTransition.vue.d.ts.map +0 -1
  544. package/dist/transition/FluxWindowTransition.vue.d.ts.map +0 -1
  545. package/dist/transition/index.d.ts.map +0 -1
  546. package/dist/util/createDialogRenderer.d.ts.map +0 -1
  547. package/dist/util/createLabelForDateRange.d.ts.map +0 -1
  548. package/dist/util/index.d.ts.map +0 -1
  549. package/src/composable/private/useLoaded.ts +0 -21
@@ -0,0 +1,28 @@
1
+ <template>
2
+ <FluxButton
3
+ :="{type, disabled, iconLeading, iconTrailing, isFilled, isLoading, isSubmit, label, size, href, rel, target, to}"
4
+ :css-class="$style.primaryLinkButton"
5
+ :css-class-icon="$style.primaryLinkButtonIcon"
6
+ :css-class-label="$style.primaryLinkButtonLabel"
7
+ @click="$emit('click', $event)"
8
+ @mouseenter="$emit('mouseenter', $event)"
9
+ @mouseleave="$emit('mouseleave', $event)">
10
+ <template
11
+ v-for="slot of SLOTS"
12
+ #[slot]>
13
+ <slot :name="slot"/>
14
+ </template>
15
+ </FluxButton>
16
+ </template>
17
+
18
+ <script
19
+ lang="ts"
20
+ setup>
21
+ import type { FluxButtonEmits, FluxButtonProps, FluxButtonSlots } from '@flux-ui/types';
22
+ import FluxButton, { SLOTS } from './FluxButton.vue';
23
+ import $style from '$flux/css/component/Button.module.scss';
24
+
25
+ defineEmits<FluxButtonEmits>();
26
+ defineProps<FluxButtonProps>();
27
+ defineSlots<FluxButtonSlots>();
28
+ </script>
@@ -8,7 +8,7 @@
8
8
  :aria-valuemin="min">
9
9
  <div :class="isIndeterminate ? $style.progressBarTrackIndeterminate : $style.progressBarTrack">
10
10
  <div
11
- :class="$style.progressBarValue"
11
+ :class="position >= 1 ? $style.progressBarValueComplete : $style.progressBarValueIncomplete"
12
12
  :style="{
13
13
  width: `${isIndeterminate ? 100 : position * 100}%`
14
14
  }"/>
@@ -6,27 +6,7 @@
6
6
  <slot/>
7
7
  </div>
8
8
 
9
- <FluxOverlay size="medium">
10
- <FluxAlert
11
- v-for="alert of alerts"
12
- :key="alert.id"
13
- :alert="alert"/>
14
- </FluxOverlay>
15
-
16
- <FluxOverlay size="medium">
17
- <FluxConfirm
18
- v-for="confirm of confirms"
19
- :key="confirm.id"
20
- :confirm="confirm"/>
21
- </FluxOverlay>
22
-
23
- <FluxOverlay size="medium">
24
- <FluxPrompt
25
- v-for="prompt of prompts"
26
- :key="prompt.id"
27
- :prompt="prompt"/>
28
- </FluxOverlay>
29
-
9
+ <FluxOverlayProvider/>
30
10
  <FluxSnackbarProvider/>
31
11
  <FluxTooltipProvider/>
32
12
  </template>
@@ -36,10 +16,7 @@
36
16
  setup>
37
17
  import { watch } from 'vue';
38
18
  import { useFluxStore } from '$flux/data';
39
- import FluxAlert from './FluxAlert.vue';
40
- import FluxConfirm from './FluxConfirm.vue';
41
- import FluxPrompt from './FluxPrompt.vue';
42
- import FluxOverlay from './FluxOverlay.vue';
19
+ import FluxOverlayProvider from './FluxOverlayProvider.vue';
43
20
  import FluxSnackbarProvider from './FluxSnackbarProvider.vue';
44
21
  import FluxTooltipProvider from './FluxTooltipProvider.vue';
45
22
  import $style from '$flux/css/component/Root.module.scss';
@@ -52,7 +29,7 @@
52
29
  default(): any;
53
30
  }>();
54
31
 
55
- const {alerts, confirms, inertMain, prompts} = useFluxStore();
32
+ const {inertMain} = useFluxStore();
56
33
 
57
34
  watch(inertMain, (inert, _, onCleanup): void => {
58
35
  if (!inert) {
@@ -0,0 +1,28 @@
1
+ <template>
2
+ <FluxButton
3
+ :="{type, disabled, iconLeading, iconTrailing, isFilled, isLoading, isSubmit, label, size, href, rel, target, to}"
4
+ :css-class="$style.secondaryLinkButton"
5
+ :css-class-icon="$style.secondaryLinkButtonIcon"
6
+ :css-class-label="$style.secondaryLinkButtonLabel"
7
+ @click="$emit('click', $event)"
8
+ @mouseenter="$emit('mouseenter', $event)"
9
+ @mouseleave="$emit('mouseleave', $event)">
10
+ <template
11
+ v-for="slot of SLOTS"
12
+ #[slot]>
13
+ <slot :name="slot"/>
14
+ </template>
15
+ </FluxButton>
16
+ </template>
17
+
18
+ <script
19
+ lang="ts"
20
+ setup>
21
+ import type { FluxButtonEmits, FluxButtonProps, FluxButtonSlots } from '@flux-ui/types';
22
+ import FluxButton, { SLOTS } from './FluxButton.vue';
23
+ import $style from '$flux/css/component/Button.module.scss';
24
+
25
+ defineEmits<FluxButtonEmits>();
26
+ defineProps<FluxButtonProps>();
27
+ defineSlots<FluxButtonSlots>();
28
+ </script>
@@ -24,7 +24,7 @@
24
24
 
25
25
  const {
26
26
  direction = 'vertical',
27
- gap = 30
27
+ gap = 21
28
28
  } = defineProps<{
29
29
  readonly direction?: FluxDirection;
30
30
  readonly gap?: number;
@@ -9,16 +9,25 @@
9
9
  color === 'info' && $style.isInfo,
10
10
  color === 'success' && $style.isSuccess,
11
11
  color === 'warning' && $style.isWarning
12
- )">
13
- <div :class="$style.statisticIcon">
14
- <FluxIcon
15
- :name="icon"
16
- :size="24"/>
12
+ )"
13
+ :is-loading="isLoading">
14
+ <FluxBoxedIcon
15
+ v-if="icon"
16
+ :class="$style.statisticIcon"
17
+ :color="color"
18
+ :name="icon"
19
+ :size="48"/>
20
+
21
+ <div v-else-if="imageSrc">
22
+ <img
23
+ :class="$style.statisticImage"
24
+ :src="imageSrc"
25
+ :alt="imageAlt"/>
17
26
  </div>
18
27
 
19
28
  <div :class="$style.statisticData">
20
29
  <span>{{ label }}</span>
21
- <strong>{{ value }}</strong>
30
+ <strong>{{ value ?? MDASH }}</strong>
22
31
  </div>
23
32
 
24
33
  <div
@@ -45,11 +54,13 @@
45
54
  <script
46
55
  lang="ts"
47
56
  setup>
57
+ import { MDASH } from '@basmilius/utils';
48
58
  import type { FluxColor, FluxDirection, FluxIconName } from '@flux-ui/types';
49
59
  import { clsx } from 'clsx';
50
60
  import FluxIcon from './FluxIcon.vue';
51
61
  import FluxPane from './FluxPane.vue';
52
62
  import $style from '$flux/css/component/Statistic.module.scss';
63
+ import FluxBoxedIcon from '$flux/component/FluxBoxedIcon.vue';
53
64
 
54
65
  const {
55
66
  changeColor = 'gray',
@@ -58,11 +69,14 @@
58
69
  } = defineProps<{
59
70
  readonly changeColor?: FluxColor;
60
71
  readonly changeIcon?: FluxIconName;
61
- readonly changeValue?: string;
72
+ readonly changeValue?: string | number | null;
62
73
  readonly color?: FluxColor;
63
74
  readonly direction?: FluxDirection;
64
- readonly icon: FluxIconName;
75
+ readonly icon?: FluxIconName;
76
+ readonly imageSrc?: string;
77
+ readonly imageAlt?: string;
78
+ readonly isLoading?: boolean;
65
79
  readonly label: string;
66
- readonly value: string;
80
+ readonly value?: string | number | null;
67
81
  }>();
68
82
  </script>
@@ -23,7 +23,7 @@
23
23
  lang="ts"
24
24
  setup>
25
25
  import { flattenVNodeTree } from '@flux-ui/internals';
26
- import { computed, ref, unref, VNode, watch } from 'vue';
26
+ import { computed, ref, unref, type VNode, watch } from 'vue';
27
27
  import { FluxWindowTransition } from '$flux/transition';
28
28
  import FluxDynamicView from './FluxDynamicView.vue';
29
29
  import FluxStepperSteps from './FluxStepperSteps.vue';
@@ -3,14 +3,16 @@
3
3
  :class="$style.tabBar"
4
4
  role="tablist"
5
5
  aria-orientation="horizontal">
6
- <button
7
- v-if="isStartArrowVisible"
8
- :class="$style.tabBarArrowStart"
9
- tabindex="-1"
10
- type="button"
11
- @click="scrollToStart">
12
- <FluxIcon name="angle-left"/>
13
- </button>
6
+ <FluxFadeTransition>
7
+ <button
8
+ v-if="isStartArrowVisible"
9
+ :class="$style.tabBarArrowStart"
10
+ tabindex="-1"
11
+ type="button"
12
+ @click="scrollToStart">
13
+ <FluxIcon name="angle-left"/>
14
+ </button>
15
+ </FluxFadeTransition>
14
16
 
15
17
  <div
16
18
  ref="tabBar"
@@ -22,23 +24,27 @@
22
24
  <slot/>
23
25
  </div>
24
26
 
25
- <button
26
- v-if="isEndArrowVisible"
27
- :class="$style.tabBarArrowEnd"
28
- tabindex="-1"
29
- type="button"
30
- @click="scrollToEnd">
31
- <FluxIcon name="angle-right"/>
32
- </button>
27
+ <FluxFadeTransition>
28
+ <button
29
+ v-if="isEndArrowVisible"
30
+ :class="$style.tabBarArrowEnd"
31
+ tabindex="-1"
32
+ type="button"
33
+ @click="scrollToEnd">
34
+ <FluxIcon name="angle-right"/>
35
+ </button>
36
+ </FluxFadeTransition>
33
37
  </nav>
34
38
  </template>
35
39
 
36
40
  <script
37
41
  lang="ts"
38
42
  setup>
39
- import { unrefTemplateElement, useEventListener, useMutationObserver } from '@flux-ui/internals';
43
+ import { useMutationObserver } from '@basmilius/common';
44
+ import { unrefTemplateElement, useEventListener } from '@flux-ui/internals';
40
45
  import { clsx } from 'clsx';
41
46
  import { onMounted, ref, useTemplateRef } from 'vue';
47
+ import { FluxFadeTransition } from '$flux/transition';
42
48
  import FluxIcon from './FluxIcon.vue';
43
49
  import $style from '$flux/css/component/Tab.module.scss';
44
50
 
@@ -29,7 +29,7 @@
29
29
  lang="ts"
30
30
  setup>
31
31
  import type { FluxIconName, FluxPressableType, FluxTo } from '@flux-ui/types';
32
- import { ComponentPublicInstance, toRef, unref, useTemplateRef, watch } from 'vue';
32
+ import { type ComponentPublicInstance, toRef, unref, useTemplateRef, watch } from 'vue';
33
33
  import { useDisabled } from '$flux/composable';
34
34
  import FluxIcon from './FluxIcon.vue';
35
35
  import FluxPressable from './FluxPressable.vue';
@@ -1,12 +1,20 @@
1
1
  <template>
2
2
  <div :class="$style.table">
3
3
  <table :class="$style.tableBase">
4
+ <slot name="colgroups"/>
5
+
4
6
  <thead v-if="slots.header">
5
7
  <slot name="header"/>
6
8
  </thead>
7
9
 
8
10
  <tbody v-if="slots.default">
9
11
  <slot/>
12
+
13
+ <FluxTableRow
14
+ v-if="fillColumns"
15
+ :class="$style.tableFill">
16
+ <FluxTableCell v-for="_ of fillColumns"/>
17
+ </FluxTableRow>
10
18
  </tbody>
11
19
 
12
20
  <tfoot v-if="slots.footer">
@@ -25,15 +33,25 @@
25
33
  :class="$style.tableLoader">
26
34
  <FluxSpinner/>
27
35
  </div>
36
+
37
+ <FluxPaneBody
38
+ v-if="slots.pagination"
39
+ :class="$style.tablePagination">
40
+ <slot name="pagination"/>
41
+ </FluxPaneBody>
28
42
  </div>
29
43
  </template>
30
44
 
31
45
  <script
32
46
  lang="ts"
33
47
  setup>
48
+ import type { VNode } from 'vue';
34
49
  import { provide } from 'vue';
35
50
  import { FluxTableInjectionKey } from '$flux/data';
51
+ import FluxPaneBody from './FluxPaneBody.vue';
36
52
  import FluxSpinner from './FluxSpinner.vue';
53
+ import FluxTableCell from './FluxTableCell.vue';
54
+ import FluxTableRow from './FluxTableRow.vue';
37
55
  import $style from '$flux/css/component/Table.module.scss';
38
56
 
39
57
  const {
@@ -45,6 +63,7 @@
45
63
  isStriped = false
46
64
  } = defineProps<{
47
65
  readonly captionSide?: 'top' | 'bottom';
66
+ readonly fillColumns?: number;
48
67
  readonly isBordered?: boolean;
49
68
  readonly isHoverable?: boolean;
50
69
  readonly isLoading?: boolean;
@@ -53,10 +72,12 @@
53
72
  }>();
54
73
 
55
74
  const slots = defineSlots<{
56
- default?(): any;
57
- caption?(): any;
58
- footer?(): any;
59
- header?(): any;
75
+ default?(): VNode;
76
+ colgroups?(): VNode;
77
+ caption?(): VNode;
78
+ footer?(): VNode;
79
+ header?(): VNode;
80
+ pagination?(): VNode;
60
81
  }>();
61
82
 
62
83
  provide(FluxTableInjectionKey, {
@@ -0,0 +1,37 @@
1
+ <template>
2
+ <tr :class="$style.tableRow">
3
+ <td
4
+ :class="clsx(
5
+ $style.tableBar,
6
+ isBordered && $style.isBordered,
7
+ isHoverable && $style.isHoverable,
8
+ isSeparated && $style.isSeparated,
9
+ isStriped && $style.isStriped
10
+ )"
11
+ colspan="100%"
12
+ role="cell">
13
+ <div :class="$style.tableBarContent">
14
+ <slot/>
15
+ </div>
16
+ </td>
17
+ </tr>
18
+ </template>
19
+
20
+ <script
21
+ lang="ts"
22
+ setup>
23
+ import { useTableInjection } from '$flux/composable';
24
+ import { clsx } from 'clsx';
25
+ import $style from '$flux/css/component/Table.module.scss';
26
+
27
+ defineSlots<{
28
+ default(): any;
29
+ }>();
30
+
31
+ const {
32
+ isBordered,
33
+ isHoverable,
34
+ isSeparated,
35
+ isStriped
36
+ } = useTableInjection();
37
+ </script>
@@ -12,7 +12,8 @@
12
12
  <div
13
13
  :class="$style.tableCellContent"
14
14
  :style="{
15
- flexFlow: contentDirection
15
+ flexFlow: contentDirection,
16
+ gap: contentGap && `${contentGap}px`
16
17
  }">
17
18
  <slot/>
18
19
  </div>
@@ -31,6 +32,7 @@
31
32
  contentDirection = 'row'
32
33
  } = defineProps<{
33
34
  readonly contentDirection?: 'column' | 'row';
35
+ readonly contentGap?: number;
34
36
  }>();
35
37
 
36
38
  defineSlots<{
@@ -33,7 +33,7 @@
33
33
  setup>
34
34
  import { flattenVNodeTree, getComponentProps } from '@flux-ui/internals';
35
35
  import type { FluxIconName } from '@flux-ui/types';
36
- import { computed, ref, unref, VNode, watch } from 'vue';
36
+ import { computed, ref, unref, type VNode, watch } from 'vue';
37
37
  import { FluxWindowTransition } from '$flux/transition';
38
38
  import { VNodeRenderer } from './primitive';
39
39
  import FluxTabBar from './FluxTabBar.vue';
@@ -1,5 +1,5 @@
1
1
  <script lang="ts">
2
- import { defineComponent, getCurrentInstance, onMounted, onUnmounted, PropType, ref, SlotsType, VNode } from 'vue';
2
+ import { defineComponent, getCurrentInstance, onMounted, onUnmounted, type PropType, ref, type SlotsType, type VNode } from 'vue';
3
3
  import { addTooltip, removeTooltip } from '$flux/data';
4
4
 
5
5
  export default defineComponent({
@@ -20,12 +20,14 @@
20
20
  const elm = instance.proxy!.$el;
21
21
  elm.addEventListener('mouseenter', onHover, {passive: true});
22
22
  elm.addEventListener('mouseleave', onLeave, {passive: true});
23
+ window.addEventListener('scroll', onLeave, {capture: true});
23
24
  });
24
25
 
25
26
  onUnmounted(() => {
26
27
  const elm = instance.proxy!.$el;
27
28
  elm.removeEventListener('mouseenter', onHover);
28
29
  elm.removeEventListener('mouseleave', onLeave);
30
+ window.removeEventListener('scroll', onLeave);
29
31
  onLeave();
30
32
  });
31
33
 
@@ -1,8 +1,8 @@
1
1
  <script lang="ts">
2
2
  import { unrefTemplateElement } from '@flux-ui/internals';
3
3
  import { clsx } from 'clsx';
4
- import { computed, defineComponent, h, ref, unref, watch } from 'vue';
5
- import { useFluxStore } from '$flux/data';
4
+ import { computed, defineComponent, h, provide, ref, unref, watch } from 'vue';
5
+ import { FluxTooltipInjectionKey, useFluxStore } from '$flux/data';
6
6
  import { FluxTooltipTransition } from '$flux/transition';
7
7
  import $style from '$flux/css/component/Tooltip.module.scss';
8
8
 
@@ -60,7 +60,11 @@
60
60
  }
61
61
  }
62
62
 
63
- watch(content, () => requestAnimationFrame(() => calculate()));
63
+ provide(FluxTooltipInjectionKey, {
64
+ calculate
65
+ });
66
+
67
+ watch(content, () => requestAnimationFrame(calculate));
64
68
 
65
69
  return () => h(FluxTooltipTransition, {}, {
66
70
  default: () => {
@@ -35,6 +35,7 @@ export { default as FluxExpandableGroup } from './FluxExpandableGroup.vue';
35
35
  export { default as FluxFader } from './FluxFader.vue';
36
36
  export { default as FluxFaderItem } from './FluxFaderItem.vue';
37
37
  export { default as FluxFilter } from './FluxFilter.vue';
38
+ export { default as FluxFilterBar } from './FluxFilterBar.vue';
38
39
  export { default as FluxFilterDate } from './FluxFilterDate.vue';
39
40
  export { default as FluxFilterDateRange } from './FluxFilterDateRange.vue';
40
41
  export { default as FluxFilterOption } from './FluxFilterOption.vue';
@@ -53,6 +54,7 @@ export { default as FluxFormDateRangeInput } from './FluxFormDateRangeInput.vue'
53
54
  export { default as FluxFormDateTimeInput } from './FluxFormDateTimeInput.vue';
54
55
  export { default as FluxFormField } from './FluxFormField.vue';
55
56
  export { default as FluxFormFieldAddition } from './FluxFormFieldAddition.vue';
57
+ export { default as FluxFormGrid } from './FluxFormGrid.vue';
56
58
  export { default as FluxFormInput } from './FluxFormInput.vue';
57
59
  export { default as FluxFormInputAddition } from './FluxFormInputAddition.vue';
58
60
  export { default as FluxFormInputGroup } from './FluxFormInputGroup.vue';
@@ -73,6 +75,11 @@ export { default as FluxGridPattern } from './FluxGridPattern.vue';
73
75
  export { default as FluxIcon } from './FluxIcon.vue';
74
76
  export { default as FluxInfo } from './FluxInfo.vue';
75
77
  export { default as FluxInfoStack } from './FluxInfoStack.vue';
78
+ export { default as FluxItem } from './FluxItem.vue';
79
+ export { default as FluxItemActions } from './FluxItemActions.vue';
80
+ export { default as FluxItemContent } from './FluxItemContent.vue';
81
+ export { default as FluxItemMedia } from './FluxItemMedia.vue';
82
+ export { default as FluxItemStack } from './FluxItemStack.vue';
76
83
  export { default as FluxLegend } from './FluxLegend.vue';
77
84
  export { default as FluxLink } from './FluxLink.vue';
78
85
  export { default as FluxMenu } from './FluxMenu.vue';
@@ -83,7 +90,9 @@ export { default as FluxMenuSubHeader } from './FluxMenuSubHeader.vue';
83
90
  export { default as FluxMenuTitle } from './FluxMenuTitle.vue';
84
91
  export { default as FluxNotice } from './FluxNotice.vue';
85
92
  export { default as FluxNoticeStack } from './FluxNoticeStack.vue';
93
+ export { default as FluxOverflowBar } from './FluxOverflowBar.vue';
86
94
  export { default as FluxOverlay } from './FluxOverlay.vue';
95
+ export { default as FluxOverlayProvider } from './FluxOverlayProvider.vue';
87
96
  export { default as FluxPagination } from './FluxPagination.vue';
88
97
  export { default as FluxPaginationBar } from './FluxPaginationBar.vue';
89
98
  export { default as FluxPane } from './FluxPane.vue';
@@ -99,12 +108,14 @@ export { default as FluxPersona } from './FluxPersona.vue';
99
108
  export { default as FluxPlaceholder } from './FluxPlaceholder.vue';
100
109
  export { default as FluxPressable } from './FluxPressable.vue';
101
110
  export { default as FluxPrimaryButton } from './FluxPrimaryButton.vue';
111
+ export { default as FluxPrimaryLinkButton } from './FluxPrimaryLinkButton.vue';
102
112
  export { default as FluxProgressBar } from './FluxProgressBar.vue';
103
113
  export { default as FluxPublishButton } from './FluxPublishButton.vue';
104
114
  export { default as FluxQuantitySelector } from './FluxQuantitySelector.vue';
105
115
  export { default as FluxRemove } from './FluxRemove.vue';
106
116
  export { default as FluxRoot } from './FluxRoot.vue';
107
117
  export { default as FluxSecondaryButton } from './FluxSecondaryButton.vue';
118
+ export { default as FluxSecondaryLinkButton } from './FluxSecondaryLinkButton.vue';
108
119
  export { default as FluxSegmentedControl } from './FluxSegmentedControl.vue';
109
120
  export { default as FluxSegmentedView } from './FluxSegmentedView.vue';
110
121
  export { default as FluxSeparator } from './FluxSeparator.vue';
@@ -126,6 +137,7 @@ export { default as FluxTabBarItem } from './FluxTabBarItem.vue';
126
137
  export { default as FluxTabs } from './FluxTabs.vue';
127
138
  export { default as FluxTable } from './FluxTable.vue';
128
139
  export { default as FluxTableActions } from './FluxTableActions.vue';
140
+ export { default as FluxTableBar } from './FluxTableBar.vue';
129
141
  export { default as FluxTableCell } from './FluxTableCell.vue';
130
142
  export { default as FluxTableHeader } from './FluxTableHeader.vue';
131
143
  export { default as FluxTableRow } from './FluxTableRow.vue';
@@ -13,10 +13,10 @@
13
13
  <script
14
14
  lang="ts"
15
15
  setup>
16
+ import { useMutationObserver } from '@basmilius/common';
16
17
  import { isHtmlElement } from '@basmilius/utils';
17
- import { useMutationObserver } from '@flux-ui/internals';
18
18
  import type { FluxDirection } from '@flux-ui/types';
19
- import { ComponentPublicInstance, onMounted, onUnmounted, reactive, ref, unref, useTemplateRef, watchEffect } from 'vue';
19
+ import { type ComponentPublicInstance, onMounted, onUnmounted, reactive, ref, unref, useTemplateRef, watchEffect } from 'vue';
20
20
 
21
21
  const {
22
22
  anchor,
@@ -150,10 +150,14 @@
150
150
  px = x + width / 2 - popupWidth / 2;
151
151
  py = y + height + margin;
152
152
 
153
- if (py + popupHeight > innerHeight) {
153
+ if (py + popupHeight + margin > innerHeight) {
154
154
  py = y - popupHeight - margin;
155
155
  }
156
156
  }
157
+
158
+ if (py < 0 || py + popupHeight > innerHeight) {
159
+ py = innerHeight / 2 - popupHeight / 2;
160
+ }
157
161
  break;
158
162
  }
159
163
 
@@ -188,7 +192,9 @@
188
192
 
189
193
  anchorRef.value = isHtmlElement(anchor) ? anchor : anchor.$el;
190
194
 
191
- requestAnimationFrame(resize);
192
- requestAnimationFrame(reposition);
195
+ requestAnimationFrame(() => {
196
+ requestAnimationFrame(resize);
197
+ requestAnimationFrame(reposition);
198
+ });
193
199
  });
194
200
  </script>
@@ -0,0 +1,43 @@
1
+ <template>
2
+ <FluxBadge
3
+ v-if="valueLabel"
4
+ :class="$style.filterBadge"
5
+ :is-loading="isLoading"
6
+ :label="valueLabel"
7
+ @click="onClick"/>
8
+ </template>
9
+
10
+ <script
11
+ lang="ts"
12
+ setup>
13
+ import { useLoaded } from '@basmilius/common';
14
+ import type { FluxFilterItem, FluxFilterValue } from '@flux-ui/types';
15
+ import { computed, ref, unref, watch } from 'vue';
16
+ import { FluxBadge } from '$flux/component';
17
+ import $style from '$flux/css/component/Filter.module.scss';
18
+
19
+ const emit = defineEmits<{
20
+ click: [MouseEvent];
21
+ }>();
22
+
23
+ const {
24
+ item,
25
+ value
26
+ } = defineProps<{
27
+ readonly item: FluxFilterItem;
28
+ readonly value: FluxFilterValue;
29
+ }>();
30
+
31
+ const {isLoading, loaded} = useLoaded();
32
+ const getValueLabel = computed(() => loaded(item.getValueLabel));
33
+
34
+ const valueLabel = ref<string>();
35
+
36
+ function onClick(evt: MouseEvent): void {
37
+ emit('click', evt);
38
+ }
39
+
40
+ watch([() => item, () => value], async () => {
41
+ valueLabel.value = await unref(getValueLabel)(value) ?? undefined;
42
+ }, {deep: true, immediate: true});
43
+ </script>
@@ -12,9 +12,9 @@
12
12
  <script
13
13
  lang="ts"
14
14
  setup>
15
+ import { useLoaded } from '@basmilius/common';
15
16
  import type { FluxFilterItem, FluxFilterValue } from '@flux-ui/types';
16
17
  import { computed, ref, unref, watch } from 'vue';
17
- import { useLoaded } from '$flux/composable/private';
18
18
  import FluxMenuItem from '$flux/component/FluxMenuItem.vue';
19
19
 
20
20
  const emit = defineEmits<{