@d19n/youfibre-odin-sdk 2.0.13-beta.1 → 2.0.13
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 +11 -10
- package/dist/actions-v2/CreateOrderFromBrskDto.d.ts +75 -0
- package/dist/actions-v2/CreateOrderItemFromBrskDto.d.ts +191 -0
- package/dist/actions-v2/CreateOrderItemFromBrskDto.js +52 -0
- package/dist/entities-v2/Order.d.ts +7 -0
- package/dist/entities-v2/Order.js +2 -0
- package/dist/entities-v2/OrderItem.d.ts +7 -0
- package/dist/entities-v2/OrderItem.js +2 -0
- package/dist/entities-v2/Product.d.ts +0 -42
- package/dist/entities-v2/Product.js +0 -2
- package/dist/records-v2/AccountCreditRecord.d.ts +62 -1
- package/dist/records-v2/AccountCreditRecord.js +91 -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/BrskEntityMigrationErrorRecord.d.ts +21 -1
- package/dist/records-v2/BrskEntityMigrationErrorRecord.js +21 -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 +418 -2
- package/dist/records-v2/CaseRecord.js +667 -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 +560 -0
- package/dist/records-v2/ContactRecord.js +927 -0
- package/dist/records-v2/ContractBuyOutRecord.d.ts +162 -1
- package/dist/records-v2/ContractBuyOutRecord.js +256 -0
- package/dist/records-v2/ConversationFeedbackRecord.d.ts +102 -1
- package/dist/records-v2/ConversationFeedbackRecord.js +157 -0
- package/dist/records-v2/ConversationRecord.d.ts +102 -1
- package/dist/records-v2/ConversationRecord.js +157 -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/CustomerDeviceConfigurationRecord.d.ts +62 -1
- package/dist/records-v2/CustomerDeviceConfigurationRecord.js +91 -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 +230 -2
- package/dist/records-v2/EmailRecord.js +336 -0
- package/dist/records-v2/EmailSenderRecord.d.ts +42 -1
- package/dist/records-v2/EmailSenderRecord.js +58 -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 +1211 -2
- package/dist/records-v2/FileRecord.js +1902 -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 +399 -2
- package/dist/records-v2/InvoiceRecord.js +635 -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 +99 -2
- package/dist/records-v2/MessageRecord.js +140 -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 +1121 -1
- package/dist/records-v2/NoteRecord.js +1839 -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 +309 -0
- package/dist/records-v2/OrderItemRecord.js +501 -0
- package/dist/records-v2/OrderKciRecord.d.ts +42 -1
- package/dist/records-v2/OrderKciRecord.js +58 -0
- package/dist/records-v2/OrderRecord.d.ts +620 -0
- package/dist/records-v2/OrderRecord.js +1026 -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/PhoneNumberRecord.d.ts +41 -0
- package/dist/records-v2/PhoneNumberRecord.js +70 -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 +258 -2
- package/dist/records-v2/ProductRecord.js +351 -0
- package/dist/records-v2/PushNotificationRecord.d.ts +162 -1
- package/dist/records-v2/PushNotificationRecord.js +256 -0
- package/dist/records-v2/ReferralRecord.d.ts +143 -2
- package/dist/records-v2/ReferralRecord.js +223 -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 +123 -2
- package/dist/records-v2/RewardRecord.js +190 -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/SmsMessageRecord.d.ts +175 -2
- package/dist/records-v2/SmsMessageRecord.js +255 -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 +101 -0
- package/dist/records-v2/TeamRecord.js +169 -0
- package/dist/records-v2/TestEntityForVisualBuilderRecord.d.ts +115 -2
- package/dist/records-v2/TestEntityForVisualBuilderRecord.js +156 -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 +400 -0
- package/dist/records-v2/UserRecord.js +663 -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 +1226 -2
- package/dist/records-v2/WorkOrderRecord.js +1865 -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 +103 -2
- package/dist/records-v2/YfStockAuditRecord.js +157 -0
- package/dist/records-v2/index.d.ts +1 -1
- package/dist/records-v2/index.js +5 -5
- package/package.json +1 -1
|
@@ -29,6 +29,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
29
29
|
exports.isOrderItemRecord = exports.OrderItemRecord = void 0;
|
|
30
30
|
const uuid_1 = require("uuid");
|
|
31
31
|
const core_1 = require("@d19n/odin-types/dist/core");
|
|
32
|
+
const record_link_manager_1 = require("@d19n/odin-sdk-generator/dist/record-link-manager");
|
|
33
|
+
const CustomerDeviceRouterRecord_1 = require("./CustomerDeviceRouterRecord");
|
|
34
|
+
const CustomerDeviceAtaRecord_1 = require("./CustomerDeviceAtaRecord");
|
|
35
|
+
const OrderRecord_1 = require("./OrderRecord");
|
|
36
|
+
const VoiceConfigurationRecord_1 = require("./VoiceConfigurationRecord");
|
|
37
|
+
const NoteRecord_1 = require("./NoteRecord");
|
|
38
|
+
const CustomerDeviceOntRecord_1 = require("./CustomerDeviceOntRecord");
|
|
39
|
+
const OneTouchSwitchRecord_1 = require("./OneTouchSwitchRecord");
|
|
40
|
+
const ActivityRecord_1 = require("./ActivityRecord");
|
|
41
|
+
const WorkOrderRecord_1 = require("./WorkOrderRecord");
|
|
42
|
+
const CustomerPhonePortingRecord_1 = require("./CustomerPhonePortingRecord");
|
|
43
|
+
const ProductRecord_1 = require("./ProductRecord");
|
|
44
|
+
const FileRecord_1 = require("./FileRecord");
|
|
45
|
+
const OfferRecord_1 = require("./OfferRecord");
|
|
32
46
|
/**
|
|
33
47
|
* Builder for action execution with dryRun support
|
|
34
48
|
*
|
|
@@ -139,6 +153,426 @@ class OrderItemRecord {
|
|
|
139
153
|
get groups() { var _a; return ((_a = this._record) === null || _a === void 0 ? void 0 : _a.groups) || []; }
|
|
140
154
|
/** Access the underlying OdinRecord (null for new records) */
|
|
141
155
|
get record() { return this._record; }
|
|
156
|
+
/**
|
|
157
|
+
* Access linked CustomerDeviceRouter records
|
|
158
|
+
* @remarks Available labels: OrderItem__CustomerDeviceRouter
|
|
159
|
+
* @throws Error if called on a new (unsaved) record
|
|
160
|
+
*
|
|
161
|
+
* @example
|
|
162
|
+
* ```typescript
|
|
163
|
+
* // Get all linked CustomerDeviceRouter records
|
|
164
|
+
* const items = await record.customerDeviceRouters.list();
|
|
165
|
+
* const first = await record.customerDeviceRouters.first();
|
|
166
|
+
*
|
|
167
|
+
* // Filter by label
|
|
168
|
+
* const specific = await record.customerDeviceRouters.first({ label: 'OrderItem__CustomerDeviceRouter' });
|
|
169
|
+
* ```
|
|
170
|
+
*/
|
|
171
|
+
get customerDeviceRouters() {
|
|
172
|
+
var _a;
|
|
173
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
174
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
175
|
+
if (!this._customerDeviceRouters) {
|
|
176
|
+
this._customerDeviceRouters = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
177
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
178
|
+
targetEntity: 'ServiceModule:CustomerDeviceRouter',
|
|
179
|
+
targetModuleName: 'ServiceModule',
|
|
180
|
+
targetEntityName: 'CustomerDeviceRouter',
|
|
181
|
+
labels: ['OrderItem__CustomerDeviceRouter'],
|
|
182
|
+
}, CustomerDeviceRouterRecord_1.CustomerDeviceRouterRecord);
|
|
183
|
+
}
|
|
184
|
+
return this._customerDeviceRouters;
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Access linked CustomerDeviceAta records
|
|
188
|
+
* @remarks Available labels: OrderItem__CustomerDeviceAta
|
|
189
|
+
* @throws Error if called on a new (unsaved) record
|
|
190
|
+
*
|
|
191
|
+
* @example
|
|
192
|
+
* ```typescript
|
|
193
|
+
* // Get all linked CustomerDeviceAta records
|
|
194
|
+
* const items = await record.customerDeviceAtas.list();
|
|
195
|
+
* const first = await record.customerDeviceAtas.first();
|
|
196
|
+
*
|
|
197
|
+
* // Filter by label
|
|
198
|
+
* const specific = await record.customerDeviceAtas.first({ label: 'OrderItem__CustomerDeviceAta' });
|
|
199
|
+
* ```
|
|
200
|
+
*/
|
|
201
|
+
get customerDeviceAtas() {
|
|
202
|
+
var _a;
|
|
203
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
204
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
205
|
+
if (!this._customerDeviceAtas) {
|
|
206
|
+
this._customerDeviceAtas = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
207
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
208
|
+
targetEntity: 'ServiceModule:CustomerDeviceAta',
|
|
209
|
+
targetModuleName: 'ServiceModule',
|
|
210
|
+
targetEntityName: 'CustomerDeviceAta',
|
|
211
|
+
labels: ['OrderItem__CustomerDeviceAta'],
|
|
212
|
+
}, CustomerDeviceAtaRecord_1.CustomerDeviceAtaRecord);
|
|
213
|
+
}
|
|
214
|
+
return this._customerDeviceAtas;
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Access linked Order records
|
|
218
|
+
* @remarks Available labels: Order_OrderItem
|
|
219
|
+
* @throws Error if called on a new (unsaved) record
|
|
220
|
+
*
|
|
221
|
+
* @example
|
|
222
|
+
* ```typescript
|
|
223
|
+
* // Get all linked Order records
|
|
224
|
+
* const items = await record.orders.list();
|
|
225
|
+
* const first = await record.orders.first();
|
|
226
|
+
*
|
|
227
|
+
* // Filter by label
|
|
228
|
+
* const specific = await record.orders.first({ label: 'Order_OrderItem' });
|
|
229
|
+
* ```
|
|
230
|
+
*/
|
|
231
|
+
get orders() {
|
|
232
|
+
var _a;
|
|
233
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
234
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
235
|
+
if (!this._orders) {
|
|
236
|
+
this._orders = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
237
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
238
|
+
targetEntity: 'OrderModule:Order',
|
|
239
|
+
targetModuleName: 'OrderModule',
|
|
240
|
+
targetEntityName: 'Order',
|
|
241
|
+
labels: ['Order_OrderItem'],
|
|
242
|
+
}, OrderRecord_1.OrderRecord);
|
|
243
|
+
}
|
|
244
|
+
return this._orders;
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Access linked OrderItem records
|
|
248
|
+
* @remarks Available labels: OrderItem__OrderItem
|
|
249
|
+
* @throws Error if called on a new (unsaved) record
|
|
250
|
+
*
|
|
251
|
+
* @example
|
|
252
|
+
* ```typescript
|
|
253
|
+
* // Get all linked OrderItem records
|
|
254
|
+
* const items = await record.orderItems.list();
|
|
255
|
+
* const first = await record.orderItems.first();
|
|
256
|
+
*
|
|
257
|
+
* // Filter by label
|
|
258
|
+
* const specific = await record.orderItems.first({ label: 'OrderItem__OrderItem' });
|
|
259
|
+
* ```
|
|
260
|
+
*/
|
|
261
|
+
get orderItems() {
|
|
262
|
+
var _a;
|
|
263
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
264
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
265
|
+
if (!this._orderItems) {
|
|
266
|
+
this._orderItems = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
267
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
268
|
+
targetEntity: 'OrderModule:OrderItem',
|
|
269
|
+
targetModuleName: 'OrderModule',
|
|
270
|
+
targetEntityName: 'OrderItem',
|
|
271
|
+
labels: ['OrderItem__OrderItem'],
|
|
272
|
+
}, OrderItemRecord);
|
|
273
|
+
}
|
|
274
|
+
return this._orderItems;
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Access linked VoiceConfiguration records
|
|
278
|
+
* @remarks Available labels: OrderItem__VoiceConfiguration
|
|
279
|
+
* @throws Error if called on a new (unsaved) record
|
|
280
|
+
*
|
|
281
|
+
* @example
|
|
282
|
+
* ```typescript
|
|
283
|
+
* // Get all linked VoiceConfiguration records
|
|
284
|
+
* const items = await record.voiceConfigurations.list();
|
|
285
|
+
* const first = await record.voiceConfigurations.first();
|
|
286
|
+
*
|
|
287
|
+
* // Filter by label
|
|
288
|
+
* const specific = await record.voiceConfigurations.first({ label: 'OrderItem__VoiceConfiguration' });
|
|
289
|
+
* ```
|
|
290
|
+
*/
|
|
291
|
+
get voiceConfigurations() {
|
|
292
|
+
var _a;
|
|
293
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
294
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
295
|
+
if (!this._voiceConfigurations) {
|
|
296
|
+
this._voiceConfigurations = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
297
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
298
|
+
targetEntity: 'ServiceModule:VoiceConfiguration',
|
|
299
|
+
targetModuleName: 'ServiceModule',
|
|
300
|
+
targetEntityName: 'VoiceConfiguration',
|
|
301
|
+
labels: ['OrderItem__VoiceConfiguration'],
|
|
302
|
+
}, VoiceConfigurationRecord_1.VoiceConfigurationRecord);
|
|
303
|
+
}
|
|
304
|
+
return this._voiceConfigurations;
|
|
305
|
+
}
|
|
306
|
+
/**
|
|
307
|
+
* Access linked Note records
|
|
308
|
+
* @remarks Available labels: OrderItem__Note
|
|
309
|
+
* @throws Error if called on a new (unsaved) record
|
|
310
|
+
*
|
|
311
|
+
* @example
|
|
312
|
+
* ```typescript
|
|
313
|
+
* // Get all linked Note records
|
|
314
|
+
* const items = await record.notes.list();
|
|
315
|
+
* const first = await record.notes.first();
|
|
316
|
+
*
|
|
317
|
+
* // Filter by label
|
|
318
|
+
* const specific = await record.notes.first({ label: 'OrderItem__Note' });
|
|
319
|
+
* ```
|
|
320
|
+
*/
|
|
321
|
+
get notes() {
|
|
322
|
+
var _a;
|
|
323
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
324
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
325
|
+
if (!this._notes) {
|
|
326
|
+
this._notes = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
327
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
328
|
+
targetEntity: 'SupportModule:Note',
|
|
329
|
+
targetModuleName: 'SupportModule',
|
|
330
|
+
targetEntityName: 'Note',
|
|
331
|
+
labels: ['OrderItem__Note'],
|
|
332
|
+
}, NoteRecord_1.NoteRecord);
|
|
333
|
+
}
|
|
334
|
+
return this._notes;
|
|
335
|
+
}
|
|
336
|
+
/**
|
|
337
|
+
* Access linked CustomerDeviceOnt records
|
|
338
|
+
* @remarks Available labels: OrderItem__CustomerDeviceOnt
|
|
339
|
+
* @throws Error if called on a new (unsaved) record
|
|
340
|
+
*
|
|
341
|
+
* @example
|
|
342
|
+
* ```typescript
|
|
343
|
+
* // Get all linked CustomerDeviceOnt records
|
|
344
|
+
* const items = await record.customerDeviceOnts.list();
|
|
345
|
+
* const first = await record.customerDeviceOnts.first();
|
|
346
|
+
*
|
|
347
|
+
* // Filter by label
|
|
348
|
+
* const specific = await record.customerDeviceOnts.first({ label: 'OrderItem__CustomerDeviceOnt' });
|
|
349
|
+
* ```
|
|
350
|
+
*/
|
|
351
|
+
get customerDeviceOnts() {
|
|
352
|
+
var _a;
|
|
353
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
354
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
355
|
+
if (!this._customerDeviceOnts) {
|
|
356
|
+
this._customerDeviceOnts = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
357
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
358
|
+
targetEntity: 'ServiceModule:CustomerDeviceOnt',
|
|
359
|
+
targetModuleName: 'ServiceModule',
|
|
360
|
+
targetEntityName: 'CustomerDeviceOnt',
|
|
361
|
+
labels: ['OrderItem__CustomerDeviceOnt'],
|
|
362
|
+
}, CustomerDeviceOntRecord_1.CustomerDeviceOntRecord);
|
|
363
|
+
}
|
|
364
|
+
return this._customerDeviceOnts;
|
|
365
|
+
}
|
|
366
|
+
/**
|
|
367
|
+
* Access linked OneTouchSwitch records
|
|
368
|
+
* @remarks Available labels: OneTouchSwitch__OrderItem
|
|
369
|
+
* @throws Error if called on a new (unsaved) record
|
|
370
|
+
*
|
|
371
|
+
* @example
|
|
372
|
+
* ```typescript
|
|
373
|
+
* // Get all linked OneTouchSwitch records
|
|
374
|
+
* const items = await record.oneTouchSwitches.list();
|
|
375
|
+
* const first = await record.oneTouchSwitches.first();
|
|
376
|
+
*
|
|
377
|
+
* // Filter by label
|
|
378
|
+
* const specific = await record.oneTouchSwitches.first({ label: 'OneTouchSwitch__OrderItem' });
|
|
379
|
+
* ```
|
|
380
|
+
*/
|
|
381
|
+
get oneTouchSwitches() {
|
|
382
|
+
var _a;
|
|
383
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
384
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
385
|
+
if (!this._oneTouchSwitches) {
|
|
386
|
+
this._oneTouchSwitches = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
387
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
388
|
+
targetEntity: 'OrderModule:OneTouchSwitch',
|
|
389
|
+
targetModuleName: 'OrderModule',
|
|
390
|
+
targetEntityName: 'OneTouchSwitch',
|
|
391
|
+
labels: ['OneTouchSwitch__OrderItem'],
|
|
392
|
+
}, OneTouchSwitchRecord_1.OneTouchSwitchRecord);
|
|
393
|
+
}
|
|
394
|
+
return this._oneTouchSwitches;
|
|
395
|
+
}
|
|
396
|
+
/**
|
|
397
|
+
* Access linked Activity records
|
|
398
|
+
* @remarks Available labels: OrderItem__Activity
|
|
399
|
+
* @throws Error if called on a new (unsaved) record
|
|
400
|
+
*
|
|
401
|
+
* @example
|
|
402
|
+
* ```typescript
|
|
403
|
+
* // Get all linked Activity records
|
|
404
|
+
* const items = await record.activities.list();
|
|
405
|
+
* const first = await record.activities.first();
|
|
406
|
+
*
|
|
407
|
+
* // Filter by label
|
|
408
|
+
* const specific = await record.activities.first({ label: 'OrderItem__Activity' });
|
|
409
|
+
* ```
|
|
410
|
+
*/
|
|
411
|
+
get activities() {
|
|
412
|
+
var _a;
|
|
413
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
414
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
415
|
+
if (!this._activities) {
|
|
416
|
+
this._activities = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
417
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
418
|
+
targetEntity: 'SchemaModule:Activity',
|
|
419
|
+
targetModuleName: 'SchemaModule',
|
|
420
|
+
targetEntityName: 'Activity',
|
|
421
|
+
labels: ['OrderItem__Activity'],
|
|
422
|
+
}, ActivityRecord_1.ActivityRecord);
|
|
423
|
+
}
|
|
424
|
+
return this._activities;
|
|
425
|
+
}
|
|
426
|
+
/**
|
|
427
|
+
* Access linked WorkOrder records
|
|
428
|
+
* @remarks Available labels: WorkOrder__OrderItem
|
|
429
|
+
* @throws Error if called on a new (unsaved) record
|
|
430
|
+
*
|
|
431
|
+
* @example
|
|
432
|
+
* ```typescript
|
|
433
|
+
* // Get all linked WorkOrder records
|
|
434
|
+
* const items = await record.workOrders.list();
|
|
435
|
+
* const first = await record.workOrders.first();
|
|
436
|
+
*
|
|
437
|
+
* // Filter by label
|
|
438
|
+
* const specific = await record.workOrders.first({ label: 'WorkOrder__OrderItem' });
|
|
439
|
+
* ```
|
|
440
|
+
*/
|
|
441
|
+
get workOrders() {
|
|
442
|
+
var _a;
|
|
443
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
444
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
445
|
+
if (!this._workOrders) {
|
|
446
|
+
this._workOrders = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
447
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
448
|
+
targetEntity: 'FieldServiceModule:WorkOrder',
|
|
449
|
+
targetModuleName: 'FieldServiceModule',
|
|
450
|
+
targetEntityName: 'WorkOrder',
|
|
451
|
+
labels: ['WorkOrder__OrderItem'],
|
|
452
|
+
}, WorkOrderRecord_1.WorkOrderRecord);
|
|
453
|
+
}
|
|
454
|
+
return this._workOrders;
|
|
455
|
+
}
|
|
456
|
+
/**
|
|
457
|
+
* Access linked CustomerPhonePorting records
|
|
458
|
+
* @remarks Available labels: OrderItem__CustomerPhonePorting
|
|
459
|
+
* @throws Error if called on a new (unsaved) record
|
|
460
|
+
*
|
|
461
|
+
* @example
|
|
462
|
+
* ```typescript
|
|
463
|
+
* // Get all linked CustomerPhonePorting records
|
|
464
|
+
* const items = await record.customerPhonePortings.list();
|
|
465
|
+
* const first = await record.customerPhonePortings.first();
|
|
466
|
+
*
|
|
467
|
+
* // Filter by label
|
|
468
|
+
* const specific = await record.customerPhonePortings.first({ label: 'OrderItem__CustomerPhonePorting' });
|
|
469
|
+
* ```
|
|
470
|
+
*/
|
|
471
|
+
get customerPhonePortings() {
|
|
472
|
+
var _a;
|
|
473
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
474
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
475
|
+
if (!this._customerPhonePortings) {
|
|
476
|
+
this._customerPhonePortings = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
477
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
478
|
+
targetEntity: 'ServiceModule:CustomerPhonePorting',
|
|
479
|
+
targetModuleName: 'ServiceModule',
|
|
480
|
+
targetEntityName: 'CustomerPhonePorting',
|
|
481
|
+
labels: ['OrderItem__CustomerPhonePorting'],
|
|
482
|
+
}, CustomerPhonePortingRecord_1.CustomerPhonePortingRecord);
|
|
483
|
+
}
|
|
484
|
+
return this._customerPhonePortings;
|
|
485
|
+
}
|
|
486
|
+
/**
|
|
487
|
+
* Access linked Product records
|
|
488
|
+
* @remarks Available labels: OrderItem__Product
|
|
489
|
+
* @throws Error if called on a new (unsaved) record
|
|
490
|
+
*
|
|
491
|
+
* @example
|
|
492
|
+
* ```typescript
|
|
493
|
+
* // Get all linked Product records
|
|
494
|
+
* const items = await record.products.list();
|
|
495
|
+
* const first = await record.products.first();
|
|
496
|
+
*
|
|
497
|
+
* // Filter by label
|
|
498
|
+
* const specific = await record.products.first({ label: 'OrderItem__Product' });
|
|
499
|
+
* ```
|
|
500
|
+
*/
|
|
501
|
+
get products() {
|
|
502
|
+
var _a;
|
|
503
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
504
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
505
|
+
if (!this._products) {
|
|
506
|
+
this._products = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
507
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
508
|
+
targetEntity: 'ProductModule:Product',
|
|
509
|
+
targetModuleName: 'ProductModule',
|
|
510
|
+
targetEntityName: 'Product',
|
|
511
|
+
labels: ['OrderItem__Product'],
|
|
512
|
+
}, ProductRecord_1.ProductRecord);
|
|
513
|
+
}
|
|
514
|
+
return this._products;
|
|
515
|
+
}
|
|
516
|
+
/**
|
|
517
|
+
* Access linked File records
|
|
518
|
+
* @remarks Available labels: OrderItem__File
|
|
519
|
+
* @throws Error if called on a new (unsaved) record
|
|
520
|
+
*
|
|
521
|
+
* @example
|
|
522
|
+
* ```typescript
|
|
523
|
+
* // Get all linked File records
|
|
524
|
+
* const items = await record.files.list();
|
|
525
|
+
* const first = await record.files.first();
|
|
526
|
+
*
|
|
527
|
+
* // Filter by label
|
|
528
|
+
* const specific = await record.files.first({ label: 'OrderItem__File' });
|
|
529
|
+
* ```
|
|
530
|
+
*/
|
|
531
|
+
get files() {
|
|
532
|
+
var _a;
|
|
533
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
534
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
535
|
+
if (!this._files) {
|
|
536
|
+
this._files = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
537
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
538
|
+
targetEntity: 'SchemaModule:File',
|
|
539
|
+
targetModuleName: 'SchemaModule',
|
|
540
|
+
targetEntityName: 'File',
|
|
541
|
+
labels: ['OrderItem__File'],
|
|
542
|
+
}, FileRecord_1.FileRecord);
|
|
543
|
+
}
|
|
544
|
+
return this._files;
|
|
545
|
+
}
|
|
546
|
+
/**
|
|
547
|
+
* Access linked Offer records
|
|
548
|
+
* @remarks Available labels: OrderItem__Offer
|
|
549
|
+
* @throws Error if called on a new (unsaved) record
|
|
550
|
+
*
|
|
551
|
+
* @example
|
|
552
|
+
* ```typescript
|
|
553
|
+
* // Get all linked Offer records
|
|
554
|
+
* const items = await record.offers.list();
|
|
555
|
+
* const first = await record.offers.first();
|
|
556
|
+
*
|
|
557
|
+
* // Filter by label
|
|
558
|
+
* const specific = await record.offers.first({ label: 'OrderItem__Offer' });
|
|
559
|
+
* ```
|
|
560
|
+
*/
|
|
561
|
+
get offers() {
|
|
562
|
+
var _a;
|
|
563
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
564
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
565
|
+
if (!this._offers) {
|
|
566
|
+
this._offers = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
567
|
+
sourceEntity: 'OrderModule:OrderItem',
|
|
568
|
+
targetEntity: 'ProductModule:Offer',
|
|
569
|
+
targetModuleName: 'ProductModule',
|
|
570
|
+
targetEntityName: 'Offer',
|
|
571
|
+
labels: ['OrderItem__Offer'],
|
|
572
|
+
}, OfferRecord_1.OfferRecord);
|
|
573
|
+
}
|
|
574
|
+
return this._offers;
|
|
575
|
+
}
|
|
142
576
|
// ============================================
|
|
143
577
|
// LINK MANAGEMENT
|
|
144
578
|
// ============================================
|
|
@@ -177,6 +611,42 @@ class OrderItemRecord {
|
|
|
177
611
|
// ============================================
|
|
178
612
|
// CREATE ACTIONS (no existing record required)
|
|
179
613
|
// ============================================
|
|
614
|
+
/**
|
|
615
|
+
* CreateOrderItemFromBrsk
|
|
616
|
+
*
|
|
617
|
+
* Creates a new OrderItem record with the specified properties.
|
|
618
|
+
* Returns an ActionBuilder - call .execute() to create or .dryRun() for debugging.
|
|
619
|
+
*
|
|
620
|
+
* @param properties - The properties for the new record
|
|
621
|
+
* @param options - Optional settings
|
|
622
|
+
* @param options.type - Override the record type
|
|
623
|
+
* @param options.journeyId - Associate with a journey
|
|
624
|
+
* @param options.stageKey - Set initial pipeline stage
|
|
625
|
+
* @returns ActionBuilder - call .execute() to create or .dryRun() for payload
|
|
626
|
+
*
|
|
627
|
+
* @example
|
|
628
|
+
* ```typescript
|
|
629
|
+
* // Create with properties
|
|
630
|
+
* const record = odinClient.orderItems.new();
|
|
631
|
+
* await record.createOrderItemFromBrsk({ ... }).execute();
|
|
632
|
+
*
|
|
633
|
+
* // Dry run (for debugging)
|
|
634
|
+
* const payload = record.createOrderItemFromBrsk({ ... }).dryRun();
|
|
635
|
+
* ```
|
|
636
|
+
*/
|
|
637
|
+
createOrderItemFromBrsk(properties, options) {
|
|
638
|
+
var _a, _b;
|
|
639
|
+
const payload = {
|
|
640
|
+
entity: 'OrderModule:OrderItem',
|
|
641
|
+
type: (_a = options === null || options === void 0 ? void 0 : options.type) !== null && _a !== void 0 ? _a : (_b = this._record) === null || _b === void 0 ? void 0 : _b.type,
|
|
642
|
+
actionName: 'CreateOrderItemFromBrsk',
|
|
643
|
+
properties: properties || {},
|
|
644
|
+
associations: this._pendingLinks.length > 0 ? this._pendingLinks : undefined,
|
|
645
|
+
journeyId: options === null || options === void 0 ? void 0 : options.journeyId,
|
|
646
|
+
stageKey: options === null || options === void 0 ? void 0 : options.stageKey,
|
|
647
|
+
};
|
|
648
|
+
return new ActionBuilder(this._provider, 'OrderModule', 'OrderItem', payload, () => { this._pendingLinks = []; });
|
|
649
|
+
}
|
|
180
650
|
/**
|
|
181
651
|
* CreateRecontractOrderItem
|
|
182
652
|
*
|
|
@@ -321,6 +791,37 @@ class OrderItemRecord {
|
|
|
321
791
|
}
|
|
322
792
|
}
|
|
323
793
|
exports.OrderItemRecord = OrderItemRecord;
|
|
794
|
+
// ============================================
|
|
795
|
+
// TYPED LINK ACCESSORS
|
|
796
|
+
// ============================================
|
|
797
|
+
/** Valid labels for CustomerDeviceRouter associations */
|
|
798
|
+
OrderItemRecord.customerDeviceRoutersLabels = ['OrderItem__CustomerDeviceRouter'];
|
|
799
|
+
/** Valid labels for CustomerDeviceAta associations */
|
|
800
|
+
OrderItemRecord.customerDeviceAtasLabels = ['OrderItem__CustomerDeviceAta'];
|
|
801
|
+
/** Valid labels for Order associations */
|
|
802
|
+
OrderItemRecord.ordersLabels = ['Order_OrderItem'];
|
|
803
|
+
/** Valid labels for OrderItem associations */
|
|
804
|
+
OrderItemRecord.orderItemsLabels = ['OrderItem__OrderItem'];
|
|
805
|
+
/** Valid labels for VoiceConfiguration associations */
|
|
806
|
+
OrderItemRecord.voiceConfigurationsLabels = ['OrderItem__VoiceConfiguration'];
|
|
807
|
+
/** Valid labels for Note associations */
|
|
808
|
+
OrderItemRecord.notesLabels = ['OrderItem__Note'];
|
|
809
|
+
/** Valid labels for CustomerDeviceOnt associations */
|
|
810
|
+
OrderItemRecord.customerDeviceOntsLabels = ['OrderItem__CustomerDeviceOnt'];
|
|
811
|
+
/** Valid labels for OneTouchSwitch associations */
|
|
812
|
+
OrderItemRecord.oneTouchSwitchesLabels = ['OneTouchSwitch__OrderItem'];
|
|
813
|
+
/** Valid labels for Activity associations */
|
|
814
|
+
OrderItemRecord.activitiesLabels = ['OrderItem__Activity'];
|
|
815
|
+
/** Valid labels for WorkOrder associations */
|
|
816
|
+
OrderItemRecord.workOrdersLabels = ['WorkOrder__OrderItem'];
|
|
817
|
+
/** Valid labels for CustomerPhonePorting associations */
|
|
818
|
+
OrderItemRecord.customerPhonePortingsLabels = ['OrderItem__CustomerPhonePorting'];
|
|
819
|
+
/** Valid labels for Product associations */
|
|
820
|
+
OrderItemRecord.productsLabels = ['OrderItem__Product'];
|
|
821
|
+
/** Valid labels for File associations */
|
|
822
|
+
OrderItemRecord.filesLabels = ['OrderItem__File'];
|
|
823
|
+
/** Valid labels for Offer associations */
|
|
824
|
+
OrderItemRecord.offersLabels = ['OrderItem__Offer'];
|
|
324
825
|
/** Type guard to check if an object is a OrderItemRecord */
|
|
325
826
|
function isOrderItemRecord(obj) {
|
|
326
827
|
return obj instanceof OrderItemRecord;
|
|
@@ -13,14 +13,20 @@
|
|
|
13
13
|
* await record.createOrderKci({ ... }).execute();
|
|
14
14
|
* ```
|
|
15
15
|
*
|
|
16
|
+
* Entity Types: DEFAULT
|
|
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';
|
|
24
|
+
import { RecordLinkManager } from '@d19n/odin-sdk-generator/dist/record-link-manager';
|
|
22
25
|
import { OrderKciProperties } from '../entities-v2/OrderKci';
|
|
23
26
|
import { CreateOrderKciProperties } from '../actions-v2/CreateOrderKciDto';
|
|
27
|
+
import { OrderRecord } from './OrderRecord';
|
|
28
|
+
/** Valid entity types for OrderKci */
|
|
29
|
+
export declare type OrderKciType = 'DEFAULT';
|
|
24
30
|
/**
|
|
25
31
|
* Builder for action execution with dryRun support
|
|
26
32
|
*
|
|
@@ -84,6 +90,7 @@ export declare class OrderKciRecord<TProps = OrderKciProperties> {
|
|
|
84
90
|
private _provider;
|
|
85
91
|
private _pendingLinks;
|
|
86
92
|
private _preGeneratedId;
|
|
93
|
+
private _orders?;
|
|
87
94
|
/**
|
|
88
95
|
* Create a record wrapper.
|
|
89
96
|
* @param record - The underlying record, or null for create operations
|
|
@@ -96,7 +103,7 @@ export declare class OrderKciRecord<TProps = OrderKciProperties> {
|
|
|
96
103
|
/** Record ID - always available (pre-generated for new records) */
|
|
97
104
|
get id(): string;
|
|
98
105
|
get entity(): string;
|
|
99
|
-
get type():
|
|
106
|
+
get type(): OrderKciType | undefined;
|
|
100
107
|
/** Record properties - empty object for new (unsaved) records */
|
|
101
108
|
get properties(): TProps;
|
|
102
109
|
get title(): string | undefined;
|
|
@@ -109,6 +116,40 @@ export declare class OrderKciRecord<TProps = OrderKciProperties> {
|
|
|
109
116
|
get groups(): string[];
|
|
110
117
|
/** Access the underlying OdinRecord (null for new records) */
|
|
111
118
|
get record(): OdinRecord<TProps> | null;
|
|
119
|
+
/**
|
|
120
|
+
* Type guard: check if this record is of type DEFAULT
|
|
121
|
+
*
|
|
122
|
+
* When this returns true, TypeScript automatically narrows the type,
|
|
123
|
+
* giving you access to DEFAULT-specific properties.
|
|
124
|
+
*
|
|
125
|
+
* @example
|
|
126
|
+
* ```typescript
|
|
127
|
+
* if (record.isDefault()) {
|
|
128
|
+
* // TypeScript knows record.properties is OrderKciProperties
|
|
129
|
+
* console.log(record.properties.SomeTypeSpecificField);
|
|
130
|
+
* }
|
|
131
|
+
* ```
|
|
132
|
+
* @remarks This is the default record type
|
|
133
|
+
*/
|
|
134
|
+
isDefault(): this is OrderKciRecord<OrderKciProperties>;
|
|
135
|
+
/** Valid labels for Order associations */
|
|
136
|
+
static readonly ordersLabels: readonly ["Order__OrderKci"];
|
|
137
|
+
/**
|
|
138
|
+
* Access linked Order records
|
|
139
|
+
* @remarks Available labels: Order__OrderKci
|
|
140
|
+
* @throws Error if called on a new (unsaved) record
|
|
141
|
+
*
|
|
142
|
+
* @example
|
|
143
|
+
* ```typescript
|
|
144
|
+
* // Get all linked Order records
|
|
145
|
+
* const items = await record.orders.list();
|
|
146
|
+
* const first = await record.orders.first();
|
|
147
|
+
*
|
|
148
|
+
* // Filter by label
|
|
149
|
+
* const specific = await record.orders.first({ label: 'Order__OrderKci' });
|
|
150
|
+
* ```
|
|
151
|
+
*/
|
|
152
|
+
get orders(): RecordLinkManager<OrderRecord, typeof OrderKciRecord['ordersLabels'][number]>;
|
|
112
153
|
/**
|
|
113
154
|
* Queue a link to be created with the next action.
|
|
114
155
|
* Works for both create and update actions.
|
|
@@ -14,6 +14,8 @@
|
|
|
14
14
|
* await record.createOrderKci({ ... }).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,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
29
31
|
exports.isOrderKciRecord = exports.OrderKciRecord = 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");
|
|
32
36
|
/**
|
|
33
37
|
* Builder for action execution with dryRun support
|
|
34
38
|
*
|
|
@@ -140,6 +144,55 @@ class OrderKciRecord {
|
|
|
140
144
|
/** Access the underlying OdinRecord (null for new records) */
|
|
141
145
|
get record() { return this._record; }
|
|
142
146
|
// ============================================
|
|
147
|
+
// TYPE GUARDS (with TypeScript type predicates)
|
|
148
|
+
// ============================================
|
|
149
|
+
/**
|
|
150
|
+
* Type guard: check if this record is of type DEFAULT
|
|
151
|
+
*
|
|
152
|
+
* When this returns true, TypeScript automatically narrows the type,
|
|
153
|
+
* giving you access to DEFAULT-specific properties.
|
|
154
|
+
*
|
|
155
|
+
* @example
|
|
156
|
+
* ```typescript
|
|
157
|
+
* if (record.isDefault()) {
|
|
158
|
+
* // TypeScript knows record.properties is OrderKciProperties
|
|
159
|
+
* console.log(record.properties.SomeTypeSpecificField);
|
|
160
|
+
* }
|
|
161
|
+
* ```
|
|
162
|
+
* @remarks This is the default record type
|
|
163
|
+
*/
|
|
164
|
+
isDefault() { var _a; return ((_a = this._record) === null || _a === void 0 ? void 0 : _a.type) === 'DEFAULT'; }
|
|
165
|
+
/**
|
|
166
|
+
* Access linked Order records
|
|
167
|
+
* @remarks Available labels: Order__OrderKci
|
|
168
|
+
* @throws Error if called on a new (unsaved) record
|
|
169
|
+
*
|
|
170
|
+
* @example
|
|
171
|
+
* ```typescript
|
|
172
|
+
* // Get all linked Order records
|
|
173
|
+
* const items = await record.orders.list();
|
|
174
|
+
* const first = await record.orders.first();
|
|
175
|
+
*
|
|
176
|
+
* // Filter by label
|
|
177
|
+
* const specific = await record.orders.first({ label: 'Order__OrderKci' });
|
|
178
|
+
* ```
|
|
179
|
+
*/
|
|
180
|
+
get orders() {
|
|
181
|
+
var _a;
|
|
182
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
183
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
184
|
+
if (!this._orders) {
|
|
185
|
+
this._orders = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
186
|
+
sourceEntity: 'OrderModule:OrderKci',
|
|
187
|
+
targetEntity: 'OrderModule:Order',
|
|
188
|
+
targetModuleName: 'OrderModule',
|
|
189
|
+
targetEntityName: 'Order',
|
|
190
|
+
labels: ['Order__OrderKci'],
|
|
191
|
+
}, OrderRecord_1.OrderRecord);
|
|
192
|
+
}
|
|
193
|
+
return this._orders;
|
|
194
|
+
}
|
|
195
|
+
// ============================================
|
|
143
196
|
// LINK MANAGEMENT
|
|
144
197
|
// ============================================
|
|
145
198
|
/**
|
|
@@ -215,6 +268,11 @@ class OrderKciRecord {
|
|
|
215
268
|
}
|
|
216
269
|
}
|
|
217
270
|
exports.OrderKciRecord = OrderKciRecord;
|
|
271
|
+
// ============================================
|
|
272
|
+
// TYPED LINK ACCESSORS
|
|
273
|
+
// ============================================
|
|
274
|
+
/** Valid labels for Order associations */
|
|
275
|
+
OrderKciRecord.ordersLabels = ['Order__OrderKci'];
|
|
218
276
|
/** Type guard to check if an object is a OrderKciRecord */
|
|
219
277
|
function isOrderKciRecord(obj) {
|
|
220
278
|
return obj instanceof OrderKciRecord;
|