@@ -3,6 +3,7 @@ import { SettingItemType } from "api/types";
33import { parseTemplate } from "./parser" ;
44import { doesFolderExist } from "./utils/folders" ;
55import { getTemplateFromId , getUserTempateSelection } from "./utils/templates" ;
6+ import { setDefaultTemplatesView } from "./views/defaultTemplates" ;
67
78joplin . plugins . register ( {
89 onStart : async function ( ) {
@@ -42,6 +43,10 @@ joplin.plugins.register({
4243 }
4344
4445
46+ // Register a dialog box
47+ const dialogViewHandle = await joplin . views . dialogs . create ( "dialog" ) ;
48+
49+
4550 // Register all commands
4651 await joplin . commands . register ( {
4752 name : "createNoteFromTemplate" ,
@@ -80,7 +85,14 @@ joplin.plugins.register({
8085 name : "showDefaultTemplates" ,
8186 label : "Show default templates" ,
8287 execute : async ( ) => {
83- console . log ( "Command" ) ;
88+ const noteTemplate = await getTemplateFromId ( await joplin . settings . value ( "defaultNoteTemplateId" ) ) ;
89+ const todoTemplate = await getTemplateFromId ( await joplin . settings . value ( "defaultTodoTemplateId" ) ) ;
90+
91+ const noteTemplateTitle = noteTemplate ? noteTemplate . title : null ;
92+ const todoTemplateTitle = todoTemplate ? todoTemplate . title : null ;
93+
94+ await setDefaultTemplatesView ( dialogViewHandle , noteTemplateTitle , todoTemplateTitle ) ;
95+ await joplin . views . dialogs . open ( dialogViewHandle ) ;
8496 }
8597 } ) ;
8698
@@ -112,13 +124,10 @@ joplin.plugins.register({
112124 name : "createNoteFromDefaultTemplate" ,
113125 label : "Create note from default template" ,
114126 execute : async ( ) => {
115- const templateId = await joplin . settings . value ( "defaultNoteTemplateId" ) ;
116- if ( templateId ) {
117- const template = await getTemplateFromId ( templateId )
118- if ( template ) {
119- await joplin . commands . execute ( "newNote" , await parseTemplate ( template . body ) ) ;
120- return ;
121- }
127+ const template = await getTemplateFromId ( await joplin . settings . value ( "defaultNoteTemplateId" ) ) ;
128+ if ( template ) {
129+ await joplin . commands . execute ( "newNote" , await parseTemplate ( template . body ) ) ;
130+ return ;
122131 }
123132 await joplin . views . dialogs . showMessageBox ( "No default note template is set." ) ;
124133 }
@@ -128,13 +137,10 @@ joplin.plugins.register({
128137 name : "createTodoFromDefaultTemplate" ,
129138 label : "Create to-do from default template" ,
130139 execute : async ( ) => {
131- const templateId = await joplin . settings . value ( "defaultTodoTemplateId" ) ;
132- if ( templateId ) {
133- const template = await getTemplateFromId ( templateId )
134- if ( template ) {
135- await joplin . commands . execute ( "newTodo" , await parseTemplate ( template . body ) ) ;
136- return ;
137- }
140+ const template = await getTemplateFromId ( await joplin . settings . value ( "defaultTodoTemplateId" ) ) ;
141+ if ( template ) {
142+ await joplin . commands . execute ( "newTodo" , await parseTemplate ( template . body ) ) ;
143+ return ;
138144 }
139145 await joplin . views . dialogs . showMessageBox ( "No default to-do template is set." ) ;
140146 }
0 commit comments