Angular ユーティリティライブラリ | ng-hub-ui-utils
再利用可能な UI コンポーネント間で共有される、パイプ、フォーカス管理、オーバーレイ、トランジション、翻訳ヘルパーを備えた Angular ユーティリティライブラリ。
API リファレンス
utils の完全な仕様をここにまとめました。バインド、リッスン、プロジェクション、テーマ設定ができるすべてが一か所に集約されています。必要なものを接続し、好きなようにスタイリングしてください — standalone で signal フレンドリーです。
インプット
5 個のインプットで utils を調整。通常の Angular @Input と同じようにバインドできます。
| 名前 | 型 | デフォルト | 説明 |
|---|---|---|---|
HubTranslationService | Service | - | 翻訳を管理するための注入可能なサービス。メソッド: getTranslation()、setTranslations() |
HubOverlayService | Service | - | オーバーレイをプログラム的に作成・管理するためのサービス |
HubPopupService | Service | - | ポップアップ要素を作成するための簡易サービス |
HubTooltipDirective | Directive | - | ホバーまたはフォーカス時に、配置可能でテーマ設定可能なツールチップを表示するディレクティブ([hubTooltip])。入力: hubTooltip(テキスト)、hubTooltipPlacement、hubTooltipDelay、hubTooltipOffset。接頭辞付きの名前により、[hubDropdown] のように独自の placement を宣言するディレクティブと同じ要素に共存できます。 |
TooltipDirective (deprecated) | Directive | - | [hubTooltip] を推奨し、非推奨となりました。接頭辞のない入力(tooltip、placement、delay、offset)は、同じ名前を宣言する同一要素上の他のディレクティブやコンポーネントに奪われます。動作は変わらず、移行は属性を 1 対 1 で置き換えるだけです。 |
アウトプット
utils の動作に反応 — ロジックを接続できる 7 個のイベント。
| 名前 | 型 | 説明 |
|---|---|---|
TranslatePipe | Pipe | HubTranslationService を使用してキーを翻訳します。使い方: {{ "key" | translate }} |
GetPipe | Pipe | ネストされたプロパティ値を取得します。使い方: {{ object | get:"path.to.property" }} |
IsStringPipe | Pipe | 値が文字列かどうかを判定します。使い方: {{ value | isString }} |
IsObjectPipe | Pipe | 値がオブジェクトかどうかを判定します。使い方: {{ value | isObject }} |
IsObservablePipe | Pipe | 値が Observable かどうかを判定します。使い方: {{ value | isObservable }} |
UcfirstPipe | Pipe | 先頭の文字を大文字にします。使い方: {{ "hello" | ucfirst }} → "Hello" |
UnwrapAsyncPipe | Pipe | テンプレート内で Observable または Promise の値をアンラップします |
テンプレート
自分好みに — 4 個のテンプレートスロットでカスタムマークアップをプロジェクションできます。
| 名前 | 説明 | サンプル |
|---|---|---|
hubFocusTrap() | 要素内にキーボードフォーカスを閉じ込めます。モーダルやダイアログに役立ちます。 | hubFocusTrap(zone, element, stopFocusTrap$, refocusOnClick) |
interpolateString() | {{ placeholders }} をオブジェクトの値で置き換えます | interpolateString("Hello {{name}}", { name: "World" }) → "Hello World" |
getValue() | ドット記法を使用してネストされたプロパティを取得します | getValue(obj, "user.profile.name") |
equals() | オブジェクトおよび配列の深い等価比較 | equals({ a: 1 }, { a: 1 }) → true |