@dimailn/vuetify 2.7.2-alpha23 → 2.7.2-alpha25

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 (108) hide show
  1. package/dist/vuetify.js +280 -256
  2. package/dist/vuetify.js.map +1 -1
  3. package/dist/vuetify.min.css +1 -1
  4. package/dist/vuetify.min.js +2 -2
  5. package/es5/components/VBadge/VBadge.js +17 -14
  6. package/es5/components/VBadge/VBadge.js.map +1 -1
  7. package/es5/components/VBtn/VBtn.js +16 -16
  8. package/es5/components/VBtn/VBtn.js.map +1 -1
  9. package/es5/components/VColorPicker/VColorPicker.js +18 -31
  10. package/es5/components/VColorPicker/VColorPicker.js.map +1 -1
  11. package/es5/components/VColorPicker/VColorPickerCanvas.js +45 -46
  12. package/es5/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  13. package/es5/components/VColorPicker/VColorPickerEdit.js +27 -26
  14. package/es5/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  15. package/es5/components/VColorPicker/VColorPickerPreview.js +41 -30
  16. package/es5/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  17. package/es5/components/VColorPicker/VColorPickerSwatches.js +13 -10
  18. package/es5/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  19. package/es5/components/VDataTable/VDataTable.js +7 -11
  20. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  21. package/es5/components/VInput/VInput.js +24 -6
  22. package/es5/components/VInput/VInput.js.map +1 -1
  23. package/es5/components/VSelect/VSelectList.js +1 -1
  24. package/es5/components/VSelect/VSelectList.js.map +1 -1
  25. package/es5/components/VSlider/VSlider.js +23 -18
  26. package/es5/components/VSlider/VSlider.js.map +1 -1
  27. package/es5/components/VTooltip/VTooltip.js +3 -7
  28. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  29. package/es5/framework.js +1 -1
  30. package/es5/mixins/activatable/index.js +2 -1
  31. package/es5/mixins/activatable/index.js.map +1 -1
  32. package/es5/mixins/bootable/index.js +1 -2
  33. package/es5/mixins/bootable/index.js.map +1 -1
  34. package/es5/mixins/mouse/index.js +10 -5
  35. package/es5/mixins/mouse/index.js.map +1 -1
  36. package/es5/mixins/selectable/index.js +3 -0
  37. package/es5/mixins/selectable/index.js.map +1 -1
  38. package/lib/components/VBadge/VBadge.js +14 -13
  39. package/lib/components/VBadge/VBadge.js.map +1 -1
  40. package/lib/components/VBtn/VBtn.js +18 -19
  41. package/lib/components/VBtn/VBtn.js.map +1 -1
  42. package/lib/components/VColorPicker/VColorPicker.js +29 -37
  43. package/lib/components/VColorPicker/VColorPicker.js.map +1 -1
  44. package/lib/components/VColorPicker/VColorPickerCanvas.js +41 -43
  45. package/lib/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  46. package/lib/components/VColorPicker/VColorPickerEdit.js +25 -31
  47. package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  48. package/lib/components/VColorPicker/VColorPickerPreview.js +45 -32
  49. package/lib/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  50. package/lib/components/VColorPicker/VColorPickerSwatches.js +15 -9
  51. package/lib/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  52. package/lib/components/VDataTable/VDataTable.js +3 -4
  53. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  54. package/lib/components/VInput/VInput.js +16 -4
  55. package/lib/components/VInput/VInput.js.map +1 -1
  56. package/lib/components/VSelect/VSelectList.js +2 -1
  57. package/lib/components/VSelect/VSelectList.js.map +1 -1
  58. package/lib/components/VSlider/VSlider.js +26 -21
  59. package/lib/components/VSlider/VSlider.js.map +1 -1
  60. package/lib/components/VTooltip/VTooltip.js +6 -9
  61. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  62. package/lib/framework.js +1 -1
  63. package/lib/mixins/activatable/index.js +2 -1
  64. package/lib/mixins/activatable/index.js.map +1 -1
  65. package/lib/mixins/bootable/index.js +2 -4
  66. package/lib/mixins/bootable/index.js.map +1 -1
  67. package/lib/mixins/mouse/index.js +9 -5
  68. package/lib/mixins/mouse/index.js.map +1 -1
  69. package/lib/mixins/selectable/index.js +4 -0
  70. package/lib/mixins/selectable/index.js.map +1 -1
  71. package/package.json +1 -1
  72. package/src/components/VBadge/VBadge.ts +24 -25
  73. package/src/components/VBadge/__tests__/VBadge.spec.ts +47 -30
  74. package/src/components/VBadge/__tests__/__snapshots__/VBadge.spec.ts.snap +5 -5
  75. package/src/components/VBtn/VBtn.ts +18 -16
  76. package/src/components/VBtn/__tests__/VBtn.spec.ts +257 -242
  77. package/src/components/VBtn/__tests__/__snapshots__/VBtn.spec.ts.snap +13 -73
  78. package/src/components/VColorPicker/VColorPicker.ts +32 -35
  79. package/src/components/VColorPicker/VColorPickerCanvas.ts +44 -37
  80. package/src/components/VColorPicker/VColorPickerEdit.ts +37 -35
  81. package/src/components/VColorPicker/VColorPickerPreview.ts +48 -28
  82. package/src/components/VColorPicker/VColorPickerSwatches.ts +23 -12
  83. package/src/components/VColorPicker/__tests__/VColorPicker.spec.ts +47 -47
  84. package/src/components/VColorPicker/__tests__/VColorPickerCanvas.spec.ts +15 -13
  85. package/src/components/VColorPicker/__tests__/VColorPickerEdit.spec.ts +52 -50
  86. package/src/components/VColorPicker/__tests__/VColorPickerPreview.spec.ts +101 -30
  87. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPicker.spec.ts.snap +200 -157
  88. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPickerEdit.spec.ts.snap +28 -11
  89. package/src/components/VDataTable/VDataTable.ts +3 -3
  90. package/src/components/VInput/VInput.ts +12 -2
  91. package/src/components/VInput/__tests__/VInput.spec.ts +170 -234
  92. package/src/components/VInput/__tests__/__snapshots__/VInput.spec.ts.snap +50 -101
  93. package/src/components/VSelect/VSelectList.ts +1 -0
  94. package/src/components/VSkeletonLoader/__tests__/VSkeletonLoader.spec.ts +22 -15
  95. package/src/components/VSkeletonLoader/__tests__/__snapshots__/VSkeletonLoader.spec.ts.snap +60 -60
  96. package/src/components/VSlider/VSlider.ts +43 -27
  97. package/src/components/VSlider/__tests__/VSlider.spec.ts +188 -286
  98. package/src/components/VSlider/__tests__/__snapshots__/VSlider.spec.ts.snap +157 -246
  99. package/src/components/VTabs/__tests__/VTab.spec.ts +3 -3
  100. package/src/components/VTabs/__tests__/VTabsBar.spec.ts +2 -2
  101. package/src/components/VTooltip/VTooltip.ts +20 -20
  102. package/src/components/VTooltip/__tests__/VTooltip.spec.ts +60 -75
  103. package/src/mixins/activatable/index.ts +2 -1
  104. package/src/mixins/bootable/__tests__/bootable.spec.ts +17 -11
  105. package/src/mixins/bootable/index.ts +4 -3
  106. package/src/mixins/mouse/__tests__/mouse.spec.ts +54 -40
  107. package/src/mixins/mouse/index.ts +10 -6
  108. package/src/mixins/selectable/index.ts +4 -0
package/dist/vuetify.js CHANGED
@@ -1456,8 +1456,7 @@ __webpack_require__.r(__webpack_exports__);
1456
1456
  /* harmony import */ var _mixins_transitionable__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../mixins/transitionable */ "./src/mixins/transitionable/index.ts");
1457
1457
  /* harmony import */ var _mixins_positionable__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../mixins/positionable */ "./src/mixins/positionable/index.ts");
1458
1458
  /* harmony import */ var _util_mergeData__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../util/mergeData */ "./src/util/mergeData.ts");
1459
- /* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../util/mixins */ "./src/util/mixins.ts");
1460
- /* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../util/helpers */ "./src/util/helpers.ts");
1459
+ /* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../util/helpers */ "./src/util/helpers.ts");
1461
1460
  var __assign = undefined && undefined.__assign || function () {
1462
1461
  __assign = Object.assign || function (t) {
1463
1462
  for (var s, i = 1, n = arguments.length; i < n; i++) {
@@ -1501,9 +1500,10 @@ var __rest = undefined && undefined.__rest || function (s, e) {
1501
1500
  // Utilities
1502
1501
 
1503
1502
 
1504
-
1505
- /* harmony default export */ __webpack_exports__["default"] = (Object(_util_mixins__WEBPACK_IMPORTED_MODULE_9__["default"])(_mixins_colorable__WEBPACK_IMPORTED_MODULE_3__["default"], Object(_mixins_positionable__WEBPACK_IMPORTED_MODULE_7__["factory"])(['left', 'bottom']), _mixins_themeable__WEBPACK_IMPORTED_MODULE_4__["default"], _mixins_toggleable__WEBPACK_IMPORTED_MODULE_5__["default"], _mixins_transitionable__WEBPACK_IMPORTED_MODULE_6__["default"]).extend({
1503
+ var Toggleable = Object(_mixins_toggleable__WEBPACK_IMPORTED_MODULE_5__["factory"])('modelValue', 'update:modelValue');
1504
+ /* harmony default export */ __webpack_exports__["default"] = (Object(vue__WEBPACK_IMPORTED_MODULE_0__["defineComponent"])({
1506
1505
  name: 'v-badge',
1506
+ mixins: [_mixins_colorable__WEBPACK_IMPORTED_MODULE_3__["default"], Object(_mixins_positionable__WEBPACK_IMPORTED_MODULE_7__["factory"])(['left', 'bottom']), _mixins_themeable__WEBPACK_IMPORTED_MODULE_4__["default"], Toggleable, _mixins_transitionable__WEBPACK_IMPORTED_MODULE_6__["default"]],
1507
1507
  props: {
1508
1508
  avatar: Boolean,
1509
1509
  bordered: Boolean,
@@ -1529,7 +1529,7 @@ var __rest = undefined && undefined.__rest || function (s, e) {
1529
1529
  type: String,
1530
1530
  default: 'scale-rotate-transition'
1531
1531
  },
1532
- value: {
1532
+ modelValue: {
1533
1533
  default: true
1534
1534
  }
1535
1535
  },
@@ -1594,7 +1594,7 @@ var __rest = undefined && undefined.__rest || function (s, e) {
1594
1594
  },
1595
1595
  methods: {
1596
1596
  calcPosition: function calcPosition(offset) {
1597
- return "calc(100% - " + Object(_util_helpers__WEBPACK_IMPORTED_MODULE_10__["convertToUnit"])(offset || this.offset) + ")";
1597
+ return "calc(100% - " + Object(_util_helpers__WEBPACK_IMPORTED_MODULE_9__["convertToUnit"])(offset || this.offset) + ")";
1598
1598
  },
1599
1599
  genBadge: function genBadge() {
1600
1600
  var lang = this.$vuetify.lang;
@@ -1606,27 +1606,29 @@ var __rest = undefined && undefined.__rest || function (s, e) {
1606
1606
  'aria-label': label,
1607
1607
  'aria-live': this.$attrs['aria-live'] || 'polite',
1608
1608
  title: this.$attrs.title,
1609
- role: this.$attrs.role || 'status',
1610
- directives: [{
1611
- name: 'show',
1612
- value: this.isActive
1613
- }]
1609
+ role: this.$attrs.role || 'status'
1614
1610
  });
1615
- var badge = Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('span', data, [this.genBadgeContent()]);
1611
+ var badge = Object(vue__WEBPACK_IMPORTED_MODULE_0__["withDirectives"])(Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('span', data, [this.genBadgeContent()]), [[vue__WEBPACK_IMPORTED_MODULE_0__["vShow"], this.isActive]]);
1616
1612
  if (!this.transition) return badge;
1617
1613
  return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(vue__WEBPACK_IMPORTED_MODULE_0__["Transition"], {
1618
1614
  name: this.transition,
1619
1615
  origin: this.origin,
1620
1616
  mode: this.mode
1621
- }, [badge]);
1617
+ }, {
1618
+ default: function _default() {
1619
+ return [badge];
1620
+ }
1621
+ });
1622
1622
  },
1623
1623
  genBadgeContent: function genBadgeContent() {
1624
1624
  // Dot prop shows no content
1625
1625
  if (this.dot) return undefined;
1626
- var slot = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_10__["getSlot"])(this, 'badge');
1626
+ var slot = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_9__["getSlot"])(this, 'badge');
1627
1627
  if (slot) return slot;
1628
1628
  if (this.content) return String(this.content);
1629
- if (this.icon) return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(_VIcon_VIcon__WEBPACK_IMPORTED_MODULE_2__["default"], this.icon);
1629
+ if (this.icon) return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(_VIcon_VIcon__WEBPACK_IMPORTED_MODULE_2__["default"], {
1630
+ icon: this.icon
1631
+ });
1630
1632
  return undefined;
1631
1633
  },
1632
1634
  genBadgeWrapper: function genBadgeWrapper() {
@@ -1637,7 +1639,7 @@ var __rest = undefined && undefined.__rest || function (s, e) {
1637
1639
  },
1638
1640
  render: function render() {
1639
1641
  var badge = [this.genBadgeWrapper()];
1640
- var children = [Object(_util_helpers__WEBPACK_IMPORTED_MODULE_10__["getSlot"])(this)];
1642
+ var children = [Object(_util_helpers__WEBPACK_IMPORTED_MODULE_9__["getSlot"])(this)];
1641
1643
 
1642
1644
  var _a = this.$attrs,
1643
1645
  _x = _a["aria-atomic"],
@@ -2410,16 +2412,14 @@ __webpack_require__.r(__webpack_exports__);
2410
2412
  /* harmony import */ var _VProgressCircular__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../VProgressCircular */ "./src/components/VProgressCircular/index.ts");
2411
2413
  /* harmony import */ var _mixins_groupable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../mixins/groupable */ "./src/mixins/groupable/index.ts");
2412
2414
  /* harmony import */ var _mixins_toggleable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../mixins/toggleable */ "./src/mixins/toggleable/index.ts");
2413
- /* harmony import */ var _mixins_elevatable__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../mixins/elevatable */ "./src/mixins/elevatable/index.ts");
2414
- /* harmony import */ var _mixins_positionable__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../mixins/positionable */ "./src/mixins/positionable/index.ts");
2415
- /* harmony import */ var _mixins_routable__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../mixins/routable */ "./src/mixins/routable/index.ts");
2416
- /* harmony import */ var _mixins_sizeable__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../mixins/sizeable */ "./src/mixins/sizeable/index.ts");
2417
- /* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../util/mixins */ "./src/util/mixins.ts");
2418
- /* harmony import */ var _util_console__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../util/console */ "./src/util/console.ts");
2419
- /* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../util/helpers */ "./src/util/helpers.ts");
2420
- /* harmony import */ var _util_mergeData__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../util/mergeData */ "./src/util/mergeData.ts");
2421
- /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! vue */ "vue");
2422
- /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_13__);
2415
+ /* harmony import */ var _mixins_positionable__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../mixins/positionable */ "./src/mixins/positionable/index.ts");
2416
+ /* harmony import */ var _mixins_routable__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../mixins/routable */ "./src/mixins/routable/index.ts");
2417
+ /* harmony import */ var _mixins_sizeable__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../mixins/sizeable */ "./src/mixins/sizeable/index.ts");
2418
+ /* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../util/mixins */ "./src/util/mixins.ts");
2419
+ /* harmony import */ var _util_console__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../util/console */ "./src/util/console.ts");
2420
+ /* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../util/helpers */ "./src/util/helpers.ts");
2421
+ /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! vue */ "vue");
2422
+ /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_11__);
2423
2423
  function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
2424
2424
 
2425
2425
  var __assign = undefined && undefined.__assign || function () {
@@ -2476,22 +2476,18 @@ var __read = undefined && undefined.__read || function (o, n) {
2476
2476
 
2477
2477
 
2478
2478
 
2479
-
2480
2479
  // Utilities
2481
2480
 
2482
2481
 
2483
2482
 
2484
-
2485
2483
  // Types
2486
2484
 
2487
2485
 
2488
-
2489
- var baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_9__["default"])(_VSheet__WEBPACK_IMPORTED_MODULE_1__["default"], _mixins_routable__WEBPACK_IMPORTED_MODULE_7__["default"], _mixins_positionable__WEBPACK_IMPORTED_MODULE_6__["default"], _mixins_sizeable__WEBPACK_IMPORTED_MODULE_8__["default"], Object(_mixins_groupable__WEBPACK_IMPORTED_MODULE_3__["factory"])('btnToggle'), Object(_mixins_toggleable__WEBPACK_IMPORTED_MODULE_4__["factory"])('inputValue')
2486
+ var baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_8__["default"])(_VSheet__WEBPACK_IMPORTED_MODULE_1__["default"], _mixins_routable__WEBPACK_IMPORTED_MODULE_6__["default"], _mixins_positionable__WEBPACK_IMPORTED_MODULE_5__["default"], _mixins_sizeable__WEBPACK_IMPORTED_MODULE_7__["default"], Object(_mixins_groupable__WEBPACK_IMPORTED_MODULE_3__["factory"])('btnToggle'), Object(_mixins_toggleable__WEBPACK_IMPORTED_MODULE_4__["factory"])('inputValue')
2490
2487
  /* @vue/component */
2491
2488
  );
2492
2489
  /* harmony default export */ __webpack_exports__["default"] = (baseMixins.extend({
2493
2490
  name: 'v-btn',
2494
- inheritAttrs: false,
2495
2491
  props: {
2496
2492
  activeClass: {
2497
2493
  type: String
@@ -2526,7 +2522,7 @@ var baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_9__["default"])(_V
2526
2522
  classes: function classes() {
2527
2523
  return __assign(__assign(__assign(__assign(__assign(__assign({
2528
2524
  'v-btn': true
2529
- }, _mixins_routable__WEBPACK_IMPORTED_MODULE_7__["default"].computed.classes.call(this)), {
2525
+ }, _mixins_routable__WEBPACK_IMPORTED_MODULE_6__["default"].computed.classes.call(this)), {
2530
2526
  'v-btn--absolute': this.absolute,
2531
2527
  'v-btn--block': this.block,
2532
2528
  'v-btn--bottom': this.bottom,
@@ -2551,7 +2547,7 @@ var baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_9__["default"])(_V
2551
2547
  },
2552
2548
  computedElevation: function computedElevation() {
2553
2549
  if (this.disabled) return undefined;
2554
- return _mixins_elevatable__WEBPACK_IMPORTED_MODULE_5__["default"].computed.computedElevation.call(this);
2550
+ return this.elevation;
2555
2551
  },
2556
2552
  computedRipple: function computedRipple() {
2557
2553
  var _a;
@@ -2585,7 +2581,7 @@ var baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_9__["default"])(_V
2585
2581
  original = _b[0],
2586
2582
  replacement = _b[1];
2587
2583
 
2588
- if (_this.$attrs.hasOwnProperty(original)) Object(_util_console__WEBPACK_IMPORTED_MODULE_10__["breaking"])(original, replacement, _this);
2584
+ if (_this.$attrs.hasOwnProperty(original)) Object(_util_console__WEBPACK_IMPORTED_MODULE_9__["breaking"])(original, replacement, _this);
2589
2585
  });
2590
2586
  },
2591
2587
  methods: {
@@ -2597,14 +2593,14 @@ var baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_9__["default"])(_V
2597
2593
  this.btnToggle && this.toggle();
2598
2594
  },
2599
2595
  genContent: function genContent() {
2600
- return Object(vue__WEBPACK_IMPORTED_MODULE_13__["h"])('span', {
2596
+ return Object(vue__WEBPACK_IMPORTED_MODULE_11__["h"])('span', {
2601
2597
  class: 'v-btn__content'
2602
- }, Object(_util_helpers__WEBPACK_IMPORTED_MODULE_11__["getSlot"])(this));
2598
+ }, Object(_util_helpers__WEBPACK_IMPORTED_MODULE_10__["getSlot"])(this));
2603
2599
  },
2604
2600
  genLoader: function genLoader() {
2605
- return Object(vue__WEBPACK_IMPORTED_MODULE_13__["h"])('span', {
2601
+ return Object(vue__WEBPACK_IMPORTED_MODULE_11__["h"])('span', {
2606
2602
  class: 'v-btn__loader'
2607
- }, Object(_util_helpers__WEBPACK_IMPORTED_MODULE_11__["getSlot"])(this, 'loader') || [Object(vue__WEBPACK_IMPORTED_MODULE_13__["h"])(_VProgressCircular__WEBPACK_IMPORTED_MODULE_2__["default"], {
2603
+ }, Object(_util_helpers__WEBPACK_IMPORTED_MODULE_10__["getSlot"])(this, 'loader') || [Object(vue__WEBPACK_IMPORTED_MODULE_11__["h"])(_VProgressCircular__WEBPACK_IMPORTED_MODULE_2__["default"], {
2608
2604
  indeterminate: true,
2609
2605
  size: 23,
2610
2606
  width: 2
@@ -2619,20 +2615,25 @@ var baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_9__["default"])(_V
2619
2615
  linkData = _a.data,
2620
2616
  directives = _a.directives;
2621
2617
 
2622
- var setColor = this.hasBg ? this.setBackgroundColor : this.setTextColor;
2623
- var data = {};
2618
+ var setColor = this.hasBg ? this.setBackgroundColor : this.setTextColor; // Merge component classes with routable classes
2619
+
2620
+ var mergedClasses = __assign(__assign({}, this.classes), linkData.class);
2624
2621
 
2625
2622
  if (tag === 'button') {
2626
- data.type = this.type;
2627
- data.disabled = this.disabled;
2623
+ linkData.type = this.type;
2624
+ linkData.disabled = this.disabled;
2628
2625
  }
2629
2626
 
2630
- data.value = ['string', 'number'].includes(_typeof(this.value)) ? this.value : JSON.stringify(this.value);
2631
- data = __assign(__assign({}, data), linkData);
2632
- data = Object(_util_mergeData__WEBPACK_IMPORTED_MODULE_12__["default"])(data, {
2633
- class: this.$attrs.class
2634
- });
2635
- return Object(vue__WEBPACK_IMPORTED_MODULE_13__["withDirectives"])(Object(vue__WEBPACK_IMPORTED_MODULE_13__["h"])(tag, this.disabled ? data : setColor(this.color, data), children), directives);
2627
+ linkData.value = ['string', 'number'].includes(_typeof(this.value)) ? this.value : JSON.stringify(this.value);
2628
+
2629
+ var data = __assign(__assign({}, linkData), {
2630
+ class: mergedClasses,
2631
+ style: this.styles
2632
+ }); // Apply color styling but preserve Vue's automatic attribute inheritance
2633
+
2634
+
2635
+ var finalData = this.disabled ? data : setColor(this.color, data);
2636
+ return Object(vue__WEBPACK_IMPORTED_MODULE_11__["withDirectives"])(Object(vue__WEBPACK_IMPORTED_MODULE_11__["h"])(tag, finalData, children), directives);
2636
2637
  }
2637
2638
  }));
2638
2639
 
@@ -7975,12 +7976,9 @@ __webpack_require__.r(__webpack_exports__);
7975
7976
  /* harmony import */ var _VColorPickerEdit__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./VColorPickerEdit */ "./src/components/VColorPicker/VColorPickerEdit.ts");
7976
7977
  /* harmony import */ var _VColorPickerSwatches__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./VColorPickerSwatches */ "./src/components/VColorPicker/VColorPickerSwatches.ts");
7977
7978
  /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./util */ "./src/components/VColorPicker/util/index.ts");
7978
- /* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../util/mixins */ "./src/util/mixins.ts");
7979
- /* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../util/helpers */ "./src/util/helpers.ts");
7980
- /* harmony import */ var _mixins_elevatable__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../mixins/elevatable */ "./src/mixins/elevatable/index.ts");
7981
- /* harmony import */ var _mixins_themeable__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../mixins/themeable */ "./src/mixins/themeable/index.ts");
7982
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
7983
-
7979
+ /* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../util/helpers */ "./src/util/helpers.ts");
7980
+ /* harmony import */ var _mixins_elevatable__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../mixins/elevatable */ "./src/mixins/elevatable/index.ts");
7981
+ /* harmony import */ var _mixins_themeable__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../mixins/themeable */ "./src/mixins/themeable/index.ts");
7984
7982
  var __assign = undefined && undefined.__assign || function () {
7985
7983
  __assign = Object.assign || function (t) {
7986
7984
  for (var s, i = 1, n = arguments.length; i < n; i++) {
@@ -8008,13 +8006,13 @@ var __assign = undefined && undefined.__assign || function () {
8008
8006
  // Helpers
8009
8007
 
8010
8008
 
8011
-
8012
8009
  // Mixins
8013
8010
 
8014
8011
 
8015
8012
 
8016
- /* harmony default export */ __webpack_exports__["default"] = (Object(_util_mixins__WEBPACK_IMPORTED_MODULE_8__["default"])(_mixins_elevatable__WEBPACK_IMPORTED_MODULE_10__["default"], _mixins_themeable__WEBPACK_IMPORTED_MODULE_11__["default"]).extend({
8013
+ /* harmony default export */ __webpack_exports__["default"] = (Object(vue__WEBPACK_IMPORTED_MODULE_0__["defineComponent"])({
8017
8014
  name: 'v-color-picker',
8015
+ mixins: [_mixins_elevatable__WEBPACK_IMPORTED_MODULE_9__["default"], _mixins_themeable__WEBPACK_IMPORTED_MODULE_10__["default"]],
8018
8016
  props: {
8019
8017
  canvasHeight: {
8020
8018
  type: [String, Number],
@@ -8051,6 +8049,7 @@ var __assign = undefined && undefined.__assign || function () {
8051
8049
  default: 300
8052
8050
  }
8053
8051
  },
8052
+ emits: ['update:modelValue', 'update:color', 'update:mode'],
8054
8053
  data: function data() {
8055
8054
  return {
8056
8055
  internalValue: Object(_util__WEBPACK_IMPORTED_MODULE_7__["fromRGBA"])({
@@ -8068,7 +8067,7 @@ var __assign = undefined && undefined.__assign || function () {
8068
8067
  }
8069
8068
  },
8070
8069
  watch: {
8071
- value: {
8070
+ modelValue: {
8072
8071
  handler: function handler(color) {
8073
8072
  this.updateColor(Object(_util__WEBPACK_IMPORTED_MODULE_7__["parseColor"])(color, this.internalValue));
8074
8073
  },
@@ -8080,7 +8079,7 @@ var __assign = undefined && undefined.__assign || function () {
8080
8079
  this.internalValue = color;
8081
8080
  var value = Object(_util__WEBPACK_IMPORTED_MODULE_7__["extractColor"])(this.internalValue, this.modelValue);
8082
8081
 
8083
- if (!Object(_util_helpers__WEBPACK_IMPORTED_MODULE_9__["deepEqual"])(value, this.modelValue)) {
8082
+ if (!Object(_util_helpers__WEBPACK_IMPORTED_MODULE_8__["deepEqual"])(value, this.modelValue)) {
8084
8083
  this.$emit('update:modelValue', value);
8085
8084
  this.$emit('update:color', this.internalValue);
8086
8085
  }
@@ -8117,42 +8116,29 @@ var __assign = undefined && undefined.__assign || function () {
8117
8116
  },
8118
8117
  genPreview: function genPreview() {
8119
8118
  return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(_VColorPickerPreview__WEBPACK_IMPORTED_MODULE_3__["default"], {
8120
- props: {
8121
- color: this.internalValue,
8122
- disabled: this.disabled,
8123
- hideAlpha: this.hideAlpha
8124
- },
8125
- on: {
8126
- 'update:color': this.updateColor
8127
- }
8119
+ color: this.internalValue,
8120
+ disabled: this.disabled,
8121
+ hideAlpha: this.hideAlpha,
8122
+ 'onUpdate:color': this.updateColor
8128
8123
  });
8129
8124
  },
8130
8125
  genSwatches: function genSwatches() {
8131
8126
  return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(_VColorPickerSwatches__WEBPACK_IMPORTED_MODULE_6__["default"], {
8132
- props: {
8133
- dark: this.dark,
8134
- light: this.light,
8135
- disabled: this.disabled,
8136
- swatches: this.swatches,
8137
- color: this.internalValue,
8138
- maxHeight: this.swatchesMaxHeight
8139
- },
8140
- on: {
8141
- 'update:color': this.updateColor
8142
- }
8127
+ disabled: this.disabled,
8128
+ swatches: this.swatches,
8129
+ color: this.internalValue,
8130
+ maxHeight: this.swatchesMaxHeight,
8131
+ 'onUpdate:color': this.updateColor
8143
8132
  });
8144
8133
  }
8145
8134
  },
8146
8135
  render: function render() {
8147
- var _h;
8148
-
8149
- return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(_VSheet_VSheet__WEBPACK_IMPORTED_MODULE_2__["default"], (_h = {
8150
- class: 'v-color-picker'
8151
- }, _defineProperty(_h, "class", __assign(__assign({
8152
- 'v-color-picker--flat': this.flat
8153
- }, this.themeClasses), this.elevationClasses)), _defineProperty(_h, "props", {
8136
+ return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(_VSheet_VSheet__WEBPACK_IMPORTED_MODULE_2__["default"], {
8137
+ class: ['v-color-picker', __assign(__assign({
8138
+ 'v-color-picker--flat': this.flat
8139
+ }, this.themeClasses), this.elevationClasses)],
8154
8140
  maxWidth: this.width
8155
- }), _h), [!this.hideCanvas && this.genCanvas(), (!this.hideSliders || !this.hideInputs) && this.genControls(), this.showSwatches && this.genSwatches()]);
8141
+ }, [!this.hideCanvas && this.genCanvas(), (!this.hideSliders || !this.hideInputs) && this.genControls(), this.showSwatches && this.genSwatches()]);
8156
8142
  }
8157
8143
  }));
8158
8144
 
@@ -8184,15 +8170,11 @@ __webpack_require__.r(__webpack_exports__);
8184
8170
  /* harmony import */ var _VColorPickerCanvas_sass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_VColorPickerCanvas_sass__WEBPACK_IMPORTED_MODULE_1__);
8185
8171
  /* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../util/helpers */ "./src/util/helpers.ts");
8186
8172
  /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./util */ "./src/components/VColorPicker/util/index.ts");
8187
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8188
-
8189
8173
  // Styles
8190
8174
 
8191
8175
  // Helpers
8192
8176
 
8193
8177
 
8194
- // Types
8195
-
8196
8178
 
8197
8179
  /* harmony default export */ __webpack_exports__["default"] = (Object(vue__WEBPACK_IMPORTED_MODULE_0__["defineComponent"])({
8198
8180
  name: 'v-color-picker-canvas',
@@ -8222,6 +8204,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
8222
8204
  default: 300
8223
8205
  }
8224
8206
  },
8207
+ emits: ['update:color'],
8225
8208
  data: function data() {
8226
8209
  return {
8227
8210
  boundingRect: {
@@ -8239,34 +8222,24 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
8239
8222
  y: 0
8240
8223
  };
8241
8224
  return {
8242
- x: this.color.hsva.s * parseInt(this.width, 10),
8243
- y: (1 - this.color.hsva.v) * parseInt(this.height, 10)
8225
+ x: this.color.hsva.s * parseInt(String(this.width), 10),
8226
+ y: (1 - this.color.hsva.v) * parseInt(String(this.height), 10)
8244
8227
  };
8245
8228
  }
8246
8229
  },
8247
8230
  watch: {
8248
- 'color.hue': 'updateCanvas'
8231
+ 'color.hue': function colorHue() {
8232
+ this.updateCanvas();
8233
+ }
8249
8234
  },
8250
8235
  mounted: function mounted() {
8251
8236
  this.updateCanvas();
8252
8237
  },
8253
8238
  methods: {
8254
- emitColor: function emitColor(x, y) {
8255
- var _a = this.boundingRect,
8256
- left = _a.left,
8257
- top = _a.top,
8258
- width = _a.width,
8259
- height = _a.height;
8260
- this.$emit('update:color', Object(_util__WEBPACK_IMPORTED_MODULE_3__["fromHSVA"])({
8261
- h: this.color.hue,
8262
- s: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["clamp"])(x - left, 0, width) / width,
8263
- v: 1 - Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["clamp"])(y - top, 0, height) / height,
8264
- a: this.color.alpha
8265
- }));
8266
- },
8267
8239
  updateCanvas: function updateCanvas() {
8268
8240
  if (!this.color) return;
8269
8241
  var canvas = this.$refs.canvas;
8242
+ if (!canvas) return;
8270
8243
  var ctx = canvas.getContext('2d');
8271
8244
  if (!ctx) return;
8272
8245
  var saturationGradient = ctx.createLinearGradient(0, 0, canvas.width, 0);
@@ -8283,19 +8256,24 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
8283
8256
  ctx.fillStyle = valueGradient;
8284
8257
  ctx.fillRect(0, 0, canvas.width, canvas.height);
8285
8258
  },
8259
+ emitColor: function emitColor(x, y) {
8260
+ var _a = this.boundingRect,
8261
+ left = _a.left,
8262
+ top = _a.top,
8263
+ width = _a.width,
8264
+ height = _a.height;
8265
+ this.$emit('update:color', Object(_util__WEBPACK_IMPORTED_MODULE_3__["fromHSVA"])({
8266
+ h: this.color.hue,
8267
+ s: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["clamp"])(x - left, 0, width) / width,
8268
+ v: 1 - Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["clamp"])(y - top, 0, height) / height,
8269
+ a: this.color.alpha
8270
+ }));
8271
+ },
8286
8272
  handleClick: function handleClick(e) {
8287
8273
  if (this.disabled) return;
8288
8274
  this.boundingRect = this.$el.getBoundingClientRect();
8289
8275
  this.emitColor(e.clientX, e.clientY);
8290
8276
  },
8291
- handleMouseDown: function handleMouseDown(e) {
8292
- // To prevent selection while moving cursor
8293
- e.preventDefault();
8294
- if (this.disabled) return;
8295
- this.boundingRect = this.$el.getBoundingClientRect();
8296
- window.addEventListener('mousemove', this.handleMouseMove);
8297
- window.addEventListener('mouseup', this.handleMouseUp);
8298
- },
8299
8277
  handleMouseMove: function handleMouseMove(e) {
8300
8278
  if (this.disabled) return;
8301
8279
  this.emitColor(e.clientX, e.clientY);
@@ -8304,30 +8282,35 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
8304
8282
  window.removeEventListener('mousemove', this.handleMouseMove);
8305
8283
  window.removeEventListener('mouseup', this.handleMouseUp);
8306
8284
  },
8285
+ handleMouseDown: function handleMouseDown(e) {
8286
+ // To prevent selection while moving cursor
8287
+ e.preventDefault();
8288
+ if (this.disabled) return;
8289
+ this.boundingRect = this.$el.getBoundingClientRect();
8290
+ window.addEventListener('mousemove', this.handleMouseMove);
8291
+ window.addEventListener('mouseup', this.handleMouseUp);
8292
+ },
8307
8293
  genCanvas: function genCanvas() {
8308
8294
  return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('canvas', {
8309
8295
  ref: 'canvas',
8310
- attrs: {
8311
- width: this.width,
8312
- height: this.height
8313
- }
8296
+ width: this.width,
8297
+ height: this.height
8314
8298
  });
8315
8299
  },
8316
8300
  genDot: function genDot() {
8317
- var _h;
8318
-
8319
- var radius = parseInt(this.dotSize, 10) / 2;
8301
+ var radius = parseInt(String(this.dotSize), 10) / 2;
8320
8302
  var x = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["convertToUnit"])(this.dot.x - radius);
8321
8303
  var y = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["convertToUnit"])(this.dot.y - radius);
8322
- return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', (_h = {
8323
- class: 'v-color-picker__canvas-dot'
8324
- }, _defineProperty(_h, "class", {
8325
- 'v-color-picker__canvas-dot--disabled': this.disabled
8326
- }), _defineProperty(_h, "style", {
8327
- width: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["convertToUnit"])(this.dotSize),
8328
- height: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["convertToUnit"])(this.dotSize),
8329
- transform: "translate(" + x + ", " + y + ")"
8330
- }), _h));
8304
+ return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', {
8305
+ class: ['v-color-picker__canvas-dot', {
8306
+ 'v-color-picker__canvas-dot--disabled': this.disabled
8307
+ }],
8308
+ style: {
8309
+ width: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["convertToUnit"])(this.dotSize),
8310
+ height: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["convertToUnit"])(this.dotSize),
8311
+ transform: "translate(" + x + ", " + y + ")"
8312
+ }
8313
+ });
8331
8314
  }
8332
8315
  },
8333
8316
  render: function render() {
@@ -8337,10 +8320,8 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
8337
8320
  width: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["convertToUnit"])(this.width),
8338
8321
  height: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__["convertToUnit"])(this.height)
8339
8322
  },
8340
- on: {
8341
- click: this.handleClick,
8342
- mousedown: this.handleMouseDown
8343
- }
8323
+ onClick: this.handleClick,
8324
+ onMousedown: this.handleMouseDown
8344
8325
  }, [this.genCanvas(), this.genDot()]);
8345
8326
  }
8346
8327
  }));
@@ -8426,8 +8407,6 @@ var __read = undefined && undefined.__read || function (o, n) {
8426
8407
 
8427
8408
  // Helpers
8428
8409
 
8429
- // Types
8430
-
8431
8410
 
8432
8411
 
8433
8412
  var modes = {
@@ -8446,7 +8425,10 @@ var modes = {
8446
8425
  /* harmony default export */ __webpack_exports__["default"] = (Object(vue__WEBPACK_IMPORTED_MODULE_0__["defineComponent"])({
8447
8426
  name: 'v-color-picker-edit',
8448
8427
  props: {
8449
- color: Object,
8428
+ color: {
8429
+ type: Object,
8430
+ required: true
8431
+ },
8450
8432
  disabled: Boolean,
8451
8433
  hideAlpha: Boolean,
8452
8434
  hideModeSwitch: Boolean,
@@ -8458,15 +8440,15 @@ var modes = {
8458
8440
  }
8459
8441
  }
8460
8442
  },
8443
+ emits: ['update:color', 'update:mode'],
8461
8444
  data: function data() {
8462
8445
  return {
8463
- modes: modes,
8464
8446
  internalMode: this.mode
8465
8447
  };
8466
8448
  },
8467
8449
  computed: {
8468
8450
  currentMode: function currentMode() {
8469
- return this.modes[this.internalMode];
8451
+ return modes[this.internalMode];
8470
8452
  }
8471
8453
  },
8472
8454
  watch: {
@@ -8474,9 +8456,6 @@ var modes = {
8474
8456
  this.internalMode = _mode;
8475
8457
  }
8476
8458
  },
8477
- created: function created() {
8478
- this.internalMode = this.mode;
8479
- },
8480
8459
  methods: {
8481
8460
  getValue: function getValue(v, type) {
8482
8461
  if (type === 'float') return Math.round(v * 100) / 100;else if (type === 'int') return Math.round(v);else return 0;
@@ -8485,20 +8464,21 @@ var modes = {
8485
8464
  if (type === 'float') return parseFloat(v);else if (type === 'int') return parseInt(v, 10) || 0;else return 0;
8486
8465
  },
8487
8466
  changeMode: function changeMode() {
8488
- var modes = Object.keys(this.modes);
8489
- var index = modes.indexOf(this.internalMode);
8490
- var newMode = modes[(index + 1) % modes.length];
8467
+ var modeKeys = Object.keys(modes);
8468
+ var index = modeKeys.indexOf(this.internalMode);
8469
+ var newMode = modeKeys[(index + 1) % modeKeys.length];
8491
8470
  this.internalMode = newMode;
8492
8471
  this.$emit('update:mode', newMode);
8493
8472
  },
8494
- genInput: function genInput(target, attrs, value, on) {
8473
+ genInput: function genInput(target, attrs, value, onChange) {
8495
8474
  return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', {
8496
8475
  class: 'v-color-picker__input'
8497
- }, [Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('input', __assign(__assign(__assign({
8476
+ }, [Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('input', __assign(__assign({
8498
8477
  key: target
8499
8478
  }, attrs), {
8500
- value: value
8501
- }), on)), Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('span', target.toUpperCase())]);
8479
+ value: value,
8480
+ onChange: onChange
8481
+ })), Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('span', target.toUpperCase())]);
8502
8482
  },
8503
8483
  genInputs: function genInputs() {
8504
8484
  var _this = this;
@@ -8509,12 +8489,10 @@ var modes = {
8509
8489
  return this.genInput('hex', {
8510
8490
  maxlength: this.hideAlpha ? 7 : 9,
8511
8491
  disabled: this.disabled
8512
- }, value, {
8513
- change: function change(e) {
8514
- var el = e.target;
8492
+ }, value, function (e) {
8493
+ var el = e.target;
8515
8494
 
8516
- _this.$emit('update:color', _this.currentMode.from(Object(_util_colorUtils__WEBPACK_IMPORTED_MODULE_4__["parseHex"])(el.value)));
8517
- }
8495
+ _this.$emit('update:color', _this.currentMode.from(Object(_util_colorUtils__WEBPACK_IMPORTED_MODULE_4__["parseHex"])(el.value)));
8518
8496
  });
8519
8497
  } else {
8520
8498
  var inputs = this.hideAlpha ? this.currentMode.inputs.slice(0, -1) : this.currentMode.inputs;
@@ -8531,16 +8509,14 @@ var modes = {
8531
8509
  max: max,
8532
8510
  step: type === 'float' ? '0.01' : type === 'int' ? '1' : undefined,
8533
8511
  disabled: _this.disabled
8534
- }, _this.getValue(value[target], type), {
8535
- input: function input(e) {
8536
- var _a;
8512
+ }, _this.getValue(value[target], type), function (e) {
8513
+ var _a;
8537
8514
 
8538
- var el = e.target;
8515
+ var el = e.target;
8539
8516
 
8540
- var newVal = _this.parseValue(el.value || '0', type);
8517
+ var newVal = _this.parseValue(el.value || '0', type);
8541
8518
 
8542
- _this.$emit('update:color', _this.currentMode.from(Object.assign({}, value, (_a = {}, _a[target] = newVal, _a)), _this.color.alpha));
8543
- }
8519
+ _this.$emit('update:color', _this.currentMode.from(Object.assign({}, value, (_a = {}, _a[target] = newVal, _a)), _this.color.alpha));
8544
8520
  });
8545
8521
  });
8546
8522
  }
@@ -8551,7 +8527,11 @@ var modes = {
8551
8527
  icon: true,
8552
8528
  disabled: this.disabled,
8553
8529
  onClick: this.changeMode
8554
- }, [Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(_VIcon__WEBPACK_IMPORTED_MODULE_3__["default"], '$unfold')]);
8530
+ }, {
8531
+ default: function _default() {
8532
+ return [Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(_VIcon__WEBPACK_IMPORTED_MODULE_3__["default"], {}, '$unfold')];
8533
+ }
8534
+ });
8555
8535
  }
8556
8536
  },
8557
8537
  render: function render() {
@@ -8612,77 +8592,86 @@ var __assign = undefined && undefined.__assign || function () {
8612
8592
 
8613
8593
  // Utilities
8614
8594
 
8615
- // Types
8616
-
8617
8595
 
8618
8596
 
8619
8597
  /* harmony default export */ __webpack_exports__["default"] = (Object(vue__WEBPACK_IMPORTED_MODULE_0__["defineComponent"])({
8620
8598
  name: 'v-color-picker-preview',
8621
8599
  props: {
8622
- color: Object,
8600
+ color: {
8601
+ type: Object,
8602
+ required: true
8603
+ },
8623
8604
  disabled: Boolean,
8624
8605
  hideAlpha: Boolean
8625
8606
  },
8607
+ emits: ['update:color'],
8626
8608
  methods: {
8627
8609
  genAlpha: function genAlpha() {
8628
8610
  var _this = this;
8629
8611
 
8612
+ var _a;
8613
+
8614
+ if (!this.color) return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div');
8630
8615
  return this.genTrack({
8631
8616
  class: 'v-color-picker__alpha',
8632
8617
  thumbColor: 'grey lighten-2',
8633
8618
  hideDetails: true,
8634
- value: this.color.alpha,
8619
+ modelValue: this.color.alpha,
8635
8620
  step: 0,
8636
8621
  min: 0,
8637
8622
  max: 1,
8638
8623
  style: {
8639
- backgroundImage: this.disabled ? undefined : "linear-gradient(to " + (this.$vuetify.rtl ? 'left' : 'right') + ", transparent, " + Object(_util_colorUtils__WEBPACK_IMPORTED_MODULE_3__["RGBtoCSS"])(this.color.rgba) + ")"
8624
+ backgroundImage: this.disabled ? undefined : "linear-gradient(to " + (((_a = this.$vuetify) === null || _a === void 0 ? void 0 : _a.rtl) ? 'left' : 'right') + ", transparent, " + Object(_util_colorUtils__WEBPACK_IMPORTED_MODULE_3__["RGBtoCSS"])(this.color.rgba) + ")"
8640
8625
  },
8641
- onInput: function onInput(val) {
8642
- return _this.color.alpha !== val && _this.$emit('update:color', Object(_util__WEBPACK_IMPORTED_MODULE_4__["fromHSVA"])(__assign(__assign({}, _this.color.hsva), {
8643
- a: val
8644
- })));
8626
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
8627
+ if (_this.color && _this.color.alpha !== val) {
8628
+ _this.$emit('update:color', Object(_util__WEBPACK_IMPORTED_MODULE_4__["fromHSVA"])(__assign(__assign({}, _this.color.hsva), {
8629
+ a: val
8630
+ })));
8631
+ }
8645
8632
  }
8646
8633
  });
8647
8634
  },
8648
- genSliders: function genSliders() {
8649
- return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', {
8650
- class: 'v-color-picker__sliders'
8651
- }, [this.genHue(), !this.hideAlpha && this.genAlpha()]);
8652
- },
8653
- genDot: function genDot() {
8654
- return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', {
8655
- class: 'v-color-picker__dot'
8656
- }, [Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', {
8657
- style: {
8658
- background: Object(_util_colorUtils__WEBPACK_IMPORTED_MODULE_3__["RGBAtoCSS"])(this.color.rgba)
8659
- }
8660
- })]);
8661
- },
8662
8635
  genHue: function genHue() {
8663
8636
  var _this = this;
8664
8637
 
8638
+ if (!this.color) return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div');
8665
8639
  return this.genTrack({
8666
8640
  class: 'v-color-picker__hue',
8667
8641
  thumbColor: 'grey lighten-2',
8668
8642
  hideDetails: true,
8669
- value: this.color.hue,
8643
+ modelValue: this.color.hue,
8670
8644
  step: 0,
8671
8645
  min: 0,
8672
8646
  max: 360,
8673
- onInput: function onInput(val) {
8674
- return _this.color.hue !== val && _this.$emit('update:color', Object(_util__WEBPACK_IMPORTED_MODULE_4__["fromHSVA"])(__assign(__assign({}, _this.color.hsva), {
8675
- h: val
8676
- })));
8647
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
8648
+ if (_this.color && _this.color.hue !== val) {
8649
+ _this.$emit('update:color', Object(_util__WEBPACK_IMPORTED_MODULE_4__["fromHSVA"])(__assign(__assign({}, _this.color.hsva), {
8650
+ h: val
8651
+ })));
8652
+ }
8677
8653
  }
8678
8654
  });
8679
8655
  },
8680
8656
  genTrack: function genTrack(options) {
8681
- return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(_VSlider_VSlider__WEBPACK_IMPORTED_MODULE_2__["default"], __assign(__assign(__assign({
8682
- class: 'v-color-picker__track'
8683
- }, options), {
8657
+ return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(_VSlider_VSlider__WEBPACK_IMPORTED_MODULE_2__["default"], __assign({
8658
+ class: 'v-color-picker__track',
8684
8659
  disabled: this.disabled
8685
- }), options.props));
8660
+ }, options));
8661
+ },
8662
+ genSliders: function genSliders() {
8663
+ return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', {
8664
+ class: 'v-color-picker__sliders'
8665
+ }, [this.genHue(), !this.hideAlpha && this.genAlpha()]);
8666
+ },
8667
+ genDot: function genDot() {
8668
+ return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', {
8669
+ class: 'v-color-picker__dot'
8670
+ }, [Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', {
8671
+ style: {
8672
+ background: this.color ? Object(_util_colorUtils__WEBPACK_IMPORTED_MODULE_3__["RGBAtoCSS"])(this.color.rgba) : 'transparent'
8673
+ }
8674
+ })]);
8686
8675
  }
8687
8676
  },
8688
8677
  render: function render() {
@@ -8724,9 +8713,8 @@ __webpack_require__.r(__webpack_exports__);
8724
8713
  /* harmony import */ var _util_colors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../util/colors */ "./src/util/colors.ts");
8725
8714
  /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./util */ "./src/components/VColorPicker/util/index.ts");
8726
8715
  /* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../util/helpers */ "./src/util/helpers.ts");
8727
- /* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../util/mixins */ "./src/util/mixins.ts");
8716
+ /* harmony import */ var _util_colorUtils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../util/colorUtils */ "./src/util/colorUtils.ts");
8728
8717
  /* harmony import */ var _mixins_themeable__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../mixins/themeable */ "./src/mixins/themeable/index.ts");
8729
- /* harmony import */ var _util_colorUtils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../util/colorUtils */ "./src/util/colorUtils.ts");
8730
8718
  // Styles
8731
8719
 
8732
8720
  // Components
@@ -8736,7 +8724,7 @@ __webpack_require__.r(__webpack_exports__);
8736
8724
 
8737
8725
 
8738
8726
 
8739
-
8727
+ // Mixins
8740
8728
 
8741
8729
 
8742
8730
 
@@ -8749,8 +8737,9 @@ function parseDefaultColors(colors) {
8749
8737
 
8750
8738
  var white = Object(_util__WEBPACK_IMPORTED_MODULE_4__["fromHex"])('#FFFFFF').rgba;
8751
8739
  var black = Object(_util__WEBPACK_IMPORTED_MODULE_4__["fromHex"])('#000000').rgba;
8752
- /* harmony default export */ __webpack_exports__["default"] = (Object(_util_mixins__WEBPACK_IMPORTED_MODULE_6__["default"])(_mixins_themeable__WEBPACK_IMPORTED_MODULE_7__["default"]).extend({
8740
+ /* harmony default export */ __webpack_exports__["default"] = (Object(vue__WEBPACK_IMPORTED_MODULE_0__["defineComponent"])({
8753
8741
  name: 'v-color-picker-swatches',
8742
+ mixins: [_mixins_themeable__WEBPACK_IMPORTED_MODULE_7__["default"]],
8754
8743
  props: {
8755
8744
  swatches: {
8756
8745
  type: Array,
@@ -8759,10 +8748,14 @@ var black = Object(_util__WEBPACK_IMPORTED_MODULE_4__["fromHex"])('#000000').rgb
8759
8748
  }
8760
8749
  },
8761
8750
  disabled: Boolean,
8762
- color: Object,
8751
+ color: {
8752
+ type: Object,
8753
+ required: true
8754
+ },
8763
8755
  maxWidth: [Number, String],
8764
8756
  maxHeight: [Number, String]
8765
8757
  },
8758
+ emits: ['update:color'],
8766
8759
  methods: {
8767
8760
  genColor: function genColor(color) {
8768
8761
  var _this = this;
@@ -8773,15 +8766,14 @@ var black = Object(_util__WEBPACK_IMPORTED_MODULE_4__["fromHex"])('#000000').rgb
8773
8766
  }
8774
8767
  }, [Object(_util_helpers__WEBPACK_IMPORTED_MODULE_5__["deepEqual"])(this.color, Object(_util__WEBPACK_IMPORTED_MODULE_4__["parseColor"])(color, null)) && Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])(_VIcon__WEBPACK_IMPORTED_MODULE_2__["default"], {
8775
8768
  small: true,
8776
- dark: Object(_util_colorUtils__WEBPACK_IMPORTED_MODULE_8__["contrastRatio"])(this.color.rgba, white) > 2 && this.color.alpha > 0.5,
8777
- light: Object(_util_colorUtils__WEBPACK_IMPORTED_MODULE_8__["contrastRatio"])(this.color.rgba, black) > 2 && this.color.alpha > 0.5
8769
+ dark: Object(_util_colorUtils__WEBPACK_IMPORTED_MODULE_6__["contrastRatio"])(this.color.rgba, white) > 2 && this.color.alpha > 0.5,
8770
+ light: Object(_util_colorUtils__WEBPACK_IMPORTED_MODULE_6__["contrastRatio"])(this.color.rgba, black) > 2 && this.color.alpha > 0.5
8778
8771
  }, '$success')]);
8779
8772
  return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', {
8780
8773
  class: 'v-color-picker__color',
8781
- on: {
8782
- // TODO: Less hacky way of catching transparent
8783
- click: function click() {
8784
- return _this.disabled || _this.$emit('update:color', Object(_util__WEBPACK_IMPORTED_MODULE_4__["fromHex"])(color === 'transparent' ? '#00000000' : color));
8774
+ onClick: function onClick() {
8775
+ if (!_this.disabled) {
8776
+ _this.$emit('update:color', Object(_util__WEBPACK_IMPORTED_MODULE_4__["fromHex"])(color === 'transparent' ? '#00000000' : color));
8785
8777
  }
8786
8778
  }
8787
8779
  }, [content]);
@@ -8799,7 +8791,7 @@ var black = Object(_util__WEBPACK_IMPORTED_MODULE_4__["fromHex"])('#000000').rgb
8799
8791
  },
8800
8792
  render: function render() {
8801
8793
  return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', {
8802
- class: 'v-color-picker__swatches',
8794
+ class: ['v-color-picker__swatches', this.themeClasses],
8803
8795
  style: {
8804
8796
  maxWidth: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_5__["convertToUnit"])(this.maxWidth),
8805
8797
  maxHeight: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_5__["convertToUnit"])(this.maxHeight)
@@ -11336,10 +11328,9 @@ function searchTableItems(items, search, headersWithCustomFilters, headersWithou
11336
11328
  }));
11337
11329
  },
11338
11330
  genLoading: function genLoading() {
11339
- var th = Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])('th', {
11340
- class: 'column',
11341
- attrs: this.colspanAttrs
11342
- }, [this.genProgress()]);
11331
+ var th = Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])('th', __assign({
11332
+ class: 'column'
11333
+ }, this.colspanAttrs), [this.genProgress()]);
11343
11334
  var tr = Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])('tr', {
11344
11335
  class: 'v-data-table__progress'
11345
11336
  }, [th]);
@@ -11377,9 +11368,7 @@ function searchTableItems(items, search, headersWithCustomFilters, headersWithou
11377
11368
  genEmptyWrapper: function genEmptyWrapper(content) {
11378
11369
  return Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])('tr', {
11379
11370
  class: 'v-data-table__empty-wrapper'
11380
- }, [Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])('td', {
11381
- attrs: this.colspanAttrs
11382
- }, content)]);
11371
+ }, [Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])('td', __assign({}, this.colspanAttrs), content)]);
11383
11372
  },
11384
11373
  genItems: function genItems(items, props) {
11385
11374
  var empty = this.genEmpty(props.originalItemsLength, props.pagination.itemsLength);
@@ -11454,10 +11443,9 @@ function searchTableItems(items, search, headersWithCustomFilters, headersWithou
11454
11443
  click: removeFn
11455
11444
  }
11456
11445
  }, [Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])(_VIcon__WEBPACK_IMPORTED_MODULE_6__["default"], ['$close'])]);
11457
- var column = Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])('td', {
11458
- class: 'text-start',
11459
- attrs: this.colspanAttrs
11460
- }, [toggle, this.groupByText + ": " + group, remove]);
11446
+ var column = Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])('td', __assign({
11447
+ class: 'text-start'
11448
+ }, this.colspanAttrs), [toggle, this.groupByText + ": " + group, remove]);
11461
11449
  children.unshift(Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])('template', {
11462
11450
  slot: 'column.header'
11463
11451
  }, [column]));
@@ -17772,6 +17760,19 @@ var __assign = undefined && undefined.__assign || function () {
17772
17760
  };
17773
17761
 
17774
17762
  return __assign.apply(this, arguments);
17763
+ };
17764
+
17765
+ var __rest = undefined && undefined.__rest || function (s, e) {
17766
+ var t = {};
17767
+
17768
+ for (var p in s) {
17769
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
17770
+ }
17771
+
17772
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17773
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
17774
+ }
17775
+ return t;
17775
17776
  }; // Styles
17776
17777
 
17777
17778
 
@@ -17858,6 +17859,10 @@ var baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_9__["default"])(_m
17858
17859
  set: function set(val) {
17859
17860
  this.lazyValue = val;
17860
17861
  this.$emit(this.$_modelEvent, val);
17862
+
17863
+ if ('$_emitChangeEvent' in this) {
17864
+ this.$emit('change', val);
17865
+ }
17861
17866
  }
17862
17867
  },
17863
17868
  isDirty: function isDirty() {
@@ -18045,11 +18050,21 @@ var baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_9__["default"])(_m
18045
18050
  }
18046
18051
  },
18047
18052
  render: function render() {
18048
- return Object(vue__WEBPACK_IMPORTED_MODULE_8__["h"])('div', this.setTextColor(this.validationState, {
18049
- class: __assign({
18053
+ var _this = this;
18054
+
18055
+ var _a = this.$attrs,
18056
+ additionalClasses = _a.class,
18057
+ restAttrs = __rest(_a, ["class"]);
18058
+
18059
+ return Object(vue__WEBPACK_IMPORTED_MODULE_8__["h"])('div', this.setTextColor(this.validationState, __assign({
18060
+ class: __assign(__assign({
18050
18061
  'v-input': true
18051
- }, this.classes)
18052
- }), this.genContent());
18062
+ }, this.classes), Object(_util_helpers__WEBPACK_IMPORTED_MODULE_6__["normalizeClasses"])(additionalClasses))
18063
+ }, restAttrs)), {
18064
+ default: function _default() {
18065
+ return _this.genContent();
18066
+ }
18067
+ });
18053
18068
  }
18054
18069
  }));
18055
18070
 
@@ -24851,7 +24866,7 @@ var __assign = undefined && undefined.__assign || function () {
24851
24866
  var scopedSlot = this.$slots.item({
24852
24867
  parent: parent,
24853
24868
  item: item,
24854
- attrs: __assign(__assign({}, tile.attrs), tile.props),
24869
+ attrs: __assign(__assign(__assign({}, tile.attrs), tile.props), tile.on),
24855
24870
  on: tile.on
24856
24871
  });
24857
24872
  return this.needsTile(scopedSlot) ? Object(vue__WEBPACK_IMPORTED_MODULE_9__["h"])(_VList__WEBPACK_IMPORTED_MODULE_3__["VListItem"], tile, scopedSlot) : scopedSlot;
@@ -25993,7 +26008,7 @@ var __assign = undefined && undefined.__assign || function () {
25993
26008
  type: [Boolean, String],
25994
26009
  default: undefined,
25995
26010
  validator: function validator(v) {
25996
- return typeof v === 'boolean' || v === 'always';
26011
+ return typeof v === 'boolean' || v === 'always' || v === undefined;
25997
26012
  }
25998
26013
  },
25999
26014
  thumbSize: {
@@ -26022,6 +26037,7 @@ var __assign = undefined && undefined.__assign || function () {
26022
26037
  modelValue: [Number, String],
26023
26038
  vertical: Boolean
26024
26039
  },
26040
+ emits: ['update:modelValue', 'start', 'end', 'mouseup', 'change', 'focus', 'blur'],
26025
26041
  data: function data() {
26026
26042
  return {
26027
26043
  app: null,
@@ -26047,11 +26063,14 @@ var __assign = undefined && undefined.__assign || function () {
26047
26063
  return this.lazyValue;
26048
26064
  },
26049
26065
  set: function set(val) {
26066
+ var originalVal = val;
26050
26067
  val = isNaN(val) ? this.minValue : val; // Round value to ensure the
26051
26068
  // entire slider range can
26052
26069
  // be selected with step
26053
26070
 
26054
- var value = this.roundValue(Math.min(Math.max(val, this.minValue), this.maxValue));
26071
+ var value = this.roundValue(val); // Then clamp to min/max
26072
+
26073
+ value = Math.min(Math.max(value, this.minValue), this.maxValue);
26055
26074
  if (value === this.lazyValue) return;
26056
26075
  this.lazyValue = value;
26057
26076
  this.$emit('update:modelValue', value);
@@ -26067,7 +26086,8 @@ var __assign = undefined && undefined.__assign || function () {
26067
26086
  return parseFloat(this.max);
26068
26087
  },
26069
26088
  stepNumeric: function stepNumeric() {
26070
- return this.step > 0 ? parseFloat(this.step) : 0;
26089
+ var step = parseFloat(this.step);
26090
+ return step > 0 ? step : 0;
26071
26091
  },
26072
26092
  inputWidth: function inputWidth() {
26073
26093
  var inputWidth = (this.roundValue(this.internalValue) - this.minValue) / (this.maxValue - this.minValue) * 100;
@@ -26125,14 +26145,21 @@ var __assign = undefined && undefined.__assign || function () {
26125
26145
  watch: {
26126
26146
  min: function min(val) {
26127
26147
  var parsed = parseFloat(val);
26128
- parsed > this.internalValue && this.$emit('update:modelValue', parsed);
26148
+
26149
+ if (parsed > this.internalValue) {
26150
+ this.$emit('update:modelValue', parsed);
26151
+ }
26129
26152
  },
26130
26153
  max: function max(val) {
26131
26154
  var parsed = parseFloat(val);
26132
- parsed < this.internalValue && this.$emit('update:modelValue', parsed);
26155
+
26156
+ if (parsed < this.internalValue) {
26157
+ this.$emit('update:modelValue', parsed);
26158
+ }
26133
26159
  },
26134
26160
  modelValue: {
26135
26161
  handler: function handler(v) {
26162
+ // Use the setter to ensure proper rounding and validation
26136
26163
  this.internalValue = v;
26137
26164
  },
26138
26165
  immediate: true
@@ -26151,7 +26178,7 @@ var __assign = undefined && undefined.__assign || function () {
26151
26178
  return children;
26152
26179
  },
26153
26180
  genSlider: function genSlider() {
26154
- return Object(vue__WEBPACK_IMPORTED_MODULE_8__["h"])('div', {
26181
+ return Object(vue__WEBPACK_IMPORTED_MODULE_8__["withDirectives"])(Object(vue__WEBPACK_IMPORTED_MODULE_8__["h"])('div', {
26155
26182
  class: __assign({
26156
26183
  'v-slider': true,
26157
26184
  'v-slider--horizontal': !this.vertical,
@@ -26161,14 +26188,10 @@ var __assign = undefined && undefined.__assign || function () {
26161
26188
  'v-slider--disabled': this.isDisabled,
26162
26189
  'v-slider--readonly': this.isReadonly
26163
26190
  }, this.themeClasses),
26164
- directives: [{
26165
- name: 'click-outside',
26166
- value: this.onBlur
26167
- }],
26168
26191
  onClick: this.onSliderClick,
26169
26192
  onMousedown: this.onSliderMouseDown,
26170
26193
  onTouchstart: this.onSliderMouseDown
26171
- }, this.genChildren());
26194
+ }, this.genChildren()), [[_directives_click_outside__WEBPACK_IMPORTED_MODULE_5__["default"], this.onBlur]]);
26172
26195
  },
26173
26196
  genChildren: function genChildren() {
26174
26197
  return [this.genInput(), this.genTrackContainer(), this.genSteps(), this.genThumbContainer(this.internalValue, this.inputWidth, this.isActive, this.isFocused, this.onFocus, this.onBlur)];
@@ -26274,12 +26297,8 @@ var __assign = undefined && undefined.__assign || function () {
26274
26297
  var transform = this.vertical ? "translateY(20%) translateY(" + (Number(this.thumbSize) / 3 - 1) + "px) translateX(55%) rotate(135deg)" : "translateY(-20%) translateY(-12px) translateX(-50%) rotate(45deg)";
26275
26298
  return Object(vue__WEBPACK_IMPORTED_MODULE_8__["h"])(_transitions__WEBPACK_IMPORTED_MODULE_2__["VScaleTransition"], {
26276
26299
  origin: 'bottom center'
26277
- }, [Object(vue__WEBPACK_IMPORTED_MODULE_8__["h"])('div', {
26278
- class: 'v-slider__thumb-label-container',
26279
- directives: [{
26280
- name: 'show',
26281
- value: this.isFocused || this.isActive || this.thumbLabel === 'always'
26282
- }]
26300
+ }, [Object(vue__WEBPACK_IMPORTED_MODULE_8__["withDirectives"])(Object(vue__WEBPACK_IMPORTED_MODULE_8__["h"])('div', {
26301
+ class: 'v-slider__thumb-label-container'
26283
26302
  }, [Object(vue__WEBPACK_IMPORTED_MODULE_8__["h"])('div', this.setBackgroundColor(this.computedThumbColor, {
26284
26303
  class: 'v-slider__thumb-label',
26285
26304
  style: {
@@ -26287,7 +26306,7 @@ var __assign = undefined && undefined.__assign || function () {
26287
26306
  width: size,
26288
26307
  transform: transform
26289
26308
  }
26290
- }), [Object(vue__WEBPACK_IMPORTED_MODULE_8__["h"])('div', content)])])]);
26309
+ }), [Object(vue__WEBPACK_IMPORTED_MODULE_8__["h"])('div', content)])]), [[vue__WEBPACK_IMPORTED_MODULE_8__["vShow"], this.isFocused || this.isActive || this.thumbLabel === 'always']])]);
26291
26310
  },
26292
26311
  genThumb: function genThumb() {
26293
26312
  return Object(vue__WEBPACK_IMPORTED_MODULE_8__["h"])('div', this.setBackgroundColor(this.computedThumbColor, {
@@ -26382,6 +26401,7 @@ var __assign = undefined && undefined.__assign || function () {
26382
26401
  thumb.focus();
26383
26402
  this.onMouseMove(e);
26384
26403
  this.$emit('update:modelValue', this.internalValue);
26404
+ this.$emit('change', this.internalValue);
26385
26405
  },
26386
26406
  onBlur: function onBlur(e) {
26387
26407
  this.isFocused = false;
@@ -31358,6 +31378,7 @@ __webpack_require__.r(__webpack_exports__);
31358
31378
  // Helpers
31359
31379
 
31360
31380
 
31381
+ // Types
31361
31382
 
31362
31383
 
31363
31384
  /* @vue/component */
@@ -31464,7 +31485,7 @@ __webpack_require__.r(__webpack_exports__);
31464
31485
  var _this = this;
31465
31486
 
31466
31487
  this.$nextTick(function () {
31467
- _this.value && _this.callActivate();
31488
+ _this.modelValue && _this.callActivate();
31468
31489
  });
31469
31490
  },
31470
31491
  mounted: function mounted() {
@@ -31528,16 +31549,12 @@ __webpack_require__.r(__webpack_exports__);
31528
31549
  genContent: function genContent() {
31529
31550
  var _a;
31530
31551
 
31531
- return Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', this.setBackgroundColor(this.color, {
31552
+ return Object(vue__WEBPACK_IMPORTED_MODULE_0__["withDirectives"])(Object(vue__WEBPACK_IMPORTED_MODULE_0__["h"])('div', this.setBackgroundColor(this.color, {
31532
31553
  class: ['v-tooltip__content', (_a = {}, _a[this.contentClass] = true, _a.menuable__content__active = this.isActive, _a['v-tooltip__content--fixed'] = this.activatorFixed, _a)],
31533
31554
  style: this.styles,
31534
31555
  attrs: this.getScopeIdAttrs(),
31535
- directives: [{
31536
- name: 'show',
31537
- value: this.isContentActive
31538
- }],
31539
31556
  ref: 'content'
31540
- }), this.getContentSlot());
31557
+ }), this.getContentSlot()), [[vue__WEBPACK_IMPORTED_MODULE_0__["vShow"], this.isContentActive]]);
31541
31558
  }
31542
31559
  },
31543
31560
  render: function render() {
@@ -35239,7 +35256,7 @@ function () {
35239
35256
 
35240
35257
  Vuetify.install = _install__WEBPACK_IMPORTED_MODULE_0__["install"];
35241
35258
  Vuetify.installed = false;
35242
- Vuetify.version = "2.7.2-alpha22";
35259
+ Vuetify.version = "2.7.2-alpha25";
35243
35260
  Vuetify.config = {
35244
35261
  silent: false
35245
35262
  };
@@ -39370,7 +39387,8 @@ var baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_2__["default"])(_d
39370
39387
  },
39371
39388
  genActivator: function genActivator() {
39372
39389
  var node = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_3__["getSlot"])(this, 'activator', Object.assign(this.getValueProxy(), {
39373
- attrs: __assign(__assign({}, this.genActivatorListeners()), this.genActivatorAttributes())
39390
+ attrs: __assign(__assign({}, this.genActivatorListeners()), this.genActivatorAttributes()),
39391
+ on: this.genActivatorListeners()
39374
39392
  })) || [];
39375
39393
  node = Array.isArray(node) ? node : [node];
39376
39394
  this.activatorNode = node.flatMap(function (node) {
@@ -39666,8 +39684,6 @@ __webpack_require__.r(__webpack_exports__);
39666
39684
  /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_1__);
39667
39685
  // Utilities
39668
39686
 
39669
- // Types
39670
-
39671
39687
 
39672
39688
  /**
39673
39689
  * Bootable
@@ -39708,7 +39724,7 @@ __webpack_require__.r(__webpack_exports__);
39708
39724
  },
39709
39725
  methods: {
39710
39726
  showLazyContent: function showLazyContent(content) {
39711
- return this.hasContent && content ? content() : [Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])()];
39727
+ return this.hasContent && content ? content() : [Object(vue__WEBPACK_IMPORTED_MODULE_1__["h"])(vue__WEBPACK_IMPORTED_MODULE_1__["Comment"])];
39712
39728
  }
39713
39729
  }
39714
39730
  }));
@@ -41088,6 +41104,7 @@ __webpack_require__.r(__webpack_exports__);
41088
41104
  __webpack_require__.r(__webpack_exports__);
41089
41105
  /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ "vue");
41090
41106
  /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);
41107
+ /* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../util/helpers */ "./src/util/helpers.ts");
41091
41108
  var __assign = undefined && undefined.__assign || function () {
41092
41109
  __assign = Object.assign || function (t) {
41093
41110
  for (var s, i = 1, n = arguments.length; i < n; i++) {
@@ -41106,9 +41123,9 @@ var __assign = undefined && undefined.__assign || function () {
41106
41123
 
41107
41124
 
41108
41125
 
41126
+
41109
41127
  function mapEventName(str) {
41110
- var newStr = "on" + str;
41111
- return newStr.charAt(0).toUpperCase() + newStr.slice(1);
41128
+ return "on" + Object(_util_helpers__WEBPACK_IMPORTED_MODULE_1__["upperFirst"])(str);
41112
41129
  }
41113
41130
 
41114
41131
  /* harmony default export */ __webpack_exports__["default"] = (Object(vue__WEBPACK_IMPORTED_MODULE_0__["defineComponent"])({
@@ -41124,8 +41141,11 @@ function mapEventName(str) {
41124
41141
  var listeners = Object.keys(this.$attrs).filter(function (key) {
41125
41142
  return key.endsWith(suffix);
41126
41143
  }).reduce(function (acc, key) {
41127
- acc[key] = {
41128
- event: key.slice(0, -suffix.length)
41144
+ var eventName = suffix ? key.slice(0, -suffix.length) : key;
41145
+ var cleanEventName = eventName.startsWith('on') ? eventName.slice(2).toLowerCase() : eventName.toLowerCase();
41146
+ acc[cleanEventName] = {
41147
+ event: cleanEventName,
41148
+ originalKey: key
41129
41149
  };
41130
41150
  return acc;
41131
41151
  }, {});
@@ -41146,7 +41166,8 @@ function mapEventName(str) {
41146
41166
 
41147
41167
  var _loop_1 = function _loop_1(event) {
41148
41168
  var eventOptions = events[event];
41149
- if (!this_1.$attrs[mapEventName(event)]) return "continue"; // TODO somehow pull in modifiers
41169
+ var attrName = eventOptions.originalKey || (event.includes(':') ? event : mapEventName(event));
41170
+ if (!this_1.$attrs[attrName]) return "continue"; // TODO somehow pull in modifiers
41150
41171
 
41151
41172
  var prefix = eventOptions.passive ? '&' : (eventOptions.once ? '~' : '') + (eventOptions.capture ? '!' : '');
41152
41173
  var key = prefix + eventOptions.event;
@@ -42376,6 +42397,9 @@ function prevent(e) {
42376
42397
  lazyValue: this.modelValue
42377
42398
  };
42378
42399
  },
42400
+ created: function created() {
42401
+ this.$_emitChangeEvent = true;
42402
+ },
42379
42403
  computed: {
42380
42404
  computedColor: function computedColor() {
42381
42405
  if (!this.isActive) return undefined;