@vuetify/nightly 3.1.2-next-20230113.0 → 3.1.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 (59) hide show
  1. package/CHANGELOG.md +15 -2
  2. package/dist/json/importMap.json +56 -56
  3. package/dist/vuetify-labs.css +178 -177
  4. package/dist/vuetify-labs.d.ts +40 -3
  5. package/dist/vuetify-labs.esm.js +158 -90
  6. package/dist/vuetify-labs.esm.js.map +1 -1
  7. package/dist/vuetify-labs.js +158 -90
  8. package/dist/vuetify-labs.min.css +2 -2
  9. package/dist/vuetify.css +203 -202
  10. package/dist/vuetify.d.ts +56 -19
  11. package/dist/vuetify.esm.js +105 -74
  12. package/dist/vuetify.esm.js.map +1 -1
  13. package/dist/vuetify.js +105 -74
  14. package/dist/vuetify.js.map +1 -1
  15. package/dist/vuetify.min.css +2 -2
  16. package/dist/vuetify.min.js +52 -52
  17. package/dist/vuetify.min.js.map +1 -1
  18. package/lib/components/VAutocomplete/VAutocomplete.mjs +1 -0
  19. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  20. package/lib/components/VBtn/VBtn.mjs +9 -3
  21. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  22. package/lib/components/VCard/VCard.mjs +5 -2
  23. package/lib/components/VCard/VCard.mjs.map +1 -1
  24. package/lib/components/VCard/index.d.ts +8 -2
  25. package/lib/components/VCombobox/VCombobox.mjs +2 -1
  26. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  27. package/lib/components/VFileInput/VFileInput.css +1 -0
  28. package/lib/components/VFileInput/VFileInput.sass +1 -0
  29. package/lib/components/VList/VListItem.css +1 -1
  30. package/lib/components/VList/VListItem.mjs +5 -1
  31. package/lib/components/VList/VListItem.mjs.map +1 -1
  32. package/lib/components/VList/VListItem.sass +1 -1
  33. package/lib/components/VList/index.d.ts +20 -1
  34. package/lib/components/VProgressLinear/VProgressLinear.mjs +13 -1
  35. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  36. package/lib/components/VProgressLinear/index.d.ts +18 -0
  37. package/lib/components/VSelect/VSelect.mjs +1 -0
  38. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  39. package/lib/components/VSlider/VSliderThumb.mjs +5 -1
  40. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  41. package/lib/components/index.d.ts +40 -3
  42. package/lib/composables/filter.mjs +3 -3
  43. package/lib/composables/filter.mjs.map +1 -1
  44. package/lib/entry-bundler.mjs +1 -1
  45. package/lib/entry-bundler.mjs.map +1 -1
  46. package/lib/framework.mjs +1 -1
  47. package/lib/framework.mjs.map +1 -1
  48. package/lib/index.d.ts +16 -16
  49. package/lib/labs/VDataTable/VDataTable.mjs +4 -1
  50. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  51. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs +3 -3
  52. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
  53. package/lib/labs/VDataTable/VDataTableRows.mjs +36 -8
  54. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  55. package/lib/labs/VDataTable/VDataTableVirtual.mjs +4 -1
  56. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  57. package/lib/labs/VDataTable/composables/group.mjs +9 -4
  58. package/lib/labs/VDataTable/composables/group.mjs.map +1 -1
  59. package/package.json +1 -1
package/dist/vuetify.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.1.2-next-20230113.0
2
+ * Vuetify v3.1.2
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -4384,9 +4384,69 @@
4384
4384
  updated: updated$1
4385
4385
  };
4386
4386
 
4387
+ // Composables
4388
+
4389
+ // Types
4390
+
4391
+ const oppositeMap = {
4392
+ center: 'center',
4393
+ top: 'bottom',
4394
+ bottom: 'top',
4395
+ left: 'right',
4396
+ right: 'left'
4397
+ };
4398
+ const makeLocationProps = propsFactory({
4399
+ location: String
4400
+ }, 'location');
4401
+ function useLocation(props) {
4402
+ let opposite = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
4403
+ let offset = arguments.length > 2 ? arguments[2] : undefined;
4404
+ const {
4405
+ isRtl
4406
+ } = useRtl();
4407
+ const locationStyles = vue.computed(() => {
4408
+ if (!props.location) return {};
4409
+ const {
4410
+ side,
4411
+ align
4412
+ } = parseAnchor(props.location.split(' ').length > 1 ? props.location : `${props.location} center`, isRtl.value);
4413
+ function getOffset(side) {
4414
+ return offset ? offset(side) : 0;
4415
+ }
4416
+ const styles = {};
4417
+ if (side !== 'center') {
4418
+ if (opposite) styles[oppositeMap[side]] = `calc(100% - ${getOffset(side)}px)`;else styles[side] = 0;
4419
+ }
4420
+ if (align !== 'center') {
4421
+ if (opposite) styles[oppositeMap[align]] = `calc(100% - ${getOffset(align)}px)`;else styles[align] = 0;
4422
+ } else {
4423
+ if (side === 'center') styles.top = styles.left = '50%';else {
4424
+ styles[{
4425
+ top: 'left',
4426
+ bottom: 'left',
4427
+ left: 'top',
4428
+ right: 'top'
4429
+ }[side]] = '50%';
4430
+ }
4431
+ styles.transform = {
4432
+ top: 'translateX(-50%)',
4433
+ bottom: 'translateX(-50%)',
4434
+ left: 'translateY(-50%)',
4435
+ right: 'translateY(-50%)',
4436
+ center: 'translate(-50%, -50%)'
4437
+ }[side];
4438
+ }
4439
+ return styles;
4440
+ });
4441
+ return {
4442
+ locationStyles
4443
+ };
4444
+ }
4445
+
4387
4446
  const VProgressLinear = defineComponent({
4388
4447
  name: 'VProgressLinear',
4389
4448
  props: {
4449
+ absolute: Boolean,
4390
4450
  active: {
4391
4451
  type: Boolean,
4392
4452
  default: true
@@ -4416,6 +4476,9 @@
4416
4476
  stream: Boolean,
4417
4477
  striped: Boolean,
4418
4478
  roundedBar: Boolean,
4479
+ ...makeLocationProps({
4480
+ location: 'top'
4481
+ }),
4419
4482
  ...makeRoundedProps(),
4420
4483
  ...makeTagProps(),
4421
4484
  ...makeThemeProps()
@@ -4434,6 +4497,9 @@
4434
4497
  const {
4435
4498
  themeClasses
4436
4499
  } = provideTheme(props);
4500
+ const {
4501
+ locationStyles
4502
+ } = useLocation(props);
4437
4503
  const {
4438
4504
  textColorClasses,
4439
4505
  textColorStyles
@@ -4475,6 +4541,7 @@
4475
4541
  useRender(() => vue.createVNode(props.tag, {
4476
4542
  "ref": intersectionRef,
4477
4543
  "class": ['v-progress-linear', {
4544
+ 'v-progress-linear--absolute': props.absolute,
4478
4545
  'v-progress-linear--active': props.active && isIntersecting.value,
4479
4546
  'v-progress-linear--reverse': isReversed.value,
4480
4547
  'v-progress-linear--rounded': props.rounded,
@@ -4482,8 +4549,11 @@
4482
4549
  'v-progress-linear--striped': props.striped
4483
4550
  }, roundedClasses.value, themeClasses.value],
4484
4551
  "style": {
4552
+ bottom: props.location === 'bottom' ? 0 : undefined,
4553
+ top: props.location === 'top' ? 0 : undefined,
4485
4554
  height: props.active ? convertToUnit(height.value) : 0,
4486
- '--v-progress-linear-height': convertToUnit(height.value)
4555
+ '--v-progress-linear-height': convertToUnit(height.value),
4556
+ ...locationStyles.value
4487
4557
  },
4488
4558
  "role": "progressbar",
4489
4559
  "aria-hidden": props.active ? 'false' : 'true',
@@ -4569,65 +4639,6 @@
4569
4639
  }, null)]);
4570
4640
  }
4571
4641
 
4572
- // Composables
4573
-
4574
- // Types
4575
-
4576
- const oppositeMap = {
4577
- center: 'center',
4578
- top: 'bottom',
4579
- bottom: 'top',
4580
- left: 'right',
4581
- right: 'left'
4582
- };
4583
- const makeLocationProps = propsFactory({
4584
- location: String
4585
- }, 'location');
4586
- function useLocation(props) {
4587
- let opposite = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
4588
- let offset = arguments.length > 2 ? arguments[2] : undefined;
4589
- const {
4590
- isRtl
4591
- } = useRtl();
4592
- const locationStyles = vue.computed(() => {
4593
- if (!props.location) return {};
4594
- const {
4595
- side,
4596
- align
4597
- } = parseAnchor(props.location.split(' ').length > 1 ? props.location : `${props.location} center`, isRtl.value);
4598
- function getOffset(side) {
4599
- return offset ? offset(side) : 0;
4600
- }
4601
- const styles = {};
4602
- if (side !== 'center') {
4603
- if (opposite) styles[oppositeMap[side]] = `calc(100% - ${getOffset(side)}px)`;else styles[side] = 0;
4604
- }
4605
- if (align !== 'center') {
4606
- if (opposite) styles[oppositeMap[align]] = `calc(100% - ${getOffset(align)}px)`;else styles[align] = 0;
4607
- } else {
4608
- if (side === 'center') styles.top = styles.left = '50%';else {
4609
- styles[{
4610
- top: 'left',
4611
- bottom: 'left',
4612
- left: 'top',
4613
- right: 'top'
4614
- }[side]] = '50%';
4615
- }
4616
- styles.transform = {
4617
- top: 'translateX(-50%)',
4618
- bottom: 'translateX(-50%)',
4619
- left: 'translateY(-50%)',
4620
- right: 'translateY(-50%)',
4621
- center: 'translate(-50%, -50%)'
4622
- }[side];
4623
- }
4624
- return styles;
4625
- });
4626
- return {
4627
- locationStyles
4628
- };
4629
- }
4630
-
4631
4642
  // Utilities
4632
4643
 
4633
4644
  // Types
@@ -4833,8 +4844,14 @@
4833
4844
  const group = useGroupItem(props, props.symbol, false);
4834
4845
  const link = useLink(props, attrs);
4835
4846
  const isActive = vue.computed(() => {
4836
- var _link$isActive;
4837
- return props.active !== false && (props.active || ((_link$isActive = link.isActive) == null ? void 0 : _link$isActive.value) || (group == null ? void 0 : group.isSelected.value));
4847
+ if (props.active !== undefined) {
4848
+ return props.active;
4849
+ }
4850
+ if (link.isLink.value) {
4851
+ var _link$isActive;
4852
+ return (_link$isActive = link.isActive) == null ? void 0 : _link$isActive.value;
4853
+ }
4854
+ return group == null ? void 0 : group.isSelected.value;
4838
4855
  });
4839
4856
  const isDisabled = vue.computed(() => (group == null ? void 0 : group.disabled.value) || props.disabled);
4840
4857
  const isElevated = vue.computed(() => {
@@ -4844,7 +4861,7 @@
4844
4861
  useRender(() => {
4845
4862
  var _slots$prepend, _slots$default, _slots$append, _slots$loader;
4846
4863
  const Tag = link.isLink.value ? 'a' : props.tag;
4847
- const hasColor = !group || group.isSelected.value;
4864
+ const hasColor = !group || isActive.value;
4848
4865
  const hasPrepend = !!(props.prependIcon || slots.prepend);
4849
4866
  const hasAppend = !!(props.appendIcon || slots.append);
4850
4867
  const hasIcon = !!(props.icon && props.icon !== true);
@@ -7579,6 +7596,10 @@
7579
7596
  nav: Boolean,
7580
7597
  prependAvatar: String,
7581
7598
  prependIcon: IconValue,
7599
+ ripple: {
7600
+ type: Boolean,
7601
+ default: true
7602
+ },
7582
7603
  subtitle: [String, Number, Boolean],
7583
7604
  title: [String, Number, Boolean],
7584
7605
  value: null,
@@ -7770,7 +7791,7 @@
7770
7791
  "key": "append-avatar"
7771
7792
  }, null)])]
7772
7793
  })]
7773
- }), [[vue.resolveDirective("ripple"), isClickable.value]]);
7794
+ }), [[vue.resolveDirective("ripple"), isClickable.value && props.ripple]]);
7774
7795
  });
7775
7796
  return {};
7776
7797
  }
@@ -9938,6 +9959,7 @@
9938
9959
  "activator": "parent",
9939
9960
  "contentClass": "v-select__content",
9940
9961
  "eager": props.eager,
9962
+ "maxHeight": 310,
9941
9963
  "openOnClick": false,
9942
9964
  "closeOnContentClick": false,
9943
9965
  "transition": props.transition
@@ -10053,7 +10075,7 @@
10053
10075
  const customFiltersLength = Object.keys((options == null ? void 0 : options.customKeyFilter) ?? {}).length;
10054
10076
  if (!(items != null && items.length)) return array;
10055
10077
  loop: for (let i = 0; i < items.length; i++) {
10056
- const item = items[i].raw;
10078
+ const item = items[i];
10057
10079
  const customMatches = {};
10058
10080
  const defaultMatches = {};
10059
10081
  let match = -1;
@@ -10093,7 +10115,7 @@
10093
10115
  }
10094
10116
  return array;
10095
10117
  }
10096
- function useFilter(props, items, query) {
10118
+ function useFilter(props, items, query, options) {
10097
10119
  const strQuery = vue.computed(() => typeof (query == null ? void 0 : query.value) !== 'string' && typeof (query == null ? void 0 : query.value) !== 'number' ? '' : String(query.value));
10098
10120
  const filteredItems = vue.ref([]);
10099
10121
  const filteredMatches = vue.ref(new Map());
@@ -10104,7 +10126,7 @@
10104
10126
  const results = filterItems(transformedItems, strQuery.value, {
10105
10127
  customKeyFilter: props.customKeyFilter,
10106
10128
  default: props.customFilter,
10107
- filterKeys: props.filterKeys,
10129
+ filterKeys: vue.unref(options == null ? void 0 : options.filterKeys) ?? props.filterKeys,
10108
10130
  filterMode: props.filterMode,
10109
10131
  noFilter: props.noFilter
10110
10132
  });
@@ -10327,6 +10349,7 @@
10327
10349
  "activator": "parent",
10328
10350
  "contentClass": "v-autocomplete__content",
10329
10351
  "eager": props.eager,
10352
+ "maxHeight": 310,
10330
10353
  "openOnClick": false,
10331
10354
  "closeOnContentClick": false,
10332
10355
  "transition": props.transition,
@@ -11035,7 +11058,10 @@
11035
11058
  },
11036
11059
  prependAvatar: String,
11037
11060
  prependIcon: IconValue,
11038
- ripple: Boolean,
11061
+ ripple: {
11062
+ type: Boolean,
11063
+ default: true
11064
+ },
11039
11065
  subtitle: String,
11040
11066
  text: String,
11041
11067
  title: String,
@@ -11156,7 +11182,7 @@
11156
11182
  }), (_slots$default = slots.default) == null ? void 0 : _slots$default.call(slots), slots.actions && vue.createVNode(VCardActions, null, {
11157
11183
  default: slots.actions
11158
11184
  }), genOverlays(isClickable.value, 'v-card')]
11159
- }), [[vue.resolveDirective("ripple"), isClickable.value]]);
11185
+ }), [[vue.resolveDirective("ripple"), isClickable.value && props.ripple]]);
11160
11186
  });
11161
11187
  return {};
11162
11188
  }
@@ -12449,6 +12475,10 @@
12449
12475
  position: {
12450
12476
  type: Number,
12451
12477
  required: true
12478
+ },
12479
+ ripple: {
12480
+ type: Boolean,
12481
+ default: true
12452
12482
  }
12453
12483
  },
12454
12484
  emits: {
@@ -12549,7 +12579,7 @@
12549
12579
  }, null), vue.withDirectives(vue.createVNode("div", {
12550
12580
  "class": ['v-slider-thumb__ripple', textColorClasses.value],
12551
12581
  "style": textColorStyles.value
12552
- }, null), [[vue.resolveDirective("ripple"), true, null, {
12582
+ }, null), [[vue.resolveDirective("ripple"), props.ripple, null, {
12553
12583
  circle: true,
12554
12584
  center: true
12555
12585
  }]]), vue.createVNode(VScaleTransition, {
@@ -13601,7 +13631,7 @@
13601
13631
  vTextFieldRef.value.setSelectionRange(0, 0);
13602
13632
  }
13603
13633
  }
13604
- if (e.key === 'Enter') {
13634
+ if (e.key === 'Enter' && search.value) {
13605
13635
  select(transformItem$1(props, search.value));
13606
13636
  search.value = '';
13607
13637
  }
@@ -13690,6 +13720,7 @@
13690
13720
  "activator": "parent",
13691
13721
  "contentClass": "v-combobox__content",
13692
13722
  "eager": props.eager,
13723
+ "maxHeight": 310,
13693
13724
  "openOnClick": false,
13694
13725
  "closeOnContentClick": false,
13695
13726
  "transition": props.transition,
@@ -18363,7 +18394,7 @@
18363
18394
  locale
18364
18395
  };
18365
18396
  }
18366
- const version$1 = "3.1.2-next-20230113.0";
18397
+ const version$1 = "3.1.2";
18367
18398
  createVuetify$1.version = version$1;
18368
18399
 
18369
18400
  // Vue's inject() can only be used in setup
@@ -18384,7 +18415,7 @@
18384
18415
  ...options
18385
18416
  });
18386
18417
  };
18387
- const version = "3.1.2-next-20230113.0";
18418
+ const version = "3.1.2";
18388
18419
  createVuetify.version = version;
18389
18420
 
18390
18421
  exports.components = components;