/strip-pragma-loader

Primary LanguageJavaScriptApache License 2.0Apache-2.0

strip-pragma-loader

A webpack loader that strips code block from between requireJS includeStart/excludeStart pragma style comments using the requireJS optimizer syntax.

For example, this loader would be used to strip out blocks of the following pattern:

//>>includeStart('debug', pragmas.debug);
console.log('Debugging...');
//>>includeEnd('debug');

Installation

Install the loader with npm.

npm install strip-pragma-loader --save-dev

Usage

In your webpack configuration object, you'll need to add strip-pragma-loader to your list of modules.

module: {
	rules: [{
		test: /\.js$/,
		enforce: 'pre',
		use: [{
			loader: 'strip-pragma-loader',
			options: {
				pragmas: {
					debug: true
				}
			}
		}]
	}]
}

Options

You can pass options to the loader using the options property.

The following options are supported:

  • pragmas: Object with each pragma name and value. A false value will strip out and includeStart blocks, and a true value will strip out and exlcudeStart blocks. Defaults to an empty object.

For example, the following would strip out all blocks beginning with //>>includeStart('debug', pragmas.debug); and ending with //>>includeEnd('debug');:

module: {
	rules: [{
		test: /\.js$/,
		enforce: 'pre',
		use: [{
			loader: 'strip-pragma-loader',
			options: {
				pragmas: {
					debug: true
				}
			}
		}]
	}]
}

See the RequireJS configuration options for more information on pragmas.

Contributions

Pull requests are appreciated. Please use the same Contributor License Agreement (CLA) used for Cesium.


Developed by the Cesium team.

Cesium