vuetify 3.5.7 → 3.5.9
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/attributes.json +568 -8
- package/dist/json/importMap-labs.json +20 -4
- package/dist/json/importMap.json +156 -156
- package/dist/json/tags.json +160 -0
- package/dist/json/web-types.json +1695 -9
- package/dist/vuetify-labs.css +1849 -1820
- package/dist/vuetify-labs.d.ts +3601 -694
- package/dist/vuetify-labs.esm.js +891 -237
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +891 -237
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +911 -906
- package/dist/vuetify.d.ts +576 -72
- package/dist/vuetify.esm.js +273 -35
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +273 -35
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +541 -510
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.css +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.mjs +5 -3
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.sass +1 -1
- package/lib/components/VAutocomplete/index.d.mts +138 -6
- package/lib/components/VColorPicker/VColorPickerPreview.css +1 -0
- package/lib/components/VColorPicker/VColorPickerPreview.sass +1 -0
- package/lib/components/VColorPicker/_variables.scss +1 -0
- package/lib/components/VCombobox/VCombobox.css +1 -1
- package/lib/components/VCombobox/VCombobox.mjs +28 -10
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.sass +1 -1
- package/lib/components/VCombobox/index.d.mts +138 -6
- package/lib/components/VDatePicker/VDatePickerControls.mjs +1 -0
- package/lib/components/VDatePicker/VDatePickerControls.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.mjs +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
- package/lib/components/VList/VList.mjs +8 -2
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VListGroup.mjs +3 -1
- package/lib/components/VList/VListGroup.mjs.map +1 -1
- package/lib/components/VList/VListItem.mjs +17 -4
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/index.d.mts +108 -6
- package/lib/components/VSelect/VSelect.mjs +5 -3
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +138 -6
- package/lib/components/VSwitch/VSwitch.css +9 -5
- package/lib/components/VSwitch/VSwitch.mjs +2 -0
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/VSwitch.sass +10 -7
- package/lib/components/VSwitch/_variables.scss +2 -0
- package/lib/components/index.d.mts +522 -24
- package/lib/composables/date/adapters/vuetify.mjs +21 -3
- package/lib/composables/date/adapters/vuetify.mjs.map +1 -1
- package/lib/composables/nested/activeStrategies.mjs +121 -0
- package/lib/composables/nested/activeStrategies.mjs.map +1 -0
- package/lib/composables/nested/nested.mjs +50 -1
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/nested/selectStrategies.mjs +4 -2
- package/lib/composables/nested/selectStrategies.mjs.map +1 -1
- package/lib/composables/transition.mjs +7 -5
- package/lib/composables/transition.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/iconsets/fa.mjs +2 -0
- package/lib/iconsets/fa.mjs.map +1 -1
- package/lib/iconsets/fa4.mjs +2 -0
- package/lib/iconsets/fa4.mjs.map +1 -1
- package/lib/iconsets/md.mjs +2 -0
- package/lib/iconsets/md.mjs.map +1 -1
- package/lib/iconsets/mdi-svg.mjs +2 -0
- package/lib/iconsets/mdi-svg.mjs.map +1 -1
- package/lib/iconsets/mdi.mjs +2 -0
- package/lib/iconsets/mdi.mjs.map +1 -1
- package/lib/index.d.mts +54 -48
- package/lib/labs/VCalendar/VCalendarInterval.css +1 -0
- package/lib/labs/VCalendar/VCalendarInterval.sass +1 -0
- package/lib/labs/VCalendar/VCalendarIntervalEvent.css +6 -0
- package/lib/labs/VCalendar/VCalendarIntervalEvent.mjs +5 -2
- package/lib/labs/VCalendar/VCalendarIntervalEvent.mjs.map +1 -1
- package/lib/labs/VCalendar/VCalendarIntervalEvent.sass +6 -0
- package/lib/labs/VFab/VFab.css +1 -1
- package/lib/labs/VFab/VFab.sass +1 -1
- package/lib/labs/VSparkline/VBarline.mjs +4 -3
- package/lib/labs/VSparkline/VBarline.mjs.map +1 -1
- package/lib/labs/VSparkline/VTrendline.mjs +9 -5
- package/lib/labs/VSparkline/VTrendline.mjs.map +1 -1
- package/lib/labs/VSparkline/index.d.mts +15 -0
- package/lib/labs/VSparkline/util/line.mjs +4 -0
- package/lib/labs/VSparkline/util/line.mjs.map +1 -1
- package/lib/labs/VSpeedDial/VSpeedDial.css +3 -0
- package/lib/labs/VSpeedDial/VSpeedDial.mjs +56 -0
- package/lib/labs/VSpeedDial/VSpeedDial.mjs.map +1 -0
- package/lib/labs/VSpeedDial/VSpeedDial.sass +2 -0
- package/lib/labs/VSpeedDial/index.d.mts +649 -0
- package/lib/labs/VSpeedDial/index.mjs +2 -0
- package/lib/labs/VSpeedDial/index.mjs.map +1 -0
- package/lib/labs/VTreeview/VTreeview.mjs +154 -0
- package/lib/labs/VTreeview/VTreeview.mjs.map +1 -0
- package/lib/labs/VTreeview/VTreeviewChildren.mjs +98 -0
- package/lib/labs/VTreeview/VTreeviewChildren.mjs.map +1 -0
- package/lib/labs/VTreeview/VTreeviewGroup.mjs +48 -0
- package/lib/labs/VTreeview/VTreeviewGroup.mjs.map +1 -0
- package/lib/labs/VTreeview/VTreeviewItem.css +17 -0
- package/lib/labs/VTreeview/VTreeviewItem.mjs +86 -0
- package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -0
- package/lib/labs/VTreeview/VTreeviewItem.sass +19 -0
- package/lib/labs/VTreeview/index.d.mts +1975 -0
- package/lib/labs/VTreeview/index.mjs +4 -0
- package/lib/labs/VTreeview/index.mjs.map +1 -0
- package/lib/labs/VTreeview/shared.mjs +4 -0
- package/lib/labs/VTreeview/shared.mjs.map +1 -0
- package/lib/labs/VTreeview/variables.scss +8 -0
- package/lib/labs/components.d.mts +3877 -1292
- package/lib/labs/components.mjs +4 -2
- package/lib/labs/components.mjs.map +1 -1
- package/package.json +2 -2
package/dist/vuetify.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.5.
|
|
2
|
+
* Vuetify v3.5.9
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -3158,17 +3158,19 @@
|
|
|
3158
3158
|
const {
|
|
3159
3159
|
transition,
|
|
3160
3160
|
disabled,
|
|
3161
|
+
group,
|
|
3161
3162
|
...rest
|
|
3162
3163
|
} = props;
|
|
3163
3164
|
const {
|
|
3164
|
-
component = vue.Transition,
|
|
3165
|
+
component = group ? vue.TransitionGroup : vue.Transition,
|
|
3165
3166
|
...customProps
|
|
3166
3167
|
} = typeof transition === 'object' ? transition : {};
|
|
3167
3168
|
return vue.h(component, vue.mergeProps(typeof transition === 'string' ? {
|
|
3168
3169
|
name: disabled ? '' : transition
|
|
3169
|
-
} : customProps,
|
|
3170
|
-
disabled
|
|
3171
|
-
|
|
3170
|
+
} : customProps, typeof transition === 'string' ? {} : {
|
|
3171
|
+
disabled,
|
|
3172
|
+
group
|
|
3173
|
+
}, rest), slots);
|
|
3172
3174
|
};
|
|
3173
3175
|
|
|
3174
3176
|
// Utilities
|
|
@@ -4368,6 +4370,8 @@
|
|
|
4368
4370
|
plus: 'mdi-plus',
|
|
4369
4371
|
minus: 'mdi-minus',
|
|
4370
4372
|
calendar: 'mdi-calendar',
|
|
4373
|
+
treeviewCollapse: 'mdi-menu-down',
|
|
4374
|
+
treeviewExpand: 'mdi-menu-right',
|
|
4371
4375
|
eyeDropper: 'mdi-eyedropper'
|
|
4372
4376
|
};
|
|
4373
4377
|
const mdi = {
|
|
@@ -7754,6 +7758,126 @@
|
|
|
7754
7758
|
return vue.inject(ListKey, null);
|
|
7755
7759
|
}
|
|
7756
7760
|
|
|
7761
|
+
/* eslint-disable sonarjs/no-identical-functions */
|
|
7762
|
+
// Utilities
|
|
7763
|
+
const independentActiveStrategy = mandatory => {
|
|
7764
|
+
const strategy = {
|
|
7765
|
+
activate: _ref => {
|
|
7766
|
+
let {
|
|
7767
|
+
id,
|
|
7768
|
+
value,
|
|
7769
|
+
activated
|
|
7770
|
+
} = _ref;
|
|
7771
|
+
id = vue.toRaw(id);
|
|
7772
|
+
|
|
7773
|
+
// When mandatory and we're trying to deselect when id
|
|
7774
|
+
// is the only currently selected item then do nothing
|
|
7775
|
+
if (mandatory && !value && activated.size === 1 && activated.has(id)) return activated;
|
|
7776
|
+
if (value) {
|
|
7777
|
+
activated.add(id);
|
|
7778
|
+
} else {
|
|
7779
|
+
activated.delete(id);
|
|
7780
|
+
}
|
|
7781
|
+
return activated;
|
|
7782
|
+
},
|
|
7783
|
+
in: (v, children, parents) => {
|
|
7784
|
+
let set = new Set();
|
|
7785
|
+
for (const id of v || []) {
|
|
7786
|
+
set = strategy.activate({
|
|
7787
|
+
id,
|
|
7788
|
+
value: true,
|
|
7789
|
+
activated: new Set(set),
|
|
7790
|
+
children,
|
|
7791
|
+
parents
|
|
7792
|
+
});
|
|
7793
|
+
}
|
|
7794
|
+
return set;
|
|
7795
|
+
},
|
|
7796
|
+
out: v => {
|
|
7797
|
+
return Array.from(v);
|
|
7798
|
+
}
|
|
7799
|
+
};
|
|
7800
|
+
return strategy;
|
|
7801
|
+
};
|
|
7802
|
+
const independentSingleActiveStrategy = mandatory => {
|
|
7803
|
+
const parentStrategy = independentActiveStrategy(mandatory);
|
|
7804
|
+
const strategy = {
|
|
7805
|
+
activate: _ref2 => {
|
|
7806
|
+
let {
|
|
7807
|
+
activated,
|
|
7808
|
+
id,
|
|
7809
|
+
...rest
|
|
7810
|
+
} = _ref2;
|
|
7811
|
+
id = vue.toRaw(id);
|
|
7812
|
+
const singleSelected = activated.has(id) ? new Set([id]) : new Set();
|
|
7813
|
+
return parentStrategy.activate({
|
|
7814
|
+
...rest,
|
|
7815
|
+
id,
|
|
7816
|
+
activated: singleSelected
|
|
7817
|
+
});
|
|
7818
|
+
},
|
|
7819
|
+
in: (v, children, parents) => {
|
|
7820
|
+
let set = new Set();
|
|
7821
|
+
if (v?.length) {
|
|
7822
|
+
set = parentStrategy.in(v.slice(0, 1), children, parents);
|
|
7823
|
+
}
|
|
7824
|
+
return set;
|
|
7825
|
+
},
|
|
7826
|
+
out: (v, children, parents) => {
|
|
7827
|
+
return parentStrategy.out(v, children, parents);
|
|
7828
|
+
}
|
|
7829
|
+
};
|
|
7830
|
+
return strategy;
|
|
7831
|
+
};
|
|
7832
|
+
const leafActiveStrategy = mandatory => {
|
|
7833
|
+
const parentStrategy = independentActiveStrategy(mandatory);
|
|
7834
|
+
const strategy = {
|
|
7835
|
+
activate: _ref3 => {
|
|
7836
|
+
let {
|
|
7837
|
+
id,
|
|
7838
|
+
activated,
|
|
7839
|
+
children,
|
|
7840
|
+
...rest
|
|
7841
|
+
} = _ref3;
|
|
7842
|
+
id = vue.toRaw(id);
|
|
7843
|
+
if (children.has(id)) return activated;
|
|
7844
|
+
return parentStrategy.activate({
|
|
7845
|
+
id,
|
|
7846
|
+
activated,
|
|
7847
|
+
children,
|
|
7848
|
+
...rest
|
|
7849
|
+
});
|
|
7850
|
+
},
|
|
7851
|
+
in: parentStrategy.in,
|
|
7852
|
+
out: parentStrategy.out
|
|
7853
|
+
};
|
|
7854
|
+
return strategy;
|
|
7855
|
+
};
|
|
7856
|
+
const leafSingleActiveStrategy = mandatory => {
|
|
7857
|
+
const parentStrategy = independentSingleActiveStrategy(mandatory);
|
|
7858
|
+
const strategy = {
|
|
7859
|
+
activate: _ref4 => {
|
|
7860
|
+
let {
|
|
7861
|
+
id,
|
|
7862
|
+
activated,
|
|
7863
|
+
children,
|
|
7864
|
+
...rest
|
|
7865
|
+
} = _ref4;
|
|
7866
|
+
id = vue.toRaw(id);
|
|
7867
|
+
if (children.has(id)) return activated;
|
|
7868
|
+
return parentStrategy.activate({
|
|
7869
|
+
id,
|
|
7870
|
+
activated,
|
|
7871
|
+
children,
|
|
7872
|
+
...rest
|
|
7873
|
+
});
|
|
7874
|
+
},
|
|
7875
|
+
in: parentStrategy.in,
|
|
7876
|
+
out: parentStrategy.out
|
|
7877
|
+
};
|
|
7878
|
+
return strategy;
|
|
7879
|
+
};
|
|
7880
|
+
|
|
7757
7881
|
const singleOpenStrategy = {
|
|
7758
7882
|
open: _ref => {
|
|
7759
7883
|
let {
|
|
@@ -7838,7 +7962,8 @@
|
|
|
7838
7962
|
if (mandatory && !value) {
|
|
7839
7963
|
const on = Array.from(selected.entries()).reduce((arr, _ref2) => {
|
|
7840
7964
|
let [key, value] = _ref2;
|
|
7841
|
-
|
|
7965
|
+
if (value === 'on') arr.push(key);
|
|
7966
|
+
return arr;
|
|
7842
7967
|
}, []);
|
|
7843
7968
|
if (on.length === 1 && on[0] === id) return selected;
|
|
7844
7969
|
}
|
|
@@ -7980,7 +8105,8 @@
|
|
|
7980
8105
|
if (mandatory && !value) {
|
|
7981
8106
|
const on = Array.from(selected.entries()).reduce((arr, _ref7) => {
|
|
7982
8107
|
let [key, value] = _ref7;
|
|
7983
|
-
|
|
8108
|
+
if (value === 'on') arr.push(key);
|
|
8109
|
+
return arr;
|
|
7984
8110
|
}, []);
|
|
7985
8111
|
if (on.length === 0) return original;
|
|
7986
8112
|
}
|
|
@@ -8024,16 +8150,24 @@
|
|
|
8024
8150
|
children: vue.ref(new Map()),
|
|
8025
8151
|
open: () => null,
|
|
8026
8152
|
openOnSelect: () => null,
|
|
8153
|
+
activate: () => null,
|
|
8027
8154
|
select: () => null,
|
|
8155
|
+
activatable: vue.ref(false),
|
|
8156
|
+
selectable: vue.ref(false),
|
|
8028
8157
|
opened: vue.ref(new Set()),
|
|
8158
|
+
activated: vue.ref(new Set()),
|
|
8029
8159
|
selected: vue.ref(new Map()),
|
|
8030
8160
|
selectedValues: vue.ref([])
|
|
8031
8161
|
}
|
|
8032
8162
|
};
|
|
8033
8163
|
const makeNestedProps = propsFactory({
|
|
8164
|
+
activatable: Boolean,
|
|
8165
|
+
selectable: Boolean,
|
|
8166
|
+
activeStrategy: [String, Function],
|
|
8034
8167
|
selectStrategy: [String, Function],
|
|
8035
8168
|
openStrategy: [String, Object],
|
|
8036
8169
|
opened: Array,
|
|
8170
|
+
activated: Array,
|
|
8037
8171
|
selected: Array,
|
|
8038
8172
|
mandatory: Boolean
|
|
8039
8173
|
}, 'nested');
|
|
@@ -8042,6 +8176,20 @@
|
|
|
8042
8176
|
const children = vue.ref(new Map());
|
|
8043
8177
|
const parents = vue.ref(new Map());
|
|
8044
8178
|
const opened = useProxiedModel(props, 'opened', props.opened, v => new Set(v), v => [...v.values()]);
|
|
8179
|
+
const activeStrategy = vue.computed(() => {
|
|
8180
|
+
if (typeof props.activeStrategy === 'object') return props.activeStrategy;
|
|
8181
|
+
switch (props.activeStrategy) {
|
|
8182
|
+
case 'leaf':
|
|
8183
|
+
return leafActiveStrategy(props.mandatory);
|
|
8184
|
+
case 'single-leaf':
|
|
8185
|
+
return leafSingleActiveStrategy(props.mandatory);
|
|
8186
|
+
case 'independent':
|
|
8187
|
+
return independentActiveStrategy(props.mandatory);
|
|
8188
|
+
case 'single-independent':
|
|
8189
|
+
default:
|
|
8190
|
+
return independentSingleActiveStrategy(props.mandatory);
|
|
8191
|
+
}
|
|
8192
|
+
});
|
|
8045
8193
|
const selectStrategy = vue.computed(() => {
|
|
8046
8194
|
if (typeof props.selectStrategy === 'object') return props.selectStrategy;
|
|
8047
8195
|
switch (props.selectStrategy) {
|
|
@@ -8070,6 +8218,7 @@
|
|
|
8070
8218
|
return multipleOpenStrategy;
|
|
8071
8219
|
}
|
|
8072
8220
|
});
|
|
8221
|
+
const activated = useProxiedModel(props, 'activated', props.activated, v => activeStrategy.value.in(v, children.value, parents.value), v => activeStrategy.value.out(v, children.value, parents.value));
|
|
8073
8222
|
const selected = useProxiedModel(props, 'selected', props.selected, v => selectStrategy.value.in(v, children.value, parents.value), v => selectStrategy.value.out(v, children.value, parents.value));
|
|
8074
8223
|
vue.onBeforeUnmount(() => {
|
|
8075
8224
|
isUnmounted = true;
|
|
@@ -8088,6 +8237,9 @@
|
|
|
8088
8237
|
id: vue.shallowRef(),
|
|
8089
8238
|
root: {
|
|
8090
8239
|
opened,
|
|
8240
|
+
activatable: vue.toRef(props, 'activatable'),
|
|
8241
|
+
selectable: vue.toRef(props, 'selectable'),
|
|
8242
|
+
activated,
|
|
8091
8243
|
selected,
|
|
8092
8244
|
selectedValues: vue.computed(() => {
|
|
8093
8245
|
const arr = [];
|
|
@@ -8161,6 +8313,26 @@
|
|
|
8161
8313
|
newSelected && (selected.value = newSelected);
|
|
8162
8314
|
nested.root.openOnSelect(id, value, event);
|
|
8163
8315
|
},
|
|
8316
|
+
activate: (id, value, event) => {
|
|
8317
|
+
if (!props.activatable) {
|
|
8318
|
+
return nested.root.select(id, true, event);
|
|
8319
|
+
}
|
|
8320
|
+
vm.emit('click:activate', {
|
|
8321
|
+
id,
|
|
8322
|
+
value,
|
|
8323
|
+
path: getPath(id),
|
|
8324
|
+
event
|
|
8325
|
+
});
|
|
8326
|
+
const newActivated = activeStrategy.value.activate({
|
|
8327
|
+
id,
|
|
8328
|
+
value,
|
|
8329
|
+
activated: new Set(activated.value),
|
|
8330
|
+
children: children.value,
|
|
8331
|
+
parents: parents.value,
|
|
8332
|
+
event
|
|
8333
|
+
});
|
|
8334
|
+
newActivated && (activated.value = newActivated);
|
|
8335
|
+
},
|
|
8164
8336
|
children,
|
|
8165
8337
|
parents
|
|
8166
8338
|
}
|
|
@@ -8179,6 +8351,8 @@
|
|
|
8179
8351
|
openOnSelect: (open, e) => parent.root.openOnSelect(computedId.value, open, e),
|
|
8180
8352
|
isOpen: vue.computed(() => parent.root.opened.value.has(computedId.value)),
|
|
8181
8353
|
parent: vue.computed(() => parent.root.parents.value.get(computedId.value)),
|
|
8354
|
+
activate: (activated, e) => parent.root.activate(computedId.value, activated, e),
|
|
8355
|
+
isActivated: vue.computed(() => parent.root.activated.value.has(vue.toRaw(computedId.value))),
|
|
8182
8356
|
select: (selected, e) => parent.root.select(computedId.value, selected, e),
|
|
8183
8357
|
isSelected: vue.computed(() => parent.root.selected.value.get(vue.toRaw(computedId.value)) === 'on'),
|
|
8184
8358
|
isIndeterminate: vue.computed(() => parent.root.selected.value.get(computedId.value) === 'indeterminate'),
|
|
@@ -8301,7 +8475,9 @@
|
|
|
8301
8475
|
}, [slots.default?.()]), [[vue.vShow, isOpen.value]])]
|
|
8302
8476
|
})]
|
|
8303
8477
|
}));
|
|
8304
|
-
return {
|
|
8478
|
+
return {
|
|
8479
|
+
isOpen
|
|
8480
|
+
};
|
|
8305
8481
|
}
|
|
8306
8482
|
});
|
|
8307
8483
|
|
|
@@ -8374,6 +8550,8 @@
|
|
|
8374
8550
|
const link = useLink(props, attrs);
|
|
8375
8551
|
const id = vue.computed(() => props.value === undefined ? link.href.value : props.value);
|
|
8376
8552
|
const {
|
|
8553
|
+
activate,
|
|
8554
|
+
isActivated,
|
|
8377
8555
|
select,
|
|
8378
8556
|
isSelected,
|
|
8379
8557
|
isIndeterminate,
|
|
@@ -8383,9 +8561,9 @@
|
|
|
8383
8561
|
openOnSelect
|
|
8384
8562
|
} = useNestedItem(id, false);
|
|
8385
8563
|
const list = useList();
|
|
8386
|
-
const isActive = vue.computed(() => props.active !== false && (props.active || link.isActive?.value || isSelected.value));
|
|
8564
|
+
const isActive = vue.computed(() => props.active !== false && (props.active || link.isActive?.value || (root.activatable.value ? isActivated.value : isSelected.value)));
|
|
8387
8565
|
const isLink = vue.computed(() => props.link !== false && link.isLink.value);
|
|
8388
|
-
const isClickable = vue.computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value || props.value != null
|
|
8566
|
+
const isClickable = vue.computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value || !!list && (root.selectable.value || root.activatable.value || props.value != null)));
|
|
8389
8567
|
const roundedProps = vue.computed(() => props.rounded || props.nav);
|
|
8390
8568
|
const color = vue.computed(() => props.color ?? props.activeColor);
|
|
8391
8569
|
const variantProps = vue.computed(() => ({
|
|
@@ -8436,7 +8614,13 @@
|
|
|
8436
8614
|
emit('click', e);
|
|
8437
8615
|
if (isGroupActivator || !isClickable.value) return;
|
|
8438
8616
|
link.navigate?.(e);
|
|
8439
|
-
|
|
8617
|
+
if (root.activatable) {
|
|
8618
|
+
activate(!isActivated.value, e);
|
|
8619
|
+
} else if (root.selectable) {
|
|
8620
|
+
select(!isSelected.value, e);
|
|
8621
|
+
} else if (props.value != null) {
|
|
8622
|
+
select(!isSelected.value, e);
|
|
8623
|
+
}
|
|
8440
8624
|
}
|
|
8441
8625
|
function onKeyDown(e) {
|
|
8442
8626
|
if (e.key === 'Enter' || e.key === ' ') {
|
|
@@ -8552,7 +8736,12 @@
|
|
|
8552
8736
|
}, null)])]
|
|
8553
8737
|
}), [[vue.resolveDirective("ripple"), isClickable.value && props.ripple]]);
|
|
8554
8738
|
});
|
|
8555
|
-
return {
|
|
8739
|
+
return {
|
|
8740
|
+
isGroupActivator,
|
|
8741
|
+
isSelected,
|
|
8742
|
+
list,
|
|
8743
|
+
select
|
|
8744
|
+
};
|
|
8556
8745
|
}
|
|
8557
8746
|
});
|
|
8558
8747
|
|
|
@@ -8894,8 +9083,10 @@
|
|
|
8894
9083
|
props: makeVListProps(),
|
|
8895
9084
|
emits: {
|
|
8896
9085
|
'update:selected': value => true,
|
|
9086
|
+
'update:activated': value => true,
|
|
8897
9087
|
'update:opened': value => true,
|
|
8898
9088
|
'click:open': value => true,
|
|
9089
|
+
'click:activate': value => true,
|
|
8899
9090
|
'click:select': value => true
|
|
8900
9091
|
},
|
|
8901
9092
|
setup(props, _ref) {
|
|
@@ -8928,7 +9119,9 @@
|
|
|
8928
9119
|
roundedClasses
|
|
8929
9120
|
} = useRounded(props);
|
|
8930
9121
|
const {
|
|
9122
|
+
children,
|
|
8931
9123
|
open,
|
|
9124
|
+
parents,
|
|
8932
9125
|
select
|
|
8933
9126
|
} = useNested(props);
|
|
8934
9127
|
const lineClasses = vue.computed(() => props.lines ? `v-list--${props.lines}-line` : undefined);
|
|
@@ -9018,7 +9211,9 @@
|
|
|
9018
9211
|
return {
|
|
9019
9212
|
open,
|
|
9020
9213
|
select,
|
|
9021
|
-
focus
|
|
9214
|
+
focus,
|
|
9215
|
+
children,
|
|
9216
|
+
parents
|
|
9022
9217
|
};
|
|
9023
9218
|
}
|
|
9024
9219
|
});
|
|
@@ -11898,9 +12093,11 @@
|
|
|
11898
12093
|
});
|
|
11899
12094
|
}
|
|
11900
12095
|
});
|
|
11901
|
-
vue.watch(() => props.items,
|
|
11902
|
-
if (
|
|
11903
|
-
|
|
12096
|
+
vue.watch(() => props.items, (newVal, oldVal) => {
|
|
12097
|
+
if (menu.value) return;
|
|
12098
|
+
if (isFocused.value && !oldVal.length && newVal.length) {
|
|
12099
|
+
menu.value = true;
|
|
12100
|
+
}
|
|
11904
12101
|
});
|
|
11905
12102
|
useRender(() => {
|
|
11906
12103
|
const hasChips = !!(props.chips || slots.chip);
|
|
@@ -12460,9 +12657,11 @@
|
|
|
12460
12657
|
});
|
|
12461
12658
|
}
|
|
12462
12659
|
});
|
|
12463
|
-
vue.watch(() => props.items,
|
|
12464
|
-
if (
|
|
12465
|
-
|
|
12660
|
+
vue.watch(() => props.items, (newVal, oldVal) => {
|
|
12661
|
+
if (menu.value) return;
|
|
12662
|
+
if (isFocused.value && !oldVal.length && newVal.length) {
|
|
12663
|
+
menu.value = true;
|
|
12664
|
+
}
|
|
12466
12665
|
});
|
|
12467
12666
|
useRender(() => {
|
|
12468
12667
|
const hasList = !!(!props.hideNoData || displayItems.value.length || slots['prepend-item'] || slots['append-item'] || slots['no-data']);
|
|
@@ -16143,7 +16342,7 @@
|
|
|
16143
16342
|
}
|
|
16144
16343
|
if (e.key === 'Enter' && search.value) {
|
|
16145
16344
|
select(transformItem$3(props, search.value));
|
|
16146
|
-
if (hasSelectionSlot.value)
|
|
16345
|
+
if (hasSelectionSlot.value) _search.value = '';
|
|
16147
16346
|
}
|
|
16148
16347
|
if (!props.multiple) return;
|
|
16149
16348
|
if (['Backspace', 'Delete'].includes(e.key)) {
|
|
@@ -16237,8 +16436,24 @@
|
|
|
16237
16436
|
return value === displayItems.value[0].value;
|
|
16238
16437
|
})) {
|
|
16239
16438
|
select(displayItems.value[0]);
|
|
16240
|
-
|
|
16241
|
-
|
|
16439
|
+
return;
|
|
16440
|
+
}
|
|
16441
|
+
if (search.value) {
|
|
16442
|
+
if (props.multiple) {
|
|
16443
|
+
select(transformItem$3(props, search.value));
|
|
16444
|
+
return;
|
|
16445
|
+
}
|
|
16446
|
+
if (!hasSelectionSlot.value) return;
|
|
16447
|
+
if (model.value.some(_ref3 => {
|
|
16448
|
+
let {
|
|
16449
|
+
title
|
|
16450
|
+
} = _ref3;
|
|
16451
|
+
return title === search.value;
|
|
16452
|
+
})) {
|
|
16453
|
+
_search.value = '';
|
|
16454
|
+
} else {
|
|
16455
|
+
select(transformItem$3(props, search.value));
|
|
16456
|
+
}
|
|
16242
16457
|
}
|
|
16243
16458
|
});
|
|
16244
16459
|
vue.watch(menu, () => {
|
|
@@ -16249,9 +16464,11 @@
|
|
|
16249
16464
|
});
|
|
16250
16465
|
}
|
|
16251
16466
|
});
|
|
16252
|
-
vue.watch(() => props.items,
|
|
16253
|
-
if (
|
|
16254
|
-
|
|
16467
|
+
vue.watch(() => props.items, (newVal, oldVal) => {
|
|
16468
|
+
if (menu.value) return;
|
|
16469
|
+
if (isFocused.value && !oldVal.length && newVal.length) {
|
|
16470
|
+
menu.value = true;
|
|
16471
|
+
}
|
|
16255
16472
|
});
|
|
16256
16473
|
useRender(() => {
|
|
16257
16474
|
const hasList = !!(!props.hideNoData || displayItems.value.length || slots['prepend-item'] || slots['append-item'] || slots['no-data']);
|
|
@@ -16316,12 +16533,12 @@
|
|
|
16316
16533
|
"renderless": true,
|
|
16317
16534
|
"items": displayItems.value
|
|
16318
16535
|
}, {
|
|
16319
|
-
default:
|
|
16536
|
+
default: _ref4 => {
|
|
16320
16537
|
let {
|
|
16321
16538
|
item,
|
|
16322
16539
|
index,
|
|
16323
16540
|
itemRef
|
|
16324
|
-
} =
|
|
16541
|
+
} = _ref4;
|
|
16325
16542
|
const itemProps = vue.mergeProps(item.props, {
|
|
16326
16543
|
ref: itemRef,
|
|
16327
16544
|
key: index,
|
|
@@ -16335,10 +16552,10 @@
|
|
|
16335
16552
|
}) ?? vue.createVNode(VListItem, vue.mergeProps(itemProps, {
|
|
16336
16553
|
"role": "option"
|
|
16337
16554
|
}), {
|
|
16338
|
-
prepend:
|
|
16555
|
+
prepend: _ref5 => {
|
|
16339
16556
|
let {
|
|
16340
16557
|
isSelected
|
|
16341
|
-
} =
|
|
16558
|
+
} = _ref5;
|
|
16342
16559
|
return vue.createVNode(vue.Fragment, null, [props.multiple && !props.hideSelected ? vue.createVNode(VCheckboxBtn, {
|
|
16343
16560
|
"key": item.value,
|
|
16344
16561
|
"modelValue": isSelected,
|
|
@@ -17354,10 +17571,28 @@
|
|
|
17354
17571
|
function getDiff(date, comparing, unit) {
|
|
17355
17572
|
const d = new Date(date);
|
|
17356
17573
|
const c = new Date(comparing);
|
|
17357
|
-
|
|
17358
|
-
|
|
17574
|
+
switch (unit) {
|
|
17575
|
+
case 'years':
|
|
17576
|
+
return d.getFullYear() - c.getFullYear();
|
|
17577
|
+
case 'quarters':
|
|
17578
|
+
return Math.floor((d.getMonth() - c.getMonth() + (d.getFullYear() - c.getFullYear()) * 12) / 4);
|
|
17579
|
+
case 'months':
|
|
17580
|
+
return d.getMonth() - c.getMonth() + (d.getFullYear() - c.getFullYear()) * 12;
|
|
17581
|
+
case 'weeks':
|
|
17582
|
+
return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60 * 24 * 7));
|
|
17583
|
+
case 'days':
|
|
17584
|
+
return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60 * 24));
|
|
17585
|
+
case 'hours':
|
|
17586
|
+
return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60));
|
|
17587
|
+
case 'minutes':
|
|
17588
|
+
return Math.floor((d.getTime() - c.getTime()) / (1000 * 60));
|
|
17589
|
+
case 'seconds':
|
|
17590
|
+
return Math.floor((d.getTime() - c.getTime()) / 1000);
|
|
17591
|
+
default:
|
|
17592
|
+
{
|
|
17593
|
+
return d.getTime() - c.getTime();
|
|
17594
|
+
}
|
|
17359
17595
|
}
|
|
17360
|
-
return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60 * 24));
|
|
17361
17596
|
}
|
|
17362
17597
|
function setHours(date, count) {
|
|
17363
17598
|
const d = new Date(date);
|
|
@@ -20254,6 +20489,7 @@
|
|
|
20254
20489
|
emit('click:month');
|
|
20255
20490
|
}
|
|
20256
20491
|
useRender(() => {
|
|
20492
|
+
// TODO: add slot support and scope defaults
|
|
20257
20493
|
return vue.createVNode("div", {
|
|
20258
20494
|
"class": ['v-date-picker-controls']
|
|
20259
20495
|
}, [vue.createVNode(VBtn, {
|
|
@@ -20552,7 +20788,7 @@
|
|
|
20552
20788
|
} else {
|
|
20553
20789
|
rangeStop.value = _value;
|
|
20554
20790
|
}
|
|
20555
|
-
const diff = adapter.getDiff(rangeStop.value, rangeStart.value);
|
|
20791
|
+
const diff = adapter.getDiff(rangeStop.value, rangeStart.value, 'days');
|
|
20556
20792
|
const datesInRange = [rangeStart.value];
|
|
20557
20793
|
for (let i = 1; i < diff; i++) {
|
|
20558
20794
|
const nextDate = adapter.addDays(rangeStart.value, i);
|
|
@@ -24366,6 +24602,8 @@
|
|
|
24366
24602
|
const controlProps = VSelectionControl.filterProps(props);
|
|
24367
24603
|
return vue.createVNode(VInput, vue.mergeProps({
|
|
24368
24604
|
"class": ['v-switch', {
|
|
24605
|
+
'v-switch--flat': props.flat
|
|
24606
|
+
}, {
|
|
24369
24607
|
'v-switch--inset': props.inset
|
|
24370
24608
|
}, {
|
|
24371
24609
|
'v-switch--indeterminate': indeterminate.value
|
|
@@ -25739,7 +25977,7 @@
|
|
|
25739
25977
|
goTo
|
|
25740
25978
|
};
|
|
25741
25979
|
}
|
|
25742
|
-
const version$1 = "3.5.
|
|
25980
|
+
const version$1 = "3.5.9";
|
|
25743
25981
|
createVuetify$1.version = version$1;
|
|
25744
25982
|
|
|
25745
25983
|
// Vue's inject() can only be used in setup
|
|
@@ -25764,7 +26002,7 @@
|
|
|
25764
26002
|
...options
|
|
25765
26003
|
});
|
|
25766
26004
|
};
|
|
25767
|
-
const version = "3.5.
|
|
26005
|
+
const version = "3.5.9";
|
|
25768
26006
|
createVuetify.version = version;
|
|
25769
26007
|
|
|
25770
26008
|
exports.components = components;
|