@vuetify/nightly 3.6.4-master.2024-05-10 → 3.6.5-master.2024-05-12

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 (60) hide show
  1. package/CHANGELOG.md +4 -9
  2. package/dist/_component-variables-labs.sass +1 -0
  3. package/dist/json/attributes.json +268 -4
  4. package/dist/json/importMap-labs.json +18 -6
  5. package/dist/json/importMap.json +138 -138
  6. package/dist/json/tags.json +81 -0
  7. package/dist/json/web-types.json +1253 -6
  8. package/dist/vuetify-labs.css +2350 -2542
  9. package/dist/vuetify-labs.d.ts +1615 -28
  10. package/dist/vuetify-labs.esm.js +298 -11
  11. package/dist/vuetify-labs.esm.js.map +1 -1
  12. package/dist/vuetify-labs.js +298 -11
  13. package/dist/vuetify-labs.min.css +3 -3
  14. package/dist/vuetify.css +4466 -4726
  15. package/dist/vuetify.d.ts +94 -70
  16. package/dist/vuetify.esm.js +38 -11
  17. package/dist/vuetify.esm.js.map +1 -1
  18. package/dist/vuetify.js +38 -11
  19. package/dist/vuetify.js.map +1 -1
  20. package/dist/vuetify.min.css +3 -3
  21. package/dist/vuetify.min.js +47 -48
  22. package/dist/vuetify.min.js.map +1 -1
  23. package/lib/components/VBtn/index.d.mts +2 -0
  24. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +3 -1
  25. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  26. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +15 -4
  27. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  28. package/lib/components/VExpansionPanel/index.d.mts +82 -27
  29. package/lib/components/VSlideGroup/index.d.mts +2 -0
  30. package/lib/components/VStepper/VStepper.mjs +5 -2
  31. package/lib/components/VStepper/VStepper.mjs.map +1 -1
  32. package/lib/components/VStepper/VStepperItem.mjs +5 -2
  33. package/lib/components/VStepper/VStepperItem.mjs.map +1 -1
  34. package/lib/components/VStepper/index.d.mts +1 -1
  35. package/lib/components/VTabs/index.d.mts +2 -0
  36. package/lib/components/VWindow/index.d.mts +2 -0
  37. package/lib/components/index.d.mts +48 -27
  38. package/lib/composables/group.mjs +8 -0
  39. package/lib/composables/group.mjs.map +1 -1
  40. package/lib/entry-bundler.mjs +1 -1
  41. package/lib/framework.mjs +1 -1
  42. package/lib/index.d.mts +46 -43
  43. package/lib/labs/VStepperVertical/VStepperVertical.mjs +106 -0
  44. package/lib/labs/VStepperVertical/VStepperVertical.mjs.map +1 -0
  45. package/lib/labs/VStepperVertical/VStepperVerticalActions.mjs +38 -0
  46. package/lib/labs/VStepperVertical/VStepperVerticalActions.mjs.map +1 -0
  47. package/lib/labs/VStepperVertical/VStepperVerticalItem.css +69 -0
  48. package/lib/labs/VStepperVertical/VStepperVerticalItem.mjs +134 -0
  49. package/lib/labs/VStepperVertical/VStepperVerticalItem.mjs.map +1 -0
  50. package/lib/labs/VStepperVertical/VStepperVerticalItem.sass +74 -0
  51. package/lib/labs/VStepperVertical/_variables.scss +3 -0
  52. package/lib/labs/VStepperVertical/index.d.mts +1590 -0
  53. package/lib/labs/VStepperVertical/index.mjs +4 -0
  54. package/lib/labs/VStepperVertical/index.mjs.map +1 -0
  55. package/lib/labs/components.d.mts +1599 -20
  56. package/lib/labs/components.mjs +1 -0
  57. package/lib/labs/components.mjs.map +1 -1
  58. package/lib/styles/generic/_colors.scss +0 -1
  59. package/lib/styles/main.css +0 -260
  60. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.6.4-master.2024-05-10
2
+ * Vuetify v3.6.5-master.2024-05-12
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -4133,6 +4133,12 @@ function useGroupItem(props, injectKey) {
4133
4133
  const isSelected = computed(() => {
4134
4134
  return group.isSelected(id);
4135
4135
  });
4136
+ const isFirst = computed(() => {
4137
+ return group.items.value[0].id === id;
4138
+ });
4139
+ const isLast = computed(() => {
4140
+ return group.items.value[group.items.value.length - 1].id === id;
4141
+ });
4136
4142
  const selectedClass = computed(() => isSelected.value && [group.selectedClass.value, props.selectedClass]);
4137
4143
  watch(isSelected, value => {
4138
4144
  vm.emit('group:selected', {
@@ -4144,6 +4150,8 @@ function useGroupItem(props, injectKey) {
4144
4150
  return {
4145
4151
  id,
4146
4152
  isSelected,
4153
+ isFirst,
4154
+ isLast,
4147
4155
  toggle: () => group.select(id, !isSelected.value),
4148
4156
  select: value => group.select(id, value),
4149
4157
  selectedClass,
@@ -22371,7 +22379,9 @@ const VExpansionPanel = genericComponent()({
22371
22379
  }), slots.default?.()]
22372
22380
  });
22373
22381
  });
22374
- return {};
22382
+ return {
22383
+ groupItem
22384
+ };
22375
22385
  }
22376
22386
  });
22377
22387
 
@@ -22400,7 +22410,10 @@ const VExpansionPanels = genericComponent()({
22400
22410
  let {
22401
22411
  slots
22402
22412
  } = _ref;
22403
- useGroup(props, VExpansionPanelSymbol);
22413
+ const {
22414
+ next,
22415
+ prev
22416
+ } = useGroup(props, VExpansionPanelSymbol);
22404
22417
  const {
22405
22418
  themeClasses
22406
22419
  } = provideTheme(props);
@@ -22427,8 +22440,16 @@ const VExpansionPanels = genericComponent()({
22427
22440
  'v-expansion-panels--tile': props.tile
22428
22441
  }, themeClasses.value, variantClass.value, props.class],
22429
22442
  "style": props.style
22430
- }, slots));
22431
- return {};
22443
+ }, {
22444
+ default: () => [slots.default?.({
22445
+ prev,
22446
+ next
22447
+ })]
22448
+ }));
22449
+ return {
22450
+ next,
22451
+ prev
22452
+ };
22432
22453
  }
22433
22454
  });
22434
22455
 
@@ -25791,7 +25812,7 @@ const VStepperHeader = createSimpleFunctional('v-stepper-header');
25791
25812
 
25792
25813
  // Types
25793
25814
 
25794
- const makeVStepperItemProps = propsFactory({
25815
+ const makeStepperItemProps = propsFactory({
25795
25816
  color: String,
25796
25817
  title: String,
25797
25818
  subtitle: String,
@@ -25818,7 +25839,10 @@ const makeVStepperItemProps = propsFactory({
25818
25839
  rules: {
25819
25840
  type: Array,
25820
25841
  default: () => []
25821
- },
25842
+ }
25843
+ }, 'StepperItem');
25844
+ const makeVStepperItemProps = propsFactory({
25845
+ ...makeStepperItemProps(),
25822
25846
  ...makeGroupItemProps()
25823
25847
  }, 'VStepperItem');
25824
25848
  const VStepperItem = genericComponent()({
@@ -25969,7 +25993,7 @@ const VStepperWindowItem = genericComponent()({
25969
25993
  // Types
25970
25994
 
25971
25995
  const VStepperSymbol = Symbol.for('vuetify:v-stepper');
25972
- const makeVStepperProps = propsFactory({
25996
+ const makeStepperProps = propsFactory({
25973
25997
  altLabels: Boolean,
25974
25998
  bgColor: String,
25975
25999
  editable: Boolean,
@@ -25988,7 +26012,10 @@ const makeVStepperProps = propsFactory({
25988
26012
  },
25989
26013
  mobile: Boolean,
25990
26014
  nonLinear: Boolean,
25991
- flat: Boolean,
26015
+ flat: Boolean
26016
+ }, 'Stepper');
26017
+ const makeVStepperProps = propsFactory({
26018
+ ...makeStepperProps(),
25992
26019
  ...makeGroupProps({
25993
26020
  mandatory: 'force',
25994
26021
  selectedClass: 'v-stepper-item--selected'
@@ -28088,6 +28115,263 @@ const VNumberInput = genericComponent()({
28088
28115
  }
28089
28116
  });
28090
28117
 
28118
+ // Types
28119
+
28120
+ const makeVStepperVerticalActionsProps = propsFactory({
28121
+ ...makeVStepperActionsProps()
28122
+ }, 'VStepperActions');
28123
+ const VStepperVerticalActions = genericComponent()({
28124
+ name: 'VStepperVerticalActions',
28125
+ props: makeVStepperVerticalActionsProps(),
28126
+ emits: {
28127
+ 'click:prev': () => true,
28128
+ 'click:next': () => true
28129
+ },
28130
+ setup(props, _ref) {
28131
+ let {
28132
+ emit,
28133
+ slots
28134
+ } = _ref;
28135
+ function onClickPrev() {
28136
+ emit('click:prev');
28137
+ }
28138
+ function onClickNext() {
28139
+ emit('click:next');
28140
+ }
28141
+ useRender(() => {
28142
+ const stepperActionsProps = VStepperActions.filterProps(props);
28143
+ return createVNode(VStepperActions, mergeProps({
28144
+ "class": "v-stepper-vertical-actions"
28145
+ }, stepperActionsProps, {
28146
+ "onClick:prev": onClickPrev,
28147
+ "onClick:next": onClickNext
28148
+ }), slots);
28149
+ });
28150
+ return {};
28151
+ }
28152
+ });
28153
+
28154
+ // Types
28155
+
28156
+ const makeVStepperVerticalItemProps = propsFactory({
28157
+ hideActions: Boolean,
28158
+ ...makeStepperItemProps(),
28159
+ ...omit(makeVExpansionPanelProps({
28160
+ expandIcon: '',
28161
+ collapseIcon: ''
28162
+ }), ['hideActions'])
28163
+ }, 'VStepperVerticalItem');
28164
+ const VStepperVerticalItem = genericComponent()({
28165
+ name: 'VStepperVerticalItem',
28166
+ props: makeVStepperVerticalItemProps(),
28167
+ emits: {
28168
+ 'click:next': () => true,
28169
+ 'click:prev': () => true,
28170
+ 'click:finish': () => true
28171
+ },
28172
+ setup(props, _ref) {
28173
+ let {
28174
+ emit,
28175
+ slots
28176
+ } = _ref;
28177
+ const vExpansionPanelRef = ref();
28178
+ const step = computed(() => !isNaN(parseInt(props.value)) ? Number(props.value) : props.value);
28179
+ const groupItem = computed(() => vExpansionPanelRef.value?.groupItem);
28180
+ const isSelected = computed(() => groupItem.value?.isSelected.value ?? false);
28181
+ const isValid = computed(() => isSelected.value ? props.rules.every(handler => handler() === true) : null);
28182
+ const canEdit = computed(() => !props.disabled && props.editable);
28183
+ const hasError = computed(() => props.error || isSelected.value && !isValid.value);
28184
+ const hasCompleted = computed(() => props.complete || props.rules.length > 0 && isValid.value === true);
28185
+ const disabled = computed(() => {
28186
+ if (props.disabled) return props.disabled;
28187
+ if (groupItem.value?.isFirst.value) return 'prev';
28188
+ return false;
28189
+ });
28190
+ const icon = computed(() => {
28191
+ if (hasError.value) return props.errorIcon;
28192
+ if (hasCompleted.value) return props.completeIcon;
28193
+ if (groupItem.value?.isSelected.value && props.editable) return props.editIcon;
28194
+ return props.icon;
28195
+ });
28196
+ const slotProps = computed(() => ({
28197
+ canEdit: canEdit.value,
28198
+ hasError: hasError.value,
28199
+ hasCompleted: hasCompleted.value,
28200
+ title: props.title,
28201
+ subtitle: props.subtitle,
28202
+ step: step.value,
28203
+ value: props.value
28204
+ }));
28205
+ const actionProps = computed(() => ({
28206
+ ...slotProps.value,
28207
+ prev: onClickPrev,
28208
+ next: onClickNext
28209
+ }));
28210
+ function onClickNext() {
28211
+ emit('click:next');
28212
+ if (groupItem.value?.isLast.value) return;
28213
+ groupItem.value.group.next();
28214
+ }
28215
+ function onClickPrev() {
28216
+ emit('click:prev');
28217
+ groupItem.value.group.prev();
28218
+ }
28219
+ useRender(() => {
28220
+ const hasColor = (hasCompleted.value || groupItem.value?.isSelected.value) && !hasError.value && !props.disabled;
28221
+ const hasActions = !props.hideActions || !!slots.actions;
28222
+ const expansionPanelProps = VExpansionPanel.filterProps(props);
28223
+ return createVNode(VExpansionPanel, mergeProps({
28224
+ "_as": "VStepperVerticalItem",
28225
+ "ref": vExpansionPanelRef
28226
+ }, expansionPanelProps, {
28227
+ "class": ['v-stepper-vertical-item', {
28228
+ 'v-stepper-vertical-item--complete': hasCompleted.value,
28229
+ 'v-stepper-vertical-item--disabled': props.disabled,
28230
+ 'v-stepper-vertical-item--editable': canEdit.value,
28231
+ 'v-stepper-vertical-item--error': hasError.value
28232
+ }, props.class],
28233
+ "readonly": !props.editable,
28234
+ "style": props.style,
28235
+ "color": "",
28236
+ "hide-actions": false,
28237
+ "value": step.value
28238
+ }), {
28239
+ title: () => createVNode(Fragment, null, [createVNode(VAvatar, {
28240
+ "key": "stepper-avatar",
28241
+ "class": "v-stepper-vertical-item__avatar",
28242
+ "color": hasColor ? props.color : undefined,
28243
+ "size": 24,
28244
+ "start": true
28245
+ }, {
28246
+ default: () => [slots.icon?.(slotProps.value) ?? (icon.value ? createVNode(VIcon, {
28247
+ "icon": icon.value
28248
+ }, null) : step.value)]
28249
+ }), createVNode("div", null, [createVNode("div", {
28250
+ "class": "v-stepper-vertical-item__title"
28251
+ }, [slots.title?.(slotProps.value) ?? props.title]), createVNode("div", {
28252
+ "class": "v-stepper-vertical-item__subtitle"
28253
+ }, [slots.subtitle?.(slotProps.value) ?? props.subtitle])])]),
28254
+ text: () => createVNode(Fragment, null, [slots.default?.(slotProps.value) ?? props.text, hasActions && createVNode(VDefaultsProvider, {
28255
+ "defaults": {
28256
+ VStepperVerticalActions: {
28257
+ disabled: disabled.value,
28258
+ finish: groupItem.value?.isLast.value
28259
+ }
28260
+ }
28261
+ }, {
28262
+ default: () => [slots.actions?.(actionProps.value) ?? createVNode(VStepperVerticalActions, {
28263
+ "onClick:next": onClickNext,
28264
+ "onClick:prev": onClickPrev
28265
+ }, {
28266
+ prev: slots.prev ? () => slots.prev?.(actionProps.value) : undefined,
28267
+ next: slots.next ? () => slots.next?.(actionProps.value) : undefined
28268
+ })]
28269
+ })])
28270
+ });
28271
+ });
28272
+ return {};
28273
+ }
28274
+ });
28275
+
28276
+ // Types
28277
+
28278
+ const makeVStepperVerticalProps = propsFactory({
28279
+ prevText: {
28280
+ type: String,
28281
+ default: '$vuetify.stepper.prev'
28282
+ },
28283
+ nextText: {
28284
+ type: String,
28285
+ default: '$vuetify.stepper.next'
28286
+ },
28287
+ ...makeStepperProps(),
28288
+ ...omit(makeVExpansionPanelsProps({
28289
+ mandatory: 'force',
28290
+ variant: 'accordion'
28291
+ }), ['static'])
28292
+ }, 'VStepperVertical');
28293
+ const VStepperVertical = genericComponent()({
28294
+ name: 'VStepperVertical',
28295
+ props: makeVStepperVerticalProps(),
28296
+ emits: {
28297
+ 'update:modelValue': val => true
28298
+ },
28299
+ setup(props, _ref) {
28300
+ let {
28301
+ slots
28302
+ } = _ref;
28303
+ const vExpansionPanelsRef = ref();
28304
+ const {
28305
+ color,
28306
+ editable,
28307
+ prevText,
28308
+ nextText,
28309
+ hideActions
28310
+ } = toRefs(props);
28311
+ const model = useProxiedModel(props, 'modelValue');
28312
+ const items = computed(() => props.items.map((item, index) => {
28313
+ const title = getPropertyFromItem(item, props.itemTitle, item);
28314
+ const value = getPropertyFromItem(item, props.itemValue, index + 1);
28315
+ return {
28316
+ title,
28317
+ value,
28318
+ raw: item
28319
+ };
28320
+ }));
28321
+ provideDefaults({
28322
+ VStepperVerticalItem: {
28323
+ color,
28324
+ editable,
28325
+ prevText,
28326
+ nextText,
28327
+ hideActions,
28328
+ static: true
28329
+ },
28330
+ VStepperActions: {
28331
+ color
28332
+ }
28333
+ });
28334
+ useRender(() => {
28335
+ const expansionPanelProps = VExpansionPanels.filterProps(props);
28336
+ return createVNode(VExpansionPanels, mergeProps(expansionPanelProps, {
28337
+ "modelValue": model.value,
28338
+ "onUpdate:modelValue": $event => model.value = $event,
28339
+ "ref": vExpansionPanelsRef,
28340
+ "class": ['v-stepper', {
28341
+ 'v-stepper--alt-labels': props.altLabels,
28342
+ 'v-stepper--flat': props.flat,
28343
+ 'v-stepper--non-linear': props.nonLinear,
28344
+ 'v-stepper--mobile': props.mobile
28345
+ }, props.class],
28346
+ "style": props.style
28347
+ }), {
28348
+ ...slots,
28349
+ default: _ref2 => {
28350
+ let {
28351
+ prev,
28352
+ next
28353
+ } = _ref2;
28354
+ return createVNode(Fragment, null, [items.value.map(_ref3 => {
28355
+ let {
28356
+ raw,
28357
+ ...item
28358
+ } = _ref3;
28359
+ return createVNode(VStepperVerticalItem, item, {
28360
+ ...slots,
28361
+ default: slots[`item.${item.value}`]
28362
+ });
28363
+ }), slots.default?.({
28364
+ prev,
28365
+ next,
28366
+ step: model.value
28367
+ })]);
28368
+ }
28369
+ });
28370
+ });
28371
+ return {};
28372
+ }
28373
+ });
28374
+
28091
28375
  const VPullToRefresh = genericComponent()({
28092
28376
  name: 'VPullToRefresh',
28093
28377
  props: {
@@ -29448,6 +29732,9 @@ var components = /*#__PURE__*/Object.freeze({
29448
29732
  VStepperActions: VStepperActions,
29449
29733
  VStepperHeader: VStepperHeader,
29450
29734
  VStepperItem: VStepperItem,
29735
+ VStepperVertical: VStepperVertical,
29736
+ VStepperVerticalActions: VStepperVerticalActions,
29737
+ VStepperVerticalItem: VStepperVerticalItem,
29451
29738
  VStepperWindow: VStepperWindow,
29452
29739
  VStepperWindowItem: VStepperWindowItem,
29453
29740
  VSvgIcon: VSvgIcon,
@@ -29785,7 +30072,7 @@ function createVuetify$1() {
29785
30072
  goTo
29786
30073
  };
29787
30074
  }
29788
- const version$1 = "3.6.4-master.2024-05-10";
30075
+ const version$1 = "3.6.5-master.2024-05-12";
29789
30076
  createVuetify$1.version = version$1;
29790
30077
 
29791
30078
  // Vue's inject() can only be used in setup
@@ -30038,7 +30325,7 @@ var index = /*#__PURE__*/Object.freeze({
30038
30325
 
30039
30326
  /* eslint-disable local-rules/sort-imports */
30040
30327
 
30041
- const version = "3.6.4-master.2024-05-10";
30328
+ const version = "3.6.5-master.2024-05-12";
30042
30329
 
30043
30330
  /* eslint-disable local-rules/sort-imports */
30044
30331