@d19n/youfibre-odin-sdk 2.0.375 → 2.0.376

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 CHANGED
@@ -124,7 +124,7 @@ await workOrder.completeWorkOrder({ ... });
124
124
 
125
125
  ## Entities
126
126
 
127
- This SDK includes **205** entities across **13** modules.
127
+ This SDK includes **206** entities across **13** modules.
128
128
 
129
129
  ### CrmModule
130
130
 
@@ -223,6 +223,7 @@ This SDK includes **205** entities across **13** modules.
223
223
  | **OutboundDialSession** | OutboundDialSession Entity Definition | DEFAULT |
224
224
  | **QaAutoFail** | QaAutoFail Entity Definition | DEFAULT |
225
225
  | **QaBatch** | QaBatch Entity Definition | DEFAULT |
226
+ | **QaBatchSummary** | QaBatchSummary Entity Definition | DEFAULT |
226
227
  | **QaEvaluation** | QaEvaluation Entity Definition | DEFAULT |
227
228
  | **QaEvaluationAnswer** | QaEvaluationAnswer Entity Definition | DEFAULT |
228
229
  | **QaReport** | QaReport Entity Definition | DEFAULT |
@@ -398,7 +399,7 @@ This SDK includes **205** entities across **13** modules.
398
399
 
399
400
  ## Actions
400
401
 
401
- This SDK includes **937** actions.
402
+ This SDK includes **938** actions.
402
403
 
403
404
  ### Action Types
404
405
 
@@ -1641,6 +1642,7 @@ This SDK includes **937** actions.
1641
1642
  | `CreateContactSalesApp` | CREATE | k1.t-hEOJjsDb.CrmModule.Contact.Create.CreateContactSalesApp |
1642
1643
  | `OrderBuilderCreateContact` | CREATE | k1.t-hEOJjsDb.CrmModule.Contact.Create.OrderBuilderCreateContact |
1643
1644
  | `OrderBuilderUpdateContact` | UPDATE | k1.t-hEOJjsDb.CrmModule.Contact.Update.OrderBuilderUpdateContact |
1645
+ | `SetContactYouFibreTvInterest` | UPDATE | k1.t-hEOJjsDb.CrmModule.Contact.Update.SetContactYouFibreTvInterest |
1644
1646
  | `UpdateAdditionalCare` | UPDATE | k1.t-hEOJjsDb.CrmModule.Contact.Update.UpdateAdditionalCare |
1645
1647
  | `UpdateContactAppPreferences` | UPDATE | k1.t-hEOJjsDb.CrmModule.Contact.Update.UpdateContactAppPreferences |
1646
1648
  | `UpdateContact` | UPDATE | k1.t-hEOJjsDb.CrmModule.Contact.Update.UpdateContact |
@@ -0,0 +1,72 @@
1
+ /**
2
+ * SetContactYouFibreTvInterest Action DTO
3
+ *
4
+ * Record the moment this contact expressed interest in the TV product.
5
+ *
6
+ * @module CrmModule
7
+ * @entity Contact
8
+ * @actionKey SetContactYouFibreTvInterest
9
+ * @event k1.t-hEOJjsDb.CrmModule.Contact.Update.SetContactYouFibreTvInterest
10
+ *
11
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
12
+ */
13
+ import { OdinRecord, OdinRecordUpdateDto, OdinRecordUpdatedEvent } from '@d19n/odin-types/dist/core';
14
+ /**
15
+ * RabbitMQ message payload for SetContactYouFibreTvInterest updated events
16
+ *
17
+ * @event k1.t-hEOJjsDb.CrmModule.Contact.Update.SetContactYouFibreTvInterest
18
+ */
19
+ export interface SetContactYouFibreTvInterestMessage extends OdinRecordUpdatedEvent<SetContactYouFibreTvInterestDto, SetContactYouFibreTvInterestProperties> {
20
+ }
21
+ /**
22
+ * Properties for SetContactYouFibreTvInterest action
23
+ *
24
+ * @property Required fields: 0
25
+ * @property Optional fields: 1
26
+ */
27
+ export interface SetContactYouFibreTvInterestProperties {
28
+ /**
29
+ * YouFibreTvInterest
30
+ *
31
+ * Timestamp of when this contact expressed interest in the TV product. Set by SetContactYouFibreTvInterest (CORE-1523), called from the customer-portal endpoint (PORTAPP-3551).
32
+ * @type {DATE_TIME}
33
+ */
34
+ YouFibreTvInterest?: string | null;
35
+ }
36
+ /**
37
+ * Set TV Interest
38
+ *
39
+ * Record the moment this contact expressed interest in the TV product.
40
+ *
41
+ * @actionType UPDATE - Updates an existing Contact record
42
+ * @module CrmModule
43
+ * @entity Contact
44
+ * @event k1.t-hEOJjsDb.CrmModule.Contact.Update.SetContactYouFibreTvInterest
45
+ * @permission schema.action.setcontactyoufibretvinterest.trigger
46
+ * @benchmark This action is tracked for performance benchmarks
47
+ */
48
+ export declare class SetContactYouFibreTvInterestDto extends OdinRecordUpdateDto<SetContactYouFibreTvInterestProperties> {
49
+ /** Used by SDK generators to identify action type */
50
+ static readonly ACTION_TYPE = "UPDATE";
51
+ static readonly ACTION_KEY = "SetContactYouFibreTvInterest";
52
+ static readonly MODULE_NAME = "CrmModule";
53
+ static readonly ENTITIES: string[];
54
+ static readonly EVENT_NAME = "k1.t-hEOJjsDb.CrmModule.Contact.Update.SetContactYouFibreTvInterest";
55
+ static readonly PERMISSION = "schema.action.setcontactyoufibretvinterest.trigger";
56
+ /** Step metadata - entity this action targets */
57
+ static readonly STEP_ENTITY = "CrmModule:Contact";
58
+ static readonly STEP_SCHEMA_ID = "33643a0d-5b77-4895-a2da-991e0fd3432f";
59
+ static readonly STEP_SCHEMA_ACTION_ID = "c46ceb9a-4971-49a7-8aef-08d223fc340c";
60
+ static readonly AUTO_LINK_PARENT = false;
61
+ readonly actionName: string;
62
+ readonly schemaActionId: string;
63
+ readonly entity: string;
64
+ constructor(record: OdinRecord<any> | {
65
+ id: string;
66
+ entity: string;
67
+ type?: string;
68
+ }, properties: SetContactYouFibreTvInterestProperties, options?: {
69
+ journeyId?: string;
70
+ stageKey?: string;
71
+ });
72
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ /**
3
+ * SetContactYouFibreTvInterest Action DTO
4
+ *
5
+ * Record the moment this contact expressed interest in the TV product.
6
+ *
7
+ * @module CrmModule
8
+ * @entity Contact
9
+ * @actionKey SetContactYouFibreTvInterest
10
+ * @event k1.t-hEOJjsDb.CrmModule.Contact.Update.SetContactYouFibreTvInterest
11
+ *
12
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
13
+ */
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.SetContactYouFibreTvInterestDto = void 0;
16
+ const core_1 = require("@d19n/odin-types/dist/core");
17
+ /**
18
+ * Set TV Interest
19
+ *
20
+ * Record the moment this contact expressed interest in the TV product.
21
+ *
22
+ * @actionType UPDATE - Updates an existing Contact record
23
+ * @module CrmModule
24
+ * @entity Contact
25
+ * @event k1.t-hEOJjsDb.CrmModule.Contact.Update.SetContactYouFibreTvInterest
26
+ * @permission schema.action.setcontactyoufibretvinterest.trigger
27
+ * @benchmark This action is tracked for performance benchmarks
28
+ */
29
+ class SetContactYouFibreTvInterestDto extends core_1.OdinRecordUpdateDto {
30
+ constructor(record, properties, options) {
31
+ super({
32
+ id: record.id,
33
+ entity: record.entity,
34
+ type: record.type,
35
+ properties,
36
+ journeyId: options === null || options === void 0 ? void 0 : options.journeyId,
37
+ stageKey: options === null || options === void 0 ? void 0 : options.stageKey,
38
+ });
39
+ this.actionName = 'SetContactYouFibreTvInterest';
40
+ this.schemaActionId = 'c46ceb9a-4971-49a7-8aef-08d223fc340c';
41
+ this.entity = 'CrmModule:Contact';
42
+ }
43
+ }
44
+ exports.SetContactYouFibreTvInterestDto = SetContactYouFibreTvInterestDto;
45
+ /** Used by SDK generators to identify action type */
46
+ SetContactYouFibreTvInterestDto.ACTION_TYPE = 'UPDATE';
47
+ SetContactYouFibreTvInterestDto.ACTION_KEY = 'SetContactYouFibreTvInterest';
48
+ SetContactYouFibreTvInterestDto.MODULE_NAME = 'CrmModule';
49
+ SetContactYouFibreTvInterestDto.ENTITIES = ['Contact'];
50
+ SetContactYouFibreTvInterestDto.EVENT_NAME = 'k1.t-hEOJjsDb.CrmModule.Contact.Update.SetContactYouFibreTvInterest';
51
+ SetContactYouFibreTvInterestDto.PERMISSION = 'schema.action.setcontactyoufibretvinterest.trigger';
52
+ /** Step metadata - entity this action targets */
53
+ SetContactYouFibreTvInterestDto.STEP_ENTITY = 'CrmModule:Contact';
54
+ SetContactYouFibreTvInterestDto.STEP_SCHEMA_ID = '33643a0d-5b77-4895-a2da-991e0fd3432f';
55
+ SetContactYouFibreTvInterestDto.STEP_SCHEMA_ACTION_ID = 'c46ceb9a-4971-49a7-8aef-08d223fc340c';
56
+ SetContactYouFibreTvInterestDto.AUTO_LINK_PARENT = false;
@@ -39,7 +39,7 @@ export interface UpdateWorkOrderWithdrawEquipmentChargeProperties {
39
39
  * Contact information field for WorkOrder. Used by Field Operations team for communication.
40
40
  * @type {TEXT}
41
41
  * @required
42
- * @visibleWhen SendAnotherBag = ["*"] AND UseAlternativeAddressManual = ["*"]
42
+ * @visibleWhen SendAnotherBag = ["true"] AND UseAlternativeAddressManual = ["true"]
43
43
  */
44
44
  AlternativeAddressLine1: string;
45
45
  /**
@@ -48,7 +48,7 @@ export interface UpdateWorkOrderWithdrawEquipmentChargeProperties {
48
48
  * Contact information field for WorkOrder. Used by Field Operations team for communication.
49
49
  * @type {TEXT}
50
50
  * @required
51
- * @visibleWhen SendAnotherBag = ["*"] AND UseAlternativeAddressManual = ["*"]
51
+ * @visibleWhen SendAnotherBag = ["true"] AND UseAlternativeAddressManual = ["true"]
52
52
  */
53
53
  AlternativeAddressCityTown: string;
54
54
  /**
@@ -57,7 +57,7 @@ export interface UpdateWorkOrderWithdrawEquipmentChargeProperties {
57
57
  * Contact information field for WorkOrder. Used by Field Operations team for communication.
58
58
  * @type {TEXT}
59
59
  * @required
60
- * @visibleWhen SendAnotherBag = ["*"] AND UseAlternativeAddressManual = ["*"]
60
+ * @visibleWhen SendAnotherBag = ["true"] AND UseAlternativeAddressManual = ["true"]
61
61
  */
62
62
  AlternativeAddressPostCode: string;
63
63
  /**
@@ -72,7 +72,7 @@ export interface UpdateWorkOrderWithdrawEquipmentChargeProperties {
72
72
  *
73
73
  * UseAlternativeAddressManual (Field Operations - WorkOrder)
74
74
  * @type {BOOLEAN}
75
- * @visibleWhen SendAnotherBag = ["*"]
75
+ * @visibleWhen SendAnotherBag = ["true"]
76
76
  */
77
77
  UseAlternativeAddressManual?: boolean | null;
78
78
  /**
@@ -80,7 +80,7 @@ export interface UpdateWorkOrderWithdrawEquipmentChargeProperties {
80
80
  *
81
81
  * Contact information field for WorkOrder. Used by Field Operations team for communication.
82
82
  * @type {TEXT}
83
- * @visibleWhen SendAnotherBag = ["*"] AND UseAlternativeAddressManual = ["*"]
83
+ * @visibleWhen SendAnotherBag = ["true"] AND UseAlternativeAddressManual = ["true"]
84
84
  */
85
85
  AlternativeAddressLine2?: string | null;
86
86
  }
@@ -18,8 +18,10 @@ export declare class QaBatchApi extends ApiProvider {
18
18
  private readonly entityName;
19
19
  private sourceRecord;
20
20
  private _qareport?;
21
+ private _qabatchsummary?;
21
22
  constructor(authParams?: OauthParams, authToken?: string);
22
23
  get qareport(): ApiRecordLinkManager;
24
+ get qabatchsummary(): ApiRecordLinkManager;
23
25
  setRecord(sourceRecord: any): void;
24
26
  schema(): Promise<import("@d19n/odin-types/dist/core").OdinSchema>;
25
27
  search(params: Partial<OdinSearchV2>): Promise<import("@d19n/odin-sdk-generator/dist/odin-sdk-types").OdinSearchResponse<import("@d19n/odin-types/dist/core").OdinRecord<QaBatchProperties>>>;
@@ -39,6 +39,12 @@ class QaBatchApi extends api_provider_1.ApiProvider {
39
39
  }
40
40
  return this._qareport;
41
41
  }
42
+ get qabatchsummary() {
43
+ if (!this._qabatchsummary) {
44
+ this._qabatchsummary = new api_record_link_manager_1.ApiRecordLinkManager(this.authParams, 'SupportModule:QaBatch', 'SupportModule:QaBatchSummary', 'QaBatch__Summary');
45
+ }
46
+ return this._qabatchsummary;
47
+ }
42
48
  // ============================================
43
49
  // STANDARD METHODS (Unchanged API)
44
50
  // ============================================
@@ -0,0 +1,48 @@
1
+ import { OauthParams } from '@d19n/odin-sdk-generator/dist/odin-sdk-types';
2
+ import { ApiProvider } from '@d19n/odin-sdk-generator/dist/api.provider';
3
+ import { OdinSearchV2, OdinRecordCreateDto, OdinRecordUpdateDto } from '@d19n/odin-types/dist/core';
4
+ import { ApiRecordLinkManager } from '@d19n/odin-sdk-generator/dist/api.record.link.manager';
5
+ import { QaBatchSummaryProperties } from '../entities-v2/QaBatchSummary';
6
+ /**
7
+ * @deprecated Use OdinApiClient.
8
+ *
9
+ * Migration:
10
+ * - Old: new QaBatchSummaryApi(authParams).get(id)
11
+ * - New: new odin.qabatchsummary.get(id)
12
+ *
13
+ * The new OdinApiClient returns typed record wrappers with action methods.
14
+ */
15
+ export declare class QaBatchSummaryApi extends ApiProvider {
16
+ protected readonly authToken?: string;
17
+ private readonly moduleName;
18
+ private readonly entityName;
19
+ private sourceRecord;
20
+ private _qabatch?;
21
+ constructor(authParams?: OauthParams, authToken?: string);
22
+ get qabatch(): ApiRecordLinkManager;
23
+ setRecord(sourceRecord: any): void;
24
+ schema(): Promise<import("@d19n/odin-types/dist/core").OdinSchema>;
25
+ search(params: Partial<OdinSearchV2>): Promise<import("@d19n/odin-sdk-generator/dist/odin-sdk-types").OdinSearchResponse<import("@d19n/odin-types/dist/core").OdinRecord<QaBatchSummaryProperties>>>;
26
+ searchAndPaginate(params: Partial<OdinSearchV2>): Promise<import("@d19n/odin-sdk-generator/dist/odin-sdk-types").OdinSearchResponse<import("@d19n/odin-types/dist/core").OdinRecord<QaBatchSummaryProperties>>>;
27
+ reIndex(body: {
28
+ id: string;
29
+ schemaId: string;
30
+ }[]): Promise<any>;
31
+ get(qaBatchSummaryId: string): Promise<import("@d19n/odin-types/dist/core").OdinRecord<QaBatchSummaryProperties>>;
32
+ getMany(qaBatchSummaryIds: string[]): Promise<import("@d19n/odin-types/dist/core").OdinRecord<QaBatchSummaryProperties>[]>;
33
+ upsert(upsertDto: OdinRecordCreateDto): Promise<import("@d19n/odin-sdk-generator/dist/odin-sdk-types").IDbRecordCreateUpdateRes>;
34
+ upsertMany(upsertDtos: OdinRecordCreateDto[]): Promise<import("@d19n/odin-sdk-generator/dist/odin-sdk-types").IDbRecordCreateUpdateRes[]>;
35
+ update(updateDto: OdinRecordUpdateDto): Promise<import("@d19n/odin-sdk-generator/dist/odin-sdk-types").IDbRecordCreateUpdateRes>;
36
+ updateMany(updateDtos: OdinRecordUpdateDto[]): Promise<import("@d19n/odin-sdk-generator/dist/odin-sdk-types").IDbRecordCreateUpdateRes[]>;
37
+ delete(qaBatchSummaryId: string): Promise<import("@d19n/odin-sdk-generator/dist/odin-sdk-types").OdinDeleteResponse[]>;
38
+ deleteMany(qaBatchSummaryIds: string[]): Promise<import("@d19n/odin-sdk-generator/dist/odin-sdk-types").OdinDeleteResponse[]>;
39
+ restore(qaBatchSummaryIds: string[]): Promise<import("@d19n/odin-sdk-generator/dist/odin-sdk-types").OdinRestoreResponse[]>;
40
+ applyAction(dto: any): Promise<any[]>;
41
+ bulkApplyActions(dtos: any[]): Promise<any[]>;
42
+ getVersions(): Promise<{
43
+ [key: string]: Record<string, any>;
44
+ }>;
45
+ getRevisionTimeline(): Promise<{
46
+ [key: string]: Record<string, any>[];
47
+ }>;
48
+ }
@@ -0,0 +1,155 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.QaBatchSummaryApi = void 0;
13
+ const api_provider_1 = require("@d19n/odin-sdk-generator/dist/api.provider");
14
+ const api_record_link_manager_1 = require("@d19n/odin-sdk-generator/dist/api.record.link.manager");
15
+ /**
16
+ * @deprecated Use OdinApiClient.
17
+ *
18
+ * Migration:
19
+ * - Old: new QaBatchSummaryApi(authParams).get(id)
20
+ * - New: new odin.qabatchsummary.get(id)
21
+ *
22
+ * The new OdinApiClient returns typed record wrappers with action methods.
23
+ */
24
+ class QaBatchSummaryApi extends api_provider_1.ApiProvider {
25
+ constructor(authParams, authToken) {
26
+ super(authParams, authToken);
27
+ this.authToken = authToken;
28
+ this.moduleName = 'SupportModule';
29
+ this.entityName = 'QaBatchSummary';
30
+ // Link managers are lazy-loaded on first access
31
+ }
32
+ // ============================================
33
+ // LAZY-LOADED LINK MANAGERS (Public Getters)
34
+ // ============================================
35
+ // Usage remains identical: api.address.list(recordId)
36
+ get qabatch() {
37
+ if (!this._qabatch) {
38
+ this._qabatch = new api_record_link_manager_1.ApiRecordLinkManager(this.authParams, 'SupportModule:QaBatchSummary', 'SupportModule:QaBatch', 'QaBatch__Summary');
39
+ }
40
+ return this._qabatch;
41
+ }
42
+ // ============================================
43
+ // STANDARD METHODS (Unchanged API)
44
+ // ============================================
45
+ setRecord(sourceRecord) {
46
+ this.sourceRecord = sourceRecord;
47
+ }
48
+ schema() {
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ return yield this.getSchema(this.moduleName, this.entityName);
51
+ });
52
+ }
53
+ // Use this function when you want to search and handle all pagination on your own
54
+ search(params) {
55
+ return __awaiter(this, void 0, void 0, function* () {
56
+ return yield this._searchRecords(this.moduleName, this.entityName, params);
57
+ });
58
+ }
59
+ // Use this function when you want paginating through the results to be handled
60
+ searchAndPaginate(params) {
61
+ return __awaiter(this, void 0, void 0, function* () {
62
+ return yield this._searchAllRecordsAndPaginate(this.moduleName, this.entityName, params);
63
+ });
64
+ }
65
+ // Use this function to re-index records in elastic search
66
+ reIndex(body) {
67
+ return __awaiter(this, void 0, void 0, function* () {
68
+ return yield this._reIndexRecords(body);
69
+ });
70
+ }
71
+ // Use this function when you want to return a single record
72
+ get(qaBatchSummaryId) {
73
+ return __awaiter(this, void 0, void 0, function* () {
74
+ const res = yield this._getByPrimaryKey(this.moduleName, this.entityName, qaBatchSummaryId);
75
+ if (res)
76
+ this.setRecord(res);
77
+ return res;
78
+ });
79
+ }
80
+ // Use this function when you want to return many records by primaryKeys
81
+ getMany(qaBatchSummaryIds) {
82
+ return __awaiter(this, void 0, void 0, function* () {
83
+ return yield this._getManyByPrimaryKey(this.moduleName, this.entityName, qaBatchSummaryIds);
84
+ });
85
+ }
86
+ // Use this function when you want to upsert one record
87
+ upsert(upsertDto) {
88
+ return __awaiter(this, void 0, void 0, function* () {
89
+ const res = yield this._upsert(this.moduleName, this.entityName, [upsertDto]);
90
+ return res[0];
91
+ });
92
+ }
93
+ // Use this function when you want to upsert many records
94
+ upsertMany(upsertDtos) {
95
+ return __awaiter(this, void 0, void 0, function* () {
96
+ return yield this._upsert(this.moduleName, this.entityName, upsertDtos);
97
+ });
98
+ }
99
+ // Use this function when you want to update one record
100
+ update(updateDto) {
101
+ return __awaiter(this, void 0, void 0, function* () {
102
+ const res = yield this._update(this.moduleName, this.entityName, [updateDto]);
103
+ return res[0];
104
+ });
105
+ }
106
+ // Use this function when you want to update many records
107
+ updateMany(updateDtos) {
108
+ return __awaiter(this, void 0, void 0, function* () {
109
+ return yield this._update(this.moduleName, this.entityName, updateDtos);
110
+ });
111
+ }
112
+ // Use this function when you want to delete one record
113
+ delete(qaBatchSummaryId) {
114
+ return __awaiter(this, void 0, void 0, function* () {
115
+ return yield this._delete(this.moduleName, this.entityName, [qaBatchSummaryId]);
116
+ });
117
+ }
118
+ // Use this function when you want to delete many records
119
+ deleteMany(qaBatchSummaryIds) {
120
+ return __awaiter(this, void 0, void 0, function* () {
121
+ return yield this._delete(this.moduleName, this.entityName, qaBatchSummaryIds);
122
+ });
123
+ }
124
+ // Use this function when you want to restore one or many records
125
+ restore(qaBatchSummaryIds) {
126
+ return __awaiter(this, void 0, void 0, function* () {
127
+ return yield this._restore(this.moduleName, this.entityName, qaBatchSummaryIds);
128
+ });
129
+ }
130
+ // Use this function when you want to apply a single action
131
+ applyAction(dto) {
132
+ return __awaiter(this, void 0, void 0, function* () {
133
+ return yield this._applyAction(this.moduleName, this.entityName, dto);
134
+ });
135
+ }
136
+ // Use this function when you want to bulk apply actions
137
+ bulkApplyActions(dtos) {
138
+ return __awaiter(this, void 0, void 0, function* () {
139
+ return yield this._bulkApplyActions(this.moduleName, this.entityName, dtos);
140
+ });
141
+ }
142
+ // Use this function when you want to return the versions for a single record
143
+ getVersions() {
144
+ return __awaiter(this, void 0, void 0, function* () {
145
+ return yield this._getVersions(this.moduleName, this.entityName, this.sourceRecord.id);
146
+ });
147
+ }
148
+ // Use this function when you want to return the change history for a single record
149
+ getRevisionTimeline() {
150
+ return __awaiter(this, void 0, void 0, function* () {
151
+ return yield this._getRevisionTimeline(this.moduleName, this.entityName, this.sourceRecord.id);
152
+ });
153
+ }
154
+ }
155
+ exports.QaBatchSummaryApi = QaBatchSummaryApi;
@@ -22,8 +22,10 @@ export declare class QaBatchDb extends DbProvider {
22
22
  private readonly entityName;
23
23
  private sourceRecord;
24
24
  private _qareport?;
25
+ private _qabatchsummary?;
25
26
  constructor(principal: any, dbService: any, defaultOptions?: DbProviderOptions);
26
27
  get qareport(): DbRecordLinkManager;
28
+ get qabatchsummary(): DbRecordLinkManager;
27
29
  setRecord(sourceRecord: any): void;
28
30
  /**
29
31
  * Search records with manual pagination control
@@ -44,6 +44,12 @@ class QaBatchDb extends db_provider_1.DbProvider {
44
44
  }
45
45
  return this._qareport;
46
46
  }
47
+ get qabatchsummary() {
48
+ if (!this._qabatchsummary) {
49
+ this._qabatchsummary = new db_record_link_manager_1.DbRecordLinkManager(this.principal, this.dbService, 'SupportModule:QaBatch', 'SupportModule:QaBatchSummary', 'QaBatch__Summary');
50
+ }
51
+ return this._qabatchsummary;
52
+ }
47
53
  // ============================================
48
54
  // STANDARD METHODS
49
55
  // ============================================
@@ -0,0 +1,120 @@
1
+ import { DbProvider, DbProviderOptions, DbGetQueryOptions } from '@d19n/odin-sdk-generator/dist/db.provider';
2
+ import { OdinSearchV2, OdinRecordCreateDto, OdinRecordUpdateDto } from '@d19n/odin-types/dist/core';
3
+ import { DbRecordLinkManager } from '@d19n/odin-sdk-generator/dist/db.record.link.manager';
4
+ import { QaBatchSummaryProperties } from '../entities-v2/QaBatchSummary';
5
+ /**
6
+ * @deprecated Use OdinDbClient.
7
+ *
8
+ * Migration:
9
+ * - Old: new QaBatchSummaryApi(authParams).get(id)
10
+ * - New: new odin.qabatchsummary.get(id)
11
+ *
12
+ * The new OdinDbClient returns typed record wrappers with action methods.
13
+ *
14
+ * Supports separate query options and provider options:
15
+ * - Constructor level: new QaBatchSummaryDb(principal, dbService, { omitPermissionsCheck: true })
16
+ * - Method level: await db.getByPrimaryKey(id, { entities: [] }, { omitPermissionsCheck: true })
17
+ */
18
+ export declare class QaBatchSummaryDb extends DbProvider {
19
+ protected readonly principal: any;
20
+ protected readonly dbService: any;
21
+ private readonly moduleName;
22
+ private readonly entityName;
23
+ private sourceRecord;
24
+ private _qabatch?;
25
+ constructor(principal: any, dbService: any, defaultOptions?: DbProviderOptions);
26
+ get qabatch(): DbRecordLinkManager;
27
+ setRecord(sourceRecord: any): void;
28
+ /**
29
+ * Search records with manual pagination control
30
+ * @param params - Search parameters
31
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
32
+ */
33
+ searchRecords(params: Partial<OdinSearchV2>, providerOptions?: DbProviderOptions): Promise<import("@d19n/odin-types/dist/core/interfaces/v2.db.interfaces").OdinSearchResponse<import("@d19n/odin-types/dist/core").OdinRecord<QaBatchSummaryProperties>>>;
34
+ /**
35
+ * Search all records with automatic pagination
36
+ * @param params - Search parameters
37
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
38
+ */
39
+ searchAllRecordsAndPaginate(params: Partial<OdinSearchV2>, providerOptions?: DbProviderOptions): Promise<import("@d19n/odin-types/dist/core/interfaces/v2.db.interfaces").OdinSearchResponse<import("@d19n/odin-types/dist/core").OdinRecord<QaBatchSummaryProperties>>>;
40
+ /**
41
+ * Get a single record by primary key
42
+ * @param qaBatchSummaryId - Record ID
43
+ * @param queryOptions - Query options (WHAT: entities to include)
44
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
45
+ *
46
+ * @example
47
+ * // Simple get
48
+ * const record = await db.getByPrimaryKey(id);
49
+ *
50
+ * // With related entities
51
+ * const record = await db.getByPrimaryKey(id, { entities: ['InvoiceItem', 'Transaction'] });
52
+ *
53
+ * // With permissions bypass
54
+ * const record = await db.getByPrimaryKey(id, {}, { omitPermissionsCheck: true });
55
+ *
56
+ * // Both options
57
+ * const record = await db.getByPrimaryKey(id, { entities: ['Invoice'] }, { omitPermissionsCheck: true });
58
+ */
59
+ getByPrimaryKey(qaBatchSummaryId: string, queryOptions?: DbGetQueryOptions, providerOptions?: DbProviderOptions): Promise<import("@d19n/odin-types/dist/core").OdinRecord<QaBatchSummaryProperties>>;
60
+ /**
61
+ * Get multiple records by primary keys
62
+ * @param qaBatchSummaryIds - Array of record IDs
63
+ * @param queryOptions - Query options (WHAT: entities to include)
64
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
65
+ */
66
+ getManyByPrimaryKey(qaBatchSummaryIds: string[], queryOptions?: DbGetQueryOptions, providerOptions?: DbProviderOptions): Promise<import("@d19n/odin-types/dist/core").OdinRecord<QaBatchSummaryProperties>[]>;
67
+ /**
68
+ * Upsert a single record
69
+ * @param upsertDto - Record to upsert
70
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
71
+ */
72
+ upsert(upsertDto: OdinRecordCreateDto, providerOptions?: DbProviderOptions): Promise<import("@d19n/odin-types/dist/core").IDbRecordCreateUpdateRes>;
73
+ /**
74
+ * Upsert multiple records
75
+ * @param upsertDtos - Records to upsert
76
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
77
+ */
78
+ upsertMany(upsertDtos: OdinRecordCreateDto[], providerOptions?: DbProviderOptions): Promise<import("@d19n/odin-types/dist/core").IDbRecordCreateUpdateRes[]>;
79
+ /**
80
+ * Update a single record
81
+ * @param updateDto - Record to update
82
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
83
+ */
84
+ update(updateDto: OdinRecordUpdateDto, providerOptions?: DbProviderOptions): Promise<import("@d19n/odin-types/dist/core").IDbRecordCreateUpdateRes>;
85
+ /**
86
+ * Update multiple records
87
+ * @param updateDtos - Records to update
88
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
89
+ */
90
+ updateMany(updateDtos: OdinRecordUpdateDto[], providerOptions?: DbProviderOptions): Promise<import("@d19n/odin-types/dist/core").IDbRecordCreateUpdateRes[]>;
91
+ /**
92
+ * Delete one or many records
93
+ * @param qaBatchSummaryIds - Record IDs to delete
94
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
95
+ */
96
+ delete(qaBatchSummaryIds: string[], providerOptions?: DbProviderOptions): Promise<import("@d19n/odin-sdk-generator").DbRecordDeleted[]>;
97
+ /**
98
+ * Restore one or many deleted records
99
+ * @param qaBatchSummaryIds - Record IDs to restore
100
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
101
+ */
102
+ restore(qaBatchSummaryIds: string[], providerOptions?: DbProviderOptions): Promise<import("@d19n/odin-sdk-generator").DbRecordRestored[]>;
103
+ /**
104
+ * Apply an action to a record
105
+ * @param actionName - The action key
106
+ * @param dto - The action DTO
107
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
108
+ */
109
+ applyAction(actionName: string, dto: any, providerOptions?: DbProviderOptions): Promise<import("@d19n/odin-types/dist/core").IDbRecordCreateUpdateRes[]>;
110
+ /**
111
+ * Get version history for the current source record
112
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
113
+ */
114
+ getVersions(providerOptions?: DbProviderOptions): Promise<any>;
115
+ /**
116
+ * Get revision timeline for the current source record
117
+ * @param providerOptions - Provider options (HOW: omitPermissionsCheck)
118
+ */
119
+ getRevisionTimeline(providerOptions?: DbProviderOptions): Promise<any>;
120
+ }