ビュー
関数
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>
    )
}

詳細なインターフェース

引数

このフックは引数を受け付けません。

戻り値

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

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

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