/
githubmirror
/
ydb-ui-components
Обзор
Документация
Войти
/
githubmirror
/
ydb-ui-components
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
gulpfile.js
53 строки
2 KB
Hellen
feat!: support uikit@7 (#92)
23 май 2025, 12:20
Не верифицирован
23 май 2025, 12:20
53e3930
Код
Авторство
О чём код?
/* eslint-env node */ const path = require('path'); const {task, src, dest, series, parallel} = require('gulp'); const sass = require('gulp-dart-sass'); const replace = require('gulp-replace'); const ts = require('gulp-typescript'); const rimraf = require('rimraf'); const BUILD_DIR = path.resolve('build'); task('clean', (done) => { rimraf.sync(BUILD_DIR); done(); }); function compileTs(modules = false) { const tsProject = ts.createProject('tsconfig.json', { declaration: true, module: modules ? 'esnext' : 'nodenext', moduleResolution: modules ? 'bundler' : 'nodenext', ...(modules ? undefined : {verbatimModuleSyntax: false}), }); return src(['src/**/*.{ts,tsx}', '!src/**/__stories__/**/*.{ts,tsx}']) .pipe(replace(/import '.+\.scss';/g, (match) => match.replace('.scss', '.css'))) .pipe(tsProject()) .pipe(dest(path.resolve(BUILD_DIR, modules ? 'esm' : 'cjs'))); } task('ts-compile-esm', () => { return compileTs(true); }); task('ts-compile-cjs', () => { return compileTs(); }); task('i18n', () => { return src('src/**/i18n/*.json') .pipe(dest(path.resolve(BUILD_DIR, 'esm'))) .pipe(dest(path.resolve(BUILD_DIR, 'cjs'))); }); task('styles', () => { return src(['src/**/*.scss', '!src/**/__stories__/**/*.scss']) .pipe(sass().on('error', sass.logError)) .pipe(dest(path.resolve(BUILD_DIR, 'esm'))) .pipe(dest(path.resolve(BUILD_DIR, 'cjs'))); }); task('build', series(['clean', parallel(['ts-compile-cjs', 'ts-compile-esm', 'i18n']), 'styles'])); task('default', series(['build']));