型・APIリファレンス
    Preparing search index...

    Function useSearchConditionAiAutocomplete

    • 通常検索条件のオートコンプリート機能を提供するcomposable

      トリガープロパティのフォーカスアウト時に、関連するプロパティの値を サーバー側で補完して自動入力する機能を実現する。

      Returns {
          checkAllTriggersFilled: (
              normalSearchCondition: NormalSearchCondition,
              triggerProperties: AiAutocompleteProperty[],
          ) => boolean;
          executeAiAutocomplete: (
              param: AiAutocompleteParams,
          ) => Promise<WebApiResponse<AiAutocompleteResponse>>;
          findAiAutocompleteTargets: (
              blurredPropertyName: string,
              allElements: SearchConditionElement[],
          ) => AiAutocompleteTarget[];
          getTriggerValues: (
              normalSearchCondition: NormalSearchCondition,
              targets: AiAutocompleteTarget[],
          ) => AiAutocompleteParams;
          hasInFlightRequest: () => boolean;
          isValueFilled: (value: unknown) => boolean;
          setNormalSearchConditionValue: (
              params: {
                  data: AiAutocompleteResponse;
                  searchCondition: NormalSearchCondition;
              },
          ) => AiAutocompleteUpdateResult;
      }

      オートコンプリート関連の関数群

      • checkAllTriggersFilled: (
            normalSearchCondition: NormalSearchCondition,
            triggerProperties: AiAutocompleteProperty[],
        ) => boolean

        全てのトリガープロパティが入力済みであるかを判定する

        オートコンプリートを実行するには、設定されたトリガープロパティが 全て入力されている必要がある。

      • executeAiAutocomplete: (param: AiAutocompleteParams) => Promise<WebApiResponse<AiAutocompleteResponse>>

        オートコンプリートAPIを実行する

      • findAiAutocompleteTargets: (
            blurredPropertyName: string,
            allElements: SearchConditionElement[],
        ) => AiAutocompleteTarget[]

        フォーカスアウトしたプロパティに関連するオートコンプリート対象を検索する

        検索条件要素の中から、blurされたプロパティをトリガーに持つ オートコンプリート設定を持つ要素を抽出する。

      • getTriggerValues: (
            normalSearchCondition: NormalSearchCondition,
            targets: AiAutocompleteTarget[],
        ) => AiAutocompleteParams

        トリガープロパティの値を収集し、APIリクエストパラメータを構築する

        各対象プロパティについて、トリガーが全て入力済みの場合のみ リクエストパラメータに含める。

      • hasInFlightRequest: () => boolean

        現在、画面内のいずれかのプロパティに対して実行中のリクエストがあるかを返す (外部でチェックして skip-on-inflight を実現するためにエクスポートする)

      • isValueFilled: (value: unknown) => boolean

        値が入力済みであるかを判定する

        null、空文字、空配列、レンジオブジェクトのfrom/toの両方が未入力の場合はfalseを返す

      • setNormalSearchConditionValue: (
            params: {
                data: AiAutocompleteResponse;
                searchCondition: NormalSearchCondition;
            },
        ) => AiAutocompleteUpdateResult

        オートコンプリートレスポンスの値を検索条件に反映する

        レスポンスの各プロパティ値を以下の優先順で判定・処理する:

        1. エラーレスポンス( error: "..." )→ エラー情報として返却、値は更新しない
        2. レンジ値( from: "...", to: "..." )→ 既存のレンジ構造を維持して値のみ更新
        3. 通常の値 → そのまま上書き