Drop neutilizat @ts-expect-error on streaming bring body
În ceea ce privește cererea de propuneri, directiva prevede că: redundant sub modul strict TS și rupe clădirea de producție.
Actualizări live ale listei de chat-uri prin intermediul canalului NATS necitit
Compozitor cu drag-drop, în așteptare chips-uri de atașament, intrare multi-line
Proxy routes for find-or-create, members, attachments, imaging proxy, mute, revoke
Extract shared **************** helper to app/lib/mediaServiceUrl.ts. Add proxy routes: find-or-create, members, receipts, attachments (streaming), mutes, revok...
Distinguish actively-translating vs queued messages
The streaming queue was already strictly sequential (one fetch at a time), but every queued message rendered "Translating…" because they all shared the same pen...
Show error icon when a message fails to translate
When the per-message translate call returns translated:false, errors out, or times out, the chat bubble now renders a small red ErrorOutline icon in place of th...
Persist language change and show current language in tooltip
The members endpoint accepts PUT not PATCH, so the language picker's PATCH was silently ignored — Member.language never actually updated, which is why refreshin...
Inainte interogare sir pe ***************
Proxy Next.js a fost în scădere șir de interogare cerere atunci când transmite la MediaService, care a însemnat istoria chat-ului aduce ?lang=<locale> Param a f...
Stream message translations newest-first on language switch
When the user picks a new language (or opens an existing chat in a language different from the messages' source), every bubble that needs translation immediatel...
Revert "fix(settings): show Plans & Billing tab regardless of root-org status"
This reverts commit ****************
Translate chat messages into the viewer's language
Adds a "My Language" flag picker in NavTop (left of the email tool, separated by a vertical rule). Selecting a language writes back to Member.language and syncs...
Show Plans & Billing tab regardless of root-org status
The !isRootOrg gate hid the tab on root orgs and blocked org owners and self-viewers from reaching their billing page from "My Account". The PlansBillingTab its...
Tradu siruri de caractere hardcodate UI
setup/dns (6 fișiere): page, AliasStatustable, DnsProgressView; DnsProvisioning Panou, DomainEntryForm, ManualDnsGuide. setări (10 fișiere: diagnostice, esenția...
Drop in place — jump every member, no softPush on release
The drift on release was softPushCluster firing on the user-drop path. A mega-cluster's bounds extend in all directions from the anchor, so the PADDING-margin /...
Translate hardcoded UI strings
account/view: 40 strings reused from existing namespace (no new keys). kb (13 files): translate article editor, viewer, reviews, resources, versions, navigation...
Tradu restul de siruri de caractere hardcodate UI
Pagina de sarcini: Salvați modificări, Închideți, Adăugați elementul de sarcină la fluxul de automatizare, Editează vârful de instrument titlu. Note pagina: Lib...
Replace hardcoded English with t() across leads pages
Translate remaining hardcoded UI strings in allotments, new, reports, and view/[id] to use next-intl. Add scripts/i18n-audit.py to detect remaining hardcoded st...
Drop firmly in place — tail-only throw + jump() to clear velocity
The previous fix still let heads drift on release because: 1. Throw detection averaged velocity across the full 110ms window. A user who flicked then decele...
Drop in place after a paused drag instead of drifting
Two cooperating bugs caused dropped heads (single or post-gather) to fly off to seemingly random positions when the user dragged fast, slowed to a stop, then re...
Adaugă personal + Chat/Docs/Note/KB/HRS secțiuni
Indexul/setărilor nu a arătat nicio secţiune pentru non-admini pentru că fiecare secțiunea existentă a fost deschisă pe un dreapta admin (CONFIGURE SISTEM, Mana...
Rotește deschiderea obiectivului pe baza raportului de aspect al viewport
Cadrul de gol acum înclinați de atan2 (vizualportH, viewportW) astfel încât deschis partea dreaptă vizează spre viewport puncte de deschidere ~29° sud de est; p...
Throw-to-remove goal with score/miss celebrations
A 132×132 gol cadru apare în partea de sus-stânga ori de câte ori un cap este în solo-drag sau activ-aruncă, offset 56px de colț astfel încât capetele pot Dor d...
Arunca fizica cu coliziuni piscină-table și traseul cometei
Lovind cu capul de pragul aruncării, îl lansează prin teleportare. sub fizica explicita (frigitare, saritura margine, cap-vs-cap elastic coliziuni). Picături le...
Anulează viteza de tragere moștenită la eliberare
Manipulatorul de dragon actualizează valoarea de mișcare a capului cu mx.set rapid (nx) Apeluri, care ramer-motion folosește pentru a calcula viteza. Când elibe...
Crispen hexagon outline at all sizes/states
Four sources of softness eliminated: - **************** on the SVG - **************** on the visible outline so the stroke width does not stretch (and blur) u...
Utilizați serverul-mentat OTK pentru a comuta în org nou
Preferați otk returnat de Post /api/security/org peste follow-up /api/security/enter-as round-trip. Serverul acum menteaza un proprietar nou sesiune ca parte a ...
Spațiere percluster + reguli de grupare de aceeași dimensiune
Celula cluster și adiacenta hex sunt acum derivate din cel mai mare grup membru în loc de scară globală, și MVs adeptul includ centru-aliniere compensa astfel î...
Ascunde popover atunci când Invita la Întâlnire deschide dialogul
Pover folosit pentru a rămâne deschis sub dialogul întâlnire pentru că Dialogul a fost transmis condiţionat în interiorul porţii ţintei popoverului. Capturați i...
Rescrie sistemul drag/cluster cu capsator magnetic si aduna gestul
Înlocuiți HexHeadGroup monolitic (847 de linii) cu un motor modular cluster în cadrul aplicației/componentelor/chat/hexheads/. O singură sursă a adevărului: fie...
Robust English fallback for missing and empty locale translations
- mergeWithFallback now treats empty-string locale values as untranslated, falling back to the English value instead of rendering nothing - Replace bare NextI...
Update orders page account uid type from number to string
AccountSummary.uid is now a string (Long precision fix). Also remove parseInt comparison and type="number" from the manual account ID field.
Mută starea disponibilității în partea stângă înainte de My Businesses
Relocă pilula de stare de la bara de acțiune dreapta la secțiunea de bun venit stânga, plasarea-l între separatorul de salut și My Businesses cu un separator. E...
Adaugă țintăOrganizareId la tipuri de comenzi Abonare și creareAbonare Ordine
CustomerMemberId este membru ID șir, rezolva conturile de primarUED
- PosApi: ContSummary uid string, adăugați primul membruId; ***************** CustomerMemberId string; ***************** șir clientId - SubscriptionOrderWizard:...
Înlocuiți clic-la-deschis cu acţiune popover + dimensiunea de control
Faceți clic pe un cap hex deschide acum o sticlă lustruit-morfism popover cu acțiuni contextuale în loc să-și deschidă imediat fereastra de instrumente. Membru ...
Complete next-intl for System Diagnostics
Wire remaining MySQL, Redis, statistics, request, and accordion UI copy to components.settings.diagnostics keys; use locale-aware time and translated heap badge...
Restaurează "feat (billing): wire FeaturesManager la abonamentul pe platformă pentru gating pentru copii-org"
Acest reverts comite Nu-ţi face griji
Wire FeaturesManager la abonament platforma pentru gating copii-org
Caracteristici Manager a fost de asteptare mostenire *** *** *** *** *** care aruncări (retragere în mișcare) în loc să citească abonamentul real al platformei....
Legacy getCurrentAbonamentul trebuie aruncat, nu returnat nul
Returnarea nul făcut CaracteristiciManager trata fiecare org ca având nici un abonament (billingLoaded=adevărat, hasSubscription=fals), blocare toate comutatoar...
Utilizaţi eticheta aria tradusă pentru SetăriView file
Citiri Ne vedem mai târziu.
Module Json Ambient pentru mesaje gitignored/*.json imports
fișiere angajate în mesaje/. Extindere include pentru tipuri/**/*d.ts.
Ca ceea ce vezi de transport maritim?
Fiecare dintre aceste actualizări aterizează automat în spațiul de lucru. Începe gratuit și urmăriți-l crească săptămână după săptămână.