Remove electron dependency from browser build by using platform-agnostic dialog types (#982)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: thomasnordquist <7721625+thomasnordquist@users.noreply.github.com>
This commit is contained in:
59
events/DialogTypes.ts
Normal file
59
events/DialogTypes.ts
Normal file
@@ -0,0 +1,59 @@
|
||||
/**
|
||||
* Browser-compatible dialog type definitions
|
||||
* These types mirror Electron's dialog types but don't require the electron package
|
||||
*/
|
||||
|
||||
export interface FileFilter {
|
||||
name: string
|
||||
extensions: string[]
|
||||
}
|
||||
|
||||
export interface OpenDialogOptions {
|
||||
title?: string
|
||||
defaultPath?: string
|
||||
buttonLabel?: string
|
||||
filters?: FileFilter[]
|
||||
properties?: Array<
|
||||
| 'openFile'
|
||||
| 'openDirectory'
|
||||
| 'multiSelections'
|
||||
| 'showHiddenFiles'
|
||||
| 'createDirectory'
|
||||
| 'promptToCreate'
|
||||
| 'noResolveAliases'
|
||||
| 'treatPackageAsDirectory'
|
||||
| 'dontAddToRecent'
|
||||
>
|
||||
message?: string
|
||||
securityScopedBookmarks?: boolean
|
||||
}
|
||||
|
||||
export interface OpenDialogReturnValue {
|
||||
canceled: boolean
|
||||
filePaths: string[]
|
||||
bookmarks?: string[]
|
||||
}
|
||||
|
||||
export interface SaveDialogOptions {
|
||||
title?: string
|
||||
defaultPath?: string
|
||||
buttonLabel?: string
|
||||
filters?: FileFilter[]
|
||||
message?: string
|
||||
nameFieldLabel?: string
|
||||
showsTagField?: boolean
|
||||
properties?: Array<
|
||||
| 'showHiddenFiles'
|
||||
| 'createDirectory'
|
||||
| 'treatPackageAsDirectory'
|
||||
| 'showOverwriteConfirmation'
|
||||
| 'dontAddToRecent'
|
||||
>
|
||||
securityScopedBookmarks?: boolean
|
||||
}
|
||||
|
||||
export interface SaveDialogReturnValue {
|
||||
canceled: boolean
|
||||
filePath?: string
|
||||
bookmark?: string
|
||||
}
|
||||
Reference in New Issue
Block a user