@d19n/youfibre-odin-sdk 1.0.331 → 1.0.332
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/entities-v2/Email.d.ts +17 -0
- package/dist/entities-v2/Email.js +2 -0
- package/dist/records-v2/AccountRecord.d.ts +306 -2
- package/dist/records-v2/AccountRecord.js +451 -0
- package/dist/records-v2/ActivityLogRecord.d.ts +122 -1
- package/dist/records-v2/ActivityLogRecord.js +190 -0
- package/dist/records-v2/ActivityRecord.d.ts +255 -2
- package/dist/records-v2/ActivityRecord.js +387 -0
- package/dist/records-v2/AddressRecord.d.ts +321 -0
- package/dist/records-v2/AddressRecord.js +532 -0
- package/dist/records-v2/AffiliateCodeRecord.d.ts +102 -1
- package/dist/records-v2/AffiliateCodeRecord.js +157 -0
- package/dist/records-v2/AppointmentRecord.d.ts +141 -0
- package/dist/records-v2/AppointmentRecord.js +235 -0
- package/dist/records-v2/BillingAdjustmentRecord.d.ts +81 -0
- package/dist/records-v2/BillingAdjustmentRecord.js +136 -0
- package/dist/records-v2/BillingRequestRecord.d.ts +178 -2
- package/dist/records-v2/BillingRequestRecord.js +271 -0
- package/dist/records-v2/BlockageA55Record.d.ts +103 -2
- package/dist/records-v2/BlockageA55Record.js +157 -0
- package/dist/records-v2/CallEventRecord.d.ts +82 -1
- package/dist/records-v2/CallEventRecord.js +124 -0
- package/dist/records-v2/CallLegRecord.d.ts +82 -1
- package/dist/records-v2/CallLegRecord.js +124 -0
- package/dist/records-v2/CallRecord.d.ts +202 -1
- package/dist/records-v2/CallRecord.js +322 -0
- package/dist/records-v2/CallTransferRecord.d.ts +102 -1
- package/dist/records-v2/CallTransferRecord.js +157 -0
- package/dist/records-v2/CampaignRecord.d.ts +83 -2
- package/dist/records-v2/CampaignRecord.js +124 -0
- package/dist/records-v2/CaseRecord.d.ts +358 -2
- package/dist/records-v2/CaseRecord.js +568 -0
- package/dist/records-v2/ChangeReasonRecord.d.ts +171 -2
- package/dist/records-v2/ChangeReasonRecord.js +238 -0
- package/dist/records-v2/ChurnRequestRecord.d.ts +62 -1
- package/dist/records-v2/ChurnRequestRecord.js +91 -0
- package/dist/records-v2/ContactRecord.d.ts +460 -0
- package/dist/records-v2/ContactRecord.js +762 -0
- package/dist/records-v2/ContractBuyOutRecord.d.ts +162 -1
- package/dist/records-v2/ContractBuyOutRecord.js +256 -0
- package/dist/records-v2/ConversationRecord.d.ts +62 -1
- package/dist/records-v2/ConversationRecord.js +91 -0
- package/dist/records-v2/CreditNoteRecord.d.ts +81 -0
- package/dist/records-v2/CreditNoteRecord.js +136 -0
- package/dist/records-v2/CrmDatasetRecord.d.ts +191 -2
- package/dist/records-v2/CrmDatasetRecord.js +271 -0
- package/dist/records-v2/CustomerDeviceAtaRecord.d.ts +21 -0
- package/dist/records-v2/CustomerDeviceAtaRecord.js +37 -0
- package/dist/records-v2/CustomerDeviceOntRecord.d.ts +181 -0
- package/dist/records-v2/CustomerDeviceOntRecord.js +301 -0
- package/dist/records-v2/CustomerDeviceRouterRecord.d.ts +141 -0
- package/dist/records-v2/CustomerDeviceRouterRecord.js +235 -0
- package/dist/records-v2/CustomerPhonePortingRecord.d.ts +21 -0
- package/dist/records-v2/CustomerPhonePortingRecord.js +37 -0
- package/dist/records-v2/DiscountRecord.d.ts +121 -0
- package/dist/records-v2/DiscountRecord.js +202 -0
- package/dist/records-v2/EmailRecord.d.ts +174 -2
- package/dist/records-v2/EmailRecord.js +254 -0
- package/dist/records-v2/EmailTemplateRecord.d.ts +21 -1
- package/dist/records-v2/EmailTemplateRecord.js +21 -0
- package/dist/records-v2/FieldServiceDispatchedProductRecord.d.ts +135 -2
- package/dist/records-v2/FieldServiceDispatchedProductRecord.js +189 -0
- package/dist/records-v2/FieldServiceProductRecord.d.ts +115 -2
- package/dist/records-v2/FieldServiceProductRecord.js +156 -0
- package/dist/records-v2/FileRecord.d.ts +1191 -2
- package/dist/records-v2/FileRecord.js +1869 -0
- package/dist/records-v2/ImpersonationTrackerRecord.d.ts +62 -1
- package/dist/records-v2/ImpersonationTrackerRecord.js +91 -0
- package/dist/records-v2/InternalInstallAuditRecord.d.ts +83 -2
- package/dist/records-v2/InternalInstallAuditRecord.js +124 -0
- package/dist/records-v2/InvoiceItemRecord.d.ts +40 -0
- package/dist/records-v2/InvoiceItemRecord.js +69 -0
- package/dist/records-v2/InvoiceRecord.d.ts +359 -2
- package/dist/records-v2/InvoiceRecord.js +569 -0
- package/dist/records-v2/KnowledgeArticleRecord.d.ts +98 -2
- package/dist/records-v2/KnowledgeArticleRecord.js +139 -0
- package/dist/records-v2/LeadRecord.d.ts +261 -0
- package/dist/records-v2/LeadRecord.js +433 -0
- package/dist/records-v2/MessageRecord.d.ts +79 -2
- package/dist/records-v2/MessageRecord.js +107 -0
- package/dist/records-v2/NetworkDeviceRecord.d.ts +43 -2
- package/dist/records-v2/NetworkDeviceRecord.js +58 -0
- package/dist/records-v2/NoteRecord.d.ts +1101 -1
- package/dist/records-v2/NoteRecord.js +1806 -0
- package/dist/records-v2/OfferRecord.d.ts +154 -2
- package/dist/records-v2/OfferRecord.js +221 -0
- package/dist/records-v2/OhAuditOfInstallationRecord.d.ts +83 -2
- package/dist/records-v2/OhAuditOfInstallationRecord.js +124 -0
- package/dist/records-v2/OhExternalAuditRecord.d.ts +83 -2
- package/dist/records-v2/OhExternalAuditRecord.js +124 -0
- package/dist/records-v2/OhInProgressAuditRecord.d.ts +83 -2
- package/dist/records-v2/OhInProgressAuditRecord.js +124 -0
- package/dist/records-v2/OhInstallationAuditRecord.d.ts +83 -2
- package/dist/records-v2/OhInstallationAuditRecord.js +124 -0
- package/dist/records-v2/OhRetroAuditRecord.d.ts +83 -2
- package/dist/records-v2/OhRetroAuditRecord.js +124 -0
- package/dist/records-v2/OneTouchSwitchRecord.d.ts +255 -2
- package/dist/records-v2/OneTouchSwitchRecord.js +387 -0
- package/dist/records-v2/OntReplacementApprovalRecord.d.ts +62 -1
- package/dist/records-v2/OntReplacementApprovalRecord.js +91 -0
- package/dist/records-v2/OrderCheckRecord.d.ts +21 -0
- package/dist/records-v2/OrderCheckRecord.js +37 -0
- package/dist/records-v2/OrderItemRecord.d.ts +280 -0
- package/dist/records-v2/OrderItemRecord.js +465 -0
- package/dist/records-v2/OrderRecord.d.ts +540 -0
- package/dist/records-v2/OrderRecord.js +894 -0
- package/dist/records-v2/OutageRecord.d.ts +42 -1
- package/dist/records-v2/OutageRecord.js +58 -0
- package/dist/records-v2/OverlayRealA55Record.d.ts +83 -2
- package/dist/records-v2/OverlayRealA55Record.js +124 -0
- package/dist/records-v2/PICRequestRecord.d.ts +62 -1
- package/dist/records-v2/PICRequestRecord.js +91 -0
- package/dist/records-v2/PaymentMethodRecord.d.ts +121 -0
- package/dist/records-v2/PaymentMethodRecord.js +202 -0
- package/dist/records-v2/PaymentMethodRefundRecord.d.ts +181 -0
- package/dist/records-v2/PaymentMethodRefundRecord.js +301 -0
- package/dist/records-v2/PaymentRecord.d.ts +82 -1
- package/dist/records-v2/PaymentRecord.js +124 -0
- package/dist/records-v2/PermissionToFailRecord.d.ts +61 -0
- package/dist/records-v2/PermissionToFailRecord.js +103 -0
- package/dist/records-v2/PgAccountValidationRecord.d.ts +21 -1
- package/dist/records-v2/PgAccountValidationRecord.js +21 -0
- package/dist/records-v2/PgContactRecord.d.ts +62 -1
- package/dist/records-v2/PgContactRecord.js +91 -0
- package/dist/records-v2/PgDirectDebitFileRecord.d.ts +95 -2
- package/dist/records-v2/PgDirectDebitFileRecord.js +123 -0
- package/dist/records-v2/PgDisputeRecord.d.ts +62 -1
- package/dist/records-v2/PgDisputeRecord.js +91 -0
- package/dist/records-v2/PgFileAllocationRecord.d.ts +115 -2
- package/dist/records-v2/PgFileAllocationRecord.js +156 -0
- package/dist/records-v2/PgLogRecord.d.ts +21 -1
- package/dist/records-v2/PgLogRecord.js +21 -0
- package/dist/records-v2/PgPaymentMethodRecord.d.ts +102 -1
- package/dist/records-v2/PgPaymentMethodRecord.js +157 -0
- package/dist/records-v2/PgSortCodeSubstitutionRecord.d.ts +21 -1
- package/dist/records-v2/PgSortCodeSubstitutionRecord.js +21 -0
- package/dist/records-v2/PgTransactionRecord.d.ts +135 -2
- package/dist/records-v2/PgTransactionRecord.js +189 -0
- package/dist/records-v2/PgVocalinkRecord.d.ts +21 -1
- package/dist/records-v2/PgVocalinkRecord.js +21 -0
- package/dist/records-v2/PgWebhookAttemptRecord.d.ts +42 -1
- package/dist/records-v2/PgWebhookAttemptRecord.js +58 -0
- package/dist/records-v2/PgWebhookRecord.d.ts +122 -1
- package/dist/records-v2/PgWebhookRecord.js +190 -0
- package/dist/records-v2/PriceBookRecord.d.ts +21 -0
- package/dist/records-v2/PriceBookRecord.js +37 -0
- package/dist/records-v2/ProductRecord.d.ts +242 -2
- package/dist/records-v2/ProductRecord.js +335 -0
- package/dist/records-v2/PushNotificationRecord.d.ts +42 -1
- package/dist/records-v2/PushNotificationRecord.js +58 -0
- package/dist/records-v2/ReferralRecord.d.ts +103 -2
- package/dist/records-v2/ReferralRecord.js +157 -0
- package/dist/records-v2/RemediationOutcomeFormRecord.d.ts +83 -2
- package/dist/records-v2/RemediationOutcomeFormRecord.js +124 -0
- package/dist/records-v2/RemediationRequiredReasonRecord.d.ts +103 -2
- package/dist/records-v2/RemediationRequiredReasonRecord.js +157 -0
- package/dist/records-v2/ReturnsRecord.d.ts +62 -1
- package/dist/records-v2/ReturnsRecord.js +91 -0
- package/dist/records-v2/RewardRecord.d.ts +103 -2
- package/dist/records-v2/RewardRecord.js +157 -0
- package/dist/records-v2/SalesTerritoryRecord.d.ts +79 -2
- package/dist/records-v2/SalesTerritoryRecord.js +107 -0
- package/dist/records-v2/ScheduleSlotRecord.d.ts +42 -1
- package/dist/records-v2/ScheduleSlotRecord.js +58 -0
- package/dist/records-v2/ServiceAppointmentConfigRecord.d.ts +287 -2
- package/dist/records-v2/ServiceAppointmentConfigRecord.js +367 -0
- package/dist/records-v2/ServiceAppointmentRecord.d.ts +81 -0
- package/dist/records-v2/ServiceAppointmentRecord.js +136 -0
- package/dist/records-v2/ServiceRecord.d.ts +40 -0
- package/dist/records-v2/ServiceRecord.js +69 -0
- package/dist/records-v2/ServiceVisitAuditRecord.d.ts +83 -2
- package/dist/records-v2/ServiceVisitAuditRecord.js +124 -0
- package/dist/records-v2/SiteSpecificRiskAssessmentOutcomeFormRecord.d.ts +83 -2
- package/dist/records-v2/SiteSpecificRiskAssessmentOutcomeFormRecord.js +124 -0
- package/dist/records-v2/SweeperMaintenanceAuditRecord.d.ts +83 -2
- package/dist/records-v2/SweeperMaintenanceAuditRecord.js +124 -0
- package/dist/records-v2/TeamRecord.d.ts +81 -0
- package/dist/records-v2/TeamRecord.js +136 -0
- package/dist/records-v2/TimeSlotRecord.d.ts +21 -0
- package/dist/records-v2/TimeSlotRecord.js +37 -0
- package/dist/records-v2/TransactionRecord.d.ts +181 -1
- package/dist/records-v2/TransactionRecord.js +288 -0
- package/dist/records-v2/TwilioUserUpdateRecord.d.ts +42 -1
- package/dist/records-v2/TwilioUserUpdateRecord.js +58 -0
- package/dist/records-v2/UgAuditOfInstallationRecord.d.ts +83 -2
- package/dist/records-v2/UgAuditOfInstallationRecord.js +124 -0
- package/dist/records-v2/UgExternalAuditRecord.d.ts +83 -2
- package/dist/records-v2/UgExternalAuditRecord.js +124 -0
- package/dist/records-v2/UgInProgressAuditRecord.d.ts +83 -2
- package/dist/records-v2/UgInProgressAuditRecord.js +124 -0
- package/dist/records-v2/UgInstallationAuditRecord.d.ts +83 -2
- package/dist/records-v2/UgInstallationAuditRecord.js +124 -0
- package/dist/records-v2/UgRetroAuditRecord.d.ts +83 -2
- package/dist/records-v2/UgRetroAuditRecord.js +124 -0
- package/dist/records-v2/UserRecord.d.ts +360 -0
- package/dist/records-v2/UserRecord.js +597 -0
- package/dist/records-v2/VisitRecord.d.ts +121 -0
- package/dist/records-v2/VisitRecord.js +202 -0
- package/dist/records-v2/VoiceConfigurationRecord.d.ts +21 -0
- package/dist/records-v2/VoiceConfigurationRecord.js +37 -0
- package/dist/records-v2/WayleaveAuditRecord.d.ts +83 -2
- package/dist/records-v2/WayleaveAuditRecord.js +124 -0
- package/dist/records-v2/WorkOrderRecord.d.ts +1206 -2
- package/dist/records-v2/WorkOrderRecord.js +1832 -0
- package/dist/records-v2/WorkOrderStatusUpdateRecord.d.ts +75 -2
- package/dist/records-v2/WorkOrderStatusUpdateRecord.js +90 -0
- package/dist/records-v2/YfFieldServiceVisitRecord.d.ts +83 -2
- package/dist/records-v2/YfFieldServiceVisitRecord.js +124 -0
- package/dist/records-v2/YfStockAuditRecord.d.ts +83 -2
- package/dist/records-v2/YfStockAuditRecord.js +124 -0
- package/package.json +1 -1
|
@@ -14,6 +14,8 @@
|
|
|
14
14
|
* await record.createActivityLog({ ... }).execute();
|
|
15
15
|
* ```
|
|
16
16
|
*
|
|
17
|
+
* Entity Types: DEFAULT
|
|
18
|
+
*
|
|
17
19
|
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
18
20
|
*/
|
|
19
21
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -29,6 +31,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
29
31
|
exports.isActivityLogRecord = exports.ActivityLogRecord = void 0;
|
|
30
32
|
const uuid_1 = require("uuid");
|
|
31
33
|
const core_1 = require("@d19n/odin-types/dist/core");
|
|
34
|
+
const record_link_manager_1 = require("@d19n/odin-sdk-generator/dist/record-link-manager");
|
|
35
|
+
const OrderRecord_1 = require("./OrderRecord");
|
|
36
|
+
const CaseRecord_1 = require("./CaseRecord");
|
|
37
|
+
const OneTouchSwitchRecord_1 = require("./OneTouchSwitchRecord");
|
|
38
|
+
const CallRecord_1 = require("./CallRecord");
|
|
39
|
+
const WorkOrderRecord_1 = require("./WorkOrderRecord");
|
|
32
40
|
/**
|
|
33
41
|
* Builder for action execution with dryRun support
|
|
34
42
|
*
|
|
@@ -103,6 +111,175 @@ class ActivityLogRecord {
|
|
|
103
111
|
/** Access the underlying OdinRecord (null for new records) */
|
|
104
112
|
get record() { return this._record; }
|
|
105
113
|
// ============================================
|
|
114
|
+
// TYPE GUARDS (with TypeScript type predicates)
|
|
115
|
+
// ============================================
|
|
116
|
+
/**
|
|
117
|
+
* Type guard: check if this record is of type DEFAULT
|
|
118
|
+
*
|
|
119
|
+
* When this returns true, TypeScript automatically narrows the type,
|
|
120
|
+
* giving you access to DEFAULT-specific properties.
|
|
121
|
+
*
|
|
122
|
+
* @example
|
|
123
|
+
* ```typescript
|
|
124
|
+
* if (record.isDefault()) {
|
|
125
|
+
* // TypeScript knows record.properties is ActivityLogProperties
|
|
126
|
+
* console.log(record.properties.SomeTypeSpecificField);
|
|
127
|
+
* }
|
|
128
|
+
* ```
|
|
129
|
+
* @remarks This is the default record type
|
|
130
|
+
*/
|
|
131
|
+
isDefault() { var _a; return ((_a = this._record) === null || _a === void 0 ? void 0 : _a.type) === 'DEFAULT'; }
|
|
132
|
+
/**
|
|
133
|
+
* Access linked Order records
|
|
134
|
+
* @remarks Available labels: Order__ActivityLog
|
|
135
|
+
* @throws Error if called on a new (unsaved) record
|
|
136
|
+
*
|
|
137
|
+
* @example
|
|
138
|
+
* ```typescript
|
|
139
|
+
* // Get all linked Order records
|
|
140
|
+
* const items = await record.orders.list();
|
|
141
|
+
* const first = await record.orders.first();
|
|
142
|
+
*
|
|
143
|
+
* // Filter by label
|
|
144
|
+
* const specific = await record.orders.first({ label: 'Order__ActivityLog' });
|
|
145
|
+
* ```
|
|
146
|
+
*/
|
|
147
|
+
get orders() {
|
|
148
|
+
var _a;
|
|
149
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
150
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
151
|
+
if (!this._orders) {
|
|
152
|
+
this._orders = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
153
|
+
sourceEntity: 'AuditModule:ActivityLog',
|
|
154
|
+
targetEntity: 'OrderModule:Order',
|
|
155
|
+
targetModuleName: 'OrderModule',
|
|
156
|
+
targetEntityName: 'Order',
|
|
157
|
+
labels: ['Order__ActivityLog'],
|
|
158
|
+
}, OrderRecord_1.OrderRecord);
|
|
159
|
+
}
|
|
160
|
+
return this._orders;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Access linked Case records
|
|
164
|
+
* @remarks Available labels: Case__ActivityLog
|
|
165
|
+
* @throws Error if called on a new (unsaved) record
|
|
166
|
+
*
|
|
167
|
+
* @example
|
|
168
|
+
* ```typescript
|
|
169
|
+
* // Get all linked Case records
|
|
170
|
+
* const items = await record.cases.list();
|
|
171
|
+
* const first = await record.cases.first();
|
|
172
|
+
*
|
|
173
|
+
* // Filter by label
|
|
174
|
+
* const specific = await record.cases.first({ label: 'Case__ActivityLog' });
|
|
175
|
+
* ```
|
|
176
|
+
*/
|
|
177
|
+
get cases() {
|
|
178
|
+
var _a;
|
|
179
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
180
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
181
|
+
if (!this._cases) {
|
|
182
|
+
this._cases = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
183
|
+
sourceEntity: 'AuditModule:ActivityLog',
|
|
184
|
+
targetEntity: 'SupportModule:Case',
|
|
185
|
+
targetModuleName: 'SupportModule',
|
|
186
|
+
targetEntityName: 'Case',
|
|
187
|
+
labels: ['Case__ActivityLog'],
|
|
188
|
+
}, CaseRecord_1.CaseRecord);
|
|
189
|
+
}
|
|
190
|
+
return this._cases;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Access linked OneTouchSwitch records
|
|
194
|
+
* @remarks Available labels: OneTouchSwitch_ActivityLog
|
|
195
|
+
* @throws Error if called on a new (unsaved) record
|
|
196
|
+
*
|
|
197
|
+
* @example
|
|
198
|
+
* ```typescript
|
|
199
|
+
* // Get all linked OneTouchSwitch records
|
|
200
|
+
* const items = await record.oneTouchSwitches.list();
|
|
201
|
+
* const first = await record.oneTouchSwitches.first();
|
|
202
|
+
*
|
|
203
|
+
* // Filter by label
|
|
204
|
+
* const specific = await record.oneTouchSwitches.first({ label: 'OneTouchSwitch_ActivityLog' });
|
|
205
|
+
* ```
|
|
206
|
+
*/
|
|
207
|
+
get oneTouchSwitches() {
|
|
208
|
+
var _a;
|
|
209
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
210
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
211
|
+
if (!this._oneTouchSwitches) {
|
|
212
|
+
this._oneTouchSwitches = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
213
|
+
sourceEntity: 'AuditModule:ActivityLog',
|
|
214
|
+
targetEntity: 'OrderModule:OneTouchSwitch',
|
|
215
|
+
targetModuleName: 'OrderModule',
|
|
216
|
+
targetEntityName: 'OneTouchSwitch',
|
|
217
|
+
labels: ['OneTouchSwitch_ActivityLog'],
|
|
218
|
+
}, OneTouchSwitchRecord_1.OneTouchSwitchRecord);
|
|
219
|
+
}
|
|
220
|
+
return this._oneTouchSwitches;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Access linked Call records
|
|
224
|
+
* @remarks Available labels: CallActivity
|
|
225
|
+
* @throws Error if called on a new (unsaved) record
|
|
226
|
+
*
|
|
227
|
+
* @example
|
|
228
|
+
* ```typescript
|
|
229
|
+
* // Get all linked Call records
|
|
230
|
+
* const items = await record.calls.list();
|
|
231
|
+
* const first = await record.calls.first();
|
|
232
|
+
*
|
|
233
|
+
* // Filter by label
|
|
234
|
+
* const specific = await record.calls.first({ label: 'CallActivity' });
|
|
235
|
+
* ```
|
|
236
|
+
*/
|
|
237
|
+
get calls() {
|
|
238
|
+
var _a;
|
|
239
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
240
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
241
|
+
if (!this._calls) {
|
|
242
|
+
this._calls = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
243
|
+
sourceEntity: 'AuditModule:ActivityLog',
|
|
244
|
+
targetEntity: 'NotificationModule:Call',
|
|
245
|
+
targetModuleName: 'NotificationModule',
|
|
246
|
+
targetEntityName: 'Call',
|
|
247
|
+
labels: ['CallActivity'],
|
|
248
|
+
}, CallRecord_1.CallRecord);
|
|
249
|
+
}
|
|
250
|
+
return this._calls;
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Access linked WorkOrder records
|
|
254
|
+
* @remarks Available labels: WorkOrder_ActivityLog
|
|
255
|
+
* @throws Error if called on a new (unsaved) record
|
|
256
|
+
*
|
|
257
|
+
* @example
|
|
258
|
+
* ```typescript
|
|
259
|
+
* // Get all linked WorkOrder records
|
|
260
|
+
* const items = await record.workOrders.list();
|
|
261
|
+
* const first = await record.workOrders.first();
|
|
262
|
+
*
|
|
263
|
+
* // Filter by label
|
|
264
|
+
* const specific = await record.workOrders.first({ label: 'WorkOrder_ActivityLog' });
|
|
265
|
+
* ```
|
|
266
|
+
*/
|
|
267
|
+
get workOrders() {
|
|
268
|
+
var _a;
|
|
269
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
270
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
271
|
+
if (!this._workOrders) {
|
|
272
|
+
this._workOrders = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
273
|
+
sourceEntity: 'AuditModule:ActivityLog',
|
|
274
|
+
targetEntity: 'FieldServiceModule:WorkOrder',
|
|
275
|
+
targetModuleName: 'FieldServiceModule',
|
|
276
|
+
targetEntityName: 'WorkOrder',
|
|
277
|
+
labels: ['WorkOrder_ActivityLog'],
|
|
278
|
+
}, WorkOrderRecord_1.WorkOrderRecord);
|
|
279
|
+
}
|
|
280
|
+
return this._workOrders;
|
|
281
|
+
}
|
|
282
|
+
// ============================================
|
|
106
283
|
// LINK MANAGEMENT
|
|
107
284
|
// ============================================
|
|
108
285
|
/**
|
|
@@ -178,6 +355,19 @@ class ActivityLogRecord {
|
|
|
178
355
|
}
|
|
179
356
|
}
|
|
180
357
|
exports.ActivityLogRecord = ActivityLogRecord;
|
|
358
|
+
// ============================================
|
|
359
|
+
// TYPED LINK ACCESSORS
|
|
360
|
+
// ============================================
|
|
361
|
+
/** Valid labels for Order associations */
|
|
362
|
+
ActivityLogRecord.ordersLabels = ['Order__ActivityLog'];
|
|
363
|
+
/** Valid labels for Case associations */
|
|
364
|
+
ActivityLogRecord.casesLabels = ['Case__ActivityLog'];
|
|
365
|
+
/** Valid labels for OneTouchSwitch associations */
|
|
366
|
+
ActivityLogRecord.oneTouchSwitchesLabels = ['OneTouchSwitch_ActivityLog'];
|
|
367
|
+
/** Valid labels for Call associations */
|
|
368
|
+
ActivityLogRecord.callsLabels = ['CallActivity'];
|
|
369
|
+
/** Valid labels for WorkOrder associations */
|
|
370
|
+
ActivityLogRecord.workOrdersLabels = ['WorkOrder_ActivityLog'];
|
|
181
371
|
/** Type guard to check if an object is a ActivityLogRecord */
|
|
182
372
|
function isActivityLogRecord(obj) {
|
|
183
373
|
return obj instanceof ActivityLogRecord;
|
|
@@ -13,15 +13,30 @@
|
|
|
13
13
|
* await record.createActivity({ ... }).execute();
|
|
14
14
|
* ```
|
|
15
15
|
*
|
|
16
|
+
* Entity Types: EVENT, NOTIFICATION, TASK
|
|
17
|
+
*
|
|
16
18
|
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
17
19
|
*/
|
|
18
20
|
import { OdinRecord, OdinRecordLinkDto } from '@d19n/odin-types/dist/core';
|
|
19
21
|
import { PipelineStageEntity } from '@d19n/odin-types/dist/core';
|
|
20
22
|
import { IDbRecordCreateUpdateRes } from '@d19n/odin-types/dist/core/interfaces/v1.db.interfaces';
|
|
21
23
|
import { IOdinProvider } from '@d19n/odin-sdk-generator/dist/odin-sdk-types';
|
|
22
|
-
import {
|
|
24
|
+
import { RecordLinkManager } from '@d19n/odin-sdk-generator/dist/record-link-manager';
|
|
25
|
+
import { ActivityProperties, EventActivityProperties, NotificationActivityProperties, TaskActivityProperties } from '../entities-v2/Activity';
|
|
23
26
|
import { CreateFinalNoticeActivityProperties } from '../actions-v2/CreateFinalNoticeActivityDto';
|
|
24
27
|
import { UpdateActivityDateProperties } from '../actions-v2/UpdateActivityDateDto';
|
|
28
|
+
import { ContactRecord } from './ContactRecord';
|
|
29
|
+
import { NoteRecord } from './NoteRecord';
|
|
30
|
+
import { OneTouchSwitchRecord } from './OneTouchSwitchRecord';
|
|
31
|
+
import { BillingRequestRecord } from './BillingRequestRecord';
|
|
32
|
+
import { OrderItemRecord } from './OrderItemRecord';
|
|
33
|
+
import { FileRecord } from './FileRecord';
|
|
34
|
+
import { CustomerDeviceOntRecord } from './CustomerDeviceOntRecord';
|
|
35
|
+
import { PaymentMethodRefundRecord } from './PaymentMethodRefundRecord';
|
|
36
|
+
import { WorkOrderRecord } from './WorkOrderRecord';
|
|
37
|
+
import { OrderRecord } from './OrderRecord';
|
|
38
|
+
/** Valid entity types for Activity */
|
|
39
|
+
export declare type ActivityType = 'EVENT' | 'NOTIFICATION' | 'TASK';
|
|
25
40
|
/**
|
|
26
41
|
* Builder for action execution with dryRun support
|
|
27
42
|
*
|
|
@@ -58,6 +73,16 @@ export declare class ActivityRecord<TProps = ActivityProperties> {
|
|
|
58
73
|
private _provider;
|
|
59
74
|
private _pendingLinks;
|
|
60
75
|
private _preGeneratedId;
|
|
76
|
+
private _contacts?;
|
|
77
|
+
private _notes?;
|
|
78
|
+
private _oneTouchSwitches?;
|
|
79
|
+
private _billingRequests?;
|
|
80
|
+
private _orderItems?;
|
|
81
|
+
private _files?;
|
|
82
|
+
private _customerDeviceOnts?;
|
|
83
|
+
private _paymentMethodRefunds?;
|
|
84
|
+
private _workOrders?;
|
|
85
|
+
private _orders?;
|
|
61
86
|
/**
|
|
62
87
|
* Create a record wrapper.
|
|
63
88
|
* @param record - The underlying record, or null for create operations
|
|
@@ -70,7 +95,7 @@ export declare class ActivityRecord<TProps = ActivityProperties> {
|
|
|
70
95
|
/** Record ID - always available (pre-generated for new records) */
|
|
71
96
|
get id(): string;
|
|
72
97
|
get entity(): string;
|
|
73
|
-
get type():
|
|
98
|
+
get type(): ActivityType | undefined;
|
|
74
99
|
/** Record properties - empty object for new (unsaved) records */
|
|
75
100
|
get properties(): TProps;
|
|
76
101
|
get title(): string | undefined;
|
|
@@ -80,6 +105,234 @@ export declare class ActivityRecord<TProps = ActivityProperties> {
|
|
|
80
105
|
get updatedAt(): string | undefined;
|
|
81
106
|
/** Access the underlying OdinRecord (null for new records) */
|
|
82
107
|
get record(): OdinRecord<TProps> | null;
|
|
108
|
+
/**
|
|
109
|
+
* Type guard: check if this record is of type EVENT
|
|
110
|
+
*
|
|
111
|
+
* When this returns true, TypeScript automatically narrows the type,
|
|
112
|
+
* giving you access to EVENT-specific properties.
|
|
113
|
+
*
|
|
114
|
+
* @example
|
|
115
|
+
* ```typescript
|
|
116
|
+
* if (record.isEvent()) {
|
|
117
|
+
* // TypeScript knows record.properties is EventActivityProperties
|
|
118
|
+
* console.log(record.properties.SomeTypeSpecificField);
|
|
119
|
+
* }
|
|
120
|
+
* ```
|
|
121
|
+
* @remarks General Events
|
|
122
|
+
*/
|
|
123
|
+
isEvent(): this is ActivityRecord<EventActivityProperties>;
|
|
124
|
+
/**
|
|
125
|
+
* Type guard: check if this record is of type NOTIFICATION
|
|
126
|
+
*
|
|
127
|
+
* When this returns true, TypeScript automatically narrows the type,
|
|
128
|
+
* giving you access to NOTIFICATION-specific properties.
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* ```typescript
|
|
132
|
+
* if (record.isNotification()) {
|
|
133
|
+
* // TypeScript knows record.properties is NotificationActivityProperties
|
|
134
|
+
* console.log(record.properties.SomeTypeSpecificField);
|
|
135
|
+
* }
|
|
136
|
+
* ```
|
|
137
|
+
* @remarks track notification activities
|
|
138
|
+
*/
|
|
139
|
+
isNotification(): this is ActivityRecord<NotificationActivityProperties>;
|
|
140
|
+
/**
|
|
141
|
+
* Type guard: check if this record is of type TASK
|
|
142
|
+
*
|
|
143
|
+
* When this returns true, TypeScript automatically narrows the type,
|
|
144
|
+
* giving you access to TASK-specific properties.
|
|
145
|
+
*
|
|
146
|
+
* @example
|
|
147
|
+
* ```typescript
|
|
148
|
+
* if (record.isTask()) {
|
|
149
|
+
* // TypeScript knows record.properties is TaskActivityProperties
|
|
150
|
+
* console.log(record.properties.SomeTypeSpecificField);
|
|
151
|
+
* }
|
|
152
|
+
* ```
|
|
153
|
+
* @remarks task activity tracks if an activity is resolved
|
|
154
|
+
*/
|
|
155
|
+
isTask(): this is ActivityRecord<TaskActivityProperties>;
|
|
156
|
+
/** Valid labels for Contact associations */
|
|
157
|
+
static readonly contactsLabels: readonly ["Contact__Activity"];
|
|
158
|
+
/**
|
|
159
|
+
* Access linked Contact records
|
|
160
|
+
* @remarks Available labels: Contact__Activity
|
|
161
|
+
* @throws Error if called on a new (unsaved) record
|
|
162
|
+
*
|
|
163
|
+
* @example
|
|
164
|
+
* ```typescript
|
|
165
|
+
* // Get all linked Contact records
|
|
166
|
+
* const items = await record.contacts.list();
|
|
167
|
+
* const first = await record.contacts.first();
|
|
168
|
+
*
|
|
169
|
+
* // Filter by label
|
|
170
|
+
* const specific = await record.contacts.first({ label: 'Contact__Activity' });
|
|
171
|
+
* ```
|
|
172
|
+
*/
|
|
173
|
+
get contacts(): RecordLinkManager<ContactRecord, typeof ActivityRecord['contactsLabels'][number]>;
|
|
174
|
+
/** Valid labels for Note associations */
|
|
175
|
+
static readonly notesLabels: readonly ["Activity__Note"];
|
|
176
|
+
/**
|
|
177
|
+
* Access linked Note records
|
|
178
|
+
* @remarks Available labels: Activity__Note
|
|
179
|
+
* @throws Error if called on a new (unsaved) record
|
|
180
|
+
*
|
|
181
|
+
* @example
|
|
182
|
+
* ```typescript
|
|
183
|
+
* // Get all linked Note records
|
|
184
|
+
* const items = await record.notes.list();
|
|
185
|
+
* const first = await record.notes.first();
|
|
186
|
+
*
|
|
187
|
+
* // Filter by label
|
|
188
|
+
* const specific = await record.notes.first({ label: 'Activity__Note' });
|
|
189
|
+
* ```
|
|
190
|
+
*/
|
|
191
|
+
get notes(): RecordLinkManager<NoteRecord, typeof ActivityRecord['notesLabels'][number]>;
|
|
192
|
+
/** Valid labels for OneTouchSwitch associations */
|
|
193
|
+
static readonly oneTouchSwitchesLabels: readonly ["OneTouchSwitch__Activity"];
|
|
194
|
+
/**
|
|
195
|
+
* Access linked OneTouchSwitch records
|
|
196
|
+
* @remarks Available labels: OneTouchSwitch__Activity
|
|
197
|
+
* @throws Error if called on a new (unsaved) record
|
|
198
|
+
*
|
|
199
|
+
* @example
|
|
200
|
+
* ```typescript
|
|
201
|
+
* // Get all linked OneTouchSwitch records
|
|
202
|
+
* const items = await record.oneTouchSwitches.list();
|
|
203
|
+
* const first = await record.oneTouchSwitches.first();
|
|
204
|
+
*
|
|
205
|
+
* // Filter by label
|
|
206
|
+
* const specific = await record.oneTouchSwitches.first({ label: 'OneTouchSwitch__Activity' });
|
|
207
|
+
* ```
|
|
208
|
+
*/
|
|
209
|
+
get oneTouchSwitches(): RecordLinkManager<OneTouchSwitchRecord, typeof ActivityRecord['oneTouchSwitchesLabels'][number]>;
|
|
210
|
+
/** Valid labels for BillingRequest associations */
|
|
211
|
+
static readonly billingRequestsLabels: readonly ["BillingRequest__Activity"];
|
|
212
|
+
/**
|
|
213
|
+
* Access linked BillingRequest records
|
|
214
|
+
* @remarks Available labels: BillingRequest__Activity
|
|
215
|
+
* @throws Error if called on a new (unsaved) record
|
|
216
|
+
*
|
|
217
|
+
* @example
|
|
218
|
+
* ```typescript
|
|
219
|
+
* // Get all linked BillingRequest records
|
|
220
|
+
* const items = await record.billingRequests.list();
|
|
221
|
+
* const first = await record.billingRequests.first();
|
|
222
|
+
*
|
|
223
|
+
* // Filter by label
|
|
224
|
+
* const specific = await record.billingRequests.first({ label: 'BillingRequest__Activity' });
|
|
225
|
+
* ```
|
|
226
|
+
*/
|
|
227
|
+
get billingRequests(): RecordLinkManager<BillingRequestRecord, typeof ActivityRecord['billingRequestsLabels'][number]>;
|
|
228
|
+
/** Valid labels for OrderItem associations */
|
|
229
|
+
static readonly orderItemsLabels: readonly ["OrderItem__Activity"];
|
|
230
|
+
/**
|
|
231
|
+
* Access linked OrderItem records
|
|
232
|
+
* @remarks Available labels: OrderItem__Activity
|
|
233
|
+
* @throws Error if called on a new (unsaved) record
|
|
234
|
+
*
|
|
235
|
+
* @example
|
|
236
|
+
* ```typescript
|
|
237
|
+
* // Get all linked OrderItem records
|
|
238
|
+
* const items = await record.orderItems.list();
|
|
239
|
+
* const first = await record.orderItems.first();
|
|
240
|
+
*
|
|
241
|
+
* // Filter by label
|
|
242
|
+
* const specific = await record.orderItems.first({ label: 'OrderItem__Activity' });
|
|
243
|
+
* ```
|
|
244
|
+
*/
|
|
245
|
+
get orderItems(): RecordLinkManager<OrderItemRecord, typeof ActivityRecord['orderItemsLabels'][number]>;
|
|
246
|
+
/** Valid labels for File associations */
|
|
247
|
+
static readonly filesLabels: readonly ["Activity__File"];
|
|
248
|
+
/**
|
|
249
|
+
* Access linked File records
|
|
250
|
+
* @remarks Available labels: Activity__File
|
|
251
|
+
* @throws Error if called on a new (unsaved) record
|
|
252
|
+
*
|
|
253
|
+
* @example
|
|
254
|
+
* ```typescript
|
|
255
|
+
* // Get all linked File records
|
|
256
|
+
* const items = await record.files.list();
|
|
257
|
+
* const first = await record.files.first();
|
|
258
|
+
*
|
|
259
|
+
* // Filter by label
|
|
260
|
+
* const specific = await record.files.first({ label: 'Activity__File' });
|
|
261
|
+
* ```
|
|
262
|
+
*/
|
|
263
|
+
get files(): RecordLinkManager<FileRecord, typeof ActivityRecord['filesLabels'][number]>;
|
|
264
|
+
/** Valid labels for CustomerDeviceOnt associations */
|
|
265
|
+
static readonly customerDeviceOntsLabels: readonly ["CustomerDeviceOnt__Activity"];
|
|
266
|
+
/**
|
|
267
|
+
* Access linked CustomerDeviceOnt records
|
|
268
|
+
* @remarks Available labels: CustomerDeviceOnt__Activity
|
|
269
|
+
* @throws Error if called on a new (unsaved) record
|
|
270
|
+
*
|
|
271
|
+
* @example
|
|
272
|
+
* ```typescript
|
|
273
|
+
* // Get all linked CustomerDeviceOnt records
|
|
274
|
+
* const items = await record.customerDeviceOnts.list();
|
|
275
|
+
* const first = await record.customerDeviceOnts.first();
|
|
276
|
+
*
|
|
277
|
+
* // Filter by label
|
|
278
|
+
* const specific = await record.customerDeviceOnts.first({ label: 'CustomerDeviceOnt__Activity' });
|
|
279
|
+
* ```
|
|
280
|
+
*/
|
|
281
|
+
get customerDeviceOnts(): RecordLinkManager<CustomerDeviceOntRecord, typeof ActivityRecord['customerDeviceOntsLabels'][number]>;
|
|
282
|
+
/** Valid labels for PaymentMethodRefund associations */
|
|
283
|
+
static readonly paymentMethodRefundsLabels: readonly ["PaymentMethodRefund__Activity"];
|
|
284
|
+
/**
|
|
285
|
+
* Access linked PaymentMethodRefund records
|
|
286
|
+
* @remarks Available labels: PaymentMethodRefund__Activity
|
|
287
|
+
* @throws Error if called on a new (unsaved) record
|
|
288
|
+
*
|
|
289
|
+
* @example
|
|
290
|
+
* ```typescript
|
|
291
|
+
* // Get all linked PaymentMethodRefund records
|
|
292
|
+
* const items = await record.paymentMethodRefunds.list();
|
|
293
|
+
* const first = await record.paymentMethodRefunds.first();
|
|
294
|
+
*
|
|
295
|
+
* // Filter by label
|
|
296
|
+
* const specific = await record.paymentMethodRefunds.first({ label: 'PaymentMethodRefund__Activity' });
|
|
297
|
+
* ```
|
|
298
|
+
*/
|
|
299
|
+
get paymentMethodRefunds(): RecordLinkManager<PaymentMethodRefundRecord, typeof ActivityRecord['paymentMethodRefundsLabels'][number]>;
|
|
300
|
+
/** Valid labels for WorkOrder associations */
|
|
301
|
+
static readonly workOrdersLabels: readonly ["WorkOrder__Activity"];
|
|
302
|
+
/**
|
|
303
|
+
* Access linked WorkOrder records
|
|
304
|
+
* @remarks Available labels: WorkOrder__Activity
|
|
305
|
+
* @throws Error if called on a new (unsaved) record
|
|
306
|
+
*
|
|
307
|
+
* @example
|
|
308
|
+
* ```typescript
|
|
309
|
+
* // Get all linked WorkOrder records
|
|
310
|
+
* const items = await record.workOrders.list();
|
|
311
|
+
* const first = await record.workOrders.first();
|
|
312
|
+
*
|
|
313
|
+
* // Filter by label
|
|
314
|
+
* const specific = await record.workOrders.first({ label: 'WorkOrder__Activity' });
|
|
315
|
+
* ```
|
|
316
|
+
*/
|
|
317
|
+
get workOrders(): RecordLinkManager<WorkOrderRecord, typeof ActivityRecord['workOrdersLabels'][number]>;
|
|
318
|
+
/** Valid labels for Order associations */
|
|
319
|
+
static readonly ordersLabels: readonly ["Order__Activity"];
|
|
320
|
+
/**
|
|
321
|
+
* Access linked Order records
|
|
322
|
+
* @remarks Available labels: Order__Activity
|
|
323
|
+
* @throws Error if called on a new (unsaved) record
|
|
324
|
+
*
|
|
325
|
+
* @example
|
|
326
|
+
* ```typescript
|
|
327
|
+
* // Get all linked Order records
|
|
328
|
+
* const items = await record.orders.list();
|
|
329
|
+
* const first = await record.orders.first();
|
|
330
|
+
*
|
|
331
|
+
* // Filter by label
|
|
332
|
+
* const specific = await record.orders.first({ label: 'Order__Activity' });
|
|
333
|
+
* ```
|
|
334
|
+
*/
|
|
335
|
+
get orders(): RecordLinkManager<OrderRecord, typeof ActivityRecord['ordersLabels'][number]>;
|
|
83
336
|
/**
|
|
84
337
|
* Queue a link to be created with the next action.
|
|
85
338
|
* Works for both create and update actions.
|