vue-devui 1.6.15 → 1.6.17

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 (75) hide show
  1. package/auto-complete/index.es.js +41 -4
  2. package/auto-complete/index.umd.js +12 -12
  3. package/breadcrumb/index.es.js +40 -3
  4. package/breadcrumb/index.umd.js +1 -1
  5. package/category-search/index.es.js +74 -6
  6. package/category-search/index.umd.js +21 -21
  7. package/checkbox/index.es.js +41 -4
  8. package/checkbox/index.umd.js +16 -16
  9. package/code-review/index.es.js +41 -4
  10. package/code-review/index.umd.js +17 -17
  11. package/data-grid/index.es.js +41 -4
  12. package/data-grid/index.umd.js +14 -14
  13. package/date-picker-pro/index.es.js +41 -4
  14. package/date-picker-pro/index.umd.js +8 -8
  15. package/dropdown/index.es.js +40 -3
  16. package/dropdown/index.umd.js +1 -1
  17. package/editable-select/index.es.js +48 -8
  18. package/editable-select/index.umd.js +15 -15
  19. package/editor-md/index.es.js +50 -6
  20. package/editor-md/index.umd.js +26 -26
  21. package/form/index.es.js +41 -4
  22. package/form/index.umd.js +14 -14
  23. package/input/index.es.js +40 -3
  24. package/input/index.umd.js +19 -19
  25. package/input-number/index.es.js +41 -4
  26. package/input-number/index.umd.js +18 -18
  27. package/mention/index.es.js +41 -4
  28. package/mention/index.umd.js +19 -19
  29. package/message/index.es.js +13 -13
  30. package/message/index.umd.js +1 -1
  31. package/modal/index.es.js +40 -3
  32. package/modal/index.umd.js +2 -2
  33. package/overlay/index.es.js +41 -4
  34. package/overlay/index.umd.js +1 -1
  35. package/package.json +2 -1
  36. package/pagination/index.es.js +58 -21
  37. package/pagination/index.umd.js +17 -17
  38. package/pagination/style.css +1 -1
  39. package/popover/index.es.js +41 -4
  40. package/popover/index.umd.js +9 -9
  41. package/radio/index.es.js +41 -4
  42. package/radio/index.umd.js +17 -17
  43. package/search/index.es.js +41 -4
  44. package/search/index.umd.js +17 -17
  45. package/select/index.es.js +58 -21
  46. package/select/index.umd.js +19 -19
  47. package/select/style.css +1 -1
  48. package/splitter/index.es.js +41 -4
  49. package/splitter/index.umd.js +15 -15
  50. package/style.css +1 -1
  51. package/switch/index.es.js +41 -4
  52. package/switch/index.umd.js +14 -14
  53. package/table/index.es.js +40 -3
  54. package/table/index.umd.js +15 -15
  55. package/textarea/index.es.js +41 -4
  56. package/textarea/index.umd.js +16 -16
  57. package/time-picker/index.es.js +40 -3
  58. package/time-picker/index.umd.js +15 -15
  59. package/time-select/index.es.js +58 -21
  60. package/time-select/index.umd.js +17 -17
  61. package/time-select/style.css +1 -1
  62. package/tooltip/index.es.js +41 -4
  63. package/tooltip/index.umd.js +12 -12
  64. package/tree/index.es.js +40 -3
  65. package/tree/index.umd.js +10 -10
  66. package/types/category-search/src/category-search-types.d.ts +5 -0
  67. package/types/editable-select/src/editable-select-types.d.ts +3 -0
  68. package/types/overlay/src/flexible-overlay/flexible-overlay-types.d.ts +5 -6
  69. package/types/overlay/src/flexible-overlay/index.d.ts +9 -0
  70. package/types/overlay/src/flexible-overlay/use-flexible-overlay.d.ts +11 -2
  71. package/types/select/src/composables/use-select-content.d.ts +21 -2
  72. package/types/select/src/select-types.d.ts +7 -44
  73. package/types/select/src/use-select.d.ts +26 -2
  74. package/vue-devui.es.js +122 -44
  75. package/vue-devui.umd.js +74 -74
package/input/index.es.js CHANGED
@@ -6069,6 +6069,10 @@ const flexibleOverlayProps = {
6069
6069
  clickEventBubble: {
6070
6070
  type: Boolean,
6071
6071
  default: false
6072
+ },
6073
+ fitOriginWidth: {
6074
+ type: Boolean,
6075
+ default: false
6072
6076
  }
6073
6077
  };
6074
6078
  function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
@@ -6091,9 +6095,18 @@ function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
6091
6095
  return { x, y };
6092
6096
  }
6093
6097
  function useOverlay(props, emit) {
6094
- const { position, showArrow } = toRefs(props);
6098
+ const { fitOriginWidth, position, showArrow } = toRefs(props);
6095
6099
  const overlayRef = ref();
6096
6100
  const arrowRef = ref();
6101
+ const overlayWidth = ref(0);
6102
+ let originObserver;
6103
+ const styles = computed(() => {
6104
+ if (fitOriginWidth.value) {
6105
+ return { width: overlayWidth.value + "px" };
6106
+ } else {
6107
+ return {};
6108
+ }
6109
+ });
6097
6110
  const updateArrowPosition = (arrowEl, placement, point, overlayEl) => {
6098
6111
  const { x, y } = adjustArrowPosition(props.isArrowCenter, point, placement, overlayEl.getBoundingClientRect());
6099
6112
  const staticSide = {
@@ -6138,21 +6151,43 @@ function useOverlay(props, emit) {
6138
6151
  updatePosition();
6139
6152
  }
6140
6153
  };
6154
+ const updateWidth = (originEl) => {
6155
+ overlayWidth.value = originEl.getBoundingClientRect().width;
6156
+ updatePosition();
6157
+ };
6158
+ const observeOrigin = () => {
6159
+ var _a, _b;
6160
+ if (fitOriginWidth.value && typeof window !== "undefined") {
6161
+ const originEl = (_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin;
6162
+ if (originEl) {
6163
+ originObserver = new window.ResizeObserver(() => updateWidth(originEl));
6164
+ originObserver.observe(originEl);
6165
+ }
6166
+ }
6167
+ };
6168
+ const unobserveOrigin = () => {
6169
+ var _a, _b;
6170
+ const originEl = (_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin;
6171
+ originEl && (originObserver == null ? void 0 : originObserver.unobserve(originEl));
6172
+ };
6141
6173
  watch(() => props.modelValue, () => {
6142
6174
  if (props.modelValue && props.origin) {
6143
6175
  nextTick(updatePosition);
6144
6176
  window.addEventListener("scroll", scrollCallback, true);
6145
6177
  window.addEventListener("resize", updatePosition);
6178
+ observeOrigin();
6146
6179
  } else {
6147
6180
  window.removeEventListener("scroll", scrollCallback, true);
6148
6181
  window.removeEventListener("resize", updatePosition);
6182
+ unobserveOrigin();
6149
6183
  }
6150
6184
  });
6151
6185
  onUnmounted(() => {
6152
6186
  window.removeEventListener("scroll", scrollCallback, true);
6153
6187
  window.removeEventListener("resize", updatePosition);
6188
+ unobserveOrigin();
6154
6189
  });
6155
- return { arrowRef, overlayRef, updatePosition };
6190
+ return { arrowRef, overlayRef, styles, updatePosition };
6156
6191
  }
6157
6192
  var flexibleOverlay = "";
6158
6193
  const FlexibleOverlay = defineComponent({
@@ -6173,6 +6208,7 @@ const FlexibleOverlay = defineComponent({
6173
6208
  const {
6174
6209
  arrowRef,
6175
6210
  overlayRef,
6211
+ styles,
6176
6212
  updatePosition
6177
6213
  } = useOverlay(props, emit);
6178
6214
  expose({
@@ -6182,7 +6218,8 @@ const FlexibleOverlay = defineComponent({
6182
6218
  var _a;
6183
6219
  return props.modelValue && createVNode("div", mergeProps({
6184
6220
  "ref": overlayRef,
6185
- "class": ns2.b()
6221
+ "class": ns2.b(),
6222
+ "style": styles.value
6186
6223
  }, attrs, {
6187
6224
  "onClick": withModifiers(() => ({}), [clickEventBubble.value ? "" : "stop"]),
6188
6225
  "onPointerup": withModifiers(() => ({}), ["stop"])