@vuetify/nightly 3.7.1-master.2024-08-29 → 3.7.1-master.2024-09-02

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 (37) hide show
  1. package/dist/json/importMap-labs.json +20 -20
  2. package/dist/json/importMap.json +150 -150
  3. package/dist/json/web-types.json +1 -1
  4. package/dist/vuetify-labs.css +3902 -3902
  5. package/dist/vuetify-labs.d.ts +57 -0
  6. package/dist/vuetify-labs.esm.js +38 -40
  7. package/dist/vuetify-labs.esm.js.map +1 -1
  8. package/dist/vuetify-labs.js +38 -40
  9. package/dist/vuetify-labs.min.css +2 -2
  10. package/dist/vuetify.css +738 -738
  11. package/dist/vuetify.d.ts +113 -56
  12. package/dist/vuetify.esm.js +26 -9
  13. package/dist/vuetify.esm.js.map +1 -1
  14. package/dist/vuetify.js +26 -9
  15. package/dist/vuetify.js.map +1 -1
  16. package/dist/vuetify.min.css +2 -2
  17. package/dist/vuetify.min.js +22 -22
  18. package/dist/vuetify.min.js.map +1 -1
  19. package/lib/components/VAutocomplete/index.d.mts +3 -0
  20. package/lib/components/VCombobox/index.d.mts +3 -0
  21. package/lib/components/VList/VList.mjs +4 -2
  22. package/lib/components/VList/VList.mjs.map +1 -1
  23. package/lib/components/VList/VListItem.mjs +5 -2
  24. package/lib/components/VList/VListItem.mjs.map +1 -1
  25. package/lib/components/VList/index.d.mts +57 -0
  26. package/lib/components/VSelect/index.d.mts +3 -0
  27. package/lib/components/index.d.mts +57 -0
  28. package/lib/composables/nested/nested.mjs +15 -3
  29. package/lib/composables/nested/nested.mjs.map +1 -1
  30. package/lib/entry-bundler.mjs +1 -1
  31. package/lib/framework.mjs +1 -1
  32. package/lib/index.d.mts +56 -56
  33. package/lib/labs/VTreeview/VTreeview.mjs +3 -12
  34. package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
  35. package/lib/labs/VTreeview/VTreeviewItem.mjs +9 -20
  36. package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
  37. package/package.json +1 -1
@@ -4181,6 +4181,24 @@ declare const VListItem: {
4181
4181
  updateHasPrepend: (value: boolean) => void;
4182
4182
  } | null;
4183
4183
  select: (selected: boolean, e?: Event) => void;
4184
+ root: {
4185
+ children: vue.Ref<Map<unknown, unknown[]>>;
4186
+ parents: vue.Ref<Map<unknown, unknown>>;
4187
+ activatable: vue.Ref<boolean>;
4188
+ selectable: vue.Ref<boolean>;
4189
+ opened: vue.Ref<Set<unknown>>;
4190
+ activated: vue.Ref<Set<unknown>>;
4191
+ selected: vue.Ref<Map<unknown, "on" | "off" | "indeterminate">>;
4192
+ selectedValues: vue.Ref<unknown[]>;
4193
+ register: (id: unknown, parentId: unknown, isGroup?: boolean) => void;
4194
+ unregister: (id: unknown) => void;
4195
+ open: (id: unknown, value: boolean, event?: Event) => void;
4196
+ activate: (id: unknown, value: boolean, event?: Event) => void;
4197
+ select: (id: unknown, value: boolean, event?: Event) => void;
4198
+ openOnSelect: (id: unknown, value: boolean, event?: Event) => void;
4199
+ getPath: (id: unknown) => unknown[];
4200
+ };
4201
+ id: vue.ComputedRef<{} | null>;
4184
4202
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
4185
4203
  click: (e: MouseEvent | KeyboardEvent) => true;
4186
4204
  }, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
@@ -4357,6 +4375,24 @@ declare const VListItem: {
4357
4375
  updateHasPrepend: (value: boolean) => void;
4358
4376
  } | null;
4359
4377
  select: (selected: boolean, e?: Event) => void;
4378
+ root: {
4379
+ children: vue.Ref<Map<unknown, unknown[]>>;
4380
+ parents: vue.Ref<Map<unknown, unknown>>;
4381
+ activatable: vue.Ref<boolean>;
4382
+ selectable: vue.Ref<boolean>;
4383
+ opened: vue.Ref<Set<unknown>>;
4384
+ activated: vue.Ref<Set<unknown>>;
4385
+ selected: vue.Ref<Map<unknown, "on" | "off" | "indeterminate">>;
4386
+ selectedValues: vue.Ref<unknown[]>;
4387
+ register: (id: unknown, parentId: unknown, isGroup?: boolean) => void;
4388
+ unregister: (id: unknown) => void;
4389
+ open: (id: unknown, value: boolean, event?: Event) => void;
4390
+ activate: (id: unknown, value: boolean, event?: Event) => void;
4391
+ select: (id: unknown, value: boolean, event?: Event) => void;
4392
+ openOnSelect: (id: unknown, value: boolean, event?: Event) => void;
4393
+ getPath: (id: unknown) => unknown[];
4394
+ };
4395
+ id: vue.ComputedRef<{} | null>;
4360
4396
  }, {}, {}, {}, {
4361
4397
  replace: boolean;
4362
4398
  link: boolean;
@@ -4455,6 +4491,24 @@ declare const VListItem: {
4455
4491
  updateHasPrepend: (value: boolean) => void;
4456
4492
  } | null;
4457
4493
  select: (selected: boolean, e?: Event) => void;
4494
+ root: {
4495
+ children: vue.Ref<Map<unknown, unknown[]>>;
4496
+ parents: vue.Ref<Map<unknown, unknown>>;
4497
+ activatable: vue.Ref<boolean>;
4498
+ selectable: vue.Ref<boolean>;
4499
+ opened: vue.Ref<Set<unknown>>;
4500
+ activated: vue.Ref<Set<unknown>>;
4501
+ selected: vue.Ref<Map<unknown, "on" | "off" | "indeterminate">>;
4502
+ selectedValues: vue.Ref<unknown[]>;
4503
+ register: (id: unknown, parentId: unknown, isGroup?: boolean) => void;
4504
+ unregister: (id: unknown) => void;
4505
+ open: (id: unknown, value: boolean, event?: Event) => void;
4506
+ activate: (id: unknown, value: boolean, event?: Event) => void;
4507
+ select: (id: unknown, value: boolean, event?: Event) => void;
4508
+ openOnSelect: (id: unknown, value: boolean, event?: Event) => void;
4509
+ getPath: (id: unknown) => unknown[];
4510
+ };
4511
+ id: vue.ComputedRef<{} | null>;
4458
4512
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
4459
4513
  click: (e: MouseEvent | KeyboardEvent) => true;
4460
4514
  }, string, {
@@ -4783,6 +4837,7 @@ declare const VList: {
4783
4837
  focus: (location?: "next" | "prev" | "first" | "last") => void;
4784
4838
  children: vue.Ref<Map<unknown, unknown[]>>;
4785
4839
  parents: vue.Ref<Map<unknown, unknown>>;
4840
+ getPath: (id: unknown) => unknown[];
4786
4841
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Omit<{
4787
4842
  'update:selected': (value: unknown) => true;
4788
4843
  'update:activated': (value: unknown) => true;
@@ -4952,6 +5007,7 @@ declare const VList: {
4952
5007
  focus: (location?: "next" | "prev" | "first" | "last") => void;
4953
5008
  children: vue.Ref<Map<unknown, unknown[]>>;
4954
5009
  parents: vue.Ref<Map<unknown, unknown>>;
5010
+ getPath: (id: unknown) => unknown[];
4955
5011
  }, {}, {}, {}, {
4956
5012
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
4957
5013
  nav: boolean;
@@ -5027,6 +5083,7 @@ declare const VList: {
5027
5083
  focus: (location?: "next" | "prev" | "first" | "last") => void;
5028
5084
  children: vue.Ref<Map<unknown, unknown[]>>;
5029
5085
  parents: vue.Ref<Map<unknown, unknown>>;
5086
+ getPath: (id: unknown) => unknown[];
5030
5087
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Omit<{
5031
5088
  'update:selected': (value: unknown) => true;
5032
5089
  'update:activated': (value: unknown) => true;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.7.1-master.2024-08-29
2
+ * Vuetify v3.7.1-master.2024-09-02
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -8481,7 +8481,8 @@ const emptyNested = {
8481
8481
  opened: ref(new Set()),
8482
8482
  activated: ref(new Set()),
8483
8483
  selected: ref(new Map()),
8484
- selectedValues: ref([])
8484
+ selectedValues: ref([]),
8485
+ getPath: () => []
8485
8486
  }
8486
8487
  };
8487
8488
  const makeNestedProps = propsFactory({
@@ -8559,6 +8560,7 @@ const useNested = props => {
8559
8560
  return path;
8560
8561
  }
8561
8562
  const vm = getCurrentInstance('nested');
8563
+ const nodeIds = new Set();
8562
8564
  const nested = {
8563
8565
  id: shallowRef(),
8564
8566
  root: {
@@ -8575,6 +8577,14 @@ const useNested = props => {
8575
8577
  return arr;
8576
8578
  }),
8577
8579
  register: (id, parentId, isGroup) => {
8580
+ if (nodeIds.has(id)) {
8581
+ const path = getPath(id).join(' -> ');
8582
+ const newPath = getPath(parentId).concat(id).join(' -> ');
8583
+ consoleError(`Multiple nodes with the same ID\n\t${path}\n\t${newPath}`);
8584
+ return;
8585
+ } else {
8586
+ nodeIds.add(id);
8587
+ }
8578
8588
  parentId && id !== parentId && parents.value.set(id, parentId);
8579
8589
  isGroup && children.value.set(id, []);
8580
8590
  if (parentId != null) {
@@ -8583,6 +8593,7 @@ const useNested = props => {
8583
8593
  },
8584
8594
  unregister: id => {
8585
8595
  if (isUnmounted) return;
8596
+ nodeIds.delete(id);
8586
8597
  children.value.delete(id);
8587
8598
  const parent = parents.value.get(id);
8588
8599
  if (parent) {
@@ -8659,7 +8670,8 @@ const useNested = props => {
8659
8670
  newActivated && (activated.value = newActivated);
8660
8671
  },
8661
8672
  children,
8662
- parents
8673
+ parents,
8674
+ getPath
8663
8675
  }
8664
8676
  };
8665
8677
  provide(VNestedSymbol, nested);
@@ -8904,7 +8916,8 @@ const VListItem = genericComponent()({
8904
8916
  isGroupActivator,
8905
8917
  root,
8906
8918
  parent,
8907
- openOnSelect
8919
+ openOnSelect,
8920
+ id: uid
8908
8921
  } = useNestedItem(id, false);
8909
8922
  const list = useList();
8910
8923
  const isActive = computed(() => props.active !== false && (props.active || link.isActive?.value || (root.activatable.value ? isActivated.value : isSelected.value)));
@@ -9090,7 +9103,9 @@ const VListItem = genericComponent()({
9090
9103
  isGroupActivator,
9091
9104
  isSelected,
9092
9105
  list,
9093
- select
9106
+ select,
9107
+ root,
9108
+ id: uid
9094
9109
  };
9095
9110
  }
9096
9111
  });
@@ -9491,7 +9506,8 @@ const VList = genericComponent()({
9491
9506
  children,
9492
9507
  open,
9493
9508
  parents,
9494
- select
9509
+ select,
9510
+ getPath
9495
9511
  } = useNested(props);
9496
9512
  const lineClasses = computed(() => props.lines ? `v-list--${props.lines}-line` : undefined);
9497
9513
  const activeColor = toRef(props, 'activeColor');
@@ -9583,7 +9599,8 @@ const VList = genericComponent()({
9583
9599
  select,
9584
9600
  focus,
9585
9601
  children,
9586
- parents
9602
+ parents,
9603
+ getPath
9587
9604
  };
9588
9605
  }
9589
9606
  });
@@ -29560,25 +29577,13 @@ const VTreeviewItem = genericComponent()({
29560
29577
  emit
29561
29578
  } = _ref;
29562
29579
  const link = useLink(props, attrs);
29563
- const rawId = computed(() => props.value === undefined ? link.href.value : props.value);
29564
29580
  const vListItemRef = ref();
29565
- const {
29566
- activate,
29567
- isActivated,
29568
- isGroupActivator,
29569
- root,
29570
- id
29571
- } = useNestedItem(rawId, false);
29572
- const isActivatableGroupActivator = computed(() => root.activatable.value && isGroupActivator);
29581
+ const isActivatableGroupActivator = computed(() => vListItemRef.value?.root.activatable.value && vListItemRef.value?.isGroupActivator);
29573
29582
  const isClickable = computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value || props.value != null && !!vListItemRef.value?.list || isActivatableGroupActivator.value));
29574
29583
  function activateItem(e) {
29575
- if (!isClickable.value || !isActivatableGroupActivator.value && isGroupActivator) return;
29576
- if (root.activatable.value) {
29577
- if (isActivatableGroupActivator.value) {
29578
- activate(!isActivated.value, e);
29579
- } else {
29580
- vListItemRef.value?.activate(!vListItemRef.value?.isActivated, e);
29581
- }
29584
+ if (!isClickable.value || !isActivatableGroupActivator.value && vListItemRef.value?.isGroupActivator) return;
29585
+ if (vListItemRef.value?.root.activatable.value) {
29586
+ vListItemRef.value?.activate(!vListItemRef.value?.isActivated, e);
29582
29587
  }
29583
29588
  }
29584
29589
  const visibleIds = inject$1(VTreeviewSymbol, {
@@ -29587,11 +29592,13 @@ const VTreeviewItem = genericComponent()({
29587
29592
  useRender(() => {
29588
29593
  const listItemProps = omit(VListItem.filterProps(props), ['onClick']);
29589
29594
  const hasPrepend = slots.prepend || props.toggleIcon;
29590
- return createVNode(VListItem, mergeProps(listItemProps, {
29591
- "active": isActivated.value,
29595
+ return createVNode(VListItem, mergeProps({
29596
+ "ref": vListItemRef
29597
+ }, listItemProps, {
29598
+ "active": vListItemRef.value?.isActivated,
29592
29599
  "class": ['v-treeview-item', {
29593
29600
  'v-treeview-item--activatable-group-activator': isActivatableGroupActivator.value,
29594
- 'v-treeview-item--filtered': visibleIds.value && !visibleIds.value.has(id.value)
29601
+ 'v-treeview-item--filtered': visibleIds.value && !visibleIds.value.has(vListItemRef.value?.id)
29595
29602
  }, props.class],
29596
29603
  "ripple": false,
29597
29604
  "onClick": props.onClick ?? activateItem
@@ -29810,22 +29817,13 @@ const VTreeview = genericComponent()({
29810
29817
  filteredItems
29811
29818
  } = useFilter(props, flatItems, search);
29812
29819
  const visibleIds = computed(() => {
29813
- if (!search.value) {
29814
- return null;
29815
- }
29820
+ if (!search.value) return null;
29821
+ const getPath = vListRef.value?.getPath;
29822
+ if (!getPath) return null;
29816
29823
  return new Set(filteredItems.value.flatMap(item => {
29817
29824
  return [...getPath(item.props.value), ...getChildren(item.props.value)];
29818
29825
  }));
29819
29826
  });
29820
- function getPath(id) {
29821
- const path = [];
29822
- let parent = id;
29823
- while (parent != null) {
29824
- path.unshift(parent);
29825
- parent = vListRef.value?.parents.get(parent);
29826
- }
29827
- return path;
29828
- }
29829
29827
  function getChildren(id) {
29830
29828
  const arr = [];
29831
29829
  const queue = (vListRef.value?.children.get(id) ?? []).slice();
@@ -30390,7 +30388,7 @@ function createVuetify$1() {
30390
30388
  goTo
30391
30389
  };
30392
30390
  }
30393
- const version$1 = "3.7.1-master.2024-08-29";
30391
+ const version$1 = "3.7.1-master.2024-09-02";
30394
30392
  createVuetify$1.version = version$1;
30395
30393
 
30396
30394
  // Vue's inject() can only be used in setup
@@ -30643,7 +30641,7 @@ var index = /*#__PURE__*/Object.freeze({
30643
30641
 
30644
30642
  /* eslint-disable local-rules/sort-imports */
30645
30643
 
30646
- const version = "3.7.1-master.2024-08-29";
30644
+ const version = "3.7.1-master.2024-09-02";
30647
30645
 
30648
30646
  /* eslint-disable local-rules/sort-imports */
30649
30647