useBaseMachinaContext
useBaseMachinaContext
は、ユーザーコンテキストに関連する情報(ユーザー、プロジェクト、環境)を取得するためのフックです。これらの情報は、一般的にユーザー認証や権限管理などの機能を実装する際に役立ちます。
基本的な使い方
import {
useBaseMachinaContext,
} from '@basemachina/view';
const App = () => {
...
const basemachinaContext = useBaseMachinaContext();
return (
<div>
<p>ユーザー名: {basemachinaContext.user.name}</p>
<p>環境名: {basemachinaContext.environment.name}</p>
<p>グループ一覧: {basemachinaContext.groups.map(group => group.name).join(', ')}</p>
</div>
)
}
詳細なインターフェース
引数
このフックは引数を受け付けません。
戻り値
プロパティ名 | 型 | 説明 | 例 |
---|---|---|---|
user | object | 現在のユーザーに関する情報を含むオブジェクト。id , email , name , groups , isTenantAdmin のプロパティを含みます。 | 詳細は後述します。 |
environment | object | 現在の環境に関する情報を含むオブジェクト。id , name のプロパティを含みます。 | { id: '1', name: 'Environment Name' } |
environmentVariables | object | キーが環境変数の名前、値が環境変数の値のオブジェクト。 | { USER_NAME: 'example-user', PROJECT: 'example-project' } |
groups | Array | 現在のプロジェクトに存在するグループに関する情報を含むオブジェクトの配列。各オブジェクトは id , name のプロパティを含みます。 | [{ id: '1', name: 'Group1' }, { id: '2', name: 'Group2' }] |
なお、user
プロパティのオブジェクトの各プロパティは以下の通りです。
プロパティ名 | 型 | 説明 | 例 |
---|---|---|---|
id | string | ユーザーのID | '1' |
email | string | ユーザーのメールアドレス | 'user@example.com' |
name | string | ユーザー名 | 'User Name' |
groups | Array | ユーザーが所属するグループに関する情報を含むオブジェクトの配列。 | [{ id: '1', name: 'Group1' }] |
isTenantAdmin | boolean | ユーザーが企業アカウント管理者であればtrue です。 | true |