@happyvertical/smrt-users 0.55.9 → 0.55.10
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/README.md +42 -0
- package/agents/permissions.md +3 -0
- package/dist/chunks/{TerminalAuthService-DoU-2Dg7.js → TerminalAuthService-C8l5BIWm.js} +521 -517
- package/dist/chunks/TerminalAuthService-C8l5BIWm.js.map +1 -0
- package/dist/collections/RolePermissionCollection.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +199 -105
- package/dist/index.js.map +1 -1
- package/dist/manifest.json +142 -1
- package/dist/recipes.d.ts +97 -0
- package/dist/recipes.d.ts.map +1 -0
- package/dist/smrt-knowledge.json +146 -5
- package/dist/svelte/auth.d.ts +69 -0
- package/dist/svelte/auth.d.ts.map +1 -0
- package/dist/svelte/auth.js +43 -0
- package/dist/svelte/components/AccountSecurityPanel.svelte +42 -0
- package/dist/svelte/components/AccountSecurityPanel.svelte.d.ts +14 -0
- package/dist/svelte/components/AccountSecurityPanel.svelte.d.ts.map +1 -0
- package/dist/svelte/components/MagicLinkForm.svelte +43 -0
- package/dist/svelte/components/MagicLinkForm.svelte.d.ts +14 -0
- package/dist/svelte/components/MagicLinkForm.svelte.d.ts.map +1 -0
- package/dist/svelte/components/OidcProviderButtons.svelte +28 -0
- package/dist/svelte/components/OidcProviderButtons.svelte.d.ts +12 -0
- package/dist/svelte/components/OidcProviderButtons.svelte.d.ts.map +1 -0
- package/dist/svelte/components/PasskeySignInButton.svelte +28 -0
- package/dist/svelte/components/PasskeySignInButton.svelte.d.ts +12 -0
- package/dist/svelte/components/PasskeySignInButton.svelte.d.ts.map +1 -0
- package/dist/svelte/components/SignInForm.svelte +43 -0
- package/dist/svelte/components/SignInForm.svelte.d.ts +14 -0
- package/dist/svelte/components/SignInForm.svelte.d.ts.map +1 -0
- package/dist/svelte/components/SignUpForm.svelte +38 -0
- package/dist/svelte/components/SignUpForm.svelte.d.ts +12 -0
- package/dist/svelte/components/SignUpForm.svelte.d.ts.map +1 -0
- package/dist/svelte/i18n.d.ts +33 -0
- package/dist/svelte/i18n.d.ts.map +1 -1
- package/dist/svelte/i18n.js +33 -0
- package/dist/svelte/index.d.ts +15 -1
- package/dist/svelte/index.d.ts.map +1 -1
- package/dist/svelte/index.js +14 -1
- package/dist/sveltekit.js +1 -1
- package/dist/ui.d.ts.map +1 -1
- package/dist/ui.js +54 -0
- package/dist/ui.js.map +1 -1
- package/package.json +9 -9
- package/dist/chunks/TerminalAuthService-DoU-2Dg7.js.map +0 -1
package/README.md
CHANGED
|
@@ -10,6 +10,48 @@ pnpm add @happyvertical/smrt-users
|
|
|
10
10
|
|
|
11
11
|
## Usage
|
|
12
12
|
|
|
13
|
+
### Auth component adapter
|
|
14
|
+
|
|
15
|
+
The `@happyvertical/smrt-users/svelte` authentication components take a
|
|
16
|
+
`UsersAuthAdapter`. Bind each callback to an application server action; the
|
|
17
|
+
components never receive a session bearer, API-key value, magic-link signing
|
|
18
|
+
secret, or OIDC client secret. On the server, password actions use
|
|
19
|
+
`createPasswordCredentialHandlers()`, magic-link actions use
|
|
20
|
+
`MagicLinkService`, and OIDC actions use `OidcLoginService`. Session and API
|
|
21
|
+
key revoke actions must verify the current account owns the selected record
|
|
22
|
+
before calling `SessionService.destroySession()` or the profile API-key
|
|
23
|
+
service. Passkey sign-in is deliberately hidden unless the host passes a
|
|
24
|
+
`passkeyCeremony` callback to `createUsersAuthAdapter()`. An endpoint alone
|
|
25
|
+
cannot enable it: the callback must perform the #3275 WebAuthn browser ceremony
|
|
26
|
+
and delegate its verified result to an authorized server action.
|
|
27
|
+
|
|
28
|
+
Auth components display safe, registered `users.auth.*` messages when an
|
|
29
|
+
adapter rejects; callback diagnostics are never rendered. Configure these
|
|
30
|
+
messages through the s-m-r-t UI i18n context. Existing error and success feedback
|
|
31
|
+
updates when the locale changes, preserving form drafts without repeating the
|
|
32
|
+
auth action. Default English messages are registered by the auth module.
|
|
33
|
+
|
|
34
|
+
```svelte
|
|
35
|
+
<script lang="ts">
|
|
36
|
+
import { SignInForm, type UsersAuthAdapter } from '@happyvertical/smrt-users/svelte';
|
|
37
|
+
|
|
38
|
+
const adapter: UsersAuthAdapter = {
|
|
39
|
+
async signInWithPassword({ email, password }) {
|
|
40
|
+
await fetch('/auth/password/sign-in', {
|
|
41
|
+
method: 'POST',
|
|
42
|
+
headers: { 'content-type': 'application/json' },
|
|
43
|
+
body: JSON.stringify({ email, password }),
|
|
44
|
+
});
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
</script>
|
|
48
|
+
|
|
49
|
+
<SignInForm {adapter} />
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
The endpoint in this example is application-owned. It must call the package
|
|
53
|
+
handler/service on the server; it is not a generated public identity API.
|
|
54
|
+
|
|
13
55
|
### Application discovery conformance
|
|
14
56
|
|
|
15
57
|
The SvelteKit `createResourceListHandler()` export produces the app CLI
|
package/agents/permissions.md
CHANGED
|
@@ -101,6 +101,9 @@ membership or tenant DENY to attenuate inherited role authority.
|
|
|
101
101
|
- When a package adds built-in self-personalization permissions after role
|
|
102
102
|
creation, explicitly call seedDefaultRolePersonalizationPermissions(). It
|
|
103
103
|
upgrades owner/admin/member/viewer idempotently and never grants custom roles.
|
|
104
|
+
The built-in self-personalization slugs are `fields.policy.personalize`,
|
|
105
|
+
`overviews.personalize` and `shell.personalize`, each seeded only once its
|
|
106
|
+
package registered it.
|
|
104
107
|
|
|
105
108
|
## Guards and RLS
|
|
106
109
|
|