// en/promo_codes
export const promo_codes = {
  input_label: 'Have a promo code?',
  input_placeholder: 'Enter code',
  apply_button: 'Apply',
  remove_button: 'Remove',
  discount_line: 'Discount ({{code}})',
  applied_summary: '{{amount}} discount applied',
  loading: 'Checking code...',
  errors: {
    NOT_FOUND: 'Code not recognised',
    INACTIVE: 'This code is not active',
    NOT_YET_VALID: 'This code is not yet active',
    EXPIRED: 'This code is no longer active',
    OUT_OF_QUOTA: 'This code has been fully redeemed',
    USER_QUOTA_EXCEEDED: "You've already used this code",
    SUBTOTAL_TOO_LOW: 'Cart total below minimum for this code',
    SUBTOTAL_TOO_HIGH: 'Cart total above maximum for this code',
    SCOPE_MISMATCH: "Code doesn't apply to items in your cart",
    NEW_USERS_ONLY: 'This code is for new customers only',
    CLUB_ONLY: 'This code is for club members only',
    NOT_IN_ALLOWLIST: 'This code is not available for your account',
    PLATFORM_FUND_INSUFFICIENT: "This code can't be applied to your current cart",
    VENDOR_FUND_INSUFFICIENT: "This code can't be applied to your current cart",
    PROMO_REJECTED: 'Code rejected during payment',
  },
  admin: {
    page_title: 'Promo Codes',
    new_code: 'New Code',
    empty_title: 'No promo codes',
    empty_desc: 'No promo codes yet. Create your first code to offer customers discounts.',
    list_error: 'Failed to load promo codes. Try again.',
    confirm_archive:
      "Archive code {code}? Customers will no longer be able to redeem it. You can reactivate it later from the code's edit page.",
    archived_ok: 'Code archived',
    archived_error: 'Failed to archive code',
    table: {
      code: 'Code',
      kind: 'Type',
      value: 'Value',
      funder: 'Funder',
      status: 'Status',
      redemption_count: 'Redemptions',
      redemption_count_tooltip:
        'How many times customers have used this code. If you set a total cap, it appears after the slash (e.g. 3 / 100).',
      valid_until: 'Valid until',
      actions: 'Actions',
      edit: 'Edit',
      archive: 'Archive',
      kind_percentage: 'Percentage off',
      kind_fixed_amount: 'Fixed amount',
      kind_bogo: 'Buy X get Y',
      unlimited: 'unlimited',
      bogo_value: 'Buy {{buy}} get {{free}}',
    },
    form: {
      create_title: 'New Promo Code',
      edit_title: 'Edit Promo Code',
      saved_ok: 'Code saved',
      saved_error: 'Failed to save code',
      code_label: 'Code',
      code_hint:
        'English letters and digits only; saved in UPPERCASE. 3–64 characters: letters, digits, hyphen or underscore.',
      description_label: 'Description',
      description_placeholder: 'Internal description (optional)',
      status_label: 'Status',
      status_active: 'Active',
      status_paused: 'Paused',
      status_archived: 'Archived',
      kind_label: 'Discount Type',
      kind_percentage: 'Percentage off',
      kind_fixed: 'Fixed amount off',
      kind_bogo: 'Buy X get Y free',
      value_bps_label: 'Discount percentage (%)',
      value_amount_label: 'Discount amount (₪)',
      max_cap_amount_label: 'Maximum discount cap (₪, optional)',
      bogo_buy_label: 'Buy quantity',
      bogo_get_label: 'Free quantity',
      funder_label: 'Funder',
      funder_platform: 'Platform',
      funder_vendor: 'Vendor',
      vendor_id_label: 'Funding vendor ID (UUID)',
      vendor_id_hint: 'This vendor absorbs the discount cost at settlement.',
      vendor_id_placeholder: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
      scope_label: 'Scope',
      scope_all: 'All deals',
      scope_deals: 'Specific deals',
      scope_categories: 'Categories',
      scope_tags: 'Tags',
      scope_vendor: 'Single vendor',
      scope_ids_label: 'IDs',
      scope_ids_deals: 'Deal IDs',
      scope_ids_categories: 'Category IDs',
      scope_ids_tags: 'Tag IDs',
      scope_ids_vendor: 'Vendor ID',
      scope_ids_placeholder: 'uuid1, uuid2, ...',
      scope_ids_hint: "Comma-separated UUIDs. Copy the ID from the item's admin page.",
      scope_vendor_placeholder: 'Vendor UUID',
      validity_label: 'Validity window',
      from: 'From',
      until: 'Until',
      caps_label: 'Caps',
      min_subtotal_label: 'Minimum cart subtotal (₪)',
      max_subtotal_label: 'Maximum cart subtotal (₪)',
      total_cap: 'Total redemptions (empty = unlimited)',
      per_user_cap: 'Redemptions per user',
      cap_zero_hint: '0 = no limit',
      eligibility_label: 'Eligibility',
      first_purchase_only: 'First purchase only',
      club_only: 'Club members only',
      user_allowlist_label: 'User allowlist',
      user_allowlist_placeholder: 'uuid1, uuid2, ...',
      user_allowlist_hint:
        "Comma-separated user UUIDs. Copy the ID from the user's page in User Management.",
      optional: 'Optional',
      submit: 'Save',
      cancel: 'Cancel',
      err_percentage_required: 'Discount percentage is required',
      err_amount_required: 'Discount amount is required',
      err_bogo_required: 'Buy and free quantities are required',
      err_vendor_required: 'Select a vendor when the vendor funds the discount',
      err_code_format: 'Code must be 3–64 characters: letters, digits, hyphen or underscore',
    },
  },
  vendor: {
    page_title: 'My Promo Codes',
    new_code: 'New Code',
    note: 'Your code applies only to deals you own.',
    empty_title: 'No promo codes yet',
    empty_desc:
      'Create a promo code to give customers a discount on your deals — by percentage, fixed amount, or a buy-and-get offer.',
    no_active_deals:
      'You have no active deals yet. To limit a code to specific deals, publish a deal first.',
    deal_picker_empty: 'No active deals',
    scope_all_my_deals: 'All my deals',
    archived_readonly:
      'Archived — this code is retired and cannot be edited. Create a new code instead.',
  },
  vendor_page_title: 'My Promo Codes',
  vendor_new_title: 'New Promo Code',
  vendor_edit_title: 'Edit Promo Code',
} as const;
