Documentation: getEnumerationContent Function in intlayer

    説明:

    getEnumerationContent 関数は、列挙オブジェクト内の事前定義された条件に基づいて特定の数量に対応するコンテンツを取得します。条件はキーとして定義され、その優先順位はオブジェクト内の順序によって決まります。

    パラメーター:

    • enumerationContent: QuantityContent<Content>

      • 説明: キーが条件を示し(例: <=, <, >=, =)、値が対応するコンテンツを示すオブジェクト。キーの順序が一致の優先順位を定義します。
      • タイプ: QuantityContent<Content>
        • Content は任意の型が可能です。
    • quantity: number

      • 説明: enumerationContent の条件に照合するために使用される数値です。
      • タイプ: number

    戻り値:

    • タイプ: Content
    • 説明: enumerationContent 内の最初の一致する条件に対応するコンテンツ。一致が見つからない場合は、実装に基づいてデフォルトの処理(例: エラーまたはフォールバックコンテンツ)を行います。

    使用例:

    基本的な使用法:

    typescript
    import { getEnumerationContent } from "@intlayer/config/client";
    
    const content = getEnumerationContent(
      {
        "<=-2.3": "あなたは -2.3 より少ない",
        "<1": "あなたは1未満です",
        "2": "あなたは二つあります",
        ">=3": "あなたは三つ以上あります",
      },
      2
    );
    
    console.log(content); // 出力: "あなたは二つあります"
    

    条件の優先順位:

    typescript
    const content = getEnumerationContent(
      {
        "<4": "あなたは四つ未満です",
        "2": "あなたは二つあります",
      },
      2
    );
    
    console.log(content); // 出力: "あなたは四つ未満です"
    

    エッジケース:

    • 一致する条件がない:

      • もし提供された数量に一致する条件がない場合、関数は undefined を返すか、デフォルト/フォールバックシナリオを明示的に処理します。
    • 曖昧な条件:

      • 条件が重複する場合、最初に一致する条件(オブジェクトの順序に基づく)が優先されます。
    • 無効なキー:

      • 関数は、enumerationContent 内のすべてのキーが有効で条件として解析可能であると仮定します。無効または不適切にフォーマットされたキーは予期しない動作を引き起こす可能性があります。
    • TypeScript の強制:

      • 関数は、Content 型がすべてのキーで一貫していることを確実にし、取得されたコンテンツの型安全性を保証します。

    注意事項:

    • findMatchingCondition ユーティリティは、指定された数量に基づいて適切な条件を決定するために使用されます。

    このドキュメントを改善するアイデアがある場合は、GitHubでプルリクエストを送信することで自由に貢献してください。

    ドキュメントへのGitHubリンク