/**
 * Shared Filter Snippets
 * Reusable filter definitions for data tables
 */

export const statusFilter = {
  key: 'status',
  label: 'Status',
  type: 'select',
  options: [
    { value: '', label: 'All Status' },
    { value: 'active', label: 'Active' },
    { value: 'pending', label: 'Pending' },
    { value: 'archived', label: 'Archived' },
  ],
};

export const intentFilter = {
  key: 'intent',
  label: 'Intent',
  type: 'select',
  options: [
    { value: '', label: 'All Intent' },
    { value: 'informational', label: 'Informational' },
    { value: 'transactional', label: 'Transactional' },
    { value: 'navigational', label: 'Navigational' },
    { value: 'commercial', label: 'Commercial' },
  ],
};

export const difficultyFilter = {
  key: 'difficulty',
  label: 'Difficulty',
  type: 'select',
  options: [
    { value: '', label: 'All Difficulty' },
    { value: '1', label: 'Very Easy (1)' },
    { value: '2', label: 'Easy (2)' },
    { value: '3', label: 'Medium (3)' },
    { value: '4', label: 'Hard (4)' },
    { value: '5', label: 'Very Hard (5)' },
  ],
};

export const dateRangeFilter = {
  key: 'date_range',
  label: 'Date Range',
  type: 'daterange',
};

export const volumeRangeFilter = {
  key: 'volume_range',
  label: 'Volume Range',
  type: 'range',
  min: 0,
  max: 100000,
  step: 100,
};

export const searchFilter = {
  key: 'search',
  label: 'Search',
  type: 'text',
  placeholder: 'Search keywords...',
};

export const clusterFilter = {
  key: 'cluster_id',
  label: 'Cluster',
  type: 'select',
  options: [], // Will be populated dynamically
};

