{
  "version": 3,
  "sources": ["../../../../src/lib/ui/hooks/useExportAs.ts"],
  "sourcesContent": ["import { assert, defineMessages, TLExportType, TLShapeId, useMaybeEditor } from '@tldraw/editor'\nimport { useCallback } from 'react'\nimport { exportAs } from '../../utils/export/exportAs'\nimport { useToasts } from '../context/toasts'\nimport { useTranslation } from './useTranslation/useTranslation'\n\nconst messages = defineMessages({\n\ttoastErrorExportFailDesc: {\n\t\tid: 'toast.error.export-fail.desc',\n\t\tdefaultMessage: 'Failed to export image',\n\t},\n\ttoastErrorExportFailTitle: {\n\t\tid: 'toast.error.export-fail.title',\n\t\tdefaultMessage: 'Failed export',\n\t},\n})\n\n/** @public */\nexport function useExportAs() {\n\tconst editor = useMaybeEditor()\n\tconst { addToast } = useToasts()\n\tconst msg = useTranslation()\n\n\treturn useCallback(\n\t\t(ids: TLShapeId[], opts: { format?: TLExportType; name?: string; scale?: number } = {}) => {\n\t\t\tassert(editor, 'useExportAs: editor is required')\n\t\t\tconst { format = 'png', name, scale = 1 } = opts\n\t\t\texportAs(editor, ids, {\n\t\t\t\tformat,\n\t\t\t\tname,\n\t\t\t\tscale,\n\t\t\t}).catch((e) => {\n\t\t\t\tconsole.error(e.message)\n\t\t\t\taddToast({\n\t\t\t\t\tid: 'export-fail',\n\t\t\t\t\ttitle: msg(messages.toastErrorExportFailTitle),\n\t\t\t\t\tdescription: msg(messages.toastErrorExportFailDesc),\n\t\t\t\t\tseverity: 'error',\n\t\t\t\t})\n\t\t\t})\n\t\t},\n\t\t[editor, addToast, msg]\n\t)\n}\n"],
  "mappings": "AAAA,SAAS,QAAQ,gBAAyC,sBAAsB;AAChF,SAAS,mBAAmB;AAC5B,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAC1B,SAAS,sBAAsB;AAE/B,MAAM,WAAW,eAAe;AAAA,EAC/B,0BAA0B;AAAA,IACzB,IAAI;AAAA,IACJ,gBAAgB;AAAA,EACjB;AAAA,EACA,2BAA2B;AAAA,IAC1B,IAAI;AAAA,IACJ,gBAAgB;AAAA,EACjB;AACD,CAAC;AAGM,SAAS,cAAc;AAC7B,QAAM,SAAS,eAAe;AAC9B,QAAM,EAAE,SAAS,IAAI,UAAU;AAC/B,QAAM,MAAM,eAAe;AAE3B,SAAO;AAAA,IACN,CAAC,KAAkB,OAAiE,CAAC,MAAM;AAC1F,aAAO,QAAQ,iCAAiC;AAChD,YAAM,EAAE,SAAS,OAAO,MAAM,QAAQ,EAAE,IAAI;AAC5C,eAAS,QAAQ,KAAK;AAAA,QACrB;AAAA,QACA;AAAA,QACA;AAAA,MACD,CAAC,EAAE,MAAM,CAAC,MAAM;AACf,gBAAQ,MAAM,EAAE,OAAO;AACvB,iBAAS;AAAA,UACR,IAAI;AAAA,UACJ,OAAO,IAAI,SAAS,yBAAyB;AAAA,UAC7C,aAAa,IAAI,SAAS,wBAAwB;AAAA,UAClD,UAAU;AAAA,QACX,CAAC;AAAA,MACF,CAAC;AAAA,IACF;AAAA,IACA,CAAC,QAAQ,UAAU,GAAG;AAAA,EACvB;AACD;",
  "names": []
}
