@uzum-tech/ui 1.8.0 → 1.8.2

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 (188) hide show
  1. package/dist/index.js +378 -197
  2. package/dist/index.prod.js +3 -3
  3. package/es/_internal/scrollbar/src/Scrollbar.js +1 -1
  4. package/es/button/src/Button.d.ts +72 -0
  5. package/es/button/src/Button.js +13 -7
  6. package/es/button/src/styles/index.cssr.js +1 -2
  7. package/es/button/styles/light.d.ts +8 -0
  8. package/es/button/styles/light.js +7 -7
  9. package/es/calendar/src/Calendar.d.ts +80 -0
  10. package/es/calendar/styles/light.d.ts +8 -0
  11. package/es/chat/index.d.ts +2 -1
  12. package/es/chat/index.js +1 -0
  13. package/es/chat/src/Chat.d.ts +87 -7
  14. package/es/chat/src/Chat.js +12 -12
  15. package/es/chat/src/ChatListItems.d.ts +1847 -4
  16. package/es/chat/src/ChatListItems.js +16 -12
  17. package/es/chat/src/ChatMessages.d.ts +1848 -4
  18. package/es/chat/src/ChatMessages.js +27 -10
  19. package/es/chat/src/ChatParts/MainArea.js +10 -10
  20. package/es/chat/src/ChatParts/Sidebar.js +2 -2
  21. package/es/chat/src/interface.d.ts +4 -0
  22. package/es/chat/src/styles/index.cssr.js +14 -17
  23. package/es/chat/styles/dark.d.ts +8 -0
  24. package/es/chat/styles/light.d.ts +9 -1
  25. package/es/chat/styles/light.js +15 -3
  26. package/es/color-picker/src/ColorInputUnit.d.ts +8 -0
  27. package/es/color-picker/src/ColorPicker.d.ts +72 -0
  28. package/es/color-picker/styles/light.d.ts +8 -0
  29. package/es/data-table/src/DataTable.d.ts +56 -0
  30. package/es/data-table/src/HeaderButton/FilterButton.d.ts +8 -0
  31. package/es/data-table/src/HeaderButton/FilterMenu.d.ts +8 -0
  32. package/es/data-table/src/TableParts/Body.d.ts +8 -0
  33. package/es/data-table/src/TableParts/Header.d.ts +8 -0
  34. package/es/data-table/src/interface.d.ts +24 -0
  35. package/es/data-table/styles/light.d.ts +8 -0
  36. package/es/date-picker/src/DatePicker.d.ts +168 -0
  37. package/es/date-picker/src/panel/date.d.ts +24 -0
  38. package/es/date-picker/src/panel/daterange.d.ts +24 -0
  39. package/es/date-picker/src/panel/datetime.d.ts +24 -0
  40. package/es/date-picker/src/panel/datetimerange.d.ts +24 -0
  41. package/es/date-picker/src/panel/panelMonth.d.ts +48 -0
  42. package/es/date-picker/src/panel/panelMonthContent.d.ts +24 -0
  43. package/es/date-picker/src/panel/panelYear.d.ts +48 -0
  44. package/es/date-picker/src/panel/panelYearContent.d.ts +24 -0
  45. package/es/date-picker/src/panel/use-calendar.d.ts +24 -0
  46. package/es/date-picker/src/panel/use-dual-calendar.d.ts +24 -0
  47. package/es/date-picker/src/panel/use-panel-common.d.ts +24 -0
  48. package/es/date-picker/styles/light.d.ts +16 -0
  49. package/es/dialog/src/Dialog.d.ts +56 -0
  50. package/es/dialog/src/DialogProvider.d.ts +16 -0
  51. package/es/dialog/styles/light.d.ts +8 -0
  52. package/es/dynamic-input/src/DynamicInput.d.ts +80 -0
  53. package/es/dynamic-input/src/InputPreset.d.ts +8 -0
  54. package/es/dynamic-input/src/PairPreset.d.ts +8 -0
  55. package/es/dynamic-input/styles/light.d.ts +8 -0
  56. package/es/dynamic-tags/src/DynamicTags.d.ts +80 -0
  57. package/es/dynamic-tags/styles/light.d.ts +8 -0
  58. package/es/input-number/src/InputNumber.d.ts +80 -0
  59. package/es/input-number/styles/light.d.ts +8 -0
  60. package/es/legacy-transfer/src/Transfer.d.ts +80 -0
  61. package/es/legacy-transfer/src/TransferFilter.d.ts +8 -0
  62. package/es/legacy-transfer/src/TransferList.d.ts +8 -0
  63. package/es/legacy-transfer/src/TransferListItem.d.ts +8 -0
  64. package/es/legacy-transfer/styles/light.d.ts +8 -0
  65. package/es/modal/src/BodyWrapper.d.ts +16 -0
  66. package/es/modal/src/Modal.d.ts +72 -0
  67. package/es/modal/styles/light.d.ts +8 -0
  68. package/es/notification/src/Notification.d.ts +5 -0
  69. package/es/notification/src/Notification.js +16 -6
  70. package/es/notification/src/NotificationContainer.d.ts +12 -0
  71. package/es/notification/src/NotificationProvider.d.ts +108 -0
  72. package/es/notification/src/styles/index.cssr.js +12 -8
  73. package/es/notification/styles/light.d.ts +24 -0
  74. package/es/notification/styles/light.js +9 -8
  75. package/es/popconfirm/src/Popconfirm.d.ts +80 -0
  76. package/es/popconfirm/styles/light.d.ts +8 -0
  77. package/es/time-picker/src/Panel.d.ts +8 -0
  78. package/es/time-picker/src/TimePicker.d.ts +80 -0
  79. package/es/time-picker/styles/light.d.ts +8 -0
  80. package/es/transfer/src/Transfer.d.ts +80 -0
  81. package/es/transfer/src/TransferFilter.d.ts +8 -0
  82. package/es/transfer/src/TransferList.d.ts +8 -0
  83. package/es/transfer/src/TransferListItem.d.ts +8 -0
  84. package/es/transfer/styles/light.d.ts +8 -0
  85. package/es/upload/src/Upload.d.ts +90 -0
  86. package/es/upload/src/Upload.js +2 -1
  87. package/es/upload/src/UploadFile.d.ts +9 -0
  88. package/es/upload/src/UploadProgress.d.ts +9 -0
  89. package/es/upload/src/styles/index.cssr.js +1 -0
  90. package/es/upload/src/useUploadActionsRender.js +5 -1
  91. package/es/upload/styles/light.d.ts +10 -0
  92. package/es/upload/styles/light.js +6 -5
  93. package/es/version.d.ts +1 -1
  94. package/es/version.js +1 -1
  95. package/lib/_internal/scrollbar/src/Scrollbar.js +1 -1
  96. package/lib/button/src/Button.d.ts +72 -0
  97. package/lib/button/src/Button.js +13 -7
  98. package/lib/button/src/styles/index.cssr.js +1 -2
  99. package/lib/button/styles/light.d.ts +8 -0
  100. package/lib/button/styles/light.js +7 -7
  101. package/lib/calendar/src/Calendar.d.ts +80 -0
  102. package/lib/calendar/styles/light.d.ts +8 -0
  103. package/lib/chat/index.d.ts +2 -1
  104. package/lib/chat/index.js +5 -1
  105. package/lib/chat/src/Chat.d.ts +87 -7
  106. package/lib/chat/src/Chat.js +12 -12
  107. package/lib/chat/src/ChatListItems.d.ts +1847 -4
  108. package/lib/chat/src/ChatListItems.js +14 -10
  109. package/lib/chat/src/ChatMessages.d.ts +1848 -4
  110. package/lib/chat/src/ChatMessages.js +25 -8
  111. package/lib/chat/src/ChatParts/MainArea.js +10 -10
  112. package/lib/chat/src/ChatParts/Sidebar.js +2 -2
  113. package/lib/chat/src/interface.d.ts +4 -0
  114. package/lib/chat/src/styles/index.cssr.js +14 -17
  115. package/lib/chat/styles/dark.d.ts +8 -0
  116. package/lib/chat/styles/light.d.ts +9 -1
  117. package/lib/chat/styles/light.js +15 -3
  118. package/lib/color-picker/src/ColorInputUnit.d.ts +8 -0
  119. package/lib/color-picker/src/ColorPicker.d.ts +72 -0
  120. package/lib/color-picker/styles/light.d.ts +8 -0
  121. package/lib/data-table/src/DataTable.d.ts +56 -0
  122. package/lib/data-table/src/HeaderButton/FilterButton.d.ts +8 -0
  123. package/lib/data-table/src/HeaderButton/FilterMenu.d.ts +8 -0
  124. package/lib/data-table/src/TableParts/Body.d.ts +8 -0
  125. package/lib/data-table/src/TableParts/Header.d.ts +8 -0
  126. package/lib/data-table/src/interface.d.ts +24 -0
  127. package/lib/data-table/styles/light.d.ts +8 -0
  128. package/lib/date-picker/src/DatePicker.d.ts +168 -0
  129. package/lib/date-picker/src/panel/date.d.ts +24 -0
  130. package/lib/date-picker/src/panel/daterange.d.ts +24 -0
  131. package/lib/date-picker/src/panel/datetime.d.ts +24 -0
  132. package/lib/date-picker/src/panel/datetimerange.d.ts +24 -0
  133. package/lib/date-picker/src/panel/panelMonth.d.ts +48 -0
  134. package/lib/date-picker/src/panel/panelMonthContent.d.ts +24 -0
  135. package/lib/date-picker/src/panel/panelYear.d.ts +48 -0
  136. package/lib/date-picker/src/panel/panelYearContent.d.ts +24 -0
  137. package/lib/date-picker/src/panel/use-calendar.d.ts +24 -0
  138. package/lib/date-picker/src/panel/use-dual-calendar.d.ts +24 -0
  139. package/lib/date-picker/src/panel/use-panel-common.d.ts +24 -0
  140. package/lib/date-picker/styles/light.d.ts +16 -0
  141. package/lib/dialog/src/Dialog.d.ts +56 -0
  142. package/lib/dialog/src/DialogProvider.d.ts +16 -0
  143. package/lib/dialog/styles/light.d.ts +8 -0
  144. package/lib/dynamic-input/src/DynamicInput.d.ts +80 -0
  145. package/lib/dynamic-input/src/InputPreset.d.ts +8 -0
  146. package/lib/dynamic-input/src/PairPreset.d.ts +8 -0
  147. package/lib/dynamic-input/styles/light.d.ts +8 -0
  148. package/lib/dynamic-tags/src/DynamicTags.d.ts +80 -0
  149. package/lib/dynamic-tags/styles/light.d.ts +8 -0
  150. package/lib/input-number/src/InputNumber.d.ts +80 -0
  151. package/lib/input-number/styles/light.d.ts +8 -0
  152. package/lib/legacy-transfer/src/Transfer.d.ts +80 -0
  153. package/lib/legacy-transfer/src/TransferFilter.d.ts +8 -0
  154. package/lib/legacy-transfer/src/TransferList.d.ts +8 -0
  155. package/lib/legacy-transfer/src/TransferListItem.d.ts +8 -0
  156. package/lib/legacy-transfer/styles/light.d.ts +8 -0
  157. package/lib/modal/src/BodyWrapper.d.ts +16 -0
  158. package/lib/modal/src/Modal.d.ts +72 -0
  159. package/lib/modal/styles/light.d.ts +8 -0
  160. package/lib/notification/src/Notification.d.ts +5 -0
  161. package/lib/notification/src/Notification.js +14 -4
  162. package/lib/notification/src/NotificationContainer.d.ts +12 -0
  163. package/lib/notification/src/NotificationProvider.d.ts +108 -0
  164. package/lib/notification/src/styles/index.cssr.js +12 -8
  165. package/lib/notification/styles/light.d.ts +24 -0
  166. package/lib/notification/styles/light.js +9 -8
  167. package/lib/popconfirm/src/Popconfirm.d.ts +80 -0
  168. package/lib/popconfirm/styles/light.d.ts +8 -0
  169. package/lib/time-picker/src/Panel.d.ts +8 -0
  170. package/lib/time-picker/src/TimePicker.d.ts +80 -0
  171. package/lib/time-picker/styles/light.d.ts +8 -0
  172. package/lib/transfer/src/Transfer.d.ts +80 -0
  173. package/lib/transfer/src/TransferFilter.d.ts +8 -0
  174. package/lib/transfer/src/TransferList.d.ts +8 -0
  175. package/lib/transfer/src/TransferListItem.d.ts +8 -0
  176. package/lib/transfer/styles/light.d.ts +8 -0
  177. package/lib/upload/src/Upload.d.ts +90 -0
  178. package/lib/upload/src/Upload.js +2 -1
  179. package/lib/upload/src/UploadFile.d.ts +9 -0
  180. package/lib/upload/src/UploadProgress.d.ts +9 -0
  181. package/lib/upload/src/styles/index.cssr.js +1 -0
  182. package/lib/upload/src/useUploadActionsRender.js +5 -1
  183. package/lib/upload/styles/light.d.ts +10 -0
  184. package/lib/upload/styles/light.js +6 -5
  185. package/lib/version.d.ts +1 -1
  186. package/lib/version.js +1 -1
  187. package/package.json +1 -1
  188. package/web-types.json +4 -4
package/dist/index.js CHANGED
@@ -31800,7 +31800,7 @@
31800
31800
  const scrollTo = (options, y) => {
31801
31801
  if (!props.scrollable) return;
31802
31802
  if (typeof options === "number") {
31803
- scrollToPosition(y ?? 0, options, 0, false, "auto");
31803
+ scrollToPosition(options, y ?? 0, 0, false, "auto");
31804
31804
  return;
31805
31805
  }
31806
31806
  const {
@@ -37880,8 +37880,8 @@
37880
37880
  const successPress = "#0f9b42";
37881
37881
  const warningHover = "#f79942";
37882
37882
  const warningPress = "#df7a1d";
37883
- const errorHover = "#f75e4d";
37884
- const errorPress = "#e53a27";
37883
+ const errorHover = "#cb0000";
37884
+ const errorDisable = "#f8a39a";
37885
37885
  return {
37886
37886
  ...commonVariables$5,
37887
37887
  heightTiny: heightMini,
@@ -37903,20 +37903,28 @@
37903
37903
  colorOpacitySecondaryPressed: "0.28",
37904
37904
  colorOpacitySecondaryFocus: "0.27",
37905
37905
  colorSecondary: elementsTertiary,
37906
- colorSecondaryHover: elementsTertiary,
37906
+ colorSecondaryHover: elementsQuaternary,
37907
37907
  colorSecondaryPressed: elementsTertiary,
37908
+ colorSecondaryFocus: elementsTertiary,
37909
+ colorSecondaryDisabled: elementsTertiary,
37910
+ textColorSecondaryDisabled: elementsQuinary,
37908
37911
  waveColorSecondary: elementsQuinary,
37909
37912
  // tertiary
37910
37913
  colorTertiary: elementsPrimary,
37911
37914
  colorTertiaryHover: elementsSenary,
37912
37915
  colorTertiaryPressed: elementsPrimary,
37913
- colorTertiaryDisalbed: elementsTertiary,
37914
- waveColorTertiary: elementsTertiary,
37916
+ colorTertiaryFocus: elementsPrimary,
37917
+ colorTertiaryDisalbed: elementsQuinary,
37918
+ waveColorTertiary: elementsQuinary,
37915
37919
  textColorTextTertiary: textQuaternary,
37920
+ rippleColorTertiary: elementsQuinary,
37916
37921
  // quaternary
37917
37922
  colorQuaternary: "#0000",
37918
- colorQuaternaryHover: elementsTertiary,
37919
- colorQuaternaryPressed: elementsQuaternary,
37923
+ colorQuaternaryHover: elementsQuaternary,
37924
+ colorQuaternaryPressed: "#0000",
37925
+ colorQuaternaryFocus: "#0000",
37926
+ rippleColorQuaternary: elementsQuinary,
37927
+ waveColorQuaternary: elementsQuinary,
37920
37928
  // default type
37921
37929
  color: "#0000",
37922
37930
  colorHover: "#0000",
@@ -37948,10 +37956,10 @@
37948
37956
  rippleColor: brandPrimary500,
37949
37957
  // primary
37950
37958
  colorPrimary: brandPrimary500,
37951
- colorHoverPrimary: brandPrimary400,
37952
- colorPressedPrimary: brandPrimary600,
37953
- colorFocusPrimary: brandPrimary400,
37954
- colorDisabledPrimary: brandPrimary500,
37959
+ colorHoverPrimary: brandPrimary600,
37960
+ colorPressedPrimary: brandPrimary500,
37961
+ colorFocusPrimary: brandPrimary500,
37962
+ colorDisabledPrimary: brandPrimary300,
37955
37963
  waveColorPrimary: brandPrimary300,
37956
37964
  textColorPrimary: staticWhite,
37957
37965
  textColorHoverPrimary: staticWhite,
@@ -37959,21 +37967,21 @@
37959
37967
  textColorFocusPrimary: staticWhite,
37960
37968
  textColorDisabledPrimary: staticWhite,
37961
37969
  textColorTextPrimary: brandPrimary500,
37962
- textColorTextHoverPrimary: brandPrimary400,
37963
- textColorTextPressedPrimary: brandPrimary600,
37964
- textColorTextFocusPrimary: brandPrimary400,
37965
- textColorTextDisabledPrimary: textTertiary,
37970
+ textColorTextHoverPrimary: brandPrimary600,
37971
+ textColorTextPressedPrimary: brandPrimary300,
37972
+ textColorTextFocusPrimary: brandPrimary300,
37973
+ textColorTextDisabledPrimary: brandPrimary300,
37966
37974
  textColorGhostPrimary: brandPrimary500,
37967
- textColorGhostHoverPrimary: brandPrimary400,
37968
- textColorGhostPressedPrimary: brandPrimary600,
37969
- textColorGhostFocusPrimary: brandPrimary400,
37970
- textColorGhostDisabledPrimary: brandPrimary500,
37975
+ textColorGhostHoverPrimary: brandPrimary600,
37976
+ textColorGhostPressedPrimary: brandPrimary500,
37977
+ textColorGhostFocusPrimary: brandPrimary500,
37978
+ textColorGhostDisabledPrimary: brandPrimary300,
37971
37979
  borderPrimary: `2px solid ${brandPrimary500}`,
37972
- borderHoverPrimary: `2px solid ${brandPrimary400}`,
37973
- borderPressedPrimary: `2px solid ${brandPrimary600}`,
37974
- borderFocusPrimary: `2px solid ${brandPrimary400}`,
37975
- borderDisabledPrimary: `2px solid ${brandPrimary500}`,
37976
- rippleColorPrimary: brandPrimary500,
37980
+ borderHoverPrimary: `2px solid ${brandPrimary600}`,
37981
+ borderPressedPrimary: `2px solid ${brandPrimary500}`,
37982
+ borderFocusPrimary: `2px solid ${brandPrimary500}`,
37983
+ borderDisabledPrimary: `2px solid ${brandPrimary300}`,
37984
+ rippleColorPrimary: brandPrimary300,
37977
37985
  // info
37978
37986
  colorInfo: brandQuaternary500,
37979
37987
  colorHoverInfo: brandQuaternary300,
@@ -38058,9 +38066,9 @@
38058
38066
  // error
38059
38067
  colorError: staticRed,
38060
38068
  colorHoverError: errorHover,
38061
- colorPressedError: errorPress,
38062
- colorFocusError: errorHover,
38063
- colorDisabledError: staticRed,
38069
+ colorPressedError: staticRed,
38070
+ colorFocusError: staticRed,
38071
+ colorDisabledError: errorDisable,
38064
38072
  textColorError: staticWhite,
38065
38073
  textColorHoverError: staticWhite,
38066
38074
  textColorPressedError: staticWhite,
@@ -38068,20 +38076,20 @@
38068
38076
  textColorDisabledError: staticWhite,
38069
38077
  textColorTextError: staticRed,
38070
38078
  textColorTextHoverError: errorHover,
38071
- textColorTextPressedError: errorPress,
38072
- textColorTextFocusError: errorHover,
38073
- textColorTextDisabledError: textTertiary,
38079
+ textColorTextPressedError: staticRed,
38080
+ textColorTextFocusError: staticRed,
38081
+ textColorTextDisabledError: errorDisable,
38074
38082
  textColorGhostError: staticRed,
38075
38083
  textColorGhostHoverError: errorHover,
38076
- textColorGhostPressedError: errorPress,
38077
- textColorGhostFocusError: errorHover,
38078
- textColorGhostDisabledError: staticRed,
38084
+ textColorGhostPressedError: staticRed,
38085
+ textColorGhostFocusError: staticRed,
38086
+ textColorGhostDisabledError: errorDisable,
38079
38087
  borderError: `2px solid ${staticRed}`,
38080
38088
  borderHoverError: `2px solid ${errorHover}`,
38081
- borderPressedError: `2px solid ${errorPress}`,
38082
- borderFocusError: `2px solid ${errorHover}`,
38083
- borderDisabledError: `2px solid ${staticRed}`,
38084
- rippleColorError: staticRed,
38089
+ borderPressedError: `2px solid ${staticRed}`,
38090
+ borderFocusError: `2px solid ${staticRed}`,
38091
+ borderDisabledError: `2px solid ${errorDisable}`,
38092
+ rippleColorError: errorDisable,
38085
38093
  waveOpacity: "0.6",
38086
38094
  fontWeight,
38087
38095
  fontWeightStrong
@@ -38129,6 +38137,7 @@
38129
38137
  borderRadiusLarge,
38130
38138
  closeMedium,
38131
38139
  iconMedium,
38140
+ iconLarge,
38132
38141
  fontWeight,
38133
38142
  staticBlack,
38134
38143
  staticWhite,
@@ -38138,10 +38147,10 @@
38138
38147
  brandPrimary500,
38139
38148
  brandSecondary600,
38140
38149
  staticRed,
38141
- elementsTertiary,
38142
- textPrimary,
38150
+ elementsQuinary,
38143
38151
  transparencySecondary,
38144
- transparencyPrimary
38152
+ transparencyPrimary,
38153
+ elementsDarkQuinary
38145
38154
  } = vars;
38146
38155
  return {
38147
38156
  ...commonVars$5,
@@ -38158,47 +38167,53 @@
38158
38167
  borderRadius: borderRadiusLarge,
38159
38168
  closeSize: closeMedium,
38160
38169
  closeIconSize: iconMedium,
38161
- avatarSize: iconMedium,
38170
+ avatarSize: iconLarge,
38162
38171
  closeMargin: "12px",
38163
38172
  // Default
38164
- color: staticBlack,
38165
- iconColor: staticWhite,
38166
- textColor: staticWhite,
38167
- closeIconColor: staticWhite,
38168
- closeIconColorHover: staticWhite,
38169
- closeIconColorPressed: staticWhite,
38173
+ color: staticWhite,
38174
+ iconColor: elementsDarkQuinary,
38175
+ textColor: staticBlack,
38176
+ closeIconColor: staticBlack,
38177
+ closeIconColorHover: staticBlack,
38178
+ closeIconColorPressed: staticBlack,
38170
38179
  closeColorHover: transparencyTertiary,
38171
38180
  closeColorPressed: transparencyQuinary,
38172
- titleTextColor: staticWhite,
38173
- descriptionTextColor: staticWhite,
38174
- actionTextColor: staticWhite,
38181
+ titleTextColor: staticBlack,
38182
+ descriptionTextColor: staticBlack,
38183
+ actionTextColor: staticBlack,
38184
+ iconWrapperColor: "rgb(16 16 16 / 8%)",
38185
+ iconWrapperPulseColor: "rgb(16 16 16 / 4%)",
38175
38186
  // Success
38176
- colorSuccess: staticGreen,
38177
- iconColorSuccess: staticWhite,
38178
- textColorSuccess: staticWhite,
38179
- closeIconColorSuccess: staticWhite,
38180
- closeIconColorHoverSuccess: staticWhite,
38181
- closeIconColorPressedSuccess: staticWhite,
38187
+ colorSuccess: staticWhite,
38188
+ iconColorSuccess: staticGreen,
38189
+ textColorSuccess: staticBlack,
38190
+ closeIconColorSuccess: staticBlack,
38191
+ closeIconColorHoverSuccess: staticBlack,
38192
+ closeIconColorPressedSuccess: staticBlack,
38182
38193
  closeColorHoverSuccess: transparencyTertiary,
38183
38194
  closeColorPressedSuccess: transparencyQuinary,
38184
- titleTextColorSuccess: staticWhite,
38185
- descriptionTextColorSuccess: staticWhite,
38186
- actionTextColorSuccess: staticWhite,
38195
+ titleTextColorSuccess: staticBlack,
38196
+ descriptionTextColorSuccess: staticBlack,
38197
+ actionTextColorSuccess: staticBlack,
38198
+ iconWrapperColorSuccess: derived.brandTertiary300,
38199
+ iconWrapperPulseColorSuccess: derived.brand350,
38187
38200
  // Info
38188
- colorInfo: elementsTertiary,
38189
- iconColorInfo: textPrimary,
38190
- textColorInfo: textPrimary,
38191
- closeIconColorInfo: textPrimary,
38192
- closeIconColorHoverInfo: textPrimary,
38193
- closeIconColorPressedInfo: textPrimary,
38201
+ colorInfo: staticWhite,
38202
+ iconColorInfo: elementsQuinary,
38203
+ textColorInfo: staticBlack,
38204
+ closeIconColorInfo: staticBlack,
38205
+ closeIconColorHoverInfo: staticBlack,
38206
+ closeIconColorPressedInfo: staticBlack,
38194
38207
  closeColorHoverInfo: transparencySecondary,
38195
38208
  closeColorPressedInfo: transparencyPrimary,
38196
- titleTextColorInfo: textPrimary,
38197
- descriptionTextColorInfo: textPrimary,
38198
- actionTextColorInfo: textPrimary,
38209
+ titleTextColorInfo: staticBlack,
38210
+ descriptionTextColorInfo: staticBlack,
38211
+ actionTextColorInfo: staticBlack,
38212
+ iconWrapperColorInfo: "rgb(197 199 202 / 36%)",
38213
+ iconWrapperPulseColorInfo: "rgb(197 199 202 / 14%)",
38199
38214
  // Warning
38200
- colorWarning: brandSecondary600,
38201
- iconColorWarning: staticBlack,
38215
+ colorWarning: staticWhite,
38216
+ iconColorWarning: brandSecondary600,
38202
38217
  textColorWarning: staticBlack,
38203
38218
  closeIconColorWarning: staticBlack,
38204
38219
  closeIconColorHoverWarning: staticBlack,
@@ -38208,30 +38223,36 @@
38208
38223
  titleTextColorWarning: staticBlack,
38209
38224
  descriptionTextColorWarning: staticBlack,
38210
38225
  actionTextColorWarning: staticBlack,
38226
+ iconWrapperColorWarning: "rgb(249 222 109 / 28%)",
38227
+ iconWrapperPulseColorWarning: "rgb(249 222 109 / 18%)",
38211
38228
  // Error
38212
- colorError: staticRed,
38213
- iconColorError: staticWhite,
38214
- textColorError: staticWhite,
38215
- closeIconColorError: staticWhite,
38216
- closeIconColorHoverError: staticWhite,
38217
- closeIconColorPressedError: staticWhite,
38229
+ colorError: staticWhite,
38230
+ iconColorError: staticRed,
38231
+ textColorError: staticBlack,
38232
+ closeIconColorError: staticBlack,
38233
+ closeIconColorHoverError: staticBlack,
38234
+ closeIconColorPressedError: staticBlack,
38218
38235
  closeColorHoverError: transparencyTertiary,
38219
38236
  closeColorPressedError: transparencyQuinary,
38220
- titleTextColorError: staticWhite,
38221
- descriptionTextColorError: staticWhite,
38222
- actionTextColorError: staticWhite,
38237
+ titleTextColorError: staticBlack,
38238
+ descriptionTextColorError: staticBlack,
38239
+ actionTextColorError: staticBlack,
38240
+ iconWrapperColorError: derived.brandQuinary100,
38241
+ iconWrapperPulseColorError: derived.brand550,
38223
38242
  // Primary
38224
- colorPrimary: brandPrimary500,
38225
- iconColorPrimary: staticWhite,
38226
- textColorPrimary: staticWhite,
38227
- closeIconColorPrimary: staticWhite,
38228
- closeIconColorHoverPrimary: staticWhite,
38229
- closeIconColorPressedPrimary: staticWhite,
38243
+ colorPrimary: staticWhite,
38244
+ iconColorPrimary: brandPrimary500,
38245
+ textColorPrimary: staticBlack,
38246
+ closeIconColorPrimary: staticBlack,
38247
+ closeIconColorHoverPrimary: staticBlack,
38248
+ closeIconColorPressedPrimary: staticBlack,
38230
38249
  closeColorHoverPrimary: transparencyTertiary,
38231
38250
  closeColorPressedPrimary: transparencyQuinary,
38232
- titleTextColorPrimary: staticWhite,
38233
- descriptionTextColorPrimary: staticWhite,
38234
- actionTextColorPrimary: staticWhite
38251
+ titleTextColorPrimary: staticBlack,
38252
+ descriptionTextColorPrimary: staticBlack,
38253
+ actionTextColorPrimary: staticBlack,
38254
+ iconWrapperColorPrimary: derived.brandPrimary100,
38255
+ iconWrapperPulseColorPrimary: derived.brandPrimary50
38235
38256
  };
38236
38257
  };
38237
38258
  const notificationLight = createTheme$1({
@@ -41869,9 +41890,9 @@
41869
41890
  fontBodyMedium,
41870
41891
  lineHeightBodyMedium,
41871
41892
  borderRadiusLarge,
41872
- elementsQuinary,
41873
41893
  containerSecondary,
41874
- brandPrimary300
41894
+ brandPrimary300,
41895
+ brandPrimary500
41875
41896
  } = vars;
41876
41897
  return {
41877
41898
  baseColor: containerPrimary,
@@ -41879,8 +41900,9 @@
41879
41900
  lineHeight: lineHeightBodyMedium,
41880
41901
  borderRadius: borderRadiusLarge,
41881
41902
  draggerColor: elementsTertiary,
41882
- draggerBorder: `2px dashed ${elementsQuaternary}`,
41883
- draggerBorderHover: `2px dashed ${elementsQuinary}`,
41903
+ draggerBorder: `1px dashed ${brandPrimary500}`,
41904
+ draggerBorderHover: `1px solid ${brandPrimary500}`,
41905
+ draggerShadowFocus: `0 0 0 4px ${brandPrimary500}1a`,
41884
41906
  itemColorHover: elementsTertiary,
41885
41907
  itemColorHoverError: changeColor(staticRed, {
41886
41908
  alpha: 0.05
@@ -41890,8 +41912,8 @@
41890
41912
  itemTextColorSuccess: staticGreen,
41891
41913
  itemIconColor: elementsPrimary,
41892
41914
  itemDisabledOpacity: opacityDisabled,
41893
- itemBorderImageCardError: `2px solid ${staticRed}`,
41894
- itemBorderImageCard: `2px solid ${elementsQuaternary}`,
41915
+ itemBorderImageCardError: `1px solid ${staticRed}`,
41916
+ itemBorderImageCard: `1px solid ${elementsQuaternary}`,
41895
41917
  draggerIconBgColor: elementsTertiary,
41896
41918
  draggerIconColor: elementsPrimary,
41897
41919
  draggerTitleColor: textPrimary,
@@ -44148,8 +44170,7 @@
44148
44170
  `), cM("dashed", [cE("border, state-border", {
44149
44171
  borderStyle: "dashed !important"
44150
44172
  })]), cM("disabled", {
44151
- cursor: "not-allowed",
44152
- opacity: "var(--u-opacity-disabled)"
44173
+ cursor: "not-allowed"
44153
44174
  })]), c$1("@keyframes button-wave-spread", {
44154
44175
  from: {
44155
44176
  boxShadow: "0 0 0.5px 0 var(--u-ripple-color)"
@@ -44374,7 +44395,7 @@
44374
44395
  "--u-text-color": mergedTextColor,
44375
44396
  "--u-text-color-hover": propTextColor ? createHoverColor(propTextColor) : self[createKey("textColorTextHover", mergedType)],
44376
44397
  "--u-text-color-pressed": propTextColor ? createPressedColor(propTextColor) : self[createKey("textColorTextPressed", mergedType)],
44377
- "--u-text-color-focus": propTextColor ? createHoverColor(propTextColor) : self[createKey("textColorTextHover", mergedType)],
44398
+ "--u-text-color-focus": propTextColor ? createHoverColor(propTextColor) : self[createKey("textColorTextFocus", mergedType)],
44378
44399
  "--u-text-color-disabled": propTextColor || self[createKey("textColorTextDisabled", mergedType)]
44379
44400
  };
44380
44401
  } else if (ghost || dashed) {
@@ -44390,7 +44411,7 @@
44390
44411
  "--u-text-color": mergedTextColor || self[createKey("textColorGhost", mergedType)],
44391
44412
  "--u-text-color-hover": mergedTextColor ? createHoverColor(mergedTextColor) : self[createKey("textColorGhostHover", mergedType)],
44392
44413
  "--u-text-color-pressed": mergedTextColor ? createPressedColor(mergedTextColor) : self[createKey("textColorGhostPressed", mergedType)],
44393
- "--u-text-color-focus": mergedTextColor ? createHoverColor(mergedTextColor) : self[createKey("textColorGhostHover", mergedType)],
44414
+ "--u-text-color-focus": mergedTextColor ? createHoverColor(mergedTextColor) : self[createKey("textColorGhostFocus", mergedType)],
44394
44415
  "--u-text-color-disabled": mergedTextColor || self[createKey("textColorGhostDisabled", mergedType)]
44395
44416
  };
44396
44417
  } else if (secondary) {
@@ -44409,7 +44430,7 @@
44409
44430
  }) : self.colorSecondaryPressed,
44410
44431
  "--u-color-focus": isColoredType ? changeColor(mergedTextColor, {
44411
44432
  alpha: Number(self.colorOpacitySecondaryHover)
44412
- }) : self.colorSecondaryHover,
44433
+ }) : self.colorSecondaryFocus,
44413
44434
  "--u-color-focus-visible": isColoredType ? changeColor(mergedTextColor, {
44414
44435
  alpha: +self.colorOpacitySecondaryFocus
44415
44436
  }) : self.waveColorSecondary,
@@ -44419,12 +44440,12 @@
44419
44440
  "--u-text-color-hover": mergedTextColor,
44420
44441
  "--u-text-color-pressed": mergedTextColor,
44421
44442
  "--u-text-color-focus": mergedTextColor,
44422
- "--u-text-color-disabled": mergedTextColor
44443
+ "--u-text-color-disabled": isColoredType ? mergedTextColor : self.textColorSecondaryDisabled
44423
44444
  };
44424
44445
  } else if (tertiary || quaternary) {
44425
44446
  const typeColor = typeIsDefault ? self.textColor : typeIsTertiary ? self.textColorTertiary : self[createKey("color", mergedType)];
44426
44447
  const mergedColor = color || typeColor;
44427
- colorProps["--u-ripple-color"] = "#0000";
44448
+ colorProps["--u-text-color"] = mergedColor;
44428
44449
  colorProps["--u-text-color"] = mergedColor;
44429
44450
  colorProps["--u-text-color-hover"] = mergedColor;
44430
44451
  colorProps["--u-text-color-pressed"] = mergedColor;
@@ -44434,7 +44455,7 @@
44434
44455
  colorProps["--u-color"] = self.colorTertiary;
44435
44456
  colorProps["--u-color-hover"] = self.colorTertiaryHover;
44436
44457
  colorProps["--u-color-pressed"] = self.colorTertiaryPressed;
44437
- colorProps["--u-color-focus"] = self.colorTertiaryPressed;
44458
+ colorProps["--u-color-focus"] = self.colorTertiaryFocus;
44438
44459
  colorProps["--u-color-disabled"] = self.colorTertiaryDisalbed;
44439
44460
  colorProps["--u-ripple-color"] = self.colorTertiary;
44440
44461
  colorProps["--u-text-color"] = self.textColorTextTertiary;
@@ -44443,12 +44464,15 @@
44443
44464
  colorProps["--u-text-color-focus"] = self.textColorTextTertiary;
44444
44465
  colorProps["--u-text-color-disabled"] = self.textColorTextTertiary;
44445
44466
  colorProps["--u-color-focus-visible"] = self.waveColorTertiary;
44467
+ colorProps["--u-ripple-color"] = self.rippleColorTertiary;
44446
44468
  } else {
44447
44469
  colorProps["--u-color"] = self.colorQuaternary;
44448
44470
  colorProps["--u-color-hover"] = self.colorQuaternaryHover;
44449
44471
  colorProps["--u-color-pressed"] = self.colorQuaternaryPressed;
44450
- colorProps["--u-color-focus"] = self.colorQuaternaryHover;
44472
+ colorProps["--u-color-focus"] = self.colorQuaternaryFocus;
44451
44473
  colorProps["--u-color-disabled"] = self.colorQuaternary;
44474
+ colorProps["--u-ripple-color"] = self.rippleColorQuaternary;
44475
+ colorProps["--u-color-focus-visible"] = self.waveColorQuaternary;
44452
44476
  }
44453
44477
  } else {
44454
44478
  colorProps = {
@@ -58045,6 +58069,12 @@
58045
58069
  ChatMessageType2["MARK"] = "mark";
58046
58070
  return ChatMessageType2;
58047
58071
  })(ChatMessageType || {});
58072
+ var ChatMarkType = /* @__PURE__ */(ChatMarkType2 => {
58073
+ ChatMarkType2["SYSTEM"] = "system";
58074
+ ChatMarkType2["EVENT"] = "event";
58075
+ ChatMarkType2["DIVIDER"] = "divider";
58076
+ return ChatMarkType2;
58077
+ })(ChatMarkType || {});
58048
58078
  const chatInjectionKey = createInjectionKey("chat");
58049
58079
 
58050
58080
  var commonVars = {
@@ -59737,10 +59767,7 @@
59737
59767
 
59738
59768
  var style$12 = cB("chat", `
59739
59769
  height: 100%;
59740
- max-height: 100%;
59741
- min-height: 0;
59742
- display: flex;
59743
- overflow: hidden;
59770
+ background-color: transparent;
59744
59771
  box-sizing: border-box;
59745
59772
  .u-list-item__text {
59746
59773
  grid-template-columns: 1fr !important;
@@ -59749,7 +59776,6 @@
59749
59776
  height: 100%;
59750
59777
  max-height: 100%;
59751
59778
  min-height: 0;
59752
- overflow: hidden;
59753
59779
  }
59754
59780
  `, [cB("chat-sidebar", `
59755
59781
  max-width: 388px;
@@ -59760,7 +59786,6 @@
59760
59786
  background-color: var(--u-sidebar-background-color);
59761
59787
  border: 1px solid var(--u-sidebar-border-color);
59762
59788
  border-radius: 20px;
59763
- overflow: hidden;
59764
59789
  `, [cE("header", `
59765
59790
  flex-shrink: 0;
59766
59791
  `), cE("header-container", `
@@ -59874,7 +59899,6 @@
59874
59899
  `), cE("item-status sup", `
59875
59900
  padding: 2px 6px 2px 5px;
59876
59901
  height: 22px;
59877
- --u-color: var(--u-unread-notification-background-color);
59878
59902
  `), cE("item-status-icon", `
59879
59903
  color: var(--u-sidebar-item-time-color);
59880
59904
  `, [cM("read", `
@@ -59896,7 +59920,6 @@
59896
59920
  height: 100%;
59897
59921
  max-height: 100%;
59898
59922
  min-height: 0;
59899
- overflow: hidden;
59900
59923
  `, [cE("header", `
59901
59924
  border-bottom: 1px solid var(--u-border-color);
59902
59925
  width: 100%;
@@ -59912,7 +59935,7 @@
59912
59935
  color: var(--u-unread-notification-text-color);
59913
59936
  padding: 6px 12px;
59914
59937
  text-align: center;
59915
- font-size: 12px;
59938
+ font-size: 14px;
59916
59939
  font-weight: 500;
59917
59940
  margin: 8px 0;
59918
59941
  display: flex;
@@ -59946,8 +59969,19 @@
59946
59969
  color: var(--u-date-separator-color);
59947
59970
  padding: 4px 12px;
59948
59971
  border-radius: 12px;
59949
- font-size: 12px;
59972
+ font-size: 14px;
59950
59973
  font-weight: 500;
59974
+ `)]), cE("mark", `
59975
+ display: flex;
59976
+ justify-content: center;
59977
+ margin: 12px 0;
59978
+ width: 100%;
59979
+ `, [c$1("span", `
59980
+ padding: 6px 12px;
59981
+ border-radius: 8px;
59982
+ color: var(--u-text-color-secondary);
59983
+ background-color: var(--u-date-separator-background-color);
59984
+ text-align: center;
59951
59985
  `)]), cE("message", `
59952
59986
  display: flex;
59953
59987
  margin-bottom: 8px;
@@ -60063,13 +60097,6 @@
60063
60097
  `), cE("input", `
60064
60098
  flex: 1;
60065
60099
  margin-right: 4px;
60066
- --u-color: #F3F4F6 !important;
60067
- --u-color-focus: #F3F4F6 !important;
60068
- --u-border: none !important;
60069
- --u-border-focus: none !important;
60070
- --u-border-hover: none !important;
60071
- --u-box-shadow: none !important;
60072
- --u-box-shadow-focus: none !important;
60073
60100
  `), cE("attach-btn", `
60074
60101
  margin-left: 4px;
60075
60102
  flex-shrink: 0;
@@ -60086,6 +60113,40 @@
60086
60113
  background-color: var(--u-attachment-background-color-other);
60087
60114
  `)]);
60088
60115
 
60116
+ const chatInputLight = {
60117
+ ...inputLight,
60118
+ self(vars) {
60119
+ const originalInputSelf = self$1e(vars);
60120
+ const {
60121
+ elementsTertiary
60122
+ } = vars;
60123
+ return {
60124
+ ...originalInputSelf,
60125
+ color: elementsTertiary,
60126
+ colorFocus: elementsTertiary,
60127
+ border: "none",
60128
+ borderFocus: "none",
60129
+ borderHover: "none",
60130
+ boxShadow: "none",
60131
+ boxShadowFocus: "none"
60132
+ };
60133
+ }
60134
+ };
60135
+ const chatBadgeLight = {
60136
+ ...badgeLight,
60137
+ self(vars) {
60138
+ const originalBadgeSelf = self$19(vars);
60139
+ const {
60140
+ brandPrimary400,
60141
+ elementsSecondary
60142
+ } = vars;
60143
+ return {
60144
+ ...originalBadgeSelf,
60145
+ color: brandPrimary400,
60146
+ textColor: elementsSecondary
60147
+ };
60148
+ }
60149
+ };
60089
60150
  const self$6 = vars => {
60090
60151
  const {
60091
60152
  borderRadiusLarge,
@@ -60135,7 +60196,7 @@
60135
60196
  unreadNotificationTextColor: elementsSecondary,
60136
60197
  typingIndicatorColor: textSecondary,
60137
60198
  dateSeparatorColor: textTertiary,
60138
- dateSeparatorBackgroundColor: elementsTertiary,
60199
+ dateSeparatorBackgroundColor: "transparent",
60139
60200
  borderRadius: borderRadiusLarge,
60140
60201
  errorColor: staticRed
60141
60202
  };
@@ -60144,11 +60205,11 @@
60144
60205
  name: "Chat",
60145
60206
  common: derived,
60146
60207
  peers: {
60147
- Input: inputLight,
60208
+ Input: chatInputLight,
60148
60209
  Empty: emptyLight,
60149
60210
  Select: selectLight,
60150
60211
  Avatar: avatarLight,
60151
- Badge: badgeLight,
60212
+ Badge: chatBadgeLight,
60152
60213
  Button: buttonLight,
60153
60214
  Icon: iconLight,
60154
60215
  List: listLight,
@@ -60235,17 +60296,10 @@
60235
60296
  var UChatListItems = vue.defineComponent({
60236
60297
  name: "ChatListItems",
60237
60298
  props: chatListItemsProps,
60238
- emits: ["chat-select"],
60239
- setup(props, { slots, emit }) {
60299
+ setup(props, { slots }) {
60300
+ const UChat = vue.inject(chatInjectionKey, null);
60240
60301
  const { mergedClsPrefixRef } = useConfig(props);
60241
- const themeRef = useTheme(
60242
- "Chat",
60243
- "-chat",
60244
- style$12,
60245
- chatLight,
60246
- props,
60247
- mergedClsPrefixRef
60248
- );
60302
+ const themeRef = UChat?.mergedThemeRef ?? useTheme("Chat", "-chat", style$12, chatLight, props, mergedClsPrefixRef);
60249
60303
  const { localeRef } = useLocale("Chat");
60250
60304
  const cssVarsRef = vue.computed(() => {
60251
60305
  const {
@@ -60307,7 +60361,6 @@
60307
60361
  () => props.typingText ?? localeRef.value.typingText
60308
60362
  );
60309
60363
  const handleChatSelect = (chatId) => {
60310
- emit("chat-select", chatId);
60311
60364
  props.onChatSelect?.(chatId);
60312
60365
  };
60313
60366
  const renderChatItem = (item) => {
@@ -60333,7 +60386,9 @@
60333
60386
  {
60334
60387
  size: "medium",
60335
60388
  src: typeof item.avatar === "string" ? item.avatar : void 0,
60336
- ...props.avatarProps
60389
+ ...props.avatarProps,
60390
+ theme: themeRef.value.peers.Avatar,
60391
+ themeOverrides: themeRef.value.peerOverrides.Avatar
60337
60392
  },
60338
60393
  {
60339
60394
  default: () => typeof item.avatar === "function" ? item.avatar() : typeof item.title === "string" ? item.title.charAt(0)?.toUpperCase() : "?"
@@ -60393,14 +60448,18 @@
60393
60448
  class: [
60394
60449
  `${mergedClsPrefixRef.value}-chat-sidebar__item-status-icon`,
60395
60450
  `${mergedClsPrefixRef.value}-chat-sidebar__item-status-icon--${item.messageStatus}`
60396
- ]
60451
+ ],
60452
+ theme: themeRef.value.peers.Icon,
60453
+ themeOverrides: themeRef.value.peerOverrides.Icon
60397
60454
  }
60398
60455
  ) : null),
60399
60456
  !lastMessageIsOwn && hasUnreadIncoming && /* @__PURE__ */ vue.h(
60400
60457
  UBadge,
60401
60458
  {
60402
60459
  value: displayUnreadCount,
60403
- ...props.badgeProps
60460
+ ...props.badgeProps,
60461
+ theme: themeRef.value.peers.Badge,
60462
+ themeOverrides: themeRef.value.peerOverrides.Badge
60404
60463
  }
60405
60464
  )
60406
60465
  )
@@ -60411,6 +60470,7 @@
60411
60470
  };
60412
60471
  return {
60413
60472
  mergedClsPrefixRef,
60473
+ mergedTheme: themeRef,
60414
60474
  renderChatItem,
60415
60475
  cssVars: cssVarsRef,
60416
60476
  themeClass: themeClassHandle?.themeClass,
@@ -60422,26 +60482,51 @@
60422
60482
  const { mergedClsPrefixRef, renderChatItem } = this;
60423
60483
  const content = (() => {
60424
60484
  if (this.loading) {
60425
- return /* @__PURE__ */ vue.h(UList, { loading: true }, {
60426
- default: () => Array.from({ length: this.loadingCount || 10 }).map(
60427
- (_, index) => /* @__PURE__ */ vue.h(
60428
- UListItem,
60429
- {
60430
- key: index,
60431
- avatar: { icon: PersonOutline },
60432
- description: { text: "Loading..." },
60433
- header: { text: "Loading..." }
60434
- }
60485
+ return /* @__PURE__ */ vue.h(
60486
+ UList,
60487
+ {
60488
+ loading: true,
60489
+ theme: this.mergedTheme.peers.List,
60490
+ themeOverrides: this.mergedTheme.peerOverrides.List
60491
+ },
60492
+ {
60493
+ default: () => Array.from({ length: this.loadingCount || 10 }).map(
60494
+ (_, index) => /* @__PURE__ */ vue.h(
60495
+ UListItem,
60496
+ {
60497
+ key: index,
60498
+ avatar: { icon: PersonOutline },
60499
+ description: { text: "Loading..." },
60500
+ header: { text: "Loading..." }
60501
+ }
60502
+ )
60435
60503
  )
60436
- )
60437
- });
60504
+ }
60505
+ );
60438
60506
  }
60439
60507
  if (this.chatItems?.length) {
60440
- return /* @__PURE__ */ vue.h(UList, { showIcon: false }, {
60441
- default: () => this.chatItems?.map((item) => renderChatItem(item))
60442
- });
60508
+ return /* @__PURE__ */ vue.h(
60509
+ UList,
60510
+ {
60511
+ showIcon: false,
60512
+ theme: this.mergedTheme.peers.List,
60513
+ themeOverrides: this.mergedTheme.peerOverrides.List
60514
+ },
60515
+ {
60516
+ default: () => this.chatItems?.map((item) => renderChatItem(item))
60517
+ }
60518
+ );
60443
60519
  }
60444
- return /* @__PURE__ */ vue.h(UEmpty, { ...this.emptyProps });
60520
+ return /* @__PURE__ */ vue.h(UFlex, { justify: "center", align: "center", vertical: true }, {
60521
+ default: () => /* @__PURE__ */ vue.h(
60522
+ UEmpty,
60523
+ {
60524
+ ...this.emptyProps,
60525
+ theme: this.mergedTheme.peers.Empty,
60526
+ themeOverrides: this.mergedTheme.peerOverrides.Empty
60527
+ }
60528
+ )
60529
+ });
60445
60530
  })();
60446
60531
  return /* @__PURE__ */ vue.h(
60447
60532
  "div",
@@ -60485,6 +60570,7 @@
60485
60570
  const { slots } = this;
60486
60571
  const {
60487
60572
  mergedClsPrefixRef,
60573
+ mergedThemeRef,
60488
60574
  chatItemsRef,
60489
60575
  chatItemsLoadingRef,
60490
60576
  chatItemsLoadingCountRef,
@@ -60513,7 +60599,15 @@
60513
60599
  {
60514
60600
  class: `${mergedClsPrefixRef.value}-chat-sidebar__header-main`
60515
60601
  },
60516
- slots.sidebarHeaderMain?.() || /* @__PURE__ */ vue.h(USelect, { round: true, size: "small" })
60602
+ slots.sidebarHeaderMain?.() || /* @__PURE__ */ vue.h(
60603
+ USelect,
60604
+ {
60605
+ round: true,
60606
+ size: "tiny",
60607
+ theme: mergedThemeRef.value.peers.Select,
60608
+ themeOverrides: mergedThemeRef.value.peerOverrides.Select
60609
+ }
60610
+ )
60517
60611
  ), /* @__PURE__ */ vue.h(
60518
60612
  "div",
60519
60613
  {
@@ -61111,8 +61205,12 @@
61111
61205
  handleDownloadClick,
61112
61206
  capitalizeFirstLetter
61113
61207
  } = opts;
61208
+ const getExt = (name) => {
61209
+ const i = name.lastIndexOf(".");
61210
+ return i === -1 || i === name.length - 1 ? "" : name.slice(i + 1);
61211
+ };
61114
61212
  const isImageType = ["image", "image-card"].includes(listType);
61115
- const fileExt = file.name.split(".").at(-1) || "";
61213
+ const fileExt = getExt(file.name);
61116
61214
  const capitalizedExt = capitalizeFirstLetter(fileExt);
61117
61215
  const icon = vue.h(
61118
61216
  "div",
@@ -62485,6 +62583,7 @@
62485
62583
  display: block;
62486
62584
  `)]), cM("drag-over", [cB("upload-dragger", `
62487
62585
  border: var(--u-dragger-border-hover);
62586
+ box-shadow: var(--u-dragger-shadow-focus);
62488
62587
  `)]), cE("label", {
62489
62588
  marginBottom: "12px",
62490
62589
  marginTop: 0,
@@ -63464,6 +63563,7 @@
63464
63563
  draggerColor,
63465
63564
  draggerBorder,
63466
63565
  draggerBorderHover,
63566
+ draggerShadowFocus,
63467
63567
  itemColorHover,
63468
63568
  itemColorHoverError,
63469
63569
  itemTextColorError,
@@ -63493,6 +63593,7 @@
63493
63593
  "--u-border-radius": borderRadius,
63494
63594
  "--u-dragger-border": draggerBorder,
63495
63595
  "--u-dragger-border-hover": draggerBorderHover,
63596
+ "--u-dragger-shadow-focus": draggerShadowFocus,
63496
63597
  "--u-dragger-color": draggerColor,
63497
63598
  "--u-font-size": fontSize,
63498
63599
  "--u-item-color-hover": itemColorHover,
@@ -64450,17 +64551,10 @@
64450
64551
  var UChatMessages = vue.defineComponent({
64451
64552
  name: "ChatMessages",
64452
64553
  props: chatMessagesProps,
64453
- emits: ["message-retry"],
64454
- setup(props, { slots, emit }) {
64554
+ setup(props, { slots }) {
64555
+ const UChat = vue.inject(chatInjectionKey, null);
64455
64556
  const { mergedClsPrefixRef } = useConfig(props);
64456
- const themeRef = useTheme(
64457
- "Chat",
64458
- "-chat",
64459
- style$12,
64460
- chatLight,
64461
- props,
64462
- mergedClsPrefixRef
64463
- );
64557
+ const themeRef = UChat?.mergedThemeRef ?? useTheme("Chat", "-chat", style$12, chatLight, props, mergedClsPrefixRef);
64464
64558
  const { localeRef } = useLocale("Chat");
64465
64559
  const cssVarsRef = vue.computed(() => {
64466
64560
  const {
@@ -64549,7 +64643,6 @@
64549
64643
  ).length;
64550
64644
  });
64551
64645
  const handleMessageRetry = (message) => {
64552
- emit("message-retry", message);
64553
64646
  props.onMessageRetry?.(message);
64554
64647
  };
64555
64648
  const renderDateSeparator = (date) => {
@@ -64565,6 +64658,20 @@
64565
64658
  /* @__PURE__ */ vue.h("span", null, count, " ", mergedUnreadNotificationTextRef.value)
64566
64659
  );
64567
64660
  };
64661
+ const renderMarkMessage = (message) => {
64662
+ const markTypeClass = message.markType === ChatMarkType.SYSTEM ? "system" : message.markType === ChatMarkType.EVENT ? "event" : "divider";
64663
+ return /* @__PURE__ */ vue.h(
64664
+ "div",
64665
+ {
64666
+ key: message.id,
64667
+ class: [
64668
+ `${mergedClsPrefixRef.value}-chat-main__mark`,
64669
+ `${mergedClsPrefixRef.value}-chat-main__mark--${markTypeClass}`
64670
+ ]
64671
+ },
64672
+ message.content && /* @__PURE__ */ vue.h("span", null, message.content)
64673
+ );
64674
+ };
64568
64675
  const renderMessage = (message) => {
64569
64676
  const isOwn = message.isOwn;
64570
64677
  const attachments = message.attachment ? Array.isArray(message.attachment) ? message.attachment : [message.attachment] : [];
@@ -64641,7 +64748,9 @@
64641
64748
  {
64642
64749
  size: 16,
64643
64750
  component: statusIconMapper[MessageStatus.RETRY],
64644
- class: `${mergedClsPrefixRef.value}-chat-main__message-retry-icon`
64751
+ class: `${mergedClsPrefixRef.value}-chat-main__message-retry-icon`,
64752
+ theme: themeRef.value.peers.Icon,
64753
+ themeOverrides: themeRef.value.peerOverrides.Icon
64645
64754
  }
64646
64755
  ),
64647
64756
  /* @__PURE__ */ vue.h(
@@ -64672,7 +64781,9 @@
64672
64781
  `${mergedClsPrefixRef.value}-chat-main__message-status-icon--${String(
64673
64782
  message.status
64674
64783
  )}`
64675
- ]
64784
+ ],
64785
+ theme: themeRef.value.peers.Icon,
64786
+ themeOverrides: themeRef.value.peerOverrides.Icon
64676
64787
  }
64677
64788
  )
64678
64789
  ))
@@ -64759,7 +64870,9 @@
64759
64870
  };
64760
64871
  return {
64761
64872
  mergedClsPrefixRef,
64873
+ mergedTheme: themeRef,
64762
64874
  renderMessage,
64875
+ renderMarkMessage,
64763
64876
  renderTypingIndicator,
64764
64877
  renderSkeletonMessage,
64765
64878
  renderDateSeparator,
@@ -64774,6 +64887,7 @@
64774
64887
  const {
64775
64888
  mergedClsPrefixRef,
64776
64889
  renderMessage,
64890
+ renderMarkMessage,
64777
64891
  renderTypingIndicator,
64778
64892
  renderSkeletonMessage,
64779
64893
  renderDateSeparator,
@@ -64879,7 +64993,11 @@
64879
64993
  if (item.type === "unread-notification") {
64880
64994
  return renderUnreadNotification();
64881
64995
  }
64882
- return renderMessage(item);
64996
+ const message = item;
64997
+ if (message.type === ChatMessageType.MARK) {
64998
+ return renderMarkMessage(message);
64999
+ }
65000
+ return renderMessage(message);
64883
65001
  }
64884
65002
  ), isTyping && renderTypingIndicator())
64885
65003
  )
@@ -64894,6 +65012,7 @@
64894
65012
  setup(_, { slots }) {
64895
65013
  const {
64896
65014
  mergedClsPrefixRef,
65015
+ mergedThemeRef,
64897
65016
  selectedChatRef,
64898
65017
  messagesRef,
64899
65018
  typingChatIdsRef,
@@ -65030,7 +65149,9 @@
65030
65149
  UText,
65031
65150
  {
65032
65151
  variant: "heading-s-bold",
65033
- class: `${mergedClsPrefixRef.value}-chat-main__header-title`
65152
+ class: `${mergedClsPrefixRef.value}-chat-main__header-title`,
65153
+ theme: mergedThemeRef.value.peers.Typography,
65154
+ themeOverrides: mergedThemeRef.value.peerOverrides.Typography
65034
65155
  },
65035
65156
  {
65036
65157
  default: () => selectedChatRef.value?.title || "Select a chat"
@@ -65051,12 +65172,23 @@
65051
65172
  circle: true,
65052
65173
  size: "large",
65053
65174
  ...headerButtonPropsRef.value,
65175
+ theme: mergedThemeRef.value.peers.Button,
65176
+ themeOverrides: mergedThemeRef.value.peerOverrides.Button,
65054
65177
  onClick: () => onChatShare?.value?.()
65055
65178
  },
65056
65179
  {
65057
- default: () => /* @__PURE__ */ vue.h(UIcon, { size: 20, ...headerIconPropsRef.value }, {
65058
- default: () => /* @__PURE__ */ vue.h(ArrowHookUpRight, null)
65059
- })
65180
+ default: () => /* @__PURE__ */ vue.h(
65181
+ UIcon,
65182
+ {
65183
+ size: 20,
65184
+ ...headerIconPropsRef.value,
65185
+ theme: mergedThemeRef.value.peers.Icon,
65186
+ themeOverrides: mergedThemeRef.value.peerOverrides.Icon
65187
+ },
65188
+ {
65189
+ default: () => /* @__PURE__ */ vue.h(ArrowHookUpRight, null)
65190
+ }
65191
+ )
65060
65192
  }
65061
65193
  ),
65062
65194
  /* @__PURE__ */ vue.h(
@@ -65066,12 +65198,23 @@
65066
65198
  circle: true,
65067
65199
  size: "large",
65068
65200
  ...headerButtonPropsRef.value,
65201
+ theme: mergedThemeRef.value.peers.Button,
65202
+ themeOverrides: mergedThemeRef.value.peerOverrides.Button,
65069
65203
  onClick: () => onUserProfile?.value?.()
65070
65204
  },
65071
65205
  {
65072
- default: () => /* @__PURE__ */ vue.h(UIcon, { size: 20, ...headerIconPropsRef.value }, {
65073
- default: () => /* @__PURE__ */ vue.h(PersonNote, null)
65074
- })
65206
+ default: () => /* @__PURE__ */ vue.h(
65207
+ UIcon,
65208
+ {
65209
+ size: 20,
65210
+ ...headerIconPropsRef.value,
65211
+ theme: mergedThemeRef.value.peers.Icon,
65212
+ themeOverrides: mergedThemeRef.value.peerOverrides.Icon
65213
+ },
65214
+ {
65215
+ default: () => /* @__PURE__ */ vue.h(PersonNote, null)
65216
+ }
65217
+ )
65075
65218
  }
65076
65219
  ),
65077
65220
  /* @__PURE__ */ vue.h(
@@ -65081,6 +65224,8 @@
65081
65224
  size: "large",
65082
65225
  round: true,
65083
65226
  ...headerButtonPropsRef.value,
65227
+ theme: mergedThemeRef.value.peers.Button,
65228
+ themeOverrides: mergedThemeRef.value.peerOverrides.Button,
65084
65229
  onClick: () => onChatClose?.value?.()
65085
65230
  },
65086
65231
  {
@@ -65232,6 +65377,8 @@
65232
65377
  size: "large",
65233
65378
  class: `${mergedClsPrefixRef.value}-chat-main__attach-btn`,
65234
65379
  ...footerButtonPropsRef.value,
65380
+ theme: mergedThemeRef.value.peers.Button,
65381
+ themeOverrides: mergedThemeRef.value.peerOverrides.Button,
65235
65382
  onClick: handleClick
65236
65383
  },
65237
65384
  {
@@ -65239,7 +65386,9 @@
65239
65386
  UIcon,
65240
65387
  {
65241
65388
  size: 24,
65242
- ...footerIconPropsRef.value
65389
+ ...footerIconPropsRef.value,
65390
+ theme: mergedThemeRef.value.peers.Icon,
65391
+ themeOverrides: mergedThemeRef.value.peerOverrides.Icon
65243
65392
  },
65244
65393
  {
65245
65394
  default: () => /* @__PURE__ */ vue.h(AttachIcon, null)
@@ -65255,6 +65404,8 @@
65255
65404
  placeholder: inputPlaceholderRef.value,
65256
65405
  class: `${mergedClsPrefixRef.value}-chat-main__input`,
65257
65406
  ...footerInputPropsRef.value,
65407
+ theme: mergedThemeRef.value.peers.Input,
65408
+ themeOverrides: mergedThemeRef.value.peerOverrides.Input,
65258
65409
  onUpdateValue: (value) => {
65259
65410
  inputValue.value = value;
65260
65411
  if (selectedChatRef.value) {
@@ -65435,9 +65586,9 @@
65435
65586
  type: Number,
65436
65587
  default: 10
65437
65588
  },
65438
- maxHeight: {
65589
+ height: {
65439
65590
  type: [String, Number],
65440
- default: void 0
65591
+ default: 800
65441
65592
  },
65442
65593
  onChatSelect: {
65443
65594
  type: Function,
@@ -65708,6 +65859,7 @@
65708
65859
  );
65709
65860
  vue.provide(chatInjectionKey, {
65710
65861
  mergedClsPrefixRef,
65862
+ mergedThemeRef: themeRef,
65711
65863
  chatItemsRef: vue.toRef(props, "chatItems"),
65712
65864
  selectedChatIdRef: mergedSelectedChatIdRef,
65713
65865
  selectedChatRef,
@@ -65765,15 +65917,15 @@
65765
65917
  render() {
65766
65918
  const { $slots } = this;
65767
65919
  this.onRender?.();
65768
- const maxHeightStyle = this.maxHeight ? {
65769
- maxHeight: typeof this.maxHeight === "number" ? `${this.maxHeight}px` : this.maxHeight
65920
+ const heightStyle = this.height ? {
65921
+ height: typeof this.height === "number" ? `${this.height}px` : this.height
65770
65922
  } : {};
65771
65923
  return /* @__PURE__ */ vue.h(
65772
65924
  "div",
65773
65925
  {
65774
65926
  class: [`${this.mergedClsPrefix}-chat`, this.themeClass],
65775
65927
  style: {
65776
- ...maxHeightStyle,
65928
+ ...heightStyle,
65777
65929
  ...this.cssVars
65778
65930
  }
65779
65931
  },
@@ -65783,7 +65935,7 @@
65783
65935
  sidebarHeaderMain: $slots.sidebarHeaderMain,
65784
65936
  sidebarHeaderActions: $slots.sidebarHeaderActions
65785
65937
  })
65786
- ]), resolveSlot($slots.default, () => [
65938
+ ]), this.selectedChatId && resolveSlot($slots.default, () => [
65787
65939
  /* @__PURE__ */ vue.h(ChatMainArea, null, {
65788
65940
  headerActions: $slots.headerActions
65789
65941
  })
@@ -117911,7 +118063,9 @@
117911
118063
  [createKey("closeIconColorPressed", type)]: closeIconColorPressed,
117912
118064
  [createKey("titleTextColor", type)]: titleTextColor,
117913
118065
  [createKey("descriptionTextColor", type)]: descriptionTextColor,
117914
- [createKey("actionTextColor", type)]: actionTextColor
118066
+ [createKey("actionTextColor", type)]: actionTextColor,
118067
+ [createKey("iconWrapperColor", type)]: iconWrapperColor,
118068
+ [createKey("iconWrapperPulseColor", type)]: iconWrapperPulseColor
117915
118069
  },
117916
118070
  common: { cubicBezierEaseOut, cubicBezierEaseIn, cubicBezierEaseInOut }
117917
118071
  } = mergedThemeRef.value;
@@ -117951,7 +118105,12 @@
117951
118105
  "--u-padding-bottom": bottom,
117952
118106
  "--u-meta-font-size": metaFontSize,
117953
118107
  "--u-description-font-size": descriptionFontSize,
117954
- "--u-avatar-size": avatarSize
118108
+ "--u-avatar-size": avatarSize,
118109
+ "--u-icon-wrapper-color": iconWrapperColor,
118110
+ "--u-icon-wrapper-pulse-color": iconWrapperPulseColor,
118111
+ iconColor,
118112
+ iconWrapperColor,
118113
+ iconWrapperPulseColor
117955
118114
  };
117956
118115
  });
117957
118116
  const themeClassHandle = inlineThemeDisabled ? useThemeClass(
@@ -117975,7 +118134,8 @@
117975
118134
  };
117976
118135
  },
117977
118136
  render() {
117978
- const { mergedClsPrefix } = this;
118137
+ const { mergedClsPrefix, cssVars } = this;
118138
+ const { iconColor, iconWrapperColor, iconWrapperPulseColor } = cssVars;
117979
118139
  this.onRender?.();
117980
118140
  return /* @__PURE__ */ vue.h(
117981
118141
  "div",
@@ -117999,7 +118159,18 @@
117999
118159
  ],
118000
118160
  style: this.cssVars
118001
118161
  },
118002
- this.showAvatar ? /* @__PURE__ */ vue.h("div", { class: `${mergedClsPrefix}-notification__avatar` }, this.avatar ? render$1(this.avatar) : /* @__PURE__ */ vue.h(UBaseIcon, { clsPrefix: mergedClsPrefix }, () => /* @__PURE__ */ vue.h(InfoOutlineIcon, null))) : null,
118162
+ this.showAvatar ? this.avatar ? /* @__PURE__ */ vue.h("div", { class: `${mergedClsPrefix}-notification__avatar` }, render$1(this.avatar)) : /* @__PURE__ */ vue.h(
118163
+ UIconWrapper,
118164
+ {
118165
+ pulseSize: 52,
118166
+ size: 36,
118167
+ color: iconWrapperColor,
118168
+ pulseColor: iconWrapperPulseColor,
118169
+ variant: "pulse",
118170
+ borderRadius: 60
118171
+ },
118172
+ /* @__PURE__ */ vue.h(UIcon, { color: iconColor, size: 24 }, () => this.type === "success" ? /* @__PURE__ */ vue.h(SuccessIcon, null) : /* @__PURE__ */ vue.h(InfoIcon, null))
118173
+ ) : null,
118003
118174
  this.closable ? /* @__PURE__ */ vue.h(
118004
118175
  UBaseClose,
118005
118176
  {
@@ -118281,6 +118452,8 @@
118281
118452
  display: flex;
118282
118453
  overflow: hidden;
118283
118454
  flex-shrink: 0;
118455
+ padding-top: var(--u-padding-top);
118456
+ padding-bottom: var(--u-padding-bottom);
118284
118457
  padding-left: var(--u-padding-left);
118285
118458
  padding-right: var(--u-padding-right);
118286
118459
  width: var(--u-width);
@@ -118290,12 +118463,14 @@
118290
118463
  border-radius: var(--u-border-radius);
118291
118464
  box-sizing: border-box;
118292
118465
  opacity: 1;
118293
- `, [cE("avatar", [cB("icon", {
118466
+ box-shadow: 0 0 20px 0 rgba(68, 83, 113, 0.10), 0 12px 20px 0 rgba(68, 83, 113, 0.05);
118467
+ `, [cE("avatar", [cB("icon-wrapper", `
118468
+ `), cB("icon", {
118294
118469
  color: "var(--u-icon-color)"
118295
118470
  }), cB("base-icon", {
118296
118471
  color: "var(--u-icon-color)"
118297
118472
  })]), cM("show-avatar", [cB("notification-main", `
118298
- margin-left: calc(var(--u-avatar-size) + 16px);
118473
+ margin-left: 16px;
118299
118474
  width: calc(100% - var(--u-avatar-size) + 16px);
118300
118475
  `)]), cM("closable", [cB("notification-main", [c$1("> *:first-child", `
118301
118476
  padding-right: var(--u-close-size);
@@ -118308,9 +118483,7 @@
118308
118483
  background-color .3s var(--u-bezier),
118309
118484
  color .3s var(--u-bezier);
118310
118485
  `)]), cE("avatar", `
118311
- position: absolute;
118312
- top: var(--u-padding-top);
118313
- left: var(--u-padding-left);
118486
+ position: relative;
118314
118487
  width: var(--u-avatar-size);
118315
118488
  height: var(--u-avatar-size);
118316
118489
  font-size: var(--u-avatar-size);
@@ -118318,18 +118491,18 @@
118318
118491
  align-items: center;
118319
118492
  justify-content: center;
118320
118493
  `, [cB("icon", "transition: color .3s var(--u-bezier);")]), cB("notification-main", `
118321
- padding-top: var(--u-padding-top);
118322
- padding-bottom: var(--u-padding-bottom);
118494
+ padding-top: 2px;
118323
118495
  box-sizing: border-box;
118324
118496
  display: flex;
118325
118497
  flex-direction: column;
118326
118498
  margin-left: 8px;
118327
118499
  width: calc(100% - 8px);
118500
+ justify-content: center;
118328
118501
  `, [cB("notification-main-footer", `
118329
118502
  display: flex;
118330
118503
  align-items: center;
118331
118504
  justify-content: space-between;
118332
- margin-top: 12px;
118505
+ margin-top: 8px;
118333
118506
  `, [cE("meta", `
118334
118507
  font-size: var(--u-meta-font-size);
118335
118508
  transition: color .3s var(--u-bezier-ease-out);
@@ -118338,6 +118511,8 @@
118338
118511
  cursor: pointer;
118339
118512
  transition: color .3s var(--u-bezier-ease-out);
118340
118513
  color: var(--u-action-text-color);
118514
+ width: 100%;
118515
+ margin-top: 16px;
118341
118516
  `)]), cE("header", `
118342
118517
  font-weight: var(--u-title-font-weight);
118343
118518
  font-size: var(--u-title-font-size);
@@ -129355,6 +129530,9 @@
129355
129530
 
129356
129531
  var components = /*#__PURE__*/Object.freeze({
129357
129532
  __proto__: null,
129533
+ ChatMarkType: ChatMarkType,
129534
+ ChatMessageType: ChatMessageType,
129535
+ MessageStatus: MessageStatus,
129358
129536
  NA: a,
129359
129537
  NP: p,
129360
129538
  UActionCard: ActionCard,
@@ -129645,7 +129823,7 @@
129645
129823
  watermarkProps: watermarkProps
129646
129824
  });
129647
129825
 
129648
- var version = "1.8.0";
129826
+ var version = "1.8.2";
129649
129827
 
129650
129828
  function create({
129651
129829
  componentPrefix = "U",
@@ -130450,6 +130628,9 @@
130450
130628
  };
130451
130629
  }
130452
130630
 
130631
+ exports.ChatMarkType = ChatMarkType;
130632
+ exports.ChatMessageType = ChatMessageType;
130633
+ exports.MessageStatus = MessageStatus;
130453
130634
  exports.NA = a;
130454
130635
  exports.NP = p;
130455
130636
  exports.UActionCard = ActionCard;