ミーティングとペイロールの統合を追加
ミーティング用のズームとMicrosoftチーム、および10個のペイロールベンダー - ADP 現在、BambooHR、Dayforce、Gusto、Paychex Flex、Paycor、Paylocity、 Rippling, UKG, Workday. 33 に統合 45, 新しい給与と人事 カテゴリとビデオ会議...
アプリケーションをカウントし、実際の数値と別々に統合
「アプリとインテグレーション」は、31以上のタイルを読み取りました。 それぞれが2つあります。 推定値ではなく、反復できる数字: アプリ 64 — Forgejo プロジェクトは `kamo` が所有する, 割込み インテグレーション 64 — 異なるサードパーティー API と作業クライアントコード 統合カウント...
ディスプレイ面とワンライトパスにホームヘッドラインをリセット
H1は4つの効果を積み重ねました:各ラインのフェード・ラッパー、マウスのパララックス、 ライン1の3D回転と青/紫/緑グラデーション ライン2を渡る循環。 それらの色はブランドカラーのどれも、 2番目の行の分割だけを強調表示する "クライアント、オペレーション& コミュニケーション」 — 3 人のピア — コピーが存在...
Orgの実際の背景カウントと再生注文を読む
ヒーローはbg/1.webpとハードコードされた3つのフレームのためにプローブ さらに、LOCAL BGS.length のモデュロの回転を決して示さない 実際に何枚の画像が現れたかに関係なく。 config.json を読み込みます。 他のすべてのカモの表面のように、そしてorgのシャッフルの設定を砥石で研いで下さい...
Locale が構造化したデータと、一致する robots.txt ルール
すべてのBreadcrumbJsonLdとItemList URLは/enにハードコードされたため、構造化 /fr/terms のデータは、そのパン粉の親が英語ページだったと語った。 同じページのキャニカルとhreflangを矛盾する15ファイルを渡る19 URL 放射する。 これらのページの9は、パラメータなしで同期...
より多くの言語でコレクションの詳細ページをインデックス化
同期が終了したので ~2,400 の詳細なページは、 英語のボディコピーは現在、実際の翻訳があり、インデックス化できます。 測定される 全21ヶ所に渡る:0.0%と8.8%のコレクションの間のすべての土地 数値は英語と同一で、sw と ta を正確に 100.0% で指定します。 プロバイダーがないので、Transla...
翻訳された代替として広告taを停止する
重要なカバレッジは翻訳されません。 TranslateService は、ソースのテキストを返します。 プロバイダは方向をサポートしていません — ProviderRouter ログ "プロバイダはサポートしません en->ta" — なので、その値の98.4%が バイト・インデンシャルを英語に。 前のコミットは hr...
ハブカードをローカライズし、英語データセットのバウンディングを停止
4つのハブのページは、コレクションをインポートしたクライアントコンポーネントをレンダリングしました モジュールは直接、プロップを取らなかったので、すべてのカード — 業界名、統合 taglines, 用語集定義, 競合他社の要約 — 全22で英語だった 周りのクロームが翻訳されたにもかかわらず、ロケール。 それはまた意...
それらを隠す代わりにコレクションページを翻訳する
本体のコピーが存在しないため、2,400 のノインデックスされた詳細ページはインデックス化されていませんでした 翻訳:競合他社、業界、統合、および用語集は、その偽物を維持 app/lib/**/*.ts では、辞書が見たことがないため /fr/solutions/real-estate 英語の段落の周りのフランスの見出...
21の翻訳されたローカライズを英語に停止
英語以外のページでは、ハードコードされた漢字を/enツインに持ち運びます。 `export const metadata` は module-level なので locale では変更できません。 28ページが「canonical:************************************を全22に出荷 ...
カタログからアドオンユニットを有効化し、正しい固定価格
ストレージアドオンは、同じページをプール用に「+$4 /user/month」として宣伝 組織全体と呼ばれます。 原因: mapAddOns マッチした addonCode "additional storage" 一方、シーダーは EXTRA STORAGE を書いているので、ユニットは決して発射されず、 Prici...
リストの価格のないアドオンのためのRenderの連絡先販売
PageAddOn.price は数値型で、Number(addon.pricePerUnit) でビルドされたので、no のアドオン リスト価格 — エンタープライズネゴシエーションシステム — +$0 としてレンダリングされ、無料で広告します。 価格は、すべての消費者を強制的に、本物的に無効になっています。 - プ...
ライトモードマシンのキャンバスを白くするランタイムのテーマシートを停止する
DynamicMetaLoader はテーマを追加しました。<domain>/css/globals.css から <head> まで stylesheet と、そのファイルはまだ create-next-app ボイラープレートを運ぶ: :root{--background:#fff} と好ましいカラースキーム:ダー...
リードをステップ1で送信する 代わりに、予約
handleFormSubmit は、*** をチェックし、ステップを詳細にチェックしました。ネットワークは使用できません。 呼び出しは、すべてのので、連絡先は、訪問者がタイプした連絡先の詳細が、いつまでも主張されていました 予約完了に行きました。 まだ公開されていないと, 意味 何もなかった。 ステップ 1 今 P...
動的セグメントページで500枚 + 不足しているロケールキーのフォールバック
グローバルな力動的に作られたルートを生成したStaticParams の試みで削除する DYNAMIC SERVER USAGE をスローするオンデマンドパラメータの静的レンダリング locale レイアウトの getMessages() はリクエストヘッダーを読み込みます。 これら6つのルートをピント 動的レンダリン...
フェーズ3 + 4 — 既に到着したトラフィックを変換
- changelog(#2 宛先)はコンバージョンブロックを取得します。 キャリアは正直なノーオープン状態を示しています - /subscribeページ: ポスト登録計画は、実際のどこかに固有の土地を意図します(支払いの意図で404を持って) - 価格: ライブ価格の FindYourPlanQuiz、ミッドページC...
関連コンテンツモジュール + プログラマティックテンプレートのCTAリターゲティング
ソリューション、統合、代替品、および用語集テンプレートは、有機的だった デッドエンド:内部に関連したリンクなし、CTAsが指摘する サインアップの代わりに/pricing。 - i18n Linkを使用した新しい共有関連コンテンツブロック(カード/ピルバリアント) 従って locale は保存されます; 関連するリン...
フェーズ 0+1 — 実際のファネルを計測し、最初の塗料をブロック解除
- 転送データ-* 磁気ボタン/RippleButton による props ( DOM に達したことがない) - 機器共有ナビゲーション、ヒーロー、プレビューバンドナー、セクションCTA;?ref=すべてのレジスタリンク - デッド削除************************************ + 16...
進行中の優れた仕事をコミットする
ステージングとコミットしているのは、作業ツリーにコミットされていないままです。 4ファイル変更、72インサート(+)
Kubectlのダウンロードをフラッキ・エグレッシにハードン [skip ci]
dl.k8s.io オーバー ランナーのエグレッション 断続的にミッドトランスファーをドロップ: curl: (56) OpenSSL SSL read: 復号化が失敗したか、悪いレコードマック それ以外の緑のビルドでデプロイが失敗する。 繰り返し観察 kamo-signer-monorepoとkamo-transla...
始動機は5人のユーザー、25のビジネスでおおわれます
公開されたシートキャップを/pricing(および計算機)に配置します。 JSON-LD が提供する、および llms.txt の合計) サブスクリプションと一致 カタログ:スターター25 -> 5ユーザー、ビジネス100 -> 25ユーザー.
ホストされた <kamo-chat> でフォークされたチャットを置換し、レガシープロキシウィジェットを削除
フォークされたAI/live-support Reactチャット(PublicChatWidget + AiChatPanel + LiveSupportPanel + ホストされている /api/chat/** サーバープロキシルート) self-theming <kamo-chat> から提供されるカスタム要素 メ...
Distinguish actively-translating vs queued messages
The translation queue was already sequential, but every queued bubble rendered "Translating…". Now the single in-flight message shows "Translating…" with a puls...
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 an AlertTriangle icon in red with tooltip "F...
Stream translations newest-first for visitor history
When the visitor lands on a non-English locale and the support chat has existing English messages, every bubble flagged needsTranslation by the backend now show...
Auto-translate visitor and agent messages
Live agent replies arriving in a language other than the visitor's URL locale now show a "Translating…" bubble while the TranslateService call resolves, then sw...
Move translations to kamo-translation-dictionary
All 22 locale files move to the centralized kamo-translation-dictionary repo. The CI now clones that repo and copies the kamo-marketing/ folder into messages/ b...
Scope concurrency to build jobs, not Kubernetes deploys
Workflow-level concurrency serialized the whole pipeline (including kubectl rollouts). Move the group to the build job only so deploy jobs from different runs c...
公共サポートのための定期的なSTOMPプレゼンスハートビート
パブリックセッションの存在下でRedis TTLをリフレッシュし、エージェントは正確なオンライン状態を確認できます.
ライブミリ秒カウントダウンでアクティブなオファーバナーを表示
アクティブなプロモーションサーバー側をホームページでフェッチし、 HeroOfferBanner は、サブヘッドラインとフリーフォワーバーのコールアウトの間です。 バナーは割引額、期間、およびライブカウントダウンを示しています アニメーション付き**************** グラデーション・グローのボーダーとシマー...
アニメーション制御による最小限のタブエントリをドライブ
Animate={...} を animate={tabControls} に切り替えると、エントリが壊れました アニメーション: tabControls は、マウントにキュートなターゲットを持たないので、ボタンは保持されます。 初期 { y: 100 } 位置 (以下画面). useEffectを追加 explici...
ライブ未読バッジ+新しいエージェントメッセージのバウンス
- ウィジェットが最小限に抑えられる間、LiveSupportPanel搭載の画面を維持 (サポートセッションが存在する場合のみ) STOMP サブスクリプションの滞在 alive と onUnreadMessage は、エージェントのメッセージをいつでも受信するのを防ぎます。 訪問者はチャットを見ていません。 - す...
SSRガードを取り外し、水和不一致を引き起こし、ネイティブWebSocket用のSockJSをドロップ
- Hero.tsx: ParticleFieldの周りのtypeofウィンドウのチェックを削除 — ParticleFieldは既に ssr:false を持っているので、ガードはサーバー/クライアントツリーのミスマッチを生成しました (React #418) - LiveSupportPanel.tsx:sockj...
Use /public/{mainDomain}-{tld} path matching actual MinIO bucket layout
The getThemePath() was generating /domain/{tld}/{split}/kamosite paths that don't exist in MinIO — theme files live in the public bucket under kamocrm-com/, bad...
壊れたプレースホルダー画像を追加し、修正
<html> でspressHydrationWarning は、ブラウザーによる React エラー #418 を防止します。 拡張子 (例: 翻訳、ダークモード) SSR との間の html 属性をミュート クライアントの水和。 placehold.co の placehold.co との.placeholder...
SendMessageで重複するConnectStompコールを削除します
最初のメッセージが新しいセッションを作成するとき、onSessionCreated の更新 props これは、connectStompを呼び出すためにuseEffectをトリガーします。 sendMessage のインライン呼び出し useEffects のdisconnectStomp によって、冗長ですぐに殺され...
リポジトリからkamo-capcha-widget node modulesを削除
****************************************************************************************************************************************************************...
変更ログリンクと毎日のカウントでライブ状態を表示
プレビューカウントダウンとサインアップコピーをコンパクトな「Now LIVE」で置き換える callout は変更ログ リンクを保ち、今日の変更カウントを常に表示します ロード後の API から。 ローカルでPreviewBanner文字列を更新します.
訪問者サポートチャットでフレンドリーなテキストとしてレンダリングシステムイベント
NAME CHANGEDシステムイベントは、チャットバブルで生のJSONを表示しなくなりました。 それらは中心にされた italic の丸薬(「{name} に名前を変更して下さい」)として表示します。 その他のシステムイベントは、サイレントに無視されます.
LiveSupportPanel STOMPハンドラでVisitor MESSAGEのエコーをスキップ
訪問者メッセージは、backend の messageType=VISITOR MESSAGE にタグ付けされました。 これらをSTOMPサブスクリプションでスキップするので、訪問者のメッセージは、訪問者のメッセージがSTOMPサブスクリプションに含まれていない 応答をサポートしていた場合、左側に再出現します.