Skip to main content
Version: 1.x

IMSearch Provider

プラットフォーム​

  • ios
  • android

概要​

ネストされたコンポーネント間で共通の検索モーダルを利用できるようにします。

依存関係​

info

Smartlimeは全てのProviderを包括しているため、Smartlimeが配置されている場合にはこの項目の内容は無視することができます。

IMSearchはIMOathに依存しています。
IMSearchを利用する場合は、常にIMOathと合わせて配置してください。

import { IMTenant, IMOAuth, IMSearch } from "@intra-mart/smartlime";
import { DefaultAuthScreen } from "@intra-mart/smartlime-ui";

const App = () => {
return (
<IMTenant
baseUrl={'https://example.org/imart'}
tenantId={'default'}
>
<IMOAuth
requestConfig={{
clientId: 'exampleId',
clientSecret: 'exampleSecret',
scopes: ['exampleScope'],
redirectUri: 'exp://example.org:19000',
}}
>
<DefaultAuthScreen>
<IMSearch>
</IMSearch>
</DefaultAuthScreen>
</IMOAuth>
</IMTenant>
)
}
caution

IMSearch内部で利用されるアクセストークンはIMOAuthあるいはSmartlimeから取得されるため、これらのProviderが上位層に存在しない場合、IMSearchは常にエラーを返します。

Provider​

このProviderはネストされたコンポーネントで検索の機能を利用できるようにします。

import { IMSearch } from "@intra-mart/smartlime";

const App = () => {
return (
<IMSearch>
{/* content */}
</IMSearch>;
)
}

Props​

NameTypeRequired
SearchComponentConmponentyes
searchContextContextno

SearchComponent​

検索モーダルが表示される際に呼び出されるコンポーネントを指定できます。
検索コンポーネントにはいくつかのpropsが渡されます。

Props​

NameTypeRequired
searchTargetstringyes
searchTypestringyes
paramStringstring(json)yes
successfunctionyes
cancelfunctionyes
errorfunctionyes
searchTarget​

検索の種別を表す文字列です。

ユーザ検索 > jp.co.intra_mart.master.search.user
組織検索 > jp.co.intra_mart.master.search.department
パブリックグループ検索 > jp.co.intra_mart.master.search.public_group
etc...
searchType​

検索のタイプを表す文字列です。

  • 単一検索の場合
    • single
  • 複数検索の場合
    • multiple
paramString​

検索についてのパラメータを含むjson文字列です。

success​

検索が完了した場合に使用するFcuntionです。
successが実行されると検索モーダルが非表示になり、呼び出し元に検索が正常に完了した事が通知されます。

cancel​

検索がキャンセルされた場合に使用するFcuntionです。
cancelが実行されると検索モーダルが非表示になり、呼び出し元に検索がキャンセルされた事が通知されます。

error​

検索中にエラーが発生した場合に使用するFcuntionです。
errorが実行されると検索モーダルが非表示になり、呼び出し元に検索が異常終了した事が通知されます。

searchContext​

context instanceを設定します。
このPropを設定した場合、ネストされたコンポーネント全てで同じcontextを利用しなければならない事に注意してください。
あなたがcontextについて詳しく知らない場合このオプションは利用するべきではありません。