@uzum-tech/ui 2.0.0-beta.8 → 2.0.0-beta.9

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 (180) hide show
  1. package/dist/index.js +246 -177
  2. package/dist/index.mjs +246 -177
  3. package/dist/index.prod.js +2 -2
  4. package/dist/index.prod.mjs +2 -2
  5. package/es/_internal/select-menu/src/SelectOption.mjs +12 -4
  6. package/es/_utils/wrap-component.mjs +3 -1
  7. package/es/auto-complete/src/AutoComplete.d.ts +70 -0
  8. package/es/auto-complete/styles/light.d.ts +7 -0
  9. package/es/carousel/src/Carousel.mjs +39 -13
  10. package/es/chat/src/Chat.d.ts +70 -0
  11. package/es/chat/src/ChatListItems.d.ts +84 -0
  12. package/es/chat/src/ChatMessages.d.ts +84 -0
  13. package/es/chat/src/ChatParts/MainArea.mjs +104 -112
  14. package/es/chat/src/ChatParts/Sidebar.d.ts +14 -0
  15. package/es/chat/src/styles/index.cssr.mjs +24 -10
  16. package/es/chat/styles/dark.d.ts +7 -0
  17. package/es/chat/styles/light.d.ts +7 -0
  18. package/es/chat/styles/light.mjs +1 -0
  19. package/es/color-picker/src/ColorInputUnit.d.ts +7 -0
  20. package/es/color-picker/src/ColorPicker.d.ts +63 -0
  21. package/es/color-picker/styles/light.d.ts +7 -0
  22. package/es/components.d.ts +1033 -5
  23. package/es/data-table/src/DataTable.d.ts +56 -0
  24. package/es/data-table/src/HeaderButton/FilterButton.d.ts +28 -0
  25. package/es/data-table/src/HeaderButton/FilterMenu.d.ts +28 -0
  26. package/es/data-table/src/TableParts/Body.d.ts +28 -0
  27. package/es/data-table/src/TableParts/Header.d.ts +28 -0
  28. package/es/data-table/src/interface.d.ts +21 -0
  29. package/es/data-table/styles/light.d.ts +7 -0
  30. package/es/date-picker/src/DatePicker.d.ts +147 -0
  31. package/es/date-picker/src/panel/date.d.ts +42 -0
  32. package/es/date-picker/src/panel/daterange.d.ts +42 -0
  33. package/es/date-picker/src/panel/datetime.d.ts +42 -0
  34. package/es/date-picker/src/panel/datetimerange.d.ts +42 -0
  35. package/es/date-picker/src/panel/panelMonth.d.ts +168 -0
  36. package/es/date-picker/src/panel/panelMonthContent.d.ts +42 -0
  37. package/es/date-picker/src/panel/panelYear.d.ts +168 -0
  38. package/es/date-picker/src/panel/panelYearContent.d.ts +42 -0
  39. package/es/date-picker/src/panel/use-calendar.d.ts +42 -0
  40. package/es/date-picker/src/panel/use-dual-calendar.d.ts +42 -0
  41. package/es/date-picker/src/panel/use-panel-common.d.ts +42 -0
  42. package/es/date-picker/styles/light.d.ts +14 -0
  43. package/es/date-picker-v2/src/DatePickerV2.d.ts +70 -0
  44. package/es/date-picker-v2/styles/dark.d.ts +7 -0
  45. package/es/date-picker-v2/styles/light.d.ts +7 -0
  46. package/es/dialog/src/DialogEnvironment.mjs +1 -2
  47. package/es/dynamic-input/src/DynamicInput.d.ts +70 -0
  48. package/es/dynamic-input/src/InputPreset.d.ts +14 -0
  49. package/es/dynamic-input/src/PairPreset.d.ts +14 -0
  50. package/es/dynamic-input/styles/light.d.ts +7 -0
  51. package/es/dynamic-tags/src/DynamicTags.d.ts +70 -0
  52. package/es/dynamic-tags/styles/light.d.ts +7 -0
  53. package/es/input/src/Input.d.ts +77 -0
  54. package/es/input/src/Input.mjs +15 -0
  55. package/es/input/src/InputGroupLabel.d.ts +63 -0
  56. package/es/input/src/styles/input.cssr.mjs +1 -1
  57. package/es/input/styles/light.d.ts +7 -0
  58. package/es/input/styles/light.mjs +11 -0
  59. package/es/input-number/src/InputNumber.d.ts +70 -0
  60. package/es/input-number/styles/light.d.ts +7 -0
  61. package/es/input-otp/src/InputOtp.d.ts +70 -0
  62. package/es/input-otp/styles/light.d.ts +7 -0
  63. package/es/legacy-transfer/src/Transfer.d.ts +70 -0
  64. package/es/legacy-transfer/src/TransferFilter.d.ts +14 -0
  65. package/es/legacy-transfer/src/TransferList.d.ts +14 -0
  66. package/es/legacy-transfer/src/TransferListItem.d.ts +14 -0
  67. package/es/legacy-transfer/styles/light.d.ts +7 -0
  68. package/es/mapping-card/src/MappingCard.d.ts +9 -0
  69. package/es/mapping-card/src/MappingCardParts/Header.mjs +1 -1
  70. package/es/mapping-card/src/interface.d.ts +5 -0
  71. package/es/mapping-card/src/interface.mjs +4 -0
  72. package/es/mention/src/Mention.d.ts +70 -0
  73. package/es/mention/styles/light.d.ts +7 -0
  74. package/es/modal/src/BodyWrapper.d.ts +0 -3
  75. package/es/modal/src/Modal.d.ts +13 -7
  76. package/es/modal/src/Modal.mjs +5 -2
  77. package/es/modal/src/ModalEnvironment.d.ts +9 -5
  78. package/es/modal/src/presetProps.d.ts +1 -2
  79. package/es/modal/src/presetProps.mjs +0 -1
  80. package/es/pagination/src/Pagination.d.ts +70 -0
  81. package/es/pagination/styles/light.d.ts +7 -0
  82. package/es/time-picker/src/Panel.d.ts +14 -0
  83. package/es/time-picker/src/TimePicker.d.ts +70 -0
  84. package/es/time-picker/styles/light.d.ts +7 -0
  85. package/es/transfer/src/Transfer.d.ts +70 -0
  86. package/es/transfer/src/TransferFilter.d.ts +14 -0
  87. package/es/transfer/src/TransferList.d.ts +14 -0
  88. package/es/transfer/src/TransferListItem.d.ts +14 -0
  89. package/es/transfer/styles/light.d.ts +7 -0
  90. package/es/version.d.ts +1 -1
  91. package/es/version.mjs +1 -1
  92. package/lib/_internal/select-menu/src/SelectOption.js +8 -4
  93. package/lib/_utils/wrap-component.js +3 -1
  94. package/lib/auto-complete/src/AutoComplete.d.ts +70 -0
  95. package/lib/auto-complete/styles/light.d.ts +7 -0
  96. package/lib/carousel/src/Carousel.js +26 -13
  97. package/lib/chat/src/Chat.d.ts +70 -0
  98. package/lib/chat/src/ChatListItems.d.ts +84 -0
  99. package/lib/chat/src/ChatMessages.d.ts +84 -0
  100. package/lib/chat/src/ChatParts/MainArea.js +53 -61
  101. package/lib/chat/src/ChatParts/Sidebar.d.ts +14 -0
  102. package/lib/chat/src/styles/index.cssr.js +24 -10
  103. package/lib/chat/styles/dark.d.ts +7 -0
  104. package/lib/chat/styles/light.d.ts +7 -0
  105. package/lib/chat/styles/light.js +1 -1
  106. package/lib/color-picker/src/ColorInputUnit.d.ts +7 -0
  107. package/lib/color-picker/src/ColorPicker.d.ts +63 -0
  108. package/lib/color-picker/styles/light.d.ts +7 -0
  109. package/lib/components.d.ts +1033 -5
  110. package/lib/data-table/src/DataTable.d.ts +56 -0
  111. package/lib/data-table/src/HeaderButton/FilterButton.d.ts +28 -0
  112. package/lib/data-table/src/HeaderButton/FilterMenu.d.ts +28 -0
  113. package/lib/data-table/src/TableParts/Body.d.ts +28 -0
  114. package/lib/data-table/src/TableParts/Header.d.ts +28 -0
  115. package/lib/data-table/src/interface.d.ts +21 -0
  116. package/lib/data-table/styles/light.d.ts +7 -0
  117. package/lib/date-picker/src/DatePicker.d.ts +147 -0
  118. package/lib/date-picker/src/panel/date.d.ts +42 -0
  119. package/lib/date-picker/src/panel/daterange.d.ts +42 -0
  120. package/lib/date-picker/src/panel/datetime.d.ts +42 -0
  121. package/lib/date-picker/src/panel/datetimerange.d.ts +42 -0
  122. package/lib/date-picker/src/panel/panelMonth.d.ts +168 -0
  123. package/lib/date-picker/src/panel/panelMonthContent.d.ts +42 -0
  124. package/lib/date-picker/src/panel/panelYear.d.ts +168 -0
  125. package/lib/date-picker/src/panel/panelYearContent.d.ts +42 -0
  126. package/lib/date-picker/src/panel/use-calendar.d.ts +42 -0
  127. package/lib/date-picker/src/panel/use-dual-calendar.d.ts +42 -0
  128. package/lib/date-picker/src/panel/use-panel-common.d.ts +42 -0
  129. package/lib/date-picker/styles/light.d.ts +14 -0
  130. package/lib/date-picker-v2/src/DatePickerV2.d.ts +70 -0
  131. package/lib/date-picker-v2/styles/dark.d.ts +7 -0
  132. package/lib/date-picker-v2/styles/light.d.ts +7 -0
  133. package/lib/dialog/src/DialogEnvironment.js +1 -1
  134. package/lib/dynamic-input/src/DynamicInput.d.ts +70 -0
  135. package/lib/dynamic-input/src/InputPreset.d.ts +14 -0
  136. package/lib/dynamic-input/src/PairPreset.d.ts +14 -0
  137. package/lib/dynamic-input/styles/light.d.ts +7 -0
  138. package/lib/dynamic-tags/src/DynamicTags.d.ts +70 -0
  139. package/lib/dynamic-tags/styles/light.d.ts +7 -0
  140. package/lib/input/src/Input.d.ts +77 -0
  141. package/lib/input/src/Input.js +9 -1
  142. package/lib/input/src/InputGroupLabel.d.ts +63 -0
  143. package/lib/input/src/styles/input.cssr.js +1 -1
  144. package/lib/input/styles/light.d.ts +7 -0
  145. package/lib/input/styles/light.js +11 -1
  146. package/lib/input-number/src/InputNumber.d.ts +70 -0
  147. package/lib/input-number/styles/light.d.ts +7 -0
  148. package/lib/input-otp/src/InputOtp.d.ts +70 -0
  149. package/lib/input-otp/styles/light.d.ts +7 -0
  150. package/lib/legacy-transfer/src/Transfer.d.ts +70 -0
  151. package/lib/legacy-transfer/src/TransferFilter.d.ts +14 -0
  152. package/lib/legacy-transfer/src/TransferList.d.ts +14 -0
  153. package/lib/legacy-transfer/src/TransferListItem.d.ts +14 -0
  154. package/lib/legacy-transfer/styles/light.d.ts +7 -0
  155. package/lib/mapping-card/src/MappingCard.d.ts +9 -0
  156. package/lib/mapping-card/src/MappingCardParts/Header.js +2 -2
  157. package/lib/mapping-card/src/interface.d.ts +5 -0
  158. package/lib/mapping-card/src/interface.js +4 -0
  159. package/lib/mention/src/Mention.d.ts +70 -0
  160. package/lib/mention/styles/light.d.ts +7 -0
  161. package/lib/modal/src/BodyWrapper.d.ts +0 -3
  162. package/lib/modal/src/Modal.d.ts +13 -7
  163. package/lib/modal/src/Modal.js +5 -2
  164. package/lib/modal/src/ModalEnvironment.d.ts +9 -5
  165. package/lib/modal/src/presetProps.d.ts +1 -2
  166. package/lib/modal/src/presetProps.js +1 -1
  167. package/lib/pagination/src/Pagination.d.ts +70 -0
  168. package/lib/pagination/styles/light.d.ts +7 -0
  169. package/lib/time-picker/src/Panel.d.ts +14 -0
  170. package/lib/time-picker/src/TimePicker.d.ts +70 -0
  171. package/lib/time-picker/styles/light.d.ts +7 -0
  172. package/lib/transfer/src/Transfer.d.ts +70 -0
  173. package/lib/transfer/src/TransferFilter.d.ts +14 -0
  174. package/lib/transfer/src/TransferList.d.ts +14 -0
  175. package/lib/transfer/src/TransferListItem.d.ts +14 -0
  176. package/lib/transfer/styles/light.d.ts +7 -0
  177. package/lib/version.d.ts +1 -1
  178. package/lib/version.js +1 -1
  179. package/package.json +1 -1
  180. package/web-types.json +8 -1
package/dist/index.js CHANGED
@@ -5792,7 +5792,7 @@
5792
5792
  });
5793
5793
  wrapped.__wrapped__ = true;
5794
5794
  for (const key of Object.keys(component)) {
5795
- if (/^__.*__$/.test(key) || key.endsWith("_FLAG")) {
5795
+ if (/^__.*__$/.test(key) || key.endsWith("_FLAG") || key === "alias") {
5796
5796
  wrapped[key] = component[key];
5797
5797
  }
5798
5798
  }
@@ -18427,27 +18427,31 @@
18427
18427
  } = vue.inject(internalSelectionMenuInjectionKey);
18428
18428
  const isPendingRef = useMemo(() => {
18429
18429
  const { value: pendingTmNode } = pendingTmNodeRef;
18430
- if (!pendingTmNode)
18430
+ if (!pendingTmNode) {
18431
18431
  return false;
18432
+ }
18432
18433
  return props.tmNode.key === pendingTmNode.key;
18433
18434
  });
18434
18435
  function handleClick(e) {
18435
18436
  const { tmNode } = props;
18436
- if (tmNode.disabled)
18437
+ if (tmNode.disabled) {
18437
18438
  return;
18439
+ }
18438
18440
  handleOptionClick(e, tmNode);
18439
18441
  }
18440
18442
  function handleMouseEnter(e) {
18441
18443
  const { tmNode } = props;
18442
- if (tmNode.disabled)
18444
+ if (tmNode.disabled) {
18443
18445
  return;
18446
+ }
18444
18447
  handleOptionMouseEnter(e, tmNode);
18445
18448
  }
18446
18449
  function handleMouseMove(e) {
18447
18450
  const { tmNode } = props;
18448
18451
  const { value: isPending } = isPendingRef;
18449
- if (tmNode.disabled || isPending)
18452
+ if (tmNode.disabled || isPending) {
18450
18453
  return;
18454
+ }
18451
18455
  handleOptionMouseEnter(e, tmNode);
18452
18456
  }
18453
18457
  return {
@@ -25753,6 +25757,7 @@
25753
25757
  containerPrimary,
25754
25758
  elementsQuaternary,
25755
25759
  elementsPrimary,
25760
+ staticGreen,
25756
25761
  staticOrange,
25757
25762
  staticRed,
25758
25763
  elementsQuinary,
@@ -25806,6 +25811,16 @@
25806
25811
  alpha: 0.1
25807
25812
  })}`,
25808
25813
  loadingColor: elementsPrimary,
25814
+ // success
25815
+ loadingColorSuccess: staticGreen,
25816
+ borderSuccess: `2px solid ${staticGreen}`,
25817
+ borderHoverSuccess: `2px solid ${staticGreen}`,
25818
+ colorFocusSuccess: containerPrimary,
25819
+ borderFocusSuccess: `2px solid ${staticGreen}`,
25820
+ boxShadowFocusSuccess: `0 0 0 4px ${changeColor(staticGreen, {
25821
+ alpha: 0.1
25822
+ })}`,
25823
+ caretColorSuccess: elementsPrimary,
25809
25824
  // warning
25810
25825
  loadingColorWarning: staticOrange,
25811
25826
  borderWarning: `2px solid ${staticOrange}`,
@@ -26108,7 +26123,7 @@
26108
26123
  transition: color .3s var(--u-bezier);
26109
26124
  margin-left: 4px;
26110
26125
  font-variant: tabular-nums;
26111
- `), ["warning", "error"].map(status => cM(`${status}-status`, [cNotM("disabled", [cB("base-loading", `
26126
+ `), ["warning", "error", "success"].map(status => cM(`${status}-status`, [cNotM("disabled", [cB("base-loading", `
26112
26127
  color: var(--u-loading-color-${status})
26113
26128
  `), cE("input-el, textarea-el", `
26114
26129
  caret-color: var(--u-caret-color-${status});
@@ -28997,6 +29012,7 @@
28997
29012
  borderRadius,
28998
29013
  textColor,
28999
29014
  caretColor,
29015
+ caretColorSuccess,
29000
29016
  caretColorError,
29001
29017
  caretColorWarning,
29002
29018
  textDecorationColor,
@@ -29012,6 +29028,11 @@
29012
29028
  textColorDisabled,
29013
29029
  boxShadowFocus,
29014
29030
  iconSize,
29031
+ colorFocusSuccess,
29032
+ boxShadowFocusSuccess,
29033
+ borderSuccess,
29034
+ borderFocusSuccess,
29035
+ borderHoverSuccess,
29015
29036
  colorFocusWarning,
29016
29037
  boxShadowFocusWarning,
29017
29038
  borderWarning,
@@ -29034,6 +29055,7 @@
29034
29055
  iconColorHover,
29035
29056
  iconColorPressed,
29036
29057
  loadingColor,
29058
+ loadingColorSuccess,
29037
29059
  loadingColorError,
29038
29060
  loadingColorWarning,
29039
29061
  selectionColor,
@@ -29072,6 +29094,14 @@
29072
29094
  "--u-text-color-disabled": textColorDisabled,
29073
29095
  "--u-box-shadow-focus": boxShadowFocus,
29074
29096
  "--u-loading-color": loadingColor,
29097
+ // form success
29098
+ "--u-caret-color-success": caretColorSuccess,
29099
+ "--u-color-focus-success": colorFocusSuccess,
29100
+ "--u-box-shadow-focus-success": boxShadowFocusSuccess,
29101
+ "--u-border-success": borderSuccess,
29102
+ "--u-border-focus-success": borderFocusSuccess,
29103
+ "--u-border-hover-success": borderHoverSuccess,
29104
+ "--u-loading-color-success": loadingColorSuccess,
29075
29105
  // form warning
29076
29106
  "--u-caret-color-warning": caretColorWarning,
29077
29107
  "--u-color-focus-warning": colorFocusWarning,
@@ -40288,8 +40318,9 @@
40288
40318
  const slideSizesTrigger = vue.ref(0);
40289
40319
  const slideSizesRef = vue.computed(() => {
40290
40320
  const { value: slidesEls } = slideElsRef;
40291
- if (!slidesEls.length)
40321
+ if (!slidesEls.length) {
40292
40322
  return [];
40323
+ }
40293
40324
  slideSizesTrigger.value;
40294
40325
  const { value: autoSlideSize } = autoSlideSizeRef;
40295
40326
  if (autoSlideSize) {
@@ -40310,8 +40341,9 @@
40310
40341
  });
40311
40342
  const slideTranlatesRef = vue.computed(() => {
40312
40343
  const { value: slideSizes } = slideSizesRef;
40313
- if (!slideSizes.length)
40344
+ if (!slideSizes.length) {
40314
40345
  return [];
40346
+ }
40315
40347
  const { centeredSlides, spaceBetween } = props;
40316
40348
  const { value: axis } = sizeAxisRef;
40317
40349
  const { [axis]: perViewSize } = perViewSizeRef.value;
@@ -40335,8 +40367,9 @@
40335
40367
  );
40336
40368
  const slideStylesRef = vue.computed(() => {
40337
40369
  const { value: slidesEls } = slideElsRef;
40338
- if (!slidesEls.length)
40370
+ if (!slidesEls.length) {
40339
40371
  return [];
40372
+ }
40340
40373
  const useComputedSize = !(autoSlideSizeRef.value || realSlidesPerViewRef.value === 1);
40341
40374
  const getSlideSize = (index) => {
40342
40375
  if (useComputedSize) {
@@ -40371,8 +40404,9 @@
40371
40404
  } else {
40372
40405
  const { value: slideSizes } = slideSizesRef;
40373
40406
  const { length } = slideSizes;
40374
- if (!length)
40407
+ if (!length) {
40375
40408
  return totalSlides;
40409
+ }
40376
40410
  const { value: translates } = slideTranlatesRef;
40377
40411
  const { value: axis } = sizeAxisRef;
40378
40412
  const perViewSize = perViewSizeRef.value[axis];
@@ -40461,21 +40495,25 @@
40461
40495
  }
40462
40496
  function prev() {
40463
40497
  const prevIndex = getRealPrevIndex();
40464
- if (prevIndex !== null)
40498
+ if (prevIndex !== null) {
40465
40499
  toRealIndex(prevIndex);
40500
+ }
40466
40501
  }
40467
40502
  function next() {
40468
40503
  const nextIndex = getRealNextIndex();
40469
- if (nextIndex !== null)
40504
+ if (nextIndex !== null) {
40470
40505
  toRealIndex(nextIndex);
40506
+ }
40471
40507
  }
40472
40508
  function prevIfSlideTransitionEnd() {
40473
- if (!inTransition || !duplicatedableRef.value)
40509
+ if (!inTransition || !duplicatedableRef.value) {
40474
40510
  prev();
40511
+ }
40475
40512
  }
40476
40513
  function nextIfSlideTransitionEnd() {
40477
- if (!inTransition || !duplicatedableRef.value)
40514
+ if (!inTransition || !duplicatedableRef.value) {
40478
40515
  next();
40516
+ }
40479
40517
  }
40480
40518
  let previousTranslate = 0;
40481
40519
  const translateStyleRef = vue.ref({});
@@ -40551,13 +40589,15 @@
40551
40589
  };
40552
40590
  provideCarouselContext(carouselContext);
40553
40591
  function addSlide(slide) {
40554
- if (!slide)
40592
+ if (!slide) {
40555
40593
  return;
40594
+ }
40556
40595
  slideElsRef.value.push(slide);
40557
40596
  }
40558
40597
  function removeSlide(slide) {
40559
- if (!slide)
40598
+ if (!slide) {
40560
40599
  return;
40600
+ }
40561
40601
  const index = getSlideIndex(slide);
40562
40602
  if (index !== -1) {
40563
40603
  slideElsRef.value.splice(index, 1);
@@ -40611,8 +40651,9 @@
40611
40651
  let dragOffset = 0;
40612
40652
  let dragStartTime = 0;
40613
40653
  function handleTouchstart(event) {
40614
- if (globalDragging)
40654
+ if (globalDragging) {
40615
40655
  return;
40656
+ }
40616
40657
  if (!slidesElRef.value?.contains(
40617
40658
  getPreciseEventTarget(event)
40618
40659
  )) {
@@ -40728,8 +40769,9 @@
40728
40769
  }
40729
40770
  function handleMousewheel(event) {
40730
40771
  event.preventDefault();
40731
- if (inTransition)
40772
+ if (inTransition) {
40732
40773
  return;
40774
+ }
40733
40775
  let { deltaX, deltaY } = event;
40734
40776
  if (event.shiftKey && !deltaX) {
40735
40777
  deltaX = deltaY;
@@ -40800,8 +40842,9 @@
40800
40842
  vue.watch(
40801
40843
  realIndexRef,
40802
40844
  (realIndex, lastRealIndex) => {
40803
- if (realIndex === lastRealIndex)
40845
+ if (realIndex === lastRealIndex) {
40804
40846
  return;
40847
+ }
40805
40848
  resetAutoplay();
40806
40849
  if (sequenceLayoutRef.value) {
40807
40850
  if (duplicatedableRef.value && displayTotalViewRef.value > 2) {
@@ -43991,6 +44034,7 @@
43991
44034
  ...originalInputSelf,
43992
44035
  color: elementsTertiary,
43993
44036
  colorFocus: elementsTertiary,
44037
+ heightMedium: "45px",
43994
44038
  border: "none",
43995
44039
  borderFocus: "none",
43996
44040
  borderHover: "none",
@@ -53490,23 +53534,28 @@
53490
53534
  width: 100%;
53491
53535
  padding: 24px 20px 10px 24px;
53492
53536
  flex-shrink: 0;
53537
+ `), cE("header-inner", `
53538
+ display: grid;
53539
+ grid-template-columns: minmax(0, 1fr) auto;
53540
+ align-items: flex-start;
53541
+ gap: 8px;
53542
+ `), cE("header-title-wrap", `
53543
+ min-width: 0;
53544
+ overflow: hidden;
53493
53545
  `), cE("header-title", `
53494
53546
  color: var(--u-header-title-color);
53495
- flex: 1;
53496
- min-width: 0;
53547
+ display: block;
53497
53548
  overflow: hidden;
53498
- text-overflow: ellipsis;
53499
53549
  white-space: nowrap;
53500
- display: block;
53501
- margin-right: 16px;
53550
+ text-overflow: ellipsis;
53551
+ width: 100%;
53502
53552
  `), cE("header-subtitle", `
53503
53553
  display: block;
53504
53554
  color: var(--u-sidebar-item-subtitle-color);
53505
53555
  overflow: hidden;
53506
53556
  text-overflow: ellipsis;
53507
53557
  white-space: nowrap;
53508
- minWidth: 0;
53509
- maxWidth: 100%;
53558
+ width: 100%;
53510
53559
  `), cE("header-actions", `
53511
53560
  padding: 4px;
53512
53561
  flex-shrink: 0;
@@ -53609,6 +53658,7 @@
53609
53658
  height: 44px;
53610
53659
  `)]), cE("message-text", `
53611
53660
  padding: 12px 16px;
53661
+ white-space: pre-wrap;
53612
53662
  `), cE("message-attachment", `
53613
53663
  display: flex;
53614
53664
  align-items: center;
@@ -53685,6 +53735,7 @@
53685
53735
  `, [c$1(".u-input-wrapper", `
53686
53736
  flex-wrap: wrap;
53687
53737
  padding: 0 4px;
53738
+ height: 100%;
53688
53739
  `, [c$1(".u-input__prefix", `
53689
53740
  width: 100%;
53690
53741
  margin: 0;
@@ -53695,13 +53746,20 @@
53695
53746
  border-top-right-radius: 12px;
53696
53747
  `), c$1("li", `
53697
53748
  padding: 12px;
53698
- `)]), c$1(".u-input__input-el", `
53699
- padding: 8px;
53749
+ `)]), c$1(".u-input__textarea-el", `
53750
+ padding-top: 12px;
53751
+ padding-left: 12px;
53752
+ padding-right: 48px;
53700
53753
  `), c$1(".u-input__placeholder", `
53701
- margin: 8px;
53754
+ padding-top: 12px;
53755
+ padding-left: 12px;
53756
+ padding-right: 48px;
53702
53757
  `)])]), cE("editing-block", `
53703
53758
  width: 100%;
53704
53759
  `), cE("input-suffix", `
53760
+ position: absolute;
53761
+ right: 12px;
53762
+ bottom: 12px;
53705
53763
  color: var(--u-input-suffix-color) !important;
53706
53764
  cursor: pointer;
53707
53765
  margin-right: 4px;
@@ -54522,152 +54580,153 @@
54522
54580
  return value != null ? String(value) : "";
54523
54581
  };
54524
54582
  const renderHeader = () => {
54525
- return /* @__PURE__ */ vue.h("div", { class: `${mergedClsPrefixRef.value}-chat-main__header` }, /* @__PURE__ */ vue.h(_UFlex, { justify: "space-between", align: "flex-start", wrap: false }, {
54526
- default: () => {
54527
- const chat = selectedChatRef.value;
54528
- const keyId = toKeyString(chat?.id);
54529
- const keyTitle = toKeyString(chat?.title);
54530
- return /* @__PURE__ */ vue.h(vue.Fragment, null, /* @__PURE__ */ vue.h(_UFlex, { vertical: true, size: [0, 0], justify: "flex-start" }, {
54531
- default: () => /* @__PURE__ */ vue.h(vue.Fragment, null, /* @__PURE__ */ vue.h(
54532
- _UText,
54533
- {
54534
- key: `${keyId}-${keyTitle}`,
54535
- variant: "heading-s-bold",
54536
- class: `${mergedClsPrefixRef.value}-chat-main__header-title`,
54537
- theme: mergedThemeRef.value.peers.Typography,
54538
- themeOverrides: mergedThemeRef.value.peerOverrides.Typography
54539
- },
54540
- {
54541
- default: () => selectedChatRef.value?.title ?? ""
54542
- }
54543
- ), isTyping.value && /* @__PURE__ */ vue.h(
54544
- _UText,
54545
- {
54546
- class: [
54547
- `${mergedClsPrefixRef.value}-chat-main__header-subtitle`,
54548
- "typing"
54549
- ],
54550
- variant: "body-m-medium"
54551
- },
54552
- {
54553
- default: () => typingTextRef.value ?? ""
54554
- }
54555
- ))
54556
- }), /* @__PURE__ */ vue.h(
54557
- _UFlex,
54558
- {
54559
- align: "center",
54560
- size: "small",
54561
- class: `${mergedClsPrefixRef.value}-chat-main__header-actions`
54562
- },
54563
- {
54564
- default: () => resolveSlot(slots.headerActions, () => {
54565
- const shareButtonProps = {
54566
- ...headerButtonPropsRef.value,
54567
- ...headerShareButtonPropsRef.value
54568
- };
54569
- const profileButtonProps = {
54570
- ...headerButtonPropsRef.value,
54571
- ...headerProfileButtonPropsRef.value
54572
- };
54573
- const closeButtonProps = {
54574
- ...headerButtonPropsRef.value,
54575
- ...headerCloseButtonPropsRef.value
54576
- };
54577
- const shareIconProps = {
54578
- ...headerIconPropsRef.value,
54579
- ...headerShareIconPropsRef.value
54580
- };
54581
- const profileIconProps = {
54582
- ...headerIconPropsRef.value,
54583
- ...headerProfileIconPropsRef.value
54584
- };
54585
- const buttons = [];
54586
- buttons.push(
54587
- /* @__PURE__ */ vue.h(_UTooltip, null, {
54588
- trigger: () => /* @__PURE__ */ vue.h(
54589
- Button,
54583
+ const chat = selectedChatRef.value;
54584
+ const keyId = toKeyString(chat?.id);
54585
+ const keyTitle = toKeyString(chat?.title);
54586
+ return /* @__PURE__ */ vue.h("div", { class: `${mergedClsPrefixRef.value}-chat-main__header-inner` }, /* @__PURE__ */ vue.h(
54587
+ "div",
54588
+ {
54589
+ class: `${mergedClsPrefixRef.value}-chat-main__header-title-wrap`
54590
+ },
54591
+ /* @__PURE__ */ vue.h(
54592
+ _UText,
54593
+ {
54594
+ key: `${keyId}-${keyTitle}`,
54595
+ variant: "heading-s-bold",
54596
+ class: `${mergedClsPrefixRef.value}-chat-main__header-title`,
54597
+ theme: mergedThemeRef.value.peers.Typography,
54598
+ themeOverrides: mergedThemeRef.value.peerOverrides.Typography
54599
+ },
54600
+ {
54601
+ default: () => selectedChatRef.value?.title ?? ""
54602
+ }
54603
+ ),
54604
+ isTyping.value && /* @__PURE__ */ vue.h(
54605
+ _UText,
54606
+ {
54607
+ class: [
54608
+ `${mergedClsPrefixRef.value}-chat-main__header-subtitle`,
54609
+ "typing"
54610
+ ],
54611
+ variant: "body-m-medium"
54612
+ },
54613
+ {
54614
+ default: () => typingTextRef.value ?? ""
54615
+ }
54616
+ )
54617
+ ), /* @__PURE__ */ vue.h(
54618
+ _UFlex,
54619
+ {
54620
+ align: "center",
54621
+ size: "small",
54622
+ class: `${mergedClsPrefixRef.value}-chat-main__header-actions`
54623
+ },
54624
+ {
54625
+ default: () => resolveSlot(slots.headerActions, () => {
54626
+ const shareButtonProps = {
54627
+ ...headerButtonPropsRef.value,
54628
+ ...headerShareButtonPropsRef.value
54629
+ };
54630
+ const profileButtonProps = {
54631
+ ...headerButtonPropsRef.value,
54632
+ ...headerProfileButtonPropsRef.value
54633
+ };
54634
+ const closeButtonProps = {
54635
+ ...headerButtonPropsRef.value,
54636
+ ...headerCloseButtonPropsRef.value
54637
+ };
54638
+ const shareIconProps = {
54639
+ ...headerIconPropsRef.value,
54640
+ ...headerShareIconPropsRef.value
54641
+ };
54642
+ const profileIconProps = {
54643
+ ...headerIconPropsRef.value,
54644
+ ...headerProfileIconPropsRef.value
54645
+ };
54646
+ const buttons = [];
54647
+ buttons.push(
54648
+ /* @__PURE__ */ vue.h(_UTooltip, null, {
54649
+ trigger: () => /* @__PURE__ */ vue.h(
54650
+ Button,
54651
+ {
54652
+ secondary: true,
54653
+ circle: true,
54654
+ size: "large",
54655
+ ...shareButtonProps,
54656
+ theme: mergedThemeRef.value.peers.Button,
54657
+ themeOverrides: mergedThemeRef.value.peerOverrides.Button,
54658
+ onClick: () => onChatShare?.value?.()
54659
+ },
54660
+ {
54661
+ default: () => /* @__PURE__ */ vue.h(
54662
+ UIcon$1,
54590
54663
  {
54591
- secondary: true,
54592
- circle: true,
54593
- size: "large",
54594
- ...shareButtonProps,
54595
- theme: mergedThemeRef.value.peers.Button,
54596
- themeOverrides: mergedThemeRef.value.peerOverrides.Button,
54597
- onClick: () => onChatShare?.value?.()
54664
+ size: 20,
54665
+ ...shareIconProps,
54666
+ theme: mergedThemeRef.value.peers.HeaderShareIcon,
54667
+ themeOverrides: mergedThemeRef.value.peerOverrides.HeaderShareIcon
54598
54668
  },
54599
54669
  {
54600
- default: () => /* @__PURE__ */ vue.h(
54601
- UIcon$1,
54602
- {
54603
- size: 20,
54604
- ...shareIconProps,
54605
- theme: mergedThemeRef.value.peers.HeaderShareIcon,
54606
- themeOverrides: mergedThemeRef.value.peerOverrides.HeaderShareIcon
54607
- },
54608
- {
54609
- default: () => /* @__PURE__ */ vue.h(ArrowHookUpRight, null)
54610
- }
54611
- )
54670
+ default: () => /* @__PURE__ */ vue.h(ArrowHookUpRight, null)
54612
54671
  }
54613
- ),
54614
- default: () => shareButtonTooltipRef.value
54615
- })
54616
- );
54617
- buttons.push(
54618
- /* @__PURE__ */ vue.h(_UTooltip, null, {
54619
- trigger: () => /* @__PURE__ */ vue.h(
54620
- Button,
54672
+ )
54673
+ }
54674
+ ),
54675
+ default: () => shareButtonTooltipRef.value
54676
+ })
54677
+ );
54678
+ buttons.push(
54679
+ /* @__PURE__ */ vue.h(_UTooltip, null, {
54680
+ trigger: () => /* @__PURE__ */ vue.h(
54681
+ Button,
54682
+ {
54683
+ secondary: true,
54684
+ circle: true,
54685
+ size: "large",
54686
+ ...profileButtonProps,
54687
+ theme: mergedThemeRef.value.peers.Button,
54688
+ themeOverrides: mergedThemeRef.value.peerOverrides.Button,
54689
+ onClick: () => onUserProfile?.value?.()
54690
+ },
54691
+ {
54692
+ default: () => /* @__PURE__ */ vue.h(
54693
+ UIcon$1,
54621
54694
  {
54622
- secondary: true,
54623
- circle: true,
54624
- size: "large",
54625
- ...profileButtonProps,
54626
- theme: mergedThemeRef.value.peers.Button,
54627
- themeOverrides: mergedThemeRef.value.peerOverrides.Button,
54628
- onClick: () => onUserProfile?.value?.()
54695
+ size: 20,
54696
+ ...profileIconProps,
54697
+ theme: mergedThemeRef.value.peers.HeaderProfileIcon,
54698
+ themeOverrides: mergedThemeRef.value.peerOverrides.HeaderProfileIcon
54629
54699
  },
54630
54700
  {
54631
- default: () => /* @__PURE__ */ vue.h(
54632
- UIcon$1,
54633
- {
54634
- size: 20,
54635
- ...profileIconProps,
54636
- theme: mergedThemeRef.value.peers.HeaderProfileIcon,
54637
- themeOverrides: mergedThemeRef.value.peerOverrides.HeaderProfileIcon
54638
- },
54639
- {
54640
- default: () => /* @__PURE__ */ vue.h(PersonNote, null)
54641
- }
54642
- )
54701
+ default: () => /* @__PURE__ */ vue.h(PersonNote, null)
54643
54702
  }
54644
- ),
54645
- default: () => profileButtonTooltipRef.value
54646
- })
54647
- );
54648
- buttons.push(
54649
- /* @__PURE__ */ vue.h(
54650
- Button,
54651
- {
54652
- type: "primary",
54653
- size: "large",
54654
- round: true,
54655
- ...closeButtonProps,
54656
- theme: mergedThemeRef.value.peers.Button,
54657
- themeOverrides: mergedThemeRef.value.peerOverrides.Button,
54658
- onClick: () => onChatClose?.value?.()
54659
- },
54660
- {
54661
- default: () => closeButtonTextRef.value
54662
- }
54663
- )
54664
- );
54665
- return buttons;
54703
+ )
54704
+ }
54705
+ ),
54706
+ default: () => profileButtonTooltipRef.value
54666
54707
  })
54667
- }
54668
- ));
54708
+ );
54709
+ buttons.push(
54710
+ /* @__PURE__ */ vue.h(
54711
+ Button,
54712
+ {
54713
+ type: "primary",
54714
+ size: "large",
54715
+ round: true,
54716
+ ...closeButtonProps,
54717
+ theme: mergedThemeRef.value.peers.Button,
54718
+ themeOverrides: mergedThemeRef.value.peerOverrides.Button,
54719
+ onClick: () => onChatClose?.value?.()
54720
+ },
54721
+ {
54722
+ default: () => closeButtonTextRef.value
54723
+ }
54724
+ )
54725
+ );
54726
+ return buttons;
54727
+ })
54669
54728
  }
54670
- }));
54729
+ ));
54671
54730
  };
54672
54731
  const renderMessages = () => {
54673
54732
  return /* @__PURE__ */ vue.h(
@@ -54722,7 +54781,7 @@
54722
54781
  if (isSending.value) {
54723
54782
  return;
54724
54783
  }
54725
- const hasContent = inputValue.value.trim();
54784
+ const hasContent = inputValue.value;
54726
54785
  const hasAttachments = attachmentFileList.value.length > 0;
54727
54786
  if (editMessageIdRef?.value && hasContent) {
54728
54787
  isSending.value = true;
@@ -54731,7 +54790,7 @@
54731
54790
  if (messageToEdit) {
54732
54791
  const updatedMessage = {
54733
54792
  ...messageToEdit,
54734
- content: inputValue.value.trim()
54793
+ content: inputValue.value
54735
54794
  };
54736
54795
  const bubbleActions = bubbleActionsRef?.value;
54737
54796
  if (bubbleActions) {
@@ -54784,7 +54843,7 @@
54784
54843
  }
54785
54844
  return result;
54786
54845
  })() : void 0;
54787
- handleMessageSend(inputValue.value.trim(), attachments);
54846
+ handleMessageSend(inputValue.value, attachments);
54788
54847
  inputValue.value = "";
54789
54848
  attachmentFileList.value = [];
54790
54849
  chatInputs.value[selectedChatRef.value.id] = "";
@@ -54925,9 +54984,13 @@
54925
54984
  value: inputValue.value,
54926
54985
  placeholder: inputPlaceholderRef.value,
54927
54986
  class: `${mergedClsPrefixRef.value}-chat-main__input`,
54928
- ...footerInputPropsRef.value,
54929
54987
  theme: mergedThemeRef.value.peers.Input,
54930
54988
  themeOverrides: mergedThemeRef.value.peerOverrides.Input,
54989
+ type: "textarea",
54990
+ autosize: {
54991
+ minRows: 1,
54992
+ maxRows: 5
54993
+ },
54931
54994
  onUpdateValue: (value) => {
54932
54995
  inputValue.value = value;
54933
54996
  if (selectedChatRef.value) {
@@ -54940,7 +55003,8 @@
54940
55003
  e.stopPropagation();
54941
55004
  void handleSendMessage();
54942
55005
  }
54943
- }
55006
+ },
55007
+ ...footerInputPropsRef.value
54944
55008
  },
54945
55009
  {
54946
55010
  prefix: () => renderEditingBlock(),
@@ -80823,7 +80887,6 @@
80823
80887
  const presetProps = {
80824
80888
  // put dialog props after since I want the card to unbordered by default
80825
80889
  ...dialogProps,
80826
- presetDisabled: Boolean,
80827
80890
  size: {
80828
80891
  type: String,
80829
80892
  default: "medium"
@@ -81194,7 +81257,10 @@
81194
81257
  type: Boolean,
81195
81258
  default: true
81196
81259
  },
81197
- preset: String,
81260
+ preset: {
81261
+ type: String,
81262
+ default: "dialog"
81263
+ },
81198
81264
  to: [String, Object],
81199
81265
  displayDirective: {
81200
81266
  type: String,
@@ -81456,7 +81522,7 @@
81456
81522
  ref: "bodyWrapper",
81457
81523
  displayDirective: this.displayDirective,
81458
81524
  show: this.show,
81459
- preset: this.preset,
81525
+ preset: this.internalDialog ? void 0 : this.preset,
81460
81526
  autoFocus: this.autoFocus,
81461
81527
  trapFocus: this.trapFocus,
81462
81528
  draggable: this.draggable,
@@ -81654,8 +81720,7 @@
81654
81720
  transformOrigin: this.transformOrigin,
81655
81721
  draggable: this.draggable,
81656
81722
  internalAppear: true,
81657
- internalDialog: true,
81658
- presetDisabled: true
81723
+ internalDialog: true
81659
81724
  },
81660
81725
  {
81661
81726
  default: () => /* @__PURE__ */ vue.h(
@@ -95109,6 +95174,10 @@
95109
95174
  type: Boolean,
95110
95175
  default: false
95111
95176
  },
95177
+ hideHeaderActions: {
95178
+ type: Boolean,
95179
+ default: false
95180
+ },
95112
95181
  copyButtonProps: Object,
95113
95182
  copyIconProps: Object,
95114
95183
  headerEditButtonProps: Object,
@@ -95742,7 +95811,7 @@
95742
95811
  default: () => locale.copyTooltip
95743
95812
  }))
95744
95813
  }
95745
- ), /* @__PURE__ */ vue.h(_UFlex, { align: "center", size: "small" }, {
95814
+ ), !props.hideHeaderActions && /* @__PURE__ */ vue.h(_UFlex, { align: "center", size: "small" }, {
95746
95815
  default: () => resolveSlot(slots.headerActions, () => {
95747
95816
  const buttons = [];
95748
95817
  buttons.push(
@@ -112286,7 +112355,7 @@
112286
112355
  });
112287
112356
  }
112288
112357
 
112289
- var version = "2.0.0-beta.8";
112358
+ var version = "2.0.0-beta.9";
112290
112359
 
112291
112360
  function create({
112292
112361
  componentPrefix = "U",