@d19n/youfibre-odin-sdk 2.0.122 → 2.0.124

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.
Files changed (60) hide show
  1. package/README.md +6 -2
  2. package/dist/EntityRegistry.d.ts +2 -0
  3. package/dist/EntityRegistry.js +2 -0
  4. package/dist/OdinApiClient.d.ts +4 -0
  5. package/dist/OdinApiClient.js +8 -0
  6. package/dist/OdinDbClient.d.ts +4 -0
  7. package/dist/OdinDbClient.js +8 -0
  8. package/dist/accessors-v2/YfFieldServiceVisitAccessor.d.ts +111 -0
  9. package/dist/accessors-v2/YfFieldServiceVisitAccessor.js +190 -0
  10. package/dist/accessors-v2/index.d.ts +1 -0
  11. package/dist/accessors-v2/index.js +3 -1
  12. package/dist/actions-v2/CompleteServiceWorkOrderFlowDto.d.ts +1026 -3
  13. package/dist/actions-v2/CompleteServiceWorkOrderFlowDto.js +115 -2
  14. package/dist/actions-v2/CreateContactDto.d.ts +7 -7
  15. package/dist/actions-v2/CreateInboundCallDto.d.ts +33 -1
  16. package/dist/actions-v2/CreateLeadFromAddressDto.d.ts +7 -7
  17. package/dist/actions-v2/MoveCaseToClosedWithAdditionalNoteDto.d.ts +172 -0
  18. package/dist/actions-v2/MoveCaseToClosedWithAdditionalNoteDto.js +122 -0
  19. package/dist/actions-v2/UpdateAdditionalCareDto.d.ts +28 -29
  20. package/dist/actions-v2/UpdateAdditionalNoteDto.d.ts +73 -0
  21. package/dist/actions-v2/UpdateAdditionalNoteDto.js +56 -0
  22. package/dist/actions-v2/UpdateContactDto.d.ts +28 -29
  23. package/dist/api-sdk-v2/AddressApi.d.ts +2 -0
  24. package/dist/api-sdk-v2/AddressApi.js +6 -0
  25. package/dist/api-sdk-v2/ContactApi.d.ts +2 -2
  26. package/dist/api-sdk-v2/ContactApi.js +6 -6
  27. package/dist/api-sdk-v2/YfFieldServiceVisitApi.d.ts +2 -0
  28. package/dist/api-sdk-v2/YfFieldServiceVisitApi.js +6 -0
  29. package/dist/db-accessors-v2/YfFieldServiceVisitDbAccessor.d.ts +149 -0
  30. package/dist/db-accessors-v2/YfFieldServiceVisitDbAccessor.js +227 -0
  31. package/dist/db-accessors-v2/index.d.ts +1 -0
  32. package/dist/db-accessors-v2/index.js +3 -1
  33. package/dist/db-sdk-v2/AddressDb.d.ts +2 -0
  34. package/dist/db-sdk-v2/AddressDb.js +6 -0
  35. package/dist/db-sdk-v2/ContactDb.d.ts +2 -2
  36. package/dist/db-sdk-v2/ContactDb.js +6 -6
  37. package/dist/db-sdk-v2/YfFieldServiceVisitDb.d.ts +2 -0
  38. package/dist/db-sdk-v2/YfFieldServiceVisitDb.js +6 -0
  39. package/dist/entities-v2/Address.d.ts +3 -0
  40. package/dist/entities-v2/Contact.d.ts +88 -89
  41. package/dist/entities-v2/Contact.js +58 -59
  42. package/dist/entities-v2/YfFieldServiceVisit.d.ts +20 -13
  43. package/dist/entities-v2/YfFieldServiceVisit.js +7 -3
  44. package/dist/records-v2/AddressRecord.d.ts +20 -0
  45. package/dist/records-v2/AddressRecord.js +33 -0
  46. package/dist/records-v2/CaseRecord.d.ts +113 -0
  47. package/dist/records-v2/CaseRecord.js +164 -1
  48. package/dist/records-v2/ContactRecord.d.ts +20 -20
  49. package/dist/records-v2/ContactRecord.js +33 -33
  50. package/dist/records-v2/FileRecord.d.ts +20 -0
  51. package/dist/records-v2/FileRecord.js +33 -0
  52. package/dist/records-v2/NoteRecord.d.ts +20 -0
  53. package/dist/records-v2/NoteRecord.js +33 -0
  54. package/dist/records-v2/WorkOrderRecord.d.ts +98 -8
  55. package/dist/records-v2/WorkOrderRecord.js +169 -10
  56. package/dist/records-v2/YfFieldServiceVisitRecord.d.ts +265 -0
  57. package/dist/records-v2/YfFieldServiceVisitRecord.js +379 -0
  58. package/dist/records-v2/index.d.ts +1 -0
  59. package/dist/records-v2/index.js +8 -5
  60. package/package.json +1 -1
@@ -13,8 +13,101 @@
13
13
  * AUTO-GENERATED - DO NOT EDIT DIRECTLY
14
14
  */
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.CompleteServiceWorkOrderFlowDto = void 0;
16
+ exports.CompleteServiceWorkOrderFlowDto = exports.CompleteServiceWorkOrderFlowSteps = exports.YfFieldServiceVisitAuditDto = exports.CompleteServiceWorkOrderDto = void 0;
17
17
  const core_1 = require("@d19n/odin-types/dist/core");
18
+ /**
19
+ * CompleteServiceWorkOrder
20
+ *
21
+ * This action is for completing a service work order
22
+ *
23
+ * @actionType UPDATE - Updates an existing WorkOrder record
24
+ * @module FieldServiceModule
25
+ * @entity WorkOrder
26
+ * @entityType SERVICE (service)
27
+ * @event k1.t-hEOJjsDb.FieldServiceModule.WorkOrder.Update.CompleteServiceWorkOrder
28
+ * @permission schema.action.completeserviceworkorder.trigger
29
+ * @benchmark This action is tracked for performance benchmarks
30
+ */
31
+ class CompleteServiceWorkOrderDto extends core_1.OdinRecordUpdateDto {
32
+ constructor(record, properties, options) {
33
+ super({
34
+ id: record.id,
35
+ entity: record.entity,
36
+ type: record.type,
37
+ properties,
38
+ journeyId: options === null || options === void 0 ? void 0 : options.journeyId,
39
+ stageKey: options === null || options === void 0 ? void 0 : options.stageKey,
40
+ });
41
+ this.actionName = 'CompleteServiceWorkOrder';
42
+ this.schemaActionId = 'b1b4ac0d-2c94-4424-86df-42feea508845';
43
+ this.entity = 'FieldServiceModule:WorkOrder';
44
+ }
45
+ }
46
+ exports.CompleteServiceWorkOrderDto = CompleteServiceWorkOrderDto;
47
+ /** Used by SDK generators to identify action type */
48
+ CompleteServiceWorkOrderDto.ACTION_TYPE = 'UPDATE';
49
+ CompleteServiceWorkOrderDto.ACTION_KEY = 'CompleteServiceWorkOrder';
50
+ CompleteServiceWorkOrderDto.MODULE_NAME = 'FieldServiceModule';
51
+ CompleteServiceWorkOrderDto.ENTITIES = ['WorkOrder'];
52
+ CompleteServiceWorkOrderDto.ENTITY_TYPE = 'SERVICE';
53
+ CompleteServiceWorkOrderDto.EVENT_NAME = 'k1.t-hEOJjsDb.FieldServiceModule.WorkOrder.Update.CompleteServiceWorkOrder';
54
+ CompleteServiceWorkOrderDto.PERMISSION = 'schema.action.completeserviceworkorder.trigger';
55
+ /** Step metadata - entity this action targets */
56
+ CompleteServiceWorkOrderDto.STEP_ENTITY = 'FieldServiceModule:WorkOrder';
57
+ CompleteServiceWorkOrderDto.STEP_SCHEMA_ID = '966bf5d9-163e-4132-85e2-56a5f801c9de';
58
+ CompleteServiceWorkOrderDto.STEP_SCHEMA_ACTION_ID = 'b1b4ac0d-2c94-4424-86df-42feea508845';
59
+ CompleteServiceWorkOrderDto.STEP_SCHEMA_TYPE_ID = 'f7ca5acc-acaa-45b6-bc67-cff043bdfdc6';
60
+ CompleteServiceWorkOrderDto.STEP_TYPE = 'SERVICE';
61
+ CompleteServiceWorkOrderDto.AUTO_LINK_PARENT = false;
62
+ /**
63
+ * YF Field Service Visit Audit
64
+ *
65
+ * YF Field Service Visit Audit
66
+ *
67
+ * @actionType CREATE - Creates a new YfFieldServiceVisit record
68
+ * @module FieldServiceModule
69
+ * @entity YfFieldServiceVisit
70
+ * @entityType OUTCOME_FORM (outcome form)
71
+ * @event k1.t-hEOJjsDb.FieldServiceModule.YfFieldServiceVisit.Create.YfFieldServiceVisitAudit
72
+ * @permission schema.action.yffieldservicevisitaudit.trigger
73
+ * @benchmark This action is tracked for performance benchmarks
74
+ */
75
+ class YfFieldServiceVisitAuditDto extends core_1.OdinRecordCreateDto {
76
+ constructor(properties, options) {
77
+ super({
78
+ entity: 'FieldServiceModule:YfFieldServiceVisit',
79
+ type: 'OUTCOME_FORM',
80
+ properties,
81
+ journeyId: options === null || options === void 0 ? void 0 : options.journeyId,
82
+ });
83
+ this.actionName = 'YfFieldServiceVisitAudit';
84
+ this.schemaActionId = '191bd652-75b8-4073-9fc5-ab3ad83670dc';
85
+ this.entity = 'FieldServiceModule:YfFieldServiceVisit';
86
+ }
87
+ }
88
+ exports.YfFieldServiceVisitAuditDto = YfFieldServiceVisitAuditDto;
89
+ /** Used by SDK generators to identify action type */
90
+ YfFieldServiceVisitAuditDto.ACTION_TYPE = 'CREATE';
91
+ YfFieldServiceVisitAuditDto.ACTION_KEY = 'YfFieldServiceVisitAudit';
92
+ YfFieldServiceVisitAuditDto.MODULE_NAME = 'FieldServiceModule';
93
+ YfFieldServiceVisitAuditDto.ENTITIES = ['YfFieldServiceVisit'];
94
+ YfFieldServiceVisitAuditDto.ENTITY_TYPE = 'OUTCOME_FORM';
95
+ YfFieldServiceVisitAuditDto.EVENT_NAME = 'k1.t-hEOJjsDb.FieldServiceModule.YfFieldServiceVisit.Create.YfFieldServiceVisitAudit';
96
+ YfFieldServiceVisitAuditDto.PERMISSION = 'schema.action.yffieldservicevisitaudit.trigger';
97
+ /** Step metadata - entity this action targets */
98
+ YfFieldServiceVisitAuditDto.STEP_ENTITY = 'FieldServiceModule:YfFieldServiceVisit';
99
+ YfFieldServiceVisitAuditDto.STEP_SCHEMA_ID = 'cfc6080c-1f99-4b1b-af2a-38f16c6cec4c';
100
+ YfFieldServiceVisitAuditDto.STEP_SCHEMA_ACTION_ID = '191bd652-75b8-4073-9fc5-ab3ad83670dc';
101
+ YfFieldServiceVisitAuditDto.STEP_SCHEMA_TYPE_ID = 'c79a7012-23b6-4db5-b178-355071ac07e4';
102
+ YfFieldServiceVisitAuditDto.STEP_TYPE = 'OUTCOME_FORM';
103
+ YfFieldServiceVisitAuditDto.AUTO_LINK_PARENT = true;
104
+ /**
105
+ * Type-safe step keys for CompleteServiceWorkOrderFlow
106
+ */
107
+ exports.CompleteServiceWorkOrderFlowSteps = {
108
+ step_1: 'step_1',
109
+ step_2: 'step_2',
110
+ };
18
111
  /**
19
112
  * CompleteServiceWorkOrderFlow
20
113
  *
@@ -58,5 +151,25 @@ CompleteServiceWorkOrderFlowDto.TARGET_STAGES = ['WorkOrderStageDone'];
58
151
  CompleteServiceWorkOrderFlowDto.IS_STAGE_TRANSITION = true;
59
152
  CompleteServiceWorkOrderFlowDto.IS_MULTI_STEP_FLOW = false;
60
153
  CompleteServiceWorkOrderFlowDto.HAS_STEP_LINKS = false;
154
+ /**
155
+ * Step definitions with linking metadata
156
+ * Used by SDK and backend for auto-linking after step execution
157
+ */
158
+ CompleteServiceWorkOrderFlowDto.stepDefinitions = [
159
+ {
160
+ stepKey: 'step_1',
161
+ dtoClass: 'CompleteServiceWorkOrderDto',
162
+ entity: 'FieldServiceModule:WorkOrder',
163
+ linksTo: null
164
+ },
165
+ {
166
+ stepKey: 'step_2',
167
+ dtoClass: 'YfFieldServiceVisitAuditDto',
168
+ entity: 'FieldServiceModule:YfFieldServiceVisit',
169
+ linksTo: null
170
+ }
171
+ ];
172
+ /** Type-safe step key accessor */
173
+ CompleteServiceWorkOrderFlowDto.Steps = exports.CompleteServiceWorkOrderFlowSteps;
61
174
  /** Step classes that can be used with this action */
62
- CompleteServiceWorkOrderFlowDto.stepClasses = [];
175
+ CompleteServiceWorkOrderFlowDto.stepClasses = ['CompleteServiceWorkOrderDto', 'YfFieldServiceVisitAuditDto'];
@@ -53,7 +53,7 @@ export interface CreateContactProperties {
53
53
  * Additional Care Reason
54
54
  *
55
55
  * Primary reason for additional care (single select). (Sales - Contact)
56
- * @type {ENUM}
56
+ * @type {ENUM_MULTI_SELECT}
57
57
  * @required
58
58
  * @visibleWhen AdditionalCareRequired = [true]
59
59
  */
@@ -62,20 +62,20 @@ export interface CreateContactProperties {
62
62
  * Medically Dependant
63
63
  *
64
64
  * Is the customer medically dependant on their broadband (Sales - Contact)
65
- * @type {BOOLEAN}
65
+ * @type {ENUM}
66
66
  * @required
67
67
  * @visibleWhen AdditionalCareRequired = [true]
68
68
  */
69
- MedicallyDependant: boolean;
69
+ MedicallyDependant: string;
70
70
  /**
71
71
  * Telecare Alarm
72
72
  *
73
73
  * Does the customer use a Telecare Alarm (Sales - Contact)
74
- * @type {BOOLEAN}
74
+ * @type {ENUM}
75
75
  * @required
76
76
  * @visibleWhen AdditionalCareRequired = [true]
77
77
  */
78
- TelecareAlarm: boolean;
78
+ TelecareAlarm: string;
79
79
  /**
80
80
  * Additional Care Consent
81
81
  *
@@ -103,9 +103,9 @@ export interface CreateContactProperties {
103
103
  * Additional Care Required
104
104
  *
105
105
  * Marks if the customer requires additional care (Ofcom vulnerable customer handling). (Sales - Contact)
106
- * @type {BOOLEAN}
106
+ * @type {ENUM}
107
107
  */
108
- AdditionalCareRequired?: boolean | null;
108
+ AdditionalCareRequired?: string | null;
109
109
  /**
110
110
  * Additional Care Notes
111
111
  *
@@ -21,7 +21,7 @@ export interface CreateInboundCallMessage extends OdinRecordCreatedEvent<CreateI
21
21
  /**
22
22
  * Properties for CreateInboundCall action
23
23
  *
24
- * @property Required fields: 10
24
+ * @property Required fields: 14
25
25
  * @property Optional fields: 0
26
26
  */
27
27
  export interface CreateInboundCallProperties {
@@ -105,6 +105,38 @@ export interface CreateInboundCallProperties {
105
105
  * @required
106
106
  */
107
107
  Title: string;
108
+ /**
109
+ * TaskSid
110
+ *
111
+ * Wrap up taskSid (Communications - Call)
112
+ * @type {TEXT}
113
+ * @required
114
+ */
115
+ TaskSid: string;
116
+ /**
117
+ * CurrentAgentEmail
118
+ *
119
+ * Email of currently assigned agent (Communications - Call)
120
+ * @type {TEXT}
121
+ * @required
122
+ */
123
+ CurrentAgentEmail: string;
124
+ /**
125
+ * user Id
126
+ *
127
+ * The Odin user that handled the call (Communications - Call)
128
+ * @type {UUID}
129
+ * @required
130
+ */
131
+ UserId: string;
132
+ /**
133
+ * QueueName
134
+ *
135
+ * Display name/title for Call records. Primary identifier for Communications team.
136
+ * @type {TEXT}
137
+ * @required
138
+ */
139
+ QueueName: string;
108
140
  }
109
141
  /**
110
142
  * Builder for CreateInboundCall action
@@ -118,7 +118,7 @@ export interface CreateContactProperties {
118
118
  * Additional Care Reason
119
119
  *
120
120
  * Primary reason for additional care (single select). (Sales - Contact)
121
- * @type {ENUM}
121
+ * @type {ENUM_MULTI_SELECT}
122
122
  * @required
123
123
  * @visibleWhen AdditionalCareRequired = [true]
124
124
  */
@@ -127,20 +127,20 @@ export interface CreateContactProperties {
127
127
  * Medically Dependant
128
128
  *
129
129
  * Is the customer medically dependant on their broadband (Sales - Contact)
130
- * @type {BOOLEAN}
130
+ * @type {ENUM}
131
131
  * @required
132
132
  * @visibleWhen AdditionalCareRequired = [true]
133
133
  */
134
- MedicallyDependant: boolean;
134
+ MedicallyDependant: string;
135
135
  /**
136
136
  * Telecare Alarm
137
137
  *
138
138
  * Does the customer use a Telecare Alarm (Sales - Contact)
139
- * @type {BOOLEAN}
139
+ * @type {ENUM}
140
140
  * @required
141
141
  * @visibleWhen AdditionalCareRequired = [true]
142
142
  */
143
- TelecareAlarm: boolean;
143
+ TelecareAlarm: string;
144
144
  /**
145
145
  * Additional Care Consent
146
146
  *
@@ -168,9 +168,9 @@ export interface CreateContactProperties {
168
168
  * Additional Care Required
169
169
  *
170
170
  * Marks if the customer requires additional care (Ofcom vulnerable customer handling). (Sales - Contact)
171
- * @type {BOOLEAN}
171
+ * @type {ENUM}
172
172
  */
173
- AdditionalCareRequired?: boolean | null;
173
+ AdditionalCareRequired?: string | null;
174
174
  /**
175
175
  * Additional Care Notes
176
176
  *
@@ -0,0 +1,172 @@
1
+ /**
2
+ * MoveCaseToClosedWithAdditionalNote Action DTO
3
+ *
4
+ * Moves a case to closed with additional notes
5
+ *
6
+ * @module SupportModule
7
+ * @entity Case
8
+ * @entityType DEFAULT
9
+ * @actionKey MoveCaseToClosedWithAdditionalNote
10
+ * @event k1.t-hEOJjsDb.SupportModule.Case.Transition.MoveCaseToClosedWithAdditionalNote
11
+ *
12
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
13
+ */
14
+ import { OdinRecord, OdinRecordUpdateDto, OdinRecordUpdatedEvent } from '@d19n/odin-types/dist/core';
15
+ /**
16
+ * Properties for UpdateAdditionalNote action
17
+ *
18
+ * @property Required fields: 1
19
+ * @property Optional fields: 0
20
+ */
21
+ export interface UpdateAdditionalNoteProperties {
22
+ /**
23
+ * Additional Notes
24
+ *
25
+ * Additional Notes (Customer Service - Case)
26
+ * @type {TEXT_LONG}
27
+ * @required
28
+ */
29
+ AdditionalNotes: string;
30
+ }
31
+ /**
32
+ * UpdateAdditionalNote
33
+ *
34
+ * Updates the additional note field
35
+ *
36
+ * @actionType UPDATE - Updates an existing Case record
37
+ * @module SupportModule
38
+ * @entity Case
39
+ * @event k1.t-hEOJjsDb.SupportModule.Case.Update.UpdateAdditionalNote
40
+ * @permission schema.action.updateadditionalnote.trigger
41
+ * @benchmark This action is tracked for performance benchmarks
42
+ */
43
+ export declare class UpdateAdditionalNoteDto extends OdinRecordUpdateDto<UpdateAdditionalNoteProperties> {
44
+ /** Used by SDK generators to identify action type */
45
+ static readonly ACTION_TYPE = "UPDATE";
46
+ static readonly ACTION_KEY = "UpdateAdditionalNote";
47
+ static readonly MODULE_NAME = "SupportModule";
48
+ static readonly ENTITIES: string[];
49
+ static readonly EVENT_NAME = "k1.t-hEOJjsDb.SupportModule.Case.Update.UpdateAdditionalNote";
50
+ static readonly PERMISSION = "schema.action.updateadditionalnote.trigger";
51
+ /** Step metadata - entity this action targets */
52
+ static readonly STEP_ENTITY = "SupportModule:Case";
53
+ static readonly STEP_SCHEMA_ID = "bb540d25-53bf-491b-9d03-f3d42f755b3a";
54
+ static readonly STEP_SCHEMA_ACTION_ID = "9a7cf6dc-93c1-48d3-8392-45d0ef11ea2b";
55
+ static readonly AUTO_LINK_PARENT = false;
56
+ readonly actionName: string;
57
+ readonly schemaActionId: string;
58
+ readonly entity: string;
59
+ constructor(record: OdinRecord<any> | {
60
+ id: string;
61
+ entity: string;
62
+ type?: string;
63
+ }, properties: UpdateAdditionalNoteProperties, options?: {
64
+ journeyId?: string;
65
+ stageKey?: string;
66
+ });
67
+ }
68
+ declare type StepClassMap = {
69
+ UpdateAdditionalNoteDto: UpdateAdditionalNoteDto;
70
+ };
71
+ /**
72
+ * Link definition for connecting steps in MoveCaseToClosedWithAdditionalNote
73
+ */
74
+ export interface MoveCaseToClosedWithAdditionalNoteStepLink {
75
+ /**
76
+ * The stepKey of the target step to link TO
77
+ * Must reference another step's stepKey in the same flow
78
+ */
79
+ stepKey: string;
80
+ /**
81
+ * The schema association ID (UUID) defining the relationship
82
+ * Use the association.id from the schema association definition
83
+ * @example "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
84
+ */
85
+ schemaAssociationId: string;
86
+ }
87
+ /**
88
+ * Step definition with linking metadata for MoveCaseToClosedWithAdditionalNote
89
+ */
90
+ export interface MoveCaseToClosedWithAdditionalNoteStepDefinition {
91
+ /** Unique identifier for this step */
92
+ stepKey: string;
93
+ /** The DTO class name for this step */
94
+ dtoClass: string;
95
+ /** The entity this step creates (Module:Entity format) */
96
+ entity: string;
97
+ /** Links to create after this step executes */
98
+ linksTo: MoveCaseToClosedWithAdditionalNoteStepLink[] | null;
99
+ }
100
+ /**
101
+ * Type-safe step keys for MoveCaseToClosedWithAdditionalNote
102
+ */
103
+ export declare const MoveCaseToClosedWithAdditionalNoteSteps: {
104
+ readonly setadditionalnote: "setadditionalnote";
105
+ };
106
+ export declare type MoveCaseToClosedWithAdditionalNoteStepKey = typeof MoveCaseToClosedWithAdditionalNoteSteps[keyof typeof MoveCaseToClosedWithAdditionalNoteSteps];
107
+ /**
108
+ * RabbitMQ message payload for MoveCaseToClosedWithAdditionalNote step flow events
109
+ *
110
+ * @event k1.t-hEOJjsDb.SupportModule.Case.Transition.MoveCaseToClosedWithAdditionalNote
111
+ */
112
+ export interface MoveCaseToClosedWithAdditionalNoteMessage extends OdinRecordUpdatedEvent<MoveCaseToClosedWithAdditionalNoteDto, {}> {
113
+ }
114
+ /**
115
+ * Properties for MoveCaseToClosedWithAdditionalNote action
116
+ *
117
+ */
118
+ export interface MoveCaseToClosedWithAdditionalNoteProperties {
119
+ }
120
+ /**
121
+ * MoveCaseToClosedWithAdditionalNote
122
+ *
123
+ * Moves a case to closed with additional notes
124
+ *
125
+ * @actionType STAGE_TRANSITION - Transitions record to new pipeline stage
126
+ * @module SupportModule
127
+ * @entity Case
128
+ * @entityType DEFAULT (Default)
129
+ * @targetStages CaseDefaultStageClosed
130
+ * @event k1.t-hEOJjsDb.SupportModule.Case.Transition.MoveCaseToClosedWithAdditionalNote
131
+ * @permission schema.action.movecasetoclosedwithadditionalnote.trigger
132
+ * @benchmark This action is tracked for performance benchmarks
133
+ */
134
+ export declare class MoveCaseToClosedWithAdditionalNoteDto extends OdinRecordUpdateDto<Record<string, any>> {
135
+ /** Used by SDK generators to identify action type */
136
+ static readonly ACTION_TYPE = "UPDATE";
137
+ static readonly ACTION_KEY = "MoveCaseToClosedWithAdditionalNote";
138
+ static readonly MODULE_NAME = "SupportModule";
139
+ static readonly ENTITIES: string[];
140
+ static readonly ENTITY_TYPE = "DEFAULT";
141
+ static readonly EVENT_NAME = "k1.t-hEOJjsDb.SupportModule.Case.Transition.MoveCaseToClosedWithAdditionalNote";
142
+ static readonly SCHEMA_ACTION_ID = "e84542a2-4efb-4ecb-b500-97e8f56ac522";
143
+ static readonly PERMISSION = "schema.action.movecasetoclosedwithadditionalnote.trigger";
144
+ static readonly TARGET_STAGES: readonly ["CaseDefaultStageClosed"];
145
+ static readonly IS_STAGE_TRANSITION = true;
146
+ static readonly IS_MULTI_STEP_FLOW = false;
147
+ static readonly HAS_STEP_LINKS = false;
148
+ /**
149
+ * Step definitions with linking metadata
150
+ * Used by SDK and backend for auto-linking after step execution
151
+ */
152
+ static readonly stepDefinitions: MoveCaseToClosedWithAdditionalNoteStepDefinition[];
153
+ /** Type-safe step key accessor */
154
+ static readonly Steps: {
155
+ readonly setadditionalnote: "setadditionalnote";
156
+ };
157
+ readonly actionName: string;
158
+ readonly schemaActionId: string;
159
+ readonly entity: string;
160
+ readonly stageKey: string;
161
+ constructor(record: OdinRecord<any> | {
162
+ id: string;
163
+ entity: string;
164
+ type?: string;
165
+ }, options?: {
166
+ journeyId?: string;
167
+ });
168
+ /** Step classes that can be used with this action */
169
+ static readonly stepClasses: readonly ["UpdateAdditionalNoteDto"];
170
+ steps: StepClassMap[(typeof MoveCaseToClosedWithAdditionalNoteDto.stepClasses)[number]][];
171
+ }
172
+ export {};
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ /**
3
+ * MoveCaseToClosedWithAdditionalNote Action DTO
4
+ *
5
+ * Moves a case to closed with additional notes
6
+ *
7
+ * @module SupportModule
8
+ * @entity Case
9
+ * @entityType DEFAULT
10
+ * @actionKey MoveCaseToClosedWithAdditionalNote
11
+ * @event k1.t-hEOJjsDb.SupportModule.Case.Transition.MoveCaseToClosedWithAdditionalNote
12
+ *
13
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.MoveCaseToClosedWithAdditionalNoteDto = exports.MoveCaseToClosedWithAdditionalNoteSteps = exports.UpdateAdditionalNoteDto = void 0;
17
+ const core_1 = require("@d19n/odin-types/dist/core");
18
+ /**
19
+ * UpdateAdditionalNote
20
+ *
21
+ * Updates the additional note field
22
+ *
23
+ * @actionType UPDATE - Updates an existing Case record
24
+ * @module SupportModule
25
+ * @entity Case
26
+ * @event k1.t-hEOJjsDb.SupportModule.Case.Update.UpdateAdditionalNote
27
+ * @permission schema.action.updateadditionalnote.trigger
28
+ * @benchmark This action is tracked for performance benchmarks
29
+ */
30
+ class UpdateAdditionalNoteDto extends core_1.OdinRecordUpdateDto {
31
+ constructor(record, properties, options) {
32
+ super({
33
+ id: record.id,
34
+ entity: record.entity,
35
+ type: record.type,
36
+ properties,
37
+ journeyId: options === null || options === void 0 ? void 0 : options.journeyId,
38
+ stageKey: options === null || options === void 0 ? void 0 : options.stageKey,
39
+ });
40
+ this.actionName = 'UpdateAdditionalNote';
41
+ this.schemaActionId = '9a7cf6dc-93c1-48d3-8392-45d0ef11ea2b';
42
+ this.entity = 'SupportModule:Case';
43
+ }
44
+ }
45
+ exports.UpdateAdditionalNoteDto = UpdateAdditionalNoteDto;
46
+ /** Used by SDK generators to identify action type */
47
+ UpdateAdditionalNoteDto.ACTION_TYPE = 'UPDATE';
48
+ UpdateAdditionalNoteDto.ACTION_KEY = 'UpdateAdditionalNote';
49
+ UpdateAdditionalNoteDto.MODULE_NAME = 'SupportModule';
50
+ UpdateAdditionalNoteDto.ENTITIES = ['Case'];
51
+ UpdateAdditionalNoteDto.EVENT_NAME = 'k1.t-hEOJjsDb.SupportModule.Case.Update.UpdateAdditionalNote';
52
+ UpdateAdditionalNoteDto.PERMISSION = 'schema.action.updateadditionalnote.trigger';
53
+ /** Step metadata - entity this action targets */
54
+ UpdateAdditionalNoteDto.STEP_ENTITY = 'SupportModule:Case';
55
+ UpdateAdditionalNoteDto.STEP_SCHEMA_ID = 'bb540d25-53bf-491b-9d03-f3d42f755b3a';
56
+ UpdateAdditionalNoteDto.STEP_SCHEMA_ACTION_ID = '9a7cf6dc-93c1-48d3-8392-45d0ef11ea2b';
57
+ UpdateAdditionalNoteDto.AUTO_LINK_PARENT = false;
58
+ /**
59
+ * Type-safe step keys for MoveCaseToClosedWithAdditionalNote
60
+ */
61
+ exports.MoveCaseToClosedWithAdditionalNoteSteps = {
62
+ setadditionalnote: 'setadditionalnote',
63
+ };
64
+ /**
65
+ * MoveCaseToClosedWithAdditionalNote
66
+ *
67
+ * Moves a case to closed with additional notes
68
+ *
69
+ * @actionType STAGE_TRANSITION - Transitions record to new pipeline stage
70
+ * @module SupportModule
71
+ * @entity Case
72
+ * @entityType DEFAULT (Default)
73
+ * @targetStages CaseDefaultStageClosed
74
+ * @event k1.t-hEOJjsDb.SupportModule.Case.Transition.MoveCaseToClosedWithAdditionalNote
75
+ * @permission schema.action.movecasetoclosedwithadditionalnote.trigger
76
+ * @benchmark This action is tracked for performance benchmarks
77
+ */
78
+ class MoveCaseToClosedWithAdditionalNoteDto extends core_1.OdinRecordUpdateDto {
79
+ constructor(record, options) {
80
+ super({
81
+ id: record.id,
82
+ entity: record.entity,
83
+ type: record.type,
84
+ properties: {},
85
+ journeyId: options === null || options === void 0 ? void 0 : options.journeyId,
86
+ });
87
+ this.actionName = 'MoveCaseToClosedWithAdditionalNote';
88
+ this.schemaActionId = 'e84542a2-4efb-4ecb-b500-97e8f56ac522';
89
+ this.entity = 'SupportModule:Case';
90
+ this.stageKey = 'CaseDefaultStageClosed';
91
+ }
92
+ }
93
+ exports.MoveCaseToClosedWithAdditionalNoteDto = MoveCaseToClosedWithAdditionalNoteDto;
94
+ /** Used by SDK generators to identify action type */
95
+ MoveCaseToClosedWithAdditionalNoteDto.ACTION_TYPE = 'UPDATE';
96
+ MoveCaseToClosedWithAdditionalNoteDto.ACTION_KEY = 'MoveCaseToClosedWithAdditionalNote';
97
+ MoveCaseToClosedWithAdditionalNoteDto.MODULE_NAME = 'SupportModule';
98
+ MoveCaseToClosedWithAdditionalNoteDto.ENTITIES = ['Case'];
99
+ MoveCaseToClosedWithAdditionalNoteDto.ENTITY_TYPE = 'DEFAULT';
100
+ MoveCaseToClosedWithAdditionalNoteDto.EVENT_NAME = 'k1.t-hEOJjsDb.SupportModule.Case.Transition.MoveCaseToClosedWithAdditionalNote';
101
+ MoveCaseToClosedWithAdditionalNoteDto.SCHEMA_ACTION_ID = 'e84542a2-4efb-4ecb-b500-97e8f56ac522';
102
+ MoveCaseToClosedWithAdditionalNoteDto.PERMISSION = 'schema.action.movecasetoclosedwithadditionalnote.trigger';
103
+ MoveCaseToClosedWithAdditionalNoteDto.TARGET_STAGES = ['CaseDefaultStageClosed'];
104
+ MoveCaseToClosedWithAdditionalNoteDto.IS_STAGE_TRANSITION = true;
105
+ MoveCaseToClosedWithAdditionalNoteDto.IS_MULTI_STEP_FLOW = false;
106
+ MoveCaseToClosedWithAdditionalNoteDto.HAS_STEP_LINKS = false;
107
+ /**
108
+ * Step definitions with linking metadata
109
+ * Used by SDK and backend for auto-linking after step execution
110
+ */
111
+ MoveCaseToClosedWithAdditionalNoteDto.stepDefinitions = [
112
+ {
113
+ stepKey: 'setadditionalnote',
114
+ dtoClass: 'UpdateAdditionalNoteDto',
115
+ entity: 'SupportModule:Case',
116
+ linksTo: null
117
+ }
118
+ ];
119
+ /** Type-safe step key accessor */
120
+ MoveCaseToClosedWithAdditionalNoteDto.Steps = exports.MoveCaseToClosedWithAdditionalNoteSteps;
121
+ /** Step classes that can be used with this action */
122
+ MoveCaseToClosedWithAdditionalNoteDto.stepClasses = ['UpdateAdditionalNoteDto'];
@@ -21,59 +21,58 @@ export interface UpdateAdditionalCareMessage extends OdinRecordUpdatedEvent<Upda
21
21
  /**
22
22
  * Properties for UpdateAdditionalCare action
23
23
  *
24
- * @property Required fields: 2
25
- * @property Optional fields: 4
24
+ * @property Required fields: 1
25
+ * @property Optional fields: 6
26
26
  */
27
27
  export interface UpdateAdditionalCareProperties {
28
- /**
29
- * Additional Care Reason
30
- *
31
- * Primary reason for additional care (single select). (Sales - Contact)
32
- * @type {ENUM}
33
- * @required
34
- * @visibleWhen AdditionalCareRequired = ["*"]
35
- */
36
- AdditionalCareReason: string;
37
28
  /**
38
29
  * Additional Care Consent
39
30
  *
40
31
  * Customer consent for recording additional care requiremetns (Sales - Contact)
41
32
  * @type {BOOLEAN}
42
33
  * @required
43
- * @visibleWhen AdditionalCareRequired = ["*"]
34
+ * @visibleWhen AdditionalCareRequired = [true,"YES"]
44
35
  */
45
36
  AdditionalCareConsent: boolean;
46
37
  /**
47
- * Additional Care Required
38
+ * Critical Dependencies
48
39
  *
49
40
  * Marks if the customer requires additional care (Ofcom vulnerable customer handling). (Sales - Contact)
50
- * @type {BOOLEAN}
51
- */
52
- AdditionalCareRequired?: boolean | null;
53
- /**
54
- * Additional Care Notes
55
- *
56
- * Free-text notes field for Contact. Used by Sales team for documentation.
57
- * @type {TEXT_LONG}
58
- * @visibleWhen AdditionalCareRequired = ["*"]
41
+ * @type {ENUM}
59
42
  */
60
- AdditionalCareNotes?: string | null;
43
+ AdditionalCareRequired?: string | null;
61
44
  /**
62
45
  * Medically Dependant
63
46
  *
64
47
  * Is the customer medically dependant on their broadband (Sales - Contact)
65
- * @type {BOOLEAN}
66
- * @visibleWhen AdditionalCareRequired = ["*"]
48
+ * @type {ENUM}
49
+ * @visibleWhen AdditionalCareRequired = [true,"YES"]
67
50
  */
68
- MedicallyDependant?: boolean | null;
51
+ MedicallyDependant?: string | null;
69
52
  /**
70
53
  * Telecare Alarm
71
54
  *
72
55
  * Does the customer use a Telecare Alarm (Sales - Contact)
73
- * @type {BOOLEAN}
74
- * @visibleWhen AdditionalCareRequired = ["*"]
56
+ * @type {ENUM}
57
+ * @visibleWhen AdditionalCareRequired = [true,"YES"]
58
+ */
59
+ TelecareAlarm?: string | null;
60
+ /**
61
+ * Additional Care Requirements
62
+ *
63
+ * Primary reason for additional care (single select). (Sales - Contact)
64
+ * @type {ENUM_MULTI_SELECT}
65
+ * @visibleWhen AdditionalCareRequired = [true,"YES"]
75
66
  */
76
- TelecareAlarm?: boolean | null;
67
+ AdditionalCareReason?: string | null;
68
+ /**
69
+ * Additional Care Notes
70
+ *
71
+ * Free-text notes field for Contact. Used by Sales team for documentation.
72
+ * @type {TEXT_LONG}
73
+ * @visibleWhen AdditionalCareRequired = [true,"YES"]
74
+ */
75
+ AdditionalCareNotes?: string | null;
77
76
  }
78
77
  /**
79
78
  * Additional Care