y-src-pack

1.0.15 • Public • Published

y-src-pack

A js ressources bundler for web, nodejs and webpack.

Bundle any ressource file an application may require an exploit them syncronously via an API.



Install :

npm install y-src-pack

Demo :

In command line, launch

node node_modules/y-src-pack/test

And open the file node_modules/y-src-pack/_test_src/test.html in your browser.


Options

  • Options
    • dir *: string|Array<string>|undefined
      dir or list of dirs to parse.
    • glob *: object|Array<object>|undefined
      object or list of objects to parse with glob.
      • dir : string
        glob working dir.
      • glob: string|Array<string>
        glob expression.
    • tgtFile : string
      the generated file path.
    • jsName :string|boolean|undefined
      for node : undefined (do not set),
      for json : true,
      for web : string as api root var name.
    • typescript : boolean|undefined (beta)
      compile as typescript API if true.

* : At least one of dir or glob must be set.


Exemples :

const YSrcPack = require('y-src-pack');
const path = require('path');
let sp = new YSrcPack();
// ...

with commands (deprecated in favor of options and may be removed in the next major upgrade ) :

// collect all sources from a folder
sp.collect(path.resolve(__dirname,'path/to/sources'));

// use glob expressions
sp.glob(path.resolve(__dirname,'path/to/other/sources'),expr);
sp.glob(path.resolve(__dirname,'path/to/other/sources2'),[expr1,expr2]);

// every files are merged as having the same root dir

//determines the tgt file content:
let jsname;
// - for json : true
jsname=true;
// - for web var : string
jsname='mymedias';
// - for node module : falsy
jsname=0;// or just nothing :p

sp.toFile(path.resolve(__dirname,'path/to/result.js'),jsname);

with options :

YSrcPack.process({
	// --- dir method (collect) (can be an array of strings)
	dir:path.resolve(__dirname,'path/to/sources'),
	// --- glob method (can be an array of objects)
	glob:{
		dir:path.resolve(__dirname,'path/to/other/sources'),
		glob:[expr1,expr2]
	},

	tgtFile:path.resolve(__dirname,'path/to/result.js'),
	jsName:jsname
});

with webpack (same options) :

// in webpack.config.js
// ...
plugins:[
	new YSrcPack.WebpackPlugin({
		dir:path.resolve(__dirname,'path/to/sources'),
		tgtFile:path.resolve(__dirname,'path/to/result.js')
	}),
	// ...
],
// ...

Api reference

See the packed files api here.


see test.js and _test_src/test.html

Package Sidebar

Install

npm i y-src-pack

Weekly Downloads

1

Version

1.0.15

License

ISC

Unpacked Size

1.86 MB

Total Files

26

Last publish

Collaborators

  • yorg