Skip to content

Commit 15ae5b0

Browse files
authored
Merge pull request #58 from ctrl-hub/add-vehicle-team-patching
Add vehicle team patching
2 parents 7629404 + baff8de commit 15ae5b0

File tree

7 files changed

+40
-11
lines changed

7 files changed

+40
-11
lines changed

dist/index.js

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -514,6 +514,11 @@ class Vehicle extends BaseModel {
514514
name: "equipment",
515515
type: "array",
516516
modelType: "equipment"
517+
},
518+
{
519+
name: "team",
520+
type: "single",
521+
modelType: "teams"
517522
}
518523
];
519524
constructor(data) {
@@ -1506,15 +1511,13 @@ class BaseService extends RequestBuilder {
15061511
};
15071512
}
15081513
async create(model, params) {
1509-
if (params) {
1510-
}
1514+
if (params) {}
15111515
const jsonApiSerializer = new JsonApiSerializer(this.hydrator.getModelMap());
15121516
const payload = jsonApiSerializer.buildCreatePayload(model);
15131517
return await this.client.makePostRequest(this.endpoint, payload);
15141518
}
15151519
async update(id, model, params) {
1516-
if (params) {
1517-
}
1520+
if (params) {}
15181521
const jsonApiSerializer = new JsonApiSerializer(this.hydrator.getModelMap());
15191522
const payload = jsonApiSerializer.buildUpdatePayload(model);
15201523
return await this.client.makePatchRequest(`${this.endpoint}/${id}`, payload);
@@ -1696,6 +1699,11 @@ class VehiclesService extends BaseService {
16961699
const payload = jsonApiSerializer.buildRelationshipPayload(new User, user);
16971700
return await this.client.makePatchRequest(`${this.endpoint}/relationships/assignee`, payload);
16981701
}
1702+
async patchTeam(team) {
1703+
const jsonApiSerializer = new JsonApiSerializer(this.hydrator.getModelMap());
1704+
const payload = jsonApiSerializer.buildRelationshipPayload(new Team, team);
1705+
return await this.client.makePatchRequest(`${this.endpoint}/relationships/team`, payload);
1706+
}
16991707
}
17001708

17011709
// src/services/EquipmentService.ts
@@ -2172,9 +2180,6 @@ class ClientConfig {
21722180
}
21732181
// src/models/Organisation.ts
21742182
class Organisation extends BaseModel {
2175-
constructor() {
2176-
super(...arguments);
2177-
}
21782183
type = "organisations";
21792184
static relationships = [];
21802185
}

dist/models/Vehicle.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,12 @@ export class Vehicle extends BaseModel {
3131
name: 'equipment',
3232
type: 'array',
3333
modelType: 'equipment',
34-
}
34+
},
35+
{
36+
name: 'team',
37+
type: 'single',
38+
modelType: 'teams',
39+
},
3540
];
3641
constructor(data) {
3742
super(data);

dist/services/VehiclesService.d.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,12 @@ import { User } from "../models/User";
55
import type { InternalResponse } from '../types/Response';
66
import type { MotRecord } from "../models/MotRecord";
77
import { Equipment } from "../models/Equipment";
8+
import { Team } from "../models/Team";
89
export declare class VehiclesService extends BaseService<Vehicle> {
910
constructor(client: Client, vehicleId?: string);
1011
enquiry(registration: string): Promise<InternalResponse<any[]>>;
1112
motRecords(vehicleId: string): Promise<InternalResponse<MotRecord[]>>;
1213
patchEquipment(equipmentItems: Array<Equipment>): Promise<any>;
1314
patchAssignee(user: User): Promise<any>;
15+
patchTeam(team: Team): Promise<any>;
1416
}

dist/services/VehiclesService.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { User } from "../models/User";
55
import { Hydrator } from "../utils/Hydrator";
66
import { Equipment } from "../models/Equipment";
77
import { JsonApiSerializer } from "../utils/JsonSerializer";
8+
import { Team } from "../models/Team";
89
export class VehiclesService extends BaseService {
910
constructor(client, vehicleId) {
1011
const endpoint = vehicleId ? `/v3/orgs/:orgId/assets/vehicles/${vehicleId}` : `/v3/orgs/:orgId/assets/vehicles`;
@@ -39,4 +40,9 @@ export class VehiclesService extends BaseService {
3940
const payload = jsonApiSerializer.buildRelationshipPayload(new User, user);
4041
return await this.client.makePatchRequest(`${this.endpoint}/relationships/assignee`, payload);
4142
}
43+
async patchTeam(team) {
44+
const jsonApiSerializer = new JsonApiSerializer(this.hydrator.getModelMap());
45+
const payload = jsonApiSerializer.buildRelationshipPayload(new Team, team);
46+
return await this.client.makePatchRequest(`${this.endpoint}/relationships/team`, payload);
47+
}
4248
}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"type": "git",
55
"url": "https://github.com/ctrl-hub/sdk.ts"
66
},
7-
"version": "0.1.133",
7+
"version": "0.1.134",
88
"main": "dist/index.js",
99
"types": "dist/index.d.ts",
1010
"type": "module",

src/models/Vehicle.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,12 @@ export class Vehicle extends BaseModel implements Partial<JsonApiMapping> {
3838
name: 'equipment',
3939
type: 'array',
4040
modelType: 'equipment',
41-
}
41+
},
42+
{
43+
name: 'team',
44+
type: 'single',
45+
modelType: 'teams',
46+
},
4247
];
4348

4449
constructor(data?: any) {

src/services/VehiclesService.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import { Hydrator } from "@utils/Hydrator";
77
import type { MotRecord } from "@models/MotRecord";
88
import { Equipment } from "@models/Equipment";
99
import { JsonApiSerializer } from "@utils/JsonSerializer";
10+
import { Team } from "@models/Team";
1011

1112
export class VehiclesService extends BaseService<Vehicle> {
1213
constructor(client: Client, vehicleId?: string) {
@@ -45,10 +46,15 @@ export class VehiclesService extends BaseService<Vehicle> {
4546
return await this.client.makePatchRequest(`${this.endpoint}/relationships/equipment`, payload);
4647
}
4748

48-
4949
public async patchAssignee(user: User) {
5050
const jsonApiSerializer = new JsonApiSerializer(this.hydrator.getModelMap());
5151
const payload = jsonApiSerializer.buildRelationshipPayload(new User, user);
5252
return await this.client.makePatchRequest(`${this.endpoint}/relationships/assignee`, payload);
5353
}
54+
55+
public async patchTeam(team: Team) {
56+
const jsonApiSerializer = new JsonApiSerializer(this.hydrator.getModelMap());
57+
const payload = jsonApiSerializer.buildRelationshipPayload(new Team, team);
58+
return await this.client.makePatchRequest(`${this.endpoint}/relationships/team`, payload);
59+
}
5460
}

0 commit comments

Comments
 (0)