my-multiplayer-app-2 / client /overrides.ts
Jaimodiji's picture
Upload folder using huggingface_hub
9f072e4 verified
Raw
History Blame
1.88 kB
import { TLUiOverrides } from 'tldraw'
import { exportToImage } from './utils/exportUtils'
export const getUiOverrides = (roomId: string): TLUiOverrides => {
return {
actions: (editor, actions) => {
const newActions = { ...actions }
const safeExport = async (format: 'png' | 'svg' | 'pdf' = 'png') => {
console.log(`Intercepted export action for format: ${format}`)
await exportToImage(editor, roomId, format)
}
// Override PNG export actions
const pngActions = [
'export-as-png',
'export-all-as-png',
'export-selected-as-png',
]
pngActions.forEach(id => {
if (newActions[id]) {
newActions[id] = {
...newActions[id],
onSelect: async () => await safeExport('png')
}
}
})
// Override SVG export actions
const svgActions = [
'export-as-svg',
'export-all-as-svg',
'export-selected-as-svg'
]
svgActions.forEach(id => {
if (newActions[id]) {
newActions[id] = {
...newActions[id],
onSelect: async () => await safeExport('svg')
}
}
})
// JSON export (leave as default or handle if needed)
if (newActions['export-as-json']) {
// For now, let default JSON export happen or redirect if you want native share
// If you want to use the new "Download File" logic instead:
// newActions['export-as-json'] = { ... }
}
return newActions
},
}
}