///
= {
mainActions?: {
type?: 'selectable';
/**
* ラベル
*/
label: string;
/**
* 項目選択時の処理
*/
onClick?: (props: {
/**
* @deprecated onClick 関数内で独自にリソースを再取得する関数を呼び出してください。
* IndexResourceContainerを利用している場合は、 children の props にある refetchResources を利用してください。
*/
refetchResources?: () => Promise ) => void;
}) => void;
/**
* 項目選択時の遷移先URL
*/
url?: string;
/**
* 項目選択時の遷移を別タブで行う
* urlと合わせて指定する
*/
targetBlank?: boolean;
/**
* クライアントルーティングをしている場合(SPAな遷移をする場合)に指定します
* default: true
*/
selfWindowNavigation?: boolean;
/**
* 項目を非活性にします
*/
disabled?: boolean;
/**
* メニューを選択したときにカスタムモーダルを表示する場合に指定します
* @deprecated カスタムモーダルの表示制御は、 onClick プロパティをきっかけに、プロダクト側で行なってください
*/
renderCustomModal?: IndexPageRenderCustomModalType;
/**
* ボタンの見た目を指定します
*/
appearance?: ButtonAppearanceType;
/**
* 動作に危険性が伴う場合に指定します
*/
danger?: boolean;
/**
* アイコンとして表示するコンポーネントを指定します
*/
IconComponent?: React.ComponentType;
}[];
subActions?: ({
type?: 'selectable';
/**
* ラベル
*/
label: string;
/**
* 項目選択時の処理
*/
onClick?: (props: {
/**
* @deprecated onClick 関数内で独自にリソースを再取得する関数を呼び出してください。
* IndexResourceContainerを利用している場合は、 children の props にある refetchResources を利用してください。
*/
refetchResources?: () => Promise ) => void;
}) => void;
/**
* 項目選択時の遷移先URL
*/
url?: string;
/**
* 項目選択時の遷移を別タブで行う
* urlと合わせて指定する
*/
targetBlank?: boolean;
/**
* クライアントルーティングをしている場合(SPAな遷移をする場合)に指定します
* default: true
*/
selfWindowNavigation?: boolean;
/**
* 項目を非活性にします
*/
disabled?: boolean;
/**
* メニューを選択したときにカスタムモーダルを表示する場合に指定します
* @deprecated カスタムモーダルの表示制御は、 onClick プロパティをきっかけに、プロダクト側で行なってください
*/
renderCustomModal?: IndexPageRenderCustomModalType;
} | {
/**
* 項目間の区切り線を表示します
*/
type: 'rule';
})[];
};
type ScopeSelectorDropdownContent = {
type: 'dropdown';
label: string;
dropdownContents: ({
onClick?: (props: {
/**
* @deprecated onClick 関数内で独自にリソースを再取得する関数を呼び出してください。
* IndexResourceContainerを利用している場合は、 children の props にある refetchResources を利用してください。
*/
refetchResources: () => Promise ) => void;
}) => void;
} & ScopeSelectorDropdownContent = {
/**
* ページのタイトルを設定します
* ヘッダー領域の左側に太字で表示されます
* WARN: IndexPageTemplate における titleArea.label の値を設定してください
*/
title?: string;
/**
* ページに関する説明文章を設定します
* タイトルの横にヘルプアイコンとして表示され、クリックするとポップオーバーで説明が表示されます
* 説明はMessageIconコンポーネントで表示されます
*/
description?: MessageContentType[];
/**
* タイトルエリアに配置するメニュー(インポート・エクスポート・設定導線・ドメイン固有のアクション)を設定します
* ヘッダー領域の右側に表示され、mainActionsは常に表示、subActionsはドロップダウンメニューとして表示されます
* WARN: IndexPageTemplate での titleArea.operations と機能は同等ですが、型定義が変更されています
*/
operations?: IndexHeaderOperationType ;
/**
* 一覧画面が何らかのサブ画面の位置付けを持っている場合に、前のページに戻るためのボタンを表示します
* タイトルの左側に戻るアイコンとして表示されます
* react-router等を用いて遷移する場合は selfWindowNavigation を設定してください
*/
prevPage?: {
/**
* 戻り先のURL
*/
url: string;
/**
* クライアントルーティングをしている場合(SPAな遷移をする場合)に指定します
* default: false
*/
selfWindowNavigation?: boolean;
};
/**
* ページに表示するオブジェクトのスコープを選択するナビゲーション
* タイトルの下に表示され、データの範囲や期間を選択するためのUIを提供します
*
* 以下の3種類から選択できます:
* - dropdown: ドロップダウンメニューによるカテゴリやステータスなどの選択
* - period: 単一の日付や月の選択
* - periodRange: 開始日〜終了日の範囲指定
*
* @experimental type: 'dropdown' 以外の設定は、今後のアップデート時に破壊的変更が入る可能性があります
*/
scopeSelector?: IndexHeaderAreaScopeSelectorDropdownType | IndexHeaderAreaScopeSelectorPeriodType | IndexHeaderAreaScopeSelectorPeriodRangeType;
};
export {};