@vuetify/nightly 3.7.6-dev.2024-12-18 → 3.7.6-dev.2025-01-06

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 (41) hide show
  1. package/dist/json/attributes.json +3231 -3223
  2. package/dist/json/importMap-labs.json +16 -16
  3. package/dist/json/importMap.json +150 -150
  4. package/dist/json/tags.json +2 -0
  5. package/dist/json/web-types.json +5961 -5941
  6. package/dist/vuetify-labs.css +3903 -3903
  7. package/dist/vuetify-labs.d.ts +30 -0
  8. package/dist/vuetify-labs.esm.js +39 -18
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +39 -18
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +4335 -4335
  13. package/dist/vuetify.d.ts +82 -52
  14. package/dist/vuetify.esm.js +39 -18
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +39 -18
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +741 -736
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/blueprints/index.d.mts +2 -0
  22. package/lib/blueprints/md1.d.mts +2 -0
  23. package/lib/blueprints/md2.d.mts +2 -0
  24. package/lib/blueprints/md3.d.mts +2 -0
  25. package/lib/components/VAutocomplete/VAutocomplete.mjs +2 -1
  26. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  27. package/lib/components/VCombobox/VCombobox.mjs +2 -1
  28. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  29. package/lib/components/VDataTable/index.d.mts +14 -0
  30. package/lib/components/VSelect/VSelect.mjs +2 -1
  31. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  32. package/lib/components/VVirtualScroll/index.d.mts +17 -1
  33. package/lib/components/index.d.mts +28 -0
  34. package/lib/composables/theme.mjs +18 -7
  35. package/lib/composables/theme.mjs.map +1 -1
  36. package/lib/composables/virtual.mjs +13 -6
  37. package/lib/composables/virtual.mjs.map +1 -1
  38. package/lib/entry-bundler.mjs +1 -1
  39. package/lib/framework.mjs +1 -1
  40. package/lib/index.d.mts +54 -52
  41. package/package.json +1 -1
package/dist/vuetify.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.7.6-dev.2024-12-18
2
+ * Vuetify v3.7.6-dev.2025-01-06
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -2789,7 +2789,8 @@
2789
2789
  'theme-on-code': '#CCCCCC'
2790
2790
  }
2791
2791
  }
2792
- }
2792
+ },
2793
+ stylesheetId: 'vuetify-theme-stylesheet'
2793
2794
  };
2794
2795
  }
2795
2796
  function parseThemeOptions() {
@@ -2846,6 +2847,19 @@
2846
2847
  return acc;
2847
2848
  });
2848
2849
  const current = vue.computed(() => computedThemes.value[name.value]);
2850
+ function createCssClass(lines, selector, content) {
2851
+ lines.push(`${getScopedSelector(selector)} {\n`, ...content.map(line => ` ${line};\n`), '}\n');
2852
+ }
2853
+ function getScopedSelector(selector) {
2854
+ if (!parsedOptions.scope) {
2855
+ return selector;
2856
+ }
2857
+ const scopeSelector = `:where(${parsedOptions.scope})`;
2858
+ if (selector === ':root') {
2859
+ return scopeSelector;
2860
+ }
2861
+ return `${scopeSelector} ${selector}`;
2862
+ }
2849
2863
  const styles = vue.computed(() => {
2850
2864
  const lines = [];
2851
2865
  if (current.value?.dark) {
@@ -2874,7 +2888,7 @@
2874
2888
  return {
2875
2889
  style: [{
2876
2890
  children: styles.value,
2877
- id: 'vuetify-theme-stylesheet',
2891
+ id: parsedOptions.stylesheetId,
2878
2892
  nonce: parsedOptions.cspNonce || false
2879
2893
  }]
2880
2894
  };
@@ -2899,7 +2913,7 @@
2899
2913
  }
2900
2914
  }
2901
2915
  } else {
2902
- let styleEl = IN_BROWSER ? document.getElementById('vuetify-theme-stylesheet') : null;
2916
+ let styleEl = IN_BROWSER ? document.getElementById(parsedOptions.stylesheetId) : null;
2903
2917
  if (IN_BROWSER) {
2904
2918
  vue.watch(styles, updateStyles, {
2905
2919
  immediate: true
@@ -2911,7 +2925,7 @@
2911
2925
  if (typeof document !== 'undefined' && !styleEl) {
2912
2926
  const el = document.createElement('style');
2913
2927
  el.type = 'text/css';
2914
- el.id = 'vuetify-theme-stylesheet';
2928
+ el.id = parsedOptions.stylesheetId;
2915
2929
  if (parsedOptions.cspNonce) el.setAttribute('nonce', parsedOptions.cspNonce);
2916
2930
  styleEl = el;
2917
2931
  document.head.appendChild(styleEl);
@@ -2960,9 +2974,6 @@
2960
2974
  if (!theme) throw new Error('Could not find Vuetify theme injection');
2961
2975
  return theme;
2962
2976
  }
2963
- function createCssClass(lines, selector, content) {
2964
- lines.push(`${selector} {\n`, ...content.map(line => ` ${line};\n`), '}\n');
2965
- }
2966
2977
  function genCssVariables(theme) {
2967
2978
  const lightOverlay = theme.dark ? 2 : 1;
2968
2979
  const darkOverlay = theme.dark ? 1 : 2;
@@ -12200,6 +12211,10 @@
12200
12211
  type: [Number, String],
12201
12212
  default: null
12202
12213
  },
12214
+ itemKey: {
12215
+ type: [String, Array, Function],
12216
+ default: null
12217
+ },
12203
12218
  height: [Number, String]
12204
12219
  }, 'virtual');
12205
12220
  function useVirtual(props, items) {
@@ -12378,11 +12393,14 @@
12378
12393
  }
12379
12394
  }
12380
12395
  const computedItems = vue.computed(() => {
12381
- return items.value.slice(first.value, last.value).map((item, index) => ({
12382
- raw: item,
12383
- index: index + first.value,
12384
- key: isObject(item) && 'value' in item ? item.value : index + first.value
12385
- }));
12396
+ return items.value.slice(first.value, last.value).map((item, index) => {
12397
+ const _index = index + first.value;
12398
+ return {
12399
+ raw: item,
12400
+ index: _index,
12401
+ key: getPropertyFromItem(item, props.itemKey, _index)
12402
+ };
12403
+ });
12386
12404
  });
12387
12405
  vue.watch(items, () => {
12388
12406
  sizes = Array.from({
@@ -12900,7 +12918,8 @@
12900
12918
  }, null)), vue.createVNode(VVirtualScroll, {
12901
12919
  "ref": vVirtualScrollRef,
12902
12920
  "renderless": true,
12903
- "items": displayItems.value
12921
+ "items": displayItems.value,
12922
+ "itemKey": "value"
12904
12923
  }, {
12905
12924
  default: _ref2 => {
12906
12925
  let {
@@ -13475,7 +13494,8 @@
13475
13494
  }, null)), vue.createVNode(VVirtualScroll, {
13476
13495
  "ref": vVirtualScrollRef,
13477
13496
  "renderless": true,
13478
- "items": displayItems.value
13497
+ "items": displayItems.value,
13498
+ "itemKey": "value"
13479
13499
  }, {
13480
13500
  default: _ref4 => {
13481
13501
  let {
@@ -17355,7 +17375,8 @@
17355
17375
  }, null)), vue.createVNode(VVirtualScroll, {
17356
17376
  "ref": vVirtualScrollRef,
17357
17377
  "renderless": true,
17358
- "items": displayItems.value
17378
+ "items": displayItems.value,
17379
+ "itemKey": "value"
17359
17380
  }, {
17360
17381
  default: _ref4 => {
17361
17382
  let {
@@ -28286,7 +28307,7 @@
28286
28307
  goTo
28287
28308
  };
28288
28309
  }
28289
- const version$1 = "3.7.6-dev.2024-12-18";
28310
+ const version$1 = "3.7.6-dev.2025-01-06";
28290
28311
  createVuetify$1.version = version$1;
28291
28312
 
28292
28313
  // Vue's inject() can only be used in setup
@@ -28311,7 +28332,7 @@
28311
28332
  ...options
28312
28333
  });
28313
28334
  };
28314
- const version = "3.7.6-dev.2024-12-18";
28335
+ const version = "3.7.6-dev.2025-01-06";
28315
28336
  createVuetify.version = version;
28316
28337
 
28317
28338
  exports.blueprints = index;