export const bookItems = ['GAAP', 'FEDERAL', 'STATE', 'AMT', 'ACE', 'USER'];

export const statusItems = ['in_service', 'cip', 'reserved', 'checked_out', 'disposed', 'retired'];

export const conventionItems = [
  { title: 'Half-year', value: 'half_year' },
  { title: 'Mid-quarter', value: 'mid_quarter' },
  { title: 'Mid-month', value: 'mid_month' },
  { title: 'Full-month', value: 'full_month' },
  { title: 'None', value: 'none' }
];

export const newUsedItems = [
  { title: 'New', value: 'new' },
  { title: 'Used', value: 'used' }
];

export const taskTypeItems = ['maintenance', 'inspection', 'calibration', 'renewal', 'compliance', 'other'];

export const conditionItems = ['excellent', 'good', 'fair', 'poor', 'out_of_service'];

export const disposalMethodItems = [
  { title: 'Sale', value: 'sale' },
  { title: 'Exchange', value: 'exchange' },
  { title: 'Involuntary conversion', value: 'involuntary_conversion' },
  { title: 'Like-kind exchange', value: 'like_kind' },
  { title: 'Abandonment', value: 'abandonment' }
];

export const propertyTypeItems = [
  { title: '§1245 tangible personal property', value: '1245' },
  { title: '§1250 real property', value: '1250' },
  { title: 'Other', value: 'other' }
];

export const adjustmentTypeItems = [
  { title: 'Impairment', value: 'impairment' },
  { title: 'Write-down', value: 'write_down' },
  { title: 'Write-up', value: 'write_up' },
  { title: 'Revaluation', value: 'revaluation' }
];

export const contactTypeItems = [
  { title: 'Employee', value: 'employee' },
  { title: 'Vendor', value: 'vendor' },
  { title: 'Service provider', value: 'service_provider' },
  { title: 'Contractor', value: 'contractor' },
  { title: 'Work location', value: 'work_location' },
  { title: 'Other', value: 'other' }
];

export const creditTermItems = [
  { title: 'N/A', value: 'na' },
  { title: 'Net 30 days', value: 'net_30' },
  { title: 'Net 60 days', value: 'net_60' },
  { title: 'Net 90 days', value: 'net_90' },
  { title: 'Net 180 days', value: 'net_180' }
];

export const pmFrequencyUnits = [
  { title: 'Days', value: 'days' },
  { title: 'Weeks', value: 'weeks' },
  { title: 'Months', value: 'months' },
  { title: 'Quarters', value: 'quarters' },
  { title: 'Bi-yearly (6 months)', value: 'semiannual' },
  { title: 'Years', value: 'years' }
];

export const partStatusItems = [
  { title: 'Active', value: 'active' },
  { title: 'Inactive', value: 'inactive' },
  { title: 'Discontinued', value: 'discontinued' }
];

export const unitOfMeasureItems = [
  'each', 'box', 'case', 'pair', 'set', 'roll', 'foot', 'meter', 'liter', 'gallon', 'kg', 'lb'
];

export const partTransactionTypes = [
  { title: 'Receive (add stock)', value: 'receive' },
  { title: 'Issue (consume)', value: 'issue' },
  { title: 'Adjust (set on-hand count)', value: 'adjust' },
  { title: 'Reserve', value: 'reserve' },
  { title: 'Unreserve', value: 'unreserve' }
];

export const leaseFrequencyItems = [
  { title: 'Monthly', value: 'monthly' },
  { title: 'Quarterly', value: 'quarterly' },
  { title: 'Semiannual', value: 'semiannual' },
  { title: 'Annual', value: 'annual' }
];

export const customFieldTypes = [
  { title: 'Text', value: 'text' },
  { title: 'Number', value: 'numeric' },
  { title: 'Date', value: 'date' },
  { title: 'Checkbox', value: 'bool' }
];

export const themeItems = [
  { title: 'Dark', value: 'depreCoreDark', props: { subtitle: 'Default dark' } },
  { title: 'Light', value: 'depreCore', props: { subtitle: 'Default light' } },
  { title: 'Ocean', value: 'depreCoreOcean', props: { subtitle: 'Dark · teal' } },
  { title: 'Slate', value: 'depreCoreSlate', props: { subtitle: 'Dark · neutral' } },
  { title: 'High contrast', value: 'depreCoreContrast', props: { subtitle: 'Dark · accessible' } },
  { title: 'Sepia', value: 'depreCoreSepia', props: { subtitle: 'Light · warm' } }
];

export const darkThemes = ['depreCoreDark', 'depreCoreOcean', 'depreCoreSlate', 'depreCoreContrast'];

// Accessibility: user-adjustable base text size (scales the whole UI via the root font size).
export const fontSizeItems = [
  { title: 'Small', value: 'small', props: { subtitle: '88%' } },
  { title: 'Normal', value: 'normal', props: { subtitle: '100%' } },
  { title: 'Large', value: 'large', props: { subtitle: '113%' } },
  { title: 'Extra large', value: 'xlarge', props: { subtitle: '125%' } }
];

export const fontScaleMap = {
  small: '14px',
  normal: '16px',
  large: '18px',
  xlarge: '20px'
};

// Suggested accent colours; users may also enter any custom hex value.
export const accentPresets = [
  '#2457a6', '#006c6a', '#7c3aed', '#c2185b',
  '#b3261e', '#a56a00', '#2f7d4b', '#0277bd'
];

export const navItems = [
  { key: 'dashboard', label: 'Dashboard', icon: 'mdi-view-dashboard-outline' },
  {
    key: 'assets',
    label: 'Assets',
    icon: 'mdi-archive-search-outline',
    children: [
      { key: 'scan', label: 'Scan', icon: 'mdi-barcode-scan' },
      { key: 'assignments', label: 'Assignments', icon: 'mdi-account-switch-outline' },
      { key: 'templates', label: 'Templates', icon: 'mdi-form-select' }
    ]
  },
  { key: 'alerts', label: 'Alerts', icon: 'mdi-bell-alert-outline' },
  {
    key: 'pm',
    label: 'Maintenance',
    icon: 'mdi-wrench-clock',
    children: [
      { key: 'parts', label: 'Parts inventory', icon: 'mdi-package-variant-closed' }
    ]
  },
  { key: 'contacts', label: 'Contacts', icon: 'mdi-card-account-details-outline' },
  { key: 'reports', label: 'Reports', icon: 'mdi-chart-bar' },
  {
    key: 'financial',
    label: 'Financial',
    icon: 'mdi-finance',
    group: true,
    children: [
      { key: 'books', label: 'Books', icon: 'mdi-book-open-variant' },
      { key: 'gl-journals', label: 'GL and Journals', icon: 'mdi-book-account-outline' },
      { key: 'close', label: 'Period Close', icon: 'mdi-calendar-lock' },
      { key: 'section-179', label: 'Section 179', icon: 'mdi-cash-multiple' },
      { key: 'tax-rules', label: 'Tax rules', icon: 'mdi-scale-balance' }
    ]
  },
  {
    key: 'admin',
    label: 'Admin',
    icon: 'mdi-cog-outline',
    group: true,
    children: [
      { key: 'admin-users', label: 'Users & Teams', icon: 'mdi-account-group-outline' },
      { key: 'admin-security', label: 'Password & Security', icon: 'mdi-shield-key-outline' },
      { key: 'admin-audit', label: 'Activity & Audit Trail', icon: 'mdi-history' },
      { key: 'admin-logs', label: 'Application Logs', icon: 'mdi-text-box-search-outline' },
      { key: 'admin-config', label: 'Application Configuration', icon: 'mdi-tune' },
      { key: 'admin-integrations', label: 'Integrations', icon: 'mdi-transit-connection-variant' }
    ]
  }
];
