@t4h.framework/amber 0.0.0 → 0.1.0
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/dist/activities/AbstractAmberHttpRequestActivity.d.ts +12 -0
- package/dist/activities/AbstractAmberHttpRequestActivity.d.ts.map +1 -0
- package/dist/activities/AbstractAmberHttpRequestActivity.js +21 -0
- package/dist/activities/AbstractAmberHttpRequestActivity.js.map +1 -0
- package/dist/activities/AmberCommentTicketActivity.d.ts +13 -0
- package/dist/activities/AmberCommentTicketActivity.d.ts.map +1 -0
- package/dist/activities/AmberCommentTicketActivity.js +22 -0
- package/dist/activities/AmberCommentTicketActivity.js.map +1 -0
- package/dist/activities/AmberCreateTicketActivity.d.ts +15 -0
- package/dist/activities/AmberCreateTicketActivity.d.ts.map +1 -0
- package/dist/activities/AmberCreateTicketActivity.js +68 -0
- package/dist/activities/AmberCreateTicketActivity.js.map +1 -0
- package/dist/activities/AmberGetTicketActivity.d.ts +12 -0
- package/dist/activities/AmberGetTicketActivity.d.ts.map +1 -0
- package/dist/activities/AmberGetTicketActivity.js +30 -0
- package/dist/activities/AmberGetTicketActivity.js.map +1 -0
- package/dist/activities/AmberInteractTicketActivity.d.ts +13 -0
- package/dist/activities/AmberInteractTicketActivity.d.ts.map +1 -0
- package/dist/activities/AmberInteractTicketActivity.js +23 -0
- package/dist/activities/AmberInteractTicketActivity.js.map +1 -0
- package/dist/activities/AmberLockTicketActivity.d.ts +14 -0
- package/dist/activities/AmberLockTicketActivity.d.ts.map +1 -0
- package/dist/activities/AmberLockTicketActivity.js +33 -0
- package/dist/activities/AmberLockTicketActivity.js.map +1 -0
- package/dist/activities/AmberReleaseTicketLockActivity.d.ts +12 -0
- package/dist/activities/AmberReleaseTicketLockActivity.d.ts.map +1 -0
- package/dist/activities/AmberReleaseTicketLockActivity.js +30 -0
- package/dist/activities/AmberReleaseTicketLockActivity.js.map +1 -0
- package/dist/activities/AmberTabulateTicketActivity.d.ts +13 -0
- package/dist/activities/AmberTabulateTicketActivity.d.ts.map +1 -0
- package/dist/activities/AmberTabulateTicketActivity.js +22 -0
- package/dist/activities/AmberTabulateTicketActivity.js.map +1 -0
- package/dist/activities/AmberTransferTicketActivity.d.ts +77 -0
- package/dist/activities/AmberTransferTicketActivity.d.ts.map +1 -0
- package/dist/activities/AmberTransferTicketActivity.js +121 -0
- package/dist/activities/AmberTransferTicketActivity.js.map +1 -0
- package/dist/activities/AmberUpdateTicketActivity.d.ts +13 -0
- package/dist/activities/AmberUpdateTicketActivity.d.ts.map +1 -0
- package/dist/activities/AmberUpdateTicketActivity.js +22 -0
- package/dist/activities/AmberUpdateTicketActivity.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/dist/models/Amber.d.ts +16 -0
- package/dist/models/Amber.d.ts.map +1 -0
- package/dist/models/Amber.js +42 -0
- package/dist/models/Amber.js.map +1 -0
- package/dist/models/AmberConnection.d.ts +7 -0
- package/dist/models/AmberConnection.d.ts.map +1 -0
- package/dist/models/AmberConnection.js +11 -0
- package/dist/models/AmberConnection.js.map +1 -0
- package/dist/models/Ticket.d.ts +28 -0
- package/dist/models/Ticket.d.ts.map +1 -0
- package/dist/models/Ticket.js +116 -0
- package/dist/models/Ticket.js.map +1 -0
- package/dist/types/ServiceTabulate.d.ts +13 -0
- package/dist/types/ServiceTabulate.d.ts.map +1 -0
- package/dist/types/ServiceTabulate.js +2 -0
- package/dist/types/ServiceTabulate.js.map +1 -0
- package/dist/types/ServiceTicket.d.ts +46 -0
- package/dist/types/ServiceTicket.d.ts.map +1 -0
- package/dist/types/ServiceTicket.js +2 -0
- package/dist/types/ServiceTicket.js.map +1 -0
- package/dist/types/ServiceTicketComment.d.ts +6 -0
- package/dist/types/ServiceTicketComment.d.ts.map +1 -0
- package/dist/types/ServiceTicketComment.js +2 -0
- package/dist/types/ServiceTicketComment.js.map +1 -0
- package/dist/types/ServiceTicketInteraction.d.ts +24 -0
- package/dist/types/ServiceTicketInteraction.d.ts.map +1 -0
- package/dist/types/ServiceTicketInteraction.js +2 -0
- package/dist/types/ServiceTicketInteraction.js.map +1 -0
- package/dist/types/ServiceTicketLock.d.ts +7 -0
- package/dist/types/ServiceTicketLock.d.ts.map +1 -0
- package/dist/types/ServiceTicketLock.js +2 -0
- package/dist/types/ServiceTicketLock.js.map +1 -0
- package/dist/types/ServiceTransfer.d.ts +14 -0
- package/dist/types/ServiceTransfer.d.ts.map +1 -0
- package/dist/types/ServiceTransfer.js +2 -0
- package/dist/types/ServiceTransfer.js.map +1 -0
- package/dist/types/ServiceUpdate.d.ts +6 -0
- package/dist/types/ServiceUpdate.d.ts.map +1 -0
- package/dist/types/ServiceUpdate.js +2 -0
- package/dist/types/ServiceUpdate.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { Claim, AsyncActivity, GetActivityUniqueIdentifierClaim, GetWorkflowUniqueIdentifierClaim, } from '@t4h.framework/core';
|
|
2
|
+
import { HttpClientRequestClaim } from '@t4h.framework/http';
|
|
3
|
+
import { Type } from 'typebox';
|
|
4
|
+
import {} from './AbstractAmberHttpRequestActivity.js';
|
|
5
|
+
const schema = Type.Object({
|
|
6
|
+
service: Type.Object({
|
|
7
|
+
id: Type.String({
|
|
8
|
+
format: 'uuid',
|
|
9
|
+
}),
|
|
10
|
+
}),
|
|
11
|
+
tabulation: Type.Object({
|
|
12
|
+
name: Type.String(),
|
|
13
|
+
tabulationOption: Type.Object({
|
|
14
|
+
id: Type.String({
|
|
15
|
+
format: 'uuid',
|
|
16
|
+
}),
|
|
17
|
+
name: Type.String(),
|
|
18
|
+
}),
|
|
19
|
+
notes: Type.Array(Type.Object({
|
|
20
|
+
content: Type.String(),
|
|
21
|
+
createdAt: Type.String({
|
|
22
|
+
format: 'date-time',
|
|
23
|
+
}),
|
|
24
|
+
type: Type.Enum(['public', 'private']),
|
|
25
|
+
id: Type.String({
|
|
26
|
+
format: 'uuid',
|
|
27
|
+
}),
|
|
28
|
+
})),
|
|
29
|
+
}),
|
|
30
|
+
serviceTransfer: Type.Object({
|
|
31
|
+
id: Type.String({
|
|
32
|
+
format: 'uuid',
|
|
33
|
+
}),
|
|
34
|
+
skill: Type.Object({
|
|
35
|
+
id: Type.String({
|
|
36
|
+
format: 'uuid',
|
|
37
|
+
}),
|
|
38
|
+
name: Type.String(),
|
|
39
|
+
}),
|
|
40
|
+
}),
|
|
41
|
+
});
|
|
42
|
+
export class AmberTransferTicketActivity extends AsyncActivity {
|
|
43
|
+
claims = new Claim({
|
|
44
|
+
http: HttpClientRequestClaim,
|
|
45
|
+
getProjectVersionWorkflowRunId: GetWorkflowUniqueIdentifierClaim,
|
|
46
|
+
getProjectVersionWorkflowActivityRunId: GetActivityUniqueIdentifierClaim,
|
|
47
|
+
});
|
|
48
|
+
async bootstrap(input) {
|
|
49
|
+
const url = new URL(`${input.url}/services/${input.id}/transfers`, input.baseUrl);
|
|
50
|
+
const projectVersionWorkflowRun = this.claims.getProjectVersionWorkflowRunId.getWorkflowUniqueIdentifier();
|
|
51
|
+
const projectVersionWorkflowRunActivity = this.claims.getProjectVersionWorkflowActivityRunId.getActivityUniqueIdentifier();
|
|
52
|
+
const auth = Buffer.from(`${input.auth.username}:${input.auth.password}`).toString('base64');
|
|
53
|
+
const responseUpdateMetadata = await this.claims.http.request({
|
|
54
|
+
url: new URL(`${input.url}/services/${input.id}`, input.baseUrl),
|
|
55
|
+
method: 'PATCH',
|
|
56
|
+
body: Buffer.from(JSON.stringify({
|
|
57
|
+
state: {
|
|
58
|
+
metadata: {
|
|
59
|
+
[`t4h-framework:workflow-run:${projectVersionWorkflowRun}`]: projectVersionWorkflowRunActivity,
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
})),
|
|
63
|
+
headers: {
|
|
64
|
+
'Content-Type': 'application/json',
|
|
65
|
+
Authorization: `Basic ${auth}`,
|
|
66
|
+
},
|
|
67
|
+
redirect: 'follow',
|
|
68
|
+
retry: true,
|
|
69
|
+
});
|
|
70
|
+
if (responseUpdateMetadata.status !== 200)
|
|
71
|
+
return this.rejected(`Failed to update metadata for ticket ${input.id}: ${responseUpdateMetadata.status}`);
|
|
72
|
+
if (input.input.status === 'in-queue' || input.input.lockRelease)
|
|
73
|
+
Object.assign(input.input, {
|
|
74
|
+
lock: {
|
|
75
|
+
release: { ref: projectVersionWorkflowRun },
|
|
76
|
+
},
|
|
77
|
+
});
|
|
78
|
+
const response = await this.claims.http.request({
|
|
79
|
+
url,
|
|
80
|
+
method: 'POST',
|
|
81
|
+
body: Buffer.from(JSON.stringify(input.input)),
|
|
82
|
+
headers: {
|
|
83
|
+
'Content-Type': 'application/json',
|
|
84
|
+
Authorization: `Basic ${auth}`,
|
|
85
|
+
},
|
|
86
|
+
redirect: 'follow',
|
|
87
|
+
retry: true,
|
|
88
|
+
});
|
|
89
|
+
if (response.status !== 200)
|
|
90
|
+
return this.rejected(`Failed to transfer ticket ${input.id}: ${response.status}`);
|
|
91
|
+
const chunks = await response.body.toArray();
|
|
92
|
+
const buffer = Buffer.concat(chunks);
|
|
93
|
+
const data = JSON.parse(buffer.toString('utf-8'));
|
|
94
|
+
if (input.input.status === 'in-queue')
|
|
95
|
+
return this.pending({
|
|
96
|
+
output: {
|
|
97
|
+
service: input.id,
|
|
98
|
+
serviceTransfer: data.id,
|
|
99
|
+
},
|
|
100
|
+
schema,
|
|
101
|
+
});
|
|
102
|
+
return this.done({
|
|
103
|
+
service: input.id,
|
|
104
|
+
serviceTransfer: data.id,
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
advance(payload) {
|
|
108
|
+
return this.done({
|
|
109
|
+
service: payload.service,
|
|
110
|
+
serviceTransfer: payload.serviceTransfer,
|
|
111
|
+
tabulationOption: payload.tabulation.tabulationOption,
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
toInput(input) {
|
|
115
|
+
return input;
|
|
116
|
+
}
|
|
117
|
+
toOutput(output) {
|
|
118
|
+
return output;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=AmberTransferTicketActivity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AmberTransferTicketActivity.js","sourceRoot":"","sources":["../../src/activities/AmberTransferTicketActivity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AbstractAmberHttpRequestActivity, type AmberHttpRequestActivityInput } from './AbstractAmberHttpRequestActivity.js';
|
|
2
|
+
import type { ServiceUpdateInput } from '../types/ServiceUpdate.js';
|
|
3
|
+
export type AmberUpdateTicketActivityInput = Omit<AmberHttpRequestActivityInput, 'method' | 'body'> & {
|
|
4
|
+
input: ServiceUpdateInput;
|
|
5
|
+
id: string;
|
|
6
|
+
};
|
|
7
|
+
export declare class AmberUpdateTicketActivity extends AbstractAmberHttpRequestActivity<[
|
|
8
|
+
AmberUpdateTicketActivityInput
|
|
9
|
+
], AmberHttpRequestActivityInput> {
|
|
10
|
+
toInput(input: AmberUpdateTicketActivityInput): AmberHttpRequestActivityInput;
|
|
11
|
+
toOutput(output: any, input: AmberUpdateTicketActivityInput): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=AmberUpdateTicketActivity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AmberUpdateTicketActivity.d.ts","sourceRoot":"","sources":["../../src/activities/AmberUpdateTicketActivity.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,gCAAgC,EAChC,KAAK,6BAA6B,EACnC,MAAM,uCAAuC,CAAA;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAEnE,MAAM,MAAM,8BAA8B,GAAG,IAAI,CAC/C,6BAA6B,EAC7B,QAAQ,GAAG,MAAM,CAClB,GAAG;IACF,KAAK,EAAE,kBAAkB,CAAA;IACzB,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AAED,qBAAa,yBAA0B,SAAQ,gCAAgC,CAC7E;IAAC,8BAA8B;CAAC,EAChC,6BAA6B,CAC9B;IACQ,OAAO,CACZ,KAAK,EAAE,8BAA8B,GACpC,6BAA6B;IASnB,QAAQ,CACnB,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC,IAAI,CAAC;CAUjB"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Response } from '@t4h.framework/http';
|
|
2
|
+
import { AbstractAmberHttpRequestActivity, } from './AbstractAmberHttpRequestActivity.js';
|
|
3
|
+
export class AmberUpdateTicketActivity extends AbstractAmberHttpRequestActivity {
|
|
4
|
+
toInput(input) {
|
|
5
|
+
return {
|
|
6
|
+
...input,
|
|
7
|
+
url: `${input.url}/services/${input.id}`,
|
|
8
|
+
method: 'PATCH',
|
|
9
|
+
body: { json: input.input },
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
async toOutput(output, input) {
|
|
13
|
+
const response = new Response(output);
|
|
14
|
+
if (response.status !== 200)
|
|
15
|
+
throw new Error(`Failed to update ticket ${input.id}`, {
|
|
16
|
+
cause: {
|
|
17
|
+
httpStatusCode: response.status,
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=AmberUpdateTicketActivity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AmberUpdateTicketActivity.js","sourceRoot":"","sources":["../../src/activities/AmberUpdateTicketActivity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,OAAO,EACL,gCAAgC,GAEjC,MAAM,uCAAuC,CAAA;AAW9C,MAAM,OAAO,yBAA0B,SAAQ,gCAG9C;IACQ,OAAO,CACZ,KAAqC;QAErC,OAAO;YACL,GAAG,KAAK;YACR,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,aAAa,KAAK,CAAC,EAAE,EAAE;YACxC,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE;SAC5B,CAAA;IACH,CAAC;IAEM,KAAK,CAAC,QAAQ,CACnB,MAAW,EACX,KAAqC;QAErC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;QAErC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;YACzB,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,CAAC,EAAE,EAAE,EAAE;gBACrD,KAAK,EAAE;oBACL,cAAc,EAAE,QAAQ,CAAC,MAAM;iBAChC;aACF,CAAC,CAAA;IACN,CAAC;CACF"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from './models/Amber.js';
|
|
2
|
+
export * from './activities/AmberCreateTicketActivity.js';
|
|
3
|
+
export * from './activities/AmberCommentTicketActivity.js';
|
|
4
|
+
export * from './activities/AmberGetTicketActivity.js';
|
|
5
|
+
export * from './activities/AmberInteractTicketActivity.js';
|
|
6
|
+
export * from './activities/AmberTabulateTicketActivity.js';
|
|
7
|
+
export * from './activities/AmberTransferTicketActivity.js';
|
|
8
|
+
export * from './activities/AmberUpdateTicketActivity.js';
|
|
9
|
+
export * from './activities/AmberLockTicketActivity.js';
|
|
10
|
+
export * from './activities/AmberReleaseTicketLockActivity.js';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,2CAA2C,CAAA;AACzD,cAAc,4CAA4C,CAAA;AAC1D,cAAc,wCAAwC,CAAA;AACtD,cAAc,6CAA6C,CAAA;AAC3D,cAAc,6CAA6C,CAAA;AAC3D,cAAc,6CAA6C,CAAA;AAC3D,cAAc,2CAA2C,CAAA;AACzD,cAAc,yCAAyC,CAAA;AACvD,cAAc,gDAAgD,CAAA"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from './models/Amber.js';
|
|
2
|
+
export * from './activities/AmberCreateTicketActivity.js';
|
|
3
|
+
export * from './activities/AmberCommentTicketActivity.js';
|
|
4
|
+
export * from './activities/AmberGetTicketActivity.js';
|
|
5
|
+
export * from './activities/AmberInteractTicketActivity.js';
|
|
6
|
+
export * from './activities/AmberTabulateTicketActivity.js';
|
|
7
|
+
export * from './activities/AmberTransferTicketActivity.js';
|
|
8
|
+
export * from './activities/AmberUpdateTicketActivity.js';
|
|
9
|
+
export * from './activities/AmberLockTicketActivity.js';
|
|
10
|
+
export * from './activities/AmberReleaseTicketLockActivity.js';
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,2CAA2C,CAAA;AACzD,cAAc,4CAA4C,CAAA;AAC1D,cAAc,wCAAwC,CAAA;AACtD,cAAc,6CAA6C,CAAA;AAC3D,cAAc,6CAA6C,CAAA;AAC3D,cAAc,6CAA6C,CAAA;AAC3D,cAAc,2CAA2C,CAAA;AACzD,cAAc,yCAAyC,CAAA;AACvD,cAAc,gDAAgD,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type AmberCreateTicketActivityInput } from '../activities/AmberCreateTicketActivity.js';
|
|
2
|
+
import { type AmberGetTicketActivityInput } from '../activities/AmberGetTicketActivity.js';
|
|
3
|
+
export type AmberConfig = {
|
|
4
|
+
url: string;
|
|
5
|
+
tenant: string;
|
|
6
|
+
channel: string;
|
|
7
|
+
clientId: string;
|
|
8
|
+
clientSecret: string;
|
|
9
|
+
};
|
|
10
|
+
export declare class Amber {
|
|
11
|
+
#private;
|
|
12
|
+
constructor(config: AmberConfig);
|
|
13
|
+
createTicket(input: Omit<AmberCreateTicketActivityInput, 'auth' | 'url' | 'channel'>): Promise<Promise<import("./Ticket.js").Ticket>>;
|
|
14
|
+
getTicket(input: Omit<AmberGetTicketActivityInput, 'auth' | 'url'>): Promise<Promise<import("./Ticket.js").Ticket>>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=Amber.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Amber.d.ts","sourceRoot":"","sources":["../../src/models/Amber.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,yCAAyC,CAAA;AAahD,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAMD,qBAAa,KAAK;;gBAIJ,MAAM,EAAE,WAAW;IAYxB,YAAY,CACjB,KAAK,EAAE,IAAI,CAAC,8BAA8B,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;IAalE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,2BAA2B,EAAE,MAAM,GAAG,KAAK,CAAC;CAU1E"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { History } from '@t4h.framework/core';
|
|
2
|
+
import { AmberConnection } from './AmberConnection.js';
|
|
3
|
+
import { AmberCreateTicketActivity, } from '../activities/AmberCreateTicketActivity.js';
|
|
4
|
+
import { AmberGetTicketActivity, } from '../activities/AmberGetTicketActivity.js';
|
|
5
|
+
const CHANNEL_BASE_URL = 'v1/tenants/:safeTenantId/channels/:channel';
|
|
6
|
+
const getAmberUrl = (url, channel, tenant) => {
|
|
7
|
+
const channelUrl = CHANNEL_BASE_URL.replace(':safeTenantId', tenant).replace(':channel', channel);
|
|
8
|
+
return new URL(channelUrl, url);
|
|
9
|
+
};
|
|
10
|
+
const amberCreateTicketActivity = History.bind(AmberCreateTicketActivity);
|
|
11
|
+
const amberGetTicketActivity = History.bind(AmberGetTicketActivity);
|
|
12
|
+
export class Amber {
|
|
13
|
+
#config;
|
|
14
|
+
#connection;
|
|
15
|
+
constructor(config) {
|
|
16
|
+
this.#config = config;
|
|
17
|
+
const url = getAmberUrl(config.url, config.channel, config.tenant);
|
|
18
|
+
this.#connection = new AmberConnection(url.href, config.clientId, config.clientSecret);
|
|
19
|
+
}
|
|
20
|
+
createTicket(input) {
|
|
21
|
+
return amberCreateTicketActivity({
|
|
22
|
+
...input,
|
|
23
|
+
channel: this.#config.channel,
|
|
24
|
+
auth: {
|
|
25
|
+
username: this.#config.clientId,
|
|
26
|
+
password: this.#config.clientSecret,
|
|
27
|
+
},
|
|
28
|
+
url: this.#connection.url,
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
getTicket(input) {
|
|
32
|
+
return amberGetTicketActivity({
|
|
33
|
+
...input,
|
|
34
|
+
auth: {
|
|
35
|
+
username: this.#config.clientId,
|
|
36
|
+
password: this.#config.clientSecret,
|
|
37
|
+
},
|
|
38
|
+
url: this.#connection.url,
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=Amber.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Amber.js","sourceRoot":"","sources":["../../src/models/Amber.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EACL,yBAAyB,GAE1B,MAAM,4CAA4C,CAAA;AACnD,OAAO,EACL,sBAAsB,GAEvB,MAAM,yCAAyC,CAAA;AAEhD,MAAM,gBAAgB,GAAG,4CAA4C,CAAA;AAErE,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,OAAe,EAAE,MAAc,EAAE,EAAE;IACnE,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,OAAO,CAC1E,UAAU,EACV,OAAO,CACR,CAAA;IAED,OAAO,IAAI,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;AACjC,CAAC,CAAA;AAUD,MAAM,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;AAEzE,MAAM,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;AAEnE,MAAM,OAAO,KAAK;IAChB,OAAO,CAAa;IACpB,WAAW,CAAiB;IAE5B,YAAY,MAAmB;QAC7B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QAErB,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;QAElE,IAAI,CAAC,WAAW,GAAG,IAAI,eAAe,CACpC,GAAG,CAAC,IAAI,EACR,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,YAAY,CACpB,CAAA;IACH,CAAC;IAEM,YAAY,CACjB,KAAuE;QAEvE,OAAO,yBAAyB,CAAC;YAC/B,GAAG,KAAK;YACR,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;YAC7B,IAAI,EAAE;gBACJ,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAC/B,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;aACpC;YACD,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG;SAC1B,CAAC,CAAA;IACJ,CAAC;IAEM,SAAS,CAAC,KAAwD;QACvE,OAAO,sBAAsB,CAAC;YAC5B,GAAG,KAAK;YACR,IAAI,EAAE;gBACJ,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAC/B,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;aACpC;YACD,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG;SAC1B,CAAC,CAAA;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AmberConnection.d.ts","sourceRoot":"","sources":["../../src/models/AmberConnection.ts"],"names":[],"mappings":"AAAA,qBAAa,eAAe;aAER,GAAG,EAAE,MAAM;aACX,QAAQ,EAAE,MAAM;aAChB,YAAY,EAAE,MAAM;gBAFpB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM;CAEvC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AmberConnection.js","sourceRoot":"","sources":["../../src/models/AmberConnection.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,eAAe;IAER;IACA;IACA;IAHlB,YACkB,GAAW,EACX,QAAgB,EAChB,YAAoB;QAFpB,QAAG,GAAH,GAAG,CAAQ;QACX,aAAQ,GAAR,QAAQ,CAAQ;QAChB,iBAAY,GAAZ,YAAY,CAAQ;IACnC,CAAC;CACL"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type AmberCommentTicketActivityInput } from '../activities/AmberCommentTicketActivity.js';
|
|
2
|
+
import { type AmberInteractTicketActivityInput } from '../activities/AmberInteractTicketActivity.js';
|
|
3
|
+
import { type AmberLockTicketActivityInput } from '../activities/AmberLockTicketActivity.js';
|
|
4
|
+
import { type AmberTabulateTicketActivityInput } from '../activities/AmberTabulateTicketActivity.js';
|
|
5
|
+
import { AmberTransferTicketActivity, type AmberTransferTicketActivityInput } from '../activities/AmberTransferTicketActivity.js';
|
|
6
|
+
import { type AmberUpdateTicketActivityInput } from '../activities/AmberUpdateTicketActivity.js';
|
|
7
|
+
type Input<TInput> = Omit<TInput, 'auth' | 'url' | 'id'>;
|
|
8
|
+
type TicketConfig = {
|
|
9
|
+
clientId: string;
|
|
10
|
+
clientSecret: string;
|
|
11
|
+
url: string;
|
|
12
|
+
};
|
|
13
|
+
export declare class Ticket {
|
|
14
|
+
#private;
|
|
15
|
+
readonly id: string;
|
|
16
|
+
private readonly config;
|
|
17
|
+
constructor(id: string, config: TicketConfig);
|
|
18
|
+
tabulate(input: Input<AmberTabulateTicketActivityInput>): Promise<Promise<void>>;
|
|
19
|
+
transfer(input: Input<AmberTransferTicketActivityInput>): Promise<import("@t4h.framework/core").AsyncActivityAwaitable<AmberTransferTicketActivity>>;
|
|
20
|
+
comment(input: Input<AmberCommentTicketActivityInput>): Promise<Promise<void>>;
|
|
21
|
+
interact(input: Input<AmberInteractTicketActivityInput>): Promise<Promise<void>>;
|
|
22
|
+
finish(): Promise<Promise<void>>;
|
|
23
|
+
update(input: Input<AmberUpdateTicketActivityInput>): Promise<Promise<void>>;
|
|
24
|
+
lock(input: Input<AmberLockTicketActivityInput>): Promise<Promise<void>>;
|
|
25
|
+
releaseLock(): Promise<Promise<void>>;
|
|
26
|
+
}
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=Ticket.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Ticket.d.ts","sourceRoot":"","sources":["../../src/models/Ticket.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,+BAA+B,EACrC,MAAM,6CAA6C,CAAA;AACpD,OAAO,EAEL,KAAK,gCAAgC,EACtC,MAAM,8CAA8C,CAAA;AACrD,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,0CAA0C,CAAA;AAEjD,OAAO,EAEL,KAAK,gCAAgC,EACtC,MAAM,8CAA8C,CAAA;AACrD,OAAO,EACL,2BAA2B,EAC3B,KAAK,gCAAgC,EACtC,MAAM,8CAA8C,CAAA;AACrD,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,4CAA4C,CAAA;AAEnD,KAAK,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC,CAAA;AAkBxD,KAAK,YAAY,GAAG;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,qBAAa,MAAM;;aAIC,EAAE,EAAE,MAAM;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADP,EAAE,EAAE,MAAM,EACT,MAAM,EAAE,YAAY;IAShC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,gCAAgC,CAAC;IAYvD,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,gCAAgC,CAAC;IAYvD,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,+BAA+B,CAAC;IAYrD,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,gCAAgC,CAAC;IAYvD,MAAM;IAcN,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,8BAA8B,CAAC;IAYnD,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,4BAA4B,CAAC;IAY/C,WAAW;CAUnB"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { History } from '@t4h.framework/core';
|
|
2
|
+
import { AmberConnection } from './AmberConnection.js';
|
|
3
|
+
import { AmberCommentTicketActivity, } from '../activities/AmberCommentTicketActivity.js';
|
|
4
|
+
import { AmberInteractTicketActivity, } from '../activities/AmberInteractTicketActivity.js';
|
|
5
|
+
import { AmberLockTicketActivity, } from '../activities/AmberLockTicketActivity.js';
|
|
6
|
+
import { AmberReleaseTicketLockActivity } from '../activities/AmberReleaseTicketLockActivity.js';
|
|
7
|
+
import { AmberTabulateTicketActivity, } from '../activities/AmberTabulateTicketActivity.js';
|
|
8
|
+
import { AmberTransferTicketActivity, } from '../activities/AmberTransferTicketActivity.js';
|
|
9
|
+
import { AmberUpdateTicketActivity, } from '../activities/AmberUpdateTicketActivity.js';
|
|
10
|
+
const amberTicketCommentActivity = History.bind(AmberCommentTicketActivity);
|
|
11
|
+
const amberUpdateTicketActivity = History.bind(AmberUpdateTicketActivity);
|
|
12
|
+
const amberTransferTicketActivity = History.bind(AmberTransferTicketActivity);
|
|
13
|
+
const amberTabulateTicketActivity = History.bind(AmberTabulateTicketActivity);
|
|
14
|
+
const amberInteractTicketActivity = History.bind(AmberInteractTicketActivity);
|
|
15
|
+
const amberLockTicketActivity = History.bind(AmberLockTicketActivity);
|
|
16
|
+
const amberReleaseTicketLockActivity = History.bind(AmberReleaseTicketLockActivity);
|
|
17
|
+
export class Ticket {
|
|
18
|
+
id;
|
|
19
|
+
config;
|
|
20
|
+
#connection;
|
|
21
|
+
constructor(id, config) {
|
|
22
|
+
this.id = id;
|
|
23
|
+
this.config = config;
|
|
24
|
+
this.#connection = new AmberConnection(config.url, config.clientId, config.clientSecret);
|
|
25
|
+
}
|
|
26
|
+
tabulate(input) {
|
|
27
|
+
return amberTabulateTicketActivity({
|
|
28
|
+
...input,
|
|
29
|
+
id: this.id,
|
|
30
|
+
auth: {
|
|
31
|
+
username: this.#connection.clientId,
|
|
32
|
+
password: this.#connection.clientSecret,
|
|
33
|
+
},
|
|
34
|
+
url: this.#connection.url,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
transfer(input) {
|
|
38
|
+
return amberTransferTicketActivity({
|
|
39
|
+
...input,
|
|
40
|
+
id: this.id,
|
|
41
|
+
auth: {
|
|
42
|
+
username: this.#connection.clientId,
|
|
43
|
+
password: this.#connection.clientSecret,
|
|
44
|
+
},
|
|
45
|
+
url: this.#connection.url,
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
comment(input) {
|
|
49
|
+
return amberTicketCommentActivity({
|
|
50
|
+
...input,
|
|
51
|
+
id: this.id,
|
|
52
|
+
auth: {
|
|
53
|
+
username: this.#connection.clientId,
|
|
54
|
+
password: this.#connection.clientSecret,
|
|
55
|
+
},
|
|
56
|
+
url: this.#connection.url,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
interact(input) {
|
|
60
|
+
return amberInteractTicketActivity({
|
|
61
|
+
...input,
|
|
62
|
+
id: this.id,
|
|
63
|
+
auth: {
|
|
64
|
+
username: this.#connection.clientId,
|
|
65
|
+
password: this.#connection.clientSecret,
|
|
66
|
+
},
|
|
67
|
+
url: this.#connection.url,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
finish() {
|
|
71
|
+
return amberUpdateTicketActivity({
|
|
72
|
+
input: {
|
|
73
|
+
status: 'finished',
|
|
74
|
+
},
|
|
75
|
+
id: this.id,
|
|
76
|
+
auth: {
|
|
77
|
+
username: this.#connection.clientId,
|
|
78
|
+
password: this.#connection.clientSecret,
|
|
79
|
+
},
|
|
80
|
+
url: this.#connection.url,
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
update(input) {
|
|
84
|
+
return amberUpdateTicketActivity({
|
|
85
|
+
...input,
|
|
86
|
+
id: this.id,
|
|
87
|
+
auth: {
|
|
88
|
+
username: this.#connection.clientId,
|
|
89
|
+
password: this.#connection.clientSecret,
|
|
90
|
+
},
|
|
91
|
+
url: this.#connection.url,
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
lock(input) {
|
|
95
|
+
return amberLockTicketActivity({
|
|
96
|
+
...input,
|
|
97
|
+
id: this.id,
|
|
98
|
+
auth: {
|
|
99
|
+
username: this.#connection.clientId,
|
|
100
|
+
password: this.#connection.clientSecret,
|
|
101
|
+
},
|
|
102
|
+
url: this.#connection.url,
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
releaseLock() {
|
|
106
|
+
return amberReleaseTicketLockActivity({
|
|
107
|
+
id: this.id,
|
|
108
|
+
auth: {
|
|
109
|
+
username: this.#connection.clientId,
|
|
110
|
+
password: this.#connection.clientSecret,
|
|
111
|
+
},
|
|
112
|
+
url: this.#connection.url,
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=Ticket.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Ticket.js","sourceRoot":"","sources":["../../src/models/Ticket.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ServiceStatus } from './ServiceTicket.js';
|
|
2
|
+
export type ServiceTabulationNoteInput = {
|
|
3
|
+
type: 'public' | 'private';
|
|
4
|
+
content: string;
|
|
5
|
+
};
|
|
6
|
+
export type ServiceTabulationInput = {
|
|
7
|
+
tabulationOption: string;
|
|
8
|
+
isInformative?: boolean;
|
|
9
|
+
status?: ServiceStatus;
|
|
10
|
+
notes?: ServiceTabulationNoteInput[];
|
|
11
|
+
disableChannelCommunication?: boolean;
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=ServiceTabulate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceTabulate.d.ts","sourceRoot":"","sources":["../../src/types/ServiceTabulate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,gBAAgB,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,KAAK,CAAC,EAAE,0BAA0B,EAAE,CAAA;IACpC,2BAA2B,CAAC,EAAE,OAAO,CAAA;CACtC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceTabulate.js","sourceRoot":"","sources":["../../src/types/ServiceTabulate.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { Binary } from '@t4h.framework/core';
|
|
2
|
+
import type { ServiceTicketLockInput } from './ServiceTicketLock.js';
|
|
3
|
+
export type CustomerInput = {
|
|
4
|
+
isOwner: boolean;
|
|
5
|
+
type: string;
|
|
6
|
+
refs?: Record<string, string>;
|
|
7
|
+
metadata?: Record<string, string>;
|
|
8
|
+
};
|
|
9
|
+
export type ServiceTicketAttachmentFileInput = {
|
|
10
|
+
file: Binary;
|
|
11
|
+
};
|
|
12
|
+
export type ServiceTicketAttachmentVersionStatus = 'new' | 'approved' | 'rejected' | 'requested' | 'sent';
|
|
13
|
+
export type ServiceTicketAttachmentInput = {
|
|
14
|
+
title: string;
|
|
15
|
+
files: ServiceTicketAttachmentFileInput[];
|
|
16
|
+
status?: ServiceTicketAttachmentVersionStatus;
|
|
17
|
+
versionOf?: string;
|
|
18
|
+
};
|
|
19
|
+
export type ServiceType = 'ticket';
|
|
20
|
+
export type ServiceStatus = 'idle' | 'in-queue' | 'in-attendance' | 'finished';
|
|
21
|
+
export type ServiceInput<T extends ServiceType> = {
|
|
22
|
+
type: T;
|
|
23
|
+
channel: string;
|
|
24
|
+
status?: ServiceStatus;
|
|
25
|
+
attributes?: Record<string, string>;
|
|
26
|
+
refs?: Record<string, string>;
|
|
27
|
+
customers: CustomerInput[];
|
|
28
|
+
metadata?: Record<string, string>;
|
|
29
|
+
};
|
|
30
|
+
export type ServiceTicketFieldValue = {
|
|
31
|
+
name: string;
|
|
32
|
+
value: string | number | boolean | null;
|
|
33
|
+
contentType?: string | null;
|
|
34
|
+
};
|
|
35
|
+
export type ServiceTicketField = {
|
|
36
|
+
[key: string]: ServiceTicketFieldValue;
|
|
37
|
+
};
|
|
38
|
+
export type ServiceTicketInput = ServiceInput<'ticket'> & {
|
|
39
|
+
protocol: string;
|
|
40
|
+
attachments?: ServiceTicketAttachmentInput[];
|
|
41
|
+
skill: string;
|
|
42
|
+
fields?: ServiceTicketField[];
|
|
43
|
+
tabulationOption: string;
|
|
44
|
+
lock?: Omit<ServiceTicketLockInput, 'ref' | 'expiresAt'> | true;
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=ServiceTicket.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceTicket.d.ts","sourceRoot":"","sources":["../../src/types/ServiceTicket.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAEpE,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,gCAAgC,GAAG;IAC7C,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,oCAAoC,GAC5C,KAAK,GACL,UAAU,GACV,UAAU,GACV,WAAW,GACX,MAAM,CAAA;AAEV,MAAM,MAAM,4BAA4B,GAAG;IACzC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,gCAAgC,EAAE,CAAA;IACzC,MAAM,CAAC,EAAE,oCAAoC,CAAA;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAA;AAElC,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,eAAe,GAAG,UAAU,CAAA;AAE9E,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,WAAW,IAAI;IAChD,IAAI,EAAE,CAAC,CAAA;IACP,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7B,SAAS,EAAE,aAAa,EAAE,CAAA;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAA;IACvC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,CAAA;CACvC,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC,QAAQ,CAAC,GAAG;IACxD,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,4BAA4B,EAAE,CAAA;IAC5C,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAA;IAC7B,gBAAgB,EAAE,MAAM,CAAA;IACxB,IAAI,CAAC,EAAE,IAAI,CAAC,sBAAsB,EAAE,KAAK,GAAG,WAAW,CAAC,GAAG,IAAI,CAAA;CAChE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceTicket.js","sourceRoot":"","sources":["../../src/types/ServiceTicket.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceTicketComment.d.ts","sourceRoot":"","sources":["../../src/types/ServiceTicketComment.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceTicketComment.js","sourceRoot":"","sources":["../../src/types/ServiceTicketComment.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { ServiceTicketAttachmentInput } from './ServiceTicket.js';
|
|
2
|
+
type ServiceTicketInteractionServiceCustomerInput = {
|
|
3
|
+
metadata?: Record<string, string>;
|
|
4
|
+
refs: Record<string, string>;
|
|
5
|
+
};
|
|
6
|
+
type ServiceTicketInteractionWithContent = {
|
|
7
|
+
type?: string;
|
|
8
|
+
content: string;
|
|
9
|
+
contentType: 'text/plain' | 'text/markdown';
|
|
10
|
+
attachments?: ServiceTicketAttachmentInput[];
|
|
11
|
+
metadata?: Record<string, string>;
|
|
12
|
+
customer?: ServiceTicketInteractionServiceCustomerInput | null;
|
|
13
|
+
};
|
|
14
|
+
type ServiceTicketInteractionWithAttachments = {
|
|
15
|
+
type?: string;
|
|
16
|
+
content: null;
|
|
17
|
+
contentType: null;
|
|
18
|
+
attachments: [ServiceTicketAttachmentInput, ...ServiceTicketAttachmentInput[]];
|
|
19
|
+
metadata?: Record<string, string>;
|
|
20
|
+
customer?: ServiceTicketInteractionServiceCustomerInput | null;
|
|
21
|
+
};
|
|
22
|
+
export type ServiceTicketInteractionInput = ServiceTicketInteractionWithContent | ServiceTicketInteractionWithAttachments;
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=ServiceTicketInteraction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceTicketInteraction.d.ts","sourceRoot":"","sources":["../../src/types/ServiceTicketInteraction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAA;AAEtE,KAAK,4CAA4C,GAAG;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC7B,CAAA;AAED,KAAK,mCAAmC,GAAG;IACzC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,YAAY,GAAG,eAAe,CAAA;IAC3C,WAAW,CAAC,EAAE,4BAA4B,EAAE,CAAA;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,QAAQ,CAAC,EAAE,4CAA4C,GAAG,IAAI,CAAA;CAC/D,CAAA;AAED,KAAK,uCAAuC,GAAG;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,IAAI,CAAA;IACb,WAAW,EAAE,IAAI,CAAA;IACjB,WAAW,EAAE,CAAC,4BAA4B,EAAE,GAAG,4BAA4B,EAAE,CAAC,CAAA;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,QAAQ,CAAC,EAAE,4CAA4C,GAAG,IAAI,CAAA;CAC/D,CAAA;AAED,MAAM,MAAM,6BAA6B,GACrC,mCAAmC,GACnC,uCAAuC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceTicketInteraction.js","sourceRoot":"","sources":["../../src/types/ServiceTicketInteraction.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceTicketLock.d.ts","sourceRoot":"","sources":["../../src/types/ServiceTicketLock.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,CAAC,EAAE,IAAI,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceTicketLock.js","sourceRoot":"","sources":["../../src/types/ServiceTicketLock.ts"],"names":[],"mappings":""}
|