@zeedhi/vuetify 1.104.0 → 1.105.1

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.
@@ -39873,8 +39873,10 @@ let ZdCarousel = class ZdCarousel extends ZdComponentRender$1 {
39873
39873
  if (this.instance.fillHeight) {
39874
39874
  setFillHeight(this.$el);
39875
39875
  }
39876
- this.setViewUpdate();
39877
- this.addResizeObserver();
39876
+ if (this.carousel) {
39877
+ this.setViewUpdate();
39878
+ this.addResizeObserver();
39879
+ }
39878
39880
  }
39879
39881
  destroyed() {
39880
39882
  this.removeObserver();
@@ -52333,6 +52335,7 @@ let ZdSelect = class ZdSelect extends __vue_component__$1m {
52333
52335
  * Input width value updated on focus
52334
52336
  */
52335
52337
  this.inputWidth = 0;
52338
+ this.isOverflowing = {};
52336
52339
  this.isSelectVisible = true;
52337
52340
  this.isDisconnected = true;
52338
52341
  this.selectFormatterFn = FormatterParserProvider.getFormatter('ZdSelect');
@@ -52345,6 +52348,14 @@ let ZdSelect = class ZdSelect extends __vue_component__$1m {
52345
52348
  this.componentRef.onScroll = this.onScroll;
52346
52349
  this.applyAutofocus();
52347
52350
  }
52351
+ mouseenter(event) {
52352
+ this.instance.mouseenter(event, this.$el);
52353
+ this.checkOverflow(event.target);
52354
+ }
52355
+ mouseleave(event) {
52356
+ this.instance.mouseleave(event, this.$el);
52357
+ this.removeTooltip();
52358
+ }
52348
52359
  /**
52349
52360
  * Register intersectionObserver to detect when element position changes
52350
52361
  */
@@ -52433,6 +52444,26 @@ let ZdSelect = class ZdSelect extends __vue_component__$1m {
52433
52444
  get parentWidth() {
52434
52445
  return this.inputWidth || 'auto';
52435
52446
  }
52447
+ checkOverflow(element) {
52448
+ if (!element)
52449
+ return;
52450
+ const overflow = element.clientWidth < element.scrollWidth;
52451
+ const tooltip = this.$refs.tooltip;
52452
+ if (overflow && tooltip) {
52453
+ tooltip.classList.add('zd-select-tooltip-show');
52454
+ const value = this.instance.displayValue;
52455
+ const targetBoundingRect = element.getBoundingClientRect();
52456
+ tooltip.innerText = value;
52457
+ tooltip.style.top = `${targetBoundingRect.bottom}px`;
52458
+ tooltip.style.left = `${targetBoundingRect.left}px`;
52459
+ }
52460
+ }
52461
+ removeTooltip() {
52462
+ const tooltip = this.$refs.tooltip;
52463
+ if (tooltip) {
52464
+ tooltip.classList.remove('zd-select-tooltip-show');
52465
+ }
52466
+ }
52436
52467
  toggle() {
52437
52468
  if (!this.componentRef)
52438
52469
  return;
@@ -52902,7 +52933,15 @@ var __vue_render__$K = function () {
52902
52933
  "component",
52903
52934
  child,
52904
52935
  false
52905
- )
52936
+ ),
52937
+ [
52938
+ _c("span", {
52939
+ ref: "tooltip",
52940
+ refInFor: true,
52941
+ staticClass:
52942
+ "zd-select-tooltip",
52943
+ }),
52944
+ ]
52906
52945
  )
52907
52946
  }
52908
52947
  )
@@ -52958,6 +52997,28 @@ var __vue_render__$K = function () {
52958
52997
  },
52959
52998
  proxy: true,
52960
52999
  },
53000
+ {
53001
+ key: "label",
53002
+ fn: function () {
53003
+ return [
53004
+ _c("span", [
53005
+ _vm._v(
53006
+ _vm._s(
53007
+ _vm.instance.showLabel
53008
+ ? _vm.$t(_vm.instance.label)
53009
+ : undefined
53010
+ )
53011
+ ),
53012
+ ]),
53013
+ _vm._v(" "),
53014
+ _c("span", {
53015
+ ref: "tooltip",
53016
+ staticClass: "zd-select-tooltip",
53017
+ }),
53018
+ ]
53019
+ },
53020
+ proxy: true,
53021
+ },
52961
53022
  ],
52962
53023
  null,
52963
53024
  true
@@ -52980,7 +53041,7 @@ __vue_render__$K._withStripped = true;
52980
53041
  /* style */
52981
53042
  const __vue_inject_styles__$K = function (inject) {
52982
53043
  if (!inject) return
52983
- inject("data-v-f19fc168_0", { source: ".zd-select .v-input__control .v-input__slot .v-select__slot {\n position: static;\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-outer {\n margin-right: var(--spacing-1);\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-outer {\n margin-left: var(--spacing-1);\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-outer, .zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-outer {\n margin-top: 5px;\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-inner, .zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-inner {\n padding-left: 0;\n padding-right: 0;\n}\n.zd-select.zd-select-align-left > .v-input__control > .v-input__slot input {\n text-align: left;\n}\n.zd-select.zd-select-align-center > .v-input__control > .v-input__slot input {\n text-align: center;\n}\n.zd-select.zd-select-align-right > .v-input__control > .v-input__slot input {\n text-align: right;\n}\n.zd-select .v-select__selections {\n padding: 0;\n width: 172px;\n overflow: hidden;\n white-space: nowrap;\n flex-wrap: nowrap;\n text-overflow: ellipsis;\n}\n.zd-select .v-select__selections .v-select__selection {\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n margin: 0;\n max-width: none;\n}\n.zd-select .v-select__selections .v-select__selection--disabled {\n opacity: 0.5;\n}\n.zd-select.theme--light {\n color: var(--zd-font-color);\n}\n.zd-select.zd-dense .v-input__append-inner, .zd-select.zd-dense .v-input__prepend-inner {\n margin-top: 0;\n}\n.zd-select-append-item .v-list-item__content {\n font-size: var(--zd-font-body2-size);\n font-weight: var(--zd-font-body2-size);\n color: var(--v-primary-base);\n}\n.v-menu__content.zd-select-menu {\n box-shadow: var(--shadow-2);\n}\n.v-menu__content.zd-select-menu .v-select-list {\n padding: 0;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item {\n height: auto;\n min-height: 40px;\n padding: 0 var(--spacing-4);\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item__content {\n padding: var(--spacing-2) 0;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item:not(.theme--dark) {\n color: var(--zd-font-color);\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item__title {\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n height: auto;\n line-height: unset;\n white-space: unset;\n overflow: auto;\n text-overflow: unset;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item.v-list-item--disabled .v-list-item__title {\n opacity: 0.5;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item.v-list-item--disabled.primary--text .v-list-item__title {\n color: inherit;\n}\n.v-menu__content.zd-select-menu.zd-dense .v-list-item {\n height: auto;\n min-height: 24px;\n padding: 0 var(--spacing-4);\n}\n.v-menu__content.zd-select-menu.zd-select-align-left .v-list-item__content .v-list-item__title {\n text-align: left;\n}\n.v-menu__content.zd-select-menu.zd-select-align-center .v-list-item__content .v-list-item__title {\n text-align: center;\n}\n.v-menu__content.zd-select-menu.zd-select-align-right .v-list-item__content .v-list-item__title {\n text-align: right;\n}", map: undefined, media: undefined });
53044
+ inject("data-v-f3af3d18_0", { source: ".zd-select .v-input__control .v-input__slot .v-select__slot {\n position: static;\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-outer {\n margin-right: var(--spacing-1);\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-outer {\n margin-left: var(--spacing-1);\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-outer, .zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-outer {\n margin-top: 5px;\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-inner, .zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-inner {\n padding-left: 0;\n padding-right: 0;\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot input {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.zd-select.zd-select-align-left > .v-input__control > .v-input__slot input {\n text-align: left;\n}\n.zd-select.zd-select-align-center > .v-input__control > .v-input__slot input {\n text-align: center;\n}\n.zd-select.zd-select-align-right > .v-input__control > .v-input__slot input {\n text-align: right;\n}\n.zd-select .v-select__selections {\n padding: 0;\n width: 172px;\n}\n.zd-select .v-select__selections .v-select__selection {\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n margin: 0;\n max-width: none;\n}\n.zd-select .v-select__selections .v-select__selection--disabled {\n opacity: 0.5;\n}\n.zd-select.theme--light {\n color: var(--zd-font-color);\n}\n.zd-select.zd-dense .v-input__append-inner, .zd-select.zd-dense .v-input__prepend-inner {\n margin-top: 0;\n}\n.zd-select-append-item .v-list-item__content {\n font-size: var(--zd-font-body2-size);\n font-weight: var(--zd-font-body2-size);\n color: var(--v-primary-base);\n}\n.zd-select-tooltip {\n z-index: 10000;\n position: fixed;\n color: white;\n background-color: var(--v-grey-lighten1);\n border-radius: var(--border);\n padding: var(--spacing-1) var(--spacing-2);\n opacity: 0.9;\n display: none;\n font-size: 14px;\n line-height: 22px;\n text-transform: none;\n width: auto;\n pointer-events: none;\n white-space: pre;\n}\n.zd-select-tooltip.zd-select-tooltip-show {\n display: block;\n white-space: normal;\n}\n.v-menu__content.zd-select-menu {\n box-shadow: var(--shadow-2);\n max-height: 40vh !important;\n}\n.v-menu__content.zd-select-menu .v-select-list {\n padding: 0;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item {\n height: auto;\n min-height: 40px;\n padding: 0 var(--spacing-4);\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item__content {\n padding: var(--spacing-2) 0;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item:not(.theme--dark) {\n color: var(--zd-font-color);\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item__title {\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n height: auto;\n line-height: unset;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item.v-list-item--disabled .v-list-item__title {\n opacity: 0.5;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item.v-list-item--disabled.primary--text .v-list-item__title {\n color: inherit;\n}\n.v-menu__content.zd-select-menu.zd-dense .v-list-item {\n height: auto;\n min-height: 24px;\n padding: 0 var(--spacing-4);\n}\n.v-menu__content.zd-select-menu.zd-select-align-left .v-list-item__content .v-list-item__title {\n text-align: left;\n}\n.v-menu__content.zd-select-menu.zd-select-align-center .v-list-item__content .v-list-item__title {\n text-align: center;\n}\n.v-menu__content.zd-select-menu.zd-select-align-right .v-list-item__content .v-list-item__title {\n text-align: right;\n}\n.zd-select-overflow {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}", map: undefined, media: undefined });
52984
53045
 
52985
53046
  };
52986
53047
  /* scoped */
@@ -60461,22 +60522,35 @@ let ZdText = class ZdText extends ZdComponent$1 {
60461
60522
  this.parentWidth = 0;
60462
60523
  }
60463
60524
  handleResize() {
60464
- if (this.parentWidth && this.textResize.fontSize) {
60525
+ if (this.parentWidth && this.instance.textResize.fontSize) {
60465
60526
  const proportion = this.parentElement.clientWidth / this.parentWidth;
60466
- const MIN = this.textResize.min || 0;
60467
- const MAX = this.textResize.max || Infinity;
60468
- this.$el.style.fontSize = `${Math.min(Math.max(this.textResize.fontSize * proportion, MIN), MAX)}px`;
60527
+ const size = Math.min(Math.max(this.instance.textResize.fontSize * proportion, this.textResize.min), this.textResize.max);
60528
+ this.$el.style.fontSize = `${size}px`;
60469
60529
  }
60470
60530
  }
60471
60531
  mounted() {
60472
60532
  var _a;
60473
60533
  this.parentElement = this.$el.parentElement;
60474
- if (this.instance.textResize) {
60475
- this.$el.style.fontSize = `${this.instance.textResize.fontSize}px`;
60476
- this.parentWidth = ((_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.clientWidth) || 0;
60477
- this.resizeObserver = new ResizeObserver(this.handleResize);
60478
- this.resizeObserver.observe(this.parentElement);
60479
- }
60534
+ if (!this.instance.textResize || !this.parentElement)
60535
+ return;
60536
+ const { fontSize } = this.instance.textResize;
60537
+ if (!fontSize)
60538
+ return;
60539
+ this.instance.textResize.min = this.instance.textResize.min || 0;
60540
+ this.instance.textResize.max = this.instance.textResize.max || Infinity;
60541
+ let size = Math.min(Math.max(fontSize, this.textResize.min), this.textResize.max);
60542
+ this.$el.style.fontSize = `${size}px`;
60543
+ this.parentWidth = ((_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.clientWidth) || 0;
60544
+ this.resizeObserver = new ResizeObserver(this.handleResize);
60545
+ this.resizeObserver.observe(this.parentElement);
60546
+ this.$nextTick(() => {
60547
+ if (this.parentWidth < this.$el.children[0].scrollWidth) {
60548
+ const proportion = this.$el.children[0].scrollWidth / this.parentWidth;
60549
+ size /= proportion;
60550
+ this.$el.style.fontSize = `${size}px`;
60551
+ }
60552
+ this.instance.textResize.fontSize = size;
60553
+ });
60480
60554
  }
60481
60555
  destroyed() {
60482
60556
  var _a;
@@ -39872,8 +39872,10 @@ If you're seeing "$attrs is readonly", it's caused by this`);
39872
39872
  if (this.instance.fillHeight) {
39873
39873
  setFillHeight(this.$el);
39874
39874
  }
39875
- this.setViewUpdate();
39876
- this.addResizeObserver();
39875
+ if (this.carousel) {
39876
+ this.setViewUpdate();
39877
+ this.addResizeObserver();
39878
+ }
39877
39879
  }
39878
39880
  destroyed() {
39879
39881
  this.removeObserver();
@@ -52332,6 +52334,7 @@ If you're seeing "$attrs is readonly", it's caused by this`);
52332
52334
  * Input width value updated on focus
52333
52335
  */
52334
52336
  this.inputWidth = 0;
52337
+ this.isOverflowing = {};
52335
52338
  this.isSelectVisible = true;
52336
52339
  this.isDisconnected = true;
52337
52340
  this.selectFormatterFn = core.FormatterParserProvider.getFormatter('ZdSelect');
@@ -52344,6 +52347,14 @@ If you're seeing "$attrs is readonly", it's caused by this`);
52344
52347
  this.componentRef.onScroll = this.onScroll;
52345
52348
  this.applyAutofocus();
52346
52349
  }
52350
+ mouseenter(event) {
52351
+ this.instance.mouseenter(event, this.$el);
52352
+ this.checkOverflow(event.target);
52353
+ }
52354
+ mouseleave(event) {
52355
+ this.instance.mouseleave(event, this.$el);
52356
+ this.removeTooltip();
52357
+ }
52347
52358
  /**
52348
52359
  * Register intersectionObserver to detect when element position changes
52349
52360
  */
@@ -52432,6 +52443,26 @@ If you're seeing "$attrs is readonly", it's caused by this`);
52432
52443
  get parentWidth() {
52433
52444
  return this.inputWidth || 'auto';
52434
52445
  }
52446
+ checkOverflow(element) {
52447
+ if (!element)
52448
+ return;
52449
+ const overflow = element.clientWidth < element.scrollWidth;
52450
+ const tooltip = this.$refs.tooltip;
52451
+ if (overflow && tooltip) {
52452
+ tooltip.classList.add('zd-select-tooltip-show');
52453
+ const value = this.instance.displayValue;
52454
+ const targetBoundingRect = element.getBoundingClientRect();
52455
+ tooltip.innerText = value;
52456
+ tooltip.style.top = `${targetBoundingRect.bottom}px`;
52457
+ tooltip.style.left = `${targetBoundingRect.left}px`;
52458
+ }
52459
+ }
52460
+ removeTooltip() {
52461
+ const tooltip = this.$refs.tooltip;
52462
+ if (tooltip) {
52463
+ tooltip.classList.remove('zd-select-tooltip-show');
52464
+ }
52465
+ }
52435
52466
  toggle() {
52436
52467
  if (!this.componentRef)
52437
52468
  return;
@@ -52901,7 +52932,15 @@ If you're seeing "$attrs is readonly", it's caused by this`);
52901
52932
  "component",
52902
52933
  child,
52903
52934
  false
52904
- )
52935
+ ),
52936
+ [
52937
+ _c("span", {
52938
+ ref: "tooltip",
52939
+ refInFor: true,
52940
+ staticClass:
52941
+ "zd-select-tooltip",
52942
+ }),
52943
+ ]
52905
52944
  )
52906
52945
  }
52907
52946
  )
@@ -52957,6 +52996,28 @@ If you're seeing "$attrs is readonly", it's caused by this`);
52957
52996
  },
52958
52997
  proxy: true,
52959
52998
  },
52999
+ {
53000
+ key: "label",
53001
+ fn: function () {
53002
+ return [
53003
+ _c("span", [
53004
+ _vm._v(
53005
+ _vm._s(
53006
+ _vm.instance.showLabel
53007
+ ? _vm.$t(_vm.instance.label)
53008
+ : undefined
53009
+ )
53010
+ ),
53011
+ ]),
53012
+ _vm._v(" "),
53013
+ _c("span", {
53014
+ ref: "tooltip",
53015
+ staticClass: "zd-select-tooltip",
53016
+ }),
53017
+ ]
53018
+ },
53019
+ proxy: true,
53020
+ },
52960
53021
  ],
52961
53022
  null,
52962
53023
  true
@@ -52979,7 +53040,7 @@ If you're seeing "$attrs is readonly", it's caused by this`);
52979
53040
  /* style */
52980
53041
  const __vue_inject_styles__$K = function (inject) {
52981
53042
  if (!inject) return
52982
- inject("data-v-f19fc168_0", { source: ".zd-select .v-input__control .v-input__slot .v-select__slot {\n position: static;\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-outer {\n margin-right: var(--spacing-1);\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-outer {\n margin-left: var(--spacing-1);\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-outer, .zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-outer {\n margin-top: 5px;\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-inner, .zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-inner {\n padding-left: 0;\n padding-right: 0;\n}\n.zd-select.zd-select-align-left > .v-input__control > .v-input__slot input {\n text-align: left;\n}\n.zd-select.zd-select-align-center > .v-input__control > .v-input__slot input {\n text-align: center;\n}\n.zd-select.zd-select-align-right > .v-input__control > .v-input__slot input {\n text-align: right;\n}\n.zd-select .v-select__selections {\n padding: 0;\n width: 172px;\n overflow: hidden;\n white-space: nowrap;\n flex-wrap: nowrap;\n text-overflow: ellipsis;\n}\n.zd-select .v-select__selections .v-select__selection {\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n margin: 0;\n max-width: none;\n}\n.zd-select .v-select__selections .v-select__selection--disabled {\n opacity: 0.5;\n}\n.zd-select.theme--light {\n color: var(--zd-font-color);\n}\n.zd-select.zd-dense .v-input__append-inner, .zd-select.zd-dense .v-input__prepend-inner {\n margin-top: 0;\n}\n.zd-select-append-item .v-list-item__content {\n font-size: var(--zd-font-body2-size);\n font-weight: var(--zd-font-body2-size);\n color: var(--v-primary-base);\n}\n.v-menu__content.zd-select-menu {\n box-shadow: var(--shadow-2);\n}\n.v-menu__content.zd-select-menu .v-select-list {\n padding: 0;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item {\n height: auto;\n min-height: 40px;\n padding: 0 var(--spacing-4);\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item__content {\n padding: var(--spacing-2) 0;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item:not(.theme--dark) {\n color: var(--zd-font-color);\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item__title {\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n height: auto;\n line-height: unset;\n white-space: unset;\n overflow: auto;\n text-overflow: unset;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item.v-list-item--disabled .v-list-item__title {\n opacity: 0.5;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item.v-list-item--disabled.primary--text .v-list-item__title {\n color: inherit;\n}\n.v-menu__content.zd-select-menu.zd-dense .v-list-item {\n height: auto;\n min-height: 24px;\n padding: 0 var(--spacing-4);\n}\n.v-menu__content.zd-select-menu.zd-select-align-left .v-list-item__content .v-list-item__title {\n text-align: left;\n}\n.v-menu__content.zd-select-menu.zd-select-align-center .v-list-item__content .v-list-item__title {\n text-align: center;\n}\n.v-menu__content.zd-select-menu.zd-select-align-right .v-list-item__content .v-list-item__title {\n text-align: right;\n}", map: undefined, media: undefined });
53043
+ inject("data-v-f3af3d18_0", { source: ".zd-select .v-input__control .v-input__slot .v-select__slot {\n position: static;\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-outer {\n margin-right: var(--spacing-1);\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-outer {\n margin-left: var(--spacing-1);\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-outer, .zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-outer {\n margin-top: 5px;\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot .v-input__append-inner, .zd-select .v-input__control .v-input__slot .v-select__slot .v-input__prepend-inner {\n padding-left: 0;\n padding-right: 0;\n}\n.zd-select .v-input__control .v-input__slot .v-select__slot input {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.zd-select.zd-select-align-left > .v-input__control > .v-input__slot input {\n text-align: left;\n}\n.zd-select.zd-select-align-center > .v-input__control > .v-input__slot input {\n text-align: center;\n}\n.zd-select.zd-select-align-right > .v-input__control > .v-input__slot input {\n text-align: right;\n}\n.zd-select .v-select__selections {\n padding: 0;\n width: 172px;\n}\n.zd-select .v-select__selections .v-select__selection {\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n margin: 0;\n max-width: none;\n}\n.zd-select .v-select__selections .v-select__selection--disabled {\n opacity: 0.5;\n}\n.zd-select.theme--light {\n color: var(--zd-font-color);\n}\n.zd-select.zd-dense .v-input__append-inner, .zd-select.zd-dense .v-input__prepend-inner {\n margin-top: 0;\n}\n.zd-select-append-item .v-list-item__content {\n font-size: var(--zd-font-body2-size);\n font-weight: var(--zd-font-body2-size);\n color: var(--v-primary-base);\n}\n.zd-select-tooltip {\n z-index: 10000;\n position: fixed;\n color: white;\n background-color: var(--v-grey-lighten1);\n border-radius: var(--border);\n padding: var(--spacing-1) var(--spacing-2);\n opacity: 0.9;\n display: none;\n font-size: 14px;\n line-height: 22px;\n text-transform: none;\n width: auto;\n pointer-events: none;\n white-space: pre;\n}\n.zd-select-tooltip.zd-select-tooltip-show {\n display: block;\n white-space: normal;\n}\n.v-menu__content.zd-select-menu {\n box-shadow: var(--shadow-2);\n max-height: 40vh !important;\n}\n.v-menu__content.zd-select-menu .v-select-list {\n padding: 0;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item {\n height: auto;\n min-height: 40px;\n padding: 0 var(--spacing-4);\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item__content {\n padding: var(--spacing-2) 0;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item:not(.theme--dark) {\n color: var(--zd-font-color);\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item__title {\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n height: auto;\n line-height: unset;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item.v-list-item--disabled .v-list-item__title {\n opacity: 0.5;\n}\n.v-menu__content.zd-select-menu .v-select-list .v-list-item.v-list-item--disabled.primary--text .v-list-item__title {\n color: inherit;\n}\n.v-menu__content.zd-select-menu.zd-dense .v-list-item {\n height: auto;\n min-height: 24px;\n padding: 0 var(--spacing-4);\n}\n.v-menu__content.zd-select-menu.zd-select-align-left .v-list-item__content .v-list-item__title {\n text-align: left;\n}\n.v-menu__content.zd-select-menu.zd-select-align-center .v-list-item__content .v-list-item__title {\n text-align: center;\n}\n.v-menu__content.zd-select-menu.zd-select-align-right .v-list-item__content .v-list-item__title {\n text-align: right;\n}\n.zd-select-overflow {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}", map: undefined, media: undefined });
52983
53044
 
52984
53045
  };
52985
53046
  /* scoped */
@@ -60460,22 +60521,35 @@ If you're seeing "$attrs is readonly", it's caused by this`);
60460
60521
  this.parentWidth = 0;
60461
60522
  }
60462
60523
  handleResize() {
60463
- if (this.parentWidth && this.textResize.fontSize) {
60524
+ if (this.parentWidth && this.instance.textResize.fontSize) {
60464
60525
  const proportion = this.parentElement.clientWidth / this.parentWidth;
60465
- const MIN = this.textResize.min || 0;
60466
- const MAX = this.textResize.max || Infinity;
60467
- this.$el.style.fontSize = `${Math.min(Math.max(this.textResize.fontSize * proportion, MIN), MAX)}px`;
60526
+ const size = Math.min(Math.max(this.instance.textResize.fontSize * proportion, this.textResize.min), this.textResize.max);
60527
+ this.$el.style.fontSize = `${size}px`;
60468
60528
  }
60469
60529
  }
60470
60530
  mounted() {
60471
60531
  var _a;
60472
60532
  this.parentElement = this.$el.parentElement;
60473
- if (this.instance.textResize) {
60474
- this.$el.style.fontSize = `${this.instance.textResize.fontSize}px`;
60475
- this.parentWidth = ((_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.clientWidth) || 0;
60476
- this.resizeObserver = new ResizeObserver(this.handleResize);
60477
- this.resizeObserver.observe(this.parentElement);
60478
- }
60533
+ if (!this.instance.textResize || !this.parentElement)
60534
+ return;
60535
+ const { fontSize } = this.instance.textResize;
60536
+ if (!fontSize)
60537
+ return;
60538
+ this.instance.textResize.min = this.instance.textResize.min || 0;
60539
+ this.instance.textResize.max = this.instance.textResize.max || Infinity;
60540
+ let size = Math.min(Math.max(fontSize, this.textResize.min), this.textResize.max);
60541
+ this.$el.style.fontSize = `${size}px`;
60542
+ this.parentWidth = ((_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.clientWidth) || 0;
60543
+ this.resizeObserver = new ResizeObserver(this.handleResize);
60544
+ this.resizeObserver.observe(this.parentElement);
60545
+ this.$nextTick(() => {
60546
+ if (this.parentWidth < this.$el.children[0].scrollWidth) {
60547
+ const proportion = this.$el.children[0].scrollWidth / this.parentWidth;
60548
+ size /= proportion;
60549
+ this.$el.style.fontSize = `${size}px`;
60550
+ }
60551
+ this.instance.textResize.fontSize = size;
60552
+ });
60479
60553
  }
60480
60554
  destroyed() {
60481
60555
  var _a;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeedhi/vuetify",
3
- "version": "1.104.0",
3
+ "version": "1.105.1",
4
4
  "description": "Zeedhi Components based on Vuetify",
5
5
  "author": "Zeedhi <zeedhi@teknisa.com>",
6
6
  "license": "ISC",
@@ -51,5 +51,5 @@
51
51
  "@types/prismjs": "1.26.*",
52
52
  "@types/sortablejs": "1.15.*"
53
53
  },
54
- "gitHead": "5125cf4441b4b2cd7d943880e51143fd05a091cc"
54
+ "gitHead": "1bc40709c24da205a55c8c28bcba3ac63284f894"
55
55
  }
@@ -37,6 +37,9 @@ export default class ZdSelect extends ZdTextInput {
37
37
  protected componentRef: any;
38
38
  private originalOnScroll;
39
39
  mounted(): void;
40
+ mouseenter(event: Event): void;
41
+ mouseleave(event: Event): void;
42
+ isOverflowing: IDictionary<boolean>;
40
43
  private observer?;
41
44
  private isSelectVisible;
42
45
  private isDisconnected;
@@ -56,6 +59,8 @@ export default class ZdSelect extends ZdTextInput {
56
59
  */
57
60
  protected onScroll(event: Event): Promise<void>;
58
61
  get parentWidth(): number | "auto";
62
+ checkOverflow(element?: HTMLElement): void;
63
+ removeTooltip(): void;
59
64
  toggle(): void;
60
65
  selectChange(value: any, event: Event): void;
61
66
  selectInput(value: any): void;