vuetify 3.3.4 → 3.3.6

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 (94) hide show
  1. package/dist/json/attributes.json +4 -12
  2. package/dist/json/importMap.json +20 -20
  3. package/dist/json/tags.json +0 -2
  4. package/dist/json/web-types.json +7 -27
  5. package/dist/vuetify-labs.css +49 -27
  6. package/dist/vuetify-labs.d.ts +36 -98
  7. package/dist/vuetify-labs.esm.js +85 -53
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +85 -53
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +66 -43
  12. package/dist/vuetify.d.ts +5 -5
  13. package/dist/vuetify.esm.js +43 -34
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +43 -34
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +21 -22
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/components/VAppBar/VAppBar.mjs +12 -9
  21. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  22. package/lib/components/VAutocomplete/VAutocomplete.css +12 -4
  23. package/lib/components/VAutocomplete/VAutocomplete.sass +17 -9
  24. package/lib/components/VAutocomplete/_variables.scss +1 -0
  25. package/lib/components/VBreadcrumbs/VBreadcrumbs.css +4 -0
  26. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +1 -1
  27. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  28. package/lib/components/VBreadcrumbs/VBreadcrumbs.sass +4 -0
  29. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +8 -7
  30. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  31. package/lib/components/VBtn/VBtn.css +1 -1
  32. package/lib/components/VBtn/VBtn.sass +1 -1
  33. package/lib/components/VCombobox/VCombobox.css +12 -4
  34. package/lib/components/VCombobox/VCombobox.sass +17 -9
  35. package/lib/components/VCombobox/_variables.scss +1 -0
  36. package/lib/components/VFooter/VFooter.mjs +4 -2
  37. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  38. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +1 -1
  39. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  40. package/lib/components/VOverlay/VOverlay.mjs +1 -1
  41. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  42. package/lib/components/VSelect/VSelect.css +4 -3
  43. package/lib/components/VSelect/VSelect.sass +10 -12
  44. package/lib/components/VSlider/VSliderThumb.mjs +6 -2
  45. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  46. package/lib/components/VTextField/VTextField.css +2 -0
  47. package/lib/components/VTextField/VTextField.mjs +2 -4
  48. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  49. package/lib/components/VTextField/VTextField.sass +3 -1
  50. package/lib/composables/validation.mjs +2 -2
  51. package/lib/composables/validation.mjs.map +1 -1
  52. package/lib/composables/virtual.mjs +7 -5
  53. package/lib/composables/virtual.mjs.map +1 -1
  54. package/lib/entry-bundler.mjs +1 -1
  55. package/lib/framework.mjs +1 -1
  56. package/lib/iconsets/fa.mjs +2 -2
  57. package/lib/iconsets/fa.mjs.map +1 -1
  58. package/lib/iconsets/fa4.mjs +2 -2
  59. package/lib/iconsets/fa4.mjs.map +1 -1
  60. package/lib/index.d.mts +5 -5
  61. package/lib/labs/VDataTable/composables/sort.mjs +4 -1
  62. package/lib/labs/VDataTable/composables/sort.mjs.map +1 -1
  63. package/lib/labs/VDatePicker/VDatePicker.css +3 -5
  64. package/lib/labs/VDatePicker/VDatePicker.mjs +12 -10
  65. package/lib/labs/VDatePicker/VDatePicker.mjs.map +1 -1
  66. package/lib/labs/VDatePicker/VDatePicker.sass +3 -5
  67. package/lib/labs/VDatePicker/VDatePickerControls.css +3 -1
  68. package/lib/labs/VDatePicker/VDatePickerControls.mjs +1 -1
  69. package/lib/labs/VDatePicker/VDatePickerControls.mjs.map +1 -1
  70. package/lib/labs/VDatePicker/VDatePickerControls.sass +3 -3
  71. package/lib/labs/VDatePicker/VDatePickerMonth.css +0 -1
  72. package/lib/labs/VDatePicker/VDatePickerMonth.mjs +0 -5
  73. package/lib/labs/VDatePicker/VDatePickerMonth.mjs.map +1 -1
  74. package/lib/labs/VDatePicker/VDatePickerMonth.sass +0 -1
  75. package/lib/labs/VDatePicker/VDatePickerTitle.sass +1 -1
  76. package/lib/labs/VDatePicker/VDatePickerYears.css +1 -1
  77. package/lib/labs/VDatePicker/VDatePickerYears.sass +1 -1
  78. package/lib/labs/VDatePicker/_variables.scss +0 -5
  79. package/lib/labs/VDatePicker/index.d.mts +36 -98
  80. package/lib/labs/VDateRangePicker/index.d.mts +34 -44
  81. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +24 -4
  82. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
  83. package/lib/labs/VPicker/VPicker.css +1 -1
  84. package/lib/labs/VPicker/VPicker.sass +1 -1
  85. package/lib/labs/VPicker/_variables.scss +2 -2
  86. package/lib/labs/components.d.mts +36 -98
  87. package/lib/util/helpers.mjs +3 -0
  88. package/lib/util/helpers.mjs.map +1 -1
  89. package/lib/util/injectSelf.mjs +1 -0
  90. package/lib/util/injectSelf.mjs.map +1 -1
  91. package/package.json +2 -2
  92. package/lib/labs/VDatePicker/VDatePickerTable.sass +0 -84
  93. package/lib/labs/VDatePicker/mixins/date-picker-table.mjs +0 -210
  94. package/lib/labs/VDatePicker/mixins/date-picker-table.mjs.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.3.4
2
+ * Vuetify v3.3.6
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -428,6 +428,9 @@ function focusChild(el, location) {
428
428
  if (_el) _el.focus();else focusChild(el, location === 'next' ? 'first' : 'last');
429
429
  }
430
430
  }
431
+ function isEmpty(val) {
432
+ return val === null || val === undefined || typeof val === 'string' && val.trim() === '';
433
+ }
431
434
  function noop() {}
432
435
 
433
436
  // Utilities
@@ -1290,6 +1293,7 @@ function injectSelf(key) {
1290
1293
  // TS doesn't allow symbol as index type
1291
1294
  return provides[key];
1292
1295
  }
1296
+ return undefined;
1293
1297
  }
1294
1298
 
1295
1299
  function isFixedPosition(el) {
@@ -3640,16 +3644,18 @@ const VAppBar = genericComponent()({
3640
3644
  const extensionHeight = vToolbarRef.value?.extensionHeight ?? 0;
3641
3645
  return height + extensionHeight;
3642
3646
  });
3643
- watchEffect(() => {
3644
- if (scrollBehavior.value.hide) {
3645
- if (scrollBehavior.value.inverted) {
3646
- isActive.value = currentScroll.value > scrollThreshold.value;
3647
+ useToggleScope(computed(() => !!props.scrollBehavior), () => {
3648
+ watchEffect(() => {
3649
+ if (scrollBehavior.value.hide) {
3650
+ if (scrollBehavior.value.inverted) {
3651
+ isActive.value = currentScroll.value > scrollThreshold.value;
3652
+ } else {
3653
+ isActive.value = isScrollingUp.value || currentScroll.value < scrollThreshold.value;
3654
+ }
3647
3655
  } else {
3648
- isActive.value = isScrollingUp.value || currentScroll.value < scrollThreshold.value;
3656
+ isActive.value = true;
3649
3657
  }
3650
- } else {
3651
- isActive.value = true;
3652
- }
3658
+ });
3653
3659
  });
3654
3660
  const {
3655
3661
  ssrBootStyles
@@ -6281,12 +6287,12 @@ function useValidation(props) {
6281
6287
  const handler = typeof rule === 'function' ? rule : () => rule;
6282
6288
  const result = await handler(validationModel.value);
6283
6289
  if (result === true) continue;
6284
- if (typeof result !== 'string') {
6290
+ if (result !== false && typeof result !== 'string') {
6285
6291
  // eslint-disable-next-line no-console
6286
6292
  console.warn(`${result} is not a valid value. Rule functions must return boolean true or a string.`);
6287
6293
  continue;
6288
6294
  }
6289
- results.push(result);
6295
+ results.push(result || '');
6290
6296
  }
6291
6297
  internalErrorMessages.value = results;
6292
6298
  isValidating.value = false;
@@ -9421,7 +9427,7 @@ const makeVOverlayProps = propsFactory({
9421
9427
  modelValue: Boolean,
9422
9428
  persistent: Boolean,
9423
9429
  scrim: {
9424
- type: [String, Boolean],
9430
+ type: [Boolean, String],
9425
9431
  default: true
9426
9432
  },
9427
9433
  zIndex: {
@@ -10355,12 +10361,10 @@ const VTextField = genericComponent()({
10355
10361
  }]]);
10356
10362
  return createVNode(Fragment, null, [props.prefix && createVNode("span", {
10357
10363
  "class": "v-text-field__prefix"
10358
- }, [props.prefix]), slots.default ? createVNode("div", {
10364
+ }, [props.prefix]), createVNode("div", {
10359
10365
  "class": fieldClass,
10360
10366
  "data-no-activator": ""
10361
- }, [slots.default(), inputNode]) : cloneVNode(inputNode, {
10362
- class: fieldClass
10363
- }), props.suffix && createVNode("span", {
10367
+ }, [slots.default ? createVNode(Fragment, null, [slots.default(), inputNode]) : cloneVNode(inputNode)]), props.suffix && createVNode("span", {
10364
10368
  "class": "v-text-field__suffix"
10365
10369
  }, [props.suffix])]);
10366
10370
  }
@@ -11596,20 +11600,21 @@ const VBreadcrumbsItem = genericComponent()({
11596
11600
  textColorStyles
11597
11601
  } = useTextColor(color);
11598
11602
  useRender(() => {
11599
- const Tag = link.isLink.value ? 'a' : props.tag;
11600
- return createVNode(Tag, {
11603
+ return createVNode(props.tag, {
11601
11604
  "class": ['v-breadcrumbs-item', {
11602
11605
  'v-breadcrumbs-item--active': isActive.value,
11603
11606
  'v-breadcrumbs-item--disabled': props.disabled,
11604
- 'v-breadcrumbs-item--link': link.isLink.value,
11605
11607
  [`${props.activeClass}`]: isActive.value && props.activeClass
11606
11608
  }, textColorClasses.value, props.class],
11607
11609
  "style": [textColorStyles.value, props.style],
11608
- "href": link.href.value,
11609
- "aria-current": isActive.value ? 'page' : undefined,
11610
- "onClick": link.navigate
11610
+ "aria-current": isActive.value ? 'page' : undefined
11611
11611
  }, {
11612
- default: () => [slots.default?.() ?? props.title]
11612
+ default: () => [!link.isLink.value ? slots.default?.() ?? props.title : createVNode("a", {
11613
+ "class": "v-breadcrumbs-item--link",
11614
+ "href": link.href.value,
11615
+ "aria-current": isActive.value ? 'page' : undefined,
11616
+ "onClick": link.navigate
11617
+ }, [slots.default?.() ?? props.title])]
11613
11618
  });
11614
11619
  });
11615
11620
  return {};
@@ -11685,7 +11690,7 @@ const VBreadcrumbs = genericComponent()({
11685
11690
  "class": ['v-breadcrumbs', backgroundColorClasses.value, densityClasses.value, roundedClasses.value, props.class],
11686
11691
  "style": [backgroundColorStyles.value, props.style]
11687
11692
  }, {
11688
- default: () => [hasPrepend && createVNode("div", {
11693
+ default: () => [hasPrepend && createVNode("li", {
11689
11694
  "key": "prepend",
11690
11695
  "class": "v-breadcrumbs__prepend"
11691
11696
  }, [!slots.prepend ? createVNode(VIcon, {
@@ -13297,6 +13302,9 @@ const VSliderThumb = genericComponent()({
13297
13302
  emit
13298
13303
  } = _ref;
13299
13304
  const slider = inject$1(VSliderSymbol);
13305
+ const {
13306
+ rtlClasses
13307
+ } = useRtl();
13300
13308
  if (!slider) throw new Error('[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider');
13301
13309
  const {
13302
13310
  thumbColor,
@@ -13364,7 +13372,7 @@ const VSliderThumb = genericComponent()({
13364
13372
  "class": ['v-slider-thumb', {
13365
13373
  'v-slider-thumb--focused': props.focused,
13366
13374
  'v-slider-thumb--pressed': props.focused && mousePressed.value
13367
- }, props.class],
13375
+ }, props.class, rtlClasses.value],
13368
13376
  "style": [{
13369
13377
  '--v-slider-thumb-position': positionPercentage,
13370
13378
  '--v-slider-thumb-size': convertToUnit(thumbSize.value)
@@ -15347,7 +15355,9 @@ const VFooter = genericComponent()({
15347
15355
  useRender(() => createVNode(props.tag, {
15348
15356
  "ref": resizeRef,
15349
15357
  "class": ['v-footer', themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value, props.class],
15350
- "style": [backgroundColorStyles.value, props.app ? layoutItemStyles.value : undefined, props.style]
15358
+ "style": [backgroundColorStyles.value, props.app ? layoutItemStyles.value : {
15359
+ height: convertToUnit(props.height)
15360
+ }, props.style]
15351
15361
  }, slots));
15352
15362
  return {};
15353
15363
  }
@@ -16310,7 +16320,7 @@ const makeVNavigationDrawerProps = propsFactory({
16310
16320
  default: 56
16311
16321
  },
16312
16322
  scrim: {
16313
- type: [String, Boolean],
16323
+ type: [Boolean, String],
16314
16324
  default: true
16315
16325
  },
16316
16326
  image: String,
@@ -19104,12 +19114,14 @@ function useVirtual(props, items, offset) {
19104
19114
  const direction = scrollTop < lastScrollTop ? UP : DOWN;
19105
19115
  const midPointIndex = calculateMidPointIndex(scrollTop + height / 2);
19106
19116
  const buffer = Math.round(visibleItems.value / 3);
19107
- if (direction === UP && midPointIndex <= first.value + buffer * 2 - 1) {
19108
- first.value = clamp(midPointIndex - buffer, 0, items.value.length);
19109
- } else if (direction === DOWN && midPointIndex >= first.value + buffer * 2 - 1) {
19110
- first.value = clamp(midPointIndex - buffer, 0, items.value.length - visibleItems.value);
19117
+ const firstIndex = midPointIndex - buffer;
19118
+ const lastIndex = first.value + buffer * 2 - 1;
19119
+ if (direction === UP && midPointIndex <= lastIndex) {
19120
+ first.value = clamp(firstIndex, 0, items.value.length);
19121
+ } else if (direction === DOWN && midPointIndex >= lastIndex) {
19122
+ first.value = clamp(firstIndex, 0, items.value.length - visibleItems.value);
19111
19123
  }
19112
- lastScrollTop = containerRef.value.scrollTop;
19124
+ lastScrollTop = scrollTop;
19113
19125
  }
19114
19126
  function scrollToIndex(index) {
19115
19127
  if (!containerRef.value) return;
@@ -19895,6 +19907,9 @@ function sortItems(items, sortByItems, locale, customSorters) {
19895
19907
  }
19896
19908
  [sortA, sortB] = [sortA, sortB].map(s => s != null ? s.toString().toLocaleLowerCase() : s);
19897
19909
  if (sortA !== sortB) {
19910
+ if (isEmpty(sortA) && isEmpty(sortB)) return 0;
19911
+ if (isEmpty(sortA)) return -1;
19912
+ if (isEmpty(sortB)) return 1;
19898
19913
  if (!isNaN(sortA) && !isNaN(sortB)) return Number(sortA) - Number(sortB);
19899
19914
  return stringCollator.compare(sortA, sortB);
19900
19915
  }
@@ -21928,7 +21943,7 @@ const makeVDatePickerControlsProps = propsFactory({
21928
21943
  },
21929
21944
  range: {
21930
21945
  default: false,
21931
- type: [String, Boolean],
21946
+ type: [Boolean, String],
21932
21947
  validator: v => v === false || ['start', 'end'].includes(v)
21933
21948
  },
21934
21949
  ...omit(makeDateProps(), ['modelValue', 'inputMode'])
@@ -22015,11 +22030,6 @@ const makeVDatePickerMonthProps = propsFactory({
22015
22030
  showAdjacentMonths: Boolean,
22016
22031
  hideWeekdays: Boolean,
22017
22032
  showWeek: Boolean,
22018
- range: {
22019
- default: false,
22020
- type: [String, Boolean],
22021
- validator: v => typeof v === 'boolean' || ['start', 'end'].includes(v)
22022
- },
22023
22033
  hoverDate: null,
22024
22034
  multiple: Boolean,
22025
22035
  side: {
@@ -22576,9 +22586,6 @@ const makeVDatePickerProps = propsFactory({
22576
22586
  },
22577
22587
  hideActions: Boolean,
22578
22588
  ...makeDateProps(),
22579
- ...makeTransitionProps({
22580
- transition: 'fade'
22581
- }),
22582
22589
  ...makeVDatePickerControlsProps(),
22583
22590
  ...makeVDatePickerMonthProps(),
22584
22591
  ...makeVDatePickerYearsProps(),
@@ -22625,7 +22632,9 @@ const VDatePicker = genericComponent()({
22625
22632
  if (props.hideActions) {
22626
22633
  emit('update:modelValue', val);
22627
22634
  }
22628
- isReversing.value = adapter.isBefore(val[0], oldVal[0]);
22635
+ if (val[0] && oldVal[0]) {
22636
+ isReversing.value = adapter.isBefore(val[0], oldVal[0]);
22637
+ }
22629
22638
  });
22630
22639
  function onClickCancel() {
22631
22640
  emit('click:cancel');
@@ -22661,16 +22670,19 @@ const VDatePicker = genericComponent()({
22661
22670
  "onUpdate:displayDate": $event => displayDate.value = $event,
22662
22671
  "viewMode": viewMode.value,
22663
22672
  "onUpdate:viewMode": $event => viewMode.value = $event
22664
- }), null), createVNode(MaybeTransition, {
22665
- "transition": props.transition,
22666
- "mode": "out-in"
22673
+ }), null), createVNode(VFadeTransition, {
22674
+ "hideOnLeave": true
22667
22675
  }, {
22668
- default: () => [viewMode.value === 'month' ? createVNode(VDatePickerMonth, mergeProps(datePickerMonthProps, {
22676
+ default: () => [viewMode.value === 'month' ? createVNode(VDatePickerMonth, mergeProps({
22677
+ "key": "date-picker-month"
22678
+ }, datePickerMonthProps, {
22669
22679
  "modelValue": model.value,
22670
22680
  "onUpdate:modelValue": $event => model.value = $event,
22671
22681
  "displayDate": displayDate.value,
22672
22682
  "onUpdate:displayDate": $event => displayDate.value = $event
22673
- }), null) : createVNode(VDatePickerYears, mergeProps(datePickerYearsProps, {
22683
+ }), null) : createVNode(VDatePickerYears, mergeProps({
22684
+ "key": "date-picker-years"
22685
+ }, datePickerYearsProps, {
22674
22686
  "displayDate": displayDate.value,
22675
22687
  "onUpdate:displayDate": $event => displayDate.value = $event,
22676
22688
  "viewMode": viewMode.value,
@@ -22743,7 +22755,7 @@ const VInfiniteScrollIntersect = defineComponent({
22743
22755
  rootMargin: String
22744
22756
  },
22745
22757
  emits: {
22746
- intersect: side => true
22758
+ intersect: (side, isIntersecting) => true
22747
22759
  },
22748
22760
  setup(props, _ref) {
22749
22761
  let {
@@ -22757,7 +22769,7 @@ const VInfiniteScrollIntersect = defineComponent({
22757
22769
  rootMargin: props.rootMargin
22758
22770
  } : undefined);
22759
22771
  watch(isIntersecting, async val => {
22760
- if (val) emit('intersect', props.side);
22772
+ emit('intersect', props.side, val);
22761
22773
  });
22762
22774
  useRender(() => createVNode("div", {
22763
22775
  "class": "v-infinite-scroll-intersect",
@@ -22781,6 +22793,7 @@ const VInfiniteScroll = genericComponent()({
22781
22793
  const startStatus = ref('ok');
22782
22794
  const endStatus = ref('ok');
22783
22795
  const margin = computed(() => convertToUnit(props.margin));
22796
+ const isIntersecting = ref(false);
22784
22797
  function setScrollAmount(amount) {
22785
22798
  if (!rootEl.value) return;
22786
22799
  const property = props.direction === 'vertical' ? 'scrollTop' : 'scrollLeft';
@@ -22820,7 +22833,14 @@ const VInfiniteScroll = genericComponent()({
22820
22833
  return side === 'start' ? startStatus.value : endStatus.value;
22821
22834
  }
22822
22835
  let previousScrollSize = 0;
22823
- function handleIntersect(side) {
22836
+ function handleIntersect(side, _isIntersecting) {
22837
+ isIntersecting.value = _isIntersecting;
22838
+ if (isIntersecting.value) {
22839
+ intersecting(side);
22840
+ }
22841
+ }
22842
+ function intersecting(side) {
22843
+ if (props.mode !== 'manual' && !isIntersecting.value) return;
22824
22844
  const status = getStatus(side);
22825
22845
  if (!rootEl.value || status === 'loading') return;
22826
22846
  previousScrollSize = getScrollSize();
@@ -22828,9 +22848,21 @@ const VInfiniteScroll = genericComponent()({
22828
22848
  function done(status) {
22829
22849
  setStatus(side, status);
22830
22850
  nextTick(() => {
22851
+ if (status === 'empty' || status === 'error') return;
22831
22852
  if (status === 'ok' && side === 'start') {
22832
22853
  setScrollAmount(getScrollSize() - previousScrollSize + getScrollAmount());
22833
22854
  }
22855
+ if (props.mode !== 'manual') {
22856
+ nextTick(() => {
22857
+ window.requestAnimationFrame(() => {
22858
+ window.requestAnimationFrame(() => {
22859
+ window.requestAnimationFrame(() => {
22860
+ intersecting(side);
22861
+ });
22862
+ });
22863
+ });
22864
+ });
22865
+ }
22834
22866
  });
22835
22867
  }
22836
22868
  emit('load', {
@@ -22843,7 +22875,7 @@ const VInfiniteScroll = genericComponent()({
22843
22875
  } = useLocale();
22844
22876
  function renderSide(side, status) {
22845
22877
  if (props.side !== side && props.side !== 'both') return;
22846
- const onClick = () => handleIntersect(side);
22878
+ const onClick = () => intersecting(side);
22847
22879
  const slotProps = {
22848
22880
  side,
22849
22881
  props: {
@@ -23415,7 +23447,7 @@ function createVuetify$1() {
23415
23447
  date
23416
23448
  };
23417
23449
  }
23418
- const version$1 = "3.3.4";
23450
+ const version$1 = "3.3.6";
23419
23451
  createVuetify$1.version = version$1;
23420
23452
 
23421
23453
  // Vue's inject() can only be used in setup
@@ -23429,7 +23461,7 @@ function inject(key) {
23429
23461
 
23430
23462
  /* eslint-disable local-rules/sort-imports */
23431
23463
 
23432
- const version = "3.3.4";
23464
+ const version = "3.3.6";
23433
23465
 
23434
23466
  /* eslint-disable local-rules/sort-imports */
23435
23467