diff --git a/package.json b/package.json index 827bb1a..4610fce 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,8 @@ "private": false, "scripts": { "dev": "node ./scripts/dev.js", + "dev:board": "node ./scripts/dev.js board", + "dev:core": "node ./scripts/dev.js core", "build": "node ./scripts/build.js", "snapshot": "node ./scripts/build.js && node ./scripts/snapshot.js", "e2e": "mocha --exit ./__tests__/e2e.test.js", diff --git a/packages/board/src/util/scroller.ts b/packages/board/src/util/scroller.ts index c086e8c..4f5b3a6 100644 --- a/packages/board/src/util/scroller.ts +++ b/packages/board/src/util/scroller.ts @@ -27,7 +27,7 @@ export class Scroller { const wrapper = this._calc(position); // TODO if (this._displayCtx) { - console.log(wrapper); + console.log('scroller-wrapper ===', wrapper); } const ctx = this._displayCtx; diff --git a/scripts/config.js b/scripts/config.js index 1667dac..8fa8bce 100644 --- a/scripts/config.js +++ b/scripts/config.js @@ -1,20 +1,44 @@ +const packages = [ + { + dirName: 'util', + globalName: 'iDraw.util', + }, + { + dirName: 'board', + globalName: 'iDraw.Board', + }, + { + dirName: 'core', + globalName: 'iDraw.Core', + }, + { + dirName: 'idraw', + globalName: 'iDraw.IDraw', + }, +]; + +function getTargetPackage(cmdTarget = '') { + let target = ''; + if (typeof cmdTarget === 'string') { + target = cmdTarget.replace(/^--target-pkg\=/ig, ''); + } + let pkgs = []; + let targetIndex = -1; + for (let i = 0; i < packages.length; i ++) { + if (packages[i] && packages[i].dirName === target) { + targetIndex = i; + break; + } + } + if (targetIndex >= 0) { + pkgs = [packages[targetIndex]]; + } else { + pkgs = packages; + } + return pkgs +} + module.exports = { - packages: [ - { - dirName: 'util', - globalName: 'iDraw.util', - }, - { - dirName: 'board', - globalName: 'iDraw.Board', - }, - { - dirName: 'core', - globalName: 'iDraw.Core', - }, - { - dirName: 'idraw', - globalName: 'iDraw.IDraw', - }, - ] + packages, + getTargetPackage, } \ No newline at end of file diff --git a/scripts/dev.js b/scripts/dev.js index 2401f17..a1ffa42 100644 --- a/scripts/dev.js +++ b/scripts/dev.js @@ -1,4 +1,6 @@ const execa = require('execa'); +const process = require('process'); + async function main() { @@ -6,7 +8,8 @@ async function main() { [ '-w', '-c', - './scripts/rollup.config.js' + './scripts/rollup.config.js', + `--target-pkg=${process.argv[2] || ''}`, ], { stdio: 'inherit' } ) } diff --git a/scripts/rollup.config.js b/scripts/rollup.config.js index 778ccd5..b839d4d 100644 --- a/scripts/rollup.config.js +++ b/scripts/rollup.config.js @@ -1,13 +1,15 @@ const path = require('path'); const typescript = require('rollup-plugin-typescript2'); const { nodeResolve } = require('@rollup/plugin-node-resolve'); -const { packages } = require('./config'); +const { getTargetPackage } = require('./config'); const dtsPlugin = require('./util/dts-plugin'); const stylePlugin = require('./util/style-plugin'); const resolveFile = function(names = []) { return path.join(__dirname, '..', 'packages', ...names) } +const targetMod = process.argv[5]; +const packages = getTargetPackage(targetMod); const modules = []; const external = [ '@idraw/types', '@idraw/util', '@idraw/board', '@idraw/core' ]; @@ -27,7 +29,8 @@ for(let i = 0; i < packages.length; i++) { name: pkg.globalName, format: 'cjs', exports: 'default', - plugins: [dtsPlugin(pkg.dirName),], + // plugins: [dtsPlugin(pkg.dirName),], + plugins: [], external, }); modules.push({