コンテンツへ移動
KAMOUniverse

チェンジログ

何が新しいの?

プラットフォームのすべての改良 それが出荷される

  1. · kamo-internal

    カスケードを驚かせ、枝のバルク行動を加えて下さい、規則を説明します

    カスケードのハイライトは、影響を受けたすべてのフラッシュではなくチェーンを移動します 一度に行って下さい。 enabledAncestors は既に最寄り先に到着しますので、インデックスは 最後の背後90msでツリーと各行の遅延を移動距離 — 見ていると、子供を両親に祖父母に連れて行くことは、ルールを教えているものです。 同時フラッシュはグリッチとして読みます。 好みの感情の下でまだ即刻。 全てを付与 / ブランチですべて削除し、変更時にのみ表示されます。 直接設定を書くのではなく、applicationToggle per right をルーティング: a バルクアクションは、カスケードルールの第2の実装にはなりません。 単一の権利の 1 つから漂流Hierarchy.ts. 与えられた/totalの丸薬は、時だけではなく、親行に常にあります 崩壊 — ブランチが実際に付与されたものの最も速い読み込みです。 また、以前のコミットが追加された hierarchyHeading/hierarchyBody をレンダーします。 辞書は使用しない。 実際に持っているグループの上にのみ表示 ネスティング; どこにでも現れたバナーは、スキップすることを学ぶ人です。 rightTreeForest.test.ts は固定ルールツリーとブランチタイプをピン留めします エディタ共有:親が現在のグループからフィルタアウトされる権利 最寄のPreSentの祖先に、または根になる。 他の方法のラウンドは、 エディタから付与可能なパーミッションは、それを示すものは何もありません。 練習で到達可能, EDIT QUOTE TERMS は、その中にCRMを宣言されているので、 親MANAGE QUOTESはPOSです.

  2. · kamo-internal

    すべての5つのエディタで許可階層を表示および強化

    5つのエディタは、199の権利を、チェックボックスの5つのフラットリストとして付与しました。 これらは、右が別の前提条件であることができることを示しました。 子どもの助成 親なしでは、作業許可の付与のように正確に見えました。 法的およびコンプライアンスタブが2つの権利を必要とし、エディタがそう言うことができない方法。 アクセス ツリーはツリーをレンダリングします:コネクターの背骨、折りたたみと刻印 枝, 分岐ごとに付与/totalピル, マッチの祖先を保つ検索 可視され、アニメーション化されているカスケードは、アニメーションが教えているものだから ルール — 子がそれに依存するかを照らすことを可能にします。親がそれを薄くします。 サブツリーは、全く動かされたものを正確に命名しないトーストを持つ。 ホーナー 好ましい感情。 また、エディタが表現できない3つの状態について嘘をつくことは止めます:権利 orgのセキュリティモデルによってロックされ、親がいる既定の行が付与されます。 拒否され、付与可能であるが、どこにも何もゲートしない58の権利。 管理者 プレースホルダーから実際の許可を伝えることができませんでした。 カスケードルールは、Java からミラーリングされた app/lib/rightsHierarchy.ts で動作します。 ロールライトタイプ。 セキュリティルールのコピーは責任です。そのため、パシティテストは読み込みます。 Java のソースは、慣行を信頼するのではなく、任意の divergence に失敗します。 ブランチタイプのテンプレートエディタは、注文とインデントを取得しますが、その 独自の制御とオートカスケードなし: これらは、フォース値、絶対値であり、 すべてのレベルの後で、従ってそれらをcascadingことは静かにdeliberateを書き換えます オーバーライド。 親関係は解決時にまだ強制されます。 デザイン + 再現可能な監査: docs/superpowers/specs/

  3. · SecurityService

    正規化メンバーは階層に対してオーバーライド

    会員の直接の権利は、今、権利の階層を通過します。 それらの前にnormalizeLevel 主張されている: 与えられた子供は、その祖先をメンバーでGRANTEDまで引きます レベル, 否定された親は、そこにそのサブツリーを下にNUKEを押します. このエンドポイントが到達可能なため、エディタを信頼するのではなく、サーバー側 直接。 親が正確に何であるかではなく、子供で保存されたレベル ソルバーのクロージャは、後日ストリップを通過します。メンバーは右に負け続けるでしょう。 UIは、何も説明しないと、与えられたように示しました。 最初にマップに収集されるので、階層は一度に全体のレベルを見ます。 エントリーによる正規化エントリは、クライアントが送信するために起こった注文によって異なります.

  4. · InitializerService

    バックフィルの祖先従って閉鎖はアクセスを取除くことができません

    MemberRightsAppliedServiceは、親チェーンがいない権利を否定できるようになりました 付与される。 階層の前に書かれたすべての列は何も知らない ancestors なので、MANAGE SUBSCRIPTION PLANS を ACCESS COMMERCE なしで保持する役割 — 今までは完全に正常です。次の再計算で失います。 アクロス13 移行ではなく、古い生きた組織です。 4つのレベル(役職、部署、役職、メンバーのオーバーライド)をすべて持ち込む 同じルールを使用して、現在保持されている書き込みパスをinvariantに: 付与 子孫は、その祖先をGRANTEDに引きます。 ステップ2は実際にある1つです 暴露を防ぐ — 明示的に拒否された祖先を付与するので、 ステップ1の無接触と閉鎖を生き残っている行は、すべての それらの下にある子孫。 セキュリティモデルのテンプレートは意図的に触れない: 親の FORCE NUKE 目的のサブツリーを切る管理者であり、閉鎖のhonouring それは特徴です。 ステップ3は、ログラインではなくGATEです。 変数を再チェックし、実行を失敗します。 任意のレベルは、未保証の祖先の下で付与された子孫を保持しています。 ツイート 左の違反で成功を報告した移行は、 解決者への問題、それはメンバーとして静かに失います 何も説明しないように許可します.

  5. · kamo-shared-library

    全199の権利のための親子階層

    RoleRightType は 'parent' フィールドとパブリック getParent() を長年宣言しました。 すべての定数がnullを通過し、何も呼び出されません。 この仕上げは、 足場:135の子供、34の根、30のスタンドアロン、最高深さ3、から派生した 40 件のリpos 全体で 15,081 のソースファイルに対するすべての 199 の権利の監査。 TWOの執行ポイントおよび割れ目は設計です: normalizeLevel() は AUTHORING です。 それは1つのレベルの自己一貫性を作る — 付与される 子がその先祖をそのレベルで引き出す、否定された親はNUKEを下に押します そのサブツリー。 役割、部門および職名はパスを書きます。 各レベルが凝ったままなので、子供を付与するジョブタイトルも付与されます。 親のTHEREと既存の滝はすでにより具体的にすることができます レベルはそれを否定した部門を打つ。 クロスレベルの優先ルールがなかった 加えられ、滝は触れられません。 applyClosure() は、ReSOLUTION です。 です。 承認する2つだけの安全網は到達できません:セキュリティモデル 親上の FORCE NUKE (絶対、最後に適用されるので、強制オフなし) 両親は、その子供が与えられた子を残します)。 二つのペアは、職務の分離がそれに依存しているため、意図的にFLATを維持します。 APPROVE TIMECARD ADJUSTMENTS/FINALIZE PAY PERIODS、およびAPPROVE ORG PAYOUTS として MANAGE ORG FINANCESの兄弟は、その子ではなく、後者をネスト すべてのペイアウトの承認者を発行者に強制する。 デザイン:kamo-internal メニュー

  6. · kamo-internal

    Orgのカラーでリマインダーを再ペイントし、そのオプションを所定の位置に開く

    カードは、組織のプライマリカラーであり、すべてのマークが描画されます。 in --on-primary ではなく、文字の白ではなく、白いラベルのorg 淡いプライマリは、1つのトークンを再宣言し、カード全体を移動することができます。 破片、柵 そして、境界は同じトークンから色混合され、彼らはどちらかの方法で合法的に滞在します。 第一次行動は逆にされた丸薬であり、idiomに法的な署名を一致させます ヒーローはすでに色付きのバンドのボタンのために使用しています。 ひとつひとつのアクセントが紡ぎ出されます。アイコンはすでに種類を運びます。 着色されたカードの第二色は泥棒のみです。 オーバーデューは例外であり、 赤を回すのではなく、逆転する:任意のorg色の赤は読解できません。 そのSnoozeとその他のメニューはMUIメニューでした。これは文書にポータルし、持参する それらをスクロールロック。 そのロックセットオーバーフロー:隠しと補償 document.body の padding-right と、ボディをパディングすると、すべての固定位置が移動します。 ページの要素 — なので、下/右20で固定されているデッキがジャンプ 誰がSnoozeのために到達した瞬間を横にし、メニューはカードを覆いました お問い合わせ 両方とも1つのインライン パネルであり、カードの内部にカードで拡大します 左リットをトリガーします。 ポータルなし、スクロールロックなし、カバーなし.

  7. · kamo-internal

    法的およびコンプライアンス設定タブ org デフォルト 法的テキスト

    デフォルトの法的テキストを保持する /settings/features/hrs の新しいタブ, からリンク 設定メニューと設定の起動パッド。 パッケージの作成 /hr/legal-compliance はそれから始まり、そのフィールドは3列の高さです。 権利。 HRS 設定ページは、現在 RENDER を使わずに再利用します。 MANAGE HRS SETTINGS をリダイレクトするのではなく: リダイレクトは効果なので、 レンダリングが終わるまで実行できず、全てのタブが絵を描いたり、 マウントタイムロード — 権利を保持しないメンバーのため。 新しいタブ MANAGE LEGAL AND COMPLIANCE を3ヶ所で同一に保持 (ページ、メニューリンク、ランチャーカード)、テストでピン留めされたリンク ページには、代わりに Provider Setup を開くためのタブはレンダリングされません。 SettingsView は、エラーではなく 0 をインデックス化するために、未知の ?tab= を解決します。 ダイアログは、著者がタイプされていない間のみデフォルトを種子します。 すでに書くことができると解決します。 seedDefaultAttestation は純粋 ルールがテスト可能であるようにヘルパーは、Outside を state updater に適用します。 シードスナップショットを残した開発中のリアクトダブルインボイスアップ 高度および第2呼出しは自身の変更を洗練します。 エディットは決して再シードしません。 パッケージは独自の言葉遣いを持ち、それを上書きする 公開されたバージョンのオーディエンスが同意するかどうかを書き換えます.

  8. · kamo-internal

    スティッキーとプレビューのリッチテキストと、切り替え可能なモード

    メモは、リッチテキストやテキストのプレーンテキスト、およびエディタの両方であるかどうかを説明します フローティングスティッキを切り替えることができます。 豊富なモードのフローティングノートは、非常に同じエディタ/ノートが使用するので、 すべてのツールがフルページにある — そのノートの色でドレス KbArticleEditor の新しいオプション `tone` の prop を使って。 プロップは 添加物: absent、エディタはそれをしたように正確に見ます、従って知識 ベースは無接触です。 ツールバーのラップとスクロールではなく、プッシュする 狭いスティッキーからエリアを書く。 リッチに切り替える → プレーンは最初に尋ねます, そして、その書式を明確に言う テキストが保存される間は捨てられ、回復できません。 それはない 隠されている — プレーン モードはどこに置くかないので、変換も バージョンをスナップショットし、履歴から回復可能な古いフォーマットを残します。 プレーン -> リッチは単にツールをオンにし、警告を必要としません。 ウォールカードとランチャーパッドチップのプレビューがリアルタイムに表示 フラットな線ではなくコンテンツ。 彼らはスタンドアローンを通してレンダリングします lexicalToHtml ではなく、マウントされたレクシカルインスタンス: 壁は数十 カードと、それぞれがエディタのランタイム全体にドラッグする 段落を表示。 その出力は注入され、ノートの内容はあります 会員の許可と頻繁に貼り付けられたので、セキュリティに敏感な部分です とテスト優先 — エスケープ、拒否するスキームの許可リスト javascript: とデータ: (タブとケースオブジェクトを含む)、引用エスケープ href の内部、およびレンダリングされるよりむしろテキストとして示される従来の未加工 HTML のノート。 検索がカードを実行している間、明白な強調表示されたプレビューを保持します。 ヒット件数の中間調査をマークし、レンダリングを強調することはできません シリアライズされたものだけをリペアせずにHTML。 また:フローティングノートは、orgの構成可能な背景を運ぶ 透かし、同じ1つのコンテンツページが使用し、org'sを奨励する NONE を含む bgWatermark の設定。 ノートの共有としてサイズ変更 どのサイズでも保持し、ページの使用よりも少し強い スティッキーは、近くの白ではなく、飽和紙の上に座っています.

  9. · KBService

    API によるメモのリッチテキスト/プレーンテキストモードを運ぶ

    リクエストされたモードとデフォルトを補完して、リッチにマッチする メモを編集します。 アップデートは、他のすべてのようにnullガードされます そのエンドポイントのフィールドなので、 { isRichText } だけを送る呼び出し側は、 メモを空白にします。 DTO は isRichTextOrDefault() で読み込まれるので、 バックフィルが豊富に報告されています。 立ち向かう 書式は安全な方向です: 反対は書式された提示します 会員を平らにし、招待するようにしてください.

  10. · InitializerService

    Is rich text カラムを追加し、デフォルトでバックフィルドをリッチに追加

    メモがリッチテキストやプレーンテキストとして編集されるかどうかは、読み返すことができません コンテンツから: リッチノートの誰もフォーマットされていないが、バイト単位でバイト単位 プレーンワン 列がなければ、エディタは毎回ツールバーを失う 再オープン デフォルト TRUE は、 YugabyteDB が列を a に追加することを可能にします。 既に行を持っているテーブル。 すべてのメモが書かれているので、具体的にTRUE 列が存在する前に、リッチエディタで作成されました。 編集者だけだったので、FALSE に埋め戻すとフォーマットされた 明白としてメモし、それらを平らに提供. 通常の理由で@Order(0): 共有libが列をマップする瞬間 ノートSELECTをロードするすべてのランナーは、遅延移行は決してありません お問い合わせ ドリフトガードでこのパッケージを使用する船 — 列を反映 休息ではなくエンティティティティティティティティティティティから名付け、休憩でチェック 名前と見ていると失敗します。 Yugabyte に適用される: boolean デフォルトとして存在するカラムはすべて 既存の行は、NULL ではなく、真に埋め戻されます.

  11. · kamo-shared-library

    テキストやテキストが豊富であるか、メモレコード

    モードはコンテンツから派生することはできません。 会員が持つ豊富なメモ フォーマットされていないけれども、 byte-for-byte をプレーン 1 と同じシリアライズします。 どちらが非スタイルの段落のレクシカルな文書です。 メモが再オープンされるたびに、エディタはツールバーを失います。 デフォルトは豊富で、列はTRUEに戻ります。 フラグが豊富なエディタで認可されたことを証明しました。 ありました。 FALSE へのバックフィルメントは、プレーンとしてフォーマットされたメモを提示します 会員様をフラットに招待していただきます。 目的に Nullable、isRichTextOrDefault() で unset フラグを以下のように読み込みます。 豊か: 何らかの方法で、バックフィルをエスケープする行は、 フォーマットし、それを捨てるのではなく.

  12. · kamo-internal

    通知とそれらの制御のための1ページ

    通知ページは、自身のヘッダを借りる — 眉毛, タイトルと3 境界カード内の丸薬ボタン - すべての隣接ページ(アカウント ブラウザ、すべての設定画面)は、ブランドグラデーションヒーローによって、 矢印とタブバーを下に移動します。 製品のどこかで読む。 それは、 今、同じヘッダーを、そのサブタイトルと2つの未読カウントで運びます ヒーローの白いボタンとしてリスト上で動作するアクション。 下の2つのタブ:通知と設定。 設定は、 /settings/member/{id}?tab= でメンバー自身のプロフィールのタブに使われる 通知は、異なる画面に通知の上に制御を置く 通知自体から — 2つの場所の1つの主題、どちらも お問い合わせ 鐘を開けるメンバーが止まらないので 停止できるページに既にあります。 `?tab=` は、 NOTIFICATION TABS なので、バーや表面にディープリンクできない 何も選択しない値に漂流します。 古い場所(トーストデッキのセッティングアクション)にリンクした両面、 ページの独自の設定ボタン、タブ) は NOTIFICATION SETTINGS HREF に移動します。 ログイン メンバーのURLの古いブックマークはまだ解決します。 - SettingsViewは戻ります `?tab=` の最初のタブは認識しません。 クイックヒントは、古いタブ(settings.notifications.help.*)を空にするコピーをコピーします。 実行されていない: 助けの引出しは、SettingsView の有価証券であり、このページには なし。 キーはスクラブベッドではなく辞書に残されます.

  13. · DocsService

    Orgのデフォルトの法的テキストを取得する/パッチ

    /api/docs/legal/settings, 同じガード() 漏斗の背後にある このコントローラーのマッピング read Never は行を作成します。: org が持っているときに LegalDefault に解決します。 なし。 これは、パッケージエディタのシードフェッチの副作用を無料で保持し、何です KamoInitializerシードランの後に作成された組織をカバー — 行は 書き込みが属する最初の保存に材料化されます。 右のセットは、パッケージのエンドポイントよりも意図的に広いです。 このエンドポイント 法的およびコンプライアンス設定タブ(MANAGE HRS SETTINGS)からアクセスされ、 パッケージエディタから (MANAGE LEGAL AND COMPLIANCE); 右だけで 403s 所有するフィールドの画面。 1つのorgレベルの文字列であるため、広範囲に安全 ボイラープレート — エステルなし、割り当てなし、証拠なし — および回帰テスト ワイドなピンはリスト/作成/オーディエンスプレビューに達しません。 PATCH のセマンティック: 存在しないフィールドは非接触で、空の文字列は非審美的です クリア。 公開は既に空白の認証を拒否するので、クリアされたデフォルトはのみ 著者は自分で書きます.

  14. · InitializerService

    すべての組織にデフォルトの法的テキストをシード

    Org の 1 hr legal settings 列, org id のユニーク, 持ち運び メニュー いつでも、更新されることはありません。 独自の文言を編集したオーガナイザーはそれを所有しています。 redeploy は、その人が法的に求められている文章を黙って書き換える この文字列の最悪の動作となることに同意します。 それも ランナーの意図。 Orgs は、この実行が DocsService 読み込みフォールバックによって覆われている AFTER を作成しました org のプロビジョニングではなく、将来のプロビジョニングパスは、 デフォルトの法的テキストが空白であるorgを出荷することはできません。 どちらのステートメントも40001を再試します: CommandLineRunnerから投げると、全体が占有します 初期化して、注文したすべてのランナーをスキップします.

  15. · kamo-shared-library

    Org レベルのデフォルト法的テキスト

    LegalSettingsは、新しい法律を語る組織ごとの1列です パッケージは始まります。 DEFAULT、決してライブ参照ではありません。 パッケージはテキストをコピーし、バージョンにコピーするフリーズを公開するので、 ここで編集することは、存在するパッケージやすでにあるパッケージを変更することはできません お問い合わせ LegalDefaults は 1 の場所で単語を記述するプラットフォームを保持します。 カモイチライザー seed、DocsService はフォールバックと設定フィールドを全てバインドします。 3つのリテラルは、移行の両側を漂流し、オルグスします デフォルトが何であるかについて同意しない.

  16. · kamo-internal

    歴史はページになり、ベルリングは

    鐘は「何が起こったのか」の正しい形であるポップアップを開き、 「火曜にリマインダーが言っていたこと」の間違ったもの。 吊り下げるパネル ツールバーはページを張ることができません。混雑せずにフィルタリングすることはできません。 何もクリックして、メンバーは、最近の未読通知がいくつか表示されます。 その他。 すでに読んでいるのは、練習中。 それは悪いことです アプリケーションが誰かに語ったものの記録のためのプロパティ. /notificationsはレコードです。 リストではなくクロノロジーとして読み込まれる 通知はイベントであり、メンバーがもたらす質問はほぼ 常に "when":通知がそれをぶら下がる日の背骨、各点 自分の色で、一ヶ月の歴史がバンドとして読み込まれる 単語が読み込まれます。 未読行は地面を運び、読書は点だけを運びます、 スキャンされる違いです。 フィルター レールは何を狭くします Spineは、それを再オーダーするのではなく、保持します。読み取り、未読、または両方、そして種類別 それぞれに対するカウント。 一日のグループ化は、経過時間ではなく、カレンダー-awareです。 深夜、昨日の4時間前から何かが起きて、昨日は4時間前から「4時間前」がなかった 探している人はスキャンします。 サーバがデートできないもの 保持され、グループ分けされ、その日を主張することはできません。 鐘は今、バーの他の2つの注意のマークのようにバッジがリンクされていますので、 3つすべて同じように読みます。 動きが異なり、意図的に: 優れた文書と実行中の時計は状態であり、彼らはそのリングをパルス "still true" と言う。 未読の通知はイベントであり、鐘がいつ行われるか イベントはリングです。 なので、スイング — 一度振り返って、振幅 12° → 9° → 6° → 3° → 3° → 1.5°、鐘が掛かるので、リューズでピボット - 4秒間休息します。 決して止まらない鐘は警報です、 そして、その横のカウントは、すでに物事が主張していると言います.

  17. · EmailService

    ページのフィルタリング可能な履歴

    中心は1つの質問に答えることができます:最も最近100、未読またはない、 既に読んでいたことを尋ねる方法無しで。 そこで、メンバーが見たことのあること 、実際には、消えました - レコードの悪いプロパティです 誰かに申し込む。 GET /api/notifications/browse ページ、レポートの合計、各種類のカウント フィルターレールは、すべてのステータス、未読、または読み取りを行います。 既存のリストは、 つまり、新しい数と何も望んでいるライブデッキを埋めます。 フィルターの結合ごとのクエリではなく述語から構築され、 untyped null パラメータは、(:kind IS NULL OR ...) ではなく、意図しない カレンダーを500回、省略された述語はそれを行うことはできません.

  18. · kamo-shared-library

    仕様で歴史を伝えよう

    可読性の履歴は親切で、通知がされているかどうかによってフィルタをフィルタリングします JPQL は、組み合わせごとのクエリである、または (:kind は NULL または n.kind = :kind です) の 1 つのクエリがいっぱいです。 2 つは、すべてのカレンダーのルックアップの答え 500 を作ったものです: null パラメータ PostgreSQL は未入力で、 PostgreSQL はステートメントを正しく拒否します。 仕様 null を渡すのではなく、述語を省略します。そのため、この不具合は再発できません.

  19. · kamo-internal

    分割パネルエディタで紙壁として /notes を再構築

    このページは、生のTailwind blue-600/gray-50の最後の画面でした。 その周りのすべてが家システムに移動し、そのすべての1〜100 `dark:` バリアントはデッドコードだった —globals.css は `color-scheme: light` をピンにします。 また、`---accent-knowledge` を無視しました。 このモジュール。 既にデータを運ぶメタファーの周りに再構築:パレットは 構造によってポストit、従ってノートはペーパーとしてレンダリングします — メイソンリーの高さ、a レバー、ピン留めのピン ヘッドでまっすぐにする決定的なパー ID の傾き ノートの深い色合いのメモ。 無色のノートは明白なペーパーを得ます resolveStickyColor() のレモンフォールバックではなく、そうしない 壁全体を黄色にペイントし、メンバーが選んだ前にパレットを使う お問い合わせ バンドは固定されるのではなくアクティブなソートに従うので、ディバイダーだけ 何かを真に言うときのコストスペース:日付ソートの下のレジテンシー、 タイトルのソート、ビューカウントの下のオープン頻度の初期値。 また、adds: コマンドパレット(⌘K)、カラー付きの折りたたみ式フィルタレールを追加します。 swatchesおよび壁のstats、転位およびバルク行為と多選択して下さい、 キーボード nav (/ ⌘K N P F X 矢印), 検索強調, skeleton ローディング 壁独自の形状で、空の対無応状態を分離します。 エディタは、ではなく、ドラッグ可能なディバイダーの壁の横に開きます ページを置換し、メモ ID でキーをキーにすることで、メモをリセットします。 フィルタリング、ソート、バンキング、メイソンリーバランシング、ペーパージオメトリの移動 app/lib/noteWall.ts は 48 単位のテストの背後にある。 NoteCard の DOM ベースのコンテンツ パーサーがなくなっている — ドキュメントが使われます。 createElement なので、そのメモ contentPlain は、すべてのサーバー側でレンダーされたプレビューを保存しませんでした。 Note SORT OPTIONSを削除し、ハードコードされた英語ソートラベルを出荷 全22のローカルに.

  20. · kamo-internal

    ピンとそのフローティングスティッキからノートをアンピン

    スティッキーは、ノートをリコール、名前変更、最小化、最大化、クローズすることができますが、 ピンしない — なので、ピン留めは /notes に 1 つの事を戻すことを意味する 既にお持ちのフロントにございます。 ピニングは、スティッキーではなくノートのプロパティです。 共有キャッシュを経由してメモとバックに直接書き込みます。 です。 /notes リスト、およびピン付きノートなど、どこにでも上陸させるもの 自宅のランチャーパッド上のバンド(それが粘着性があるまで隠されているまま) 休館日:前日まで 最適化し、書き込みが失敗するとピンを戻します。 コンポーネントの再利用.notes.card.pin / .unpin とエディタの同じアイコン ピンは、すべての3つの表面に1つのことを意味しています。 新しい文字列はありません.

  21. · kamo-internal

    通知チャンネルの両方を管理する1つの静かな時間ウィンドウ

    2つありました。 画面の上部付近のペアは、アプリ内カードを沈黙させました。 最下にあるペアは、見逃されたメッセージのメールを沈黙させました。 画面上の何も言った 彼らは異なるものだったので、メンバーは静かな時間を設定していたので、 2番目のセットは存在し、あまりにも設定します。 - 合理的な仮定、その1 すでに夕方に埋め込まれた。 一番上のウィンドウは一つだけあって、両方書いています。 それらは保存されます 異なるサービス — 会員の通知設定のアプリ内時間、 ui-preference MediaService のメール時間が読み込まれるので、コントロールの書き込み 2 回は、まさにメンバーの配管は、決して知っておくべきではありません。 2つの店は、メンバーが到着できるので、一度に再調整されます。 一方の側面の窓は他ではなく。 どのセットが勝つか:メールウィンドウは アプリ内側がどれもいないと採用されているので、誰も設定されていない 先ほど、アプリ内ウィンドウが上方に押し込まれているので、シングルコントロールをオンにします。 スクリーンは、両方のチャネルに関する真実を伝えています。 メール設定は、自分のセクションではなく、パネルによって所有されます。 同じ記憶されたキーに書き込む2つの部品は競争し、できます persist は半分の形状で、MediaService は absent フィールドをデフォルトで読み込みます。 会員は選ばれません.

  22. · kamo-internal

    100%の2つの意味 - 読書幅と全体のペイン

    1つのベースラインへのパーセンテージリセット:ペインに成長したページがキャプ ワイドモニターの920pxでは、たくさんのシートが浮かび上がっています。 空の机。 そのキャップは非審美的である — 全体に伸びる文字ページ 34インチのディスプレイは、目のせいで、より大きいものではなく、悪い文書です 長い行を追跡することはできませんが、メンバーが望むことは必ずしもありません。 細かいプリントを読んだり、緻密なフォームを操作したり、自分が持っている空間を望みます。 そこで、カプセルピックには、次の2種類があります。 読みやすい幅を 920 にまとめました。 ペインが開いているもの。 幅はペインを埋めます。24pxのガッタが少なく、シートのシャドウはしません エッジに対してクリップされ、ページはレイアウトされたように読みます 作物よりも。 彼らはMODEです, ズーム梯子に2つのより多くの停止ではありません, 彼らはありますので、 異なる倍率ではなく異なるインテント。 ズームマルチプライズ どのベースラインもアクティブなので、読み出しはそれについて正直にとどまります 複数の +/ のどちらかからでも動作します。 ベースラインのLANDSを切り替える - ズームは100%に戻ります。 「幅にフィットする」 上部に250%ズームが当てはまりませんし、メンバー ひとつのマルチプライヤーではなく、幅を求める。 toggle は `aria-pressed` の 1 つのボタンで、そのツールチップの名前は IT DOESをプレスするのではなく、現在:ページ内の「幅にフィットする」 モード、幅モードの「リセットビュー」。 既に存在するキーと、 全22のローカルで非空。 maxPageWidthテストのエッジをカバー:NaNのペイン測定が落ちる PdfPagesをmaxPageWidthとして到達するのではなく、読みやすいキャップに戻り、 何もレンダリングし、折り畳まれたペインは、幅が小さくても戻らない 読みます。 1つのテストは帽子より鍋のより小さいという事実を2つピンで止めます モードは、ガッタ内部に収束する - バグではなく正しい 設計のまわり.

  23. · kamo-internal

    エディタが保存する瞬間 NavTop 時計をリフレッシュ

    現在、メンバーのパンチを呼び出すと、すでに残っている サーバー側オフ: RosterService.clockState は最新の LIVE パンチを読み込み、スキップします。 無効な行なので、クロックアウトは書いておらず、何も必要ありません。 SHIFT OUTはこちら 使いやすさよりも悪くなりません — SHIFT IN とペアリングされるだけで、 そのため、オーファンとして上陸し、エディタの欠如例外を上げる クリアに存在します。 実際に間違っていたことはインジケータでした。 60m2のフロアに、 エディタからの信号, その下でクロックされたエントリを削除した後 会員は、クロームが時計にいたと言っているのを見た。 エディタは、何かを書いた保存と制御再読み込みを発表します。 「finally」と「LANDED」を成功させるのではなく、 ハーフウェイがまだレコードを変えてしまい、その場合 階段バッジは気づらいです。 NavTop クロックがセルフスコープ化されているため、編集した memberId を実行します。 (fetchMyClockState はメンバー ID をとりません)。このエディタは HR で使用されます。 /hr/attendance の他のメンバーに対して。 PleaseRefreshClockについて として比較するため ストリングは、parseClockState が既に与えている理由で、数を拒否します。 id は MAX SAFE INTEGER の 2 人のメンバーが丸くできるユニーク値です。 同じ番号へ。 HR がカードを編集したときに OTHER メンバーのブラウザーを修正しません。 timecard.clock.{memberId} プッシュリレー, まだ終了します.

  24. · kamo-internal

    ドキュメントをズームし、それを移動するためにつかみます

    ドキュメントペインの右下にあるフローティングカプセル: −、電流 パーセンテージ, +. READOUTはリセットです。別のリセットボタンは 既にできる限りのメンバーが望んでいる何かのための3番目の制御 彼らが100%でなく、チェックする場所は番号です。 お問い合わせ ラベルが付いている実質ボタン、従ってキーボードおよびスクリーンの読者はそれに達します。 100%は、実際のサイズではなく、FIT-TO-PANEを意味します。 `zoom` は、フィット幅を乗じる PdfPagesは既に計算済みで、メンバーが最初に開始したビューは 「100%」を押すと意味します。 ステップは多重化(x1.25)、ないです ±0.25: 固定されたステップは、そのページの1分の1です。 400%で、遠くから戻ってズームアウトすると、ダースプレスが取れます。 ザ・オブ・ザ・ maths は app/lib/pdfZoom.ts でテストします。これには + が返されます。 あなたがいた場所とNANNは、代わりに収まるように戻って落ちる PdfPagesを `scale = naturalScale * NaN` として到達し、ゼロページをレンダリングします。 ドキュメントがロードできないように正確に見えます。 操作するものではありません。 使用DragToPan content を変換するのではなく scrollLeft/scrollTop を書くので、 コンテナの境界、スクロールバー、ホイールの動作を自由に継承します。 そして横の軸線はページがより広いまで決してしません パンは、どこからでも、そう言うまでもありません。 開始を拒否する 入力、textarea、選択、ボタン、a[href]、ラベル、[role=radiogroup]および 残り:署名ボックス、テキストフィールド、チェックボックスグループ InteractiveField は、ズームカプセルのボタンをレンダーします。 ポインター ダウンして、ペインが追跡し続けるドラッグ そしてまだきれいに終わります。 マウスだけ。 モーメントとゴムバンドでネイティブに触れる ここのハンドラが再現できず、ハイジャックすると ドラッグが自然なジェスチャーである装置で文書が悪化します。 1つのレイアウトの修正はこれに来ます:PdfPagesはページをと囲みます `align-items: center`、およびコンテナのオーバーフローよりも広いflex項目 両側にEQUALLY — スクロール位置ができない左半分 リーチ パンの幅を過ぎたズームは、すべての残りのマージンを置きました ページの永続的な範囲から。 このページのラッパーは、最も広く成長しています ページ (`幅: フィット コンテンツ`、 `min-width: 100%`) で階に シートはスクロール可能な領域にとどまります.

  25. · kamo-internal

    起動パッド、色の回転、および適切な送信オフのピン留めされたノート

    3つのこと。 ピン留めされたノートは家の進水パッドに達する。 /notes にピン留めされたメモは、 短いプレビューで、独自のスティッキーカラーでそこにチップを切る。 1をクリック オーバーレイにピックアップし、コーナーコントロールが完全に開きます 代わりに、スティッキーができないもののエディタ。 注意: CURRENTLY FLOATINGが残っています。メンバーの画面に既に存在しています。 同じノートを2回提供し、同じルールを作る /notesカードは不活性です。 スティッキーを閉じると、チップを戻します。 バンド ノートオプションが nav 自身のゲートを生き残ったときだけレンダリングします。 自分のアクセスについて何も決定し、それがオーバーレイを好む メモのキャッシュされたコピーなので、チップはタイトルや色を前に表示しません ピックアップしました。 新しいノートはパレットを通って回ります。 それぞれの色が色で開く 会員の最も最近は CREATED のメモ、最後にラップするので、壁 スティッキーは同じ黄色のブロックではありません。 メモをキーオフ 保存されたカウンターではなく、デバイス全体に留まる 何も主張する余分のないセッション。 未設定または認識されていない 前の色は、推測の代わりに回転を再起動します。 メモを閉じると、それを残します。 予想のビート, その後、それはスクラッチ, 紙のスクラップを自分の色に残し、落ちる 左のスペースに。 スクラップはレイヤーではなくレイヤーによってレンダリングされます。 注意: 子はノートの出口の変形を継承し、縮小する その代わりに、バーストアウトワード, その最後の上にノートの手 方法の長方形そして色。 最大のノートが破裂する 復元するサイズではなく、ビューポート全体。最小限 画面上にバーストを破るスペースがないので、 好ましい感情は、スクラップなしで明白なフェードを取得します。 スキャッターは 決定的なハッシュ、Math.randomではなく、すべてのレンダーを再ロールし、 スクラップのミッドフライトをジッタします.

  26. · kamo-internal

    作業モデルで、幅全体での通知設定

    スイッチ行の1 760px の列で、フォームとして読み込まれ、 曲がるものよりも - 広い画面に 2 番目のページを空に残します 通知の種類のリストが下から走っている間。 このページの実際の質問は「私の設定とは何か」ではなく、「どのようにハードなのかはこれ アプリケーションは私を中断することができましたり、それでそれに答えることによって今開きます ライブ値から組み立てられた文章—アプリで、音で、 デスクトップ、あなたの静かな時間外 - 4つの決定に幅を与えます その背後にある: どのチャンネル, 彼らが上陸する場所, 静かな滞在する時, そして何 お問い合わせ センターピースはステージです:アプリのミニチュアのビューポート、塗装済み 通知デッキの暗いトークンは、その周りのページが光を維持しながら、 つまり、本当の通知は、それが上に到着したときに行われる 働くスクリーン。 角をクリックすると角が選ばれ、カード 切断するのではなく、その制御とその結果は1つです。 妊娠。 4つの象はここにドロップダウンを打ちます:選択は空間的であり、 「右下」という言葉は、1つの画像よりも画面の悪い地図です。 それに加えて、メンバーの実際のデッキで実際の通知を上げます 自身の音、角および解読の時間。 通知の設定ページは、 通知を表示することができ、モックは1つの画像になりますので、 プレビュートーストは、実際のデッキを通して捨てるカードを置き、何も書きません、 何も公開し、決して中心に達しません。 種類は、全体のタイルは、行ではなく、スイッチであるタイルになりました 右手に34pxをトグルし、メールセクションはパネルを自分で採用 行なので、ページの一部として読み込まれるカードではなく、ページの一部として表示されます。 Do-not-disturb が一度現れます。 要約のストリップで、またで 静かなカード — 1つの画面で2回同じスイッチ。 要約で生きる、 それは変化するものです。静かなカードは、スケジュールされた種類に残されます.

  27. · kamo-internal

    会員自身のプロフィールのタブとなる通知

    それらは /settings/notifications で自身のページでした。 その人についてのページ以外の1人について — 左 ミスされたメッセージングメールがプロファイルタブにストランドされるので、2つの半分 別の画面に住んでいた「どうやって伝えればいいのか」。 ここまで、 **************************** プロフィール直後に 電子メール スイッチは動作を正確に保ちます — 同じ設定 キー、同じ me-scoped のルート、同じ非発音および残りのフラッシュ — と再描画されます 通知パネルのセクションと行のプリミティブは、その部分として読み込まれます でさまざまカードとしてではなく、 彼らは異なるセクションを維持し、そう言う: アプリケーションが閉じられたとき、そのチャネルがあなたに達します。 異なるサービスで、静かな時間をお過ごしください。 2時間のセットを折ります 1つの制御に、黙ってそれらのいずれかが支配するものを変更します。 タブは、すべての好みが読み書きされるので、自在です。 me-scoped のルートを経由して — 他の人のプロファイルでは、これらの制御は編集します 編集中にビューア自身の姿を描いています。 アカウントアドレスを取得する プロファイルタブからそれを取るのではなく: 設定タブは、一つをマウント 時間, そのため、兄弟から持ち上げられた値は、メンバーのとき正確には欠落します 通知の「設定」リンクから、このタブを最初に開きます。 古いルートは、設定メニューのトピックと3つの表面とともに、なくなっています 一方のヘルパーを介してパスをビルドするようになりました。 3つの場所では、最終的にはそれ自体を嫌うルートです.

  28. · kamo-internal

    /settings/signでパッケージを、独自のルートに署名する

    署名はメンバーのプロファイルタブにインライン化されたため、ドキュメントは下に座っています 設定タブストリップとコンプライアンスサブタブストリップとタブのヘルプ パネル — 会員がいる機器上の無関係クロムの3つのバンド 2つのヘッダーを読んでください。 メニュー このページは NavTop を継承し、 NavPri は、他のすべての画面やウィザードのヒーロー バンドは、 ヘッダー。 終了するか、または戻ります ******************** — リスト バケツに荷物が入った。 リストは `push` で移動します。`replace` ではありません: 異なるに移動します。 スクリーンなので、ブラウザはリストに戻る必要があります。 それを移動させるアローリスト。 `RESTRICTED ROUTE PREFIXES` は、 prefix-matched と denies をデフォルトで指定して、 採用終了は終了いたしました。 `/settings/sign` がなければ、 元従業員は、パッケージリストを開き、直帰することができました RestrictedMembership ship クリックした瞬間を 1 つに変える 到達可能な状態を保つために存在する層の正確な表面にループをリダイレクトします。 コンプライアンス宣言は、保護する2つのことの一つです。 `restrictedRoutes.test.ts` は、このマッチが一致ではないことを含む bare startWith: `/settings/signage` は `/settings/sign` ではありません。 ページ自体のゲートは、意図的にありません。 自分自身を遂行するメンバー 雇用契約は人事の権利を保ち、決して約束しません。 これらに発行されたすべてのエンドポイントはDocsServiceでセルフスコープ化されます。 (LegalAssignmentOwnership, LegalPackageAccess ではなく)、セッションは決定する その割り当ては、他の誰かのuidは404に答えます。 /settings/sign を代入せずにリストに戻る エラーを報告する: 1 つなしでページに何もないし、方法がない 会員様は、その場で提供いたします。 malformed uid はエラーを表示します。 bouncing が悪いリンクを非表示にし、誰かが再び送信しようとしている.

  29. · kamo-internal

    各フローティングノートのサイズとデバイスごとの位置を忘れないでください

    着脱したノートを再び開くと、そのまま残っている場所を正確に置きます。 その画面に残されたサイズ。 配置は DEVICE によって、deliberately です。 浮遊するメモは 会員のプロパティで、ui-preferences のサーバーサイドに滞在するので、 メモ SITS が画面のプロパティである場所をどこでもフォローします。 それらの前に、27インチのデスクトップに合ったレイアウトが間違っている ラップトップ。 そのため、プレースメントはローカルに住んでいるStorage、メンバーが1人でスコープ付け ブラウザは1つのデバイスですが、1人以上でも対応可能です。 プレースメントは、目的の粘着性を生き残します - ノートを閉じる ジオメトリは、全点であるので、店舗はメンバーごとにキャップされます。 そして、少なくとも所定の位置に置かれ、削除されるノート(または 復元の404sはすぐにそのスロットを与えます。 こういった2つの事柄が正しいこと: - ログアウトは、ドロップしたであろう卸売 localStorage.clear() を行う すべてのサインアウトのレイアウト。 このキーをキャプチャして復元できるようになりました すでにディープリンクのスタッシュと同じ方法。 注意: id と コンテンツだけを調整する。 - 水分補給は、マウントで実行するのではなく、メンバーIDを待ちます。 プレースメントはメンバースコープです。そのため、誰が誰なのかを知る前に立ち直ります。 このデバイスのレイアウトをサイレントに無視し、戻ってくる クロスデバイスジオメトリ。 復元の優先順位は、このデバイスの配置です。 クロスデバイスの設定が最後に実行されるので、新しいデバイスはまだ開きます カスケードではなく、砂のレイアウトに — そして、それが再クランプされる方法 現在のビューポートへ.

  30. · kamo-internal

    コールバックのリードが読み込まれ、記憶されていない — と呼び出しは再オープンすることができます

    カレンダーイベントのコピーを保持する場所が悪い場所にある2つのこと 他の人の記録。 イベント ダイアログは、CRMからリードを読みます. その名前、リングする番号、 電子メール、呼び出しの最適な時間 — ダイアログが開くと、キーが付与されると、 コールバック ID は、既に保存されているイベントです。 コピーが表示されていないもの 呼び出しが予約された瞬間に凍らせていた、それが使用される説明です 誰も持っていなかった番号を鳴らすためにメンバーに静かに言っていたもの 数週間で回答 説明は現在、メンバー自身のメモと何もない 何かのコピーがなかったので、ストールは行かない。 リードページから、保留中のコールを開くことができます。 ワンクリックで再オープン 同じダイアログで同じカレンダーイベントなので、メンバーが見に行く場所 約束された呼び出しは、移動できる場所です。 セービングはSecurityServiceを通して行きます カレンダー API ではなく、コールバックレコードとイベントが 2 であるため 1つの約束のビューと、両方を所有するサービスだけが一緒に移動することができます — 代替手段は、リードページといつについて不審なカレンダーです 呼び出しは、会員が読まれないと反発するリマインダーです。 行自体は制御です。 クリックを停止する横にある解決ボタンなので、 誰もそれを読んで意味しながら、連絡された呼び出しをマークしません.

君の宇宙は待ってる

数分で無料で開始できます。準備ができたらいつでも製品を追加できます。移行も新しいログインも不要です。

クレジットカード不要