devextreme-renovation
Generator
Building
- cwd
cd ./generator
- install packages
npm install
- build
npm run build
ornpm run build-dist
ornpm run dev
- test
npm test
Publishing
Increment version in package.json and commit it in the master. The package will be published automatically once tests passed.
Using
Installing
`npm install --save devextreme-generator`
Usage
With gulp
// gulpfile.js
const { generateComponents } = require('devextreme-generator/component-compiler');
const generator = require('devextreme-generator/preact-generator').default;
// const generator = require('devextreme-generator/react-generator').default;
// const generator = require('devextreme-generator/angular-generator').default;
// Optional set options
generator.options = {
defaultOptionsModule: 'pathToYourModule or node_modules/devextreme-generator/component_declaration/default_options',
jqueryComponentRegistratorModule: 'path',
jqueryBaseComponentModule: 'preact_wrapper/component',
};
gulp.task('generate-components', function() {
return gulp.src(SRC)
.pipe(generateComponents(generator))
.pipe(gulp.dest(DEST));
});
Generate component from file
const { compileCode } = require('devextreme-generator/component-compiler');
const reactGenerator = require('devextreme-generator/react-generator').default;
const result = compileCode(generator, source, {
path: path,
dirname: dirname
});
With webpack
// webpack.config.js
module.exports = {
// ...
module: {
rules: [
{
test: /\.tsx?$/,
loaders: [
{
loader: 'babel-loader',
},
{
loader: 'devextreme-generator/webpack-loader',
options: {
platform: 'preact',
defaultOptionsModule: 'path',
// ...
tsConfig: path.resolve('./preact.tsconfig.json')
},
},
],
exclude: ['/node_modules/'],
},
// ...
]
},
resolve: {
extensions: ['.js', '.tsx', '.ts'],
}
};