@d19n/youfibre-odin-sdk 1.0.203 → 1.0.204

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (190) hide show
  1. package/dist/records-v2/AccountRecord.d.ts +130 -0
  2. package/dist/records-v2/AccountRecord.js +233 -0
  3. package/dist/records-v2/ActivityLogRecord.d.ts +53 -0
  4. package/dist/records-v2/ActivityLogRecord.js +96 -0
  5. package/dist/records-v2/ActivityRecord.d.ts +118 -0
  6. package/dist/records-v2/ActivityRecord.js +211 -0
  7. package/dist/records-v2/AddressRecord.d.ts +195 -0
  8. package/dist/records-v2/AddressRecord.js +348 -0
  9. package/dist/records-v2/BillingAdjustmentRecord.d.ts +40 -0
  10. package/dist/records-v2/BillingAdjustmentRecord.js +73 -0
  11. package/dist/records-v2/BillingRequestRecord.d.ts +78 -0
  12. package/dist/records-v2/BillingRequestRecord.js +141 -0
  13. package/dist/records-v2/CaseRecord.d.ts +230 -0
  14. package/dist/records-v2/CaseRecord.js +413 -0
  15. package/dist/records-v2/ChangeReasonRecord.d.ts +53 -0
  16. package/dist/records-v2/ChangeReasonRecord.js +96 -0
  17. package/dist/records-v2/ChurnRequestRecord.d.ts +27 -0
  18. package/dist/records-v2/ChurnRequestRecord.js +50 -0
  19. package/dist/records-v2/ContactRecord.d.ts +233 -0
  20. package/dist/records-v2/ContactRecord.js +416 -0
  21. package/dist/records-v2/ContractBuyOutRecord.d.ts +79 -0
  22. package/dist/records-v2/ContractBuyOutRecord.js +142 -0
  23. package/dist/records-v2/ConversationRecord.d.ts +14 -0
  24. package/dist/records-v2/ConversationRecord.js +27 -0
  25. package/dist/records-v2/CreditNoteRecord.d.ts +40 -0
  26. package/dist/records-v2/CreditNoteRecord.js +73 -0
  27. package/dist/records-v2/CrmDatasetRecord.d.ts +66 -0
  28. package/dist/records-v2/CrmDatasetRecord.js +119 -0
  29. package/dist/records-v2/CustomerDeviceAtaRecord.d.ts +14 -0
  30. package/dist/records-v2/CustomerDeviceAtaRecord.js +27 -0
  31. package/dist/records-v2/CustomerDeviceOntRecord.d.ts +105 -0
  32. package/dist/records-v2/CustomerDeviceOntRecord.js +188 -0
  33. package/dist/records-v2/CustomerDeviceRouterRecord.d.ts +79 -0
  34. package/dist/records-v2/CustomerDeviceRouterRecord.js +142 -0
  35. package/dist/records-v2/CustomerPhonePortingRecord.d.ts +14 -0
  36. package/dist/records-v2/CustomerPhonePortingRecord.js +27 -0
  37. package/dist/records-v2/DiscountRecord.d.ts +66 -0
  38. package/dist/records-v2/DiscountRecord.js +119 -0
  39. package/dist/records-v2/EmailRecord.d.ts +52 -0
  40. package/dist/records-v2/EmailRecord.js +95 -0
  41. package/dist/records-v2/FieldServiceDispatchedProductRecord.d.ts +53 -0
  42. package/dist/records-v2/FieldServiceDispatchedProductRecord.js +96 -0
  43. package/dist/records-v2/FieldServiceProductRecord.d.ts +76 -0
  44. package/dist/records-v2/FieldServiceProductRecord.js +139 -0
  45. package/dist/records-v2/ImpersonationTrackerRecord.d.ts +27 -0
  46. package/dist/records-v2/ImpersonationTrackerRecord.js +50 -0
  47. package/dist/records-v2/InvoiceRecord.d.ts +183 -0
  48. package/dist/records-v2/InvoiceRecord.js +326 -0
  49. package/dist/records-v2/KnowledgeArticleRecord.d.ts +26 -0
  50. package/dist/records-v2/KnowledgeArticleRecord.js +49 -0
  51. package/dist/records-v2/LeadRecord.d.ts +131 -0
  52. package/dist/records-v2/LeadRecord.js +234 -0
  53. package/dist/records-v2/NetworkDeviceRecord.d.ts +14 -0
  54. package/dist/records-v2/NetworkDeviceRecord.js +27 -0
  55. package/dist/records-v2/NoteRecord.d.ts +481 -0
  56. package/dist/records-v2/NoteRecord.js +854 -0
  57. package/dist/records-v2/OfferRecord.d.ts +65 -0
  58. package/dist/records-v2/OfferRecord.js +118 -0
  59. package/dist/records-v2/OhExternalAuditRecord.d.ts +27 -0
  60. package/dist/records-v2/OhExternalAuditRecord.js +50 -0
  61. package/dist/records-v2/OneTouchSwitchRecord.d.ts +118 -0
  62. package/dist/records-v2/OneTouchSwitchRecord.js +211 -0
  63. package/dist/records-v2/OntReplacementApprovalRecord.d.ts +27 -0
  64. package/dist/records-v2/OntReplacementApprovalRecord.js +50 -0
  65. package/dist/records-v2/OrderCheckRecord.d.ts +14 -0
  66. package/dist/records-v2/OrderCheckRecord.js +27 -0
  67. package/dist/records-v2/OrderItemRecord.d.ts +169 -0
  68. package/dist/records-v2/OrderItemRecord.js +302 -0
  69. package/dist/records-v2/OrderRecord.d.ts +312 -0
  70. package/dist/records-v2/OrderRecord.js +555 -0
  71. package/dist/records-v2/OutageRecord.d.ts +26 -0
  72. package/dist/records-v2/OutageRecord.js +49 -0
  73. package/dist/records-v2/OverlayRealA55Record.d.ts +27 -0
  74. package/dist/records-v2/OverlayRealA55Record.js +50 -0
  75. package/dist/records-v2/PICRequestRecord.d.ts +27 -0
  76. package/dist/records-v2/PICRequestRecord.js +50 -0
  77. package/dist/records-v2/PaymentMethodRecord.d.ts +66 -0
  78. package/dist/records-v2/PaymentMethodRecord.js +119 -0
  79. package/dist/records-v2/PaymentMethodRefundRecord.d.ts +92 -0
  80. package/dist/records-v2/PaymentMethodRefundRecord.js +165 -0
  81. package/dist/records-v2/PaymentRecord.d.ts +40 -0
  82. package/dist/records-v2/PaymentRecord.js +73 -0
  83. package/dist/records-v2/PermissionToFailRecord.d.ts +27 -0
  84. package/dist/records-v2/PermissionToFailRecord.js +50 -0
  85. package/dist/records-v2/PriceBookRecord.d.ts +14 -0
  86. package/dist/records-v2/PriceBookRecord.js +27 -0
  87. package/dist/records-v2/ProductRecord.d.ts +91 -0
  88. package/dist/records-v2/ProductRecord.js +164 -0
  89. package/dist/records-v2/PushNotificationRecord.d.ts +14 -0
  90. package/dist/records-v2/PushNotificationRecord.js +27 -0
  91. package/dist/records-v2/RemediationOutcomeFormRecord.d.ts +27 -0
  92. package/dist/records-v2/RemediationOutcomeFormRecord.js +50 -0
  93. package/dist/records-v2/ReturnsRecord.d.ts +27 -0
  94. package/dist/records-v2/ReturnsRecord.js +50 -0
  95. package/dist/records-v2/ScheduleSlotRecord.d.ts +14 -0
  96. package/dist/records-v2/ScheduleSlotRecord.js +27 -0
  97. package/dist/records-v2/ServiceAppointmentConfigRecord.d.ts +90 -0
  98. package/dist/records-v2/ServiceAppointmentConfigRecord.js +163 -0
  99. package/dist/records-v2/ServiceRecord.d.ts +26 -0
  100. package/dist/records-v2/ServiceRecord.js +49 -0
  101. package/dist/records-v2/SiteSpecificRiskAssessmentOutcomeFormRecord.d.ts +27 -0
  102. package/dist/records-v2/SiteSpecificRiskAssessmentOutcomeFormRecord.js +50 -0
  103. package/dist/records-v2/TeamRecord.d.ts +53 -0
  104. package/dist/records-v2/TeamRecord.js +96 -0
  105. package/dist/records-v2/TimeSlotRecord.d.ts +14 -0
  106. package/dist/records-v2/TimeSlotRecord.js +27 -0
  107. package/dist/records-v2/TransactionRecord.d.ts +91 -0
  108. package/dist/records-v2/TransactionRecord.js +164 -0
  109. package/dist/records-v2/UgRetroAuditRecord.d.ts +27 -0
  110. package/dist/records-v2/UgRetroAuditRecord.js +50 -0
  111. package/dist/records-v2/UserRecord.d.ts +242 -0
  112. package/dist/records-v2/UserRecord.js +435 -0
  113. package/dist/records-v2/VisitRecord.d.ts +53 -0
  114. package/dist/records-v2/VisitRecord.js +96 -0
  115. package/dist/records-v2/VoiceConfigurationRecord.d.ts +14 -0
  116. package/dist/records-v2/VoiceConfigurationRecord.js +27 -0
  117. package/dist/records-v2/WayleaveAuditRecord.d.ts +27 -0
  118. package/dist/records-v2/WayleaveAuditRecord.js +50 -0
  119. package/dist/records-v2/WorkOrderRecord.d.ts +491 -0
  120. package/dist/records-v2/WorkOrderRecord.js +884 -0
  121. package/dist/records-v2/WorkOrderStatusUpdateRecord.d.ts +14 -0
  122. package/dist/records-v2/WorkOrderStatusUpdateRecord.js +27 -0
  123. package/dist/records-v2/YfFieldServiceVisitRecord.d.ts +27 -0
  124. package/dist/records-v2/YfFieldServiceVisitRecord.js +50 -0
  125. package/package.json +2 -2
  126. package/src/records-v2/AccountRecord.ts +304 -0
  127. package/src/records-v2/ActivityLogRecord.ts +125 -0
  128. package/src/records-v2/ActivityRecord.ts +275 -0
  129. package/src/records-v2/AddressRecord.ts +454 -0
  130. package/src/records-v2/BillingAdjustmentRecord.ts +95 -0
  131. package/src/records-v2/BillingRequestRecord.ts +184 -0
  132. package/src/records-v2/CallLegRecord.ts +1 -0
  133. package/src/records-v2/CaseRecord.ts +540 -0
  134. package/src/records-v2/ChangeReasonRecord.ts +125 -0
  135. package/src/records-v2/ChurnRequestRecord.ts +65 -0
  136. package/src/records-v2/ConfigRecord.ts +1 -0
  137. package/src/records-v2/ContactRecord.ts +543 -0
  138. package/src/records-v2/ContractBuyOutRecord.ts +185 -0
  139. package/src/records-v2/ConversationRecord.ts +35 -0
  140. package/src/records-v2/CreditNoteRecord.ts +95 -0
  141. package/src/records-v2/CrmDatasetRecord.ts +155 -0
  142. package/src/records-v2/CustomerDeviceAtaRecord.ts +35 -0
  143. package/src/records-v2/CustomerDeviceOntRecord.ts +245 -0
  144. package/src/records-v2/CustomerDeviceRouterRecord.ts +185 -0
  145. package/src/records-v2/CustomerPhonePortingRecord.ts +35 -0
  146. package/src/records-v2/DiscountRecord.ts +155 -0
  147. package/src/records-v2/EmailRecord.ts +124 -0
  148. package/src/records-v2/EmailTemplateRecord.ts +1 -0
  149. package/src/records-v2/FieldServiceDispatchedProductRecord.ts +125 -0
  150. package/src/records-v2/FieldServiceProductRecord.ts +182 -0
  151. package/src/records-v2/ImpersonationTrackerRecord.ts +65 -0
  152. package/src/records-v2/InvoiceRecord.ts +425 -0
  153. package/src/records-v2/KnowledgeArticleRecord.ts +64 -0
  154. package/src/records-v2/LeadRecord.ts +305 -0
  155. package/src/records-v2/NetworkDeviceRecord.ts +35 -0
  156. package/src/records-v2/NoteRecord.ts +1114 -0
  157. package/src/records-v2/OfferRecord.ts +154 -0
  158. package/src/records-v2/OhExternalAuditRecord.ts +65 -0
  159. package/src/records-v2/OneTouchSwitchRecord.ts +275 -0
  160. package/src/records-v2/OntReplacementApprovalRecord.ts +65 -0
  161. package/src/records-v2/OrderCheckRecord.ts +35 -0
  162. package/src/records-v2/OrderItemRecord.ts +394 -0
  163. package/src/records-v2/OrderRecord.ts +724 -0
  164. package/src/records-v2/OutageRecord.ts +64 -0
  165. package/src/records-v2/OverlayRealA55Record.ts +65 -0
  166. package/src/records-v2/PICRequestRecord.ts +65 -0
  167. package/src/records-v2/PaymentMethodRecord.ts +155 -0
  168. package/src/records-v2/PaymentMethodRefundRecord.ts +215 -0
  169. package/src/records-v2/PaymentRecord.ts +95 -0
  170. package/src/records-v2/PermissionToFailRecord.ts +65 -0
  171. package/src/records-v2/PriceBookRecord.ts +35 -0
  172. package/src/records-v2/ProductRecord.ts +214 -0
  173. package/src/records-v2/PushNotificationRecord.ts +35 -0
  174. package/src/records-v2/RemediationOutcomeFormRecord.ts +65 -0
  175. package/src/records-v2/ReturnsRecord.ts +65 -0
  176. package/src/records-v2/ScheduleSlotRecord.ts +35 -0
  177. package/src/records-v2/ServiceAppointmentConfigRecord.ts +213 -0
  178. package/src/records-v2/ServiceRecord.ts +64 -0
  179. package/src/records-v2/SiteSpecificRiskAssessmentOutcomeFormRecord.ts +65 -0
  180. package/src/records-v2/TeamRecord.ts +125 -0
  181. package/src/records-v2/TimeSlotRecord.ts +35 -0
  182. package/src/records-v2/TransactionRecord.ts +214 -0
  183. package/src/records-v2/UgRetroAuditRecord.ts +65 -0
  184. package/src/records-v2/UserRecord.ts +569 -0
  185. package/src/records-v2/VisitRecord.ts +125 -0
  186. package/src/records-v2/VoiceConfigurationRecord.ts +35 -0
  187. package/src/records-v2/WayleaveAuditRecord.ts +65 -0
  188. package/src/records-v2/WorkOrderRecord.ts +1158 -0
  189. package/src/records-v2/WorkOrderStatusUpdateRecord.ts +35 -0
  190. package/src/records-v2/YfFieldServiceVisitRecord.ts +65 -0
@@ -9,6 +9,7 @@
9
9
  import { OdinRecord, OdinRecordLinkDto } from '@d19n/odin-types/dist/core';
10
10
  import { PipelineStageEntity } from '@d19n/odin-types/dist/core';
11
11
  import { IOdinProvider, ActionResult } from '@d19n/odin-sdk-generator/dist/odin-sdk-types';
12
+ import { RecordLinkManager } from '@d19n/odin-sdk-generator/dist/record-link-manager';
12
13
  import { AccountProperties } from '../entities-v2/Account';
13
14
  import { CreateBusinessAccountProperties } from '../actions-v2/CreateBusinessAccountDto';
14
15
  import { CreatePrimaryAccountProperties } from '../actions-v2/CreatePrimaryAccountDto';
@@ -16,10 +17,29 @@ import { CreateResellerAccountProperties } from '../actions-v2/CreateResellerAcc
16
17
  import { UpdateBusinessAccountProperties } from '../actions-v2/UpdateBusinessAccountDto';
17
18
  import { UpdatePrimaryAccountProperties } from '../actions-v2/UpdatePrimaryAccountDto';
18
19
  import { UpdateResellerAccountProperties } from '../actions-v2/UpdateResellerAccountDto';
20
+ import { ContactRecord } from './ContactRecord';
21
+ import { OrderRecord } from './OrderRecord';
22
+ import { NoteRecord } from './NoteRecord';
23
+ import { WorkOrderRecord } from './WorkOrderRecord';
24
+ import { InvoiceRecord } from './InvoiceRecord';
25
+ import { OneTouchSwitchRecord } from './OneTouchSwitchRecord';
26
+ import { AddressRecord } from './AddressRecord';
27
+ import { PaymentRecord } from './PaymentRecord';
28
+ import { CaseRecord } from './CaseRecord';
19
29
  export declare class AccountRecord {
20
30
  private _record;
21
31
  private _provider;
22
32
  private _pendingLinks;
33
+ private _contacts?;
34
+ private _orders?;
35
+ private _notes?;
36
+ private _workorders?;
37
+ private _invoices?;
38
+ private _onetouchswitchs?;
39
+ private _accounts?;
40
+ private _addresss?;
41
+ private _payments?;
42
+ private _cases?;
23
43
  constructor(record: OdinRecord<AccountProperties>, provider: IOdinProvider);
24
44
  get id(): string;
25
45
  get entity(): string;
@@ -32,6 +52,116 @@ export declare class AccountRecord {
32
52
  get updatedAt(): string | undefined;
33
53
  /** Access the raw underlying OdinRecord */
34
54
  get raw(): OdinRecord<AccountProperties>;
55
+ /**
56
+ * Access linked Contact records
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * const items = await record.contacts.list();
61
+ * const first = await record.contacts.first();
62
+ * await record.contacts.add(target);
63
+ * ```
64
+ */
65
+ get contacts(): RecordLinkManager<ContactRecord>;
66
+ /**
67
+ * Access linked Order records
68
+ *
69
+ * @example
70
+ * ```typescript
71
+ * const items = await record.orders.list();
72
+ * const first = await record.orders.first();
73
+ * await record.orders.add(target);
74
+ * ```
75
+ */
76
+ get orders(): RecordLinkManager<OrderRecord>;
77
+ /**
78
+ * Access linked Note records
79
+ *
80
+ * @example
81
+ * ```typescript
82
+ * const items = await record.notes.list();
83
+ * const first = await record.notes.first();
84
+ * await record.notes.add(target);
85
+ * ```
86
+ */
87
+ get notes(): RecordLinkManager<NoteRecord>;
88
+ /**
89
+ * Access linked WorkOrder records
90
+ *
91
+ * @example
92
+ * ```typescript
93
+ * const items = await record.workorders.list();
94
+ * const first = await record.workorders.first();
95
+ * await record.workorders.add(target);
96
+ * ```
97
+ */
98
+ get workorders(): RecordLinkManager<WorkOrderRecord>;
99
+ /**
100
+ * Access linked Invoice records
101
+ *
102
+ * @example
103
+ * ```typescript
104
+ * const items = await record.invoices.list();
105
+ * const first = await record.invoices.first();
106
+ * await record.invoices.add(target);
107
+ * ```
108
+ */
109
+ get invoices(): RecordLinkManager<InvoiceRecord>;
110
+ /**
111
+ * Access linked OneTouchSwitch records
112
+ *
113
+ * @example
114
+ * ```typescript
115
+ * const items = await record.onetouchswitchs.list();
116
+ * const first = await record.onetouchswitchs.first();
117
+ * await record.onetouchswitchs.add(target);
118
+ * ```
119
+ */
120
+ get onetouchswitchs(): RecordLinkManager<OneTouchSwitchRecord>;
121
+ /**
122
+ * Access linked Account records
123
+ *
124
+ * @example
125
+ * ```typescript
126
+ * const items = await record.accounts.list();
127
+ * const first = await record.accounts.first();
128
+ * await record.accounts.add(target);
129
+ * ```
130
+ */
131
+ get accounts(): RecordLinkManager<AccountRecord>;
132
+ /**
133
+ * Access linked Address records
134
+ *
135
+ * @example
136
+ * ```typescript
137
+ * const items = await record.addresss.list();
138
+ * const first = await record.addresss.first();
139
+ * await record.addresss.add(target);
140
+ * ```
141
+ */
142
+ get addresss(): RecordLinkManager<AddressRecord>;
143
+ /**
144
+ * Access linked Payment records
145
+ *
146
+ * @example
147
+ * ```typescript
148
+ * const items = await record.payments.list();
149
+ * const first = await record.payments.first();
150
+ * await record.payments.add(target);
151
+ * ```
152
+ */
153
+ get payments(): RecordLinkManager<PaymentRecord>;
154
+ /**
155
+ * Access linked Case records
156
+ *
157
+ * @example
158
+ * ```typescript
159
+ * const items = await record.cases.list();
160
+ * const first = await record.cases.first();
161
+ * await record.cases.add(target);
162
+ * ```
163
+ */
164
+ get cases(): RecordLinkManager<CaseRecord>;
35
165
  /**
36
166
  * Queue a link to be created with the next action.
37
167
  * @returns this (for chaining)
@@ -19,6 +19,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
20
  exports.isAccountRecord = exports.AccountRecord = void 0;
21
21
  const core_1 = require("@d19n/odin-types/dist/core");
22
+ const record_link_manager_1 = require("@d19n/odin-sdk-generator/dist/record-link-manager");
23
+ const ContactRecord_1 = require("./ContactRecord");
24
+ const OrderRecord_1 = require("./OrderRecord");
25
+ const NoteRecord_1 = require("./NoteRecord");
26
+ const WorkOrderRecord_1 = require("./WorkOrderRecord");
27
+ const InvoiceRecord_1 = require("./InvoiceRecord");
28
+ const OneTouchSwitchRecord_1 = require("./OneTouchSwitchRecord");
29
+ const AddressRecord_1 = require("./AddressRecord");
30
+ const PaymentRecord_1 = require("./PaymentRecord");
31
+ const CaseRecord_1 = require("./CaseRecord");
22
32
  class AccountRecord {
23
33
  constructor(record, provider) {
24
34
  this._pendingLinks = [];
@@ -40,6 +50,229 @@ class AccountRecord {
40
50
  /** Access the raw underlying OdinRecord */
41
51
  get raw() { return this._record; }
42
52
  // ============================================
53
+ // TYPED LINK ACCESSORS
54
+ // ============================================
55
+ /**
56
+ * Access linked Contact records
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * const items = await record.contacts.list();
61
+ * const first = await record.contacts.first();
62
+ * await record.contacts.add(target);
63
+ * ```
64
+ */
65
+ get contacts() {
66
+ if (!this._contacts) {
67
+ this._contacts = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
68
+ sourceEntity: 'CrmModule:Account',
69
+ targetEntity: 'CrmModule:Contact',
70
+ targetModuleName: 'CrmModule',
71
+ targetEntityName: 'Contact',
72
+ label: 'BillingContact',
73
+ }, ContactRecord_1.ContactRecord);
74
+ }
75
+ return this._contacts;
76
+ }
77
+ /**
78
+ * Access linked Order records
79
+ *
80
+ * @example
81
+ * ```typescript
82
+ * const items = await record.orders.list();
83
+ * const first = await record.orders.first();
84
+ * await record.orders.add(target);
85
+ * ```
86
+ */
87
+ get orders() {
88
+ if (!this._orders) {
89
+ this._orders = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
90
+ sourceEntity: 'CrmModule:Account',
91
+ targetEntity: 'OrderModule:Order',
92
+ targetModuleName: 'OrderModule',
93
+ targetEntityName: 'Order',
94
+ label: 'Account__Order',
95
+ }, OrderRecord_1.OrderRecord);
96
+ }
97
+ return this._orders;
98
+ }
99
+ /**
100
+ * Access linked Note records
101
+ *
102
+ * @example
103
+ * ```typescript
104
+ * const items = await record.notes.list();
105
+ * const first = await record.notes.first();
106
+ * await record.notes.add(target);
107
+ * ```
108
+ */
109
+ get notes() {
110
+ if (!this._notes) {
111
+ this._notes = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
112
+ sourceEntity: 'CrmModule:Account',
113
+ targetEntity: 'SupportModule:Note',
114
+ targetModuleName: 'SupportModule',
115
+ targetEntityName: 'Note',
116
+ label: 'Account__Note',
117
+ }, NoteRecord_1.NoteRecord);
118
+ }
119
+ return this._notes;
120
+ }
121
+ /**
122
+ * Access linked WorkOrder records
123
+ *
124
+ * @example
125
+ * ```typescript
126
+ * const items = await record.workorders.list();
127
+ * const first = await record.workorders.first();
128
+ * await record.workorders.add(target);
129
+ * ```
130
+ */
131
+ get workorders() {
132
+ if (!this._workorders) {
133
+ this._workorders = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
134
+ sourceEntity: 'CrmModule:Account',
135
+ targetEntity: 'FieldServiceModule:WorkOrder',
136
+ targetModuleName: 'FieldServiceModule',
137
+ targetEntityName: 'WorkOrder',
138
+ label: 'Account__WorkOrder',
139
+ }, WorkOrderRecord_1.WorkOrderRecord);
140
+ }
141
+ return this._workorders;
142
+ }
143
+ /**
144
+ * Access linked Invoice records
145
+ *
146
+ * @example
147
+ * ```typescript
148
+ * const items = await record.invoices.list();
149
+ * const first = await record.invoices.first();
150
+ * await record.invoices.add(target);
151
+ * ```
152
+ */
153
+ get invoices() {
154
+ if (!this._invoices) {
155
+ this._invoices = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
156
+ sourceEntity: 'CrmModule:Account',
157
+ targetEntity: 'BillingModule:Invoice',
158
+ targetModuleName: 'BillingModule',
159
+ targetEntityName: 'Invoice',
160
+ label: 'Account__Invoice',
161
+ }, InvoiceRecord_1.InvoiceRecord);
162
+ }
163
+ return this._invoices;
164
+ }
165
+ /**
166
+ * Access linked OneTouchSwitch records
167
+ *
168
+ * @example
169
+ * ```typescript
170
+ * const items = await record.onetouchswitchs.list();
171
+ * const first = await record.onetouchswitchs.first();
172
+ * await record.onetouchswitchs.add(target);
173
+ * ```
174
+ */
175
+ get onetouchswitchs() {
176
+ if (!this._onetouchswitchs) {
177
+ this._onetouchswitchs = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
178
+ sourceEntity: 'CrmModule:Account',
179
+ targetEntity: 'OrderModule:OneTouchSwitch',
180
+ targetModuleName: 'OrderModule',
181
+ targetEntityName: 'OneTouchSwitch',
182
+ label: 'Account__OneTouchSwitch',
183
+ }, OneTouchSwitchRecord_1.OneTouchSwitchRecord);
184
+ }
185
+ return this._onetouchswitchs;
186
+ }
187
+ /**
188
+ * Access linked Account records
189
+ *
190
+ * @example
191
+ * ```typescript
192
+ * const items = await record.accounts.list();
193
+ * const first = await record.accounts.first();
194
+ * await record.accounts.add(target);
195
+ * ```
196
+ */
197
+ get accounts() {
198
+ if (!this._accounts) {
199
+ this._accounts = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
200
+ sourceEntity: 'CrmModule:Account',
201
+ targetEntity: 'CrmModule:Account',
202
+ targetModuleName: 'CrmModule',
203
+ targetEntityName: 'Account',
204
+ label: 'Account_Account',
205
+ }, AccountRecord);
206
+ }
207
+ return this._accounts;
208
+ }
209
+ /**
210
+ * Access linked Address records
211
+ *
212
+ * @example
213
+ * ```typescript
214
+ * const items = await record.addresss.list();
215
+ * const first = await record.addresss.first();
216
+ * await record.addresss.add(target);
217
+ * ```
218
+ */
219
+ get addresss() {
220
+ if (!this._addresss) {
221
+ this._addresss = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
222
+ sourceEntity: 'CrmModule:Account',
223
+ targetEntity: 'CrmModule:Address',
224
+ targetModuleName: 'CrmModule',
225
+ targetEntityName: 'Address',
226
+ label: 'BillingAddress',
227
+ }, AddressRecord_1.AddressRecord);
228
+ }
229
+ return this._addresss;
230
+ }
231
+ /**
232
+ * Access linked Payment records
233
+ *
234
+ * @example
235
+ * ```typescript
236
+ * const items = await record.payments.list();
237
+ * const first = await record.payments.first();
238
+ * await record.payments.add(target);
239
+ * ```
240
+ */
241
+ get payments() {
242
+ if (!this._payments) {
243
+ this._payments = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
244
+ sourceEntity: 'CrmModule:Account',
245
+ targetEntity: 'BillingModule:Payment',
246
+ targetModuleName: 'BillingModule',
247
+ targetEntityName: 'Payment',
248
+ label: 'Account_Payment',
249
+ }, PaymentRecord_1.PaymentRecord);
250
+ }
251
+ return this._payments;
252
+ }
253
+ /**
254
+ * Access linked Case records
255
+ *
256
+ * @example
257
+ * ```typescript
258
+ * const items = await record.cases.list();
259
+ * const first = await record.cases.first();
260
+ * await record.cases.add(target);
261
+ * ```
262
+ */
263
+ get cases() {
264
+ if (!this._cases) {
265
+ this._cases = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
266
+ sourceEntity: 'CrmModule:Account',
267
+ targetEntity: 'SupportModule:Case',
268
+ targetModuleName: 'SupportModule',
269
+ targetEntityName: 'Case',
270
+ label: 'Account__Case',
271
+ }, CaseRecord_1.CaseRecord);
272
+ }
273
+ return this._cases;
274
+ }
275
+ // ============================================
43
276
  // LINK MANAGEMENT
44
277
  // ============================================
45
278
  /**
@@ -9,12 +9,21 @@
9
9
  import { OdinRecord, OdinRecordLinkDto } from '@d19n/odin-types/dist/core';
10
10
  import { PipelineStageEntity } from '@d19n/odin-types/dist/core';
11
11
  import { IOdinProvider, ActionResult } from '@d19n/odin-sdk-generator/dist/odin-sdk-types';
12
+ import { RecordLinkManager } from '@d19n/odin-sdk-generator/dist/record-link-manager';
12
13
  import { ActivityLogProperties } from '../entities-v2/ActivityLog';
13
14
  import { CreateActivityLogEntryProperties } from '../actions-v2/CreateActivityLogEntryDto';
15
+ import { OneTouchSwitchRecord } from './OneTouchSwitchRecord';
16
+ import { WorkOrderRecord } from './WorkOrderRecord';
17
+ import { OrderRecord } from './OrderRecord';
18
+ import { CaseRecord } from './CaseRecord';
14
19
  export declare class ActivityLogRecord {
15
20
  private _record;
16
21
  private _provider;
17
22
  private _pendingLinks;
23
+ private _onetouchswitchs?;
24
+ private _workorders?;
25
+ private _orders?;
26
+ private _cases?;
18
27
  constructor(record: OdinRecord<ActivityLogProperties>, provider: IOdinProvider);
19
28
  get id(): string;
20
29
  get entity(): string;
@@ -27,6 +36,50 @@ export declare class ActivityLogRecord {
27
36
  get updatedAt(): string | undefined;
28
37
  /** Access the raw underlying OdinRecord */
29
38
  get raw(): OdinRecord<ActivityLogProperties>;
39
+ /**
40
+ * Access linked OneTouchSwitch records
41
+ *
42
+ * @example
43
+ * ```typescript
44
+ * const items = await record.onetouchswitchs.list();
45
+ * const first = await record.onetouchswitchs.first();
46
+ * await record.onetouchswitchs.add(target);
47
+ * ```
48
+ */
49
+ get onetouchswitchs(): RecordLinkManager<OneTouchSwitchRecord>;
50
+ /**
51
+ * Access linked WorkOrder records
52
+ *
53
+ * @example
54
+ * ```typescript
55
+ * const items = await record.workorders.list();
56
+ * const first = await record.workorders.first();
57
+ * await record.workorders.add(target);
58
+ * ```
59
+ */
60
+ get workorders(): RecordLinkManager<WorkOrderRecord>;
61
+ /**
62
+ * Access linked Order records
63
+ *
64
+ * @example
65
+ * ```typescript
66
+ * const items = await record.orders.list();
67
+ * const first = await record.orders.first();
68
+ * await record.orders.add(target);
69
+ * ```
70
+ */
71
+ get orders(): RecordLinkManager<OrderRecord>;
72
+ /**
73
+ * Access linked Case records
74
+ *
75
+ * @example
76
+ * ```typescript
77
+ * const items = await record.cases.list();
78
+ * const first = await record.cases.first();
79
+ * await record.cases.add(target);
80
+ * ```
81
+ */
82
+ get cases(): RecordLinkManager<CaseRecord>;
30
83
  /**
31
84
  * Queue a link to be created with the next action.
32
85
  * @returns this (for chaining)
@@ -19,6 +19,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
20
  exports.isActivityLogRecord = exports.ActivityLogRecord = void 0;
21
21
  const core_1 = require("@d19n/odin-types/dist/core");
22
+ const record_link_manager_1 = require("@d19n/odin-sdk-generator/dist/record-link-manager");
23
+ const OneTouchSwitchRecord_1 = require("./OneTouchSwitchRecord");
24
+ const WorkOrderRecord_1 = require("./WorkOrderRecord");
25
+ const OrderRecord_1 = require("./OrderRecord");
26
+ const CaseRecord_1 = require("./CaseRecord");
22
27
  class ActivityLogRecord {
23
28
  constructor(record, provider) {
24
29
  this._pendingLinks = [];
@@ -40,6 +45,97 @@ class ActivityLogRecord {
40
45
  /** Access the raw underlying OdinRecord */
41
46
  get raw() { return this._record; }
42
47
  // ============================================
48
+ // TYPED LINK ACCESSORS
49
+ // ============================================
50
+ /**
51
+ * Access linked OneTouchSwitch records
52
+ *
53
+ * @example
54
+ * ```typescript
55
+ * const items = await record.onetouchswitchs.list();
56
+ * const first = await record.onetouchswitchs.first();
57
+ * await record.onetouchswitchs.add(target);
58
+ * ```
59
+ */
60
+ get onetouchswitchs() {
61
+ if (!this._onetouchswitchs) {
62
+ this._onetouchswitchs = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
63
+ sourceEntity: 'AuditModule:ActivityLog',
64
+ targetEntity: 'OrderModule:OneTouchSwitch',
65
+ targetModuleName: 'OrderModule',
66
+ targetEntityName: 'OneTouchSwitch',
67
+ label: 'OneTouchSwitch_ActivityLog',
68
+ }, OneTouchSwitchRecord_1.OneTouchSwitchRecord);
69
+ }
70
+ return this._onetouchswitchs;
71
+ }
72
+ /**
73
+ * Access linked WorkOrder records
74
+ *
75
+ * @example
76
+ * ```typescript
77
+ * const items = await record.workorders.list();
78
+ * const first = await record.workorders.first();
79
+ * await record.workorders.add(target);
80
+ * ```
81
+ */
82
+ get workorders() {
83
+ if (!this._workorders) {
84
+ this._workorders = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
85
+ sourceEntity: 'AuditModule:ActivityLog',
86
+ targetEntity: 'FieldServiceModule:WorkOrder',
87
+ targetModuleName: 'FieldServiceModule',
88
+ targetEntityName: 'WorkOrder',
89
+ label: 'WorkOrder_ActivityLog',
90
+ }, WorkOrderRecord_1.WorkOrderRecord);
91
+ }
92
+ return this._workorders;
93
+ }
94
+ /**
95
+ * Access linked Order records
96
+ *
97
+ * @example
98
+ * ```typescript
99
+ * const items = await record.orders.list();
100
+ * const first = await record.orders.first();
101
+ * await record.orders.add(target);
102
+ * ```
103
+ */
104
+ get orders() {
105
+ if (!this._orders) {
106
+ this._orders = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
107
+ sourceEntity: 'AuditModule:ActivityLog',
108
+ targetEntity: 'OrderModule:Order',
109
+ targetModuleName: 'OrderModule',
110
+ targetEntityName: 'Order',
111
+ label: 'Order__ActivityLog',
112
+ }, OrderRecord_1.OrderRecord);
113
+ }
114
+ return this._orders;
115
+ }
116
+ /**
117
+ * Access linked Case records
118
+ *
119
+ * @example
120
+ * ```typescript
121
+ * const items = await record.cases.list();
122
+ * const first = await record.cases.first();
123
+ * await record.cases.add(target);
124
+ * ```
125
+ */
126
+ get cases() {
127
+ if (!this._cases) {
128
+ this._cases = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
129
+ sourceEntity: 'AuditModule:ActivityLog',
130
+ targetEntity: 'SupportModule:Case',
131
+ targetModuleName: 'SupportModule',
132
+ targetEntityName: 'Case',
133
+ label: 'Case__ActivityLog',
134
+ }, CaseRecord_1.CaseRecord);
135
+ }
136
+ return this._cases;
137
+ }
138
+ // ============================================
43
139
  // LINK MANAGEMENT
44
140
  // ============================================
45
141
  /**