Skip to content

Instantly share code, notes, and snippets.

View Then19's full-sized avatar

Anatoliy Then19

View GitHub Profile
@Then19
Then19 / widget.js
Created July 27, 2025 10:54
syn widget
var SynergyWidget;(()=>{"use strict";var e={56:(e,n,t)=>{e.exports=function(e){var n=t.nc;n&&e.setAttribute("nonce",n)}},72:e=>{var n=[];function t(e){for(var t=-1,i=0;i<n.length;i++)if(n[i].identifier===e){t=i;break}return t}function i(e,i){for(var o={},a=[],s=0;s<e.length;s++){var c=e[s],d=i.base?c[0]+i.base:c[0],l=o[d]||0,u="".concat(d," ").concat(l);o[d]=l+1;var p=t(u),h={css:c[1],media:c[2],sourceMap:c[3],supports:c[4],layer:c[5]};if(-1!==p)n[p].references++,n[p].updater(h);else{var f=r(h,i);i.byIndex=s,n.splice(s,0,{identifier:u,updater:f,references:1})}a.push(u)}return a}function r(e,n){var t=n.domAPI(n);return t.update(e),function(n){if(n){if(n.css===e.css&&n.media===e.media&&n.sourceMap===e.sourceMap&&n.supports===e.supports&&n.layer===e.layer)return;t.update(e=n)}else t.remove()}}e.exports=function(e,r){var o=i(e=e||[],r=r||{});return function(e){e=e||[];for(var a=0;a<o.length;a++){var s=t(o[a]);n[s].references--}for(var c=i(e,r),d=0;d<o.length;d++){var l=t(o[d]);0===n[l].references&&(n[l].updater()
class ChatWidget {
constructor() {
this.userId = this.getOrCreateUserId();
this.socket = null;
this.isOpen = false;
this.init();
}
// Генерация/получение ID пользователя
getOrCreateUserId() {