@uzum-tech/ui 2.3.3 → 2.3.4

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.
package/dist/index.js CHANGED
@@ -55481,6 +55481,249 @@
55481
55481
  ["event" /* EVENT */]: MessageBubbleServiceVariant.EVENT,
55482
55482
  ["divider" /* DIVIDER */]: MessageBubbleServiceVariant.DIVIDER
55483
55483
  };
55484
+ const chatProps = {
55485
+ ...useTheme.props,
55486
+ chatItems: {
55487
+ type: Array,
55488
+ default: () => []
55489
+ },
55490
+ selectedChatId: {
55491
+ type: [String, Number],
55492
+ default: void 0
55493
+ },
55494
+ inputValue: {
55495
+ type: String,
55496
+ default: void 0
55497
+ },
55498
+ messages: {
55499
+ type: Array,
55500
+ default: () => []
55501
+ },
55502
+ typingChatIds: {
55503
+ type: Array,
55504
+ default: () => []
55505
+ },
55506
+ disabled: {
55507
+ type: Boolean,
55508
+ default: false
55509
+ },
55510
+ listEmptyProps: {
55511
+ type: Object,
55512
+ default: void 0
55513
+ },
55514
+ listHeaderTitle: {
55515
+ type: [String, Function],
55516
+ default: "Chats"
55517
+ },
55518
+ listHeaderActions: {
55519
+ type: Array,
55520
+ default: () => []
55521
+ },
55522
+ listHeaderButtonProps: {
55523
+ type: Object,
55524
+ default: void 0
55525
+ },
55526
+ listHeaderIconProps: {
55527
+ type: Object,
55528
+ default: void 0
55529
+ },
55530
+ listItemAvatarProps: {
55531
+ type: Object,
55532
+ default: void 0
55533
+ },
55534
+ listItemBadgeProps: {
55535
+ type: Object,
55536
+ default: void 0
55537
+ },
55538
+ headerTitle: {
55539
+ type: [String, Function],
55540
+ default: void 0
55541
+ },
55542
+ headerActions: {
55543
+ type: Array,
55544
+ default: () => []
55545
+ },
55546
+ headerButtonProps: {
55547
+ type: Object,
55548
+ default: void 0
55549
+ },
55550
+ headerIconProps: {
55551
+ type: Object,
55552
+ default: void 0
55553
+ },
55554
+ headerShareButtonProps: {
55555
+ type: Object,
55556
+ default: void 0
55557
+ },
55558
+ headerProfileButtonProps: {
55559
+ type: Object,
55560
+ default: void 0
55561
+ },
55562
+ headerCloseButtonProps: {
55563
+ type: Object,
55564
+ default: void 0
55565
+ },
55566
+ headerShareIconProps: {
55567
+ type: Object,
55568
+ default: void 0
55569
+ },
55570
+ headerProfileIconProps: {
55571
+ type: Object,
55572
+ default: void 0
55573
+ },
55574
+ messageSenderAvatarProps: {
55575
+ type: Object,
55576
+ default: void 0
55577
+ },
55578
+ messageUploadProps: {
55579
+ type: Object,
55580
+ default: void 0
55581
+ },
55582
+ messageButtonProps: {
55583
+ type: Object,
55584
+ default: void 0
55585
+ },
55586
+ footerInputProps: {
55587
+ type: Object,
55588
+ default: void 0
55589
+ },
55590
+ footerButtonProps: {
55591
+ type: Object,
55592
+ default: void 0
55593
+ },
55594
+ footerUploadProps: {
55595
+ type: Object,
55596
+ default: void 0
55597
+ },
55598
+ footerUploadTriggerProps: {
55599
+ type: Object,
55600
+ default: void 0
55601
+ },
55602
+ footerIconProps: {
55603
+ type: Object,
55604
+ default: void 0
55605
+ },
55606
+ footerSuffixIconProps: {
55607
+ type: Object,
55608
+ default: void 0
55609
+ },
55610
+ emptyProps: {
55611
+ type: Object,
55612
+ default: void 0
55613
+ },
55614
+ retryText: {
55615
+ type: String,
55616
+ default: void 0
55617
+ },
55618
+ typingText: {
55619
+ type: String,
55620
+ default: void 0
55621
+ },
55622
+ closeButtonText: {
55623
+ type: String,
55624
+ default: void 0
55625
+ },
55626
+ shareButtonTooltip: {
55627
+ type: String,
55628
+ default: void 0
55629
+ },
55630
+ profileButtonTooltip: {
55631
+ type: String,
55632
+ default: void 0
55633
+ },
55634
+ unreadNotificationText: {
55635
+ type: String,
55636
+ default: void 0
55637
+ },
55638
+ chatItemsLoading: {
55639
+ type: Boolean,
55640
+ default: false
55641
+ },
55642
+ chatItemsLoadingCount: {
55643
+ type: Number,
55644
+ default: 10
55645
+ },
55646
+ messagesLoading: {
55647
+ type: Boolean,
55648
+ default: false
55649
+ },
55650
+ messagesLoadingCount: {
55651
+ type: Number,
55652
+ default: 10
55653
+ },
55654
+ height: {
55655
+ type: [String, Number],
55656
+ default: 800
55657
+ },
55658
+ onChatSelect: {
55659
+ type: Function,
55660
+ default: void 0
55661
+ },
55662
+ onMessageRetry: {
55663
+ type: Function,
55664
+ default: void 0
55665
+ },
55666
+ bubbleActions: {
55667
+ type: Array,
55668
+ default: void 0
55669
+ },
55670
+ onChatClose: {
55671
+ type: Function,
55672
+ default: void 0
55673
+ },
55674
+ onChatShare: {
55675
+ type: Function,
55676
+ default: void 0
55677
+ },
55678
+ onUserProfile: {
55679
+ type: Function,
55680
+ default: void 0
55681
+ },
55682
+ onAttachmentUpload: {
55683
+ type: Function,
55684
+ default: void 0
55685
+ },
55686
+ onAttachmentDownload: {
55687
+ type: Function,
55688
+ default: void 0
55689
+ },
55690
+ onFilterChange: {
55691
+ type: Function,
55692
+ default: void 0
55693
+ },
55694
+ onFooterInputChange: {
55695
+ type: Function,
55696
+ default: void 0
55697
+ },
55698
+ onNetworkError: {
55699
+ type: Function,
55700
+ default: void 0
55701
+ },
55702
+ onUploadError: {
55703
+ type: Function,
55704
+ default: void 0
55705
+ },
55706
+ onSendError: {
55707
+ type: Function,
55708
+ default: void 0
55709
+ },
55710
+ onChatItemsScrollToTop: {
55711
+ type: Function,
55712
+ default: void 0
55713
+ },
55714
+ onChatItemsScrollToBottom: {
55715
+ type: Function,
55716
+ default: void 0
55717
+ },
55718
+ onMessagesScrollToTop: {
55719
+ type: Function,
55720
+ default: void 0
55721
+ },
55722
+ onMessagesScrollToBottom: {
55723
+ type: Function,
55724
+ default: void 0
55725
+ }
55726
+ };
55484
55727
 
55485
55728
  var style$15 = cB("chat", `
55486
55729
  height: 100%;
@@ -56310,6 +56553,10 @@
56310
56553
  type: Object,
56311
56554
  default: void 0
56312
56555
  },
56556
+ inputValue: {
56557
+ type: String,
56558
+ default: void 0
56559
+ },
56313
56560
  messages: {
56314
56561
  type: Array,
56315
56562
  default: () => []
@@ -56426,6 +56673,10 @@
56426
56673
  type: Function,
56427
56674
  default: void 0
56428
56675
  },
56676
+ "onUpdate:inputValue": {
56677
+ type: Function,
56678
+ default: void 0
56679
+ },
56429
56680
  onChatClose: {
56430
56681
  type: Function,
56431
56682
  default: void 0
@@ -56478,6 +56729,10 @@
56478
56729
  const headerProfileIconPropsRef = UChat?.headerProfileIconPropsRef ?? vue.toRef(props, "headerProfileIconProps");
56479
56730
  const messageUploadPropsRef = UChat?.messageUploadPropsRef ?? vue.toRef(props, "messageUploadProps");
56480
56731
  const footerInputPropsRef = UChat?.footerInputPropsRef ?? vue.toRef(props, "footerInputProps");
56732
+ const safeFooterInputPropsRef = vue.computed(() => {
56733
+ const { value, ...rest } = footerInputPropsRef.value ?? {};
56734
+ return rest;
56735
+ });
56481
56736
  const footerButtonPropsRef = UChat?.footerButtonPropsRef ?? vue.toRef(props, "footerButtonProps");
56482
56737
  const footerUploadPropsRef = UChat?.footerUploadPropsRef ?? vue.toRef(props, "footerUploadProps");
56483
56738
  const footerIconPropsRef = UChat?.footerIconPropsRef ?? vue.toRef(props, "footerIconProps");
@@ -56602,7 +56857,22 @@
56602
56857
  );
56603
56858
  const messagesBodyRef = vue.ref();
56604
56859
  const inputRef = vue.ref();
56605
- const inputValue = vue.ref("");
56860
+ const uncontrolledInputValueRef = vue.ref(props.inputValue ?? "");
56861
+ const handleInputValueChange = UChat?.handleInputValueChange ?? ((value) => {
56862
+ uncontrolledInputValueRef.value = value;
56863
+ props["onUpdate:inputValue"]?.(value);
56864
+ });
56865
+ const inputValue = vue.computed({
56866
+ get: () => {
56867
+ if (UChat) {
56868
+ return UChat.inputValueRef.value ?? "";
56869
+ }
56870
+ return props.inputValue !== void 0 ? props.inputValue : uncontrolledInputValueRef.value;
56871
+ },
56872
+ set: (value) => {
56873
+ handleInputValueChange(value);
56874
+ }
56875
+ });
56606
56876
  const attachmentFileList = vue.ref([]);
56607
56877
  const uploadedAttachmentsMap = vue.ref(/* @__PURE__ */ new Map());
56608
56878
  const lastScrollTop = vue.ref(0);
@@ -57177,13 +57447,14 @@
57177
57447
  }
57178
57448
  },
57179
57449
  onKeydown: (e) => {
57450
+ footerInputPropsRef.value?.onKeydown?.(e);
57180
57451
  if (e.key === "Enter" && !e.shiftKey) {
57181
57452
  e.preventDefault();
57182
57453
  e.stopPropagation();
57183
57454
  void handleSendMessage();
57184
57455
  }
57185
57456
  },
57186
- ...footerInputPropsRef.value
57457
+ ...safeFooterInputPropsRef.value
57187
57458
  },
57188
57459
  {
57189
57460
  prefix: () => renderEditingBlock(),
@@ -57217,6 +57488,8 @@
57217
57488
  mergedClsPrefixRef,
57218
57489
  mergedThemeRef,
57219
57490
  selectedChatRef,
57491
+ inputValueRef: inputValue,
57492
+ handleInputValueChange,
57220
57493
  messagesRef,
57221
57494
  typingChatIdsRef,
57222
57495
  messagesLoadingRef,
@@ -58986,250 +59259,12 @@
58986
59259
  }
58987
59260
  });
58988
59261
 
58989
- const chatProps = {
58990
- ...useTheme.props,
58991
- chatItems: {
58992
- type: Array,
58993
- default: () => []
58994
- },
58995
- selectedChatId: {
58996
- type: [String, Number],
58997
- default: void 0
58998
- },
58999
- messages: {
59000
- type: Array,
59001
- default: () => []
59002
- },
59003
- typingChatIds: {
59004
- type: Array,
59005
- default: () => []
59006
- },
59007
- disabled: {
59008
- type: Boolean,
59009
- default: false
59010
- },
59011
- listEmptyProps: {
59012
- type: Object,
59013
- default: void 0
59014
- },
59015
- listHeaderTitle: {
59016
- type: [String, Function],
59017
- default: "Chats"
59018
- },
59019
- listHeaderActions: {
59020
- type: Array,
59021
- default: () => []
59022
- },
59023
- listHeaderButtonProps: {
59024
- type: Object,
59025
- default: void 0
59026
- },
59027
- listHeaderIconProps: {
59028
- type: Object,
59029
- default: void 0
59030
- },
59031
- listItemAvatarProps: {
59032
- type: Object,
59033
- default: void 0
59034
- },
59035
- listItemBadgeProps: {
59036
- type: Object,
59037
- default: void 0
59038
- },
59039
- headerTitle: {
59040
- type: [String, Function],
59041
- default: void 0
59042
- },
59043
- headerActions: {
59044
- type: Array,
59045
- default: () => []
59046
- },
59047
- headerButtonProps: {
59048
- type: Object,
59049
- default: void 0
59050
- },
59051
- headerIconProps: {
59052
- type: Object,
59053
- default: void 0
59054
- },
59055
- headerShareButtonProps: {
59056
- type: Object,
59057
- default: void 0
59058
- },
59059
- headerProfileButtonProps: {
59060
- type: Object,
59061
- default: void 0
59062
- },
59063
- headerCloseButtonProps: {
59064
- type: Object,
59065
- default: void 0
59066
- },
59067
- headerShareIconProps: {
59068
- type: Object,
59069
- default: void 0
59070
- },
59071
- headerProfileIconProps: {
59072
- type: Object,
59073
- default: void 0
59074
- },
59075
- messageSenderAvatarProps: {
59076
- type: Object,
59077
- default: void 0
59078
- },
59079
- messageUploadProps: {
59080
- type: Object,
59081
- default: void 0
59082
- },
59083
- messageButtonProps: {
59084
- type: Object,
59085
- default: void 0
59086
- },
59087
- footerInputProps: {
59088
- type: Object,
59089
- default: void 0
59090
- },
59091
- footerButtonProps: {
59092
- type: Object,
59093
- default: void 0
59094
- },
59095
- footerUploadProps: {
59096
- type: Object,
59097
- default: void 0
59098
- },
59099
- footerUploadTriggerProps: {
59100
- type: Object,
59101
- default: void 0
59102
- },
59103
- footerIconProps: {
59104
- type: Object,
59105
- default: void 0
59106
- },
59107
- footerSuffixIconProps: {
59108
- type: Object,
59109
- default: void 0
59110
- },
59111
- emptyProps: {
59112
- type: Object,
59113
- default: void 0
59114
- },
59115
- retryText: {
59116
- type: String,
59117
- default: void 0
59118
- },
59119
- typingText: {
59120
- type: String,
59121
- default: void 0
59122
- },
59123
- closeButtonText: {
59124
- type: String,
59125
- default: void 0
59126
- },
59127
- shareButtonTooltip: {
59128
- type: String,
59129
- default: void 0
59130
- },
59131
- profileButtonTooltip: {
59132
- type: String,
59133
- default: void 0
59134
- },
59135
- unreadNotificationText: {
59136
- type: String,
59137
- default: void 0
59138
- },
59139
- chatItemsLoading: {
59140
- type: Boolean,
59141
- default: false
59142
- },
59143
- chatItemsLoadingCount: {
59144
- type: Number,
59145
- default: 10
59146
- },
59147
- messagesLoading: {
59148
- type: Boolean,
59149
- default: false
59150
- },
59151
- messagesLoadingCount: {
59152
- type: Number,
59153
- default: 10
59154
- },
59155
- height: {
59156
- type: [String, Number],
59157
- default: 800
59158
- },
59159
- onChatSelect: {
59160
- type: Function,
59161
- default: void 0
59162
- },
59163
- onMessageRetry: {
59164
- type: Function,
59165
- default: void 0
59166
- },
59167
- bubbleActions: {
59168
- type: Array,
59169
- default: void 0
59170
- },
59171
- onChatClose: {
59172
- type: Function,
59173
- default: void 0
59174
- },
59175
- onChatShare: {
59176
- type: Function,
59177
- default: void 0
59178
- },
59179
- onUserProfile: {
59180
- type: Function,
59181
- default: void 0
59182
- },
59183
- onAttachmentUpload: {
59184
- type: Function,
59185
- default: void 0
59186
- },
59187
- onAttachmentDownload: {
59188
- type: Function,
59189
- default: void 0
59190
- },
59191
- onFilterChange: {
59192
- type: Function,
59193
- default: void 0
59194
- },
59195
- onFooterInputChange: {
59196
- type: Function,
59197
- default: void 0
59198
- },
59199
- onNetworkError: {
59200
- type: Function,
59201
- default: void 0
59202
- },
59203
- onUploadError: {
59204
- type: Function,
59205
- default: void 0
59206
- },
59207
- onSendError: {
59208
- type: Function,
59209
- default: void 0
59210
- },
59211
- onChatItemsScrollToTop: {
59212
- type: Function,
59213
- default: void 0
59214
- },
59215
- onChatItemsScrollToBottom: {
59216
- type: Function,
59217
- default: void 0
59218
- },
59219
- onMessagesScrollToTop: {
59220
- type: Function,
59221
- default: void 0
59222
- },
59223
- onMessagesScrollToBottom: {
59224
- type: Function,
59225
- default: void 0
59226
- }
59227
- };
59228
59262
  var _UChat = vue.defineComponent({
59229
59263
  name: "Chat",
59230
59264
  props: chatProps,
59231
59265
  emits: [
59232
59266
  "update:selectedChatId",
59267
+ "update:inputValue",
59233
59268
  "message-send",
59234
59269
  "message-retry",
59235
59270
  "attachment-upload",
@@ -59350,6 +59385,14 @@
59350
59385
  const mergedSelectedChatIdRef = vue.computed(() => {
59351
59386
  return props.selectedChatId !== void 0 ? props.selectedChatId : uncontrolledSelectedChatIdRef.value;
59352
59387
  });
59388
+ const uncontrolledInputValueRef = vue.ref(props.inputValue ?? "");
59389
+ const mergedInputValueRef = vue.computed(() => {
59390
+ return props.inputValue !== void 0 ? props.inputValue : uncontrolledInputValueRef.value;
59391
+ });
59392
+ const handleInputValueChange = (value) => {
59393
+ uncontrolledInputValueRef.value = value;
59394
+ emit("update:inputValue", value);
59395
+ };
59353
59396
  const selectedChatRef = vue.computed(() => {
59354
59397
  return props.chatItems?.find(
59355
59398
  (item) => item.id === mergedSelectedChatIdRef.value
@@ -59463,6 +59506,8 @@
59463
59506
  chatItemsRef: vue.toRef(props, "chatItems"),
59464
59507
  selectedChatIdRef: mergedSelectedChatIdRef,
59465
59508
  selectedChatRef,
59509
+ inputValueRef: mergedInputValueRef,
59510
+ handleInputValueChange,
59466
59511
  messagesRef: filteredMessagesRef,
59467
59512
  typingChatIdsRef: vue.toRef(props, "typingChatIds"),
59468
59513
  chatItemsLoadingRef: vue.toRef(props, "chatItemsLoading"),
@@ -117635,7 +117680,7 @@ ${icon.label}`.toLowerCase()
117635
117680
  });
117636
117681
  }
117637
117682
 
117638
- var version = "2.3.3";
117683
+ var version = "2.3.4";
117639
117684
 
117640
117685
  function create({
117641
117686
  componentPrefix = "U",