vuetify 2.6.7 → 2.6.10
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.
- package/dist/json/web-types.json +49 -7
- package/dist/vuetify.css +10 -2
- package/dist/vuetify.css.map +1 -1
- package/dist/vuetify.js +405 -310
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +2 -2
- package/es5/components/VAutocomplete/VAutocomplete.js +3 -3
- package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/es5/components/VBtn/VBtn.js +2 -2
- package/es5/components/VBtn/VBtn.js.map +1 -1
- package/es5/components/VCalendar/VCalendar.js +3 -0
- package/es5/components/VCalendar/VCalendar.js.map +1 -1
- package/es5/components/VCalendar/VCalendarWeekly.js +15 -3
- package/es5/components/VCalendar/VCalendarWeekly.js.map +1 -1
- package/es5/components/VCalendar/mixins/calendar-with-events.js +16 -18
- package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
- package/es5/components/VCalendar/mixins/mouse.js +18 -26
- package/es5/components/VCalendar/mixins/mouse.js.map +1 -1
- package/es5/components/VCarousel/VCarousel.js +2 -1
- package/es5/components/VCarousel/VCarousel.js.map +1 -1
- package/es5/components/VCheckbox/VSimpleCheckbox.js +5 -5
- package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
- package/es5/components/VCombobox/VCombobox.js +2 -2
- package/es5/components/VCombobox/VCombobox.js.map +1 -1
- package/es5/components/VDataIterator/VDataFooter.js +5 -2
- package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
- package/es5/components/VDataTable/Row.js +2 -2
- package/es5/components/VDataTable/Row.js.map +1 -1
- package/es5/components/VDataTable/VDataTable.js +54 -43
- package/es5/components/VDataTable/VDataTable.js.map +1 -1
- package/es5/components/VDataTable/mixins/header.js +4 -3
- package/es5/components/VDataTable/mixins/header.js.map +1 -1
- package/es5/components/VDatePicker/VDatePicker.js +2 -1
- package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
- package/es5/components/VDialog/VDialog.js +13 -15
- package/es5/components/VDialog/VDialog.js.map +1 -1
- package/es5/components/VInput/VInput.js +2 -1
- package/es5/components/VInput/VInput.js.map +1 -1
- package/es5/components/VItemGroup/VItemGroup.js +4 -2
- package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
- package/es5/components/VMenu/VMenu.js +2 -2
- package/es5/components/VMenu/VMenu.js.map +1 -1
- package/es5/components/VOtpInput/VOtpInput.js +8 -7
- package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
- package/es5/components/VPagination/VPagination.js +1 -1
- package/es5/components/VPagination/VPagination.js.map +1 -1
- package/es5/components/VRadioGroup/VRadio.js +3 -1
- package/es5/components/VRadioGroup/VRadio.js.map +1 -1
- package/es5/components/VRangeSlider/VRangeSlider.js +4 -3
- package/es5/components/VRangeSlider/VRangeSlider.js.map +1 -1
- package/es5/components/VSelect/VSelect.js +8 -8
- package/es5/components/VSelect/VSelect.js.map +1 -1
- package/es5/components/VSelect/VSelectList.js +8 -10
- package/es5/components/VSelect/VSelectList.js.map +1 -1
- package/es5/components/VSkeletonLoader/VSkeletonLoader.js +4 -4
- package/es5/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
- package/es5/components/VSlideGroup/VSlideGroup.js +4 -4
- package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
- package/es5/components/VSlider/VSlider.js +8 -11
- package/es5/components/VSlider/VSlider.js.map +1 -1
- package/es5/components/VSparkline/VSparkline.js +2 -1
- package/es5/components/VSparkline/VSparkline.js.map +1 -1
- package/es5/components/VTextField/VTextField.js +5 -5
- package/es5/components/VTextField/VTextField.js.map +1 -1
- package/es5/components/VTextarea/VTextarea.js +2 -2
- package/es5/components/VTextarea/VTextarea.js.map +1 -1
- package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
- package/es5/components/VTreeview/VTreeview.js +5 -4
- package/es5/components/VTreeview/VTreeview.js.map +1 -1
- package/es5/components/VTreeview/VTreeviewNode.js +2 -1
- package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
- package/es5/components/VWindow/VWindow.js +5 -6
- package/es5/components/VWindow/VWindow.js.map +1 -1
- package/es5/directives/click-outside/index.js +2 -2
- package/es5/directives/click-outside/index.js.map +1 -1
- package/es5/directives/intersect/index.js +5 -5
- package/es5/directives/intersect/index.js.map +1 -1
- package/es5/directives/mutate/index.js +2 -2
- package/es5/directives/mutate/index.js.map +1 -1
- package/es5/directives/resize/index.js +2 -2
- package/es5/directives/resize/index.js.map +1 -1
- package/es5/directives/scroll/index.js +2 -2
- package/es5/directives/scroll/index.js.map +1 -1
- package/es5/framework.js +1 -1
- package/es5/mixins/activatable/index.js +1 -3
- package/es5/mixins/activatable/index.js.map +1 -1
- package/es5/mixins/binds-attrs/index.js.map +1 -1
- package/es5/mixins/menuable/index.js +5 -1
- package/es5/mixins/menuable/index.js.map +1 -1
- package/es5/mixins/overlayable/index.js +1 -1
- package/es5/mixins/overlayable/index.js.map +1 -1
- package/es5/mixins/routable/index.js +2 -2
- package/es5/mixins/routable/index.js.map +1 -1
- package/es5/util/helpers.js +1 -14
- package/es5/util/helpers.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.js +3 -3
- package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/lib/components/VBtn/VBtn.js +2 -2
- package/lib/components/VBtn/VBtn.js.map +1 -1
- package/lib/components/VCalendar/VCalendar.js +3 -0
- package/lib/components/VCalendar/VCalendar.js.map +1 -1
- package/lib/components/VCalendar/VCalendarWeekly.js +15 -3
- package/lib/components/VCalendar/VCalendarWeekly.js.map +1 -1
- package/lib/components/VCalendar/mixins/calendar-with-events.js +15 -18
- package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
- package/lib/components/VCalendar/mixins/mouse.js +11 -32
- package/lib/components/VCalendar/mixins/mouse.js.map +1 -1
- package/lib/components/VCarousel/VCarousel.js +2 -1
- package/lib/components/VCarousel/VCarousel.js.map +1 -1
- package/lib/components/VCheckbox/VSimpleCheckbox.js +3 -2
- package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
- package/lib/components/VCombobox/VCombobox.js +2 -2
- package/lib/components/VCombobox/VCombobox.js.map +1 -1
- package/lib/components/VDataIterator/VDataFooter.js +5 -2
- package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
- package/lib/components/VDataTable/Row.js +2 -2
- package/lib/components/VDataTable/Row.js.map +1 -1
- package/lib/components/VDataTable/VDataTable.js +15 -5
- package/lib/components/VDataTable/VDataTable.js.map +1 -1
- package/lib/components/VDataTable/mixins/header.js +2 -2
- package/lib/components/VDataTable/mixins/header.js.map +1 -1
- package/lib/components/VDatePicker/VDatePicker.js +2 -1
- package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
- package/lib/components/VDialog/VDialog.js +11 -13
- package/lib/components/VDialog/VDialog.js.map +1 -1
- package/lib/components/VInput/VInput.js +2 -1
- package/lib/components/VInput/VInput.js.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.js +2 -2
- package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
- package/lib/components/VMenu/VMenu.js +2 -2
- package/lib/components/VMenu/VMenu.js.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.js +8 -7
- package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
- package/lib/components/VPagination/VPagination.js +1 -1
- package/lib/components/VPagination/VPagination.js.map +1 -1
- package/lib/components/VRadioGroup/VRadio.js +3 -1
- package/lib/components/VRadioGroup/VRadio.js.map +1 -1
- package/lib/components/VRangeSlider/VRangeSlider.js +2 -2
- package/lib/components/VRangeSlider/VRangeSlider.js.map +1 -1
- package/lib/components/VSelect/VSelect.js +8 -8
- package/lib/components/VSelect/VSelect.js.map +1 -1
- package/lib/components/VSelect/VSelectList.js +9 -11
- package/lib/components/VSelect/VSelectList.js.map +1 -1
- package/lib/components/VSkeletonLoader/VSkeletonLoader.js +4 -4
- package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.js +4 -4
- package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
- package/lib/components/VSlider/VSlider.js +6 -11
- package/lib/components/VSlider/VSlider.js.map +1 -1
- package/lib/components/VSparkline/VSparkline.js +2 -1
- package/lib/components/VSparkline/VSparkline.js.map +1 -1
- package/lib/components/VTextField/VTextField.js +5 -5
- package/lib/components/VTextField/VTextField.js.map +1 -1
- package/lib/components/VTextarea/VTextarea.js +2 -2
- package/lib/components/VTextarea/VTextarea.js.map +1 -1
- package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
- package/lib/components/VTreeview/VTreeview.js +5 -4
- package/lib/components/VTreeview/VTreeview.js.map +1 -1
- package/lib/components/VTreeview/VTreeviewNode.js +2 -1
- package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
- package/lib/components/VWindow/VWindow.js +3 -3
- package/lib/components/VWindow/VWindow.js.map +1 -1
- package/lib/directives/click-outside/index.js +2 -2
- package/lib/directives/click-outside/index.js.map +1 -1
- package/lib/directives/intersect/index.js +4 -4
- package/lib/directives/intersect/index.js.map +1 -1
- package/lib/directives/mutate/index.js +2 -2
- package/lib/directives/mutate/index.js.map +1 -1
- package/lib/directives/resize/index.js +2 -2
- package/lib/directives/resize/index.js.map +1 -1
- package/lib/directives/scroll/index.js +2 -2
- package/lib/directives/scroll/index.js.map +1 -1
- package/lib/framework.js +1 -1
- package/lib/mixins/activatable/index.js +1 -3
- package/lib/mixins/activatable/index.js.map +1 -1
- package/lib/mixins/binds-attrs/index.js.map +1 -1
- package/lib/mixins/menuable/index.js +5 -1
- package/lib/mixins/menuable/index.js.map +1 -1
- package/lib/mixins/overlayable/index.js +1 -1
- package/lib/mixins/overlayable/index.js.map +1 -1
- package/lib/mixins/routable/index.js +4 -3
- package/lib/mixins/routable/index.js.map +1 -1
- package/lib/util/helpers.js +1 -9
- package/lib/util/helpers.js.map +1 -1
- package/package.json +2 -2
- package/src/components/VCalendar/VCalendar.ts +3 -0
- package/src/components/VCalendar/VCalendarWeekly.ts +12 -0
- package/src/components/VCalendar/__tests__/__snapshots__/VCalendar.spec.ts.snap +165 -55
- package/src/components/VCalendar/mixins/__tests__/mouse.spec.ts +2 -2
- package/src/components/VCalendar/mixins/calendar-with-events.ts +14 -13
- package/src/components/VCalendar/mixins/mouse.ts +8 -9
- package/src/components/VCarousel/VCarousel.ts +1 -0
- package/src/components/VCheckbox/VSimpleCheckbox.ts +3 -2
- package/src/components/VDataTable/VDataTable.ts +4 -1
- package/src/components/VDataTable/__tests__/__snapshots__/VDataTable.spec.ts.snap +14 -14
- package/src/components/VDatePicker/VDatePicker.ts +1 -1
- package/src/components/VDialog/VDialog.ts +2 -2
- package/src/components/VFileInput/__tests__/__snapshots__/VFileInput.spec.ts.snap +7 -0
- package/src/components/VInput/VInput.sass +1 -1
- package/src/components/VInput/VInput.ts +1 -0
- package/src/components/VItemGroup/VItemGroup.ts +2 -2
- package/src/components/VItemGroup/__tests__/VItemGroup.spec.ts +29 -0
- package/src/components/VOverflowBtn/__tests__/__snapshots__/VOverflowBtn.spec.ts.snap +14 -10
- package/src/components/VPagination/VPagination.ts +1 -1
- package/src/components/VRadioGroup/VRadio.ts +1 -0
- package/src/components/VRangeSlider/__tests__/VRangeSlider.spec.ts +2 -2
- package/src/components/VRangeSlider/__tests__/__snapshots__/VRangeSlider.spec.ts.snap +2 -2
- package/src/components/VSelect/VSelectList.ts +10 -15
- package/src/components/VSelect/__tests__/__snapshots__/VSelect2.spec.ts.snap +2 -0
- package/src/components/VSlideGroup/VSlideGroup.ts +1 -1
- package/src/components/VSlider/VSlider.ts +1 -7
- package/src/components/VSlider/__tests__/VSlider.spec.ts +3 -2
- package/src/components/VSwitch/VSwitch.sass +3 -2
- package/src/components/VTextField/VTextField.sass +9 -0
- package/src/components/VTimePicker/VTimePicker.ts +1 -1
- package/src/globals.d.ts +6 -6
- package/src/mixins/applicationable/__tests__/applicationable.spec.ts +1 -1
- package/src/mixins/binds-attrs/index.ts +2 -2
- package/src/mixins/menuable/index.ts +4 -1
- package/src/mixins/overlayable/index.ts +7 -7
- package/src/util/helpers.ts +2 -12
- package/types/index.d.ts +2 -2
- package/es5/util/component.js +0 -11
- package/es5/util/component.js.map +0 -1
- package/lib/util/component.js +0 -4
- package/lib/util/component.js.map +0 -1
- package/src/util/component.ts +0 -21
|
@@ -6911,7 +6911,7 @@ exports[`VDataTable.ts should render item slot when using group-by function 1`]
|
|
|
6911
6911
|
</i>
|
|
6912
6912
|
</span>
|
|
6913
6913
|
</button>
|
|
6914
|
-
|
|
6914
|
+
Dessert (100g serving): Frozen Yogurt
|
|
6915
6915
|
<button type="button"
|
|
6916
6916
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
6917
6917
|
>
|
|
@@ -6941,7 +6941,7 @@ exports[`VDataTable.ts should render item slot when using group-by function 1`]
|
|
|
6941
6941
|
</i>
|
|
6942
6942
|
</span>
|
|
6943
6943
|
</button>
|
|
6944
|
-
|
|
6944
|
+
Dessert (100g serving): Ice cream sandwich
|
|
6945
6945
|
<button type="button"
|
|
6946
6946
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
6947
6947
|
>
|
|
@@ -8477,7 +8477,7 @@ exports[`VDataTable.ts should render with group.summary scoped slot 1`] = `
|
|
|
8477
8477
|
</i>
|
|
8478
8478
|
</span>
|
|
8479
8479
|
</button>
|
|
8480
|
-
|
|
8480
|
+
Calories: 159
|
|
8481
8481
|
<button type="button"
|
|
8482
8482
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
8483
8483
|
>
|
|
@@ -8551,7 +8551,7 @@ exports[`VDataTable.ts should render with group.summary scoped slot 1`] = `
|
|
|
8551
8551
|
</i>
|
|
8552
8552
|
</span>
|
|
8553
8553
|
</button>
|
|
8554
|
-
|
|
8554
|
+
Calories: 237
|
|
8555
8555
|
<button type="button"
|
|
8556
8556
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
8557
8557
|
>
|
|
@@ -8625,7 +8625,7 @@ exports[`VDataTable.ts should render with group.summary scoped slot 1`] = `
|
|
|
8625
8625
|
</i>
|
|
8626
8626
|
</span>
|
|
8627
8627
|
</button>
|
|
8628
|
-
|
|
8628
|
+
Calories: 262
|
|
8629
8629
|
<button type="button"
|
|
8630
8630
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
8631
8631
|
>
|
|
@@ -8699,7 +8699,7 @@ exports[`VDataTable.ts should render with group.summary scoped slot 1`] = `
|
|
|
8699
8699
|
</i>
|
|
8700
8700
|
</span>
|
|
8701
8701
|
</button>
|
|
8702
|
-
|
|
8702
|
+
Calories: 305
|
|
8703
8703
|
<button type="button"
|
|
8704
8704
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
8705
8705
|
>
|
|
@@ -8773,7 +8773,7 @@ exports[`VDataTable.ts should render with group.summary scoped slot 1`] = `
|
|
|
8773
8773
|
</i>
|
|
8774
8774
|
</span>
|
|
8775
8775
|
</button>
|
|
8776
|
-
|
|
8776
|
+
Calories: 356
|
|
8777
8777
|
<button type="button"
|
|
8778
8778
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
8779
8779
|
>
|
|
@@ -8988,7 +8988,7 @@ exports[`VDataTable.ts should render with grouped rows 1`] = `
|
|
|
8988
8988
|
</i>
|
|
8989
8989
|
</span>
|
|
8990
8990
|
</button>
|
|
8991
|
-
|
|
8991
|
+
Protein (g): 0
|
|
8992
8992
|
<button type="button"
|
|
8993
8993
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
8994
8994
|
>
|
|
@@ -9099,7 +9099,7 @@ exports[`VDataTable.ts should render with grouped rows 1`] = `
|
|
|
9099
9099
|
</i>
|
|
9100
9100
|
</span>
|
|
9101
9101
|
</button>
|
|
9102
|
-
|
|
9102
|
+
Protein (g): 3.9
|
|
9103
9103
|
<button type="button"
|
|
9104
9104
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
9105
9105
|
>
|
|
@@ -9168,7 +9168,7 @@ exports[`VDataTable.ts should render with grouped rows 1`] = `
|
|
|
9168
9168
|
</i>
|
|
9169
9169
|
</span>
|
|
9170
9170
|
</button>
|
|
9171
|
-
|
|
9171
|
+
Protein (g): 4
|
|
9172
9172
|
<button type="button"
|
|
9173
9173
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
9174
9174
|
>
|
|
@@ -9237,7 +9237,7 @@ exports[`VDataTable.ts should render with grouped rows 1`] = `
|
|
|
9237
9237
|
</i>
|
|
9238
9238
|
</span>
|
|
9239
9239
|
</button>
|
|
9240
|
-
|
|
9240
|
+
Protein (g): 4.3
|
|
9241
9241
|
<button type="button"
|
|
9242
9242
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
9243
9243
|
>
|
|
@@ -11644,7 +11644,7 @@ exports[`VDataTable.ts should search group-by column 1`] = `
|
|
|
11644
11644
|
</i>
|
|
11645
11645
|
</span>
|
|
11646
11646
|
</button>
|
|
11647
|
-
|
|
11647
|
+
Name: Assistance
|
|
11648
11648
|
<button type="button"
|
|
11649
11649
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
11650
11650
|
>
|
|
@@ -11681,7 +11681,7 @@ exports[`VDataTable.ts should search group-by column 1`] = `
|
|
|
11681
11681
|
</i>
|
|
11682
11682
|
</span>
|
|
11683
11683
|
</button>
|
|
11684
|
-
|
|
11684
|
+
Name: Candidat
|
|
11685
11685
|
<button type="button"
|
|
11686
11686
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
11687
11687
|
>
|
|
@@ -11856,7 +11856,7 @@ exports[`VDataTable.ts should search group-by column 2`] = `
|
|
|
11856
11856
|
</i>
|
|
11857
11857
|
</span>
|
|
11858
11858
|
</button>
|
|
11859
|
-
|
|
11859
|
+
Name: Candidat
|
|
11860
11860
|
<button type="button"
|
|
11861
11861
|
class="ma-0 v-btn v-btn--icon v-btn--round theme--light v-size--small"
|
|
11862
11862
|
>
|
|
@@ -231,7 +231,7 @@ export default mixins(
|
|
|
231
231
|
year: { year: 'numeric', timeZone: 'UTC' },
|
|
232
232
|
month: { month: 'long', timeZone: 'UTC' },
|
|
233
233
|
date: { weekday: 'short', month: 'short', day: 'numeric', timeZone: 'UTC' },
|
|
234
|
-
}
|
|
234
|
+
} as const
|
|
235
235
|
|
|
236
236
|
const titleDateFormatter = createNativeLocaleFormatter(this.currentLocale, titleFormats[this.type], {
|
|
237
237
|
start: 0,
|
|
@@ -234,8 +234,8 @@ export default baseMixins.extend({
|
|
|
234
234
|
// So we must have focused something outside the dialog and its children
|
|
235
235
|
) {
|
|
236
236
|
// Find and focus the first available element inside the dialog
|
|
237
|
-
const focusable = this.$refs.dialog.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])')
|
|
238
|
-
const el = [...focusable].find(el => !el.hasAttribute('disabled')) as HTMLElement | undefined
|
|
237
|
+
const focusable = this.$refs.dialog.querySelectorAll('button, [href], input:not([type="hidden"]), select, textarea, [tabindex]:not([tabindex="-1"])')
|
|
238
|
+
const el = [...focusable].find(el => !el.hasAttribute('disabled') && !el.matches('[tabindex="-1"]')) as HTMLElement | undefined
|
|
239
239
|
el && el.focus()
|
|
240
240
|
}
|
|
241
241
|
},
|
|
@@ -61,6 +61,7 @@ exports[`VFileInput.ts should display file size 1`] = `
|
|
|
61
61
|
<div class="v-input__icon v-input__icon--clear">
|
|
62
62
|
<button type="button"
|
|
63
63
|
aria-label="clear icon"
|
|
64
|
+
tabindex="-1"
|
|
64
65
|
class="v-icon notranslate v-icon--link material-icons theme--light"
|
|
65
66
|
>
|
|
66
67
|
$clear
|
|
@@ -107,6 +108,7 @@ exports[`VFileInput.ts should display file size 2`] = `
|
|
|
107
108
|
<div class="v-input__icon v-input__icon--clear">
|
|
108
109
|
<button type="button"
|
|
109
110
|
aria-label="clear icon"
|
|
111
|
+
tabindex="-1"
|
|
110
112
|
class="v-icon notranslate v-icon--link material-icons theme--light"
|
|
111
113
|
>
|
|
112
114
|
$clear
|
|
@@ -153,6 +155,7 @@ exports[`VFileInput.ts should display total size in counter 1`] = `
|
|
|
153
155
|
<div class="v-input__icon v-input__icon--clear">
|
|
154
156
|
<button type="button"
|
|
155
157
|
aria-label="clear icon"
|
|
158
|
+
tabindex="-1"
|
|
156
159
|
class="v-icon notranslate v-icon--link material-icons theme--light"
|
|
157
160
|
>
|
|
158
161
|
$clear
|
|
@@ -202,6 +205,7 @@ exports[`VFileInput.ts should display total size in counter 2`] = `
|
|
|
202
205
|
<div class="v-input__icon v-input__icon--clear">
|
|
203
206
|
<button type="button"
|
|
204
207
|
aria-label="clear icon"
|
|
208
|
+
tabindex="-1"
|
|
205
209
|
class="v-icon notranslate v-icon--link material-icons theme--light"
|
|
206
210
|
>
|
|
207
211
|
$clear
|
|
@@ -294,6 +298,7 @@ exports[`VFileInput.ts should render chips 1`] = `
|
|
|
294
298
|
<div class="v-input__icon v-input__icon--clear">
|
|
295
299
|
<button type="button"
|
|
296
300
|
aria-label="clear icon"
|
|
301
|
+
tabindex="-1"
|
|
297
302
|
class="v-icon notranslate v-icon--link material-icons theme--light"
|
|
298
303
|
>
|
|
299
304
|
$clear
|
|
@@ -340,6 +345,7 @@ exports[`VFileInput.ts should render counter 1`] = `
|
|
|
340
345
|
<div class="v-input__icon v-input__icon--clear">
|
|
341
346
|
<button type="button"
|
|
342
347
|
aria-label="clear icon"
|
|
348
|
+
tabindex="-1"
|
|
343
349
|
class="v-icon notranslate v-icon--link material-icons theme--light"
|
|
344
350
|
>
|
|
345
351
|
$clear
|
|
@@ -433,6 +439,7 @@ exports[`VFileInput.ts should render small chips 1`] = `
|
|
|
433
439
|
<div class="v-input__icon v-input__icon--clear">
|
|
434
440
|
<button type="button"
|
|
435
441
|
aria-label="clear icon"
|
|
442
|
+
tabindex="-1"
|
|
436
443
|
class="v-icon notranslate v-icon--link material-icons theme--light"
|
|
437
444
|
>
|
|
438
445
|
$clear
|
|
@@ -100,12 +100,12 @@
|
|
|
100
100
|
|
|
101
101
|
&__slot
|
|
102
102
|
align-items: center
|
|
103
|
-
color: inherit
|
|
104
103
|
display: flex
|
|
105
104
|
margin-bottom: $input-slot-margin-bottom
|
|
106
105
|
min-height: inherit
|
|
107
106
|
position: relative
|
|
108
107
|
transition: $primary-transition
|
|
108
|
+
transition-property: height, min-height
|
|
109
109
|
width: 100%
|
|
110
110
|
|
|
111
111
|
&--dense > .v-input__control > .v-input__slot
|
|
@@ -219,7 +219,7 @@ export const BaseItemGroup = mixins(
|
|
|
219
219
|
? this.internalValue
|
|
220
220
|
: []
|
|
221
221
|
const internalValue = defaultValue.slice()
|
|
222
|
-
const index = internalValue.findIndex(val => val
|
|
222
|
+
const index = internalValue.findIndex(val => this.valueComparator(val, value))
|
|
223
223
|
|
|
224
224
|
if (
|
|
225
225
|
this.mandatory &&
|
|
@@ -245,7 +245,7 @@ export const BaseItemGroup = mixins(
|
|
|
245
245
|
this.internalValue = internalValue
|
|
246
246
|
},
|
|
247
247
|
updateSingle (value: any) {
|
|
248
|
-
const isSame =
|
|
248
|
+
const isSame = this.valueComparator(this.internalValue, value)
|
|
249
249
|
|
|
250
250
|
if (this.mandatory && isSame) return
|
|
251
251
|
|
|
@@ -217,6 +217,18 @@ describe('VItemGroup', () => {
|
|
|
217
217
|
wrapper.vm.updateSingle('foo')
|
|
218
218
|
expect(wrapper.vm.internalValue).toBeUndefined()
|
|
219
219
|
|
|
220
|
+
// Toggling on and off object references
|
|
221
|
+
wrapper.vm.updateSingle({ foo: 'foo' })
|
|
222
|
+
expect(wrapper.vm.internalValue).toEqual({ foo: 'foo' })
|
|
223
|
+
wrapper.vm.updateSingle({ foo: 'foo' })
|
|
224
|
+
expect(wrapper.vm.internalValue).toBeUndefined()
|
|
225
|
+
|
|
226
|
+
// Toggling on and off with custom comparator
|
|
227
|
+
wrapper.setProps({ valueComparator: (a: any, b: any) => a?.startsWith(b?.[0]), value: 'foo' })
|
|
228
|
+
expect(wrapper.vm.internalValue).toBe('foo')
|
|
229
|
+
wrapper.vm.updateSingle('foobar')
|
|
230
|
+
expect(wrapper.vm.internalValue).toBeUndefined()
|
|
231
|
+
|
|
220
232
|
wrapper.setProps({ mandatory: true })
|
|
221
233
|
|
|
222
234
|
// Toggling off single mandatory
|
|
@@ -237,6 +249,12 @@ describe('VItemGroup', () => {
|
|
|
237
249
|
wrapper.vm.updateMultiple('foo')
|
|
238
250
|
expect(wrapper.vm.internalValue).toEqual([])
|
|
239
251
|
|
|
252
|
+
// Toggling on and off object references
|
|
253
|
+
wrapper.vm.updateMultiple({ foo: 'foo' })
|
|
254
|
+
expect(wrapper.vm.internalValue).toEqual([{ foo: 'foo' }])
|
|
255
|
+
wrapper.vm.updateMultiple({ foo: 'foo' })
|
|
256
|
+
expect(wrapper.vm.internalValue).toEqual([])
|
|
257
|
+
|
|
240
258
|
wrapper.setProps({ mandatory: true })
|
|
241
259
|
|
|
242
260
|
// Toggling off single mandatory
|
|
@@ -256,6 +274,17 @@ describe('VItemGroup', () => {
|
|
|
256
274
|
expect(wrapper.vm.internalValue).toEqual(['foo', 'bar', 'fizz'])
|
|
257
275
|
})
|
|
258
276
|
|
|
277
|
+
it('should update a multiple item group with a custom comparator', () => {
|
|
278
|
+
const wrapper = mountFunction({
|
|
279
|
+
propsData: { multiple: true },
|
|
280
|
+
})
|
|
281
|
+
|
|
282
|
+
wrapper.setProps({ valueComparator: (a: any, b: any) => a?.startsWith(b?.[0]), value: ['foo'] })
|
|
283
|
+
expect(wrapper.vm.internalValue).toEqual(['foo'])
|
|
284
|
+
wrapper.vm.updateMultiple('foobar')
|
|
285
|
+
expect(wrapper.vm.internalValue).toEqual([])
|
|
286
|
+
})
|
|
287
|
+
|
|
259
288
|
it('should update value if mandatory and dynamic items', async () => {
|
|
260
289
|
const wrapper = mountFunction({
|
|
261
290
|
propsData: {
|
|
@@ -6,17 +6,17 @@ exports[`VOverflowBtn.js should show label with persistentPlaceholder property s
|
|
|
6
6
|
<div role="combobox"
|
|
7
7
|
aria-haspopup="listbox"
|
|
8
8
|
aria-expanded="false"
|
|
9
|
-
aria-owns="list-
|
|
9
|
+
aria-owns="list-15"
|
|
10
10
|
class="v-input__slot"
|
|
11
11
|
>
|
|
12
12
|
<div class="v-select__slot">
|
|
13
|
-
<label for="input-
|
|
13
|
+
<label for="input-15"
|
|
14
14
|
class="v-label theme--light"
|
|
15
15
|
>
|
|
16
16
|
Some label
|
|
17
17
|
</label>
|
|
18
18
|
<div class="v-select__selections">
|
|
19
|
-
<input id="input-
|
|
19
|
+
<input id="input-15"
|
|
20
20
|
readonly="readonly"
|
|
21
21
|
type="text"
|
|
22
22
|
>
|
|
@@ -54,17 +54,17 @@ exports[`VOverflowBtn.js should show label with persistentPlaceholder property s
|
|
|
54
54
|
<div role="combobox"
|
|
55
55
|
aria-haspopup="listbox"
|
|
56
56
|
aria-expanded="true"
|
|
57
|
-
aria-owns="list-
|
|
57
|
+
aria-owns="list-15"
|
|
58
58
|
class="v-input__slot"
|
|
59
59
|
>
|
|
60
60
|
<div class="v-select__slot">
|
|
61
|
-
<label for="input-
|
|
61
|
+
<label for="input-15"
|
|
62
62
|
class="v-label theme--light"
|
|
63
63
|
>
|
|
64
64
|
Some label
|
|
65
65
|
</label>
|
|
66
66
|
<div class="v-select__selections">
|
|
67
|
-
<input id="input-
|
|
67
|
+
<input id="input-15"
|
|
68
68
|
readonly="readonly"
|
|
69
69
|
type="text"
|
|
70
70
|
>
|
|
@@ -145,7 +145,7 @@ exports[`VOverflowBtn.js should use default autocomplete selections 1`] = `
|
|
|
145
145
|
`;
|
|
146
146
|
|
|
147
147
|
exports[`VOverflowBtn.js should use default autocomplete selections 2`] = `
|
|
148
|
-
<div class="v-input v-input--is-label-active v-input--is-dirty theme--light v-text-field v-text-field--single-line v-select v-
|
|
148
|
+
<div class="v-input v-input--is-label-active v-input--is-dirty theme--light v-text-field v-text-field--single-line v-select v-autocomplete v-overflow-btn v-overflow-btn--segmented">
|
|
149
149
|
<div class="v-input__control">
|
|
150
150
|
<div role="combobox"
|
|
151
151
|
aria-haspopup="listbox"
|
|
@@ -155,9 +155,13 @@ exports[`VOverflowBtn.js should use default autocomplete selections 2`] = `
|
|
|
155
155
|
>
|
|
156
156
|
<div class="v-select__slot">
|
|
157
157
|
<div class="v-select__selections">
|
|
158
|
-
<
|
|
159
|
-
|
|
160
|
-
|
|
158
|
+
<button type="button"
|
|
159
|
+
class="v-btn v-btn--text theme--light v-size--default"
|
|
160
|
+
>
|
|
161
|
+
<span class="v-btn__content">
|
|
162
|
+
foo
|
|
163
|
+
</span>
|
|
164
|
+
</button>
|
|
161
165
|
<input id="input-1"
|
|
162
166
|
readonly="readonly"
|
|
163
167
|
type="text"
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
Wrapper,
|
|
6
6
|
} from '@vue/test-utils'
|
|
7
7
|
|
|
8
|
-
describe('VRangeSlider
|
|
8
|
+
describe('VRangeSlider', () => {
|
|
9
9
|
type Instance = InstanceType<typeof VRangeSlider>
|
|
10
10
|
let mountFunction: (options?: MountOptions<Instance>) => Wrapper<Instance>
|
|
11
11
|
|
|
@@ -33,7 +33,7 @@ describe('VRangeSlider.ts', () => {
|
|
|
33
33
|
document.body.removeChild(el)
|
|
34
34
|
})
|
|
35
35
|
|
|
36
|
-
it('should provide a default value if
|
|
36
|
+
it('should provide a default value if none provided', async () => {
|
|
37
37
|
const wrapper = mountFunction()
|
|
38
38
|
|
|
39
39
|
expect(wrapper.vm.lazyValue).toEqual([0, 0])
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
2
|
|
|
3
|
-
exports[`VRangeSlider
|
|
3
|
+
exports[`VRangeSlider should render a vertical slider 1`] = `
|
|
4
4
|
<div class="v-input v-input--is-label-active v-input--is-dirty theme--light v-input__slider v-input__slider--vertical v-input--range-slider">
|
|
5
5
|
<div class="v-input__control">
|
|
6
6
|
<div class="v-input__slot">
|
|
@@ -64,7 +64,7 @@ exports[`VRangeSlider.ts should render a vertical slider 1`] = `
|
|
|
64
64
|
</div>
|
|
65
65
|
`;
|
|
66
66
|
|
|
67
|
-
exports[`VRangeSlider
|
|
67
|
+
exports[`VRangeSlider should render disabled slider 1`] = `
|
|
68
68
|
<div class="v-input v-input--is-label-active v-input--is-dirty v-input--is-disabled theme--light v-input__slider v-input--range-slider">
|
|
69
69
|
<div class="v-input__control">
|
|
70
70
|
<div class="v-input__slot">
|
|
@@ -18,10 +18,7 @@ import Colorable from '../../mixins/colorable'
|
|
|
18
18
|
import Themeable from '../../mixins/themeable'
|
|
19
19
|
|
|
20
20
|
// Helpers
|
|
21
|
-
import {
|
|
22
|
-
escapeHTML,
|
|
23
|
-
getPropertyFromItem,
|
|
24
|
-
} from '../../util/helpers'
|
|
21
|
+
import { getPropertyFromItem } from '../../util/helpers'
|
|
25
22
|
|
|
26
23
|
// Types
|
|
27
24
|
import mixins from '../../util/mixins'
|
|
@@ -113,17 +110,17 @@ export default mixins(Colorable, Themeable).extend({
|
|
|
113
110
|
genFilteredText (text: string) {
|
|
114
111
|
text = text || ''
|
|
115
112
|
|
|
116
|
-
if (!this.searchInput || this.noFilter) return
|
|
113
|
+
if (!this.searchInput || this.noFilter) return text
|
|
117
114
|
|
|
118
115
|
const { start, middle, end } = this.getMaskedCharacters(text)
|
|
119
116
|
|
|
120
|
-
return
|
|
117
|
+
return [start, this.genHighlight(middle), end]
|
|
121
118
|
},
|
|
122
119
|
genHeader (props: { [key: string]: any }): VNode {
|
|
123
120
|
return this.$createElement(VSubheader, { props }, props.header)
|
|
124
121
|
},
|
|
125
|
-
genHighlight (text: string)
|
|
126
|
-
return
|
|
122
|
+
genHighlight (text: string) {
|
|
123
|
+
return this.$createElement('span', { staticClass: 'v-list-item__mask' }, text)
|
|
127
124
|
},
|
|
128
125
|
getMaskedCharacters (text: string): {
|
|
129
126
|
start: string
|
|
@@ -202,13 +199,11 @@ export default mixins(Colorable, Themeable).extend({
|
|
|
202
199
|
: scopedSlot
|
|
203
200
|
},
|
|
204
201
|
genTileContent (item: any, index = 0): VNode {
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
})]
|
|
211
|
-
)
|
|
202
|
+
return this.$createElement(VListItemContent, [
|
|
203
|
+
this.$createElement(VListItemTitle, [
|
|
204
|
+
this.genFilteredText(this.getText(item)),
|
|
205
|
+
]),
|
|
206
|
+
])
|
|
212
207
|
},
|
|
213
208
|
hasItem (item: object) {
|
|
214
209
|
return this.parsedItems.indexOf(this.getValue(item)) > -1
|
|
@@ -25,6 +25,7 @@ exports[`VSelect.ts should be clearable with prop, dirty and multi select 1`] =
|
|
|
25
25
|
<div class="v-input__icon v-input__icon--clear">
|
|
26
26
|
<button type="button"
|
|
27
27
|
aria-label="clear icon"
|
|
28
|
+
tabindex="-1"
|
|
28
29
|
class="v-icon notranslate v-icon--link material-icons theme--light"
|
|
29
30
|
>
|
|
30
31
|
$clear
|
|
@@ -85,6 +86,7 @@ exports[`VSelect.ts should be clearable with prop, dirty and single select 1`] =
|
|
|
85
86
|
<div class="v-input__icon v-input__icon--clear">
|
|
86
87
|
<button type="button"
|
|
87
88
|
aria-label="clear icon"
|
|
89
|
+
tabindex="-1"
|
|
88
90
|
class="v-icon notranslate v-icon--link material-icons theme--light"
|
|
89
91
|
>
|
|
90
92
|
$clear
|
|
@@ -221,16 +221,10 @@ export default mixins<options &
|
|
|
221
221
|
handler (v: number) {
|
|
222
222
|
this.internalValue = v
|
|
223
223
|
},
|
|
224
|
+
immediate: true,
|
|
224
225
|
},
|
|
225
226
|
},
|
|
226
227
|
|
|
227
|
-
// If done in as immediate in
|
|
228
|
-
// value watcher, causes issues
|
|
229
|
-
// with vue-test-utils
|
|
230
|
-
beforeMount () {
|
|
231
|
-
this.internalValue = this.value
|
|
232
|
-
},
|
|
233
|
-
|
|
234
228
|
mounted () {
|
|
235
229
|
// Without a v-app, iOS does not work with body selectors
|
|
236
230
|
this.app = document.querySelector('[data-app]') ||
|
|
@@ -559,7 +559,7 @@ describe('VSlider.ts', () => {
|
|
|
559
559
|
|
|
560
560
|
it('should set value to min value if given a NaN value', () => {
|
|
561
561
|
const input = jest.fn()
|
|
562
|
-
|
|
562
|
+
mountFunction({
|
|
563
563
|
propsData: {
|
|
564
564
|
min: -20,
|
|
565
565
|
max: 20,
|
|
@@ -570,7 +570,8 @@ describe('VSlider.ts', () => {
|
|
|
570
570
|
},
|
|
571
571
|
})
|
|
572
572
|
|
|
573
|
-
expect(
|
|
573
|
+
expect(input).toHaveBeenCalledTimes(1)
|
|
574
|
+
expect(input).toHaveBeenCalledWith(-20)
|
|
574
575
|
})
|
|
575
576
|
|
|
576
577
|
it('should correctly handle initial value of zero (#7320)', () => {
|
|
@@ -45,6 +45,7 @@
|
|
|
45
45
|
|
|
46
46
|
.v-input--selection-controls__input
|
|
47
47
|
width: $switch-width
|
|
48
|
+
transition: opacity $primary-transition
|
|
48
49
|
|
|
49
50
|
.v-input--selection-controls__ripple
|
|
50
51
|
top: $switch-ripple-top
|
|
@@ -68,8 +69,8 @@
|
|
|
68
69
|
.v-input--selection-controls__ripple
|
|
69
70
|
top: $switch-ripple-dense-top
|
|
70
71
|
|
|
71
|
-
&.v-input--is-dirty
|
|
72
|
-
|
|
72
|
+
&.v-input--is-dirty.v-input--is-disabled
|
|
73
|
+
.v-input--selection-controls__input
|
|
73
74
|
opacity: $switch-disabled-opacity
|
|
74
75
|
|
|
75
76
|
+ltr()
|
|
@@ -504,6 +504,15 @@
|
|
|
504
504
|
&.v-input--has-state > .v-input__control > .v-input__slot:before
|
|
505
505
|
border-color: currentColor
|
|
506
506
|
|
|
507
|
+
.v-input__icon--clear
|
|
508
|
+
opacity: 0
|
|
509
|
+
transition: opacity $primary-transition
|
|
510
|
+
|
|
511
|
+
&.v-input--is-focused,
|
|
512
|
+
&.v-input--is-dirty:hover
|
|
513
|
+
.v-input__icon--clear
|
|
514
|
+
opacity: 1
|
|
515
|
+
|
|
507
516
|
// TODO: where are the corresponding rules for LTR?
|
|
508
517
|
//
|
|
509
518
|
// +rtl()
|
package/src/globals.d.ts
CHANGED
|
@@ -105,8 +105,8 @@ declare module 'vue/types/options' {
|
|
|
105
105
|
}
|
|
106
106
|
|
|
107
107
|
declare module 'vue/types/vue' {
|
|
108
|
-
export type OptionsVue<Instance extends Vue, Data, Methods, Computed, Props, Options = {}> = VueConstructor<
|
|
109
|
-
CombinedVueInstance<Instance, Data, Methods, Computed, Props> & Vue,
|
|
108
|
+
export type OptionsVue<Instance extends Vue, Data, Methods, Computed, Props, SetupBindings, Options = {}> = VueConstructor<
|
|
109
|
+
CombinedVueInstance<Instance, Data, Methods, Computed, Props, SetupBindings> & Vue,
|
|
110
110
|
Options
|
|
111
111
|
>
|
|
112
112
|
|
|
@@ -154,10 +154,10 @@ declare module 'vue/types/vue' {
|
|
|
154
154
|
$_vuetify_installed?: true
|
|
155
155
|
options: Options
|
|
156
156
|
|
|
157
|
-
extend<Data, Methods, Computed, Options, PropNames extends string = never> (options?: ThisTypedComponentOptionsWithArrayProps<V, Data, Methods, Computed, PropNames> & Options): OptionsVue<V, Data, Methods, Computed, Record<PropNames, any>, Options>
|
|
158
|
-
extend<Data, Methods, Computed, Props, Options> (options?: ThisTypedComponentOptionsWithRecordProps<V, Data, Methods, Computed, Props> & Options): OptionsVue<V, Data, Methods, Computed, Props, Options>
|
|
159
|
-
extend<Options, PropNames extends string = never> (definition: FunctionalComponentOptions<Record<PropNames, any>, PropNames[]> & Options): OptionsVue<V, {}, {}, {}, Record<PropNames, any>, Options>
|
|
157
|
+
extend<Data, Methods, Computed, Options, SetupBindings, PropNames extends string = never> (options?: ThisTypedComponentOptionsWithArrayProps<V, Data, Methods, Computed, PropNames, SetupBindings> & Options): OptionsVue<V, Data, Methods, Computed, Record<PropNames, any>, SetupBindings, Options>
|
|
158
|
+
extend<Data, Methods, Computed, Props, Options, SetupBindings> (options?: ThisTypedComponentOptionsWithRecordProps<V, Data, Methods, Computed, Props, SetupBindings> & Options): OptionsVue<V, Data, Methods, Computed, Props, SetupBindings, Options>
|
|
159
|
+
extend<Options, SetupBindings, PropNames extends string = never> (definition: FunctionalComponentOptions<Record<PropNames, any>, PropNames[]> & Options): OptionsVue<V, {}, {}, {}, Record<PropNames, any>, SetupBindings, Options>
|
|
160
160
|
extend<Props, Options> (definition: FunctionalComponentOptions<Props, RecordPropsDefinition<Props>> & Options): OptionsVue<V, {}, {}, {}, Props, Options>
|
|
161
|
-
extend<V extends Vue = Vue> (options?: ComponentOptions<V> & Options): OptionsVue<V, {}, {}, {}, {}, Options>
|
|
161
|
+
extend<V extends Vue = Vue> (options?: ComponentOptions<V> & Options): OptionsVue<V, {}, {}, {}, {}, {}, Options>
|
|
162
162
|
}
|
|
163
163
|
}
|
|
@@ -68,7 +68,7 @@ describe('applicationable.js', () => {
|
|
|
68
68
|
mixins: [Applicationable(null, ['foo', 'bar'])],
|
|
69
69
|
})
|
|
70
70
|
|
|
71
|
-
expect(wrapper.vm.
|
|
71
|
+
expect(wrapper.vm._scope.effects).toHaveLength(6)
|
|
72
72
|
})
|
|
73
73
|
|
|
74
74
|
it('should call to remove application on destroy', async () => {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import Vue
|
|
1
|
+
import Vue from 'vue'
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* This mixin provides `attrs$` and `listeners$` to work around
|
|
5
5
|
* vue bug https://github.com/vuejs/vue/issues/10115
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
function makeWatcher (property: string): ThisType<Vue> &
|
|
8
|
+
function makeWatcher (property: string): ThisType<Vue> & ((val: any, oldVal: any) => void) {
|
|
9
9
|
return function (this: Vue, val, oldVal) {
|
|
10
10
|
for (const attr in oldVal) {
|
|
11
11
|
if (!Object.prototype.hasOwnProperty.call(val, attr)) {
|
|
@@ -281,7 +281,10 @@ export default baseMixins.extend<options>().extend({
|
|
|
281
281
|
}
|
|
282
282
|
},
|
|
283
283
|
checkActivatorFixed () {
|
|
284
|
-
if (this.attach !== false)
|
|
284
|
+
if (this.attach !== false) {
|
|
285
|
+
this.activatorFixed = false
|
|
286
|
+
return
|
|
287
|
+
}
|
|
285
288
|
let el = this.getActivator()
|
|
286
289
|
while (el) {
|
|
287
290
|
if (window.getComputedStyle(el).position === 'fixed') {
|