diff --git a/webmaker/package.json b/webmaker/package.json index 3e5abea..0ae44c6 100644 --- a/webmaker/package.json +++ b/webmaker/package.json @@ -29,6 +29,7 @@ "dependencies": { "@emmetio/codemirror-plugin": "^0.5.4", "codemirror": "^5.37.0", + "copy-webpack-plugin": "^4.5.1", "esprima": "^4.0.0", "firebase": "^5.0.4", "preact": "^8.2.6", diff --git a/webmaker/preact.config.js b/webmaker/preact.config.js new file mode 100644 index 0000000..83145e3 --- /dev/null +++ b/webmaker/preact.config.js @@ -0,0 +1,53 @@ +import CopyWebpackPlugin from 'copy-webpack-plugin' + +/** + * Function that mutates original webpack config. + * Supports asynchronous changes when promise is returned. + * + * @param {object} config - original webpack config. + * @param {object} env - options passed to CLI. + * @param {WebpackConfigHelpers} helpers - object with useful helpers when working with config. + **/ +export default function (config, env, helpers) { + if (env.isProd) { + config.devtool = false; // disable sourcemaps + } + config.plugins.push(new CopyWebpackPlugin([{ + context: `${__dirname}/src/assets`, + from: `*.*` + }, { + from: `${__dirname}/src/lib`, + to: 'lib/' + }, + { + from: `${__dirname}/src/detached-window.js` + }, + { + from: `${__dirname}/src/*.ttf` + }, + { + from: `${__dirname}/src/patreon.png` + }, + { + from: `${__dirname}/src/preview.html` + }, + { + from: `${__dirname}/src/style.css` + } + ])); + + // let plugins = helpers.getPlugins(); + // console.log(helpers.getPlugins(config)); + + const { + plugin + } = helpers.getPluginsByName(config, 'SWPrecacheWebpackPlugin')[0]; + console.log(plugin) + plugin.options.maximumFileSizeToCacheInBytes = 2900000; + + + let { + index + } = helpers.getPluginsByName(config, 'UglifyJsPlugin')[0] + config.plugins.splice(index, 1) +} diff --git a/webmaker/src/components/SavedItemPane.jsx b/webmaker/src/components/SavedItemPane.jsx index dbfd0ba..6ab9386 100644 --- a/webmaker/src/components/SavedItemPane.jsx +++ b/webmaker/src/components/SavedItemPane.jsx @@ -225,7 +225,7 @@ export default class SavedItemPane extends Component {
{!this.state.filteredItems.length && - !this.items.length &&
No match found.
} + this.items.length &&
No match found.
} {this.state.filteredItems.map(item => (
-

Preact App

- - - ); - } -} diff --git a/webmaker/src/components/header/style.css b/webmaker/src/components/header/style.css deleted file mode 100644 index f08fda7..0000000 --- a/webmaker/src/components/header/style.css +++ /dev/null @@ -1,48 +0,0 @@ -.header { - position: fixed; - left: 0; - top: 0; - width: 100%; - height: 56px; - padding: 0; - background: #673AB7; - box-shadow: 0 0 5px rgba(0, 0, 0, 0.5); - z-index: 50; -} - -.header h1 { - float: left; - margin: 0; - padding: 0 15px; - font-size: 24px; - line-height: 56px; - font-weight: 400; - color: #FFF; -} - -.header nav { - float: right; - font-size: 100%; -} - -.header nav a { - display: inline-block; - height: 56px; - line-height: 56px; - padding: 0 15px; - min-width: 50px; - text-align: center; - background: rgba(255,255,255,0); - text-decoration: none; - color: #FFF; - will-change: background-color; -} - -.header nav a:hover, -.header nav a:active { - background: rgba(0,0,0,0.2); -} - -.header nav a.active { - background: rgba(0,0,0,0.4); -} diff --git a/webmaker/src/components/temp.jsx b/webmaker/src/components/temp.jsx deleted file mode 100644 index 776e902..0000000 --- a/webmaker/src/components/temp.jsx +++ /dev/null @@ -1,7 +0,0 @@ -import { h, Component } from 'preact'; - -export default class Header extends Component { - render() { - return
; - } -}