Skip to content

Commit 75d694a

Browse files
authored
Merge pull request #64 from ctrl-hub/add-scheme-work-order-templates
add scheme and work order templates
2 parents daed257 + 2478d64 commit 75d694a

21 files changed

+256
-10
lines changed

dist/Client.d.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ import { VehicleInventoryCheckService } from './services/VehicleInventoryCheckSe
3333
import { AppointmentsService } from './services/AppointmentsService';
3434
import { OrganisationsService } from './services/OrganisationsService';
3535
import { OrganisationMembersService } from './services/OrganisationMembersService';
36+
import { SchemeTemplatesService } from './services/SchemeTemplatesService';
37+
import { WorkOrderTemplatesService } from './services/WorkOrderTemplatesService';
3638
export declare class Client {
3739
readonly config: ClientConfigInterface;
3840
organisation: string;
@@ -44,7 +46,9 @@ export declare class Client {
4446
ensureAuthenticated(): Promise<void>;
4547
roles(): RolesService;
4648
schemes(): SchemesService;
49+
schemeTemplates(): SchemeTemplatesService;
4750
workOrders(schemeId: string): WorkOrdersService;
51+
workOrderTemplates(): WorkOrderTemplatesService;
4852
operations(schemeId: string, workOrderId: string, operationId?: string): OperationsService;
4953
operationTemplates(): OperationTemplatesService;
5054
serviceAccountKeys(): ServiceAccountKeysService;

dist/Client.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ import { VehicleInventoryCheckService } from './services/VehicleInventoryCheckSe
3232
import { AppointmentsService } from './services/AppointmentsService';
3333
import { OrganisationsService } from './services/OrganisationsService';
3434
import { OrganisationMembersService } from './services/OrganisationMembersService';
35+
import { SchemeTemplatesService } from './services/SchemeTemplatesService';
36+
import { WorkOrderTemplatesService } from './services/WorkOrderTemplatesService';
3537
export class Client {
3638
config;
3739
organisation;
@@ -75,9 +77,15 @@ export class Client {
7577
schemes() {
7678
return new SchemesService(this);
7779
}
80+
schemeTemplates() {
81+
return new SchemeTemplatesService(this);
82+
}
7883
workOrders(schemeId) {
7984
return new WorkOrdersService(this, schemeId);
8085
}
86+
workOrderTemplates() {
87+
return new WorkOrderTemplatesService(this);
88+
}
8189
operations(schemeId, workOrderId, operationId) {
8290
return new OperationsService(this, schemeId, workOrderId, operationId);
8391
}

dist/index.d.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@ export { Form } from './models/Form';
1818
export { FormCategory } from './models/FormCategory';
1919
export { Group } from './models/Group';
2020
export { Log } from './models/Log';
21+
export { Operation } from './models/Operation';
22+
export { OperationTemplate } from './models/OperationTemplate';
23+
export { Organisation } from './models/Organisation';
2124
export { Permission } from './models/Permission';
2225
export { Property } from './models/Property';
2326
export { Role } from './models/Role';
2427
export { Scheme } from './models/Scheme';
25-
export { WorkOrder } from './models/WorkOrder';
26-
export { Operation } from './models/Operation';
27-
export { OperationTemplate } from './models/OperationTemplate';
28-
export { Organisation } from './models/Organisation';
28+
export { SchemeTemplate } from './models/SchemeTemplate';
2929
export { ServiceAccount } from './models/ServiceAccount';
3030
export { ServiceAccountKey } from './models/ServiceAccountKey';
3131
export { Submission } from './models/Submission';
@@ -37,3 +37,5 @@ export { VehicleModel } from './models/VehicleModel';
3737
export { VehicleCategory } from './models/VehicleCategory';
3838
export { VehicleManufacturer } from './models/VehicleManufacturer';
3939
export { VehicleSpecification } from './models/VehicleSpecification';
40+
export { WorkOrder } from './models/WorkOrder';
41+
export { WorkOrderTemplate } from './models/WorkOrderTemplate';

dist/index.js

Lines changed: 61 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1238,6 +1238,42 @@ class Appointment extends BaseModel {
12381238
}
12391239
}
12401240

1241+
// src/models/WorkOrderTemplate.ts
1242+
class WorkOrderTemplate extends BaseModel {
1243+
type = "work-order-templates";
1244+
name = "";
1245+
labels = [];
1246+
static relationships = [];
1247+
constructor(data) {
1248+
super(data);
1249+
this.name = data?.attributes?.name ?? data?.name ?? "";
1250+
this.labels = data?.attributes?.labels ?? data?.labels ?? [];
1251+
}
1252+
jsonApiMapping() {
1253+
return {
1254+
attributes: ["name", "labels"]
1255+
};
1256+
}
1257+
}
1258+
1259+
// src/models/SchemeTemplate.ts
1260+
class SchemeTemplate extends BaseModel {
1261+
type = "scheme-templates";
1262+
name = "";
1263+
labels = [];
1264+
static relationships = [];
1265+
constructor(data) {
1266+
super(data);
1267+
this.name = data?.attributes?.name ?? data?.name ?? "";
1268+
this.labels = data?.attributes?.labels ?? data?.labels ?? [];
1269+
}
1270+
jsonApiMapping() {
1271+
return {
1272+
attributes: ["name", "labels"]
1273+
};
1274+
}
1275+
}
1276+
12411277
// src/utils/Hydrator.ts
12421278
class Hydrator {
12431279
modelMap = {
@@ -1260,6 +1296,7 @@ class Hydrator {
12601296
properties: Property,
12611297
roles: Role,
12621298
schemes: Scheme,
1299+
"scheme-templates": SchemeTemplate,
12631300
"service-accounts": ServiceAccount,
12641301
"service-account-keys": ServiceAccountKey,
12651302
streets: Street,
@@ -1274,7 +1311,8 @@ class Hydrator {
12741311
"vehicle-inventory-checks": VehicleInventoryCheck,
12751312
"vehicle-inspections": VehicleInspection,
12761313
"vehicle-mot-records": MotRecord,
1277-
"work-orders": WorkOrder
1314+
"work-orders": WorkOrder,
1315+
"work-order-templates": WorkOrderTemplate
12781316
};
12791317
getModelMap = () => {
12801318
return this.modelMap;
@@ -1946,6 +1984,20 @@ class OrganisationMembersService extends BaseService {
19461984
}
19471985
}
19481986

1987+
// src/services/SchemeTemplatesService.ts
1988+
class SchemeTemplatesService extends BaseService {
1989+
constructor(client) {
1990+
super(client, `/v3/orgs/:orgId/governance/scheme-templates`);
1991+
}
1992+
}
1993+
1994+
// src/services/WorkOrderTemplatesService.ts
1995+
class WorkOrderTemplatesService extends BaseService {
1996+
constructor(client) {
1997+
super(client, `/v3/orgs/:orgId/governance/work-order-templates`);
1998+
}
1999+
}
2000+
19492001
// src/Client.ts
19502002
class Client {
19512003
config;
@@ -1990,9 +2042,15 @@ class Client {
19902042
schemes() {
19912043
return new SchemesService(this);
19922044
}
2045+
schemeTemplates() {
2046+
return new SchemeTemplatesService(this);
2047+
}
19932048
workOrders(schemeId) {
19942049
return new WorkOrdersService(this, schemeId);
19952050
}
2051+
workOrderTemplates() {
2052+
return new WorkOrderTemplatesService(this);
2053+
}
19962054
operations(schemeId, workOrderId, operationId) {
19972055
return new OperationsService(this, schemeId, workOrderId, operationId);
19982056
}
@@ -2197,6 +2255,7 @@ class Organisation extends BaseModel {
21972255
static relationships = [];
21982256
}
21992257
export {
2258+
WorkOrderTemplate,
22002259
WorkOrder,
22012260
VehicleSpecification,
22022261
VehicleModel,
@@ -2209,6 +2268,7 @@ export {
22092268
Submission,
22102269
ServiceAccountKey,
22112270
ServiceAccount,
2271+
SchemeTemplate,
22122272
Scheme,
22132273
Role,
22142274
RequestOptions,

dist/models/SchemeTemplate.d.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import type { RelationshipDefinition } from '../types/RelationshipDefinition';
2+
import { BaseModel } from './BaseModel';
3+
import type { Label } from './Label';
4+
export declare class SchemeTemplate extends BaseModel {
5+
type: string;
6+
name: string;
7+
labels: Label[];
8+
static relationships: RelationshipDefinition[];
9+
constructor(data?: any);
10+
jsonApiMapping(): {
11+
attributes: string[];
12+
};
13+
}

dist/models/SchemeTemplate.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import { BaseModel } from './BaseModel';
2+
export class SchemeTemplate extends BaseModel {
3+
type = 'scheme-templates';
4+
name = '';
5+
labels = [];
6+
static relationships = [];
7+
constructor(data) {
8+
super(data);
9+
this.name = data?.attributes?.name ?? data?.name ?? '';
10+
this.labels = data?.attributes?.labels ?? data?.labels ?? [];
11+
}
12+
jsonApiMapping() {
13+
return {
14+
attributes: ['name', 'labels'],
15+
};
16+
}
17+
}

dist/models/WorkOrderTemplate.d.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import type { RelationshipDefinition } from '../types/RelationshipDefinition';
2+
import { BaseModel } from './BaseModel';
3+
import type { Label } from './Label';
4+
export declare class WorkOrderTemplate extends BaseModel {
5+
type: string;
6+
name: string;
7+
labels: Label[];
8+
static relationships: RelationshipDefinition[];
9+
constructor(data?: any);
10+
jsonApiMapping(): {
11+
attributes: string[];
12+
};
13+
}

dist/models/WorkOrderTemplate.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import { BaseModel } from './BaseModel';
2+
export class WorkOrderTemplate extends BaseModel {
3+
type = 'work-order-templates';
4+
name = '';
5+
labels = [];
6+
static relationships = [];
7+
constructor(data) {
8+
super(data);
9+
this.name = data?.attributes?.name ?? data?.name ?? '';
10+
this.labels = data?.attributes?.labels ?? data?.labels ?? [];
11+
}
12+
jsonApiMapping() {
13+
return {
14+
attributes: ['name', 'labels'],
15+
};
16+
}
17+
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import { Client } from "../Client";
2+
import { BaseService } from "./BaseService";
3+
import type { SchemeTemplate } from "../models/SchemeTemplate";
4+
export declare class SchemeTemplatesService extends BaseService<SchemeTemplate> {
5+
constructor(client: Client);
6+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import { Client } from "../Client";
2+
import { BaseService } from "./BaseService";
3+
export class SchemeTemplatesService extends BaseService {
4+
constructor(client) {
5+
super(client, `/v3/orgs/:orgId/governance/scheme-templates`);
6+
}
7+
}

0 commit comments

Comments
 (0)