Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
557 changes: 0 additions & 557 deletions .github/docs/app_lifecycle.drawio.svg

This file was deleted.

2 changes: 2 additions & 0 deletions .github/docs/app_lifecycle.excalidraw.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
29 changes: 29 additions & 0 deletions .github/docs/events.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Lifecycle Events:

Lifecycle Events are emitted in two different contexts: Internal communication, and Plugin communication.

> Event Names combine the "Source" and "Event Name" into a single string with the form: `Source::EventName`.
> Example: `"PluginManager::PluginsLoaded"`

* Events with the Scope of `Internal` (listed below) are directly emitted-from the "Source".
* Events with the Scope of `Plugin` (listed below) are directly emitted-from a `PluginInstance` on the `BusManager::emitter`, by way of `ContextProvider_Bus::emit`.
* Events with *multiple* Scopes are directional from A -> B.


## Internal

| Event Name | Source | Scope | Note |
| --------------- | ---------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| PluginsLoaded | PluginManager | Internal -> Internal | Called after *all* Plugins are Loaded to show Import Errors, and initialize the Bus. |
| PluginsUnloaded | PluginManager | Internal -> Internal | Called after *all* Plugins are Unloaded, which resets the environment (mostly resetting the Bus). |
| RendererStart | AppBootstrapper | Internal -> Internal | Signifies a Renderer has started in some `<mode>`.<blockquote>Event is fired after a `RendererInstance::init()` is called. |
| PluginsChanged | RendererInstance | Internal | Called while Configuring, when the Settings have changed to add/remove Plugins.<blockquote>This should only occur in `configure` Render Mode from the `ConfigurationRenderer`.</blockquote> |
| SchemaChanged | SettingsManager | Internal | Called while Configuring, when a Plugin overrides a Schema Entry.<blockquote>This should only occur in `configure` Render Mode from the `ConfigurationRenderer`.</blockquote> |


## Plugin

| Event Name | Source | Scope | Note |
| ----------------- | ------ | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| SyncSettings | Plugin | Plugin -> Internal | Called by a Plugin when it updates Form/Settings Data for the User (i.e., Auth Flows, etc).<blockquote>Handled by the `ConfigurationRenderer`.</blockquote> |
| MiddlewareExecute | Plugin | Plugin -> Internal | Called from a Plugin when it wants to execute a Middleware Chain.<blockquote>Note: Only the *first* Plugin to Register against the Chain Name will be able to Execute the Chain.</blockquote><blockquote>Handled by the `BusManager`.</blockquote> |
2 changes: 2 additions & 0 deletions .github/docs/plugin_integration.excalidraw.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
16 changes: 16 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "chrome",
"request": "launch",
"name": "Debug App",
"url": "http://localhost:5173",
"webRoot": "${workspaceFolder}/src",
"runtimeArgs": ["--remote-debugging-port=9222"]
}
]
}
1 change: 1 addition & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{ "editor.wordWrapColumn": 105 }
143 changes: 75 additions & 68 deletions README.md

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ version: '3.9'

services:
app-dev:
image: node:21-alpine
image: node:24-alpine3.21
container_name: app-dev
profiles: ['dev']
command: npm run start
Expand All @@ -14,7 +14,7 @@ services:
- .:/app

app-build:
image: node:21-alpine
image: node:24-alpine3.21
container_name: app-build
profiles: ['build']
command: npm run build
Expand All @@ -24,7 +24,7 @@ services:
- .:/app

app-docs:
image: node:21-alpine
image: node:24-alpine3.21
container_name: app-docs
profiles: ['docs']
command: npm run docs:dev
Expand Down
Loading