// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.

/**
 * Auto-generated by 'os i18n extract' for locale 'ja-JP'.
 * Edit translations in place; re-run extract (with --merge) to fill new gaps.
 * Do not hand-edit the structure — only the leaf string values.
 */

import type { TranslationData } from '@objectstack/spec/system';

export const jaJPObjects: NonNullable<TranslationData['objects']> = {
  sys_record_share: {
    label: "レコード共有",
    pluralLabel: "レコード共有",
    description: "レコードごとの共有付与 — OWD に明示的なアクセスを追加",
    fields: {
      id: {
        label: "共有 ID"
      },
      object_name: {
        label: "オブジェクト",
        help: "共有レコードの短いオブジェクト名"
      },
      record_id: {
        label: "レコード",
        help: "object_name 内の共有レコードの主キー"
      },
      recipient_type: {
        label: "受信者タイプ",
        help: "付与を保持するプリンシパルの種別",
        options: {
          user: "ユーザー",
          group: "グループ",
          role: "ロール",
          role_and_subordinates: "ロールと下位階層",
          guest: "ゲスト"
        }
      },
      recipient_id: {
        label: "受信者",
        help: "アクセスを受け取るユーザー/グループ/ロールの ID"
      },
      access_level: {
        label: "アクセスレベル",
        help: "受信者に許可される操作 — read | edit | full（転送/共有/削除）",
        options: {
          read: "閲覧",
          edit: "編集",
          full: "フルアクセス"
        }
      },
      source: {
        label: "ソース",
        help: "この付与が存在する理由 — ルール評価者が調整に使用",
        options: {
          manual: "手動",
          rule: "ルール",
          team: "チーム",
          inherited: "継承"
        }
      },
      source_id: {
        label: "ソース ID",
        help: "source != manual の場合のルール名 / チーム ID"
      },
      granted_by: {
        label: "付与者",
        help: "付与を作成したユーザー（手動のみ）"
      },
      reason: {
        label: "理由",
        help: "受信者に表示されるオプションの自由記述説明"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    },
    _views: {
      granted_to_me: {
        label: "自分への付与"
      },
      granted_by_me: {
        label: "自分による付与"
      },
      by_object: {
        label: "オブジェクト別"
      },
      manual_grants: {
        label: "手動付与"
      },
      rule_grants: {
        label: "ルール付与"
      },
      all_shares: {
        label: "すべて"
      }
    }
  },
  sys_sharing_rule: {
    label: "共有ルール",
    pluralLabel: "共有ルール",
    description: "sys_record_share 付与を自動マテリアライズする宣言的共有ルール。コードの defineSharingRule() または Studio の条件ビルダーで作成します。",
    fields: {
      id: {
        label: "ルール ID"
      },
      organization_id: {
        label: "組織",
        help: "このルールを所有するテナント。null = グローバル"
      },
      name: {
        label: "名前",
        help: "一意の snake_case ルール名"
      },
      label: {
        label: "表示名"
      },
      description: {
        label: "説明"
      },
      object_name: {
        label: "オブジェクト",
        help: "短いオブジェクト名（例: opportunity、account）"
      },
      criteria_json: {
        label: "条件（FilterCondition JSON）",
        help: "object_name のレコードに対してマッチする JSON FilterCondition。空 = すべてにマッチ。"
      },
      recipient_type: {
        label: "受信者タイプ",
        help: "アクセスを受け取るプリンシパルの種別 — 評価時にユーザー付与に展開されます。`department` は parent_department_id ツリーをたどります。`team` はフラット（better-auth）。",
        options: {
          user: "ユーザー",
          team: "チーム",
          department: "部門",
          role: "ロール",
          queue: "キュー"
        }
      },
      recipient_id: {
        label: "受信者",
        help: "recipient_type に応じた部門 ID / チーム ID / ロール名 / キュー名 / ユーザー ID"
      },
      access_level: {
        label: "アクセスレベル",
        options: {
          read: "閲覧",
          edit: "編集",
          full: "フルアクセス"
        }
      },
      active: {
        label: "有効",
        help: "有効なルールのみがライフサイクル評価に参加します"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    },
    _views: {
      active: {
        label: "有効"
      },
      inactive: {
        label: "無効"
      },
      by_object: {
        label: "オブジェクト別"
      },
      all_rules: {
        label: "すべて"
      }
    }
  },
  sys_share_link: {
    label: "共有リンク",
    pluralLabel: "共有リンク",
    description: "単一レコードへのアクセスを許可する不透明なケーパビリティトークン。Notion / Figma スタイルの公開リンク共有。",
    fields: {
      id: {
        label: "リンク ID"
      },
      token: {
        label: "トークン",
        help: "URL セーフな不透明ランダムトークン（22 文字以上）。この行で唯一の機密情報です。"
      },
      object_name: {
        label: "オブジェクト",
        help: "共有対象レコードのオブジェクト短縮名（例: ai_conversation、contracts_contract）"
      },
      record_id: {
        label: "レコード",
        help: "object_name 内における共有対象レコードの主キー"
      },
      permission: {
        label: "権限",
        help: "リンク保持者がレコードに対して実行できる操作",
        options: {
          view: "閲覧",
          comment: "コメント",
          edit: "編集"
        }
      },
      audience: {
        label: "対象者",
        help: "トークン検証の上に適用されるアクセス制御レイヤー",
        options: {
          public: "公開（インデックス可能）",
          link_only: "リンクを知っている全員",
          signed_in: "サインイン済みユーザー",
          email: "特定のメールアドレス"
        }
      },
      expires_at: {
        label: "有効期限",
        help: "設定すると、このタイムスタンプ以降は resolveToken が null を返します"
      },
      email_allowlist: {
        label: "メール許可リスト",
        help: "audience=email のときに照合される小文字のメールアドレス"
      },
      password_hash: {
        label: "パスワードハッシュ",
        help: "Argon2/bcrypt ハッシュ。設定すると、表示前に UI がパスワードの入力を求めます。"
      },
      redact_fields: {
        label: "リンク単位のマスキング",
        help: "オブジェクト既定のマスキング集合に加えて、レスポンスから除外する追加フィールド"
      },
      label: {
        label: "ラベル",
        help: "共有ダイアログに表示される自由記述テキスト（例: \"ACME Q3 contract\"）"
      },
      revoked_at: {
        label: "失効日時",
        help: "設定すると、リンクは恒久的に無効化されます"
      },
      created_by: {
        label: "作成者",
        help: "リンクの発行者"
      },
      created_at: {
        label: "作成日時"
      },
      last_used_at: {
        label: "最終使用日時",
        help: "resolveToken によって記録されます。ダッシュボードでアクティブなリンクを強調表示するために使用されます"
      },
      use_count: {
        label: "使用回数",
        help: "解決が成功するたびに resolveToken によって加算されます"
      }
    },
    _views: {
      active_links: {
        label: "アクティブ"
      },
      by_me: {
        label: "自分が作成"
      },
      revoked: {
        label: "失効済み"
      },
      all_links: {
        label: "すべて"
      }
    }
  }
};
