- Added frontmatter to various markdown files for better metadata handling. - Updated site URLs in configuration files for consistency. - Improved content organization and clarity in getting started, server extension, and client addon guides.
2.5 KiB
2.5 KiB
title, description
| title | description |
|---|---|
| Client Bank Usage Guide | The client bank addon opens the bank and ATM browser UI, forwards banking requests to the server bank addon, and pushes account updates back into the browser. |
Open Bank UI
Open full bank mode:
call forge_client_bank_fnc_openUI;
Open ATM mode:
[true] call forge_client_bank_fnc_openUI;
The open function creates RscBank, sets the bridge mode to bank or atm,
loads ui/_site/index.html, and routes browser events through
forge_client_bank_fnc_handleUIEvents.
Bridge and Repository
forge_client_bank_fnc_initRepository tracks account load and cached account
state.
forge_client_bank_fnc_initUIBridge owns:
- active browser control tracking
- bank/ATM mode
- browser ready handling
- account hydrate and sync responses
- deposit, withdrawal, transfer, earnings deposit, credit repayment, and PIN requests
- browser notice delivery
Browser Events
| Event | Client behavior |
|---|---|
bank::ready |
Mark browser ready and request hydrate from the server. |
bank::refresh |
Request fresh bank hydrate data. |
bank::deposit::request |
Forward deposit amount to the server. |
bank::withdraw::request |
Forward withdrawal amount to the server. |
bank::transfer::request |
Forward target, source field, and amount. |
bank::depositEarnings::request |
Request earnings deposit. |
bank::repayCreditLine::request |
Request credit-line repayment. |
bank::pin::request |
Forward PIN validation request. |
bank::close |
Dispose bridge screen state and close the display. |
Browser Response Events
The bridge sends:
| Event | Purpose |
|---|---|
bank::hydrate |
Full session/account payload. |
bank::sync |
Account patch or sync data. |
bank::notice |
UI-visible notice payload. |
Request Flow
Example deposit flow:
- Browser sends
bank::deposit::requestwith anamount. - Client bridge calls the server bank request event.
- Server bank addon validates the request and calls bank hot-state logic.
- Server response is caught by the client post-init event handlers.
- Client bridge sends
bank::syncorbank::noticeback to the browser.
Authoritative State
Balances, PIN authorization, transfers, checkout charges, credit lines, and persistence are server-owned. The client should only display account data and request mutations through server events.