import * as path from 'path' import { files as glob } from '@plastichub/osr-cli-commons/glob' import { sync as read } from '@plastichub/fs/read' import { sync as write } from '@plastichub/fs/write' import { resolve } from '@plastichub/osr-cli-commons/fs' //import { IOptions } from '@plastichub/osr-i18n/dist/types' //import { parse } from '@plastichub/osr-i18n/dist/options' // import { translateFiles } from '@plastichub/osr-i18n/dist/lib/translate' import { logger } from '../src' import { Promise as BPromise } from 'bluebird' import { option } from './library' const translateAll = async (files, options) => { return await BPromise.resolve(files).map((f) => { return new Promise((resolve) => { setTimeout(() => { //createContent(f, options).then(() => resolve(true)) }, 50) }); }, { concurrency: 1 }); } export const register = (grunt) => { grunt.registerMultiTask('translate', 'translate files via osr-i18n', function () { const done = this.async(); ; const task_options = this.data.options || {}; ; const options = { ...this.data.options, root: option('root', task_options, grunt, path.resolve('./')), debug: option('debug', task_options, grunt) } let _files = []; this.data.src.map(f => { _files = _files.concat(glob(process.cwd(), f)); }); logger.info('Compile - task data ', process.cwd(), this.data, _files); logger.debug("Compile - Options", options) // let files = glob( process.cwd(),f); //createContent(file, options) translateAll(_files, options).then((f) => { logger.debug('Done compiling all'); }) }); };