mirror of
https://github.com/Monadical-SAS/reflector.git
synced 2025-12-20 12:19:06 +00:00
New openapi generator - experimental
This commit is contained in:
7
www/app/lib/shareMode.ts
Normal file
7
www/app/lib/shareMode.ts
Normal file
@@ -0,0 +1,7 @@
|
||||
export type ShareMode = "public" | "semi-private" | "private" | null;
|
||||
|
||||
export function toShareMode(value: string | undefined | null): ShareMode {
|
||||
return value === "public" || value === "semi-private" || value === "private"
|
||||
? value
|
||||
: null;
|
||||
}
|
||||
@@ -1,15 +1,15 @@
|
||||
import { DefaultService, OpenAPI } from "../api";
|
||||
|
||||
import { useFiefAccessTokenInfo } from "@fief/fief/nextjs/react";
|
||||
import { useContext, useEffect, useState } from "react";
|
||||
import { DomainContext, featureEnabled } from "../[domain]/domainContext";
|
||||
import { CookieContext } from "../(auth)/fiefWrapper";
|
||||
import { OpenApi, DefaultService } from "../api";
|
||||
|
||||
export default function getApi(): DefaultService | undefined {
|
||||
export default function useApi(): DefaultService | null {
|
||||
const accessTokenInfo = useFiefAccessTokenInfo();
|
||||
const api_url = useContext(DomainContext).api_url;
|
||||
const requireLogin = featureEnabled("requireLogin");
|
||||
const [api, setApi] = useState<DefaultService>();
|
||||
const [ready, setReady] = useState<boolean>(false);
|
||||
const [api, setApi] = useState<OpenApi | null>(null);
|
||||
const { hasAuthCookie } = useContext(CookieContext);
|
||||
|
||||
if (!api_url) throw new Error("no API URL");
|
||||
@@ -19,18 +19,16 @@ export default function getApi(): DefaultService | undefined {
|
||||
return;
|
||||
}
|
||||
|
||||
// const apiConfiguration = new Configuration({
|
||||
// basePath: api_url,
|
||||
// accessToken: accessTokenInfo
|
||||
// ? "Bearer " + accessTokenInfo.access_token
|
||||
// : undefined,
|
||||
// });
|
||||
OpenAPI.BASE = api_url;
|
||||
if (accessTokenInfo) {
|
||||
OpenAPI.TOKEN = "Bearer " + accessTokenInfo.access_token;
|
||||
}
|
||||
setApi(DefaultService);
|
||||
if (!accessTokenInfo)
|
||||
return;
|
||||
|
||||
const openApi = new OpenApi({
|
||||
BASE: api_url,
|
||||
TOKEN: accessTokenInfo?.access_token
|
||||
});
|
||||
|
||||
setApi(openApi);
|
||||
}, [!accessTokenInfo, hasAuthCookie]);
|
||||
|
||||
return api;
|
||||
return api?.default ?? null;
|
||||
}
|
||||
Reference in New Issue
Block a user