UNPKG

@anansi/generator-js

Version:
32 lines 6.27 kB
import { BetterGenerator, resolvePath } from '../utils.js'; export default class StorybookGenerator extends BetterGenerator { constructor(args, options, features) { super(args, options, features); this.config.set('storybook', true); } async initializing() { // SPA will already have webpack if (this.options.projectType !== 'SPA') { this.composeWith(await resolvePath('../webpack', import.meta.url), this.options); } } configuring() { this.packageJson.merge(this.fs.readJSONTpl(this.templatePath('package.json.tpl'))); this.fs.copyTpl(this.templatePath('.storybook/main.js'), this.destinationPath('.storybook/main.js'), this.config.getAll()); // only use reactive data client by default for applications if (this.options.projectType === 'SPA') { this.fs.copyTpl(this.templatePath('.storybook/preview.tsx'), this.destinationPath('.storybook/preview.tsx'), this.config.getAll()); } } async writingDependencies() { await this.addDevDependencies(['storybook', '@storybook/addon-essentials', '@storybook/addon-links', '@storybook/react', '@anansi/storybook']); } writing() { this.fs.copyTpl(this.templatePath('src/**'), this.destinationPath(this.config.get('rootPath')), this.config.getAll(), {}, { globOptions: { dot: true } }); } } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCZXR0ZXJHZW5lcmF0b3IiLCJyZXNvbHZlUGF0aCIsIlN0b3J5Ym9va0dlbmVyYXRvciIsImNvbnN0cnVjdG9yIiwiYXJncyIsIm9wdGlvbnMiLCJmZWF0dXJlcyIsImNvbmZpZyIsInNldCIsImluaXRpYWxpemluZyIsInByb2plY3RUeXBlIiwiY29tcG9zZVdpdGgiLCJpbXBvcnQiLCJtZXRhIiwidXJsIiwiY29uZmlndXJpbmciLCJwYWNrYWdlSnNvbiIsIm1lcmdlIiwiZnMiLCJyZWFkSlNPTlRwbCIsInRlbXBsYXRlUGF0aCIsImNvcHlUcGwiLCJkZXN0aW5hdGlvblBhdGgiLCJnZXRBbGwiLCJ3cml0aW5nRGVwZW5kZW5jaWVzIiwiYWRkRGV2RGVwZW5kZW5jaWVzIiwid3JpdGluZyIsImdldCIsImdsb2JPcHRpb25zIiwiZG90Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0b3J5Ym9vay9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRmVhdHVyZXMsIEJhc2VPcHRpb25zIH0gZnJvbSAneWVvbWFuLWdlbmVyYXRvcic7XG5cbmltcG9ydCB7IEJldHRlckdlbmVyYXRvciwgcmVzb2x2ZVBhdGggfSBmcm9tICcuLi91dGlscy5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFN0b3J5Ym9va0dlbmVyYXRvciBleHRlbmRzIEJldHRlckdlbmVyYXRvcjxTdG9yeWJvb2tPcHRpb25zPiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIGFyZ3M6IHN0cmluZyB8IHN0cmluZ1tdLFxuICAgIG9wdGlvbnM6IFN0b3J5Ym9va09wdGlvbnMsXG4gICAgZmVhdHVyZXM6IEJhc2VGZWF0dXJlcyxcbiAgKSB7XG4gICAgc3VwZXIoYXJncywgb3B0aW9ucywgZmVhdHVyZXMpO1xuICAgIHRoaXMuY29uZmlnLnNldCgnc3Rvcnlib29rJywgdHJ1ZSk7XG4gIH1cblxuICBhc3luYyBpbml0aWFsaXppbmcoKSB7XG4gICAgLy8gU1BBIHdpbGwgYWxyZWFkeSBoYXZlIHdlYnBhY2tcbiAgICBpZiAodGhpcy5vcHRpb25zLnByb2plY3RUeXBlICE9PSAnU1BBJykge1xuICAgICAgdGhpcy5jb21wb3NlV2l0aChcbiAgICAgICAgYXdhaXQgcmVzb2x2ZVBhdGgoJy4uL3dlYnBhY2snLCBpbXBvcnQubWV0YS51cmwpLFxuICAgICAgICB0aGlzLm9wdGlvbnMsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIGNvbmZpZ3VyaW5nKCkge1xuICAgIHRoaXMucGFja2FnZUpzb24ubWVyZ2UoXG4gICAgICB0aGlzLmZzLnJlYWRKU09OVHBsKHRoaXMudGVtcGxhdGVQYXRoKCdwYWNrYWdlLmpzb24udHBsJykpLFxuICAgICk7XG5cbiAgICB0aGlzLmZzLmNvcHlUcGwoXG4gICAgICB0aGlzLnRlbXBsYXRlUGF0aCgnLnN0b3J5Ym9vay9tYWluLmpzJyksXG4gICAgICB0aGlzLmRlc3RpbmF0aW9uUGF0aCgnLnN0b3J5Ym9vay9tYWluLmpzJyksXG4gICAgICB0aGlzLmNvbmZpZy5nZXRBbGwoKSxcbiAgICApO1xuICAgIC8vIG9ubHkgdXNlIHJlYWN0aXZlIGRhdGEgY2xpZW50IGJ5IGRlZmF1bHQgZm9yIGFwcGxpY2F0aW9uc1xuICAgIGlmICh0aGlzLm9wdGlvbnMucHJvamVjdFR5cGUgPT09ICdTUEEnKSB7XG4gICAgICB0aGlzLmZzLmNvcHlUcGwoXG4gICAgICAgIHRoaXMudGVtcGxhdGVQYXRoKCcuc3Rvcnlib29rL3ByZXZpZXcudHN4JyksXG4gICAgICAgIHRoaXMuZGVzdGluYXRpb25QYXRoKCcuc3Rvcnlib29rL3ByZXZpZXcudHN4JyksXG4gICAgICAgIHRoaXMuY29uZmlnLmdldEFsbCgpLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyB3cml0aW5nRGVwZW5kZW5jaWVzKCkge1xuICAgIGF3YWl0IHRoaXMuYWRkRGV2RGVwZW5kZW5jaWVzKFtcbiAgICAgICdzdG9yeWJvb2snLFxuICAgICAgJ0BzdG9yeWJvb2svYWRkb24tZXNzZW50aWFscycsXG4gICAgICAnQHN0b3J5Ym9vay9hZGRvbi1saW5rcycsXG4gICAgICAnQHN0b3J5Ym9vay9yZWFjdCcsXG4gICAgICAnQGFuYW5zaS9zdG9yeWJvb2snLFxuICAgIF0pO1xuICB9XG5cbiAgd3JpdGluZygpIHtcbiAgICB0aGlzLmZzLmNvcHlUcGwoXG4gICAgICB0aGlzLnRlbXBsYXRlUGF0aCgnc3JjLyoqJyksXG4gICAgICB0aGlzLmRlc3RpbmF0aW9uUGF0aCh0aGlzLmNvbmZpZy5nZXQoJ3Jvb3RQYXRoJykpLFxuICAgICAgdGhpcy5jb25maWcuZ2V0QWxsKCksXG4gICAgICB7fSxcbiAgICAgIHsgZ2xvYk9wdGlvbnM6IHsgZG90OiB0cnVlIH0gfSxcbiAgICApO1xuICB9XG59XG5cbnR5cGUgU3Rvcnlib29rT3B0aW9ucyA9IEJhc2VPcHRpb25zICYgeyBwcm9qZWN0VHlwZTogc3RyaW5nIH07XG4iXSwibWFwcGluZ3MiOiJBQUVBLFNBQVNBLGVBQWUsRUFBRUMsV0FBVyxRQUFRLGFBQWE7QUFFMUQsZUFBZSxNQUFNQyxrQkFBa0IsU0FBU0YsZUFBZSxDQUFtQjtFQUNoRkcsV0FBV0EsQ0FDVEMsSUFBdUIsRUFDdkJDLE9BQXlCLEVBQ3pCQyxRQUFzQixFQUN0QjtJQUNBLEtBQUssQ0FBQ0YsSUFBSSxFQUFFQyxPQUFPLEVBQUVDLFFBQVEsQ0FBQztJQUM5QixJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsR0FBRyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUM7RUFDcEM7RUFFQSxNQUFNQyxZQUFZQSxDQUFBLEVBQUc7SUFDbkI7SUFDQSxJQUFJLElBQUksQ0FBQ0osT0FBTyxDQUFDSyxXQUFXLEtBQUssS0FBSyxFQUFFO01BQ3RDLElBQUksQ0FBQ0MsV0FBVyxDQUNkLE1BQU1WLFdBQVcsQ0FBQyxZQUFZLEVBQUVXLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDQyxHQUFHLENBQUMsRUFDaEQsSUFBSSxDQUFDVCxPQUNQLENBQUM7SUFDSDtFQUNGO0VBRUFVLFdBQVdBLENBQUEsRUFBRztJQUNaLElBQUksQ0FBQ0MsV0FBVyxDQUFDQyxLQUFLLENBQ3BCLElBQUksQ0FBQ0MsRUFBRSxDQUFDQyxXQUFXLENBQUMsSUFBSSxDQUFDQyxZQUFZLENBQUMsa0JBQWtCLENBQUMsQ0FDM0QsQ0FBQztJQUVELElBQUksQ0FBQ0YsRUFBRSxDQUFDRyxPQUFPLENBQ2IsSUFBSSxDQUFDRCxZQUFZLENBQUMsb0JBQW9CLENBQUMsRUFDdkMsSUFBSSxDQUFDRSxlQUFlLENBQUMsb0JBQW9CLENBQUMsRUFDMUMsSUFBSSxDQUFDZixNQUFNLENBQUNnQixNQUFNLENBQUMsQ0FDckIsQ0FBQztJQUNEO0lBQ0EsSUFBSSxJQUFJLENBQUNsQixPQUFPLENBQUNLLFdBQVcsS0FBSyxLQUFLLEVBQUU7TUFDdEMsSUFBSSxDQUFDUSxFQUFFLENBQUNHLE9BQU8sQ0FDYixJQUFJLENBQUNELFlBQVksQ0FBQyx3QkFBd0IsQ0FBQyxFQUMzQyxJQUFJLENBQUNFLGVBQWUsQ0FBQyx3QkFBd0IsQ0FBQyxFQUM5QyxJQUFJLENBQUNmLE1BQU0sQ0FBQ2dCLE1BQU0sQ0FBQyxDQUNyQixDQUFDO0lBQ0g7RUFDRjtFQUVBLE1BQU1DLG1CQUFtQkEsQ0FBQSxFQUFHO0lBQzFCLE1BQU0sSUFBSSxDQUFDQyxrQkFBa0IsQ0FBQyxDQUM1QixXQUFXLEVBQ1gsNkJBQTZCLEVBQzdCLHdCQUF3QixFQUN4QixrQkFBa0IsRUFDbEIsbUJBQW1CLENBQ3BCLENBQUM7RUFDSjtFQUVBQyxPQUFPQSxDQUFBLEVBQUc7SUFDUixJQUFJLENBQUNSLEVBQUUsQ0FBQ0csT0FBTyxDQUNiLElBQUksQ0FBQ0QsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUMzQixJQUFJLENBQUNFLGVBQWUsQ0FBQyxJQUFJLENBQUNmLE1BQU0sQ0FBQ29CLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUNqRCxJQUFJLENBQUNwQixNQUFNLENBQUNnQixNQUFNLENBQUMsQ0FBQyxFQUNwQixDQUFDLENBQUMsRUFDRjtNQUFFSyxXQUFXLEVBQUU7UUFBRUMsR0FBRyxFQUFFO01BQUs7SUFBRSxDQUMvQixDQUFDO0VBQ0g7QUFDRiIsImlnbm9yZUxpc3QiOltdfQ==