From 938328cd077d40b75e0834d56ff8d43ad035fd2b Mon Sep 17 00:00:00 2001 From: f0x52 Date: Thu, 29 Sep 2022 12:02:41 +0200 Subject: [frontend] Unified panels (#812) * settings panel restructuring * clean up old Gin handlers * colorscheme redesign, some other small css tweaks * basic router layout, error boundary * colorscheme redesign, some other small css tweaks * kebab-case consistency * superfluous padding on applist * remove unused consts * redux, whitespace changes.. * use .jsx extensions for components * login flow up till app registration * full redux oauth implementation, with basic error handling * split oauth api functions * oauth api revocation handling * basic profile change submission * move old dir * profile overview * fix keeping track of the wrong instance url (for different instance/api domains) * use redux state for profile form * delete old/index.js, old/basic.js, fully implemented * implement old/user/profile.js * implement password change * remove debug logging * support future api for removing files * customize profile css * remove unneeded wrapper components * restructure form fields * start on admin pages * admin panel settings * admin settings panel * remove old/admin files * add top-level redirect * refactor/cleanup forms * only do API checks on logged-in state * admin-status based routing * federation block routing * federation blocks * upgrade dependencies * react 18 changes * media cleanup * fix useEffect hooks * remove unused require * custom emoji base * emoji uploader * delete last old panel files * sidebar styling, remove unused page * refactor submit functions * fix sidebar boxshadow-border * fix old css variables * fix fake-toot avatar * fix non-square emoji * fix user settings redux keys * properly get admin account contact from instance response * Account.source default values * source.status_format key * mobile responsiveness * mobile element tweaks * proper redirect after removing block * add redirects for old setting panel urls * deletes * fix mobile overflow * clean up debug logging calls --- web/source/index.js | 52 ++++++++++++++++++++++++++++++++-------------------- 1 file changed, 32 insertions(+), 20 deletions(-) (limited to 'web/source/index.js') diff --git a/web/source/index.js b/web/source/index.js index 20e8ee623..218e420ed 100644 --- a/web/source/index.js +++ b/web/source/index.js @@ -1,19 +1,19 @@ /* - GoToSocial - Copyright (C) 2021-2022 GoToSocial Authors admin@gotosocial.org + GoToSocial + Copyright (C) 2021-2022 GoToSocial Authors admin@gotosocial.org - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . */ "use strict"; @@ -23,7 +23,8 @@ */ const path = require('path'); -const budoExpress = require('budo-express'); +// Forked budo-express supports EventEmitter, to write bundle.js to disk in development +const budoExpress = require('@f0x52/budo-express'); const babelify = require('babelify'); const fs = require("fs"); const EventEmitter = require('events'); @@ -38,8 +39,9 @@ const splitCSS = require("./lib/split-css.js"); const bundles = { "./frontend/index.js": "frontend.js", - "./panels/admin/index.js": "admin-panel.js", - "./panels/user/index.js": "user-panel.js", + "./settings-panel/index.js": "settings.js", + // "./panels/admin/index.js": "admin-panel.js", + // "./panels/user/index.js": "user-panel.js", }; const postcssPlugins = [ @@ -50,6 +52,18 @@ const postcssPlugins = [ "postcss-color-mod-function" ].map((plugin) => require(plugin)()); +let uglifyifyInProduction; + +if (process.env.NODE_ENV != "development") { + console.log("uglifyify'ing production bundles"); + uglifyifyInProduction = [ + require("uglifyify"), { + global: true, + exts: ".js" + } + ]; +} + const browserifyConfig = { transform: [ [ @@ -69,10 +83,7 @@ const browserifyConfig = { exclude: /node_modules\/(?!photoswipe-dynamic-caption-plugin)/, } ], - [require("uglifyify"), { - global: true, - exts: ".js" - }] + uglifyifyInProduction ], plugin: [ [require("icssify"), { @@ -86,7 +97,8 @@ const browserifyConfig = { return out(file); }) }] - ] + ], + extensions: [".js", ".jsx", ".css"] }; const entryFiles = Object.keys(bundles); -- cgit v1.2.3