@d19n/youfibre-odin-sdk 2.0.347 → 2.0.349
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/README.md +2 -1
- package/dist/actions-v2/ChangeServiceActivationDateDto.d.ts +73 -0
- package/dist/actions-v2/ChangeServiceActivationDateDto.js +56 -0
- package/dist/entities-v2/Case.d.ts +3 -2
- package/dist/entities-v2/Case.js +3 -2
- package/dist/entities-v2/ContractBuyOut.d.ts +2 -0
- package/dist/entities-v2/ContractBuyOut.js +2 -0
- package/dist/entities-v2/Conversation.d.ts +2 -0
- package/dist/entities-v2/Conversation.js +2 -0
- package/dist/entities-v2/Message.d.ts +27 -1
- package/dist/entities-v2/Message.js +2 -0
- package/dist/records-v2/OrderRecord.d.ts +27 -0
- package/dist/records-v2/OrderRecord.js +29 -0
- package/dist/wholesale-provider/interface.d.ts +13 -1
- package/dist/wholesale-provider/providers/netomnia-provider.d.ts +5 -1
- package/dist/wholesale-provider/providers/netomnia-provider.js +6 -0
- package/dist/wholesale-provider/test/netomnia-provider.spec.js +30 -0
- package/dist/wholesale-provider/types/fibrecafe.d.ts +11 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -392,7 +392,7 @@ This SDK includes **199** entities across **13** modules.
|
|
|
392
392
|
|
|
393
393
|
## Actions
|
|
394
394
|
|
|
395
|
-
This SDK includes **
|
|
395
|
+
This SDK includes **906** actions.
|
|
396
396
|
|
|
397
397
|
### Action Types
|
|
398
398
|
|
|
@@ -414,6 +414,7 @@ This SDK includes **905** actions.
|
|
|
414
414
|
| `CancelOrderForRecontract` | STAGE_TRANSITION | k1.t-hEOJjsDb.OrderModule.Order.Transition.CancelOrderForRecontract |
|
|
415
415
|
| `CancelOrderForRollback` | STAGE_TRANSITION | k1.t-hEOJjsDb.OrderModule.Order.Transition.CancelOrderForRollback |
|
|
416
416
|
| `ChangeBillingDay` | UPDATE | k1.t-hEOJjsDb.OrderModule.Order.Update.ChangeBillingDay |
|
|
417
|
+
| `ChangeServiceActivationDate` | UPDATE | k1.t-hEOJjsDb.OrderModule.Order.Update.ChangeServiceActivationDate |
|
|
417
418
|
| `ClearOrderDeactivateOnDate` | UPDATE | k1.t-hEOJjsDb.OrderModule.Order.Update.ClearOrderDeactivateOnDate |
|
|
418
419
|
| `CreateInstallWorkOrderFlow` | UPDATE | k1.t-hEOJjsDb.OrderModule.Order.Flow.CreateInstallWorkOrderFlow |
|
|
419
420
|
| `CreateRecontractOrder` | CREATE | k1.t-hEOJjsDb.OrderModule.Order.Create.CreateRecontractOrder |
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ChangeServiceActivationDate Action DTO
|
|
3
|
+
*
|
|
4
|
+
* Change the date this START order's service is activated on. The date always moves Netomnia's activation date; today or earlier also activates the service now. Refused, with the reason, when Netomnia will not accept it.
|
|
5
|
+
*
|
|
6
|
+
* @module OrderModule
|
|
7
|
+
* @entity Order
|
|
8
|
+
* @actionKey ChangeServiceActivationDate
|
|
9
|
+
* @event k1.t-hEOJjsDb.OrderModule.Order.Update.ChangeServiceActivationDate
|
|
10
|
+
*
|
|
11
|
+
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
12
|
+
*/
|
|
13
|
+
import { OdinRecord, OdinRecordUpdateDto, OdinRecordUpdatedEvent } from '@d19n/odin-types/dist/core';
|
|
14
|
+
/**
|
|
15
|
+
* RabbitMQ message payload for ChangeServiceActivationDate updated events
|
|
16
|
+
*
|
|
17
|
+
* @event k1.t-hEOJjsDb.OrderModule.Order.Update.ChangeServiceActivationDate
|
|
18
|
+
*/
|
|
19
|
+
export interface ChangeServiceActivationDateMessage extends OdinRecordUpdatedEvent<ChangeServiceActivationDateDto, ChangeServiceActivationDateProperties> {
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Properties for ChangeServiceActivationDate action
|
|
23
|
+
*
|
|
24
|
+
* @property Required fields: 1
|
|
25
|
+
* @property Optional fields: 0
|
|
26
|
+
*/
|
|
27
|
+
export interface ChangeServiceActivationDateProperties {
|
|
28
|
+
/**
|
|
29
|
+
* Service activation date
|
|
30
|
+
*
|
|
31
|
+
* Used when restarting an existing service, allows the customer to specify what date is used for the RequestedCompletionDate on the supplier-side START order. Used for when a customer is technically able to start receiving service.
|
|
32
|
+
* @type {DATE}
|
|
33
|
+
* @required
|
|
34
|
+
*/
|
|
35
|
+
RequestedActivationDate: string;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Change service activation date
|
|
39
|
+
*
|
|
40
|
+
* Change the date this START order's service is activated on. The date always moves Netomnia's activation date; today or earlier also activates the service now. Refused, with the reason, when Netomnia will not accept it.
|
|
41
|
+
*
|
|
42
|
+
* @actionType UPDATE - Updates an existing Order record
|
|
43
|
+
* @module OrderModule
|
|
44
|
+
* @entity Order
|
|
45
|
+
* @event k1.t-hEOJjsDb.OrderModule.Order.Update.ChangeServiceActivationDate
|
|
46
|
+
* @permission schema.action.changeserviceactivationdate.trigger
|
|
47
|
+
* @benchmark This action is tracked for performance benchmarks
|
|
48
|
+
*/
|
|
49
|
+
export declare class ChangeServiceActivationDateDto extends OdinRecordUpdateDto<ChangeServiceActivationDateProperties> {
|
|
50
|
+
/** Used by SDK generators to identify action type */
|
|
51
|
+
static readonly ACTION_TYPE = "UPDATE";
|
|
52
|
+
static readonly ACTION_KEY = "ChangeServiceActivationDate";
|
|
53
|
+
static readonly MODULE_NAME = "OrderModule";
|
|
54
|
+
static readonly ENTITIES: string[];
|
|
55
|
+
static readonly EVENT_NAME = "k1.t-hEOJjsDb.OrderModule.Order.Update.ChangeServiceActivationDate";
|
|
56
|
+
static readonly PERMISSION = "schema.action.changeserviceactivationdate.trigger";
|
|
57
|
+
/** Step metadata - entity this action targets */
|
|
58
|
+
static readonly STEP_ENTITY = "OrderModule:Order";
|
|
59
|
+
static readonly STEP_SCHEMA_ID = "8ebd71fd-fedb-40fe-8d4e-83ef92d5a98b";
|
|
60
|
+
static readonly STEP_SCHEMA_ACTION_ID = "93fa4388-ddc9-46a0-8c93-a3deb7d6f2c0";
|
|
61
|
+
static readonly AUTO_LINK_PARENT = false;
|
|
62
|
+
readonly actionName: string;
|
|
63
|
+
readonly schemaActionId: string;
|
|
64
|
+
readonly entity: string;
|
|
65
|
+
constructor(record: OdinRecord<any> | {
|
|
66
|
+
id: string;
|
|
67
|
+
entity: string;
|
|
68
|
+
type?: string;
|
|
69
|
+
}, properties: ChangeServiceActivationDateProperties, options?: {
|
|
70
|
+
journeyId?: string;
|
|
71
|
+
stageKey?: string;
|
|
72
|
+
});
|
|
73
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ChangeServiceActivationDate Action DTO
|
|
4
|
+
*
|
|
5
|
+
* Change the date this START order's service is activated on. The date always moves Netomnia's activation date; today or earlier also activates the service now. Refused, with the reason, when Netomnia will not accept it.
|
|
6
|
+
*
|
|
7
|
+
* @module OrderModule
|
|
8
|
+
* @entity Order
|
|
9
|
+
* @actionKey ChangeServiceActivationDate
|
|
10
|
+
* @event k1.t-hEOJjsDb.OrderModule.Order.Update.ChangeServiceActivationDate
|
|
11
|
+
*
|
|
12
|
+
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
13
|
+
*/
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.ChangeServiceActivationDateDto = void 0;
|
|
16
|
+
const core_1 = require("@d19n/odin-types/dist/core");
|
|
17
|
+
/**
|
|
18
|
+
* Change service activation date
|
|
19
|
+
*
|
|
20
|
+
* Change the date this START order's service is activated on. The date always moves Netomnia's activation date; today or earlier also activates the service now. Refused, with the reason, when Netomnia will not accept it.
|
|
21
|
+
*
|
|
22
|
+
* @actionType UPDATE - Updates an existing Order record
|
|
23
|
+
* @module OrderModule
|
|
24
|
+
* @entity Order
|
|
25
|
+
* @event k1.t-hEOJjsDb.OrderModule.Order.Update.ChangeServiceActivationDate
|
|
26
|
+
* @permission schema.action.changeserviceactivationdate.trigger
|
|
27
|
+
* @benchmark This action is tracked for performance benchmarks
|
|
28
|
+
*/
|
|
29
|
+
class ChangeServiceActivationDateDto extends core_1.OdinRecordUpdateDto {
|
|
30
|
+
constructor(record, properties, options) {
|
|
31
|
+
super({
|
|
32
|
+
id: record.id,
|
|
33
|
+
entity: record.entity,
|
|
34
|
+
type: record.type,
|
|
35
|
+
properties,
|
|
36
|
+
journeyId: options === null || options === void 0 ? void 0 : options.journeyId,
|
|
37
|
+
stageKey: options === null || options === void 0 ? void 0 : options.stageKey,
|
|
38
|
+
});
|
|
39
|
+
this.actionName = 'ChangeServiceActivationDate';
|
|
40
|
+
this.schemaActionId = '93fa4388-ddc9-46a0-8c93-a3deb7d6f2c0';
|
|
41
|
+
this.entity = 'OrderModule:Order';
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.ChangeServiceActivationDateDto = ChangeServiceActivationDateDto;
|
|
45
|
+
/** Used by SDK generators to identify action type */
|
|
46
|
+
ChangeServiceActivationDateDto.ACTION_TYPE = 'UPDATE';
|
|
47
|
+
ChangeServiceActivationDateDto.ACTION_KEY = 'ChangeServiceActivationDate';
|
|
48
|
+
ChangeServiceActivationDateDto.MODULE_NAME = 'OrderModule';
|
|
49
|
+
ChangeServiceActivationDateDto.ENTITIES = ['Order'];
|
|
50
|
+
ChangeServiceActivationDateDto.EVENT_NAME = 'k1.t-hEOJjsDb.OrderModule.Order.Update.ChangeServiceActivationDate';
|
|
51
|
+
ChangeServiceActivationDateDto.PERMISSION = 'schema.action.changeserviceactivationdate.trigger';
|
|
52
|
+
/** Step metadata - entity this action targets */
|
|
53
|
+
ChangeServiceActivationDateDto.STEP_ENTITY = 'OrderModule:Order';
|
|
54
|
+
ChangeServiceActivationDateDto.STEP_SCHEMA_ID = '8ebd71fd-fedb-40fe-8d4e-83ef92d5a98b';
|
|
55
|
+
ChangeServiceActivationDateDto.STEP_SCHEMA_ACTION_ID = '93fa4388-ddc9-46a0-8c93-a3deb7d6f2c0';
|
|
56
|
+
ChangeServiceActivationDateDto.AUTO_LINK_PARENT = false;
|
|
@@ -352,6 +352,7 @@ export declare enum CaseProblem {
|
|
|
352
352
|
* - `FACEBOOK_COMMENT` - Facebook comment
|
|
353
353
|
* - `FACEBOOK_MESSENGER` - Facebook Messenger
|
|
354
354
|
* - `IN_APP_CHAT` - In-App Chat
|
|
355
|
+
* - `INSTAGRAM_COMMENT` - Instagram comment
|
|
355
356
|
* - `INSTAGRAM_DM` - Instagram DM
|
|
356
357
|
* - `SMS`
|
|
357
358
|
* - `TLOS_APP` - TLOS App
|
|
@@ -359,8 +360,7 @@ export declare enum CaseProblem {
|
|
|
359
360
|
* - `TRUSTPILOT_SERVICE_REVIEW` - Trustpilot review
|
|
360
361
|
* - `TWITTER_X_DM` - Twitter/X DM
|
|
361
362
|
* - `TWITTER_X_MENTION` - Twitter/X Mention
|
|
362
|
-
* -
|
|
363
|
-
* - ... and 2 more
|
|
363
|
+
* - ... and 3 more
|
|
364
364
|
*/
|
|
365
365
|
export declare enum CaseChannel {
|
|
366
366
|
CALL = "CALL",
|
|
@@ -370,6 +370,7 @@ export declare enum CaseChannel {
|
|
|
370
370
|
FACEBOOK_COMMENT = "FACEBOOK_COMMENT",
|
|
371
371
|
FACEBOOK_MESSENGER = "FACEBOOK_MESSENGER",
|
|
372
372
|
IN_APP_CHAT = "IN_APP_CHAT",
|
|
373
|
+
INSTAGRAM_COMMENT = "INSTAGRAM_COMMENT",
|
|
373
374
|
INSTAGRAM_DM = "INSTAGRAM_DM",
|
|
374
375
|
SMS = "SMS",
|
|
375
376
|
TLOS_APP = "TLOS_APP",
|
package/dist/entities-v2/Case.js
CHANGED
|
@@ -343,6 +343,7 @@ var CaseProblem;
|
|
|
343
343
|
* - `FACEBOOK_COMMENT` - Facebook comment
|
|
344
344
|
* - `FACEBOOK_MESSENGER` - Facebook Messenger
|
|
345
345
|
* - `IN_APP_CHAT` - In-App Chat
|
|
346
|
+
* - `INSTAGRAM_COMMENT` - Instagram comment
|
|
346
347
|
* - `INSTAGRAM_DM` - Instagram DM
|
|
347
348
|
* - `SMS`
|
|
348
349
|
* - `TLOS_APP` - TLOS App
|
|
@@ -350,8 +351,7 @@ var CaseProblem;
|
|
|
350
351
|
* - `TRUSTPILOT_SERVICE_REVIEW` - Trustpilot review
|
|
351
352
|
* - `TWITTER_X_DM` - Twitter/X DM
|
|
352
353
|
* - `TWITTER_X_MENTION` - Twitter/X Mention
|
|
353
|
-
* -
|
|
354
|
-
* - ... and 2 more
|
|
354
|
+
* - ... and 3 more
|
|
355
355
|
*/
|
|
356
356
|
var CaseChannel;
|
|
357
357
|
(function (CaseChannel) {
|
|
@@ -362,6 +362,7 @@ var CaseChannel;
|
|
|
362
362
|
CaseChannel["FACEBOOK_COMMENT"] = "FACEBOOK_COMMENT";
|
|
363
363
|
CaseChannel["FACEBOOK_MESSENGER"] = "FACEBOOK_MESSENGER";
|
|
364
364
|
CaseChannel["IN_APP_CHAT"] = "IN_APP_CHAT";
|
|
365
|
+
CaseChannel["INSTAGRAM_COMMENT"] = "INSTAGRAM_COMMENT";
|
|
365
366
|
CaseChannel["INSTAGRAM_DM"] = "INSTAGRAM_DM";
|
|
366
367
|
CaseChannel["SMS"] = "SMS";
|
|
367
368
|
CaseChannel["TLOS_APP"] = "TLOS_APP";
|
|
@@ -88,6 +88,7 @@ export declare enum DefaultContractBuyOutStageKeys {
|
|
|
88
88
|
* @remarks Available options:
|
|
89
89
|
* - `BT`
|
|
90
90
|
* - `EE`
|
|
91
|
+
* - `GIGACLEAR` - Gigaclear
|
|
91
92
|
* - `HOME_TELECOM` - Home Telecom
|
|
92
93
|
* - `NOWTV_BROADBAND` - NowTV Broadband
|
|
93
94
|
* - `OTHER` - Other
|
|
@@ -102,6 +103,7 @@ export declare enum DefaultContractBuyOutStageKeys {
|
|
|
102
103
|
export declare enum ContractBuyOutPreviousProvider {
|
|
103
104
|
BT = "BT",
|
|
104
105
|
EE = "EE",
|
|
106
|
+
GIGACLEAR = "GIGACLEAR",
|
|
105
107
|
HOME_TELECOM = "HOME_TELECOM",
|
|
106
108
|
NOW_TV_BROADBAND = "NOWTV_BROADBAND",
|
|
107
109
|
OTHER = "OTHER",
|
|
@@ -85,6 +85,7 @@ var DefaultContractBuyOutStageKeys;
|
|
|
85
85
|
* @remarks Available options:
|
|
86
86
|
* - `BT`
|
|
87
87
|
* - `EE`
|
|
88
|
+
* - `GIGACLEAR` - Gigaclear
|
|
88
89
|
* - `HOME_TELECOM` - Home Telecom
|
|
89
90
|
* - `NOWTV_BROADBAND` - NowTV Broadband
|
|
90
91
|
* - `OTHER` - Other
|
|
@@ -100,6 +101,7 @@ var ContractBuyOutPreviousProvider;
|
|
|
100
101
|
(function (ContractBuyOutPreviousProvider) {
|
|
101
102
|
ContractBuyOutPreviousProvider["BT"] = "BT";
|
|
102
103
|
ContractBuyOutPreviousProvider["EE"] = "EE";
|
|
104
|
+
ContractBuyOutPreviousProvider["GIGACLEAR"] = "GIGACLEAR";
|
|
103
105
|
ContractBuyOutPreviousProvider["HOME_TELECOM"] = "HOME_TELECOM";
|
|
104
106
|
ContractBuyOutPreviousProvider["NOW_TV_BROADBAND"] = "NOWTV_BROADBAND";
|
|
105
107
|
ContractBuyOutPreviousProvider["OTHER"] = "OTHER";
|
|
@@ -32,6 +32,7 @@ export declare enum ConversationEntityTypes {
|
|
|
32
32
|
* - `FACEBOOK_COMMENT` - Facebook comment
|
|
33
33
|
* - `FACEBOOK_MESSENGER` - Facebook Messenger
|
|
34
34
|
* - `IN_APP_CHAT` - In-App Chat
|
|
35
|
+
* - `INSTAGRAM_COMMENT` - Instagram comment
|
|
35
36
|
* - `INSTAGRAM_DM` - Instagram DM
|
|
36
37
|
* - `SMS`
|
|
37
38
|
* - `TRUSTPILOT_SERVICE_REVIEW` - Trustpilot Service Review
|
|
@@ -44,6 +45,7 @@ export declare enum ConversationChannel {
|
|
|
44
45
|
FACEBOOK_COMMENT = "FACEBOOK_COMMENT",
|
|
45
46
|
FACEBOOK_MESSENGER = "FACEBOOK_MESSENGER",
|
|
46
47
|
IN_APP_CHAT = "IN_APP_CHAT",
|
|
48
|
+
INSTAGRAM_COMMENT = "INSTAGRAM_COMMENT",
|
|
47
49
|
INSTAGRAM_DM = "INSTAGRAM_DM",
|
|
48
50
|
SMS = "SMS",
|
|
49
51
|
TRUSTPILOT_SERVICE_REVIEW = "TRUSTPILOT_SERVICE_REVIEW",
|
|
@@ -32,6 +32,7 @@ var ConversationEntityTypes;
|
|
|
32
32
|
* - `FACEBOOK_COMMENT` - Facebook comment
|
|
33
33
|
* - `FACEBOOK_MESSENGER` - Facebook Messenger
|
|
34
34
|
* - `IN_APP_CHAT` - In-App Chat
|
|
35
|
+
* - `INSTAGRAM_COMMENT` - Instagram comment
|
|
35
36
|
* - `INSTAGRAM_DM` - Instagram DM
|
|
36
37
|
* - `SMS`
|
|
37
38
|
* - `TRUSTPILOT_SERVICE_REVIEW` - Trustpilot Service Review
|
|
@@ -45,6 +46,7 @@ var ConversationChannel;
|
|
|
45
46
|
ConversationChannel["FACEBOOK_COMMENT"] = "FACEBOOK_COMMENT";
|
|
46
47
|
ConversationChannel["FACEBOOK_MESSENGER"] = "FACEBOOK_MESSENGER";
|
|
47
48
|
ConversationChannel["IN_APP_CHAT"] = "IN_APP_CHAT";
|
|
49
|
+
ConversationChannel["INSTAGRAM_COMMENT"] = "INSTAGRAM_COMMENT";
|
|
48
50
|
ConversationChannel["INSTAGRAM_DM"] = "INSTAGRAM_DM";
|
|
49
51
|
ConversationChannel["SMS"] = "SMS";
|
|
50
52
|
ConversationChannel["TRUSTPILOT_SERVICE_REVIEW"] = "TRUSTPILOT_SERVICE_REVIEW";
|
|
@@ -66,7 +66,9 @@ export declare enum MessagePropertyKeys {
|
|
|
66
66
|
/** Who sent the message (Communications - Message) */
|
|
67
67
|
From = "From",
|
|
68
68
|
/** Has the customer read this message in the app? Set to false when an agent or system message is written to an in-app chat, and to true when the app reports it read (PORTAPP-3306). Messages written before this column existed have no value, and no value counts as read — only an explicit false raises the unread badge. */
|
|
69
|
-
IsReadByCustomer = "IsReadByCustomer"
|
|
69
|
+
IsReadByCustomer = "IsReadByCustomer",
|
|
70
|
+
/** List of reactions on this message/comment: [{reactorId, emoji, reactionType, reactedAt}] */
|
|
71
|
+
Reactions = "Reactions"
|
|
70
72
|
}
|
|
71
73
|
/**
|
|
72
74
|
* Properties for Message records
|
|
@@ -126,6 +128,12 @@ export interface MessageProperties {
|
|
|
126
128
|
* @default
|
|
127
129
|
*/
|
|
128
130
|
IsReadByCustomer: boolean;
|
|
131
|
+
/** List of reactions on this message/comment: [{reactorId, emoji, reactionType, reactedAt}]
|
|
132
|
+
*
|
|
133
|
+
* @type {JSON}
|
|
134
|
+
* @default
|
|
135
|
+
*/
|
|
136
|
+
Reactions: string;
|
|
129
137
|
}
|
|
130
138
|
/**
|
|
131
139
|
* Properties for CLOSE Message records
|
|
@@ -185,6 +193,12 @@ export interface CloseMessageProperties {
|
|
|
185
193
|
* @default
|
|
186
194
|
*/
|
|
187
195
|
IsReadByCustomer: boolean;
|
|
196
|
+
/** List of reactions on this message/comment: [{reactorId, emoji, reactionType, reactedAt}]
|
|
197
|
+
*
|
|
198
|
+
* @type {JSON}
|
|
199
|
+
* @default
|
|
200
|
+
*/
|
|
201
|
+
Reactions: string;
|
|
188
202
|
}
|
|
189
203
|
/**
|
|
190
204
|
* Properties for EVENT Message records
|
|
@@ -244,6 +258,12 @@ export interface EventMessageProperties {
|
|
|
244
258
|
* @default
|
|
245
259
|
*/
|
|
246
260
|
IsReadByCustomer: boolean;
|
|
261
|
+
/** List of reactions on this message/comment: [{reactorId, emoji, reactionType, reactedAt}]
|
|
262
|
+
*
|
|
263
|
+
* @type {JSON}
|
|
264
|
+
* @default
|
|
265
|
+
*/
|
|
266
|
+
Reactions: string;
|
|
247
267
|
}
|
|
248
268
|
/**
|
|
249
269
|
* Properties for NUDGE Message records
|
|
@@ -303,6 +323,12 @@ export interface NudgeMessageProperties {
|
|
|
303
323
|
* @default
|
|
304
324
|
*/
|
|
305
325
|
IsReadByCustomer: boolean;
|
|
326
|
+
/** List of reactions on this message/comment: [{reactorId, emoji, reactionType, reactedAt}]
|
|
327
|
+
*
|
|
328
|
+
* @type {JSON}
|
|
329
|
+
* @default
|
|
330
|
+
*/
|
|
331
|
+
Reactions: string;
|
|
306
332
|
}
|
|
307
333
|
/**
|
|
308
334
|
* Message entity from NotificationModule
|
|
@@ -70,6 +70,8 @@ var MessagePropertyKeys;
|
|
|
70
70
|
MessagePropertyKeys["From"] = "From";
|
|
71
71
|
/** Has the customer read this message in the app? Set to false when an agent or system message is written to an in-app chat, and to true when the app reports it read (PORTAPP-3306). Messages written before this column existed have no value, and no value counts as read — only an explicit false raises the unread badge. */
|
|
72
72
|
MessagePropertyKeys["IsReadByCustomer"] = "IsReadByCustomer";
|
|
73
|
+
/** List of reactions on this message/comment: [{reactorId, emoji, reactionType, reactedAt}] */
|
|
74
|
+
MessagePropertyKeys["Reactions"] = "Reactions";
|
|
73
75
|
})(MessagePropertyKeys = exports.MessagePropertyKeys || (exports.MessagePropertyKeys = {}));
|
|
74
76
|
/**
|
|
75
77
|
* Message entity from NotificationModule
|
|
@@ -25,6 +25,7 @@ import { ActivateOrderProperties } from '../actions-v2/ActivateOrderDto';
|
|
|
25
25
|
import { CreateChurnRequestProperties } from '../actions-v2/CancelActiveOrderDto';
|
|
26
26
|
import { CreatePicRequestProperties } from '../actions-v2/CancelOrderPreInstallDto';
|
|
27
27
|
import { ChangeBillingDayProperties } from '../actions-v2/ChangeBillingDayDto';
|
|
28
|
+
import { ChangeServiceActivationDateProperties } from '../actions-v2/ChangeServiceActivationDateDto';
|
|
28
29
|
import { ClearOrderDeactivateOnDateProperties } from '../actions-v2/ClearOrderDeactivateOnDateDto';
|
|
29
30
|
import { CreateCityfibreOrderKciCommittedProperties } from '../actions-v2/CreateCityfibreKciDto';
|
|
30
31
|
import { CreateCityfibreOrderKciCompletedProperties } from '../actions-v2/CreateCityfibreKciDto';
|
|
@@ -1614,6 +1615,32 @@ export declare class OrderRecord<TProps = OrderProperties> {
|
|
|
1614
1615
|
journeyId?: string;
|
|
1615
1616
|
stageKey?: string;
|
|
1616
1617
|
}): ActionBuilder;
|
|
1618
|
+
/**
|
|
1619
|
+
* ChangeServiceActivationDate
|
|
1620
|
+
*
|
|
1621
|
+
* Updates this Order record with the specified properties.
|
|
1622
|
+
* Returns an ActionBuilder - call .execute() to update or .dryRun() for debugging.
|
|
1623
|
+
*
|
|
1624
|
+
* @param properties - Required properties for this action
|
|
1625
|
+
* @param options - Optional settings
|
|
1626
|
+
* @param options.journeyId - Associate with a journey
|
|
1627
|
+
* @param options.stageKey - Transition to pipeline stage
|
|
1628
|
+
* @returns ActionBuilder - call .execute() to update or .dryRun() for payload
|
|
1629
|
+
* @throws Error if called on a new (unsaved) record
|
|
1630
|
+
*
|
|
1631
|
+
* @example
|
|
1632
|
+
* ```typescript
|
|
1633
|
+
* const record = await odinClient.orders.get(id);
|
|
1634
|
+
* await record.changeServiceActivationDate({ ... }).execute();
|
|
1635
|
+
*
|
|
1636
|
+
* // Dry run (for debugging)
|
|
1637
|
+
* const payload = record.changeServiceActivationDate({ ... }).dryRun();
|
|
1638
|
+
* ```
|
|
1639
|
+
*/
|
|
1640
|
+
changeServiceActivationDate(properties: ChangeServiceActivationDateProperties, options?: {
|
|
1641
|
+
journeyId?: string;
|
|
1642
|
+
stageKey?: string;
|
|
1643
|
+
}): ActionBuilder;
|
|
1617
1644
|
/**
|
|
1618
1645
|
* ClearOrderDeactivateOnDate
|
|
1619
1646
|
*
|
|
@@ -2460,6 +2460,35 @@ class OrderRecord {
|
|
|
2460
2460
|
const payload = Object.assign({ id: this._record.id, entity: this._record.entity, type: this._record.type, actionName: 'ChangeBillingDay', properties, associations: this._pendingLinks.length > 0 ? this._pendingLinks : undefined }, options);
|
|
2461
2461
|
return new ActionBuilder(this._provider, 'OrderModule', 'Order', payload, () => { this._pendingLinks = []; });
|
|
2462
2462
|
}
|
|
2463
|
+
/**
|
|
2464
|
+
* ChangeServiceActivationDate
|
|
2465
|
+
*
|
|
2466
|
+
* Updates this Order record with the specified properties.
|
|
2467
|
+
* Returns an ActionBuilder - call .execute() to update or .dryRun() for debugging.
|
|
2468
|
+
*
|
|
2469
|
+
* @param properties - Required properties for this action
|
|
2470
|
+
* @param options - Optional settings
|
|
2471
|
+
* @param options.journeyId - Associate with a journey
|
|
2472
|
+
* @param options.stageKey - Transition to pipeline stage
|
|
2473
|
+
* @returns ActionBuilder - call .execute() to update or .dryRun() for payload
|
|
2474
|
+
* @throws Error if called on a new (unsaved) record
|
|
2475
|
+
*
|
|
2476
|
+
* @example
|
|
2477
|
+
* ```typescript
|
|
2478
|
+
* const record = await odinClient.orders.get(id);
|
|
2479
|
+
* await record.changeServiceActivationDate({ ... }).execute();
|
|
2480
|
+
*
|
|
2481
|
+
* // Dry run (for debugging)
|
|
2482
|
+
* const payload = record.changeServiceActivationDate({ ... }).dryRun();
|
|
2483
|
+
* ```
|
|
2484
|
+
*/
|
|
2485
|
+
changeServiceActivationDate(properties, options) {
|
|
2486
|
+
var _a;
|
|
2487
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
2488
|
+
throw new Error('changeServiceActivationDate requires an existing record. Use accessor.get() first.');
|
|
2489
|
+
const payload = Object.assign({ id: this._record.id, entity: this._record.entity, type: this._record.type, actionName: 'ChangeServiceActivationDate', properties, associations: this._pendingLinks.length > 0 ? this._pendingLinks : undefined }, options);
|
|
2490
|
+
return new ActionBuilder(this._provider, 'OrderModule', 'Order', payload, () => { this._pendingLinks = []; });
|
|
2491
|
+
}
|
|
2463
2492
|
/**
|
|
2464
2493
|
* ClearOrderDeactivateOnDate
|
|
2465
2494
|
*
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
* full types are available).
|
|
31
31
|
*/
|
|
32
32
|
import type { VMO2OrderNotification, VMO2SMRNotification } from './types/vmo2';
|
|
33
|
-
import type { FibreCafeServiceAvailability200, FibreCafeAvailableAppointments200, FibreCafeReserveAppointment201, FibreCafeScheduleServiceWorkOrder201, FibreCafeRescheduleServiceWorkOrder200, FibreCafeOrderCreate202, FibreCafeOrderAmendAccept202, FibreCafeKciDto, FibreCafeServiceProblemCancellationReasonCode } from './types/fibrecafe';
|
|
33
|
+
import type { FibreCafeServiceAvailability200, FibreCafeAvailableAppointments200, FibreCafeReserveAppointment201, FibreCafeScheduleServiceWorkOrder201, FibreCafeRescheduleServiceWorkOrder200, FibreCafeOrderCreate202, FibreCafeStartOrderActivateAccept202, FibreCafeOrderAmendAccept202, FibreCafeKciDto, FibreCafeServiceProblemCancellationReasonCode } from './types/fibrecafe';
|
|
34
34
|
/**
|
|
35
35
|
* Reasons a cancellation request can be made (NET wire-level enum value
|
|
36
36
|
* passed through to the FibreCafe gateway).
|
|
@@ -258,6 +258,18 @@ export interface WholesaleProvider<TPrincipal = unknown> {
|
|
|
258
258
|
cancelOrder(yfOrderId: string, reasonCode: CancellationReasonCode): Promise<FibreCafeOrderCreate202>;
|
|
259
259
|
/** Active-customer cease (post-Active churn / OTS-losing). */
|
|
260
260
|
ceaseOrder(yfOrderId: string, serviceId: string): Promise<FibreCafeOrderCreate202>;
|
|
261
|
+
/**
|
|
262
|
+
* ORD-326: ask the supplier to activate an in-flight START order now, ahead
|
|
263
|
+
* of its requested date. Accepted synchronously; the COMPLETED (or REAPPOINT)
|
|
264
|
+
* KCI follows.
|
|
265
|
+
*/
|
|
266
|
+
activateStartOrder(yfOrderId: string): Promise<FibreCafeStartOrderActivateAccept202>;
|
|
267
|
+
/**
|
|
268
|
+
* ORD-335: move an in-flight provide order's requested completion date — the
|
|
269
|
+
* day the supplier activates a START. Sent as an order amendment; the
|
|
270
|
+
* AMENDED KCI confirms it.
|
|
271
|
+
*/
|
|
272
|
+
amendRequestedCompletionDate(yfOrderId: string, requestedCompletionDate: string): Promise<FibreCafeOrderAmendAccept202>;
|
|
261
273
|
/**
|
|
262
274
|
* Tenant-initiated cancel of an inflight SERVICE WO. Structurally
|
|
263
275
|
* parallel to `rescheduleServiceWorkOrder` — same flat-primitive args,
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
*/
|
|
30
30
|
import type { WholesaleProvider, CreateOrderOptions, CancellationReasonCode, CancelServiceWorkOrderArgs, FindOrderByExternalRefArgs, FindOrderByExternalRefResult, ReserveAppointmentArgs, ListAppointmentsArgs, ScheduleServiceWorkOrderArgs, RescheduleServiceWorkOrderArgs, AmendAppointmentArgs, RequestTenantReappointmentArgs, SyncWorkOrderToSupplierArgs, UpdateOrderExternalRefArgs } from '../interface';
|
|
31
31
|
import type { VMO2OrderNotification, VMO2SMRNotification } from '../types/vmo2';
|
|
32
|
-
import type { FibreCafeServiceAvailability200, FibreCafeAvailableAppointments200, FibreCafeReserveAppointment201, FibreCafeScheduleServiceWorkOrder201, FibreCafeRescheduleServiceWorkOrder200, FibreCafeOrderCreate202, FibreCafeOrderAmendAccept202, FibreCafeKciDto } from '../types/fibrecafe';
|
|
32
|
+
import type { FibreCafeServiceAvailability200, FibreCafeAvailableAppointments200, FibreCafeReserveAppointment201, FibreCafeScheduleServiceWorkOrder201, FibreCafeRescheduleServiceWorkOrder200, FibreCafeOrderCreate202, FibreCafeOrderAmendAccept202, FibreCafeStartOrderActivateAccept202, FibreCafeKciDto } from '../types/fibrecafe';
|
|
33
33
|
/**
|
|
34
34
|
* Function-bag of dependencies the NetomniaProvider delegates to.
|
|
35
35
|
*
|
|
@@ -61,6 +61,8 @@ export interface NetomniaProviderDeps<TPrincipal = unknown, TKci = FibreCafeKciD
|
|
|
61
61
|
amendOrder: (principal: TPrincipal, yfOrderId: string) => Promise<FibreCafeOrderCreate202 | null>;
|
|
62
62
|
cancelOrder: (yfOrderId: string, reasonCode: CancellationReasonCode) => Promise<FibreCafeOrderCreate202>;
|
|
63
63
|
ceaseOrder: (yfOrderId: string, serviceId: string) => Promise<FibreCafeOrderCreate202>;
|
|
64
|
+
activateStartOrder: (yfOrderId: string) => Promise<FibreCafeStartOrderActivateAccept202>;
|
|
65
|
+
amendRequestedCompletionDate: (yfOrderId: string, requestedCompletionDate: string) => Promise<FibreCafeOrderAmendAccept202>;
|
|
64
66
|
cancelServiceWorkOrder: (args: CancelServiceWorkOrderArgs) => Promise<FibreCafeRescheduleServiceWorkOrder200>;
|
|
65
67
|
/**
|
|
66
68
|
* Required, deliberately. Wiring it is what makes the supplier-order
|
|
@@ -91,6 +93,8 @@ export declare class NetomniaProvider<TPrincipal = unknown> implements Wholesale
|
|
|
91
93
|
amendOrder(principal: TPrincipal, yfOrderId: string): Promise<FibreCafeOrderCreate202>;
|
|
92
94
|
cancelOrder(yfOrderId: string, reasonCode: CancellationReasonCode): Promise<FibreCafeOrderCreate202>;
|
|
93
95
|
ceaseOrder(yfOrderId: string, serviceId: string): Promise<FibreCafeOrderCreate202>;
|
|
96
|
+
activateStartOrder(yfOrderId: string): Promise<FibreCafeStartOrderActivateAccept202>;
|
|
97
|
+
amendRequestedCompletionDate(yfOrderId: string, requestedCompletionDate: string): Promise<FibreCafeOrderAmendAccept202>;
|
|
94
98
|
cancelServiceWorkOrder(args: CancelServiceWorkOrderArgs): Promise<FibreCafeRescheduleServiceWorkOrder200>;
|
|
95
99
|
findOrderByExternalRef(args: FindOrderByExternalRefArgs): Promise<FindOrderByExternalRefResult>;
|
|
96
100
|
receiveKci(principal: TPrincipal, dto: FibreCafeKciDto): Promise<void>;
|
|
@@ -50,6 +50,12 @@ class NetomniaProvider {
|
|
|
50
50
|
ceaseOrder(yfOrderId, serviceId) {
|
|
51
51
|
return this.deps.ceaseOrder(yfOrderId, serviceId);
|
|
52
52
|
}
|
|
53
|
+
activateStartOrder(yfOrderId) {
|
|
54
|
+
return this.deps.activateStartOrder(yfOrderId);
|
|
55
|
+
}
|
|
56
|
+
amendRequestedCompletionDate(yfOrderId, requestedCompletionDate) {
|
|
57
|
+
return this.deps.amendRequestedCompletionDate(yfOrderId, requestedCompletionDate);
|
|
58
|
+
}
|
|
53
59
|
cancelServiceWorkOrder(args) {
|
|
54
60
|
return this.deps.cancelServiceWorkOrder(args);
|
|
55
61
|
}
|
|
@@ -72,6 +72,8 @@ function buildDeps() {
|
|
|
72
72
|
amendOrder: {},
|
|
73
73
|
cancelOrder: {},
|
|
74
74
|
ceaseOrder: {},
|
|
75
|
+
activateStartOrder: { id: 'net-order-1', externalRef: 'ORD-1', recordNumber: 'OR1' },
|
|
76
|
+
amendRequestedCompletionDate: {},
|
|
75
77
|
cancelServiceWorkOrder: { workOrderId: 'WO-CANC-1', appointmentId: '' },
|
|
76
78
|
findOrderByExternalRef: { found: true, supplierOrderId: 'NET-ORD-1', supplierOrderRef: 'ORD123' },
|
|
77
79
|
};
|
|
@@ -124,6 +126,14 @@ function buildDeps() {
|
|
|
124
126
|
log.push({ method: 'ceaseOrder', args: [yfOrderId, serviceId] });
|
|
125
127
|
return Promise.resolve(stubs.ceaseOrder);
|
|
126
128
|
},
|
|
129
|
+
activateStartOrder: (yfOrderId) => {
|
|
130
|
+
log.push({ method: 'activateStartOrder', args: [yfOrderId] });
|
|
131
|
+
return Promise.resolve(stubs.activateStartOrder);
|
|
132
|
+
},
|
|
133
|
+
amendRequestedCompletionDate: (yfOrderId, requestedCompletionDate) => {
|
|
134
|
+
log.push({ method: 'amendRequestedCompletionDate', args: [yfOrderId, requestedCompletionDate] });
|
|
135
|
+
return Promise.resolve(stubs.amendRequestedCompletionDate);
|
|
136
|
+
},
|
|
127
137
|
cancelServiceWorkOrder: (args) => {
|
|
128
138
|
log.push({ method: 'cancelServiceWorkOrder', args: [args] });
|
|
129
139
|
return Promise.resolve(stubs.cancelServiceWorkOrder);
|
|
@@ -296,6 +306,26 @@ function run() {
|
|
|
296
306
|
assert('orderId forwarded', log[0].args[0] === 'ORD-1');
|
|
297
307
|
assert('reasonCode forwarded', log[0].args[1] === 'CUSTOMER_CHANGED_MIND');
|
|
298
308
|
}
|
|
309
|
+
console.log('Test: activateStartOrder delegates to deps and returns the accept body');
|
|
310
|
+
{
|
|
311
|
+
const { deps, log } = buildDeps();
|
|
312
|
+
const p = new netomnia_provider_1.NetomniaProvider(deps);
|
|
313
|
+
const res = yield p.activateStartOrder('ORD-1');
|
|
314
|
+
assert('called once', log.length === 1);
|
|
315
|
+
assert('correct method', log[0].method === 'activateStartOrder');
|
|
316
|
+
assert('orderId forwarded', log[0].args[0] === 'ORD-1');
|
|
317
|
+
assert('accept body returned', res.id === 'net-order-1' && res.externalRef === 'ORD-1');
|
|
318
|
+
}
|
|
319
|
+
console.log('Test: amendRequestedCompletionDate delegates to deps');
|
|
320
|
+
{
|
|
321
|
+
const { deps, log } = buildDeps();
|
|
322
|
+
const p = new netomnia_provider_1.NetomniaProvider(deps);
|
|
323
|
+
yield p.amendRequestedCompletionDate('ORD-1', '2026-10-05');
|
|
324
|
+
assert('called once', log.length === 1);
|
|
325
|
+
assert('correct method', log[0].method === 'amendRequestedCompletionDate');
|
|
326
|
+
assert('orderId forwarded', log[0].args[0] === 'ORD-1');
|
|
327
|
+
assert('date forwarded', log[0].args[1] === '2026-10-05');
|
|
328
|
+
}
|
|
299
329
|
console.log('Test: ceaseOrder delegates to deps');
|
|
300
330
|
{
|
|
301
331
|
const { deps, log } = buildDeps();
|
|
@@ -344,6 +344,17 @@ export declare type FibreCafeOrderCreateDto = FibreCafeProvideServiceOrderDto |
|
|
|
344
344
|
/** 202 — order accepted; will be acknowledged via KCI. Empty body. */
|
|
345
345
|
export interface FibreCafeOrderCreate202 {
|
|
346
346
|
}
|
|
347
|
+
/**
|
|
348
|
+
* ORD-327: accept body of `POST service-orders/:externalRef/activate`. The
|
|
349
|
+
* outcome arrives later as a KCI — COMPLETED, or REAPPOINT (ACTIVATION_FAILED).
|
|
350
|
+
*/
|
|
351
|
+
export interface FibreCafeStartOrderActivateAccept202 {
|
|
352
|
+
/** Supplier order id. */
|
|
353
|
+
id: string;
|
|
354
|
+
/** Tenant order id — the YF Order id. */
|
|
355
|
+
externalRef: string;
|
|
356
|
+
recordNumber?: string;
|
|
357
|
+
}
|
|
347
358
|
export interface FibreCafeServiceOrderCancellationDto {
|
|
348
359
|
/** Caller-generated cancellation request id. */
|
|
349
360
|
id: string;
|