@unisim/sdk 0.151.2 → 0.152.1

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 (44) hide show
  1. package/dist/DropdownSurface.d.ts.map +1 -1
  2. package/dist/DropdownSurface.js +7 -1
  3. package/dist/DropdownSurface.js.map +1 -1
  4. package/dist/SignInMethodsDialog.d.ts +8 -0
  5. package/dist/SignInMethodsDialog.d.ts.map +1 -0
  6. package/dist/SignInMethodsDialog.js +229 -0
  7. package/dist/SignInMethodsDialog.js.map +1 -0
  8. package/dist/UniversalAppsNavBar.d.ts.map +1 -1
  9. package/dist/UniversalAppsNavBar.js +4 -1
  10. package/dist/UniversalAppsNavBar.js.map +1 -1
  11. package/dist/UniversalNavBar.d.ts.map +1 -1
  12. package/dist/UniversalNavBar.js +4 -1
  13. package/dist/UniversalNavBar.js.map +1 -1
  14. package/dist/UserCountLine.d.ts +8 -3
  15. package/dist/UserCountLine.d.ts.map +1 -1
  16. package/dist/UserCountLine.js +54 -26
  17. package/dist/UserCountLine.js.map +1 -1
  18. package/dist/UserProfile.d.ts.map +1 -1
  19. package/dist/UserProfile.js +41 -3
  20. package/dist/UserProfile.js.map +1 -1
  21. package/dist/i18n.d.ts.map +1 -1
  22. package/dist/i18n.js +88 -0
  23. package/dist/i18n.js.map +1 -1
  24. package/dist/index.d.ts +4 -0
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +3 -0
  27. package/dist/index.js.map +1 -1
  28. package/dist/nativeOAuth.d.ts +6 -0
  29. package/dist/nativeOAuth.d.ts.map +1 -1
  30. package/dist/nativeOAuth.js +4 -1
  31. package/dist/nativeOAuth.js.map +1 -1
  32. package/dist/presence.d.ts +6 -2
  33. package/dist/presence.d.ts.map +1 -1
  34. package/dist/presence.js +6 -2
  35. package/dist/presence.js.map +1 -1
  36. package/dist/signInMethods.d.ts +60 -0
  37. package/dist/signInMethods.d.ts.map +1 -0
  38. package/dist/signInMethods.js +137 -0
  39. package/dist/signInMethods.js.map +1 -0
  40. package/dist/useAppMenu.d.ts +13 -0
  41. package/dist/useAppMenu.d.ts.map +1 -1
  42. package/dist/useAppMenu.js +13 -0
  43. package/dist/useAppMenu.js.map +1 -1
  44. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"presence.js","sourceRoot":"","sources":["../src/presence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"presence.js","sourceRoot":"","sources":["../src/presence.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ import type { useUniversal } from './provider.js';
2
+ import { type OAuthProvider } from './oauth.js';
3
+ type Supabase = ReturnType<typeof useUniversal>['supabase'];
4
+ export type SignInMethodProvider = 'email' | OAuthProvider;
5
+ export interface SignInMethod {
6
+ provider: SignInMethodProvider | string;
7
+ /** The address that identity carries, where it has one. */
8
+ email: string | null;
9
+ /** The identity as GoTrue returned it — what `unlinkIdentity` needs. */
10
+ identity: unknown;
11
+ }
12
+ /** The provider a web connect left for, if it is still fresh. */
13
+ export declare function readConnectIntent(now?: number): {
14
+ provider: OAuthProvider;
15
+ at: number;
16
+ } | null;
17
+ export declare function hasPendingConnect(): boolean;
18
+ export declare function clearConnectIntent(): void;
19
+ /** The account's ways in, read fresh from GoTrue. */
20
+ export declare function listSignInMethods(supabase: Supabase): Promise<{
21
+ methods: SignInMethod[];
22
+ error: string | null;
23
+ }>;
24
+ /** Removing the last way in would lock the account; never offered. */
25
+ export declare function canDisconnect(methods: readonly SignInMethod[]): boolean;
26
+ export declare function disconnectSignInMethod(supabase: Supabase, method: SignInMethod, methods: readonly SignInMethod[]): Promise<{
27
+ ok: true;
28
+ } | {
29
+ ok: false;
30
+ message: string;
31
+ code: string | null;
32
+ }>;
33
+ export type ConnectResult = {
34
+ status: 'redirecting';
35
+ } | {
36
+ status: 'connected';
37
+ } | {
38
+ status: 'cancelled';
39
+ } | {
40
+ status: 'error';
41
+ message: string;
42
+ code: string | null;
43
+ };
44
+ /**
45
+ * Attach a provider to the SIGNED-IN account. On the web the page leaves for
46
+ * the provider and comes back (see the header); in a phone app it happens in
47
+ * place and resolves with the outcome.
48
+ */
49
+ export declare function connectSignInMethod(supabase: Supabase, provider: OAuthProvider, options: {
50
+ supabaseUrl: string;
51
+ anonKey: string;
52
+ loginHint?: string;
53
+ }): Promise<ConnectResult>;
54
+ /** True for GoTrue's "that provider account already belongs to another Universal ID". */
55
+ export declare function isTakenElsewhere(error: {
56
+ code: string | null;
57
+ message: string;
58
+ } | null): boolean;
59
+ export {};
60
+ //# sourceMappingURL=signInMethods.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signInMethods.d.ts","sourceRoot":"","sources":["../src/signInMethods.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,YAAY,CAAA;AAyBnB,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,UAAU,CAAC,CAAA;AAE3D,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,aAAa,CAAA;AAE1D,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAAA;IACvC,2DAA2D;IAC3D,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,wEAAwE;IACxE,QAAQ,EAAE,OAAO,CAAA;CAClB;AAcD,iEAAiE;AACjE,wBAAgB,iBAAiB,CAAC,GAAG,SAAa,GAAG;IAAE,QAAQ,EAAE,aAAa,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAclG;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED,wBAAgB,kBAAkB,IAAI,IAAI,CAMzC;AAED,qDAAqD;AACrD,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC;IAAE,OAAO,EAAE,YAAY,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAa5D;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG,OAAO,CAEvE;AAED,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,SAAS,YAAY,EAAE,GAC/B,OAAO,CAAC;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAa7E;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,MAAM,EAAE,aAAa,CAAA;CAAE,GACzB;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,GACvB;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,GACvB;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAA;AAE7D;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpE,OAAO,CAAC,aAAa,CAAC,CAwCxB;AAED,yFAAyF;AACzF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,GAAG,OAAO,CAIhG"}
@@ -0,0 +1,137 @@
1
+ 'use client';
2
+ import { cleanRedirectTo, loginHintParams, rememberOAuthProvider, } from './oauth.js';
3
+ import { isNativeShell } from './sessionStorage.js';
4
+ import { startNativeOAuthSignIn } from './nativeOAuth.js';
5
+ const CONNECT_KEY = 'unisim.oauth.connect';
6
+ /** Long enough for a slow provider page; short enough never to misfire later. */
7
+ const CONNECT_LIFETIME_MS = 15 * 60 * 1000;
8
+ function store() {
9
+ try {
10
+ return typeof window === 'undefined' ? null : window.sessionStorage;
11
+ }
12
+ catch {
13
+ return null;
14
+ }
15
+ }
16
+ /** The provider a web connect left for, if it is still fresh. */
17
+ export function readConnectIntent(now = Date.now()) {
18
+ try {
19
+ const raw = store()?.getItem(CONNECT_KEY);
20
+ if (!raw)
21
+ return null;
22
+ const parsed = JSON.parse(raw);
23
+ if (typeof parsed.at !== 'number' || now - parsed.at > CONNECT_LIFETIME_MS) {
24
+ clearConnectIntent();
25
+ return null;
26
+ }
27
+ if (parsed.provider !== 'apple' && parsed.provider !== 'google' && parsed.provider !== 'azure')
28
+ return null;
29
+ return { provider: parsed.provider, at: parsed.at };
30
+ }
31
+ catch {
32
+ return null;
33
+ }
34
+ }
35
+ export function hasPendingConnect() {
36
+ return readConnectIntent() !== null;
37
+ }
38
+ export function clearConnectIntent() {
39
+ try {
40
+ store()?.removeItem(CONNECT_KEY);
41
+ }
42
+ catch {
43
+ /* no storage */
44
+ }
45
+ }
46
+ /** The account's ways in, read fresh from GoTrue. */
47
+ export async function listSignInMethods(supabase) {
48
+ try {
49
+ const { data, error } = await supabase.auth.getUserIdentities();
50
+ if (error)
51
+ return { methods: [], error: error.message };
52
+ const methods = (data?.identities ?? []).map((identity) => ({
53
+ provider: identity.provider,
54
+ email: typeof identity.identity_data?.email === 'string' ? identity.identity_data.email : null,
55
+ identity,
56
+ }));
57
+ return { methods, error: null };
58
+ }
59
+ catch (err) {
60
+ return { methods: [], error: err.message || 'Could not read your sign-in methods' };
61
+ }
62
+ }
63
+ /** Removing the last way in would lock the account; never offered. */
64
+ export function canDisconnect(methods) {
65
+ return methods.length > 1;
66
+ }
67
+ export async function disconnectSignInMethod(supabase, method, methods) {
68
+ if (!canDisconnect(methods)) {
69
+ return { ok: false, message: 'This is your only way to sign in.', code: 'last_method' };
70
+ }
71
+ try {
72
+ const { error } = await supabase.auth.unlinkIdentity(method.identity);
73
+ if (error)
74
+ return { ok: false, message: error.message, code: error.code ?? null };
75
+ return { ok: true };
76
+ }
77
+ catch (err) {
78
+ return { ok: false, message: err.message || 'Could not disconnect', code: null };
79
+ }
80
+ }
81
+ /**
82
+ * Attach a provider to the SIGNED-IN account. On the web the page leaves for
83
+ * the provider and comes back (see the header); in a phone app it happens in
84
+ * place and resolves with the outcome.
85
+ */
86
+ export async function connectSignInMethod(supabase, provider, options) {
87
+ if (isNativeShell()) {
88
+ const result = await startNativeOAuthSignIn(supabase, provider, {
89
+ supabaseUrl: options.supabaseUrl,
90
+ anonKey: options.anonKey,
91
+ loginHint: options.loginHint,
92
+ linkToCurrentUser: true,
93
+ });
94
+ if (result.status === 'signed-in')
95
+ return { status: 'connected' };
96
+ if (result.status === 'cancelled')
97
+ return { status: 'cancelled' };
98
+ return {
99
+ status: 'error',
100
+ message: result.error?.message ?? 'Could not connect',
101
+ code: result.error?.code ?? null,
102
+ };
103
+ }
104
+ if (typeof window === 'undefined') {
105
+ return { status: 'error', message: 'No browser to connect from', code: null };
106
+ }
107
+ try {
108
+ store()?.setItem(CONNECT_KEY, JSON.stringify({ provider, at: Date.now() }));
109
+ }
110
+ catch {
111
+ /* no storage: the panel just will not reopen by itself */
112
+ }
113
+ rememberOAuthProvider(provider);
114
+ const { error } = await supabase.auth.linkIdentity({
115
+ provider,
116
+ options: {
117
+ // Cleaned: the return must carry no stale error and no fragment, or the
118
+ // updated session is discarded (see cleanRedirectTo).
119
+ redirectTo: cleanRedirectTo(window.location.href),
120
+ queryParams: loginHintParams(provider, options.loginHint),
121
+ },
122
+ });
123
+ if (error) {
124
+ clearConnectIntent();
125
+ return { status: 'error', message: error.message, code: error.code ?? null };
126
+ }
127
+ return { status: 'redirecting' };
128
+ }
129
+ /** True for GoTrue's "that provider account already belongs to another Universal ID". */
130
+ export function isTakenElsewhere(error) {
131
+ if (!error)
132
+ return false;
133
+ if (error.code === 'identity_already_exists')
134
+ return true;
135
+ return /already linked to another user|already (been )?(linked|registered|exists)/i.test(error.message);
136
+ }
137
+ //# sourceMappingURL=signInMethods.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signInMethods.js","sourceRoot":"","sources":["../src/signInMethods.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,19 @@ export declare function AppMenuProvider({ close, children, }: {
6
6
  * Returns a function that closes the surrounding app menu.
7
7
  *
8
8
  * Outside one, returns a no-op — call it unconditionally rather than guarding.
9
+ *
10
+ * ⚠️ **A row CLOSES the menu by default** (James, 2026-09-18) — the suite rule,
11
+ * in `Docs_UNI_SIM/landmines.md` under Standing policies. `onClick={() => {
12
+ * closeMenu(); doTheThing() }}`, and anything that stays open needs a note at
13
+ * the call site saying why. The menu is portaled at `NAV_OVERLAY_Z_INDEX`,
14
+ * above every host dialog by design, so a row that opens a screen and leaves
15
+ * the menu up drops the menu on top of it.
16
+ *
17
+ * The exception that actually comes up: **a row that opens a file picker must
18
+ * NOT close the menu.** The `<input type="file">` is usually rendered by the
19
+ * menu component, so closing unmounts it while the OS picker is still open and
20
+ * the chosen files never arrive — silently. The other is a row whose whole
21
+ * effect is inside the menu (the user-count line's suite/app toggle).
9
22
  */
10
23
  export declare function useCloseAppMenu(): () => void;
11
24
  //# sourceMappingURL=useAppMenu.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAppMenu.d.ts","sourceRoot":"","sources":["../src/useAppMenu.tsx"],"names":[],"mappings":"AAyBA,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,2CAEA;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,MAAM,IAAI,CAG5C"}
1
+ {"version":3,"file":"useAppMenu.d.ts","sourceRoot":"","sources":["../src/useAppMenu.tsx"],"names":[],"mappings":"AAyBA,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,2CAEA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,IAAI,MAAM,IAAI,CAG5C"}
@@ -29,6 +29,19 @@ export function AppMenuProvider({ close, children, }) {
29
29
  * Returns a function that closes the surrounding app menu.
30
30
  *
31
31
  * Outside one, returns a no-op — call it unconditionally rather than guarding.
32
+ *
33
+ * ⚠️ **A row CLOSES the menu by default** (James, 2026-09-18) — the suite rule,
34
+ * in `Docs_UNI_SIM/landmines.md` under Standing policies. `onClick={() => {
35
+ * closeMenu(); doTheThing() }}`, and anything that stays open needs a note at
36
+ * the call site saying why. The menu is portaled at `NAV_OVERLAY_Z_INDEX`,
37
+ * above every host dialog by design, so a row that opens a screen and leaves
38
+ * the menu up drops the menu on top of it.
39
+ *
40
+ * The exception that actually comes up: **a row that opens a file picker must
41
+ * NOT close the menu.** The `<input type="file">` is usually rendered by the
42
+ * menu component, so closing unmounts it while the OS picker is still open and
43
+ * the chosen files never arrive — silently. The other is a row whose whole
44
+ * effect is inside the menu (the user-count line's suite/app toggle).
32
45
  */
33
46
  export function useCloseAppMenu() {
34
47
  const ctx = useContext(AppMenuContext);
@@ -1 +1 @@
1
- {"version":3,"file":"useAppMenu.js","sourceRoot":"","sources":["../src/useAppMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEjD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,cAAc,GAAG,aAAa,CAA+B,IAAI,CAAC,CAAA;AAExE,MAAM,UAAU,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,GAIT;IACC,OAAO,KAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,YAAG,QAAQ,GAA2B,CAAA;AACxF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,OAAO,GAAG,EAAE,KAAK,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;AACjC,CAAC"}
1
+ {"version":3,"file":"useAppMenu.js","sourceRoot":"","sources":["../src/useAppMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEjD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,cAAc,GAAG,aAAa,CAA+B,IAAI,CAAC,CAAA;AAExE,MAAM,UAAU,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,GAIT;IACC,OAAO,KAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,YAAG,QAAQ,GAA2B,CAAA;AACxF,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,OAAO,GAAG,EAAE,KAAK,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;AACjC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unisim/sdk",
3
- "version": "0.151.2",
3
+ "version": "0.152.1",
4
4
  "description": "Shared React SDK for the Universal Suite — auth, entitlements, usage telemetry, changelog, org admin.",
5
5
  "license": "MIT",
6
6
  "author": "Universal Simulation Ltd",
@@ -88,6 +88,7 @@
88
88
  "test:native-oauth": "npm run build && node tests/native-oauth.mjs",
89
89
  "test:google-signin": "npm run build && node tests/google-web-signin.mjs",
90
90
  "test:trial-merge": "npm run build && node tests/trial-merge.mjs",
91
+ "test:sign-in-methods": "npm run build && node tests/sign-in-methods.mjs",
91
92
  "test:email-code": "npm run build && node tests/email-code.mjs",
92
93
  "test:signin-sso": "npm run build && node tests/signin-sso.browser.mjs",
93
94
  "prepublishOnly": "npm run typecheck && npm run build",