@marianmeres/ownsuite 2.2.2 → 2.2.3
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/API.md +1 -3
- package/README.md +6 -9
- package/package.json +1 -1
package/API.md
CHANGED
|
@@ -360,8 +360,6 @@ interface OwnedRowResult<TRow> {
|
|
|
360
360
|
}
|
|
361
361
|
```
|
|
362
362
|
|
|
363
|
-
Matches `@marianmeres/collection`'s REST envelope.
|
|
364
|
-
|
|
365
363
|
### `OwnedCollectionState<TRow>`
|
|
366
364
|
|
|
367
365
|
```typescript
|
|
@@ -515,7 +513,7 @@ Attached automatically when `adapters.auth` is passed to `createOwnsuite`. See a
|
|
|
515
513
|
|
|
516
514
|
### `createStackAccountAuthAdapter(options?)`
|
|
517
515
|
|
|
518
|
-
Default `AuthAdapter` pointing at
|
|
516
|
+
Default `AuthAdapter` pointing at a conventional account REST surface (register / login / logout / OAuth / verify).
|
|
519
517
|
|
|
520
518
|
**Parameters:**
|
|
521
519
|
- `options` (`StackAccountAdapterOptions`, optional)
|
package/README.md
CHANGED
|
@@ -8,10 +8,7 @@ Client-side helper library for owner-scoped UIs. Generic domain managers with op
|
|
|
8
8
|
|
|
9
9
|
## What it does
|
|
10
10
|
|
|
11
|
-
Ownsuite gives front-end applications a uniform way to read, create, update and delete records from owner-scoped REST endpoints (typically `/me/*`). Each row is implicitly scoped to the authenticated subject by the server — the client never sets `owner_id`.
|
|
12
|
-
|
|
13
|
-
- **@marianmeres/collection** — the `ownerIdScope` route hook enforces owner-based filtering on the server.
|
|
14
|
-
- **@marianmeres/stack-common** — the `ownsuiteOptions()` helper wires the server mount.
|
|
11
|
+
Ownsuite gives front-end applications a uniform way to read, create, update and delete records from owner-scoped REST endpoints (typically `/me/*`). Each row is implicitly scoped to the authenticated subject by the server — the client never sets `owner_id`.
|
|
15
12
|
|
|
16
13
|
## Features
|
|
17
14
|
|
|
@@ -24,11 +21,11 @@ Ownsuite gives front-end applications a uniform way to read, create, update and
|
|
|
24
21
|
- **Event system** — subscribe to list fetches, row CRUD, and lifecycle transitions
|
|
25
22
|
- **Mock adapter** — in-memory fixture for tests, with configurable failure injection and latency
|
|
26
23
|
- **Explicit lifecycle** — `suite.destroy()` aborts in-flight work and releases listeners cleanly
|
|
27
|
-
- **Account lifecycle (opt-in)** — `suite.auth` / `suite.session` / `suite.profile` for register / login / OAuth / verify / logout / profile edit / delete account,
|
|
24
|
+
- **Account lifecycle (opt-in)** — `suite.auth` / `suite.session` / `suite.profile` for register / login / OAuth / verify / logout / profile edit / delete account, with bundled default adapters for a standard account REST surface
|
|
28
25
|
|
|
29
26
|
## Authentication (optional)
|
|
30
27
|
|
|
31
|
-
Pass an `AuthAdapter` to `createOwnsuite` to attach the account-lifecycle managers. The default adapters target
|
|
28
|
+
Pass an `AuthAdapter` to `createOwnsuite` to attach the account-lifecycle managers. The bundled default adapters target a conventional account REST surface (register / login / logout / OAuth / verify / profile CRUD); apps with custom routes can write their own against the `AuthAdapter` / `ProfileAdapter` interfaces exported from this package.
|
|
32
29
|
|
|
33
30
|
```typescript
|
|
34
31
|
import {
|
|
@@ -58,7 +55,7 @@ suite.session!.subscribe(({ status, subject }) => {
|
|
|
58
55
|
if (status === "anonymous") console.log("signed out");
|
|
59
56
|
});
|
|
60
57
|
|
|
61
|
-
// Register → server requires email verification
|
|
58
|
+
// Register → server requires email verification by default
|
|
62
59
|
await suite.auth!.register({
|
|
63
60
|
email: "alice@example.com",
|
|
64
61
|
password: "mysecretpassword",
|
|
@@ -84,8 +81,8 @@ await suite.profile!.update({
|
|
|
84
81
|
current_password: "mysecretpassword",
|
|
85
82
|
});
|
|
86
83
|
|
|
87
|
-
// Logout — revokes JWT server-side
|
|
88
|
-
//
|
|
84
|
+
// Logout — revokes JWT server-side and clears local session storage.
|
|
85
|
+
// Owner-scoped domains reset to initializing.
|
|
89
86
|
await suite.auth!.logout();
|
|
90
87
|
```
|
|
91
88
|
|