@atlasauth/js 0.1.5 → 0.1.7
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/native.d.ts +98 -2
- package/dist/native.js +237 -9
- package/dist/native.js.map +1 -1
- package/dist/telemetry.d.ts +15 -1
- package/dist/telemetry.js +27 -2
- package/dist/telemetry.js.map +1 -1
- package/package.json +1 -1
package/dist/native.d.ts
CHANGED
|
@@ -53,6 +53,28 @@ export declare function nativeSignIn(client: FapiClient, input: {
|
|
|
53
53
|
idToken: string;
|
|
54
54
|
nonce?: string;
|
|
55
55
|
}): Promise<FlowState>;
|
|
56
|
+
/** The client-observed reason a native (in-page) provider could not be used. */
|
|
57
|
+
export type ProviderUnavailableReason = 'script_blocked' | 'not_rendered';
|
|
58
|
+
/**
|
|
59
|
+
* Best-effort health beacon: tell Atlas's server that a native (in-page)
|
|
60
|
+
* provider could not be rendered/used on this page, so the dashboard can surface
|
|
61
|
+
* a provider-health signal. This COMPLEMENTS the caller's `onProviderUnavailable`
|
|
62
|
+
* callback — the callback tells the customer's page, this tells Atlas.
|
|
63
|
+
*
|
|
64
|
+
* Fire-and-forget: the endpoint answers `204 No Content`; the response is ignored
|
|
65
|
+
* and every error is swallowed. Telemetry must never disturb a real sign-in, nor
|
|
66
|
+
* its fall back to the ordinary redirect flow.
|
|
67
|
+
*
|
|
68
|
+
* Transport — why fetch+keepalive and NOT `navigator.sendBeacon`: this endpoint
|
|
69
|
+
* authenticates with the `x-publishable-key` HEADER (the same publishable-key
|
|
70
|
+
* auth every {@link FapiClient} request already sends). `sendBeacon` cannot set
|
|
71
|
+
* arbitrary request headers, so a beacon would arrive with no pk, be
|
|
72
|
+
* unattributable, and get dropped — it can NOT reliably carry the pk here. So we
|
|
73
|
+
* POST through the FapiClient with `keepalive: true`, which carries the pk header
|
|
74
|
+
* AND, like sendBeacon, lets the request outlive the page navigating away (e.g.
|
|
75
|
+
* the redirect fallback firing immediately after the failure).
|
|
76
|
+
*/
|
|
77
|
+
export declare function reportProviderUnavailable(client: FapiClient, provider: string, reason: ProviderUnavailableReason): void;
|
|
56
78
|
interface GsiId {
|
|
57
79
|
initialize(config: Record<string, unknown>): void;
|
|
58
80
|
prompt(listener?: (notification: unknown) => void): void;
|
|
@@ -114,11 +136,24 @@ export declare function renderGoogleButton(opts: {
|
|
|
114
136
|
*
|
|
115
137
|
* The failure mode people hit is misalignment — the invisible button not covering
|
|
116
138
|
* the visible one, so clicks miss. This guards against it: the overlay fills the
|
|
117
|
-
* wrapper,
|
|
118
|
-
*
|
|
139
|
+
* wrapper, GSI's rendered button is STRETCHED (inline) to fill the overlay rather
|
|
140
|
+
* than centred-and-clipped, and a ResizeObserver re-renders on layout changes so
|
|
141
|
+
* the whole surface stays clickable. In development it also self-verifies the
|
|
142
|
+
* coverage and warns (loudly, never throwing) when the geometry is off.
|
|
119
143
|
*
|
|
120
144
|
* `wrapper` is YOUR styled button (or its container); it is made position:relative
|
|
121
145
|
* if it is not already positioned. Returns `{ destroy }` to tear the overlay down.
|
|
146
|
+
*
|
|
147
|
+
* `visible` (default false) picks WHAT the user sees (customer spec 4.5):
|
|
148
|
+
* - false — today's behaviour: Google's button is drawn at opacity 0 as an
|
|
149
|
+
* invisible click-target overlaid on YOUR styled button. The user sees your
|
|
150
|
+
* button; the click lands on Google's. The overlay is `aria-hidden`.
|
|
151
|
+
* - true — Google's OWN button is drawn VISIBLY (opacity 1), on top of the
|
|
152
|
+
* wrapper, and IS the button the user operates (for teams who'd rather not
|
|
153
|
+
* maintain a styled button). It is NOT aria-hidden, since it is the real
|
|
154
|
+
* control. The host button underneath is then unnecessary.
|
|
155
|
+
* Either way the stretch-to-fill + ResizeObserver run, so Google's button tracks
|
|
156
|
+
* the wrapper's width.
|
|
122
157
|
*/
|
|
123
158
|
export declare function renderGoogleOverlayButton(opts: {
|
|
124
159
|
wrapper: HTMLElement;
|
|
@@ -129,8 +164,69 @@ export declare function renderGoogleOverlayButton(opts: {
|
|
|
129
164
|
size?: 'large' | 'medium' | 'small';
|
|
130
165
|
/** Also show the One-Tap prompt (OFF by default; the overlay button always shows). */
|
|
131
166
|
oneTap?: boolean;
|
|
167
|
+
/**
|
|
168
|
+
* Render Google's button VISIBLY (opacity 1) instead of as a transparent overlay
|
|
169
|
+
* (default false = the invisible-overlay technique). See the function doc.
|
|
170
|
+
*/
|
|
171
|
+
visible?: boolean;
|
|
132
172
|
host?: GsiHost;
|
|
133
173
|
}): Promise<{
|
|
134
174
|
destroy: () => void;
|
|
135
175
|
}>;
|
|
176
|
+
/** A measured bounding box, plain numbers so the diagnosis serialises cleanly. */
|
|
177
|
+
export interface Rect {
|
|
178
|
+
width: number;
|
|
179
|
+
height: number;
|
|
180
|
+
top: number;
|
|
181
|
+
left: number;
|
|
182
|
+
right: number;
|
|
183
|
+
bottom: number;
|
|
184
|
+
}
|
|
185
|
+
/** The overlay-vs-wrapper geometry for a currently mounted overlay button. */
|
|
186
|
+
export interface OverlayGeometry {
|
|
187
|
+
/** Does the transparent overlay cover the host button on every edge? */
|
|
188
|
+
covers: boolean;
|
|
189
|
+
wrapper: Rect;
|
|
190
|
+
overlay: Rect;
|
|
191
|
+
/** The GSI iframe's size, or null if no iframe is present yet. */
|
|
192
|
+
iframe: {
|
|
193
|
+
width: number;
|
|
194
|
+
height: number;
|
|
195
|
+
} | null;
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* The knowable facts about a provider's native-sign-in setup, as the SDK can see
|
|
199
|
+
* them. Deliberately honest about its limits: it reports the CURRENT page origin,
|
|
200
|
+
* NOT the provider's registered JavaScript origins — the SDK cannot read Google's
|
|
201
|
+
* client config, so the caller must compare `origin` against what they registered.
|
|
202
|
+
*/
|
|
203
|
+
export interface ProviderDiagnosis {
|
|
204
|
+
provider: string;
|
|
205
|
+
/** Resolved render mode from `/v1/client/environment` (`native` when unset but native), else null if the provider isn't listed. */
|
|
206
|
+
mode: 'native' | 'redirect' | null;
|
|
207
|
+
/** The public client_id from the environment, or null. */
|
|
208
|
+
clientId: string | null;
|
|
209
|
+
/** Whether the environment marks this provider native. */
|
|
210
|
+
native: boolean;
|
|
211
|
+
/** This page's origin — compare it to YOUR registered JS origins; the SDK can't. */
|
|
212
|
+
origin: string | null;
|
|
213
|
+
/** Overlay geometry if a button for this provider is currently mounted, else null. */
|
|
214
|
+
overlay: OverlayGeometry | null;
|
|
215
|
+
/** Has a Google credential been minted in this session? (Only tracked for google.) */
|
|
216
|
+
credentialMintedThisSession: boolean;
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Collect the knowable facts about a native provider's setup for a support ticket
|
|
220
|
+
* or a dev console: its resolved `mode` and `client_id` (from
|
|
221
|
+
* `/v1/client/environment`), whether it's native, the current page origin, the
|
|
222
|
+
* live overlay geometry IF a button is mounted, and whether a Google credential has
|
|
223
|
+
* been minted this session. Hook-free, SSR-safe, and never throws — a failed
|
|
224
|
+
* environment fetch simply leaves the server-sourced fields null.
|
|
225
|
+
*
|
|
226
|
+
* It does NOT (and cannot) report the provider's registered JavaScript origins: the
|
|
227
|
+
* caller compares the returned `origin` against what they registered with Google.
|
|
228
|
+
*/
|
|
229
|
+
export declare function diagnoseProvider(client: FapiClient, provider: string): Promise<ProviderDiagnosis>;
|
|
230
|
+
/** Reset the session credential flag (tests). */
|
|
231
|
+
export declare function resetGoogleCredentialFlag(): void;
|
|
136
232
|
export {};
|
package/dist/native.js
CHANGED
|
@@ -13,11 +13,14 @@ exports.nativeSignInBody = nativeSignInBody;
|
|
|
13
13
|
exports.parseNativeSignInResponse = parseNativeSignInResponse;
|
|
14
14
|
exports.mintNativeNonce = mintNativeNonce;
|
|
15
15
|
exports.nativeSignIn = nativeSignIn;
|
|
16
|
+
exports.reportProviderUnavailable = reportProviderUnavailable;
|
|
16
17
|
exports.loadGoogleIdentityServices = loadGoogleIdentityServices;
|
|
17
18
|
exports.resetGoogleIdentityServices = resetGoogleIdentityServices;
|
|
18
19
|
exports.requestGoogleCredential = requestGoogleCredential;
|
|
19
20
|
exports.renderGoogleButton = renderGoogleButton;
|
|
20
21
|
exports.renderGoogleOverlayButton = renderGoogleOverlayButton;
|
|
22
|
+
exports.diagnoseProvider = diagnoseProvider;
|
|
23
|
+
exports.resetGoogleCredentialFlag = resetGoogleCredentialFlag;
|
|
21
24
|
const fapi_1 = require("./fapi");
|
|
22
25
|
/** Build the POST body for `/v1/client/sign_ins/id_token`. */
|
|
23
26
|
function nativeSignInBody(input) {
|
|
@@ -79,9 +82,62 @@ async function nativeSignIn(client, input) {
|
|
|
79
82
|
ticket: response.data.ticket ?? null,
|
|
80
83
|
};
|
|
81
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* Best-effort health beacon: tell Atlas's server that a native (in-page)
|
|
87
|
+
* provider could not be rendered/used on this page, so the dashboard can surface
|
|
88
|
+
* a provider-health signal. This COMPLEMENTS the caller's `onProviderUnavailable`
|
|
89
|
+
* callback — the callback tells the customer's page, this tells Atlas.
|
|
90
|
+
*
|
|
91
|
+
* Fire-and-forget: the endpoint answers `204 No Content`; the response is ignored
|
|
92
|
+
* and every error is swallowed. Telemetry must never disturb a real sign-in, nor
|
|
93
|
+
* its fall back to the ordinary redirect flow.
|
|
94
|
+
*
|
|
95
|
+
* Transport — why fetch+keepalive and NOT `navigator.sendBeacon`: this endpoint
|
|
96
|
+
* authenticates with the `x-publishable-key` HEADER (the same publishable-key
|
|
97
|
+
* auth every {@link FapiClient} request already sends). `sendBeacon` cannot set
|
|
98
|
+
* arbitrary request headers, so a beacon would arrive with no pk, be
|
|
99
|
+
* unattributable, and get dropped — it can NOT reliably carry the pk here. So we
|
|
100
|
+
* POST through the FapiClient with `keepalive: true`, which carries the pk header
|
|
101
|
+
* AND, like sendBeacon, lets the request outlive the page navigating away (e.g.
|
|
102
|
+
* the redirect fallback firing immediately after the failure).
|
|
103
|
+
*/
|
|
104
|
+
function reportProviderUnavailable(client, provider, reason) {
|
|
105
|
+
// SSR-safe: there is no browser here to send a beacon from.
|
|
106
|
+
if (typeof window === 'undefined' || typeof navigator === 'undefined')
|
|
107
|
+
return;
|
|
108
|
+
try {
|
|
109
|
+
// `request` already sets `x-publishable-key` + `credentials: 'include'` and
|
|
110
|
+
// never throws on a network failure; `keepalive` is spread straight into the
|
|
111
|
+
// underlying fetch. We do not await it — this is fire-and-forget.
|
|
112
|
+
void client
|
|
113
|
+
.request('/v1/client/telemetry/provider_unavailable', {
|
|
114
|
+
method: 'POST',
|
|
115
|
+
body: JSON.stringify({ provider, reason }),
|
|
116
|
+
keepalive: true,
|
|
117
|
+
})
|
|
118
|
+
.catch(() => {
|
|
119
|
+
// never reject
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
catch {
|
|
123
|
+
// never throw
|
|
124
|
+
}
|
|
125
|
+
}
|
|
82
126
|
/* ---- Google Identity Services (One-Tap / GSI) ---------------------------- */
|
|
83
127
|
const GSI_SRC = 'https://accounts.google.com/gsi/client';
|
|
84
128
|
let gsiLoad = null;
|
|
129
|
+
function isDevEnv() {
|
|
130
|
+
return typeof process !== 'undefined' && process?.env?.NODE_ENV !== 'production';
|
|
131
|
+
}
|
|
132
|
+
const mountedOverlays = new Set();
|
|
133
|
+
/**
|
|
134
|
+
* Session flag: has a Google credential (id_token) actually been minted in this
|
|
135
|
+
* document since the module loaded? Set in the GSI credential callback. Exposed
|
|
136
|
+
* (read-only) through {@link diagnoseProvider} so a caller can tell "the button is
|
|
137
|
+
* mounted and looks healthy but no click has ever produced a credential" apart from
|
|
138
|
+
* "it has worked at least once".
|
|
139
|
+
*/
|
|
140
|
+
let googleCredentialMintedThisSession = false;
|
|
85
141
|
/** Inject the GSI script once; resolves when it is ready. */
|
|
86
142
|
function loadGoogleIdentityServices(doc) {
|
|
87
143
|
if (gsiLoad)
|
|
@@ -170,11 +226,24 @@ async function renderGoogleButton(opts) {
|
|
|
170
226
|
*
|
|
171
227
|
* The failure mode people hit is misalignment — the invisible button not covering
|
|
172
228
|
* the visible one, so clicks miss. This guards against it: the overlay fills the
|
|
173
|
-
* wrapper,
|
|
174
|
-
*
|
|
229
|
+
* wrapper, GSI's rendered button is STRETCHED (inline) to fill the overlay rather
|
|
230
|
+
* than centred-and-clipped, and a ResizeObserver re-renders on layout changes so
|
|
231
|
+
* the whole surface stays clickable. In development it also self-verifies the
|
|
232
|
+
* coverage and warns (loudly, never throwing) when the geometry is off.
|
|
175
233
|
*
|
|
176
234
|
* `wrapper` is YOUR styled button (or its container); it is made position:relative
|
|
177
235
|
* if it is not already positioned. Returns `{ destroy }` to tear the overlay down.
|
|
236
|
+
*
|
|
237
|
+
* `visible` (default false) picks WHAT the user sees (customer spec 4.5):
|
|
238
|
+
* - false — today's behaviour: Google's button is drawn at opacity 0 as an
|
|
239
|
+
* invisible click-target overlaid on YOUR styled button. The user sees your
|
|
240
|
+
* button; the click lands on Google's. The overlay is `aria-hidden`.
|
|
241
|
+
* - true — Google's OWN button is drawn VISIBLY (opacity 1), on top of the
|
|
242
|
+
* wrapper, and IS the button the user operates (for teams who'd rather not
|
|
243
|
+
* maintain a styled button). It is NOT aria-hidden, since it is the real
|
|
244
|
+
* control. The host button underneath is then unnecessary.
|
|
245
|
+
* Either way the stretch-to-fill + ResizeObserver run, so Google's button tracks
|
|
246
|
+
* the wrapper's width.
|
|
178
247
|
*/
|
|
179
248
|
async function renderGoogleOverlayButton(opts) {
|
|
180
249
|
const host = opts.host ?? window;
|
|
@@ -187,8 +256,12 @@ async function renderGoogleOverlayButton(opts) {
|
|
|
187
256
|
client_id: opts.clientId,
|
|
188
257
|
nonce: opts.nonce,
|
|
189
258
|
callback: (response) => {
|
|
190
|
-
if (response.credential)
|
|
259
|
+
if (response.credential) {
|
|
260
|
+
// Record that native Google has produced a credential at least once this
|
|
261
|
+
// session (read back by {@link diagnoseProvider}), then hand it off.
|
|
262
|
+
googleCredentialMintedThisSession = true;
|
|
191
263
|
opts.onCredential(response.credential);
|
|
264
|
+
}
|
|
192
265
|
else
|
|
193
266
|
opts.onError?.(new Error('Google returned no credential.'));
|
|
194
267
|
},
|
|
@@ -197,17 +270,37 @@ async function renderGoogleOverlayButton(opts) {
|
|
|
197
270
|
const hadPosition = opts.wrapper.style.position !== '';
|
|
198
271
|
if (!hadPosition)
|
|
199
272
|
opts.wrapper.style.position = 'relative';
|
|
273
|
+
const visible = opts.visible ?? false;
|
|
200
274
|
const overlay = doc.createElement('div');
|
|
201
|
-
overlay
|
|
202
|
-
//
|
|
203
|
-
//
|
|
275
|
+
// Invisible-overlay mode (default): Google's button is a transparent click-target
|
|
276
|
+
// laid over the host's own button, so hide it from assistive tech (the host button
|
|
277
|
+
// carries the accessible name). Visible mode (spec 4.5 `googleButton:"google"`):
|
|
278
|
+
// it IS the real, operable button — leave it exposed.
|
|
279
|
+
if (!visible)
|
|
280
|
+
overlay.setAttribute('aria-hidden', 'true');
|
|
281
|
+
// On top, click-catching. opacity 0 => invisible overlay; opacity 1 => Google's own
|
|
282
|
+
// button shown visibly. NO flex centring — GSI's button is stretched to fill the
|
|
283
|
+
// wrapper below (inline), not centred-and-clipped under overflow:hidden.
|
|
204
284
|
overlay.style.cssText =
|
|
205
|
-
|
|
206
|
-
'display:flex;align-items:center;justify-content:center;';
|
|
285
|
+
`position:absolute;inset:0;z-index:2;opacity:${visible ? 1 : 0};overflow:hidden;`;
|
|
207
286
|
opts.wrapper.appendChild(overlay);
|
|
287
|
+
const mounted = { provider: 'google', wrapper: opts.wrapper, overlay };
|
|
288
|
+
mountedOverlays.add(mounted);
|
|
289
|
+
// Force an element GSI injected to fill the overlay exactly. INLINE and
|
|
290
|
+
// synchronous on purpose: the customer found the identical geometry applied via a
|
|
291
|
+
// stylesheet behaved differently from inline (specificity / cascade timing), so
|
|
292
|
+
// the working config sets width/height:100% directly on the style attribute.
|
|
293
|
+
const stretchToFill = (el) => {
|
|
294
|
+
const style = el?.style;
|
|
295
|
+
if (!style)
|
|
296
|
+
return;
|
|
297
|
+
style.width = '100%';
|
|
298
|
+
style.height = '100%';
|
|
299
|
+
};
|
|
208
300
|
const draw = () => {
|
|
209
301
|
// Google's button width must track the wrapper so every click lands on it;
|
|
210
|
-
// width is fixed at render time, so re-render on resize. Clamp to GSI's range
|
|
302
|
+
// width is fixed at render time, so re-render on resize. Clamp to GSI's range so
|
|
303
|
+
// GSI still draws a real button, which we then CSS-stretch to cover the wrapper.
|
|
211
304
|
const measured = Math.round(opts.wrapper.getBoundingClientRect().width) || 320;
|
|
212
305
|
const width = Math.max(200, Math.min(400, measured));
|
|
213
306
|
overlay.replaceChildren();
|
|
@@ -218,6 +311,55 @@ async function renderGoogleOverlayButton(opts) {
|
|
|
218
311
|
text: 'continue_with',
|
|
219
312
|
width,
|
|
220
313
|
});
|
|
314
|
+
// Customer's working fix: stretch GSI's rendered container (the direct child div
|
|
315
|
+
// GSI creates) AND the <iframe> it injects to fill the wrapper, inline, instead
|
|
316
|
+
// of letting a fixed-size button sit centred under overflow:hidden (which leaves
|
|
317
|
+
// dead zones where a click misses).
|
|
318
|
+
stretchToFill(overlay.firstElementChild);
|
|
319
|
+
stretchToFill(overlay.querySelector('iframe'));
|
|
320
|
+
verifyCoverage();
|
|
321
|
+
};
|
|
322
|
+
// Dev-only, loud, never-throwing self-check that the transparent overlay actually
|
|
323
|
+
// covers the host button and GSI drew a sane-sized iframe. A healthy-looking button
|
|
324
|
+
// whose overlay doesn't cover it is exactly the "clicks do nothing" bug.
|
|
325
|
+
const rectOf = (r) => ({
|
|
326
|
+
width: r.width,
|
|
327
|
+
height: r.height,
|
|
328
|
+
top: r.top,
|
|
329
|
+
left: r.left,
|
|
330
|
+
right: r.right,
|
|
331
|
+
bottom: r.bottom,
|
|
332
|
+
});
|
|
333
|
+
const verifyCoverage = () => {
|
|
334
|
+
if (!isDevEnv())
|
|
335
|
+
return;
|
|
336
|
+
if (typeof window === 'undefined')
|
|
337
|
+
return; // SSR: nothing to measure.
|
|
338
|
+
try {
|
|
339
|
+
const w = opts.wrapper.getBoundingClientRect();
|
|
340
|
+
const o = overlay.getBoundingClientRect();
|
|
341
|
+
// Overlay must cover the wrapper on every edge (1px rounding slack), or clicks
|
|
342
|
+
// fall through to dead space outside the invisible button.
|
|
343
|
+
const covers = o.left <= w.left + 1 &&
|
|
344
|
+
o.top <= w.top + 1 &&
|
|
345
|
+
o.right >= w.right - 1 &&
|
|
346
|
+
o.bottom >= w.bottom - 1;
|
|
347
|
+
const frame = overlay.querySelector('iframe');
|
|
348
|
+
const fr = frame?.getBoundingClientRect();
|
|
349
|
+
const iframeOk = !!fr && fr.width >= 8 && fr.height >= 8;
|
|
350
|
+
if (!covers || !iframeOk) {
|
|
351
|
+
console.warn('[atlas] Google overlay misaligned/undersized — clicks may miss the invisible GSI button', {
|
|
352
|
+
covers,
|
|
353
|
+
iframeOk,
|
|
354
|
+
wrapper: rectOf(w),
|
|
355
|
+
overlay: rectOf(o),
|
|
356
|
+
iframe: fr ? { width: fr.width, height: fr.height } : null,
|
|
357
|
+
});
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
catch {
|
|
361
|
+
// Dev diagnostics must never disturb a real sign-in.
|
|
362
|
+
}
|
|
221
363
|
};
|
|
222
364
|
draw();
|
|
223
365
|
let observer;
|
|
@@ -234,10 +376,96 @@ async function renderGoogleOverlayButton(opts) {
|
|
|
234
376
|
return {
|
|
235
377
|
destroy: () => {
|
|
236
378
|
observer?.disconnect();
|
|
379
|
+
mountedOverlays.delete(mounted);
|
|
237
380
|
overlay.remove();
|
|
238
381
|
if (!hadPosition)
|
|
239
382
|
opts.wrapper.style.position = '';
|
|
240
383
|
},
|
|
241
384
|
};
|
|
242
385
|
}
|
|
386
|
+
/** Measure a mounted overlay for `provider` against its wrapper, or null. */
|
|
387
|
+
function measureMountedOverlay(provider) {
|
|
388
|
+
if (typeof window === 'undefined')
|
|
389
|
+
return null;
|
|
390
|
+
for (const m of mountedOverlays) {
|
|
391
|
+
if (m.provider !== provider)
|
|
392
|
+
continue;
|
|
393
|
+
try {
|
|
394
|
+
const w = m.wrapper.getBoundingClientRect();
|
|
395
|
+
const o = m.overlay.getBoundingClientRect();
|
|
396
|
+
const frame = m.overlay.querySelector('iframe');
|
|
397
|
+
const fr = frame?.getBoundingClientRect();
|
|
398
|
+
return {
|
|
399
|
+
covers: o.left <= w.left + 1 &&
|
|
400
|
+
o.top <= w.top + 1 &&
|
|
401
|
+
o.right >= w.right - 1 &&
|
|
402
|
+
o.bottom >= w.bottom - 1,
|
|
403
|
+
wrapper: {
|
|
404
|
+
width: w.width,
|
|
405
|
+
height: w.height,
|
|
406
|
+
top: w.top,
|
|
407
|
+
left: w.left,
|
|
408
|
+
right: w.right,
|
|
409
|
+
bottom: w.bottom,
|
|
410
|
+
},
|
|
411
|
+
overlay: {
|
|
412
|
+
width: o.width,
|
|
413
|
+
height: o.height,
|
|
414
|
+
top: o.top,
|
|
415
|
+
left: o.left,
|
|
416
|
+
right: o.right,
|
|
417
|
+
bottom: o.bottom,
|
|
418
|
+
},
|
|
419
|
+
iframe: fr ? { width: fr.width, height: fr.height } : null,
|
|
420
|
+
};
|
|
421
|
+
}
|
|
422
|
+
catch {
|
|
423
|
+
return null;
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
return null;
|
|
427
|
+
}
|
|
428
|
+
/**
|
|
429
|
+
* Collect the knowable facts about a native provider's setup for a support ticket
|
|
430
|
+
* or a dev console: its resolved `mode` and `client_id` (from
|
|
431
|
+
* `/v1/client/environment`), whether it's native, the current page origin, the
|
|
432
|
+
* live overlay geometry IF a button is mounted, and whether a Google credential has
|
|
433
|
+
* been minted this session. Hook-free, SSR-safe, and never throws — a failed
|
|
434
|
+
* environment fetch simply leaves the server-sourced fields null.
|
|
435
|
+
*
|
|
436
|
+
* It does NOT (and cannot) report the provider's registered JavaScript origins: the
|
|
437
|
+
* caller compares the returned `origin` against what they registered with Google.
|
|
438
|
+
*/
|
|
439
|
+
async function diagnoseProvider(client, provider) {
|
|
440
|
+
const origin = typeof window !== 'undefined' && window.location ? window.location.origin : null;
|
|
441
|
+
let mode = null;
|
|
442
|
+
let clientId = null;
|
|
443
|
+
let native = false;
|
|
444
|
+
try {
|
|
445
|
+
const res = await client.get('/v1/client/environment');
|
|
446
|
+
const p = res.data?.social_providers?.find((x) => x.provider === provider);
|
|
447
|
+
if (p) {
|
|
448
|
+
native = p.native === true;
|
|
449
|
+
clientId = typeof p.client_id === 'string' ? p.client_id : null;
|
|
450
|
+
// `mode` absent but native means the default native mode (see usesNativeGoogle).
|
|
451
|
+
mode = p.mode === 'redirect' ? 'redirect' : p.mode === 'native' ? 'native' : native ? 'native' : null;
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
catch {
|
|
455
|
+
// never throw — leave the server-sourced fields at their null defaults.
|
|
456
|
+
}
|
|
457
|
+
return {
|
|
458
|
+
provider,
|
|
459
|
+
mode,
|
|
460
|
+
clientId,
|
|
461
|
+
native,
|
|
462
|
+
origin,
|
|
463
|
+
overlay: measureMountedOverlay(provider),
|
|
464
|
+
credentialMintedThisSession: provider === 'google' ? googleCredentialMintedThisSession : false,
|
|
465
|
+
};
|
|
466
|
+
}
|
|
467
|
+
/** Reset the session credential flag (tests). */
|
|
468
|
+
function resetGoogleCredentialFlag() {
|
|
469
|
+
googleCredentialMintedThisSession = false;
|
|
470
|
+
}
|
|
243
471
|
//# sourceMappingURL=native.js.map
|
package/dist/native.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native.js","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"native.js","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"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"}
|
package/dist/telemetry.d.ts
CHANGED
|
@@ -43,7 +43,21 @@ export interface DeviceSignals {
|
|
|
43
43
|
automationHint: boolean;
|
|
44
44
|
}
|
|
45
45
|
export declare function collectDeviceSignals(): DeviceSignals;
|
|
46
|
-
/**
|
|
46
|
+
/**
|
|
47
|
+
* Whether the browser is signalling Do-Not-Track. Checked from `navigator`
|
|
48
|
+
* (and IE's `window.doNotTrack`). When true we still fire the per-interaction
|
|
49
|
+
* anti-bot signal, but we do NOT persist a cross-session identifier — see
|
|
50
|
+
* {@link deviceId}.
|
|
51
|
+
*/
|
|
52
|
+
export declare function doNotTrackEnabled(): boolean;
|
|
53
|
+
/**
|
|
54
|
+
* A stable pseudonymous client id, persisted in localStorage.
|
|
55
|
+
*
|
|
56
|
+
* Honors Do-Not-Track: when the browser signals DNT we return an **ephemeral**
|
|
57
|
+
* per-call id and never write it to storage, so no durable tracking identifier
|
|
58
|
+
* is kept on the device. The anti-bot beacon still runs for the current
|
|
59
|
+
* interaction — DNT suppresses persistent tracking, not one-shot security signals.
|
|
60
|
+
*/
|
|
47
61
|
export declare function deviceId(): string | null;
|
|
48
62
|
/** A short client-side fingerprint over the stable device signals. */
|
|
49
63
|
export declare function deviceFingerprint(device: DeviceSignals): string;
|
package/dist/telemetry.js
CHANGED
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
21
|
exports.BehaviorRecorder = void 0;
|
|
22
22
|
exports.collectDeviceSignals = collectDeviceSignals;
|
|
23
|
+
exports.doNotTrackEnabled = doNotTrackEnabled;
|
|
23
24
|
exports.deviceId = deviceId;
|
|
24
25
|
exports.deviceFingerprint = deviceFingerprint;
|
|
25
26
|
exports.sendTelemetry = sendTelemetry;
|
|
@@ -126,15 +127,39 @@ function collectDeviceSignals() {
|
|
|
126
127
|
// to stay small, but influences deviceFingerprint().
|
|
127
128
|
};
|
|
128
129
|
}
|
|
129
|
-
/**
|
|
130
|
+
/**
|
|
131
|
+
* Whether the browser is signalling Do-Not-Track. Checked from `navigator`
|
|
132
|
+
* (and IE's `window.doNotTrack`). When true we still fire the per-interaction
|
|
133
|
+
* anti-bot signal, but we do NOT persist a cross-session identifier — see
|
|
134
|
+
* {@link deviceId}.
|
|
135
|
+
*/
|
|
136
|
+
function doNotTrackEnabled() {
|
|
137
|
+
return (safe(() => {
|
|
138
|
+
const n = nav();
|
|
139
|
+
const w = typeof window !== 'undefined' ? window : undefined;
|
|
140
|
+
const v = n?.doNotTrack ?? n?.msDoNotTrack ?? w?.doNotTrack;
|
|
141
|
+
return v === '1' || v === 'yes';
|
|
142
|
+
}, false) ?? false);
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* A stable pseudonymous client id, persisted in localStorage.
|
|
146
|
+
*
|
|
147
|
+
* Honors Do-Not-Track: when the browser signals DNT we return an **ephemeral**
|
|
148
|
+
* per-call id and never write it to storage, so no durable tracking identifier
|
|
149
|
+
* is kept on the device. The anti-bot beacon still runs for the current
|
|
150
|
+
* interaction — DNT suppresses persistent tracking, not one-shot security signals.
|
|
151
|
+
*/
|
|
130
152
|
function deviceId() {
|
|
131
153
|
return safe(() => {
|
|
154
|
+
const fresh = () => 'd_' + djb2(String(Math.random()) + String(Date.now()) + (nav()?.userAgent ?? ''));
|
|
155
|
+
if (doNotTrackEnabled())
|
|
156
|
+
return fresh(); // ephemeral, never persisted
|
|
132
157
|
if (typeof localStorage === 'undefined')
|
|
133
158
|
return null;
|
|
134
159
|
const KEY = '__atlas_did';
|
|
135
160
|
let id = localStorage.getItem(KEY);
|
|
136
161
|
if (!id) {
|
|
137
|
-
id =
|
|
162
|
+
id = fresh();
|
|
138
163
|
localStorage.setItem(KEY, id);
|
|
139
164
|
}
|
|
140
165
|
return id;
|
package/dist/telemetry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"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"}
|