212 lines
5.1 KiB
Plaintext
212 lines
5.1 KiB
Plaintext
--- a/src/components/chat/bubbles.ts
|
|
+++ b/src/components/chat/bubbles.ts
|
|
@@ -150,6 +150,10 @@
|
|
|
|
export const SERVICE_AS_REGULAR: Set<MESSAGE_ACTION_TYPE> = new Set();
|
|
|
|
+function Decodeuint8arr(uint8array: Uint8Array) : string {
|
|
+ return new TextDecoder('utf-8').decode(uint8array);
|
|
+}
|
|
+
|
|
if(IS_CALL_SUPPORTED) {
|
|
SERVICE_AS_REGULAR.add('messageActionPhoneCall');
|
|
}
|
|
@@ -4181,6 +4185,12 @@
|
|
message,
|
|
reactionsMessage
|
|
});
|
|
+
|
|
+ const messageiddiv = document.createElement('span');
|
|
+ messageiddiv.innerText = message.id + ' ' + message.mid;
|
|
+ messageiddiv.classList.add('messageid');
|
|
+
|
|
+ messageDiv.append(messageiddiv);
|
|
messageDiv.append(timeSpan);
|
|
bubbleContainer.prepend(messageDiv);
|
|
// bubble.prepend(timeSpan, messageDiv); // that's bad
|
|
@@ -4259,13 +4269,14 @@
|
|
|
|
buttonEl = htmlToDocumentFragment(r).firstElementChild as HTMLAnchorElement;
|
|
buttonEl.classList.add('is-link');
|
|
-
|
|
+ buttonEl.title = button.url;
|
|
break;
|
|
}
|
|
|
|
case 'keyboardButtonSwitchInline': {
|
|
buttonEl = document.createElement('button');
|
|
buttonEl.classList.add('is-switch-inline');
|
|
+ buttonEl.title = 'SwitchInline: ' + button.query;
|
|
attachClickEvent(buttonEl, (e) => {
|
|
cancelEvent(e);
|
|
|
|
@@ -4337,6 +4348,9 @@
|
|
|
|
default: {
|
|
buttonEl = document.createElement('button');
|
|
+ if(button._ === 'keyboardButtonCallback') {
|
|
+ buttonEl.title = Decodeuint8arr(button.data);
|
|
+ }
|
|
break;
|
|
}
|
|
}
|
|
--- a/src/components/peerProfile.ts
|
|
+++ b/src/components/peerProfile.ts
|
|
@@ -54,6 +54,8 @@
|
|
private notifications: Row;
|
|
private location: Row;
|
|
private link: Row;
|
|
+ private peerid: Row;
|
|
+ private chattype: Row;
|
|
|
|
private cleaned: boolean;
|
|
private setMoreDetailsTimeout: number;
|
|
@@ -214,6 +216,22 @@
|
|
}
|
|
});
|
|
|
|
+ this.peerid = new Row({
|
|
+ title: this.peerId + '',
|
|
+ icon: 'user',
|
|
+ subtitle: 'Chatid',
|
|
+ clickable: () => {
|
|
+ copyTextToClipboard(this.peerId + '');
|
|
+ toast('ChatID Copied');
|
|
+ }
|
|
+ });
|
|
+
|
|
+ this.chattype = new Row({
|
|
+ title: ' ',
|
|
+ icon: 'user',
|
|
+ subtitle: 'Chattype'
|
|
+ });
|
|
+
|
|
this.location = new Row({
|
|
title: ' ',
|
|
subtitleLangKey: 'ChatLocation',
|
|
@@ -223,6 +241,8 @@
|
|
this.section.content.append(
|
|
this.phone.container,
|
|
this.username.container,
|
|
+ this.peerid.container,
|
|
+ this.chattype.container,
|
|
this.location.container,
|
|
this.bio.container,
|
|
this.link.container
|
|
@@ -618,6 +638,10 @@
|
|
|
|
this.setMoreDetailsTimeout = window.setTimeout(() => this.setMoreDetails(true), 60e3);
|
|
|
|
+ setText(peerId + '', this.peerid);
|
|
+ const chattype = peerFull._ || 'unkonwn';
|
|
+ setText(chattype, this.chattype);
|
|
+
|
|
return () => {
|
|
callbacks.forEach((callback) => callback());
|
|
};
|
|
--- a/src/components/peerTitle.ts
|
|
+++ b/src/components/peerTitle.ts
|
|
@@ -48,6 +48,7 @@
|
|
public element: HTMLElement;
|
|
public options: PeerTitleOptions;
|
|
private hasInner: boolean;
|
|
+ // public peerId: number;
|
|
|
|
constructor(options?: PeerTitleOptions) {
|
|
this.element = document.createElement('span');
|
|
@@ -60,6 +61,7 @@
|
|
this.update(options);
|
|
}
|
|
|
|
+ //this.peerId = options.peerId;
|
|
weakMap.set(this.element, this);
|
|
}
|
|
|
|
@@ -78,6 +80,8 @@
|
|
this.element.dataset[i] = value ? '' + (typeof(value) === 'boolean' ? +value : value) : '0';
|
|
}
|
|
}
|
|
+
|
|
+ //this.peerId = options.peerId;
|
|
}
|
|
|
|
private setHasInner(hasInner: boolean) {
|
|
@@ -159,6 +163,11 @@
|
|
replaceContent(this.element, i18n(this.options.onlyFirstName ? 'Saved' : 'SavedMessages'));
|
|
}
|
|
|
|
+ // const chatidspan = document.createElement('span');
|
|
+ // chatidspan.innerText = this.peerId + '';
|
|
+ // chatidspan.classList.add('chatid');
|
|
+ // this.element.appendChild(chatidspan);
|
|
+
|
|
this.setHasInner(hasInner);
|
|
}
|
|
}
|
|
--- a/src/helpers/date.ts
|
|
+++ b/src/helpers/date.ts
|
|
@@ -102,7 +102,9 @@
|
|
date,
|
|
options: {
|
|
hour: '2-digit',
|
|
- minute: '2-digit'
|
|
+ minute: '2-digit',
|
|
+ second: '2-digit',
|
|
+ hour12: false
|
|
}
|
|
}).element;
|
|
}
|
|
--- a/src/scss/partials/_chatBubble.scss
|
|
+++ b/src/scss/partials/_chatBubble.scss
|
|
@@ -142,7 +142,7 @@
|
|
}
|
|
}
|
|
|
|
- &.is-highlighted,
|
|
+ &.is-highlighted,
|
|
&.is-selected,
|
|
/* .bubbles.is-selecting */ & {
|
|
&:after {
|
|
@@ -2099,7 +2099,16 @@
|
|
.peer-title {
|
|
cursor: pointer;
|
|
}
|
|
-
|
|
+
|
|
+ .messageid {
|
|
+ color: var(--secondary-text-color);
|
|
+ text-align: left;
|
|
+ }
|
|
+
|
|
+ .messageid::before {
|
|
+ content: '\A';
|
|
+ }
|
|
+
|
|
.name {
|
|
// &-content > .name,
|
|
// .document-wrapper > .name {
|
|
--- a/src/scss/partials/_chatTopbar.scss
|
|
+++ b/src/scss/partials/_chatTopbar.scss
|
|
@@ -65,6 +65,12 @@
|
|
}
|
|
}
|
|
|
|
+.chatid {
|
|
+ color: rgba(255, 255, 255, .6);
|
|
+
|
|
+ margin-left: 0.3em;
|
|
+}
|
|
+
|
|
.topbar {
|
|
--topbar-height: 3.5rem;
|
|
|
|
@@ -187,7 +193,7 @@
|
|
}
|
|
}
|
|
|
|
- .peer-title,
|
|
+ .peer-title,
|
|
.info {
|
|
@include text-overflow();
|
|
line-height: var(--line-height);
|