Documentation / joplin-plugin-api / ExportModule
Interface: ExportModule
Used to implement a module to export data from Joplin. View the demo plugin for an example.
In general, all the event handlers you'll need to implement take a context
object as a first argument. This object will contain the export or import path as well as various optional properties, such as which notes or notebooks need to be exported.
To get a better sense of what it will contain it can be useful to print it using console.info(context)
.
Properties
description
description:
string
The description that will appear in the UI, for example in the menu item.
Defined in
fileExtensions?
optional
fileExtensions:string
[]
The extensions of the files exported by your module. For example, it is ["htm", "html"]
for the HTML module, and just ["jex"]
for the JEX module.
Defined in
format
format:
string
The format to be exported, eg "enex", "jex", "json", etc.
Defined in
isNoteArchive
isNoteArchive:
boolean
Only applies to single file exporters or importers It tells whether the format can package multiple notes into one file. For example JEX or ENEX can, but HTML cannot.
Defined in
target
target:
FileSystemItem
Whether the module will export a single file or multiple files in a directory. It affects the open dialog that will be presented to the user when using your exporter.
Defined in
Methods
onClose()
onClose(
context
):Promise
<void
>
Called when the export process is done.
Parameters
• context: ExportContext
Returns
Promise
<void
>
Defined in
onInit()
onInit(
context
):Promise
<void
>
Called when the export process starts.
Parameters
• context: ExportContext
Returns
Promise
<void
>
Defined in
onProcessItem()
onProcessItem(
context
,itemType
,item
):Promise
<void
>
Called when an item needs to be processed. An "item" can be any Joplin object, such as a note, a folder, a notebook, etc.
Parameters
• context: ExportContext
• itemType: number
• item: any
Returns
Promise
<void
>
Defined in
onProcessResource()
onProcessResource(
context
,resource
,filePath
):Promise
<void
>
Called when a resource file needs to be exported.
Parameters
• context: ExportContext
• resource: any
• filePath: string
Returns
Promise
<void
>