5
5
* @since 0.1.0
6
6
*/
7
7
8
+ import chalk from 'chalk' ;
8
9
import * as gulp from 'gulp' ;
9
- import { Config } from '../config-manager' ;
10
+ import ConfigManager , { Config } from '../config-manager' ;
11
+ import ConfigManagerProxy from '../config-manager/config-manager-proxy' ;
10
12
import { ConfigQuestionnaire , QuestionnaireSubscriber } from '../config-wizard' ;
11
13
import { TaskSubscriber } from '../task-manager' ;
12
14
import Logger , { ILogger } from '../util/logger' ;
@@ -39,7 +41,7 @@ export const ERRORS = {
39
41
40
42
41
43
/**
42
- * Validate plugin
44
+ * Check if object is an installable Plugin
43
45
* @param object Plugin object to be tested
44
46
*/
45
47
export function isInstallable ( object : { [ key : string ] : any } ) : boolean | void {
@@ -69,6 +71,8 @@ export function isInstallable(object: {[key: string]: any}): boolean | void {
69
71
*/
70
72
export function getUtilitiesProvider ( name : string ) : PluginProvider {
71
73
const logger = Logger ( 'frontvue' ) ( name ) ;
74
+ // TODO: Implement config manager proxy for plugin
75
+ // const config = ConfigManagerProxy();
72
76
73
77
return Object . freeze ( {
74
78
logger,
@@ -85,9 +89,10 @@ export function provideUtilities(taskFn: AnyFunction, name: string): AnyFunction
85
89
const provider = getUtilitiesProvider ( name ) ;
86
90
87
91
return async function ( cb ) {
88
- provider . logger . debug ( `Started...` ) ;
92
+ const startTime = Date . now ( ) ;
89
93
await taskFn ( cb , provider ) ;
90
- provider . logger . debug ( `Finished...` ) ;
94
+ const duration = ( Date . now ( ) - startTime ) / 1000 ;
95
+ provider . logger . debug ( chalk . bold ( `took ${ duration . toFixed ( 1 ) } s` ) ) ;
91
96
} ;
92
97
}
93
98
0 commit comments