/** @jsx $mol_jsx */ namespace $ { $hyoo_crus_yard.masters = [ "http://localhost:9090/" // "http://127.0.0.1:9090/" // $mol_dom_context.document.location.origin +'/', ] // используем hyoo_crus_app_node чтобы сразу иметь крас ноду export class $hd_canary extends $hyoo_crus_app_node { @ $mol_mem _stat_update() { const home = this.$.$hyoo_crus_glob.home( $hd_canary_app_home ) for (const site of home.Sites(null)!.remote_list()) { site.tick() } } @ $mol_memo.method sites() { return new $hd_canary_sites } } export class $hd_canary_sites extends $mol_rest_resource { POST( msg: $mol_rest_message ) { const {domain} = JSON.parse(msg.text()) const home = this.$.$hyoo_crus_glob.home( $hd_canary_app_home ) const new_site = home.Sites(null)!.make({ '': $hyoo_crus_rank_rule }) new_site.domain(null)!.val(domain) msg.reply( new_site.land().ref().description! ) } // TODO DELETE( msg: $mol_rest_message ): void { // const {ref} = JSON.parse(msg.text()) // const home = this.$.$hyoo_crus_glob.home( $hd_canary_app_home ) // const current_all = home.Sites(null)!.items_vary() // console.log({current_all}) // const new_all = current_all.filter(item => item?.toString() != ref) // home.Sites(null)!.splice(new_all) // msg.reply( "ok" ) } } } $.$hd_canary.serve() /* npm start + hd/canary port=9090 */