@dream-api/sdk 0.1.27 → 0.1.29

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.js CHANGED
@@ -41,7 +41,7 @@ var DEFAULT_BASE_URL = "https://api-multi.k-c-sheffield012376.workers.dev";
41
41
  var SIGNUP_URL_TEST = "https://sign-up.k-c-sheffield012376.workers.dev";
42
42
  var SIGNUP_URL_LIVE = "https://signup.users.panacea-tech.net";
43
43
  var CLERK_URL_TEST = "https://composed-blowfish-76.clerk.accounts.dev";
44
- var CLERK_URL_LIVE = "https://users.panacea-tech.net";
44
+ var CLERK_URL_LIVE = "https://clerk.users.panacea-tech.net";
45
45
  var DreamClient = class {
46
46
  constructor(config) {
47
47
  this.userToken = null;
@@ -210,6 +210,18 @@ var ClerkManager = class {
210
210
  */
211
211
  async load() {
212
212
  if (this.loaded || typeof window === "undefined") return;
213
+ const urlParams = new URLSearchParams(window.location.search);
214
+ const jwt = urlParams.get("__clerk_jwt");
215
+ if (jwt) {
216
+ console.log("[DreamAPI] JWT received from sign-up worker");
217
+ this.token = jwt;
218
+ this.onTokenChange?.(jwt);
219
+ urlParams.delete("__clerk_jwt");
220
+ const newUrl = urlParams.toString() ? `${window.location.pathname}?${urlParams}` : window.location.pathname;
221
+ window.history.replaceState({}, "", newUrl);
222
+ this.loaded = true;
223
+ return;
224
+ }
213
225
  const existingClerk = getClerk();
214
226
  if (existingClerk) {
215
227
  this.loaded = true;
@@ -234,8 +246,8 @@ var ClerkManager = class {
234
246
  }
235
247
  if (clerk) {
236
248
  await clerk.load();
237
- const urlParams = new URLSearchParams(window.location.search);
238
- const ticket = urlParams.get("__clerk_ticket");
249
+ const urlParams2 = new URLSearchParams(window.location.search);
250
+ const ticket = urlParams2.get("__clerk_ticket");
239
251
  console.log("[DreamAPI] URL:", window.location.href);
240
252
  console.log("[DreamAPI] Ticket present:", ticket ? "YES" : "NO");
241
253
  const sdkDebug = {
@@ -269,8 +281,8 @@ var ClerkManager = class {
269
281
  if (clerk.user && clerk.session) break;
270
282
  }
271
283
  console.log("[DreamAPI] User hydrated:", !!clerk.user);
272
- urlParams.delete("__clerk_ticket");
273
- const newUrl = urlParams.toString() ? `${window.location.pathname}?${urlParams}` : window.location.pathname;
284
+ urlParams2.delete("__clerk_ticket");
285
+ const newUrl = urlParams2.toString() ? `${window.location.pathname}?${urlParams2}` : window.location.pathname;
274
286
  window.history.replaceState({}, "", newUrl);
275
287
  }
276
288
  } catch (err) {
@@ -303,6 +315,7 @@ var ClerkManager = class {
303
315
  * Check if user is signed in
304
316
  */
305
317
  isSignedIn() {
318
+ if (this.token) return true;
306
319
  const clerk = getClerk();
307
320
  return !!clerk?.user && !!clerk?.session;
308
321
  }
@@ -310,6 +323,22 @@ var ClerkManager = class {
310
323
  * Get current user info
311
324
  */
312
325
  getUser() {
326
+ if (this.token) {
327
+ try {
328
+ const parts = this.token.split(".");
329
+ if (parts.length === 3) {
330
+ const payload = JSON.parse(atob(parts[1].replace(/-/g, "+").replace(/_/g, "/")));
331
+ return {
332
+ id: payload.sub || "",
333
+ email: payload.email || "",
334
+ plan: payload.plan || payload.publicMetadata?.plan || "free",
335
+ publishableKey: payload.publishableKey || payload.publicMetadata?.publishableKey || ""
336
+ };
337
+ }
338
+ } catch (e) {
339
+ console.error("[DreamAPI] Failed to decode JWT:", e);
340
+ }
341
+ }
313
342
  const clerk = getClerk();
314
343
  if (!clerk?.user) return null;
315
344
  const user = clerk.user;
package/dist/index.mjs CHANGED
@@ -13,7 +13,7 @@ var DEFAULT_BASE_URL = "https://api-multi.k-c-sheffield012376.workers.dev";
13
13
  var SIGNUP_URL_TEST = "https://sign-up.k-c-sheffield012376.workers.dev";
14
14
  var SIGNUP_URL_LIVE = "https://signup.users.panacea-tech.net";
15
15
  var CLERK_URL_TEST = "https://composed-blowfish-76.clerk.accounts.dev";
16
- var CLERK_URL_LIVE = "https://users.panacea-tech.net";
16
+ var CLERK_URL_LIVE = "https://clerk.users.panacea-tech.net";
17
17
  var DreamClient = class {
18
18
  constructor(config) {
19
19
  this.userToken = null;
@@ -182,6 +182,18 @@ var ClerkManager = class {
182
182
  */
183
183
  async load() {
184
184
  if (this.loaded || typeof window === "undefined") return;
185
+ const urlParams = new URLSearchParams(window.location.search);
186
+ const jwt = urlParams.get("__clerk_jwt");
187
+ if (jwt) {
188
+ console.log("[DreamAPI] JWT received from sign-up worker");
189
+ this.token = jwt;
190
+ this.onTokenChange?.(jwt);
191
+ urlParams.delete("__clerk_jwt");
192
+ const newUrl = urlParams.toString() ? `${window.location.pathname}?${urlParams}` : window.location.pathname;
193
+ window.history.replaceState({}, "", newUrl);
194
+ this.loaded = true;
195
+ return;
196
+ }
185
197
  const existingClerk = getClerk();
186
198
  if (existingClerk) {
187
199
  this.loaded = true;
@@ -206,8 +218,8 @@ var ClerkManager = class {
206
218
  }
207
219
  if (clerk) {
208
220
  await clerk.load();
209
- const urlParams = new URLSearchParams(window.location.search);
210
- const ticket = urlParams.get("__clerk_ticket");
221
+ const urlParams2 = new URLSearchParams(window.location.search);
222
+ const ticket = urlParams2.get("__clerk_ticket");
211
223
  console.log("[DreamAPI] URL:", window.location.href);
212
224
  console.log("[DreamAPI] Ticket present:", ticket ? "YES" : "NO");
213
225
  const sdkDebug = {
@@ -241,8 +253,8 @@ var ClerkManager = class {
241
253
  if (clerk.user && clerk.session) break;
242
254
  }
243
255
  console.log("[DreamAPI] User hydrated:", !!clerk.user);
244
- urlParams.delete("__clerk_ticket");
245
- const newUrl = urlParams.toString() ? `${window.location.pathname}?${urlParams}` : window.location.pathname;
256
+ urlParams2.delete("__clerk_ticket");
257
+ const newUrl = urlParams2.toString() ? `${window.location.pathname}?${urlParams2}` : window.location.pathname;
246
258
  window.history.replaceState({}, "", newUrl);
247
259
  }
248
260
  } catch (err) {
@@ -275,6 +287,7 @@ var ClerkManager = class {
275
287
  * Check if user is signed in
276
288
  */
277
289
  isSignedIn() {
290
+ if (this.token) return true;
278
291
  const clerk = getClerk();
279
292
  return !!clerk?.user && !!clerk?.session;
280
293
  }
@@ -282,6 +295,22 @@ var ClerkManager = class {
282
295
  * Get current user info
283
296
  */
284
297
  getUser() {
298
+ if (this.token) {
299
+ try {
300
+ const parts = this.token.split(".");
301
+ if (parts.length === 3) {
302
+ const payload = JSON.parse(atob(parts[1].replace(/-/g, "+").replace(/_/g, "/")));
303
+ return {
304
+ id: payload.sub || "",
305
+ email: payload.email || "",
306
+ plan: payload.plan || payload.publicMetadata?.plan || "free",
307
+ publishableKey: payload.publishableKey || payload.publicMetadata?.publishableKey || ""
308
+ };
309
+ }
310
+ } catch (e) {
311
+ console.error("[DreamAPI] Failed to decode JWT:", e);
312
+ }
313
+ }
285
314
  const clerk = getClerk();
286
315
  if (!clerk?.user) return null;
287
316
  const user = clerk.user;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dream-api/sdk",
3
- "version": "0.1.27",
3
+ "version": "0.1.29",
4
4
  "description": "Official SDK for Dream API - Auth, billing, and usage tracking in one API",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",