11import chalk from 'chalk'
2+ import appRoot from 'app-root-path'
23import { existsSync } from 'fs-extra'
34import { filter , find , replace , debounce } from 'lodash'
45import untildify from 'untildify'
@@ -11,6 +12,8 @@ import { TemplatePreviewArguments } from '../../types'
1112import { TemplateValidationOptions } from 'postmark/dist/client/models'
1213import { log , validateToken } from '../../utils'
1314
15+ const previewPath = `${ appRoot . path } /preview/`
16+
1417export const command = 'preview <templates directory> [options]'
1518export const desc = 'Preview your templates and layouts'
1619export const builder = {
@@ -71,7 +74,7 @@ const preview = (serverToken: string, args: TemplatePreviewArguments) => {
7174 let manifest = createManifest ( templatesdirectory )
7275
7376 // Static assets
74- app . use ( express . static ( 'preview/ assets' ) )
77+ app . use ( express . static ( ` ${ previewPath } assets` ) )
7578
7679 const updateEvent = ( ) => {
7780 // Generate new manifest
@@ -97,7 +100,7 @@ const preview = (serverToken: string, args: TemplatePreviewArguments) => {
97100 const path = untildify ( templatesdirectory ) . replace ( / \/ $ / , '' )
98101
99102 consolidate . ejs (
100- 'preview/ index.ejs' ,
103+ ` ${ previewPath } index.ejs` ,
101104 { templates, layouts, path } ,
102105 ( err , html ) => renderTemplateContents ( res , err , html )
103106 )
@@ -110,7 +113,7 @@ const preview = (serverToken: string, args: TemplatePreviewArguments) => {
110113 const template = find ( manifest , { Alias : req . params . alias } )
111114
112115 if ( template ) {
113- consolidate . ejs ( 'preview/ template.ejs' , { template } , ( err , html ) =>
116+ consolidate . ejs ( ` ${ previewPath } template.ejs` , { template } , ( err , html ) =>
114117 renderTemplateContents ( res , err , html )
115118 )
116119 } else {
@@ -224,17 +227,19 @@ const getSource = (version: 'html' | 'text', template: any, layout?: any) => {
224227}
225228
226229const renderTemplateText = ( res : express . Response , body : string ) =>
227- consolidate . ejs ( 'preview/ templateText.ejs' , { body } , ( err , html ) =>
230+ consolidate . ejs ( ` ${ previewPath } templateText.ejs` , { body } , ( err , html ) =>
228231 renderTemplateContents ( res , err , html )
229232 )
230233
231234const renderTemplateInvalid = ( res : express . Response , errors : any ) =>
232- consolidate . ejs ( 'preview/templateInvalid.ejs' , { errors } , ( err , html ) =>
233- renderTemplateContents ( res , err , html )
235+ consolidate . ejs (
236+ `${ previewPath } templateInvalid.ejs` ,
237+ { errors } ,
238+ ( err , html ) => renderTemplateContents ( res , err , html )
234239 )
235240
236241const renderTemplate404 = ( res : express . Response , version : string ) =>
237- consolidate . ejs ( 'preview/ template404.ejs' , { version } , ( err , html ) =>
242+ consolidate . ejs ( ` ${ previewPath } template404.ejs` , { version } , ( err , html ) =>
238243 renderTemplateContents ( res , err , html )
239244 )
240245
0 commit comments