miragejs
Version:
A client-side server to help you build, test and demo your JavaScript app
70 lines (59 loc) • 1.03 kB
text/typescript
import {
Serializer,
ActiveModelSerializer,
JSONAPISerializer,
RestSerializer,
Server,
Model,
hasMany,
} from "miragejs";
new Server({
serializers: {
application: RestSerializer,
user: RestSerializer.extend({
// user-specific customizations
}),
},
});
new Server({
serializers: {
application: JSONAPISerializer,
},
});
new Server({
serializers: {
application: ActiveModelSerializer,
},
});
new Server({
serializers: {
application: Serializer,
},
});
new Server({
models: {
author: Model.extend({
blogPosts: hasMany(),
}),
},
serializers: {
author: Serializer.extend({
include: ["blogPosts"],
}),
},
});
Serializer.extend({
attrs: ["id", "title"],
});
JSONAPISerializer.extend({
alwaysIncludeLinkageData: true,
});
const ApplicationSerializer = Serializer.extend();
JSONAPISerializer.extend({
alwaysIncludeLinkageData: true,
});
export default Serializer.extend({
keyForAttribute(attr) {
return "key";
},
});