ビュー
関数
useBaseMachinaContext

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オブジェクト現在のユーザーに関する情報を含むオブジェクト。id, email, name, groups, isTenantAdmin のプロパティを含みます。詳細は後述します。
environmentオブジェクト現在の環境に関する情報を含むオブジェクト。id, name のプロパティを含みます。{ id: '1', name: 'Environment Name' }
environmentVariablesオブジェクトキーが環境変数の名前、値が環境変数の値のオブジェクト。{ USER_NAME: 'example-user', PROJECT: 'example-project' }
groupsオブジェクトの配列現在のプロジェクトに存在するグループに関する情報を含むオブジェクトの配列。各オブジェクトは id, name のプロパティを含みます。[{ id: '1', name: 'Group1' }, { id: '2', name: 'Group2' }]

なお、userプロパティのオブジェクトの各プロパティは以下の通りです。

プロパティ名説明
id文字列ユーザーのID'1'
email文字列ユーザーのメールアドレス'user@example.com'
name文字列ユーザー名'User Name'
groupsオブジェクトの配列ユーザーが所属するグループに関する情報を含むオブジェクトの配列。[{ id: '1', name: 'Group1' }]
isTenantAdmin真偽値ユーザーが企業アカウント管理者であればtrueです。true