@nowa/module-script
@nowa/module-script
npm i @nowa/module-script
@nowa/module-script

@nowa/module-script

A highly customizable workflow solution for front-end development

by nowa-webpack

0.3.2 (see all)License:MITTypeScript:Built-In
npm i @nowa/module-script
Readme

nowa-module-script

Module Config

export type SingleScript = string | (() => void | Promise<void>);
export interface IOptions {
  // all default false
  parallel?: boolean;
  noWait?: boolean;
  noRetrigger?: boolean;
}
export type Config = ['script', SingleScript | SingleScript[], IOptions];

Usage

const config1 = ['script', 'echo start'];
const config2 = ['script', ['rm -rf dist', 'mkdir dist']]; // multiple scripts
const config3 = ['script', ['rm -rf dist', 'rm -rf build'], { parallel: true }]; // with options
// no guarantee on script running orders , but less time-consuming probably

// be careful, shell scripts are not cross-platform
// you'd better perform file system operations with @nowa/module-file

const config4 = [
  'script',
  () => {
    // js script
    console.log('done');
  },
];

noWait noRetrigger

consider this workflow

  1. script start: [echo start, <some time-consuming script>]
  2. webpack watch
  3. script end: [echo end]

the first-run output should be something like

  1. 'start'
  2. <running time-consuming script>
  3. <webpack related output>
  4. 'end'

and when you trigger a recompile (change source file), these are append to the output

  1. <webpack recompile output>
  2. 'end'

noWait: true

with noWait option on start script, the first output should be

  1. 'start' + <running time-consuming script> + <webpack output>
  2. 'end'

the next module module-webpack won't wait for the script to finish

noRetrigger: true

with noRetrigger option on end script the recompile output should be

  1. <webpack recompile output>

no 'end' output since it won't retrigger

Downloads/wk

1

GitHub Stars

28

LAST COMMIT

2yrs ago

MAINTAINERS

4

CONTRIBUTORS

3

OPEN ISSUES

5

OPEN PRs

13
VersionTagPublished
0.3.2
latest
3yrs ago
No alternatives found
No tutorials found
Add a tutorial

Rate & Review

100
No reviews found
Be the first to rate