system-folder-splits.ts1.7 KBView on GitHub
export type SystemFolderSplit = {
  folder: string;
  label: string;
  key=[redacted];
  inboxName: string;
  compiledQuery: string;
  queryHash: string;
};

export const SYSTEM_FOLDER_SPLITS: Record<string, SystemFolderSplit> = {
  done: {
    folder: 'done',
    label: 'Done',
    key=[redacted],
    inboxName: 'Done',
    compiledQuery: 'in:archive',
    queryHash: 'system-folder:done:in:archive',
  },
  draft: {
    folder: 'draft',
    label: 'Drafts',
    key=[redacted],
    inboxName: 'Drafts',
    compiledQuery: 'in:drafts',
    queryHash: 'system-folder:draft:in:drafts',
  },
  sent: {
    folder: 'sent',
    label: 'Sent',
    key=[redacted],
    inboxName: 'Sent',
    compiledQuery: 'in:sent',
    queryHash: 'system-folder:sent:in:sent',
  },
  archive: {
    folder: 'archive',
    label: 'Archive',
    key=[redacted],
    inboxName: 'Archive',
    compiledQuery: 'in:archive',
    queryHash: 'system-folder:archive:in:archive',
  },
  spam: {
    folder: 'spam',
    label: 'Spam',
    key=[redacted],
    inboxName: 'Spam',
    compiledQuery: 'in:spam',
    queryHash: 'system-folder:spam:in:spam',
  },
  bin: {
    folder: 'bin',
    label: 'Trash',
    key=[redacted],
    inboxName: 'Trash',
    compiledQuery: 'in:trash',
    queryHash: 'system-folder:bin:in:trash',
  },
  all: {
    folder: 'all',
    label: 'All Mail',
    key=[redacted],
    inboxName: 'All Mail',
    compiledQuery: 'in:anywhere',
    queryHash: 'system-folder:all:in:anywhere',
  },
};

export const ALWAYS_ACTIVE_SYSTEM_SPLIT_FOLDERS = Object.keys(SYSTEM_FOLDER_SPLITS);

export function getSystemFolderSplit(folder: string): SystemFolderSplit | undefined {
  return SYSTEM_FOLDER_SPLITS[folder];
}