@atlasauth/embed 0.2.0 → 0.2.2

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/CHANGELOG.md ADDED
@@ -0,0 +1,48 @@
1
+ # @atlasauth/embed changelog
2
+
3
+ ## 0.2.2
4
+ - **Email-dependent UI follows the server.** The widget reads the new `email_delivery` block from
5
+ `GET /v1/appearance`. "Forgot password?" is hidden when `password_reset` is false, and the sign-up form
6
+ is replaced by "This app can't send email right now…" when `password_sign_up` is false (the app has no
7
+ email provider and requires email verification). Older servers that omit the block behave as before.
8
+ - **Types.** `AppearanceResponse` gains optional `email_delivery` (`EmailDeliveryAvailability`:
9
+ `available`, `password_reset`, `password_sign_up`). `AtlasWidget` gains `passwordResetEnabled` and
10
+ `passwordSignUpEnabled`. `EMAIL_UNAVAILABLE_MESSAGE` is exported from the widget forms module.
11
+
12
+ ## 0.2.1
13
+ - The widget's captcha loader/renderer now comes from `@atlasauth/js` (the same one the React
14
+ components use). No behaviour change; a failed provider script load is now retried on the next
15
+ attempt instead of failing until reload.
16
+
17
+ - **Accessibility.** The primary button label colour is picked for contrast from the primary colour
18
+ (white or near-black) instead of a fixed white; override it with the new `--atlas-embed-color-text-on-primary`
19
+ CSS variable. Buttons, social buttons, links and toggles show a solid 2px `:focus-visible` outline
20
+ (`--atlas-embed-color-focus-ring`, default the primary). Text fields and the social search box are 16px, so
21
+ iOS Safari no longer zooms on focus.
22
+
23
+
24
+ ## 0.2.0
25
+ - **Design system.** `<atlas-sign-in>` / `<atlas-sign-up>` and `mount()` apply the design configured in
26
+ the Atlas dashboard (from `/v1/appearance`): palette, radius, font, button/input style, shadow,
27
+ density and social layout map onto the widget's tokens and interaction settings.
28
+ - **New inline `appearance.preset` and `appearance.design`** (and `data-atlas-preset` on the element) —
29
+ the same settings and semantics as `@atlasauth/react`: tenant branding < dashboard design < `preset`
30
+ < `variables` < `design`. Opt out of the dashboard design with `appearance.instanceDesign: false`.
31
+ - The widget root carries the stable `data-atlas-*` design attributes (the widget keeps styling itself
32
+ through its `--atlas-embed-*` tokens; it does not ship the `--atlas-*` design stylesheet).
33
+ - Without a design, theming is unchanged.
34
+ - New dependency: `@atlasauth/design` — only its zod-free runtime entry is bundled into `embed.js`
35
+ (about +21 KB minified).
36
+
37
+ ## 0.1.2
38
+ - **Fixed: provider icons.** Social-button provider icons now carry an intrinsic 18px size, so they no longer collapse to 0px where no CSS sizes them. The widget's own styles still size them per button size.
39
+
40
+ ## 0.1.1
41
+ - First published release.
42
+ - **Framework-agnostic sign-in widget.** Use the `<atlas-sign-in>` / `<atlas-sign-up>` custom elements (register them with `defineElements()`), or mount imperatively with `mountSignIn()` / `mountSignUp()`. The standalone `embed.js` bundle registers the elements and exposes `window.Atlas` for script-tag use; `publishable-key`, `frontend-api` and `redirect` can be set on the elements or the script tag (`readScriptTag()`, `setScriptDefaults()`).
43
+ - **Sign-in and sign-up flows.** Email + password on one screen, email / SMS verification codes with a segmented code input, forgot-password and reset, show / hide password, "remember me", trusted-device ("remember this device") for two-factor, configurable sign-up fields (including long text, date, radio and multi-select), and Terms / Privacy consent on sign-up.
44
+ - **Passkeys.** "Sign in with a passkey", including browser autofill (conditional UI).
45
+ - **Social sign-in.** Brand-logo provider buttons with configurable variant, size, layout and labels, search for long provider lists, a scrollable carousel, Google's official sign-in button, Bluesky handle sign-in, and a "Sign in with Atlas" button with a popup flow.
46
+ - **CAPTCHA** widgets are rendered for flows that require them.
47
+ - **Appearance.** The widget follows the instance's branding and appearance settings (design tokens, button effects, a customizable loading state). Helpers and types such as `resolveTokens()`, `cssVariables()`, `resolveSocialButtons()`, `providerIcon()`, `WidgetAppearance` and `SocialButtonsConfig` are exported for module users.
48
+ - Redirect targets are checked with `validateRedirect()`.
@@ -175,6 +175,15 @@ export interface PublicStrategies {
175
175
  phoneCode: boolean;
176
176
  siwe: boolean;
177
177
  }
178
+ /** `GET /v1/appearance` `email_delivery`: what works without/with email delivery. */
179
+ export interface EmailDeliveryAvailability {
180
+ /** The app can send email. */
181
+ available: boolean;
182
+ /** "Forgot password?" can work: password is on and reset emails can be delivered. */
183
+ password_reset: boolean;
184
+ /** The email + password sign-up form can complete. */
185
+ password_sign_up: boolean;
186
+ }
178
187
  /**
179
188
  * The tenant's public appearance, exactly the shape `GET /v1/appearance`
180
189
  * returns under `appearance`. Every value is already resolved and sanitised
@@ -252,6 +261,13 @@ export interface AppearanceResponse {
252
261
  sign_up: boolean;
253
262
  }>;
254
263
  strategies: PublicStrategies;
264
+ /**
265
+ * Whether the app can deliver email, and what that allows. `password_reset`
266
+ * false hides "Forgot password?"; `password_sign_up` false replaces the
267
+ * sign-up form with a message (it could only be refused). Absent on older
268
+ * servers — treated as all true.
269
+ */
270
+ email_delivery?: EmailDeliveryAvailability;
255
271
  /**
256
272
  * "Sign in with Atlas" — the preset OIDC connection's state. When enabled, the
257
273
  * widget renders a "Sign in with Atlas" button that starts the SSO flow for
@@ -292,6 +308,12 @@ export declare function tokensFromAppearance(appearance: PublicAppearance | null
292
308
  export declare function resolveTokens(appearance: PublicAppearance | null, override?: WidgetAppearance): Required<DesignTokens>;
293
309
  /** Tokens as `--atlas-embed-*` custom properties for the root element. */
294
310
  export declare function cssVariables(tokens: Required<DesignTokens>): Record<string, string>;
311
+ /**
312
+ * Label colour for the primary button: white or near-black, whichever contrasts
313
+ * more with the primary (a fixed white label is unreadable on a light brand
314
+ * colour). White when the primary cannot be evaluated (`var(--brand)`).
315
+ */
316
+ export declare function textOnPrimary(primary: string): string;
295
317
  /** Our base class plus the page's override, appended so theirs wins on ties. */
296
318
  export declare function classFor(element: ElementKey, base: string, override?: WidgetAppearance): string;
297
319
  /**
@@ -20,9 +20,11 @@ exports.resolveSocialButtons = resolveSocialButtons;
20
20
  exports.tokensFromAppearance = tokensFromAppearance;
21
21
  exports.resolveTokens = resolveTokens;
22
22
  exports.cssVariables = cssVariables;
23
+ exports.textOnPrimary = textOnPrimary;
23
24
  exports.classFor = classFor;
24
25
  exports.orderedProviders = orderedProviders;
25
26
  exports.providerLabel = providerLabel;
27
+ const runtime_1 = require("@atlasauth/design/runtime");
26
28
  const CODE_INPUT_STYLES = ['boxes', 'single'];
27
29
  /** Resolve the code-input style: inline override wins, then server, then `boxes`. */
28
30
  function resolveCodeInput(server, inline) {
@@ -147,6 +149,18 @@ function cssVariables(tokens) {
147
149
  }
148
150
  return vars;
149
151
  }
152
+ /**
153
+ * Label colour for the primary button: white or near-black, whichever contrasts
154
+ * more with the primary (a fixed white label is unreadable on a light brand
155
+ * colour). White when the primary cannot be evaluated (`var(--brand)`).
156
+ */
157
+ function textOnPrimary(primary) {
158
+ const parsed = (0, runtime_1.parseCssColor)(primary);
159
+ if (!parsed)
160
+ return '#ffffff';
161
+ const hex = (0, runtime_1.toHex)(parsed);
162
+ return (0, runtime_1.contrastRatio)('#ffffff', hex) >= (0, runtime_1.contrastRatio)('#111111', hex) ? '#ffffff' : '#111111';
163
+ }
150
164
  /** Our base class plus the page's override, appended so theirs wins on ties. */
151
165
  function classFor(element, base, override) {
152
166
  const extra = override?.elements?.[element];
@@ -1 +1 @@
1
- {"version":3,"file":"appearance.js","sourceRoot":"","sources":["../src/appearance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"appearance.js","sourceRoot":"","sources":["../src/appearance.ts"],"names":[],"mappings":"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"}