@openai-oauth/react 2.0.0-beta.3 → 2.0.0-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -90,7 +90,7 @@ function CustomLogin() {
90
90
  const login = useSignInWithChatGPT();
91
91
 
92
92
  if (login.status === "signed-in") {
93
- return <button onClick={() => void login.logout()}>Disconnect</button>;
93
+ return <button onClick={login.logout}>Disconnect</button>;
94
94
  }
95
95
 
96
96
  if (login.status === "needs-extension") {
@@ -99,14 +99,14 @@ function CustomLogin() {
99
99
  <a href={login.installUrl} rel="noreferrer" target="_blank">
100
100
  Install Sign in with ChatGPT
101
101
  </a>
102
- <button onClick={() => void login.login()}>Try again</button>
102
+ <button onClick={login.login}>Try again</button>
103
103
  <button onClick={login.reset}>Cancel</button>
104
104
  </div>
105
105
  );
106
106
  }
107
107
 
108
108
  return (
109
- <button onClick={() => void login.login()}>Sign in with ChatGPT</button>
109
+ <button onClick={login.login}>Sign in with ChatGPT</button>
110
110
  );
111
111
  }
112
112
  ```
@@ -119,7 +119,7 @@ type UseSignInWithChatGPTReturn = SignInWithChatGPTState & {
119
119
  login(): Promise<void>;
120
120
  logout(): Promise<void>;
121
121
  refresh(): Promise<OpenAIOAuthSession | null>;
122
- reset(): void;
122
+ reset(): Promise<void>;
123
123
  };
124
124
  ```
125
125
 
@@ -12,7 +12,7 @@ export type UseSignInWithChatGPTReturn = SignInWithChatGPTState & {
12
12
  login: () => Promise<void>;
13
13
  logout: () => Promise<void>;
14
14
  refresh: () => Promise<OpenAIOAuthSession | null>;
15
- reset: () => void;
15
+ reset: () => Promise<void>;
16
16
  };
17
17
  export declare const useSignInWithChatGPT: (options?: UseSignInWithChatGPTOptions) => UseSignInWithChatGPTReturn;
18
18
  //# sourceMappingURL=useSignInWithChatGPT.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSignInWithChatGPT.d.ts","sourceRoot":"","sources":["../src/useSignInWithChatGPT.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,oBAAoB,EAKzB,KAAK,iBAAiB,EAEtB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,KAAK,EACX,kBAAkB,EAClB,YAAY,EACZ,sBAAsB,EACtB,sBAAsB,EACtB,MAAM,YAAY,CAAA;AAEnB,MAAM,MAAM,yBAAyB,GAAG,UAAU,GAAG,OAAO,CAAA;AAE5D,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,GAC5E,IAAI,CAAC,oBAAoB,EAAE,OAAO,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG;IAC1D,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAA;IACvD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACjD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAA;CACjD,CAAA;AAEF,MAAM,MAAM,0BAA0B,GAAG,sBAAsB,GAAG;IACjE,UAAU,EAAE,OAAO,CAAA;IACnB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1B,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,OAAO,EAAE,MAAM,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAA;IACjD,KAAK,EAAE,MAAM,IAAI,CAAA;CACjB,CAAA;AAmDD,eAAO,MAAM,oBAAoB,GAChC,UAAS,2BAAgC,KACvC,0BAsRF,CAAA"}
1
+ {"version":3,"file":"useSignInWithChatGPT.d.ts","sourceRoot":"","sources":["../src/useSignInWithChatGPT.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,oBAAoB,EAKzB,KAAK,iBAAiB,EAEtB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,KAAK,EACX,kBAAkB,EAClB,YAAY,EACZ,sBAAsB,EACtB,sBAAsB,EACtB,MAAM,YAAY,CAAA;AAEnB,MAAM,MAAM,yBAAyB,GAAG,UAAU,GAAG,OAAO,CAAA;AAE5D,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,GAC5E,IAAI,CAAC,oBAAoB,EAAE,OAAO,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG;IAC1D,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAA;IACvD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACjD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAA;CACjD,CAAA;AAEF,MAAM,MAAM,0BAA0B,GAAG,sBAAsB,GAAG;IACjE,UAAU,EAAE,OAAO,CAAA;IACnB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1B,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,OAAO,EAAE,MAAM,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAA;IACjD,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1B,CAAA;AAmDD,eAAO,MAAM,oBAAoB,GAChC,UAAS,2BAAgC,KACvC,0BA8RF,CAAA"}
@@ -108,16 +108,25 @@ export const useSignInWithChatGPT = (options = {}) => {
108
108
  }
109
109
  let current = true;
110
110
  void (async () => {
111
+ let completed = false;
111
112
  try {
112
- const completed = await completeCallback();
113
- if (!current || completed) {
114
- return;
113
+ completed = await completeCallback();
114
+ }
115
+ catch (error) {
116
+ if (current) {
117
+ fail(error, "invalid-callback");
115
118
  }
119
+ return;
120
+ }
121
+ if (!current || completed) {
122
+ return;
123
+ }
124
+ try {
116
125
  await loadStoredSession();
117
126
  }
118
127
  catch (error) {
119
128
  if (current) {
120
- fail(error, "invalid-callback");
129
+ fail(error);
121
130
  }
122
131
  }
123
132
  })();
@@ -245,8 +254,8 @@ export const useSignInWithChatGPT = (options = {}) => {
245
254
  state.session,
246
255
  tokenUrl,
247
256
  ]);
248
- const reset = useCallback(() => {
249
- void clearLogin({ sessionStore });
257
+ const reset = useCallback(async () => {
258
+ await clearLogin({ sessionStore });
250
259
  setLoginState(signedOutState);
251
260
  }, [sessionStore, setLoginState]);
252
261
  return {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openai-oauth/react",
3
- "version": "2.0.0-beta.3",
3
+ "version": "2.0.0-beta.4",
4
4
  "description": "React hook and button for OpenAI OAuth sessions.",
5
5
  "keywords": [
6
6
  "openai",
@@ -11,6 +11,9 @@
11
11
  "sign-in"
12
12
  ],
13
13
  "type": "module",
14
+ "engines": {
15
+ "node": ">=20"
16
+ },
14
17
  "sideEffects": false,
15
18
  "main": "./dist/index.js",
16
19
  "types": "./dist/index.d.ts",
@@ -32,7 +35,7 @@
32
35
  "LICENSE"
33
36
  ],
34
37
  "scripts": {
35
- "build": "tsc -p tsconfig.build.json",
38
+ "build": "node ../../scripts/clean-dist.mjs && tsc -p tsconfig.build.json",
36
39
  "prepublishOnly": "bun run build",
37
40
  "typecheck": "tsc --noEmit",
38
41
  "test": "vitest run"
@@ -44,14 +47,17 @@
44
47
  "react": ">=18.2.0 || >=19.0.0"
45
48
  },
46
49
  "dependencies": {
47
- "@openai-oauth/core": "2.0.0-beta.3",
48
- "@openai-oauth/web": "2.0.0-beta.3"
50
+ "@openai-oauth/core": "2.0.0-beta.4",
51
+ "@openai-oauth/web": "2.0.0-beta.4"
49
52
  },
50
53
  "devDependencies": {
51
54
  "@types/react": "^19.0.0",
55
+ "@types/react-dom": "^19.2.3",
56
+ "happy-dom": "20.10.6",
52
57
  "react": "^19.0.0",
53
- "typescript": "latest",
54
- "vitest": "latest"
58
+ "react-dom": "^19.2.3",
59
+ "typescript": "5.9.2",
60
+ "vitest": "4.1.10"
55
61
  },
56
62
  "author": "EvanZhouDev",
57
63
  "license": "AGPL-3.0-only",