@snokam/auth 3.9.0 → 4.0.0

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 CHANGED
@@ -3,6 +3,74 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [4.0.0](https://github.com/snokam/components/compare/@snokam/auth@3.7.14...@snokam/auth@4.0.0) (2026-10-14)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **auth:** verify a password once when TOTP enrolment is pending, and say when sign-in is slow ([#2893](https://github.com/snokam/components/issues/2893)) ([d3e5c79](https://github.com/snokam/components/commit/d3e5c79c4c22db49389cddd07e1331dc6d25c381))
11
+
12
+ ### Features
13
+
14
+ - per-company branding (logo, dark logo, icon) ([#2907](https://github.com/snokam/components/issues/2907)) ([dc32583](https://github.com/snokam/components/commit/dc325832803c88158937f45fe5b9e1b64846a52d))
15
+ - persona mode per business, prs claim, Vis som gate, handoff sealing and CI persona (test identity P1) ([#2894](https://github.com/snokam/components/issues/2894)) ([8ab98a8](https://github.com/snokam/components/commit/8ab98a846ed6a5f962eadca6723c923a55395ce1)), closes [#2890](https://github.com/snokam/components/issues/2890)
16
+
17
+ ### BREAKING CHANGES
18
+
19
+ - SimpleHeaderBase and FooterBase take `logo` as a ReactNode;
20
+ the HeaderLogo and FooterLogo types are removed.
21
+
22
+ Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
23
+ Claude-Session: https://claude.ai/code/session_01Nv57F4rwzYRkuUVFdd2wXA
24
+
25
+ - feat(platform-web): company branding in /manage, at login and in the shell
26
+
27
+ /manage/innstillinger gets a Merkevare section: the logo for light
28
+ backgrounds, the logo for dark backgrounds and the square icon, each with a
29
+ preview on its own background, upload (react-hook-form + zod: type and 2 MB
30
+ checked before sending) and remove. Server error codes map to CMS copy.
31
+ The central login shows the company's logo above "Logg inn hos …", from
32
+ login-config. The /manage shell shows the managed business's logo linking to
33
+ its front page; /admin and an operator without a business show the platform
34
+ business. The public snosky.no chrome keeps the Snøsky logo from the platform
35
+ CMS, through the same BusinessLogo.
36
+
37
+ Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
38
+ Claude-Session: https://claude.ai/code/session_01Nv57F4rwzYRkuUVFdd2wXA
39
+
40
+ - fix(my-page-web): drop leftover Snøkam favicons
41
+
42
+ The unused pages-router meta component and finance-web's public/favicon.ico
43
+ served Snøkam's icon to every company; favicons now come from the
44
+ company's uploaded icon.
45
+
46
+ Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
47
+ Claude-Session: https://claude.ai/code/session_01Nv57F4rwzYRkuUVFdd2wXA
48
+
49
+ - fix(handbook-web): no Snøkam share image, no raw-URL fallback in branding metadata
50
+
51
+ The handbook's root metadata no longer hardcodes the Snøkam icon as the
52
+ share image, so the company's share image from makeTenantMetadata applies.
53
+ The favicon and share helpers drop their raw-URL fallback: a transform that
54
+ yields nothing yields no image, never an untransformed (possibly SVG) URL.
55
+
56
+ Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
57
+ Claude-Session: https://claude.ai/code/session_01Nv57F4rwzYRkuUVFdd2wXA
58
+
59
+ - fix(ui): show the light logo inverted on dark when no dark logo is uploaded
60
+
61
+ Without a dark logo, a dark background shows the light logo turned white
62
+ (brightness(0) invert(1)) instead of the wordmark. The Merkevare previews
63
+ use static brand tokens, and upload errors are read by parsing the JSON
64
+ body rather than stripping quotes.
65
+
66
+ Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
67
+ Claude-Session: https://claude.ai/code/session_01Nv57F4rwzYRkuUVFdd2wXA
68
+
69
+ - chore(clients): regenerate platform-function clients for branding
70
+
71
+ Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
72
+ Claude-Session: https://claude.ai/code/session_01Nv57F4rwzYRkuUVFdd2wXA
73
+
6
74
  # [3.9.0](https://github.com/snokam/components/compare/@snokam/auth@3.7.14...@snokam/auth@3.9.0) (2026-10-14)
7
75
 
8
76
  ### Bug Fixes
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@snokam/auth",
3
3
  "description": "Snøkam auth components",
4
- "version": "3.9.0",
4
+ "version": "4.0.0",
5
5
  "main": "src/index.ts",
6
6
  "types": "src/index.ts",
7
7
  "files": [
@@ -27,11 +27,11 @@
27
27
  "next-auth": "4.24.15",
28
28
  "path-to-regexp": "^8.4.2",
29
29
  "@snokam/identity": "1.1.0",
30
- "@snokam/platform-client": "3.10.0",
30
+ "@snokam/platform-client": "4.0.0",
31
31
  "@snokam/react-query": "1.1.0",
32
- "@snokam/sanity-page-content": "4.13.0",
33
- "@snokam/tenant": "2.1.19",
34
- "@snokam/ui": "4.2.0"
32
+ "@snokam/sanity-page-content": "5.0.0",
33
+ "@snokam/ui": "5.0.0",
34
+ "@snokam/tenant": "3.0.0"
35
35
  },
36
36
  "peerDependencies": {
37
37
  "next": "16.3.8",
@@ -1,3 +1,4 @@
1
+ import type { BusinessBranding } from "@snokam/platform-client";
1
2
  export { enrolmentFromError, enrolmentRequiredError } from "./enrolment";
2
3
 
3
4
  export interface PasswordLoginResult {
@@ -41,7 +42,7 @@ export interface PasswordLoginConfig {
41
42
  entraEnabled: boolean;
42
43
  ssoActive: boolean;
43
44
  ssoProvider?: string;
44
- logoUrl?: string;
45
+ branding?: BusinessBranding;
45
46
  ssoDirectoryId?: string;
46
47
  }
47
48