@tycoonsystems/tycoon-modules
Version:
www.tv.tycoon.systems/documentation
1 lines • 774 B
JavaScript
import React from"react";import{fetchPost}from"./fetch";const Module=t=>{const[r,s]=React.useState(!1),[l,c]=React.useState(!1),[,n]=React.useState(-1);return React.useEffect(()=>{(async()=>{try{if(t.apiUrl&&!r&&t.handlerArgs&&t.domainKey&&t.apiUrl&&!l){s(!0),setTimeout(()=>{s(!1)},15e3),n((new Date).getTime()),c(!0);var e={domainKey:t.domainKey,handlerName:t.handlerName??null,handlerArgs:t.handlerArgs},a=await fetchPost(t.apiUrl+"/m/fetchhandler",null,null,e);if(!a)return!s(!1);if(a.hasOwnProperty("status")){if("failed"==a.status)return!s(!1);"success"==a.status&&(s(!1),t.receiveData)&&t.receiveData(a)}}}catch(e){console.log(e),s(!1)}})()},[l,r,t?.handlerName,t.handlerArgs,t.domainKey]),React.createElement("div",{className:""+t.className})};export default Module;