@vuetify/nightly 3.0.0-beta.0 → 3.0.0-beta.2

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 (277) hide show
  1. package/CHANGELOG.md +53 -2
  2. package/dist/json/attributes.json +343 -195
  3. package/dist/json/importMap.json +20 -0
  4. package/dist/json/tags.json +106 -44
  5. package/dist/json/web-types.json +946 -549
  6. package/dist/vuetify.css +1486 -1085
  7. package/dist/vuetify.d.ts +9036 -8077
  8. package/dist/vuetify.esm.js +1511 -944
  9. package/dist/vuetify.esm.js.map +1 -1
  10. package/dist/vuetify.js +1510 -943
  11. package/dist/vuetify.js.map +1 -1
  12. package/dist/vuetify.min.css +3 -3
  13. package/dist/vuetify.min.js +825 -754
  14. package/dist/vuetify.min.js.map +1 -1
  15. package/lib/components/VAlert/VAlert.css +29 -8
  16. package/lib/components/VAlert/VAlert.mjs +31 -17
  17. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  18. package/lib/components/VAlert/VAlert.sass +27 -7
  19. package/lib/components/VAlert/VAlertTitle.mjs +1 -0
  20. package/lib/components/VAlert/VAlertTitle.mjs.map +1 -1
  21. package/lib/components/VAlert/_variables.scss +14 -7
  22. package/lib/components/VApp/VApp.css +1 -0
  23. package/lib/components/VApp/VApp.sass +1 -0
  24. package/lib/components/VAppBar/VAppBar.mjs +7 -3
  25. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  26. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  27. package/lib/components/VAutocomplete/VAutocomplete.mjs +82 -69
  28. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  29. package/lib/components/VAvatar/VAvatar.mjs +15 -14
  30. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  31. package/lib/components/VBanner/VBanner.css +82 -58
  32. package/lib/components/VBanner/VBanner.mjs +39 -43
  33. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  34. package/lib/components/VBanner/VBanner.sass +61 -54
  35. package/lib/components/VBanner/VBannerActions.mjs +34 -2
  36. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  37. package/lib/components/VBanner/VBannerAvatar.mjs +20 -0
  38. package/lib/components/VBanner/VBannerAvatar.mjs.map +1 -0
  39. package/lib/components/VBanner/VBannerIcon.mjs +20 -0
  40. package/lib/components/VBanner/VBannerIcon.mjs.map +1 -0
  41. package/lib/components/VBanner/_variables.scss +10 -14
  42. package/lib/components/VBanner/index.mjs +2 -0
  43. package/lib/components/VBanner/index.mjs.map +1 -1
  44. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +2 -0
  45. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  46. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +10 -9
  47. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  48. package/lib/components/VBtn/VBtn.css +20 -1
  49. package/lib/components/VBtn/VBtn.mjs +20 -7
  50. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  51. package/lib/components/VBtn/VBtn.sass +15 -2
  52. package/lib/components/VBtn/_variables.scss +3 -0
  53. package/lib/components/VBtnGroup/VBtnGroup.css +14 -6
  54. package/lib/components/VBtnGroup/VBtnGroup.sass +14 -6
  55. package/lib/components/VCard/VCard.css +13 -11
  56. package/lib/components/VCard/VCard.mjs +5 -2
  57. package/lib/components/VCard/VCard.mjs.map +1 -1
  58. package/lib/components/VCard/VCard.sass +12 -9
  59. package/lib/components/VCard/VCardActions.mjs +1 -2
  60. package/lib/components/VCard/VCardActions.mjs.map +1 -1
  61. package/lib/components/VCard/VCardContent.mjs +3 -0
  62. package/lib/components/VCard/VCardContent.mjs.map +1 -0
  63. package/lib/components/VCard/_variables.scss +11 -5
  64. package/lib/components/VCard/index.mjs +1 -0
  65. package/lib/components/VCard/index.mjs.map +1 -1
  66. package/lib/components/VCarousel/VCarousel.mjs +1 -1
  67. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  68. package/lib/components/VCheckbox/VCheckbox.mjs +2 -2
  69. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  70. package/lib/components/VChip/VChip.css +3 -0
  71. package/lib/components/VChip/VChip.sass +3 -0
  72. package/lib/components/VChip/_variables.scss +3 -0
  73. package/lib/components/VColorPicker/VColorPickerCanvas.css +1 -1
  74. package/lib/components/VCombobox/VCombobox.mjs +92 -74
  75. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  76. package/lib/components/VDialog/VDialog.css +31 -11
  77. package/lib/components/VDialog/VDialog.mjs +6 -9
  78. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  79. package/lib/components/VDialog/VDialog.sass +27 -10
  80. package/lib/components/VDialog/_variables.scss +3 -6
  81. package/lib/components/VExpansionPanel/VExpansionPanel.css +3 -2
  82. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +6 -2
  83. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  84. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +5 -3
  85. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  86. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +4 -0
  87. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  88. package/lib/components/VField/VField.css +1 -1
  89. package/lib/components/VField/VField.mjs +3 -4
  90. package/lib/components/VField/VField.mjs.map +1 -1
  91. package/lib/components/VField/VField.sass +1 -1
  92. package/lib/components/VFileInput/VFileInput.mjs +2 -1
  93. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  94. package/lib/components/VFooter/VFooter.mjs +32 -15
  95. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  96. package/lib/components/VForm/VForm.mjs +25 -11
  97. package/lib/components/VForm/VForm.mjs.map +1 -1
  98. package/lib/components/VIcon/VIcon.css +27 -12
  99. package/lib/components/VIcon/VIcon.mjs +19 -16
  100. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  101. package/lib/components/VIcon/VIcon.sass +27 -16
  102. package/lib/components/VIcon/_variables.scss +1 -0
  103. package/lib/components/VInput/VInput.css +3 -1
  104. package/lib/components/VInput/VInput.mjs +3 -4
  105. package/lib/components/VInput/VInput.mjs.map +1 -1
  106. package/lib/components/VInput/VInput.sass +3 -1
  107. package/lib/components/VInput/_variables.scss +4 -0
  108. package/lib/components/VList/VList.css +7 -6
  109. package/lib/components/VList/VList.mjs +36 -17
  110. package/lib/components/VList/VList.mjs.map +1 -1
  111. package/lib/components/VList/VList.sass +3 -2
  112. package/lib/components/VList/VListChildren.mjs +1 -1
  113. package/lib/components/VList/VListChildren.mjs.map +1 -1
  114. package/lib/components/VList/VListGroup.mjs +28 -10
  115. package/lib/components/VList/VListGroup.mjs.map +1 -1
  116. package/lib/components/VList/VListItem.css +119 -42
  117. package/lib/components/VList/VListItem.mjs +36 -32
  118. package/lib/components/VList/VListItem.mjs.map +1 -1
  119. package/lib/components/VList/VListItem.sass +76 -28
  120. package/lib/components/VList/VListItemAction.mjs +29 -0
  121. package/lib/components/VList/VListItemAction.mjs.map +1 -0
  122. package/lib/components/VList/VListItemAvatar.mjs +10 -16
  123. package/lib/components/VList/VListItemAvatar.mjs.map +1 -1
  124. package/lib/components/VList/VListItemIcon.mjs +23 -0
  125. package/lib/components/VList/VListItemIcon.mjs.map +1 -0
  126. package/lib/components/VList/VListItemMedia.mjs +4 -4
  127. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  128. package/lib/components/VList/_variables.scss +12 -3
  129. package/lib/components/VList/index.mjs +2 -0
  130. package/lib/components/VList/index.mjs.map +1 -1
  131. package/lib/components/VMenu/VMenu.css +2 -12
  132. package/lib/components/VMenu/VMenu.mjs +61 -31
  133. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  134. package/lib/components/VMenu/VMenu.sass +3 -6
  135. package/lib/components/VMenu/shared.mjs +2 -0
  136. package/lib/components/VMenu/shared.mjs.map +1 -0
  137. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +1 -1
  138. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  139. package/lib/components/VOverlay/VOverlay.css +8 -0
  140. package/lib/components/VOverlay/VOverlay.mjs +16 -15
  141. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  142. package/lib/components/VOverlay/VOverlay.sass +9 -0
  143. package/lib/components/VOverlay/_variables.scss +1 -0
  144. package/lib/components/VOverlay/positionStrategies.mjs +7 -3
  145. package/lib/components/VOverlay/positionStrategies.mjs.map +1 -1
  146. package/lib/components/VOverlay/scrollStrategies.mjs +9 -0
  147. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  148. package/lib/components/VOverlay/useActivator.mjs +50 -14
  149. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  150. package/lib/components/VPagination/VPagination.mjs +10 -12
  151. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  152. package/lib/components/VProgressLinear/VProgressLinear.css +1 -1
  153. package/lib/components/VRadio/VRadio.mjs +1 -2
  154. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  155. package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -2
  156. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  157. package/lib/components/VRangeSlider/VRangeSlider.mjs +5 -2
  158. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  159. package/lib/components/VRating/VRating.css +2 -2
  160. package/lib/components/VRating/VRating.mjs +13 -3
  161. package/lib/components/VRating/VRating.mjs.map +1 -1
  162. package/lib/components/VRating/VRating.sass +2 -2
  163. package/lib/components/VSelect/VSelect.mjs +70 -91
  164. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  165. package/lib/components/VSelectionControl/VSelectionControl.mjs +2 -1
  166. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  167. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +2 -2
  168. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  169. package/lib/components/VSlideGroup/VSlideGroup.css +0 -5
  170. package/lib/components/VSlideGroup/VSlideGroup.mjs +36 -14
  171. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  172. package/lib/components/VSlideGroup/VSlideGroup.sass +0 -4
  173. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +3 -1
  174. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  175. package/lib/components/VSlider/VSlider.css +7 -2
  176. package/lib/components/VSlider/VSlider.sass +11 -5
  177. package/lib/components/VSlider/VSliderTrack.css +6 -6
  178. package/lib/components/VSlider/VSliderTrack.mjs +1 -1
  179. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  180. package/lib/components/VSlider/VSliderTrack.sass +7 -7
  181. package/lib/components/VSlider/_variables.scss +5 -2
  182. package/lib/components/VSnackbar/VSnackbar.css +14 -13
  183. package/lib/components/VSnackbar/VSnackbar.mjs +22 -10
  184. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  185. package/lib/components/VSnackbar/VSnackbar.sass +15 -16
  186. package/lib/components/VSnackbar/_variables.scss +0 -4
  187. package/lib/components/VSwitch/VSwitch.mjs +8 -5
  188. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  189. package/lib/components/VSystemBar/VSystemBar.css +0 -5
  190. package/lib/components/VSystemBar/VSystemBar.mjs +31 -14
  191. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  192. package/lib/components/VSystemBar/VSystemBar.sass +0 -5
  193. package/lib/components/VSystemBar/_variables.scss +0 -3
  194. package/lib/components/VTabs/VTab.mjs +28 -32
  195. package/lib/components/VTabs/VTab.mjs.map +1 -1
  196. package/lib/components/VTabs/VTabs.css +6 -2
  197. package/lib/components/VTabs/VTabs.mjs +7 -8
  198. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  199. package/lib/components/VTabs/VTabs.sass +6 -1
  200. package/lib/components/VTabs/shared.mjs +2 -0
  201. package/lib/components/VTabs/shared.mjs.map +1 -0
  202. package/lib/components/VTextField/VTextField.css +4 -4
  203. package/lib/components/VTextField/VTextField.mjs +5 -9
  204. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  205. package/lib/components/VTextField/VTextField.sass +5 -5
  206. package/lib/components/VTextarea/VTextarea.css +7 -4
  207. package/lib/components/VTextarea/VTextarea.sass +9 -5
  208. package/lib/components/VTimeline/VTimeline.css +187 -48
  209. package/lib/components/VTimeline/VTimeline.mjs +27 -11
  210. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  211. package/lib/components/VTimeline/VTimeline.sass +196 -51
  212. package/lib/components/VTimeline/VTimelineDivider.mjs +2 -1
  213. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  214. package/lib/components/VTimeline/_variables.scss +2 -1
  215. package/lib/components/VToolbar/VToolbar.css +8 -1
  216. package/lib/components/VToolbar/VToolbar.mjs +8 -11
  217. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  218. package/lib/components/VToolbar/VToolbar.sass +2 -1
  219. package/lib/components/VToolbar/VToolbarItems.mjs +0 -1
  220. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  221. package/lib/components/VToolbar/_variables.scss +13 -1
  222. package/lib/components/VWindow/VWindow.mjs +0 -8
  223. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  224. package/lib/components/index.d.ts +9025 -8077
  225. package/lib/composables/defaults.mjs +2 -2
  226. package/lib/composables/defaults.mjs.map +1 -1
  227. package/lib/composables/form.mjs +18 -5
  228. package/lib/composables/form.mjs.map +1 -1
  229. package/lib/composables/forwardRef.mjs +10 -6
  230. package/lib/composables/forwardRef.mjs.map +1 -1
  231. package/lib/composables/group.mjs +14 -6
  232. package/lib/composables/group.mjs.map +1 -1
  233. package/lib/composables/index.mjs.map +1 -1
  234. package/lib/composables/items.mjs +56 -0
  235. package/lib/composables/items.mjs.map +1 -0
  236. package/lib/composables/layout.mjs +7 -3
  237. package/lib/composables/layout.mjs.map +1 -1
  238. package/lib/composables/loader.mjs.map +1 -1
  239. package/lib/composables/nested/nested.mjs +27 -14
  240. package/lib/composables/nested/nested.mjs.map +1 -1
  241. package/lib/composables/nested/openStrategies.mjs +63 -36
  242. package/lib/composables/nested/openStrategies.mjs.map +1 -1
  243. package/lib/composables/nested/selectStrategies.mjs +163 -122
  244. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  245. package/lib/composables/overlay.mjs +5 -1
  246. package/lib/composables/overlay.mjs.map +1 -1
  247. package/lib/composables/proxiedModel.mjs.map +1 -1
  248. package/lib/composables/resizeObserver.mjs +1 -9
  249. package/lib/composables/resizeObserver.mjs.map +1 -1
  250. package/lib/composables/router.mjs +17 -5
  251. package/lib/composables/router.mjs.map +1 -1
  252. package/lib/composables/selectLink.mjs +19 -0
  253. package/lib/composables/selectLink.mjs.map +1 -0
  254. package/lib/composables/stack.mjs +7 -4
  255. package/lib/composables/stack.mjs.map +1 -1
  256. package/lib/composables/validation.mjs +6 -3
  257. package/lib/composables/validation.mjs.map +1 -1
  258. package/lib/composables/variant.mjs +0 -3
  259. package/lib/composables/variant.mjs.map +1 -1
  260. package/lib/directives/ripple/index.mjs +15 -3
  261. package/lib/directives/ripple/index.mjs.map +1 -1
  262. package/lib/entry-bundler.mjs +1 -1
  263. package/lib/framework.mjs +12 -7
  264. package/lib/framework.mjs.map +1 -1
  265. package/lib/index.d.ts +18 -2
  266. package/lib/locale/ca.mjs +9 -9
  267. package/lib/locale/ca.mjs.map +1 -1
  268. package/lib/styles/generic/_colors.scss +0 -1
  269. package/lib/styles/main.css +400 -392
  270. package/lib/styles/settings/_utilities.scss +54 -26
  271. package/lib/styles/tools/_states.sass +2 -1
  272. package/lib/util/defineComponent.mjs +37 -6
  273. package/lib/util/defineComponent.mjs.map +1 -1
  274. package/lib/util/getCurrentInstance.mjs +1 -1
  275. package/lib/util/getCurrentInstance.mjs.map +1 -1
  276. package/lib/util/helpers.mjs.map +1 -1
  277. package/package.json +31 -29
@@ -1,8 +1,8 @@
1
1
  .v-alert {
2
2
  display: grid;
3
3
  flex: 1 1;
4
- grid-template-areas: "prepend content append close";
5
- grid-template-columns: max-content auto max-content min-content;
4
+ grid-template-areas: "prepend content append close" ". content . .";
5
+ grid-template-columns: max-content auto max-content max-content;
6
6
  position: relative;
7
7
  padding: 16px;
8
8
  overflow: hidden;
@@ -59,6 +59,9 @@
59
59
  pointer-events: none;
60
60
  transition: opacity 0.2s ease-in-out;
61
61
  }
62
+ .v-alert--prominent {
63
+ grid-template-areas: "prepend content append close" "prepend content . .";
64
+ }
62
65
  .v-alert.v-alert--border {
63
66
  --v-border-opacity: 0.38;
64
67
  }
@@ -136,7 +139,6 @@
136
139
  }
137
140
 
138
141
  .v-alert__close {
139
- align-self: flex-start;
140
142
  cursor: pointer;
141
143
  display: flex;
142
144
  flex: 0 1 auto;
@@ -144,11 +146,30 @@
144
146
  user-select: none;
145
147
  }
146
148
 
149
+ .v-alert__content {
150
+ align-self: center;
151
+ grid-area: content;
152
+ overflow: hidden;
153
+ }
154
+
155
+ .v-alert__append,
156
+ .v-alert__close {
157
+ align-self: flex-start;
158
+ margin-inline-start: 90px;
159
+ }
160
+
147
161
  .v-alert__append {
162
+ align-self: flex-start;
148
163
  grid-area: append;
149
164
  }
165
+ .v-alert__append + .v-alert__close {
166
+ margin-inline-start: 16px;
167
+ }
150
168
 
151
169
  .v-alert__prepend {
170
+ align-self: flex-start;
171
+ display: flex;
172
+ align-items: center;
152
173
  grid-area: prepend;
153
174
  margin-inline-end: 16px;
154
175
  }
@@ -156,11 +177,10 @@
156
177
  align-self: center;
157
178
  }
158
179
 
159
- .v-alert__content {
160
- grid-area: content;
161
- line-height: 1.7;
180
+ .v-alert__underlay {
181
+ grid-area: none;
182
+ position: absolute;
162
183
  }
163
-
164
184
  .v-alert--border-start .v-alert__underlay {
165
185
  border-top-left-radius: 0;
166
186
  border-bottom-left-radius: 0;
@@ -180,12 +200,13 @@
180
200
 
181
201
  .v-alert-title {
182
202
  align-items: center;
203
+ align-self: center;
183
204
  display: flex;
184
205
  font-size: 1.25rem;
185
206
  font-weight: 500;
186
207
  hyphens: auto;
187
208
  letter-spacing: 0.0125em;
188
- line-height: 1.35;
209
+ line-height: 1.75rem;
189
210
  overflow-wrap: normal;
190
211
  text-transform: none;
191
212
  word-break: normal;
@@ -3,10 +3,12 @@ import { createVNode as _createVNode } from "vue";
3
3
  import "./VAlert.css"; // Components
4
4
 
5
5
  import { VAlertTitle } from "./VAlertTitle.mjs";
6
+ import { VDefaultsProvider } from "../VDefaultsProvider/index.mjs";
6
7
  import { VIcon } from "../VIcon/index.mjs"; // Composables
7
8
 
8
9
  import { genOverlays, makeVariantProps, useVariant } from "../../composables/variant.mjs";
9
10
  import { makeDensityProps, useDensity } from "../../composables/density.mjs";
11
+ import { makeDimensionProps, useDimension } from "../../composables/dimensions.mjs";
10
12
  import { makeElevationProps, useElevation } from "../../composables/elevation.mjs";
11
13
  import { makePositionProps, usePosition } from "../../composables/position.mjs";
12
14
  import { makeRoundedProps, useRounded } from "../../composables/rounded.mjs";
@@ -18,7 +20,6 @@ import { useTextColor } from "../../composables/color.mjs"; // Utilities
18
20
  import { computed, toRef } from 'vue';
19
21
  import { defineComponent } from "../../util/index.mjs"; // Types
20
22
 
21
- import { makeDimensionProps, useDimension } from "../../composables/dimensions.mjs";
22
23
  const allowedTypes = ['success', 'info', 'warning', 'error'];
23
24
  export const VAlert = defineComponent({
24
25
  name: 'VAlert',
@@ -86,7 +87,6 @@ export const VAlert = defineComponent({
86
87
 
87
88
  return {
88
89
  color: (_props$color = props.color) != null ? _props$color : props.type,
89
- textColor: props.textColor,
90
90
  variant: props.variant
91
91
  };
92
92
  });
@@ -126,9 +126,10 @@ export const VAlert = defineComponent({
126
126
  return () => {
127
127
  var _slots$default;
128
128
 
129
- const hasClose = !!(slots.close || props.closable);
130
129
  const hasPrepend = !!(slots.prepend || icon.value);
131
130
  const hasTitle = !!(slots.title || props.title);
131
+ const hasText = !!(props.text || slots.text);
132
+ const hasClose = !!(slots.close || props.closable);
132
133
  return isActive.value && _createVNode(props.tag, {
133
134
  "class": ['v-alert', props.border && {
134
135
  'v-alert--border': !!props.border,
@@ -142,24 +143,37 @@ export const VAlert = defineComponent({
142
143
  default: () => [genOverlays(false, 'v-alert'), props.border && _createVNode("div", {
143
144
  "class": ['v-alert__border', textColorClasses.value],
144
145
  "style": textColorStyles.value
145
- }, null), hasPrepend && _createVNode("div", {
146
- "class": "v-alert__prepend"
147
- }, [slots.prepend ? slots.prepend() : _createVNode(VIcon, {
148
- "icon": icon.value,
149
- "size": props.prominent ? 'large' : 'default'
150
- }, null)]), _createVNode("div", {
146
+ }, null), hasPrepend && _createVNode(VDefaultsProvider, {
147
+ "defaults": {
148
+ VIcon: {
149
+ density: props.density,
150
+ icon: icon.value,
151
+ size: props.prominent ? 44 : 'default'
152
+ }
153
+ }
154
+ }, {
155
+ default: () => [_createVNode("div", {
156
+ "class": "v-alert__prepend"
157
+ }, [slots.prepend ? slots.prepend() : icon.value && _createVNode(VIcon, null, null)])]
158
+ }), _createVNode("div", {
151
159
  "class": "v-alert__content"
152
160
  }, [hasTitle && _createVNode(VAlertTitle, null, {
153
161
  default: () => [slots.title ? slots.title() : props.title]
154
- }), slots.text ? slots.text() : props.text, (_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots)]), slots.append && _createVNode("div", {
162
+ }), hasText && (slots.text ? slots.text() : props.text), (_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots)]), slots.append && _createVNode("div", {
155
163
  "class": "v-alert__append"
156
- }, [slots.append()]), hasClose && _createVNode("div", {
157
- "class": "v-alert__close",
158
- "onClick": onCloseClick
159
- }, [slots.close ? slots.close() : _createVNode(VIcon, {
160
- "icon": props.closeIcon,
161
- "size": "small"
162
- }, null)])]
164
+ }, [slots.append()]), hasClose && _createVNode(VDefaultsProvider, {
165
+ "defaults": {
166
+ VIcon: {
167
+ icon: props.closeIcon,
168
+ size: 'small'
169
+ }
170
+ }
171
+ }, {
172
+ default: () => [_createVNode("div", {
173
+ "class": "v-alert__close",
174
+ "onClick": onCloseClick
175
+ }, [slots.close ? slots.close() : _createVNode(VIcon, null, null)])]
176
+ })]
163
177
  });
164
178
  };
165
179
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VAlert/VAlert.tsx"],"names":["VAlertTitle","VIcon","genOverlays","makeVariantProps","useVariant","makeDensityProps","useDensity","makeElevationProps","useElevation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","useProxiedModel","useTextColor","computed","toRef","defineComponent","makeDimensionProps","useDimension","allowedTypes","VAlert","name","props","border","type","Boolean","String","validator","val","includes","borderColor","closable","closeIcon","default","closeLabel","icon","modelValue","prominent","title","text","variant","emits","value","setup","slots","isActive","undefined","variantProps","color","textColor","themeClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","positionClasses","positionStyles","roundedClasses","textColorClasses","textColorStyles","onCloseClick","e","hasClose","close","hasPrepend","prepend","hasTitle","append"],"mappings":"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","sourcesContent":["// Styles\nimport './VAlert.sass'\n\n// Components\nimport { VAlertTitle } from './VAlertTitle'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\n\nconst allowedTypes = ['success', 'info', 'warning', 'error'] as const\n\ntype ContextualType = typeof allowedTypes[number]\n\nexport const VAlert = defineComponent({\n name: 'VAlert',\n\n props: {\n border: {\n type: [Boolean, String],\n validator: (val: boolean | string) => {\n return typeof val === 'boolean' || [\n 'top',\n 'end',\n 'bottom',\n 'start',\n ].includes(val)\n },\n },\n borderColor: String,\n closable: Boolean,\n closeIcon: {\n type: String,\n default: '$close',\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n icon: {\n type: [Boolean, String] as PropType<false | string>,\n default: null,\n },\n modelValue: {\n type: Boolean,\n default: true,\n },\n prominent: Boolean,\n title: String,\n text: String,\n type: {\n type: String as PropType<ContextualType>,\n validator: (val: ContextualType) => allowedTypes.includes(val),\n },\n\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'contained-flat' } as const),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const icon = computed(() => {\n if (props.icon === false) return undefined\n if (!props.type) return props.icon\n\n return props.icon ?? `$${props.type}`\n })\n const variantProps = computed(() => ({\n color: props.color ?? props.type,\n textColor: props.textColor,\n variant: props.variant,\n }))\n\n const { themeClasses } = provideTheme(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(variantProps)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { positionClasses, positionStyles } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'borderColor'))\n\n function onCloseClick (e: MouseEvent) {\n isActive.value = false\n }\n\n return () => {\n const hasClose = !!(slots.close || props.closable)\n const hasPrepend = !!(slots.prepend || icon.value)\n const hasTitle = !!(slots.title || props.title)\n\n return isActive.value && (\n <props.tag\n class={[\n 'v-alert',\n props.border && {\n 'v-alert--border': !!props.border,\n [`v-alert--border-${props.border === true ? 'start' : props.border}`]: true,\n },\n {\n 'v-alert--prominent': props.prominent,\n },\n themeClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n positionStyles.value,\n ]}\n role=\"alert\"\n >\n { genOverlays(false, 'v-alert') }\n\n { props.border && (\n <div\n class={[\n 'v-alert__border',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n />\n ) }\n\n { hasPrepend && (\n <div class=\"v-alert__prepend\">\n { slots.prepend\n ? slots.prepend()\n : (\n <VIcon\n icon={ icon.value }\n size={ props.prominent ? 'large' : 'default' }\n />\n )\n }\n </div>\n ) }\n\n <div class=\"v-alert__content\">\n { hasTitle && (\n <VAlertTitle>\n { slots.title ? slots.title() : props.title }\n </VAlertTitle>\n ) }\n\n { slots.text ? slots.text() : props.text }\n\n { slots.default?.() }\n </div>\n\n { slots.append && (\n <div class=\"v-alert__append\">\n { slots.append() }\n </div>\n ) }\n\n { hasClose && (\n <div\n class=\"v-alert__close\"\n onClick={ onCloseClick }\n >\n { slots.close\n ? slots.close()\n : (\n <VIcon\n icon={ props.closeIcon }\n size=\"small\"\n />\n )\n }\n </div>\n ) }\n </props.tag>\n )\n }\n },\n})\n\nexport type VAlert = InstanceType<typeof VAlert>\n"],"file":"VAlert.mjs"}
1
+ {"version":3,"sources":["../../../src/components/VAlert/VAlert.tsx"],"names":["VAlertTitle","VDefaultsProvider","VIcon","genOverlays","makeVariantProps","useVariant","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","useProxiedModel","useTextColor","computed","toRef","defineComponent","allowedTypes","VAlert","name","props","border","type","Boolean","String","validator","val","includes","borderColor","closable","closeIcon","default","closeLabel","icon","modelValue","prominent","title","text","variant","emits","value","setup","slots","isActive","undefined","variantProps","color","themeClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","positionClasses","positionStyles","roundedClasses","textColorClasses","textColorStyles","onCloseClick","e","hasPrepend","prepend","hasTitle","hasText","hasClose","close","density","size","append"],"mappings":"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","sourcesContent":["// Styles\nimport './VAlert.sass'\n\n// Components\nimport { VAlertTitle } from './VAlertTitle'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nconst allowedTypes = ['success', 'info', 'warning', 'error'] as const\n\ntype ContextualType = typeof allowedTypes[number]\n\nexport const VAlert = defineComponent({\n name: 'VAlert',\n\n props: {\n border: {\n type: [Boolean, String],\n validator: (val: boolean | string) => {\n return typeof val === 'boolean' || [\n 'top',\n 'end',\n 'bottom',\n 'start',\n ].includes(val)\n },\n },\n borderColor: String,\n closable: Boolean,\n closeIcon: {\n type: String,\n default: '$close',\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n icon: {\n type: [Boolean, String] as PropType<false | string>,\n default: null,\n },\n modelValue: {\n type: Boolean,\n default: true,\n },\n prominent: Boolean,\n title: String,\n text: String,\n type: {\n type: String as PropType<ContextualType>,\n validator: (val: ContextualType) => allowedTypes.includes(val),\n },\n\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'contained-flat' } as const),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const icon = computed(() => {\n if (props.icon === false) return undefined\n if (!props.type) return props.icon\n\n return props.icon ?? `$${props.type}`\n })\n const variantProps = computed(() => ({\n color: props.color ?? props.type,\n variant: props.variant,\n }))\n\n const { themeClasses } = provideTheme(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(variantProps)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { positionClasses, positionStyles } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'borderColor'))\n\n function onCloseClick (e: MouseEvent) {\n isActive.value = false\n }\n\n return () => {\n const hasPrepend = !!(slots.prepend || icon.value)\n const hasTitle = !!(slots.title || props.title)\n const hasText = !!(props.text || slots.text)\n const hasClose = !!(slots.close || props.closable)\n\n return isActive.value && (\n <props.tag\n class={[\n 'v-alert',\n props.border && {\n 'v-alert--border': !!props.border,\n [`v-alert--border-${props.border === true ? 'start' : props.border}`]: true,\n },\n {\n 'v-alert--prominent': props.prominent,\n },\n themeClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n positionStyles.value,\n ]}\n role=\"alert\"\n >\n { genOverlays(false, 'v-alert') }\n\n { props.border && (\n <div\n class={[\n 'v-alert__border',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n />\n ) }\n\n { hasPrepend && (\n <VDefaultsProvider\n defaults={{\n VIcon: {\n density: props.density,\n icon: icon.value,\n size: props.prominent ? 44 : 'default',\n },\n }}\n >\n <div class=\"v-alert__prepend\">\n { slots.prepend\n ? slots.prepend()\n : icon.value && (<VIcon />)\n }\n </div>\n </VDefaultsProvider>\n ) }\n\n <div class=\"v-alert__content\">\n { hasTitle && (\n <VAlertTitle>\n { slots.title ? slots.title() : props.title }\n </VAlertTitle>\n ) }\n\n { hasText && (\n slots.text ? slots.text() : props.text\n ) }\n\n { slots.default?.() }\n </div>\n\n { slots.append && (\n <div class=\"v-alert__append\">\n { slots.append() }\n </div>\n ) }\n\n { hasClose && (\n <VDefaultsProvider\n defaults={{\n VIcon: {\n icon: props.closeIcon,\n size: 'small',\n },\n }}\n >\n <div\n class=\"v-alert__close\"\n onClick={ onCloseClick }\n >\n { slots.close\n ? slots.close()\n : (<VIcon />)\n }\n </div>\n </VDefaultsProvider>\n ) }\n </props.tag>\n )\n }\n },\n})\n\nexport type VAlert = InstanceType<typeof VAlert>\n"],"file":"VAlert.mjs"}
@@ -1,12 +1,13 @@
1
1
  @forward './variables'
2
+
2
3
  @use '../../styles/tools'
3
4
  @use './variables' as *
4
5
 
5
6
  .v-alert
6
7
  display: grid
7
8
  flex: 1 1
8
- grid-template-areas: "prepend content append close"
9
- grid-template-columns: max-content auto max-content min-content
9
+ grid-template-areas: "prepend content append close" ". content . ."
10
+ grid-template-columns: max-content auto max-content max-content
10
11
  position: relative
11
12
  padding: $alert-padding
12
13
  overflow: hidden
@@ -16,6 +17,9 @@
16
17
  @include tools.rounded($alert-border-radius)
17
18
  @include tools.variant($alert-variants...)
18
19
 
20
+ &--prominent
21
+ grid-template-areas: "prepend content append close" "prepend content . ."
22
+
19
23
  &.v-alert--border
20
24
  --v-border-opacity: #{$alert-border-opacity}
21
25
 
@@ -65,28 +69,43 @@
65
69
  border-bottom-width: $alert-border-thin-width
66
70
 
67
71
  .v-alert__close
68
- align-self: flex-start
69
72
  cursor: pointer
70
73
  display: flex
71
74
  flex: 0 1 auto
72
75
  grid-area: close
73
76
  user-select: none
74
77
 
78
+ .v-alert__content
79
+ align-self: center
80
+ grid-area: content
81
+ overflow: hidden
82
+
83
+ .v-alert__append,
84
+ .v-alert__close
85
+ align-self: flex-start
86
+ margin-inline-start: $alert-append-margin-inline-start
87
+
75
88
  .v-alert__append
89
+ align-self: flex-start
76
90
  grid-area: append
77
91
 
92
+ + .v-alert__close
93
+ margin-inline-start: $alert-append-close-margin-inline-start
94
+
78
95
  .v-alert__prepend
96
+ align-self: flex-start
97
+ display: flex
98
+ align-items: center
79
99
  grid-area: prepend
80
100
  margin-inline-end: $alert-prepend-margin-inline-end
81
101
 
82
102
  .v-alert--prominent &
83
103
  align-self: center
84
104
 
85
- .v-alert__content
86
- grid-area: content
87
- line-height: 1.7
88
-
89
105
  .v-alert__underlay
106
+ grid-area: none
107
+ position: absolute
108
+
90
109
  .v-alert--border-start &
91
110
  border-top-left-radius: 0
92
111
  border-bottom-left-radius: 0
@@ -105,6 +124,7 @@
105
124
 
106
125
  .v-alert-title
107
126
  align-items: center
127
+ align-self: center
108
128
  display: flex
109
129
  font-size: $alert-title-font-size
110
130
  font-weight: $alert-title-font-weight
@@ -1,3 +1,4 @@
1
+ // Utilities
1
2
  import { createSimpleFunctional } from "../../util/index.mjs";
2
3
  export const VAlertTitle = createSimpleFunctional('v-alert-title');
3
4
  //# sourceMappingURL=VAlertTitle.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VAlert/VAlertTitle.ts"],"names":["createSimpleFunctional","VAlertTitle"],"mappings":"SAASA,sB;AAET,OAAO,MAAMC,WAAW,GAAGD,sBAAsB,CAAC,eAAD,CAA1C","sourcesContent":["import { createSimpleFunctional } from '@/util'\n\nexport const VAlertTitle = createSimpleFunctional('v-alert-title')\n"],"file":"VAlertTitle.mjs"}
1
+ {"version":3,"sources":["../../../src/components/VAlert/VAlertTitle.ts"],"names":["createSimpleFunctional","VAlertTitle"],"mappings":"AAAA;SACSA,sB;AAET,OAAO,MAAMC,WAAW,GAAGD,sBAAsB,CAAC,eAAD,CAA1C","sourcesContent":["// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VAlertTitle = createSimpleFunctional('v-alert-title')\n"],"file":"VAlertTitle.mjs"}
@@ -1,14 +1,14 @@
1
1
  @use '../../styles/settings';
2
2
  @use '../../styles/tools';
3
3
 
4
- // Defaults
4
+ // VAlert
5
5
  $alert-background: rgb(var(--v-theme-on-surface-variant)) !default;
6
6
  $alert-border-color: currentColor !default;
7
+ $alert-border-opacity: .38 !default;
7
8
  $alert-border-radius: settings.$border-radius-root !default;
8
9
  $alert-border-style: settings.$border-style-root !default;
9
10
  $alert-border-thin-width: 8px !default;
10
11
  $alert-border-width: 0 !default;
11
- $alert-border-opacity: .38 !default;
12
12
  $alert-color: rgba(var(--v-theme-on-surface), var(--v-high-emphasis-opacity)) !default;
13
13
  $alert-density: ('default': 0, 'comfortable': -1, 'compact': -2) !default;
14
14
  $alert-elevation: 1 !default;
@@ -17,24 +17,31 @@ $alert-plain-opacity: .62 !default;
17
17
  $alert-plain-transition: .2s opacity settings.$standard-easing !default;
18
18
  $alert-positions: absolute fixed sticky !default;
19
19
  $alert-prepend-margin-inline-end: 16px !default;
20
- $alert-title-comfortable-line-height: 1.75rem !default;
21
- $alert-title-compact-line-height: 1.55rem !default;
20
+ $alert-append-margin-inline-start: 90px !default;
21
+ $alert-append-close-margin-inline-start: 16px !default;
22
+
23
+ // VAlertTitle
22
24
  $alert-title-font-size: tools.map-deep-get(settings.$typography, 'h6', 'size') !default;
23
25
  $alert-title-font-weight: tools.map-deep-get(settings.$typography, 'h6', 'weight') !default;
24
26
  $alert-title-hyphens: auto !default;
25
27
  $alert-title-letter-spacing: tools.map-deep-get(settings.$typography, 'h6', 'letter-spacing') !default;
26
- $alert-title-line-height: 1.35 !default;
28
+ // $alert-title-line-height: tools.map-deep-get(settings.$typography, 'h6', 'line-height') !default;
29
+ $alert-title-line-height: 1.75rem !default;
27
30
  $alert-title-overflow-wrap: normal !default;
28
31
  $alert-title-text-transform: none !default;
29
32
  $alert-title-word-break: normal !default;
30
33
  $alert-title-word-wrap: break-word !default;
31
34
 
35
+ // VAlertText
36
+ $alert-text-line-height: 1.35 !default;
37
+
38
+ // Lists
32
39
  $alert-border: (
33
40
  $alert-border-color,
34
41
  $alert-border-style,
35
42
  $alert-border-width,
36
43
  $alert-border-thin-width
37
- ) !default;
44
+ );
38
45
 
39
46
  $alert-variants: (
40
47
  $alert-background,
@@ -42,4 +49,4 @@ $alert-variants: (
42
49
  $alert-elevation,
43
50
  $alert-plain-opacity,
44
51
  'v-alert'
45
- ) !default;
52
+ );
@@ -12,6 +12,7 @@
12
12
  backface-visibility: hidden;
13
13
  display: flex;
14
14
  flex-direction: column;
15
+ min-height: 100vh;
15
16
  max-width: 100%;
16
17
  position: relative;
17
18
  }
@@ -11,6 +11,7 @@
11
11
  backface-visibility: hidden
12
12
  display: flex
13
13
  flex-direction: column
14
+ min-height: 100vh
14
15
  max-width: 100%
15
16
  position: relative
16
17
 
@@ -47,9 +47,11 @@ export const VAppBar = defineComponent({
47
47
  const vToolbarRef = ref();
48
48
  const isActive = useProxiedModel(props, 'modelValue');
49
49
  const height = computed(() => {
50
- var _vToolbarRef$value;
50
+ var _vToolbarRef$value$co, _vToolbarRef$value, _vToolbarRef$value$ex, _vToolbarRef$value2;
51
51
 
52
- return (_vToolbarRef$value = vToolbarRef.value) == null ? void 0 : _vToolbarRef$value.contentHeight;
52
+ const height = (_vToolbarRef$value$co = (_vToolbarRef$value = vToolbarRef.value) == null ? void 0 : _vToolbarRef$value.contentHeight) != null ? _vToolbarRef$value$co : 0;
53
+ const extensionHeight = (_vToolbarRef$value$ex = (_vToolbarRef$value2 = vToolbarRef.value) == null ? void 0 : _vToolbarRef$value2.extensionHeight) != null ? _vToolbarRef$value$ex : 0;
54
+ return height + extensionHeight;
53
55
  });
54
56
  const {
55
57
  layoutItemStyles
@@ -69,7 +71,9 @@ export const VAppBar = defineComponent({
69
71
  "class": ['v-app-bar', {
70
72
  'v-app-bar--bottom': props.position === 'bottom'
71
73
  }],
72
- "style": layoutItemStyles.value
74
+ "style": { ...layoutItemStyles.value,
75
+ height: undefined
76
+ }
73
77
  }, toolbarProps), slots);
74
78
  };
75
79
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VAppBar/VAppBar.tsx"],"names":["filterToolbarProps","makeVToolbarProps","VToolbar","makeLayoutItemProps","useLayoutItem","useProxiedModel","computed","ref","toRef","defineComponent","VAppBar","name","props","modelValue","type","Boolean","default","position","String","validator","value","includes","height","Number","emits","setup","slots","vToolbarRef","isActive","contentHeight","layoutItemStyles","id","priority","parseInt","layoutSize","elementSize","active","absolute","toolbarProps"],"mappings":";AAAA;AACA,uB,CAEA;;SACSA,kB,EAAoBC,iB,EAAmBC,Q,oCAEhD;;SACSC,mB,EAAqBC,a;SACrBC,e,8CAET;;AACA,SAASC,QAAT,EAAmBC,GAAnB,EAAwBC,KAAxB,QAAqC,KAArC;SACSC,e,gCAET;;AAGA,OAAO,MAAMC,OAAO,GAAGD,eAAe,CAAC;AACrCE,EAAAA,IAAI,EAAE,SAD+B;AAGrCC,EAAAA,KAAK,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACAC,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAEC,OADI;AAEVC,MAAAA,OAAO,EAAE;AAFC,KARP;AAYLC,IAAAA,QAAQ,EAAE;AACRH,MAAAA,IAAI,EAAEI,MADE;AAERF,MAAAA,OAAO,EAAE,KAFD;AAGRG,MAAAA,SAAS,EAAGC,KAAD,IAAgB,CAAC,KAAD,EAAQ,QAAR,EAAkBC,QAAlB,CAA2BD,KAA3B;AAHnB,KAZL;AAkBL,OAAGnB,iBAAiB,EAlBf;AAmBL,OAAGE,mBAAmB,EAnBjB;AAqBLmB,IAAAA,MAAM,EAAE;AACNR,MAAAA,IAAI,EAAE,CAACS,MAAD,EAASL,MAAT,CADA;AAENF,MAAAA,OAAO,EAAE;AAFH;AArBH,GAH8B;AA8BrCQ,EAAAA,KAAK,EAAE;AACL,yBAAsBJ,KAAD,IAAoB;AADpC,GA9B8B;;AAkCrCK,EAAAA,KAAK,CAAEb,KAAF,QAAoB;AAAA,QAAX;AAAEc,MAAAA;AAAF,KAAW;AACvB,UAAMC,WAAW,GAAGpB,GAAG,EAAvB;AACA,UAAMqB,QAAQ,GAAGvB,eAAe,CAACO,KAAD,EAAQ,YAAR,CAAhC;AACA,UAAMU,MAAM,GAAGhB,QAAQ,CAAC;AAAA;;AAAA,mCAAMqB,WAAW,CAACP,KAAlB,qBAAM,mBAAmBS,aAAzB;AAAA,KAAD,CAAvB;AACA,UAAM;AAAEC,MAAAA;AAAF,QAAuB1B,aAAa,CAAC;AACzC2B,MAAAA,EAAE,EAAEnB,KAAK,CAACD,IAD+B;AAEzCqB,MAAAA,QAAQ,EAAE1B,QAAQ,CAAC,MAAM2B,QAAQ,CAACrB,KAAK,CAACoB,QAAP,EAAiB,EAAjB,CAAf,CAFuB;AAGzCf,MAAAA,QAAQ,EAAET,KAAK,CAACI,KAAD,EAAQ,UAAR,CAH0B;AAIzCsB,MAAAA,UAAU,EAAEZ,MAJ6B;AAKzCa,MAAAA,WAAW,EAAEb,MAL4B;AAMzCc,MAAAA,MAAM,EAAER,QANiC;AAOzCS,MAAAA,QAAQ,EAAE7B,KAAK,CAACI,KAAD,EAAQ,UAAR;AAP0B,KAAD,CAA1C;AAUA,WAAO,MAAM;AACX,YAAM,CAAC0B,YAAD,IAAiBtC,kBAAkB,CAACY,KAAD,CAAzC;AAEA;AAAA,eAEUe,WAFV;AAAA,iBAGW,CACL,WADK,EAEL;AACE,+BAAqBf,KAAK,CAACK,QAAN,KAAmB;AAD1C,SAFK,CAHX;AAAA,iBASYa,gBAAgB,CAACV;AAT7B,SAUSkB,YAVT,GAWcZ,KAXd;AAcD,KAjBD;AAkBD;;AAlEoC,CAAD,CAA/B","sourcesContent":["// Styles\nimport './VAppBar.sass'\n\n// Components\nimport { filterToolbarProps, makeVToolbarProps, VToolbar } from '@/components/VToolbar/VToolbar'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VAppBar = defineComponent({\n name: 'VAppBar',\n\n props: {\n // TODO: Implement scrolling techniques\n // hideOnScroll: Boolean\n // invertedScroll: Boolean\n // collapseOnScroll: Boolean\n // elevateOnScroll: Boolean\n // shrinkOnScroll: Boolean\n // fadeImageOnScroll: Boolean\n modelValue: {\n type: Boolean,\n default: true,\n },\n position: {\n type: String as PropType<'top' | 'bottom'>,\n default: 'top',\n validator: (value: any) => ['top', 'bottom'].includes(value),\n },\n\n ...makeVToolbarProps(),\n ...makeLayoutItemProps(),\n\n height: {\n type: [Number, String],\n default: 64,\n },\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const vToolbarRef = ref()\n const isActive = useProxiedModel(props, 'modelValue')\n const height = computed(() => vToolbarRef.value?.contentHeight)\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n priority: computed(() => parseInt(props.priority, 10)),\n position: toRef(props, 'position'),\n layoutSize: height,\n elementSize: height,\n active: isActive,\n absolute: toRef(props, 'absolute'),\n })\n\n return () => {\n const [toolbarProps] = filterToolbarProps(props)\n\n return (\n <VToolbar\n ref={ vToolbarRef }\n class={[\n 'v-app-bar',\n {\n 'v-app-bar--bottom': props.position === 'bottom',\n },\n ]}\n style={ layoutItemStyles.value }\n { ...toolbarProps }\n v-slots={ slots }\n />\n )\n }\n },\n})\n\nexport type VAppBar = InstanceType<typeof VAppBar>\n"],"file":"VAppBar.mjs"}
1
+ {"version":3,"sources":["../../../src/components/VAppBar/VAppBar.tsx"],"names":["filterToolbarProps","makeVToolbarProps","VToolbar","makeLayoutItemProps","useLayoutItem","useProxiedModel","computed","ref","toRef","defineComponent","VAppBar","name","props","modelValue","type","Boolean","default","position","String","validator","value","includes","height","Number","emits","setup","slots","vToolbarRef","isActive","contentHeight","extensionHeight","layoutItemStyles","id","priority","parseInt","layoutSize","elementSize","active","absolute","toolbarProps","undefined"],"mappings":";AAAA;AACA,uB,CAEA;;SACSA,kB,EAAoBC,iB,EAAmBC,Q,oCAEhD;;SACSC,mB,EAAqBC,a;SACrBC,e,8CAET;;AACA,SAASC,QAAT,EAAmBC,GAAnB,EAAwBC,KAAxB,QAAqC,KAArC;SACSC,e,gCAET;;AAGA,OAAO,MAAMC,OAAO,GAAGD,eAAe,CAAC;AACrCE,EAAAA,IAAI,EAAE,SAD+B;AAGrCC,EAAAA,KAAK,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACAC,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAEC,OADI;AAEVC,MAAAA,OAAO,EAAE;AAFC,KARP;AAYLC,IAAAA,QAAQ,EAAE;AACRH,MAAAA,IAAI,EAAEI,MADE;AAERF,MAAAA,OAAO,EAAE,KAFD;AAGRG,MAAAA,SAAS,EAAGC,KAAD,IAAgB,CAAC,KAAD,EAAQ,QAAR,EAAkBC,QAAlB,CAA2BD,KAA3B;AAHnB,KAZL;AAkBL,OAAGnB,iBAAiB,EAlBf;AAmBL,OAAGE,mBAAmB,EAnBjB;AAqBLmB,IAAAA,MAAM,EAAE;AACNR,MAAAA,IAAI,EAAE,CAACS,MAAD,EAASL,MAAT,CADA;AAENF,MAAAA,OAAO,EAAE;AAFH;AArBH,GAH8B;AA8BrCQ,EAAAA,KAAK,EAAE;AACL,yBAAsBJ,KAAD,IAAoB;AADpC,GA9B8B;;AAkCrCK,EAAAA,KAAK,CAAEb,KAAF,QAAoB;AAAA,QAAX;AAAEc,MAAAA;AAAF,KAAW;AACvB,UAAMC,WAAW,GAAGpB,GAAG,EAAvB;AACA,UAAMqB,QAAQ,GAAGvB,eAAe,CAACO,KAAD,EAAQ,YAAR,CAAhC;AACA,UAAMU,MAAM,GAAGhB,QAAQ,CAAC,MAAM;AAAA;;AAC5B,YAAMgB,MAAc,kDAAGK,WAAW,CAACP,KAAf,qBAAG,mBAAmBS,aAAtB,oCAAuC,CAA3D;AACA,YAAMC,eAAuB,mDAAGH,WAAW,CAACP,KAAf,qBAAG,oBAAmBU,eAAtB,oCAAyC,CAAtE;AAEA,aAAQR,MAAM,GAAGQ,eAAjB;AACD,KALsB,CAAvB;AAMA,UAAM;AAAEC,MAAAA;AAAF,QAAuB3B,aAAa,CAAC;AACzC4B,MAAAA,EAAE,EAAEpB,KAAK,CAACD,IAD+B;AAEzCsB,MAAAA,QAAQ,EAAE3B,QAAQ,CAAC,MAAM4B,QAAQ,CAACtB,KAAK,CAACqB,QAAP,EAAiB,EAAjB,CAAf,CAFuB;AAGzChB,MAAAA,QAAQ,EAAET,KAAK,CAACI,KAAD,EAAQ,UAAR,CAH0B;AAIzCuB,MAAAA,UAAU,EAAEb,MAJ6B;AAKzCc,MAAAA,WAAW,EAAEd,MAL4B;AAMzCe,MAAAA,MAAM,EAAET,QANiC;AAOzCU,MAAAA,QAAQ,EAAE9B,KAAK,CAACI,KAAD,EAAQ,UAAR;AAP0B,KAAD,CAA1C;AAUA,WAAO,MAAM;AACX,YAAM,CAAC2B,YAAD,IAAiBvC,kBAAkB,CAACY,KAAD,CAAzC;AAEA;AAAA,eAEUe,WAFV;AAAA,iBAGW,CACL,WADK,EAEL;AACE,+BAAqBf,KAAK,CAACK,QAAN,KAAmB;AAD1C,SAFK,CAHX;AAAA,iBASW,EACL,GAAGc,gBAAgB,CAACX,KADf;AAELE,UAAAA,MAAM,EAAEkB;AAFH;AATX,SAaSD,YAbT,GAccb,KAdd;AAiBD,KApBD;AAqBD;;AA1EoC,CAAD,CAA/B","sourcesContent":["// Styles\nimport './VAppBar.sass'\n\n// Components\nimport { filterToolbarProps, makeVToolbarProps, VToolbar } from '@/components/VToolbar/VToolbar'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VAppBar = defineComponent({\n name: 'VAppBar',\n\n props: {\n // TODO: Implement scrolling techniques\n // hideOnScroll: Boolean\n // invertedScroll: Boolean\n // collapseOnScroll: Boolean\n // elevateOnScroll: Boolean\n // shrinkOnScroll: Boolean\n // fadeImageOnScroll: Boolean\n modelValue: {\n type: Boolean,\n default: true,\n },\n position: {\n type: String as PropType<'top' | 'bottom'>,\n default: 'top',\n validator: (value: any) => ['top', 'bottom'].includes(value),\n },\n\n ...makeVToolbarProps(),\n ...makeLayoutItemProps(),\n\n height: {\n type: [Number, String],\n default: 64,\n },\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const vToolbarRef = ref()\n const isActive = useProxiedModel(props, 'modelValue')\n const height = computed(() => {\n const height: number = vToolbarRef.value?.contentHeight ?? 0\n const extensionHeight: number = vToolbarRef.value?.extensionHeight ?? 0\n\n return (height + extensionHeight)\n })\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n priority: computed(() => parseInt(props.priority, 10)),\n position: toRef(props, 'position'),\n layoutSize: height,\n elementSize: height,\n active: isActive,\n absolute: toRef(props, 'absolute'),\n })\n\n return () => {\n const [toolbarProps] = filterToolbarProps(props)\n\n return (\n <VToolbar\n ref={ vToolbarRef }\n class={[\n 'v-app-bar',\n {\n 'v-app-bar--bottom': props.position === 'bottom',\n },\n ]}\n style={{\n ...layoutItemStyles.value,\n height: undefined,\n }}\n { ...toolbarProps }\n v-slots={ slots }\n />\n )\n }\n },\n})\n\nexport type VAppBar = InstanceType<typeof VAppBar>\n"],"file":"VAppBar.mjs"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VAppBar/VAppBarTitle.tsx"],"names":["VToolbarTitle","defineComponent","VAppBarTitle","name","setup","_","slots"],"mappings":";AAAA;SACSA,a,iCAET;;SACSC,e;AAET,OAAO,MAAMC,YAAY,GAAGD,eAAe,CAAC,EAC1C,GAAGD,aADuC;AAG1CG,EAAAA,IAAI,EAAE,cAHoC;;AAK1CC,EAAAA,KAAK,CAAEC,CAAF,QAAgB;AAAA,QAAX;AAAEC,MAAAA;AAAF,KAAW;AACnB,WAAO;AAAA,eAEG;AAFH,OAGOA,KAHP,CAAP;AAMD;;AAZyC,CAAD,CAApC","sourcesContent":["// Composables\nimport { VToolbarTitle } from '@/components/VToolbar'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VAppBarTitle = defineComponent({\n ...VToolbarTitle,\n\n name: 'VAppBarTitle',\n\n setup (_, { slots }) {\n return () => (\n <VToolbarTitle\n class=\"v-app-bar-title\"\n v-slots={ slots }\n />\n )\n },\n})\n"],"file":"VAppBarTitle.mjs"}
1
+ {"version":3,"sources":["../../../src/components/VAppBar/VAppBarTitle.tsx"],"names":["VToolbarTitle","defineComponent","VAppBarTitle","name","setup","_","slots"],"mappings":";AAAA;SACSA,a,iCAET;;SACSC,e;AAET,OAAO,MAAMC,YAAY,GAAGD,eAAe,CAAC,EAC1C,GAAGD,aADuC;AAG1CG,EAAAA,IAAI,EAAE,cAHoC;;AAK1CC,EAAAA,KAAK,CAAEC,CAAF,QAAgB;AAAA,QAAX;AAAEC,MAAAA;AAAF,KAAW;AACnB,WAAO;AAAA,eAEG;AAFH,OAGOA,KAHP,CAAP;AAMD;;AAZyC,CAAD,CAApC","sourcesContent":["// Composables\nimport { VToolbarTitle } from '@/components/VToolbar'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VAppBarTitle = defineComponent({\n ...VToolbarTitle,\n\n name: 'VAppBarTitle',\n\n setup (_, { slots }) {\n return () => (\n <VToolbarTitle\n class=\"v-app-bar-title\"\n v-slots={ slots }\n />\n )\n },\n}) as typeof VToolbarTitle\n"],"file":"VAppBarTitle.mjs"}