From c87cca3813ab16396fc8154d2e3415ce63036c52 Mon Sep 17 00:00:00 2001 From: cha0s Date: Tue, 9 Jan 2024 23:02:33 -0600 Subject: [PATCH] refactor: priority --- build/flecks.yml | 50 ++-------------------------- packages/bootstrap/src/server.js | 43 +++++++++++++----------- packages/core/src/electron/server.js | 43 ++++++++++++++---------- 3 files changed, 52 insertions(+), 84 deletions(-) diff --git a/build/flecks.yml b/build/flecks.yml index 26d8d19..a37a317 100644 --- a/build/flecks.yml +++ b/build/flecks.yml @@ -38,10 +38,6 @@ '@humus/core/persea': {} '@flecks/core': id: 'persea' -# '@flecks/core/server': -# profile: -# - http -# - server '@flecks/db': {} '@flecks/db/server': port: 32362 @@ -52,15 +48,8 @@ backgroundColor: '#212121' show: false quitOnClosed: false - window: - - '...' - - '@persea/core' '@flecks/governor': {} -'@flecks/react': - providers: - - '@flecks/redux' - - '@flecks/react/router' - - '...' +'@flecks/react': {} '@flecks/react/router': {} '@flecks/redis': {} '@flecks/redis/server': @@ -71,38 +60,13 @@ '@flecks/server': nodeArgs: - '--inspect' - # - '--log-deopt' - # - '--log-ic' - # - '--logfile=/home/cha0s/yuge/tmp/v8.log' - up: - - '@flecks/docker' - - '@flecks/db' - - '@flecks/redis' - - '@flecks/user/session' - - '@flecks/user' - - '@flecks/user/local' - - '@flecks/governor' - - '...' - - '@persea/bootstrap' - - '@flecks/web' - - '@flecks/electron' - - '@flecks/repl' '@flecks/socket': {} -'@flecks/socket/server': - authenticate: - - '@flecks/user/session/server' - - '@flecks/user/server' - connect: - - '@flecks/socket/server' +'@flecks/socket/server': {} '@flecks/user': {} '@flecks/user/local': {} '@flecks/user/session': {} '@flecks/web': {} -'@flecks/web/client': - up: - - '@flecks/socket' - - '@flecks/react' - - '...' +'@flecks/web/client': {} '@flecks/web/server': devDisableHostCheck: true dll: @@ -134,17 +98,9 @@ - 'react-window' port: 32360 public: 'persea.localhost' - request.route: - - '@flecks/user/session' - - '@flecks/user' - - '@persea/core/electron' - - '...' request.socket: - '@persea/core' - '...' - stream.html: - - '@flecks/react' - - '...' '@persea/bootstrap': {} '@persea/core': {} '@persea/core/electron': {} diff --git a/packages/bootstrap/src/server.js b/packages/bootstrap/src/server.js index 727bfbf..d1a43df 100644 --- a/packages/bootstrap/src/server.js +++ b/packages/bootstrap/src/server.js @@ -1,21 +1,26 @@ +import {Flecks} from '@flecks/core'; + export const hooks = { - '@flecks/server.up': async (flecks) => { - // if ('production' === NODE_ENV) { - // return; - // } - const {Project, User} = flecks.db.Models; - if (!await User.findOne({where: {email: 'persea@cha0s.io'}})) { - const user = await User.create({ - email: 'persea@cha0s.io', - isAdmin: true, - }); - await user.addHashedPassword('foobar'); - await user.addProject( - await Project.create({ - uuid: 'c41ddaac-89c2-46a4-b3e5-1d634a1a7c36', - }), - ); - await user.save(); - } - }, + '@flecks/server.up': Flecks.priority( + async (flecks) => { + // if ('production' === NODE_ENV) { + // return; + // } + const {Project, User} = flecks.db.Models; + if (!await User.findOne({where: {email: 'persea@cha0s.io'}})) { + const user = await User.create({ + email: 'persea@cha0s.io', + isAdmin: true, + }); + await user.addHashedPassword('foobar'); + await user.addProject( + await Project.create({ + uuid: 'c41ddaac-89c2-46a4-b3e5-1d634a1a7c36', + }), + ); + await user.save(); + } + }, + {after: '@flecks/user/local/server'}, + ), }; diff --git a/packages/core/src/electron/server.js b/packages/core/src/electron/server.js index ff3f331..ee11b97 100644 --- a/packages/core/src/electron/server.js +++ b/packages/core/src/electron/server.js @@ -1,3 +1,4 @@ +import {Flecks} from '@flecks/core'; import {join} from 'path'; import isElectron from 'is-electron'; @@ -12,22 +13,28 @@ export const hooks = { const {browserWindowOptions} = flecks.get('@flecks/electron/server'); browserWindowOptions.icon = join(FLECKS_CORE_ROOT, 'icon.png'); }, - '@flecks/electron/server.window': async (win) => { - // win.removeMenu(); - if ('production' !== NODE_ENV) { - win.openDevTools(); - } - win.maximize(); - win.once('ready-to-show', () => { - win.show(); - }); - }, - '@flecks/web/server.request.route': (flecks) => async (req, res, next) => { - if (isElectron() && 0 === req.user.id) { - const {User} = flecks.db.Models; - req.logIn(await User.findByPk(1), next); - return; - } - next(); - }, + '@flecks/electron/server.window': Flecks.priority( + async (win) => { + // win.removeMenu(); + if ('production' !== NODE_ENV) { + win.openDevTools(); + } + win.maximize(); + win.once('ready-to-show', () => { + win.show(); + }); + }, + {after: '@flecks/electron/server'}, + ), + '@flecks/web/server.request.route': Flecks.priority( + (flecks) => async (req, res, next) => { + if (isElectron() && 0 === req.user.id) { + const {User} = flecks.db.Models; + req.logIn(await User.findByPk(1), next); + return; + } + next(); + }, + {after: '@flecks/user/server'}, + ), };