ryde/source/logic/control/app.ts

54 lines
1.1 KiB
TypeScript
Raw Normal View History

2026-03-06 08:37:53 +01:00
namespace mod_control.app
{
/**
*/
export function setup
(
platform : lib_mvc.type_model<mod_platform.app.web.type_state>
) : Promise<void>
{
let context_dom : HTMLElement = platform.state.element_dom;
context_dom.querySelector(".app_login > button").addEventListener
(
"click",
(event) =>
{
const username : string = ((document.querySelector(".app_username > input") as HTMLInputElement)).value;
const password : string = ((document.querySelector(".app_password > input") as HTMLInputElement)).value;
mod_model.app.login(platform.state.model, username, password);
}
);
context_dom.querySelector(".app_logout > button").addEventListener
(
"click",
(event) =>
{
mod_model.app.logout(platform.state.model);
}
);
context_dom.querySelector(".app_rent > button").addEventListener
(
"click",
(event) =>
{
mod_model.app.prepare_rental(platform.state.model);
}
);
return Promise.resolve<void>(undefined);
}
/**
*/
export function implementation_control
(
) : lib_mvc.type_control<mod_platform.app.web.type_state>
{
return {
"setup": (model) => setup(model),
};
}
}