wix-storybook-utils
Version:
Utilities for automated component documentation within Storybook
31 lines • 1.36 kB
JavaScript
;
var _a = require('webpack-inject-plugin'), InjectPlugin = _a.default, ENTRY_ORDER = _a.ENTRY_ORDER;
var storyPattern = /\.story\.[j|t]sx?$/;
var propTypesParserInjector = function () {
return "import 'wix-storybook-utils/propTypesParser';";
};
var WixStorybookWebpackPlugin = /** @class */ (function () {
function WixStorybookWebpackPlugin(options, loaderOptions) {
this.options = options;
this.loaderOptions = loaderOptions;
}
WixStorybookWebpackPlugin.prototype.apply = function (compiler) {
var _this = this;
compiler.hooks.compilation.tap('WixStorybookWebpackPlugin', function (compilation) {
compilation.hooks.normalModuleLoader.tap('WixStorybookWebpackPlugin', function (_, module) {
if (storyPattern.test(module.userRequest)) {
module.loaders.push({
loader: require.resolve('../loader/index.js'),
options: Object.assign({}, { storyConfig: _this.options }, _this.loaderOptions),
});
}
});
});
new InjectPlugin(propTypesParserInjector, {
entryOrder: ENTRY_ORDER.First,
}).apply(compiler);
};
return WixStorybookWebpackPlugin;
}());
module.exports = WixStorybookWebpackPlugin;
//# sourceMappingURL=index.js.map