@hexclave/js 1.0.66 → 1.0.68

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.
Files changed (65) hide show
  1. package/dist/{admin-app-impl-BqCnEjjC.d.ts → admin-app-impl-DxZSp6ov.d.ts} +10 -5
  2. package/dist/admin-app-impl-DxZSp6ov.d.ts.map +1 -0
  3. package/dist/clickmap/clickmap-core.d.ts +1 -1
  4. package/dist/clickmap/index.d.ts +1 -1
  5. package/dist/{client-app-o8N3XCYe.d.ts → client-app-DBcv6rRn.d.ts} +13 -6
  6. package/dist/client-app-DBcv6rRn.d.ts.map +1 -0
  7. package/dist/dev-tool/dev-tool-core.d.ts +1 -1
  8. package/dist/dev-tool/index.d.ts +1 -1
  9. package/dist/esm/lib/hexclave-app/apps/implementations/admin-app-impl.d.ts +1 -1
  10. package/dist/esm/lib/hexclave-app/apps/implementations/admin-app-impl.d.ts.map +1 -1
  11. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.d.ts +7 -2
  12. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.d.ts.map +1 -1
  13. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.js +22 -5
  14. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.js.map +1 -1
  15. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.sign-in-cache-warmup.test.d.ts +1 -0
  16. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.sign-in-cache-warmup.test.js +97 -0
  17. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.sign-in-cache-warmup.test.js.map +1 -0
  18. package/dist/esm/lib/hexclave-app/apps/implementations/common.js +2 -2
  19. package/dist/esm/lib/hexclave-app/apps/implementations/server-app-impl.d.ts.map +1 -1
  20. package/dist/esm/lib/hexclave-app/apps/implementations/server-app-impl.js +1 -4
  21. package/dist/esm/lib/hexclave-app/apps/implementations/server-app-impl.js.map +1 -1
  22. package/dist/esm/lib/hexclave-app/apps/interfaces/client-app.d.ts +1 -1
  23. package/dist/esm/lib/hexclave-app/apps/interfaces/client-app.d.ts.map +1 -1
  24. package/dist/esm/lib/hexclave-app/apps/interfaces/client-app.js.map +1 -1
  25. package/dist/esm/lib/hexclave-app/teams/index.d.ts +1 -0
  26. package/dist/esm/lib/hexclave-app/teams/index.d.ts.map +1 -1
  27. package/dist/esm/lib/hexclave-app/teams/index.js.map +1 -1
  28. package/dist/esm/lib/hexclave-app/users/index.d.ts +10 -4
  29. package/dist/esm/lib/hexclave-app/users/index.d.ts.map +1 -1
  30. package/dist/esm/lib/hexclave-app/users/index.js.map +1 -1
  31. package/dist/index.d.ts +1 -1
  32. package/dist/lib/hexclave-app/apps/implementations/admin-app-impl.d.ts +1 -1
  33. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.d.ts +1 -1
  34. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.js +22 -5
  35. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.js.map +1 -1
  36. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.sign-in-cache-warmup.test.d.ts +1 -0
  37. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.sign-in-cache-warmup.test.js +96 -0
  38. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.sign-in-cache-warmup.test.js.map +1 -0
  39. package/dist/lib/hexclave-app/apps/implementations/common.js +2 -2
  40. package/dist/lib/hexclave-app/apps/implementations/index.d.ts +1 -1
  41. package/dist/lib/hexclave-app/apps/implementations/server-app-impl.d.ts +1 -1
  42. package/dist/lib/hexclave-app/apps/implementations/server-app-impl.js +1 -4
  43. package/dist/lib/hexclave-app/apps/implementations/server-app-impl.js.map +1 -1
  44. package/dist/lib/hexclave-app/apps/index.d.ts +1 -1
  45. package/dist/lib/hexclave-app/apps/interfaces/admin-app.d.ts +1 -1
  46. package/dist/lib/hexclave-app/apps/interfaces/client-app.d.ts +1 -1
  47. package/dist/lib/hexclave-app/apps/interfaces/client-app.js.map +1 -1
  48. package/dist/lib/hexclave-app/apps/interfaces/server-app.d.ts +1 -1
  49. package/dist/lib/hexclave-app/index.d.ts +1 -1
  50. package/dist/lib/hexclave-app/projects/index.d.ts +1 -1
  51. package/dist/lib/hexclave-app/teams/index.d.ts +1 -1
  52. package/dist/lib/hexclave-app/teams/index.js.map +1 -1
  53. package/dist/lib/hexclave-app/users/index.d.ts +1 -1
  54. package/dist/lib/hexclave-app/users/index.js.map +1 -1
  55. package/dist/pushed-config-error-overlay/index.d.ts +1 -1
  56. package/package.json +2 -2
  57. package/src/integrations/convex/component/README.md +4 -4
  58. package/src/lib/hexclave-app/apps/implementations/client-app-impl.sign-in-cache-warmup.test.ts +94 -0
  59. package/src/lib/hexclave-app/apps/implementations/client-app-impl.ts +33 -8
  60. package/src/lib/hexclave-app/apps/implementations/server-app-impl.ts +1 -10
  61. package/src/lib/hexclave-app/apps/interfaces/client-app.ts +1 -1
  62. package/src/lib/hexclave-app/teams/index.ts +1 -0
  63. package/src/lib/hexclave-app/users/index.ts +9 -4
  64. package/dist/admin-app-impl-BqCnEjjC.d.ts.map +0 -1
  65. package/dist/client-app-o8N3XCYe.d.ts.map +0 -1
@@ -0,0 +1,97 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { StackClientApp } from "../interfaces/client-app.js";
3
+ //#region src/lib/hexclave-app/apps/implementations/client-app-impl.sign-in-cache-warmup.test.ts
4
+ function createAccessTokenString(refreshTokenId) {
5
+ const encode = (value) => Buffer.from(JSON.stringify(value)).toString("base64url");
6
+ const nowSeconds = Math.floor(Date.now() / 1e3);
7
+ return [
8
+ encode({
9
+ alg: "none",
10
+ typ: "JWT"
11
+ }),
12
+ encode({
13
+ sub: "user-id",
14
+ exp: nowSeconds + 60,
15
+ iat: nowSeconds,
16
+ refresh_token_id: refreshTokenId
17
+ }),
18
+ ""
19
+ ].join(".");
20
+ }
21
+ function createTestSetup(getUser) {
22
+ const clientApp = new StackClientApp({
23
+ baseUrl: "http://localhost:12345",
24
+ projectId: "00000000-0000-4000-8000-000000000000",
25
+ publishableClientKey: "stack-pk-test",
26
+ tokenStore: "memory",
27
+ redirectMethod: "none",
28
+ noAutomaticPrefetch: true
29
+ });
30
+ Reflect.set(Reflect.get(clientApp, "_interface"), "getClientUserByToken", getUser);
31
+ const privateMethod = (name) => (...args) => Reflect.get(clientApp, name).apply(clientApp, args);
32
+ return {
33
+ currentUserCache: Reflect.get(clientApp, "_currentUserCache"),
34
+ signIn: (refreshToken) => privateMethod("_signInToAccountWithTokens")({
35
+ accessToken: createAccessTokenString(`${refreshToken}-id`),
36
+ refreshToken
37
+ }),
38
+ getSessionFromTokenStore: privateMethod("_getSessionFromTokenStore"),
39
+ getTokenStore: async () => privateMethod("_getOrCreateTokenStore")(await privateMethod("_createCookieHelper")())
40
+ };
41
+ }
42
+ describe("StackClientApp sign-in cache warm-up", () => {
43
+ it("has the new session's user cached by the time the token store change is published", async () => {
44
+ let getUserCalls = 0;
45
+ const setup = createTestSetup(async () => {
46
+ getUserCalls += 1;
47
+ return {
48
+ id: "user-id",
49
+ is_anonymous: false,
50
+ is_restricted: false
51
+ };
52
+ });
53
+ const cacheStatusesOnTokenStoreChange = [];
54
+ const tokenStore = await setup.getTokenStore();
55
+ tokenStore.onChange(() => {
56
+ const session = setup.getSessionFromTokenStore(tokenStore);
57
+ cacheStatusesOnTokenStoreChange.push(setup.currentUserCache.getIfCached([session]).status);
58
+ });
59
+ await setup.signIn("refresh-token");
60
+ expect(cacheStatusesOnTokenStoreChange).toEqual(["ok"]);
61
+ expect(setup.currentUserCache.getIfCached([setup.getSessionFromTokenStore(tokenStore)]).data.data).toMatchObject({ id: "user-id" });
62
+ expect(getUserCalls).toBe(1);
63
+ });
64
+ it("doesn't let a slow sign-in publish its tokens on top of a sign-in that started later", async () => {
65
+ let onFirstFetchStarted;
66
+ let releaseFirstFetch;
67
+ const firstFetchStarted = new Promise((resolve) => {
68
+ onFirstFetchStarted = resolve;
69
+ });
70
+ const firstFetchReleased = new Promise((resolve) => {
71
+ releaseFirstFetch = resolve;
72
+ });
73
+ let getUserCalls = 0;
74
+ const setup = createTestSetup(async () => {
75
+ if (++getUserCalls === 1) {
76
+ onFirstFetchStarted();
77
+ await firstFetchReleased;
78
+ }
79
+ return {
80
+ id: "user-id",
81
+ is_anonymous: false,
82
+ is_restricted: false
83
+ };
84
+ });
85
+ const slowSignIn = setup.signIn("old-refresh-token");
86
+ await firstFetchStarted;
87
+ await setup.signIn("new-refresh-token");
88
+ releaseFirstFetch();
89
+ await slowSignIn;
90
+ expect(getUserCalls).toBe(2);
91
+ expect((await setup.getTokenStore()).get().refreshToken).toBe("new-refresh-token");
92
+ });
93
+ });
94
+ //#endregion
95
+ export {};
96
+
97
+ //# sourceMappingURL=client-app-impl.sign-in-cache-warmup.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-app-impl.sign-in-cache-warmup.test.js","names":[],"sources":["../../../../../../src/lib/hexclave-app/apps/implementations/client-app-impl.sign-in-cache-warmup.test.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY UNLESS YOU ALSO EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\nimport { describe, expect, it } from \"vitest\";\nimport { StackClientApp } from \"../interfaces/client-app\";\n\nfunction createAccessTokenString(refreshTokenId: string): string {\n const encode = (value: unknown) => Buffer.from(JSON.stringify(value)).toString(\"base64url\");\n const nowSeconds = Math.floor(Date.now() / 1000);\n return [\n encode({ alg: \"none\", typ: \"JWT\" }),\n encode({ sub: \"user-id\", exp: nowSeconds + 60, iat: nowSeconds, refresh_token_id: refreshTokenId }),\n \"\",\n ].join(\".\");\n}\n\nfunction createTestSetup(getUser: () => Promise<unknown>) {\n const clientApp = new StackClientApp({\n baseUrl: \"http://localhost:12345\",\n projectId: \"00000000-0000-4000-8000-000000000000\",\n publishableClientKey: \"stack-pk-test\",\n tokenStore: \"memory\",\n redirectMethod: \"none\",\n noAutomaticPrefetch: true,\n });\n Reflect.set(Reflect.get(clientApp, \"_interface\"), \"getClientUserByToken\", getUser);\n const privateMethod = (name: string) => (...args: unknown[]) => Reflect.get(clientApp, name).apply(clientApp, args);\n return {\n currentUserCache: Reflect.get(clientApp, \"_currentUserCache\"),\n signIn: (refreshToken: string) => privateMethod(\"_signInToAccountWithTokens\")({\n accessToken: createAccessTokenString(`${refreshToken}-id`),\n refreshToken,\n }),\n getSessionFromTokenStore: privateMethod(\"_getSessionFromTokenStore\"),\n getTokenStore: async () => privateMethod(\"_getOrCreateTokenStore\")(await privateMethod(\"_createCookieHelper\")()),\n };\n}\n\ndescribe(\"StackClientApp sign-in cache warm-up\", () => {\n it(\"has the new session's user cached by the time the token store change is published\", async () => {\n let getUserCalls = 0;\n const setup = createTestSetup(async () => {\n getUserCalls += 1;\n return { id: \"user-id\", is_anonymous: false, is_restricted: false };\n });\n\n // `useUser()` hooks re-read the cache when the session changes, so if the cache were still cold here, they'd\n // suspend and flash their Suspense fallback over the UI that's already on the screen.\n const cacheStatusesOnTokenStoreChange: string[] = [];\n const tokenStore = await setup.getTokenStore();\n tokenStore.onChange(() => {\n const session = setup.getSessionFromTokenStore(tokenStore);\n cacheStatusesOnTokenStoreChange.push(setup.currentUserCache.getIfCached([session]).status);\n });\n\n await setup.signIn(\"refresh-token\");\n\n expect(cacheStatusesOnTokenStoreChange).toEqual([\"ok\"]);\n const cachedUser = setup.currentUserCache.getIfCached([setup.getSessionFromTokenStore(tokenStore)]);\n expect(cachedUser.data.data).toMatchObject({ id: \"user-id\" });\n expect(getUserCalls).toBe(1);\n });\n\n it(\"doesn't let a slow sign-in publish its tokens on top of a sign-in that started later\", async () => {\n let onFirstFetchStarted!: () => void;\n let releaseFirstFetch!: () => void;\n const firstFetchStarted = new Promise<void>((resolve) => {\n onFirstFetchStarted = resolve;\n });\n const firstFetchReleased = new Promise<void>((resolve) => {\n releaseFirstFetch = resolve;\n });\n\n let getUserCalls = 0;\n const setup = createTestSetup(async () => {\n // Only the first sign-in's fetch blocks, so the second one deterministically gets to publish while it waits.\n if (++getUserCalls === 1) {\n onFirstFetchStarted();\n await firstFetchReleased;\n }\n return { id: \"user-id\", is_anonymous: false, is_restricted: false };\n });\n\n const slowSignIn = setup.signIn(\"old-refresh-token\");\n await firstFetchStarted;\n await setup.signIn(\"new-refresh-token\");\n releaseFirstFetch();\n await slowSignIn;\n\n expect(getUserCalls).toBe(2);\n expect((await setup.getTokenStore()).get().refreshToken).toBe(\"new-refresh-token\");\n });\n});\n"],"mappings":";;;AAOA,SAAS,wBAAwB,gBAAgC;CAC/D,MAAM,UAAU,UAAmB,OAAO,KAAK,KAAK,UAAU,KAAK,CAAC,CAAC,CAAC,SAAS,WAAW;CAC1F,MAAM,aAAa,KAAK,MAAM,KAAK,IAAI,IAAI,GAAI;CAC/C,OAAO;EACL,OAAO;GAAE,KAAK;GAAQ,KAAK;EAAM,CAAC;EAClC,OAAO;GAAE,KAAK;GAAW,KAAK,aAAa;GAAI,KAAK;GAAY,kBAAkB;EAAe,CAAC;EAClG;CACF,CAAC,CAAC,KAAK,GAAG;AACZ;AAEA,SAAS,gBAAgB,SAAiC;CACxD,MAAM,YAAY,IAAI,eAAe;EACnC,SAAS;EACT,WAAW;EACX,sBAAsB;EACtB,YAAY;EACZ,gBAAgB;EAChB,qBAAqB;CACvB,CAAC;CACD,QAAQ,IAAI,QAAQ,IAAI,WAAW,YAAY,GAAG,wBAAwB,OAAO;CACjF,MAAM,iBAAiB,UAAkB,GAAG,SAAoB,QAAQ,IAAI,WAAW,IAAI,CAAC,CAAC,MAAM,WAAW,IAAI;CAClH,OAAO;EACL,kBAAkB,QAAQ,IAAI,WAAW,mBAAmB;EAC5D,SAAS,iBAAyB,cAAc,4BAA4B,CAAC,CAAC;GAC5E,aAAa,wBAAwB,GAAG,aAAa,IAAI;GACzD;EACF,CAAC;EACD,0BAA0B,cAAc,2BAA2B;EACnE,eAAe,YAAY,cAAc,wBAAwB,CAAC,CAAC,MAAM,cAAc,qBAAqB,CAAC,CAAC,CAAC;CACjH;AACF;AAEA,SAAS,8CAA8C;CACrD,GAAG,qFAAqF,YAAY;EAClG,IAAI,eAAe;EACnB,MAAM,QAAQ,gBAAgB,YAAY;GACxC,gBAAgB;GAChB,OAAO;IAAE,IAAI;IAAW,cAAc;IAAO,eAAe;GAAM;EACpE,CAAC;EAID,MAAM,kCAA4C,CAAC;EACnD,MAAM,aAAa,MAAM,MAAM,cAAc;EAC7C,WAAW,eAAe;GACxB,MAAM,UAAU,MAAM,yBAAyB,UAAU;GACzD,gCAAgC,KAAK,MAAM,iBAAiB,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;EAC3F,CAAC;EAED,MAAM,MAAM,OAAO,eAAe;EAElC,OAAO,+BAA+B,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;EAEtD,OADmB,MAAM,iBAAiB,YAAY,CAAC,MAAM,yBAAyB,UAAU,CAAC,CACjF,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,cAAc,EAAE,IAAI,UAAU,CAAC;EAC5D,OAAO,YAAY,CAAC,CAAC,KAAK,CAAC;CAC7B,CAAC;CAED,GAAG,wFAAwF,YAAY;EACrG,IAAI;EACJ,IAAI;EACJ,MAAM,oBAAoB,IAAI,SAAe,YAAY;GACvD,sBAAsB;EACxB,CAAC;EACD,MAAM,qBAAqB,IAAI,SAAe,YAAY;GACxD,oBAAoB;EACtB,CAAC;EAED,IAAI,eAAe;EACnB,MAAM,QAAQ,gBAAgB,YAAY;GAExC,IAAI,EAAE,iBAAiB,GAAG;IACxB,oBAAoB;IACpB,MAAM;GACR;GACA,OAAO;IAAE,IAAI;IAAW,cAAc;IAAO,eAAe;GAAM;EACpE,CAAC;EAED,MAAM,aAAa,MAAM,OAAO,mBAAmB;EACnD,MAAM;EACN,MAAM,MAAM,OAAO,mBAAmB;EACtC,kBAAkB;EAClB,MAAM;EAEN,OAAO,YAAY,CAAC,CAAC,KAAK,CAAC;EAC3B,QAAQ,MAAM,MAAM,cAAc,EAAA,CAAG,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,mBAAmB;CACnF,CAAC;AACH,CAAC"}
@@ -12,8 +12,8 @@ import { resolveHandlerUrls } from "../../url-targets.js";
12
12
  import { AsyncCache } from "@hexclave/shared/dist/utils/caches";
13
13
  import { createGlobal, getGlobal } from "@hexclave/shared/dist/utils/globals";
14
14
  //#region src/lib/hexclave-app/apps/implementations/common.ts
15
- const clientVersion = "js @hexclave/js@1.0.66";
16
- if ("js @hexclave/js@1.0.66".startsWith("STACK_COMPILE_TIME"));
15
+ const clientVersion = "js @hexclave/js@1.0.68";
16
+ if ("js @hexclave/js@1.0.68".startsWith("STACK_COMPILE_TIME"));
17
17
  const replaceHexclavePortPrefix = (input) => {
18
18
  if (!input) return input;
19
19
  const prefix = envVars.HEXCLAVE_PORT_PREFIX;
@@ -1 +1 @@
1
- {"version":3,"file":"server-app-impl.d.ts","names":[],"sources":["../../../../../../src/lib/hexclave-app/apps/implementations/server-app-impl.ts"],"mappings":"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"}
1
+ {"version":3,"file":"server-app-impl.d.ts","names":[],"sources":["../../../../../../src/lib/hexclave-app/apps/implementations/server-app-impl.ts"],"mappings":"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"}
@@ -418,14 +418,11 @@ var _HexclaveServerAppImplIncomplete = class extends _HexclaveClientAppImplIncom
418
418
  options?.or === "redirect"
419
419
  ], "write-only"));
420
420
  }
421
- const crudWithAdminRestriction = crud;
422
421
  return withUserDestructureGuard({
423
422
  ...super._createBaseUser(crud),
424
423
  lastActiveAt: new Date(crud.last_active_at_millis),
425
424
  serverMetadata: crud.server_metadata,
426
- restrictedByAdmin: crudWithAdminRestriction.restricted_by_admin,
427
- restrictedByAdminReason: crudWithAdminRestriction.restricted_by_admin_reason,
428
- restrictedByAdminPrivateDetails: crudWithAdminRestriction.restricted_by_admin_private_details,
425
+ restrictedByAdminPrivateDetails: crud.restricted_by_admin_private_details,
429
426
  countryCode: crud.country_code,
430
427
  riskScores: { signUp: {
431
428
  bot: crud.risk_scores.sign_up.bot,