@zskj-idaas/sdk 1.0.3 → 1.0.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/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +28 -9
- package/dist/index.mjs +28 -9
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -183,33 +183,48 @@ var TokenStorage = class {
|
|
|
183
183
|
key(name) {
|
|
184
184
|
return `${this.prefix}:${name}`;
|
|
185
185
|
}
|
|
186
|
+
migrateTokenValue(name) {
|
|
187
|
+
const key = this.key(name);
|
|
188
|
+
const current = localStorage.getItem(key);
|
|
189
|
+
if (current) return current;
|
|
190
|
+
const legacy = sessionStorage.getItem(key);
|
|
191
|
+
if (!legacy) return null;
|
|
192
|
+
localStorage.setItem(key, legacy);
|
|
193
|
+
sessionStorage.removeItem(key);
|
|
194
|
+
return legacy;
|
|
195
|
+
}
|
|
186
196
|
saveTokens(tokens) {
|
|
187
197
|
const expiresAt = Date.now() + tokens.expires_in * 1e3;
|
|
188
|
-
|
|
189
|
-
|
|
198
|
+
localStorage.setItem(this.key("access_token"), tokens.access_token);
|
|
199
|
+
localStorage.setItem(this.key("expires_at"), expiresAt.toString());
|
|
200
|
+
sessionStorage.removeItem(this.key("access_token"));
|
|
201
|
+
sessionStorage.removeItem(this.key("expires_at"));
|
|
190
202
|
if (tokens.id_token) {
|
|
191
|
-
|
|
203
|
+
localStorage.setItem(this.key("id_token"), tokens.id_token);
|
|
204
|
+
sessionStorage.removeItem(this.key("id_token"));
|
|
192
205
|
}
|
|
193
206
|
if (tokens.refresh_token) {
|
|
194
207
|
localStorage.setItem(this.key("refresh_token"), tokens.refresh_token);
|
|
195
208
|
}
|
|
196
|
-
|
|
209
|
+
localStorage.setItem(this.key("scope"), tokens.scope);
|
|
210
|
+
sessionStorage.removeItem(this.key("scope"));
|
|
197
211
|
}
|
|
198
212
|
getAccessToken() {
|
|
199
|
-
const token =
|
|
200
|
-
const expiresAt =
|
|
213
|
+
const token = this.migrateTokenValue("access_token");
|
|
214
|
+
const expiresAt = this.migrateTokenValue("expires_at");
|
|
215
|
+
this.migrateTokenValue("scope");
|
|
201
216
|
if (!token || !expiresAt) return null;
|
|
202
217
|
if (Date.now() > parseInt(expiresAt, 10)) return null;
|
|
203
218
|
return token;
|
|
204
219
|
}
|
|
205
220
|
getIdToken() {
|
|
206
|
-
return
|
|
221
|
+
return this.migrateTokenValue("id_token");
|
|
207
222
|
}
|
|
208
223
|
getRefreshToken() {
|
|
209
224
|
return localStorage.getItem(this.key("refresh_token"));
|
|
210
225
|
}
|
|
211
226
|
getExpiresAt() {
|
|
212
|
-
const val =
|
|
227
|
+
const val = this.migrateTokenValue("expires_at");
|
|
213
228
|
return val ? parseInt(val, 10) : null;
|
|
214
229
|
}
|
|
215
230
|
isTokenExpired() {
|
|
@@ -218,11 +233,15 @@ var TokenStorage = class {
|
|
|
218
233
|
return Date.now() > expiresAt - 6e4;
|
|
219
234
|
}
|
|
220
235
|
clear() {
|
|
236
|
+
localStorage.removeItem(this.key("access_token"));
|
|
237
|
+
localStorage.removeItem(this.key("id_token"));
|
|
238
|
+
localStorage.removeItem(this.key("expires_at"));
|
|
239
|
+
localStorage.removeItem(this.key("scope"));
|
|
240
|
+
localStorage.removeItem(this.key("refresh_token"));
|
|
221
241
|
sessionStorage.removeItem(this.key("access_token"));
|
|
222
242
|
sessionStorage.removeItem(this.key("id_token"));
|
|
223
243
|
sessionStorage.removeItem(this.key("expires_at"));
|
|
224
244
|
sessionStorage.removeItem(this.key("scope"));
|
|
225
|
-
localStorage.removeItem(this.key("refresh_token"));
|
|
226
245
|
}
|
|
227
246
|
saveState(state) {
|
|
228
247
|
sessionStorage.setItem(this.key("state"), state);
|
package/dist/index.mjs
CHANGED
|
@@ -153,33 +153,48 @@ var TokenStorage = class {
|
|
|
153
153
|
key(name) {
|
|
154
154
|
return `${this.prefix}:${name}`;
|
|
155
155
|
}
|
|
156
|
+
migrateTokenValue(name) {
|
|
157
|
+
const key = this.key(name);
|
|
158
|
+
const current = localStorage.getItem(key);
|
|
159
|
+
if (current) return current;
|
|
160
|
+
const legacy = sessionStorage.getItem(key);
|
|
161
|
+
if (!legacy) return null;
|
|
162
|
+
localStorage.setItem(key, legacy);
|
|
163
|
+
sessionStorage.removeItem(key);
|
|
164
|
+
return legacy;
|
|
165
|
+
}
|
|
156
166
|
saveTokens(tokens) {
|
|
157
167
|
const expiresAt = Date.now() + tokens.expires_in * 1e3;
|
|
158
|
-
|
|
159
|
-
|
|
168
|
+
localStorage.setItem(this.key("access_token"), tokens.access_token);
|
|
169
|
+
localStorage.setItem(this.key("expires_at"), expiresAt.toString());
|
|
170
|
+
sessionStorage.removeItem(this.key("access_token"));
|
|
171
|
+
sessionStorage.removeItem(this.key("expires_at"));
|
|
160
172
|
if (tokens.id_token) {
|
|
161
|
-
|
|
173
|
+
localStorage.setItem(this.key("id_token"), tokens.id_token);
|
|
174
|
+
sessionStorage.removeItem(this.key("id_token"));
|
|
162
175
|
}
|
|
163
176
|
if (tokens.refresh_token) {
|
|
164
177
|
localStorage.setItem(this.key("refresh_token"), tokens.refresh_token);
|
|
165
178
|
}
|
|
166
|
-
|
|
179
|
+
localStorage.setItem(this.key("scope"), tokens.scope);
|
|
180
|
+
sessionStorage.removeItem(this.key("scope"));
|
|
167
181
|
}
|
|
168
182
|
getAccessToken() {
|
|
169
|
-
const token =
|
|
170
|
-
const expiresAt =
|
|
183
|
+
const token = this.migrateTokenValue("access_token");
|
|
184
|
+
const expiresAt = this.migrateTokenValue("expires_at");
|
|
185
|
+
this.migrateTokenValue("scope");
|
|
171
186
|
if (!token || !expiresAt) return null;
|
|
172
187
|
if (Date.now() > parseInt(expiresAt, 10)) return null;
|
|
173
188
|
return token;
|
|
174
189
|
}
|
|
175
190
|
getIdToken() {
|
|
176
|
-
return
|
|
191
|
+
return this.migrateTokenValue("id_token");
|
|
177
192
|
}
|
|
178
193
|
getRefreshToken() {
|
|
179
194
|
return localStorage.getItem(this.key("refresh_token"));
|
|
180
195
|
}
|
|
181
196
|
getExpiresAt() {
|
|
182
|
-
const val =
|
|
197
|
+
const val = this.migrateTokenValue("expires_at");
|
|
183
198
|
return val ? parseInt(val, 10) : null;
|
|
184
199
|
}
|
|
185
200
|
isTokenExpired() {
|
|
@@ -188,11 +203,15 @@ var TokenStorage = class {
|
|
|
188
203
|
return Date.now() > expiresAt - 6e4;
|
|
189
204
|
}
|
|
190
205
|
clear() {
|
|
206
|
+
localStorage.removeItem(this.key("access_token"));
|
|
207
|
+
localStorage.removeItem(this.key("id_token"));
|
|
208
|
+
localStorage.removeItem(this.key("expires_at"));
|
|
209
|
+
localStorage.removeItem(this.key("scope"));
|
|
210
|
+
localStorage.removeItem(this.key("refresh_token"));
|
|
191
211
|
sessionStorage.removeItem(this.key("access_token"));
|
|
192
212
|
sessionStorage.removeItem(this.key("id_token"));
|
|
193
213
|
sessionStorage.removeItem(this.key("expires_at"));
|
|
194
214
|
sessionStorage.removeItem(this.key("scope"));
|
|
195
|
-
localStorage.removeItem(this.key("refresh_token"));
|
|
196
215
|
}
|
|
197
216
|
saveState(state) {
|
|
198
217
|
sessionStorage.setItem(this.key("state"), state);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zskj-idaas/sdk",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "IDaaS OIDC Client SDK for browser applications — supports Authorization Code Flow with PKCE, token management, and authenticated fetch.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|