opendash
Version:
open.DASH data visualization framework
32 lines • 1.21 kB
JavaScript
import * as React from "react";
import { useOpenDashServices, useForceRender } from "..";
var warnings = [];
export function useServicesSuspense() {
var services = useOpenDashServices();
var forceRender = useForceRender();
var _loop_1 = function (name_1, service) {
var skip = !services.UserService.isLoading() && !services.UserService.isLoggedIn();
if (!service.isEnabled()) {
if (!warnings.includes(name_1)) {
console.warn("Service '" + name_1 + "' is disabled. Please check if there is an missing adapter.");
warnings.push(name_1);
}
return "continue";
}
if (!skip && service.isLoading()) {
throw service.wait();
}
React.useEffect(function () {
if (!skip) {
return service.subscribe(function () {
forceRender();
});
}
}, []);
};
for (var _i = 0, _a = Object.entries(services); _i < _a.length; _i++) {
var _b = _a[_i], name_1 = _b[0], service = _b[1];
_loop_1(name_1, service);
}
}
//# sourceMappingURL=useServicesSuspense.js.map