selectors.ts 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. export const promptSelector = '[data-component="prompt-input"]'
  2. export const terminalPanelSelector = '#terminal-panel[aria-hidden="false"]'
  3. export const terminalSelector = `${terminalPanelSelector} [data-component="terminal"]`
  4. export const sessionComposerDockSelector = '[data-component="session-prompt-dock"]'
  5. export const questionDockSelector = '[data-component="dock-prompt"][data-kind="question"]'
  6. export const permissionDockSelector = '[data-component="dock-prompt"][data-kind="permission"]'
  7. export const permissionRejectSelector = `${permissionDockSelector} [data-slot="permission-footer-actions"] [data-component="button"]:nth-child(1)`
  8. export const permissionAllowAlwaysSelector = `${permissionDockSelector} [data-slot="permission-footer-actions"] [data-component="button"]:nth-child(2)`
  9. export const permissionAllowOnceSelector = `${permissionDockSelector} [data-slot="permission-footer-actions"] [data-component="button"]:nth-child(3)`
  10. export const sessionTodoDockSelector = '[data-component="session-todo-dock"]'
  11. export const sessionTodoToggleSelector = '[data-action="session-todo-toggle"]'
  12. export const sessionTodoToggleButtonSelector = '[data-action="session-todo-toggle-button"]'
  13. export const sessionTodoListSelector = '[data-slot="session-todo-list"]'
  14. export const modelVariantCycleSelector = '[data-action="model-variant-cycle"]'
  15. export const promptAgentSelector = '[data-component="prompt-agent-control"]'
  16. export const promptModelSelector = '[data-component="prompt-model-control"]'
  17. export const promptVariantSelector = '[data-component="prompt-variant-control"]'
  18. export const settingsLanguageSelectSelector = '[data-action="settings-language"]'
  19. export const settingsColorSchemeSelector = '[data-action="settings-color-scheme"]'
  20. export const settingsThemeSelector = '[data-action="settings-theme"]'
  21. export const settingsFontSelector = '[data-action="settings-font"]'
  22. export const settingsNotificationsAgentSelector = '[data-action="settings-notifications-agent"]'
  23. export const settingsNotificationsPermissionsSelector = '[data-action="settings-notifications-permissions"]'
  24. export const settingsNotificationsErrorsSelector = '[data-action="settings-notifications-errors"]'
  25. export const settingsSoundsAgentSelector = '[data-action="settings-sounds-agent"]'
  26. export const settingsSoundsPermissionsSelector = '[data-action="settings-sounds-permissions"]'
  27. export const settingsSoundsErrorsSelector = '[data-action="settings-sounds-errors"]'
  28. export const settingsUpdatesStartupSelector = '[data-action="settings-updates-startup"]'
  29. export const settingsReleaseNotesSelector = '[data-action="settings-release-notes"]'
  30. export const sidebarNavSelector = '[data-component="sidebar-nav-desktop"]'
  31. export const projectSwitchSelector = (slug: string) =>
  32. `${sidebarNavSelector} [data-action="project-switch"][data-project="${slug}"]`
  33. export const projectMenuTriggerSelector = (slug: string) =>
  34. `${sidebarNavSelector} [data-action="project-menu"][data-project="${slug}"]`
  35. export const projectCloseMenuSelector = (slug: string) => `[data-action="project-close-menu"][data-project="${slug}"]`
  36. export const projectClearNotificationsSelector = (slug: string) =>
  37. `[data-action="project-clear-notifications"][data-project="${slug}"]`
  38. export const projectWorkspacesToggleSelector = (slug: string) =>
  39. `[data-action="project-workspaces-toggle"][data-project="${slug}"]`
  40. export const titlebarRightSelector = "#opencode-titlebar-right"
  41. export const popoverBodySelector = '[data-slot="popover-body"]'
  42. export const dropdownMenuTriggerSelector = '[data-slot="dropdown-menu-trigger"]'
  43. export const dropdownMenuContentSelector = '[data-component="dropdown-menu-content"]'
  44. export const inlineInputSelector = '[data-component="inline-input"]'
  45. export const sessionItemSelector = (sessionID: string) => `${sidebarNavSelector} [data-session-id="${sessionID}"]`
  46. export const workspaceItemSelector = (slug: string) =>
  47. `${sidebarNavSelector} [data-component="workspace-item"][data-workspace="${slug}"]`
  48. export const workspaceMenuTriggerSelector = (slug: string) =>
  49. `${sidebarNavSelector} [data-action="workspace-menu"][data-workspace="${slug}"]`
  50. export const workspaceNewSessionSelector = (slug: string) =>
  51. `${sidebarNavSelector} [data-action="workspace-new-session"][data-workspace="${slug}"]`
  52. export const listItemSelector = '[data-slot="list-item"]'
  53. export const listItemKeyStartsWithSelector = (prefix: string) => `${listItemSelector}[data-key^="${prefix}"]`
  54. export const listItemKeySelector = (key: string) => `${listItemSelector}[data-key="${key}"]`
  55. export const keybindButtonSelector = (id: string) => `[data-keybind-id="${id}"]`