Changelog
Co nowego.
Każde ulepszenie platformy, jak to wysyła.
· SecurityService
Powiedz, które miejscują każdy wpis jest naprawdę przetłumaczony na
Mapa strony marketingowej zawiera teraz listę każdej wersji językowej Wpis, a każda strona wpisu nazywa inne jako jej hreflang na przemian. A A wiersz tłumaczenia nie jest dowodem jednego: TranslateService odpowiada na instrukcje Nie ma dostawcy z angielskiego źródła, więc każdy ta row, sw i sw i ćwieki starszych wpisów, powtórzyć angielski tytuł słowo w słowo. Nazewnietowanie Wykierowałoby to wyszukiwarki na stronach, które kanoniczne są z powrotem do angielskiego. - zwroty, za wpis, miejscowość którego tytuł lub opis różni się od języka angielskiego, w porównaniu z angielskim Baza danych w partiach 1000 ujęć. - /publiczna/mapa masakry niesie za wejście i przyjmuje zamówienie najstarsze, więc Pliki changelogu witryny wypełniają się, a następnie nigdy nie zmieniają. - /public/entry/slug niesie ’locales’, a „przetłumaczone” oznacza teraz prawdziwe Tłumaczenie zamiast wiersza.
· kamo-internal
Unieważnienie organizacji z Platformy -> Konfiguracja -> Organizacje
Zakładka Organizacji zyskuje aktywne i Void sub-tabs, a każda organizacja Szkieruj sposób, aby go unieważnić - lub, na karcie Void, przywrócić go. - Aktywna / Void sub-tabs powyżej katalogu, liczony z serwera activeOrgs / anoidedOrgs (które śledzą wyszukiwanie, w zależności od tego, która karta jest otwarta). Zakładka działa w adresie URL jako orgStatus-void, jak reszta konsoli Widok; jest to miejsce, a nie filtr, więc przezroczyste utrzymuje go. - Sekcja Pustki szuflady (nig na platformie org) otwiera potwierdzenie To przeliteruje to, co robi unieważnienie: wszyscy w środku są wylogowani, to odchodzi /sieć, logowanie i każda lista, jej twórca jest traktowany jako nigdy nie mając Stworzył go i nic nie zostało usunięte. - Unieważniona szuflada org typu liga z napisem "Voided" - datacja> przez "operator"" i Przywróć; Próba i kontrola produktu platformy są wyłączone. - Odmowa serwera — platforma org, org, w którym jesteś zalogowany, na żywo Sub-orgs, wciąż naładowane - są wyświetlane w oknie dialogowym, w słowach. - POST - przez trasę przekaźnikową (SecurityService egzekwuje MANAGE_ORGANIZATIONS). Backend: kamo-shared-library d2c09630, usługa bezpieczeństwa 6c8d789, usługa rozliczeniowa 072ca5f, mediaservice db90b81; angielski w kamo-translation-dictionary deba6215.
· MediaService
skład nie wymienia już unieważnionej organizacji
Organizacja unieważniona z Platformy -> Konfiguracja -> Organizacje (orgs.is_active - FALSE) nie istnieje nigdzie, ale karta Void konsoli. ZnajdźOwnedOrgsByOwnerIds — własna kopia składu "których orgs robi każdy Własne wykonawstwo”, zachowane dla org id obok każdego tytułu – teraz niesie to samo live-org filtruj współdzielone findOedTitlesByOwnerIds i ZnajdźDistinctOnerUserIds zdobyte w kamo-shared-library d2c09630. Przypięty do Exec2ExecQueryParseTest, który również analizuje go przeciwko modelowi podmiotu.
· BillingService
Aktywna i pustowa zakładki w katalogu org platformy
Zakładka Organizacji Konsoli dzieli się teraz na sub-tabs Active i Void. A A Unieważniona organizacja to orgs.is_active - FALSE (ustawione przez pustkę SecurityService Punkt końcowy); katalog jest jedynym miejscem, w którym nadal znajduje się na karcie Void, Tak więc operator może go znaleźć do przywrócenia. - GET /api/billing/platform/platformy/orgs przyjmuje status-udostęp; wszystko inne, w tym Brak statusu, listy tylko na żywo orgs. Każdy starszy rozmówca - ceł handlowych Wyszukiwanie docelowe wśród nich - prosi o brak statusu, więc żaden z nich nie może być Pokazała organizację, która już nie istnieje. - Rzędy przenoszą unieważnione, upustkęAt, unieważnioneByUserId i uwodniony upustkaByName (jedna poszatraktowana gaślewka, tylko wtedy, gdy strona unieważniła rzędy). - Agregaty postępują zgodnie z zakładką i dodają ActiveOrgs / anoidedOrgs, które ignorują Zakładka (obie karty wymagają obu liczb) przy jednoczesnym honorowaniu każdego innego filtra. - Liczby Sub-org pozostawiają unieważnione dzieci. - Nocna migawka do przechowywania i raport przechowywania platformy pominięte unieważnione Orgs; historia jest utrzymywana, a obsługa gap przez pisarza łapie przywrócony org. Zweryfikować wygenerowane wypowiedzi w oparciu o bazę danych na żywo: Active 40 rzędów / liczy 40 + 0, Pustka 0 rzędów.
· SecurityService
Pusna organizacja i nie pozwól, aby nie dotrzeć do unieważnionej
Platforma -> Konfiguracja -> Organizacje mogą teraz unieważnić organizację. Pustka to orgs.is_active - FALSE; to commit dodaje akcję i tworzy Każda droga do tego, aby organizacja odmówiła unieważnienia. Akcja — POST ? i /restore, MANAGE_ORGANIZATIONS (prawo zakładki): - OrgVoidService odmawia, nic nie zmieniając: platforma org, org Operator jest zalogowany, org z żywymi suborgs, a org nadal jest Naliczany (subskrypcja PAID na żywo z ceną, ukierunkowana na nią lub zapłacona przez nią Konta). W przeciwnym razie ustanawia flagę, rejestruje voided_at / voided_by_user_id, I unieważnia każdą sesję, którą organizują członkowie. Przywracanie oczyszcza wszystkie trzy. Nic nie jest usuwane; członkowie i dane wracają tak, jak byli. - 200 z nowym stanem, 404 nieznany, 409 z powodem, dla którego konsola tłumaczy. Sposoby w: - KSessionService.createSession — talii każda - odrzuca unieważniony org przez VoidedOrgGuard (odwglądać w wykład lub nie działa, nie działa), następnie Do bramy z syntetycznego konta. - my-sieci pozostawia unieważnione orgs OUT: ekran domowy liczy jego rzędy sąwańskie rzędy Dbać o tym, czy członek stworzył org, a więc członek, którego tylko stworzono Org został unieważniony jest ponownie oferowany przepływu create-your-first-org. Poniżej znajduje się wspólny adres getAllOrganizations(). - wjazd i cross-org naśladowanie 404, jak w przypadku brakującego orgi. - Sondaż sesji kończy sesję wewnątrz unieważnionego orgudu (backstop dla jednego wybitego Zanim flaga wylądowała). - Wymiana urządzeń mobilnych, autologin po werwalifikacji, stacja sieciowa Wyszukiwanie i nieczysta skrzynka poczta / work-emailowe lookupy pomiń unieważnione orgs. - Liczba przeglądów platform, zamiatanie i odczytanie raportu o nieotwiernym zachorowaniu Wyliczenie na żywo. - już stosowane w bazie danych na żywo.
· kamo-shared-library
Unieważniona organizacja jest pominięty z każdej listy i odszukajenia hosta
Operatorzy platform mogą teraz unieważnić organizację z Platformy -> Konfiguracja -> Organizacje. Próżnia jest orgs.is_active - FALSE — znak flagowy i host Rozdzielczość już sprawdzała - więc ta zmiana biblioteki zawiera aukcje To nigdy nie sprawdziło, czy zgadza się: - znaleźćAllLive(): wyliczenie lubg minus syntetyczne i unieważnione orgi. - punkt dławiący za orgi Lista, wszystkie sieci i diagnostyka się liczą, teraz ją czyta. ZnajdźAllExcludingFakeOwned() pozostaje tak, że usługi zbudowane przed tym nadal kompilacją. - ZnajdźAllBIVerifiedDomain: domena unieważnionego orgia nie jest już rozwiązywana, więc się zatrzymuje Akceptacja logowania i rejestracji. - findOedTitlesByOwnerIds / findDistinctOwnerUserIds: The Exec2Spl Dłuższe nazwiska unieważniły organizacje jako każdego. - Organization.voedAt / anoidedBUserId: kto unieważnił go i kiedy, dla Konsola Void Zakładka. Nigdy nie serializowany. Kolumny stosowane do bazy danych na żywo Przed tym zobowiązaniem - w zakresie obsługi bezpieczeństwa). - Organizacja.isVoided(): odczytuje stan rekordu, nigdy nie jest przechowywany dwa razy. - Ogólny org PATCH nie akceptuje już rekorduState: pustka i przywracanie to Tylko pisarze is_active, więc ustawienia zapisują, że odbijają się echem od tyłu wierszy Spokojnie przywróć unieważnionego orgia.
· kamo-internal
Tytuły tematowe w dropdown baru znajdują się na ciemniejszym talerzu marki
Nazwa menu w jego górze i każdej sekcji (Wsparcie wsparcie online”, „Bugady i Enhancements", "Szkolenie"; "Utworz nowe"), teraz siedzą na zaokrąglonej płycie organizacji Pierwszoresowe, ciemniejsze, w pełni białe – więc tytuł odczytuje się jako etykieta nad swoimi rzędami, a nie o jeden więcej Wiersz do kliknięcia. Podświetlenie unosi się staje się jaśniejsze, tytuły są ciemniejsze; oba nigdy nie wyglądają podobnie. Płytka jest półprzezroczystom czarna (TOPIC_PLATE), która nad ziemią jest zmieszana w kierunku Czarny: ten sam odcień, bez względu na markę. Stały "pierwotny w N%" byłby lżejszy niż Pod ziemią pod menu na lewym końcu baru, gdzie rampa szwowa zaczyna się od 60% miksu baru. Mierzony w prawdziwej przeglądarce ponad 11 marek na obu końcach baru: każda płyta jest 0,73-0,80 Pod ziemią obok niego na każdym kanale (bez zmiany odcienia), biały na nim jest 7.4:1 lub lepszy, a ślizg Nigdy nie ląduje na nagłówku. Strażnik w navTopMenuIsWhite.test.ts przypina oba tytuły do talerza.
· kamo-internal
Twarze na wiadomości tylko w rozmowach trzech lub więcej
Twarz obok każdej wiadomości mówi ludziom osobno, a między dwojgiem ludzi Strona narysowana jest już wiadomość, że tak - więc teraz pojawia się narożna twarz Tylko wtedy, gdy w rozmowie jest trzy lub więcej osób (pokazówFaces), a nigdy Podczas gdy liczenie jest nieznane, więc twarz nigdy nie jest pokazywana, a następnie zabierana. - Czat: liczony z listy okno już trzymane, które podąża za ludźmi Dołączenie i odejście na żywo; dwuosobowa czaja nawet nie prosi o twarze. - Wsparcie, Social, Exec2Exec: liczenie serwera, teraz na twarzy odpowiedź (MediaService e722c90) - każda osoba raz, niezależnie od tego, ile miejsc posiada, a Kontakty społeczne włączone. Izbę/wstawy przypisywania i rzędowa nagłówka, które Ułóż miejsce na twarz, aplikuj tylko wtedy, gdy tam jest. - SMS i AI Chat są zawsze dwiema stronami (numer jednego członka i jedną drugą; Członek i asystent), więc ich kod twarzy jest całkowicie usuwany - z powrotem Dokładnie to, czym były - wraz z użyciemOwnPhoto i MessageAvatar's glyph, Które tylko oni użyli.
· MediaService
Odpowiedź twarzy mówi, ile osób jest w rozmowie
GET - teraz niesie "uczestników": konsola Odkładanie twarzy obok każdej wiadomości tylko wtedy, gdy trzy lub więcej osób jest w Rozmowa, ponieważ między nimi, strona, na której naciąga się już wiadomość, mówi Kto to napisał. Liczony z miejsc, a nie z autorów - ktoś, kto napisał i zostawił, trzyma Twarz o tym, co napisali, nie będąc w rozmowie; mniej więcej ktokolwiek nie Dłużej kwalifikować się do rozmowy na żywo (zasada własnego składu czatu, która Zawsze zachowuje widza); raz na osobę, ponieważ jedna osoba może pomieścić kilka siedzenia (klient Exec2Exec siedzi z każdej organizacji, z której napisał); plus kontakt z konwersją społeczną, która w ogóle nie ma wątku członka. Web-chat Siedziba odwiedzającego jest członkiem SYSTEMU orgi, więc liczy się raz, jak oni.
· kamo-marketing
Wygeneruj mapy witryn na żądanie i dawaj każdą zmianę własnej stronie
/sitemap.xml był plikiem metadanym prerenderowanym w czasie budowy, w pojemniku To nie może dotrzeć do KBService lub SecurityService, więc każde wdrożenie zostało wysłane Mapa strony bez artykułu help-center w nim, aż do pierwszego odświeżenia ISR. I i /api/sitemap zachował drugą kopię listy stron, która odpłynęła. - /sitemap.xml jest indeksem mapy strony wygenerowanym na żądanie. Na listach /sitemaps/pages.xml (strony ręcznie napisane, strony kolekcji, posty na blogu i Każdy artykuł z bazy wiedzy, z hreflang) i / sitemaps/changelog/.xml (5000 zmian logicznych po każdy). /api/mapa i /api/mapa/mapa/changelog/inlog> Są to renderingi JSON tego samego modułu, aplikacji/lib/sitemap-source.ts. - odręcznie napisana lista stron żyje raz, w aplikacji / lib/sitemap-pages.ts, i Straż: sitemap zawodzi budowę, gdy trasa statyczna nie jest wymieniona ani nie jest wymieniona, ani Wykluczone z jakiegoś powodu. - /changelog jest utknięty na serwerze: ?page?N, z ?project? i ?type Na podstawie SecurityService, gdzie stare filtry ukrywały tylko wpisy wśród 50 na ekranie. Każda strona jest jego własną kanoniczną; filtrowane widoki są Noindex, śledź. - Każdy wpis ma własną stronę na stronie /changelog/'slug>, połączona z wpisami Po obu stronach tego. Jest kanoniczny dla angielskiego, gdzie miejscowe nie ma Jeszcze tłumaczenie, a także starsza pisownia swojego adresu 308s do obecnego Jeden. Strona główna łączy się z tymi stronami. Statystyka i filtry są odczytywane na serwerze. Trasa /api/changelog/stats Pochodziły one, które służyły w sumie pojemnika budowy 0.
· SecurityService
Podaj każdy publiczny wpis adres i na stronie listy na serwerze
Publiczny dziennik zmian obsługiwał wpisy bez identyfikatora, więc strona marketingowa Ani linkować do jednego, ani nie wymieniać ich w mapie witryny. Każdy wpis teraz nosi ślimak - jego angielski tytuł w formie URL, a następnie dwanaście znaków jego commitu Hasz - i: - GET - zwraca jeden wpis z wpisami Po obu stronach tego. Jest on znaleziony przez prefiks hash sam, więc wpis, którego Tytuł zmienił się jeszcze pod starym adresem, a dzwoniąca Przekierowania do obecnego. - GET /api/changelog/public/sitemap zwraca każdy wpis, tytuł i datę każdego wpisu W kawałkach do 5000, czytając trzy kolumny na wiersz. - GET /api/changelog/public accepts "project" i "typ" filtrów, które mogą Tylko zawęża listę publiczną i zamówienia na (zaangażowane, id): commits Dzielenie znacznika czasu nie zamienia już stron między dwoma żądaniami. A strona jest Zapięte na 100 wpisów. Zapytania na żywo w PublicChangelogService zamiast CommitLogRepository, więc Nic z tego nie wymaga wspólnego wydania biblioteki.
· kamo-internal
Każda wiadomość nosi twarz autora, na rogu bąbelki
W każdym oknie narzędzia do czatu - Czat, Wsparcie, Exec2Exec, Social, SMS, AI Czat - każda wiadomość zawiera teraz zdjęcie 16x16, które nakłada się na górną lewą bąbelkę Narożnik dla wiadomości po lewej i jego prawy górny róg dla jednego po prawej. Każda wiadomość, nie tylko pierwsza z biegu: stara twarz okna czatu w Linia nagłówka zniknęła, a linie nazwy / atrybutu są wstawiane, więc twarz nigdy nie siedzi Na ich pierwszym liście. Początkowe tylko wtedy, gdy osoba nie ma zdjęcia. Twarz jest trzy cenna (MessageAvatar): adres URL to zdjęcie, wypróbowane jako jego wariant _sm, a następnie jako Pełnowymiarowy plik (małe warianty są opcjonalne po stronie serwera; starsze pliki nie mają Te); null to inicjały; nieokreślone - jeszcze nie znane - to pusty dysk, więc Ktoś ze zdjęciem nigdy nie miga jak inicjały, gdy jest przeglądane. Skąd pochodzą zdjęcia. Okna czytały tylko własne widza Katalog członków (Członkowie zespołu ACTIVE z podpisanego orga), więc po prostu Członkowie, Cała druga strona biletu pomocy technicznej lub rozmowy Exec2Exec, i Każdy, kto opuścił grupę, został narysowany jako inicjał ze zdjęciem na swoim zdjęciu Profil. Teraz jeden sklep na rozmowę (app/lib/chat/sessionFaces.ts) czyta MediaService's new GET - wszyscy na Rozmowa i każdy, kto kiedykolwiek w niej pisał, z własnego profilu, na Zasilacz konsoli może załadować - przez własny plik trasy (/api/media nie jest Proxied prefix). Pierwsza wiadomość Newcomera ponownie zadaje się raz; ktoś serwer Nadal nie obejmuje, lub wszyscy, gdy starsza usługa MediaService nie może odpowiedzieć, Odpada z katalogu odnośnik okien używanych wcześniej. Rządy, które nigdy nie powinny nosić twarzy członka, są przechowywane pod: - odwiedzający web-chat (przechowywany pod członkiem SYSTEMu orgii, właściciel) otrzymuje inicjalizwe gościa; - kontakt społeczny (przechowywany pod właścicielem połączenia) otrzymuje zdjęcie Dostawca dał, za pośrednictwem image proxy. SMS: wysłane SMS-y są własnością widza (rozmowa należy do jednego członka Numer); otrzymane noszą zdjęcie kontaktu z katalogu nagłówkiem Czytania, ich inicjały lub znak telefoniczny dla numeru, pod którym nikt nie jest zapisany. AI Chat: zdjęcie członka na temat tego, o co zapytali; asystent, który nie ma Profil, nosi blask AI. Wiersze na listach wypełnionych 4px bez nazwy powyżej otrzymują 4px miejsca na głowę: Zmierzona w prawdziwym Chrome, twarz w inny sposób znajduje się 1-2px od znacznika czasowego Wiadomość wcześniej.
· kamo-internal
Zakładka Zgony podpisów i zapis współpracownika w edytorze szablonów
Żądania podpisu, między Szablonami a Common w Menedżerze Docs: każdy Udokumentuj szablony kolekcji wysłane do podpisu, w sieci paged na serwerze i podzielić na trzy wiadra (Uwaga wykonywana, częściowo wycięte, W pełni wykonywali), każdy pokazujący, ile jest nowych dla tego członka. Zakładka pokazuje Całkowity, który jest nowy. Patrzenie na wiadro oczyszcza jego liczbę dla tego członka Tylko, a zakładka otwiera się na pierwszym wiadrze trzymając coś nowego. Kolumny: dokument i kto go wysłał, sygnatariusze (pierścień na sygnatariusza w kolor miejsca, w którym stoją), x y podpisane, status, wysłany, ostatnia aktywność i W pełni wykonany. Każdy rząd może popchnąć wszystkich, którzy nadal czekają, pobierz Wykonany dokument, świadectwo ukończenia lub oba jako ZIP, i otwarte Prośba. Szutrawka z prośbą dodaje pchnięcie do sygnatariusza, co się stało, gdy, Wycofanie wniosku z jakiegoś powodu. Edytor szablonów rejestruje teraz, że ma otwarty szablon (bicie serca Aby - więc z wyjątkiem lub przywrócił kolegę Ten plik do niego dociera i mówi, kto dokonał zmiany. Jego żywy temat był Zbudowany od id członka jako numer JS, który okrąża id po 2x53, więc Zapisy poza zasięgiem nigdy nie dotarły. Teraz używa sznurka id.
· ESigService
Podpisy dla menedżera Docs, z nowymi liczbami na członka
Menedżer Docs otrzymuje zakładkę Zapytania podpisów: każdy dokument a collection szablony wysłane do podpisu, w trzech wiadrach podpisów (nikt, Niektórzy lub wszyscy się podpisali), każdy z ilu jest nowych dla tego członka. /api/esig/requests notuje wiadro z jedną stroną na raz, posortowane i przeszukiwane Baza danych. /counts podaje całkowitą i nową liczbę każdego wiadra, i /seen Napisy, że członek spojrzał na wiadro. W czym każdy członek widział, w esign_request_views - stosowane ręcznie), kluczowe Po stronie członka, kolekcji i wiadra. Żądanie jest nowe w wiadrze, gdy Wszedł do tego wiadra po tym, jak członek po raz ostatni tam spojrzał. Na życzenie: pobierz go, popychaj sygnatariuszy, którzy wciąż czekają (ponownie zaprosić z Linia przypomnienia, co najwyżej raz na godzinę na sygnatariusza), wycofaj go i pobierz Wykonany dokument, świadectwo ukończenia lub oba jako ZIP. Odczyt wymaga WIDZENIE; popychanie i wycofywanie/wycofanie się z potrzeb EDIT_DOCUMENTS. A A (ang.) Żądanie jest dostępne tylko dzięki szablonowi w kolekcji, którą członek może Zobacz, na ich pozwolenie.
· DocsService
Zacalenie dociera do każdego kolegi z otwartym szablonem
Zapisanie pliku szablonu powiedziało tylko członkowi, który go zaliczył, więc kolega Z tym samym szablonem otwartym umieszczał pola na stronach, które plik przeniósł W kółko od. Edytor szablonów mówi teraz, gdy ma otwarty szablon: POST - co 30 sekund, gdy jest, wyjąć, gdy Zamyka się. OpenEditorRegis zachowuje to w Redis jako jeden posortowany zestaw na dokument (członek -> czas unikowy, 95 s), więc redaktor, który zniknął bez zrzutów zamykających Samodzielnie wyjdą. Zapisanie publikuje jedną klatkę na członka z otwartym szablonem, Każdy na temat własnego członka i mówi, kto dokonał zmiany. Zegarek Sprawdza, czy członek może odczytać dokument, tak jak każdy odczyt. Przywrócenie mówi teraz również kolegom, z wersją projektową, którą przywiózł, Tak więc ich redaktor przeładowuje pola, a także strony.
· MediaService
Twarka dla każdej wiadomości w każdym oknie czatu
GET - odpowiedzi, za jedną rozmowę, zdjęcie Przyciągać się do każdej wiadomości: wszyscy na niej teraz i wszyscy, którzy kiedykolwiek napisali W nim (spół zapomina o ludziach, którzy odeszli; ich wiadomości nie) każdy wymieniony w memberIds, czy mają zdjęcie, czy nie, więc konsola może powiedzieć "bez zdjęcia: Inicjały" od "jeszcze nie pytano". Zdjęcia to Exec2ExecFaces.memberPhotos - Zdjęcie profilowe członka, w przeciwnym razie osoba - zbudowane na żywo widza Gospodarz tematu, ten, na który pozwala img-src konsola. Rozmowa społeczna również Naprawia jego kontakt (nie w ogóle członek) jako "counterpart", wraz z usługodawcą Zdjęcie. Dlaczego serwer: jedynym źródłem konsoli był członek widza Katalog - ACTIVE team członkowie podpisanego orgi - więc gładcy Członkowie, Cała druga strona biletu pomocy technicznej lub rozmowa Exec2Exec, i każdy Ci, którzy opuścili grupę, zostali narysowani jako inicjały ze zdjęciem na swoim profilu. Przestrzeń dla członków może spaść z powrotem na odrzucenie innych orgów. Kto może zapytać, kto może przeczytać transkrypcję (członek zalogowany, sesja, która Istnieje): twarz mówi mniej niż wiadomości obok. Również: historia czyta teraz taguje to, co napisano jako SOCIAL_VISITOR Pod nazwą kontaktu, tak jak zawsze ma rama na żywo. Te wiersze są przechowywane Pod członkiem właściciela połączenia, więc przeładowana rozmowa złożyła Słowa kontaktu pod nazwiskiem właściciela, po stronie właściciela, gdy właściciel był Czytanie - i umieściłoby zdjęcie właściciela obok nich.
· MediaService
Link spotkania w rozmowie, zawsze na platformie Kamo Meet
POST - odpuszcza po obu stronach rozmowy Exec2Exec Dodaj link spotkania, za tą samą bramą, co wysłanie wiadomości. Spotkanie jest tworzone jako Organizacja PLATFORM, na Kamo Meet, na domenie na żywo platformy (meet.kamormmm.com/room>), Ktokolwiek pyta - własne białe etykiety klienta spotykają się z gospodarzem lub Zoomem spotkającym się z KamoCRM Kierownictwo firmy KamoCRM rozmawia tylko z dzwonicielem jako jego twórcą. To jest Następnie opublikowany jako wiadomość dzwoniący za pośrednictwem Exec2ExecService.post, więc dociera do obu stron Żyj, podniesiony, oznaczył i pchany; hasło, gdy pokoje platformy go potrzebują, idzie obok niego. - rozwiązuje Kamo Meet dla orgi dowolnego dostawcy, który ma wybrane (jego spełniające się nadal ustawienia, nie mają poświadczenia innego dostawcy), i Tworzą przez nią; istniejąca ścieżka tworzenia pozostaje niezmieniona. Nie ma prawa START_MEETING o prawo dzwoniący: to prawo dotyczy ich własnej organizacji. Spotkania, a to nie jest ich.
· kamo-internal
Dodaj link spotkania do rozmowy - zawsze na platformie Kamo Meet
Obie strony okna ExecExec są teraz nośce aparatu, które mają inne okna czatu: Link spotkania. Spotkanie jest tworzone przez MediaService jako organizacja PLATFORMY, na temat Platforma Kamo Meet adres (meet.kamocrm.com/...), w zależności od tego, która strona go naciśnie - nigdy Własne białe etykiety klienta spotykają się z hostem lub dostawcą - i opublikowano jako wiadomość dla prasy, więc Dojeżdżają do obu okien na żywo, podniesiony i odznaczony jak każda wiadomość. Linki w transkrypcji Exec2Exec są teraz klikalne, dzięki tym samym linkifyPlainText Inne używane okno czatu (wykorzystymione z MessageList zamiast kopiowane).
· kamo-internal
Filtry, twarze i obecność przy biurku; odznaka Exec2Exec, która płonie
Centrum interakcji > Czaty > Exec2Exec otrzymuje dwa filtry pod podtaszybami: Org Owner (Wszystkie | Org- Owner) i Order By (Ostatnia wiadomość | Ostatnia wiadomość) z ASC/DESC Zmień. Zapamiętane na sesję przeglądarki, jak każde miejsce w panelu, i świeże Sesja rozpoczyna się na stronie Wszystkie | Latest Sign In | Desc. Ktoś, kto nie ma randki, nie jest w jakiś sposób ostatni. Każdy rząd pokazuje teraz własne zdjęcie klienta (inicjatywy tylko wtedy, gdy nie mają żadnego), czy to Są online, kiedy ostatnio się zalogowali i kiedy rozmowa była ostatnio wygłaszana - W strefie czasowej członka - obok nieprzeczytanej liczby. Biurko ponownie czyta się raz na a Minutę, gdy jest widoczny, więc obecność nie jest nieświeża. Okno Exec2Exec rysuje każde zdjęcie menedżera KamoCRM z ich profilu członkowskiego KamoCRM W jego uczestnikach rozbiera się, a zdjęcie klienta w nagłówku biurka, niesione z Rząd składu lub z ramy, która podniosła okno. Kontrola NavTop's Exec2Exec, zarówno dla klienta, jak i dla biurka, pali się, gdy wszystko jest nieprzeczytana: kometa ze złota, białego i nieba, biegnąca wokół śruby, złota fala uderzeniowa, Śruba kopiąc co kilka sekund i liczenie liczą. Pod zmniejszonym ruchem trzyma się Nieruchomy i pozostaje oświetlony, a liczenie jest wypowiadane w nazwie przycisku. Liczby były już Żyj nad nieprzeczytanym WebSocket.
· kamo-internal
Pliki i szablony, historia wersji i ustawienia wersjonowania
Posłowie poprosili o dokumenty, które utrzymują ich historię w taki sposób, w jaki Organizacja wybiera, a dla szablonów, które stoją same Z podziału Oryginałów / Modyfikowane. Usługi już go posiadają (jedną z nich rekord na dokument, img_versions, tryb na org i na kategorię); To jest aplikacja internetowa nad nim. Menedżer doktowianie - Zakładki Pliki i szablony zastępują oryginały i zmodyfikowane. Szablon jest Dokument z warstwą szablonu, wykonany z pliku (lub inny Szablon) przez "Dodaj warstwa szablonu" i oddziel się od niego od tego czasu. - Działania wiertarcze, w rozkazie o to. Pliki: Pobierz, Edytuj plik, Dodaj Warstwa szablonu, Dodaj do segregatora, Podziel się, Wyślij do kosza. Szablony dodają Edytuj szablon po edycji pliku. Działanie, do którego członek nie ma prawa Nie jest wyświetlany; jeden dokument nie może obsługiwać (plik PDF w klasycznym Redaktor, strony wciąż przygotowywane) jest pokazywany niepełnosprawny z jej powodu. - Kolumna wersji: pigułka czytana v4, z bursztynową kropką, gdy jest ręczny Kopia pracy przeszła obok swojego ostatniego migawki, otwierając historię. - Pozycja jest oferowana w każdej kolekcji, nie tylko My Docs. Koszowe rzędy Można ją przywrócić. Liczby stóp są otwarte. Szutrawka historii wersji - Strony wybranej wersji na scenie (talia wersji w wersji poniżej To, strona po stronie, pola szablonu narysowane nad nimi) i Wersje na szynie, najnowsze, z tym, co wyprodukowało każdy i kto. - Porównaj przesuwający obecny stan w dowolnej wcześniejszej wersji. - Zrób migawkę (Podręcznik), Restore (potwierdzony słowami tryb kategorii: czym staje się przywracanie i co by je odrzuciło), Nazwa a wersja, Pobierz dowolną wersję, Prześlij nową wersję z Postęp. Edytor szablonów - Edytuj podstawowy plik otwiera własny plik szablonu w klasyku Wydawca w innej zakładce. Każdy zapis tam pojawia się nad tematem saves; Strony są ponownie naciągane i przerysowywane pod polami na miejscu, z Brak pełnego przeładowania i nic niewykorzystanego utraconego, a pigułki w wersji Przechodzimy do nowej liczby. Chip mówi, że plik jest otwarty gdzie indziej i Zabierz członka z powrotem do niego. - Pigułka w wersji i szuflada historii zastępują tylko wzornictwo Panel wersji: wersja szablonu jest jego plikiem i jego polami Razem, a przywrócenie oddaje oba. - Podglądy stron są brelone na identyfikatorze treści, więc pamięć podręczna przeglądarki może Nigdy nie wyświetlaj stron, z których dokument się przeniósł; PDF wciąż jest Wyreżysowanie jest wyczekiwane, a nie zgłaszane jako błąd. Ustawienia - Zarządzanie dokumentami > Ogólne: niewykonanie danych przez organizację versioning (Automatic, ręczne migawki, wyłączone), narysowane jako co Czyni historię i kategorie, które wyznaczają swoje. - Konfiguracja kategorii: postępuj zgodnie z domyślną lub wybierz własną; kategorie bloki platformy do Automatic tak mówią. - Tabela kategorii zyskuje kolumnę wersjonowania. Ciągi słódkowe wylądowały najpierw w kamo-translation-dictionary 9b83d282.
· MediaService
Twarze na biurku — zdjęcie klienta, ostatnie log-in i obecność
Skład biurkowy przenosi teraz, dla każdego klienta, własne zdjęcie (users.avatar_id, zbudowane na Prowadzący motyw operatora — jedyny, z którego ich konsola ładuje obrazy), gdy Ostatni podpisany w dowolnym miejscu na platformie (users.last_login, przeanowany raz i wysłany do Kształt lastActivityAt) i czy którykolwiek z ich rzędów członkowskich posiada gniazdo na żywo. Pasek uczestników otrzymuje każde zdjęcie dyrektora KamoCRM z ich profilu członkowskiego KamoCRM (członkowski awatar, w inny osoba), zbudowany dla konsoli widza; i ramka, która Podnoszenie okna biurka niesie zdjęcie klienta obok jego nazwiska. Wszystko to żyje w jednym małym kompeencie Exec2ExecFaces: załadowany przez id, a nie poza leniwym Związkowanie JOINED (którego pełnomocnik nie ma ścieżki fotograficznej), jeden awatar czytany i jedna obecność Na stronę, a każda awaria degraduje się do inicjałów / offline, zamiast zawieść skład.
· DocsService
Przeczytaj warstwę szablonu według wersji projektowej
Historia wersji rysuje pola szablonu na stronach każdej wersji. Poproszono o nie poprzez wersję dokumentu (/imgId / ?n' / projekt) oraz a a Kopia robocza szablonu nie ma żadnego: jego pola zostały zapisane po ostatnim Migawka, w wersji projektowej nie ma jeszcze nazw wersji dokumentu, więc Stanu bieżącego nie można narysować w wersji ręczną. GET ? czyta Zamiast tego warstwa według wersji, za tymi samymi bramami, co reszta Historia. Plik nie ma warstwy i odpowiedzi bez żadnego.
· ConversionService
Prześlij nową wersję dokumentu
Jeden sposób zmiany pliku, którego edytor dokumentów nie może otworzyć - plik PDF przede wszystkim, który jest tym, co jest najbardziej Szablony są. POST - pobiera nowy plik, skanuje go Złośliwe oprogramowanie i treść odpowiada dokładnie tak, jak pierwsze przesłanie, i przekazuje zmianę (kamo-shared-library 6d0523e8): dokument zachowuje swój id, nazwa, akcje, segregatory i warstwa szablonu, a tryb wersji jego kategorii decyduje o tym, co to jest Utrzymywane z tego, co trzymało - nowa wersja w obszarze Automatic, kopia robocza porusza się pod Ręcznie, Przekroj pod niepełnosprawnym. Wydawność PDF i miniatury strony są wykonane dla nowych bajtów przez Ten sam rurociąg, który upload runuje. EDIT_DOKUMENTS, a nie CREATE_DOKUMENTS: nic nowego nie tworzy się. Polityka rozszerzenia kategorii Obowiązuje - jest to publiczne w tym przypadku), a typ jest odczytywany z bajty - nowa wersja może być innym formatem, a rozszerzenie nazwy następuje po nim. Odmowa wydania pakietu prawnego EXECUTED - podpisanego rekordu HR wydanemu członkowi, którego nikt nie daje Nowa wersja, nawet jej temat - poprzez IssuedArtifactLookup, lokalne repozytorium tylko do odczytu W stosunku do jednostki współdzielonego przydziału; oraz dla poszczególnych poborów hipotecznych, które ogólne Punkty końcowe do obrazowania nigdy nie dotykają. esign.repos są teraz skanowane tutaj, ponieważ wersja szablonu Nagrywanie wersji projektowej warstwy.
· ESigService
Zapisywanie pól szablonu jest wersją szablonu
Szablon to dokument z warstwą pól na nim, a jego wersja jest zarówno połówką: Totes i ta warstwa. Jego zapisy plików bazowych już docierają do historii wersji (kamo-shared-library 6d0523e8, docsservice 3ef26d1); to jest druga połowa. ZapiszDesign i PrzewrótDesign ręka zmiany na : w tej samej Transakcja jako napis projekt, więc wersja nigdy nie nazywa projektu, który został cofnięty. To, co to zapisuje, to tryb wersowania kategorii: w obszarze Automatyka nowa wersja szablonu (Jedno członkowie oszczędzają w ciągu dziesięciu minut, rozwijają jedną wersję, więc naciskanie Zapisz po każdym polu jest Niewłaściwa jedna wersja pracy), w instrukcji obsługi kopiowania ruchy, w obszarze Nic niepełnosprawnego. A A Warstwa na kluczu do czegoś, co nie jest dokumentem, nie ma historii do napisania i zapisuje tak jak wcześniej.
· DocsService
Pliki i szablony, edytowane na miejscu, z wersjami, w których każda kategoria zachowuje
Dokument to dwa rekordy: przesyłanie, które nic nie edytowano, a jedna zmodyfikowana kopia pochodziła Po raz pierwszy ktoś otworzył go w każdym z redaktorów. Menedżer Docs pokazał parę jako "Originals" i "Zmodyfikowany", a członkowie uznali to za mylące. Dokument jest teraz jednym rekordem i to, co każdy zmienia Przechowywanie treści, które zastępuje, jest trybem wersjonowania kategorii (kamo-wskłada-wspólne bibliotekery 6d0523e8): Niepełnosprawne, automatyczne lub ręczne. Edycja - /open edytuje sam dokument - plik lub własne bajty szablonu ("Edit Underlying File"). /new otwiera dokument, który stworzył. Żaden z nich nie wywodzi już kopii. - Klasyczny zapis przechodzi - nowa wersja w punkcie Automatyczny (Token WOPI przenosi teraz identyfikator sesji, więc jeden siedzący, który wykonuje autosaves, jest jeden Wersja), kopia robocza poruszająca się pod Manual, nadpisać w ramach Disabled. - Zawiadomienie o zbawieniu teraz strzela do każdego dokumentu, którego bajty faktycznie się zmieniły - nie dla ponownego zgłoszenia Plik - i przenosi wersję, którą napisał; otwierany jest edytor szablonów na redrajach dokumentów. - Zapisuj tak, jak tworzy nowy FILE, a redaktor kontynuuje w nim. - Oszczędność wciąż przybywająca na klasyczną kopię pozostawioną przez stary model (tacza zakładka otwarta przed wdrożeniem) ląduje na oryginalnym, a nie w rzędzie, nic nie ma listy. Szablony - POST - ("Dodaj warstwa szablonu"): nowy szablon udostępniający Od tego czasu nic innego źródłowe, w tej samej kolekcji, folderze i poziomie dostępu. Rozgałęziony z szablonu, który może przenosić pola szablonu: sygnerzy są kopiowane i wszystkie sygnatariuszUid w projekcie jest przepisany na jego kopię. Jego warstwa jest nazwana na cześć, a pierwsza Wersja rejestruje to, z czego został stworzony. Przyjmuje CREATE_DOCUMENTS - tworzy dokument. - /fill-fillable tylko otwiera szablon; plik odpowiada 409 NOT_A_TEMPLATE. Wersje - . - historia; migawka (z opcjonalną nazwą); zmienić nazwę; przywrócić; i pobrać każdą wersję, PDF, Strona miniatury i wzór szablonu. Te same bramy, co ścieżki do bajtów obrazowych: VIEW/EDIT Dokumenty, organizacja i odprawa, brama pakietowa wyemywana przez HR, hipoteka per-partia Zbiory i audyt dostępu do PHI na każdym czytanym bajtku. Wersja bytes są niezmienni, więc Są bucze jako takie, a pobrana stara wersja nazywa się "Name (v3).ext". Wydawanie i ustawienia - Lista jest jednym zapytaniem (DocumentListQuery, nad lokalnym repozytorium specyfikacji): stare Filtr in-memory po napisie może upuścić rzadki rodzaj - szablon wśród 300 plików - poza stronę. Pliki Tylko / szablony wybieraj tylko dwie karty; wiersze noszą flagę szablonu, identyfikator treści id oraz Podsumowanie wersji. Klasyczne kopie, które pozostawił stary model, nigdy nie są wymienione. - Ustawienia: GET|PUT /obrazowanie/ustawienie/wersja dla domyślnych organizacji; assoc-config i Kategorie przenoszą nadpisanie każdej kategorii, co ona rozwiązuje i czy jest zablokowana. Pisze i komentują: Pobierz MANAGE_DOCS_SETTINGS, które strony ustawień zawsze wymagały, a te punkty końcowe nigdy Sprawdzone. - Klasyka zapisuje teraz kluczowe miniatury strony na własnym profilu dokumentu, jak to zawsze robiły; Czytelnicy miniatur zaglądają do obu miejsc, więc dokumenty zapisane przed dniem dzisiejszym nadal pokazują swoje strony. Schemat: (stosowany). Dane: - uruchom po wdrożeniu tej konstrukcji: 5 Wywodzące się wiersze z warstwą szablonu stają się szablonami, 2 klasyczne edycje na żywo składają się w swoje Oryginały jako v2, a każda klasyczna kopia jest na emeryturze.
· kamo-shared-library
Wersje dokumentów i tryb wersjonowania, jak wybiera organizacja
Dokumenty to dwa rekordy: przesłania, które nic nie zostało edytowane, a jedna zmodyfikowana kopia uzyskała Po raz pierwszy ktoś otworzył go do edycji. Posłowie stwierdzili, że para jest myląca i nie pasowała do nikogo. Rzeczywiste reguły - jedna organizacja chce każdej edycji, inna chce jednej kopii i nie ma historii, Trzecia chce celowo zamrozić państwo i dalej pracować na szczycie. Dokument jest teraz jednym rekordem, a to, co dzieje się z jego poprzednią zawartością, gdy się zmienia, jest Tryb wersjonowania wybrany na organizację (img_org_assoc.versioning_mode) i według kategorii dokumentu - które wygrywają): - DISABLED: zmiana nadpisuje. Jedna kopia, nie ma historii. - AUTO: każda zmiana jest następną wersją, a stara jest przechowywana. Jedna sesja z klasycznym redaktorem jest Jedna wersja, jakkolwiek często autosaves; jeden element-warstwa szablonu zapisuje w ciągu dziesięciu minut Jest też jedna wersja. - MANUAL: zmiany nadpisują kopię roboczą na górze ostatniego migawki; migawki użytkownika do zatrzymania Państwo trwale i kontynuuje edycję na szczycie. Prześlij jest pierwszą migawką. Nieodstawiaj wszędzie, kategoria to AUTO - jedyny tryb, który nic nie traci, jako model, który zastępuje Nigdy nie straciła przesłania. Kategoria, której dokumentami są zapisy (napisać i nie ustawić, np. Wartościowe wykresy pacjenta) jest zablokowany do AUTO. - ImgVersion / img_versions: wersja jest POINTER do treści w wierszu img_dats Utrzymywane dokumenty oraz wersja projektowa-warstwa szablonu na szablonie. Trzymanie jednego nic nie kosztuje Dopóki bajty nie ruszą bez niego. - DocumentVerssioningService: ścieżka do napisania "zmieniania treści tego dokumentu" - applyContentChange, recordTemplateLayerZmiana, migawka, przywracanie, nagrywanieBranch - tak tryby Oznaczaj to samo, czy zmiana przyszła z klasycznego zapisu (DocsService), nowego przesłania przez Dokument (KonwersjaService) lub zapis warstwy szablonu (ESigService). Wersje są pisane leniwie: dokument, który nigdy się nie zmienił, nie zmienił, a pierwsza zachowana zmiana zapisuje v1 od Określ przed nim, aby organizacja mogła włączyć wersje w dowolnym momencie bez zasypu. Przywrócenie jest nową wersją pod Apo; historia nigdy nie jest przepisywana. E-sygnatariusz Repozytoria to ObjectProviders, ponieważ nie każda usługa je skanuje (SharedLibBeanSafetyTest). - Img.isTemplate() nad istniejącą flagą has_form_layer i jest EmerytowanyPrognoza() dla Klasyczne kopie starego modelu pozostawionego, czego nie widać ponownie. - dla wersji pigułki na stronie szablonów w jednym zapytaniu. - Jest publiczny, więc nowa wersja spełnia swoją zasadę pierwszego przesłania. Schemat jest w dokumentacji, stosowanej do klastra Przed tym commitem: img_org_assoc jest odczytywany na każdym przesłaniu, więc kolumna musiała istnieć pierwsza.
· kamo-internal
Nakładka Logo Nav i nakładka logo kariery
Behavior & Labeling zyskuje jeszcze dwie nakładki z logo w słownictwie Inne sześć użycia - żeton, rozwiązany na własnej palecie org: - "Nav Logo Overlay", bezpośrednio w "Home Page Logo Overlay". Pomaluje nat. Proste logo na górze podstawowej szyny nav (NavPri) - w zależności od tego, w zależności od Oznacz pokazy kolejowe, firmę lub oprogramowanie - zawalił się i rozszerzył. In-app, podobnie jak jego rodzeństwo na stronie głównej, więc przejeżdża rejestr org OrgContext: schemat trasy org, Organizacja.OdJSON (który działa dwa razy w drodze do przeglądarki) i rekwizyty OrgProvidera niosą ją, I to zaczyna obowiązywać na oszczędzaniu. - "Careers Logo Overlay", bezpośrednio pod "Rejestrem Logo Logo Overlay". Malowane przez ka-kariery z kolorowych pieczyw ochrony przeciwsłonecznej do Temat config.json (10d4a9e), podobnie jak te dotyczące logowania, rejestracji i aplikacji. Ta strona ponownie odczytuje plik co godzinę, a wskazówka tak mówi. Naprawia również ścieżkę zapisu dla trzech istniejących nakładek: logowanie, rejestracji Aplikacje były przechowywane, ale nigdy nie kopiowane z powrotem w stan zapisany, więc ich rzędy tylko do odczytu pokazały poprzedni wybór aż do przeładunku, a także Zaczęła się od tego kolejna edycja. LogoOverlayWiring.test.ts spaceruje po ośmiu nakładkach przez siedem Miejsca, w których każdy musi się pojawić (stan, obciążenie, bufor edycji, brudny czek, PUT Korpus, synchronizacja po uratowaniu, oba widoki), sprawdza, czy oba widoki wymieniają je w To samo zamówienie, sprawdza, czy en.json ma każde imię i wskazówkę - strażnik i18n Nie widzi kluczy, które strona buduje ze zmiennej - i sprawdza obie strony NavPri's ThemeLogos bierze kolor. Przeciw poprzedniemu LabelManager Zawodzi dla nav, kariery i trzech zaginionych synchronizacji po uratowaniu. Zweryfikowany w Chrome z prawdziwym NavPri w zestawie przez trzaskane konteksty: Pudełko z logo pozostaje niezmienione, a sylwetka bierze biały, czarny i Najlżejszy drugorzędny, zawalił się i rozszerzył. Potrzebuje kamo-shared-library 7d80fa7b i usługi bezpieczeństwa 10d4a9e dla Dwie kolumny do zapisania; słownik przenosi cztery angielskie ciągi.
· SecurityService
Piec logo witryny kariery nakładka na config.json
Kariera kamo maluje logo org w nagłówku i nie ma OrgContext; odczytuje motyw config.json na serwerze, to samo login pliku, Zarejestruj się i aplikacje odbiorą swoje nakładki. Więc nakładka karierowa idzie Także tam, jako karieraLogoOverlayColor: TOKEN rozstrzygnął przeciwko Paleta org tutaj, nieobecna, gdy org nie wybrał żadnego - tak Klient czyta "bez nakładki". Potrzebuje kamo-wspólnej biblioteki 7d80fa7b Który buduje klony od głównego. Nakładka szyny nav, dodana w Tę samą bibliotekę commit, jest w aplikacji i dociera do przeglądarki w rekordzie org Sam sam; nic tu nie piecze. Zweryfikowany: główny i cały zestaw źródłowy testowy kompiluje się z tym Biblioteka; 14/14 (dwa nowe: klucz jest Nosił, a org, który nakłada tylko jego witrynę rejestracyjną, nie otrzymuje Klucz kariery), OrgThemeProvisionTest 20/20.
· kamo-shared-library
Logo nakładka na szynę nav i jedną dla miejsca kariery
Dwie kolejne kolumny w słownictwie home_logo_overlay ustanowione: a Token, a nie hex, więc org, który rebranduje, trzyma nakładkę, która pasuje - Jego nowe kolory. Oba są nieważne bez zasypydu - null jest NIE JEDNEGO, który jest Jak każdy org wygląda dzisiaj. Nav_logo_overlay maluje proste logo na górze kamo-internal's Podstawowa szyna nav. Własna kolumna, ponieważ szyna jest ciemnie zaciemnionym odcieniem Kolor podstawowy; biały maszt strony głównej rzadko chce tego samego Cieni się. Dostarczone przez OrgContext jak jego rodzeństwo strony głównej. Zawodnictwo_logo_overlay maluje logo nagłówka na kamo-kariera. Ta strona Nie ma OrgContext, więc usługa bezpieczeństwa piecze rozdzielony kolor w Temat config.json, logowanie trasy, rejestrowanie i aplikacje już się zabierają. patchOrganization jest ALLOW-LIST, więc obie nazwy również tam trafiają, a nowe Test przechodzi na każdą nakładkę wysyłaną przez stronę ustawień - nie tylko te dwie - Ponieważ kolumna metoda nie jest akceptowana z 200 i Nigdy nie był przechowywany. Sprawdzone przez usunięcie dwóch nowych linii: 3 z 4 przypadków nie powiodło się. Kolumny zostały dodane do stołu na żywo orgów ręcznie przed tym pchnięciem (dd-auto none is none, a InitializerService nie jest wdrożony): ALTER TABLE orgs ADD COLUMN IFADY NIE WYJASTKIE nav_logo_overlay VARCHAR(24); ALTER TABLE orgs ADD COLUMN IF NOT EXISTS careers_logo_overlay VARCHAR(24);
· kamo-internal
Zminimalizowana głowica Exec2Exec biegnie prądem światła wokół obręczy
Linia do kierownictwa KamoCRM nigdy nie może siedzieć w doku, wyglądając jak jeszcze jeden czat. Jego to miejsce Zminimalizowana głowa ma teraz felg energetyczny: łuk od złota do białego nieba w okrążeniu Sześonagon, cieńszy przeciwprąd ścigający drugą stronę i pulsujący złota aura za nimi To one. Pod wolą obrocie zmniejszonym ruchem utrzymuje się nadal jako jasny złoty pierścionek. Efektem jest właściwość na poziomie narzędzia (hexHeadEffect na wejściu do platformy Exec2Exec), Wstrzyknięto ponownie ikonę każdego odrowca, więc każda głowica Exec2Exec dostaje ją i nie ma nic innego Główka może.

Twój wszechświat czeka.
Rozpocznij bezpłatnie w kilka minut.Dodaj produkty, kiedy tylko będziesz gotowy — bez migracji, bez nowych logowań.
Bezpłatne na zawsze — nie wymaga karty kredytowej