From fcaa3bf1649898be86fec6037535283ebf0aaa6f Mon Sep 17 00:00:00 2001 From: Matt Swensen Date: Fri, 20 Mar 2020 06:44:51 -0600 Subject: [PATCH] Implement renderInstructions in themer-brave --- cli/packages/themer-brave/README.md | 12 +----------- .../lib/__snapshots__/index.spec.js.snap | 11 +++++++++++ cli/packages/themer-brave/lib/index.js | 12 +++++++++++- cli/packages/themer-brave/lib/index.spec.js | 10 ++++++++++ cli/packages/themer-brave/package.json | 2 +- 5 files changed, 34 insertions(+), 13 deletions(-) create mode 100644 cli/packages/themer-brave/lib/__snapshots__/index.spec.js.snap create mode 100644 cli/packages/themer-brave/lib/index.spec.js diff --git a/cli/packages/themer-brave/README.md b/cli/packages/themer-brave/README.md index 9e6fb27..17a275d 100644 --- a/cli/packages/themer-brave/README.md +++ b/cli/packages/themer-brave/README.md @@ -12,14 +12,4 @@ Then pass `themer-brave` as a `-t` (`--template`) arg to `themer`: themer -c my-colors.js -t themer-brave -o gen -## Output - -`themer-brave` will generate a `Themer Dark` or `Themer Light` directory (or both, depending on the color set you passed to `themer`) in your output path. - -To install your generated theme: - -1. Launch Brave and nagivate to `brave://extensions`. -2. Turn on the "Developer mode" toggle at the top. -3. Click the "Load unpacked extension..." button and choose your `Themer Dark` or `Themer Light` directory. - -(To reset or remove your theme, visit `brave://settings` and click "Reset to Default" in the "Appearance" section.) +Installation instructions for the generated theme(s) will be included in `/README.md`. diff --git a/cli/packages/themer-brave/lib/__snapshots__/index.spec.js.snap b/cli/packages/themer-brave/lib/__snapshots__/index.spec.js.snap new file mode 100644 index 0000000..089525a --- /dev/null +++ b/cli/packages/themer-brave/lib/__snapshots__/index.spec.js.snap @@ -0,0 +1,11 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Brave theme generator should provide installation instructions 1`] = ` +" +1. Launch Brave and go to \`brave://extensions\`. +2. Check the \\"Developer mode\\" checkbox at the top. +3. Click the \\"Load unpacked extension...\\" button and choose the desired theme directory (\`Themer Dark\` or \`Themer Light\`). + +(To reset or remove the theme, visit \`brave://settings\` and click \\"Reset to Default\\" in the \\"Appearance\\" section.) + " +`; diff --git a/cli/packages/themer-brave/lib/index.js b/cli/packages/themer-brave/lib/index.js index 25d441e..f9e2199 100644 --- a/cli/packages/themer-brave/lib/index.js +++ b/cli/packages/themer-brave/lib/index.js @@ -1 +1,11 @@ -module.exports = require('themer-chrome'); +const { render, renderInstructions: renderChromeInstructions } = require('themer-chrome'); + +const renderInstructions = paths => + renderChromeInstructions(paths) + .replace(/chrome/g, 'brave') + .replace(/Chrome/g, 'Brave'); + +module.exports = { + render, + renderInstructions +}; diff --git a/cli/packages/themer-brave/lib/index.spec.js b/cli/packages/themer-brave/lib/index.spec.js new file mode 100644 index 0000000..0894eb6 --- /dev/null +++ b/cli/packages/themer-brave/lib/index.spec.js @@ -0,0 +1,10 @@ +const { render, renderInstructions } = require('./index'); +const { colors } = require('../../themer-colors-default'); + +describe('Brave theme generator', () => { + it('should provide installation instructions', async () => { + const files = await Promise.all(render(colors)); + const instructions = renderInstructions(files.map(({ name }) => name)); + expect(instructions).toMatchSnapshot(); + }); +}); diff --git a/cli/packages/themer-brave/package.json b/cli/packages/themer-brave/package.json index 7f180f6..84be25f 100644 --- a/cli/packages/themer-brave/package.json +++ b/cli/packages/themer-brave/package.json @@ -28,7 +28,7 @@ }, "homepage": "https://github.com/mjswensen/themer/tree/master/cli/packages/themer-brave#readme", "dependencies": { - "themer-chrome": "^1.1.0" + "themer-chrome": "^1.2.0" }, "devDependencies": {}, "peerDependencies": {