,
  ): VNode {
    if (result.clientError && result.isUnauthorized) {
      route(safe);
      return ;
    }
    if (result.clientError && result.isNotfound) {
      route(safe);
      return (
        Page not found, you are going to be redirected to {safe}
      );
    }
    if (result.loading) return ;
    if (!result.ok) {
      switch (result.type) {
        case ErrorType.TIMEOUT: {
          saveError({
            title: i18n.str`Request timeout, try again later.`,
          });
          break;
        }
        case ErrorType.CLIENT: {
          const errorData = result.error;
          saveError({
            title: i18n.str`Could not load due to a client error`,
            description: errorData.error.description,
            debug: JSON.stringify(result),
          });
          break;
        }
        case ErrorType.SERVER: {
          const errorData = result.error;
          saveError({
            title: i18n.str`Server returned with error`,
            description: errorData.error.description,
            debug: JSON.stringify(result),
          });
          break;
        }
        case ErrorType.UNEXPECTED: {
          saveError({
            title: i18n.str`Unexpected error.`,
            description: `Diagnostic from ${result.info?.url} is "${result.message}"`,
            debug: JSON.stringify(result.error),
          });
          break;
        }
        default:
          {
            assertUnreachable(result);
          }
          route(safe);
      }
    }
    return ;
  };
}
export function Routing(): VNode {
  const history = createHashHistory();
  const { pageStateSetter } = usePageContext();
  function saveError(error: PageStateType["error"]): void {
    pageStateSetter((prev) => ({ ...prev, error }));
  }
  const { i18n } = useTranslationContext();
  return (
    
       (
          
            
          
        )}
      />
       (
          
             {
                route("/account");
              }}
            />
          
        )}
      />
       (
           {
              route("/business");
            }}
          >
             {
                route("/register");
              }}
            />
          
        )}
      />
       (
          
             {
                route("/account");
              }}
              onRegister={() => {
                route("/register");
              }}
              onLoadNotOk={handleNotOkResult("/account", saveError, i18n)}
            />
          
        )}
      />
      
    
  );
}
function Redirect({ to }: { to: string }): VNode {
  useEffect(() => {
    route(to, true);
  }, []);
  return being redirected to {to}
;
}
export function assertUnreachable(x: never): never {
  throw new Error("Didn't expect to get here");
}