|
6 | 6 | */
|
7 | 7 |
|
8 | 8 | import * as gulp from 'gulp';
|
9 |
| -import { Task } from '../task-manager'; |
10 |
| -import PlugableTask from '../task-manager/plugable-task'; |
11 |
| -import Logger from '../util/logger'; |
12 |
| -import { AnyFunction } from '../util/utility-functions'; |
| 9 | +import { PluginProvider } from '../plugin-manager/installable'; |
| 10 | +import { AnyFunction, sleep } from '../util/utility-functions'; |
13 | 11 |
|
14 |
| -const logger = Logger('frontvue')('init'); |
15 | 12 |
|
16 |
| -// Task meta data |
17 |
| -const hook = 'init'; |
18 |
| -const name = 'init-project'; |
19 |
| -const description = 'Task for initializing a new project'; |
| 13 | +// Configuration defaults |
| 14 | +const configDefaults = { |
| 15 | + fullName: 'John Smith', |
| 16 | + useDefault: true, |
| 17 | +}; |
| 18 | + |
| 19 | +// Configuration wizard questions |
| 20 | +const questions = [ |
| 21 | + { |
| 22 | + default: configDefaults.fullName, |
| 23 | + message: 'Type in your full name', |
| 24 | + name: 'fullName', |
| 25 | + type: 'input', |
| 26 | + }, |
| 27 | +]; |
| 28 | + |
| 29 | +// Object to be exported |
| 30 | +const taskExport = { |
| 31 | + // configDefaults, |
| 32 | + // configQuestionnaire: { |
| 33 | + // namespace: 'init', |
| 34 | + // questions, |
| 35 | + // }, |
| 36 | + description: 'Task for initializing a new project', |
| 37 | + hook: 'init', |
| 38 | + name: 'init', |
| 39 | + taskFn, |
| 40 | +}; |
20 | 41 |
|
21 | 42 |
|
22 | 43 | /**
|
23 | 44 | * Task main function
|
24 | 45 | * @param done Gulp async callback
|
25 | 46 | */
|
26 |
| -function task(done?: AnyFunction): any { |
27 |
| - logger.log(`Running Task: ${name}`); |
| 47 | +async function taskFn(done: AnyFunction, { logger }: PluginProvider): Promise<any> { |
| 48 | + logger.debug('Something happening now...'); |
| 49 | + logger.debug('That something has been completed!'); |
28 | 50 | done && done();
|
29 | 51 | }
|
30 | 52 |
|
| 53 | + |
31 | 54 | /* test:start */
|
32 |
| -export { task }; |
| 55 | +export { taskFn }; |
33 | 56 | /* test:end */
|
34 | 57 |
|
35 |
| -export default PlugableTask(task, hook, name, description); |
| 58 | +export default taskExport; |
0 commit comments