Skip to content

Commit 7754e4d

Browse files
committed
fix(serializer): inject provided top level links into JSON:API document
1 parent aee3e92 commit 7754e4d

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

src/body.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@ export type JsonApiError = {
1515
meta?: Meta;
1616
};
1717

18-
type TopLevelLinks = Links<"self" | "related" | "describedby" | "first" | "last" | "prev" | "next">;
18+
export type TopLevelLinks = Links<
19+
"self" | "related" | "describedby" | "first" | "last" | "prev" | "next"
20+
>;
1921

2022
type OptionalTopLevelMembers = {
2123
links?: TopLevelLinks;

src/serializer.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { JsonApiBody } from "./body.js";
1+
import { JsonApiBody, type TopLevelLinks } from "./body.js";
22
import type {
33
Attributes,
44
Links,
@@ -99,7 +99,7 @@ export type SerializeManagerOptions<TContext = undefined, TSideloaded = undefine
9999
fields?: Record<string, string[]>;
100100
include?: string[];
101101
meta?: Meta;
102-
links?: Links;
102+
links?: TopLevelLinks;
103103
extensions?: string[];
104104
profiles?: string[];
105105
sideloaded?: TSideloaded;
@@ -178,6 +178,7 @@ export class SerializeManager<
178178
{
179179
data,
180180
meta: options?.meta,
181+
links: options?.links,
181182
included: included?.toJson(),
182183
},
183184
{

0 commit comments

Comments
 (0)