@@ -2,9 +2,9 @@ const path = require('path')
22const spawn = require ( 'cross-spawn' )
33
44module . exports = ( options = { } , context ) => ( {
5- extendPageData ( $page ) {
5+ async extendPageData ( $page ) {
66 const { transformer } = options
7- const timestamp = getGitLastUpdatedTimeStamp ( $page . _filePath )
7+ const timestamp = await getGitLastUpdatedTimeStamp ( $page . _filePath )
88 const $lang = $page . _computed . $lang
99 if ( timestamp ) {
1010 const lastUpdated = typeof transformer === 'function'
@@ -19,14 +19,16 @@ function defaultTransformer (timestamp, lang) {
1919 return new Date ( timestamp ) . toLocaleString ( lang )
2020}
2121
22- function getGitLastUpdatedTimeStamp ( filePath ) {
22+ async function getGitLastUpdatedTimeStamp ( filePath ) {
2323 let lastUpdated
2424 try {
25- lastUpdated = parseInt ( spawn . sync (
25+ const commandResult = await spawn (
2626 'git' ,
2727 [ 'log' , '-1' , '--format=%at' , path . basename ( filePath ) ] ,
2828 { cwd : path . dirname ( filePath ) }
29- ) . stdout . toString ( 'utf-8' ) ) * 1000
29+ )
30+ const formattedResult = commandResult . stdout . toString ( 'utf-8' )
31+ lastUpdated = parseInt ( formattedResult ) * 1000
3032 } catch ( e ) { /* do not handle for now */ }
3133 return lastUpdated
3234}
0 commit comments